From b4b635f32d9420bca3da2126f28171907b49f3de Mon Sep 17 00:00:00 2001 From: Kelenius Date: Wed, 25 Mar 2015 19:09:10 +0300 Subject: [PATCH 001/199] Chemistry commit I messed something in the git --- baystation12.dme | 7 +- code/__HELPERS/game.dm | 28 + code/_defines/chemical_effects.dm | 7 + code/datums/recipe.dm | 4 +- code/game/dna/dna_modifier.dm | 3 +- code/game/machinery/Sleeper.dm | 4 +- code/game/machinery/bots/farmbot.dm | 7 +- code/game/machinery/bots/medbot.dm | 3 +- code/game/machinery/cryo.dm | 3 +- code/game/machinery/iv_drip.dm | 6 +- code/game/machinery/kitchen/gibber.dm | 2 +- .../mecha/equipment/tools/medical_tools.dm | 6 +- code/game/mecha/equipment/tools/tools.dm | 41 +- .../objects/effects/{ => chem}/chemsmoke.dm | 133 +- code/game/objects/effects/chem/foam.dm | 184 + code/game/objects/effects/chem/water.dm | 50 + code/game/objects/effects/decals/misc.dm | 8 +- code/game/objects/effects/effect_system.dm | 245 - code/game/objects/items/toys.dm | 16 +- .../objects/items/weapons/cigs_lighters.dm | 13 +- .../objects/items/weapons/extinguisher.dm | 87 +- .../items/weapons/grenades/chem_grenade.dm | 2 +- .../objects/items/weapons/implants/implant.dm | 2 +- .../items/weapons/implants/implantcase.dm | 2 +- code/game/objects/items/weapons/kitchen.dm | 2 +- code/game/objects/items/weapons/mop.dm | 4 +- code/game/objects/items/weapons/paint.dm | 7 +- .../objects/items/weapons/storage/fancy.dm | 8 +- code/game/objects/items/weapons/tools.dm | 2 +- .../objects/items/weapons/weldbackpack.dm | 4 +- .../crates_lockers/closets/secure/security.dm | 4 +- code/game/objects/structures/janicart.dm | 4 +- code/game/objects/structures/mop_bucket.dm | 2 +- code/modules/customitems/item_defines.dm | 6 +- .../detectivework/footprints_and_rag.dm | 3 +- code/modules/mob/living/carbon/alien/alien.dm | 4 - code/modules/mob/living/carbon/brain/life.dm | 13 +- code/modules/mob/living/carbon/breathe.dm | 10 +- code/modules/mob/living/carbon/carbon.dm | 18 +- .../mob/living/carbon/carbon_defines.dm | 3 + code/modules/mob/living/carbon/human/human.dm | 4 - .../mob/living/carbon/human/human_movement.dm | 5 +- code/modules/mob/living/carbon/human/life.dm | 17 +- .../modules/mob/living/carbon/metroid/life.dm | 12 +- .../mob/living/carbon/metroid/metroid.dm | 10 - code/modules/mob/living/carbon/monkey/life.dm | 13 +- .../mob/living/carbon/monkey/monkey.dm | 4 - code/modules/mob/living/carbon/shock.dm | 17 +- .../mob/living/silicon/robot/robot_modules.dm | 4 +- code/modules/organs/blood.dm | 21 +- code/modules/organs/organ_internal.dm | 20 +- code/modules/organs/organ_objects.dm | 4 +- code/modules/organs/pain.dm | 14 +- code/modules/paperwork/pen.dm | 4 +- .../projectiles/guns/launcher/syringe_gun.dm | 2 +- .../projectiles/guns/projectile/dartgun.dm | 4 +- code/modules/reagents/Chemistry-Colours.dm | 85 +- code/modules/reagents/Chemistry-Holder.dm | 1035 +- code/modules/reagents/Chemistry-Machinery.dm | 6 +- .../Chemistry-Reagents-Antidepressants.dm | 90 - code/modules/reagents/Chemistry-Reagents.dm | 8436 ++++++++--------- code/modules/reagents/Chemistry-Recipes.dm | 4025 ++++---- code/modules/reagents/reagent_containers.dm | 141 +- .../reagents/reagent_containers/borghydro.dm | 35 +- .../reagents/reagent_containers/dropper.dm | 103 +- .../reagents/reagent_containers/food/cans.dm | 83 +- .../reagent_containers/food/condiment.dm | 83 +- .../reagent_containers/food/drinks.dm | 143 +- .../reagent_containers/food/drinks/bottle.dm | 9 +- .../reagent_containers/food/sandwich.dm | 2 +- .../reagent_containers/food/snacks.dm | 21 +- .../reagents/reagent_containers/glass.dm | 135 +- .../reagent_containers/glass/bottle.dm | 2 +- .../reagents/reagent_containers/hypospray.dm | 31 +- .../reagents/reagent_containers/pill.dm | 55 +- .../reagent_containers/robodropper.dm | 98 - .../reagents/reagent_containers/spray.dm | 119 +- .../reagents/reagent_containers/syringes.dm | 344 +- code/modules/research/circuitprinter.dm | 2 +- code/modules/research/protolathe.dm | 2 +- .../research/xenoarchaeology/chemistry.dm | 69 - .../xenoarchaeology/machinery/coolant.dm | 17 - code/modules/surgery/other.dm | 6 +- code/modules/virus2/antibodies.dm | 4 +- code/modules/virus2/dishincubator.dm | 2 +- code/modules/virus2/effect.dm | 2 +- code/setup.dm | 16 +- maps/exodus-1.dmm | 6 +- 88 files changed, 7327 insertions(+), 8992 deletions(-) create mode 100644 code/_defines/chemical_effects.dm rename code/game/objects/effects/{ => chem}/chemsmoke.dm (57%) create mode 100644 code/game/objects/effects/chem/foam.dm create mode 100644 code/game/objects/effects/chem/water.dm delete mode 100644 code/modules/reagents/Chemistry-Reagents-Antidepressants.dm delete mode 100644 code/modules/reagents/reagent_containers/robodropper.dm diff --git a/baystation12.dme b/baystation12.dme index fbe5aba289..c7d7cff09e 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -32,6 +32,7 @@ #include "code\__HELPERS\type2type.dm" #include "code\__HELPERS\unsorted.dm" #include "code\__HELPERS\vector.dm" +#include "code\_defines\chemical_effects.dm" #include "code\_onclick\adjacent.dm" #include "code\_onclick\ai.dm" #include "code\_onclick\click.dm" @@ -504,7 +505,6 @@ #include "code\game\objects\weapons.dm" #include "code\game\objects\effects\aliens.dm" #include "code\game\objects\effects\bump_teleporter.dm" -#include "code\game\objects\effects\chemsmoke.dm" #include "code\game\objects\effects\effect_system.dm" #include "code\game\objects\effects\explosion_particles.dm" #include "code\game\objects\effects\gibs.dm" @@ -517,6 +517,9 @@ #include "code\game\objects\effects\portals.dm" #include "code\game\objects\effects\spiders.dm" #include "code\game\objects\effects\step_triggers.dm" +#include "code\game\objects\effects\chem\chemsmoke.dm" +#include "code\game\objects\effects\chem\foam.dm" +#include "code\game\objects\effects\chem\water.dm" #include "code\game\objects\effects\decals\cleanable.dm" #include "code\game\objects\effects\decals\contraband.dm" #include "code\game\objects\effects\decals\crayon.dm" @@ -1397,7 +1400,6 @@ #include "code\modules\reagents\Chemistry-Holder.dm" #include "code\modules\reagents\Chemistry-Machinery.dm" #include "code\modules\reagents\Chemistry-Readme.dm" -#include "code\modules\reagents\Chemistry-Reagents-Antidepressants.dm" #include "code\modules\reagents\Chemistry-Reagents.dm" #include "code\modules\reagents\Chemistry-Recipes.dm" #include "code\modules\reagents\reagent_containers.dm" @@ -1415,7 +1417,6 @@ #include "code\modules\reagents\reagent_containers\glass.dm" #include "code\modules\reagents\reagent_containers\hypospray.dm" #include "code\modules\reagents\reagent_containers\pill.dm" -#include "code\modules\reagents\reagent_containers\robodropper.dm" #include "code\modules\reagents\reagent_containers\spray.dm" #include "code\modules\reagents\reagent_containers\syringes.dm" #include "code\modules\reagents\reagent_containers\food\cans.dm" diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 45618f2ffc..e185c42230 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -430,6 +430,34 @@ datum/projectile_data var/b = mixOneColor(weights, blues) return rgb(r,g,b) +/proc/mixOneColor(var/list/weight, var/list/color) + if (!weight || !color || length(weight)!=length(color)) + return 0 + + var/contents = length(weight) + var/i + + //normalize weights + var/listsum = 0 + for(i=1; i<=contents; i++) + listsum += weight[i] + for(i=1; i<=contents; i++) + weight[i] /= listsum + + //mix them + var/mixedcolor = 0 + for(i=1; i<=contents; i++) + mixedcolor += weight[i]*color[i] + mixedcolor = round(mixedcolor) + + //until someone writes a formal proof for this algorithm, let's keep this in +// if(mixedcolor<0x00 || mixedcolor>0xFF) +// return 0 + //that's not the kind of operation we are running here, nerd + mixedcolor=min(max(mixedcolor,0),255) + + return mixedcolor + /** * Gets the highest and lowest pressures from the tiles in cardinal directions * around us, then checks the difference. diff --git a/code/_defines/chemical_effects.dm b/code/_defines/chemical_effects.dm new file mode 100644 index 0000000000..6119d80cb5 --- /dev/null +++ b/code/_defines/chemical_effects.dm @@ -0,0 +1,7 @@ +#define CE_STABLE "stable" // Inaprovaline +#define CE_ANTIBIOTIC "antibiotic" // Spaceacilin +#define CE_BLOODRESTORE "bloodrestore" // Iron/nutriment +#define CE_PAINKILLER "painkiller" +#define CE_ALCOHOL "alcohol" // Liver filtering +#define CE_ALCOHOL_TOXIC "alcotoxic" // Liver damage +#define CE_SPEEDBOOST "gofast" // Hyperzine \ No newline at end of file diff --git a/code/datums/recipe.dm b/code/datums/recipe.dm index 9c72feef39..7e220141f5 100644 --- a/code/datums/recipe.dm +++ b/code/datums/recipe.dm @@ -94,7 +94,7 @@ /datum/recipe/proc/make(var/obj/container as obj) var/obj/result_obj = new result(container) for (var/obj/O in (container.contents-result_obj)) - O.reagents.trans_to(result_obj, O.reagents.total_volume) + O.reagents.trans_to_obj(result_obj, O.reagents.total_volume) del(O) container.reagents.clear_reagents() return result_obj @@ -109,7 +109,7 @@ if (O.reagents) O.reagents.del_reagent("nutriment") O.reagents.update_total() - O.reagents.trans_to(result_obj, O.reagents.total_volume) + O.reagents.trans_to_obj(result_obj, O.reagents.total_volume) del(O) container.reagents.clear_reagents() return result_obj diff --git a/code/game/dna/dna_modifier.dm b/code/game/dna/dna_modifier.dm index 53086de252..c6ca532bbc 100644 --- a/code/game/dna/dna_modifier.dm +++ b/code/game/dna/dna_modifier.dm @@ -598,8 +598,7 @@ inject_amount = 0 if (inject_amount > 50) inject_amount = 50 - connected.beaker.reagents.trans_to(connected.occupant, inject_amount) - connected.beaker.reagents.reaction(connected.occupant) + connected.beaker.reagents.trans_to_mob(connected.occupant, inject_amount, CHEM_BLOOD) return 1 // return 1 forces an update to all Nano uis attached to src //////////////////////////////////////////////////////// diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 91c96fcfc9..5f2fbae56c 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -191,10 +191,10 @@ if(beaker.reagents.total_volume < beaker.reagents.maximum_volume) var/pumped = 0 for(var/datum/reagent/x in src.occupant.reagents.reagent_list) - src.occupant.reagents.trans_to(beaker, 3) + src.occupant.reagents.trans_to_obj(beaker, 3) pumped++ if (ishuman(src.occupant)) - src.occupant.vessel.trans_to(beaker, pumped + 1) + src.occupant.vessel.trans_to_obj(beaker, pumped + 1) src.updateUsrDialog() return diff --git a/code/game/machinery/bots/farmbot.dm b/code/game/machinery/bots/farmbot.dm index 4db416e7a6..7878b1e7a1 100644 --- a/code/game/machinery/bots/farmbot.dm +++ b/code/game/machinery/bots/farmbot.dm @@ -466,12 +466,7 @@ var splashAmount = min(70,tank.reagents.total_volume) src.visible_message("\red [src] splashes [target] with a bucket of water!") playsound(src.loc, 'sound/effects/slosh.ogg', 25, 1) - if ( prob(50) ) - tank.reagents.reaction(target, TOUCH) //splash the human! - else - tank.reagents.reaction(target.loc, TOUCH) //splash the human's roots! - spawn(5) - tank.reagents.remove_any(splashAmount) + tank.reagents.splash_mob(target, splashAmount) mode = FARMBOT_MODE_WAITING spawn(FARMBOT_EMAG_DELAY) diff --git a/code/game/machinery/bots/medbot.dm b/code/game/machinery/bots/medbot.dm index fbcb7d448e..5083ce6b97 100644 --- a/code/game/machinery/bots/medbot.dm +++ b/code/game/machinery/bots/medbot.dm @@ -428,8 +428,7 @@ spawn(30) if ((get_dist(src, src.patient) <= 1) && (src.on)) if((reagent_id == "internal_beaker") && (src.reagent_glass) && (src.reagent_glass.reagents.total_volume)) - src.reagent_glass.reagents.trans_to(src.patient,src.injection_amount) //Inject from beaker instead. - src.reagent_glass.reagents.reaction(src.patient, 2) + src.reagent_glass.reagents.trans_to_mob(src.patient, src.injection_amount, CHEM_BLOOD) //Inject from beaker instead. else src.patient.reagents.add_reagent(reagent_id,src.injection_amount) visible_message("\red [src] injects [src.patient] with the syringe!") diff --git a/code/game/machinery/cryo.dm b/code/game/machinery/cryo.dm index a9858742c9..803269a449 100644 --- a/code/game/machinery/cryo.dm +++ b/code/game/machinery/cryo.dm @@ -230,8 +230,7 @@ var/has_clonexa = occupant.reagents.get_reagent_amount("clonexadone") >= 1 var/has_cryo_medicine = has_cryo || has_clonexa if(beaker && !has_cryo_medicine) - beaker.reagents.trans_to(occupant, 1, 10) - beaker.reagents.reaction(occupant) + beaker.reagents.trans_to_mob(occupant, 1, CHEM_BLOOD, 10) /obj/machinery/atmospherics/unary/cryo_cell/proc/heat_gas_contents() if(air_contents.total_moles < 1) diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index 63ad92f017..99a2dc6607 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -32,7 +32,7 @@ if(80 to 90) filling.icon_state = "reagent80" if(91 to INFINITY) filling.icon_state = "reagent100" - filling.icon += mix_color_from_reagents(reagents.reagent_list) + filling.icon += reagents.get_color() overlays += filling /obj/machinery/iv_drip/MouseDrop(over_object, src_location, over_location) @@ -82,11 +82,11 @@ // Give blood if(mode) if(src.beaker.volume > 0) - var/transfer_amount = REAGENTS_METABOLISM + var/transfer_amount = REM if(istype(src.beaker, /obj/item/weapon/reagent_containers/blood)) // speed up transfer on blood packs transfer_amount = 4 - src.beaker.reagents.trans_to(src.attached, transfer_amount) + src.beaker.reagents.trans_to_mob(src.attached, transfer_amount, CHEM_BLOOD) update_icon() // Take blood diff --git a/code/game/machinery/kitchen/gibber.dm b/code/game/machinery/kitchen/gibber.dm index 52c1bdc380..657357542b 100644 --- a/code/game/machinery/kitchen/gibber.dm +++ b/code/game/machinery/kitchen/gibber.dm @@ -210,7 +210,7 @@ new_meat.reagents.add_reagent("nutriment",slab_nutrition) if(src.occupant.reagents) - src.occupant.reagents.trans_to(new_meat, round(occupant.reagents.total_volume/slab_count,1)) + src.occupant.reagents.trans_to_obj(new_meat, round(occupant.reagents.total_volume/slab_count,1)) src.occupant.attack_log += "\[[time_stamp()]\] Was gibbed by [user]/[user.ckey]" //One shall not simply gib a mob unnoticed! user.attack_log += "\[[time_stamp()]\] Gibbed [src.occupant]/[src.occupant.ckey]" diff --git a/code/game/mecha/equipment/tools/medical_tools.dm b/code/game/mecha/equipment/tools/medical_tools.dm index 08d6f2cca4..b25baa024d 100644 --- a/code/game/mecha/equipment/tools/medical_tools.dm +++ b/code/game/mecha/equipment/tools/medical_tools.dm @@ -439,7 +439,7 @@ var/turf/trg = get_turf(target) var/obj/item/weapon/reagent_containers/syringe/S = syringes[1] S.forceMove(get_turf(chassis)) - reagents.trans_to(S, min(S.volume, reagents.total_volume)) + reagents.trans_to_obj(S, min(S.volume, reagents.total_volume)) syringes -= S S.icon = 'icons/obj/chemical.dmi' S.icon_state = "syringeproj" @@ -458,7 +458,7 @@ if(M) S.icon_state = initial(S.icon_state) S.icon = initial(S.icon) - S.reagents.trans_to(M, S.reagents.total_volume) + S.reagents.trans_to_mob(M, S.reagents.total_volume, CHEM_BLOOD) M.take_organ_damage(2) S.visible_message(" [M] was hit by the syringe!") break @@ -587,7 +587,7 @@ if(!(D.CanPass(S,src.loc))) occupant_message("Unable to load syringe.") return 0 - S.reagents.trans_to(src, S.reagents.total_volume) + S.reagents.trans_to_obj(src, S.reagents.total_volume) S.forceMove(src) syringes += S occupant_message("Syringe loaded.") diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index 130d8d89c8..11cec79139 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -194,7 +194,7 @@ if(do_after_cooldown(target)) if( istype(target, /obj/structure/reagent_dispensers/watertank) && get_dist(chassis,target) <= 1) var/obj/o = target - var/amount = o.reagents.trans_to(src, 200) + var/amount = o.reagents.trans_to_obj(src, 200) occupant_message("\blue [amount] units transferred into internal tank.") playsound(chassis, 'sound/effects/refill.ogg', 50, 1, -6) return @@ -213,29 +213,24 @@ var/list/the_targets = list(T,T1,T2) - for(var/a=0, a<5, a++) + for(var/a = 1 to 5) spawn(0) - var/obj/effect/effect/water/W = new /obj/effect/effect/water( get_turf(chassis) ) - var/turf/my_target = pick(the_targets) - var/datum/reagents/R = new/datum/reagents(5) - if(!W) return - W.reagents = R - R.my_atom = W - if(!W || !src) return - src.reagents.trans_to(W,1) - for(var/b=0, b<5, b++) - step_towards(W,my_target) - if(!W || !W.reagents) return - W.reagents.reaction(get_turf(W)) - for(var/atom/atm in get_turf(W)) - if(!W) - return - if(!W.reagents) - break - W.reagents.reaction(atm) - if(W.loc == my_target) break - sleep(2) - W.delete() + var/obj/effect/effect/water/W = new /obj/effect/effect/water(get_turf(chassis)) + var/turf/my_target + if(a == 1) + my_target = T + else if(a == 2) + my_target = T1 + else if(a == 3) + my_target = T2 + else + my_target = pick(the_targets) + W.create_reagents(5) + if(!src) + return + reagents.trans_to_obj(W, spray_amount) + W.set_color() + W.set_up(my_target) return 1 get_equip_info() diff --git a/code/game/objects/effects/chemsmoke.dm b/code/game/objects/effects/chem/chemsmoke.dm similarity index 57% rename from code/game/objects/effects/chemsmoke.dm rename to code/game/objects/effects/chem/chemsmoke.dm index e64a84c47c..04f3b5d23d 100644 --- a/code/game/objects/effects/chemsmoke.dm +++ b/code/game/objects/effects/chem/chemsmoke.dm @@ -5,13 +5,11 @@ icon = 'icons/effects/chemsmoke.dmi' opacity = 0 time_to_live = 300 - pass_flags = PASSTABLE | PASSGRILLE | PASSGLASS //PASSGLASS is fine here, it's just so the visual effect can "flow" around glass + pass_flags = PASSTABLE | PASSGRILLE | PASSGLASS //PASSGLASS is fine here, it's just so the visual effect can "flow" around glass /obj/effect/effect/smoke/chem/New() ..() - var/datum/reagents/R = new/datum/reagents(500) - reagents = R - R.my_atom = src + create_reagents(500) return /datum/effect/effect/system/smoke_spread/chem @@ -37,21 +35,16 @@ /datum/effect/effect/system/smoke_spread/chem/New() ..() chemholder = new/obj() - var/datum/reagents/R = new/datum/reagents(500) - chemholder.reagents = R - R.my_atom = chemholder + chemholder.create_reagents(500) -//------------------------------------------ //Sets up the chem smoke effect -// // Calculates the max range smoke can travel, then gets all turfs in that view range. // Culls the selected turfs to a (roughly) circle shape, then calls smokeFlow() to make // sure the smoke can actually path to the turfs. This culls any turfs it can't reach. -//------------------------------------------ /datum/effect/effect/system/smoke_spread/chem/set_up(var/datum/reagents/carry = null, n = 10, c = 0, loca, direct) range = n * 0.3 cardinals = c - carry.copy_to(chemholder, carry.total_volume) + carry.trans_to_obj(chemholder, carry.total_volume, copy = 1) if(istype(loca, /turf/)) location = loca @@ -62,28 +55,19 @@ targetTurfs = new() - //build affected area list - for(var/turf/T in view(range, location)) - //cull turfs to circle - if(cheap_pythag(T.x - location.x, T.y - location.y) <= range) + for(var/turf/T in view(range, location)) //build affected area list + if(cheap_pythag(T.x - location.x, T.y - location.y) <= range) //cull turfs to circle targetTurfs += T - //make secondary list for reagents that affect walls - if(chemholder.reagents.has_reagent("thermite") || chemholder.reagents.has_reagent("plantbgone")) - wallList = new() + wallList = new() - //pathing check - smokeFlow(location, targetTurfs, wallList) + smokeFlow() //pathing check //set the density of the cloud - for diluting reagents - density = max(1, targetTurfs.len / 4) //clamp the cloud density minimum to 1 so it cant multiply the reagents + density = max(1, targetTurfs.len / 4) //clamp the cloud density minimum to 1 so it cant multiply the reagents //Admin messaging - var/contained = "" - for(var/reagent in carry.reagent_list) - contained += " [reagent] " - if(contained) - contained = "\[[contained]\]" + var/contained = carry.get_reagents() var/area/A = get_area(location) var/where = "[A.name] | [location.x], [location.y]" @@ -101,61 +85,27 @@ message_admins("A chemical smoke reaction has taken place in ([whereLink]). No associated key.", 0, 1) log_game("A chemical smoke reaction has taken place in ([where])[contained]. No associated key.") - -//------------------------------------------ //Runs the chem smoke effect -// // Spawns damage over time loop for each reagent held in the cloud. // Applies reagents to walls that affect walls (only thermite and plant-b-gone at the moment). // Also calculates target locations to spawn the visual smoke effect on, so the whole area // is covered fairly evenly. -//------------------------------------------ /datum/effect/effect/system/smoke_spread/chem/start() - - if(!location) //kill grenade if it somehow ends up in nullspace + if(!location) return - //reagent application - only run if there are extra reagents in the smoke - if(chemholder.reagents.reagent_list.len) - for(var/datum/reagent/R in chemholder.reagents.reagent_list) - var/proba = 100 - var/runs = 5 + if(chemholder.reagents.reagent_list.len) //reagent application - only run if there are extra reagents in the smoke + for(var/turf/T in wallList) + chemholder.reagents.touch_turf(T) + for(var/turf/T in targetTurfs) + chemholder.reagents.touch_turf(T) + for(var/atom/A in T.contents) + if(istype(A, /obj/effect/effect/smoke/chem) || istype(A, /mob)) + continue + else if(isobj(A)) + chemholder.reagents.touch_obj(A) - //dilute the reagents according to cloud density - R.volume /= density - chemholder.reagents.update_total() - - //apply wall affecting reagents to walls - if(R.id in list("thermite", "plantbgone")) - for(var/turf/T in wallList) - R.reaction_turf(T, R.volume) - - //reagents that should be applied to turfs in a random pattern - if(R.id == "carbon") - proba = 75 - else if(R.id in list("blood", "radium", "uranium")) - proba = 25 - - spawn(0) - for(var/i = 0, i < runs, i++) - for(var/turf/T in targetTurfs) - if(prob(proba)) - R.reaction_turf(T, R.volume) - for(var/atom/A in T.contents) - if(istype(A, /obj/effect/effect/smoke/chem)) //skip the item if it is chem smoke - continue - else if(istype(A, /mob)) - var/dist = cheap_pythag(T.x - location.x, T.y - location.y) - if(!dist) - dist = 1 - R.reaction_mob(A, volume = R.volume / dist) - else if(istype(A, /obj)) - R.reaction_obj(A, R.volume) - sleep(30) - - - //build smoke icon - var/color = mix_color_from_reagents(chemholder.reagents.reagent_list) + var/color = chemholder.reagents.get_color() //build smoke icon var/icon/I if(color) I = icon('icons/effects/chemsmoke.dmi') @@ -163,13 +113,9 @@ else I = icon('icons/effects/96x96.dmi', "smoke") + var/const/arcLength = 2.3559 //distance between each smoke cloud - //distance between each smoke cloud - var/const/arcLength = 2.3559 - - - //calculate positions for smoke coverage - then spawn smoke - for(var/i = 0, i < range, i++) + for(var/i = 0, i < range, i++) //calculate positions for smoke coverage - then spawn smoke var/radius = i * 1.5 if(!radius) spawn(0) @@ -194,25 +140,16 @@ spawn(0) spawnSmoke(T, I, range) -//------------------------------------------ -// Randomizes and spawns the smoke effect. -// Also handles deleting the smoke once the effect is finished. -//------------------------------------------ -/datum/effect/effect/system/smoke_spread/chem/proc/spawnSmoke(var/turf/T, var/icon/I, var/dist = 1, var/obj/effect/effect/smoke/chem/passed_smoke) - - var/obj/effect/effect/smoke/chem/smoke - if(passed_smoke) - smoke = passed_smoke - else - smoke = new(location) +/datum/effect/effect/system/smoke_spread/chem/proc/spawnSmoke(var/turf/T, var/icon/I, var/dist = 1) // Randomizes and spawns the smoke effect. Also handles deleting the smoke once the effect is finished. + var/obj/effect/effect/smoke/chem/smoke = new(location) if(chemholder.reagents.reagent_list.len) - chemholder.reagents.copy_to(smoke, chemholder.reagents.total_volume / dist, safety = 1) //copy reagents to the smoke so mob/breathe() can handle inhaling the reagents + chemholder.reagents.trans_to_obj(smoke, chemholder.reagents.total_volume / dist, copy = 1) //copy reagents to the smoke so mob/breathe() can handle inhaling the reagents smoke.icon = I smoke.layer = 6 smoke.set_dir(pick(cardinal)) - smoke.pixel_x = -32 + rand(-8,8) - smoke.pixel_y = -32 + rand(-8,8) + smoke.pixel_x = -32 + rand(-8, 8) + smoke.pixel_y = -32 + rand(-8, 8) walk_to(smoke, T) smoke.opacity = 1 //switching opacity on after the smoke has spawned, and then sleep(150+rand(0,20)) // turning it off before it is deleted results in cleaner @@ -225,21 +162,15 @@ spores.name = "cloud of [seed.seed_name] [seed.seed_noun]" ..(T, I, dist, spores) -//------------------------------------------ -// Fades out the smoke smoothly using it's alpha variable. -//------------------------------------------ -/datum/effect/effect/system/smoke_spread/chem/proc/fadeOut(var/atom/A, var/frames = 16) +/datum/effect/effect/system/smoke_spread/chem/proc/fadeOut(var/atom/A, var/frames = 16) // Fades out the smoke smoothly using it's alpha variable. var/step = A.alpha / frames for(var/i = 0, i < frames, i++) A.alpha -= step sleep(world.tick_lag) return -//------------------------------------------ -// Smoke pathfinder. Uses a flood fill method based on zones to -// quickly check what turfs the smoke (airflow) can actually reach. -//------------------------------------------ -/datum/effect/effect/system/smoke_spread/chem/proc/smokeFlow() + +/datum/effect/effect/system/smoke_spread/chem/proc/smokeFlow() // Smoke pathfinder. Uses a flood fill method based on zones to quickly check what turfs the smoke (airflow) can actually reach. var/list/pending = new() var/list/complete = new() diff --git a/code/game/objects/effects/chem/foam.dm b/code/game/objects/effects/chem/foam.dm new file mode 100644 index 0000000000..7f9a8f741a --- /dev/null +++ b/code/game/objects/effects/chem/foam.dm @@ -0,0 +1,184 @@ +// Foam +// Similar to smoke, but spreads out more +// metal foams leave behind a foamed metal wall + +/obj/effect/effect/foam + name = "foam" + icon_state = "foam" + opacity = 0 + anchored = 1 + density = 0 + layer = OBJ_LAYER + 0.9 + mouse_opacity = 0 + animate_movement = 0 + var/amount = 3 + var/expand = 1 + var/metal = 0 + +/obj/effect/effect/foam/New(var/loc, var/ismetal = 0) + ..(loc) + icon_state = "[ismetal? "m" : ""]foam" + metal = ismetal + playsound(src, 'sound/effects/bubbles2.ogg', 80, 1, -3) + spawn(3 + metal * 3) + process() + checkReagents() + spawn(120) + processing_objects.Remove(src) + sleep(30) + if(metal) + var/obj/structure/foamedmetal/M = new(src.loc) + M.metal = metal + M.updateicon() + flick("[icon_state]-disolve", src) + sleep(5) + delete() + return + +/obj/effect/effect/foam/proc/checkReagents() // transfer any reagents to the floor + if(!metal && reagents) + var/turf/T = get_turf(src) + reagents.touch_turf(T) + +/obj/effect/effect/foam/process() + if(--amount < 0) + return + + for(var/direction in cardinal) + var/turf/T = get_step(src, direction) + if(!T) + continue + + if(!T.Enter(src)) + continue + + var/obj/effect/effect/foam/F = locate() in T + if(F) + continue + + F = new(T, metal) + F.amount = amount + if(!metal) + F.create_reagents(10) + if(reagents) + for(var/datum/reagent/R in reagents.reagent_list) + F.reagents.add_reagent(R.id, 1, safety = 1) //added safety check since reagents in the foam have already had a chance to react + +/obj/effect/effect/foam/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) // foam disolves when heated, except metal foams + if(!metal && prob(max(0, exposed_temperature - 475))) + flick("[icon_state]-disolve", src) + + spawn(5) + delete() + +/obj/effect/effect/foam/Crossed(var/atom/movable/AM) + if(metal) + return + if(istype(AM, /mob/living)) + var/mob/living/M = AM + M.slip("the foam", 6) + +/datum/effect/effect/system/foam_spread + var/amount = 5 // the size of the foam spread. + var/list/carried_reagents // the IDs of reagents present when the foam was mixed + var/metal = 0 // 0 = foam, 1 = metalfoam, 2 = ironfoam + +/datum/effect/effect/system/foam_spread/set_up(amt=5, loca, var/datum/reagents/carry = null, var/metalfoam = 0) + amount = round(sqrt(amt / 3), 1) + if(istype(loca, /turf/)) + location = loca + else + location = get_turf(loca) + + carried_reagents = list() + metal = metalfoam + + // bit of a hack here. Foam carries along any reagent also present in the glass it is mixed with (defaults to water if none is present). Rather than actually transfer the reagents, this makes a list of the reagent ids and spawns 1 unit of that reagent when the foam disolves. + + if(carry && !metal) + for(var/datum/reagent/R in carry.reagent_list) + carried_reagents += R.id + +/datum/effect/effect/system/foam_spread/start() + spawn(0) + var/obj/effect/effect/foam/F = locate() in location + if(F) + F.amount += amount + return + + F = new(location, metal) + F.amount = amount + + if(!metal) // don't carry other chemicals if a metal foam + F.create_reagents(10) + + if(carried_reagents) + for(var/id in carried_reagents) + F.reagents.add_reagent(id, 1, safety = 1) //makes a safety call because all reagents should have already reacted anyway + else + F.reagents.add_reagent("water", 1, safety = 1) + +// wall formed by metal foams, dense and opaque, but easy to break + +/obj/structure/foamedmetal + icon = 'icons/effects/effects.dmi' + icon_state = "metalfoam" + density = 1 + opacity = 1 // changed in New() + anchored = 1 + name = "foamed metal" + desc = "A lightweight foamed metal wall." + var/metal = 1 // 1 = aluminum, 2 = iron + +/obj/structure/foamedmetal/New() + ..() + update_nearby_tiles(1) + +/obj/structure/foamedmetal/Del() + density = 0 + update_nearby_tiles(1) + ..() + +/obj/structure/foamedmetal/proc/updateicon() + if(metal == 1) + icon_state = "metalfoam" + else + icon_state = "ironfoam" + +/obj/structure/foamedmetal/ex_act(severity) + del(src) + +/obj/structure/foamedmetal/blob_act() + del(src) + +/obj/structure/foamedmetal/bullet_act() + if(metal == 1 || prob(50)) + del(src) + +/obj/structure/foamedmetal/attack_hand(var/mob/user) + if ((HULK in user.mutations) || (prob(75 - metal * 25))) + user.visible_message("[user] smashes through the foamed metal.", "You smash through the metal foam wall.") + del(src) + else + user << "You hit the metal foam but bounce off it." + return + +/obj/structure/foamedmetal/attackby(var/obj/item/I, var/mob/user) + if(istype(I, /obj/item/weapon/grab)) + var/obj/item/weapon/grab/G = I + G.affecting.loc = src.loc + visible_message("[G.assailant] smashes [G.affecting] through the foamed metal wall.") + del(I) + del(src) + return + + if(prob(I.force * 20 - metal * 25)) + user.visible_message("[user] smashes through the foamed metal.", "You smash through the foamed metal with \the [I].") + del(src) + else + user << "You hit the metal foam to no effect." + +/obj/structure/foamedmetal/CanPass(atom/movable/mover, turf/target, height=1.5, air_group = 0) + if(air_group) + return 0 + return !density \ No newline at end of file diff --git a/code/game/objects/effects/chem/water.dm b/code/game/objects/effects/chem/water.dm new file mode 100644 index 0000000000..e164b20b60 --- /dev/null +++ b/code/game/objects/effects/chem/water.dm @@ -0,0 +1,50 @@ +/obj/effect/effect/water + name = "water" + icon = 'icons/effects/effects.dmi' + icon_state = "extinguish" + mouse_opacity = 0 + +/obj/effect/effect/water/New(loc) + ..() + spawn(150) // In case whatever made it forgets to delete it + if(src) + delete() + +/obj/effect/effect/water/proc/set_color() // Call it after you move reagents to it + icon += reagents.get_color() + +/obj/effect/effect/water/proc/set_up(var/turf/target, var/step_count = 5, var/delay = 5) + if(!target) + return + for(var/i = 1 to step_count) + step_towards(src, target) + var/turf/T = get_turf(src) + reagents.touch_turf(T) + var/mob/M = locate() in T + if(M) + reagents.splash_mob(M, reagents.total_volume) + break + for(var/atom/A in T) + reagents.touch(A) + if(T == get_turf(target)) + break + sleep(delay) + sleep(10) + delete() + +/obj/effect/effect/water/Move(turf/newloc) + if(newloc.density) + return 0 + . = ..() + +/obj/effect/effect/water/Bump(atom/A) + if(reagents) + reagents.touch(A) + return ..() + +//Used by spraybottles. +/obj/effect/effect/water/chempuff + name = "chemicals" + icon = 'icons/obj/chempuff.dmi' + icon_state = "" + pass_flags = PASSTABLE | PASSGRILLE \ No newline at end of file diff --git a/code/game/objects/effects/decals/misc.dm b/code/game/objects/effects/decals/misc.dm index 7734989150..964a1301b8 100644 --- a/code/game/objects/effects/decals/misc.dm +++ b/code/game/objects/effects/decals/misc.dm @@ -11,10 +11,4 @@ /obj/effect/decal/spraystill density = 0 anchored = 1 - layer = 50 - -//Used by spraybottles. -/obj/effect/decal/chempuff - name = "chemicals" - icon = 'icons/obj/chempuff.dmi' - pass_flags = PASSTABLE | PASSGRILLE \ No newline at end of file + layer = 50 \ No newline at end of file diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm index ea9af2f70f..9182204fe3 100644 --- a/code/game/objects/effects/effect_system.dm +++ b/code/game/objects/effects/effect_system.dm @@ -13,36 +13,12 @@ would spawn and follow the beaker, even if it is carried or thrown. unacidable = 1//So effect are not targeted by alien acid. pass_flags = PASSTABLE | PASSGRILLE -/obj/effect/effect/water - name = "water" - icon = 'icons/effects/effects.dmi' - icon_state = "extinguish" - var/life = 15.0 - mouse_opacity = 0 - /obj/effect/proc/delete() loc = null if(reagents) reagents.delete() return -/obj/effect/effect/water/Move(turf/newloc) - //var/turf/T = src.loc - //if (istype(T, /turf)) - // T.firelevel = 0 //TODO: FIX - if (--src.life < 1) - //SN src = null - delete() - if(newloc.density) - return 0 - .=..() - -/obj/effect/effect/water/Bump(atom/A) - if(reagents) - reagents.reaction(A) - return ..() - - /datum/effect/effect/system var/number = 3 var/cardinals = 0 @@ -482,227 +458,6 @@ steam.start() -- spawns the effect src.processing = 0 src.on = 0 - - -// Foam -// Similar to smoke, but spreads out more -// metal foams leave behind a foamed metal wall - -/obj/effect/effect/foam - name = "foam" - icon_state = "foam" - opacity = 0 - anchored = 1 - density = 0 - layer = OBJ_LAYER + 0.9 - mouse_opacity = 0 - var/amount = 3 - var/expand = 1 - animate_movement = 0 - var/metal = 0 - - -/obj/effect/effect/foam/New(loc, var/ismetal=0) - ..(loc) - icon_state = "[ismetal ? "m":""]foam" - metal = ismetal - playsound(src, 'sound/effects/bubbles2.ogg', 80, 1, -3) - spawn(3 + metal*3) - process() - checkReagents() - spawn(120) - processing_objects.Remove(src) - sleep(30) - - if(metal) - var/obj/structure/foamedmetal/M = new(src.loc) - M.metal = metal - M.updateicon() - - flick("[icon_state]-disolve", src) - sleep(5) - delete() - return - -// transfer any reagents to the floor -/obj/effect/effect/foam/proc/checkReagents() - if(!metal && reagents) - for(var/atom/A in src.loc.contents) - if(A == src) - continue - reagents.reaction(A, 1, 1) - -/obj/effect/effect/foam/process() - if(--amount < 0) - return - - - for(var/direction in cardinal) - - - var/turf/T = get_step(src,direction) - if(!T) - continue - - if(!T.Enter(src)) - continue - - var/obj/effect/effect/foam/F = locate() in T - if(F) - continue - - F = new(T, metal) - F.amount = amount - if(!metal) - F.create_reagents(10) - if (reagents) - for(var/datum/reagent/R in reagents.reagent_list) - F.reagents.add_reagent(R.id, 1, safety = 1) //added safety check since reagents in the foam have already had a chance to react - -// foam disolves when heated -// except metal foams -/obj/effect/effect/foam/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) - if(!metal && prob(max(0, exposed_temperature - 475))) - flick("[icon_state]-disolve", src) - - spawn(5) - delete() - - -/obj/effect/effect/foam/Crossed(var/atom/movable/AM) - if(metal) - return - if(istype(AM, /mob/living)) - var/mob/living/M = AM - M.slip("the foam",6) - -/datum/effect/effect/system/foam_spread - var/amount = 5 // the size of the foam spread. - var/list/carried_reagents // the IDs of reagents present when the foam was mixed - var/metal = 0 // 0=foam, 1=metalfoam, 2=ironfoam - - - - - set_up(amt=5, loca, var/datum/reagents/carry = null, var/metalfoam = 0) - amount = round(sqrt(amt / 3), 1) - if(istype(loca, /turf/)) - location = loca - else - location = get_turf(loca) - - carried_reagents = list() - metal = metalfoam - - - // bit of a hack here. Foam carries along any reagent also present in the glass it is mixed - // with (defaults to water if none is present). Rather than actually transfer the reagents, - // this makes a list of the reagent ids and spawns 1 unit of that reagent when the foam disolves. - - - if(carry && !metal) - for(var/datum/reagent/R in carry.reagent_list) - carried_reagents += R.id - - start() - spawn(0) - var/obj/effect/effect/foam/F = locate() in location - if(F) - F.amount += amount - return - - F = new(src.location, metal) - F.amount = amount - - if(!metal) // don't carry other chemicals if a metal foam - F.create_reagents(10) - - if(carried_reagents) - for(var/id in carried_reagents) - F.reagents.add_reagent(id, 1, null, 1) //makes a safety call because all reagents should have already reacted anyway - else - F.reagents.add_reagent("water", 1, safety = 1) - -// wall formed by metal foams -// dense and opaque, but easy to break - -/obj/structure/foamedmetal - icon = 'icons/effects/effects.dmi' - icon_state = "metalfoam" - density = 1 - opacity = 1 // changed in New() - anchored = 1 - name = "foamed metal" - desc = "A lightweight foamed metal wall." - var/metal = 1 // 1=aluminum, 2=iron - - New() - ..() - update_nearby_tiles(1) - - - - Del() - - density = 0 - update_nearby_tiles(1) - ..() - - proc/updateicon() - if(metal == 1) - icon_state = "metalfoam" - else - icon_state = "ironfoam" - - - ex_act(severity) - del(src) - - blob_act() - del(src) - - bullet_act() - if(metal==1 || prob(50)) - del(src) - - attack_hand(var/mob/user) - if ((HULK in user.mutations) || (prob(75 - metal*25))) - user << "\blue You smash through the metal foam wall." - for(var/mob/O in oviewers(user)) - if ((O.client && !( O.blinded ))) - O << "\red [user] smashes through the foamed metal." - - del(src) - else - user << "\blue You hit the metal foam but bounce off it." - return - - - attackby(var/obj/item/I, var/mob/user) - - if (istype(I, /obj/item/weapon/grab)) - var/obj/item/weapon/grab/G = I - G.affecting.loc = src.loc - for(var/mob/O in viewers(src)) - if (O.client) - O << "\red [G.assailant] smashes [G.affecting] through the foamed metal wall." - del(I) - del(src) - return - - if(prob(I.force*20 - metal*25)) - user << "\blue You smash through the foamed metal with \the [I]." - for(var/mob/O in oviewers(user)) - if ((O.client && !( O.blinded ))) - O << "\red [user] smashes through the foamed metal." - del(src) - else - user << "\blue You hit the metal foam to no effect." - - CanPass(atom/movable/mover, turf/target, height=1.5, air_group = 0) - if(air_group) return 0 - return !density - /datum/effect/effect/system/reagents_explosion var/amount // TNT equivalent var/flashing = 0 // does explosion creates flash effect? diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 0baff58a85..5fbebf9b6b 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -48,7 +48,7 @@ /obj/item/toy/balloon/afterattack(atom/A as mob|obj, mob/user as mob, proximity) if(!proximity) return if (istype(A, /obj/structure/reagent_dispensers/watertank) && get_dist(src,A) <= 1) - A.reagents.trans_to(src, 10) + A.reagents.trans_to_obj(src, 10) user << "\blue You fill the balloon with the contents of [A]." src.desc = "A translucent balloon with some form of liquid sloshing around in it." src.update_icon() @@ -62,21 +62,21 @@ else if(O.reagents.total_volume >= 1) if(O.reagents.has_reagent("pacid", 1)) user << "The acid chews through the balloon!" - O.reagents.reaction(user) + O.reagents.splash_mob(user, reagents.total_volume) del(src) else src.desc = "A translucent balloon with some form of liquid sloshing around in it." user << "\blue You fill the balloon with the contents of [O]." - O.reagents.trans_to(src, 10) + O.reagents.trans_to_obj(src, 10) src.update_icon() return /obj/item/toy/balloon/throw_impact(atom/hit_atom) if(src.reagents.total_volume >= 1) src.visible_message("\red The [src] bursts!","You hear a pop and a splash.") - src.reagents.reaction(get_turf(hit_atom)) + src.reagents.touch_turf(get_turf(hit_atom)) for(var/atom/A in get_turf(hit_atom)) - src.reagents.reaction(A) + src.reagents.touch(A) src.icon_state = "burst" spawn(5) if(src) @@ -482,15 +482,15 @@ D.icon = 'icons/obj/chemical.dmi' D.icon_state = "chempuff" D.create_reagents(5) - src.reagents.trans_to(D, 1) + src.reagents.trans_to_obj(D, 1) playsound(src.loc, 'sound/effects/spray3.ogg', 50, 1, -6) spawn(0) for(var/i=0, i<1, i++) step_towards(D,A) - D.reagents.reaction(get_turf(D)) + D.reagents.touch_turf(get_turf(D)) for(var/atom/T in get_turf(D)) - D.reagents.reaction(T) + D.reagents.touch(T) if(ismob(T) && T:client) T:client << "\red [user] has sprayed you with water!" sleep(4) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 67e322496c..580033e63c 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -114,10 +114,9 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(H.species.flags & IS_SYNTHETIC) return - reagents.trans_to(C, REAGENTS_METABOLISM, 0.2) // Most of it is not inhaled... balance reasons. - reagents.reaction(C) + reagents.trans_to_mob(C, REM, CHEM_INGEST, 0.2) // Most of it is not inhaled... balance reasons. else // else just remove some of the reagents - reagents.remove_any(REAGENTS_METABOLISM) + reagents.remove_any(REM) /obj/item/clothing/mask/smokable/proc/light(var/flavor_text = "[usr] lights the [name].") if(!src.lit) @@ -176,7 +175,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM M.update_inv_l_hand(0) M.update_inv_r_hand(1) processing_objects.Remove(src) - + /obj/item/clothing/mask/smokable/attackby(obj/item/weapon/W as obj, mob/user as mob) ..() if(isflamesource(W)) @@ -221,7 +220,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(istype(W, /obj/item/weapon/melee/energy/sword)) var/obj/item/weapon/melee/energy/sword/S = W if(S.active) - light("[user] swings their [W], barely missing their nose. They light their [name] in the process.") + light("[user] swings their [W], barely missing their nose. They light their [name] in the process.") return @@ -230,7 +229,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(!proximity) return if(istype(glass)) //you can dip cigarettes into beakers - var/transfered = glass.reagents.trans_to(src, chem_volume) + var/transfered = glass.reagents.trans_to_obj(src, chem_volume) if(transfered) //if reagents were transfered, show the message user << "You dip \the [src] into \the [glass]." else //if not, either the beaker was empty, or the cigarette was full @@ -375,7 +374,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM return smoketime = 1000 if(G.reagents) - G.reagents.trans_to(src, G.reagents.total_volume) + G.reagents.trans_to_obj(src, G.reagents.total_volume) name = "[G.name]-packed [initial(name)]" del(G) diff --git a/code/game/objects/items/weapons/extinguisher.dm b/code/game/objects/items/weapons/extinguisher.dm index 4408e998ce..66b08e73f1 100644 --- a/code/game/objects/items/weapons/extinguisher.dm +++ b/code/game/objects/items/weapons/extinguisher.dm @@ -31,15 +31,11 @@ w_class = 2.0 force = 3.0 max_water = 60 - spray_particles = 6 - spray_amount = 2 sprite_name = "miniFE" /obj/item/weapon/extinguisher/New() - var/datum/reagents/R = new/datum/reagents(max_water) - reagents = R - R.my_atom = src - R.add_reagent("water", max_water) + create_reagents(max_water) + reagents.add_reagent("water", max_water) /obj/item/weapon/extinguisher/examine(mob/user) if(..(user, 0)) @@ -53,19 +49,19 @@ user << "The safety is [safety ? "on" : "off"]." return -/obj/item/weapon/extinguisher/afterattack(atom/target, mob/user , flag) +/obj/item/weapon/extinguisher/afterattack(var/atom/target, var/mob/user, var/flag) //TODO; Add support for reagents in water. - if( istype(target, /obj/structure/reagent_dispensers/watertank) && get_dist(src,target) <= 1) + if( istype(target, /obj/structure/reagent_dispensers/watertank) && flag) var/obj/o = target - var/amount = o.reagents.trans_to(src, 50) - user << "\blue You fill [src] with [amount] units of the contents of [target]." + var/amount = o.reagents.trans_to_obj(src, 50) + user << "You fill [src] with [amount] units of the contents of [target]." playsound(src.loc, 'sound/effects/refill.ogg', 50, 1, -6) return if (!safety) if (src.reagents.total_volume < 1) - usr << "\red \The [src] is empty." + usr << "\The [src] is empty." return if (world.time < src.last_use + 20) @@ -77,35 +73,35 @@ var/direction = get_dir(src,target) - if(usr.buckled && isobj(usr.buckled) && !usr.buckled.anchored ) + if(user.buckled && isobj(user.buckled) && !user.buckled.anchored ) spawn(0) var/obj/structure/bed/chair/C = null - if(istype(usr.buckled, /obj/structure/bed/chair)) - C = usr.buckled - var/obj/B = usr.buckled + if(istype(user.buckled, /obj/structure/bed/chair)) + C = user.buckled + var/obj/B = user.buckled var/movementdirection = turn(direction,180) if(C) C.propelled = 4 - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) sleep(1) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) if(C) C.propelled = 3 sleep(1) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) sleep(1) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) if(C) C.propelled = 2 sleep(2) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) if(C) C.propelled = 1 sleep(2) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) if(C) C.propelled = 0 sleep(3) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) sleep(3) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) sleep(3) - B.Move(get_step(usr,movementdirection), movementdirection) + B.Move(get_step(user,movementdirection), movementdirection) var/turf/T = get_turf(target) var/turf/T1 = get_step(T,turn(direction, 90)) @@ -113,33 +109,24 @@ var/list/the_targets = list(T,T1,T2) - for(var/a=0, a < spray_particles, a++) + for(var/a = 1 to spray_particles) spawn(0) - var/obj/effect/effect/water/W = new /obj/effect/effect/water( get_turf(src) ) - var/turf/my_target = pick(the_targets) - var/datum/reagents/R = new/datum/reagents(spray_amount) - if(!W) return - W.reagents = R - R.my_atom = W - if(!W || !src) return - src.reagents.trans_to(W, spray_amount) - - for(var/b=0, b<5, b++) - step_towards(W,my_target) - if(!W || !W.reagents) return - W.reagents.reaction(get_turf(W)) - for(var/atom/atm in get_turf(W)) - if(!W) - return - if(!W.reagents) - break - W.reagents.reaction(atm) - if(isliving(atm)) //For extinguishing mobs on fire - var/mob/living/M = atm - M.ExtinguishMob() - if(W.loc == my_target) break - sleep(2) - W.delete() + var/obj/effect/effect/water/W = new /obj/effect/effect/water(get_turf(src)) + var/turf/my_target + if(a == 1) + my_target = T + else if(a == 2) + my_target = T1 + else if(a == 3) + my_target = T2 + else + my_target = pick(the_targets) + W.create_reagents(spray_amount) + if(!src) + return + reagents.trans_to_obj(W, spray_amount) + W.set_color() + W.set_up(my_target) if((istype(usr.loc, /turf/space)) || (usr.lastarea.has_gravity == 0)) user.inertia_dir = get_dir(target, user) diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index bb440d1215..a6bf75ee3a 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -158,7 +158,7 @@ for(var/atom/A in view(affected_area, src.loc)) if( A == src ) continue - src.reagents.reaction(A, 1, 10) + src.reagents.touch(A) if(istype(loc, /mob/living/carbon)) //drop dat grenade if it goes off in your hand var/mob/living/carbon/C = loc diff --git a/code/game/objects/items/weapons/implants/implant.dm b/code/game/objects/items/weapons/implants/implant.dm index c7c7e762ab..a912c17e64 100644 --- a/code/game/objects/items/weapons/implants/implant.dm +++ b/code/game/objects/items/weapons/implants/implant.dm @@ -291,7 +291,7 @@ the implant may become unstable and either pre-maturely inject the subject or si activate(var/cause) if((!cause) || (!src.imp_in)) return 0 var/mob/living/carbon/R = src.imp_in - src.reagents.trans_to(R, cause) + src.reagents.trans_to_mob(R, cause, CHEM_BLOOD) R << "You hear a faint *beep*." if(!src.reagents.total_volume) R << "You hear a faint click from your chest." diff --git a/code/game/objects/items/weapons/implants/implantcase.dm b/code/game/objects/items/weapons/implants/implantcase.dm index 00ce8a7950..2c581fc85e 100644 --- a/code/game/objects/items/weapons/implants/implantcase.dm +++ b/code/game/objects/items/weapons/implants/implantcase.dm @@ -38,7 +38,7 @@ user << "\red [src] is full." else spawn(5) - I.reagents.trans_to(src.imp, 5) + I.reagents.trans_to_mob(src.imp, 5) user << "\blue You inject 5 units of the solution. The syringe now contains [I.reagents.total_volume] units." else if (istype(I, /obj/item/weapon/implanter)) var/obj/item/weapon/implanter/M = I diff --git a/code/game/objects/items/weapons/kitchen.dm b/code/game/objects/items/weapons/kitchen.dm index 66d8c6d01b..637d87d33d 100644 --- a/code/game/objects/items/weapons/kitchen.dm +++ b/code/game/objects/items/weapons/kitchen.dm @@ -49,7 +49,7 @@ return ..() if (reagents.total_volume > 0) - reagents.trans_to_ingest(M, reagents.total_volume) + reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) if(M == user) for(var/mob/O in viewers(M, null)) O.show_message(text("\blue [] eats some [] from \the [].", user, loaded, src), 1) diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm index fe9945f8f0..e02fd93089 100644 --- a/code/game/objects/items/weapons/mop.dm +++ b/code/game/objects/items/weapons/mop.dm @@ -25,9 +25,7 @@ for(var/obj/effect/O in src) if(istype(O,/obj/effect/rune) || istype(O,/obj/effect/decal/cleanable) || istype(O,/obj/effect/overlay)) del(O) - source.reagents.reaction(src, TOUCH, 10) //10 is the multiplier for the reaction effect. probably needed to wet the floor properly. - source.reagents.remove_any(1) //reaction() doesn't use up the reagents - + source.reagents.trans_to_turf(src, 1, 10) //10 is the multiplier for the reaction effect. probably needed to wet the floor properly. /obj/item/weapon/mop/afterattack(atom/A, mob/user, proximity) if(!proximity) return diff --git a/code/game/objects/items/weapons/paint.dm b/code/game/objects/items/weapons/paint.dm index 77f8172f8f..602e0e7abc 100644 --- a/code/game/objects/items/weapons/paint.dm +++ b/code/game/objects/items/weapons/paint.dm @@ -20,11 +20,8 @@ var/global/list/cached_icons = list() afterattack(turf/simulated/target, mob/user, proximity) if(!proximity) return if(istype(target) && reagents.total_volume > 5) - for(var/mob/O in viewers(user)) - O.show_message("\red \The [target] has been splashed with something by [user]!", 1) - spawn(5) - reagents.reaction(target, TOUCH) - reagents.remove_any(5) + user.visible_message("\The [target] has been splashed with something by [user]!") + reagents.trans_to_turf(target, 5) else return ..() diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index 7af6e3b16e..1a00530932 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -158,7 +158,7 @@ /obj/item/weapon/storage/fancy/cigarettes/remove_from_storage(obj/item/W as obj, atom/new_location) var/obj/item/clothing/mask/smokable/cigarette/C = W if(!istype(C)) return // what - reagents.trans_to(C, (reagents.total_volume/contents.len)) + reagents.trans_to_obj(C, (reagents.total_volume/contents.len)) ..() /obj/item/weapon/storage/fancy/cigarettes/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) @@ -167,7 +167,7 @@ if(M == user && user.zone_sel.selecting == "mouth" && contents.len > 0 && !user.wear_mask) var/obj/item/clothing/mask/smokable/cigarette/W = new /obj/item/clothing/mask/smokable/cigarette(user) - reagents.trans_to(W, (reagents.total_volume/contents.len)) + reagents.trans_to_obj(W, (reagents.total_volume/contents.len)) user.equip_to_slot_if_possible(W, slot_wear_mask) reagents.maximum_volume = 15 * contents.len contents.len-- @@ -213,7 +213,7 @@ /obj/item/weapon/storage/fancy/cigar/remove_from_storage(obj/item/W as obj, atom/new_location) var/obj/item/clothing/mask/smokable/cigarette/cigar/C = W if(!istype(C)) return - reagents.trans_to(C, (reagents.total_volume/contents.len)) + reagents.trans_to_obj(C, (reagents.total_volume/contents.len)) ..() /obj/item/weapon/storage/fancy/cigar/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) @@ -222,7 +222,7 @@ if(M == user && user.zone_sel.selecting == "mouth" && contents.len > 0 && !user.wear_mask) var/obj/item/clothing/mask/smokable/cigarette/cigar/W = new /obj/item/clothing/mask/smokable/cigarette/cigar(user) - reagents.trans_to(W, (reagents.total_volume/contents.len)) + reagents.trans_to_obj(W, (reagents.total_volume/contents.len)) user.equip_to_slot_if_possible(W, slot_wear_mask) reagents.maximum_volume = 15 * contents.len contents.len-- diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index ee56415be7..42d4b4c660 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -247,7 +247,7 @@ /obj/item/weapon/weldingtool/afterattack(obj/O as obj, mob/user as mob, proximity) if(!proximity) return if (istype(O, /obj/structure/reagent_dispensers/fueltank) && get_dist(src,O) <= 1 && !src.welding) - O.reagents.trans_to(src, max_fuel) + O.reagents.trans_to_obj(src, max_fuel) user << "\blue Welder refueled" playsound(src.loc, 'sound/effects/refill.ogg', 50, 1, -6) return diff --git a/code/game/objects/items/weapons/weldbackpack.dm b/code/game/objects/items/weapons/weldbackpack.dm index f1c786d3e1..16b23b7880 100644 --- a/code/game/objects/items/weapons/weldbackpack.dm +++ b/code/game/objects/items/weapons/weldbackpack.dm @@ -27,7 +27,7 @@ else if(T.welding) user << "\red That was close!" - src.reagents.trans_to(W, T.max_fuel) + src.reagents.trans_to_obj(W, T.max_fuel) user << "\blue Welder refilled!" playsound(src.loc, 'sound/effects/refill.ogg', 50, 1, -6) return @@ -38,7 +38,7 @@ if(!proximity) // this replaces and improves the get_dist(src,O) <= 1 checks used previously return if (istype(O, /obj/structure/reagent_dispensers/fueltank) && src.reagents.total_volume < max_fuel) - O.reagents.trans_to(src, max_fuel) + O.reagents.trans_to_obj(src, max_fuel) user << "\blue You crack the cap off the top of the pack and fill it back up again from the tank." playsound(src.loc, 'sound/effects/refill.ogg', 50, 1, -6) return diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 2480fff6da..37eec45239 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -286,8 +286,8 @@ New() ..() - new /obj/item/weapon/reagent_containers/ld50_syringe/choral(src) - new /obj/item/weapon/reagent_containers/ld50_syringe/choral(src) + new /obj/item/weapon/reagent_containers/syringe/ld50_syringe/choral(src) + new /obj/item/weapon/reagent_containers/syringe/ld50_syringe/choral(src) return diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index bd253da195..237250e3fd 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -39,7 +39,7 @@ if(reagents.total_volume < 1) user << "[src] is out of water!" else - reagents.trans_to(I, 5) // + reagents.trans_to_obj(I, 5) // user << "You wet [I] in [src]." playsound(loc, 'sound/effects/slosh.ogg', 25, 1) return @@ -186,7 +186,7 @@ /obj/structure/bed/chair/janicart/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/weapon/mop)) if(reagents.total_volume > 1) - reagents.trans_to(I, 2) + reagents.trans_to_obj(I, 2) user << "You wet [I] in the [callme]." playsound(loc, 'sound/effects/slosh.ogg', 25, 1) else diff --git a/code/game/objects/structures/mop_bucket.dm b/code/game/objects/structures/mop_bucket.dm index ec568b8408..ace1293fc7 100644 --- a/code/game/objects/structures/mop_bucket.dm +++ b/code/game/objects/structures/mop_bucket.dm @@ -22,6 +22,6 @@ if(reagents.total_volume < 1) user << "[src] is out of water!" else - reagents.trans_to(I, 5) + reagents.trans_to_obj(I, 5) user << "You wet [I] in [src]." playsound(loc, 'sound/effects/slosh.ogg', 25, 1) diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index 13d1a59d5e..3d393e0967 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -446,10 +446,8 @@ if (M != user && user.ckey == "nerezza") //Woah now, you better be careful partner user << "\blue You don't want to contaminate the autoinjector." return - src.reagents.reaction(M, INGEST) - if(M.reagents) - var/trans = reagents.trans_to(M, amount_per_transfer_from_this) - user << "\blue [trans] units injected. [reagents.total_volume] units remaining in \the [src]." + var/trans = reagents.trans_to_mob(M, amount_per_transfer_from_this, CHEM_BLOOD) + user << "\blue [trans] units injected. [reagents.total_volume] units remaining in \the [src]." return /obj/item/weapon/reagent_containers/hypospray/fluff/asher_spock_1/examine(mob/user as mob) diff --git a/code/modules/detectivework/footprints_and_rag.dm b/code/modules/detectivework/footprints_and_rag.dm index 59b97ebb7c..aedf6e4c9f 100644 --- a/code/modules/detectivework/footprints_and_rag.dm +++ b/code/modules/detectivework/footprints_and_rag.dm @@ -31,8 +31,7 @@ /obj/item/weapon/reagent_containers/glass/rag/attack(atom/target as obj|turf|area, mob/user as mob , flag) if(ismob(target) && target.reagents && reagents.total_volume) user.visible_message("\red \The [target] has been smothered with \the [src] by \the [user]!", "\red You smother \the [target] with \the [src]!", "You hear some struggling and muffled cries of surprise") - src.reagents.reaction(target, TOUCH) - spawn(5) src.reagents.clear_reagents() + reagents.trans_to_mob(target, reagents.total_volume, CHEM_INGEST) return else ..() diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index c9b3175eb8..7bf1842b0f 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -23,10 +23,6 @@ verbs += /mob/living/proc/ventcrawl verbs += /mob/living/proc/hide - var/datum/reagents/R = new/datum/reagents(100) - reagents = R - R.my_atom = src - name = "[initial(name)] ([rand(1, 1000)])" real_name = name regenerate_icons() diff --git a/code/modules/mob/living/carbon/brain/life.dm b/code/modules/mob/living/carbon/brain/life.dm index 8e8a26d883..189dfd81e7 100644 --- a/code/modules/mob/living/carbon/brain/life.dm +++ b/code/modules/mob/living/carbon/brain/life.dm @@ -105,7 +105,18 @@ proc/handle_chemicals_in_body() - if(reagents) reagents.metabolize(src) + chem_effects.Cut() + analgesic = 0 + + if(touching) + touching.metabolize(0, CHEM_TOUCH) + if(ingested) + ingested.metabolize(0, CHEM_INGEST) + if(reagents) + reagents.metabolize(0, CHEM_BLOOD) + + if(CE_PAINKILLER in chem_effects) + analgesic = chem_effects[CE_PAINKILLER] confused = max(0, confused - 1) // decrement dizziness counter, clamped to 0 diff --git a/code/modules/mob/living/carbon/breathe.dm b/code/modules/mob/living/carbon/breathe.dm index 38e1efa71b..b467b88cd2 100644 --- a/code/modules/mob/living/carbon/breathe.dm +++ b/code/modules/mob/living/carbon/breathe.dm @@ -7,7 +7,7 @@ var/datum/gas_mixture/breath = null //First, check if we can breathe at all - if(health < config.health_threshold_crit && !reagents.has_reagent("inaprovaline")) //crit aka circulatory shock + if(health < config.health_threshold_crit && !(CE_STABLE in chem_effects)) //crit aka circulatory shock losebreath++ if(losebreath>0) //Suffocating so do not take a breath @@ -65,11 +65,9 @@ for(var/obj/effect/effect/smoke/chem/smoke in view(1, src)) if(smoke.reagents.total_volume) - smoke.reagents.reaction(src, INGEST) - spawn(5) - if(smoke) - //maybe check air pressure here or something to see if breathing in smoke is even possible. - smoke.reagents.copy_to(src, 10) // I dunno, maybe the reagents enter the blood stream through the lungs? + smoke.reagents.trans_to_mob(src, 10, CHEM_INGEST, copy = 1) + //maybe check air pressure here or something to see if breathing in smoke is even possible. + // I dunno, maybe the reagents enter the blood stream through the lungs? break // If they breathe in the nasty stuff once, no need to continue checking /mob/living/carbon/proc/handle_breath(datum/gas_mixture/breath) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 6e59b4be66..6591cee647 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -1,3 +1,13 @@ +/mob/living/carbon/New() + create_reagents(1000) + var/datum/reagents/R1 = new/datum/reagents(1000) + var/datum/reagents/R2 = new/datum/reagents(1000) + ingested = R1 + touching = R2 + R1.my_atom = src + R2.my_atom = src + ..() + /mob/living/carbon/Life() ..() @@ -550,4 +560,10 @@ playsound(src.loc, 'sound/misc/slip.ogg', 50, 1, -3) Stun(stun_duration) Weaken(Floor(stun_duration/2)) - return 1 \ No newline at end of file + return 1 + +/mob/living/carbon/proc/add_chemical_effect(var/effect, var/magnitude = 1) + if(effect in chem_effects) + chem_effects[effect] += magnitude + else + chem_effects[effect] = magnitude diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm index 55b33324fb..e617506c23 100644 --- a/code/modules/mob/living/carbon/carbon_defines.dm +++ b/code/modules/mob/living/carbon/carbon_defines.dm @@ -17,5 +17,8 @@ var/datum/surgery_status/op_stage = new/datum/surgery_status //Active emote/pose var/pose = null + var/list/chem_effects = list() + var/datum/reagents/ingested = null + var/datum/reagents/touching = null var/pulse = PULSE_NORM //current pulse level diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index fd8be289e9..84a7e720d3 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -20,10 +20,6 @@ else set_species() - var/datum/reagents/R = new/datum/reagents(1000) - reagents = R - R.my_atom = src - hud_list[HEALTH_HUD] = image('icons/mob/hud.dmi', src, "hudhealth100") hud_list[STATUS_HUD] = image('icons/mob/hud.dmi', src, "hudhealthy") hud_list[LIFE_HUD] = image('icons/mob/hud.dmi', src, "hudhealthy") diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index 155492a36b..a455edb27f 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -10,9 +10,8 @@ if(embedded_flag) handle_embedded_objects() //Moving with objects stuck in you can cause bad times. - if(reagents.has_reagent("hyperzine")) return -1 - - if(reagents.has_reagent("nuka_cola")) return -1 + if(CE_SPEEDBOOST in chem_effects) + return -1 var/health_deficiency = (100 - health) if(health_deficiency >= 40) tally += (health_deficiency / 25) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 29a1d067cb..5bcd6a178b 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -855,10 +855,16 @@ proc/handle_chemicals_in_body() if(reagents && !(species.flags & IS_SYNTHETIC)) //Synths don't process reagents. + chem_effects.Cut() + analgesic = 0 var/alien = 0 if(species && species.reagent_tag) alien = species.reagent_tag - reagents.metabolize(src,alien) + touching.metabolize(alien, CHEM_TOUCH) + ingested.metabolize(alien, CHEM_INGEST) + reagents.metabolize(alien, CHEM_BLOOD) + if(CE_PAINKILLER in chem_effects) + analgesic = chem_effects[CE_PAINKILLER] var/total_phoronloss = 0 for(var/obj/item/I in src) @@ -945,9 +951,6 @@ silent = 0 return 1 - // the analgesic effect wears off slowly - analgesic = max(0, analgesic - 1) - //UNCONSCIOUS. NO-ONE IS HOME if( (getOxyLoss() > 50) || (config.health_threshold_crit > health) ) Paralyse(3) @@ -1224,7 +1227,7 @@ see_invisible = SEE_INVISIBLE_LIVING if(healths) - if (analgesic) + if (analgesic > 100) healths.icon_state = "health_health_numb" else switch(hal_screwyhud) @@ -1409,7 +1412,7 @@ handle_shock() ..() if(status_flags & GODMODE) return 0 //godmode - if(analgesic || (species && species.flags & NO_PAIN)) return // analgesic avoids all traumatic shock temporarily + if(species && species.flags & NO_PAIN) return if(health < config.health_threshold_softcrit)// health 0 makes you immediately collapse shock_stage = max(shock_stage, 61) @@ -1485,7 +1488,7 @@ if(R.id in heartstopper) //To avoid using fakedeath temp = PULSE_NONE if(R.id in cheartstopper) //Conditional heart-stoppage - if(R.volume >= R.overdose) + if(R.volume >= R.overdose_blood) temp = PULSE_NONE return temp diff --git a/code/modules/mob/living/carbon/metroid/life.dm b/code/modules/mob/living/carbon/metroid/life.dm index 22b61291ef..0d5a0bbef7 100644 --- a/code/modules/mob/living/carbon/metroid/life.dm +++ b/code/modules/mob/living/carbon/metroid/life.dm @@ -82,8 +82,18 @@ return temp_change /mob/living/carbon/slime/proc/handle_chemicals_in_body() + chem_effects.Cut() + analgesic = 0 - if(reagents) reagents.metabolize(src) + if(touching) + touching.metabolize(0, CHEM_TOUCH) + if(ingested) + ingested.metabolize(0, CHEM_INGEST) + if(reagents) + reagents.metabolize(0, CHEM_BLOOD) + + if(CE_PAINKILLER in chem_effects) + analgesic = chem_effects[CE_PAINKILLER] src.updatehealth() diff --git a/code/modules/mob/living/carbon/metroid/metroid.dm b/code/modules/mob/living/carbon/metroid/metroid.dm index d6c8c226c4..8a44903f64 100644 --- a/code/modules/mob/living/carbon/metroid/metroid.dm +++ b/code/modules/mob/living/carbon/metroid/metroid.dm @@ -61,8 +61,6 @@ verbs += /mob/living/proc/ventcrawl - create_reagents(100) - src.colour = colour number = rand(1, 1000) name = "[colour] [is_adult ? "adult" : "baby"] slime ([number])" @@ -412,14 +410,6 @@ adjustToxLoss(-10) nutrition = max(nutrition, get_max_nutrition()) -/mob/living/carbon/slime/proc/apply_water(var/amount) - adjustToxLoss(15 + amount) - if (!client) - if (Target) // Like cats - Target = null - ++Discipline - return - /mob/living/carbon/slime/can_use_vents() if(Victim) return "You cannot ventcrawl while feeding." diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index 22a5c7f2fb..b339fc086e 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -304,9 +304,18 @@ adjustFireLoss(5.0*discomfort) proc/handle_chemicals_in_body() + chem_effects.Cut() + analgesic = 0 - if(reagents && reagents.reagent_list.len) - reagents.metabolize(src) + if(touching) + touching.metabolize(0, CHEM_TOUCH) + if(ingested) + ingested.metabolize(0, CHEM_INGEST) + if(reagents) + reagents.metabolize(0, CHEM_BLOOD) + + if(CE_PAINKILLER in chem_effects) + analgesic = chem_effects[CE_PAINKILLER] if (drowsyness) drowsyness-- diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index 07a64c5513..8cd0558e7c 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -47,10 +47,6 @@ verbs += /mob/living/proc/ventcrawl - var/datum/reagents/R = new/datum/reagents(1000) - reagents = R - R.my_atom = src - species = all_species[greaterform] add_language(species.language) diff --git a/code/modules/mob/living/carbon/shock.dm b/code/modules/mob/living/carbon/shock.dm index b76b7a49b7..63c742a690 100644 --- a/code/modules/mob/living/carbon/shock.dm +++ b/code/modules/mob/living/carbon/shock.dm @@ -13,24 +13,11 @@ 1.5 * src.getFireLoss() + \ 1.2 * src.getBruteLoss() + \ 1.7 * src.getCloneLoss() + \ - 2 * src.halloss + 2 * src.halloss + \ + -1 * src.analgesic - if(reagents.has_reagent("alkysine")) - src.traumatic_shock -= 10 - if(reagents.has_reagent("inaprovaline")) - src.traumatic_shock -= 25 - if(reagents.has_reagent("synaptizine")) - src.traumatic_shock -= 40 - if(reagents.has_reagent("paracetamol")) - src.traumatic_shock -= 50 - if(reagents.has_reagent("tramadol")) - src.traumatic_shock -= 80 - if(reagents.has_reagent("oxycodone")) - src.traumatic_shock -= 200 if(src.slurring) src.traumatic_shock -= 20 - if(src.analgesic) - src.traumatic_shock = 0 // broken or ripped off organs will add quite a bit of pain if(istype(src,/mob/living/carbon/human)) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 6add592da8..6d6428fc15 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -117,7 +117,7 @@ src.modules += new /obj/item/roller_holder(src) src.modules += new /obj/item/weapon/reagent_containers/borghypo/crisis(src) src.modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src) - src.modules += new /obj/item/weapon/reagent_containers/robodropper(src) + src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src) src.modules += new /obj/item/weapon/reagent_containers/syringe(src) src.modules += new /obj/item/weapon/extinguisher/mini(src) src.emag = new /obj/item/weapon/reagent_containers/spray(src) @@ -321,7 +321,7 @@ M.stored_matter = 30 src.modules += M - src.modules += new /obj/item/weapon/reagent_containers/robodropper(src) + src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src) var/obj/item/weapon/flame/lighter/zippo/L = new /obj/item/weapon/flame/lighter/zippo(src) L.lit = 1 diff --git a/code/modules/organs/blood.dm b/code/modules/organs/blood.dm index b04d631046..07fed200d8 100644 --- a/code/modules/organs/blood.dm +++ b/code/modules/organs/blood.dm @@ -55,12 +55,8 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 break B.volume += 0.1 // regenerate blood VERY slowly - if (reagents.has_reagent("nutriment")) //Getting food speeds it up - B.volume += 0.4 - reagents.remove_reagent("nutriment", 0.1) - if (reagents.has_reagent("iron")) //Hematogen candy anyone? - B.volume += 0.8 - reagents.remove_reagent("iron", 0.1) + if(CE_BLOODRESTORE in chem_effects) + B.volume += chem_effects[CE_BLOODRESTORE] // Damaged heart virtually reduces the blood volume, as the blood isn't // being pumped properly anymore. @@ -200,9 +196,8 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 vessel.remove_reagent("blood",amount) // Removes blood if human //Transfers blood from container ot vessels -/mob/living/carbon/proc/inject_blood(obj/item/weapon/reagent_containers/container, var/amount) - var/datum/reagent/blood/injected = get_blood(container.reagents) - if (!injected) +/mob/living/carbon/proc/inject_blood(var/datum/reagent/blood/injected, var/amount) + if (!injected || !istype(injected)) return var/list/sniffles = virus_copylist(injected.data["virus2"]) for(var/ID in sniffles) @@ -216,12 +211,8 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 src.reagents.add_reagent(C, (text2num(chems[C]) / 560) * amount)//adds trace chemicals to owner's blood reagents.update_total() - container.reagents.remove_reagent("blood", amount) - -//Transfers blood from container ot vessels, respecting blood types compatability. -/mob/living/carbon/human/inject_blood(obj/item/weapon/reagent_containers/container, var/amount) - - var/datum/reagent/blood/injected = get_blood(container.reagents) +//Transfers blood from reagents to vessel, respecting blood types compatability. +/mob/living/carbon/human/inject_blood(var/datum/reagent/blood/injected, var/amount) if(species && species.flags & NO_BLOOD) reagents.add_reagent("blood", amount, injected.data) diff --git a/code/modules/organs/organ_internal.dm b/code/modules/organs/organ_internal.dm index b6154242b9..7d0782abed 100644 --- a/code/modules/organs/organ_internal.dm +++ b/code/modules/organs/organ_internal.dm @@ -208,20 +208,12 @@ if(is_broken()) filter_effect -= 2 - // Do some reagent filtering/processing. - for(var/datum/reagent/R in owner.reagents.reagent_list) - // Damaged liver means some chemicals are very dangerous - // The liver is also responsible for clearing out alcohol and toxins. - // Ethanol and all drinks are bad.K - if(istype(R, /datum/reagent/ethanol)) - if(filter_effect < 3) - owner.adjustToxLoss(0.1 * PROCESS_ACCURACY) - owner.reagents.remove_reagent(R.id, R.custom_metabolism*filter_effect) - // Can't cope with toxins at all - else if(istype(R, /datum/reagent/toxin)) - if(filter_effect < 3) - owner.adjustToxLoss(0.3 * PROCESS_ACCURACY) - owner.reagents.remove_reagent(R.id, ALCOHOL_METABOLISM*filter_effect) + // Do some reagent processing. + if(owner.chem_effects[CE_ALCOHOL_TOXIC]) + if(filter_effect < 3) + owner.adjustToxLoss(owner.chem_effects[CE_ALCOHOL_TOXIC] * 0.1 * PROCESS_ACCURACY) + else + take_damage(owner.chem_effects[CE_ALCOHOL_TOXIC] * 0.1 * PROCESS_ACCURACY, prob(1)) // Chance to warn them /datum/organ/internal/kidney name = "kidneys" diff --git a/code/modules/organs/organ_objects.dm b/code/modules/organs/organ_objects.dm index a97f1f28f5..b7c451b883 100644 --- a/code/modules/organs/organ_objects.dm +++ b/code/modules/organs/organ_objects.dm @@ -172,7 +172,7 @@ organ_data.rejecting = null var/datum/reagent/blood/organ_blood = locate(/datum/reagent/blood) in reagents.reagent_list if(!organ_blood || !organ_blood.data["blood_DNA"]) - target.vessel.trans_to(src, 5, 1, 1) + target.vessel.trans_to_obj(src, 5, 1, 1) if(target && user && organ_data.vital) user.attack_log += "\[[time_stamp()]\] removed a vital organ ([src]) from [target.name] ([target.ckey]) (INTENT: [uppertext(user.a_intent)])" @@ -265,7 +265,7 @@ O.icon_state = dead_icon ? dead_icon : icon_state // Pass over the blood. - reagents.trans_to(O, reagents.total_volume) + reagents.trans_to_obj(O, reagents.total_volume) if(fingerprints) O.fingerprints = fingerprints.Copy() if(fingerprintshidden) O.fingerprintshidden = fingerprintshidden.Copy() diff --git a/code/modules/organs/pain.dm b/code/modules/organs/pain.dm index 49cc2073df..16d0394a85 100644 --- a/code/modules/organs/pain.dm +++ b/code/modules/organs/pain.dm @@ -9,13 +9,7 @@ mob/var/next_pain_time = 0 // amount is a num from 1 to 100 mob/living/carbon/proc/pain(var/partname, var/amount, var/force, var/burning = 0) if(stat >= 2) return - if(reagents.has_reagent("paracetamol")) - return - if(reagents.has_reagent("tramadol")) - return - if(reagents.has_reagent("oxycodone")) - return - if(analgesic) + if(analgesic > 40) return if(world.time < next_pain_time && !force) return @@ -80,11 +74,7 @@ mob/living/carbon/human/proc/handle_pain() if(species && species.flags & NO_PAIN) return if(stat >= 2) return - if(reagents.has_reagent("tramadol")) - return - if(reagents.has_reagent("oxycodone")) - return - if(analgesic) + if(analgesic > 70) return var/maxdam = 0 var/datum/organ/external/damaged_organ = null diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index 18ff946cc8..1f81ea2495 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -76,7 +76,7 @@ return ..() if(reagents.total_volume) - if(M.reagents) reagents.trans_to(M, 50) //used to be 150 + if(M.reagents) reagents.trans_to_mob(M, 50, CHEM_BLOOD) //used to be 150 return @@ -99,7 +99,7 @@ if(M.can_inject(user,1)) if(reagents.total_volume) - if(M.reagents) reagents.trans_to(M, 50) + if(M.reagents) reagents.trans_to_mob(M, 50, CHEM_BLOOD) return diff --git a/code/modules/projectiles/guns/launcher/syringe_gun.dm b/code/modules/projectiles/guns/launcher/syringe_gun.dm index 75c015d579..0c42c86b05 100644 --- a/code/modules/projectiles/guns/launcher/syringe_gun.dm +++ b/code/modules/projectiles/guns/launcher/syringe_gun.dm @@ -52,7 +52,7 @@ //unfortuately we don't know where the dart will actually hit, since that's done by the parent. if(L.can_inject()) if(syringe.reagents) - syringe.reagents.trans_to(L, 15) + syringe.reagents.trans_to_mob(L, 15, CHEM_BLOOD) syringe.break_syringe(iscarbon(hit_atom)? hit_atom : null) syringe.update_icon() diff --git a/code/modules/projectiles/guns/projectile/dartgun.dm b/code/modules/projectiles/guns/projectile/dartgun.dm index a8f93b8d25..c95fbce180 100644 --- a/code/modules/projectiles/guns/projectile/dartgun.dm +++ b/code/modules/projectiles/guns/projectile/dartgun.dm @@ -17,7 +17,7 @@ if(blocked < 2 && isliving(target)) var/mob/living/L = target if(L.can_inject(target_zone=def_zone)) - reagents.trans_to(L, reagent_amount) + reagents.trans_to_mob(L, reagent_amount, CHEM_BLOOD) /obj/item/ammo_casing/chemdart name = "chemical dart" @@ -124,7 +124,7 @@ if(mixing.len) var/mix_amount = dart.reagent_amount/mixing.len for(var/obj/item/weapon/reagent_containers/glass/beaker/B in mixing) - B.reagents.trans_to(dart, mix_amount) + B.reagents.trans_to_obj(dart, mix_amount) /obj/item/weapon/gun/projectile/dartgun/attack_self(mob/user) user.set_machine(src) diff --git a/code/modules/reagents/Chemistry-Colours.dm b/code/modules/reagents/Chemistry-Colours.dm index a59147e85f..501b1ac475 100644 --- a/code/modules/reagents/Chemistry-Colours.dm +++ b/code/modules/reagents/Chemistry-Colours.dm @@ -1,66 +1,23 @@ -/proc/mix_color_from_reagents(var/list/reagent_list) - if(!reagent_list || !length(reagent_list)) - return 0 +/datum/reagents/proc/get_color() + if(!reagent_list || !reagent_list.len) + return "#ffffffff" + if(reagent_list.len == 1) // It's pretty common and saves a lot of work + var/datum/reagent/R = reagent_list[1] + return R.color - var/contents = length(reagent_list) - var/list/weight = new /list(contents) - var/list/redcolor = new /list(contents) - var/list/greencolor = new /list(contents) - var/list/bluecolor = new /list(contents) - var/i + var/list/colors = list(0, 0, 0, 0) + var/tot_w = 0 + for(var/datum/reagent/R in reagent_list) + var/hex = uppertext(R.color) + if(length(hex) == 7) + hex += "FF" + if(length(hex) != 9) // PANIC PANIC PANIC + warning("Reagent [R.id] has an incorrect color set ([R.color])") + hex = "#FFFFFFFF" + colors[1] += hex2num(copytext(hex, 2, 4)) * R.volume * R.color_weight + colors[2] += hex2num(copytext(hex, 4, 6)) * R.volume * R.color_weight + colors[3] += hex2num(copytext(hex, 6, 8)) * R.volume * R.color_weight + colors[4] += hex2num(copytext(hex, 8, 10)) * R.volume * R.color_weight + tot_w += R.volume * R.color_weight - //fill the list of weights - for(i=1; i<=contents; i++) - var/datum/reagent/re = reagent_list[i] - var/reagentweight = re.volume - if(istype(re, /datum/reagent/paint)) - reagentweight *= 20 //Paint colours a mixture twenty times as much - weight[i] = reagentweight - - - //fill the lists of colours - for(i=1; i<=contents; i++) - var/datum/reagent/re = reagent_list[i] - var/hue = re.color - if(length(hue) != 7) - return 0 - redcolor[i]=hex2num(copytext(hue,2,4)) - greencolor[i]=hex2num(copytext(hue,4,6)) - bluecolor[i]=hex2num(copytext(hue,6,8)) - - //mix all the colors - var/red = mixOneColor(weight,redcolor) - var/green = mixOneColor(weight,greencolor) - var/blue = mixOneColor(weight,bluecolor) - - //assemble all the pieces - var/finalcolor = rgb(red, green, blue) - return finalcolor - -/proc/mixOneColor(var/list/weight, var/list/color) - if (!weight || !color || length(weight)!=length(color)) - return 0 - - var/contents = length(weight) - var/i - - //normalize weights - var/listsum = 0 - for(i=1; i<=contents; i++) - listsum += weight[i] - for(i=1; i<=contents; i++) - weight[i] /= listsum - - //mix them - var/mixedcolor = 0 - for(i=1; i<=contents; i++) - mixedcolor += weight[i]*color[i] - mixedcolor = round(mixedcolor) - - //until someone writes a formal proof for this algorithm, let's keep this in -// if(mixedcolor<0x00 || mixedcolor>0xFF) -// return 0 - //that's not the kind of operation we are running here, nerd - mixedcolor=min(max(mixedcolor,0),255) - - return mixedcolor + return rgb(colors[1] / tot_w, colors[2] / tot_w, colors[3] / tot_w, colors[4] / tot_w) \ No newline at end of file diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index 6c6c194af5..d094dc65ca 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -1,659 +1,426 @@ -//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 - -var/const/TOUCH = 1 -var/const/INGEST = 2 - -/////////////////////////////////////////////////////////////////////////////////// - -datum - reagents - var/list/datum/reagent/reagent_list = new/list() - var/total_volume = 0 - var/maximum_volume = 100 - var/atom/my_atom = null - - New(maximum=100) - maximum_volume = maximum - - //I dislike having these here but map-objects are initialised before world/New() is called. >_> - if(!chemical_reagents_list) - //Chemical Reagents - Initialises all /datum/reagent into a list indexed by reagent id - var/paths = typesof(/datum/reagent) - /datum/reagent - chemical_reagents_list = list() - for(var/path in paths) - var/datum/reagent/D = new path() - chemical_reagents_list[D.id] = D - if(!chemical_reactions_list) - //Chemical Reactions - Initialises all /datum/chemical_reaction into a list - // It is filtered into multiple lists within a list. - // For example: - // chemical_reaction_list["phoron"] is a list of all reactions relating to phoron - - var/paths = typesof(/datum/chemical_reaction) - /datum/chemical_reaction - chemical_reactions_list = list() - - for(var/path in paths) - - var/datum/chemical_reaction/D = new path() - var/list/reaction_ids = list() - - if(D.required_reagents && D.required_reagents.len) - for(var/reaction in D.required_reagents) - reaction_ids += reaction - - // Create filters based on each reagent id in the required reagents list - for(var/id in reaction_ids) - if(!chemical_reactions_list[id]) - chemical_reactions_list[id] = list() - chemical_reactions_list[id] += D - break // Don't bother adding ourselves to other reagent ids, it is redundant. - - proc - - remove_any(var/amount=1) - var/total_transfered = 0 - var/current_list_element = 1 - - current_list_element = rand(1,reagent_list.len) - - while(total_transfered != amount) - if(total_transfered >= amount) break - if(total_volume <= 0 || !reagent_list.len) break - - if(current_list_element > reagent_list.len) current_list_element = 1 - var/datum/reagent/current_reagent = reagent_list[current_list_element] - - src.remove_reagent(current_reagent.id, 1) - - current_list_element++ - total_transfered++ - src.update_total() - - handle_reactions() - return total_transfered - - get_master_reagent() - var/the_reagent = null - var/the_volume = 0 - for(var/datum/reagent/A in reagent_list) - if(A.volume > the_volume) - the_volume = A.volume - the_reagent = A - - return the_reagent - - get_master_reagent_name() - var/the_name = null - var/the_volume = 0 - for(var/datum/reagent/A in reagent_list) - if(A.volume > the_volume) - the_volume = A.volume - the_name = A.name - - return the_name - - get_master_reagent_id() - var/the_id = null - var/the_volume = 0 - for(var/datum/reagent/A in reagent_list) - if(A.volume > the_volume) - the_volume = A.volume - the_id = A.id - - return the_id - - trans_to(var/obj/target, var/amount=1, var/multiplier=1, var/preserve_data=1)//if preserve_data=0, the reagents data will be lost. Usefull if you use data for some strange stuff and don't want it to be transferred. - if (!target ) - return - if (!target.reagents || src.total_volume<=0) - return - var/datum/reagents/R = target.reagents - amount = min(min(amount, src.total_volume), R.maximum_volume-R.total_volume) - var/part = amount / src.total_volume - var/trans_data = null - for (var/datum/reagent/current_reagent in src.reagent_list) - if (!current_reagent) - continue - if (current_reagent.id == "blood" && ishuman(target)) - var/mob/living/carbon/human/H = target - H.inject_blood(my_atom, amount) - continue - var/current_reagent_transfer = current_reagent.volume * part - if(preserve_data) - trans_data = copy_data(current_reagent) - - R.add_reagent(current_reagent.id, (current_reagent_transfer * multiplier), trans_data, safety = 1) //safety checks on these so all chemicals are transferred - src.remove_reagent(current_reagent.id, current_reagent_transfer, safety = 1) // to the target container before handling reactions - - src.update_total() - R.update_total() - R.handle_reactions() - src.handle_reactions() - return amount - - trans_to_ingest(var/obj/target, var/amount=1, var/multiplier=1, var/preserve_data=1)//For items ingested. A delay is added between ingestion and addition of the reagents - if (!target ) - return - if (!target.reagents || src.total_volume<=0) - return - - /*var/datum/reagents/R = target.reagents - - var/obj/item/weapon/reagent_containers/glass/beaker/noreact/B = new /obj/item/weapon/reagent_containers/glass/beaker/noreact //temporary holder - - amount = min(min(amount, src.total_volume), R.maximum_volume-R.total_volume) - var/part = amount / src.total_volume - var/trans_data = null - for (var/datum/reagent/current_reagent in src.reagent_list) - if (!current_reagent) - continue - //if (current_reagent.id == "blood" && ishuman(target)) - // var/mob/living/carbon/human/H = target - // H.inject_blood(my_atom, amount) - // continue - var/current_reagent_transfer = current_reagent.volume * part - if(preserve_data) - trans_data = current_reagent.data - - B.add_reagent(current_reagent.id, (current_reagent_transfer * multiplier), trans_data, safety = 1) //safety checks on these so all chemicals are transferred - src.remove_reagent(current_reagent.id, current_reagent_transfer, safety = 1) // to the target container before handling reactions - - src.update_total() - B.update_total() - B.handle_reactions() - src.handle_reactions()*/ - - var/obj/item/weapon/reagent_containers/glass/beaker/noreact/B = new /obj/item/weapon/reagent_containers/glass/beaker/noreact //temporary holder - B.volume = 1000 - - var/datum/reagents/BR = B.reagents - var/datum/reagents/R = target.reagents - - amount = min(min(amount, src.total_volume), R.maximum_volume-R.total_volume) - - src.trans_to(B, amount) - - spawn(95) - BR.reaction(target, INGEST) - spawn(5) - BR.trans_to(target, BR.total_volume) - del(B) - - return amount - - copy_to(var/obj/target, var/amount=1, var/multiplier=1, var/preserve_data=1, var/safety = 0) - if(!target) - return - if(!target.reagents || src.total_volume<=0) - return - var/datum/reagents/R = target.reagents - amount = min(min(amount, src.total_volume), R.maximum_volume-R.total_volume) - var/part = amount / src.total_volume - var/trans_data = null - for (var/datum/reagent/current_reagent in src.reagent_list) - var/current_reagent_transfer = current_reagent.volume * part - if(preserve_data) - trans_data = copy_data(current_reagent) - R.add_reagent(current_reagent.id, (current_reagent_transfer * multiplier), trans_data, safety = 1) //safety check so all chemicals are transferred before reacting - - src.update_total() - R.update_total() - if(!safety) - R.handle_reactions() - src.handle_reactions() - return amount - - trans_id_to(var/obj/target, var/reagent, var/amount=1, var/preserve_data=1)//Not sure why this proc didn't exist before. It does now! /N - if (!target) - return - if (!target.reagents || src.total_volume<=0 || !src.get_reagent_amount(reagent)) - return - - var/datum/reagents/R = target.reagents - if(src.get_reagent_amount(reagent) R.maximum_volume) return 0 - - current_list_element = rand(1,reagent_list.len) //Eh, bandaid fix. - - while(total_transfered != amount) - if(total_transfered >= amount) break //Better safe than sorry. - if(total_volume <= 0 || !reagent_list.len) break - if(R.total_volume >= R.maximum_volume) break - - if(current_list_element > reagent_list.len) current_list_element = 1 - var/datum/reagent/current_reagent = reagent_list[current_list_element] - if(preserve_data) - trans_data = current_reagent.data - R.add_reagent(current_reagent.id, (1 * multiplier), trans_data) - src.remove_reagent(current_reagent.id, 1) - - current_list_element++ - total_transfered++ - src.update_total() - R.update_total() - R.handle_reactions() - handle_reactions() - - return total_transfered -*/ - - metabolize(var/mob/M,var/alien) - - for(var/A in reagent_list) - var/datum/reagent/R = A - if(M && R) - R.on_mob_life(M,alien) - update_total() - - conditional_update_move(var/atom/A, var/Running = 0) - for(var/datum/reagent/R in reagent_list) - R.on_move (A, Running) - update_total() - - conditional_update(var/atom/A, ) - for(var/datum/reagent/R in reagent_list) - R.on_update (A) - update_total() - - handle_reactions() - if(my_atom.flags & NOREACT) return //Yup, no reactions here. No siree. - - var/reaction_occured = 0 - do - reaction_occured = 0 - for(var/datum/reagent/R in reagent_list) // Usually a small list - for(var/reaction in chemical_reactions_list[R.id]) // Was a big list but now it should be smaller since we filtered it with our reagent id - - if(!reaction) - continue - - var/datum/chemical_reaction/C = reaction - - //check if this recipe needs to be heated to mix - if(C.requires_heating) - if(istype(my_atom.loc, /obj/machinery/bunsen_burner)) - if(!my_atom.loc:heated) - continue - else - continue - - var/total_required_reagents = C.required_reagents.len - var/total_matching_reagents = 0 - var/total_required_catalysts = C.required_catalysts.len - var/total_matching_catalysts= 0 - var/matching_container = 0 - var/matching_other = 0 - var/list/multipliers = new/list() - - for(var/B in C.required_reagents) - if(!has_reagent(B, C.required_reagents[B])) break - total_matching_reagents++ - multipliers += round(get_reagent_amount(B) / C.required_reagents[B]) - for(var/B in C.required_catalysts) - if(!has_reagent(B, C.required_catalysts[B])) break - total_matching_catalysts++ - - if(!C.required_container) - matching_container = 1 - - else - if(my_atom.type == C.required_container) - matching_container = 1 - - if(!C.required_other) - matching_other = 1 - - else - /*if(istype(my_atom, /obj/item/slime_core)) - var/obj/item/slime_core/M = my_atom - - if(M.POWERFLAG == C.required_other && M.Uses > 0) // added a limit to slime cores -- Muskets requested this - matching_other = 1*/ - if(istype(my_atom, /obj/item/slime_extract)) - var/obj/item/slime_extract/M = my_atom - - if(M.Uses > 0) // added a limit to slime cores -- Muskets requested this - matching_other = 1 - - - - - if(total_matching_reagents == total_required_reagents && total_matching_catalysts == total_required_catalysts && matching_container && matching_other) - var/multiplier = min(multipliers) - var/preserved_data = null - for(var/B in C.required_reagents) - if(!preserved_data) - preserved_data = get_data(B) - remove_reagent(B, (multiplier * C.required_reagents[B]), safety = 1) - - var/created_volume = C.result_amount*multiplier - if(C.result) - feedback_add_details("chemical_reaction","[C.result]|[C.result_amount*multiplier]") - multiplier = max(multiplier, 1) //this shouldnt happen ... - if(!isnull(C.resultcolor)) //paints - add_reagent(C.result, C.result_amount*multiplier, C.resultcolor) - else - add_reagent(C.result, C.result_amount*multiplier) - set_data(C.result, preserved_data) - - //add secondary products - for(var/S in C.secondary_results) - add_reagent(S, C.result_amount * C.secondary_results[S] * multiplier) - - var/list/seen = viewers(4, get_turf(my_atom)) - for(var/mob/M in seen) - M << "\blue \icon[my_atom] The solution begins to bubble." - - /* if(istype(my_atom, /obj/item/slime_core)) - var/obj/item/slime_core/ME = my_atom - ME.Uses-- - if(ME.Uses <= 0) // give the notification that the slime core is dead - for(var/mob/M in viewers(4, get_turf(my_atom)) ) - M << "\blue \icon[my_atom] The innards begin to boil!" - */ - if(istype(my_atom, /obj/item/slime_extract)) - var/obj/item/slime_extract/ME2 = my_atom - ME2.Uses-- - if(ME2.Uses <= 0) // give the notification that the slime core is dead - for(var/mob/M in seen) - M << "\blue \icon[my_atom] The [my_atom]'s power is consumed in the reaction." - ME2.name = "used slime extract" - ME2.desc = "This extract has been used up." - - playsound(get_turf(my_atom), 'sound/effects/bubbles.ogg', 80, 1) - - C.on_reaction(src, created_volume) - reaction_occured = 1 - break - - while(reaction_occured) - update_total() - return 0 - - isolate_reagent(var/reagent) - for(var/A in reagent_list) - var/datum/reagent/R = A - if (R.id != reagent) - del_reagent(R.id) - update_total() - - del_reagent(var/reagent) - for(var/A in reagent_list) - var/datum/reagent/R = A - if (R.id == reagent) - reagent_list -= A - del(A) - update_total() - my_atom.on_reagent_change() - return 0 - - - return 1 - +/datum/reagents + var/list/datum/reagent/reagent_list = list() + var/total_volume = 0 + var/maximum_volume = 100 + var/atom/my_atom = null + var/reacting = 0 // Reacting right now + +/datum/reagents/New(var/max = 100) + maximum_volume = max + //I dislike having these here but map-objects are initialised before world/New() is called. >_> + if(!chemical_reagents_list) + //Chemical Reagents - Initialises all /datum/reagent into a list indexed by reagent id + var/paths = typesof(/datum/reagent) - /datum/reagent + chemical_reagents_list = list() + for(var/path in paths) + var/datum/reagent/D = new path() + if(!D.name) + continue + chemical_reagents_list[D.id] = D + + if(!chemical_reactions_list) + //Chemical Reactions - Initialises all /datum/chemical_reaction into a list + // It is filtered into multiple lists within a list. + // For example: + // chemical_reaction_list["phoron"] is a list of all reactions relating to phoron + + var/paths = typesof(/datum/chemical_reaction) - /datum/chemical_reaction + chemical_reactions_list = list() + + for(var/path in paths) + + var/datum/chemical_reaction/D = new path() + var/list/reaction_ids = list() + + if(D.required_reagents && D.required_reagents.len) + for(var/reaction in D.required_reagents) + reaction_ids += reaction + + // Create filters based on each reagent id in the required reagents list + for(var/id in reaction_ids) + if(!chemical_reactions_list[id]) + chemical_reactions_list[id] = list() + chemical_reactions_list[id] += D + break // Don't bother adding ourselves to other reagent ids, it is redundant. + +/* Internal procs */ + +/datum/reagents/proc/get_free_space() // Returns free space. + return maximum_volume - total_volume + +/datum/reagents/proc/get_master_reagent() // Returns reference to the reagent with the biggest volume. + var/the_reagent = null + var/the_volume = 0 + + for(var/datum/reagent/A in reagent_list) + if(A.volume > the_volume) + the_volume = A.volume + the_reagent = A + + return the_reagent + +/datum/reagents/proc/get_master_reagent_name() // Returns the name of the reagent with the biggest volume. + var/the_name = null + var/the_volume = 0 + for(var/datum/reagent/A in reagent_list) + if(A.volume > the_volume) + the_volume = A.volume + the_name = A.name + + return the_name + +/datum/reagents/proc/get_master_reagent_id() // Returns the id of the reagent with the biggest volume. + var/the_id = null + var/the_volume = 0 + for(var/datum/reagent/A in reagent_list) + if(A.volume > the_volume) + the_volume = A.volume + the_id = A.id + + return the_id + +/datum/reagents/proc/update_total() // Updates volume. + total_volume = 0 + for(var/datum/reagent/R in reagent_list) + if(R.volume < MINIMUM_CHEMICAL_VOLUME) + del_reagent(R.id) + else + total_volume += R.volume + return + +/datum/reagents/proc/delete() + for(var/datum/reagent/R in reagent_list) + R.holder = null + if(my_atom) + my_atom.reagents = null + +/datum/reagents/proc/handle_reactions() + if(!my_atom) // No reactions in temporary holders + return + if(my_atom.flags & NOREACT) // No reactions here + return + + var/reaction_occured = 0 + do + reaction_occured = 0 + for(var/datum/reagent/R in reagent_list) + for(var/datum/chemical_reaction/C in chemical_reactions_list[R.id]) + var/reagents_suitable = 1 + for(var/B in C.required_reagents) + if(!has_reagent(B, C.required_reagents[B])) + reagents_suitable = 0 + for(var/B in C.catalysts) + if(!has_reagent(B, C.catalysts[B])) + reagents_suitable = 0 + for(var/B in C.inhibitors) + if(has_reagent(B, C.inhibitors[B])) + reagents_suitable = 0 + + if(!reagents_suitable || !C.can_happen(src)) + continue + + var/use = -1 + for(var/B in C.required_reagents) + if(use == -1) + use = get_reagent_amount(B) / C.required_reagents[B] + else + use = min(use, get_reagent_amount(B) / C.required_reagents[B]) + + var/newdata = C.send_data(src) // We need to get it before reagents are removed. See blood paint. + for(var/B in C.required_reagents) + remove_reagent(B, use * C.required_reagents[B], safety = 1) + + if(C.result) + add_reagent(C.result, C.result_amount * use, newdata) + + if(!ismob(my_atom) && C.mix_message) + var/list/seen = viewers(4, get_turf(my_atom)) + for(var/mob/M in seen) + M << "\icon[my_atom] [C.mix_message]" + playsound(get_turf(my_atom), 'sound/effects/bubbles.ogg', 80, 1) + + C.on_reaction(src, C.result_amount * use) + reaction_occured = 1 + while(reaction_occured) + update_total() + return + +/* Holder-to-chemical */ + +/datum/reagents/proc/add_reagent(var/id, var/amount, var/data = null, var/safety = 0) + if(!isnum(amount)) + return 0 + update_total() + amount = min(amount, get_free_space()) + + for(var/datum/reagent/current in reagent_list) + if(current.id == id) + current.volume += amount update_total() - total_volume = 0 - for(var/datum/reagent/R in reagent_list) - if(R.volume < 0.1) - del_reagent(R.id) - else - total_volume += R.volume + if(!isnull(data)) // For all we know, it could be zero or empty string and meaningful + current.mix_data(data, amount) + if(!safety) + handle_reactions() + if(my_atom) + my_atom.on_reagent_change() + return 1 + var/datum/reagent/D = chemical_reagents_list[id] + if(D) + var/datum/reagent/R = new D.type() + reagent_list += R + R.holder = src + R.volume = amount + update_total() + R.initialize_data(data) + if(!safety) + handle_reactions() + if(my_atom) + my_atom.on_reagent_change() + return 1 + else + warning("[my_atom] attempted to add a reagent called '[id]' which doesn't exist. ([usr])") + return 0 - return 0 +/datum/reagents/proc/remove_reagent(var/id, var/amount, var/safety = 0) + if(!isnum(amount)) + return 0 + for(var/datum/reagent/current in reagent_list) + if(current.id == id) + current.volume -= amount // It can go negative, but it doesn't matter + update_total() // Because this proc will delete it then + if(!safety) + handle_reactions() + if(my_atom) + my_atom.on_reagent_change() + return 1 + return 0 - clear_reagents() - for(var/datum/reagent/R in reagent_list) - del_reagent(R.id) - return 0 - - reaction(var/atom/A, var/method=TOUCH, var/volume_modifier=0) - - switch(method) - if(TOUCH) - for(var/datum/reagent/R in reagent_list) - if(ismob(A)) - spawn(0) - if(!R) return - else R.reaction_mob(A, TOUCH, R.volume+volume_modifier) - if(isturf(A)) - spawn(0) - if(!R) return - else R.reaction_turf(A, R.volume+volume_modifier) - if(isobj(A)) - spawn(0) - if(!R) return - else R.reaction_obj(A, R.volume+volume_modifier) - if(INGEST) - for(var/datum/reagent/R in reagent_list) - if(ismob(A) && R) - spawn(0) - if(!R) return - else R.reaction_mob(A, INGEST, R.volume+volume_modifier) - if(isturf(A) && R) - spawn(0) - if(!R) return - else R.reaction_turf(A, R.volume+volume_modifier) - if(isobj(A) && R) - spawn(0) - if(!R) return - else R.reaction_obj(A, R.volume+volume_modifier) - return - - add_reagent(var/reagent, var/amount, var/data=null, var/safety = 0) - if(!isnum(amount)) return 1 - update_total() - if(total_volume + amount > maximum_volume) amount = (maximum_volume - total_volume) //Doesnt fit in. Make it disappear. Shouldnt happen. Will happen. - - for(var/A in reagent_list) - - var/datum/reagent/R = A - if (R.id == reagent) - R.volume += amount - update_total() - - // mix dem viruses - if(R.id == "blood" && reagent == "blood") - if(R.data && data) - - if(R.data["viruses"] || data["viruses"]) - - var/list/mix1 = R.data["viruses"] - var/list/mix2 = data["viruses"] - - // Stop issues with the list changing during mixing. - var/list/to_mix = list() - - for(var/datum/disease/advance/AD in mix1) - to_mix += AD - for(var/datum/disease/advance/AD in mix2) - to_mix += AD - - var/datum/disease/advance/AD = Advance_Mix(to_mix) - if(AD) - var/list/preserve = list(AD) - for(var/D in R.data["viruses"]) - if(!istype(D, /datum/disease/advance)) - preserve += D - R.data["viruses"] = preserve - if(R.id == "paint" && reagent == "paint") - if(R.color && data) - var/list/mix = new /list(2) - //fill the list - var/datum/reagent/paint/P = chemical_reagents_list["paint"] - var/datum/reagent/paint/P1 = new P.type() - P1.color = R.color - P1.volume = R.volume - amount //since we just increased that - var/datum/reagent/paint/P2 = new P.type() - P2.color = data - P2.volume = amount - mix[1] = P1 - mix[2] = P2 - R.color = mix_color_from_reagents(mix) - if(!safety) - handle_reactions() - my_atom.on_reagent_change() - return 0 - - var/datum/reagent/D = chemical_reagents_list[reagent] - if(D) - - var/datum/reagent/R = new D.type() - reagent_list += R - R.holder = src - R.volume = amount - if(reagent == "paint") - R.color = data - else - SetViruses(R, data) // Includes setting data for blood - - //debug - //world << "Adding data" - //for(var/D in R.data) - // world << "Container data: [D] = [R.data[D]]" - //debug - update_total() - my_atom.on_reagent_change() - if(!safety) - handle_reactions() - return 0 - else - warning("[my_atom] attempted to add a reagent called '[reagent]' which doesn't exist. ([usr])") - - if(!safety) - handle_reactions() +/datum/reagents/proc/del_reagent(var/id) + for(var/datum/reagent/current in reagent_list) + if (current.id == id) + reagent_list -= current + del(current) + update_total() + if(my_atom) + my_atom.on_reagent_change() + return 0 +/datum/reagents/proc/has_reagent(var/id, var/amount = 0) + for(var/datum/reagent/current in reagent_list) + if(current.id == id) + if(current.volume >= amount) return 1 - - remove_reagent(var/reagent, var/amount, var/safety = 0)//Added a safety check for the trans_id_to - if(!isnum(amount)) return 1 - - for(var/A in reagent_list) - var/datum/reagent/R = A - if (R.id == reagent) - R.volume -= amount - update_total() - if(!safety)//So it does not handle reactions when it need not to - handle_reactions() - my_atom.on_reagent_change() - return 0 - - return 1 - - has_reagent(var/reagent, var/amount = -1) - - for(var/A in reagent_list) - var/datum/reagent/R = A - if (R.id == reagent) - if(!amount) return R - else - if(R.volume >= amount) return R - else return 0 - + else return 0 + return 0 - get_reagent_amount(var/reagent) - for(var/A in reagent_list) - var/datum/reagent/R = A - if (R.id == reagent) - return R.volume +/datum/reagents/proc/clear_reagents() + for(var/datum/reagent/current in reagent_list) + del_reagent(current.id) + return - return 0 +/datum/reagents/proc/get_reagent_amount(var/id) + for(var/datum/reagent/current in reagent_list) + if(current.id == id) + return current.volume + return 0 - get_reagents() - var/res = "" - for(var/datum/reagent/A in reagent_list) - if (res != "") res += "," - res += A.name +/datum/reagents/proc/get_data(var/id) + for(var/datum/reagent/current in reagent_list) + if(current.id == id) + return current.get_data() + return 0 - return res +/datum/reagents/proc/get_reagents() + var/res = "" + for(var/datum/reagent/current in reagent_list) + if (res != "") res += "," + res += "[current.id]([current.volume])" - remove_all_type(var/reagent_type, var/amount, var/strict = 0, var/safety = 1) // Removes all reagent of X type. @strict set to 1 determines whether the childs of the type are included. - if(!isnum(amount)) return 1 + return res - var/has_removed_reagent = 0 +/* Holder-to-holder and similar procs */ - for(var/datum/reagent/R in reagent_list) - var/matches = 0 - // Switch between how we check the reagent type - if(strict) - if(R.type == reagent_type) - matches = 1 - else - if(istype(R, reagent_type)) - matches = 1 - // We found a match, proceed to remove the reagent. Keep looping, we might find other reagents of the same type. - if(matches) - // Have our other proc handle removement - has_removed_reagent = remove_reagent(R.id, amount, safety) +/datum/reagents/proc/remove_any(var/amount = 1) // Removes up to [amount] of reagents from [src]. Returns actual amount removed. + amount = min(amount, total_volume) - return has_removed_reagent + if(!amount) + return - //two helper functions to preserve data across reactions (needed for xenoarch) - get_data(var/reagent_id) - for(var/datum/reagent/D in reagent_list) - if(D.id == reagent_id) - //world << "proffering a data-carrying reagent ([reagent_id])" - return D.data + var/part = amount / total_volume - set_data(var/reagent_id, var/new_data) - for(var/datum/reagent/D in reagent_list) - if(D.id == reagent_id) - //world << "reagent data set ([reagent_id])" - D.data = new_data + for(var/datum/reagent/current in reagent_list) + var/amount_to_remove = current.volume * part + remove_reagent(current.id, amount_to_remove, 1) - delete() - for(var/datum/reagent/R in reagent_list) - R.holder = null - if(my_atom) - my_atom.reagents = null + update_total() + handle_reactions() + return amount - copy_data(var/datum/reagent/current_reagent) - if (current_reagent.id == "paint") return current_reagent.color - if (!current_reagent || !current_reagent.data) return null - if (!istype(current_reagent.data, /list)) return current_reagent.data +/datum/reagents/proc/trans_to_holder(var/datum/reagents/target, var/amount = 1, var/multiplier = 1, var/copy = 0) // Transfers [amount] reagents from [src] to [target], multiplying them by [multiplier]. Returns actual amount removed from [src] (not amount transferred to [target]). + if(!target || !istype(target)) + return - var/list/trans_data = current_reagent.data.Copy() + amount = min(amount, total_volume, target.get_free_space() / multiplier) - // We do this so that introducing a virus to a blood sample - // doesn't automagically infect all other blood samples from - // the same donor. - // - // Technically we should probably copy all data lists, but - // that could possibly eat up a lot of memory needlessly - // if most data lists are read-only. - if (trans_data["virus2"]) - var/list/v = trans_data["virus2"] - trans_data["virus2"] = v.Copy() + if(!amount) + return - return trans_data + var/part = amount / total_volume -/////////////////////////////////////////////////////////////////////////////////// + for(var/datum/reagent/current in reagent_list) + var/amount_to_transfer = current.volume * part + target.add_reagent(current.id, amount_to_transfer * multiplier, current.get_data(), safety = 1) // We don't react until everything is in place + if(!copy) + remove_reagent(current.id, amount_to_transfer, 1) + if(!copy) + handle_reactions() + target.handle_reactions() + return amount -// Convenience proc to create a reagents holder for an atom -// Max vol is maximum volume of holder -atom/proc/create_reagents(var/max_vol) +/* Holder-to-atom and similar procs */ + +/datum/reagents/proc/touch(var/atom/target) // This picks the appropriate reaction. Reagents are not guaranteed to transfer to the target. + if(ismob(target)) + touch_mob(target) + if(isturf(target)) + touch_turf(target) + if(isobj(target)) + touch_obj(target) + return + +/datum/reagents/proc/touch_mob(var/mob/target) + if(!target || !istype(target)) + return + + for(var/datum/reagent/current in reagent_list) + current.touch_mob(target) + + update_total() + +/datum/reagents/proc/touch_turf(var/turf/target) + if(!target || !istype(target)) + return + + for(var/datum/reagent/current in reagent_list) + current.touch_turf(target) + + update_total() + +/datum/reagents/proc/touch_obj(var/obj/target) + if(!target || !istype(target)) + return + + for(var/datum/reagent/current in reagent_list) + current.touch_obj(target) + + update_total() + +/datum/reagents/proc/trans_to(var/atom/target, var/amount = 1, var/multiplier = 1, var/copy = 0) + if(ismob(target)) + //warning("[my_atom] is trying to transfer reagents to [target], which is a mob, using trans_to()") + //return trans_to_mob(target, amount, multiplier, copy) + return splash_mob(target, amount) + if(isturf(target)) + return trans_to_turf(target, amount, multiplier, copy) + if(isobj(target)) + return trans_to_obj(target, amount, multiplier, copy) + return 0 + +/datum/reagents/proc/trans_id_to(var/atom/target, var/id, var/amount = 1) + if (!target || !target.reagents) + return + + amount = min(amount, get_reagent_amount(id)) + + if(!amount) + return + + var/datum/reagents/F = new /datum/reagents(amount) + var/tmpdata = get_data(id) + F.add_reagent(id, amount, tmpdata) + remove_reagent(id, amount) + + return F.trans_to(target, amount) // Let this proc check the atom's type + +/datum/reagents/proc/splash_mob(var/mob/target, var/amount = 1, var/clothes = 1) + var/perm = 0 + var/list/L = list("head" = THERMAL_PROTECTION_HEAD, "upper_torso" = THERMAL_PROTECTION_UPPER_TORSO, "lower_torso" = THERMAL_PROTECTION_LOWER_TORSO, "legs" = THERMAL_PROTECTION_LEG_LEFT + THERMAL_PROTECTION_LEG_RIGHT, "feet" = THERMAL_PROTECTION_FOOT_LEFT + THERMAL_PROTECTION_FOOT_RIGHT, "arms" = THERMAL_PROTECTION_ARM_LEFT + THERMAL_PROTECTION_ARM_RIGHT, "hands" = THERMAL_PROTECTION_HAND_LEFT + THERMAL_PROTECTION_HAND_RIGHT) + if(clothes) + for(var/obj/item/clothing/C in target.get_equipped_items()) + if(C.permeability_coefficient == 1 || C.body_parts_covered == 0) + continue + if(C.body_parts_covered & HEAD) + L["head"] *= C.permeability_coefficient + if(C.body_parts_covered & UPPER_TORSO) + L["upper_torso"] *= C.permeability_coefficient + if(C.body_parts_covered & LOWER_TORSO) + L["lower_torso"] *= C.permeability_coefficient + if(C.body_parts_covered & LEGS) + L["legs"] *= C.permeability_coefficient + if(C.body_parts_covered & FEET) + L["feet"] *= C.permeability_coefficient + if(C.body_parts_covered & ARMS) + L["arms"] *= C.permeability_coefficient + if(C.body_parts_covered & HANDS) + L["hands"] *= C.permeability_coefficient + for(var/t in L) + perm += L[t] + return trans_to_mob(target, amount, CHEM_TOUCH, perm) + +/datum/reagents/proc/trans_to_mob(var/mob/target, var/amount = 1, var/type = CHEM_BLOOD, var/multiplier = 1, var/copy = 0) // Transfer after checking into which holder... + if(!target || !istype(target)) + return + if(iscarbon(target)) + var/mob/living/carbon/C = target + if(type == CHEM_BLOOD) + var/datum/reagents/R = C.reagents + return trans_to_holder(R, amount, multiplier, copy) + if(type == CHEM_INGEST) + var/datum/reagents/R = C.ingested + return trans_to_holder(R, amount, multiplier, copy) + if(type == CHEM_TOUCH) + var/datum/reagents/R = C.touching + return trans_to_holder(R, amount, multiplier, copy) + else + var/datum/reagents/R = new /datum/reagents(amount) + . = trans_to_holder(R, amount, multiplier, copy) + R.touch_mob(target) + +/datum/reagents/proc/trans_to_turf(var/turf/target, var/amount = 1, var/multiplier = 1, var/copy = 0) // Turfs don't have any reagents (at least, for now). Just touch it. + if(!target) + return + + var/datum/reagents/R = new /datum/reagents(maximum_volume) + . = trans_to_holder(R, amount, multiplier, copy) + R.touch_turf(target) + return + +/datum/reagents/proc/trans_to_obj(var/turf/target, var/amount = 1, var/multiplier = 1, var/copy = 0) // Objects may or may not; if they do, it's probably a beaker or something and we need to transfer properly; otherwise, just touch. + if(!target) + return + + if(!target.reagents) + var/datum/reagents/R = new /datum/reagents(maximum_volume) + . = trans_to_holder(R, amount, multiplier, copy) + R.touch_obj(target) + return + + return trans_to_holder(target.reagents, amount, multiplier, copy) + +/datum/reagents/proc/metabolize(var/alien, var/location) + if(!iscarbon(my_atom)) + return + var/mob/living/carbon/C = my_atom + if(!C || !istype(C)) + return + for(var/datum/reagent/current in reagent_list) + current.on_mob_life(C, alien, location) + update_total() + +/* Atom reagent creation - use it all the time */ + +/atom/proc/create_reagents(var/max_vol) reagents = new/datum/reagents(max_vol) - reagents.my_atom = src + reagents.my_atom = src \ No newline at end of file diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index 6885f82d5d..547b2ab595 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -189,7 +189,7 @@ P.pixel_x = rand(-7, 7) //random position P.pixel_y = rand(-7, 7) P.icon_state = "pill"+pillsprite - reagents.trans_to(P,amount_per_pill) + reagents.trans_to_obj(P,amount_per_pill) if(src.loaded_pill_bottle) if(loaded_pill_bottle.contents.len < loaded_pill_bottle.storage_slots) P.loc = loaded_pill_bottle @@ -204,11 +204,11 @@ P.pixel_x = rand(-7, 7) //random position P.pixel_y = rand(-7, 7) P.icon_state = bottlesprite - reagents.trans_to(P,60) + reagents.trans_to_obj(P,60) P.update_icon() else var/obj/item/weapon/reagent_containers/food/condiment/P = new/obj/item/weapon/reagent_containers/food/condiment(src.loc) - reagents.trans_to(P,50) + reagents.trans_to_obj(P,50) else if(href_list["change_pill"]) #define MAX_PILL_SPRITE 20 //max icon state of the pill sprites var/dat = "" diff --git a/code/modules/reagents/Chemistry-Reagents-Antidepressants.dm b/code/modules/reagents/Chemistry-Reagents-Antidepressants.dm deleted file mode 100644 index 12ecf3a817..0000000000 --- a/code/modules/reagents/Chemistry-Reagents-Antidepressants.dm +++ /dev/null @@ -1,90 +0,0 @@ -#define ANTIDEPRESSANT_MESSAGE_DELAY 5*60*10 - -/datum/reagent/antidepressant/methylphenidate - name = "Methylphenidate" - id = "methylphenidate" - description = "Improves the ability to concentrate." - reagent_state = LIQUID - color = "#BF80BF" - custom_metabolism = 0.01 - data = 0 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(src.volume <= 0.1) if(data != -1) - data = -1 - M << "\red You lose focus.." - else - if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) - data = world.time - M << "\blue Your mind feels focused and undivided." - ..() - return - -/datum/chemical_reaction/methylphenidate - name = "Methylphenidate" - id = "methylphenidate" - result = "methylphenidate" - required_reagents = list("mindbreaker" = 1, "hydrogen" = 1) - result_amount = 3 - -/datum/reagent/antidepressant/citalopram - name = "Citalopram" - id = "citalopram" - description = "Stabilizes the mind a little." - reagent_state = LIQUID - color = "#FF80FF" - custom_metabolism = 0.01 - data = 0 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(src.volume <= 0.1) if(data != -1) - data = -1 - M << "\red Your mind feels a little less stable.." - else - if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) - data = world.time - M << "\blue Your mind feels stable.. a little stable." - ..() - return - -/datum/chemical_reaction/citalopram - name = "Citalopram" - id = "citalopram" - result = "citalopram" - required_reagents = list("mindbreaker" = 1, "carbon" = 1) - result_amount = 3 - - -/datum/reagent/antidepressant/paroxetine - name = "Paroxetine" - id = "paroxetine" - description = "Stabilizes the mind greatly, but has a chance of adverse effects." - reagent_state = LIQUID - color = "#FF80BF" - custom_metabolism = 0.01 - data = 0 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(src.volume <= 0.1) if(data != -1) - data = -1 - M << "\red Your mind feels much less stable.." - else - if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) - data = world.time - if(prob(90)) - M << "\blue Your mind feels much more stable." - else - M << "\red Your mind breaks apart.." - M.hallucination += 200 - ..() - return - -/datum/chemical_reaction/paroxetine - name = "Paroxetine" - id = "paroxetine" - result = "paroxetine" - required_reagents = list("mindbreaker" = 1, "oxygen" = 1, "inaprovaline" = 1) - result_amount = 3 diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index d5a3095e49..f3c79c7aae 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -1,4441 +1,4119 @@ -#define SOLID 1 -#define LIQUID 2 -#define GAS 3 -#define REAGENTS_OVERDOSE 30 -#define REM REAGENTS_EFFECT_MULTIPLIER +/datum/reagent + var/name = "Reagent" + var/id = "reagent" + var/description = "A non-descript chemical." + var/datum/reagents/holder = null + var/reagent_state = SOLID + var/list/data = null + var/volume = 0 + var/metabolism = REM // This would be 0.2 normally + var/ingest_met = 0 + var/touch_met = 0 + var/dose = 0 + var/max_dose = 0 + var/overdose_blood = 0 + var/overdose_ingest = 0 + var/scannable = 0 // Shows up on health analyzers. + var/affects_dead = 0 + var/glass_icon_state = null + var/glass_name = null + var/glass_desc = null + var/glass_center_of_mass = null + var/color = "#000000" + var/color_weight = 1 -//The reaction procs must ALWAYS set src = null, this detaches the proc from the object (the reagent) -//so that it can continue working when the reagent is deleted while the proc is still active. +/datum/reagent/proc/remove_self(var/amount) // Shortcut + holder.remove_reagent(id, amount) + +/datum/reagent/proc/touch_mob(var/mob/M) // This doesn't apply to being splashed - this is for, e.g. extinguishers and sprays. The difference is that reagent is not on the mob - it's in another object. + return + +/datum/reagent/proc/touch_obj(var/obj/O) // Acid melting, cleaner cleaning, etc + return + +/datum/reagent/proc/touch_turf(var/turf/T) // Cleaner cleaning, lube lubbing, etc, all go here + return + +/datum/reagent/proc/on_mob_life(var/mob/living/carbon/M, var/alien, var/location) // Currently, on_mob_life is called on carbons. Any interaction with non-carbon mobs (lube) will need to be done in touch_mob. + if(!istype(M)) + return + if(!affects_dead && M.stat == DEAD) + return + if((overdose_blood && (location == CHEM_BLOOD) && dose > overdose_blood) || (overdose_ingest && (location == CHEM_INGEST) && dose > overdose_ingest)) + overdose(M, alien) + var/removed = metabolism + if(ingest_met && (location == CHEM_INGEST)) + removed = ingest_met + if(touch_met && (location == CHEM_TOUCH)) + removed = touch_met + removed = min(removed, volume) + max_dose = max(volume, max_dose) + dose = min(dose + removed, max_dose) + if(removed >= (metabolism * 0.1) || removed >= 0.1) // If there's too little chemical, don't affect the mob, just remove it + affect_mob(M, alien, removed, location) + remove_self(removed) + return + +/datum/reagent/proc/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) // This is the main working proc where the chemical does its magic + return + +/datum/reagent/proc/overdose(var/mob/living/carbon/M, var/alien) // Overdose effect. Doesn't happen instantly. + M.adjustToxLoss(REM) + return + +/datum/reagent/proc/initialize_data(var/newdata) // Called when the reagent is created. + if(!isnull(newdata)) + data = newdata + return + +/datum/reagent/proc/mix_data(var/newdata, var/newamount) // You have a reagent with data, and new reagent with its own data get added, how do you deal with that? + return + +/datum/reagent/proc/get_data() // Just in case you have a reagent that handles data differently. + if(data && istype(data, /list)) + return data.Copy() + else if(data) + return data + return null + +/* DEPRECATED - TODO: REMOVE EVERYWHERE */ + +/datum/reagent/proc/reaction_turf(var/turf/target) + touch_turf(target) + +/datum/reagent/proc/reaction_obj(var/obj/target) + touch_obj(target) + +/datum/reagent/proc/reaction_mob(var/mob/target) + touch_mob(target) -datum - reagent - var/name = "Reagent" - var/id = "reagent" - var/description = "" - var/datum/reagents/holder = null - var/reagent_state = SOLID - var/list/data = null - var/volume = 0 - var/nutriment_factor = 0 - var/custom_metabolism = REAGENTS_METABOLISM - var/overdose = 0 - var/overdose_dam = 1 - var/scannable = 0 //shows up on health analyzers - var/glass_icon_state = null - var/glass_name = null - var/glass_desc = null - var/glass_center_of_mass = null - //var/list/viruses = list() - var/color = "#000000" // rgb: 0, 0, 0 (does not support alpha channels - yet!) +/* REAGENTS START HERE */ - proc - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) //By default we have a chance to transfer some - if(!istype(M, /mob/living)) return 0 - var/datum/reagent/self = src - src = null //of the reagent to the mob on TOUCHING it. +/* Core reagents - the most important ones */ - if(self.holder) //for catching rare runtimes - if(!istype(self.holder.my_atom, /obj/effect/effect/smoke/chem)) - // If the chemicals are in a smoke cloud, do not try to let the chemicals "penetrate" into the mob's system (balance station 13) -- Doohl +/datum/reagent/blood + data = new/list("donor" = null, "viruses" = null, "species" = "Human", "blood_DNA" = null, "blood_type" = null, "blood_colour" = "#A10808", "resistances" = null, "trace_chem" = null, "antibodies" = list()) + name = "Blood" + id = "blood" + reagent_state = LIQUID + metabolism = REM * 5 + color = "#C80000" - if(method == TOUCH) + glass_icon_state = "glass_red" + glass_name = "glass of tomato juice" + glass_desc = "Are you sure this is tomato juice?" - var/chance = 1 - var/block = 0 +/datum/reagent/blood/initialize_data(var/newdata) + ..() + if(data && data["blood_colour"]) + color = data["blood_colour"] + return - for(var/obj/item/clothing/C in M.get_equipped_items()) - if(C.permeability_coefficient < chance) chance = C.permeability_coefficient - if(istype(C, /obj/item/clothing/suit/bio_suit)) - // bio suits are just about completely fool-proof - Doohl - // kind of a hacky way of making bio suits more resistant to chemicals but w/e - if(prob(75)) - block = 1 +/datum/reagent/blood/get_data() // Just in case you have a reagent that handles data differently. + var/t = data.Copy() + if(t["virus2"]) + var/list/v = t["virus2"] + t["virus2"] = v.Copy() + return t - if(istype(C, /obj/item/clothing/head/bio_hood)) - if(prob(75)) - block = 1 +/datum/reagent/blood/mix_data(var/newdata, var/newamount) // You have a reagent with data, and new reagent with its own data get added, how do you deal with that? + if(data["viruses"] || newdata["viruses"]) + var/list/mix1 = data["viruses"] + var/list/mix2 = newdata["viruses"] + var/list/to_mix = list() // Stop issues with the list changing during mixing. + for(var/datum/disease/advance/AD in mix1) + to_mix += AD + for(var/datum/disease/advance/AD in mix2) + to_mix += AD + var/datum/disease/advance/AD = Advance_Mix(to_mix) + if(AD) + var/list/preserve = list(AD) + for(var/D in data["viruses"]) + if(!istype(D, /datum/disease/advance)) + preserve += D + data["viruses"] = preserve - chance = chance * 100 +/datum/reagent/blood/touch_turf(var/turf/simulated/T) + if(!istype(T) || volume < 3) + return + if(!data["donor"] || istype(data["donor"], /mob/living/carbon/human)) + blood_splatter(T, src, 1) + else if(istype(data["donor"], /mob/living/carbon/monkey)) + var/obj/effect/decal/cleanable/blood/B = blood_splatter(T, src, 1) + if(B) + B.blood_DNA["Non-Human DNA"] = "A+" + else if(istype(data["donor"], /mob/living/carbon/alien)) + var/obj/effect/decal/cleanable/blood/B = blood_splatter(T, src, 1) + if(B) + B.blood_DNA["UNKNOWN DNA STRUCTURE"] = "X*" - if(prob(chance) && !block) - if(M.reagents) - M.reagents.add_reagent(self.id,self.volume/2) - return 1 +/datum/reagent/blood/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_INGEST) + if(dose > 5) + M.adjustToxLoss(removed) + if(dose > 15) + M.adjustToxLoss(removed) + if(location == CHEM_TOUCH) + if(data && data["viruses"]) + for(var/datum/disease/D in data["viruses"]) + if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) + continue + M.contract_disease(D) + if(data && data["virus2"]) + var/list/vlist = data["virus2"] + if(vlist.len) + for(var/ID in vlist) + var/datum/disease2/disease/V = vlist[ID] + infect_virus2(M, V.getcopy()) + if(data && data["antibodies"]) + M.antibodies |= data["antibodies"] + if(location == CHEM_BLOOD) + M.inject_blood(src, volume) + remove_self(volume) - reaction_obj(var/obj/O, var/volume) //By default we transfer a small part of the reagent to the object - src = null //if it can hold reagents. nope! - //if(O.reagents) - // O.reagents.add_reagent(id,volume/3) - return +/datum/reagent/vaccine + name = "Vaccine" + id = "vaccine" + reagent_state = LIQUID + color = "#C81040" - reaction_turf(var/turf/T, var/volume) - src = null - return +/datum/reagent/vaccine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(data && location == CHEM_BLOOD) + for(var/datum/disease/D in M.viruses) + if(istype(D, /datum/disease/advance)) + var/datum/disease/advance/A = D + if(A.GetDiseaseID() == data) + D.cure() + else + if(D.type == data) + D.cure() - on_mob_life(var/mob/living/M as mob, var/alien) - if(!istype(M, /mob/living)) - return //Noticed runtime errors from pacid trying to damage ghosts, this should fix. --NEO - if( (overdose > 0) && (volume >= overdose))//Overdosing, wooo - M.adjustToxLoss(overdose_dam) - holder.remove_reagent(src.id, custom_metabolism) //By default it slowly disappears. - return + M.resistances += data + return - on_move(var/mob/M) - return +#define WATER_LATENT_HEAT 19000 // How much heat is removed when applied to a hot turf, in J/unit (19000 makes 120 u of water roughly equivalent to 4L) +/datum/reagent/water + name = "Water" + id = "water" + description = "A ubiquitous chemical substance that is composed of hydrogen and oxygen." + reagent_state = LIQUID + color = "#0064C877" + metabolism = REM * 10 - // Called after add_reagents creates a new reagent. - on_new(var/data) - return + glass_icon_state = "glass_clear" + glass_name = "glass of water" + glass_desc = "The father of all refreshments." - // Called when two reagents of the same are mixing. <-- Blatant lies - on_merge(var/data) - return +/datum/reagent/water/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return - on_update(var/atom/A) - return + var/datum/gas_mixture/environment = T.return_air() + var/min_temperature = T0C + 100 // 100C, the boiling point of water + var/hotspot = (locate(/obj/fire) in T) + if(hotspot && !istype(T, /turf/space)) + var/datum/gas_mixture/lowertemp = T.remove_air(T:air:total_moles) + lowertemp.temperature = max(min(lowertemp.temperature-2000, lowertemp.temperature / 2), 0) + lowertemp.react() + T.assume_air(lowertemp) + del(hotspot) + if (environment && environment.temperature > min_temperature) // Abstracted as steam or something + var/removed_heat = between(0, volume * WATER_LATENT_HEAT, -environment.get_thermal_energy_change(min_temperature)) + environment.add_thermal_energy(-removed_heat) + if (prob(5)) + T.visible_message("The water sizzles as it lands on \the [T]!") + else + if(volume >= 3) + if(T.wet >= 1) + return + T.wet = 1 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") + T.overlays += T.wet_overlay - blood - data = new/list("donor"=null,"viruses"=null,"species"="Human","blood_DNA"=null,"blood_type"=null,"blood_colour"= "#A10808","resistances"=null,"trace_chem"=null, "antibodies" = list()) - name = "Blood" - id = "blood" - reagent_state = LIQUID - color = "#C80000" // rgb: 200, 0, 0 - - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" - glass_desc = "Are you sure this is tomato juice?" - - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) - var/datum/reagent/blood/self = src - src = null - if(self.data && self.data["viruses"]) - for(var/datum/disease/D in self.data["viruses"]) - //var/datum/disease/virus = new D.type(0, D, 1) - // We don't spread. - if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) continue - - if(method == TOUCH) - M.contract_disease(D) - else //injected - M.contract_disease(D, 1, 0) - if(self.data && self.data["virus2"] && istype(M, /mob/living/carbon))//infecting... - var/list/vlist = self.data["virus2"] - if (vlist.len) - for (var/ID in vlist) - var/datum/disease2/disease/V = vlist[ID] - - if(method == TOUCH) - infect_virus2(M,V.getcopy()) - else - infect_virus2(M,V.getcopy(),1) //injected, force infection! - if(self.data && self.data["antibodies"] && istype(M, /mob/living/carbon))//... and curing - var/mob/living/carbon/C = M - C.antibodies |= self.data["antibodies"] - - on_merge(var/data) - if(data["blood_colour"]) - color = data["blood_colour"] - return ..() - - on_update(var/atom/A) - if(data["blood_colour"]) - color = data["blood_colour"] - return ..() - - reaction_turf(var/turf/simulated/T, var/volume)//splash the blood all over the place - if(!istype(T)) return - var/datum/reagent/blood/self = src - src = null - if(!(volume >= 3)) return - - if(!self.data["donor"] || istype(self.data["donor"], /mob/living/carbon/human)) - blood_splatter(T,self,1) - else if(istype(self.data["donor"], /mob/living/carbon/monkey)) - var/obj/effect/decal/cleanable/blood/B = blood_splatter(T,self,1) - if(B) B.blood_DNA["Non-Human DNA"] = "A+" - else if(istype(self.data["donor"], /mob/living/carbon/alien)) - var/obj/effect/decal/cleanable/blood/B = blood_splatter(T,self,1) - if(B) B.blood_DNA["UNKNOWN DNA STRUCTURE"] = "X*" - return - -/* Must check the transfering of reagents and their data first. They all can point to one disease datum. - - Del() - if(src.data["virus"]) - var/datum/disease/D = src.data["virus"] - D.cure(0) - ..() -*/ - vaccine - //data must contain virus type - name = "Vaccine" - id = "vaccine" - reagent_state = LIQUID - color = "#C81040" // rgb: 200, 16, 64 - - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) - var/datum/reagent/vaccine/self = src - src = null - if(self.data&&method == INGEST) - for(var/datum/disease/D in M.viruses) - if(istype(D, /datum/disease/advance)) - var/datum/disease/advance/A = D - if(A.GetDiseaseID() == self.data) - D.cure() - else - if(D.type == self.data) - D.cure() - - M.resistances += self.data - return - - woodpulp - name = "Wood Pulp" - id = "woodpulp" - description = "A mass of wood fibers." - reagent_state = LIQUID - color = "#B97A57" - - #define WATER_LATENT_HEAT 19000 // How much heat is removed when applied to a hot turf, in J/unit (19000 makes 120 u of water roughly equivalent to 4L) - water - name = "Water" - id = "water" - description = "A ubiquitous chemical substance that is composed of hydrogen and oxygen." - reagent_state = LIQUID - color = "#0064C8" // rgb: 0, 100, 200 - custom_metabolism = 0.01 - - glass_icon_state = "glass_clear" - glass_name = "glass of water" - glass_desc = "The father of all refreshments." - - reaction_turf(var/turf/simulated/T, var/volume) - if (!istype(T)) return - - //If the turf is hot enough, remove some heat - var/datum/gas_mixture/environment = T.return_air() - var/min_temperature = T0C + 100 //100C, the boiling point of water - - if (environment && environment.temperature > min_temperature) //abstracted as steam or something - var/removed_heat = between(0, volume*WATER_LATENT_HEAT, -environment.get_thermal_energy_change(min_temperature)) - environment.add_thermal_energy(-removed_heat) - if (prob(5)) - T.visible_message("\red The water sizzles as it lands on \the [T]!") - - else //otherwise, the turf gets wet - if(volume >= 3) - if(T.wet >= 1) return - T.wet = 1 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") - T.overlays += T.wet_overlay - - src = null - spawn(800) - if (!istype(T)) return - if(T.wet >= 2) return - T.wet = 0 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - - //Put out fires. - var/hotspot = (locate(/obj/fire) in T) - if(hotspot) - del(hotspot) - if(environment) - environment.react() //react at the new temperature - - reaction_obj(var/obj/O, var/volume) - var/turf/T = get_turf(O) - var/hotspot = (locate(/obj/fire) in T) - if(hotspot && !istype(T, /turf/space)) - var/datum/gas_mixture/lowertemp = T.remove_air( T:air:total_moles ) - lowertemp.temperature = max( min(lowertemp.temperature-2000,lowertemp.temperature / 2) ,0) - lowertemp.react() - T.assume_air(lowertemp) - del(hotspot) - if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/monkeycube)) - var/obj/item/weapon/reagent_containers/food/snacks/monkeycube/cube = O - if(!cube.wrapped) - cube.Expand() - - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) - if (istype(M, /mob/living/carbon/slime)) - var/mob/living/carbon/slime/S = M - S.apply_water(volume) - if(method == TOUCH && isliving(M)) - M.adjust_fire_stacks(-(volume / 10)) - if(M.fire_stacks <= 0) - M.ExtinguishMob() + spawn(800) // This is terrible and needs to be changed when possible. + if(!T || !istype(T)) return - - water/holywater - name = "Holy Water" - id = "holywater" - description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." - color = "#E0E8EF" // rgb: 224, 232, 239 - - glass_icon_state = "glass_clear" - glass_name = "glass of holy water" - glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." - - on_mob_life(var/mob/living/M as mob) - if(ishuman(M)) - if(M.mind && cult.is_antagonist(M.mind) && prob(10)) - cult.remove_antagonist(M.mind) - holder.remove_reagent(src.id, 10 * REAGENTS_METABOLISM) //high metabolism to prevent extended uncult rolls. - return - - lube - name = "Space Lube" - id = "lube" - description = "Lubricant is a substance introduced between two moving surfaces to reduce the friction and wear between them. giggity." - reagent_state = LIQUID - color = "#009CA8" // rgb: 0, 156, 168 - overdose = REAGENTS_OVERDOSE - - reaction_turf(var/turf/simulated/T, var/volume) - if (!istype(T)) return - src = null - if(volume >= 1) - if(T.wet >= 2) return - T.wet = 2 - spawn(800) - if (!istype(T)) return - T.wet = 0 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - return - - plasticide - name = "Plasticide" - id = "plasticide" - description = "Liquid plastic, do not eat." - reagent_state = LIQUID - color = "#CF3600" // rgb: 207, 54, 0 - custom_metabolism = 0.01 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - // Toxins are really weak, but without being treated, last very long. - M.adjustToxLoss(0.2) - ..() - return - - slimetoxin - name = "Mutation Toxin" - id = "mutationtoxin" - description = "A corruptive toxin produced by slimes." - reagent_state = LIQUID - color = "#13BC5E" // rgb: 19, 188, 94 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(ishuman(M)) - var/mob/living/carbon/human/human = M - if(human.species.name != "Slime") - M << "Your flesh rapidly mutates!" - human.set_species("Slime") - ..() - return - - aslimetoxin - name = "Advanced Mutation Toxin" - id = "amutationtoxin" - description = "An advanced corruptive toxin produced by slimes." - reagent_state = LIQUID - color = "#13BC5E" // rgb: 19, 188, 94 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(istype(M, /mob/living/carbon) && M.stat != DEAD) - M << "\red Your flesh rapidly mutates!" - if(M.monkeyizing) return - M.monkeyizing = 1 - M.canmove = 0 - M.icon = null - M.overlays.Cut() - M.invisibility = 101 - for(var/obj/item/W in M) - if(istype(W, /obj/item/weapon/implant)) //TODO: Carn. give implants a dropped() or something - del(W) - continue - W.layer = initial(W.layer) - W.loc = M.loc - W.dropped(M) - var/mob/living/carbon/slime/new_mob = new /mob/living/carbon/slime(M.loc) - new_mob.a_intent = "hurt" - new_mob.universal_speak = 1 - if(M.mind) - M.mind.transfer_to(new_mob) - else - new_mob.key = M.key - del(M) - ..() - return - - inaprovaline - name = "Inaprovaline" - id = "inaprovaline" - description = "Inaprovaline is a synaptic stimulant and cardiostimulant. Commonly used to stabilize patients." - reagent_state = LIQUID - color = "#00BFFF" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE*2 - scannable = 1 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(!M) M = holder.my_atom - - if(alien && alien == IS_VOX) - M.adjustToxLoss(REAGENTS_METABOLISM) - else - if(M.losebreath >= 10) - M.losebreath = max(10, M.losebreath-5) - - holder.remove_reagent(src.id, 0.5 * REAGENTS_METABOLISM) - return - - space_drugs - name = "Space drugs" - id = "space_drugs" - description = "An illegal chemical compound used as drug." - reagent_state = LIQUID - color = "#60A584" // rgb: 96, 165, 132 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.druggy = max(M.druggy, 15) - if(isturf(M.loc) && !istype(M.loc, /turf/space)) - if(M.canmove && !M.restrained()) - if(prob(10)) step(M, pick(cardinal)) - if(prob(7)) M.emote(pick("twitch","drool","moan","giggle")) - holder.remove_reagent(src.id, 0.5 * REAGENTS_METABOLISM) - return - - serotrotium - name = "Serotrotium" - id = "serotrotium" - description = "A chemical compound that promotes concentrated production of the serotonin neurotransmitter in humans." - reagent_state = LIQUID - color = "#202040" // rgb: 20, 20, 40 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(ishuman(M)) - if(prob(7)) M.emote(pick("twitch","drool","moan","gasp")) - holder.remove_reagent(src.id, 0.25 * REAGENTS_METABOLISM) - return - - silicate - name = "Silicate" - id = "silicate" - description = "A compound that can be used to reinforce glass." - reagent_state = LIQUID - color = "#C7FFFF" // rgb: 199, 255, 255 - - reaction_obj(var/obj/O, var/volume) - src = null - if(istype(O,/obj/structure/window)) - var/obj/structure/window/W = O - W.apply_silicate(volume) - return - - oxygen - name = "Oxygen" - id = "oxygen" - description = "A colorless, odorless gas." - reagent_state = GAS - color = "#808080" // rgb: 128, 128, 128 - - custom_metabolism = 0.01 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(M.stat == 2) return - if(alien && alien == IS_VOX) - M.adjustToxLoss(REAGENTS_METABOLISM) - holder.remove_reagent(src.id, REAGENTS_METABOLISM) //By default it slowly disappears. + if(T.wet >= 2) return - ..() - - copper - name = "Copper" - id = "copper" - description = "A highly ductile metal." - color = "#6E3B08" // rgb: 110, 59, 8 - - custom_metabolism = 0.01 - - nitrogen - name = "Nitrogen" - id = "nitrogen" - description = "A colorless, odorless, tasteless gas." - reagent_state = GAS - color = "#808080" // rgb: 128, 128, 128 - - custom_metabolism = 0.01 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(M.stat == 2) return - if(alien && alien == IS_VOX) - M.adjustOxyLoss(-2*REM) - holder.remove_reagent(src.id, REAGENTS_METABOLISM) //By default it slowly disappears. - return - ..() - - hydrogen - name = "Hydrogen" - id = "hydrogen" - description = "A colorless, odorless, nonmetallic, tasteless, highly combustible diatomic gas." - reagent_state = GAS - color = "#808080" // rgb: 128, 128, 128 - - custom_metabolism = 0.01 - - potassium - name = "Potassium" - id = "potassium" - description = "A soft, low-melting solid that can easily be cut with a knife. Reacts violently with water." - reagent_state = SOLID - color = "#A0A0A0" // rgb: 160, 160, 160 - - custom_metabolism = 0.01 - - mercury - name = "Mercury" - id = "mercury" - description = "A chemical element." - reagent_state = LIQUID - color = "#484848" // rgb: 72, 72, 72 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) - step(M, pick(cardinal)) - if(prob(5)) M.emote(pick("twitch","drool","moan")) - M.adjustBrainLoss(2) - ..() - return - - sulfur - name = "Sulfur" - id = "sulfur" - description = "A chemical element with a pungent smell." - reagent_state = SOLID - color = "#BF8C00" // rgb: 191, 140, 0 - - custom_metabolism = 0.01 - - carbon - name = "Carbon" - id = "carbon" - description = "A chemical element, the builing block of life." - reagent_state = SOLID - color = "#1C1300" // rgb: 30, 20, 0 - - custom_metabolism = 0.01 - - reaction_turf(var/turf/T, var/volume) - src = null - if(!istype(T, /turf/space)) - var/obj/effect/decal/cleanable/dirt/dirtoverlay = locate(/obj/effect/decal/cleanable/dirt, T) - if (!dirtoverlay) - dirtoverlay = new/obj/effect/decal/cleanable/dirt(T) - dirtoverlay.alpha = volume*30 - else - dirtoverlay.alpha = min(dirtoverlay.alpha+volume*30, 255) - - chlorine - name = "Chlorine" - id = "chlorine" - description = "A chemical element with a characteristic odour." - reagent_state = GAS - color = "#808080" // rgb: 128, 128, 128 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.take_organ_damage(1*REM, 0) - ..() - return - - fluorine - name = "Fluorine" - id = "fluorine" - description = "A highly-reactive chemical element." - reagent_state = GAS - color = "#808080" // rgb: 128, 128, 128 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.adjustToxLoss(1*REM) - ..() - return - - sodium - name = "Sodium" - id = "sodium" - description = "A chemical element, readily reacts with water." - reagent_state = SOLID - color = "#808080" // rgb: 128, 128, 128 - - custom_metabolism = 0.01 - - phosphorus - name = "Phosphorus" - id = "phosphorus" - description = "A chemical element, the backbone of biological energy carriers." - reagent_state = SOLID - color = "#832828" // rgb: 131, 40, 40 - - custom_metabolism = 0.01 - - lithium - name = "Lithium" - id = "lithium" - description = "A chemical element, used as antidepressant." - reagent_state = SOLID - color = "#808080" // rgb: 128, 128, 128 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) - step(M, pick(cardinal)) - if(prob(5)) M.emote(pick("twitch","drool","moan")) - ..() - return - - sugar - name = "Sugar" - id = "sugar" - description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." - reagent_state = SOLID - color = "#FFFFFF" // rgb: 255, 255, 255 - - glass_icon_state = "iceglass" - glass_name = "glass of sugar" - glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." - - on_mob_life(var/mob/living/M as mob) - M.nutrition += 1*REM - ..() - return - - - glycerol - name = "Glycerol" - id = "glycerol" - description = "Glycerol is a simple polyol compound. Glycerol is sweet-tasting and of low toxicity." - reagent_state = LIQUID - color = "#808080" // rgb: 128, 128, 128 - - custom_metabolism = 0.01 - - nitroglycerin - name = "Nitroglycerin" - id = "nitroglycerin" - description = "Nitroglycerin is a heavy, colorless, oily, explosive liquid obtained by nitrating glycerol." - reagent_state = LIQUID - color = "#808080" // rgb: 128, 128, 128 - - custom_metabolism = 0.01 - - radium - name = "Radium" - id = "radium" - description = "Radium is an alkaline earth metal. It is extremely radioactive." - reagent_state = SOLID - color = "#C7C7C7" // rgb: 199,199,199 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.apply_effect(2*REM,IRRADIATE,0) - // radium may increase your chances to cure a disease - if(istype(M,/mob/living/carbon)) // make sure to only use it on carbon mobs - var/mob/living/carbon/C = M - if(C.virus2.len) - for (var/ID in C.virus2) - var/datum/disease2/disease/V = C.virus2[ID] - if(prob(5)) - C.antibodies |= V.antigen - if(prob(50)) - M.radiation += 50 // curing it that way may kill you instead - var/absorbed - var/datum/organ/internal/diona/nutrients/rad_organ = locate() in C.internal_organs - if(rad_organ && !rad_organ.is_broken()) - absorbed = 1 - if(!absorbed) - M.adjustToxLoss(100) - ..() - return - - reaction_turf(var/turf/T, var/volume) - src = null - if(volume >= 3) - if(!istype(T, /turf/space)) - var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) - if(!glow) - new /obj/effect/decal/cleanable/greenglow(T) - return - - - ryetalyn - name = "Ryetalyn" - id = "ryetalyn" - description = "Ryetalyn can cure all genetic abnomalities via a catalytic process." - reagent_state = SOLID - color = "#004000" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - - var/needs_update = M.mutations.len > 0 - - M.mutations = list() - M.disabilities = 0 - M.sdisabilities = 0 - - // Might need to update appearance for hulk etc. - if(needs_update && ishuman(M)) - var/mob/living/carbon/human/H = M - H.update_mutations() - - ..() - return - - thermite - name = "Thermite" - id = "thermite" - description = "Thermite produces an aluminothermic reaction known as a thermite reaction. Can be used to melt walls." - reagent_state = SOLID - color = "#673910" // rgb: 103, 57, 16 - - reaction_turf(var/turf/T, var/volume) - src = null - if(volume >= 5) - if(istype(T, /turf/simulated/wall)) - var/turf/simulated/wall/W = T - W.thermite = 1 - W.overlays += image('icons/effects/effects.dmi',icon_state = "#673910") - return - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.adjustFireLoss(1) - ..() - return - - paracetamol - name = "Paracetamol" - id = "paracetamol" - description = "Most probably know this as Tylenol, but this chemical is a mild, simple painkiller." - reagent_state = LIQUID - color = "#C8A5DC" - overdose = 60 - scannable = 1 - custom_metabolism = 0.025 // Lasts 10 minutes for 15 units - - on_mob_life(var/mob/living/M as mob) - if (volume > overdose) - M.hallucination = max(M.hallucination, 2) - ..() - return - - tramadol - name = "Tramadol" - id = "tramadol" - description = "A simple, yet effective painkiller." - reagent_state = LIQUID - color = "#CB68FC" - overdose = 30 - scannable = 1 - custom_metabolism = 0.025 // Lasts 10 minutes for 15 units - - on_mob_life(var/mob/living/M as mob) - if (volume > overdose) - M.hallucination = max(M.hallucination, 2) - ..() - return - - oxycodone - name = "Oxycodone" - id = "oxycodone" - description = "An effective and very addictive painkiller." - reagent_state = LIQUID - color = "#800080" - overdose = 20 - custom_metabolism = 0.25 // Lasts 10 minutes for 15 units - - on_mob_life(var/mob/living/M as mob) - if (volume > overdose) - M.druggy = max(M.druggy, 10) - M.hallucination = max(M.hallucination, 3) - ..() - return - - - virus_food - name = "Virus Food" - id = "virusfood" - description = "A mixture of water, milk, and oxygen. Virus cells can use this mixture to reproduce." - reagent_state = LIQUID - nutriment_factor = 2 * REAGENTS_METABOLISM - color = "#899613" // rgb: 137, 150, 19 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.nutrition += nutriment_factor*REM - ..() - return - - sterilizine - name = "Sterilizine" - id = "sterilizine" - description = "Sterilizes wounds in preparation for surgery." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - - //makes you squeaky clean - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) - if (method == TOUCH) - M.germ_level -= min(volume*20, M.germ_level) - - reaction_obj(var/obj/O, var/volume) - O.germ_level -= min(volume*20, O.germ_level) - - reaction_turf(var/turf/T, var/volume) - T.germ_level -= min(volume*20, T.germ_level) - - /* reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) - src = null - if (method==TOUCH) - if(istype(M, /mob/living/carbon/human)) - if(M.health >= -100 && M.health <= 0) - M.crit_op_stage = 0.0 - if (method==INGEST) - usr << "Well, that was stupid." - M.adjustToxLoss(3) - return - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.radiation += 3 - ..() - return - */ - iron - name = "Iron" - id = "iron" - description = "Pure iron is a metal." - reagent_state = SOLID - color = "#353535" - overdose = REAGENTS_OVERDOSE - - gold - name = "Gold" - id = "gold" - description = "Gold is a dense, soft, shiny metal and the most malleable and ductile metal known." - reagent_state = SOLID - color = "#F7C430" // rgb: 247, 196, 48 - - silver - name = "Silver" - id = "silver" - description = "A soft, white, lustrous transition metal, it has the highest electrical conductivity of any element and the highest thermal conductivity of any metal." - reagent_state = SOLID - color = "#D0D0D0" // rgb: 208, 208, 208 - - uranium - name ="Uranium" - id = "uranium" - description = "A silvery-white metallic chemical element in the actinide series, weakly radioactive." - reagent_state = SOLID - color = "#B8B8C0" // rgb: 184, 184, 192 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.apply_effect(1,IRRADIATE,0) - ..() - return - - reaction_turf(var/turf/T, var/volume) - src = null - if(volume >= 3) - if(!istype(T, /turf/space)) - var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) - if(!glow) - new /obj/effect/decal/cleanable/greenglow(T) - return - - aluminum - name = "Aluminum" - id = "aluminum" - description = "A silvery white and ductile member of the boron group of chemical elements." - reagent_state = SOLID - color = "#A8A8A8" // rgb: 168, 168, 168 - - silicon - name = "Silicon" - id = "silicon" - description = "A tetravalent metalloid, silicon is less reactive than its chemical analog carbon." - reagent_state = SOLID - color = "#A8A8A8" // rgb: 168, 168, 168 - - fuel - name = "Welding fuel" - id = "fuel" - description = "Required for welders. Flamable." - reagent_state = LIQUID - color = "#660000" // rgb: 102, 0, 0 - overdose = REAGENTS_OVERDOSE - - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of welder fuel" - glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption." - - reaction_obj(var/obj/O, var/volume) - var/turf/the_turf = get_turf(O) - if(!the_turf) - return //No sense trying to start a fire if you don't have a turf to set on fire. --NEO - new /obj/effect/decal/cleanable/liquid_fuel(the_turf, volume) - reaction_turf(var/turf/T, var/volume) - new /obj/effect/decal/cleanable/liquid_fuel(T, volume) - return - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.adjustToxLoss(1) - ..() - return - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with welding fuel to make them easy to ignite! - if(!istype(M, /mob/living)) - return - if(method == TOUCH) - M.adjust_fire_stacks(volume / 10) - return - - space_cleaner - name = "Space cleaner" - id = "cleaner" - description = "A compound used to clean things. Now with 50% more sodium hypochlorite!" - reagent_state = LIQUID - color = "#A5F0EE" // rgb: 165, 240, 238 - overdose = REAGENTS_OVERDOSE - - reaction_obj(var/obj/O, var/volume) - if(istype(O,/obj/effect/decal/cleanable)) - del(O) - else - if(O) - O.clean_blood() - - reaction_turf(var/turf/T, var/volume) - if(volume >= 1) - if(istype(T, /turf/simulated)) - var/turf/simulated/S = T - S.dirt = 0 - T.clean_blood() - for(var/obj/effect/decal/cleanable/C in T.contents) - src.reaction_obj(C, volume) - del(C) - - for(var/mob/living/carbon/slime/M in T) - M.adjustToxLoss(rand(5,10)) - - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) - if(iscarbon(M)) - var/mob/living/carbon/C = M - if(C.r_hand) - C.r_hand.clean_blood() - if(C.l_hand) - C.l_hand.clean_blood() - if(C.wear_mask) - if(C.wear_mask.clean_blood()) - C.update_inv_wear_mask(0) - if(ishuman(M)) - var/mob/living/carbon/human/H = C - if(H.head) - if(H.head.clean_blood()) - H.update_inv_head(0) - if(H.wear_suit) - if(H.wear_suit.clean_blood()) - H.update_inv_wear_suit(0) - else if(H.w_uniform) - if(H.w_uniform.clean_blood()) - H.update_inv_w_uniform(0) - if(H.shoes) - if(H.shoes.clean_blood()) - H.update_inv_shoes(0) - else - H.clean_blood(1) - return - M.clean_blood() - - leporazine - name = "Leporazine" - id = "leporazine" - description = "Leporazine can be use to stabilize an individuals body temperature." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(M.bodytemperature > 310) - M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) - else if(M.bodytemperature < 311) - M.bodytemperature = min(310, M.bodytemperature + (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) - ..() - return - - cryptobiolin - name = "Cryptobiolin" - id = "cryptobiolin" - description = "Cryptobiolin causes confusion and dizzyness." - reagent_state = LIQUID - color = "#000055" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.make_dizzy(1) - if(!M.confused) M.confused = 1 - M.confused = max(M.confused, 20) - holder.remove_reagent(src.id, 0.5 * REAGENTS_METABOLISM) - ..() - return - - - kelotane - name = "Kelotane" - id = "kelotane" - description = "Kelotane is a drug used to treat burns." - reagent_state = LIQUID - color = "#FFA800" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(M.stat == 2.0) - return - if(!M) M = holder.my_atom - //This needs a diona check but if one is added they won't be able to heal burn damage at all. - M.heal_organ_damage(0,2*REM) - ..() - return - - dermaline - name = "Dermaline" - id = "dermaline" - description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue." - reagent_state = LIQUID - color = "#FF8000" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE/2 - scannable = 1 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(M.stat == 2.0) //THE GUY IS **DEAD**! BEREFT OF ALL LIFE HE RESTS IN PEACE etc etc. He does NOT metabolise shit anymore, god DAMN - return - if(!M) M = holder.my_atom - if(!alien || alien != IS_DIONA) - M.heal_organ_damage(0,3*REM) - ..() - return - - dexalin - name = "Dexalin" - id = "dexalin" - description = "Dexalin is used in the treatment of oxygen deprivation." - reagent_state = LIQUID - color = "#0080FF" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(M.stat == 2.0) - return //See above, down and around. --Agouri - if(!M) M = holder.my_atom - - if(alien && alien == IS_VOX) - M.adjustToxLoss(2*REM) - else if(!alien || alien != IS_DIONA) - M.adjustOxyLoss(-2*REM) - - holder.remove_reagent("lexorin", 2*REM) - ..() - return - - dexalinp - name = "Dexalin Plus" - id = "dexalinp" - description = "Dexalin Plus is used in the treatment of oxygen deprivation. It is highly effective." - reagent_state = LIQUID - color = "#0040FF" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE/2 - scannable = 1 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(M.stat == 2.0) - return - if(!M) M = holder.my_atom - - if(alien && alien == IS_VOX) - M.adjustOxyLoss() - else if(!alien || alien != IS_DIONA) - M.adjustOxyLoss(-M.getOxyLoss()) - - holder.remove_reagent("lexorin", 2*REM) - ..() - return - - tricordrazine - name = "Tricordrazine" - id = "tricordrazine" - description = "Tricordrazine is a highly potent stimulant, originally derived from cordrazine. Can be used to treat a wide range of injuries." - reagent_state = LIQUID - color = "#8040FF" // rgb: 200, 165, 220 - scannable = 1 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(M.stat == 2.0) - return - if(!M) M = holder.my_atom - if(!alien || alien != IS_DIONA) - if(M.getOxyLoss()) M.adjustOxyLoss(-1*REM) - if(M.getBruteLoss() && prob(80)) M.heal_organ_damage(1*REM,0) - if(M.getFireLoss() && prob(80)) M.heal_organ_damage(0,1*REM) - if(M.getToxLoss() && prob(80)) M.adjustToxLoss(-1*REM) - ..() - return - - anti_toxin - name = "Dylovene" - id = "anti_toxin" - description = "Dylovene is a broad-spectrum antitoxin." - reagent_state = LIQUID - color = "#00A000" // rgb: 200, 165, 220 - scannable = 1 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(!M) M = holder.my_atom - if(!alien || alien != IS_DIONA) - M.reagents.remove_all_type(/datum/reagent/toxin, 1*REM, 0, 1) - M.drowsyness = max(M.drowsyness-2*REM, 0) - M.hallucination = max(0, M.hallucination - 5*REM) - M.adjustToxLoss(-2*REM) - ..() - return - - adminordrazine //An OP chemical for admins - name = "Adminordrazine" - id = "adminordrazine" - description = "It's magic. We don't have to explain it." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - - glass_icon_state = "golden_cup" - glass_name = "golden cup" - glass_desc = "It's magic. We don't have to explain it." - - on_mob_life(var/mob/living/carbon/M as mob) - if(!M) M = holder.my_atom ///This can even heal dead people. - M.reagents.remove_all_type(/datum/reagent/toxin, 5*REM, 0, 1) - M.setCloneLoss(0) - M.setOxyLoss(0) - M.radiation = 0 - M.heal_organ_damage(5,5) - M.adjustToxLoss(-5) - M.hallucination = 0 - M.setBrainLoss(0) - M.disabilities = 0 - M.sdisabilities = 0 - M.eye_blurry = 0 - M.eye_blind = 0 - M.SetWeakened(0) - M.SetStunned(0) - M.SetParalysis(0) - M.silent = 0 - M.dizziness = 0 - M.drowsyness = 0 - M.stuttering = 0 - M.confused = 0 - M.sleeping = 0 - M.jitteriness = 0 - for(var/datum/disease/D in M.viruses) - D.spread = "Remissive" - D.stage-- - if(D.stage < 1) - D.cure() - ..() - return - synaptizine - - name = "Synaptizine" - id = "synaptizine" - description = "Synaptizine is used to treat various diseases." - reagent_state = LIQUID - color = "#99CCFF" // rgb: 200, 165, 220 - custom_metabolism = 0.01 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.drowsyness = max(M.drowsyness-5, 0) - M.AdjustParalysis(-1) - M.AdjustStunned(-1) - M.AdjustWeakened(-1) - holder.remove_reagent("mindbreaker", 5) - M.hallucination = max(0, M.hallucination - 10) - if(prob(60)) M.adjustToxLoss(1) - ..() - return - - impedrezene - name = "Impedrezene" - id = "impedrezene" - description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.jitteriness = max(M.jitteriness-5,0) - if(prob(80)) M.adjustBrainLoss(1*REM) - if(prob(50)) M.drowsyness = max(M.drowsyness, 3) - if(prob(10)) M.emote("drool") - ..() - return - - hyronalin - name = "Hyronalin" - id = "hyronalin" - description = "Hyronalin is a medicinal drug used to counter the effect of radiation poisoning." - reagent_state = LIQUID - color = "#408000" // rgb: 200, 165, 220 - custom_metabolism = 0.05 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.radiation = max(M.radiation-3*REM,0) - ..() - return - - arithrazine - name = "Arithrazine" - id = "arithrazine" - description = "Arithrazine is an unstable medication used for the most extreme cases of radiation poisoning." - reagent_state = LIQUID - color = "#008000" // rgb: 200, 165, 220 - custom_metabolism = 0.05 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(M.stat == 2.0) - return //See above, down and around. --Agouri - if(!M) M = holder.my_atom - M.radiation = max(M.radiation-7*REM,0) - M.adjustToxLoss(-1*REM) - if(prob(15)) - M.take_organ_damage(1, 0) - ..() - return - - alkysine - name = "Alkysine" - id = "alkysine" - description = "Alkysine is a drug used to lessen the damage to neurological tissue after a catastrophic injury. Can heal brain tissue." - reagent_state = LIQUID - color = "#FFFF66" // rgb: 200, 165, 220 - custom_metabolism = 0.05 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.adjustBrainLoss(-3*REM) - ..() - return - - imidazoline - name = "Imidazoline" - id = "imidazoline" - description = "Heals eye damage" - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.eye_blurry = max(M.eye_blurry-5 , 0) - M.eye_blind = max(M.eye_blind-5 , 0) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"] - if(E && istype(E)) - if(E.damage > 0) - E.damage = max(E.damage - 1, 0) - ..() - return - - peridaxon - name = "Peridaxon" - id = "peridaxon" - description = "Used to encourage recovery of internal organs and nervous systems. Medicate cautiously." - reagent_state = LIQUID - color = "#561EC3" // rgb: 200, 165, 220 - overdose = 10 - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(ishuman(M)) - var/mob/living/carbon/human/H = M - - //Peridaxon heals only non-robotic organs - for(var/datum/organ/internal/I in H.internal_organs) - if((I.damage > 0) && (I.robotic != 2)) - I.damage = max(I.damage - 0.20, 0) - ..() - return - - bicaridine - name = "Bicaridine" - id = "bicaridine" - description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma." - reagent_state = LIQUID - color = "#BF0000" // rgb: 200, 165, 220 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob, var/alien) - if(M.stat == 2.0) - return - if(!M) M = holder.my_atom - if(alien != IS_DIONA) - M.heal_organ_damage(2*REM,0) - ..() - return - - hyperzine - name = "Hyperzine" - id = "hyperzine" - description = "Hyperzine is a highly effective, long lasting, muscle stimulant." - reagent_state = LIQUID - color = "#FF3300" // rgb: 200, 165, 220 - custom_metabolism = 0.03 - overdose = REAGENTS_OVERDOSE/2 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(prob(5)) M.emote(pick("twitch","blink_r","shiver")) - ..() - return - - adrenaline - name = "Adrenaline" - id = "adrenaline" - description = "Adrenaline is a hormone used as a drug to treat cardiac arrest and other cardiac dysrhythmias resulting in diminished or absent cardiac output." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.SetParalysis(0) - M.SetWeakened(0) - M.adjustToxLoss(rand(3)) - ..() - return - - cryoxadone - name = "Cryoxadone" - id = "cryoxadone" - description = "A chemical mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 170K for it to metabolise correctly." - reagent_state = LIQUID - color = "#8080FF" // rgb: 200, 165, 220 - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(M.bodytemperature < 170) - M.adjustCloneLoss(-1) - M.adjustOxyLoss(-1) - M.heal_organ_damage(1,1) - M.adjustToxLoss(-1) - ..() - return - - clonexadone - name = "Clonexadone" - id = "clonexadone" - description = "A liquid compound similar to that used in the cloning process. Can be used to 'finish' the cloning process when used in conjunction with a cryo tube." - reagent_state = LIQUID - color = "#80BFFF" // rgb: 200, 165, 220 - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(M.bodytemperature < 170) - M.adjustCloneLoss(-3) - M.adjustOxyLoss(-3) - M.heal_organ_damage(3,3) - M.adjustToxLoss(-3) - ..() - return - - rezadone - name = "Rezadone" - id = "rezadone" - description = "A powder derived from fish toxin, this substance can effectively treat genetic damage in humanoids, though excessive consumption has side effects." - reagent_state = SOLID - color = "#669900" // rgb: 102, 153, 0 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(!data) data = 1 - data++ - switch(data) - if(1 to 15) - M.adjustCloneLoss(-1) - M.heal_organ_damage(1,1) - if(15 to 35) - M.adjustCloneLoss(-2) - M.heal_organ_damage(2,1) - M.status_flags &= ~DISFIGURED - if(35 to INFINITY) - M.adjustToxLoss(1) - M.make_dizzy(5) - M.make_jittery(5) - - ..() - return - - spaceacillin - name = "Spaceacillin" - id = "spaceacillin" - description = "An all-purpose antiviral agent." - reagent_state = LIQUID - color = "#C1C1C1" // rgb: 200, 165, 220 - custom_metabolism = 0.01 - overdose = REAGENTS_OVERDOSE - scannable = 1 - - on_mob_life(var/mob/living/M as mob) - ..() - return - - -/////////////////////////////////////////////////////////////////////////////////////////////////////////////// - - nanites - name = "Nanomachines" - id = "nanites" - description = "Microscopic construction robots." - reagent_state = LIQUID - color = "#535E66" // rgb: 83, 94, 102 - - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) - src = null - if( (prob(10) && method==TOUCH) || method==INGEST) - M.contract_disease(new /datum/disease/robotic_transformation(0),1) - - xenomicrobes - name = "Xenomicrobes" - id = "xenomicrobes" - description = "Microbes with an entirely alien cellular structure." - reagent_state = LIQUID - color = "#535E66" // rgb: 83, 94, 102 - - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) - src = null - if( (prob(10) && method==TOUCH) || method==INGEST) - M.contract_disease(new /datum/disease/xeno_transformation(0),1) - - fluorosurfactant//foam precursor - name = "Fluorosurfactant" - id = "fluorosurfactant" - description = "A perfluoronated sulfonic acid that forms a foam when mixed with water." - reagent_state = LIQUID - color = "#9E6B38" // rgb: 158, 107, 56 - - foaming_agent// Metal foaming agent. This is lithium hydride. Add other recipes (e.g. LiH + H2O -> LiOH + H2) eventually. - name = "Foaming agent" - id = "foaming_agent" - description = "A agent that yields metallic foam when mixed with light metal and a strong acid." - reagent_state = SOLID - color = "#664B63" // rgb: 102, 75, 99 - - nicotine - name = "Nicotine" - id = "nicotine" - description = "A highly addictive stimulant extracted from the tobacco plant." - reagent_state = LIQUID - color = "#181818" // rgb: 24, 24, 24 - - ammonia - name = "Ammonia" - id = "ammonia" - description = "A caustic substance commonly used in fertilizer or household cleaners." - reagent_state = GAS - color = "#404030" // rgb: 64, 64, 48 - - ultraglue - name = "Ultra Glue" - id = "glue" - description = "An extremely powerful bonding agent." - color = "#FFFFCC" // rgb: 255, 255, 204 - - diethylamine - name = "Diethylamine" - id = "diethylamine" - description = "A secondary amine, mildly corrosive." - reagent_state = LIQUID - color = "#604030" // rgb: 96, 64, 48 - - ethylredoxrazine // FUCK YOU, ALCOHOL - name = "Ethylredoxrazine" - id = "ethylredoxrazine" - description = "A powerful oxidizer that reacts with ethanol." - reagent_state = SOLID - color = "#605048" // rgb: 96, 80, 72 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.dizziness = 0 - M.drowsyness = 0 - M.stuttering = 0 - M.confused = 0 - M.reagents.remove_all_type(/datum/reagent/ethanol, 1*REM, 0, 1) - ..() - return - -//////////////////////////Ground crayons///////////////////// - - - crayon_dust - name = "Crayon dust" - id = "crayon_dust" - description = "Intensely coloured powder obtained by grinding crayons." - reagent_state = LIQUID - color = "#888888" - overdose = 5 - - red - name = "Red crayon dust" - id = "crayon_dust_red" - color = "#FE191A" - - orange - name = "Orange crayon dust" - id = "crayon_dust_orange" - color = "#FFBE4F" - - yellow - name = "Yellow crayon dust" - id = "crayon_dust_yellow" - color = "#FDFE7D" - - green - name = "Green crayon dust" - id = "crayon_dust_green" - color = "#18A31A" - - blue - name = "Blue crayon dust" - id = "crayon_dust_blue" - color = "#247CFF" - - purple - name = "Purple crayon dust" - id = "crayon_dust_purple" - color = "#CC0099" - - grey //Mime - name = "Grey crayon dust" - id = "crayon_dust_grey" - color = "#808080" - - brown //Rainbow - name = "Brown crayon dust" - id = "crayon_dust_brown" - color = "#846F35" - -//////////////////////////Paint////////////////////////////// - - paint - name = "Paint" - id = "paint" - description = "This paint will stick to almost any object." - reagent_state = LIQUID - color = "#808080" - overdose = 15 - - reaction_turf(var/turf/T, var/volume) - ..() - if(istype(T) && !istype(T, /turf/space)) - T.color = color - - reaction_obj(var/obj/O, var/volume) - ..() - if(istype(O,/obj)) - O.color = color - - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) - ..() - if(istype(M,/mob) && !istype(M,/mob/dead)) - //painting ghosts: not allowed - M.color = color - - -//////////////////////////Poison stuff/////////////////////// - - toxin - name = "Toxin" - id = "toxin" - description = "A toxic chemical." - reagent_state = LIQUID - color = "#CF3600" // rgb: 207, 54, 0 - var/toxpwr = 0.7 // Toxins are really weak, but without being treated, last very long. - custom_metabolism = 0.1 - - on_mob_life(var/mob/living/M as mob,var/alien) - if(!M) M = holder.my_atom - if(toxpwr) - M.adjustToxLoss(toxpwr*REM) - if(alien) ..() // Kind of a catch-all for aliens without the liver. Because this does not metabolize 'naturally', only removed by the liver. - return - - toxin/amatoxin - name = "Amatoxin" - id = "amatoxin" - description = "A powerful poison derived from certain species of mushroom." - reagent_state = LIQUID - color = "#792300" // rgb: 121, 35, 0 - toxpwr = 1 - - toxin/mutagen - name = "Unstable mutagen" - id = "mutagen" - description = "Might cause unpredictable mutations. Keep away from children." - reagent_state = LIQUID - color = "#13BC5E" // rgb: 19, 188, 94 - toxpwr = 0 - - reaction_mob(var/mob/living/carbon/M, var/method=TOUCH, var/volume) - if(!..()) return - if(!istype(M) || !M.dna) return //No robots, AIs, aliens, Ians or other mobs should be affected by this. - src = null - if((method==TOUCH && prob(33)) || method==INGEST) - randmuti(M) - if(prob(98)) randmutb(M) - else randmutg(M) - domutcheck(M, null) - M.UpdateAppearance() - return - on_mob_life(var/mob/living/carbon/M) - if(!istype(M)) return - if(!M) M = holder.my_atom - M.apply_effect(10,IRRADIATE,0) - ..() - return - - toxin/phoron - name = "Phoron" - id = "phoron" - description = "Phoron in its liquid form." - reagent_state = LIQUID - color = "#9D14DB" - toxpwr = 3 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - holder.remove_reagent("inaprovaline", 2*REM) - ..() - return - reaction_obj(var/obj/O, var/volume) - src = null - /*if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/egg/slime)) - var/obj/item/weapon/reagent_containers/food/snacks/egg/slime/egg = O - if (egg.grown) - egg.Hatch()*/ - if((!O) || (!volume)) return 0 - var/turf/the_turf = get_turf(O) - the_turf.assume_gas("volatile_fuel", volume, T20C) - reaction_turf(var/turf/T, var/volume) - src = null - T.assume_gas("volatile_fuel", volume, T20C) - return - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with plasma is stronger than fuel! - if(!istype(M, /mob/living)) - return - if(method == TOUCH) - M.adjust_fire_stacks(volume / 5) - return - - toxin/lexorin - name = "Lexorin" - id = "lexorin" - description = "Lexorin temporarily stops respiration. Causes tissue damage." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - toxpwr = 0 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(M.stat == 2.0) - return - if(!M) M = holder.my_atom - if(prob(33)) - M.take_organ_damage(1*REM, 0) - if(M.losebreath < 15) - M.losebreath++ - ..() - return - - toxin/slimejelly - name = "Slime Jelly" - id = "slimejelly" - description = "A gooey semi-liquid produced from one of the deadliest lifeforms in existence. SO REAL." - reagent_state = LIQUID - color = "#801E28" // rgb: 128, 30, 40 - toxpwr = 0 - - on_mob_life(var/mob/living/M as mob) - if(prob(10)) - M << "\red Your insides are burning!" - M.adjustToxLoss(rand(20,60)*REM) - else if(prob(40)) - M.heal_organ_damage(5*REM,0) - ..() - return - - toxin/cyanide //Fast and Lethal - name = "Cyanide" - id = "cyanide" - description = "A highly toxic chemical." - reagent_state = LIQUID - color = "#CF3600" // rgb: 207, 54, 0 - toxpwr = 4 - custom_metabolism = 0.4 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.adjustOxyLoss(4*REM) - M.sleeping += 1 - ..() - return - - toxin/minttoxin - name = "Mint Toxin" - id = "minttoxin" - description = "Useful for dealing with undesirable customers." - reagent_state = LIQUID - color = "#CF3600" // rgb: 207, 54, 0 - toxpwr = 0 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if (FAT in M.mutations) - M.gib() - ..() - return - - toxin/carpotoxin - name = "Carpotoxin" - id = "carpotoxin" - description = "A deadly neurotoxin produced by the dreaded space carp." - reagent_state = LIQUID - color = "#003333" // rgb: 0, 51, 51 - toxpwr = 2 - - toxin/zombiepowder - name = "Zombie Powder" - id = "zombiepowder" - description = "A strong neurotoxin that puts the subject into a death-like state." - reagent_state = SOLID - color = "#669900" // rgb: 102, 153, 0 - toxpwr = 0.5 - - on_mob_life(var/mob/living/carbon/M as mob) - if(!M) M = holder.my_atom - M.status_flags |= FAKEDEATH - M.adjustOxyLoss(0.5*REM) - M.Weaken(10) - M.silent = max(M.silent, 10) - M.tod = worldtime2text() - ..() - return - - Del() - if(holder && ismob(holder.my_atom)) - var/mob/M = holder.my_atom - M.status_flags &= ~FAKEDEATH - ..() - - toxin/mindbreaker - name = "Mindbreaker Toxin" - id = "mindbreaker" - description = "A powerful hallucinogen, it can cause fatal effects in users." - reagent_state = LIQUID - color = "#B31008" // rgb: 139, 166, 233 - toxpwr = 0 - custom_metabolism = 0.05 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M) - if(!M) M = holder.my_atom - M.hallucination += 10 - ..() - return - - //Reagents used for plant fertilizers. - toxin/fertilizer - name = "fertilizer" - id = "fertilizer" - description = "A chemical mix good for growing plants with." - reagent_state = LIQUID - toxpwr = 0.2 //It's not THAT poisonous. - color = "#664330" // rgb: 102, 67, 48 - - toxin/fertilizer/eznutrient - name = "EZ Nutrient" - id = "eznutrient" - - toxin/fertilizer/left4zed - name = "Left-4-Zed" - id = "left4zed" - - toxin/fertilizer/robustharvest - name = "Robust Harvest" - id = "robustharvest" - - toxin/plantbgone - name = "Plant-B-Gone" - id = "plantbgone" - description = "A harmful toxic mixture to kill plantlife. Do not ingest!" - reagent_state = LIQUID - color = "#49002E" // rgb: 73, 0, 46 - toxpwr = 1 - - // Clear off wallrot fungi - reaction_turf(var/turf/T, var/volume) - if(istype(T, /turf/simulated/wall)) - var/turf/simulated/wall/W = T - if(W.rotting) - W.rotting = 0 - for(var/obj/effect/E in W) if(E.name == "Wallrot") del E - - for(var/mob/O in viewers(W, null)) - O.show_message(text("\blue The fungi are completely dissolved by the solution!"), 1) - - reaction_obj(var/obj/O, var/volume) - if(istype(O,/obj/effect/alien/weeds/)) - var/obj/effect/alien/weeds/alien_weeds = O - alien_weeds.health -= rand(15,35) // Kills alien weeds pretty fast - alien_weeds.healthcheck() - else if(istype(O,/obj/effect/plant)) //even a small amount is enough to kill it - del(O) - else if(istype(O,/obj/effect/plant)) + T.wet = 0 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + +/datum/reagent/water/touch_obj(var/obj/O) + if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube)) + var/obj/item/weapon/reagent_containers/food/snacks/monkeycube/cube = O + if(!cube.wrapped) + cube.Expand() + +/datum/reagent/water/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(istype(M, /mob/living/carbon/slime)) + var/mob/living/carbon/slime/S = M + S.adjustToxLoss(15 * removed) // Babies have 150 health, adults have 200; So, 10 units and 13.5 + if(!S.client) + if(S.Target) // Like cats + S.Target = null + ++S.Discipline + if(dose == removed) + S.visible_message("[S]'s flesh sizzles where the water touches it!", "Your flesh burns in the water!") + if(location == CHEM_TOUCH) + var/needed = M.fire_stacks * 10 + if(volume > needed) + M.fire_stacks = 0 + M.ExtinguishMob() + remove_self(needed) + else + M.adjust_fire_stacks(-(volume / 10)) + remove_self(volume) + return + +/datum/reagent/fuel + name = "Welding fuel" + id = "fuel" + description = "Required for welders. Flamable." + reagent_state = LIQUID + color = "#660000" + + glass_icon_state = "dr_gibb_glass" + glass_name = "glass of welder fuel" + glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption." + +/datum/reagent/fuel/touch_turf(var/turf/T) + new /obj/effect/decal/cleanable/liquid_fuel(T, volume) + remove_self(volume) + return + +/datum/reagent/fuel/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_INGEST) + M.adjustToxLoss(1 * removed) + return + if(location == CHEM_BLOOD) + M.adjustToxLoss(2 * removed) + return + if(location == CHEM_TOUCH) // Splashing people with welding fuel to make them easy to ignite! + M.adjust_fire_stacks(0.1 * removed) + return + +/* Basic dispenser chemicals */ + +/datum/reagent/aluminum + name = "Aluminum" + id = "aluminum" + description = "A silvery white and ductile member of the boron group of chemical elements." + reagent_state = SOLID + color = "#A8A8A8" + +/datum/reagent/carbon + name = "Carbon" + id = "carbon" + description = "A chemical element, the builing block of life." + reagent_state = SOLID + color = "#1C1300" + +/datum/reagent/carbon/touch_turf(var/turf/T) + if(!istype(T, /turf/space)) + var/obj/effect/decal/cleanable/dirt/dirtoverlay = locate(/obj/effect/decal/cleanable/dirt, T) + if (!dirtoverlay) + dirtoverlay = new/obj/effect/decal/cleanable/dirt(T) + dirtoverlay.alpha = volume * 30 + else + dirtoverlay.alpha = min(dirtoverlay.alpha + volume * 30, 255) + +/datum/reagent/chlorine + name = "Chlorine" + id = "chlorine" + description = "A chemical element with a characteristic odour." + reagent_state = GAS + color = "#808080" + +/datum/reagent/chlorine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.take_organ_damage(1*REM, 0) // State doesn't matter here + +/datum/reagent/copper + name = "Copper" + id = "copper" + description = "A highly ductile metal." + color = "#6E3B08" + +/datum/reagent/ethanol + name = "Ethanol" //Parent class for all alcoholic reagents. + id = "ethanol" + description = "A well-known alcohol with a variety of applications." + reagent_state = LIQUID + color = "#404030" + var/nutriment_factor = 0 + var/strength = 10 // This is, essentially, units between stages - the lower, the stronger. Less fine tuning, more clarity. + var/toxicity = 1 + + var/druggy = 0 + var/adj_temp = 0 + var/targ_temp = 310 + var/halluci = 0 + + glass_icon_state = "glass_clear" + glass_name = "glass of ethanol" + glass_desc = "A well-known alcohol with a variety of applications." + +/datum/reagent/ethanol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + M.adjust_fire_stacks(removed / 15) + return + if(location == CHEM_BLOOD) + M.adjustToxLoss(removed * 2 * toxicity) + return + M.nutrition += nutriment_factor * removed + + var/strength_mod = 1 + if(alien == IS_SKRELL) + strength_mod *= 5 + if(alien == IS_DIONA) + strength_mod = 0 + + M.add_chemical_effect(CE_ALCOHOL, 1) + + if(dose / strength_mod >= strength) // Early warning + M.make_dizzy(6) // It is decreased at the speed of 3 per tick + if(dose / strength_mod >= strength * 2) // Slurring + M.slurring = max(M.slurring, 30) + if(dose / strength_mod >= strength * 3) // Confusion - walking in random directions + M.confused = max(M.confused, 20) + if(dose / strength_mod >= strength * 4) // Blurry vision + M.eye_blurry = max(M.eye_blurry, 10) + if(dose / strength_mod >= strength * 5) // Drowsyness - periodically falling asleep + M.drowsyness = max(M.drowsyness, 20) + if(dose / strength_mod >= strength * 6) // Toxic dose + M.add_chemical_effect(CE_ALCOHOL_TOXIC, toxicity) + if(dose / strength_mod >= strength * 7) // Pass out + M.paralysis = max(M.paralysis, 20) + M.sleeping = max(M.sleeping, 30) + + if(druggy != 0) + M.druggy = max(M.druggy, druggy) + + if(adj_temp > 0 && M.bodytemperature < targ_temp) // 310 is the normal bodytemp. 310.055 + M.bodytemperature = min(targ_temp, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + if(adj_temp < 0 && M.bodytemperature > targ_temp) + M.bodytemperature = min(targ_temp, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + + if(halluci) + M.hallucination = max(M.hallucination, halluci) + +/datum/reagent/ethanol/touch_obj(var/obj/O) + if(istype(O, /obj/item/weapon/paper)) + var/obj/item/weapon/paper/paperaffected = O + paperaffected.clearpaper() + usr << "The solution dissolves the ink on the paper." + return + if(istype(O, /obj/item/weapon/book)) + if(volume < 5) + return + if(istype(O, /obj/item/weapon/book/tome)) + usr << "The solution does nothing. Whatever this is, it isn't normal ink." + return + var/obj/item/weapon/book/affectedbook = O + affectedbook.dat = null + usr << "The solution dissolves the ink on the book." + return + +/datum/reagent/fluorine + name = "Fluorine" + id = "fluorine" + description = "A highly-reactive chemical element." + reagent_state = GAS + color = "#808080" + +/datum/reagent/fluorine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed) + +/datum/reagent/hydrogen + name = "Hydrogen" + id = "hydrogen" + description = "A colorless, odorless, nonmetallic, tasteless, highly combustible diatomic gas." + reagent_state = GAS + color = "#808080" + +/datum/reagent/iron + name = "Iron" + id = "iron" + description = "Pure iron is a metal." + reagent_state = SOLID + color = "#353535" + +/datum/reagent/iron/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_INGEST && alien != IS_DIONA) + M.add_chemical_effect(CE_BLOODRESTORE, 8 * removed) + +/datum/reagent/lithium + name = "Lithium" + id = "lithium" + description = "A chemical element, used as antidepressant." + reagent_state = SOLID + color = "#808080" + +/datum/reagent/lithium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location != CHEM_TOUCH && alien != IS_DIONA) + if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) + step(M, pick(cardinal)) + if(prob(5)) + M.emote(pick("twitch", "drool", "moan")) + +/datum/reagent/mercury + name = "Mercury" + id = "mercury" + description = "A chemical element." + reagent_state = LIQUID + color = "#484848" + +/datum/reagent/mercury/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location != CHEM_TOUCH && alien != IS_DIONA) + if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) + step(M, pick(cardinal)) + if(prob(5)) + M.emote(pick("twitch", "drool", "moan")) + M.adjustBrainLoss(2) + +/datum/reagent/nitrogen + name = "Nitrogen" + id = "nitrogen" + description = "A colorless, odorless, tasteless gas." + reagent_state = GAS + color = "#808080" + +/datum/reagent/nitrogen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_VOX) + if(location == CHEM_BLOOD) + M.adjustOxyLoss(-removed * 3) + if(location == CHEM_INGEST) + M.reagents.add_reagent(id, removed, CHEM_BLOOD) + +/datum/reagent/oxygen + name = "Oxygen" + id = "oxygen" + description = "A colorless, odorless gas." + reagent_state = GAS + color = "#808080" + +/datum/reagent/oxygen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + if(alien == IS_VOX) + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + M.adjustToxLoss(removed * 2 * effect) + +/datum/reagent/phosphorus + name = "Phosphorus" + id = "phosphorus" + description = "A chemical element, the backbone of biological energy carriers." + reagent_state = SOLID + color = "#832828" + +/datum/reagent/potassium + name = "Potassium" + id = "potassium" + description = "A soft, low-melting solid that can easily be cut with a knife. Reacts violently with water." + reagent_state = SOLID + color = "#A0A0A0" + +/datum/reagent/radium + name = "Radium" + id = "radium" + description = "Radium is an alkaline earth metal. It is extremely radioactive." + reagent_state = SOLID + color = "#C7C7C7" + +/datum/reagent/radium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.apply_effect(10 * removed, IRRADIATE, 0) // Radium may increase your chances to cure a disease + if(location == CHEM_BLOOD) // Make sure to only use it on carbon mobs + if(M.virus2.len) + for(var/ID in M.virus2) + var/datum/disease2/disease/V = M.virus2[ID] + if(prob(5)) + M.antibodies |= V.antigen if(prob(50)) - var/obj/effect/plant/plant = O - plant.die_off() - else if(istype(O,/obj/machinery/portable_atmospherics/hydroponics)) - var/obj/machinery/portable_atmospherics/hydroponics/tray = O + M.radiation += 50 // curing it that way may kill you instead + var/absorbed = 0 + var/datum/organ/internal/diona/nutrients/rad_organ = locate() in M.internal_organs + if(rad_organ && !rad_organ.is_broken()) + absorbed = 1 + if(!absorbed) + M.adjustToxLoss(100) - if(tray.seed) - tray.health -= rand(30,50) - if(tray.pestlevel > 0) - tray.pestlevel -= 2 - if(tray.weedlevel > 0) - tray.weedlevel -= 3 - tray.toxins += 4 - tray.check_level_sanity() - tray.update_icon() +/datum/reagent/radium/touch_turf(var/turf/T) + if(volume >= 3) + if(!istype(T, /turf/space)) + var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) + if(!glow) + new /obj/effect/decal/cleanable/greenglow(T) + return - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) - src = null - if(iscarbon(M)) - var/mob/living/carbon/C = M - if(!C.wear_mask) // If not wearing a mask - C.adjustToxLoss(2) // 4 toxic damage per application, doubled for some reason - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.dna) - if(H.species.flags & IS_PLANT) //plantmen take a LOT of damage - H.adjustToxLoss(50) +/datum/reagent/acid + name = "Sulphuric acid" + id = "sacid" + description = "A very corrosive mineral acid with the molecular formula H2SO4." + reagent_state = LIQUID + color = "#DB5008" + metabolism = REM * 2 + touch_met = 50 // It's acid! + var/power = 5 + var/meltdose = 10 // How much is needed to melt - toxin/stoxin - name = "Soporific" - id = "stoxin" - description = "An effective hypnotic used to treat insomnia." - reagent_state = LIQUID - color = "#009CA8" // rgb: 232, 149, 204 - toxpwr = 0 - custom_metabolism = 0.1 - overdose = REAGENTS_OVERDOSE - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(!data) data = 1 - switch(data) - if(1 to 12) - if(prob(5)) M.emote("yawn") - if(12 to 15) - M.eye_blurry = max(M.eye_blurry, 10) - if(15 to 49) - if(prob(50)) - M.Weaken(2) - M.drowsyness = max(M.drowsyness, 20) - if(50 to INFINITY) - M.sleeping = max(M.sleeping, 20) - M.drowsyness = max(M.drowsyness, 60) - data++ - ..() - return - - toxin/chloralhydrate - name = "Chloral Hydrate" - id = "chloralhydrate" - description = "A powerful sedative." - reagent_state = SOLID - color = "#000067" // rgb: 0, 0, 103 - toxpwr = 1 - custom_metabolism = 0.1 //Default 0.2 - overdose = 15 - overdose_dam = 5 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(!data) data = 1 - data++ - switch(data) - if(1) - M.confused += 2 - M.drowsyness += 2 - if(2 to 20) - M.Weaken(30) - M.eye_blurry = max(M.eye_blurry, 10) - if(20 to INFINITY) - M.sleeping = max(M.sleeping, 30) - ..() - return - - toxin/potassium_chloride - name = "Potassium Chloride" - id = "potassium_chloride" - description = "A delicious salt that stops the heart when injected into cardiac muscle." - reagent_state = SOLID - color = "#FFFFFF" // rgb: 255,255,255 - toxpwr = 0 - overdose = 30 - - on_mob_life(var/mob/living/carbon/M as mob) - var/mob/living/carbon/human/H = M - if(H.stat != 1) - if (volume >= overdose) - if(H.losebreath >= 10) - H.losebreath = max(10, H.losebreath-10) - H.adjustOxyLoss(2) - H.Weaken(10) - ..() - return - - toxin/potassium_chlorophoride - name = "Potassium Chlorophoride" - id = "potassium_chlorophoride" - description = "A specific chemical based on Potassium Chloride to stop the heart for surgery. Not safe to eat!" - reagent_state = SOLID - color = "#FFFFFF" // rgb: 255,255,255 - toxpwr = 2 - overdose = 20 - - on_mob_life(var/mob/living/carbon/M as mob) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.stat != 1) - if(H.losebreath >= 10) - H.losebreath = max(10, M.losebreath-10) - H.adjustOxyLoss(2) - H.Weaken(10) - ..() - return - - toxin/beer2 //disguised as normal beer for use by emagged brobots - name = "Beer" - id = "beer2" - description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong. - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - custom_metabolism = 0.15 // Sleep toxins should always be consumed pretty fast - overdose = REAGENTS_OVERDOSE/2 - - glass_icon_state = "beerglass" - glass_name = "glass of beer" - glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(!data) data = 1 - switch(data) - if(1) - M.confused += 2 - M.drowsyness += 2 - if(2 to 50) - M.sleeping += 1 - if(51 to INFINITY) - M.sleeping += 1 - M.adjustToxLoss((data - 50)*REM) - data++ - ..() - return - - toxin/acid - name = "Sulphuric acid" - id = "sacid" - description = "A very corrosive mineral acid with the molecular formula H2SO4." - reagent_state = LIQUID - color = "#DB5008" // rgb: 219, 80, 8 - toxpwr = 1 - var/meltprob = 10 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.take_organ_damage(0, 1*REM) - ..() - return - - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//magic numbers everywhere - if(!istype(M, /mob/living)) +/datum/reagent/acid/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_INGEST) + M.take_organ_damage(0, removed * power) + if(location == CHEM_BLOOD) + M.take_organ_damage(0, removed * power * 2) + if(location == CHEM_TOUCH) // This is the most interesting + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.head) + if(H.head.unacidable) + H << "Your [H.head] protects you from the acid." + remove_self(volume) return - if(method == TOUCH) - if(ishuman(M)) - var/mob/living/carbon/human/H = M + else if(removed > meltdose) + H << "Your [H.head] melts away!" + del(H.head) + H.update_inv_head(1) + H.update_hair(1) + removed -= meltdose + if(removed <= 0) + return - if(H.head) - if(prob(meltprob) && !H.head.unacidable) - H << "Your headgear melts away but protects you from the acid!" - del(H.head) - H.update_inv_head(0) - H.update_hair(0) - else - H << "Your headgear protects you from the acid." - return + if(H.wear_mask) + if(H.wear_mask.unacidable) + H << "Your [H.wear_mask] protects you from the acid." + remove_self(volume) + return + else if(removed > meltdose) + H << "Your [H.wear_mask] melts away!" + del(H.wear_mask) + H.update_inv_wear_mask(1) + H.update_hair(1) + removed -= meltdose + if(removed <= 0) + return - if(H.wear_mask) - if(prob(meltprob) && !H.wear_mask.unacidable) - H << "Your mask melts away but protects you from the acid!" - del (H.wear_mask) - H.update_inv_wear_mask(0) - H.update_hair(0) - else - H << "Your mask protects you from the acid." - return + if(H.glasses) + if(H.glasses.unacidable) + H << "Your [H.glasses] partially protect you from the acid!" + removed /= 2 + else if(removed > meltdose) + H << "Your [H.glasses] melt away!" + del(H.glasses) + H.update_inv_glasses(1) + removed -= meltdose / 2 + if(removed <= 0) + return - if(H.glasses) //Doesn't protect you from the acid but can melt anyways! - if(prob(meltprob) && !H.glasses.unacidable) - H << "Your glasses melts away!" - del (H.glasses) - H.update_inv_glasses(0) - - else if(ismonkey(M)) - var/mob/living/carbon/monkey/MK = M - if(MK.wear_mask) - if(!MK.wear_mask.unacidable) - MK << "Your mask melts away but protects you from the acid!" - del (MK.wear_mask) - MK.update_inv_wear_mask(0) - else - MK << "Your mask protects you from the acid." - return - - if(!M.unacidable) - if(istype(M, /mob/living/carbon/human) && volume >= 10) - var/mob/living/carbon/human/H = M - var/datum/organ/external/affecting = H.get_organ("head") - if(affecting) - if(affecting.take_damage(4*toxpwr, 2*toxpwr)) - H.UpdateDamageIcon() - if(prob(meltprob)) //Applies disfigurement - if (!(H.species && (H.species.flags & NO_PAIN))) - H.emote("scream") - H.status_flags |= DISFIGURED - else - M.take_organ_damage(min(6*toxpwr, volume * toxpwr)) // uses min() and volume to make sure they aren't being sprayed in trace amounts (1 unit != insta rape) -- Doohl + if(ismonkey(M)) + var/mob/living/carbon/monkey/MK = M + if(MK.wear_mask) + if(MK.wear_mask.unacidable) + MK << "Your [MK.wear_mask] protects you from the acid!" + remove_self(volume) + return else - if(!M.unacidable) - M.take_organ_damage(min(6*toxpwr, volume * toxpwr)) - - reaction_obj(var/obj/O, var/volume) - if((istype(O,/obj/item) || istype(O,/obj/effect/plant)) && prob(meltprob * 3)) - if(!O.unacidable) - var/obj/effect/decal/cleanable/molten_item/I = new/obj/effect/decal/cleanable/molten_item(O.loc) - I.desc = "Looks like this was \an [O] some time ago." - for(var/mob/M in viewers(5, O)) - M << "\red \the [O] melts." - del(O) - - toxin/acid/polyacid - name = "Polytrinic acid" - id = "pacid" - description = "Polytrinic acid is a an extremely corrosive chemical substance." - reagent_state = LIQUID - color = "#8E18A9" // rgb: 142, 24, 169 - toxpwr = 2 - meltprob = 30 - -/////////////////////////Food Reagents//////////////////////////// -// Part of the food code. Nutriment is used instead of the old "heal_amt" code. Also is where all the food -// condiments, additives, and such go. - nutriment - name = "Nutriment" - id = "nutriment" - description = "All the vitamins, minerals, and carbohydrates the body needs in pure form." - reagent_state = SOLID - nutriment_factor = 15 * REAGENTS_METABOLISM - color = "#664330" // rgb: 102, 67, 48 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - if(prob(50)) M.heal_organ_damage(1,0) - M.nutrition += nutriment_factor // For hunger and fatness - ..() + MK << "Your [MK.wear_mask] melts away!" + del(MK.wear_mask) + MK.update_inv_wear_mask(1) + removed -= meltdose + if(removed <= 0) return - nutriment/protein // Bad for Skrell! - name = "animal protein" - id = "protein" - color = "#440000" + if(volume < meltdose) // Not enough to melt anything + M.take_organ_damage(removed * power * 0.2) + return + if(!M.unacidable && removed > 0) + if(istype(M, /mob/living/carbon/human) && volume >= meltdose) + var/mob/living/carbon/human/H = M + var/datum/organ/external/affecting = H.get_organ("head") + if(affecting) + if(affecting.take_damage(0, removed * power * 0.1)) + H.UpdateDamageIcon() + if(prob(100 * removed / meltdose)) // Applies disfigurement + if (!(H.species && (H.species.flags & NO_PAIN))) + H.emote("scream") + H.status_flags |= DISFIGURED + else + M.take_organ_damage(0, removed * power * 0.1) // Balance. The damage is instant, so it's weaker. 10 units -> 5 damage, double for pacid. 120 units beaker could deal 60, but a) it's burn, which is not as dangerous, b) it's a one-use weapon, c) missing with it will splash it over the ground and d) clothes give some protection, so not everything will hit - on_mob_life(var/mob/living/M, var/alien) - if(alien && alien == IS_SKRELL) - M.adjustToxLoss(0.5) - M.nutrition -= nutriment_factor - ..() +/datum/reagent/acid/touch_obj(var/obj/O) + if(O.unacidable) + return + if((istype(O, /obj/item) || istype(O, /obj/effect/plant)) && (volume > meltdose)) + var/obj/effect/decal/cleanable/molten_item/I = new/obj/effect/decal/cleanable/molten_item(O.loc) + I.desc = "Looks like this was \an [O] some time ago." + for(var/mob/M in viewers(5, O)) + M << "\The [O] melts." + del(O) + remove_self(meltdose) // 10 units of acid will not melt EVERYTHING on the tile - nutriment/egg // Also bad for skrell. Not a child of protein because it might mess up, not sure. - name = "egg yolk" - id = "egg" - color = "#FFFFAA" +/datum/reagent/silicon + name = "Silicon" + id = "silicon" + description = "A tetravalent metalloid, silicon is less reactive than its chemical analog carbon." + reagent_state = SOLID + color = "#A8A8A8" - on_mob_life(var/mob/living/M, var/alien) - if(alien && alien == IS_SKRELL) - M.adjustToxLoss(0.5) - M.nutrition -= nutriment_factor - ..() +/datum/reagent/sodium + name = "Sodium" + id = "sodium" + description = "A chemical element, readily reacts with water." + reagent_state = SOLID + color = "#808080" - lipozine - name = "Lipozine" // The anti-nutriment. - id = "lipozine" - description = "A chemical compound that causes a powerful fat-burning reaction." - reagent_state = LIQUID - nutriment_factor = 10 * REAGENTS_METABOLISM - color = "#BBEDA4" // rgb: 187, 237, 164 - overdose = REAGENTS_OVERDOSE +/datum/reagent/sugar + name = "Sugar" + id = "sugar" + description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." + reagent_state = SOLID + color = "#FFFFFF" + glass_icon_state = "iceglass" + glass_name = "glass of sugar" + glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.nutrition = max(M.nutrition - nutriment_factor, 0) - M.overeatduration = 0 - if(M.nutrition < 0)//Prevent from going into negatives. - M.nutrition = 0 - ..() +/datum/reagent/sugar/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location != CHEM_TOUCH) + M.nutrition += removed * 3 + +/datum/reagent/sulfur + name = "Sulfur" + id = "sulfur" + description = "A chemical element with a pungent smell." + reagent_state = SOLID + color = "#BF8C00" + +/datum/reagent/tungsten + name = "Tungsten" + id = "tungsten" + description = "A chemical element, and a strong oxidising agent." + reagent_state = SOLID + color = "#DCDCDC" + +/* General medicine */ + +/datum/reagent/inaprovaline + name = "Inaprovaline" + id = "inaprovaline" + description = "Inaprovaline is a synaptic stimulant and cardiostimulant. Commonly used to stabilize patients." + reagent_state = LIQUID + color = "#00BFFF" + overdose_blood = REAGENTS_OVERDOSE * 2 + overdose_ingest = REAGENTS_OVERDOSE * 4 + metabolism = REM * 0.5 + scannable = 1 + +/datum/reagent/inaprovaline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + if(alien != IS_DIONA) + M.add_chemical_effect(CE_STABLE) + M.add_chemical_effect(CE_PAINKILLER, 25) + +/datum/reagent/bicaridine + name = "Bicaridine" + id = "bicaridine" + description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma." + reagent_state = LIQUID + color = "#BF0000" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE * 2 + scannable = 1 + +/datum/reagent/bicaridine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(alien != IS_DIONA) + M.heal_organ_damage(4 * removed * effect, 0) + +/datum/reagent/kelotane + name = "Kelotane" + id = "kelotane" + description = "Kelotane is a drug used to treat burns." + reagent_state = LIQUID + color = "#FFA800" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE * 2 + scannable = 1 + +/datum/reagent/kelotane/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(alien != IS_DIONA) + M.heal_organ_damage(0, 4 * removed * effect) + +/datum/reagent/dermaline + name = "Dermaline" + id = "dermaline" + description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue." + reagent_state = LIQUID + color = "#FF8000" + overdose_blood = REAGENTS_OVERDOSE * 0.5 + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/dermaline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(alien != IS_DIONA) + M.heal_organ_damage(0, 8 * removed * effect) + +/datum/reagent/dylovene + name = "Dylovene" + id = "anti_toxin" + description = "Dylovene is a broad-spectrum antitoxin." + reagent_state = LIQUID + color = "#00A000" + scannable = 1 + +/datum/reagent/dylovene/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(alien != IS_DIONA) + M.drowsyness = max(0, M.drowsyness - 4 * removed * effect) + M.hallucination = max(0, M.hallucination - 6 * removed * effect) + M.adjustToxLoss(-4 * removed) + +/datum/reagent/dexalin + name = "Dexalin" + id = "dexalin" + description = "Dexalin is used in the treatment of oxygen deprivation." + reagent_state = LIQUID + color = "#0080FF" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE * 2 + scannable = 1 + +/datum/reagent/dexalin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(alien == IS_VOX) + M.adjustToxLoss(removed * 4 * effect) + else if(alien != IS_DIONA) + M.adjustOxyLoss(-10 * removed * effect) + + holder.remove_reagent("lexorin", 2 * removed, location) + +/datum/reagent/dexalinp + name = "Dexalin Plus" + id = "dexalinp" + description = "Dexalin Plus is used in the treatment of oxygen deprivation. It is highly effective." + reagent_state = LIQUID + color = "#0040FF" + overdose_blood = REAGENTS_OVERDOSE * 0.5 + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/dexalin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(alien == IS_VOX) + M.adjustToxLoss(removed * 6 * effect) + else if(alien != IS_DIONA) + M.adjustOxyLoss(-200 * removed * effect) // So around 20 per tick under standard settings, should be enough + + holder.remove_reagent("lexorin", 3 * removed, location) + +/datum/reagent/tricordrazine + name = "Tricordrazine" + id = "tricordrazine" + description = "Tricordrazine is a highly potent stimulant, originally derived from cordrazine. Can be used to treat a wide range of injuries." + reagent_state = LIQUID + color = "#8040FF" + scannable = 1 + +/datum/reagent/tricordrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(alien != IS_DIONA) + M.adjustOxyLoss(-4 * removed * effect) + M.heal_organ_damage(2 * removed * effect, 2 * removed * effect) + M.adjustToxLoss(-2 * removed * effect) + +/datum/reagent/cryoxadone + name = "Cryoxadone" + id = "cryoxadone" + description = "A chemical mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 170K for it to metabolise correctly." + reagent_state = LIQUID + color = "#8080FF" + metabolism = REM * 0.5 + scannable = 1 + +/datum/reagent/cryoxadone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.bodytemperature < 170) + M.adjustCloneLoss(-10 * removed) + M.adjustOxyLoss(-10 * removed) + M.heal_organ_damage(10 * removed, 10 * removed) + M.adjustToxLoss(-10 * removed) + +/datum/reagent/clonexadone + name = "Clonexadone" + id = "clonexadone" + description = "A liquid compound similar to that used in the cloning process. Can be used to 'finish' the cloning process when used in conjunction with a cryo tube." + reagent_state = LIQUID + color = "#80BFFF" + metabolism = REM * 0.5 + scannable = 1 + +/datum/reagent/cryoxadone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.bodytemperature < 170) + M.adjustCloneLoss(-30 * removed) + M.adjustOxyLoss(-3 * removed) + M.heal_organ_damage(30 * removed, 30 * removed) + M.adjustToxLoss(-30 * removed) + +/* Painkillers */ + +/datum/reagent/paracetamol + name = "Paracetamol" + id = "paracetamol" + description = "Most probably know this as Tylenol, but this chemical is a mild, simple painkiller." + reagent_state = LIQUID + color = "#C8A5DC" + overdose_blood = 60 + overdose_ingest = 60 + scannable = 1 + metabolism = 0.02 + +/datum/reagent/paracetamol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.add_chemical_effect(CE_PAINKILLER, 50) + +/datum/reagent/paracetamol/overdose(var/mob/living/carbon/M, var/alien) + ..() + M.hallucination = max(M.hallucination, 2) + +/datum/reagent/tramadol + name = "Tramadol" + id = "tramadol" + description = "A simple, yet effective painkiller." + reagent_state = LIQUID + color = "#CB68FC" + overdose_blood = 30 + overdose_ingest = 30 + scannable = 1 + metabolism = 0.02 + +/datum/reagent/tramadol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.add_chemical_effect(CE_PAINKILLER, 80) + +/datum/reagent/tramadol/overdose(var/mob/living/carbon/M, var/alien) + ..() + M.hallucination = max(M.hallucination, 2) + +/datum/reagent/oxycodone + name = "Oxycodone" + id = "oxycodone" + description = "An effective and very addictive painkiller." + reagent_state = LIQUID + color = "#800080" + overdose_blood = 20 + overdose_ingest = 20 + metabolism = 0.02 + +/datum/reagent/tramadol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.add_chemical_effect(CE_PAINKILLER, 200) + +/datum/reagent/tramadol/overdose(var/mob/living/carbon/M, var/alien) + ..() + M.druggy = max(M.druggy, 10) + M.hallucination = max(M.hallucination, 3) + +/* Other medicine */ + +/datum/reagent/synaptizine + name = "Synaptizine" + id = "synaptizine" + description = "Synaptizine is used to treat various diseases." + reagent_state = LIQUID + color = "#99CCFF" + metabolism = REM * 0.05 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/synaptizine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.drowsyness = max(M.drowsyness - 5, 0) + M.AdjustParalysis(-1) + M.AdjustStunned(-1) + M.AdjustWeakened(-1) + holder.remove_reagent("mindbreaker", 5) + M.hallucination = max(0, M.hallucination - 10) + M.adjustToxLoss(5 * removed) // It used to be incredibly deadly due to an oversight. Not anymore! + M.add_chemical_effect(CE_PAINKILLER, 40) + +/datum/reagent/alkysine + name = "Alkysine" + id = "alkysine" + description = "Alkysine is a drug used to lessen the damage to neurological tissue after a catastrophic injury. Can heal brain tissue." + reagent_state = LIQUID + color = "#FFFF66" + metabolism = REM * 0.25 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/alkysine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.adjustBrainLoss(-30 * removed) + M.add_chemical_effect(CE_PAINKILLER, 10) + +/datum/reagent/imidazoline + name = "Imidazoline" + id = "imidazoline" + description = "Heals eye damage" + reagent_state = LIQUID + color = "#C8A5DC" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/imidazoline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + M.eye_blurry = max(M.eye_blurry-5, 0) + M.eye_blind = max(M.eye_blind-5, 0) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"] + if(E && istype(E)) + if(E.damage > 0) + E.damage = max(E.damage - 5 * removed, 0) + +/datum/reagent/peridaxon + name = "Peridaxon" + id = "peridaxon" + description = "Used to encourage recovery of internal organs and nervous systems. Medicate cautiously." + reagent_state = LIQUID + color = "#561EC3" + overdose_blood = 10 + overdose_ingest = 10 + scannable = 1 + +/datum/reagent/peridaxon/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location != CHEM_TOUCH && ishuman(M)) + var/mob/living/carbon/human/H = M + + for(var/datum/organ/internal/I in H.internal_organs) + if((I.damage > 0) && (I.robotic != 2)) //Peridaxon heals only non-robotic organs + I.damage = max(I.damage - removed, 0) + +/datum/reagent/ryetalyn + name = "Ryetalyn" + id = "ryetalyn" + description = "Ryetalyn can cure all genetic abnomalities via a catalytic process." + reagent_state = SOLID + color = "#004000" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/ryetalyn/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/needs_update = M.mutations.len > 0 + + M.mutations = list() + M.disabilities = 0 + M.sdisabilities = 0 + + // Might need to update appearance for hulk etc. + if(needs_update && ishuman(M)) + var/mob/living/carbon/human/H = M + H.update_mutations() + +/datum/reagent/hyperzine + name = "Hyperzine" + id = "hyperzine" + description = "Hyperzine is a highly effective, long lasting, muscle stimulant." + reagent_state = LIQUID + color = "#FF3300" + metabolism = REM * 0.15 + overdose_blood = REAGENTS_OVERDOSE * 0.5 + overdose_ingest = REAGENTS_OVERDOSE * 0.5 + +/datum/reagent/hyperzine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(prob(5)) + M.emote(pick("twitch", "blink_r", "shiver")) + M.add_chemical_effect(CE_SPEEDBOOST, 1) + +/datum/reagent/ethylredoxrazine + name = "Ethylredoxrazine" + id = "ethylredoxrazine" + description = "A powerful oxidizer that reacts with ethanol." + reagent_state = SOLID + color = "#605048" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/ethylredoxrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.dizziness = 0 + M.drowsyness = 0 + M.stuttering = 0 + M.confused = 0 + if(M.ingested) + for(var/datum/reagent/R in M.ingested) + if(istype(R, /datum/reagent/ethanol)) + R.dose = max(R.dose - removed * 5, 0) + +/datum/reagent/hyronalin + name = "Hyronalin" + id = "hyronalin" + description = "Hyronalin is a medicinal drug used to counter the effect of radiation poisoning." + reagent_state = LIQUID + color = "#408000" + metabolism = REM * 0.25 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/hyronalin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + M.radiation = max(M.radiation - 30 * removed, 0) + +/datum/reagent/arithrazine + name = "Arithrazine" + id = "arithrazine" + description = "Arithrazine is an unstable medication used for the most extreme cases of radiation poisoning." + reagent_state = LIQUID + color = "#008000" + metabolism = REM * 0.25 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/arithrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + M.radiation = max(M.radiation - 70 * removed, 0) + M.adjustToxLoss(-10 * removed) + if(prob(60)) + M.take_organ_damage(4 * removed, 0) + +/datum/reagent/spaceacillin + name = "Spaceacillin" + id = "spaceacillin" + description = "An all-purpose antiviral agent." + reagent_state = LIQUID + color = "#C1C1C1" + metabolism = REM * 0.05 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE * 2 + scannable = 1 + +/datum/reagent/sterilizine + name = "Sterilizine" + id = "sterilizine" + description = "Sterilizes wounds in preparation for surgery." + reagent_state = LIQUID + color = "#C8A5DC" + touch_met = 5 + +/datum/reagent/sterilizine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + M.germ_level -= min(removed*20, M.germ_level) + +/datum/reagent/sterilizine/touch_obj(var/obj/O) + O.germ_level -= min(volume*20, O.germ_level) + +/datum/reagent/sterilizine/touch_turf(var/turf/T) + T.germ_level -= min(volume*20, T.germ_level) + +/datum/reagent/leporazine + name = "Leporazine" + id = "leporazine" + description = "Leporazine can be use to stabilize an individuals body temperature." + reagent_state = LIQUID + color = "#C8A5DC" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/leporazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + if(M.bodytemperature > 310) + M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) + else if(M.bodytemperature < 311) + M.bodytemperature = min(310, M.bodytemperature + (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) + +/* Antidepressants */ + +#define ANTIDEPRESSANT_MESSAGE_DELAY 5*60*10 + +/datum/reagent/methylphenidate + name = "Methylphenidate" + id = "methylphenidate" + description = "Improves the ability to concentrate." + reagent_state = LIQUID + color = "#BF80BF" + metabolism = 0.01 + data = 0 + +/datum/reagent/methylphenidate/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(volume <= 0.1 && data != -1) + data = -1 + M << "You lose focus..." + else + if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) + data = world.time + M << "Your mind feels focused and undivided." + +/datum/reagent/citalopram + name = "Citalopram" + id = "citalopram" + description = "Stabilizes the mind a little." + reagent_state = LIQUID + color = "#FF80FF" + metabolism = 0.01 + data = 0 + +/datum/reagent/citalopram/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(volume <= 0.1 && data != -1) + data = -1 + M << "Your mind feels a little less stable..." + else + if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) + data = world.time + M << "Your mind feels stable... a little stable." + +/datum/reagent/paroxetine + name = "Paroxetine" + id = "paroxetine" + description = "Stabilizes the mind greatly, but has a chance of adverse effects." + reagent_state = LIQUID + color = "#FF80BF" + metabolism = 0.01 + data = 0 + +/datum/reagent/paroxetine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(volume <= 0.1 && data != -1) + data = -1 + M << "Your mind feels much less stable..." + else + if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) + data = world.time + if(prob(90)) + M << "Your mind feels much more stable." + else + M << "Your mind breaks apart..." + M.hallucination += 200 + +/* Toxins, poisons, venoms */ + +/datum/reagent/toxin + name = "Toxin" + id = "toxin" + description = "A toxic chemical." + reagent_state = LIQUID + color = "#CF3600" + metabolism = REM * 0.05 // 0.01 by default. They last a while and slowly kill you. + var/strength = 4 // How much damage it deals per unit + +/datum/reagent/toxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + var/effect = (location == CHEM_BLOOD ? 1.5 : 1) + if(strength && alien != IS_DIONA) + M.adjustToxLoss(strength * removed * effect) + +/datum/reagent/toxin/plasticide + name = "Plasticide" + id = "plasticide" + description = "Liquid plastic, do not eat." + reagent_state = LIQUID + color = "#CF3600" + strength = 5 + +/datum/reagent/toxin/amatoxin + name = "Amatoxin" + id = "amatoxin" + description = "A powerful poison derived from certain species of mushroom." + reagent_state = LIQUID + color = "#792300" + strength = 10 + +/datum/reagent/toxin/carpotoxin + name = "Carpotoxin" + id = "carpotoxin" + description = "A deadly neurotoxin produced by the dreaded space carp." + reagent_state = LIQUID + color = "#003333" + strength = 10 + +/datum/reagent/toxin/phoron + name = "Phoron" + id = "phoron" + description = "Phoron in its liquid form." + reagent_state = LIQUID + color = "#9D14DB" + strength = 30 + +/datum/reagent/toxin/phoron/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH) + M.adjust_fire_stacks(removed / 5) + +/datum/reagent/toxin/phoron/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return + T.assume_gas("volatile_fuel", volume, T20C) + remove_self(volume) + +/datum/reagent/toxin/cyanide //Fast and Lethal + name = "Cyanide" + id = "cyanide" + description = "A highly toxic chemical." + reagent_state = LIQUID + color = "#CF3600" + strength = 20 + metabolism = REM * 2 + +/datum/reagent/toxin/cyanide/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location != CHEM_TOUCH) + M.adjustOxyLoss(20 * removed) + M.sleeping += 1 + +/datum/reagent/toxin/potassium_chloride + name = "Potassium Chloride" + id = "potassium_chloride" + description = "A delicious salt that stops the heart when injected into cardiac muscle." + reagent_state = SOLID + color = "#FFFFFF" + strength = 0 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/toxin/potassium_chloride/overdose(var/mob/living/carbon/M, var/alien) + ..() + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.stat != 1) + if(H.losebreath >= 10) + H.losebreath = max(10, H.losebreath - 10) + H.adjustOxyLoss(2) + H.Weaken(10) + +/datum/reagent/toxin/potassium_chlorophoride + name = "Potassium Chlorophoride" + id = "potassium_chlorophoride" + description = "A specific chemical based on Potassium Chloride to stop the heart for surgery. Not safe to eat!" + reagent_state = SOLID + color = "#FFFFFF" + strength = 10 + overdose_blood = 20 + overdose_ingest = 20 + +/datum/reagent/toxin/cyanide/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.stat != 1) + if(H.losebreath >= 10) + H.losebreath = max(10, M.losebreath-10) + H.adjustOxyLoss(2) + H.Weaken(10) + +/datum/reagent/toxin/zombiepowder + name = "Zombie Powder" + id = "zombiepowder" + description = "A strong neurotoxin that puts the subject into a death-like state." + reagent_state = SOLID + color = "#669900" + metabolism = REM + strength = 3 + +/datum/reagent/toxin/zombiepowder/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.status_flags |= FAKEDEATH + M.adjustOxyLoss(3 * removed) + M.Weaken(10) + M.silent = max(M.silent, 10) + M.tod = worldtime2text() + +/datum/reagent/toxin/zombiepowder/Del() + if(holder && holder.my_atom && ismob(holder.my_atom)) + var/mob/M = holder.my_atom + M.status_flags &= ~FAKEDEATH + ..() + +/datum/reagent/toxin/fertilizer //Reagents used for plant fertilizers. + name = "fertilizer" + id = "fertilizer" + description = "A chemical mix good for growing plants with." + reagent_state = LIQUID + strength = 0.5 // It's not THAT poisonous. + color = "#664330" + +/datum/reagent/toxin/fertilizer/eznutrient + name = "EZ Nutrient" + id = "eznutrient" + +/datum/reagent/toxin/fertilizer/left4zed + name = "Left-4-Zed" + id = "left4zed" + +/datum/reagent/toxin/fertilizer/robustharvest + name = "Robust Harvest" + id = "robustharvest" + +/datum/reagent/toxin/plantbgone + name = "Plant-B-Gone" + id = "plantbgone" + description = "A harmful toxic mixture to kill plantlife. Do not ingest!" + reagent_state = LIQUID + color = "#49002E" + strength = 4 + +/datum/reagent/toxin/plantbgone/touch_turf(var/turf/T) + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/W = T + if(W.rotting) + W.rotting = 0 + for(var/obj/effect/E in W) + if(E.name == "Wallrot") + del(E) + + W.visible_message("The fungi are completely dissolved by the solution!") + +/datum/reagent/toxin/plantbgone/touch_obj(var/obj/O, var/volume) + if(istype(O, /obj/effect/alien/weeds/)) + var/obj/effect/alien/weeds/alien_weeds = O + alien_weeds.health -= rand(15, 35) + alien_weeds.healthcheck() + else if(istype(O, /obj/effect/plant)) + del(O) + +/datum/reagent/toxin/plantbgone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) // Regardless of the state + M.adjustToxLoss(50 * removed) + +/datum/reagent/acid/polyacid + name = "Polytrinic acid" + id = "pacid" + description = "Polytrinic acid is a an extremely corrosive chemical substance." + reagent_state = LIQUID + color = "#8E18A9" + power = 10 + meltdose = 4 + +/datum/reagent/lexorin + name = "Lexorin" + id = "lexorin" + description = "Lexorin temporarily stops respiration. Causes tissue damage." + reagent_state = LIQUID + color = "#C8A5DC" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/lexorin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.take_organ_damage(3 * removed, 0) + if(M.losebreath < 15) + M.losebreath++ + +/datum/reagent/mutagen + name = "Unstable mutagen" + id = "mutagen" + description = "Might cause unpredictable mutations. Keep away from children." + reagent_state = LIQUID + color = "#13BC5E" + +/datum/reagent/mutagen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.dna) + var/chance = 0 + if(location == CHEM_TOUCH) + chance = 33 + if(location == CHEM_INGEST) + chance = 67 + if(location == CHEM_BLOOD) + chance = 100 + if(prob(chance * removed * 0.1)) // Approx. one mutation per 10 injected/20 ingested/30 touching units + randmuti(M) + if(prob(98)) + randmutb(M) + else + randmutg(M) + domutcheck(M, null) + M.UpdateAppearance() + M.apply_effect(10 * removed, IRRADIATE, 0) + +/datum/reagent/slimejelly + name = "Slime Jelly" + id = "slimejelly" + description = "A gooey semi-liquid produced from one of the deadliest lifeforms in existence. SO REAL." + reagent_state = LIQUID + color = "#801E28" + +/datum/reagent/slimejelly/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(prob(10)) + M << "Your insides are burning!" + M.adjustToxLoss(rand(100, 300) * removed) + else if(prob(40)) + M.heal_organ_damage(25 * removed, 0) + +/datum/reagent/soporific + name = "Soporific" + id = "stoxin" + description = "An effective hypnotic used to treat insomnia." + reagent_state = LIQUID + color = "#009CA8" + metabolism = REM * 0.5 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE * 2 + +/datum/reagent/soporific/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(dose < 1) + if(dose == metabolism * 2 || prob(5)) + M.emote("yawn") + else if(dose < 1.5) + M.eye_blurry = max(M.eye_blurry, 10) + else if(dose < 5) + if(prob(50)) + M.Weaken(2) + M.drowsyness = max(M.drowsyness, 20) + else + M.sleeping = max(M.sleeping, 20) + M.drowsyness = max(M.drowsyness, 60) + +/datum/reagent/chloralhydrate + name = "Chloral Hydrate" + id = "chloralhydrate" + description = "A powerful sedative." + reagent_state = SOLID + color = "#000067" + metabolism = REM * 0.5 + overdose_blood = REAGENTS_OVERDOSE * 0.5 + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/chloralhydrate/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(dose == metabolism) + M.confused += 2 + M.drowsyness += 2 + else if(dose < 2) + M.Weaken(30) + M.eye_blurry = max(M.eye_blurry, 10) + else + M.sleeping = max(M.sleeping, 30) + + if(dose > 1) + M.adjustToxLoss(removed) + +/datum/reagent/chloralhydrate/beer2 //disguised as normal beer for use by emagged brobots + name = "Beer" + id = "beer2" + description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong. + reagent_state = LIQUID + color = "#664300" // rgb: 102, 67, 0 + + glass_icon_state = "beerglass" + glass_name = "glass of beer" + glass_desc = "A freezing pint of beer" + glass_center_of_mass = list("x"=16, "y"=8) + +/* Drugs */ + +/datum/reagent/space_drugs + name = "Space drugs" + id = "space_drugs" + description = "An illegal chemical compound used as drug." + reagent_state = LIQUID + color = "#60A584" + metabolism = REM * 0.5 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE * 2 + +/datum/reagent/space_drugs/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.druggy = max(M.druggy, 15) + if(prob(10) && isturf(M.loc) && !istype(M.loc, /turf/space) && M.canmove && !M.restrained()) + step(M, pick(cardinal)) + if(prob(7)) + M.emote(pick("twitch", "drool", "moan", "giggle")) + +/datum/reagent/serotrotium + name = "Serotrotium" + id = "serotrotium" + description = "A chemical compound that promotes concentrated production of the serotonin neurotransmitter in humans." + reagent_state = LIQUID + color = "#202040" + metabolism = REM * 0.25 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/serotrotium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(prob(7)) + M.emote(pick("twitch", "drool", "moan", "gasp")) + return + +/datum/reagent/cryptobiolin + name = "Cryptobiolin" + id = "cryptobiolin" + description = "Cryptobiolin causes confusion and dizzyness." + reagent_state = LIQUID + color = "#000055" + metabolism = REM * 0.5 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/cryptobiolin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.make_dizzy(4) + M.confused = max(M.confused, 20) + +/datum/reagent/impedrezene + name = "Impedrezene" + id = "impedrezene" + description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions." + reagent_state = LIQUID + color = "#C8A5DC" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/impedrezene/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.jitteriness = max(M.jitteriness - 5, 0) + if(prob(80)) + M.adjustBrainLoss(3 * removed) + if(prob(50)) + M.drowsyness = max(M.drowsyness, 3) + if(prob(10)) + M.emote("drool") + +/datum/reagent/mindbreaker + name = "Mindbreaker Toxin" + id = "mindbreaker" + description = "A powerful hallucinogen, it can cause fatal effects in users." + reagent_state = LIQUID + color = "#B31008" + metabolism = REM * 0.25 + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/mindbreaker/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.hallucination = max(M.hallucination, 100) + +/datum/reagent/psilocybin + name = "Psilocybin" + id = "psilocybin" + description = "A strong psycotropic derived from certain species of mushroom." + color = "#E700E7" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + metabolism = REM * 0.5 + +/datum/reagent/psilocybin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.druggy = max(M.druggy, 30) + if(dose < 1) + M.stuttering = max(M.stuttering, 3) + M.make_dizzy(5) + if(prob(10)) + M.emote(pick("twitch", "giggle")) + else if(dose < 2) + M.stuttering = max(M.stuttering, 3) + M.make_jittery(10) + M.make_dizzy(10) + M.druggy = max(M.druggy, 35) + if(prob(20)) + M.emote(pick("twitch","giggle")) + else + M.stuttering = max(M.stuttering, 3) + M.make_jittery(20) + M.make_dizzy(20) + M.druggy = max(M.druggy, 40) + if(prob(30)) + M.emote(pick("twitch", "giggle")) + +/datum/reagent/nicotine + name = "Nicotine" + id = "nicotine" + description = "A highly addictive stimulant extracted from the tobacco plant." + reagent_state = LIQUID + color = "#181818" + +/* Transformations */ + +/datum/reagent/slimetoxin + name = "Mutation Toxin" + id = "mutationtoxin" + description = "A corruptive toxin produced by slimes." + reagent_state = LIQUID + color = "#13BC5E" + +/datum/reagent/slimetoxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_BLOOD && ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.species.name != "Slime") + M << "Your flesh rapidly mutates!" + H.set_species("Slime") + +/datum/reagent/aslimetoxin + name = "Advanced Mutation Toxin" + id = "amutationtoxin" + description = "An advanced corruptive toxin produced by slimes." + reagent_state = LIQUID + color = "#13BC5E" + +/datum/reagent/aslimetoxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) // TODO: check if there's similar code anywhere else + if(location != CHEM_BLOOD || M.monkeyizing) + return + M << "Your flesh rapidly mutates!" + M.monkeyizing = 1 + M.canmove = 0 + M.icon = null + M.overlays.Cut() + M.invisibility = 101 + for(var/obj/item/W in M) + if(istype(W, /obj/item/weapon/implant)) //TODO: Carn. give implants a dropped() or something + del(W) + continue + W.layer = initial(W.layer) + W.loc = M.loc + W.dropped(M) + var/mob/living/carbon/slime/new_mob = new /mob/living/carbon/slime(M.loc) + new_mob.a_intent = "hurt" + new_mob.universal_speak = 1 + if(M.mind) + M.mind.transfer_to(new_mob) + else + new_mob.key = M.key + del(M) + +/datum/reagent/nanites + name = "Nanomachines" + id = "nanites" + description = "Microscopic construction robots." + reagent_state = LIQUID + color = "#535E66" + +/datum/reagent/nanites/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location != CHEM_TOUCH || prob(10)) + M.contract_disease(new /datum/disease/robotic_transformation(0), 1) + +/datum/reagent/xenomicrobes + name = "Xenomicrobes" + id = "xenomicrobes" + description = "Microbes with an entirely alien cellular structure." + reagent_state = LIQUID + color = "#535E66" + +/datum/reagent/nanites/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location != CHEM_TOUCH || prob(10)) + M.contract_disease(new /datum/disease/xeno_transformation(0), 1) + +/* Food */ + +/datum/reagent/nutriment + name = "Nutriment" + id = "nutriment" + description = "All the vitamins, minerals, and carbohydrates the body needs in pure form." + reagent_state = SOLID + metabolism = REM * 4 + var/nutriment_factor = 30 // Per unit + var/injectable = 0 + color = "#664330" + +/datum/reagent/nutriment/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + if(location == CHEM_BLOOD && !injectable) + M.adjustToxLoss(0.1 * removed) + return + M.heal_organ_damage(0.5 * removed, 0) + M.nutrition += nutriment_factor * removed // For hunger and fatness + M.add_chemical_effect(CE_BLOODRESTORE, 4 * removed) + +/datum/reagent/nutriment/protein // Bad for Skrell! + name = "animal protein" + id = "protein" + color = "#440000" + +/datum/reagent/nutriment/protein/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien && alien == IS_SKRELL) + M.adjustToxLoss(0.5 * removed) + return + ..() + +/datum/reagent/nutriment/egg // Also bad for skrell. Not a child of protein because it might mess up, not sure. + name = "egg yolk" + id = "egg" + color = "#FFFFAA" + +/datum/reagent/nutriment/egg/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien && alien == IS_SKRELL) + M.adjustToxLoss(0.5) + return + ..() + +/datum/reagent/nutriment/flour + name = "flour" + id = "flour" + description = "This is what you rub all over yourself to pretend to be a ghost." + reagent_state = SOLID + nutriment_factor = 1 + color = "#FFFFFF" + +/datum/reagent/nutriment/flour/touch_turf(var/turf/simulated/T) + if(!istype(T, /turf/space)) + new /obj/effect/decal/cleanable/flour(T) + +/datum/reagent/nutriment/coco + name = "Coco Powder" + id = "coco" + description = "A fatty, bitter paste made from coco beans." + reagent_state = SOLID + nutriment_factor = 5 + color = "#302000" + +/datum/reagent/nutriment/soysauce + name = "Soysauce" + id = "soysauce" + description = "A salty sauce made from the soy plant." + reagent_state = LIQUID + nutriment_factor = 2 + color = "#792300" + +/datum/reagent/nutriment/ketchup + name = "Ketchup" + id = "ketchup" + description = "Ketchup, catsup, whatever. It's tomato paste." + reagent_state = LIQUID + nutriment_factor = 5 + color = "#731008" + +/datum/reagent/nutriment/rice + name = "Rice" + id = "rice" + description = "Enjoy the great taste of nothing." + reagent_state = SOLID + nutriment_factor = 1 + color = "#FFFFFF" + +/datum/reagent/nutriment/cherryjelly + name = "Cherry Jelly" + id = "cherryjelly" + description = "Totally the best. Only to be spread on foods with excellent lateral symmetry." + reagent_state = LIQUID + nutriment_factor = 1 + color = "#801E28" + +/datum/reagent/nutriment/cornoil + name = "Corn Oil" + id = "cornoil" + description = "An oil derived from various types of corn." + reagent_state = LIQUID + nutriment_factor = 20 + color = "#302000" + +/datum/reagent/nutriment/cornoil/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return + + var/hotspot = (locate(/obj/fire) in T) + if(hotspot && !istype(T, /turf/space)) + var/datum/gas_mixture/lowertemp = T.remove_air(T:air:total_moles) + lowertemp.temperature = max(min(lowertemp.temperature-2000, lowertemp.temperature / 2), 0) + lowertemp.react() + T.assume_air(lowertemp) + del(hotspot) + + if(volume >= 3) + if(T.wet >= 1) + return + T.wet = 1 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") + T.overlays += T.wet_overlay + + spawn(800) // This is terrible and needs to be changed when possible. + if(!T || !istype(T)) return - - soysauce - name = "Soysauce" - id = "soysauce" - description = "A salty sauce made from the soy plant." - reagent_state = LIQUID - nutriment_factor = 2 * REAGENTS_METABOLISM - color = "#792300" // rgb: 121, 35, 0 - - ketchup - name = "Ketchup" - id = "ketchup" - description = "Ketchup, catsup, whatever. It's tomato paste." - reagent_state = LIQUID - nutriment_factor = 5 * REAGENTS_METABOLISM - color = "#731008" // rgb: 115, 16, 8 - - capsaicin - name = "Capsaicin Oil" - id = "capsaicin" - description = "This is what makes chilis hot." - reagent_state = LIQUID - color = "#B31008" // rgb: 179, 16, 8 - - on_mob_life(var/mob/living/M as mob) - if(!M) - M = holder.my_atom - if(!data) - data = 1 - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.species && !(H.species.flags & (NO_PAIN | IS_SYNTHETIC)) ) - switch(data) - if(1 to 2) - H << "\red Your insides feel uncomfortably hot !" - if(2 to 20) - if(prob(5)) - H << "\red Your insides feel uncomfortably hot !" - if(20 to INFINITY) - H.apply_effect(2,AGONY,0) - if(prob(5)) - H.visible_message("[H] [pick("dry heaves!","coughs!","splutters!")]") - H << "\red You feel like your insides are burning !" - else if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature += rand(10,25) - holder.remove_reagent("frostoil", 5) - holder.remove_reagent(src.id, FOOD_METABOLISM) - data++ - ..() + if(T.wet >= 2) return + T.wet = 0 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null - condensedcapsaicin - name = "Condensed Capsaicin" - id = "condensedcapsaicin" - description = "A chemical agent used for self-defense and in police work." - reagent_state = LIQUID - color = "#B31008" // rgb: 179, 16, 8 +/datum/reagent/nutriment/virus_food + name = "Virus Food" + id = "virusfood" + description = "A mixture of water, milk, and oxygen. Virus cells can use this mixture to reproduce." + reagent_state = LIQUID + nutriment_factor = 2 + color = "#899613" - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) - if(!istype(M, /mob/living)) - return - if(method == TOUCH) - if(istype(M, /mob/living/carbon/human)) - var/mob/living/carbon/human/victim = M - var/mouth_covered = 0 - var/eyes_covered = 0 - var/obj/item/safe_thing = null - if( victim.wear_mask ) - if ( victim.wear_mask.flags & MASKCOVERSEYES ) - eyes_covered = 1 - safe_thing = victim.wear_mask - if ( victim.wear_mask.flags & MASKCOVERSMOUTH ) - mouth_covered = 1 - safe_thing = victim.wear_mask - if( victim.head ) - if ( victim.head.flags & MASKCOVERSEYES ) - eyes_covered = 1 - safe_thing = victim.head - if ( victim.head.flags & MASKCOVERSMOUTH ) - mouth_covered = 1 - safe_thing = victim.head - if(victim.glasses) - eyes_covered = 1 - if ( !safe_thing ) - safe_thing = victim.glasses - if ( eyes_covered && mouth_covered ) - victim << "\red Your [safe_thing] protects you from the pepperspray!" - return - else if ( eyes_covered ) // Reduced effects if partially protected - victim << "\red Your [safe_thing] protect you from most of the pepperspray!" - victim.eye_blurry = max(M.eye_blurry, 15) - victim.eye_blind = max(M.eye_blind, 5) - victim.Stun(5) - victim.Weaken(5) - //victim.Paralyse(10) - //victim.drop_item() - return - else if ( mouth_covered ) // Mouth cover is better than eye cover - victim << "\red Your [safe_thing] protects your face from the pepperspray!" - if (!(victim.species && (victim.species.flags & NO_PAIN))) - victim.emote("scream") - victim.eye_blurry = max(M.eye_blurry, 5) - return - else // Oh dear :D - if (!(victim.species && (victim.species.flags & NO_PAIN))) - victim.emote("scream") - victim << "\red You're sprayed directly in the eyes with pepperspray!" - victim.eye_blurry = max(M.eye_blurry, 25) - victim.eye_blind = max(M.eye_blind, 10) - victim.Stun(5) - victim.Weaken(5) - //victim.Paralyse(10) - //victim.drop_item() +/datum/reagent/nutriment/sprinkles + name = "Sprinkles" + id = "sprinkles" + description = "Multi-colored little bits of sugar, commonly found on donuts. Loved by cops." + nutriment_factor = 1 + color = "#FF00FF" - on_mob_life(var/mob/living/M as mob) - if(!M) - M = holder.my_atom - if(!data) - data = 1 - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.species && !(H.species.flags & (NO_PAIN | IS_SYNTHETIC)) ) - switch(data) - if(1) - H << "\red You feel like your insides are burning !" - if(2 to INFINITY) - H.apply_effect(4,AGONY,0) - if(prob(5)) - H.visible_message("[H] [pick("dry heaves!","coughs!","splutters!")]") - H << "\red You feel like your insides are burning !" - else if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature += rand(15,30) - holder.remove_reagent("frostoil", 5) - holder.remove_reagent(src.id, FOOD_METABOLISM) - data++ - ..() +/datum/reagent/nutriment/mint + name = "Mint" + id = "mint" + description = "Also known as Mentha." + reagent_state = LIQUID + color = "#CF3600" + +/datum/reagent/lipozine // The anti-nutriment. + name = "Lipozine" + id = "lipozine" + description = "A chemical compound that causes a powerful fat-burning reaction." + reagent_state = LIQUID + color = "#BBEDA4" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/lipozine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + return + M.nutrition = max(M.nutrition - 10 * removed, 0) + M.overeatduration = 0 + if(M.nutrition < 0) + M.nutrition = 0 + +/* Non-food stuff like condiments */ + +/datum/reagent/sodiumchloride + name = "Table Salt" + id = "sodiumchloride" + description = "A salt made of sodium chloride. Commonly used to season food." + reagent_state = SOLID + color = "#FFFFFF" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/blackpepper + name = "Black Pepper" + id = "blackpepper" + description = "A powder ground from peppercorns. *AAAACHOOO*" + reagent_state = SOLID + color = "#000000" + +/datum/reagent/enzyme + name = "Universal Enzyme" + id = "enzyme" + description = "A universal enzyme used in the preperation of certain chemicals and foods." + reagent_state = LIQUID + color = "#365E30" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + +/datum/reagent/frostoil + name = "Frost Oil" + id = "frostoil" + description = "A special oil that noticably chills the body. Extracted from Ice Peppers." + reagent_state = LIQUID + color = "#B31008" + +/datum/reagent/frostoil/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.bodytemperature = max(M.bodytemperature - 10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0) + if(prob(1)) + M.emote("shiver") + if(istype(M, /mob/living/carbon/slime)) + M.bodytemperature = max(M.bodytemperature - rand(10,20), 0) + holder.remove_reagent("capsaicin", 5) + +/datum/reagent/capsaicin + name = "Capsaicin Oil" + id = "capsaicin" + description = "This is what makes chilis hot." + reagent_state = LIQUID + color = "#B31008" + +/datum/reagent/capsaicin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) + return + if(dose < 5 && (dose == metabolism || prob(5))) + M << "Your insides feel uncomfortably hot!" + if(dose >= 5) + M.apply_effect(2, AGONY, 0) + if(prob(5)) + M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") + if(istype(M, /mob/living/carbon/slime)) + M.bodytemperature += rand(10, 25) + holder.remove_reagent("frostoil", 5) + +/datum/reagent/condensedcapsaicin + name = "Condensed Capsaicin" + id = "condensedcapsaicin" + description = "A chemical agent used for self-defense and in police work." + reagent_state = LIQUID + touch_met = 50 // Get rid of it quickly + color = "#B31008" + +/datum/reagent/condensedcapsaicin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + var/eyes_covered = 0 + var/mouth_covered = 0 + var/obj/item/safe_thing = null + if(istype(M, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & NO_PAIN)) return - - frostoil - name = "Frost Oil" - id = "frostoil" - description = "A special oil that noticably chills the body. Extracted from Ice Peppers." - reagent_state = LIQUID - color = "#B31008" // rgb: 139, 166, 233 - - on_mob_life(var/mob/living/M as mob) - if(!M) - M = holder.my_atom - M.bodytemperature = max(M.bodytemperature - 10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0) - if(prob(1)) - M.emote("shiver") - if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature = max(M.bodytemperature - rand(10,20), 0) - holder.remove_reagent("capsaicin", 5) - holder.remove_reagent(src.id, FOOD_METABOLISM) - ..() + if(H.head) + if(H.head.flags & MASKCOVERSEYES) + eyes_covered = 1 + safe_thing = H.head + if(H.head.flags & MASKCOVERSMOUTH) + mouth_covered = 1 + safe_thing = H.head + if(H.wear_mask) + if(!eyes_covered && H.wear_mask.flags & MASKCOVERSEYES) + eyes_covered = 1 + safe_thing = H.wear_mask + if(!mouth_covered && H.wear_mask.flags & MASKCOVERSMOUTH) + mouth_covered = 1 + safe_thing = H.wear_mask + if(H.glasses) + if(!eyes_covered) + eyes_covered = 1 + if(!safe_thing) + safe_thing = H.glasses + if(eyes_covered && mouth_covered) + M << "Your [safe_thing] protects you from the pepperspray!" + return + else if(eyes_covered) + M << "Your [safe_thing] protect you from most of the pepperspray!" + M.eye_blurry = max(M.eye_blurry, 15) + M.eye_blind = max(M.eye_blind, 5) + M.Stun(5) + M.Weaken(5) + return + else if (mouth_covered) // Mouth cover is better than eye cover + M << "Your [safe_thing] protects your face from the pepperspray!" + M.eye_blurry = max(M.eye_blurry, 5) + return + else // Oh dear :D + M << "You're sprayed directly in the eyes with pepperspray!" + M.eye_blurry = max(M.eye_blurry, 25) + M.eye_blind = max(M.eye_blind, 10) + M.Stun(5) + M.Weaken(5) + return + else + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) return + if(dose == metabolism) + M << "You feel like your insides are burning!" + else + M.apply_effect(4, AGONY, 0) + if(prob(5)) + M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") + if(istype(M, /mob/living/carbon/slime)) + M.bodytemperature += rand(15, 30) + holder.remove_reagent("frostoil", 5) - reaction_turf(var/turf/simulated/T, var/volume) - for(var/mob/living/carbon/slime/M in T) - M.adjustToxLoss(rand(15,30)) +/* Drinks */ - sodiumchloride - name = "Table Salt" - id = "sodiumchloride" - description = "A salt made of sodium chloride. Commonly used to season food." - reagent_state = SOLID - color = "#FFFFFF" // rgb: 255,255,255 - overdose = REAGENTS_OVERDOSE +/datum/reagent/drink + name = "Drink" + id = "drink" + description = "Uh, some kind of drink." + reagent_state = LIQUID + color = "#E78108" + var/nutrition = 0 // Per unit + var/adj_dizzy = 0 // Per tick + var/adj_drowsy = 0 + var/adj_sleepy = 0 + var/adj_temp = 0 - blackpepper - name = "Black Pepper" - id = "blackpepper" - description = "A powder ground from peppercorns. *AAAACHOOO*" - reagent_state = SOLID - // no color (ie, black) +/datum/reagent/drink/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_BLOOD) + M.adjustToxLoss(removed) // Probably not a good idea; not very deadly though + return + if(location == CHEM_INGEST) + M.nutrition += nutrition * removed + M.dizziness = max(0, M.dizziness + adj_dizzy) + M.drowsyness = max(0, M.drowsyness + adj_drowsy) + M.sleeping = max(0, M.sleeping + adj_sleepy) + if(adj_temp > 0 && M.bodytemperature < 310) // 310 is the normal bodytemp. 310.055 + M.bodytemperature = min(310, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + if(adj_temp < 0 && M.bodytemperature > 310) + M.bodytemperature = min(310, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) - coco - name = "Coco Powder" - id = "coco" - description = "A fatty, bitter paste made from coco beans." - reagent_state = SOLID - nutriment_factor = 5 * REAGENTS_METABOLISM - color = "#302000" // rgb: 48, 32, 0 +// Juices - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - ..() +/datum/reagent/drink/banana + name = "Banana Juice" + id = "banana" + description = "The raw essence of a banana." + color = "#C3AF00" + + glass_icon_state = "banana" + glass_name = "glass of banana juice" + glass_desc = "The raw essence of a banana. HONK!" + +/datum/reagent/drink/berryjuice + name = "Berry Juice" + id = "berryjuice" + description = "A delicious blend of several different kinds of berries." + color = "#990066" + + glass_icon_state = "berryjuice" + glass_name = "glass of berry juice" + glass_desc = "Berry juice. Or maybe it's jam. Who cares?" + +/datum/reagent/drink/carrotjuice + name = "Carrot juice" + id = "carrotjuice" + description = "It is just like a carrot but without crunching." + color = "#FF8C00" // rgb: 255, 140, 0 + + glass_icon_state = "carrotjuice" + glass_name = "glass of carrot juice" + glass_desc = "It is just like a carrot but without crunching." + +/datum/reagent/drink/carrotjuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_INGEST) + M.reagents.add_reagent("imidazoline", removed * 0.2) + +/datum/reagent/drink/grapejuice + name = "Grape Juice" + id = "grapejuice" + description = "It's grrrrrape!" + color = "#863333" + + glass_icon_state = "grapejuice" + glass_name = "glass of grape juice" + glass_desc = "It's grrrrrape!" + +/datum/reagent/drink/lemonjuice + name = "Lemon Juice" + id = "lemonjuice" + description = "This juice is VERY sour." + color = "#AFAF00" + + glass_icon_state = "lemonjuice" + glass_name = "glass of lemon juice" + glass_desc = "Sour..." + +/datum/reagent/drink/limejuice + name = "Lime Juice" + id = "limejuice" + description = "The sweet-sour juice of limes." + color = "#365E30" + + glass_icon_state = "glass_green" + glass_name = "glass of lime juice" + glass_desc = "A glass of sweet-sour lime juice" + +/datum/reagent/drink/limejuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.adjustToxLoss(-0.5 * removed) + +/datum/reagent/drink/orangejuice + name = "Orange juice" + id = "orangejuice" + description = "Both delicious AND rich in Vitamin C, what more do you need?" + color = "#E78108" + + glass_icon_state = "glass_orange" + glass_name = "glass of orange juice" + glass_desc = "Vitamins! Yay!" + +/datum/reagent/drink/orangejuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.adjustOxyLoss(-2 * removed) + +/datum/reagent/toxin/poisonberryjuice // It has more in common with toxins than drinks... but it's a juice + name = "Poison Berry Juice" + id = "poisonberryjuice" + description = "A tasty juice blended from various kinds of very deadly and toxic berries." + color = "#863353" + strength = 5 + + glass_icon_state = "poisonberryjuice" + glass_name = "glass of poison berry juice" + glass_desc = "A glass of deadly juice." + +/datum/reagent/drink/potato_juice + name = "Potato Juice" + id = "potato" + description = "Juice of the potato. Bleh." + nutrition = 2 + color = "#302000" + + glass_icon_state = "glass_brown" + glass_name = "glass of potato juice" + glass_desc = "Juice from a potato. Bleh." + +/datum/reagent/drink/tomatojuice + name = "Tomato Juice" + id = "tomatojuice" + description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?" + color = "#731008" + + glass_icon_state = "glass_red" + glass_name = "glass of tomato juice" + glass_desc = "Are you sure this is tomato juice?" + +/datum/reagent/drink/tomatojuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.heal_organ_damage(0, 0.5 * removed) + +/datum/reagent/drink/watermelonjuice + name = "Watermelon Juice" + id = "watermelonjuice" + description = "Delicious juice made from watermelon." + color = "#B83333" + + glass_icon_state = "glass_red" + glass_name = "glass of watermelon juice" + glass_desc = "Delicious juice made from watermelon." + +// Everything else + +/datum/reagent/drink/milk + name = "Milk" + id = "milk" + description = "An opaque white liquid produced by the mammary glands of mammals." + color = "#DFDFDF" + + glass_icon_state = "glass_white" + glass_name = "glass of milk" + glass_desc = "White and nutritious goodness!" + +/datum/reagent/drink/milk/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.heal_organ_damage(0.5 * removed, 0) + holder.remove_reagent("capsaicin", 10 * removed) + +/datum/reagent/drink/milk/cream + name = "Cream" + id = "cream" + description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?" + color = "#DFD7AF" + + glass_icon_state = "glass_white" + glass_name = "glass of cream" + glass_desc = "Ewwww..." + +/datum/reagent/drink/milk/soymilk + name = "Soy Milk" + id = "soymilk" + description = "An opaque white liquid made from soybeans." + color = "#DFDFC7" + + glass_icon_state = "glass_white" + glass_name = "glass of soy milk" + glass_desc = "White and nutritious soy goodness!" + +/datum/reagent/drink/tea + name = "Tea" + id = "tea" + description = "Tasty black tea, it has antioxidants, it's good for you!" + color = "#101000" + adj_dizzy = -2 + adj_drowsy = -1 + adj_sleepy = -3 + adj_temp = 20 + + glass_icon_state = "bigteacup" + glass_name = "cup of tea" + glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" + +/datum/reagent/drink/tea/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.adjustToxLoss(-0.5 * removed) + +/datum/reagent/drink/tea/icetea + name = "Iced Tea" + id = "icetea" + description = "No relation to a certain rap artist/ actor." + color = "#104038" // rgb: 16, 64, 56 + adj_temp = -5 + + glass_icon_state = "icedteaglass" + glass_name = "glass of iced tea" + glass_desc = "No relation to a certain rap artist/ actor." + glass_center_of_mass = list("x"=15, "y"=10) + +/datum/reagent/drink/coffee + name = "Coffee" + id = "coffee" + description = "Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant." + color = "#482000" + adj_dizzy = -5 + adj_drowsy = -3 + adj_sleepy = -2 + adj_temp = 25 + + glass_icon_state = "hot_coffee" + glass_name = "cup of coffee" + glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." + +/datum/reagent/drink/coffee/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.make_jittery(5) + if(adj_temp > 0) + holder.remove_reagent("frostoil", 10 * removed) + +/datum/reagent/drink/coffee/icecoffee + name = "Iced Coffee" + id = "icecoffee" + description = "Coffee and ice, refreshing and cool." + color = "#102838" + adj_temp = -5 + + glass_icon_state = "icedcoffeeglass" + glass_name = "glass of iced coffee" + glass_desc = "A drink to perk you up and refresh you!" + +/datum/reagent/drink/coffee/soy_latte + name = "Soy Latte" + id = "soy_latte" + description = "A nice and tasty beverage while you are reading your hippie books." + color = "#664300" + adj_temp = 5 + + glass_icon_state = "soy_latte" + glass_name = "glass of soy latte" + glass_desc = "A nice and refrshing beverage while you are reading." + glass_center_of_mass = list("x"=15, "y"=9) + +/datum/reagent/drink/coffee/soy_latte/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.heal_organ_damage(0.5 * removed, 0) + +/datum/reagent/drink/coffee/cafe_latte + name = "Cafe Latte" + id = "cafe_latte" + description = "A nice, strong and tasty beverage while you are reading." + color = "#664300" // rgb: 102, 67, 0 + adj_temp = 5 + + glass_icon_state = "cafe_latte" + glass_name = "glass of cafe latte" + glass_desc = "A nice, strong and refreshing beverage while you are reading." + glass_center_of_mass = list("x"=15, "y"=9) + +/datum/reagent/drink/coffee/cafe_latte/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.heal_organ_damage(0.5 * removed, 0) + +/datum/reagent/drink/hot_coco + name = "Hot Chocolate" + id = "hot_coco" + description = "Made with love! And cocoa beans." + reagent_state = LIQUID + color = "#403010" + nutrition = 2 + adj_temp = 5 + + glass_icon_state = "chocolateglass" + glass_name = "glass of hot chocolate" + glass_desc = "Made with love! And cocoa beans." + +/datum/reagent/drink/sodawater + name = "Soda Water" + id = "sodawater" + description = "A can of club soda. Why not make a scotch and soda?" + color = "#619494" + adj_dizzy = -5 + adj_drowsy = -3 + adj_temp = -5 + + glass_icon_state = "glass_clear" + glass_name = "glass of soda water" + glass_desc = "Soda water. Why not make a scotch and soda?" + +/datum/reagent/drink/grapesoda + name = "Grape Soda" + id = "grapesoda" + description = "Grapes made into a fine drank." + color = "#421C52" + adj_drowsy = -3 + + glass_icon_state = "gsodaglass" + glass_name = "glass of grape soda" + glass_desc = "Looks like a delicious drink!" + +/datum/reagent/drink/tonic + name = "Tonic Water" + id = "tonic" + description = "It tastes strange but at least the quinine keeps the Space Malaria at bay." + color = "#664300" + adj_dizzy = -5 + adj_drowsy = -3 + adj_sleepy = -2 + adj_temp = -5 + + glass_icon_state = "glass_clear" + glass_name = "glass of tonic water" + glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away." + +/datum/reagent/drink/lemonade + name = "Lemonade" + description = "Oh the nostalgia..." + id = "lemonade" + color = "#FFFF00" + adj_temp = -5 + + glass_icon_state = "lemonadeglass" + glass_name = "glass of lemonade" + glass_desc = "Oh the nostalgia..." + +/datum/reagent/drink/kiraspecial + name = "Kira Special" + description = "Long live the guy who everyone had mistaken for a girl. Baka!" + id = "kiraspecial" + color = "#CCCC99" + adj_temp = -5 + + glass_icon_state = "kiraspecial" + glass_name = "glass of Kira Special" + glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/drink/brownstar + name = "Brown Star" + description = "It's not what it sounds like..." + id = "brownstar" + color = "#9F3400" + adj_temp = -2 + + glass_icon_state = "brownstar" + glass_name = "glass of Brown Star" + glass_desc = "It's not what it sounds like..." + +/datum/reagent/drink/milkshake + name = "Milkshake" + description = "Glorious brainfreezing mixture." + id = "milkshake" + color = "#AEE5E4" + adj_temp = -9 + + glass_icon_state = "milkshake" + glass_name = "glass of milkshake" + glass_desc = "Glorious brainfreezing mixture." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/drink/rewriter + name = "Rewriter" + description = "The secret of the sanctuary of the Libarian..." + id = "rewriter" + color = "#485000" + adj_temp = -5 + + glass_icon_state = "rewriter" + glass_name = "glass of Rewriter" + glass_desc = "The secret of the sanctuary of the Libarian..." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/drink/rewriter/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.make_jittery(5) + +/datum/reagent/drink/nuka_cola + name = "Nuka Cola" + id = "nuka_cola" + description = "Cola, cola never changes." + color = "#100800" + adj_temp = -5 + adj_sleepy = -2 + + glass_icon_state = "nuka_colaglass" + glass_name = "glass of Nuka-Cola" + glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" + glass_center_of_mass = list("x"=16, "y"=6) + +/datum/reagent/drink/nuka_cola/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.add_chemical_effect(CE_SPEEDBOOST, 1) + M.make_jittery(20) + M.druggy = max(M.druggy, 30) + M.dizziness += 5 + M.drowsyness = 0 + +/datum/reagent/drink/grenadine + name = "Grenadine Syrup" + id = "grenadine" + description = "Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways?" + color = "#FF004F" + + glass_icon_state = "grenadineglass" + glass_name = "glass of grenadine syrup" + glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks." + glass_center_of_mass = list("x"=17, "y"=6) + +/datum/reagent/drink/space_cola + name = "Space Cola" + id = "cola" + description = "A refreshing beverage." + reagent_state = LIQUID + color = "#100800" + adj_drowsy = -3 + adj_temp = -5 + + glass_icon_state = "glass_brown" + glass_name = "glass of Space Cola" + glass_desc = "A glass of refreshing Space Cola" + +/datum/reagent/drink/spacemountainwind + name = "Mountain Wind" + id = "spacemountainwind" + description = "Blows right through you like a space wind." + color = "#102000" + adj_drowsy = -7 + adj_sleepy = -1 + adj_temp = -5 + + glass_icon_state = "Space_mountain_wind_glass" + glass_name = "glass of Space Mountain Wind" + glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind." + +/datum/reagent/drink/dr_gibb + name = "Dr. Gibb" + id = "dr_gibb" + description = "A delicious blend of 42 different flavours" + color = "#102000" + adj_drowsy = -6 + adj_temp = -5 + + glass_icon_state = "dr_gibb_glass" + glass_name = "glass of Dr. Gibb" + glass_desc = "Dr. Gibb. Not as dangerous as the name might imply." + +/datum/reagent/drink/space_up + name = "Space-Up" + id = "space_up" + description = "Tastes like a hull breach in your mouth." + color = "#202800" + adj_temp = -8 + + glass_icon_state = "space-up_glass" + glass_name = "glass of Space-up" + glass_desc = "Space-up. It helps keep your cool." + +/datum/reagent/drink/lemon_lime + name = "Lemon Lime" + description = "A tangy substance made of 0.5% natural citrus!" + id = "lemon_lime" + color = "#878F00" + adj_temp = -8 + + glass_icon_state = "lemonlime" + glass_name = "glass of lemon lime soda" + glass_desc = "A tangy substance made of 0.5% natural citrus!" + +/datum/reagent/drink/doctor_delight + name = "The Doctor's Delight" + id = "doctorsdelight" + description = "A gulp a day keeps the MediBot away. That's probably for the best." + reagent_state = LIQUID + color = "#FF8CFF" + nutrition = 1 + + glass_icon_state = "doctorsdelightglass" + glass_name = "glass of The Doctor's Delight" + glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/drink/doctor_delight/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.adjustOxyLoss(-4 * removed) + M.heal_organ_damage(2 * removed, 2 * removed) + M.adjustToxLoss(-2 * removed) + if(M.dizziness) + M.dizziness = max(0, M.dizziness - 15) + if(M.confused) + M.confused = max(0, M.confused - 5) + +/datum/reagent/drink/dry_ramen + name = "Dry Ramen" + id = "dry_ramen" + description = "Space age food, since August 25, 1958. Contains dried noodles, vegetables, and chemicals that boil in contact with water." + reagent_state = SOLID + nutrition = 1 + color = "#302000" + +/datum/reagent/drink/hot_ramen + name = "Hot Ramen" + id = "hot_ramen" + description = "The noodles are boiled, the flavors are artificial, just like being back in school." + reagent_state = LIQUID + color = "#302000" + nutrition = 5 + adj_temp = 5 + +/datum/reagent/drink/hell_ramen + name = "Hell Ramen" + id = "hell_ramen" + description = "The noodles are boiled, the flavors are artificial, just like being back in school." + reagent_state = LIQUID + color = "#302000" + nutrition = 5 + +/datum/reagent/drink/hell_ramen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.bodytemperature += 10 * TEMPERATURE_DAMAGE_COEFFICIENT + +/datum/reagent/drink/ice + name = "Ice" + id = "ice" + description = "Frozen water, your dentist wouldn't like you chewing this." + reagent_state = SOLID + color = "#619494" + adj_temp = -5 + + glass_icon_state = "iceglass" + glass_name = "glass of ice" + glass_desc = "Generally, you're supposed to put something else in there too..." + +/datum/reagent/drink/nothing + name = "Nothing" + id = "nothing" + description = "Absolutely nothing." + + glass_icon_state = "nothing" + glass_name = "glass of nothing" + glass_desc = "Absolutely nothing." + +/* Alcohol */ + +// Basic + +/datum/reagent/ethanol/absinthe + name = "Absinthe" + id = "absinthe" + description = "Watch out that the Green Fairy doesn't come for you!" + color = "#33EE00" + strength = 12 + + glass_icon_state = "absintheglass" + glass_name = "glass of absinthe" + glass_desc = "Wormwood, anise, oh my." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/ale + name = "Ale" + id = "ale" + description = "A dark alchoholic beverage made by malted barley and yeast." + color = "#664300" + strength = 50 + + glass_icon_state = "aleglass" + glass_name = "glass of ale" + glass_desc = "A freezing pint of delicious ale" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/beer + name = "Beer" + id = "beer" + description = "An alcoholic beverage made from malted grains, hops, yeast, and water." + color = "#664300" + strength = 50 + nutriment_factor = 1 + + glass_icon_state = "beerglass" + glass_name = "glass of beer" + glass_desc = "A freezing pint of beer" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/beer/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.jitteriness = max(M.jitteriness - 3, 0) + +/datum/reagent/ethanol/bluecuracao + name = "Blue Curacao" + id = "bluecuracao" + description = "Exotically blue, fruity drink, distilled from oranges." + color = "#0000CD" + strength = 15 + + glass_icon_state = "curacaoglass" + glass_name = "glass of blue curacao" + glass_desc = "Exotically blue, fruity drink, distilled from oranges." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/cognac + name = "Cognac" + id = "cognac" + description = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. Classy as fornication." + color = "#AB3C05" + strength = 15 + + glass_icon_state = "cognacglass" + glass_name = "glass of cognac" + glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this." + glass_center_of_mass = list("x"=16, "y"=6) + +/datum/reagent/ethanol/deadrum + name = "Deadrum" + id = "deadrum" + description = "Popular with the sailors. Not very popular with everyone else." + color = "#664300" + strength = 50 + + glass_icon_state = "rumglass" + glass_name = "glass of rum" + glass_desc = "Now you want to Pray for a pirate suit, don't you?" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/deadrum/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.dizziness +=5 + +/datum/reagent/ethanol/gin + name = "Gin" + id = "gin" + description = "It's gin. In space. I say, good sir." + color = "#664300" + strength = 50 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of gin" + glass_desc = "A crystal clear glass of Griffeater gin." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/kahlua + name = "Kahlua" + id = "kahlua" + description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!" + color = "#664300" + strength = 15 + + glass_icon_state = "kahluaglass" + glass_name = "glass of RR coffee liquor" + glass_desc = "DAMN, THIS THING LOOKS ROBUST" + glass_center_of_mass = list("x"=15, "y"=7) + +/datum/reagent/ethanol/kahlua/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.dizziness = max(0, M.dizziness - 5) + M.drowsyness = max(0, M.drowsyness - 3) + M.sleeping = max(0, M.sleeping - 2) + if (M.bodytemperature > 310) + M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) + M.make_jittery(5) + +/datum/reagent/ethanol/melonliquor + name = "Melon Liquor" + id = "melonliquor" + description = "A relatively sweet and fruity 46 proof liquor." + color = "#138808" // rgb: 19, 136, 8 + strength = 50 + + glass_icon_state = "emeraldglass" + glass_name = "glass of melon liquor" + glass_desc = "A relatively sweet and fruity 46 proof liquor." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/rum + name = "Rum" + id = "rum" + description = "Yohoho and all that." + color = "#664300" + strength = 15 + + glass_icon_state = "rumglass" + glass_name = "glass of rum" + glass_desc = "Now you want to Pray for a pirate suit, don't you?" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/sake + name = "Sake" + id = "sake" + description = "Anime's favorite drink." + color = "#664300" + strength = 25 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of sake" + glass_desc = "A glass of sake." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/tequilla + name = "Tequila" + id = "tequilla" + description = "A strong and mildly flavoured, mexican produced spirit. Feeling thirsty hombre?" + color = "#FFFF91" + strength = 25 + + glass_icon_state = "tequillaglass" + glass_name = "glass of Tequilla" + glass_desc = "Now all that's missing is the weird colored shades!" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/thirteenloko + name = "Thirteen Loko" + id = "thirteenloko" + description = "A potent mixture of caffeine and alcohol." + color = "#102000" + strength = 25 + nutriment_factor = 1 + + glass_icon_state = "thirteen_loko_glass" + glass_name = "glass of Thirteen Loko" + glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." + +/datum/reagent/ethanol/thirteenloko/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + return + M.drowsyness = max(0, M.drowsyness - 7) + if (M.bodytemperature > 310) + M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) + M.make_jittery(5) + +/datum/reagent/ethanol/vermouth + name = "Vermouth" + id = "vermouth" + description = "You suddenly feel a craving for a martini..." + color = "#91FF91" // rgb: 145, 255, 145 + strength = 15 + + glass_icon_state = "vermouthglass" + glass_name = "glass of vermouth" + glass_desc = "You wonder why you're even drinking this straight." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/vodka + name = "Vodka" + id = "vodka" + description = "Number one drink AND fueling choice for Russians worldwide." + color = "#0064C8" // rgb: 0, 100, 200 + strength = 15 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of vodka" + glass_desc = "The glass contain wodka. Xynta." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/vodka/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.radiation = max(M.radiation - 1 * removed, 0) + +/datum/reagent/ethanol/whiskey + name = "Whiskey" + id = "whiskey" + description = "A superb and well-aged single-malt whiskey. Damn." + color = "#664300" + strength = 25 + + glass_icon_state = "whiskeyglass" + glass_name = "glass of whiskey" + glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/wine + name = "Wine" + id = "wine" + description = "An premium alchoholic beverage made from distilled grape juice." + color = "#7E4043" // rgb: 126, 64, 67 + strength = 15 + + glass_icon_state = "wineglass" + glass_name = "glass of wine" + glass_desc = "A very classy looking drink." + glass_center_of_mass = list("x"=15, "y"=7) + +// Cocktails + +/datum/reagent/ethanol/acid_spit + name = "Acid Spit" + id = "acidspit" + description = "A drink for the daring, can be deadly if incorrectly prepared!" + reagent_state = LIQUID + color = "#365000" + strength = 30 + + glass_icon_state = "acidspitglass" + glass_name = "glass of Acid Spit" + glass_desc = "A drink from Nanotrasen. Made from live aliens." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/alliescocktail + name = "Allies Cocktail" + id = "alliescocktail" + description = "A drink made from your allies, not as sweet as when made from your enemies." + color = "#664300" + strength = 25 + + glass_icon_state = "alliescocktail" + glass_name = "glass of Allies cocktail" + glass_desc = "A drink made from your allies." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/aloe + name = "Aloe" + id = "aloe" + description = "So very, very, very good." + color = "#664300" + strength = 15 + + glass_icon_state = "aloe" + glass_name = "glass of Aloe" + glass_desc = "Very, very, very good." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/amasec + name = "Amasec" + id = "amasec" + description = "Official drink of the NanoTrasen Gun-Club!" + reagent_state = LIQUID + color = "#664300" + strength = 25 + + glass_icon_state = "amasecglass" + glass_name = "glass of Amasec" + glass_desc = "Always handy before COMBAT!!!" + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/andalusia + name = "Andalusia" + id = "andalusia" + description = "A nice, strangely named drink." + color = "#664300" + strength = 15 + + glass_icon_state = "andalusia" + glass_name = "glass of Andalusia" + glass_desc = "A nice, strange named drink." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/antifreeze + name = "Anti-freeze" + id = "antifreeze" + description = "Ultimate refreshment." + color = "#664300" + strength = 12 + adj_temp = 20 + targ_temp = 330 + + glass_icon_state = "antifreeze" + glass_name = "glass of Anti-freeze" + glass_desc = "The ultimate refreshment." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/atomicbomb + name = "Atomic Bomb" + id = "atomicbomb" + description = "Nuclear proliferation never tasted so good." + reagent_state = LIQUID + color = "#666300" + strength = 10 + druggy = 50 + + glass_icon_state = "atomicbombglass" + glass_name = "glass of Atomic Bomb" + glass_desc = "Nanotrasen cannot take legal responsibility for your actions after imbibing." + glass_center_of_mass = list("x"=15, "y"=7) + +/datum/reagent/ethanol/b52 + name = "B-52" + id = "b52" + description = "Coffee, Irish Cream, and cognac. You will get bombed." + color = "#664300" + strength = 12 + + glass_icon_state = "b52glass" + glass_name = "glass of B-52" + glass_desc = "Kahlua, Irish cream, and congac. You will get bombed." + +/datum/reagent/ethanol/bahama_mama + name = "Bahama mama" + id = "bahama_mama" + description = "Tropical cocktail." + color = "#FF7F3B" + strength = 25 + + glass_icon_state = "bahama_mama" + glass_name = "glass of Bahama Mama" + glass_desc = "Tropical cocktail" + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/bananahonk + name = "Banana Mama" + id = "bananahonk" + description = "A drink from Clown Heaven." + nutriment_factor = 1 + color = "#FFFF91" + strength = 12 + + glass_icon_state = "bananahonkglass" + glass_name = "glass of Banana Honk" + glass_desc = "A drink from Banana Heaven." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/barefoot + name = "Barefoot" + id = "barefoot" + description = "Barefoot and pregnant" + color = "#664300" + strength = 30 + + glass_icon_state = "b&p" + glass_name = "glass of Barefoot" + glass_desc = "Barefoot and pregnant" + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/beepsky_smash + name = "Beepsky Smash" + id = "beepskysmash" + description = "Deny drinking this and prepare for THE LAW." + reagent_state = LIQUID + color = "#664300" + strength = 12 + + glass_icon_state = "beepskysmashglass" + glass_name = "Beepsky Smash" + glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." + glass_center_of_mass = list("x"=18, "y"=10) + +/datum/reagent/ethanol/beepsky_smash/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.Stun(2) + +/datum/reagent/ethanol/bilk + name = "Bilk" + id = "bilk" + description = "This appears to be beer mixed with milk. Disgusting." + color = "#895C4C" + strength = 50 + nutriment_factor = 2 + + glass_icon_state = "glass_brown" + glass_name = "glass of bilk" + glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis." + +/datum/reagent/ethanol/black_russian + name = "Black Russian" + id = "blackrussian" + description = "For the lactose-intolerant. Still as classy as a White Russian." + color = "#360000" + strength = 15 + + glass_icon_state = "blackrussianglass" + glass_name = "glass of Black Russian" + glass_desc = "For the lactose-intolerant. Still as classy as a White Russian." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/bloody_mary + name = "Bloody Mary" + id = "bloodymary" + description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice." + color = "#664300" + strength = 15 + + glass_icon_state = "bloodymaryglass" + glass_name = "glass of Bloody Mary" + glass_desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder." + +/datum/reagent/ethanol/booger + name = "Booger" + id = "booger" + description = "Ewww..." + color = "#8CFF8C" + strength = 30 + + glass_icon_state = "booger" + glass_name = "glass of Booger" + glass_desc = "Ewww..." + +/datum/reagent/ethanol/brave_bull + name = "Brave Bull" + id = "bravebull" + description = "It's just as effective as Dutch-Courage!" + color = "#664300" + strength = 15 + + glass_icon_state = "bravebullglass" + glass_name = "glass of Brave Bull" + glass_desc = "Tequilla and coffee liquor, brought together in a mouthwatering mixture. Drink up." + glass_center_of_mass = list("x"=15, "y"=8) + +/datum/reagent/ethanol/changelingsting + name = "Changeling Sting" + id = "changelingsting" + description = "You take a tiny sip and feel a burning sensation..." + color = "#2E6671" + strength = 10 + + glass_icon_state = "changelingsting" + glass_name = "glass of Changeling Sting" + glass_desc = "A stingy drink." + +/datum/reagent/ethanol/classicmartini + name = "Classic Martini" + id = "classicmartini" + description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious." + color = "#664300" + strength = 25 + + glass_icon_state = "martiniglass" + glass_name = "glass of classic martini" + glass_desc = "Damn, the bartender even stirred it, not shook it." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/cuba_libre + name = "Cuba Libre" + id = "cubalibre" + description = "Rum, mixed with cola. Viva la revolucion." + color = "#3E1B00" + strength = 30 + + glass_icon_state = "cubalibreglass" + glass_name = "glass of Cuba Libre" + glass_desc = "A classic mix of rum and cola." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/demonsblood + name = "Demons Blood" + id = "demonsblood" + description = "AHHHH!!!!" + color = "#820000" + strength = 15 + + glass_icon_state = "demonsblood" + glass_name = "glass of Demons' Blood" + glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up." + glass_center_of_mass = list("x"=16, "y"=2) + +/datum/reagent/ethanol/devilskiss + name = "Devils Kiss" + id = "devilskiss" + description = "Creepy time!" + color = "#A68310" + strength = 15 + + glass_icon_state = "devilskiss" + glass_name = "glass of Devil's Kiss" + glass_desc = "Creepy time!" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/driestmartini + name = "Driest Martini" + id = "driestmartini" + description = "Only for the experienced. You think you see sand floating in the glass." + nutriment_factor = 1 + color = "#2E6671" + strength = 12 + + glass_icon_state = "driestmartiniglass" + glass_name = "glass of Driest Martini" + glass_desc = "Only for the experienced. You think you see sand floating in the glass." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/ginfizz + name = "Gin Fizz" + id = "ginfizz" + description = "Refreshingly lemony, deliciously dry." + color = "#664300" + strength = 30 + + glass_icon_state = "ginfizzglass" + glass_name = "glass of gin fizz" + glass_desc = "Refreshingly lemony, deliciously dry." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/grog + name = "Grog" + id = "grog" + description = "Watered down rum, NanoTrasen approves!" + reagent_state = LIQUID + color = "#664300" + strength = 100 + + glass_icon_state = "grogglass" + glass_name = "glass of grog" + glass_desc = "A fine and cepa drink for Space." + +/datum/reagent/ethanol/erikasurprise + name = "Erika Surprise" + id = "erikasurprise" + description = "The surprise is, it's green!" + color = "#2E6671" + strength = 15 + + glass_icon_state = "erikasurprise" + glass_name = "glass of Erika Surprise" + glass_desc = "The surprise is, it's green!" + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/gargle_blaster + name = "Pan-Galactic Gargle Blaster" + id = "gargleblaster" + description = "Whoah, this stuff looks volatile!" + reagent_state = LIQUID + color = "#664300" + strength = 10 + + glass_icon_state = "gargleblasterglass" + glass_name = "glass of Pan-Galactic Gargle Blaster" + glass_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy." + glass_center_of_mass = list("x"=17, "y"=6) + +/datum/reagent/ethanol/gintonic + name = "Gin and Tonic" + id = "gintonic" + description = "An all time classic, mild cocktail." + color = "#664300" + strength = 50 + + glass_icon_state = "gintonicglass" + glass_name = "glass of gin and tonic" + glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/goldschlager + name = "Goldschlager" + id = "goldschlager" + description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break." + color = "#664300" + strength = 15 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of Goldschlager" + glass_desc = "100 proof that teen girls will drink anything with gold in it." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/hippies_delight + name = "Hippies' Delight" + id = "hippiesdelight" + description = "You just don't get it maaaan." + reagent_state = LIQUID + color = "#664300" + strength = 15 + druggy = 50 + + glass_icon_state = "hippiesdelightglass" + glass_name = "glass of Hippie's Delight" + glass_desc = "A drink enjoyed by people during the 1960's." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/hooch + name = "Hooch" + id = "hooch" + description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" + color = "#664300" + strength = 25 + toxicity = 2 + + glass_icon_state = "glass_brown2" + glass_name = "glass of Hooch" + glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." + +/datum/reagent/ethanol/iced_beer + name = "Iced Beer" + id = "iced_beer" + description = "A beer which is so cold the air around it freezes." + color = "#664300" + strength = 50 + adj_temp = -20 + targ_temp = 270 + + glass_icon_state = "iced_beerglass" + glass_name = "glass of iced beer" + glass_desc = "A beer so frosty, the air around it freezes." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/irishcarbomb + name = "Irish Car Bomb" + id = "irishcarbomb" + description = "Mmm, tastes like chocolate cake..." + color = "#2E6671" + strength = 15 + + glass_icon_state = "irishcarbomb" + glass_name = "glass of Irish Car Bomb" + glass_desc = "An irish car bomb." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/irishcoffee + name = "Irish Coffee" + id = "irishcoffee" + description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning." + color = "#664300" + strength = 15 + + glass_icon_state = "irishcoffeeglass" + glass_name = "glass of Irish coffee" + glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning." + glass_center_of_mass = list("x"=15, "y"=10) + +/datum/reagent/ethanol/irish_cream + name = "Irish Cream" + id = "irishcream" + description = "Whiskey-imbued cream, what else would you expect from the Irish." + color = "#664300" + strength = 25 + + glass_icon_state = "irishcreamglass" + glass_name = "glass of Irish cream" + glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?" + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/longislandicedtea + name = "Long Island Iced Tea" + id = "longislandicedtea" + description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." + color = "#664300" + strength = 12 + + glass_icon_state = "longislandicedteaglass" + glass_name = "glass of Long Island iced tea" + glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/manhattan + name = "Manhattan" + id = "manhattan" + description = "The Detective's undercover drink of choice. He never could stomach gin..." + color = "#664300" + strength = 15 + + glass_icon_state = "manhattanglass" + glass_name = "glass of Manhattan" + glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/manhattan_proj + name = "Manhattan Project" + id = "manhattan_proj" + description = "A scientist's drink of choice, for pondering ways to blow up the station." + color = "#664300" + strength = 10 + druggy = 30 + + glass_icon_state = "proj_manhattanglass" + glass_name = "glass of Manhattan Project" + glass_desc = "A scienitst drink of choice, for thinking how to blow up the station." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/manly_dorf + name = "The Manly Dorf" + id = "manlydorf" + description = "Beer and Ale, brought together in a delicious mix. Intended for true men only." + color = "#664300" + strength = 25 + + glass_icon_state = "manlydorfglass" + glass_name = "glass of The Manly Dorf" + glass_desc = "A manly concotion made from Ale and Beer. Intended for true men only." + +/datum/reagent/ethanol/margarita + name = "Margarita" + id = "margarita" + description = "On the rocks with salt on the rim. Arriba~!" + color = "#8CFF8C" + strength = 15 + + glass_icon_state = "margaritaglass" + glass_name = "glass of margarita" + glass_desc = "On the rocks with salt on the rim. Arriba~!" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/mead + name = "Mead" + id = "mead" + description = "A Viking's drink, though a cheap one." + reagent_state = LIQUID + color = "#664300" + strength = 30 + nutriment_factor = 1 + + glass_icon_state = "meadglass" + glass_name = "glass of mead" + glass_desc = "A Viking's beverage, though a cheap one." + glass_center_of_mass = list("x"=17, "y"=10) + +/datum/reagent/ethanol/moonshine + name = "Moonshine" + id = "moonshine" + description = "You've really hit rock bottom now... your liver packed its bags and left last night." + color = "#664300" + strength = 12 + + glass_icon_state = "glass_clear" + glass_name = "glass of moonshine" + glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." + +/datum/reagent/ethanol/neurotoxin + name = "Neurotoxin" + id = "neurotoxin" + description = "A strong neurotoxin that puts the subject into a death-like state." + reagent_state = LIQUID + color = "#2E2E61" + strength = 10 + + glass_icon_state = "neurotoxinglass" + glass_name = "glass of Neurotoxin" + glass_desc = "A drink that is guaranteed to knock you silly." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/neurotoxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.Weaken(3) + +/datum/reagent/ethanol/patron + name = "Patron" + id = "patron" + description = "Tequila with silver in it, a favorite of alcoholic women in the club scene." + color = "#585840" + strength = 30 + + glass_icon_state = "patronglass" + glass_name = "glass of Patron" + glass_desc = "Drinking patron in the bar, with all the subpar ladies." + glass_center_of_mass = list("x"=7, "y"=8) + +/datum/reagent/ethanol/pwine + name = "Poison Wine" + id = "pwine" + description = "Is this even wine? Toxic! Hallucinogenic! Probably consumed in boatloads by your superiors!" + color = "#000000" + strength = 10 + druggy = 50 + halluci = 10 + + glass_icon_state = "pwineglass" + glass_name = "glass of ???" + glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/pwine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(dose > 30) + M.adjustToxLoss(2 * removed) + if(dose > 60 && ishuman(M) && prob(5)) + var/mob/living/carbon/human/H = M + var/datum/organ/internal/heart/L = H.internal_organs_by_name["heart"] + if (L && istype(L)) + if(dose < 120) + L.take_damage(10 * removed, 0) + else + L.take_damage(100, 0) + +/datum/reagent/ethanol/red_mead + name = "Red Mead" + id = "red_mead" + description = "The true Viking's drink! Even though it has a strange red color." + color = "#C73C00" + strength = 30 + + glass_icon_state = "red_meadglass" + glass_name = "glass of red mead" + glass_desc = "A true Viking's beverage, though its color is strange." + glass_center_of_mass = list("x"=17, "y"=10) + +/datum/reagent/ethanol/sbiten + name = "Sbiten" + id = "sbiten" + description = "A spicy Vodka! Might be a little hot for the little guys!" + color = "#664300" + strength = 15 + adj_temp = 50 + targ_temp = 360 + + glass_icon_state = "sbitenglass" + glass_name = "glass of Sbiten" + glass_desc = "A spicy mix of Vodka and Spice. Very hot." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/screwdrivercocktail + name = "Screwdriver" + id = "screwdrivercocktail" + description = "Vodka, mixed with plain ol' orange juice. The result is surprisingly delicious." + color = "#A68310" + strength = 15 + + glass_icon_state = "screwdriverglass" + glass_name = "glass of Screwdriver" + glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer." + glass_center_of_mass = list("x"=15, "y"=10) + +/datum/reagent/ethanol/silencer + name = "Silencer" + id = "silencer" + description = "A drink from Mime Heaven." + nutriment_factor = 1 + color = "#664300" + strength = 12 + + glass_icon_state = "silencerglass" + glass_name = "glass of Silencer" + glass_desc = "A drink from mime Heaven." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/singulo + name = "Singulo" + id = "singulo" + description = "A blue-space beverage!" + color = "#2E6671" + strength = 10 + + glass_icon_state = "singulo" + glass_name = "glass of Singulo" + glass_desc = "A blue-space beverage." + glass_center_of_mass = list("x"=17, "y"=4) + +/datum/reagent/ethanol/snowwhite + name = "Snow White" + id = "snowwhite" + description = "A cold refreshment" + color = "#FFFFFF" + strength = 30 + + glass_icon_state = "snowwhite" + glass_name = "glass of Snow White" + glass_desc = "A cold refreshment." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/suidream + name = "Sui Dream" + id = "suidream" + description = "Comprised of: White soda, blue curacao, melon liquor." + color = "#00A86B" + strength = 100 + + glass_icon_state = "sdreamglass" + glass_name = "glass of Sui Dream" + glass_desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/syndicatebomb + name = "Syndicate Bomb" + id = "syndicatebomb" + description = "Tastes like terrorism!" + color = "#2E6671" + strength = 10 + + glass_icon_state = "syndicatebomb" + glass_name = "glass of Syndicate Bomb" + glass_desc = "Tastes like terrorism!" + glass_center_of_mass = list("x"=16, "y"=4) + +/datum/reagent/ethanol/tequilla_sunrise + name = "Tequila Sunrise" + id = "tequillasunrise" + description = "Tequila and orange juice. Much like a Screwdriver, only Mexican~" + color = "#FFE48C" + strength = 25 + + glass_icon_state = "tequillasunriseglass" + glass_name = "glass of Tequilla Sunrise" + glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..." + +/datum/reagent/ethanol/threemileisland + name = "Three Mile Island Iced Tea" + id = "threemileisland" + description = "Made for a woman, strong enough for a man." + color = "#666340" + strength = 10 + druggy = 50 + + glass_icon_state = "threemileislandglass" + glass_name = "glass of Three Mile Island iced tea" + glass_desc = "A glass of this is sure to prevent a meltdown." + glass_center_of_mass = list("x"=16, "y"=2) + +/datum/reagent/ethanol/toxins_special + name = "Toxins Special" + id = "phoronspecial" + description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!" + reagent_state = LIQUID + color = "#664300" + strength = 10 + adj_temp = 15 + targ_temp = 330 + + glass_icon_state = "toxinsspecialglass" + glass_name = "glass of Toxins Special" + glass_desc = "Whoah, this thing is on FIRE" + +/datum/reagent/ethanol/vodkamartini + name = "Vodka Martini" + id = "vodkamartini" + description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious." + color = "#664300" + strength = 12 + + glass_icon_state = "martiniglass" + glass_name = "glass of vodka martini" + glass_desc ="A bastardisation of the classic martini. Still great." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/vodkatonic + name = "Vodka and Tonic" + id = "vodkatonic" + description = "For when a gin and tonic isn't russian enough." + color = "#0064C8" // rgb: 0, 100, 200 + strength = 15 + + glass_icon_state = "vodkatonicglass" + glass_name = "glass of vodka and tonic" + glass_desc = "For when a gin and tonic isn't Russian enough." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/white_russian + name = "White Russian" + id = "whiterussian" + description = "That's just, like, your opinion, man..." + color = "#A68340" + strength = 15 + + glass_icon_state = "whiterussianglass" + glass_name = "glass of White Russian" + glass_desc = "A very nice looking drink. But that's just, like, your opinion, man." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/whiskey_cola + name = "Whiskey Cola" + id = "whiskeycola" + description = "Whiskey, mixed with cola. Surprisingly refreshing." + color = "#3E1B00" + strength = 25 + + glass_icon_state = "whiskeycolaglass" + glass_name = "glass of whiskey cola" + glass_desc = "An innocent-looking mixture of cola and Whiskey. Delicious." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/whiskeysoda + name = "Whiskey Soda" + id = "whiskeysoda" + description = "For the more refined griffon." + color = "#664300" + strength = 15 + + glass_icon_state = "whiskeysodaglass2" + glass_name = "glass of whiskey soda" + glass_desc = "Ultimate refreshment." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/specialwhiskey // I have no idea what this is and where it comes from + name = "Special Blend Whiskey" + id = "specialwhiskey" + description = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." + color = "#664300" + strength = 25 + + glass_icon_state = "whiskeyglass" + glass_name = "glass of special blend whiskey" + glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." + glass_center_of_mass = list("x"=16, "y"=12) + +/* Super secret chemicals with randomized recipes */ + +/datum/reagent/rezadone + name = "Rezadone" + id = "rezadone" + description = "A powder with almost magical properties, this substance can effectively treat genetic damage in humanoids, though excessive consumption has side effects." + reagent_state = SOLID + color = "#669900" + overdose_blood = REAGENTS_OVERDOSE + overdose_ingest = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/rezadone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustCloneLoss(-20 * removed) + M.adjustOxyLoss(-2 * removed) + M.heal_organ_damage(20 * removed, 20 * removed) + M.adjustToxLoss(-20 * removed) + if(dose > 3) + M.status_flags &= ~DISFIGURED + if(dose > 10) + M.make_dizzy(5) + M.make_jittery(5) + +/* Paint and crayons */ + +/datum/reagent/crayon_dust + name = "Crayon dust" + id = "crayon_dust" + description = "Intensely coloured powder obtained by grinding crayons." + reagent_state = LIQUID + color = "#888888" + overdose_blood = 5 + overdose_ingest = 5 + +/datum/reagent/crayon_dust/red + name = "Red crayon dust" + id = "crayon_dust_red" + color = "#FE191A" + +/datum/reagent/crayon_dust/orange + name = "Orange crayon dust" + id = "crayon_dust_orange" + color = "#FFBE4F" + +/datum/reagent/crayon_dust/yellow + name = "Yellow crayon dust" + id = "crayon_dust_yellow" + color = "#FDFE7D" + +/datum/reagent/crayon_dust/green + name = "Green crayon dust" + id = "crayon_dust_green" + color = "#18A31A" + +/datum/reagent/crayon_dust/blue + name = "Blue crayon dust" + id = "crayon_dust_blue" + color = "#247CFF" + +/datum/reagent/crayon_dust/purple + name = "Purple crayon dust" + id = "crayon_dust_purple" + color = "#CC0099" + +/datum/reagent/crayon_dust/grey //Mime + name = "Grey crayon dust" + id = "crayon_dust_grey" + color = "#808080" + +/datum/reagent/crayon_dust/brown //Rainbow + name = "Brown crayon dust" + id = "crayon_dust_brown" + color = "#846F35" + +/datum/reagent/paint + name = "Paint" + id = "paint" + description = "This paint will stick to almost any object." + reagent_state = LIQUID + color = "#808080" + overdose_blood = REAGENTS_OVERDOSE * 0.5 + overdose_ingest = REAGENTS_OVERDOSE * 0.5 + color_weight = 20 + +/datum/reagent/paint/touch_turf(var/turf/T) + if(istype(T) && !istype(T, /turf/space)) + T.color = color + +/datum/reagent/paint/touch_obj(var/obj/O) + if(istype(O)) + O.color = color + +/datum/reagent/paint/touch_mob(var/mob/M) + if(istype(M) && !istype(M, /mob/dead)) //painting ghosts: not allowed + M.color = color + +/datum/reagent/paint/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + M.color = color + +/datum/reagent/paint/get_data() + return color + +/datum/reagent/paint/initialize_data(var/newdata) + color = newdata + return + +/datum/reagent/paint/mix_data(var/newdata, var/newamount) + var/list/colors = list(0, 0, 0, 0) + var/tot_w = 0 + + var/hex1 = uppertext(color) + var/hex2 = uppertext(newdata) + if(length(hex1) == 7) + hex1 += "FF" + if(length(hex2) == 7) + hex2 += "FF" + if(length(hex1) != 9 || length(hex2) != 9) + return + colors[1] += hex2num(copytext(hex1, 2, 4)) * volume + colors[2] += hex2num(copytext(hex1, 4, 6)) * volume + colors[3] += hex2num(copytext(hex1, 6, 8)) * volume + colors[4] += hex2num(copytext(hex1, 8, 10)) * volume + tot_w += volume + colors[1] += hex2num(copytext(hex2, 2, 4)) * newamount + colors[2] += hex2num(copytext(hex2, 4, 6)) * newamount + colors[3] += hex2num(copytext(hex2, 6, 8)) * newamount + colors[4] += hex2num(copytext(hex2, 8, 10)) * newamount + tot_w += newamount + + color = rgb(colors[1] / tot_w, colors[2] / tot_w, colors[3] / tot_w, colors[4] / tot_w) + return + +/* Things that didn't fit anywhere else */ + +/datum/reagent/adminordrazine //An OP chemical for admins + name = "Adminordrazine" + id = "adminordrazine" + description = "It's magic. We don't have to explain it." + reagent_state = LIQUID + color = "#C8A5DC" + affects_dead = 1 //This can even heal dead people. + + glass_icon_state = "golden_cup" + glass_name = "golden cup" + glass_desc = "It's magic. We don't have to explain it." + +/datum/reagent/adminordrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.setCloneLoss(0) + M.setOxyLoss(0) + M.radiation = 0 + M.heal_organ_damage(5,5) + M.adjustToxLoss(-5) + M.hallucination = 0 + M.setBrainLoss(0) + M.disabilities = 0 + M.sdisabilities = 0 + M.eye_blurry = 0 + M.eye_blind = 0 + M.SetWeakened(0) + M.SetStunned(0) + M.SetParalysis(0) + M.silent = 0 + M.dizziness = 0 + M.drowsyness = 0 + M.stuttering = 0 + M.confused = 0 + M.sleeping = 0 + M.jitteriness = 0 + for(var/datum/disease/D in M.viruses) + D.spread = "Remissive" + D.stage-- + if(D.stage < 1) + D.cure() + +/datum/reagent/gold + name = "Gold" + id = "gold" + description = "Gold is a dense, soft, shiny metal and the most malleable and ductile metal known." + reagent_state = SOLID + color = "#F7C430" + +/datum/reagent/silver + name = "Silver" + id = "silver" + description = "A soft, white, lustrous transition metal, it has the highest electrical conductivity of any element and the highest thermal conductivity of any metal." + reagent_state = SOLID + color = "#D0D0D0" + +/datum/reagent/uranium + name ="Uranium" + id = "uranium" + description = "A silvery-white metallic chemical element in the actinide series, weakly radioactive." + reagent_state = SOLID + color = "#B8B8C0" + +/datum/reagent/uranium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.apply_effect(5 * removed, IRRADIATE, 0) + +/datum/reagent/uranium/touch_turf(var/turf/T) + if(volume >= 3) + if(!istype(T, /turf/space)) + var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) + if(!glow) + new /obj/effect/decal/cleanable/greenglow(T) + return + + +/datum/reagent/adrenaline + name = "Adrenaline" + id = "adrenaline" + description = "Adrenaline is a hormone used as a drug to treat cardiac arrest and other cardiac dysrhythmias resulting in diminished or absent cardiac output." + reagent_state = LIQUID + color = "#C8A5DC" + +/datum/reagent/adrenaline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH || alien == IS_DIONA) + return + M.SetParalysis(0) + M.SetWeakened(0) + M.adjustToxLoss(rand(3)) + +/datum/reagent/water/holywater + name = "Holy Water" + id = "holywater" + description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." + color = "#E0E8EF" + + glass_icon_state = "glass_clear" + glass_name = "glass of holy water" + glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." + +/datum/reagent/water/holywater/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(ishuman(M)) // Any location + if((M.mind in ticker.mode.cult) && prob(10)) + ticker.mode.remove_cultist(M.mind) + M.visible_message("[M]'s eyes blink and become clearer.", "A cooling sensation from inside you brings you an untold calmness.") + +/datum/reagent/ammonia + name = "Ammonia" + id = "ammonia" + description = "A caustic substance commonly used in fertilizer or household cleaners." + reagent_state = GAS + color = "#404030" + +/datum/reagent/diethylamine + name = "Diethylamine" + id = "diethylamine" + description = "A secondary amine, mildly corrosive." + reagent_state = LIQUID + color = "#604030" + +/datum/reagent/fluorosurfactant // Foam precursor + name = "Fluorosurfactant" + id = "fluorosurfactant" + description = "A perfluoronated sulfonic acid that forms a foam when mixed with water." + reagent_state = LIQUID + color = "#9E6B38" + +/datum/reagent/foaming_agent // Metal foaming agent. This is lithium hydride. Add other recipes (e.g. LiH + H2O -> LiOH + H2) eventually. + name = "Foaming agent" + id = "foaming_agent" + description = "A agent that yields metallic foam when mixed with light metal and a strong acid." + reagent_state = SOLID + color = "#664B63" + +/datum/reagent/thermite + name = "Thermite" + id = "thermite" + description = "Thermite produces an aluminothermic reaction known as a thermite reaction. Can be used to melt walls." + reagent_state = SOLID + color = "#673910" + touch_met = 50 + +/datum/reagent/thermite/touch_turf(var/turf/T) + if(volume >= 5) + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/W = T + W.thermite = 1 + W.overlays += image('icons/effects/effects.dmi',icon_state = "#673910") + remove_self(5) + return + +/datum/reagent/thermite/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(location == CHEM_TOUCH) + M.adjust_fire_stacks(removed * 0.2) + return + M.adjustFireLoss(3 * removed) + +/datum/reagent/space_cleaner + name = "Space cleaner" + id = "cleaner" + description = "A compound used to clean things. Now with 50% more sodium hypochlorite!" + reagent_state = LIQUID + color = "#A5F0EE" + touch_met = 50 + +/datum/reagent/space_cleaner/touch_obj(var/obj/O) + if(istype(O, /obj/effect/decal/cleanable)) + del(O) + else + O.clean_blood() + +/datum/reagent/space_cleaner/touch_turf(var/turf/T) + if(volume >= 1) + if(istype(T, /turf/simulated)) + var/turf/simulated/S = T + S.dirt = 0 + T.clean_blood() + + for(var/mob/living/carbon/slime/M in T) + M.adjustToxLoss(rand(5, 10)) + +/datum/reagent/space_cleaner/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.r_hand) + M.r_hand.clean_blood() + if(M.l_hand) + M.l_hand.clean_blood() + if(M.wear_mask) + if(M.wear_mask.clean_blood()) + M.update_inv_wear_mask(0) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.head) + if(H.head.clean_blood()) + H.update_inv_head(0) + if(H.wear_suit) + if(H.wear_suit.clean_blood()) + H.update_inv_wear_suit(0) + else if(H.w_uniform) + if(H.w_uniform.clean_blood()) + H.update_inv_w_uniform(0) + if(H.shoes) + if(H.shoes.clean_blood()) + H.update_inv_shoes(0) + else + H.clean_blood(1) + return + M.clean_blood() + +/datum/reagent/lube // TODO: spraying on borgs speeds them up + name = "Space Lube" + id = "lube" + description = "Lubricant is a substance introduced between two moving surfaces to reduce the friction and wear between them. giggity." + reagent_state = LIQUID + color = "#009CA8" + +/datum/reagent/lube/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return + if(volume >= 1) + if(T.wet >= 2) + return + T.wet = 2 + spawn(800) + if(!T || !istype(T)) return + T.wet = 0 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null - hot_coco // there's also drink/hot_coco for whatever reason - name = "Hot Chocolate" - id = "hot_coco" - description = "Made with love! And cocoa beans." - reagent_state = LIQUID - nutriment_factor = 2 * REAGENTS_METABOLISM - color = "#403010" // rgb: 64, 48, 16 +/datum/reagent/silicate + name = "Silicate" + id = "silicate" + description = "A compound that can be used to reinforce glass." + reagent_state = LIQUID + color = "#C7FFFF" - glass_icon_state = "chocolateglass" - glass_name = "glass of hot chocolate" - glass_desc = "Made with love! And cocoa beans." +/datum/reagent/silicate/touch_obj(var/obj/O) + if(istype(O, /obj/structure/window)) + var/obj/structure/window/W = O + W.apply_silicate(volume) + remove_self(volume) + return - on_mob_life(var/mob/living/M as mob) - if (M.bodytemperature < 310)//310 is the normal bodytemp. 310.055 - M.bodytemperature = min(310, M.bodytemperature + (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) - M.nutrition += nutriment_factor - ..() - return +/datum/reagent/glycerol + name = "Glycerol" + id = "glycerol" + description = "Glycerol is a simple polyol compound. Glycerol is sweet-tasting and of low toxicity." + reagent_state = LIQUID + color = "#808080" - psilocybin - name = "Psilocybin" - id = "psilocybin" - description = "A strong psycotropic derived from certain species of mushroom." - color = "#E700E7" // rgb: 231, 0, 231 - overdose = REAGENTS_OVERDOSE +/datum/reagent/nitroglycerin + name = "Nitroglycerin" + id = "nitroglycerin" + description = "Nitroglycerin is a heavy, colorless, oily, explosive liquid obtained by nitrating glycerol." + reagent_state = LIQUID + color = "#808080" - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.druggy = max(M.druggy, 30) - if(!data) data = 1 - switch(data) - if(1 to 5) - if (!M.stuttering) M.stuttering = 1 - M.make_dizzy(5) - if(prob(10)) M.emote(pick("twitch","giggle")) - if(5 to 10) - if (!M.stuttering) M.stuttering = 1 - M.make_jittery(10) - M.make_dizzy(10) - M.druggy = max(M.druggy, 35) - if(prob(20)) M.emote(pick("twitch","giggle")) - if (10 to INFINITY) - if (!M.stuttering) M.stuttering = 1 - M.make_jittery(20) - M.make_dizzy(20) - M.druggy = max(M.druggy, 40) - if(prob(30)) M.emote(pick("twitch","giggle")) - holder.remove_reagent(src.id, 0.2) - data++ - ..() - return +/datum/reagent/coolant + name = "Coolant" + id = "coolant" + description = "Industrial cooling substance." + reagent_state = LIQUID + color = "#C8A5DC" - sprinkles - name = "Sprinkles" - id = "sprinkles" - description = "Multi-colored little bits of sugar, commonly found on donuts. Loved by cops." - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#FF00FF" // rgb: 255, 0, 255 +/datum/reagent/ultraglue + name = "Ultra Glue" + id = "glue" + description = "An extremely powerful bonding agent." + color = "#FFFFCC" - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - /*if(istype(M, /mob/living/carbon/human) && M.job in list("Security Officer", "Head of Security", "Detective", "Warden")) - if(!M) M = holder.my_atom - M.heal_organ_damage(1,1) - M.nutrition += nutriment_factor - ..() - return - */ - ..() +/* Removed xenoarcheology stuff -/* //removed because of meta bullshit. this is why we can't have nice things. - syndicream - name = "Cream filling" - id = "syndicream" - description = "Delicious cream filling of a mysterious origin. Tastes criminally good." - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#AB7878" // rgb: 171, 120, 120 +/datum/reagent/lithiumsodiumtungstate + name = "Lithium Sodium Tungstate" + id = "lithiumsodiumtungstate" + description = "A reducing agent for geological compounds." + reagent_state = LIQUID + color = "#C0C0C0" // rgb: 192, 192, 192, darker silver + +/datum/reagent/ground_rock + name = "Ground Rock" + id = "ground_rock" + description = "A fine dust made of ground up rock." + reagent_state = SOLID + color = "#A0522D" //rgb: 160, 82, 45, brown + +/datum/reagent/density_separated_sample + name = "Density separated sample" + id = "density_separated_sample" + description = "A watery paste used in chemical analysis, there are some chunks floating in it." + reagent_state = LIQUID + color = "#DEB887" //rgb: 222, 184, 135, light brown + +/datum/reagent/analysis_sample + name = "Analysis liquid" + id = "analysis_sample" + description = "A watery paste used in chemical analysis." + reagent_state = LIQUID + color = "#F5FFFA" //rgb: 245, 255, 250, almost white + +/datum/reagent/chemical_waste + name = "Chemical Waste" + id = "chemical_waste" + description = "A viscous, toxic liquid left over from many chemical processes." + reagent_state = LIQUID + color = "#ADFF2F" //rgb: 173, 255, 47, toxic green - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - if(istype(M, /mob/living/carbon/human) && M.mind) - if(M.mind.special_role) - if(!M) M = holder.my_atom - M.heal_organ_damage(1,1) - M.nutrition += nutriment_factor - ..() - return - ..() */ - cornoil - name = "Corn Oil" - id = "cornoil" - description = "An oil derived from various types of corn." - reagent_state = LIQUID - nutriment_factor = 20 * REAGENTS_METABOLISM - color = "#302000" // rgb: 48, 32, 0 - - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - ..() - return - reaction_turf(var/turf/simulated/T, var/volume) - if (!istype(T)) return - src = null - if(volume >= 3) - if(T.wet >= 1) return - T.wet = 1 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") - T.overlays += T.wet_overlay - - spawn(800) - if (!istype(T)) return - if(T.wet >= 2) return - T.wet = 0 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - var/hotspot = (locate(/obj/fire) in T) - if(hotspot) - var/datum/gas_mixture/lowertemp = T.remove_air( T:air:total_moles ) - lowertemp.temperature = max( min(lowertemp.temperature-2000,lowertemp.temperature / 2) ,0) - lowertemp.react() - T.assume_air(lowertemp) - del(hotspot) - - enzyme - name = "Universal Enzyme" - id = "enzyme" - description = "A universal enzyme used in the preperation of certain chemicals and foods." - reagent_state = LIQUID - color = "#365E30" // rgb: 54, 94, 48 - overdose = REAGENTS_OVERDOSE - - dry_ramen - name = "Dry Ramen" - id = "dry_ramen" - description = "Space age food, since August 25, 1958. Contains dried noodles, vegetables, and chemicals that boil in contact with water." - reagent_state = SOLID - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#302000" // rgb: 48, 32, 0 - - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - ..() - return - - hot_ramen - name = "Hot Ramen" - id = "hot_ramen" - description = "The noodles are boiled, the flavors are artificial, just like being back in school." - reagent_state = LIQUID - nutriment_factor = 5 * REAGENTS_METABOLISM - color = "#302000" // rgb: 48, 32, 0 - - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - if (M.bodytemperature < 310)//310 is the normal bodytemp. 310.055 - M.bodytemperature = min(310, M.bodytemperature + (10 * TEMPERATURE_DAMAGE_COEFFICIENT)) - ..() - return - - hell_ramen - name = "Hell Ramen" - id = "hell_ramen" - description = "The noodles are boiled, the flavors are artificial, just like being back in school." - reagent_state = LIQUID - nutriment_factor = 5 * REAGENTS_METABOLISM - color = "#302000" // rgb: 48, 32, 0 - - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - M.bodytemperature += 10 * TEMPERATURE_DAMAGE_COEFFICIENT - ..() - return - - flour - name = "flour" - id = "flour" - description = "This is what you rub all over yourself to pretend to be a ghost." - reagent_state = SOLID - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#FFFFFF" // rgb: 0, 0, 0 - - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - ..() - return - - reaction_turf(var/turf/T, var/volume) - src = null - if(!istype(T, /turf/space)) - new /obj/effect/decal/cleanable/flour(T) - - rice - name = "Rice" - id = "rice" - description = "Enjoy the great taste of nothing." - reagent_state = SOLID - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#FFFFFF" // rgb: 0, 0, 0 - - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - ..() - return - - cherryjelly - name = "Cherry Jelly" - id = "cherryjelly" - description = "Totally the best. Only to be spread on foods with excellent lateral symmetry." - reagent_state = LIQUID - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#801E28" // rgb: 128, 30, 40 - - on_mob_life(var/mob/living/M as mob) - M.nutrition += nutriment_factor - ..() - return - -///////////////////////////////////////////////////////////////////////////////////////////////////////// -/////////////////////// DRINKS BELOW, Beer is up there though, along with cola. Cap'n Pete's Cuban Spiced Rum//////////////////////////////// -///////////////////////////////////////////////////////////////////////////////////////////////////////// - - drink - name = "Drink" - id = "drink" - description = "Uh, some kind of drink." - reagent_state = LIQUID - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#E78108" // rgb: 231, 129, 8 - var/adj_dizzy = 0 - var/adj_drowsy = 0 - var/adj_sleepy = 0 - var/adj_temp = 0 - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.nutrition += nutriment_factor - holder.remove_reagent(src.id, FOOD_METABOLISM) - // Drinks should be used up faster than other reagents. - holder.remove_reagent(src.id, FOOD_METABOLISM) - if (adj_dizzy) M.dizziness = max(0,M.dizziness + adj_dizzy) - if (adj_drowsy) M.drowsyness = max(0,M.drowsyness + adj_drowsy) - if (adj_sleepy) M.sleeping = max(0,M.sleeping + adj_sleepy) - if (adj_temp) - if (M.bodytemperature < 310)//310 is the normal bodytemp. 310.055 - M.bodytemperature = min(310, M.bodytemperature + (25 * TEMPERATURE_DAMAGE_COEFFICIENT)) - - ..() - return - - drink/orangejuice - name = "Orange juice" - id = "orangejuice" - description = "Both delicious AND rich in Vitamin C, what more do you need?" - color = "#E78108" // rgb: 231, 129, 8 - - glass_icon_state = "glass_orange" - glass_name = "glass of orange juice" - glass_desc = "Vitamins! Yay!" - - on_mob_life(var/mob/living/M as mob) - ..() - if(M.getOxyLoss() && prob(30)) M.adjustOxyLoss(-1) - return - - drink/tomatojuice - name = "Tomato Juice" - id = "tomatojuice" - description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?" - color = "#731008" // rgb: 115, 16, 8 - - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" - glass_desc = "Are you sure this is tomato juice?" - - on_mob_life(var/mob/living/M as mob) - ..() - if(M.getFireLoss() && prob(20)) M.heal_organ_damage(0,1) - return - - drink/limejuice - name = "Lime Juice" - id = "limejuice" - description = "The sweet-sour juice of limes." - color = "#365E30" // rgb: 54, 94, 48 - - glass_icon_state = "glass_green" - glass_name = "glass of lime juice" - glass_desc = "A glass of sweet-sour lime juice" - - on_mob_life(var/mob/living/M as mob) - ..() - if(M.getToxLoss() && prob(20)) M.adjustToxLoss(-1*REM) - return - - drink/carrotjuice - name = "Carrot juice" - id = "carrotjuice" - description = "It is just like a carrot but without crunching." - color = "#FF8C00" // rgb: 255, 140, 0 - - glass_icon_state = "carrotjuice" - glass_name = "glass of carrot juice" - glass_desc = "It is just like a carrot but without crunching." - - on_mob_life(var/mob/living/M as mob) - ..() - M.eye_blurry = max(M.eye_blurry-1 , 0) - M.eye_blind = max(M.eye_blind-1 , 0) - if(!data) data = 1 - switch(data) - if(1 to 20) - //nothing - if(21 to INFINITY) - if (prob(data-10)) - M.disabilities &= ~NEARSIGHTED - data++ - return - - drink/berryjuice - name = "Berry Juice" - id = "berryjuice" - description = "A delicious blend of several different kinds of berries." - color = "#990066" // rgb: 153, 0, 102 - - glass_icon_state = "berryjuice" - glass_name = "glass of berry juice" - glass_desc = "Berry juice. Or maybe it's jam. Who cares?" - - drink/grapejuice - name = "Grape Juice" - id = "grapejuice" - description = "It's grrrrrape!" - color = "#863333" // rgb: 134, 51, 51 - - glass_icon_state = "grapejuice" - glass_name = "glass of grape juice" - glass_desc = "It's grrrrrape!" - - drink/grapesoda - name = "Grape Soda" - id = "grapesoda" - description = "Grapes made into a fine drank." - color = "#421C52" // rgb: 98, 57, 53 - adj_drowsy = -3 - - glass_icon_state = "gsodaglass" - glass_name = "glass of grape soda" - glass_desc = "Looks like a delicious drink!" - - drink/poisonberryjuice - name = "Poison Berry Juice" - id = "poisonberryjuice" - description = "A tasty juice blended from various kinds of very deadly and toxic berries." - color = "#863353" // rgb: 134, 51, 83 - - glass_icon_state = "poisonberryjuice" - glass_name = "glass of poison berry juice" - glass_desc = "A glass of deadly juice." - - on_mob_life(var/mob/living/M as mob) - ..() - M.adjustToxLoss(1) - return - - drink/watermelonjuice - name = "Watermelon Juice" - id = "watermelonjuice" - description = "Delicious juice made from watermelon." - color = "#B83333" // rgb: 184, 51, 51 - - glass_icon_state = "glass_red" - glass_name = "glass of watermelon juice" - glass_desc = "Delicious juice made from watermelon." - - drink/lemonjuice - name = "Lemon Juice" - id = "lemonjuice" - description = "This juice is VERY sour." - color = "#AFAF00" // rgb: 175, 175, 0 - - glass_icon_state = "lemonjuice" - glass_name = "glass of lemon juice" - glass_desc = "Sour..." - - drink/banana - name = "Banana Juice" - id = "banana" - description = "The raw essence of a banana." - color = "#C3AF00" // rgb: 195, 175, 0 - - glass_icon_state = "banana" - glass_name = "glass of banana juice" - glass_desc = "The raw essence of a banana. HONK!" - - drink/nothing - name = "Nothing" - id = "nothing" - description = "Absolutely nothing." - - glass_icon_state = "nothing" - glass_name = "glass of nothing" - glass_desc = "Absolutely nothing." - - drink/potato_juice - name = "Potato Juice" - id = "potato" - description = "Juice of the potato. Bleh." - nutriment_factor = 2 * FOOD_METABOLISM - color = "#302000" // rgb: 48, 32, 0 - - glass_icon_state = "glass_brown" - glass_name = "glass of potato juice" - glass_desc = "Juice from a potato. Bleh." - - drink/milk - name = "Milk" - id = "milk" - description = "An opaque white liquid produced by the mammary glands of mammals." - color = "#DFDFDF" // rgb: 223, 223, 223 - - glass_icon_state = "glass_white" - glass_name = "glass of milk" - glass_desc = "White and nutritious goodness!" - - on_mob_life(var/mob/living/M as mob) - if(M.getBruteLoss() && prob(20)) M.heal_organ_damage(1,0) - holder.remove_reagent("capsaicin", 10*REAGENTS_METABOLISM) - ..() - return - - drink/milk/soymilk - name = "Soy Milk" - id = "soymilk" - description = "An opaque white liquid made from soybeans." - color = "#DFDFC7" // rgb: 223, 223, 199 - - glass_icon_state = "glass_white" - glass_name = "glass of soy milk" - glass_desc = "White and nutritious soy goodness!" - - drink/milk/cream - name = "Cream" - id = "cream" - description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?" - color = "#DFD7AF" // rgb: 223, 215, 175 - - glass_icon_state = "glass_white" - glass_name = "glass of cream" - glass_desc = "Ewwww..." - - drink/grenadine - name = "Grenadine Syrup" - id = "grenadine" - description = "Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways?" - color = "#FF004F" // rgb: 255, 0, 79 - - glass_icon_state = "grenadineglass" - glass_name = "glass of grenadine syrup" - glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks." - glass_center_of_mass = list("x"=17, "y"=6) - - drink/hot_coco - name = "Hot Chocolate" - id = "hot_coco" - description = "Made with love! And cocoa beans." - nutriment_factor = 2 * FOOD_METABOLISM - color = "#403010" // rgb: 64, 48, 16 - adj_temp = 5 - - glass_icon_state = "chocolateglass" - glass_name = "glass of hot chocolate" - glass_desc = "Made with love! And cocoa beans." - - drink/coffee - name = "Coffee" - id = "coffee" - description = "Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant." - color = "#482000" // rgb: 72, 32, 0 - adj_dizzy = -5 - adj_drowsy = -3 - adj_sleepy = -2 - adj_temp = 25 - - glass_icon_state = "hot_coffee" - glass_name = "cup of coffee" - glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." - - on_mob_life(var/mob/living/M as mob) - ..() - M.make_jittery(5) - if(adj_temp > 0) - holder.remove_reagent("frostoil", 10*REAGENTS_METABOLISM) - - holder.remove_reagent(src.id, 0.1) - - drink/coffee/icecoffee - name = "Iced Coffee" - id = "icecoffee" - description = "Coffee and ice, refreshing and cool." - color = "#102838" // rgb: 16, 40, 56 - adj_temp = -5 - - glass_icon_state = "icedcoffeeglass" - glass_name = "glass of iced coffee" - glass_desc = "A drink to perk you up and refresh you!" - - drink/coffee/soy_latte - name = "Soy Latte" - id = "soy_latte" - description = "A nice and tasty beverage while you are reading your hippie books." - color = "#664300" // rgb: 102, 67, 0 - adj_sleepy = 0 - adj_temp = 5 - - glass_icon_state = "soy_latte" - glass_name = "glass of soy latte" - glass_desc = "A nice and refrshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) - - on_mob_life(var/mob/living/M as mob) - ..() - M.sleeping = 0 - if(M.getBruteLoss() && prob(20)) M.heal_organ_damage(1,0) - return - - drink/coffee/cafe_latte - name = "Cafe Latte" - id = "cafe_latte" - description = "A nice, strong and tasty beverage while you are reading." - color = "#664300" // rgb: 102, 67, 0 - adj_sleepy = 0 - adj_temp = 5 - - glass_icon_state = "cafe_latte" - glass_name = "glass of cafe latte" - glass_desc = "A nice, strong and refreshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) - - on_mob_life(var/mob/living/M as mob) - ..() - M.sleeping = 0 - if(M.getBruteLoss() && prob(20)) M.heal_organ_damage(1,0) - return - - drink/tea - name = "Tea" - id = "tea" - description = "Tasty black tea, it has antioxidants, it's good for you!" - color = "#101000" // rgb: 16, 16, 0 - adj_dizzy = -2 - adj_drowsy = -1 - adj_sleepy = -3 - adj_temp = 20 - - glass_icon_state = "bigteacup" - glass_name = "cup of tea" - glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" - - on_mob_life(var/mob/living/M as mob) - ..() - if(M.getToxLoss() && prob(20)) - M.adjustToxLoss(-1) - return - - drink/tea/icetea - name = "Iced Tea" - id = "icetea" - description = "No relation to a certain rap artist/ actor." - color = "#104038" // rgb: 16, 64, 56 - adj_temp = -5 - - glass_icon_state = "icedteaglass" - glass_name = "glass of iced tea" - glass_desc = "No relation to a certain rap artist/ actor." - glass_center_of_mass = list("x"=15, "y"=10) - - drink/cold - name = "Cold drink" - adj_temp = -5 - - drink/cold/tonic - name = "Tonic Water" - id = "tonic" - description = "It tastes strange but at least the quinine keeps the Space Malaria at bay." - color = "#664300" // rgb: 102, 67, 0 - adj_dizzy = -5 - adj_drowsy = -3 - adj_sleepy = -2 - - glass_icon_state = "glass_clear" - glass_name = "glass of tonic water" - glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away." - - drink/cold/sodawater - name = "Soda Water" - id = "sodawater" - description = "A can of club soda. Why not make a scotch and soda?" - color = "#619494" // rgb: 97, 148, 148 - adj_dizzy = -5 - adj_drowsy = -3 - - glass_icon_state = "glass_clear" - glass_name = "glass of soda water" - glass_desc = "Soda water. Why not make a scotch and soda?" - - drink/cold/ice - name = "Ice" - id = "ice" - description = "Frozen water, your dentist wouldn't like you chewing this." - reagent_state = SOLID - color = "#619494" // rgb: 97, 148, 148 - - glass_icon_state = "iceglass" - glass_name = "glass of ice" - glass_desc = "Generally, you're supposed to put something else in there too..." - - drink/cold/space_cola - name = "Space Cola" - id = "cola" - description = "A refreshing beverage." - reagent_state = LIQUID - color = "#100800" // rgb: 16, 8, 0 - adj_drowsy = -3 - - glass_icon_state = "glass_brown" - glass_name = "glass of Space Cola" - glass_desc = "A glass of refreshing Space Cola" - - drink/cold/nuka_cola - name = "Nuka Cola" - id = "nuka_cola" - description = "Cola, cola never changes." - color = "#100800" // rgb: 16, 8, 0 - adj_sleepy = -2 - - glass_icon_state = "nuka_colaglass" - glass_name = "glass of Nuka-Cola" - glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" - glass_center_of_mass = list("x"=16, "y"=6) - - on_mob_life(var/mob/living/M as mob) - M.make_jittery(20) - M.druggy = max(M.druggy, 30) - M.dizziness +=5 - M.drowsyness = 0 - ..() - return - - drink/cold/spacemountainwind - name = "Mountain Wind" - id = "spacemountainwind" - description = "Blows right through you like a space wind." - color = "#102000" // rgb: 16, 32, 0 - adj_drowsy = -7 - adj_sleepy = -1 - - glass_icon_state = "Space_mountain_wind_glass" - glass_name = "glass of Space Mountain Wind" - glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind." - - drink/cold/dr_gibb - name = "Dr. Gibb" - id = "dr_gibb" - description = "A delicious blend of 42 different flavours" - color = "#102000" // rgb: 16, 32, 0 - adj_drowsy = -6 - - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of Dr. Gibb" - glass_desc = "Dr. Gibb. Not as dangerous as the name might imply." - - drink/cold/space_up - name = "Space-Up" - id = "space_up" - description = "Tastes like a hull breach in your mouth." - color = "#202800" // rgb: 32, 40, 0 - adj_temp = -8 - - glass_icon_state = "space-up_glass" - glass_name = "glass of Space-up" - glass_desc = "Space-up. It helps keep your cool." - - drink/cold/lemon_lime - name = "Lemon Lime" - description = "A tangy substance made of 0.5% natural citrus!" - id = "lemon_lime" - color = "#878F00" // rgb: 135, 40, 0 - adj_temp = -8 - - glass_icon_state = "lemonlime" - glass_name = "glass of lemon lime soda" - glass_desc = "A tangy substance made of 0.5% natural citrus!" - - drink/cold/lemonade - name = "Lemonade" - description = "Oh the nostalgia..." - id = "lemonade" - color = "#FFFF00" // rgb: 255, 255, 0 - - glass_icon_state = "lemonadeglass" - glass_name = "glass of lemonade" - glass_desc = "Oh the nostalgia..." - - drink/cold/kiraspecial - name = "Kira Special" - description = "Long live the guy who everyone had mistaken for a girl. Baka!" - id = "kiraspecial" - color = "#CCCC99" // rgb: 204, 204, 153 - - glass_icon_state = "kiraspecial" - glass_name = "glass of Kira Special" - glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!" - glass_center_of_mass = list("x"=16, "y"=12) - - drink/cold/brownstar - name = "Brown Star" - description = "It's not what it sounds like..." - id = "brownstar" - color = "#9F3400" // rgb: 159, 052, 000 - adj_temp = - 2 - - glass_icon_state = "brownstar" - glass_name = "glass of Brown Star" - glass_desc = "It's not what it sounds like..." - - drink/cold/milkshake - name = "Milkshake" - description = "Glorious brainfreezing mixture." - id = "milkshake" - color = "#AEE5E4" // rgb" 174, 229, 228 - adj_temp = -9 - - glass_icon_state = "milkshake" - glass_name = "glass of milkshake" - glass_desc = "Glorious brainfreezing mixture." - glass_center_of_mass = list("x"=16, "y"=7) - - on_mob_life(var/mob/living/M as mob) - if(!M) - M = holder.my_atom - if(prob(1)) - M.emote("shiver") - M.bodytemperature = max(M.bodytemperature - 10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0) - if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature = max(M.bodytemperature - rand(10,20), 0) - holder.remove_reagent("capsaicin", 5) - holder.remove_reagent(src.id, FOOD_METABOLISM) - ..() - return - - drink/cold/rewriter - name = "Rewriter" - description = "The secret of the sanctuary of the Libarian..." - id = "rewriter" - color = "#485000" // rgb:72, 080, 0 - - glass_icon_state = "rewriter" - glass_name = "glass of Rewriter" - glass_desc = "The secret of the sanctuary of the Libarian..." - glass_center_of_mass = list("x"=16, "y"=9) - - on_mob_life(var/mob/living/M as mob) - ..() - M.make_jittery(5) - return - - - doctor_delight - name = "The Doctor's Delight" - id = "doctorsdelight" - description = "A gulp a day keeps the MediBot away. That's probably for the best." - reagent_state = LIQUID - color = "#FF8CFF" // rgb: 255, 140, 255 - nutriment_factor = 1 * FOOD_METABOLISM - - glass_icon_state = "doctorsdelightglass" - glass_name = "glass of The Doctor's Delight" - glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." - glass_center_of_mass = list("x"=16, "y"=8) - - on_mob_life(var/mob/living/M as mob) - M:nutrition += nutriment_factor - holder.remove_reagent(src.id, FOOD_METABOLISM) - if(!M) M = holder.my_atom - if(M:getOxyLoss() && prob(50)) M:adjustOxyLoss(-2) - if(M:getBruteLoss() && prob(60)) M:heal_organ_damage(2,0) - if(M:getFireLoss() && prob(50)) M:heal_organ_damage(0,2) - if(M:getToxLoss() && prob(50)) M:adjustToxLoss(-2) - if(M.dizziness !=0) M.dizziness = max(0,M.dizziness-15) - if(M.confused !=0) M.confused = max(0,M.confused - 5) - ..() - return - -//////////////////////////////////////////////The ten friggen million reagents that get you drunk////////////////////////////////////////////// - - atomicbomb - name = "Atomic Bomb" - id = "atomicbomb" - description = "Nuclear proliferation never tasted so good." - reagent_state = LIQUID - color = "#666300" // rgb: 102, 99, 0 - - glass_icon_state = "atomicbombglass" - glass_name = "glass of Atomic Bomb" - glass_desc = "Nanotrasen cannot take legal responsibility for your actions after imbibing." - glass_center_of_mass = list("x"=15, "y"=7) - - on_mob_life(var/mob/living/M as mob) - M.druggy = max(M.druggy, 50) - M.confused = max(M.confused+2,0) - M.make_dizzy(10) - if (!M.stuttering) M.stuttering = 1 - M.stuttering += 3 - if(!data) data = 1 - data++ - switch(data) - if(51 to 200) - M.sleeping += 1 - if(201 to INFINITY) - M.sleeping += 1 - M.adjustToxLoss(2) - ..() - return - - gargle_blaster - name = "Pan-Galactic Gargle Blaster" - id = "gargleblaster" - description = "Whoah, this stuff looks volatile!" - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - - glass_icon_state = "gargleblasterglass" - glass_name = "glass of Pan-Galactic Gargle Blaster" - glass_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy." - glass_center_of_mass = list("x"=17, "y"=6) - - on_mob_life(var/mob/living/M as mob) - if(!data) data = 1 - data++ - M.dizziness +=6 - switch(data) - if(15 to 45) - M.stuttering = max(M.stuttering+3,0) - if(45 to 55) - if (prob(50)) - M.confused = max(M.confused+3,0) - if(55 to 200) - M.druggy = max(M.druggy, 55) - if(200 to INFINITY) - M.adjustToxLoss(2) - ..() - - neurotoxin - name = "Neurotoxin" - id = "neurotoxin" - description = "A strong neurotoxin that puts the subject into a death-like state." - reagent_state = LIQUID - color = "#2E2E61" // rgb: 46, 46, 97 - - glass_icon_state = "neurotoxinglass" - glass_name = "glass of Neurotoxin" - glass_desc = "A drink that is guaranteed to knock you silly." - glass_center_of_mass = list("x"=16, "y"=8) - - on_mob_life(var/mob/living/carbon/M as mob) - if(!M) M = holder.my_atom - M.weakened = max(M.weakened, 3) - if(!data) data = 1 - data++ - M.dizziness +=6 - switch(data) - if(15 to 45) - M.stuttering = max(M.stuttering+3,0) - if(45 to 55) - if (prob(50)) - M.confused = max(M.confused+3,0) - if(55 to 200) - M.druggy = max(M.druggy, 55) - if(200 to INFINITY) - M.adjustToxLoss(2) - ..() - - hippies_delight - name = "Hippies' Delight" - id = "hippiesdelight" - description = "You just don't get it maaaan." - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - - glass_icon_state = "hippiesdelightglass" - glass_name = "glass of Hippie's Delight" - glass_desc = "A drink enjoyed by people during the 1960's." - glass_center_of_mass = list("x"=16, "y"=8) - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.druggy = max(M.druggy, 50) - if(!data) data = 1 - data++ - switch(data) - if(1 to 5) - if (!M.stuttering) M.stuttering = 1 - M.make_dizzy(10) - if(prob(10)) M.emote(pick("twitch","giggle")) - if(5 to 10) - if (!M.stuttering) M.stuttering = 1 - M.make_jittery(20) - M.make_dizzy(20) - M.druggy = max(M.druggy, 45) - if(prob(20)) M.emote(pick("twitch","giggle")) - if (10 to 200) - if (!M.stuttering) M.stuttering = 1 - M.make_jittery(40) - M.make_dizzy(40) - M.druggy = max(M.druggy, 60) - if(prob(30)) M.emote(pick("twitch","giggle")) - if(200 to INFINITY) - if (!M.stuttering) M.stuttering = 1 - M.make_jittery(60) - M.make_dizzy(60) - M.druggy = max(M.druggy, 75) - if(prob(40)) M.emote(pick("twitch","giggle")) - if(prob(30)) M.adjustToxLoss(2) - holder.remove_reagent(src.id, 0.2) - ..() - return - -/*boozepwr chart -1-2 = non-toxic alcohol -3 = medium-toxic -4 = the hard stuff -5 = potent mixes -<6 = deadly toxic -*/ - - ethanol - name = "Ethanol" //Parent class for all alcoholic reagents. - id = "ethanol" - description = "A well-known alcohol with a variety of applications." - reagent_state = LIQUID - nutriment_factor = 0 //So alcohol can fill you up! If they want to. - color = "#404030" // rgb: 64, 64, 48 - var/boozepwr = 5 //higher numbers mean the booze will have an effect faster. - var/dizzy_adj = 3 - var/adj_drowsy = 0 - var/adj_sleepy = 0 - var/slurr_adj = 3 - var/confused_adj = 2 - var/slur_start = 90 //amount absorbed after which mob starts slurring - var/confused_start = 150 //amount absorbed after which mob starts confusing directions - var/blur_start = 300 //amount absorbed after which mob starts getting blurred vision - var/pass_out = 400 //amount absorbed after which mob starts passing out - - glass_icon_state = "glass_clear" - glass_name = "glass of ethanol" - glass_desc = "A well-known alcohol with a variety of applications." - - on_mob_life(var/mob/living/M as mob, var/alien) - M:nutrition += nutriment_factor - holder.remove_reagent(src.id, (alien ? FOOD_METABOLISM : ALCOHOL_METABOLISM)) // Catch-all for creatures without livers. - - if (adj_drowsy) M.drowsyness = max(0,M.drowsyness + adj_drowsy) - if (adj_sleepy) M.sleeping = max(0,M.sleeping + adj_sleepy) - - if(!src.data || (!isnum(src.data) && src.data.len)) data = 1 //if it doesn't exist we set it. if it's a list we're going to set it to 1 as well. This is to - src.data += boozepwr //avoid a runtime error associated with drinking blood mixed in drinks (demon's blood). - - var/d = data - - // make all the beverages work together - for(var/datum/reagent/ethanol/A in holder.reagent_list) - if(A != src && isnum(A.data)) d += A.data - - if(alien && alien == IS_SKRELL) //Skrell get very drunk very quickly. - d*=5 - - M.dizziness += dizzy_adj. - if(d >= slur_start && d < pass_out) - if (!M:slurring) M:slurring = 1 - M:slurring += slurr_adj - if(d >= confused_start && prob(33)) - if (!M:confused) M:confused = 1 - M.confused = max(M:confused+confused_adj,0) - if(d >= blur_start) - M.eye_blurry = max(M.eye_blurry, 10) - M:drowsyness = max(M:drowsyness, 0) - if(d >= pass_out) - M:paralysis = max(M:paralysis, 20) - M:drowsyness = max(M:drowsyness, 30) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - var/datum/organ/internal/liver/L = H.internal_organs_by_name["liver"] - if (!L) - H.adjustToxLoss(5) - else if(istype(L)) - L.take_damage(0.1, 1) - H.adjustToxLoss(0.1) - ..() - return - - reaction_obj(var/obj/O, var/volume) - if(istype(O,/obj/item/weapon/paper)) - var/obj/item/weapon/paper/paperaffected = O - paperaffected.clearpaper() - usr << "The solution dissolves the ink on the paper." - if(istype(O,/obj/item/weapon/book)) - if(istype(O,/obj/item/weapon/book/tome)) - usr << "The solution does nothing. Whatever this is, it isn't normal ink." - return - if(volume >= 5) - var/obj/item/weapon/book/affectedbook = O - affectedbook.dat = null - usr << "The solution dissolves the ink on the book." - else - usr << "It wasn't enough..." - return - - reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with ethanol isn't quite as good as fuel. - if(!istype(M, /mob/living)) - return - if(method == TOUCH) - M.adjust_fire_stacks(volume / 15) - return - ethanol/beer - name = "Beer" - id = "beer" - description = "An alcoholic beverage made from malted grains, hops, yeast, and water." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1 - nutriment_factor = 1 * FOOD_METABOLISM - - glass_icon_state = "beerglass" - glass_name = "glass of beer" - glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) - - on_mob_life(var/mob/living/M as mob) - M:jitteriness = max(M:jitteriness-3,0) - ..() - return - - ethanol/kahlua - name = "Kahlua" - id = "kahlua" - description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!" - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1.5 - dizzy_adj = -5 - adj_drowsy = -3 - adj_sleepy = -2 - - glass_icon_state = "kahluaglass" - glass_name = "glass of RR coffee liquor" - glass_desc = "DAMN, THIS THING LOOKS ROBUST" - glass_center_of_mass = list("x"=15, "y"=7) - - on_mob_life(var/mob/living/M as mob) - M.make_jittery(5) - ..() - return - - ethanol/whiskey - name = "Whiskey" - id = "whiskey" - description = "A superb and well-aged single-malt whiskey. Damn." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - dizzy_adj = 4 - - glass_icon_state = "whiskeyglass" - glass_name = "glass of whiskey" - glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy." - glass_center_of_mass = list("x"=16, "y"=12) - - ethanol/specialwhiskey - name = "Special Blend Whiskey" - id = "specialwhiskey" - description = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - dizzy_adj = 4 - slur_start = 30 //amount absorbed after which mob starts slurring - - glass_icon_state = "whiskeyglass" - glass_name = "glass of special blend whiskey" - glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." - glass_center_of_mass = list("x"=16, "y"=12) - - ethanol/thirteenloko - name = "Thirteen Loko" - id = "thirteenloko" - description = "A potent mixture of caffeine and alcohol." - color = "#102000" // rgb: 16, 32, 0 - boozepwr = 2 - nutriment_factor = 1 * FOOD_METABOLISM - - glass_icon_state = "thirteen_loko_glass" - glass_name = "glass of Thirteen Loko" - glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." - - on_mob_life(var/mob/living/M as mob) - M:drowsyness = max(0,M:drowsyness-7) - if (M.bodytemperature > 310) - M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) - M.make_jittery(5) - ..() - return - - ethanol/vodka - name = "Vodka" - id = "vodka" - description = "Number one drink AND fueling choice for Russians worldwide." - color = "#0064C8" // rgb: 0, 100, 200 - boozepwr = 2 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of vodka" - glass_desc = "The glass contain wodka. Xynta." - glass_center_of_mass = list("x"=16, "y"=12) - - on_mob_life(var/mob/living/M as mob) - M.radiation = max(M.radiation-1,0) - ..() - return - - ethanol/bilk - name = "Bilk" - id = "bilk" - description = "This appears to be beer mixed with milk. Disgusting." - color = "#895C4C" // rgb: 137, 92, 76 - boozepwr = 1 - nutriment_factor = 2 * FOOD_METABOLISM - - glass_icon_state = "glass_brown" - glass_name = "glass of bilk" - glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis." - - ethanol/threemileisland - name = "Three Mile Island Iced Tea" - id = "threemileisland" - description = "Made for a woman, strong enough for a man." - color = "#666340" // rgb: 102, 99, 64 - boozepwr = 5 - - glass_icon_state = "threemileislandglass" - glass_name = "glass of Three Mile Island iced tea" - glass_desc = "A glass of this is sure to prevent a meltdown." - glass_center_of_mass = list("x"=16, "y"=2) - - on_mob_life(var/mob/living/M as mob) - M.druggy = max(M.druggy, 50) - ..() - return - - ethanol/gin - name = "Gin" - id = "gin" - description = "It's gin. In space. I say, good sir." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1 - dizzy_adj = 3 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of gin" - glass_desc = "A crystal clear glass of Griffeater gin." - glass_center_of_mass = list("x"=16, "y"=12) - - ethanol/tequilla - name = "Tequila" - id = "tequilla" - description = "A strong and mildly flavoured, mexican produced spirit. Feeling thirsty hombre?" - color = "#FFFF91" // rgb: 255, 255, 145 - boozepwr = 2 - - glass_icon_state = "tequillaglass" - glass_name = "glass of Tequilla" - glass_desc = "Now all that's missing is the weird colored shades!" - glass_center_of_mass = list("x"=16, "y"=12) - - ethanol/vermouth - name = "Vermouth" - id = "vermouth" - description = "You suddenly feel a craving for a martini..." - color = "#91FF91" // rgb: 145, 255, 145 - boozepwr = 1.5 - - glass_icon_state = "vermouthglass" - glass_name = "glass of vermouth" - glass_desc = "You wonder why you're even drinking this straight." - glass_center_of_mass = list("x"=16, "y"=12) - - ethanol/wine - name = "Wine" - id = "wine" - description = "An premium alchoholic beverage made from distilled grape juice." - color = "#7E4043" // rgb: 126, 64, 67 - boozepwr = 1.5 - dizzy_adj = 2 - slur_start = 65 //amount absorbed after which mob starts slurring - confused_start = 145 //amount absorbed after which mob starts confusing directions - - glass_icon_state = "wineglass" - glass_name = "glass of wine" - glass_desc = "A very classy looking drink." - glass_center_of_mass = list("x"=15, "y"=7) - - ethanol/cognac - name = "Cognac" - id = "cognac" - description = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. Classy as fornication." - color = "#AB3C05" // rgb: 171, 60, 5 - boozepwr = 1.5 - dizzy_adj = 4 - confused_start = 115 //amount absorbed after which mob starts confusing directions - - glass_icon_state = "cognacglass" - glass_name = "glass of cognac" - glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this." - glass_center_of_mass = list("x"=16, "y"=6) - - ethanol/hooch - name = "Hooch" - id = "hooch" - description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - dizzy_adj = 6 - slurr_adj = 5 - slur_start = 35 //amount absorbed after which mob starts slurring - confused_start = 90 //amount absorbed after which mob starts confusing directions - - glass_icon_state = "glass_brown2" - glass_name = "glass of Hooch" - glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." - - ethanol/ale - name = "Ale" - id = "ale" - description = "A dark alchoholic beverage made by malted barley and yeast." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1 - - glass_icon_state = "aleglass" - glass_name = "glass of ale" - glass_desc = "A freezing pint of delicious ale" - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/absinthe - name = "Absinthe" - id = "absinthe" - description = "Watch out that the Green Fairy doesn't come for you!" - color = "#33EE00" // rgb: 51, 238, 0 - boozepwr = 4 - dizzy_adj = 5 - slur_start = 15 - confused_start = 30 - - glass_icon_state = "absintheglass" - glass_name = "glass of absinthe" - glass_desc = "Wormwood, anise, oh my." - glass_center_of_mass = list("x"=16, "y"=5) - - ethanol/pwine - name = "Poison Wine" - id = "pwine" - description = "Is this even wine? Toxic! Hallucinogenic! Probably consumed in boatloads by your superiors!" - color = "#000000" // rgb: 0, 0, 0 SHOCKER - boozepwr = 1 - dizzy_adj = 1 - slur_start = 1 - confused_start = 1 - - glass_icon_state = "pwineglass" - glass_name = "glass of ???" - glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" - glass_center_of_mass = list("x"=16, "y"=5) - - on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.druggy = max(M.druggy, 50) - if(!data) data = 1 - data++ - switch(data) - if(1 to 25) - if (!M.stuttering) M.stuttering = 1 - M.make_dizzy(1) - M.hallucination = max(M.hallucination, 3) - if(prob(1)) M.emote(pick("twitch","giggle")) - if(25 to 75) - if (!M.stuttering) M.stuttering = 1 - M.hallucination = max(M.hallucination, 10) - M.make_jittery(2) - M.make_dizzy(2) - M.druggy = max(M.druggy, 45) - if(prob(5)) M.emote(pick("twitch","giggle")) - if (75 to 150) - if (!M.stuttering) M.stuttering = 1 - M.hallucination = max(M.hallucination, 60) - M.make_jittery(4) - M.make_dizzy(4) - M.druggy = max(M.druggy, 60) - if(prob(10)) M.emote(pick("twitch","giggle")) - if(prob(30)) M.adjustToxLoss(2) - if (150 to 300) - if (!M.stuttering) M.stuttering = 1 - M.hallucination = max(M.hallucination, 60) - M.make_jittery(4) - M.make_dizzy(4) - M.druggy = max(M.druggy, 60) - if(prob(10)) M.emote(pick("twitch","giggle")) - if(prob(30)) M.adjustToxLoss(2) - if(prob(5)) if(ishuman(M)) - var/mob/living/carbon/human/H = M - var/datum/organ/internal/heart/L = H.internal_organs_by_name["heart"] - if (L && istype(L)) - L.take_damage(5, 0) - if (300 to INFINITY) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - var/datum/organ/internal/heart/L = H.internal_organs_by_name["heart"] - if (L && istype(L)) - L.take_damage(100, 0) - holder.remove_reagent(src.id, FOOD_METABOLISM) - - ethanol/rum - name = "Rum" - id = "rum" - description = "Yohoho and all that." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1.5 - - glass_icon_state = "rumglass" - glass_name = "glass of rum" - glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) - - ethanol/deadrum - name = "Deadrum" - id = "rum" // duplicate ids? - description = "Popular with the sailors. Not very popular with everyone else." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1 - - glass_icon_state = "rumglass" - glass_name = "glass of rum" - glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) - - on_mob_life(var/mob/living/M as mob) - ..() - M.dizziness +=5 - return - - ethanol/sake - name = "Sake" - id = "sake" - description = "Anime's favorite drink." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of sake" - glass_desc = "A glass of sake." - glass_center_of_mass = list("x"=16, "y"=12) - -/////////////////////////////////////////////////////////////////cocktail entities////////////////////////////////////////////// - - - ethanol/goldschlager - name = "Goldschlager" - id = "goldschlager" - description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of Goldschlager" - glass_desc = "100 proof that teen girls will drink anything with gold in it." - glass_center_of_mass = list("x"=16, "y"=12) - - ethanol/patron - name = "Patron" - id = "patron" - description = "Tequila with silver in it, a favorite of alcoholic women in the club scene." - color = "#585840" // rgb: 88, 88, 64 - boozepwr = 1.5 - - glass_icon_state = "patronglass" - glass_name = "glass of Patron" - glass_desc = "Drinking patron in the bar, with all the subpar ladies." - glass_center_of_mass = list("x"=7, "y"=8) - - ethanol/gintonic - name = "Gin and Tonic" - id = "gintonic" - description = "An all time classic, mild cocktail." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1 - - glass_icon_state = "gintonicglass" - glass_name = "glass of gin and tonic" - glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman." - glass_center_of_mass = list("x"=16, "y"=7) - - ethanol/cuba_libre - name = "Cuba Libre" - id = "cubalibre" - description = "Rum, mixed with cola. Viva la revolucion." - color = "#3E1B00" // rgb: 62, 27, 0 - boozepwr = 1.5 - - glass_icon_state = "cubalibreglass" - glass_name = "glass of Cuba Libre" - glass_desc = "A classic mix of rum and cola." - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/whiskey_cola - name = "Whiskey Cola" - id = "whiskeycola" - description = "Whiskey, mixed with cola. Surprisingly refreshing." - color = "#3E1B00" // rgb: 62, 27, 0 - boozepwr = 2 - - glass_icon_state = "whiskeycolaglass" - glass_name = "glass of whiskey cola" - glass_desc = "An innocent-looking mixture of cola and Whiskey. Delicious." - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/martini - name = "Classic Martini" - id = "martini" - description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - - glass_icon_state = "martiniglass" - glass_name = "glass of classic martini" - glass_desc = "Damn, the bartender even stirred it, not shook it." - glass_center_of_mass = list("x"=17, "y"=8) - - ethanol/vodkamartini - name = "Vodka Martini" - id = "vodkamartini" - description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 4 - - glass_icon_state = "martiniglass" - glass_name = "glass of vodka martini" - glass_desc ="A bastardisation of the classic martini. Still great." - glass_center_of_mass = list("x"=17, "y"=8) - - ethanol/white_russian - name = "White Russian" - id = "whiterussian" - description = "That's just, like, your opinion, man..." - color = "#A68340" // rgb: 166, 131, 64 - boozepwr = 3 - - glass_icon_state = "whiterussianglass" - glass_name = "glass of White Russian" - glass_desc = "A very nice looking drink. But that's just, like, your opinion, man." - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/screwdrivercocktail - name = "Screwdriver" - id = "screwdrivercocktail" - description = "Vodka, mixed with plain ol' orange juice. The result is surprisingly delicious." - color = "#A68310" // rgb: 166, 131, 16 - boozepwr = 3 - - glass_icon_state = "screwdriverglass" - glass_name = "glass of Screwdriver" - glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer." - glass_center_of_mass = list("x"=15, "y"=10) - - ethanol/booger - name = "Booger" - id = "booger" - description = "Ewww..." - color = "#8CFF8C" // rgb: 140, 255, 140 - boozepwr = 1.5 - - glass_icon_state = "booger" - glass_name = "glass of Booger" - glass_desc = "Ewww..." - - ethanol/bloody_mary - name = "Bloody Mary" - id = "bloodymary" - description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "bloodymaryglass" - glass_name = "glass of Bloody Mary" - glass_desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder." - - ethanol/brave_bull - name = "Brave Bull" - id = "bravebull" - description = "It's just as effective as Dutch-Courage!" - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "bravebullglass" - glass_name = "glass of Brave Bull" - glass_desc = "Tequilla and coffee liquor, brought together in a mouthwatering mixture. Drink up." - glass_center_of_mass = list("x"=15, "y"=8) - - ethanol/tequilla_sunrise - name = "Tequila Sunrise" - id = "tequillasunrise" - description = "Tequila and orange juice. Much like a Screwdriver, only Mexican~" - color = "#FFE48C" // rgb: 255, 228, 140 - boozepwr = 2 - - glass_icon_state = "tequillasunriseglass" - glass_name = "glass of Tequilla Sunrise" - glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..." - - ethanol/toxins_special - name = "Toxins Special" - id = "phoronspecial" - description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!" - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 5 - - glass_icon_state = "toxinsspecialglass" - glass_name = "glass of Toxins Special" - glass_desc = "Whoah, this thing is on FIRE" - - on_mob_life(var/mob/living/M as mob) - if (M.bodytemperature < 330) - M.bodytemperature = min(330, M.bodytemperature + (15 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 - ..() - return - - ethanol/beepsky_smash - name = "Beepsky Smash" - id = "beepskysmash" - description = "Deny drinking this and prepare for THE LAW." - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 4 - - glass_icon_state = "beepskysmashglass" - glass_name = "Beepsky Smash" - glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." - glass_center_of_mass = list("x"=18, "y"=10) - - on_mob_life(var/mob/living/M as mob) - M.Stun(2) - ..() - return - - ethanol/irish_cream - name = "Irish Cream" - id = "irishcream" - description = "Whiskey-imbued cream, what else would you expect from the Irish." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - - glass_icon_state = "irishcreamglass" - glass_name = "glass of Irish cream" - glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?" - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/manly_dorf - name = "The Manly Dorf" - id = "manlydorf" - description = "Beer and Ale, brought together in a delicious mix. Intended for true men only." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - - glass_icon_state = "manlydorfglass" - glass_name = "glass of The Manly Dorf" - glass_desc = "A manly concotion made from Ale and Beer. Intended for true men only." - - ethanol/longislandicedtea - name = "Long Island Iced Tea" - id = "longislandicedtea" - description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 4 - - glass_icon_state = "longislandicedteaglass" - glass_name = "glass of Long Island iced tea" - glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/moonshine - name = "Moonshine" - id = "moonshine" - description = "You've really hit rock bottom now... your liver packed its bags and left last night." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 4 - - glass_icon_state = "glass_clear" - glass_name = "glass of moonshine" - glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." - - ethanol/b52 - name = "B-52" - id = "b52" - description = "Coffee, Irish Cream, and cognac. You will get bombed." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 4 - - glass_icon_state = "b52glass" - glass_name = "glass of B-52" - glass_desc = "Kahlua, Irish cream, and congac. You will get bombed." - - ethanol/irishcoffee - name = "Irish Coffee" - id = "irishcoffee" - description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "irishcoffeeglass" - glass_name = "glass of Irish coffee" - glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning." - glass_center_of_mass = list("x"=15, "y"=10) - - ethanol/margarita - name = "Margarita" - id = "margarita" - description = "On the rocks with salt on the rim. Arriba~!" - color = "#8CFF8C" // rgb: 140, 255, 140 - boozepwr = 3 - - glass_icon_state = "margaritaglass" - glass_name = "glass of margarita" - glass_desc = "On the rocks with salt on the rim. Arriba~!" - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/black_russian - name = "Black Russian" - id = "blackrussian" - description = "For the lactose-intolerant. Still as classy as a White Russian." - color = "#360000" // rgb: 54, 0, 0 - boozepwr = 3 - - glass_icon_state = "blackrussianglass" - glass_name = "glass of Black Russian" - glass_desc = "For the lactose-intolerant. Still as classy as a White Russian." - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/manhattan - name = "Manhattan" - id = "manhattan" - description = "The Detective's undercover drink of choice. He never could stomach gin..." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "manhattanglass" - glass_name = "glass of Manhattan" - glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..." - glass_center_of_mass = list("x"=17, "y"=8) - - ethanol/manhattan_proj - name = "Manhattan Project" - id = "manhattan_proj" - description = "A scientist's drink of choice, for pondering ways to blow up the station." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 5 - - glass_icon_state = "proj_manhattanglass" - glass_name = "glass of Manhattan Project" - glass_desc = "A scienitst drink of choice, for thinking how to blow up the station." - glass_center_of_mass = list("x"=17, "y"=8) - - on_mob_life(var/mob/living/M as mob) - M.druggy = max(M.druggy, 30) - ..() - return - - ethanol/whiskeysoda - name = "Whiskey Soda" - id = "whiskeysoda" - description = "For the more refined griffon." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "whiskeysodaglass2" - glass_name = "glass of whiskey soda" - glass_desc = "Ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/antifreeze - name = "Anti-freeze" - id = "antifreeze" - description = "Ultimate refreshment." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 4 - - glass_icon_state = "antifreeze" - glass_name = "glass of Anti-freeze" - glass_desc = "The ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=8) - - on_mob_life(var/mob/living/M as mob) - if (M.bodytemperature < 330) - M.bodytemperature = min(330, M.bodytemperature + (20 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 - ..() - return - - ethanol/barefoot - name = "Barefoot" - id = "barefoot" - description = "Barefoot and pregnant" - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1.5 - - glass_icon_state = "b&p" - glass_name = "glass of Barefoot" - glass_desc = "Barefoot and pregnant" - glass_center_of_mass = list("x"=17, "y"=8) - - ethanol/snowwhite - name = "Snow White" - id = "snowwhite" - description = "A cold refreshment" - color = "#FFFFFF" // rgb: 255, 255, 255 - boozepwr = 1.5 - - glass_icon_state = "snowwhite" - glass_name = "glass of Snow White" - glass_desc = "A cold refreshment." - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/melonliquor - name = "Melon Liquor" - id = "melonliquor" - description = "A relatively sweet and fruity 46 proof liquor." - color = "#138808" // rgb: 19, 136, 8 - boozepwr = 1 - - glass_icon_state = "emeraldglass" - glass_name = "glass of melon liquor" - glass_desc = "A relatively sweet and fruity 46 proof liquor." - glass_center_of_mass = list("x"=16, "y"=5) - - ethanol/bluecuracao - name = "Blue Curacao" - id = "bluecuracao" - description = "Exotically blue, fruity drink, distilled from oranges." - color = "#0000CD" // rgb: 0, 0, 205 - boozepwr = 1.5 - - glass_icon_state = "curacaoglass" - glass_name = "glass of blue curacao" - glass_desc = "Exotically blue, fruity drink, distilled from oranges." - glass_center_of_mass = list("x"=16, "y"=5) - - ethanol/suidream - name = "Sui Dream" - id = "suidream" - description = "Comprised of: White soda, blue curacao, melon liquor." - color = "#00A86B" // rgb: 0, 168, 107 - boozepwr = 0.5 - - glass_icon_state = "sdreamglass" - glass_name = "glass of Sui Dream" - glass_desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame." - glass_center_of_mass = list("x"=16, "y"=5) - - ethanol/demonsblood - name = "Demons Blood" - id = "demonsblood" - description = "AHHHH!!!!" - color = "#820000" // rgb: 130, 0, 0 - boozepwr = 3 - - glass_icon_state = "demonsblood" - glass_name = "glass of Demons' Blood" - glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up." - glass_center_of_mass = list("x"=16, "y"=2) - - ethanol/vodkatonic - name = "Vodka and Tonic" - id = "vodkatonic" - description = "For when a gin and tonic isn't russian enough." - color = "#0064C8" // rgb: 0, 100, 200 - boozepwr = 3 - dizzy_adj = 4 - slurr_adj = 3 - - glass_icon_state = "vodkatonicglass" - glass_name = "glass of vodka and tonic" - glass_desc = "For when a gin and tonic isn't Russian enough." - glass_center_of_mass = list("x"=16, "y"=7) - - ethanol/ginfizz - name = "Gin Fizz" - id = "ginfizz" - description = "Refreshingly lemony, deliciously dry." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1.5 - dizzy_adj = 4 - slurr_adj = 3 - - glass_icon_state = "ginfizzglass" - glass_name = "glass of gin fizz" - glass_desc = "Refreshingly lemony, deliciously dry." - glass_center_of_mass = list("x"=16, "y"=7) - - ethanol/bahama_mama - name = "Bahama mama" - id = "bahama_mama" - description = "Tropical cocktail." - color = "#FF7F3B" // rgb: 255, 127, 59 - boozepwr = 2 - - glass_icon_state = "bahama_mama" - glass_name = "glass of Bahama Mama" - glass_desc = "Tropical cocktail" - glass_center_of_mass = list("x"=16, "y"=5) - - ethanol/singulo - name = "Singulo" - id = "singulo" - description = "A blue-space beverage!" - color = "#2E6671" // rgb: 46, 102, 113 - boozepwr = 5 - dizzy_adj = 15 - slurr_adj = 15 - - glass_icon_state = "singulo" - glass_name = "glass of Singulo" - glass_desc = "A blue-space beverage." - glass_center_of_mass = list("x"=17, "y"=4) - - ethanol/sbiten - name = "Sbiten" - id = "sbiten" - description = "A spicy Vodka! Might be a little hot for the little guys!" - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "sbitenglass" - glass_name = "glass of Sbiten" - glass_desc = "A spicy mix of Vodka and Spice. Very hot." - glass_center_of_mass = list("x"=17, "y"=8) - - on_mob_life(var/mob/living/M as mob) - if (M.bodytemperature < 360) - M.bodytemperature = min(360, M.bodytemperature + (50 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 - ..() - return - - ethanol/devilskiss - name = "Devils Kiss" - id = "devilskiss" - description = "Creepy time!" - color = "#A68310" // rgb: 166, 131, 16 - boozepwr = 3 - - glass_icon_state = "devilskiss" - glass_name = "glass of Devil's Kiss" - glass_desc = "Creepy time!" - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/red_mead - name = "Red Mead" - id = "red_mead" - description = "The true Viking's drink! Even though it has a strange red color." - color = "#C73C00" // rgb: 199, 60, 0 - boozepwr = 1.5 - - glass_icon_state = "red_meadglass" - glass_name = "glass of red mead" - glass_desc = "A true Viking's beverage, though its color is strange." - glass_center_of_mass = list("x"=17, "y"=10) - - ethanol/mead - name = "Mead" - id = "mead" - description = "A Viking's drink, though a cheap one." - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1.5 - nutriment_factor = 1 * FOOD_METABOLISM - - glass_icon_state = "meadglass" - glass_name = "glass of mead" - glass_desc = "A Viking's beverage, though a cheap one." - glass_center_of_mass = list("x"=17, "y"=10) - - ethanol/iced_beer - name = "Iced Beer" - id = "iced_beer" - description = "A beer which is so cold the air around it freezes." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 1 - - glass_icon_state = "iced_beerglass" - glass_name = "glass of iced beer" - glass_desc = "A beer so frosty, the air around it freezes." - glass_center_of_mass = list("x"=16, "y"=7) - - on_mob_life(var/mob/living/M as mob) - if(M.bodytemperature > 270) - M.bodytemperature = max(270, M.bodytemperature - (20 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 - ..() - return - - ethanol/grog - name = "Grog" - id = "grog" - description = "Watered down rum, NanoTrasen approves!" - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 0.5 - - glass_icon_state = "grogglass" - glass_name = "glass of grog" - glass_desc = "A fine and cepa drink for Space." - - ethanol/aloe - name = "Aloe" - id = "aloe" - description = "So very, very, very good." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "aloe" - glass_name = "glass of Aloe" - glass_desc = "Very, very, very good." - glass_center_of_mass = list("x"=17, "y"=8) - - ethanol/andalusia - name = "Andalusia" - id = "andalusia" - description = "A nice, strangely named drink." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 3 - - glass_icon_state = "andalusia" - glass_name = "glass of Andalusia" - glass_desc = "A nice, strange named drink." - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/alliescocktail - name = "Allies Cocktail" - id = "alliescocktail" - description = "A drink made from your allies, not as sweet as when made from your enemies." - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - - glass_icon_state = "alliescocktail" - glass_name = "glass of Allies cocktail" - glass_desc = "A drink made from your allies." - glass_center_of_mass = list("x"=17, "y"=8) - - ethanol/acid_spit - name = "Acid Spit" - id = "acidspit" - description = "A drink for the daring, can be deadly if incorrectly prepared!" - reagent_state = LIQUID - color = "#365000" // rgb: 54, 80, 0 - boozepwr = 1.5 - - glass_icon_state = "acidspitglass" - glass_name = "glass of Acid Spit" - glass_desc = "A drink from Nanotrasen. Made from live aliens." - glass_center_of_mass = list("x"=16, "y"=7) - - ethanol/amasec - name = "Amasec" - id = "amasec" - description = "Official drink of the NanoTrasen Gun-Club!" - reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 2 - - glass_icon_state = "amasecglass" - glass_name = "glass of Amasec" - glass_desc = "Always handy before COMBAT!!!" - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/changelingsting - name = "Changeling Sting" - id = "changelingsting" - description = "You take a tiny sip and feel a burning sensation..." - color = "#2E6671" // rgb: 46, 102, 113 - boozepwr = 5 - - glass_icon_state = "changelingsting" - glass_name = "glass of Changeling Sting" - glass_desc = "A stingy drink." - - ethanol/irishcarbomb - name = "Irish Car Bomb" - id = "irishcarbomb" - description = "Mmm, tastes like chocolate cake..." - color = "#2E6671" // rgb: 46, 102, 113 - boozepwr = 3 - dizzy_adj = 5 - - glass_icon_state = "irishcarbomb" - glass_name = "glass of Irish Car Bomb" - glass_desc = "An irish car bomb." - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/syndicatebomb - name = "Syndicate Bomb" - id = "syndicatebomb" - description = "Tastes like terrorism!" - color = "#2E6671" // rgb: 46, 102, 113 - boozepwr = 5 - - glass_icon_state = "syndicatebomb" - glass_name = "glass of Syndicate Bomb" - glass_desc = "Tastes like terrorism!" - glass_center_of_mass = list("x"=16, "y"=4) - - ethanol/erikasurprise - name = "Erika Surprise" - id = "erikasurprise" - description = "The surprise is it's green!" - color = "#2E6671" // rgb: 46, 102, 113 - boozepwr = 3 - - glass_icon_state = "erikasurprise" - glass_name = "glass of Erika Surprise" - glass_desc = "The surprise is, it's green!" - glass_center_of_mass = list("x"=16, "y"=9) - - ethanol/driestmartini - name = "Driest Martini" - id = "driestmartini" - description = "Only for the experienced. You think you see sand floating in the glass." - nutriment_factor = 1 * FOOD_METABOLISM - color = "#2E6671" // rgb: 46, 102, 113 - boozepwr = 4 - - glass_icon_state = "driestmartiniglass" - glass_name = "glass of Driest Martini" - glass_desc = "Only for the experienced. You think you see sand floating in the glass." - glass_center_of_mass = list("x"=17, "y"=8) - - ethanol/bananahonk - name = "Banana Mama" - id = "bananahonk" - description = "A drink from Clown Heaven." - nutriment_factor = 1 * REAGENTS_METABOLISM - color = "#FFFF91" // rgb: 255, 255, 140 - boozepwr = 4 - - glass_icon_state = "bananahonkglass" - glass_name = "glass of Banana Honk" - glass_desc = "A drink from Banana Heaven." - glass_center_of_mass = list("x"=16, "y"=8) - - ethanol/silencer - name = "Silencer" - id = "silencer" - description = "A drink from Mime Heaven." - nutriment_factor = 1 * FOOD_METABOLISM - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 4 - - glass_icon_state = "silencerglass" - glass_name = "glass of Silencer" - glass_desc = "A drink from mime Heaven." - glass_center_of_mass = list("x"=16, "y"=9) - - on_mob_life(var/mob/living/M as mob) - if(!data) data = 1 - data++ - M.dizziness +=10 - if(data >= 55 && data <115) - if (!M.stuttering) M.stuttering = 1 - M.stuttering += 10 - else if(data >= 115 && prob(33)) - M.confused = max(M.confused+15,15) - ..() - return - -// Undefine the alias for REAGENTS_EFFECT_MULTIPLER -#undef REM diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index fc8c129140..813a801ef7 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -1,2257 +1,1946 @@ -/////////////////////////////////////////////////////////////////////////////////// -datum - chemical_reaction - var/name = null - var/id = null - var/result = null - var/resultcolor = null //for paint - var/list/required_reagents = new/list() - var/list/required_catalysts = new/list() - - // Both of these variables are mostly going to be used with slime cores - but if you want to, you can use them for other things - var/atom/required_container = null // the container required for the reaction to happen - var/required_other = 0 // an integer required for the reaction to happen - - var/result_amount = 0 - var/secondary = 0 // set to nonzero if secondary reaction - var/list/secondary_results = list() //additional reagents produced by the reaction - var/requires_heating = 0 - - proc - on_reaction(var/datum/reagents/holder, var/created_volume) - return - - //I recommend you set the result amount to the total volume of all components. - - explosion_potassium - name = "Explosion" - id = "explosion_potassium" - result = null - required_reagents = list("water" = 1, "potassium" = 1) - result_amount = 2 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/datum/effect/effect/system/reagents_explosion/e = new() - e.set_up(round (created_volume/10, 1), holder.my_atom, 0, 0) - e.holder_damage(holder.my_atom) - if(isliving(holder.my_atom)) - e.amount *= 0.5 - var/mob/living/L = holder.my_atom - if(L.stat!=DEAD) - e.amount *= 0.5 - e.start() - holder.clear_reagents() - return - - emp_pulse - name = "EMP Pulse" - id = "emp_pulse" - result = null - required_reagents = list("uranium" = 1, "iron" = 1) // Yes, laugh, it's the best recipe I could think of that makes a little bit of sense - result_amount = 2 - - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - // 100 created volume = 4 heavy range & 7 light range. A few tiles smaller than traitor EMP grandes. - // 200 created volume = 8 heavy range & 14 light range. 4 tiles larger than traitor EMP grenades. - empulse(location, round(created_volume / 24), round(created_volume / 14), 1) - holder.clear_reagents() - return - - silicate - name = "Silicate" - id = "silicate" - result = "silicate" - required_reagents = list("aluminum" = 1, "silicon" = 1, "oxygen" = 1) - result_amount = 3 - - stoxin - name = "Soporific" - id = "stoxin" - result = "stoxin" - required_reagents = list("chloralhydrate" = 1, "sugar" = 4) - result_amount = 5 - - sterilizine - name = "Sterilizine" - id = "sterilizine" - result = "sterilizine" - required_reagents = list("ethanol" = 1, "anti_toxin" = 1, "chlorine" = 1) - result_amount = 3 - - inaprovaline - name = "Inaprovaline" - id = "inaprovaline" - result = "inaprovaline" - required_reagents = list("oxygen" = 1, "carbon" = 1, "sugar" = 1) - result_amount = 3 - - anti_toxin - name = "Dylovene" - id = "anti_toxin" - result = "anti_toxin" - required_reagents = list("silicon" = 1, "potassium" = 1, "nitrogen" = 1) - result_amount = 3 - - mutagen - name = "Unstable mutagen" - id = "mutagen" - result = "mutagen" - required_reagents = list("radium" = 1, "phosphorus" = 1, "chlorine" = 1) - result_amount = 3 - - tramadol - name = "Tramadol" - id = "tramadol" - result = "tramadol" - required_reagents = list("inaprovaline" = 1, "ethanol" = 1, "oxygen" = 1) - result_amount = 3 - - paracetamol - name = "Paracetamol" - id = "paracetamol" - result = "paracetamol" - required_reagents = list("tramadol" = 1, "sugar" = 1, "water" = 1) - result_amount = 3 - - oxycodone - name = "Oxycodone" - id = "oxycodone" - result = "oxycodone" - required_reagents = list("ethanol" = 1, "tramadol" = 1) - required_catalysts = list("phoron" = 1) - result_amount = 1 - - //cyanide - // name = "Cyanide" - // id = "cyanide" - // result = "cyanide" - // required_reagents = list("hydrogen" = 1, "carbon" = 1, "nitrogen" = 1) - // result_amount = 1 - - water //I can't believe we never had this. - name = "Water" - id = "water" - result = "water" - required_reagents = list("oxygen" = 1, "hydrogen" = 2) - result_amount = 1 - - thermite - name = "Thermite" - id = "thermite" - result = "thermite" - required_reagents = list("aluminum" = 1, "iron" = 1, "oxygen" = 1) - result_amount = 3 - - lexorin - name = "Lexorin" - id = "lexorin" - result = "lexorin" - required_reagents = list("phoron" = 1, "hydrogen" = 1, "nitrogen" = 1) - result_amount = 3 - - space_drugs - name = "Space Drugs" - id = "space_drugs" - result = "space_drugs" - required_reagents = list("mercury" = 1, "sugar" = 1, "lithium" = 1) - result_amount = 3 - - lube - name = "Space Lube" - id = "lube" - result = "lube" - required_reagents = list("water" = 1, "silicon" = 1, "oxygen" = 1) - result_amount = 4 - - pacid - name = "Polytrinic acid" - id = "pacid" - result = "pacid" - required_reagents = list("sacid" = 1, "chlorine" = 1, "potassium" = 1) - result_amount = 3 - - synaptizine - name = "Synaptizine" - id = "synaptizine" - result = "synaptizine" - required_reagents = list("sugar" = 1, "lithium" = 1, "water" = 1) - result_amount = 3 - - hyronalin - name = "Hyronalin" - id = "hyronalin" - result = "hyronalin" - required_reagents = list("radium" = 1, "anti_toxin" = 1) - result_amount = 2 - - arithrazine - name = "Arithrazine" - id = "arithrazine" - result = "arithrazine" - required_reagents = list("hyronalin" = 1, "hydrogen" = 1) - result_amount = 2 - - impedrezene - name = "Impedrezene" - id = "impedrezene" - result = "impedrezene" - required_reagents = list("mercury" = 1, "oxygen" = 1, "sugar" = 1) - result_amount = 2 - - kelotane - name = "Kelotane" - id = "kelotane" - result = "kelotane" - required_reagents = list("silicon" = 1, "carbon" = 1) - result_amount = 2 - - peridaxon - name = "Peridaxon" - id = "peridaxon" - result = "peridaxon" - required_reagents = list("bicaridine" = 2, "clonexadone" = 2) - required_catalysts = list("phoron" = 5) - result_amount = 2 - - virus_food - name = "Virus Food" - id = "virusfood" - result = "virusfood" - required_reagents = list("water" = 1, "milk" = 1) - result_amount = 5 - - leporazine - name = "Leporazine" - id = "leporazine" - result = "leporazine" - required_reagents = list("silicon" = 1, "copper" = 1) - required_catalysts = list("phoron" = 5) - result_amount = 2 - - cryptobiolin - name = "Cryptobiolin" - id = "cryptobiolin" - result = "cryptobiolin" - required_reagents = list("potassium" = 1, "oxygen" = 1, "sugar" = 1) - result_amount = 3 - - tricordrazine - name = "Tricordrazine" - id = "tricordrazine" - result = "tricordrazine" - required_reagents = list("inaprovaline" = 1, "anti_toxin" = 1) - result_amount = 2 - - alkysine - name = "Alkysine" - id = "alkysine" - result = "alkysine" - required_reagents = list("chlorine" = 1, "nitrogen" = 1, "anti_toxin" = 1) - result_amount = 2 - - dexalin - name = "Dexalin" - id = "dexalin" - result = "dexalin" - required_reagents = list("oxygen" = 2, "phoron" = 0.1) - required_catalysts = list("phoron" = 5) - result_amount = 1 - - dermaline - name = "Dermaline" - id = "dermaline" - result = "dermaline" - required_reagents = list("oxygen" = 1, "phosphorus" = 1, "kelotane" = 1) - result_amount = 3 - - dexalinp - name = "Dexalin Plus" - id = "dexalinp" - result = "dexalinp" - required_reagents = list("dexalin" = 1, "carbon" = 1, "iron" = 1) - result_amount = 3 - - bicaridine - name = "Bicaridine" - id = "bicaridine" - result = "bicaridine" - required_reagents = list("inaprovaline" = 1, "carbon" = 1) - result_amount = 2 - - hyperzine - name = "Hyperzine" - id = "hyperzine" - result = "hyperzine" - required_reagents = list("sugar" = 1, "phosphorus" = 1, "sulfur" = 1,) - result_amount = 3 - - ryetalyn - name = "Ryetalyn" - id = "ryetalyn" - result = "ryetalyn" - required_reagents = list("arithrazine" = 1, "carbon" = 1) - result_amount = 2 - - cryoxadone - name = "Cryoxadone" - id = "cryoxadone" - result = "cryoxadone" - required_reagents = list("dexalin" = 1, "water" = 1, "oxygen" = 1) - result_amount = 3 - - clonexadone - name = "Clonexadone" - id = "clonexadone" - result = "clonexadone" - required_reagents = list("cryoxadone" = 1, "sodium" = 1, "phoron" = 0.1) - required_catalysts = list("phoron" = 5) - result_amount = 2 - - spaceacillin - name = "Spaceacillin" - id = "spaceacillin" - result = "spaceacillin" - required_reagents = list("cryptobiolin" = 1, "inaprovaline" = 1) - result_amount = 2 - - imidazoline - name = "imidazoline" - id = "imidazoline" - result = "imidazoline" - required_reagents = list("carbon" = 1, "hydrogen" = 1, "anti_toxin" = 1) - result_amount = 2 - - ethylredoxrazine - name = "Ethylredoxrazine" - id = "ethylredoxrazine" - result = "ethylredoxrazine" - required_reagents = list("oxygen" = 1, "anti_toxin" = 1, "carbon" = 1) - result_amount = 3 - - ethanoloxidation - name = "ethanoloxidation" //Kind of a placeholder in case someone ever changes it so that chemicals - id = "ethanoloxidation" // react in the body. Also it would be silly if it didn't exist. - result = "water" - required_reagents = list("ethylredoxrazine" = 1, "ethanol" = 1) - result_amount = 2 - - glycerol - name = "Glycerol" - id = "glycerol" - result = "glycerol" - required_reagents = list("cornoil" = 3, "sacid" = 1) - result_amount = 1 - - nitroglycerin - name = "Nitroglycerin" - id = "nitroglycerin" - result = "nitroglycerin" - required_reagents = list("glycerol" = 1, "pacid" = 1, "sacid" = 1) - result_amount = 2 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/datum/effect/effect/system/reagents_explosion/e = new() - e.set_up(round (created_volume/2, 1), holder.my_atom, 0, 0) - e.holder_damage(holder.my_atom) - if(isliving(holder.my_atom)) - e.amount *= 0.5 - var/mob/living/L = holder.my_atom - if(L.stat!=DEAD) - e.amount *= 0.5 - e.start() - - holder.clear_reagents() - return - - sodiumchloride - name = "Sodium Chloride" - id = "sodiumchloride" - result = "sodiumchloride" - required_reagents = list("sodium" = 1, "chlorine" = 1) - result_amount = 2 - - flash_powder - name = "Flash powder" - id = "flash_powder" - result = null - required_reagents = list("aluminum" = 1, "potassium" = 1, "sulfur" = 1 ) - result_amount = null - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread - s.set_up(2, 1, location) - s.start() - for(var/mob/living/carbon/M in viewers(world.view, location)) - switch(get_dist(M, location)) - if(0 to 3) - if(hasvar(M, "glasses")) - if(istype(M:glasses, /obj/item/clothing/glasses/sunglasses)) - continue - - flick("e_flash", M.flash) - M.Weaken(15) - - if(4 to 5) - if(hasvar(M, "glasses")) - if(istype(M:glasses, /obj/item/clothing/glasses/sunglasses)) - continue - - flick("e_flash", M.flash) - M.Stun(5) - - napalm - name = "Napalm" - id = "napalm" - result = null - required_reagents = list("aluminum" = 1, "phoron" = 1, "sacid" = 1 ) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/turf/location = get_turf(holder.my_atom.loc) - for(var/turf/simulated/floor/target_tile in range(0,location)) - target_tile.assume_gas("volatile_fuel", created_volume, 400+T0C) - spawn (0) target_tile.hotspot_expose(700, 400) - holder.del_reagent("napalm") - return - - /* - smoke - name = "Smoke" - id = "smoke" - result = null - required_reagents = list("potassium" = 1, "sugar" = 1, "phosphorus" = 1 ) - result_amount = null - secondary = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - var/datum/effect/system/bad_smoke_spread/S = new /datum/effect/system/bad_smoke_spread - S.attach(location) - S.set_up(10, 0, location) - playsound(location, 'sound/effects/smoke.ogg', 50, 1, -3) - spawn(0) - S.start() - sleep(10) - S.start() - sleep(10) - S.start() - sleep(10) - S.start() - sleep(10) - S.start() - holder.clear_reagents() - return */ - - chemsmoke - name = "Chemsmoke" - id = "chemsmoke" - result = null - required_reagents = list("potassium" = 1, "sugar" = 1, "phosphorus" = 1) - result_amount = 0.4 - secondary = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - var/datum/effect/effect/system/smoke_spread/chem/S = new /datum/effect/effect/system/smoke_spread/chem - S.attach(location) - S.set_up(holder, created_volume, 0, location) - playsound(location, 'sound/effects/smoke.ogg', 50, 1, -3) - spawn(0) - S.start() - holder.clear_reagents() - return - - chloralhydrate - name = "Chloral Hydrate" - id = "chloralhydrate" - result = "chloralhydrate" - required_reagents = list("ethanol" = 1, "chlorine" = 3, "water" = 1) - result_amount = 1 - - potassium_chloride - name = "Potassium Chloride" - id = "potassium_chloride" - result = "potassium_chloride" - required_reagents = list("sodiumchloride" = 1, "potassium" = 1) - result_amount = 2 - - potassium_chlorophoride - name = "Potassium Chlorophoride" - id = "potassium_chlorophoride" - result = "potassium_chlorophoride" - required_reagents = list("potassium_chloride" = 1, "phoron" = 1, "chloralhydrate" = 1) - result_amount = 4 - - stoxin - name = "Soporific" - id = "stoxin" - result = "stoxin" - required_reagents = list("chloralhydrate" = 1, "sugar" = 4) - result_amount = 5 - - zombiepowder - name = "Zombie Powder" - id = "zombiepowder" - result = "zombiepowder" - required_reagents = list("carpotoxin" = 5, "stoxin" = 5, "copper" = 5) - result_amount = 2 - - rezadone - name = "Rezadone" - id = "rezadone" - result = "rezadone" - required_reagents = list("carpotoxin" = 1, "cryptobiolin" = 1, "copper" = 1) - result_amount = 3 - - mindbreaker - name = "Mindbreaker Toxin" - id = "mindbreaker" - result = "mindbreaker" - required_reagents = list("silicon" = 1, "hydrogen" = 1, "anti_toxin" = 1) - result_amount = 3 - - lipozine - name = "Lipozine" - id = "Lipozine" - result = "lipozine" - required_reagents = list("sodiumchloride" = 1, "ethanol" = 1, "radium" = 1) - result_amount = 3 - - phoronsolidification - name = "Solid Phoron" - id = "solidphoron" - result = null - required_reagents = list("iron" = 5, "frostoil" = 5, "phoron" = 20) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - new /obj/item/stack/sheet/mineral/phoron(location) - return - - plastication - name = "Plastic" - id = "solidplastic" - result = null - required_reagents = list("pacid" = 10, "plasticide" = 20) - result_amount = 1 - on_reaction(var/datum/reagents/holder) - new /obj/item/stack/sheet/mineral/plastic(get_turf(holder.my_atom),10) - return - - virus_food - name = "Virus Food" - id = "virusfood" - result = "virusfood" - required_reagents = list("water" = 5, "milk" = 5, "oxygen" = 5) - result_amount = 15 -/* - mix_virus - name = "Mix Virus" - id = "mixvirus" - result = "blood" - required_reagents = list("virusfood" = 5) - required_catalysts = list("blood") - var/level = 2 - - on_reaction(var/datum/reagents/holder, var/created_volume) - - var/datum/reagent/blood/B = locate(/datum/reagent/blood) in holder.reagent_list - if(B && B.data) - var/datum/disease/advance/D = locate(/datum/disease/advance) in B.data["viruses"] - if(D) - D.Evolve(level - rand(0, 1)) - - - mix_virus_2 - - name = "Mix Virus 2" - id = "mixvirus2" - required_reagents = list("mutagen" = 5) - level = 4 - - rem_virus - - name = "Devolve Virus" - id = "remvirus" - required_reagents = list("synaptizine" = 5) - - on_reaction(var/datum/reagents/holder, var/created_volume) - - var/datum/reagent/blood/B = locate(/datum/reagent/blood) in holder.reagent_list - if(B && B.data) - var/datum/disease/advance/D = locate(/datum/disease/advance) in B.data["viruses"] - if(D) - D.Devolve() -*/ - condensedcapsaicin - name = "Condensed Capsaicin" - id = "condensedcapsaicin" - result = "condensedcapsaicin" - required_reagents = list("capsaicin" = 2) - required_catalysts = list("phoron" = 5) - result_amount = 1 - - ketchup - name = "Ketchup" - id = "ketchup" - result = "ketchup" - required_reagents = list("tomatojuice" = 2, "water" = 1, "sugar" = 1) - result_amount = 4 - -/////////////////////////////////////////////////////////////////////////////////// - -// foam and foam precursor - - surfactant - name = "Foam surfactant" - id = "foam surfactant" - result = "fluorosurfactant" - required_reagents = list("fluorine" = 2, "carbon" = 2, "sacid" = 1) - result_amount = 5 - - - foam - name = "Foam" - id = "foam" - result = null - required_reagents = list("fluorosurfactant" = 1, "water" = 1) - result_amount = 2 - - on_reaction(var/datum/reagents/holder, var/created_volume) - - - var/location = get_turf(holder.my_atom) - for(var/mob/M in viewers(5, location)) - M << "\red The solution violently bubbles!" - - location = get_turf(holder.my_atom) - - for(var/mob/M in viewers(5, location)) - M << "\red The solution spews out foam!" - - //world << "Holder volume is [holder.total_volume]" - //for(var/datum/reagent/R in holder.reagent_list) - // world << "[R.name] = [R.volume]" - - var/datum/effect/effect/system/foam_spread/s = new() - s.set_up(created_volume, location, holder, 0) - s.start() - holder.clear_reagents() - return - - metalfoam - name = "Metal Foam" - id = "metalfoam" - result = null - required_reagents = list("aluminum" = 3, "foaming_agent" = 1, "pacid" = 1) - result_amount = 5 - - on_reaction(var/datum/reagents/holder, var/created_volume) - - - var/location = get_turf(holder.my_atom) - - for(var/mob/M in viewers(5, location)) - M << "\red The solution spews out a metalic foam!" - - var/datum/effect/effect/system/foam_spread/s = new() - s.set_up(created_volume, location, holder, 1) - s.start() - return - - ironfoam - name = "Iron Foam" - id = "ironlfoam" - result = null - required_reagents = list("iron" = 3, "foaming_agent" = 1, "pacid" = 1) - result_amount = 5 - - on_reaction(var/datum/reagents/holder, var/created_volume) - - - var/location = get_turf(holder.my_atom) - - for(var/mob/M in viewers(5, location)) - M << "\red The solution spews out a metalic foam!" - - var/datum/effect/effect/system/foam_spread/s = new() - s.set_up(created_volume, location, holder, 2) - s.start() - return - - - - foaming_agent - name = "Foaming Agent" - id = "foaming_agent" - result = "foaming_agent" - required_reagents = list("lithium" = 1, "hydrogen" = 1) - result_amount = 1 - - // Synthesizing these three chemicals is pretty complex in real life, but fuck it, it's just a game! - ammonia - name = "Ammonia" - id = "ammonia" - result = "ammonia" - required_reagents = list("hydrogen" = 3, "nitrogen" = 1) - result_amount = 3 - - diethylamine - name = "Diethylamine" - id = "diethylamine" - result = "diethylamine" - required_reagents = list ("ammonia" = 1, "ethanol" = 1) - result_amount = 2 - - space_cleaner - name = "Space cleaner" - id = "cleaner" - result = "cleaner" - required_reagents = list("ammonia" = 1, "water" = 1) - result_amount = 2 - - plantbgone - name = "Plant-B-Gone" - id = "plantbgone" - result = "plantbgone" - required_reagents = list("toxin" = 1, "water" = 4) - result_amount = 5 - - -/////////////////////////////////////OLD SLIME CORE REACTIONS /////////////////////////////// -/* - slimepepper - name = "Slime Condensedcapaicin" - id = "m_condensedcapaicin" - result = "condensedcapsaicin" - required_reagents = list("sugar" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 1 - slimefrost - name = "Slime Frost Oil" - id = "m_frostoil" - result = "frostoil" - required_reagents = list("water" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 1 - slimeglycerol - name = "Slime Glycerol" - id = "m_glycerol" - result = "glycerol" - required_reagents = list("blood" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 1 - - slime_explosion - name = "Slime Explosion" - id = "m_explosion" - result = null - required_reagents = list("blood" = 1) - result_amount = 2 - required_container = /obj/item/slime_core - required_other = 2 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - var/datum/effect/effect/system/reagents_explosion/e = new() - e.set_up(round (created_volume/10, 1), location, 0, 0) - e.start() - - holder.clear_reagents() - return - slimejam - name = "Slime Jam" - id = "m_jam" - result = "slimejelly" - required_reagents = list("water" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 2 - slimesynthi - name = "Slime Synthetic Flesh" - id = "m_flesh" - result = null - required_reagents = list("sugar" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 2 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - new /obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh(location) - return - - slimeenzyme - name = "Slime Enzyme" - id = "m_enzyme" - result = "enzyme" - required_reagents = list("blood" = 1, "water" = 1) - result_amount = 2 - required_container = /obj/item/slime_core - required_other = 3 - slimeplasma - name = "Slime Plasma" - id = "m_plasma" - result = "plasma" - required_reagents = list("sugar" = 1, "blood" = 2) - result_amount = 2 - required_container = /obj/item/slime_core - required_other = 3 - slimevirus - name = "Slime Virus" - id = "m_virus" - result = null - required_reagents = list("sugar" = 1, "sacid" = 1) - result_amount = 2 - required_container = /obj/item/slime_core - required_other = 3 - on_reaction(var/datum/reagents/holder, var/created_volume) - holder.clear_reagents() - - var/virus = pick(/datum/disease/advance/flu, /datum/disease/advance/cold, \ - /datum/disease/pierrot_throat, /datum/disease/fake_gbs, \ - /datum/disease/brainrot, /datum/disease/magnitis) - - - var/datum/disease/F = new virus(0) - var/list/data = list("viruses"= list(F)) - holder.add_reagent("blood", 20, data) - - holder.add_reagent("cyanide", rand(1,10)) - - return - - slimeteleport - name = "Slime Teleport" - id = "m_tele" - result = null - required_reagents = list("pacid" = 2, "mutagen" = 2) - required_catalysts = list("plasma" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 4 - on_reaction(var/datum/reagents/holder, var/created_volume) - - // Calculate new position (searches through beacons in world) - var/obj/item/device/radio/beacon/chosen - var/list/possible = list() - for(var/obj/item/device/radio/beacon/W in world) - possible += W - - if(possible.len > 0) - chosen = pick(possible) - - if(chosen) - // Calculate previous position for transition - - var/turf/FROM = get_turf(holder.my_atom) // the turf of origin we're travelling FROM - var/turf/TO = get_turf(chosen) // the turf of origin we're travelling TO - - playsound(TO, 'sound/effects/phasein.ogg', 100, 1) - - var/list/flashers = list() - for(var/mob/living/carbon/human/M in viewers(TO, null)) - if(M:eyecheck() <= 0) - flick("e_flash", M.flash) - flashers += M - - var/y_distance = TO.y - FROM.y - var/x_distance = TO.x - FROM.x - for (var/atom/movable/A in range(2, FROM )) // iterate thru list of mobs in the area - if(istype(A, /obj/item/device/radio/beacon)) continue // don't teleport beacons because that's just insanely stupid - if( A.anchored && !istype(A, /mob/dead/observer) ) continue // don't teleport anchored things (computers, tables, windows, grilles, etc) because this causes problems! - // do teleport ghosts however because hell why not - - var/turf/newloc = locate(A.x + x_distance, A.y + y_distance, TO.z) // calculate the new place - if(!A.Move(newloc)) // if the atom, for some reason, can't move, FORCE them to move! :) We try Move() first to invoke any movement-related checks the atom needs to perform after moving - A.loc = locate(A.x + x_distance, A.y + y_distance, TO.z) - - spawn() - if(ismob(A) && !(A in flashers)) // don't flash if we're already doing an effect - var/mob/M = A - if(M.client) - var/obj/blueeffect = new /obj(src) - blueeffect.screen_loc = "WEST,SOUTH to EAST,NORTH" - blueeffect.icon = 'icons/effects/effects.dmi' - blueeffect.icon_state = "shieldsparkles" - blueeffect.layer = 17 - blueeffect.mouse_opacity = 0 - M.client.screen += blueeffect - sleep(20) - M.client.screen -= blueeffect - del(blueeffect) - slimecrit - name = "Slime Crit" - id = "m_tele" - result = null - required_reagents = list("sacid" = 1, "blood" = 1) - required_catalysts = list("plasma" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 4 - on_reaction(var/datum/reagents/holder, var/created_volume) - - var/blocked = list(/mob/living/simple_animal/hostile, - /mob/living/simple_animal/hostile/pirate, - /mob/living/simple_animal/hostile/pirate/ranged, - /mob/living/simple_animal/hostile/russian, - /mob/living/simple_animal/hostile/russian/ranged, - /mob/living/simple_animal/hostile/syndicate, - /mob/living/simple_animal/hostile/syndicate/melee, - /mob/living/simple_animal/hostile/syndicate/melee/space, - /mob/living/simple_animal/hostile/syndicate/ranged, - /mob/living/simple_animal/hostile/syndicate/ranged/space, - /mob/living/simple_animal/hostile/alien/queen/large, - /mob/living/simple_animal/clown - )//exclusion list for things you don't want the reaction to create. - var/list/critters = typesof(/mob/living/simple_animal/hostile) - blocked // list of possible hostile mobs - - playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) - - for(var/mob/living/carbon/human/M in viewers(get_turf(holder.my_atom), null)) - if(M:eyecheck() <= 0) - flick("e_flash", M.flash) - - for(var/i = 1, i <= created_volume, i++) - var/chosen = pick(critters) - var/mob/living/simple_animal/hostile/C = new chosen - C.loc = get_turf(holder.my_atom) - if(prob(50)) - for(var/j = 1, j <= rand(1, 3), j++) - step(C, pick(NORTH,SOUTH,EAST,WEST)) - slimebork - name = "Slime Bork" - id = "m_tele" - result = null - required_reagents = list("sugar" = 1, "water" = 1) - result_amount = 2 - required_container = /obj/item/slime_core - required_other = 4 - on_reaction(var/datum/reagents/holder, var/created_volume) - - var/list/borks = typesof(/obj/item/weapon/reagent_containers/food/snacks) - /obj/item/weapon/reagent_containers/food/snacks - // BORK BORK BORK - - playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) - - for(var/mob/living/carbon/human/M in viewers(get_turf(holder.my_atom), null)) - if(M:eyecheck() <= 0) - flick("e_flash", M.flash) - - for(var/i = 1, i <= created_volume + rand(1,2), i++) - var/chosen = pick(borks) - var/obj/B = new chosen - if(B) - B.loc = get_turf(holder.my_atom) - if(prob(50)) - for(var/j = 1, j <= rand(1, 3), j++) - step(B, pick(NORTH,SOUTH,EAST,WEST)) - - - - slimechloral - name = "Slime Chloral" - id = "m_bunch" - result = "chloralhydrate" - required_reagents = list("blood" = 1, "water" = 2) - result_amount = 2 - required_container = /obj/item/slime_core - required_other = 5 - slimeretro - name = "Slime Retro" - id = "m_xeno" - result = null - required_reagents = list("sugar" = 1) - result_amount = 1 - required_container = /obj/item/slime_core - required_other = 5 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/datum/disease/F = new /datum/disease/dna_retrovirus(0) - var/list/data = list("viruses"= list(F)) - holder.add_reagent("blood", 20, data) - slimefoam - name = "Slime Foam" - id = "m_foam" - result = null - required_reagents = list("sacid" = 1) - result_amount = 2 - required_container = /obj/item/slime_core - required_other = 5 - - on_reaction(var/datum/reagents/holder, var/created_volume) - - - var/location = get_turf(holder.my_atom) - for(var/mob/M in viewers(5, location)) - M << "\red The solution violently bubbles!" - - location = get_turf(holder.my_atom) - - for(var/mob/M in viewers(5, location)) - M << "\red The solution spews out foam!" - - //world << "Holder volume is [holder.total_volume]" - //for(var/datum/reagent/R in holder.reagent_list) - // world << "[R.name] = [R.volume]" - - var/datum/effect/effect/system/foam_spread/s = new() - s.set_up(created_volume, location, holder, 0) - s.start() - holder.clear_reagents() - return -*/ -/////////////////////////////////////////////NEW SLIME CORE REACTIONS///////////////////////////////////////////// +/datum/chemical_reaction + var/name = null + var/id = null + var/result = null + var/list/required_reagents = list() + var/list/catalysts = list() + var/list/inhibitors = list() + + var/result_amount = 0 + var/mix_message = "The solution begins to bubble." + +/datum/chemical_reaction/proc/can_happen(var/datum/reagents/holder) + return 1 + +/datum/chemical_reaction/proc/on_reaction(var/datum/reagents/holder, var/created_volume) + return + +/datum/chemical_reaction/proc/send_data(var/datum/reagents/T) + return null + +/* Common reactions */ + +/datum/chemical_reaction/inaprovaline + name = "Inaprovaline" + id = "inaprovaline" + result = "inaprovaline" + required_reagents = list("oxygen" = 1, "carbon" = 1, "sugar" = 1) + result_amount = 3 + +/datum/chemical_reaction/dylovene + name = "Dylovene" + id = "anti_toxin" + result = "anti_toxin" + required_reagents = list("silicon" = 1, "potassium" = 1, "nitrogen" = 1) + result_amount = 3 + +/datum/chemical_reaction/tramadol + name = "Tramadol" + id = "tramadol" + result = "tramadol" + required_reagents = list("inaprovaline" = 1, "ethanol" = 1, "oxygen" = 1) + result_amount = 3 + +/datum/chemical_reaction/paracetamol + name = "Paracetamol" + id = "paracetamol" + result = "paracetamol" + required_reagents = list("tramadol" = 1, "sugar" = 1, "water" = 1) + result_amount = 3 + +/datum/chemical_reaction/oxycodone + name = "Oxycodone" + id = "oxycodone" + result = "oxycodone" + required_reagents = list("ethanol" = 1, "tramadol" = 1) + catalysts = list("phoron" = 1) + result_amount = 1 + +/datum/chemical_reaction/sterilizine + name = "Sterilizine" + id = "sterilizine" + result = "sterilizine" + required_reagents = list("ethanol" = 1, "anti_toxin" = 1, "chlorine" = 1) + result_amount = 3 + +/datum/chemical_reaction/silicate + name = "Silicate" + id = "silicate" + result = "silicate" + required_reagents = list("aluminum" = 1, "silicon" = 1, "oxygen" = 1) + result_amount = 3 + +/datum/chemical_reaction/mutagen + name = "Unstable mutagen" + id = "mutagen" + result = "mutagen" + required_reagents = list("radium" = 1, "phosphorus" = 1, "chlorine" = 1) + result_amount = 3 + +/datum/chemical_reaction/water + name = "Water" + id = "water" + result = "water" + required_reagents = list("oxygen" = 1, "hydrogen" = 2) + result_amount = 1 + +/datum/chemical_reaction/thermite + name = "Thermite" + id = "thermite" + result = "thermite" + required_reagents = list("aluminum" = 1, "iron" = 1, "oxygen" = 1) + result_amount = 3 + +/datum/chemical_reaction/space_drugs + name = "Space Drugs" + id = "space_drugs" + result = "space_drugs" + required_reagents = list("mercury" = 1, "sugar" = 1, "lithium" = 1) + result_amount = 3 + +/datum/chemical_reaction/lube + name = "Space Lube" + id = "lube" + result = "lube" + required_reagents = list("water" = 1, "silicon" = 1, "oxygen" = 1) + result_amount = 4 + +/datum/chemical_reaction/pacid + name = "Polytrinic acid" + id = "pacid" + result = "pacid" + required_reagents = list("sacid" = 1, "chlorine" = 1, "potassium" = 1) + result_amount = 3 + +/datum/chemical_reaction/synaptizine + name = "Synaptizine" + id = "synaptizine" + result = "synaptizine" + required_reagents = list("sugar" = 1, "lithium" = 1, "water" = 1) + result_amount = 3 + +/datum/chemical_reaction/hyronalin + name = "Hyronalin" + id = "hyronalin" + result = "hyronalin" + required_reagents = list("radium" = 1, "anti_toxin" = 1) + result_amount = 2 + +/datum/chemical_reaction/arithrazine + name = "Arithrazine" + id = "arithrazine" + result = "arithrazine" + required_reagents = list("hyronalin" = 1, "hydrogen" = 1) + result_amount = 2 + +/datum/chemical_reaction/impedrezene + name = "Impedrezene" + id = "impedrezene" + result = "impedrezene" + required_reagents = list("mercury" = 1, "oxygen" = 1, "sugar" = 1) + result_amount = 2 + +/datum/chemical_reaction/kelotane + name = "Kelotane" + id = "kelotane" + result = "kelotane" + required_reagents = list("silicon" = 1, "carbon" = 1) + result_amount = 2 + +/datum/chemical_reaction/peridaxon + name = "Peridaxon" + id = "peridaxon" + result = "peridaxon" + required_reagents = list("bicaridine" = 2, "clonexadone" = 2) + catalysts = list("phoron" = 1) + result_amount = 2 + +/datum/chemical_reaction/virus_food + name = "Virus Food" + id = "virusfood" + result = "virusfood" + required_reagents = list("water" = 1, "milk" = 1) + result_amount = 5 + +/datum/chemical_reaction/leporazine + name = "Leporazine" + id = "leporazine" + result = "leporazine" + required_reagents = list("silicon" = 1, "copper" = 1) + catalysts = list("phoron" = 1) + result_amount = 2 + +/datum/chemical_reaction/cryptobiolin + name = "Cryptobiolin" + id = "cryptobiolin" + result = "cryptobiolin" + required_reagents = list("potassium" = 1, "oxygen" = 1, "sugar" = 1) + result_amount = 3 + +/datum/chemical_reaction/tricordrazine + name = "Tricordrazine" + id = "tricordrazine" + result = "tricordrazine" + required_reagents = list("inaprovaline" = 1, "anti_toxin" = 1) + result_amount = 2 + +/datum/chemical_reaction/alkysine + name = "Alkysine" + id = "alkysine" + result = "alkysine" + required_reagents = list("chlorine" = 1, "nitrogen" = 1, "anti_toxin" = 1) + result_amount = 2 + +/datum/chemical_reaction/dexalin + name = "Dexalin" + id = "dexalin" + result = "dexalin" + required_reagents = list("oxygen" = 2, "phoron" = 0.1) + catalysts = list("phoron" = 1) + inhibitors = list("water" = 1) // Messes with cryox + result_amount = 1 + +/datum/chemical_reaction/dermaline + name = "Dermaline" + id = "dermaline" + result = "dermaline" + required_reagents = list("oxygen" = 1, "phosphorus" = 1, "kelotane" = 1) + result_amount = 3 + +/datum/chemical_reaction/dexalinp + name = "Dexalin Plus" + id = "dexalinp" + result = "dexalinp" + required_reagents = list("dexalin" = 1, "carbon" = 1, "iron" = 1) + result_amount = 3 + +/datum/chemical_reaction/bicaridine + name = "Bicaridine" + id = "bicaridine" + result = "bicaridine" + required_reagents = list("inaprovaline" = 1, "carbon" = 1) + inhibitors = list("sugar" = 1) // Messes up with inaprovaline + result_amount = 2 + +/datum/chemical_reaction/metorapan + name = "Metorapan" + id = "metorapan" + result = "metorapan" + required_reagents = list("bicaridine" = 1, "iron" = 1, "nitrogen" = 1) + result_amount = 3 + +/datum/chemical_reaction/hyperzine + name = "Hyperzine" + id = "hyperzine" + result = "hyperzine" + required_reagents = list("sugar" = 1, "phosphorus" = 1, "sulfur" = 1) + result_amount = 3 + +/datum/chemical_reaction/ryetalyn + name = "Ryetalyn" + id = "ryetalyn" + result = "ryetalyn" + required_reagents = list("arithrazine" = 1, "carbon" = 1) + result_amount = 2 + +/datum/chemical_reaction/cryoxadone + name = "Cryoxadone" + id = "cryoxadone" + result = "cryoxadone" + required_reagents = list("dexalin" = 1, "water" = 1, "oxygen" = 1) + result_amount = 3 + +/datum/chemical_reaction/clonexadone + name = "Clonexadone" + id = "clonexadone" + result = "clonexadone" + required_reagents = list("cryoxadone" = 1, "sodium" = 1, "phoron" = 0.1) + catalysts = list("phoron" = 1) + result_amount = 2 + +/datum/chemical_reaction/spaceacillin + name = "Spaceacillin" + id = "spaceacillin" + result = "spaceacillin" + required_reagents = list("cryptobiolin" = 1, "inaprovaline" = 1) + result_amount = 2 + +/datum/chemical_reaction/imidazoline + name = "imidazoline" + id = "imidazoline" + result = "imidazoline" + required_reagents = list("carbon" = 1, "hydrogen" = 1, "anti_toxin" = 1) + result_amount = 2 + +/datum/chemical_reaction/ethylredoxrazine + name = "Ethylredoxrazine" + id = "ethylredoxrazine" + result = "ethylredoxrazine" + required_reagents = list("oxygen" = 1, "anti_toxin" = 1, "carbon" = 1) + result_amount = 3 + +/datum/chemical_reaction/soporific + name = "Soporific" + id = "stoxin" + result = "stoxin" + required_reagents = list("chloralhydrate" = 1, "sugar" = 4) + inhibitors = list("phosphorus") // Messes with the smoke + result_amount = 5 + +/datum/chemical_reaction/chloralhydrate + name = "Chloral Hydrate" + id = "chloralhydrate" + result = "chloralhydrate" + required_reagents = list("ethanol" = 1, "chlorine" = 3, "water" = 1) + result_amount = 1 + +/datum/chemical_reaction/potassium_chloride + name = "Potassium Chloride" + id = "potassium_chloride" + result = "potassium_chloride" + required_reagents = list("sodiumchloride" = 1, "potassium" = 1) + result_amount = 2 + +/datum/chemical_reaction/potassium_chlorophoride + name = "Potassium Chlorophoride" + id = "potassium_chlorophoride" + result = "potassium_chlorophoride" + required_reagents = list("potassium_chloride" = 1, "phoron" = 1, "chloralhydrate" = 1) + result_amount = 4 + +/datum/chemical_reaction/zombiepowder + name = "Zombie Powder" + id = "zombiepowder" + result = "zombiepowder" + required_reagents = list("carpotoxin" = 5, "stoxin" = 5, "copper" = 5) + result_amount = 2 + +/datum/chemical_reaction/mindbreaker + name = "Mindbreaker Toxin" + id = "mindbreaker" + result = "mindbreaker" + required_reagents = list("silicon" = 1, "hydrogen" = 1, "anti_toxin" = 1) + result_amount = 3 + +/datum/chemical_reaction/lipozine + name = "Lipozine" + id = "Lipozine" + result = "lipozine" + required_reagents = list("sodiumchloride" = 1, "ethanol" = 1, "radium" = 1) + result_amount = 3 + +/datum/chemical_reaction/surfactant + name = "Foam surfactant" + id = "foam surfactant" + result = "fluorosurfactant" + required_reagents = list("fluorine" = 2, "carbon" = 2, "sacid" = 1) + result_amount = 5 + +/datum/chemical_reaction/ammonia + name = "Ammonia" + id = "ammonia" + result = "ammonia" + required_reagents = list("hydrogen" = 3, "nitrogen" = 1) + result_amount = 3 + +/datum/chemical_reaction/diethylamine + name = "Diethylamine" + id = "diethylamine" + result = "diethylamine" + required_reagents = list ("ammonia" = 1, "ethanol" = 1) + result_amount = 2 + +/datum/chemical_reaction/space_cleaner + name = "Space cleaner" + id = "cleaner" + result = "cleaner" + required_reagents = list("ammonia" = 1, "water" = 1) + result_amount = 2 + +/datum/chemical_reaction/plantbgone + name = "Plant-B-Gone" + id = "plantbgone" + result = "plantbgone" + required_reagents = list("toxin" = 1, "water" = 4) + result_amount = 5 + +/datum/chemical_reaction/foaming_agent + name = "Foaming Agent" + id = "foaming_agent" + result = "foaming_agent" + required_reagents = list("lithium" = 1, "hydrogen" = 1) + result_amount = 1 + +/datum/chemical_reaction/glycerol + name = "Glycerol" + id = "glycerol" + result = "glycerol" + required_reagents = list("cornoil" = 3, "sacid" = 1) + result_amount = 1 + +/datum/chemical_reaction/sodiumchloride + name = "Sodium Chloride" + id = "sodiumchloride" + result = "sodiumchloride" + required_reagents = list("sodium" = 1, "chlorine" = 1) + result_amount = 2 + +/datum/chemical_reaction/condensedcapsaicin + name = "Condensed Capsaicin" + id = "condensedcapsaicin" + result = "condensedcapsaicin" + required_reagents = list("capsaicin" = 2) + catalysts = list("phoron" = 1) + result_amount = 1 + +/datum/chemical_reaction/coolant + name = "Coolant" + id = "coolant" + result = "coolant" + required_reagents = list("tungsten" = 1, "oxygen" = 1, "water" = 1) + result_amount = 3 + +/datum/chemical_reaction/rezadone + name = "Rezadone" + id = "rezadone" + result = "rezadone" + required_reagents = list("carpotoxin" = 1, "cryptobiolin" = 1, "copper" = 1) + result_amount = 3 + +/datum/chemical_reaction/lexorin + name = "Lexorin" + id = "lexorin" + result = "lexorin" + required_reagents = list("phoron" = 1, "hydrogen" = 1, "nitrogen" = 1) + result_amount = 3 + +/datum/chemical_reaction/methylphenidate + name = "Methylphenidate" + id = "methylphenidate" + result = "methylphenidate" + required_reagents = list("mindbreaker" = 1, "hydrogen" = 1) + result_amount = 3 + +/datum/chemical_reaction/citalopram + name = "Citalopram" + id = "citalopram" + result = "citalopram" + required_reagents = list("mindbreaker" = 1, "carbon" = 1) + result_amount = 3 + + +/datum/chemical_reaction/paroxetine + name = "Paroxetine" + id = "paroxetine" + result = "paroxetine" + required_reagents = list("mindbreaker" = 1, "oxygen" = 1, "inaprovaline" = 1) + result_amount = 3 + +/* Solidification */ + +/datum/chemical_reaction/phoronsolidification + name = "Solid Phoron" + id = "solidphoron" + result = null + required_reagents = list("iron" = 5, "frostoil" = 5, "phoron" = 20) + result_amount = 1 + +/datum/chemical_reaction/phoronsolidification/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + new /obj/item/stack/sheet/mineral/phoron(location) + return + +/datum/chemical_reaction/plastication + name = "Plastic" + id = "solidplastic" + result = null + required_reagents = list("pacid" = 1, "plasticide" = 2) + result_amount = 1 + +/datum/chemical_reaction/plastication/on_reaction(var/datum/reagents/holder, var/created_volume) + new /obj/item/stack/sheet/mineral/plastic(get_turf(holder.my_atom), created_volume) + return + +/* Grenade reactions */ + +/datum/chemical_reaction/explosion_potassium + name = "Explosion" + id = "explosion_potassium" + result = null + required_reagents = list("water" = 1, "potassium" = 1) + result_amount = 2 + mix_message = null + +/datum/chemical_reaction/explosion_potassium/on_reaction(var/datum/reagents/holder, var/created_volume) + var/datum/effect/effect/system/reagents_explosion/e = new() + e.set_up(round (created_volume/10, 1), holder.my_atom, 0, 0) + e.holder_damage(holder.my_atom) + if(isliving(holder.my_atom)) + e.amount *= 0.5 + var/mob/living/L = holder.my_atom + if(L.stat != DEAD) + e.amount *= 0.5 + e.start() + holder.clear_reagents() + return + +/datum/chemical_reaction/flash_powder + name = "Flash powder" + id = "flash_powder" + result = null + required_reagents = list("aluminum" = 1, "potassium" = 1, "sulfur" = 1 ) + result_amount = null + +/datum/chemical_reaction/flash_powder/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread + s.set_up(2, 1, location) + s.start() + for(var/mob/living/carbon/M in viewers(world.view, location)) + switch(get_dist(M, location)) + if(0 to 3) + if(hasvar(M, "glasses")) + if(istype(M:glasses, /obj/item/clothing/glasses/sunglasses)) + continue + + flick("e_flash", M.flash) + M.Weaken(15) + + if(4 to 5) + if(hasvar(M, "glasses")) + if(istype(M:glasses, /obj/item/clothing/glasses/sunglasses)) + continue + + flick("e_flash", M.flash) + M.Stun(5) + +/datum/chemical_reaction/emp_pulse + name = "EMP Pulse" + id = "emp_pulse" + result = null + required_reagents = list("uranium" = 1, "iron" = 1) // Yes, laugh, it's the best recipe I could think of that makes a little bit of sense + result_amount = 2 + +/datum/chemical_reaction/emp_pulse/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + // 100 created volume = 4 heavy range & 7 light range. A few tiles smaller than traitor EMP grandes. + // 200 created volume = 8 heavy range & 14 light range. 4 tiles larger than traitor EMP grenades. + empulse(location, round(created_volume / 24), round(created_volume / 14), 1) + holder.clear_reagents() + return + +/datum/chemical_reaction/nitroglycerin + name = "Nitroglycerin" + id = "nitroglycerin" + result = "nitroglycerin" + required_reagents = list("glycerol" = 1, "pacid" = 1, "sacid" = 1) + result_amount = 2 + +/datum/chemical_reaction/nitroglycerin/on_reaction(var/datum/reagents/holder, var/created_volume) + var/datum/effect/effect/system/reagents_explosion/e = new() + e.set_up(round (created_volume/2, 1), holder.my_atom, 0, 0) + e.holder_damage(holder.my_atom) + if(isliving(holder.my_atom)) + e.amount *= 0.5 + var/mob/living/L = holder.my_atom + if(L.stat!=DEAD) + e.amount *= 0.5 + e.start() + + holder.clear_reagents() + return + +/datum/chemical_reaction/napalm + name = "Napalm" + id = "napalm" + result = null + required_reagents = list("aluminum" = 1, "phoron" = 1, "sacid" = 1 ) + result_amount = 1 + +/datum/chemical_reaction/napalm/on_reaction(var/datum/reagents/holder, var/created_volume) + var/turf/location = get_turf(holder.my_atom.loc) + for(var/turf/simulated/floor/target_tile in range(0,location)) + target_tile.assume_gas("volatile_fuel", created_volume, 400+T0C) + spawn (0) target_tile.hotspot_expose(700, 400) + holder.del_reagent("napalm") + return + +/datum/chemical_reaction/chemsmoke + name = "Chemsmoke" + id = "chemsmoke" + result = null + required_reagents = list("potassium" = 1, "sugar" = 1, "phosphorus" = 1) + result_amount = 0.4 + +/datum/chemical_reaction/chemsmoke/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + var/datum/effect/effect/system/smoke_spread/chem/S = new /datum/effect/effect/system/smoke_spread/chem + S.attach(location) + S.set_up(holder, created_volume, 0, location) + playsound(location, 'sound/effects/smoke.ogg', 50, 1, -3) + spawn(0) + S.start() + holder.clear_reagents() + return + +/datum/chemical_reaction/foam + name = "Foam" + id = "foam" + result = null + required_reagents = list("fluorosurfactant" = 1, "water" = 1) + result_amount = 2 + mix_message = "The solution violently bubbles!" + +/datum/chemical_reaction/foam/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + + for(var/mob/M in viewers(5, location)) + M << "\red The solution spews out foam!" + + var/datum/effect/effect/system/foam_spread/s = new() + s.set_up(created_volume, location, holder, 0) + s.start() + holder.clear_reagents() + return + +/datum/chemical_reaction/metalfoam + name = "Metal Foam" + id = "metalfoam" + result = null + required_reagents = list("aluminum" = 3, "foaming_agent" = 1, "pacid" = 1) + result_amount = 5 + +/datum/chemical_reaction/metalfoam/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + + for(var/mob/M in viewers(5, location)) + M << "\red The solution spews out a metalic foam!" + + var/datum/effect/effect/system/foam_spread/s = new() + s.set_up(created_volume, location, holder, 1) + s.start() + return + +/datum/chemical_reaction/ironfoam + name = "Iron Foam" + id = "ironlfoam" + result = null + required_reagents = list("iron" = 3, "foaming_agent" = 1, "pacid" = 1) + result_amount = 5 + +/datum/chemical_reaction/ironfoam/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + + for(var/mob/M in viewers(5, location)) + M << "\red The solution spews out a metalic foam!" + + var/datum/effect/effect/system/foam_spread/s = new() + s.set_up(created_volume, location, holder, 2) + s.start() + return + +/* Paint */ + +/datum/chemical_reaction/red_paint + name = "Red paint" + id = "red_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_red" = 1) + result_amount = 5 + +/datum/chemical_reaction/red_paint/send_data() + return "#FE191A" + +/datum/chemical_reaction/orange_paint + name = "Orange paint" + id = "orange_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_orange" = 1) + result_amount = 5 + +/datum/chemical_reaction/orange_paint/send_data() + return "#FFBE4F" + +/datum/chemical_reaction/yellow_paint + name = "Yellow paint" + id = "yellow_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_yellow" = 1) + result_amount = 5 + +/datum/chemical_reaction/yellow_paint/send_data() + return "#FDFE7D" + +/datum/chemical_reaction/green_paint + name = "Green paint" + id = "green_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_green" = 1) + result_amount = 5 + +/datum/chemical_reaction/green_paint/send_data() + return "#18A31A" + +/datum/chemical_reaction/blue_paint + name = "Blue paint" + id = "blue_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_blue" = 1) + result_amount = 5 + +/datum/chemical_reaction/blue_paint/send_data() + return "#247CFF" + +/datum/chemical_reaction/purple_paint + name = "Purple paint" + id = "purple_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_purple" = 1) + result_amount = 5 + +/datum/chemical_reaction/purple_paint/send_data() + return "#CC0099" + +/datum/chemical_reaction/grey_paint //mime + name = "Grey paint" + id = "grey_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_grey" = 1) + result_amount = 5 + +/datum/chemical_reaction/grey_paint/send_data() + return "#808080" + +/datum/chemical_reaction/brown_paint + name = "Brown paint" + id = "brown_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_brown" = 1) + result_amount = 5 + +/datum/chemical_reaction/brown_paint/send_data() + return "#846F35" + +/datum/chemical_reaction/blood_paint + name = "Blood paint" + id = "blood_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "blood" = 2) + result_amount = 5 + +/datum/chemical_reaction/blood_paint/send_data(var/datum/reagents/T) + var/t = T.get_data("blood") + if(t && t["blood_colour"]) + return t["blood_colour"] + return "#FE191A" // Probably red + +/datum/chemical_reaction/milk_paint + name = "Milk paint" + id = "milk_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "milk" = 5) + result_amount = 5 + +/datum/chemical_reaction/milk_paint/send_data() + return "#F0F8FF" + +/datum/chemical_reaction/orange_juice_paint + name = "Orange juice paint" + id = "orange_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "orangejuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/orange_juice_paint/send_data() + return "#E78108" + +/datum/chemical_reaction/tomato_juice_paint + name = "Tomato juice paint" + id = "tomato_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "tomatojuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/tomato_juice_paint/send_data() + return "#731008" + +/datum/chemical_reaction/lime_juice_paint + name = "Lime juice paint" + id = "lime_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "limejuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/lime_juice_paint/send_data() + return "#365E30" + +/datum/chemical_reaction/carrot_juice_paint + name = "Carrot juice paint" + id = "carrot_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "carrotjuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/carrot_juice_paint/send_data() + return "#973800" + +/datum/chemical_reaction/berry_juice_paint + name = "Berry juice paint" + id = "berry_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "berryjuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/berry_juice_paint/send_data() + return "#990066" + +/datum/chemical_reaction/grape_juice_paint + name = "Grape juice paint" + id = "grape_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "grapejuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/grape_juice_paint/send_data() + return "#863333" + +/datum/chemical_reaction/poisonberry_juice_paint + name = "Poison berry juice paint" + id = "poisonberry_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "poisonberryjuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/poisonberry_juice_paint/send_data() + return "#863353" + +/datum/chemical_reaction/watermelon_juice_paint + name = "Watermelon juice paint" + id = "watermelon_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "watermelonjuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/watermelon_juice_paint/send_data() + return "#B83333" + +/datum/chemical_reaction/lemon_juice_paint + name = "Lemon juice paint" + id = "lemon_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "lemonjuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/lemon_juice_paint/send_data() + return "#AFAF00" + +/datum/chemical_reaction/banana_juice_paint + name = "Banana juice paint" + id = "banana_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "banana" = 5) + result_amount = 5 + +/datum/chemical_reaction/banana_juice_paint/send_data() + return "#C3AF00" + +/datum/chemical_reaction/potato_juice_paint + name = "Potato juice paint" + id = "potato_juice_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "potatojuice" = 5) + result_amount = 5 + +/datum/chemical_reaction/potato_juice_paint/send_data() + return "#302000" + +/datum/chemical_reaction/carbon_paint + name = "Carbon paint" + id = "carbon_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "carbon" = 1) + result_amount = 5 + +/datum/chemical_reaction/carbon_paint/send_data() + return "#333333" + +/datum/chemical_reaction/aluminum_paint + name = "Aluminum paint" + id = "aluminum_paint" + result = "paint" + required_reagents = list("plasticide" = 1, "water" = 3, "aluminum" = 1) + result_amount = 5 + +/datum/chemical_reaction/aluminum_paint/send_data() + return "#F0F8FF" + +/* Slime cores */ + +/datum/chemical_reaction/slime + var/required = null + +/datum/chemical_reaction/slime/can_happen(var/datum/reagents/holder) + if(holder.my_atom && istype(holder.my_atom, required)) + var/obj/item/slime_extract/T = holder.my_atom + if(T.Uses > 0) + return 1 + return 0 + +/datum/chemical_reaction/slime/on_reaction(var/datum/reagents/holder) + var/obj/item/slime_extract/T = holder.my_atom + T.Uses-- + if(T.Uses <= 0) + T.visible_message("\icon[T]\The [T]'s power is consumed in the reaction.") + T.name = "used slime extract" + T.desc = "This extract has been used up." //Grey - slimespawn - name = "Slime Spawn" - id = "m_spawn" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/grey - required_other = 1 - on_reaction(var/datum/reagents/holder) - for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red Infused with phoron, the core begins to quiver and grow, and soon a new baby slime emerges from it!"), 1) - var/mob/living/carbon/slime/S = new /mob/living/carbon/slime - S.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/spawn + name = "Slime Spawn" + id = "m_spawn" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/grey +/datum/chemical_reaction/slime/spawn/on_reaction(var/datum/reagents/holder) + holder.my_atom.visible_message("Infused with phoron, the core begins to quiver and grow, and soon a new baby slime emerges from it!") + var/mob/living/carbon/slime/S = new /mob/living/carbon/slime + S.loc = get_turf(holder.my_atom) + ..() - slimemonkey - name = "Slime Monkey" - id = "m_monkey" - result = null - required_reagents = list("blood" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/grey - required_other = 1 - on_reaction(var/datum/reagents/holder) - for(var/i = 1, i <= 3, i++) - var /obj/item/weapon/reagent_containers/food/snacks/monkeycube/M = new /obj/item/weapon/reagent_containers/food/snacks/monkeycube - M.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/monkey + name = "Slime Monkey" + id = "m_monkey" + result = null + required_reagents = list("blood" = 1) + result_amount = 1 + required = /obj/item/slime_extract/grey + +/datum/chemical_reaction/slime/monkey/on_reaction(var/datum/reagents/holder) + for(var/i = 1, i <= 3, i++) + var /obj/item/weapon/reagent_containers/food/snacks/monkeycube/M = new /obj/item/weapon/reagent_containers/food/snacks/monkeycube + M.loc = get_turf(holder.my_atom) + ..() //Green - slimemutate - name = "Mutation Toxin" - id = "mutationtoxin" - result = "mutationtoxin" - required_reagents = list("phoron" = 5) - result_amount = 1 - required_other = 1 - required_container = /obj/item/slime_extract/green +/datum/chemical_reaction/slime/mutate + name = "Mutation Toxin" + id = "mutationtoxin" + result = "mutationtoxin" + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/green //Metal - slimemetal - name = "Slime Metal" - id = "m_metal" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/metal - required_other = 1 - on_reaction(var/datum/reagents/holder) - var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/metal - M.amount = 15 - M.loc = get_turf(holder.my_atom) - var/obj/item/stack/sheet/plasteel/P = new /obj/item/stack/sheet/plasteel - P.amount = 5 - P.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/metal + name = "Slime Metal" + id = "m_metal" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/metal -//Gold - slimecrit - name = "Slime Crit" - id = "m_tele" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/gold - required_other = 1 - on_reaction(var/datum/reagents/holder) +/datum/chemical_reaction/slime/metal/on_reaction(var/datum/reagents/holder) + var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/metal + M.amount = 15 + M.loc = get_turf(holder.my_atom) + var/obj/item/stack/sheet/plasteel/P = new /obj/item/stack/sheet/plasteel + P.amount = 5 + P.loc = get_turf(holder.my_atom) + ..() - /*var/blocked = list(/mob/living/simple_animal/hostile, - /mob/living/simple_animal/hostile/pirate, - /mob/living/simple_animal/hostile/pirate/ranged, - /mob/living/simple_animal/hostile/russian, - /mob/living/simple_animal/hostile/russian/ranged, - /mob/living/simple_animal/hostile/syndicate, - /mob/living/simple_animal/hostile/syndicate/melee, - /mob/living/simple_animal/hostile/syndicate/melee/space, - /mob/living/simple_animal/hostile/syndicate/ranged, - /mob/living/simple_animal/hostile/syndicate/ranged/space, - /mob/living/simple_animal/hostile/alien/queen/large, - /mob/living/simple_animal/hostile/faithless, - /mob/living/simple_animal/hostile/panther, - /mob/living/simple_animal/hostile/snake, - /mob/living/simple_animal/hostile/retaliate, - /mob/living/simple_animal/hostile/retaliate/clown - )//exclusion list for things you don't want the reaction to create. - var/list/critters = typesof(/mob/living/simple_animal/hostile) - blocked // list of possible hostile mobs - - playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) - - for(var/mob/living/carbon/human/M in viewers(get_turf(holder.my_atom), null)) - if(M:eyecheck() <= 0) - flick("e_flash", M.flash) - - for(var/i = 1, i <= 5, i++) - var/chosen = pick(critters) - var/mob/living/simple_animal/hostile/C = new chosen - C.faction = "slimesummon" - C.loc = get_turf(holder.my_atom) - if(prob(50)) - for(var/j = 1, j <= rand(1, 3), j++) - step(C, pick(NORTH,SOUTH,EAST,WEST))*/ - for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red The slime core fizzles disappointingly,"), 1) +//Gold - removed +/datum/chemical_reaction/slime/crit + name = "Slime Crit" + id = "m_tele" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/gold + mix_message = "The slime core fizzles disappointingly." //Silver - slimebork - name = "Slime Bork" - id = "m_tele2" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/silver - required_other = 1 - on_reaction(var/datum/reagents/holder) +/datum/chemical_reaction/slime/bork + name = "Slime Bork" + id = "m_tele2" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/silver - var/list/borks = typesof(/obj/item/weapon/reagent_containers/food/snacks) - /obj/item/weapon/reagent_containers/food/snacks - // BORK BORK BORK - - playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) - - for(var/mob/living/carbon/human/M in viewers(get_turf(holder.my_atom), null)) - if(M:eyecheck() <= 0) - flick("e_flash", M.flash) - - for(var/i = 1, i <= 4 + rand(1,2), i++) - var/chosen = pick(borks) - var/obj/B = new chosen - if(B) - B.loc = get_turf(holder.my_atom) - if(prob(50)) - for(var/j = 1, j <= rand(1, 3), j++) - step(B, pick(NORTH,SOUTH,EAST,WEST)) +/datum/chemical_reaction/slime/bork/on_reaction(var/datum/reagents/holder) + var/list/borks = typesof(/obj/item/weapon/reagent_containers/food/snacks) - /obj/item/weapon/reagent_containers/food/snacks + playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) + for(var/mob/living/carbon/human/M in viewers(get_turf(holder.my_atom), null)) + if(M.eyecheck() <= 0) + flick("e_flash", M.flash) + for(var/i = 1, i <= 4 + rand(1,2), i++) + var/chosen = pick(borks) + var/obj/B = new chosen + if(B) + B.loc = get_turf(holder.my_atom) + if(prob(50)) + for(var/j = 1, j <= rand(1, 3), j++) + step(B, pick(NORTH, SOUTH, EAST, WEST)) + ..() //Blue - slimefrost - name = "Slime Frost Oil" - id = "m_frostoil" - result = "frostoil" - required_reagents = list("phoron" = 5) - result_amount = 10 - required_container = /obj/item/slime_extract/blue - required_other = 1 +/datum/chemical_reaction/slime/frost + name = "Slime Frost Oil" + id = "m_frostoil" + result = "frostoil" + required_reagents = list("phoron" = 1) + result_amount = 10 + required = /obj/item/slime_extract/blue + //Dark Blue - slimefreeze - name = "Slime Freeze" - id = "m_freeze" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/darkblue - required_other = 1 - on_reaction(var/datum/reagents/holder) - for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red The slime extract begins to vibrate violently !"), 1) - sleep(50) - playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) - for(var/mob/living/M in range (get_turf(holder.my_atom), 7)) - M.bodytemperature -= 140 - M << "\blue You feel a chill!" +/datum/chemical_reaction/slime/freeze + name = "Slime Freeze" + id = "m_freeze" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/darkblue + mix_message = "The slime extract begins to vibrate violently!" + +/datum/chemical_reaction/slime/freeze/on_reaction(var/datum/reagents/holder) + ..() + sleep(50) + playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) + for(var/mob/living/M in range (get_turf(holder.my_atom), 7)) + M.bodytemperature -= 140 + M << "You feel a chill!" //Orange - slimecasp - name = "Slime Capsaicin Oil" - id = "m_capsaicinoil" - result = "capsaicin" - required_reagents = list("blood" = 5) - result_amount = 10 - required_container = /obj/item/slime_extract/orange - required_other = 1 +/datum/chemical_reaction/slime/casp + name = "Slime Capsaicin Oil" + id = "m_capsaicinoil" + result = "capsaicin" + required_reagents = list("blood" = 1) + result_amount = 10 + required = /obj/item/slime_extract/orange - slimefire - name = "Slime fire" - id = "m_fire" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/orange - required_other = 1 - on_reaction(var/datum/reagents/holder) - for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red The slime extract begins to vibrate violently !"), 1) - sleep(50) - var/turf/location = get_turf(holder.my_atom.loc) - for(var/turf/simulated/floor/target_tile in range(0,location)) - target_tile.assume_gas("phoron", 25, 1400) - spawn (0) target_tile.hotspot_expose(700, 400) +/datum/chemical_reaction/slime/fire + name = "Slime fire" + id = "m_fire" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/orange + mix_message = "The slime extract begins to vibrate violently!" + +/datum/chemical_reaction/slime/fire/on_reaction(var/datum/reagents/holder) + ..() + sleep(50) + var/turf/location = get_turf(holder.my_atom.loc) + for(var/turf/simulated/floor/target_tile in range(0, location)) + target_tile.assume_gas("phoron", 25, 1400) + spawn (0) + target_tile.hotspot_expose(700, 400) //Yellow - slimeoverload - name = "Slime EMP" - id = "m_emp" - result = null - required_reagents = list("blood" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/yellow - required_other = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - empulse(get_turf(holder.my_atom), 3, 7) +/datum/chemical_reaction/slime/overload + name = "Slime EMP" + id = "m_emp" + result = null + required_reagents = list("blood" = 1) + result_amount = 1 + required = /obj/item/slime_extract/yellow +/datum/chemical_reaction/slime/overload/on_reaction(var/datum/reagents/holder, var/created_volume) + ..() + empulse(get_turf(holder.my_atom), 3, 7) - slimecell - name = "Slime Powercell" - id = "m_cell" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/yellow - required_other = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/obj/item/weapon/cell/slime/P = new /obj/item/weapon/cell/slime - P.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/cell + name = "Slime Powercell" + id = "m_cell" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/yellow - slimeglow - name = "Slime Glow" - id = "m_glow" - result = null - required_reagents = list("water" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/yellow - required_other = 1 - on_reaction(var/datum/reagents/holder) - for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red The contents of the slime core harden and begin to emit a warm, bright light."), 1) - var/obj/item/device/flashlight/slime/F = new /obj/item/device/flashlight/slime - F.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/cell/on_reaction(var/datum/reagents/holder, var/created_volume) + var/obj/item/weapon/cell/slime/P = new /obj/item/weapon/cell/slime + P.loc = get_turf(holder.my_atom) + +/datum/chemical_reaction/slime/glow + name = "Slime Glow" + id = "m_glow" + result = null + required_reagents = list("water" = 1) + result_amount = 1 + required = /obj/item/slime_extract/yellow + mix_message = "The contents of the slime core harden and begin to emit a warm, bright light." + +/datum/chemical_reaction/slime/glow/on_reaction(var/datum/reagents/holder, var/created_volume) + ..() + var/obj/item/device/flashlight/slime/F = new /obj/item/device/flashlight/slime + F.loc = get_turf(holder.my_atom) //Purple +/datum/chemical_reaction/slime/psteroid + name = "Slime Steroid" + id = "m_steroid" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/purple - slimepsteroid - name = "Slime Steroid" - id = "m_steroid" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/purple - required_other = 1 - on_reaction(var/datum/reagents/holder) - var/obj/item/weapon/slimesteroid/P = new /obj/item/weapon/slimesteroid - P.loc = get_turf(holder.my_atom) - - - - slimejam - name = "Slime Jam" - id = "m_jam" - result = "slimejelly" - required_reagents = list("sugar" = 5) - result_amount = 10 - required_container = /obj/item/slime_extract/purple - required_other = 1 +/datum/chemical_reaction/slime/psteroid/on_reaction(var/datum/reagents/holder, var/created_volume) + ..() + var/obj/item/weapon/slimesteroid/P = new /obj/item/weapon/slimesteroid + P.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/jam + name = "Slime Jam" + id = "m_jam" + result = "slimejelly" + required_reagents = list("sugar" = 1) + result_amount = 10 + required = /obj/item/slime_extract/purple //Dark Purple - slimeplasma - name = "Slime Plasma" - id = "m_plasma" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/darkpurple - required_other = 1 - on_reaction(var/datum/reagents/holder) - var/obj/item/stack/sheet/mineral/phoron/P = new /obj/item/stack/sheet/mineral/phoron - P.amount = 10 - P.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/plasma + name = "Slime Plasma" + id = "m_plasma" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/darkpurple + +/datum/chemical_reaction/slime/plasma/on_reaction(var/datum/reagents/holder) + ..() + var/obj/item/stack/sheet/mineral/phoron/P = new /obj/item/stack/sheet/mineral/phoron + P.amount = 10 + P.loc = get_turf(holder.my_atom) //Red - slimeglycerol - name = "Slime Glycerol" - id = "m_glycerol" - result = "glycerol" - required_reagents = list("phoron" = 5) - result_amount = 8 - required_container = /obj/item/slime_extract/red - required_other = 1 +/datum/chemical_reaction/slime/glycerol + name = "Slime Glycerol" + id = "m_glycerol" + result = "glycerol" + required_reagents = list("phoron" = 1) + result_amount = 8 + required = /obj/item/slime_extract/red +/datum/chemical_reaction/slime/bloodlust + name = "Bloodlust" + id = "m_bloodlust" + result = null + required_reagents = list("blood" = 1) + result_amount = 1 + required = /obj/item/slime_extract/red - slimebloodlust - name = "Bloodlust" - id = "m_bloodlust" - result = null - required_reagents = list("blood" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/red - required_other = 1 - on_reaction(var/datum/reagents/holder) - for(var/mob/living/carbon/slime/slime in viewers(get_turf(holder.my_atom), null)) - slime.rabid = 1 - for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red The [slime] is driven into a frenzy!"), 1) +/datum/chemical_reaction/slime/bloodlust/on_reaction(var/datum/reagents/holder) + ..() + for(var/mob/living/carbon/slime/slime in viewers(get_turf(holder.my_atom), null)) + slime.rabid = 1 + slime.visible_message("The [slime] is driven into a frenzy!") //Pink - slimeppotion - name = "Slime Potion" - id = "m_potion" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/pink - required_other = 1 - on_reaction(var/datum/reagents/holder) - var/obj/item/weapon/slimepotion/P = new /obj/item/weapon/slimepotion - P.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/ppotion + name = "Slime Potion" + id = "m_potion" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/pink +/datum/chemical_reaction/slime/ppotion/on_reaction(var/datum/reagents/holder) + ..() + var/obj/item/weapon/slimepotion/P = new /obj/item/weapon/slimepotion + P.loc = get_turf(holder.my_atom) //Black - slimemutate2 - name = "Advanced Mutation Toxin" - id = "mutationtoxin2" - result = "amutationtoxin" - required_reagents = list("phoron" = 5) - result_amount = 1 - required_other = 1 - required_container = /obj/item/slime_extract/black +/datum/chemical_reaction/slime/mutate2 + name = "Advanced Mutation Toxin" + id = "mutationtoxin2" + result = "amutationtoxin" + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/black + +//Oil +/datum/chemical_reaction/slime/explosion + name = "Slime Explosion" + id = "m_explosion" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/oil + mix_message = "The slime extract begins to vibrate violently!" + +/datum/chemical_reaction/slime/explosion/on_reaction(var/datum/reagents/holder) + ..() + sleep(50) + explosion(get_turf(holder.my_atom), 1, 3, 6) -//Oil - slimeexplosion - name = "Slime Explosion" - id = "m_explosion" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/oil - required_other = 1 - on_reaction(var/datum/reagents/holder) - for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red The slime extract begins to vibrate violently !"), 1) - sleep(50) - explosion(get_turf(holder.my_atom), 1 ,3, 6) //Light Pink - slimepotion2 - name = "Slime Potion 2" - id = "m_potion2" - result = null - result_amount = 1 - required_container = /obj/item/slime_extract/lightpink - required_reagents = list("phoron" = 5) - required_other = 1 - on_reaction(var/datum/reagents/holder) - var/obj/item/weapon/slimepotion2/P = new /obj/item/weapon/slimepotion2 - P.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/slime/potion2 + name = "Slime Potion 2" + id = "m_potion2" + result = null + result_amount = 1 + required = /obj/item/slime_extract/lightpink + required_reagents = list("phoron" = 1) + +/datum/chemical_reaction/slime/potion2/on_reaction(var/datum/reagents/holder) + ..() + var/obj/item/weapon/slimepotion2/P = new /obj/item/weapon/slimepotion2 + P.loc = get_turf(holder.my_atom) + //Adamantine - slimegolem - name = "Slime Golem" - id = "m_golem" - result = null - required_reagents = list("phoron" = 5) - result_amount = 1 - required_container = /obj/item/slime_extract/adamantine - required_other = 1 - on_reaction(var/datum/reagents/holder) - var/obj/effect/golemrune/Z = new /obj/effect/golemrune - Z.loc = get_turf(holder.my_atom) - Z.announce_to_ghosts() +/datum/chemical_reaction/slime/golem + name = "Slime Golem" + id = "m_golem" + result = null + required_reagents = list("phoron" = 1) + result_amount = 1 + required = /obj/item/slime_extract/adamantine -//////////////////////////////////////////PAINT/////////////////////////////////////////// -//Crayon dust -> paint - red_paint - name = "Red paint" - id = "red_paint" - result = "paint" - resultcolor = "#FE191A" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_red" = 1) - result_amount = 5 +/datum/chemical_reaction/slime/golem/on_reaction(var/datum/reagents/holder) + ..() + var/obj/effect/golemrune/Z = new /obj/effect/golemrune + Z.loc = get_turf(holder.my_atom) + Z.announce_to_ghosts() - orange_paint - name = "Orange paint" - id = "orange_paint" - result = "paint" - resultcolor = "#FFBE4F" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_orange" = 1) - result_amount = 5 +/* Food */ - yellow_paint - name = "Yellow paint" - id = "yellow_paint" - result = "paint" - resultcolor = "#FDFE7D" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_yellow" = 1) - result_amount = 5 +/datum/chemical_reaction/tofu + name = "Tofu" + id = "tofu" + result = null + required_reagents = list("soymilk" = 10) + catalysts = list("enzyme" = 1) + result_amount = 1 - green_paint - name = "Green paint" - id = "green_paint" - result = "paint" - resultcolor = "#18A31A" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_green" = 1) - result_amount = 5 +/datum/chemical_reaction/tofu/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + for(var/i = 1, i <= created_volume, i++) + new /obj/item/weapon/reagent_containers/food/snacks/tofu(location) + return - blue_paint - name = "Blue paint" - id = "blue_paint" - result = "paint" - resultcolor = "#247CFF" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_blue" = 1) - result_amount = 5 +/datum/chemical_reaction/chocolate_bar + name = "Chocolate Bar" + id = "chocolate_bar" + result = null + required_reagents = list("soymilk" = 2, "coco" = 2, "sugar" = 2) + result_amount = 1 - purple_paint - name = "Purple paint" - id = "purple_paint" - result = "paint" - resultcolor = "#CC0099" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_purple" = 1) - result_amount = 5 +/datum/chemical_reaction/chocolate_bar/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + for(var/i = 1, i <= created_volume, i++) + new /obj/item/weapon/reagent_containers/food/snacks/chocolatebar(location) + return - grey_paint //mime - name = "Grey paint" - id = "grey_paint" - result = "paint" - resultcolor = "#808080" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_grey" = 1) - result_amount = 5 +/datum/chemical_reaction/chocolate_bar2 + name = "Chocolate Bar" + id = "chocolate_bar" + result = null + required_reagents = list("milk" = 2, "coco" = 2, "sugar" = 2) + result_amount = 1 - brown_paint - name = "Brown paint" - id = "brown_paint" - result = "paint" - resultcolor = "#846F35" - required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_brown" = 1) - result_amount = 5 +/datum/chemical_reaction/chocolate_bar2/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + for(var/i = 1, i <= created_volume, i++) + new /obj/item/weapon/reagent_containers/food/snacks/chocolatebar(location) + return -//Ghetto reactions +/datum/chemical_reaction/hot_coco + name = "Hot Coco" + id = "hot_coco" + result = "hot_coco" + required_reagents = list("water" = 5, "coco" = 1) + result_amount = 5 -/* Ideally the paint should take on the blood's colour (for each of the species) - but I could not think of a way. - RKF +/datum/chemical_reaction/soysauce + name = "Soy Sauce" + id = "soysauce" + result = "soysauce" + required_reagents = list("soymilk" = 4, "sacid" = 1) + result_amount = 5 - blood_paint - name = "Blood paint" - id = "blood_paint" - result = "paint" - resultcolor = "#C80000" - required_reagents = list("plasticide" = 1, "water" = 3, "blood" = 2) - result_amount = 5 -*/ - milk_paint - name = "Milk paint" - id = "milk_paint" - result = "paint" - resultcolor = "#F0F8FF" - required_reagents = list("plasticide" = 1, "water" = 3, "milk" = 5) - result_amount = 5 +/datum/chemical_reaction/cheesewheel + name = "Cheesewheel" + id = "cheesewheel" + result = null + required_reagents = list("milk" = 40) + catalysts = list("enzyme" = 1) + result_amount = 1 - orange_juice_paint - name = "Orange juice paint" - id = "orange_juice_paint" - result = "paint" - resultcolor = "#E78108" - required_reagents = list("plasticide" = 1, "water" = 3, "orangejuice" = 5) - result_amount = 5 +/datum/chemical_reaction/cheesewheel/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + new /obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesewheel(location) + return + +/datum/chemical_reaction/meatball + name = "Meatball" + id = "meatball" + result = null + required_reagents = list("protein" = 3, "flour" = 5) + result_amount = 3 + +/datum/chemical_reaction/meatball/on_reaction(var/datum/reagents/holder, var/created_volume) + new /obj/item/weapon/reagent_containers/food/snacks/meatball(get_turf(holder.my_atom)) + return + +/datum/chemical_reaction/dough + name = "Dough" + id = "dough" + result = null + required_reagents = list("egg" = 3, "flour" = 10) + result_amount = 1 + +/datum/chemical_reaction/dough/on_reaction(var/datum/reagents/holder, var/created_volume) + new /obj/item/weapon/reagent_containers/food/snacks/dough(get_turf(holder.my_atom)) + return - tomato_juice_paint - name = "Tomato juice paint" - id = "tomato_juice_paint" - result = "paint" - resultcolor = "#731008" - required_reagents = list("plasticide" = 1, "water" = 3, "tomatojuice" = 5) - result_amount = 5 +/datum/chemical_reaction/syntiflesh + name = "Syntiflesh" + id = "syntiflesh" + result = null + required_reagents = list("blood" = 5, "clonexadone" = 1) + result_amount = 1 - lime_juice_paint - name = "Lime juice paint" - id = "lime_juice_paint" - result = "paint" - resultcolor = "#365E30" - required_reagents = list("plasticide" = 1, "water" = 3, "limejuice" = 5) - result_amount = 5 +/datum/chemical_reaction/syntiflesh/on_reaction(var/datum/reagents/holder, var/created_volume) + var/location = get_turf(holder.my_atom) + new /obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh(location) + return - carrot_juice_paint - name = "Carrot juice paint" - id = "carrot_juice_paint" - result = "paint" - resultcolor = "#973800" - required_reagents = list("plasticide" = 1, "water" = 3, "carrotjuice" = 5) - result_amount = 5 +/datum/chemical_reaction/hot_ramen + name = "Hot Ramen" + id = "hot_ramen" + result = "hot_ramen" + required_reagents = list("water" = 1, "dry_ramen" = 3) + result_amount = 3 - berry_juice_paint - name = "Berry juice paint" - id = "berry_juice_paint" - result = "paint" - resultcolor = "#990066" - required_reagents = list("plasticide" = 1, "water" = 3, "berryjuice" = 5) - result_amount = 5 +/datum/chemical_reaction/hell_ramen + name = "Hell Ramen" + id = "hell_ramen" + result = "hell_ramen" + required_reagents = list("capsaicin" = 1, "hot_ramen" = 6) + result_amount = 6 - grape_juice_paint - name = "Grape juice paint" - id = "grape_juice_paint" - result = "paint" - resultcolor = "#863333" - required_reagents = list("plasticide" = 1, "water" = 3, "grapejuice" = 5) - result_amount = 5 +/* Alcohol */ - poisonberry_juice_paint - name = "Poison berry juice paint" - id = "poisonberry_juice_paint" - result = "paint" - resultcolor = "#863353" - required_reagents = list("plasticide" = 1, "water" = 3, "poisonberryjuice" = 5) - result_amount = 5 +/datum/chemical_reaction/goldschlager + name = "Goldschlager" + id = "goldschlager" + result = "goldschlager" + required_reagents = list("vodka" = 10, "gold" = 1) + result_amount = 10 - watermelon_juice_paint - name = "Watermelon juice paint" - id = "watermelon_juice_paint" - result = "paint" - resultcolor = "#B83333" - required_reagents = list("plasticide" = 1, "water" = 3, "watermelonjuice" = 5) - result_amount = 5 +/datum/chemical_reaction/patron + name = "Patron" + id = "patron" + result = "patron" + required_reagents = list("tequilla" = 10, "silver" = 1) + result_amount = 10 - lemon_juice_paint - name = "Lemon juice paint" - id = "lemon_juice_paint" - result = "paint" - resultcolor = "#AFAF00" - required_reagents = list("plasticide" = 1, "water" = 3, "lemonjuice" = 5) - result_amount = 5 +/datum/chemical_reaction/bilk + name = "Bilk" + id = "bilk" + result = "bilk" + required_reagents = list("milk" = 1, "beer" = 1) + result_amount = 2 - banana_juice_paint - name = "Banana juice paint" - id = "banana_juice_paint" - result = "paint" - resultcolor = "#C3AF00" - required_reagents = list("plasticide" = 1, "water" = 3, "banana" = 5) - result_amount = 5 +/datum/chemical_reaction/icetea + name = "Iced Tea" + id = "icetea" + result = "icetea" + required_reagents = list("ice" = 1, "tea" = 3) + result_amount = 4 - potato_juice_paint - name = "Potato juice paint" - id = "potato_juice_paint" - result = "paint" - resultcolor = "#302000" - required_reagents = list("plasticide" = 1, "water" = 3, "potatojuice" = 5) - result_amount = 5 +/datum/chemical_reaction/icecoffee + name = "Iced Coffee" + id = "icecoffee" + result = "icecoffee" + required_reagents = list("ice" = 1, "coffee" = 3) + result_amount = 4 -//Other paint +/datum/chemical_reaction/nuka_cola + name = "Nuka Cola" + id = "nuka_cola" + result = "nuka_cola" + required_reagents = list("uranium" = 1, "cola" = 6) + result_amount = 6 - carbon_paint - name = "Carbon paint" - id = "carbon_paint" - result = "paint" - resultcolor = "#333333" - required_reagents = list("plasticide" = 1, "water" = 3, "carbon" = 1) - result_amount = 5 +/datum/chemical_reaction/moonshine + name = "Moonshine" + id = "moonshine" + result = "moonshine" + required_reagents = list("nutriment" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - aluminum_paint - name = "Aluminum paint" - id = "aluminum_paint" - result = "paint" - resultcolor = "#F0F8FF" - required_reagents = list("plasticide" = 1, "water" = 3, "aluminum" = 1) - result_amount = 5 +/datum/chemical_reaction/grenadine + name = "Grenadine Syrup" + id = "grenadine" + result = "grenadine" + required_reagents = list("berryjuice" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 -//////////////////////////////////////////FOOD MIXTURES//////////////////////////////////// +/datum/chemical_reaction/wine + name = "Wine" + id = "wine" + result = "wine" + required_reagents = list("grapejuice" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - tofu - name = "Tofu" - id = "tofu" - result = null - required_reagents = list("soymilk" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/tofu(location) - return +/datum/chemical_reaction/pwine + name = "Poison Wine" + id = "pwine" + result = "pwine" + required_reagents = list("poisonberryjuice" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - chocolate_bar - name = "Chocolate Bar" - id = "chocolate_bar" - result = null - required_reagents = list("soymilk" = 2, "coco" = 2, "sugar" = 2) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/chocolatebar(location) - return +/datum/chemical_reaction/melonliquor + name = "Melon Liquor" + id = "melonliquor" + result = "melonliquor" + required_reagents = list("watermelonjuice" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - chocolate_bar2 - name = "Chocolate Bar" - id = "chocolate_bar" - result = null - required_reagents = list("milk" = 2, "coco" = 2, "sugar" = 2) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/chocolatebar(location) - return +/datum/chemical_reaction/bluecuracao + name = "Blue Curacao" + id = "bluecuracao" + result = "bluecuracao" + required_reagents = list("orangejuice" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - hot_coco - name = "Hot Coco" - id = "hot_coco" - result = "hot_coco" - required_reagents = list("water" = 5, "coco" = 1) - result_amount = 5 +/datum/chemical_reaction/spacebeer + name = "Space Beer" + id = "spacebeer" + result = "beer" + required_reagents = list("cornoil" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - soysauce - name = "Soy Sauce" - id = "soysauce" - result = "soysauce" - required_reagents = list("soymilk" = 4, "sacid" = 1) - result_amount = 5 +/datum/chemical_reaction/vodka + name = "Vodka" + id = "vodka" + result = "vodka" + required_reagents = list("potato" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - cheesewheel - name = "Cheesewheel" - id = "cheesewheel" - result = null - required_reagents = list("milk" = 40) - required_catalysts = list("enzyme" = 5) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - new /obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesewheel(location) - return +/datum/chemical_reaction/sake + name = "Sake" + id = "sake" + result = "sake" + required_reagents = list("rice" = 10) + catalysts = list("enzyme" = 1) + result_amount = 10 - meatball - name = "Meatball" - id = "meatball" - result = null - required_reagents = list("protein" = 3, "flour" = 5) - result_amount = 3 - on_reaction(var/datum/reagents/holder, var/created_volume) - new /obj/item/weapon/reagent_containers/food/snacks/meatball(get_turf(holder.my_atom)) - return +/datum/chemical_reaction/kahlua + name = "Kahlua" + id = "kahlua" + result = "kahlua" + required_reagents = list("coffee" = 5, "sugar" = 5) + catalysts = list("enzyme" = 1) + result_amount = 5 - dough - name = "Dough" - id = "dough" - result = null - required_reagents = list("egg" = 3, "flour" = 10) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - new /obj/item/weapon/reagent_containers/food/snacks/dough(get_turf(holder.my_atom)) - return +/datum/chemical_reaction/gin_tonic + name = "Gin and Tonic" + id = "gintonic" + result = "gintonic" + required_reagents = list("gin" = 2, "tonic" = 1) + result_amount = 3 - syntiflesh - name = "Syntiflesh" - id = "syntiflesh" - result = null - required_reagents = list("blood" = 5, "clonexadone" = 1) - result_amount = 1 - on_reaction(var/datum/reagents/holder, var/created_volume) - var/location = get_turf(holder.my_atom) - new /obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh(location) - return +/datum/chemical_reaction/cuba_libre + name = "Cuba Libre" + id = "cubalibre" + result = "cubalibre" + required_reagents = list("rum" = 2, "cola" = 1) + result_amount = 3 - hot_ramen - name = "Hot Ramen" - id = "hot_ramen" - result = "hot_ramen" - required_reagents = list("water" = 1, "dry_ramen" = 3) - result_amount = 3 +/datum/chemical_reaction/classicmartini + name = "Classic Martini" + id = "classicmartini" + result = "classicmartini" + required_reagents = list("gin" = 2, "vermouth" = 1) + result_amount = 3 - hell_ramen - name = "Hell Ramen" - id = "hell_ramen" - result = "hell_ramen" - required_reagents = list("capsaicin" = 1, "hot_ramen" = 6) - result_amount = 6 +/datum/chemical_reaction/vodkamartini + name = "Vodka Martini" + id = "vodkamartini" + result = "vodkamartini" + required_reagents = list("vodka" = 2, "vermouth" = 1) + result_amount = 3 +/datum/chemical_reaction/white_russian + name = "White Russian" + id = "whiterussian" + result = "whiterussian" + required_reagents = list("blackrussian" = 3, "cream" = 2) + result_amount = 5 -////////////////////////////////////////// COCKTAILS ////////////////////////////////////// +/datum/chemical_reaction/whiskey_cola + name = "Whiskey Cola" + id = "whiskeycola" + result = "whiskeycola" + required_reagents = list("whiskey" = 2, "cola" = 1) + result_amount = 3 +/datum/chemical_reaction/screwdriver + name = "Screwdriver" + id = "screwdrivercocktail" + result = "screwdrivercocktail" + required_reagents = list("vodka" = 2, "orangejuice" = 1) + result_amount = 3 - goldschlager - name = "Goldschlager" - id = "goldschlager" - result = "goldschlager" - required_reagents = list("vodka" = 10, "gold" = 1) - result_amount = 10 +/datum/chemical_reaction/bloody_mary + name = "Bloody Mary" + id = "bloodymary" + result = "bloodymary" + required_reagents = list("vodka" = 1, "tomatojuice" = 2, "limejuice" = 1) + result_amount = 4 - patron - name = "Patron" - id = "patron" - result = "patron" - required_reagents = list("tequilla" = 10, "silver" = 1) - result_amount = 10 +/datum/chemical_reaction/gargle_blaster + name = "Pan-Galactic Gargle Blaster" + id = "gargleblaster" + result = "gargleblaster" + required_reagents = list("vodka" = 1, "gin" = 1, "whiskey" = 1, "cognac" = 1, "limejuice" = 1) + result_amount = 5 - bilk - name = "Bilk" - id = "bilk" - result = "bilk" - required_reagents = list("milk" = 1, "beer" = 1) +/datum/chemical_reaction/brave_bull + name = "Brave Bull" + id = "bravebull" + result = "bravebull" + required_reagents = list("tequilla" = 2, "kahlua" = 1) + result_amount = 3 + +/datum/chemical_reaction/tequilla_sunrise + name = "Tequilla Sunrise" + id = "tequillasunrise" + result = "tequillasunrise" + required_reagents = list("tequilla" = 2, "orangejuice" = 1) + result_amount = 3 + +/datum/chemical_reaction/phoron_special + name = "Toxins Special" + id = "phoronspecial" + result = "phoronspecial" + required_reagents = list("rum" = 2, "vermouth" = 1, "phoron" = 2) + result_amount = 5 + +/datum/chemical_reaction/beepsky_smash + name = "Beepksy Smash" + id = "beepksysmash" + result = "beepskysmash" + required_reagents = list("limejuice" = 2, "whiskey" = 2, "iron" = 1) + result_amount = 4 + +/datum/chemical_reaction/doctor_delight + name = "The Doctor's Delight" + id = "doctordelight" + result = "doctorsdelight" + required_reagents = list("limejuice" = 1, "tomatojuice" = 1, "orangejuice" = 1, "cream" = 1, "tricordrazine" = 1) + result_amount = 5 + +/datum/chemical_reaction/irish_cream + name = "Irish Cream" + id = "irishcream" + result = "irishcream" + required_reagents = list("whiskey" = 2, "cream" = 1) + result_amount = 3 + +/datum/chemical_reaction/manly_dorf + name = "The Manly Dorf" + id = "manlydorf" + result = "manlydorf" + required_reagents = list ("beer" = 1, "ale" = 2) + result_amount = 3 + +/datum/chemical_reaction/hooch + name = "Hooch" + id = "hooch" + result = "hooch" + required_reagents = list ("sugar" = 1, "ethanol" = 2, "fuel" = 1) + result_amount = 3 + +/datum/chemical_reaction/irish_coffee + name = "Irish Coffee" + id = "irishcoffee" + result = "irishcoffee" + required_reagents = list("irishcream" = 1, "coffee" = 1) + result_amount = 2 + +/datum/chemical_reaction/b52 + name = "B-52" + id = "b52" + result = "b52" + required_reagents = list("irishcream" = 1, "kahlua" = 1, "cognac" = 1) + result_amount = 3 + +/datum/chemical_reaction/atomicbomb + name = "Atomic Bomb" + id = "atomicbomb" + result = "atomicbomb" + required_reagents = list("b52" = 10, "uranium" = 1) + result_amount = 10 + +/datum/chemical_reaction/margarita + name = "Margarita" + id = "margarita" + result = "margarita" + required_reagents = list("tequilla" = 2, "limejuice" = 1) + result_amount = 3 + +/datum/chemical_reaction/longislandicedtea + name = "Long Island Iced Tea" + id = "longislandicedtea" + result = "longislandicedtea" + required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 1) + result_amount = 4 + +/datum/chemical_reaction/icedtea + name = "Long Island Iced Tea" + id = "longislandicedtea" + result = "longislandicedtea" + required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 1) + result_amount = 4 + +/datum/chemical_reaction/threemileisland + name = "Three Mile Island Iced Tea" + id = "threemileisland" + result = "threemileisland" + required_reagents = list("longislandicedtea" = 10, "uranium" = 1) + result_amount = 10 + +/datum/chemical_reaction/whiskeysoda + name = "Whiskey Soda" + id = "whiskeysoda" + result = "whiskeysoda" + required_reagents = list("whiskey" = 2, "sodawater" = 1) + result_amount = 3 + +/datum/chemical_reaction/black_russian + name = "Black Russian" + id = "blackrussian" + result = "blackrussian" + required_reagents = list("vodka" = 3, "kahlua" = 2) + result_amount = 5 + +/datum/chemical_reaction/manhattan + name = "Manhattan" + id = "manhattan" + result = "manhattan" + required_reagents = list("whiskey" = 2, "vermouth" = 1) + result_amount = 3 + +/datum/chemical_reaction/manhattan_proj + name = "Manhattan Project" + id = "manhattan_proj" + result = "manhattan_proj" + required_reagents = list("manhattan" = 10, "uranium" = 1) + result_amount = 10 + +/datum/chemical_reaction/vodka_tonic + name = "Vodka and Tonic" + id = "vodkatonic" + result = "vodkatonic" + required_reagents = list("vodka" = 2, "tonic" = 1) + result_amount = 3 + +/datum/chemical_reaction/gin_fizz + name = "Gin Fizz" + id = "ginfizz" + result = "ginfizz" + required_reagents = list("gin" = 2, "sodawater" = 1, "limejuice" = 1) + result_amount = 4 + +/datum/chemical_reaction/bahama_mama + name = "Bahama mama" + id = "bahama_mama" + result = "bahama_mama" + required_reagents = list("rum" = 2, "orangejuice" = 2, "limejuice" = 1, "ice" = 1) + result_amount = 6 + +/datum/chemical_reaction/singulo + name = "Singulo" + id = "singulo" + result = "singulo" + required_reagents = list("vodka" = 5, "radium" = 1, "wine" = 5) + result_amount = 10 + +/datum/chemical_reaction/alliescocktail + name = "Allies Cocktail" + id = "alliescocktail" + result = "alliescocktail" + required_reagents = list("classicmartini" = 1, "vodka" = 1) + result_amount = 2 + +/datum/chemical_reaction/demonsblood + name = "Demons Blood" + id = "demonsblood" + result = "demonsblood" + required_reagents = list("rum" = 1, "spacemountainwind" = 1, "blood" = 1, "dr_gibb" = 1) + result_amount = 4 + +/datum/chemical_reaction/booger + name = "Booger" + id = "booger" + result = "booger" + required_reagents = list("cream" = 1, "banana" = 1, "rum" = 1, "watermelonjuice" = 1) + result_amount = 4 + +/datum/chemical_reaction/antifreeze + name = "Anti-freeze" + id = "antifreeze" + result = "antifreeze" + required_reagents = list("vodka" = 2, "cream" = 1, "ice" = 1) + result_amount = 4 + +/datum/chemical_reaction/barefoot + name = "Barefoot" + id = "barefoot" + result = "barefoot" + required_reagents = list("berryjuice" = 1, "cream" = 1, "vermouth" = 1) + result_amount = 3 + +/datum/chemical_reaction/grapesoda + name = "Grape Soda" + id = "grapesoda" + result = "grapesoda" + required_reagents = list("grapejuice" = 2, "cola" = 1) + result_amount = 3 + +/datum/chemical_reaction/sbiten + name = "Sbiten" + id = "sbiten" + result = "sbiten" + required_reagents = list("vodka" = 10, "capsaicin" = 1) + result_amount = 10 + +/datum/chemical_reaction/red_mead + name = "Red Mead" + id = "red_mead" + result = "red_mead" + required_reagents = list("blood" = 1, "mead" = 1) + result_amount = 2 + +/datum/chemical_reaction/mead + name = "Mead" + id = "mead" + result = "mead" + required_reagents = list("sugar" = 1, "water" = 1) + catalysts = list("enzyme" = 1) + result_amount = 2 + +/datum/chemical_reaction/iced_beer + name = "Iced Beer" + id = "iced_beer" + result = "iced_beer" + required_reagents = list("beer" = 10, "frostoil" = 1) + result_amount = 10 + +/datum/chemical_reaction/iced_beer2 + name = "Iced Beer" + id = "iced_beer" + result = "iced_beer" + required_reagents = list("beer" = 5, "ice" = 1) + result_amount = 6 + +/datum/chemical_reaction/grog + name = "Grog" + id = "grog" + result = "grog" + required_reagents = list("rum" = 1, "water" = 1) + result_amount = 2 + +/datum/chemical_reaction/soy_latte + name = "Soy Latte" + id = "soy_latte" + result = "soy_latte" + required_reagents = list("coffee" = 1, "soymilk" = 1) + result_amount = 2 + +/datum/chemical_reaction/cafe_latte + name = "Cafe Latte" + id = "cafe_latte" + result = "cafe_latte" + required_reagents = list("coffee" = 1, "milk" = 1) + result_amount = 2 + +/datum/chemical_reaction/acidspit + name = "Acid Spit" + id = "acidspit" + result = "acidspit" + required_reagents = list("sacid" = 1, "wine" = 5) + result_amount = 6 + +/datum/chemical_reaction/amasec + name = "Amasec" + id = "amasec" + result = "amasec" + required_reagents = list("iron" = 1, "wine" = 5, "vodka" = 5) + result_amount = 10 + +/datum/chemical_reaction/changelingsting + name = "Changeling Sting" + id = "changelingsting" + result = "changelingsting" + required_reagents = list("screwdrivercocktail" = 1, "limejuice" = 1, "lemonjuice" = 1) + result_amount = 5 + +/datum/chemical_reaction/aloe + name = "Aloe" + id = "aloe" + result = "aloe" + required_reagents = list("cream" = 1, "whiskey" = 1, "watermelonjuice" = 1) + result_amount = 2 + +/datum/chemical_reaction/andalusia + name = "Andalusia" + id = "andalusia" + result = "andalusia" + required_reagents = list("rum" = 1, "whiskey" = 1, "lemonjuice" = 1) + result_amount = 3 + +/datum/chemical_reaction/neurotoxin + name = "Neurotoxin" + id = "neurotoxin" + result = "neurotoxin" + required_reagents = list("gargleblaster" = 1, "stoxin" = 1) + result_amount = 2 + +/datum/chemical_reaction/snowwhite + name = "Snow White" + id = "snowwhite" + result = "snowwhite" + required_reagents = list("beer" = 1, "lemon_lime" = 1) + result_amount = 2 + +/datum/chemical_reaction/irishcarbomb + name = "Irish Car Bomb" + id = "irishcarbomb" + result = "irishcarbomb" + required_reagents = list("ale" = 1, "irishcream" = 1) + result_amount = 2 + +/datum/chemical_reaction/syndicatebomb + name = "Syndicate Bomb" + id = "syndicatebomb" + result = "syndicatebomb" + required_reagents = list("beer" = 1, "whiskeycola" = 1) + result_amount = 2 + +/datum/chemical_reaction/erikasurprise + name = "Erika Surprise" + id = "erikasurprise" + result = "erikasurprise" + required_reagents = list("ale" = 1, "limejuice" = 1, "whiskey" = 1, "banana" = 1, "ice" = 1) + result_amount = 5 + +/datum/chemical_reaction/devilskiss + name = "Devils Kiss" + id = "devilskiss" + result = "devilskiss" + required_reagents = list("blood" = 1, "kahlua" = 1, "rum" = 1) + result_amount = 3 + +/datum/chemical_reaction/hippiesdelight + name = "Hippies Delight" + id = "hippiesdelight" + result = "hippiesdelight" + required_reagents = list("psilocybin" = 1, "gargleblaster" = 1) + result_amount = 2 + +/datum/chemical_reaction/bananahonk + name = "Banana Honk" + id = "bananahonk" + result = "bananahonk" + required_reagents = list("banana" = 1, "cream" = 1, "sugar" = 1) + result_amount = 3 + +/datum/chemical_reaction/silencer + name = "Silencer" + id = "silencer" + result = "silencer" + required_reagents = list("nothing" = 1, "cream" = 1, "sugar" = 1) + result_amount = 3 + +/datum/chemical_reaction/driestmartini + name = "Driest Martini" + id = "driestmartini" + result = "driestmartini" + required_reagents = list("nothing" = 1, "gin" = 1) + result_amount = 2 + +/datum/chemical_reaction/lemonade + name = "Lemonade" + id = "lemonade" + result = "lemonade" + required_reagents = list("lemonjuice" = 1, "sugar" = 1, "water" = 1) + result_amount = 3 + +/datum/chemical_reaction/kiraspecial + name = "Kira Special" + id = "kiraspecial" + result = "kiraspecial" + required_reagents = list("orangejuice" = 1, "limejuice" = 1, "sodawater" = 1) + result_amount = 2 + +/datum/chemical_reaction/brownstar + name = "Brown Star" + id = "brownstar" + result = "brownstar" + required_reagents = list("orangejuice" = 2, "cola" = 1) + result_amount = 2 + +/datum/chemical_reaction/milkshake + name = "Milkshake" + id = "milkshake" + result = "milkshake" + required_reagents = list("cream" = 1, "ice" = 2, "milk" = 2) + result_amount = 5 + +/datum/chemical_reaction/rewriter + name = "Rewriter" + id = "rewriter" + result = "rewriter" + required_reagents = list("spacemountainwind" = 1, "coffee" = 1) + result_amount = 2 + +/datum/chemical_reaction/suidream + name = "Sui Dream" + id = "suidream" + result = "suidream" + required_reagents = list("space_up" = 2, "bluecuracao" = 1, "melonliquor" = 1) + result_amount = 4 + +/* Removed xenoarcheology stuff +datum + chemical_reaction + lithiumsodiumtungstate //LiNa2WO4, not the easiest chem to mix + name = "Lithium Sodium Tungstate" + id = "lithiumsodiumtungstate" + result = "lithiumsodiumtungstate" + required_reagents = list("lithium" = 1, "sodium" = 2, "tungsten" = 1, "oxygen" = 4) + result_amount = 8 + + density_separated_liquid + name = "Density separated sample" + id = "density_separated_sample" + result = "density_separated_sample" + secondary_results = list("chemical_waste" = 1) + required_reagents = list("ground_rock" = 1, "lithiumsodiumtungstate" = 2) result_amount = 2 - icetea - name = "Iced Tea" - id = "icetea" - result = "icetea" - required_reagents = list("ice" = 1, "tea" = 3) - result_amount = 4 - - icecoffee - name = "Iced Coffee" - id = "icecoffee" - result = "icecoffee" - required_reagents = list("ice" = 1, "coffee" = 3) - result_amount = 4 - - nuka_cola - name = "Nuka Cola" - id = "nuka_cola" - result = "nuka_cola" - required_reagents = list("uranium" = 1, "cola" = 6) - result_amount = 6 - - moonshine - name = "Moonshine" - id = "moonshine" - result = "moonshine" - required_reagents = list("nutriment" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - grenadine - name = "Grenadine Syrup" - id = "grenadine" - result = "grenadine" - required_reagents = list("berryjuice" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - wine - name = "Wine" - id = "wine" - result = "wine" - required_reagents = list("grapejuice" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - pwine - name = "Poison Wine" - id = "pwine" - result = "pwine" - required_reagents = list("poisonberryjuice" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - melonliquor - name = "Melon Liquor" - id = "melonliquor" - result = "melonliquor" - required_reagents = list("watermelonjuice" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - bluecuracao - name = "Blue Curacao" - id = "bluecuracao" - result = "bluecuracao" - required_reagents = list("orangejuice" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - spacebeer - name = "Space Beer" - id = "spacebeer" - result = "beer" - required_reagents = list("cornoil" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - vodka - name = "Vodka" - id = "vodka" - result = "vodka" - required_reagents = list("potato" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - sake - name = "Sake" - id = "sake" - result = "sake" - required_reagents = list("rice" = 10) - required_catalysts = list("enzyme" = 5) - result_amount = 10 - - kahlua - name = "Kahlua" - id = "kahlua" - result = "kahlua" - required_reagents = list("coffee" = 5, "sugar" = 5) - required_catalysts = list("enzyme" = 5) - result_amount = 5 - - gin_tonic - name = "Gin and Tonic" - id = "gintonic" - result = "gintonic" - required_reagents = list("gin" = 2, "tonic" = 1) - result_amount = 3 - - cuba_libre - name = "Cuba Libre" - id = "cubalibre" - result = "cubalibre" - required_reagents = list("rum" = 2, "cola" = 1) - result_amount = 3 - - martini - name = "Classic Martini" - id = "martini" - result = "martini" - required_reagents = list("gin" = 2, "vermouth" = 1) - result_amount = 3 - - vodkamartini - name = "Vodka Martini" - id = "vodkamartini" - result = "vodkamartini" - required_reagents = list("vodka" = 2, "vermouth" = 1) - result_amount = 3 - - white_russian - name = "White Russian" - id = "whiterussian" - result = "whiterussian" - required_reagents = list("blackrussian" = 3, "cream" = 2) - result_amount = 5 - - whiskey_cola - name = "Whiskey Cola" - id = "whiskeycola" - result = "whiskeycola" - required_reagents = list("whiskey" = 2, "cola" = 1) - result_amount = 3 - - screwdriver - name = "Screwdriver" - id = "screwdrivercocktail" - result = "screwdrivercocktail" - required_reagents = list("vodka" = 2, "orangejuice" = 1) - result_amount = 3 - - bloody_mary - name = "Bloody Mary" - id = "bloodymary" - result = "bloodymary" - required_reagents = list("vodka" = 1, "tomatojuice" = 2, "limejuice" = 1) - result_amount = 4 - - gargle_blaster - name = "Pan-Galactic Gargle Blaster" - id = "gargleblaster" - result = "gargleblaster" - required_reagents = list("vodka" = 1, "gin" = 1, "whiskey" = 1, "cognac" = 1, "limejuice" = 1) - result_amount = 5 - - brave_bull - name = "Brave Bull" - id = "bravebull" - result = "bravebull" - required_reagents = list("tequilla" = 2, "kahlua" = 1) - result_amount = 3 - - tequilla_sunrise - name = "Tequilla Sunrise" - id = "tequillasunrise" - result = "tequillasunrise" - required_reagents = list("tequilla" = 2, "orangejuice" = 1) - result_amount = 3 - - phoron_special - name = "Toxins Special" - id = "phoronspecial" - result = "phoronspecial" - required_reagents = list("rum" = 2, "vermouth" = 1, "phoron" = 2) - result_amount = 5 - - beepsky_smash - name = "Beepksy Smash" - id = "beepksysmash" - result = "beepskysmash" - required_reagents = list("limejuice" = 2, "whiskey" = 2, "iron" = 1) - result_amount = 4 - - doctor_delight - name = "The Doctor's Delight" - id = "doctordelight" - result = "doctorsdelight" - required_reagents = list("limejuice" = 1, "tomatojuice" = 1, "orangejuice" = 1, "cream" = 1, "tricordrazine" = 1) - result_amount = 5 - - irish_cream - name = "Irish Cream" - id = "irishcream" - result = "irishcream" - required_reagents = list("whiskey" = 2, "cream" = 1) - result_amount = 3 - - manly_dorf - name = "The Manly Dorf" - id = "manlydorf" - result = "manlydorf" - required_reagents = list ("beer" = 1, "ale" = 2) - result_amount = 3 - - hooch - name = "Hooch" - id = "hooch" - result = "hooch" - required_reagents = list ("sugar" = 1, "ethanol" = 2, "fuel" = 1) - result_amount = 3 - - irish_coffee - name = "Irish Coffee" - id = "irishcoffee" - result = "irishcoffee" - required_reagents = list("irishcream" = 1, "coffee" = 1) - result_amount = 2 - - b52 - name = "B-52" - id = "b52" - result = "b52" - required_reagents = list("irishcream" = 1, "kahlua" = 1, "cognac" = 1) - result_amount = 3 - - atomicbomb - name = "Atomic Bomb" - id = "atomicbomb" - result = "atomicbomb" - required_reagents = list("b52" = 10, "uranium" = 1) - result_amount = 10 - - margarita - name = "Margarita" - id = "margarita" - result = "margarita" - required_reagents = list("tequilla" = 2, "limejuice" = 1) - result_amount = 3 - - longislandicedtea - name = "Long Island Iced Tea" - id = "longislandicedtea" - result = "longislandicedtea" - required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 1) - result_amount = 4 - - icedtea - name = "Long Island Iced Tea" - id = "longislandicedtea" - result = "longislandicedtea" - required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 1) - result_amount = 4 - - threemileisland - name = "Three Mile Island Iced Tea" - id = "threemileisland" - result = "threemileisland" - required_reagents = list("longislandicedtea" = 10, "uranium" = 1) - result_amount = 10 - - whiskeysoda - name = "Whiskey Soda" - id = "whiskeysoda" - result = "whiskeysoda" - required_reagents = list("whiskey" = 2, "sodawater" = 1) - result_amount = 3 - - black_russian - name = "Black Russian" - id = "blackrussian" - result = "blackrussian" - required_reagents = list("vodka" = 3, "kahlua" = 2) - result_amount = 5 - - manhattan - name = "Manhattan" - id = "manhattan" - result = "manhattan" - required_reagents = list("whiskey" = 2, "vermouth" = 1) - result_amount = 3 - - manhattan_proj - name = "Manhattan Project" - id = "manhattan_proj" - result = "manhattan_proj" - required_reagents = list("manhattan" = 10, "uranium" = 1) - result_amount = 10 - - vodka_tonic - name = "Vodka and Tonic" - id = "vodkatonic" - result = "vodkatonic" - required_reagents = list("vodka" = 2, "tonic" = 1) - result_amount = 3 - - gin_fizz - name = "Gin Fizz" - id = "ginfizz" - result = "ginfizz" - required_reagents = list("gin" = 2, "sodawater" = 1, "limejuice" = 1) - result_amount = 4 - - bahama_mama - name = "Bahama mama" - id = "bahama_mama" - result = "bahama_mama" - required_reagents = list("rum" = 2, "orangejuice" = 2, "limejuice" = 1, "ice" = 1) - result_amount = 6 - - singulo - name = "Singulo" - id = "singulo" - result = "singulo" - required_reagents = list("vodka" = 5, "radium" = 1, "wine" = 5) - result_amount = 10 - - alliescocktail - name = "Allies Cocktail" - id = "alliescocktail" - result = "alliescocktail" - required_reagents = list("martini" = 1, "vodka" = 1) - result_amount = 2 - - demonsblood - name = "Demons Blood" - id = "demonsblood" - result = "demonsblood" - required_reagents = list("rum" = 1, "spacemountainwind" = 1, "blood" = 1, "dr_gibb" = 1) - result_amount = 4 - - booger - name = "Booger" - id = "booger" - result = "booger" - required_reagents = list("cream" = 1, "banana" = 1, "rum" = 1, "watermelonjuice" = 1) - result_amount = 4 - - antifreeze - name = "Anti-freeze" - id = "antifreeze" - result = "antifreeze" - required_reagents = list("vodka" = 2, "cream" = 1, "ice" = 1) - result_amount = 4 - - barefoot - name = "Barefoot" - id = "barefoot" - result = "barefoot" - required_reagents = list("berryjuice" = 1, "cream" = 1, "vermouth" = 1) - result_amount = 3 - - grapesoda - name = "Grape Soda" - id = "grapesoda" - result = "grapesoda" - required_reagents = list("grapejuice" = 2, "cola" = 1) - result_amount = 3 - - - -////DRINKS THAT REQUIRED IMPROVED SPRITES BELOW:: -Agouri///// - - sbiten - name = "Sbiten" - id = "sbiten" - result = "sbiten" - required_reagents = list("vodka" = 10, "capsaicin" = 1) - result_amount = 10 - - red_mead - name = "Red Mead" - id = "red_mead" - result = "red_mead" - required_reagents = list("blood" = 1, "mead" = 1) - result_amount = 2 - - mead - name = "Mead" - id = "mead" - result = "mead" - required_reagents = list("sugar" = 1, "water" = 1) - required_catalysts = list("enzyme" = 5) - result_amount = 2 - - iced_beer - name = "Iced Beer" - id = "iced_beer" - result = "iced_beer" - required_reagents = list("beer" = 10, "frostoil" = 1) - result_amount = 10 - - iced_beer2 - name = "Iced Beer" - id = "iced_beer" - result = "iced_beer" - required_reagents = list("beer" = 5, "ice" = 1) - result_amount = 6 - - grog - name = "Grog" - id = "grog" - result = "grog" - required_reagents = list("rum" = 1, "water" = 1) - result_amount = 2 - - soy_latte - name = "Soy Latte" - id = "soy_latte" - result = "soy_latte" - required_reagents = list("coffee" = 1, "soymilk" = 1) - result_amount = 2 - - cafe_latte - name = "Cafe Latte" - id = "cafe_latte" - result = "cafe_latte" - required_reagents = list("coffee" = 1, "milk" = 1) - result_amount = 2 - - acidspit - name = "Acid Spit" - id = "acidspit" - result = "acidspit" - required_reagents = list("sacid" = 1, "wine" = 5) - result_amount = 6 - - amasec - name = "Amasec" - id = "amasec" - result = "amasec" - required_reagents = list("iron" = 1, "wine" = 5, "vodka" = 5) - result_amount = 10 - - changelingsting - name = "Changeling Sting" - id = "changelingsting" - result = "changelingsting" - required_reagents = list("screwdrivercocktail" = 1, "limejuice" = 1, "lemonjuice" = 1) - result_amount = 5 - - aloe - name = "Aloe" - id = "aloe" - result = "aloe" - required_reagents = list("cream" = 1, "whiskey" = 1, "watermelonjuice" = 1) - result_amount = 2 - - andalusia - name = "Andalusia" - id = "andalusia" - result = "andalusia" - required_reagents = list("rum" = 1, "whiskey" = 1, "lemonjuice" = 1) - result_amount = 3 - - neurotoxin - name = "Neurotoxin" - id = "neurotoxin" - result = "neurotoxin" - required_reagents = list("gargleblaster" = 1, "stoxin" = 1) - result_amount = 2 - - snowwhite - name = "Snow White" - id = "snowwhite" - result = "snowwhite" - required_reagents = list("beer" = 1, "lemon_lime" = 1) - result_amount = 2 - - irishcarbomb - name = "Irish Car Bomb" - id = "irishcarbomb" - result = "irishcarbomb" - required_reagents = list("ale" = 1, "irishcream" = 1) - result_amount = 2 - - syndicatebomb - name = "Syndicate Bomb" - id = "syndicatebomb" - result = "syndicatebomb" - required_reagents = list("beer" = 1, "whiskeycola" = 1) - result_amount = 2 - - erikasurprise - name = "Erika Surprise" - id = "erikasurprise" - result = "erikasurprise" - required_reagents = list("ale" = 1, "limejuice" = 1, "whiskey" = 1, "banana" = 1, "ice" = 1) - result_amount = 5 - - devilskiss - name = "Devils Kiss" - id = "devilskiss" - result = "devilskiss" - required_reagents = list("blood" = 1, "kahlua" = 1, "rum" = 1) - result_amount = 3 - - hippiesdelight - name = "Hippies Delight" - id = "hippiesdelight" - result = "hippiesdelight" - required_reagents = list("psilocybin" = 1, "gargleblaster" = 1) - result_amount = 2 - - bananahonk - name = "Banana Honk" - id = "bananahonk" - result = "bananahonk" - required_reagents = list("banana" = 1, "cream" = 1, "sugar" = 1) - result_amount = 3 - - silencer - name = "Silencer" - id = "silencer" - result = "silencer" - required_reagents = list("nothing" = 1, "cream" = 1, "sugar" = 1) - result_amount = 3 - - driestmartini - name = "Driest Martini" - id = "driestmartini" - result = "driestmartini" - required_reagents = list("nothing" = 1, "gin" = 1) - result_amount = 2 - - lemonade - name = "Lemonade" - id = "lemonade" - result = "lemonade" - required_reagents = list("lemonjuice" = 1, "sugar" = 1, "water" = 1) - result_amount = 3 - - kiraspecial - name = "Kira Special" - id = "kiraspecial" - result = "kiraspecial" - required_reagents = list("orangejuice" = 1, "limejuice" = 1, "sodawater" = 1) - result_amount = 2 - - brownstar - name = "Brown Star" - id = "brownstar" - result = "brownstar" - required_reagents = list("orangejuice" = 2, "cola" = 1) - result_amount = 2 - - milkshake - name = "Milkshake" - id = "milkshake" - result = "milkshake" - required_reagents = list("cream" = 1, "ice" = 2, "milk" = 2) - result_amount = 5 - - rewriter - name = "Rewriter" - id = "rewriter" - result = "rewriter" - required_reagents = list("spacemountainwind" = 1, "coffee" = 1) - result_amount = 2 - - suidream - name = "Sui Dream" - id = "suidream" - result = "suidream" - required_reagents = list("space_up" = 2, "bluecuracao" = 1, "melonliquor" = 1) + analysis_liquid + name = "Analysis sample" + id = "analysis_sample" + result = "analysis_sample" + secondary_results = list("chemical_waste" = 1) + required_reagents = list("density_separated_sample" = 5) result_amount = 4 + requires_heating = 1 +*/ diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 72bb60b4c6..2ac8a124a9 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -13,39 +13,134 @@ set category = "Object" set src in range(0) var/N = input("Amount per transfer from this:","[src]") as null|anything in possible_transfer_amounts - if (N) + if(N) amount_per_transfer_from_this = N /obj/item/weapon/reagent_containers/New() ..() - if (!possible_transfer_amounts) + if(!possible_transfer_amounts) src.verbs -= /obj/item/weapon/reagent_containers/verb/set_APTFT - var/datum/reagents/R = new/datum/reagents(volume) - reagents = R - R.my_atom = src + create_reagents(volume) /obj/item/weapon/reagent_containers/attack_self(mob/user as mob) return -/obj/item/weapon/reagent_containers/attack(mob/M as mob, mob/user as mob, def_zone) - if(can_operate(M)) //Checks if mob is lying down on table for surgery - if(do_surgery(M,user,src)) +/obj/item/weapon/reagent_containers/attack(mob/M as mob, mob/user as mob, def_zone) + if(can_operate(M))//Checks if mob is lying down on table for surgery + if(do_surgery(M, user, src)) return -// this prevented pills, food, and other things from being picked up by bags. -// possibly intentional, but removing it allows us to not duplicate functionality. -// -Sayu (storage conslidation) -/* -/obj/item/weapon/reagent_containers/attackby(obj/item/I as obj, mob/user as mob) - return -*/ -/obj/item/weapon/reagent_containers/afterattack(obj/target, mob/user , flag) +/obj/item/weapon/reagent_containers/afterattack(obj/target, mob/user, flag) return -/obj/item/weapon/reagent_containers/proc/reagentlist(var/obj/item/weapon/reagent_containers/snack) //Attack logs for regents in pills - var/data - if(snack.reagents.reagent_list && snack.reagents.reagent_list.len) //find a reagent list if there is and check if it has entries - for (var/datum/reagent/R in snack.reagents.reagent_list) //no reagents will be left behind - data += "[R.id]([R.volume] units); " //Using IDs because SOME chemicals(I'm looking at you, chlorhydrate-beer) have the same names as other chemicals. - return data - else return "No reagents" \ No newline at end of file +/obj/item/weapon/reagent_containers/proc/reagentlist() // For attack logs + if(reagents) + return reagents.get_reagents() + return "No reagent holder" + +/obj/item/weapon/reagent_containers/proc/standard_dispenser_refill(var/mob/user, var/obj/structure/reagent_dispensers/target) // This goes into afterattack + if(!istype(target)) + return 0 + + if(!target.reagents || !target.reagents.total_volume) + user << "[target] is empty." + return 1 + + if(reagents && !reagents.get_free_space()) + user << "[src] is full." + return 1 + + var/trans = target.reagents.trans_to_obj(src, target:amount_per_transfer_from_this) + user << "You fill [src] with [trans] units of the contents of [target]." + return 1 + +/obj/item/weapon/reagent_containers/proc/standard_splash_mob(var/mob/user, var/mob/target) // This goes into afterattack + if(!istype(target)) + return + + if(!reagents || !reagents.total_volume) + user << "[src] is empty." + return 1 + + if(target.reagents && !target.reagents.get_free_space()) + user << "[target] is full." + return 1 + + var/contained = reagentlist() + target.attack_log += text("\[[time_stamp()]\] Has been splashed with [name] by [user.name] ([user.ckey]). Reagents: [contained]") + user.attack_log += text("\[[time_stamp()]\] Used the [name] to splash [target.name] ([target.key]). Reagents: [contained]") + msg_admin_attack("[user.name] ([user.ckey]) splashed [target.name] ([target.key]) with [name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") + + user.visible_message("[target] has been splashed with something by [user]!", "You splash the solution onto [target].") + reagents.splash_mob(target, reagents.total_volume) + return 1 + +/obj/item/weapon/reagent_containers/proc/self_feed_message(var/mob/user) + user << "You eat \the [src]" + +/obj/item/weapon/reagent_containers/proc/other_feed_message_start(var/mob/user, var/mob/target) + user.visible_message("[user] is trying to feed [target] \the [src]!") + +/obj/item/weapon/reagent_containers/proc/other_feed_message_finish(var/mob/user, var/mob/target) + user.visible_message("[user] has fed [target] \the [src]!") + +/obj/item/weapon/reagent_containers/proc/feed_sound(var/mob/user) + return + +/obj/item/weapon/reagent_containers/proc/standard_feed_mob(var/mob/user, var/mob/target) // This goes into attack + if(!istype(target)) + return 0 + + if(!reagents || !reagents.total_volume) + user << "\The [src] is empty." + return 1 + + if(target == user) + if(istype(user, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = user + if(H.species.flags & IS_SYNTHETIC) + H << "You have a monitor for a head, where do you think you're going to put that?" + return 1 + + self_feed_message(user) + reagents.trans_to_mob(user, amount_per_transfer_from_this, CHEM_INGEST) + feed_sound(user) + return 1 + else + if(istype(user, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = target + if(H.species.flags & IS_SYNTHETIC) + H << "They have a monitor for a head, where do you think you're going to put that?" + return + + other_feed_message_start(user, target) + + if(!do_mob(user, target)) + return + + other_feed_message_finish(user, target) + + var/contained = reagentlist() + target.attack_log += text("\[[time_stamp()]\] Has been fed [name] by [user.name] ([user.ckey]). Reagents: [contained]") + user.attack_log += text("\[[time_stamp()]\] Fed [name] by [target.name] ([target.ckey]). Reagents: [contained]") + msg_admin_attack("[key_name(user)] fed [key_name(target)] with [name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") + + reagents.trans_to_mob(target, amount_per_transfer_from_this, CHEM_INGEST) + feed_sound(user) + return 1 + +/obj/item/weapon/reagent_containers/proc/standard_pour_into(var/mob/user, var/atom/target) // This goes into afterattack and yes, it's atom-level + if(!target.is_open_container() || !target.reagents) + return 0 + + if(!reagents || !reagents.total_volume) + user << "[src] is empty." + return 1 + + if(!target.reagents.get_free_space()) + user << "[target] is full." + return 1 + + var/trans = reagents.trans_to(target, amount_per_transfer_from_this) + user << "You transfer [trans] units of the solution to [target]." + return 1 diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index d82ded7bba..b8373a6aa1 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -1,4 +1,3 @@ - /obj/item/weapon/reagent_containers/borghypo name = "Cyborg Hypospray" desc = "An advanced chemical synthesizer and injection system, designed for heavy-duty medical equipment." @@ -15,7 +14,6 @@ var/list/datum/reagents/reagent_list = list() var/list/reagent_ids = list("tricordrazine", "inaprovaline", "spaceacillin") - //var/list/reagent_ids = list("dexalin", "kelotane", "bicaridine", "anti_toxin", "inaprovaline", "spaceacillin") /obj/item/weapon/reagent_containers/borghypo/surgeon reagent_ids = list("bicaridine", "inaprovaline", "dexalin") @@ -40,23 +38,15 @@ if(charge_tick < recharge_time) return 0 charge_tick = 0 - if(isrobot(src.loc)) - var/mob/living/silicon/robot/R = src.loc + if(isrobot(loc)) + var/mob/living/silicon/robot/R = loc if(R && R.cell) var/datum/reagents/RG = reagent_list[mode] if(RG.total_volume < RG.maximum_volume) //Don't recharge reagents and drain power if the storage is full. R.cell.use(charge_cost) //Take power from borg... RG.add_reagent(reagent_ids[mode], 5) //And fill hypo with reagent. - //update_icon() return 1 -// Purely for testing purposes I swear~ -/* -/obj/item/weapon/reagent_containers/borghypo/verb/add_cyanide() - set src in world - add_reagent("cyanide") -*/ - // Use this to add more chemicals for the borghypo to produce. /obj/item/weapon/reagent_containers/borghypo/proc/add_reagent(var/reagent) reagent_ids |= reagent @@ -70,19 +60,18 @@ /obj/item/weapon/reagent_containers/borghypo/attack(mob/living/M as mob, mob/user as mob) var/datum/reagents/R = reagent_list[mode] if(!R.total_volume) - user << "\red The injector is empty." + user << "The injector is empty." return - if (!(istype(M))) + if (!istype(M)) return - if (R.total_volume && M.can_inject(user,1)) - user << "\blue You inject [M] with the injector." - M << "\red You feel a tiny prick!" + if (R.total_volume && M.can_inject(user, 1)) + user << "You inject [M] with the injector." + M << "You feel a tiny prick!" - R.reaction(M, INGEST) if(M.reagents) - var/trans = R.trans_to(M, amount_per_transfer_from_this) - user << "\blue [trans] units injected. [R.total_volume] units remaining." + var/trans = R.trans_to_mob(M, amount_per_transfer_from_this, CHEM_BLOOD) + user << "[trans] units injected. [R.total_volume] units remaining." return /obj/item/weapon/reagent_containers/borghypo/attack_self(mob/user as mob) @@ -93,7 +82,7 @@ charge_tick = 0 //Prevents wasted chems/cell charge if you're cycling through modes. var/datum/reagent/R = chemical_reagents_list[reagent_ids[mode]] - user << "\blue Synthesizer is now producing '[R.name]'." + user << "Synthesizer is now producing '[R.name]'." return /obj/item/weapon/reagent_containers/borghypo/examine(mob/user) @@ -105,8 +94,8 @@ for(var/datum/reagents/RS in reagent_list) var/datum/reagent/R = locate() in RS.reagent_list if(R) - user << "\blue It currently has [R.volume] units of [R.name] stored." + user << "It currently has [R.volume] units of [R.name] stored." empty = 0 if(empty) - user << "\blue It is currently empty. Allow some time for the internal syntheszier to produce more." + user << "It is currently empty. Allow some time for the internal syntheszier to produce more." diff --git a/code/modules/reagents/reagent_containers/dropper.dm b/code/modules/reagents/reagent_containers/dropper.dm index 1cfe480ff9..c67c6ab7de 100644 --- a/code/modules/reagents/reagent_containers/dropper.dm +++ b/code/modules/reagents/reagent_containers/dropper.dm @@ -10,19 +10,18 @@ possible_transfer_amounts = list(1,2,3,4,5) w_class = 1 volume = 5 - var/filled = 0 - afterattack(obj/target, mob/user , flag) + afterattack(var/obj/target, var/mob/user, var/flag) if(!target.reagents || !flag) return - if(filled) + if(reagents.total_volume) - if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "\red [target] is full." + if(!target.reagents.get_free_space()) + user << "[target] is full." return - if(!target.is_open_container() && !ismob(target) && !istype(target,/obj/item/weapon/reagent_containers/food) && !istype(target, /obj/item/clothing/mask/smokable/cigarette)) //You can inject humans and food but you cant remove the shit. - user << "\red You cannot directly fill this object." + if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/weapon/reagent_containers/food) && !istype(target, /obj/item/clothing/mask/smokable/cigarette)) //You can inject humans and food but you cant remove the shit. + user << "You cannot directly fill this object." return var/trans = 0 @@ -30,80 +29,76 @@ if(ismob(target)) var/time = 20 //2/3rds the time of a syringe - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] is trying to squirt something into []'s eyes!", user, target), 1) + user.visible_message("[user] is trying to squirt something into [target]'s eyes!") - if(!do_mob(user, target, time)) return + if(!do_mob(user, target, time)) + return - if(istype(target , /mob/living/carbon/human)) + if(istype(target, /mob/living/carbon/human)) var/mob/living/carbon/human/victim = target var/obj/item/safe_thing = null - if( victim.wear_mask ) - if ( victim.wear_mask.flags & MASKCOVERSEYES ) + if(victim.wear_mask) + if (victim.wear_mask.flags & MASKCOVERSEYES) safe_thing = victim.wear_mask - if( victim.head ) - if ( victim.head.flags & MASKCOVERSEYES ) + if(victim.head) + if (victim.head.flags & MASKCOVERSEYES) safe_thing = victim.head if(victim.glasses) - if ( !safe_thing ) + if (!safe_thing) safe_thing = victim.glasses if(safe_thing) - if(!safe_thing.reagents) - safe_thing.create_reagents(100) - trans = src.reagents.trans_to(safe_thing, amount_per_transfer_from_this) - - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] tries to squirt something into []'s eyes, but fails!", user, target), 1) - spawn(5) - src.reagents.reaction(safe_thing, TOUCH) - - user << "\blue You transfer [trans] units of the solution." - if (src.reagents.total_volume<=0) - filled = 0 - icon_state = "dropper[filled]" + trans = reagents.trans_to_obj(safe_thing, amount_per_transfer_from_this) + user.visible_message("[user] tries to squirt something into [target]'s eyes, but fails!", "You transfer [trans] units of the solution.") return - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] squirts something into []'s eyes!", user, target), 1) - src.reagents.reaction(target, TOUCH) + trans = reagents.trans_to_mob(target, reagents.total_volume, CHEM_INGEST) + user.visible_message("[user] squirts something into [target]'s eyes!", "You transfer [trans] units of the solution.") var/mob/living/M = target + var/contained = reagentlist() + M.attack_log += text("\[[time_stamp()]\] Has been squirted with [name] by [user.name] ([user.ckey]). Reagents: [contained]") + user.attack_log += text("\[[time_stamp()]\] Used the [name] to squirt [M.name] ([M.key]). Reagents: [contained]") + msg_admin_attack("[user.name] ([user.ckey]) squirted [M.name] ([M.key]) with [name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") + return - var/list/injected = list() - for(var/datum/reagent/R in src.reagents.reagent_list) - injected += R.name - var/contained = english_list(injected) - M.attack_log += text("\[[time_stamp()]\] Has been squirted with [src.name] by [user.name] ([user.ckey]). Reagents: [contained]") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to squirt [M.name] ([M.key]). Reagents: [contained]") - msg_admin_attack("[user.name] ([user.ckey]) squirted [M.name] ([M.key]) with [src.name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") + else + trans = reagents.trans_to(target, amount_per_transfer_from_this) + user << "You transfer [trans] units of the solution." - trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "\blue You transfer [trans] units of the solution." - if (src.reagents.total_volume<=0) - filled = 0 - icon_state = "dropper[filled]" - - else + else // Taking from something if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers)) - user << "\red You cannot directly remove reagents from [target]." + user << "You cannot directly remove reagents from [target]." return - if(!target.reagents.total_volume) - user << "\red [target] is empty." + if(!target.reagents || !target.reagents.total_volume) + user << "[target] is empty." return - var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) + var/trans = target.reagents.trans_to_obj(src, amount_per_transfer_from_this) - user << "\blue You fill the dropper with [trans] units of the solution." - - filled = 1 - icon_state = "dropper[filled]" + user << "You fill the dropper with [trans] units of the solution." return + on_reagent_change() + update_icon() + + update_icon() + if(reagents.total_volume) + icon_state = "dropper1" + else + icon_state = "dropper0" + +/obj/item/weapon/reagent_containers/dropper/industrial + name = "Industrial Dropper" + desc = "A larger dropper. Transfers 10 units." + amount_per_transfer_from_this = 10 + possible_transfer_amounts = list(1,2,3,4,5,6,7,8,9,10) + volume = 10 + //////////////////////////////////////////////////////////////////////////////// /// Droppers. END //////////////////////////////////////////////////////////////////////////////// diff --git a/code/modules/reagents/reagent_containers/food/cans.dm b/code/modules/reagents/reagent_containers/food/cans.dm index 0129423f4f..c27df37d47 100644 --- a/code/modules/reagents/reagent_containers/food/cans.dm +++ b/code/modules/reagents/reagent_containers/food/cans.dm @@ -1,104 +1,39 @@ /obj/item/weapon/reagent_containers/food/drinks/cans - var canopened = 0 + amount_per_transfer_from_this = 5 + flags = 0 attack_self(mob/user as mob) - if (canopened == 0) - playsound(src.loc,'sound/effects/canopen.ogg', rand(10,50), 1) + if (!is_open_container()) + playsound(loc,'sound/effects/canopen.ogg', rand(10,50), 1) user << "You open the drink with an audible pop!" - canopened = 1 + flags |= OPENCONTAINER else return attack(mob/M as mob, mob/user as mob, def_zone) - if (canopened == 0) + if(!is_open_container()) user << "You need to open the drink!" return - var/datum/reagents/R = src.reagents - var/fillevel = gulp_size - if(!R.total_volume || !R) - user << "\red The [src.name] is empty!" - return 0 - - if(M == user) - M << "\blue You swallow a gulp of [src]." - if(reagents.total_volume) - reagents.trans_to_ingest(M, gulp_size) - reagents.reaction(M, INGEST) - spawn(5) - reagents.trans_to(M, gulp_size) - - playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1) - return 1 - else if( istype(M, /mob/living/carbon/human) ) - if (canopened == 0) - user << "You need to open the drink!" - return - - else if (canopened == 1) - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] attempts to feed [M] [src].", 1) - if(!do_mob(user, M)) return - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] feeds [M] [src].", 1) - - M.attack_log += text("\[[time_stamp()]\] Has been fed [src.name] by [user.name] ([user.ckey]) Reagents: [reagentlist(src)]") - user.attack_log += text("\[[time_stamp()]\] Fed [M.name] by [M.name] ([M.ckey]) Reagents: [reagentlist(src)]") - msg_admin_attack("[key_name(user)] fed [key_name(M)] with [src.name] Reagents: [reagentlist(src)] (INTENT: [uppertext(user.a_intent)]) (JMP)") - - if(reagents.total_volume) - reagents.trans_to_ingest(M, gulp_size) - - if(isrobot(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell - var/mob/living/silicon/robot/bro = user - bro.cell.use(30) - var/refill = R.get_master_reagent_id() - spawn(600) - R.add_reagent(refill, fillevel) - - playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1) - return 1 - - return 0 + return ..() afterattack(obj/target, mob/user, proximity) if(!proximity) return if(istype(target, /obj/structure/reagent_dispensers)) //A dispenser. Transfer FROM it TO us. - if (canopened == 0) + if(!is_open_container()) user << "You need to open the drink!" return else if(target.is_open_container()) //Something like a glass. Player probably wants to transfer TO it. - if (canopened == 0) + if(!is_open_container()) user << "You need to open the drink!" return - if (istype(target, /obj/item/weapon/reagent_containers/food/drinks/cans)) - var/obj/item/weapon/reagent_containers/food/drinks/cans/cantarget = target - if(cantarget.canopened == 0) - user << "You need to open the drink you want to pour into!" - return - return ..() -/* examine(mob/user) - if(!..(user, 1)) - return - if(!reagents || reagents.total_volume==0) - user << "\blue \The [src] is empty!" - else if (reagents.total_volume<=src.volume/4) - user << "\blue \The [src] is almost empty!" - else if (reagents.total_volume<=src.volume*0.66) - user << "\blue \The [src] is half full!" - else if (reagents.total_volume<=src.volume*0.90) - user << "\blue \The [src] is almost full!" - else - user << "\blue \The [src] is full!"*/ - - //DRINKS /obj/item/weapon/reagent_containers/food/drinks/cans/cola diff --git a/code/modules/reagents/reagent_containers/food/condiment.dm b/code/modules/reagents/reagent_containers/food/condiment.dm index f643ccca90..642507df84 100644 --- a/code/modules/reagents/reagent_containers/food/condiment.dm +++ b/code/modules/reagents/reagent_containers/food/condiment.dm @@ -15,72 +15,39 @@ center_of_mass = list("x"=16, "y"=6) volume = 50 - attackby(obj/item/weapon/W as obj, mob/user as mob) - - return - attack_self(mob/user as mob) - return - attack(mob/M as mob, mob/user as mob, def_zone) - var/datum/reagents/R = src.reagents - - if(!R || !R.total_volume) - user << "\red The [src.name] is empty!" - return 0 - - if(M == user) - M << "\blue You swallow some of contents of the [src]." - if(reagents.total_volume) - reagents.trans_to_ingest(M, 10) - - playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1) - return 1 - else if( istype(M, /mob/living/carbon/human) ) - - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] attempts to feed [M] [src].", 1) - if(!do_mob(user, M)) return - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] feeds [M] [src].", 1) - - M.attack_log += text("\[[time_stamp()]\] Has been fed [src.name] by [user.name] ([user.ckey]) Reagents: [reagentlist(src)]") - user.attack_log += text("\[[time_stamp()]\] Fed [src.name] by [M.name] ([M.ckey]) Reagents: [reagentlist(src)]") - msg_admin_attack("[user.name] ([user.ckey]) fed [M.name] ([M.ckey]) with [src.name] (INTENT: [uppertext(user.a_intent)]) (JMP)") - - if(reagents.total_volume) - reagents.trans_to_ingest(M, 10) - - playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1) - return 1 - return 0 - - attackby(obj/item/I as obj, mob/user as mob) - + attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) return - afterattack(obj/target, mob/user , flag) - if(istype(target, /obj/structure/reagent_dispensers)) //A dispenser. Transfer FROM it TO us. + attack_self(var/mob/user as mob) + return - if(!target.reagents.total_volume) - user << "\red [target] is empty." + attack(var/mob/M as mob, var/mob/user as mob, var/def_zone) + if(standard_feed_mob(user, M)) + return + + afterattack(var/obj/target, var/mob/user, var/flag) + if(standard_dispenser_refill(user, target)) + return + if(standard_pour_into(user, target)) + return + + if(istype(target, /obj/item/weapon/reagent_containers/food/snacks)) // These are not opencontainers but we can transfer to them + if(!reagents || !reagents.total_volume) + user << "There is no condiment left in \the [src]." return - if(reagents.total_volume >= reagents.maximum_volume) - user << "\red [src] is full." + if(!target.reagents.get_free_space()) + user << "You can't add more condiment to \the [target]." return - var/trans = target.reagents.trans_to(src, target:amount_per_transfer_from_this) - user << "\blue You fill [src] with [trans] units of the contents of [target]." + var/trans = reagents.trans_to_obj(target, amount_per_transfer_from_this) + user << "You add [trans] units of the condiment to \the [target]." - //Something like a glass or a food item. Player probably wants to transfer TO it. - else if(target.is_open_container() || istype(target, /obj/item/weapon/reagent_containers/food/snacks)) - if(!reagents.total_volume) - user << "\red [src] is empty." - return - if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "\red you can't add anymore to [target]." - return - var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "\blue You transfer [trans] units of the condiment to [target]." + feed_sound(var/mob/user) + playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1) + + self_feed_message(var/mob/user) + user << "You swallow some of contents of \the [src]." on_reagent_change() if(icon_state == "saltshakersmall" || icon_state == "peppermillsmall") diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index 58b11a61ac..a42b5156b2 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -7,134 +7,63 @@ icon = 'icons/obj/drinks.dmi' icon_state = null flags = OPENCONTAINER - var/gulp_size = 5 //This is now officially broken ... need to think of a nice way to fix it. - possible_transfer_amounts = list(5,10,25) + amount_per_transfer_from_this = 5 volume = 50 on_reagent_change() - if (gulp_size < 5) gulp_size = 5 - else gulp_size = max(round(reagents.total_volume / 5), 5) + return attack_self(mob/user as mob) return attack(mob/M as mob, mob/user as mob, def_zone) - var/datum/reagents/R = src.reagents - var/fillevel = gulp_size - - if(!R.total_volume || !R) - user << "\red The [src.name] is empty!" - return 0 - - if(M == user) - - if(istype(M,/mob/living/carbon/human)) - var/mob/living/carbon/human/H = M - if(H.species.flags & IS_SYNTHETIC) - H << "\red You have a monitor for a head, where do you think you're going to put that?" - return - - M << "\blue You swallow a gulp from \the [src]." - if(reagents.total_volume) - reagents.trans_to_ingest(M, gulp_size) - - playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1) - return 1 - else if( istype(M, /mob/living/carbon/human) ) - - var/mob/living/carbon/human/H = M - if(H.species.flags & IS_SYNTHETIC) - H << "\red They have a monitor for a head, where do you think you're going to put that?" - return - - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] attempts to feed [M] [src].", 1) - if(!do_mob(user, M)) return - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] feeds [M] [src].", 1) - - M.attack_log += text("\[[time_stamp()]\] Has been fed [src.name] by [user.name] ([user.ckey]) Reagents: [reagentlist(src)]") - user.attack_log += text("\[[time_stamp()]\] Fed [M.name] by [M.name] ([M.ckey]) Reagents: [reagentlist(src)]") - msg_admin_attack("[key_name(user)] fed [key_name(M)] with [src.name] Reagents: [reagentlist(src)] (INTENT: [uppertext(user.a_intent)]) (JMP)") - - if(reagents.total_volume) - reagents.trans_to_ingest(M, gulp_size) - - if(isrobot(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell - var/mob/living/silicon/robot/bro = user - bro.cell.use(30) - var/refill = R.get_master_reagent_id() - spawn(600) - R.add_reagent(refill, fillevel) - - playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1) - return 1 + if(standard_feed_mob(user, M)) + robot_refill(user) + return return 0 - afterattack(obj/target, mob/user, proximity) if(!proximity) return - if(istype(target, /obj/structure/reagent_dispensers)) //A dispenser. Transfer FROM it TO us. - - if(!target.reagents.total_volume) - user << "\red [target] is empty." - return - - if(reagents.total_volume >= reagents.maximum_volume) - user << "\red [src] is full." - return - - var/trans = target.reagents.trans_to(src, target:amount_per_transfer_from_this) - user << "\blue You fill [src] with [trans] units of the contents of [target]." - - else if(target.is_open_container()) //Something like a glass. Player probably wants to transfer TO it. - if(!reagents.total_volume) - user << "\red [src] is empty." - return - - if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "\red [target] is full." - return - - - - var/datum/reagent/refill - var/datum/reagent/refillName - if(isrobot(user)) - refill = reagents.get_master_reagent_id() - refillName = reagents.get_master_reagent_name() - - var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "\blue You transfer [trans] units of the solution to [target]." - - if(isrobot(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell - var/mob/living/silicon/robot/bro = user - var/chargeAmount = max(30,4*trans) - bro.cell.use(chargeAmount) - user << "Now synthesizing [trans] units of [refillName]..." - - - spawn(300) - reagents.add_reagent(refill, trans) - user << "Cyborg [src] refilled." + if(standard_dispenser_refill(user, target)) + return + if(standard_pour_into(user, target)) + robot_refill(user) + return return ..() + proc/robot_refill(var/mob/living/silicon/robot/user) + if(!istype(user)) + return 0 + + user.cell.use(30) + var/refill = reagents.get_master_reagent_id() + user << "Now synthesizing [amount_per_transfer_from_this] units of [refill]..." + spawn(300) + reagents.add_reagent(refill, amount_per_transfer_from_this) + user << "Cyborg [src] refilled." + + self_feed_message(var/mob/user) + user << "You swallow a gulp from \the [src]." + + feed_sound(var/mob/user) + playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1) + examine(mob/user) if(!..(user, 1)) return - if(!reagents || reagents.total_volume==0) - user << "\blue \The [src] is empty!" - else if (reagents.total_volume<=src.volume/4) - user << "\blue \The [src] is almost empty!" - else if (reagents.total_volume<=src.volume*0.66) - user << "\blue \The [src] is half full!" - else if (reagents.total_volume<=src.volume*0.90) - user << "\blue \The [src] is almost full!" + if(!reagents || reagents.total_volume == 0) + user << "\The [src] is empty!" + else if (reagents.total_volume <= volume * 0.25) + user << "\The [src] is almost empty!" + else if (reagents.total_volume <= volume * 0.66) + user << "\The [src] is half full!" + else if (reagents.total_volume <= volume * 0.90) + user << "\The [src] is almost full!" else - user << "\blue \The [src] is full!" + user << "\The [src] is full!" //////////////////////////////////////////////////////////////////////////////// diff --git a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm b/code/modules/reagents/reagent_containers/food/drinks/bottle.dm index 52a4ba12ba..03b85848d6 100644 --- a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm +++ b/code/modules/reagents/reagent_containers/food/drinks/bottle.dm @@ -1,5 +1,3 @@ - - ///////////////////////////////////////////////Alchohol bottles! -Agouri ////////////////////////// //Functionally identical to regular drinks. The only difference is that the default bottle size is 100. - Darem //Bottles now weaken and break when smashed on people's heads. - Giacom @@ -78,10 +76,9 @@ msg_admin_attack("[user.name] ([user.ckey]) attacked [target.name] ([target.ckey]) with a bottle. (INTENT: [uppertext(user.a_intent)]) (JMP)") //The reagents in the bottle splash all over the target, thanks for the idea Nodrak - if(src.reagents) - for(var/mob/O in viewers(user, null)) - O.show_message(text("\blue The contents of the [src] splashes all over [target]!"), 1) - src.reagents.reaction(target, TOUCH) + if(reagents) + user.visible_message("The contents of the [src] splash all over [target]!") + reagents.trans_to_mob(target, reagents.total_volume) //Finally, smash the bottle. This kills (del) the bottle. src.smash(target, user) diff --git a/code/modules/reagents/reagent_containers/food/sandwich.dm b/code/modules/reagents/reagent_containers/food/sandwich.dm index 0d8e614468..224102eb0a 100644 --- a/code/modules/reagents/reagent_containers/food/sandwich.dm +++ b/code/modules/reagents/reagent_containers/food/sandwich.dm @@ -34,7 +34,7 @@ else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks)) user << "\blue You layer [W] over \the [src]." var/obj/item/weapon/reagent_containers/F = W - F.reagents.trans_to(src, F.reagents.total_volume) + F.reagents.trans_to_obj(src, F.reagents.total_volume) user.drop_item() W.loc = src ingredients += W diff --git a/code/modules/reagents/reagent_containers/food/snacks.dm b/code/modules/reagents/reagent_containers/food/snacks.dm index 502a741c6b..192a4f6959 100644 --- a/code/modules/reagents/reagent_containers/food/snacks.dm +++ b/code/modules/reagents/reagent_containers/food/snacks.dm @@ -34,7 +34,6 @@ return /obj/item/weapon/reagent_containers/food/snacks/attack(mob/M as mob, mob/user as mob, def_zone) - if(!reagents.total_volume) user << "None of [src] left!" user.drop_from_inventory(src) @@ -94,15 +93,9 @@ playsound(M.loc,'sound/items/eatfood.ogg', rand(10,50), 1) if(reagents.total_volume) if(reagents.total_volume > bitesize) - /* - * I totally cannot understand what this code supposed to do. - * Right now every snack consumes in 2 bites, my popcorn does not work right, so I simplify it. -- rastaf0 - var/temp_bitesize = max(reagents.total_volume /2, bitesize) - reagents.trans_to(M, temp_bitesize) - */ - reagents.trans_to_ingest(M, bitesize) + reagents.trans_to_mob(M, bitesize, CHEM_INGEST) else - reagents.trans_to_ingest(M, reagents.total_volume) + reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) bitecount++ On_Consume(M) return 1 @@ -149,7 +142,7 @@ I.color = src.filling_color U.overlays += I - reagents.trans_to(U,min(reagents.total_volume,5)) + reagents.trans_to_obj(U, min(reagents.total_volume,5)) if (reagents.total_volume <= 0) del(src) @@ -188,7 +181,7 @@ var/reagents_per_slice = reagents.total_volume/slices_num for(var/i=1 to (slices_num-slices_lost)) var/obj/slice = new slice_path (src.loc) - reagents.trans_to(slice,reagents_per_slice) + reagents.trans_to_obj(slice, reagents_per_slice) del(src) return @@ -210,7 +203,7 @@ user.visible_message("[user] nibbles away at \the [src].","You nibble away at \the [src].") bitecount++ if(reagents && user.reagents) - reagents.trans_to_ingest(user, bitesize) + reagents.trans_to_mob(user, bitesize, CHEM_INGEST) spawn(5) if(!src && !user.client) user.custom_emote(1,"[pick("burps", "cries for more", "burps twice", "looks at the area where the food was")]") @@ -484,7 +477,7 @@ /obj/item/weapon/reagent_containers/food/snacks/egg/throw_impact(atom/hit_atom) ..() new/obj/effect/decal/cleanable/egg_smudge(src.loc) - src.reagents.reaction(hit_atom, TOUCH) + src.reagents.trans_to(hit_atom, reagents.total_volume) src.visible_message("\red [src.name] has been squashed.","\red You hear a smack.") del(src) @@ -2049,7 +2042,7 @@ New() ..() - reagents.add_reagent("minttoxin", 1) + reagents.add_reagent("mint", 1) bitesize = 1 /obj/item/weapon/reagent_containers/food/snacks/mushroomsoup diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index c056d4479c..20497df85c 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -41,116 +41,71 @@ /obj/machinery/sleeper, /obj/machinery/smartfridge/, /obj/machinery/biogenerator, - /obj/machinery/constructable_frame + /obj/machinery/constructable_frame, + /obj/machinery/bunsen_burner, + /obj/machinery/radiocarbon_spectrometer ) New() ..() base_name = name - examine(mob/user) + examine(var/mob/user) if(!..(user, 2)) return if(reagents && reagents.reagent_list.len) - user << "\blue It contains [src.reagents.total_volume] units of liquid." + user << "It contains [reagents.total_volume] units of liquid." else - user << "\blue It is empty." - if (!is_open_container()) - user << "\blue Airtight lid seals it completely." + user << "It is empty." + if(!is_open_container()) + user << "Airtight lid seals it completely." attack_self() ..() - if (is_open_container()) - usr << "You put the lid on \the [src]." + if(is_open_container()) + usr << "You put the lid on \the [src]." flags ^= OPENCONTAINER else - usr << "You take the lid off \the [src]." + usr << "You take the lid off \the [src]." flags |= OPENCONTAINER update_icon() - afterattack(obj/target, mob/user , flag) + afterattack(var/obj/target, var/mob/user, var/flag) - if (!is_open_container() || !flag) + if(!is_open_container() || !flag) return - for(var/type in src.can_be_placed_into) + for(var/type in can_be_placed_into) if(istype(target, type)) return - if(ismob(target) && target.reagents && reagents.total_volume) - user << "\blue You splash the solution onto [target]." - - var/mob/living/M = target - var/list/injected = list() - for(var/datum/reagent/R in src.reagents.reagent_list) - injected += R.name - var/contained = english_list(injected) - M.attack_log += text("\[[time_stamp()]\] Has been splashed with [src.name] by [user.name] ([user.ckey]). Reagents: [contained]") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to splash [M.name] ([M.key]). Reagents: [contained]") - msg_admin_attack("[user.name] ([user.ckey]) splashed [M.name] ([M.key]) with [src.name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") - - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] has been splashed with something by []!", target, user), 1) - src.reagents.reaction(target, TOUCH) - spawn(5) src.reagents.clear_reagents() + if(standard_splash_mob(user, target)) return - else if(istype(target, /obj/structure/reagent_dispensers)) //A dispenser. Transfer FROM it TO us. - target.add_fingerprint(user) - - if(!target.reagents.total_volume && target.reagents) - user << "\red [target] is empty." - return - - if(reagents.total_volume >= reagents.maximum_volume) - user << "\red [src] is full." - return - - var/trans = target.reagents.trans_to(src, target:amount_per_transfer_from_this) - user << "\blue You fill [src] with [trans] units of the contents of [target]." - - else if(target.is_open_container() && target.reagents) //Something like a glass. Player probably wants to transfer TO it. - - if(!reagents.total_volume) - user << "\red [src] is empty." - return - - if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "\red [target] is full." - return - - var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "\blue You transfer [trans] units of the solution to [target]." - - else if(istype(target, /obj/machinery/bunsen_burner)) + if(standard_dispenser_refill(user, target)) + return + if(standard_pour_into(user, target)) return - else if(istype(target, /obj/machinery/smartfridge)) - return - - else if(istype(target, /obj/machinery/radiocarbon_spectrometer)) - return - - else if(reagents.total_volume) - user << "\blue You splash the solution onto [target]." - src.reagents.reaction(target, TOUCH) - spawn(5) src.reagents.clear_reagents() + if(reagents.total_volume) + user << "You splash the solution onto [target]." + reagents.trans_to(target, reagents.total_volume) return attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/pen) || istype(W, /obj/item/device/flashlight/pen)) - var/tmp_label = sanitize(copytext(input(user, "Enter a label for [src.name]","Label",src.label_text), 1, MAX_NAME_LEN)) + var/tmp_label = sanitize(copytext(input(user, "Enter a label for \the [name]", "Label", label_text), 1, MAX_NAME_LEN)) if(length(tmp_label) > 10) - user << "\red The label can be at most 10 characters long." + user << "The label can be at most 10 characters long." else - user << "\blue You set the label to \"[tmp_label]\"." - src.label_text = tmp_label - src.update_name_label() + user << "You set the label to \"[tmp_label]\"." + label_text = tmp_label + update_name_label() proc/update_name_label() - if(src.label_text == "") - src.name = src.base_name + if(label_text == "") + name = base_name else - src.name = "[src.base_name] ([src.label_text])" + name = "[base_name] ([label_text])" /obj/item/weapon/reagent_containers/glass/beaker name = "beaker" @@ -195,7 +150,7 @@ if(80 to 90) filling.icon_state = "[icon_state]80" if(91 to INFINITY) filling.icon_state = "[icon_state]100" - filling.color = mix_color_from_reagents(reagents.reagent_list) + filling.color = reagents.get_color() overlays += filling if (!is_open_container()) @@ -231,7 +186,6 @@ possible_transfer_amounts = list(5,10,15,25,30,60,120,300) flags = OPENCONTAINER - /obj/item/weapon/reagent_containers/glass/beaker/vial name = "vial" desc = "A small glass vial." @@ -282,18 +236,6 @@ var/image/lid = image(icon, src, "lid_[initial(icon_state)]") overlays += lid -// vials are defined twice, what? -/* -/obj/item/weapon/reagent_containers/glass/beaker/vial - name = "vial" - desc = "Small glass vial. Looks fragile." - icon_state = "vial" - g_amt = 500 - volume = 15 - amount_per_transfer_from_this = 5 - possible_transfer_amounts = list(1,5,15) - flags = OPENCONTAINER */ - /* /obj/item/weapon/reagent_containers/glass/blender_jug name = "Blender Jug" @@ -324,21 +266,4 @@ amount_per_transfer_from_this = 20 possible_transfer_amounts = list(10,20,30,60) volume = 120 - -/obj/item/weapon/reagent_containers/glass/dispenser - name = "reagent glass" - desc = "A reagent glass." - icon = 'icons/obj/chemical.dmi' - icon_state = "beaker0" - amount_per_transfer_from_this = 10 - flags = OPENCONTAINER - -/obj/item/weapon/reagent_containers/glass/dispenser/surfactant - name = "reagent glass (surfactant)" - icon_state = "liquid" - - New() - ..() - reagents.add_reagent("fluorosurfactant", 20) - */ diff --git a/code/modules/reagents/reagent_containers/glass/bottle.dm b/code/modules/reagents/reagent_containers/glass/bottle.dm index ab01d11eaf..cbfea73a94 100644 --- a/code/modules/reagents/reagent_containers/glass/bottle.dm +++ b/code/modules/reagents/reagent_containers/glass/bottle.dm @@ -48,7 +48,7 @@ if(80 to 90) filling.icon_state = "[icon_state]-80" if(91 to INFINITY) filling.icon_state = "[icon_state]-100" - filling.color = mix_color_from_reagents(reagents.reagent_list) + filling.color = reagents.get_color() overlays += filling if (!is_open_container()) diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index fd3557b62f..c5153510d7 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -21,27 +21,22 @@ /obj/item/weapon/reagent_containers/hypospray/attack(mob/M as mob, mob/user as mob) if(!reagents.total_volume) - user << "\red [src] is empty." + user << "[src] is empty." return - if (!( istype(M, /mob) )) + if (!istype(M)) return - if (reagents.total_volume) - user << "\blue You inject [M] with [src]." - M << "\red You feel a tiny prick!" + user << "You inject [M] with [src]." + M << "You feel a tiny prick!" - src.reagents.reaction(M, INGEST) - if(M.reagents) + if(M.reagents) - var/list/injected = list() - for(var/datum/reagent/R in src.reagents.reagent_list) - injected += R.name - var/contained = english_list(injected) - M.attack_log += text("\[[time_stamp()]\] Has been injected with [src.name] by [user.name] ([user.ckey]). Reagents: [contained]") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to inject [M.name] ([M.key]). Reagents: [contained]") - msg_admin_attack("[user.name] ([user.ckey]) injected [M.name] ([M.key]) with [src.name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") + var/contained = reagentlist() + M.attack_log += text("\[[time_stamp()]\] Has been injected with [name] by [user.name] ([user.ckey]). Reagents: [contained]") + user.attack_log += text("\[[time_stamp()]\] Used the [name] to inject [M.name] ([M.key]). Reagents: [contained]") + msg_admin_attack("[user.name] ([user.ckey]) injected [M.name] ([M.key]) with [name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") - var/trans = reagents.trans_to(M, amount_per_transfer_from_this) - user << "\blue [trans] units injected. [reagents.total_volume] units remaining in [src]." + var/trans = reagents.trans_to_mob(M, amount_per_transfer_from_this, CHEM_BLOOD) + user << "[trans] units injected. [reagents.total_volume] units remaining in \the [src]." return @@ -76,6 +71,6 @@ /obj/item/weapon/reagent_containers/hypospray/autoinjector/examine(mob/user) ..(user) if(reagents && reagents.reagent_list.len) - user << "\blue It is currently loaded." + user << "It is currently loaded." else - user << "\blue It is spent." + user << "It is spent." diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 804b0347be..830da0e51c 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -14,53 +14,47 @@ New() ..() if(!icon_state) - icon_state = "pill[rand(1,20)]" + icon_state = "pill[rand(1, 20)]" - attack_self(mob/user as mob) - return attack(mob/M as mob, mob/user as mob, def_zone) if(M == user) if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(H.species.flags & IS_SYNTHETIC) - H << "\red You have a monitor for a head, where do you think you're going to put that?" + H << "You have a monitor for a head, where do you think you're going to put that?" return - M << "\blue You swallow [src]." + M << "You swallow \the [src]." M.drop_from_inventory(src) //icon update if(reagents.total_volume) - reagents.trans_to_ingest(M, reagents.total_volume) - del(src) - else - del(src) + reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) + del(src) return 1 - else if(istype(M, /mob/living/carbon/human) ) + else if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(H.species.flags & IS_SYNTHETIC) - H << "\red They have a monitor for a head, where do you think you're going to put that?" + H << "They have a monitor for a head, where do you think you're going to put that?" return - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] attempts to force [M] to swallow [src].", 1) + user.visible_message("[user] attempts to force [M] to swallow \the [src].") - if(!do_mob(user, M)) return + if(!do_mob(user, M)) + return user.drop_from_inventory(src) //icon update - for(var/mob/O in viewers(world.view, user)) - O.show_message("\red [user] forces [M] to swallow [src].", 1) + user.visible_message("[user] forces [M] to swallow \the [src].") - M.attack_log += text("\[[time_stamp()]\] Has been fed [src.name] by [user.name] ([user.ckey]) Reagents: [reagentlist(src)]") - user.attack_log += text("\[[time_stamp()]\] Fed [M.name] by [M.name] ([M.ckey]) Reagents: [reagentlist(src)]") - msg_admin_attack("[user.name] ([user.ckey]) fed [M.name] ([M.ckey]) with [src.name] Reagents: [reagentlist(src)] (INTENT: [uppertext(user.a_intent)]) (JMP)") + var/contained = reagentlist() + M.attack_log += text("\[[time_stamp()]\] Has been fed [name] by [user.name] ([user.ckey]) Reagents: [contained]") + user.attack_log += text("\[[time_stamp()]\] Fed [name] by [M.name] ([M.ckey]) Reagents: [contained]") + msg_admin_attack("[user.name] ([user.ckey]) fed [M.name] ([M.ckey]) with [name] Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") if(reagents.total_volume) - reagents.trans_to_ingest(M, reagents.total_volume) - del(src) - else - del(src) + reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) + del(src) return 1 @@ -69,21 +63,20 @@ afterattack(obj/target, mob/user, proximity) if(!proximity) return - if(target.is_open_container() != 0 && target.reagents) + if(target.is_open_container() && target.reagents) if(!target.reagents.total_volume) - user << "\red [target] is empty. Cant dissolve pill." + user << "[target] is empty. Can't dissolve \the [src]." return - user << "\blue You dissolve the pill in [target]" + user << "You dissolve \the [src] in [target]." - user.attack_log += text("\[[time_stamp()]\] Spiked \a [target] with a pill. Reagents: [reagentlist(src)]") - msg_admin_attack("[user.name] ([user.ckey]) spiked \a [target] with a pill. Reagents: [reagentlist(src)] (INTENT: [uppertext(user.a_intent)]) (JMP)") + user.attack_log += text("\[[time_stamp()]\] Spiked \a [target] with a pill. Reagents: [reagentlist()]") + msg_admin_attack("[user.name] ([user.ckey]) spiked \a [target] with a pill. Reagents: [reagentlist()] (INTENT: [uppertext(user.a_intent)]) (JMP)") reagents.trans_to(target, reagents.total_volume) for(var/mob/O in viewers(2, user)) - O.show_message("\red [user] puts something in \the [target].", 1) + O.show_message("[user] puts something in \the [target].", 1) - spawn(5) - del(src) + del(src) return diff --git a/code/modules/reagents/reagent_containers/robodropper.dm b/code/modules/reagents/reagent_containers/robodropper.dm deleted file mode 100644 index 475a29c331..0000000000 --- a/code/modules/reagents/reagent_containers/robodropper.dm +++ /dev/null @@ -1,98 +0,0 @@ - -/obj/item/weapon/reagent_containers/robodropper - name = "Industrial Dropper" - desc = "A larger dropper. Transfers 10 units." - icon = 'icons/obj/chemical.dmi' - icon_state = "dropper0" - amount_per_transfer_from_this = 10 - possible_transfer_amounts = list(1,2,3,4,5,6,7,8,9,10) - volume = 10 - var/filled = 0 - - afterattack(obj/target, mob/user , flag) - if(!target.reagents) return - - if(filled) - - if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "\red [target] is full." - return - - if(!target.is_open_container() && !ismob(target) && !istype(target,/obj/item/weapon/reagent_containers/food)) //You can inject humans and food but you cant remove the shit. - user << "\red You cannot directly fill this object." - return - - - var/trans = 0 - - if(ismob(target)) - if(istype(target , /mob/living/carbon/human)) - var/mob/living/carbon/human/victim = target - - var/obj/item/safe_thing = null - if( victim.wear_mask ) - if ( victim.wear_mask.flags & MASKCOVERSEYES ) - safe_thing = victim.wear_mask - if( victim.head ) - if ( victim.head.flags & MASKCOVERSEYES ) - safe_thing = victim.head - if(victim.glasses) - if ( !safe_thing ) - safe_thing = victim.glasses - - if(safe_thing) - if(!safe_thing.reagents) - safe_thing.create_reagents(100) - trans = src.reagents.trans_to(safe_thing, amount_per_transfer_from_this) - - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] tries to squirt something into []'s eyes, but fails!", user, target), 1) - spawn(5) - src.reagents.reaction(safe_thing, TOUCH) - - - user << "\blue You transfer [trans] units of the solution." - if (src.reagents.total_volume<=0) - filled = 0 - icon_state = "dropper[filled]" - return - - - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] squirts something into []'s eyes!", user, target), 1) - src.reagents.reaction(target, TOUCH) - - var/mob/M = target - var/list/injected = list() - for(var/datum/reagent/R in src.reagents.reagent_list) - injected += R.name - var/contained = english_list(injected) - M.attack_log += text("\[[time_stamp()]\] Has been squirted with [src.name] by [user.name] ([user.ckey]). Reagents: [contained]") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to squirt [M.name] ([M.key]). Reagents: [contained]") - msg_admin_attack("[user.name] ([user.ckey]) squirted [M.name] ([M.key]) with [src.name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") - - - trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "\blue You transfer [trans] units of the solution." - if (src.reagents.total_volume<=0) - filled = 0 - icon_state = "dropper[filled]" - - else - - if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers)) - user << "\red You cannot directly remove reagents from [target]." - return - - if(!target.reagents.total_volume) - user << "\red [target] is empty." - return - - var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) - - user << "\blue You fill the dropper with [trans] units of the solution." - - filled = 1 - icon_state = "dropper[filled]" - - return \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index 1a25162526..c1fbdbf276 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -16,32 +16,21 @@ var/list/spray_sizes = list(1,3) volume = 250 - /obj/item/weapon/reagent_containers/spray/New() ..() src.verbs -= /obj/item/weapon/reagent_containers/verb/set_APTFT /obj/item/weapon/reagent_containers/spray/afterattack(atom/A as mob|obj, mob/user as mob, proximity) - if(istype(A, /obj/item/weapon/storage) || istype(A, /obj/structure/table) || istype(A, /obj/structure/closet) \ - || istype(A, /obj/item/weapon/reagent_containers) || istype(A, /obj/structure/sink) || istype(A, /obj/structure/janitorialcart)) + if(istype(A, /obj/item/weapon/storage) || istype(A, /obj/structure/table) || istype(A, /obj/structure/closet) || istype(A, /obj/item/weapon/reagent_containers) || istype(A, /obj/structure/sink) || istype(A, /obj/structure/janitorialcart)) return if(istype(A, /obj/effect/proc_holder/spell)) return - if(istype(A, /obj/structure/reagent_dispensers) && get_dist(src,A) <= 1) //this block copypasted from reagent_containers/glass, for lack of a better solution - if(!A.reagents.total_volume && A.reagents) - user << "\The [A] is empty." + if(proximity) + if(standard_dispenser_refill(user, A)) return - if(reagents.total_volume >= reagents.maximum_volume) - user << "\The [src] is full." - return - - var/trans = A.reagents.trans_to(src, A:amount_per_transfer_from_this) - user << "You fill \the [src] with [trans] units of the contents of \the [A]." - return - if(reagents.total_volume < amount_per_transfer_from_this) user << "\The [src] is empty!" return @@ -64,36 +53,17 @@ /obj/item/weapon/reagent_containers/spray/proc/Spray_at(atom/A as mob|obj, mob/user as mob, proximity) if (A.density && proximity) A.visible_message("[usr] sprays [A] with [src].") - var/obj/D = new/obj() - D.create_reagents(amount_per_transfer_from_this) - reagents.trans_to(D, amount_per_transfer_from_this) - D.icon += mix_color_from_reagents(D.reagents.reagent_list) - spawn(0) - D.reagents.reaction(A) - sleep(5) - del(D) + reagents.trans_to(A, amount_per_transfer_from_this) else - var/obj/effect/decal/chempuff/D = new/obj/effect/decal/chempuff(get_turf(src)) - D.create_reagents(amount_per_transfer_from_this) - reagents.trans_to(D, amount_per_transfer_from_this, 1/spray_size) - D.icon += mix_color_from_reagents(D.reagents.reagent_list) - - var/turf/A_turf = get_turf(A)//BS12 - spawn(0) - for(var/i=0, iYou adjusted the pressure nozzle. You'll now use [amount_per_transfer_from_this] units per spray." - /obj/item/weapon/reagent_containers/spray/examine(mob/user) - if(..(user, 0) && user==src.loc) - user << "[round(src.reagents.total_volume)] units left." + if(..(user, 0) && loc == user) + user << "[round(reagents.total_volume)] units left." return /obj/item/weapon/reagent_containers/spray/verb/empty() @@ -120,8 +89,7 @@ return if(isturf(usr.loc)) usr << "You empty \the [src] onto the floor." - reagents.reaction(usr.loc) - spawn(5) src.reagents.clear_reagents() + reagents.trans_to(usr.loc, reagents.total_volume) //space cleaner /obj/item/weapon/reagent_containers/spray/cleaner @@ -135,8 +103,8 @@ /obj/item/weapon/reagent_containers/spray/cleaner/New() ..() - reagents.add_reagent("cleaner", src.volume) -//pepperspray + reagents.add_reagent("cleaner", volume) + /obj/item/weapon/reagent_containers/spray/pepper name = "pepperspray" desc = "Manufactured by UhangInc, used to blind and down an opponent quickly." @@ -147,7 +115,6 @@ volume = 40 var/safety = 1 - /obj/item/weapon/reagent_containers/spray/pepper/New() ..() reagents.add_reagent("condensedcapsaicin", 40) @@ -166,7 +133,6 @@ return ..() -//water flower /obj/item/weapon/reagent_containers/spray/waterflower name = "water flower" desc = "A seemingly innocent sunflower...with a twist." @@ -181,7 +147,6 @@ ..() reagents.add_reagent("water", 10) -//chemsprayer /obj/item/weapon/reagent_containers/spray/chemsprayer name = "chem sprayer" desc = "A utility used to spray large amounts of reagent in a given area." @@ -194,47 +159,27 @@ volume = 600 origin_tech = "combat=3;materials=3;engineering=3" - -//this is a big copypasta clusterfuck, but it's still better than it used to be! /obj/item/weapon/reagent_containers/spray/chemsprayer/Spray_at(atom/A as mob|obj) - var/Sprays[3] - for(var/i=1, i<=3, i++) // intialize sprays - if(src.reagents.total_volume < 1) break - var/obj/effect/decal/chempuff/D = new/obj/effect/decal/chempuff(get_turf(src)) - D.create_reagents(amount_per_transfer_from_this) - src.reagents.trans_to(D, amount_per_transfer_from_this) - - D.icon += mix_color_from_reagents(D.reagents.reagent_list) - - Sprays[i] = D - var/direction = get_dir(src, A) var/turf/T = get_turf(A) var/turf/T1 = get_step(T,turn(direction, 90)) var/turf/T2 = get_step(T,turn(direction, -90)) - var/list/the_targets = list(T,T1,T2) - - for(var/i=1, i<=Sprays.len, i++) - spawn() - var/obj/effect/decal/chempuff/D = Sprays[i] - if(!D) continue - - // Spreads the sprays a little bit - var/turf/my_target = pick(the_targets) - the_targets -= my_target - - for(var/j=1, j<=rand(6,8), j++) - step_towards(D, my_target) - D.reagents.reaction(get_turf(D)) - for(var/atom/t in get_turf(D)) - D.reagents.reaction(t) - sleep(2) - del(D) + var/list/the_targets = list(T, T1, T2) + for(var/a = 1 to 3) + spawn(0) + if(reagents.total_volume < 1) break + var/obj/effect/effect/water/chempuff/D = new/obj/effect/effect/water/chempuff(get_turf(src)) + var/turf/my_target = the_targets[a] + D.create_reagents(amount_per_transfer_from_this) + if(!src) + return + reagents.trans_to_obj(D, amount_per_transfer_from_this) + D.set_color() + D.set_up(my_target, rand(6, 8), 2) return -// Plant-B-Gone -/obj/item/weapon/reagent_containers/spray/plantbgone // -- Skie +/obj/item/weapon/reagent_containers/spray/plantbgone name = "Plant-B-Gone" desc = "Kills those pesky weeds!" icon = 'icons/obj/hydroponics_machines.dmi' @@ -242,16 +187,14 @@ item_state = "plantbgone" volume = 100 - /obj/item/weapon/reagent_containers/spray/plantbgone/New() ..() reagents.add_reagent("plantbgone", 100) - /obj/item/weapon/reagent_containers/spray/plantbgone/afterattack(atom/A as mob|obj, mob/user as mob, proximity) if(!proximity) return - if (istype(A, /obj/effect/blob)) // blob damage in blob code + if(istype(A, /obj/effect/blob)) // blob damage in blob code return ..() \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 8aa34a7dca..6218d8fbac 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -13,12 +13,14 @@ icon_state = "0" matter = list("glass" = 150) amount_per_transfer_from_this = 5 - possible_transfer_amounts = null //list(5,10,15) + possible_transfer_amounts = null volume = 15 w_class = 1 sharp = 1 var/mode = SYRINGE_DRAW var/image/filling //holds a reference to the current filling overlay + var/visible_name = "a syringe" + var/time = 30 on_reagent_change() update_icon() @@ -47,18 +49,17 @@ update_icon() attackby(obj/item/I as obj, mob/user as mob) - return afterattack(obj/target, mob/user, proximity) - if(!proximity) return - if(!target.reagents) return - - if(mode == SYRINGE_BROKEN) - user << "\red This syringe is broken!" + if(!proximity || !target.reagents) return - if (user.a_intent == "hurt" && ismob(target)) + if(mode == SYRINGE_BROKEN) + user << "This syringe is broken!" + return + + if(user.a_intent == "hurt" && ismob(target)) if((CLUMSY in user.mutations) && prob(50)) target = user syringestab(target, user) @@ -68,86 +69,89 @@ switch(mode) if(SYRINGE_DRAW) - if(reagents.total_volume >= reagents.maximum_volume) - user << "\red The syringe is full." + if(!reagents.get_free_space()) + user << "The syringe is full." + mode = SYRINGE_INJECT return if(ismob(target))//Blood! - if(istype(target, /mob/living/carbon/slime)) - user << "\red You are unable to locate any blood." + if(reagents.has_reagent("blood")) + user << "There is already a blood sample in this syringe." return - if(src.reagents.has_reagent("blood")) - user << "\red There is already a blood sample in this syringe" - return - if(istype(target, /mob/living/carbon))//maybe just add a blood reagent to all mobs. Then you can suck them dry...With hundreds of syringes. Jolly good idea. - var/amount = src.reagents.maximum_volume - src.reagents.total_volume + if(istype(target, /mob/living/carbon)) + if(istype(target, /mob/living/carbon/slime)) + user << "You are unable to locate any blood." + return + var/amount = reagents.get_free_space() var/mob/living/carbon/T = target if(!T.dna) - usr << "You are unable to locate any blood. (To be specific, your target seems to be missing their DNA datum)" + user << "You are unable to locate any blood. (To be specific, your target seems to be missing their DNA datum)." return if(NOCLONE in T.mutations) //target done been et, no more blood in him - user << "\red You are unable to locate any blood." + user << "You are unable to locate any blood." return var/datum/reagent/B - if(istype(T,/mob/living/carbon/human)) + if(istype(T, /mob/living/carbon/human)) var/mob/living/carbon/human/H = T if(H.species && H.species.flags & NO_BLOOD) - H.reagents.trans_to(src,amount) + H.reagents.trans_to_obj(src, amount) else - B = T.take_blood(src,amount) + B = T.take_blood(src, amount) else B = T.take_blood(src,amount) if (B) - src.reagents.reagent_list += B - src.reagents.update_total() - src.on_reagent_change() - src.reagents.handle_reactions() - user << "\blue You take a blood sample from [target]" + reagents.reagent_list += B + reagents.update_total() + on_reagent_change() + reagents.handle_reactions() + user << "You take a blood sample from [target]." for(var/mob/O in viewers(4, user)) - O.show_message("\red [user] takes a blood sample from [target].", 1) + O.show_message("[user] takes a blood sample from [target].", 1) else //if not mob if(!target.reagents.total_volume) - user << "\red [target] is empty." + user << "[target] is empty." return - if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers) && !istype(target,/obj/item/slime_extract)) - user << "\red You cannot directly remove reagents from this object." + if(!target.is_open_container() && !istype(target, /obj/structure/reagent_dispensers) && !istype(target, /obj/item/slime_extract)) + user << "You cannot directly remove reagents from this object." return - var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) // transfer from, transfer to - who cares? + var/trans = target.reagents.trans_to_obj(src, amount_per_transfer_from_this) + user << "You fill the syringe with [trans] units of the solution." + update_icon() - user << "\blue You fill the syringe with [trans] units of the solution." - if (reagents.total_volume >= reagents.maximum_volume) - mode=!mode + if(!reagents.get_free_space()) + mode = SYRINGE_INJECT update_icon() if(SYRINGE_INJECT) if(!reagents.total_volume) - user << "\red The syringe is empty." + user << "The syringe is empty." + mode = SYRINGE_DRAW return if(istype(target, /obj/item/weapon/implantcase/chem)) return if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/weapon/reagent_containers/food) && !istype(target, /obj/item/slime_extract) && !istype(target, /obj/item/clothing/mask/smokable/cigarette) && !istype(target, /obj/item/weapon/storage/fancy/cigarettes)) - user << "\red You cannot directly fill this object." + user << "You cannot directly fill this object." return - if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "\red [target] is full." + if(!target.reagents.get_free_space()) + user << "[target] is full." return if(ismob(target) && target != user) - var/time = 30 //Injecting through a hardsuit takes longer due to needing to find a port. + var/injtime = time //Injecting through a hardsuit takes longer due to needing to find a port. - if(istype(target,/mob/living/carbon/human)) + if(istype(target, /mob/living/carbon/human)) var/mob/living/carbon/human/H = target if(H.wear_suit) - if(istype(H.wear_suit,/obj/item/clothing/suit/space)) - time = 60 + if(istype(H.wear_suit, /obj/item/clothing/suit/space)) + injtime = injtime * 2 else if(!H.can_inject(user, 1)) return @@ -157,55 +161,43 @@ if(!M.can_inject(user, 1)) return - for(var/mob/O in viewers(world.view, user)) - if(time == 30) - O.show_message(text("\red [] is trying to inject []!", user, target), 1) - else - O.show_message(text("\red [] begins hunting for an injection port on []'s suit!", user, target), 1) - - if(!do_mob(user, target, time)) return - - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] injects [] with the syringe!", user, target), 1) - - if(istype(target,/mob/living)) - var/mob/living/M = target - var/list/injected = list() - for(var/datum/reagent/R in src.reagents.reagent_list) - injected += R.name - var/contained = english_list(injected) - M.attack_log += text("\[[time_stamp()]\] Has been injected with [src.name] by [user.name] ([user.ckey]). Reagents: [contained]") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to inject [M.name] ([M.key]). Reagents: [contained]") - msg_admin_attack("[user.name] ([user.ckey]) injected [M.name] ([M.key]) with [src.name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") - - src.reagents.reaction(target, INGEST) - if(ismob(target) && target == user) - src.reagents.reaction(target, INGEST) - spawn(5) - var/datum/reagent/blood/B - for(var/datum/reagent/blood/d in src.reagents.reagent_list) - B = d - break - var/trans - if(B && istype(target,/mob/living/carbon)) - var/mob/living/carbon/C = target - C.inject_blood(src,5) + if(injtime == time) + user.visible_message("[user] is trying to inject [target] with [visible_name]!") else - trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "\blue You inject [trans] units of the solution. The syringe now contains [src.reagents.total_volume] units." - if (reagents.total_volume <= 0 && mode==SYRINGE_INJECT) - mode = SYRINGE_DRAW - update_icon() + user.visible_message("[user] begins hunting for an injection port on [target]'s suit!") + + if(!do_mob(user, target, injtime)) + return + + user.visible_message("[user] injects [target] with the syringe!") + + if(istype(target, /mob/living)) + var/mob/living/M = target + var/contained = reagentlist() + M.attack_log += text("\[[time_stamp()]\] Has been injected with [name] by [user.name] ([user.ckey]). Reagents: [contained]") + user.attack_log += text("\[[time_stamp()]\] Used the [name] to inject [M.name] ([M.key]). Reagents: [contained]") + msg_admin_attack("[user.name] ([user.ckey]) injected [M.name] ([M.key]) with [name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") + + var/trans + if(ismob(target)) + trans = reagents.trans_to_mob(target, amount_per_transfer_from_this, CHEM_BLOOD) + else + trans = reagents.trans_to(target, amount_per_transfer_from_this) + user << "You inject [trans] units of the solution. The syringe now contains [src.reagents.total_volume] units." + if (reagents.total_volume <= 0 && mode == SYRINGE_INJECT) + mode = SYRINGE_DRAW + update_icon() return update_icon() + overlays.Cut() + if(mode == SYRINGE_BROKEN) icon_state = "broken" - overlays.Cut() return - var/rounded_vol = round(reagents.total_volume,5) - overlays.Cut() + + var/rounded_vol = round(reagents.total_volume, round(reagents.maximum_volume / 3)) if(ismob(loc)) var/injoverlay switch(mode) @@ -222,10 +214,9 @@ filling.icon_state = "syringe[rounded_vol]" - filling.color = mix_color_from_reagents(reagents.reagent_list) + filling.color = reagents.get_color() overlays += filling - proc/syringestab(mob/living/carbon/target as mob, mob/living/carbon/user as mob) user.attack_log += "\[[time_stamp()]\] Attacked [target.name] ([target.ckey]) with [src.name] (INTENT: [uppertext(user.a_intent)])" @@ -234,8 +225,10 @@ if(istype(target, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = target + var/target_zone = ran_zone(check_zone(user.zone_sel.selecting, target)) - var/datum/organ/external/affecting = target:get_organ(target_zone) + var/datum/organ/external/affecting = H.get_organ(target_zone) if (!affecting) return @@ -244,160 +237,58 @@ return var/hit_area = affecting.display_name - var/mob/living/carbon/human/H = target if((user != target) && H.check_shields(7, "the [src.name]")) return - if (target != user && target.getarmor(target_zone, "melee") > 5 && prob(50)) + if (target != user && H.getarmor(target_zone, "melee") > 5 && prob(50)) for(var/mob/O in viewers(world.view, user)) O.show_message(text("\red [user] tries to stab [target] in \the [hit_area] with [src.name], but the attack is deflected by armor!"), 1) user.u_equip(src) del(src) return - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [user] stabs [target] in \the [hit_area] with [src.name]!"), 1) + user.visible_message("[user] stabs [target] in \the [hit_area] with [src.name]!") if(affecting.take_damage(3)) - target:UpdateDamageIcon() + H.UpdateDamageIcon() else - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [user] stabs [target] with [src.name]!"), 1) + user.visible_message("[user] stabs [target] with [src.name]!") target.take_organ_damage(3)// 7 is the same as crowbar punch - src.reagents.reaction(target, INGEST) var/syringestab_amount_transferred = rand(0, (reagents.total_volume - 5)) //nerfed by popular demand - src.reagents.trans_to(target, syringestab_amount_transferred) - src.break_syringe(target, user) - + reagents.trans_to_mob(target, syringestab_amount_transferred, CHEM_BLOOD) + break_syringe(target, user) + proc/break_syringe(mob/living/carbon/target, mob/living/carbon/user) - src.desc += " It is broken." - src.mode = SYRINGE_BROKEN + desc += " It is broken." + mode = SYRINGE_BROKEN if(target) - src.add_blood(target) + add_blood(target) if(user) - src.add_fingerprint(user) - src.update_icon() + add_fingerprint(user) + update_icon() - - -/obj/item/weapon/reagent_containers/ld50_syringe +/obj/item/weapon/reagent_containers/syringe/ld50_syringe name = "Lethal Injection Syringe" desc = "A syringe used for lethal injections." - icon = 'icons/obj/syringe.dmi' - item_state = "syringe_0" - icon_state = "0" amount_per_transfer_from_this = 50 - possible_transfer_amounts = null //list(5,10,15) volume = 50 - var/mode = SYRINGE_DRAW + visible_name = "a giant syringe" + time = 300 - on_reagent_change() - update_icon() - - pickup(mob/user) + afterattack(obj/target, mob/user, flag) + if(mode == SYRINGE_DRAW && ismob(target)) // No drawing 50 units of blood at once + user << "This needle isn't designed for drawing blood." + return + if(user.a_intent == "hurt" && ismob(target)) // No instant injecting + user << "This syringe is too big to stab someone with it." ..() - update_icon() - - dropped(mob/user) - ..() - update_icon() - - attack_self(mob/user as mob) - mode = !mode - update_icon() - - attack_hand() - ..() - update_icon() - - attackby(obj/item/I as obj, mob/user as mob) - - return - - afterattack(obj/target, mob/user , flag) - if(!target.reagents) return - - switch(mode) - if(SYRINGE_DRAW) - - if(reagents.total_volume >= reagents.maximum_volume) - user << "\red The syringe is full." - return - - if(ismob(target)) - if(istype(target, /mob/living/carbon))//I Do not want it to suck 50 units out of people - usr << "This needle isn't designed for drawing blood." - return - else //if not mob - if(!target.reagents.total_volume) - user << "\red [target] is empty." - return - - if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers)) - user << "\red You cannot directly remove reagents from this object." - return - - var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) // transfer from, transfer to - who cares? - - user << "\blue You fill the syringe with [trans] units of the solution." - if (reagents.total_volume >= reagents.maximum_volume) - mode=!mode - update_icon() - - if(SYRINGE_INJECT) - if(!reagents.total_volume) - user << "\red The Syringe is empty." - return - if(istype(target, /obj/item/weapon/implantcase/chem)) - return - if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/weapon/reagent_containers/food)) - user << "\red You cannot directly fill this object." - return - if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "\red [target] is full." - return - - if(ismob(target) && target != user) - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] is trying to inject [] with a giant syringe!", user, target), 1) - if(!do_mob(user, target, 300)) return - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("\red [] injects [] with a giant syringe!", user, target), 1) - src.reagents.reaction(target, INGEST) - if(ismob(target) && target == user) - src.reagents.reaction(target, INGEST) - spawn(5) - var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "\blue You inject [trans] units of the solution. The syringe now contains [src.reagents.total_volume] units." - if (reagents.total_volume >= reagents.maximum_volume && mode==SYRINGE_INJECT) - mode = SYRINGE_DRAW - update_icon() - return - - - update_icon() - var/rounded_vol = round(reagents.total_volume,50) - if(ismob(loc)) - var/mode_t - switch(mode) - if (SYRINGE_DRAW) - mode_t = "d" - if (SYRINGE_INJECT) - mode_t = "i" - icon_state = "[mode_t][rounded_vol]" - else - icon_state = "[rounded_vol]" - item_state = "syringe_[rounded_vol]" - //////////////////////////////////////////////////////////////////////////////// /// Syringes. END //////////////////////////////////////////////////////////////////////////////// - - /obj/item/weapon/reagent_containers/syringe/inaprovaline name = "Syringe (inaprovaline)" desc = "Contains inaprovaline - used to stabilize patients." @@ -436,40 +327,9 @@ mode = SYRINGE_INJECT update_icon() -/obj/item/weapon/reagent_containers/ld50_syringe/choral +/obj/item/weapon/reagent_containers/syringe/ld50_syringe/choral New() ..() reagents.add_reagent("chloralhydrate", 50) mode = SYRINGE_INJECT update_icon() - - -//Robot syringes -//Not special in any way, code wise. They don't have added variables or procs. -/obj/item/weapon/reagent_containers/syringe/robot/antitoxin - name = "Syringe (anti-toxin)" - desc = "Contains anti-toxins." - New() - ..() - reagents.add_reagent("anti_toxin", 15) - mode = SYRINGE_INJECT - update_icon() - -/obj/item/weapon/reagent_containers/syringe/robot/inoprovaline - name = "Syringe (inoprovaline)" - desc = "Contains inaprovaline - used to stabilize patients." - New() - ..() - reagents.add_reagent("inaprovaline", 15) - mode = SYRINGE_INJECT - update_icon() - -/obj/item/weapon/reagent_containers/syringe/robot/mixed - name = "Syringe (mixed)" - desc = "Contains inaprovaline & anti-toxins." - New() - ..() - reagents.add_reagent("inaprovaline", 7) - reagents.add_reagent("anti_toxin", 8) - mode = SYRINGE_INJECT - update_icon() \ No newline at end of file diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index a16e5653a9..323f06c451 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -66,7 +66,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). /obj/machinery/r_n_d/circuit_imprinter/dismantle() for(var/obj/I in component_parts) if(istype(I, /obj/item/weapon/reagent_containers/glass/beaker)) - reagents.trans_to(I, reagents.total_volume) + reagents.trans_to_obj(I, reagents.total_volume) if(g_amount >= 3750) var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(loc) G.amount = round(g_amount / 3750) diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index 22df4b82dd..d8198f7e4c 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -61,7 +61,7 @@ Note: Must be placed west/left of and R&D console to function. /obj/machinery/r_n_d/protolathe/dismantle() for(var/obj/I in component_parts) if(istype(I, /obj/item/weapon/reagent_containers/glass/beaker)) - reagents.trans_to(I, reagents.total_volume) + reagents.trans_to_obj(I, reagents.total_volume) if(m_amount >= 3750) var/obj/item/stack/sheet/metal/G = new /obj/item/stack/sheet/metal(loc) G.amount = round(m_amount / G.perunit) diff --git a/code/modules/research/xenoarchaeology/chemistry.dm b/code/modules/research/xenoarchaeology/chemistry.dm index f5b718dcf0..3b5448cf16 100644 --- a/code/modules/research/xenoarchaeology/chemistry.dm +++ b/code/modules/research/xenoarchaeology/chemistry.dm @@ -1,74 +1,5 @@ //chemistry stuff here so that it can be easily viewed/modified -datum - reagent - tungsten - name = "Tungsten" - id = "tungsten" - description = "A chemical element, and a strong oxidising agent." - reagent_state = SOLID - color = "#DCDCDC" // rgb: 220, 220, 220, silver - - lithiumsodiumtungstate - name = "Lithium Sodium Tungstate" - id = "lithiumsodiumtungstate" - description = "A reducing agent for geological compounds." - reagent_state = LIQUID - color = "#C0C0C0" // rgb: 192, 192, 192, darker silver - - ground_rock - name = "Ground Rock" - id = "ground_rock" - description = "A fine dust made of ground up rock." - reagent_state = SOLID - color = "#A0522D" //rgb: 160, 82, 45, brown - - density_separated_sample - name = "Density separated sample" - id = "density_separated_sample" - description = "A watery paste used in chemical analysis, there are some chunks floating in it." - reagent_state = LIQUID - color = "#DEB887" //rgb: 222, 184, 135, light brown - - analysis_sample - name = "Analysis liquid" - id = "analysis_sample" - description = "A watery paste used in chemical analysis." - reagent_state = LIQUID - color = "#F5FFFA" //rgb: 245, 255, 250, almost white - - chemical_waste - name = "Chemical Waste" - id = "chemical_waste" - description = "A viscous, toxic liquid left over from many chemical processes." - reagent_state = LIQUID - color = "#ADFF2F" //rgb: 173, 255, 47, toxic green - -datum - chemical_reaction - lithiumsodiumtungstate //LiNa2WO4, not the easiest chem to mix - name = "Lithium Sodium Tungstate" - id = "lithiumsodiumtungstate" - result = "lithiumsodiumtungstate" - required_reagents = list("lithium" = 1, "sodium" = 2, "tungsten" = 1, "oxygen" = 4) - result_amount = 8 - - density_separated_liquid - name = "Density separated sample" - id = "density_separated_sample" - result = "density_separated_sample" - secondary_results = list("chemical_waste" = 1) - required_reagents = list("ground_rock" = 1, "lithiumsodiumtungstate" = 2) - result_amount = 2 - - analysis_liquid - name = "Analysis sample" - id = "analysis_sample" - result = "analysis_sample" - secondary_results = list("chemical_waste" = 1) - required_reagents = list("density_separated_sample" = 5) - result_amount = 4 - requires_heating = 1 /obj/item/weapon/reagent_containers/glass/solution_tray name = "solution tray" diff --git a/code/modules/research/xenoarchaeology/machinery/coolant.dm b/code/modules/research/xenoarchaeology/machinery/coolant.dm index b2f2cd3d67..39a07eee29 100644 --- a/code/modules/research/xenoarchaeology/machinery/coolant.dm +++ b/code/modules/research/xenoarchaeology/machinery/coolant.dm @@ -1,20 +1,3 @@ - -datum/reagent/coolant - name = "Coolant" - id = "coolant" - description = "Industrial cooling substance." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - -datum/chemical_reaction/coolant - name = "Coolant" - id = "coolant" - result = "coolant" - required_reagents = list("tungsten" = 1, "oxygen" = 1, "water" = 1) - result_amount = 3 - - - /obj/structure/reagent_dispensers/coolanttank name = "coolant tank" desc = "A tank of industrial coolant" diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index c954c16de6..6ad8387c3d 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -144,9 +144,8 @@ var/obj/item/weapon/reagent_containers/container = tool - var/trans = container.reagents.trans_to(target, container.amount_per_transfer_from_this) + var/trans = container.reagents.trans_to_mob(target, container.amount_per_transfer_from_this, CHEM_BLOOD) //technically it's contact, but the reagents are being applied to internal tissue if (trans > 0) - container.reagents.reaction(target, INGEST) //technically it's contact, but the reagents are being applied to internal tissue if(container.reagents.has_reagent("peridaxon")) affected.status &= ~ORGAN_DEAD @@ -162,8 +161,7 @@ var/obj/item/weapon/reagent_containers/container = tool - var/trans = container.reagents.trans_to(target, container.amount_per_transfer_from_this) - container.reagents.reaction(target, INGEST) //technically it's contact, but the reagents are being applied to internal tissue + var/trans = container.reagents.trans_to_mob(target, container.amount_per_transfer_from_this, CHEM_BLOOD) user.visible_message("\red [user]'s hand slips, applying [trans] units of the solution to the wrong place in [target]'s [affected.display_name] with the [tool]!" , \ "\red Your hand slips, applying [trans] units of the solution to the wrong place in [target]'s [affected.display_name] with the [tool]!") diff --git a/code/modules/virus2/antibodies.dm b/code/modules/virus2/antibodies.dm index e203560e6d..a340aae4dd 100644 --- a/code/modules/virus2/antibodies.dm +++ b/code/modules/virus2/antibodies.dm @@ -55,10 +55,10 @@ datum/reagent/antibodies reagent_state = LIQUID color = "#0050F0" - reaction_mob(var/mob/M, var/method=TOUCH, var/volume) + reaction_mob(var/mob/M, var/method=CHEM_TOUCH, var/volume) if(istype(M,/mob/living/carbon)) var/mob/living/carbon/C = M - if(src.data && method == INGEST) + if(src.data && method == CHEM_INGEST) //if(C.virus2) if(src.data["antibodies"] & C.virus2.antigen) // C.virus2.dead = 1 C.antibodies |= src.data["antibodies"] diff --git a/code/modules/virus2/dishincubator.dm b/code/modules/virus2/dishincubator.dm index 6882e8e622..b176dd3d5e 100644 --- a/code/modules/virus2/dishincubator.dm +++ b/code/modules/virus2/dishincubator.dm @@ -134,7 +134,7 @@ if (locate(/datum/reagent/toxin) in beaker.reagents.reagent_list) for(var/datum/reagent/toxin/T in beaker.reagents.reagent_list) - toxins += max(T.toxpwr,1) + toxins += max(T.strength,1) beaker.reagents.remove_reagent(T.id,1) nanomanager.update_uis(src) diff --git a/code/modules/virus2/effect.dm b/code/modules/virus2/effect.dm index 8b6d9f30e8..476e7d68cb 100644 --- a/code/modules/virus2/effect.dm +++ b/code/modules/virus2/effect.dm @@ -290,7 +290,7 @@ if(c_data) data = c_data else - data = pick("bicaridine", "kelotane", "dylovene", "inaprovaline", "space_drugs", "sugar", + data = pick("bicaridine", "kelotane", "anti_toxin", "inaprovaline", "space_drugs", "sugar", "tramadol", "dexalin", "cryptobiolin", "impedrezene", "hyperzine", "ethylredoxrazine", "mindbreaker", "nutriment") var/datum/reagent/R = chemical_reagents_list[data] diff --git a/code/setup.dm b/code/setup.dm index cee4313d93..a29a848301 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -94,9 +94,15 @@ #define DOOR_CRUSH_DAMAGE 10 #define HUNGER_FACTOR 0.05 // Factor of how fast mob nutrition decreases -#define REAGENTS_METABOLISM 0.2 // How many units of reagent are consumed per tick, by default. -#define REAGENTS_EFFECT_MULTIPLIER (REAGENTS_METABOLISM / 0.4) // By defining the effect multiplier this way, it'll exactly adjust - // all effects according to how they originally were with the 0.4 metabolism +#define REM 0.2 // Means 'Reagent Effect Multiplier'. This is how many units of reagent are consumed per tick +#define CHEM_TOUCH 1 +#define CHEM_INGEST 2 +#define CHEM_BLOOD 3 +#define MINIMUM_CHEMICAL_VOLUME 0.01 +#define SOLID 1 +#define LIQUID 2 +#define GAS 3 +#define REAGENTS_OVERDOSE 30 #define MINIMUM_AIR_RATIO_TO_SUSPEND 0.05 // Minimum ratio of air that must move to/from a tile to suspend group processing #define MINIMUM_AIR_TO_SUSPEND (MOLES_CELLSTANDARD * MINIMUM_AIR_RATIO_TO_SUSPEND) // Minimum amount of air that has to move before a group processing can be suspended @@ -733,10 +739,6 @@ var/list/be_special_flags = list( #define ATMOS_DEFAULT_VOLUME_MIXER 200 // L. #define ATMOS_DEFAULT_VOLUME_PIPE 70 // L. -// Reagent metabolism defines. -#define FOOD_METABOLISM 0.4 -#define ALCOHOL_METABOLISM 0.1 - // Chemistry. #define CHEM_SYNTH_ENERGY 500 // How much energy does it take to synthesize 1 unit of chemical, in Joules. diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 5a598b2962..69ae485267 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -221,8 +221,8 @@ "aem" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/main) "aen" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "aeo" = (/obj/machinery/door/airlock/security{name = "Evidence Storage"; req_access = list(1)},/turf/simulated/floor,/area/security/brig) -"aep" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) -"aeq" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/main) +"aep" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) +"aeq" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/main) "aer" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/main) "aes" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law,/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,/area/security/main) "aet" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/security/main) @@ -907,7 +907,7 @@ "arw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/security/prison) "arx" = (/turf/simulated/wall/r_wall,/area/security/lobby) "ary" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/plating,/area/maintenance/security_starboard) -"arz" = (/obj/structure/closet/crate/secure{name = "FOR DISPOSAL"; req_access = list(58)},/obj/item/clothing/glasses/sunglasses/blindfold,/obj/item/clothing/mask/balaclava,/obj/effect/decal/cleanable/cobweb2,/obj/item/clothing/mask/muzzle,/obj/item/weapon/reagent_containers/ld50_syringe/choral,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/security_port) +"arz" = (/obj/structure/closet/crate/secure{name = "FOR DISPOSAL"; req_access = list(58)},/obj/item/clothing/glasses/sunglasses/blindfold,/obj/item/clothing/mask/balaclava,/obj/effect/decal/cleanable/cobweb2,/obj/item/clothing/mask/muzzle,/obj/item/weapon/reagent_containers/syringe/ld50_syringe/choral,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/security_port) "arA" = (/turf/simulated/wall/r_wall,/area/hallway/primary/fore) "arB" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless,/area/solar/fore) "arC" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access = list(1)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/security/main) From 30c6646671fd0c5b1760c91157aef990ee06cce5 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Sat, 28 Mar 2015 19:01:51 +0300 Subject: [PATCH 002/199] Separates affect_mob into three procs --- code/modules/mob/living/carbon/human/life.dm | 2 +- code/modules/reagents/Chemistry-Reagents.dm | 996 +++++++++--------- .../reagent_containers/food/drinks/bottle.dm | 2 +- 3 files changed, 471 insertions(+), 529 deletions(-) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 5bcd6a178b..1745477f9a 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1488,7 +1488,7 @@ if(R.id in heartstopper) //To avoid using fakedeath temp = PULSE_NONE if(R.id in cheartstopper) //Conditional heart-stoppage - if(R.volume >= R.overdose_blood) + if(R.volume >= R.overdose) temp = PULSE_NONE return temp diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index f3c79c7aae..8f82e31f7a 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -11,8 +11,7 @@ var/touch_met = 0 var/dose = 0 var/max_dose = 0 - var/overdose_blood = 0 - var/overdose_ingest = 0 + var/overdose = 0 var/scannable = 0 // Shows up on health analyzers. var/affects_dead = 0 var/glass_icon_state = null @@ -39,7 +38,7 @@ return if(!affects_dead && M.stat == DEAD) return - if((overdose_blood && (location == CHEM_BLOOD) && dose > overdose_blood) || (overdose_ingest && (location == CHEM_INGEST) && dose > overdose_ingest)) + if(overdose && (location == CHEM_BLOOD)) overdose(M, alien) var/removed = metabolism if(ingest_met && (location == CHEM_INGEST)) @@ -50,11 +49,24 @@ max_dose = max(volume, max_dose) dose = min(dose + removed, max_dose) if(removed >= (metabolism * 0.1) || removed >= 0.1) // If there's too little chemical, don't affect the mob, just remove it - affect_mob(M, alien, removed, location) + switch(location) + if(CHEM_BLOOD) + affect_blood(M, alien, removed) + if(CHEM_INGEST) + affect_ingest(M, alien, removed) + if(CHEM_TOUCH) + affect_touch(M, alien, removed) remove_self(removed) return -/datum/reagent/proc/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) // This is the main working proc where the chemical does its magic +/datum/reagent/proc/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + return + +/datum/reagent/proc/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) + affect_blood(M, alien, removed * 0.5) + return + +/datum/reagent/proc/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) return /datum/reagent/proc/overdose(var/mob/living/carbon/M, var/alien) // Overdose effect. Doesn't happen instantly. @@ -87,7 +99,6 @@ /datum/reagent/proc/reaction_mob(var/mob/target) touch_mob(target) - /* REAGENTS START HERE */ /* Core reagents - the most important ones */ @@ -148,29 +159,30 @@ if(B) B.blood_DNA["UNKNOWN DNA STRUCTURE"] = "X*" -/datum/reagent/blood/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_INGEST) - if(dose > 5) - M.adjustToxLoss(removed) - if(dose > 15) - M.adjustToxLoss(removed) - if(location == CHEM_TOUCH) - if(data && data["viruses"]) - for(var/datum/disease/D in data["viruses"]) - if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) - continue - M.contract_disease(D) - if(data && data["virus2"]) - var/list/vlist = data["virus2"] - if(vlist.len) - for(var/ID in vlist) - var/datum/disease2/disease/V = vlist[ID] - infect_virus2(M, V.getcopy()) - if(data && data["antibodies"]) - M.antibodies |= data["antibodies"] - if(location == CHEM_BLOOD) - M.inject_blood(src, volume) - remove_self(volume) +/datum/reagent/blood/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(dose > 5) + M.adjustToxLoss(removed) + if(dose > 15) + M.adjustToxLoss(removed) + +/datum/reagent/blood/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(data && data["viruses"]) + for(var/datum/disease/D in data["viruses"]) + if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) + continue + M.contract_disease(D) + if(data && data["virus2"]) + var/list/vlist = data["virus2"] + if(vlist.len) + for(var/ID in vlist) + var/datum/disease2/disease/V = vlist[ID] + infect_virus2(M, V.getcopy()) + if(data && data["antibodies"]) + M.antibodies |= data["antibodies"] + +/datum/reagent/blood/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.inject_blood(src, volume) + remove_self(volume) /datum/reagent/vaccine name = "Vaccine" @@ -178,8 +190,8 @@ reagent_state = LIQUID color = "#C81040" -/datum/reagent/vaccine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(data && location == CHEM_BLOOD) +/datum/reagent/vaccine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(data) for(var/datum/disease/D in M.viruses) if(istype(D, /datum/disease/advance)) var/datum/disease/advance/A = D @@ -252,7 +264,7 @@ if(!cube.wrapped) cube.Expand() -/datum/reagent/water/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/water/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(istype(M, /mob/living/carbon/slime)) var/mob/living/carbon/slime/S = M S.adjustToxLoss(15 * removed) // Babies have 150 health, adults have 200; So, 10 units and 13.5 @@ -262,16 +274,15 @@ ++S.Discipline if(dose == removed) S.visible_message("[S]'s flesh sizzles where the water touches it!", "Your flesh burns in the water!") - if(location == CHEM_TOUCH) - var/needed = M.fire_stacks * 10 - if(volume > needed) - M.fire_stacks = 0 - M.ExtinguishMob() - remove_self(needed) - else - M.adjust_fire_stacks(-(volume / 10)) - remove_self(volume) - return + var/needed = M.fire_stacks * 10 + if(volume > needed) + M.fire_stacks = 0 + M.ExtinguishMob() + remove_self(needed) + else + M.adjust_fire_stacks(-(volume / 10)) + remove_self(volume) + return /datum/reagent/fuel name = "Welding fuel" @@ -289,16 +300,11 @@ remove_self(volume) return -/datum/reagent/fuel/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_INGEST) - M.adjustToxLoss(1 * removed) - return - if(location == CHEM_BLOOD) - M.adjustToxLoss(2 * removed) - return - if(location == CHEM_TOUCH) // Splashing people with welding fuel to make them easy to ignite! - M.adjust_fire_stacks(0.1 * removed) - return +/datum/reagent/fuel/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(2 * removed) + +/datum/reagent/fuel/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // Splashing people with welding fuel to make them easy to ignite! + M.adjust_fire_stacks(0.1 * removed) /* Basic dispenser chemicals */ @@ -332,8 +338,11 @@ reagent_state = GAS color = "#808080" -/datum/reagent/chlorine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.take_organ_damage(1*REM, 0) // State doesn't matter here +/datum/reagent/chlorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.take_organ_damage(1*REM, 0) + +/datum/reagent/chlorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.take_organ_damage(1*REM, 0) /datum/reagent/copper name = "Copper" @@ -360,13 +369,15 @@ glass_name = "glass of ethanol" glass_desc = "A well-known alcohol with a variety of applications." -/datum/reagent/ethanol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - M.adjust_fire_stacks(removed / 15) - return - if(location == CHEM_BLOOD) - M.adjustToxLoss(removed * 2 * toxicity) - return +/datum/reagent/ethanol/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjust_fire_stacks(removed / 15) + return + +/datum/reagent/ethanol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed * 2 * toxicity) + return + +/datum/reagent/ethanol/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.nutrition += nutriment_factor * removed var/strength_mod = 1 @@ -428,7 +439,10 @@ reagent_state = GAS color = "#808080" -/datum/reagent/fluorine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/fluorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed) + +/datum/reagent/fluorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.adjustToxLoss(removed) /datum/reagent/hydrogen @@ -445,8 +459,8 @@ reagent_state = SOLID color = "#353535" -/datum/reagent/iron/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_INGEST && alien != IS_DIONA) +/datum/reagent/iron/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) M.add_chemical_effect(CE_BLOODRESTORE, 8 * removed) /datum/reagent/lithium @@ -456,8 +470,8 @@ reagent_state = SOLID color = "#808080" -/datum/reagent/lithium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location != CHEM_TOUCH && alien != IS_DIONA) +/datum/reagent/lithium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) step(M, pick(cardinal)) if(prob(5)) @@ -470,8 +484,8 @@ reagent_state = LIQUID color = "#484848" -/datum/reagent/mercury/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location != CHEM_TOUCH && alien != IS_DIONA) +/datum/reagent/mercury/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) step(M, pick(cardinal)) if(prob(5)) @@ -485,12 +499,9 @@ reagent_state = GAS color = "#808080" -/datum/reagent/nitrogen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nitrogen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien == IS_VOX) - if(location == CHEM_BLOOD) - M.adjustOxyLoss(-removed * 3) - if(location == CHEM_INGEST) - M.reagents.add_reagent(id, removed, CHEM_BLOOD) + M.adjustOxyLoss(-removed * 3) /datum/reagent/oxygen name = "Oxygen" @@ -499,12 +510,9 @@ reagent_state = GAS color = "#808080" -/datum/reagent/oxygen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return +/datum/reagent/oxygen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien == IS_VOX) - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) - M.adjustToxLoss(removed * 2 * effect) + M.adjustToxLoss(removed * 3) /datum/reagent/phosphorus name = "Phosphorus" @@ -527,22 +535,21 @@ reagent_state = SOLID color = "#C7C7C7" -/datum/reagent/radium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/radium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.apply_effect(10 * removed, IRRADIATE, 0) // Radium may increase your chances to cure a disease - if(location == CHEM_BLOOD) // Make sure to only use it on carbon mobs - if(M.virus2.len) - for(var/ID in M.virus2) - var/datum/disease2/disease/V = M.virus2[ID] - if(prob(5)) - M.antibodies |= V.antigen - if(prob(50)) - M.radiation += 50 // curing it that way may kill you instead - var/absorbed = 0 - var/datum/organ/internal/diona/nutrients/rad_organ = locate() in M.internal_organs - if(rad_organ && !rad_organ.is_broken()) - absorbed = 1 - if(!absorbed) - M.adjustToxLoss(100) + if(M.virus2.len) + for(var/ID in M.virus2) + var/datum/disease2/disease/V = M.virus2[ID] + if(prob(5)) + M.antibodies |= V.antigen + if(prob(50)) + M.radiation += 50 // curing it that way may kill you instead + var/absorbed = 0 + var/datum/organ/internal/diona/nutrients/rad_organ = locate() in M.internal_organs + if(rad_organ && !rad_organ.is_broken()) + absorbed = 1 + if(!absorbed) + M.adjustToxLoss(100) /datum/reagent/radium/touch_turf(var/turf/T) if(volume >= 3) @@ -563,85 +570,83 @@ var/power = 5 var/meltdose = 10 // How much is needed to melt -/datum/reagent/acid/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_INGEST) - M.take_organ_damage(0, removed * power) - if(location == CHEM_BLOOD) - M.take_organ_damage(0, removed * power * 2) - if(location == CHEM_TOUCH) // This is the most interesting - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.head) - if(H.head.unacidable) - H << "Your [H.head] protects you from the acid." - remove_self(volume) - return - else if(removed > meltdose) - H << "Your [H.head] melts away!" - del(H.head) - H.update_inv_head(1) - H.update_hair(1) - removed -= meltdose - if(removed <= 0) - return +/datum/reagent/acid/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.take_organ_damage(0, removed * power * 2) - if(H.wear_mask) - if(H.wear_mask.unacidable) - H << "Your [H.wear_mask] protects you from the acid." - remove_self(volume) - return - else if(removed > meltdose) - H << "Your [H.wear_mask] melts away!" - del(H.wear_mask) - H.update_inv_wear_mask(1) - H.update_hair(1) - removed -= meltdose - if(removed <= 0) +/datum/reagent/acid/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // This is the most interesting + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.head) + if(H.head.unacidable) + H << "Your [H.head] protects you from the acid." + remove_self(volume) return - - if(H.glasses) - if(H.glasses.unacidable) - H << "Your [H.glasses] partially protect you from the acid!" - removed /= 2 - else if(removed > meltdose) - H << "Your [H.glasses] melt away!" - del(H.glasses) - H.update_inv_glasses(1) - removed -= meltdose / 2 - if(removed <= 0) - return - - if(ismonkey(M)) - var/mob/living/carbon/monkey/MK = M - if(MK.wear_mask) - if(MK.wear_mask.unacidable) - MK << "Your [MK.wear_mask] protects you from the acid!" - remove_self(volume) - return - else - MK << "Your [MK.wear_mask] melts away!" - del(MK.wear_mask) - MK.update_inv_wear_mask(1) - removed -= meltdose - if(removed <= 0) - return - - if(volume < meltdose) // Not enough to melt anything - M.take_organ_damage(removed * power * 0.2) + else if(removed > meltdose) + H << "Your [H.head] melts away!" + del(H.head) + H.update_inv_head(1) + H.update_hair(1) + removed -= meltdose + if(removed <= 0) return - if(!M.unacidable && removed > 0) - if(istype(M, /mob/living/carbon/human) && volume >= meltdose) - var/mob/living/carbon/human/H = M - var/datum/organ/external/affecting = H.get_organ("head") - if(affecting) - if(affecting.take_damage(0, removed * power * 0.1)) - H.UpdateDamageIcon() - if(prob(100 * removed / meltdose)) // Applies disfigurement - if (!(H.species && (H.species.flags & NO_PAIN))) - H.emote("scream") - H.status_flags |= DISFIGURED + + if(H.wear_mask) + if(H.wear_mask.unacidable) + H << "Your [H.wear_mask] protects you from the acid." + remove_self(volume) + return + else if(removed > meltdose) + H << "Your [H.wear_mask] melts away!" + del(H.wear_mask) + H.update_inv_wear_mask(1) + H.update_hair(1) + removed -= meltdose + if(removed <= 0) + return + + if(H.glasses) + if(H.glasses.unacidable) + H << "Your [H.glasses] partially protect you from the acid!" + removed /= 2 + else if(removed > meltdose) + H << "Your [H.glasses] melt away!" + del(H.glasses) + H.update_inv_glasses(1) + removed -= meltdose / 2 + if(removed <= 0) + return + + if(ismonkey(M)) + var/mob/living/carbon/monkey/MK = M + if(MK.wear_mask) + if(MK.wear_mask.unacidable) + MK << "Your [MK.wear_mask] protects you from the acid!" + remove_self(volume) + return else - M.take_organ_damage(0, removed * power * 0.1) // Balance. The damage is instant, so it's weaker. 10 units -> 5 damage, double for pacid. 120 units beaker could deal 60, but a) it's burn, which is not as dangerous, b) it's a one-use weapon, c) missing with it will splash it over the ground and d) clothes give some protection, so not everything will hit + MK << "Your [MK.wear_mask] melts away!" + del(MK.wear_mask) + MK.update_inv_wear_mask(1) + removed -= meltdose + if(removed <= 0) + return + + if(volume < meltdose) // Not enough to melt anything + M.take_organ_damage(removed * power * 0.2) + return + if(!M.unacidable && removed > 0) + if(istype(M, /mob/living/carbon/human) && volume >= meltdose) + var/mob/living/carbon/human/H = M + var/datum/organ/external/affecting = H.get_organ("head") + if(affecting) + if(affecting.take_damage(0, removed * power * 0.1)) + H.UpdateDamageIcon() + if(prob(100 * removed / meltdose)) // Applies disfigurement + if (!(H.species && (H.species.flags & NO_PAIN))) + H.emote("scream") + H.status_flags |= DISFIGURED + else + M.take_organ_damage(0, removed * power * 0.1) // Balance. The damage is instant, so it's weaker. 10 units -> 5 damage, double for pacid. 120 units beaker could deal 60, but a) it's burn, which is not as dangerous, b) it's a one-use weapon, c) missing with it will splash it over the ground and d) clothes give some protection, so not everything will hit /datum/reagent/acid/touch_obj(var/obj/O) if(O.unacidable) @@ -678,9 +683,8 @@ glass_name = "glass of sugar" glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." -/datum/reagent/sugar/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location != CHEM_TOUCH) - M.nutrition += removed * 3 +/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.nutrition += removed * 3 /datum/reagent/sulfur name = "Sulfur" @@ -704,14 +708,11 @@ description = "Inaprovaline is a synaptic stimulant and cardiostimulant. Commonly used to stabilize patients." reagent_state = LIQUID color = "#00BFFF" - overdose_blood = REAGENTS_OVERDOSE * 2 - overdose_ingest = REAGENTS_OVERDOSE * 4 + overdose = REAGENTS_OVERDOSE * 2 metabolism = REM * 0.5 scannable = 1 -/datum/reagent/inaprovaline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return +/datum/reagent/inaprovaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien != IS_DIONA) M.add_chemical_effect(CE_STABLE) M.add_chemical_effect(CE_PAINKILLER, 25) @@ -722,16 +723,12 @@ description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma." reagent_state = LIQUID color = "#BF0000" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE * 2 + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/bicaridine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/bicaridine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien != IS_DIONA) - M.heal_organ_damage(4 * removed * effect, 0) + M.heal_organ_damage(6 * removed, 0) /datum/reagent/kelotane name = "Kelotane" @@ -739,16 +736,12 @@ description = "Kelotane is a drug used to treat burns." reagent_state = LIQUID color = "#FFA800" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE * 2 + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/kelotane/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/kelotane/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien != IS_DIONA) - M.heal_organ_damage(0, 4 * removed * effect) + M.heal_organ_damage(0, 6 * removed) /datum/reagent/dermaline name = "Dermaline" @@ -756,16 +749,12 @@ description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue." reagent_state = LIQUID color = "#FF8000" - overdose_blood = REAGENTS_OVERDOSE * 0.5 - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE * 0.5 scannable = 1 -/datum/reagent/dermaline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/dermaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien != IS_DIONA) - M.heal_organ_damage(0, 8 * removed * effect) + M.heal_organ_damage(0, 12 * removed) /datum/reagent/dylovene name = "Dylovene" @@ -775,13 +764,10 @@ color = "#00A000" scannable = 1 -/datum/reagent/dylovene/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/dylovene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien != IS_DIONA) - M.drowsyness = max(0, M.drowsyness - 4 * removed * effect) - M.hallucination = max(0, M.hallucination - 6 * removed * effect) + M.drowsyness = max(0, M.drowsyness - 6 * removed) + M.hallucination = max(0, M.hallucination - 9 * removed) M.adjustToxLoss(-4 * removed) /datum/reagent/dexalin @@ -790,20 +776,16 @@ description = "Dexalin is used in the treatment of oxygen deprivation." reagent_state = LIQUID color = "#0080FF" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE * 2 + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/dexalin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien == IS_VOX) - M.adjustToxLoss(removed * 4 * effect) + M.adjustToxLoss(removed * 6) else if(alien != IS_DIONA) - M.adjustOxyLoss(-10 * removed * effect) + M.adjustOxyLoss(-15 * removed) - holder.remove_reagent("lexorin", 2 * removed, location) + holder.remove_reagent("lexorin", 2 * removed) /datum/reagent/dexalinp name = "Dexalin Plus" @@ -811,20 +793,16 @@ description = "Dexalin Plus is used in the treatment of oxygen deprivation. It is highly effective." reagent_state = LIQUID color = "#0040FF" - overdose_blood = REAGENTS_OVERDOSE * 0.5 - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE * 0.5 scannable = 1 -/datum/reagent/dexalin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien == IS_VOX) - M.adjustToxLoss(removed * 6 * effect) + M.adjustToxLoss(removed * 9) else if(alien != IS_DIONA) - M.adjustOxyLoss(-200 * removed * effect) // So around 20 per tick under standard settings, should be enough + M.adjustOxyLoss(-300 * removed) - holder.remove_reagent("lexorin", 3 * removed, location) + holder.remove_reagent("lexorin", 3 * removed) /datum/reagent/tricordrazine name = "Tricordrazine" @@ -834,14 +812,11 @@ color = "#8040FF" scannable = 1 -/datum/reagent/tricordrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/tricordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien != IS_DIONA) - M.adjustOxyLoss(-4 * removed * effect) - M.heal_organ_damage(2 * removed * effect, 2 * removed * effect) - M.adjustToxLoss(-2 * removed * effect) + M.adjustOxyLoss(-6 * removed) + M.heal_organ_damage(3 * removed, 3 * removed) + M.adjustToxLoss(-3 * removed) /datum/reagent/cryoxadone name = "Cryoxadone" @@ -852,7 +827,7 @@ metabolism = REM * 0.5 scannable = 1 -/datum/reagent/cryoxadone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(M.bodytemperature < 170) M.adjustCloneLoss(-10 * removed) M.adjustOxyLoss(-10 * removed) @@ -868,7 +843,7 @@ metabolism = REM * 0.5 scannable = 1 -/datum/reagent/cryoxadone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(M.bodytemperature < 170) M.adjustCloneLoss(-30 * removed) M.adjustOxyLoss(-3 * removed) @@ -883,12 +858,11 @@ description = "Most probably know this as Tylenol, but this chemical is a mild, simple painkiller." reagent_state = LIQUID color = "#C8A5DC" - overdose_blood = 60 - overdose_ingest = 60 + overdose = 60 scannable = 1 metabolism = 0.02 -/datum/reagent/paracetamol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/paracetamol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.add_chemical_effect(CE_PAINKILLER, 50) /datum/reagent/paracetamol/overdose(var/mob/living/carbon/M, var/alien) @@ -901,12 +875,11 @@ description = "A simple, yet effective painkiller." reagent_state = LIQUID color = "#CB68FC" - overdose_blood = 30 - overdose_ingest = 30 + overdose = 30 scannable = 1 metabolism = 0.02 -/datum/reagent/tramadol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/tramadol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.add_chemical_effect(CE_PAINKILLER, 80) /datum/reagent/tramadol/overdose(var/mob/living/carbon/M, var/alien) @@ -919,14 +892,13 @@ description = "An effective and very addictive painkiller." reagent_state = LIQUID color = "#800080" - overdose_blood = 20 - overdose_ingest = 20 + overdose = 20 metabolism = 0.02 -/datum/reagent/tramadol/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/oxycodone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.add_chemical_effect(CE_PAINKILLER, 200) -/datum/reagent/tramadol/overdose(var/mob/living/carbon/M, var/alien) +/datum/reagent/oxycodone/overdose(var/mob/living/carbon/M, var/alien) ..() M.druggy = max(M.druggy, 10) M.hallucination = max(M.hallucination, 3) @@ -940,12 +912,11 @@ reagent_state = LIQUID color = "#99CCFF" metabolism = REM * 0.05 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/synaptizine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/synaptizine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.drowsyness = max(M.drowsyness - 5, 0) M.AdjustParalysis(-1) @@ -963,12 +934,11 @@ reagent_state = LIQUID color = "#FFFF66" metabolism = REM * 0.25 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/alkysine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/alkysine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.adjustBrainLoss(-30 * removed) M.add_chemical_effect(CE_PAINKILLER, 10) @@ -979,15 +949,12 @@ description = "Heals eye damage" reagent_state = LIQUID color = "#C8A5DC" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/imidazoline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - M.eye_blurry = max(M.eye_blurry-5, 0) - M.eye_blind = max(M.eye_blind-5, 0) +/datum/reagent/imidazoline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.eye_blurry = max(M.eye_blurry - 5, 0) + M.eye_blind = max(M.eye_blind - 5, 0) if(ishuman(M)) var/mob/living/carbon/human/H = M var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"] @@ -1001,12 +968,11 @@ description = "Used to encourage recovery of internal organs and nervous systems. Medicate cautiously." reagent_state = LIQUID color = "#561EC3" - overdose_blood = 10 - overdose_ingest = 10 + overdose = 10 scannable = 1 -/datum/reagent/peridaxon/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location != CHEM_TOUCH && ishuman(M)) +/datum/reagent/peridaxon/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(ishuman(M)) var/mob/living/carbon/human/H = M for(var/datum/organ/internal/I in H.internal_organs) @@ -1019,12 +985,9 @@ description = "Ryetalyn can cure all genetic abnomalities via a catalytic process." reagent_state = SOLID color = "#004000" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/ryetalyn/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return +/datum/reagent/ryetalyn/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) var/needs_update = M.mutations.len > 0 M.mutations = list() @@ -1043,11 +1006,10 @@ reagent_state = LIQUID color = "#FF3300" metabolism = REM * 0.15 - overdose_blood = REAGENTS_OVERDOSE * 0.5 - overdose_ingest = REAGENTS_OVERDOSE * 0.5 + overdose = REAGENTS_OVERDOSE * 0.5 -/datum/reagent/hyperzine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/hyperzine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(prob(5)) M.emote(pick("twitch", "blink_r", "shiver")) @@ -1059,11 +1021,10 @@ description = "A powerful oxidizer that reacts with ethanol." reagent_state = SOLID color = "#605048" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/ethylredoxrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/ethylredoxrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.dizziness = 0 M.drowsyness = 0 @@ -1081,13 +1042,10 @@ reagent_state = LIQUID color = "#408000" metabolism = REM * 0.25 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/hyronalin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return +/datum/reagent/hyronalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.radiation = max(M.radiation - 30 * removed, 0) /datum/reagent/arithrazine @@ -1097,13 +1055,10 @@ reagent_state = LIQUID color = "#008000" metabolism = REM * 0.25 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/arithrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return +/datum/reagent/arithrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.radiation = max(M.radiation - 70 * removed, 0) M.adjustToxLoss(-10 * removed) if(prob(60)) @@ -1116,8 +1071,7 @@ reagent_state = LIQUID color = "#C1C1C1" metabolism = REM * 0.05 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE * 2 + overdose = REAGENTS_OVERDOSE scannable = 1 /datum/reagent/sterilizine @@ -1128,9 +1082,8 @@ color = "#C8A5DC" touch_met = 5 -/datum/reagent/sterilizine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - M.germ_level -= min(removed*20, M.germ_level) +/datum/reagent/sterilizine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.germ_level -= min(removed*20, M.germ_level) /datum/reagent/sterilizine/touch_obj(var/obj/O) O.germ_level -= min(volume*20, O.germ_level) @@ -1144,13 +1097,10 @@ description = "Leporazine can be use to stabilize an individuals body temperature." reagent_state = LIQUID color = "#C8A5DC" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/leporazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return +/datum/reagent/leporazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(M.bodytemperature > 310) M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) else if(M.bodytemperature < 311) @@ -1169,8 +1119,8 @@ metabolism = 0.01 data = 0 -/datum/reagent/methylphenidate/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/methylphenidate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(volume <= 0.1 && data != -1) data = -1 @@ -1189,8 +1139,8 @@ metabolism = 0.01 data = 0 -/datum/reagent/citalopram/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/citalopram/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(volume <= 0.1 && data != -1) data = -1 @@ -1209,8 +1159,8 @@ metabolism = 0.01 data = 0 -/datum/reagent/paroxetine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/paroxetine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(volume <= 0.1 && data != -1) data = -1 @@ -1225,7 +1175,6 @@ M.hallucination += 200 /* Toxins, poisons, venoms */ - /datum/reagent/toxin name = "Toxin" id = "toxin" @@ -1235,12 +1184,9 @@ metabolism = REM * 0.05 // 0.01 by default. They last a while and slowly kill you. var/strength = 4 // How much damage it deals per unit -/datum/reagent/toxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - var/effect = (location == CHEM_BLOOD ? 1.5 : 1) +/datum/reagent/toxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(strength && alien != IS_DIONA) - M.adjustToxLoss(strength * removed * effect) + M.adjustToxLoss(strength * removed) /datum/reagent/toxin/plasticide name = "Plasticide" @@ -1274,10 +1220,9 @@ color = "#9D14DB" strength = 30 -/datum/reagent/toxin/phoron/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/phoron/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH) - M.adjust_fire_stacks(removed / 5) + M.adjust_fire_stacks(removed / 5) /datum/reagent/toxin/phoron/touch_turf(var/turf/simulated/T) if(!istype(T)) @@ -1294,11 +1239,10 @@ strength = 20 metabolism = REM * 2 -/datum/reagent/toxin/cyanide/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/cyanide/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location != CHEM_TOUCH) - M.adjustOxyLoss(20 * removed) - M.sleeping += 1 + M.adjustOxyLoss(20 * removed) + M.sleeping += 1 /datum/reagent/toxin/potassium_chloride name = "Potassium Chloride" @@ -1307,8 +1251,7 @@ reagent_state = SOLID color = "#FFFFFF" strength = 0 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE /datum/reagent/toxin/potassium_chloride/overdose(var/mob/living/carbon/M, var/alien) ..() @@ -1327,10 +1270,9 @@ reagent_state = SOLID color = "#FFFFFF" strength = 10 - overdose_blood = 20 - overdose_ingest = 20 + overdose = 20 -/datum/reagent/toxin/cyanide/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/potassium_chlorophoride/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() if(ishuman(M)) var/mob/living/carbon/human/H = M @@ -1349,9 +1291,9 @@ metabolism = REM strength = 3 -/datum/reagent/toxin/zombiepowder/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/zombiepowder/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || alien == IS_DIONA) + if(alien == IS_DIONA) return M.status_flags |= FAKEDEATH M.adjustOxyLoss(3 * removed) @@ -1412,9 +1354,14 @@ else if(istype(O, /obj/effect/plant)) del(O) -/datum/reagent/toxin/plantbgone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/plantbgone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(alien == IS_DIONA) // Regardless of the state + if(alien == IS_DIONA) + M.adjustToxLoss(50 * removed) + +/datum/reagent/toxin/plantbgone/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) M.adjustToxLoss(50 * removed) /datum/reagent/acid/polyacid @@ -1432,11 +1379,10 @@ description = "Lexorin temporarily stops respiration. Causes tissue damage." reagent_state = LIQUID color = "#C8A5DC" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/lexorin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/lexorin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.take_organ_damage(3 * removed, 0) if(M.losebreath < 15) @@ -1449,16 +1395,17 @@ reagent_state = LIQUID color = "#13BC5E" -/datum/reagent/mutagen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/mutagen/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(33)) + affect_blood(M, alien, removed) + +/datum/reagent/mutagen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(67)) + affect_blood(M, alien, removed) + +/datum/reagent/mutagen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(M.dna) - var/chance = 0 - if(location == CHEM_TOUCH) - chance = 33 - if(location == CHEM_INGEST) - chance = 67 - if(location == CHEM_BLOOD) - chance = 100 - if(prob(chance * removed * 0.1)) // Approx. one mutation per 10 injected/20 ingested/30 touching units + if(prob(removed * 0.1)) // Approx. one mutation per 10 injected/20 ingested/30 touching units randmuti(M) if(prob(98)) randmutb(M) @@ -1475,8 +1422,8 @@ reagent_state = LIQUID color = "#801E28" -/datum/reagent/slimejelly/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/slimejelly/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(prob(10)) M << "Your insides are burning!" @@ -1491,11 +1438,10 @@ reagent_state = LIQUID color = "#009CA8" metabolism = REM * 0.5 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE * 2 + overdose = REAGENTS_OVERDOSE -/datum/reagent/soporific/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/soporific/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(dose < 1) if(dose == metabolism * 2 || prob(5)) @@ -1517,11 +1463,10 @@ reagent_state = SOLID color = "#000067" metabolism = REM * 0.5 - overdose_blood = REAGENTS_OVERDOSE * 0.5 - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE * 0.5 -/datum/reagent/chloralhydrate/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/chloralhydrate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(dose == metabolism) M.confused += 2 @@ -1540,7 +1485,7 @@ id = "beer2" description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong. reagent_state = LIQUID - color = "#664300" // rgb: 102, 67, 0 + color = "#664300" glass_icon_state = "beerglass" glass_name = "glass of beer" @@ -1556,11 +1501,10 @@ reagent_state = LIQUID color = "#60A584" metabolism = REM * 0.5 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE * 2 + overdose = REAGENTS_OVERDOSE -/datum/reagent/space_drugs/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/space_drugs/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.druggy = max(M.druggy, 15) if(prob(10) && isturf(M.loc) && !istype(M.loc, /turf/space) && M.canmove && !M.restrained()) @@ -1575,11 +1519,10 @@ reagent_state = LIQUID color = "#202040" metabolism = REM * 0.25 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/serotrotium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/serotrotium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(prob(7)) M.emote(pick("twitch", "drool", "moan", "gasp")) @@ -1592,11 +1535,10 @@ reagent_state = LIQUID color = "#000055" metabolism = REM * 0.5 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/cryptobiolin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/cryptobiolin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.make_dizzy(4) M.confused = max(M.confused, 20) @@ -1607,11 +1549,10 @@ description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions." reagent_state = LIQUID color = "#C8A5DC" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/impedrezene/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/impedrezene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.jitteriness = max(M.jitteriness - 5, 0) if(prob(80)) @@ -1628,11 +1569,10 @@ reagent_state = LIQUID color = "#B31008" metabolism = REM * 0.25 - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/mindbreaker/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/mindbreaker/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.hallucination = max(M.hallucination, 100) @@ -1641,12 +1581,11 @@ id = "psilocybin" description = "A strong psycotropic derived from certain species of mushroom." color = "#E700E7" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE metabolism = REM * 0.5 -/datum/reagent/psilocybin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/psilocybin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.druggy = max(M.druggy, 30) if(dose < 1) @@ -1685,8 +1624,8 @@ reagent_state = LIQUID color = "#13BC5E" -/datum/reagent/slimetoxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_BLOOD && ishuman(M)) +/datum/reagent/slimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.species.name != "Slime") M << "Your flesh rapidly mutates!" @@ -1699,8 +1638,8 @@ reagent_state = LIQUID color = "#13BC5E" -/datum/reagent/aslimetoxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) // TODO: check if there's similar code anywhere else - if(location != CHEM_BLOOD || M.monkeyizing) +/datum/reagent/aslimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) // TODO: check if there's similar code anywhere else + if(M.monkeyizing) return M << "Your flesh rapidly mutates!" M.monkeyizing = 1 @@ -1731,10 +1670,13 @@ reagent_state = LIQUID color = "#535E66" -/datum/reagent/nanites/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location != CHEM_TOUCH || prob(10)) +/datum/reagent/nanites/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(10)) M.contract_disease(new /datum/disease/robotic_transformation(0), 1) +/datum/reagent/nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.contract_disease(new /datum/disease/robotic_transformation(0), 1) + /datum/reagent/xenomicrobes name = "Xenomicrobes" id = "xenomicrobes" @@ -1742,10 +1684,13 @@ reagent_state = LIQUID color = "#535E66" -/datum/reagent/nanites/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location != CHEM_TOUCH || prob(10)) +/datum/reagent/xenomicrobes/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(10)) M.contract_disease(new /datum/disease/xeno_transformation(0), 1) +/datum/reagent/xenomicrobes/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.contract_disease(new /datum/disease/xeno_transformation(0), 1) + /* Food */ /datum/reagent/nutriment @@ -1758,12 +1703,13 @@ var/injectable = 0 color = "#664330" -/datum/reagent/nutriment/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return - if(location == CHEM_BLOOD && !injectable) +/datum/reagent/nutriment/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(!injectable) M.adjustToxLoss(0.1 * removed) return + affect_ingest(M, alien, removed) + +/datum/reagent/nutriment/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.heal_organ_damage(0.5 * removed, 0) M.nutrition += nutriment_factor * removed // For hunger and fatness M.add_chemical_effect(CE_BLOODRESTORE, 4 * removed) @@ -1773,7 +1719,7 @@ id = "protein" color = "#440000" -/datum/reagent/nutriment/protein/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nutriment/protein/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien && alien == IS_SKRELL) M.adjustToxLoss(0.5 * removed) return @@ -1784,7 +1730,7 @@ id = "egg" color = "#FFFFAA" -/datum/reagent/nutriment/egg/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nutriment/egg/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(alien && alien == IS_SKRELL) M.adjustToxLoss(0.5) return @@ -1910,12 +1856,9 @@ description = "A chemical compound that causes a powerful fat-burning reaction." reagent_state = LIQUID color = "#BBEDA4" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE -/datum/reagent/lipozine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - return +/datum/reagent/lipozine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.nutrition = max(M.nutrition - 10 * removed, 0) M.overeatduration = 0 if(M.nutrition < 0) @@ -1929,8 +1872,7 @@ description = "A salt made of sodium chloride. Commonly used to season food." reagent_state = SOLID color = "#FFFFFF" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE /datum/reagent/blackpepper name = "Black Pepper" @@ -1945,8 +1887,7 @@ description = "A universal enzyme used in the preperation of certain chemicals and foods." reagent_state = LIQUID color = "#365E30" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE /datum/reagent/frostoil name = "Frost Oil" @@ -1955,8 +1896,8 @@ reagent_state = LIQUID color = "#B31008" -/datum/reagent/frostoil/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/frostoil/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.bodytemperature = max(M.bodytemperature - 10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0) if(prob(1)) @@ -1972,8 +1913,8 @@ reagent_state = LIQUID color = "#B31008" -/datum/reagent/capsaicin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/capsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return if(ishuman(M)) var/mob/living/carbon/human/H = M @@ -1997,69 +1938,69 @@ touch_met = 50 // Get rid of it quickly color = "#B31008" -/datum/reagent/condensedcapsaicin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - var/eyes_covered = 0 - var/mouth_covered = 0 - var/obj/item/safe_thing = null - if(istype(M, /mob/living/carbon/human)) - var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & NO_PAIN)) - return - if(H.head) - if(H.head.flags & MASKCOVERSEYES) - eyes_covered = 1 - safe_thing = H.head - if(H.head.flags & MASKCOVERSMOUTH) - mouth_covered = 1 - safe_thing = H.head - if(H.wear_mask) - if(!eyes_covered && H.wear_mask.flags & MASKCOVERSEYES) - eyes_covered = 1 - safe_thing = H.wear_mask - if(!mouth_covered && H.wear_mask.flags & MASKCOVERSMOUTH) - mouth_covered = 1 - safe_thing = H.wear_mask - if(H.glasses) - if(!eyes_covered) - eyes_covered = 1 - if(!safe_thing) - safe_thing = H.glasses - if(eyes_covered && mouth_covered) - M << "Your [safe_thing] protects you from the pepperspray!" +/datum/reagent/condensedcapsaicin/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + var/eyes_covered = 0 + var/mouth_covered = 0 + var/obj/item/safe_thing = null + if(istype(M, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & NO_PAIN)) return - else if(eyes_covered) - M << "Your [safe_thing] protect you from most of the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 15) - M.eye_blind = max(M.eye_blind, 5) - M.Stun(5) - M.Weaken(5) - return - else if (mouth_covered) // Mouth cover is better than eye cover - M << "Your [safe_thing] protects your face from the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 5) - return - else // Oh dear :D - M << "You're sprayed directly in the eyes with pepperspray!" - M.eye_blurry = max(M.eye_blurry, 25) - M.eye_blind = max(M.eye_blind, 10) - M.Stun(5) - M.Weaken(5) + if(H.head) + if(H.head.flags & MASKCOVERSEYES) + eyes_covered = 1 + safe_thing = H.head + if(H.head.flags & MASKCOVERSMOUTH) + mouth_covered = 1 + safe_thing = H.head + if(H.wear_mask) + if(!eyes_covered && H.wear_mask.flags & MASKCOVERSEYES) + eyes_covered = 1 + safe_thing = H.wear_mask + if(!mouth_covered && H.wear_mask.flags & MASKCOVERSMOUTH) + mouth_covered = 1 + safe_thing = H.wear_mask + if(H.glasses) + if(!eyes_covered) + eyes_covered = 1 + if(!safe_thing) + safe_thing = H.glasses + if(eyes_covered && mouth_covered) + M << "Your [safe_thing] protects you from the pepperspray!" + return + else if(eyes_covered) + M << "Your [safe_thing] protect you from most of the pepperspray!" + M.eye_blurry = max(M.eye_blurry, 15) + M.eye_blind = max(M.eye_blind, 5) + M.Stun(5) + M.Weaken(5) + return + else if (mouth_covered) // Mouth cover is better than eye cover + M << "Your [safe_thing] protects your face from the pepperspray!" + M.eye_blurry = max(M.eye_blurry, 5) + return + else // Oh dear :D + M << "You're sprayed directly in the eyes with pepperspray!" + M.eye_blurry = max(M.eye_blurry, 25) + M.eye_blind = max(M.eye_blind, 10) + M.Stun(5) + M.Weaken(5) + return + +/datum/reagent/condensedcapsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) return + if(dose == metabolism) + M << "You feel like your insides are burning!" else - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) - return - if(dose == metabolism) - M << "You feel like your insides are burning!" - else - M.apply_effect(4, AGONY, 0) - if(prob(5)) - M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") - if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature += rand(15, 30) - holder.remove_reagent("frostoil", 5) + M.apply_effect(4, AGONY, 0) + if(prob(5)) + M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") + if(istype(M, /mob/living/carbon/slime)) + M.bodytemperature += rand(15, 30) + holder.remove_reagent("frostoil", 5) /* Drinks */ @@ -2075,19 +2016,19 @@ var/adj_sleepy = 0 var/adj_temp = 0 -/datum/reagent/drink/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_BLOOD) - M.adjustToxLoss(removed) // Probably not a good idea; not very deadly though - return - if(location == CHEM_INGEST) - M.nutrition += nutrition * removed - M.dizziness = max(0, M.dizziness + adj_dizzy) - M.drowsyness = max(0, M.drowsyness + adj_drowsy) - M.sleeping = max(0, M.sleeping + adj_sleepy) - if(adj_temp > 0 && M.bodytemperature < 310) // 310 is the normal bodytemp. 310.055 - M.bodytemperature = min(310, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) - if(adj_temp < 0 && M.bodytemperature > 310) - M.bodytemperature = min(310, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) +/datum/reagent/drink/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed) // Probably not a good idea; not very deadly though + return + +/datum/reagent/drink/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.nutrition += nutrition * removed + M.dizziness = max(0, M.dizziness + adj_dizzy) + M.drowsyness = max(0, M.drowsyness + adj_drowsy) + M.sleeping = max(0, M.sleeping + adj_sleepy) + if(adj_temp > 0 && M.bodytemperature < 310) // 310 is the normal bodytemp. 310.055 + M.bodytemperature = min(310, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + if(adj_temp < 0 && M.bodytemperature > 310) + M.bodytemperature = min(310, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) // Juices @@ -2121,10 +2062,9 @@ glass_name = "glass of carrot juice" glass_desc = "It is just like a carrot but without crunching." -/datum/reagent/drink/carrotjuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/carrotjuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_INGEST) - M.reagents.add_reagent("imidazoline", removed * 0.2) + M.reagents.add_reagent("imidazoline", removed * 0.2) /datum/reagent/drink/grapejuice name = "Grape Juice" @@ -2156,9 +2096,9 @@ glass_name = "glass of lime juice" glass_desc = "A glass of sweet-sour lime juice" -/datum/reagent/drink/limejuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/limejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.adjustToxLoss(-0.5 * removed) @@ -2172,9 +2112,9 @@ glass_name = "glass of orange juice" glass_desc = "Vitamins! Yay!" -/datum/reagent/drink/orangejuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.adjustOxyLoss(-2 * removed) @@ -2210,9 +2150,9 @@ glass_name = "glass of tomato juice" glass_desc = "Are you sure this is tomato juice?" -/datum/reagent/drink/tomatojuice/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/tomatojuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.heal_organ_damage(0, 0.5 * removed) @@ -2238,9 +2178,9 @@ glass_name = "glass of milk" glass_desc = "White and nutritious goodness!" -/datum/reagent/drink/milk/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/milk/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.heal_organ_damage(0.5 * removed, 0) holder.remove_reagent("capsaicin", 10 * removed) @@ -2279,9 +2219,9 @@ glass_name = "cup of tea" glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" -/datum/reagent/drink/tea/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/tea/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.adjustToxLoss(-0.5 * removed) @@ -2310,10 +2250,11 @@ glass_icon_state = "hot_coffee" glass_name = "cup of coffee" glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." + -/datum/reagent/drink/coffee/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.make_jittery(5) if(adj_temp > 0) @@ -2342,7 +2283,7 @@ glass_desc = "A nice and refrshing beverage while you are reading." glass_center_of_mass = list("x"=15, "y"=9) -/datum/reagent/drink/coffee/soy_latte/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/coffee/soy_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() M.heal_organ_damage(0.5 * removed, 0) @@ -2358,7 +2299,7 @@ glass_desc = "A nice, strong and refreshing beverage while you are reading." glass_center_of_mass = list("x"=15, "y"=9) -/datum/reagent/drink/coffee/cafe_latte/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/coffee/cafe_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() M.heal_organ_damage(0.5 * removed, 0) @@ -2471,7 +2412,7 @@ glass_desc = "The secret of the sanctuary of the Libarian..." glass_center_of_mass = list("x"=16, "y"=9) -/datum/reagent/drink/rewriter/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() M.make_jittery(5) @@ -2488,7 +2429,7 @@ glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" glass_center_of_mass = list("x"=16, "y"=6) -/datum/reagent/drink/nuka_cola/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() M.add_chemical_effect(CE_SPEEDBOOST, 1) M.make_jittery(20) @@ -2580,9 +2521,9 @@ glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." glass_center_of_mass = list("x"=16, "y"=8) -/datum/reagent/drink/doctor_delight/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.adjustOxyLoss(-4 * removed) M.heal_organ_damage(2 * removed, 2 * removed) @@ -2617,9 +2558,9 @@ color = "#302000" nutrition = 5 -/datum/reagent/drink/hell_ramen/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/hell_ramen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.bodytemperature += 10 * TEMPERATURE_DAMAGE_COEFFICIENT @@ -2685,9 +2626,9 @@ glass_desc = "A freezing pint of beer" glass_center_of_mass = list("x"=16, "y"=8) -/datum/reagent/ethanol/beer/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.jitteriness = max(M.jitteriness - 3, 0) @@ -2727,9 +2668,9 @@ glass_desc = "Now you want to Pray for a pirate suit, don't you?" glass_center_of_mass = list("x"=16, "y"=12) -/datum/reagent/ethanol/deadrum/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.dizziness +=5 @@ -2757,9 +2698,9 @@ glass_desc = "DAMN, THIS THING LOOKS ROBUST" glass_center_of_mass = list("x"=15, "y"=7) -/datum/reagent/ethanol/kahlua/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/kahlua/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.dizziness = max(0, M.dizziness - 5) M.drowsyness = max(0, M.drowsyness - 3) @@ -2828,9 +2769,9 @@ glass_name = "glass of Thirteen Loko" glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." -/datum/reagent/ethanol/thirteenloko/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() - if(location == CHEM_TOUCH || location == CHEM_BLOOD || alien == IS_DIONA) + if(alien == IS_DIONA) return M.drowsyness = max(0, M.drowsyness - 7) if (M.bodytemperature > 310) @@ -2861,7 +2802,7 @@ glass_desc = "The glass contain wodka. Xynta." glass_center_of_mass = list("x"=16, "y"=12) -/datum/reagent/ethanol/vodka/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() M.radiation = max(M.radiation - 1 * removed, 0) @@ -3042,7 +2983,7 @@ glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." glass_center_of_mass = list("x"=18, "y"=10) -/datum/reagent/ethanol/beepsky_smash/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() M.Stun(2) @@ -3423,7 +3364,7 @@ glass_desc = "A drink that is guaranteed to knock you silly." glass_center_of_mass = list("x"=16, "y"=8) -/datum/reagent/ethanol/neurotoxin/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() M.Weaken(3) @@ -3453,7 +3394,7 @@ glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" glass_center_of_mass = list("x"=16, "y"=5) -/datum/reagent/ethanol/pwine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() if(dose > 30) M.adjustToxLoss(2 * removed) @@ -3683,11 +3624,10 @@ description = "A powder with almost magical properties, this substance can effectively treat genetic damage in humanoids, though excessive consumption has side effects." reagent_state = SOLID color = "#669900" - overdose_blood = REAGENTS_OVERDOSE - overdose_ingest = REAGENTS_OVERDOSE + overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/rezadone/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/rezadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.adjustCloneLoss(-20 * removed) M.adjustOxyLoss(-2 * removed) M.heal_organ_damage(20 * removed, 20 * removed) @@ -3706,8 +3646,7 @@ description = "Intensely coloured powder obtained by grinding crayons." reagent_state = LIQUID color = "#888888" - overdose_blood = 5 - overdose_ingest = 5 + overdose = 5 /datum/reagent/crayon_dust/red name = "Red crayon dust" @@ -3755,8 +3694,7 @@ description = "This paint will stick to almost any object." reagent_state = LIQUID color = "#808080" - overdose_blood = REAGENTS_OVERDOSE * 0.5 - overdose_ingest = REAGENTS_OVERDOSE * 0.5 + overdose = REAGENTS_OVERDOSE * 0.5 color_weight = 20 /datum/reagent/paint/touch_turf(var/turf/T) @@ -3771,9 +3709,8 @@ if(istype(M) && !istype(M, /mob/dead)) //painting ghosts: not allowed M.color = color -/datum/reagent/paint/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - M.color = color +/datum/reagent/paint/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.color = color /datum/reagent/paint/get_data() return color @@ -3822,7 +3759,10 @@ glass_name = "golden cup" glass_desc = "It's magic. We don't have to explain it." -/datum/reagent/adminordrazine/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + affect_blood(M, alien, removed) + +/datum/reagent/adminordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.setCloneLoss(0) M.setOxyLoss(0) M.radiation = 0 @@ -3871,7 +3811,10 @@ reagent_state = SOLID color = "#B8B8C0" -/datum/reagent/uranium/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/uranium/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + affect_ingest(M, alien, removed) + +/datum/reagent/uranium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.apply_effect(5 * removed, IRRADIATE, 0) /datum/reagent/uranium/touch_turf(var/turf/T) @@ -3882,7 +3825,6 @@ new /obj/effect/decal/cleanable/greenglow(T) return - /datum/reagent/adrenaline name = "Adrenaline" id = "adrenaline" @@ -3890,8 +3832,8 @@ reagent_state = LIQUID color = "#C8A5DC" -/datum/reagent/adrenaline/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH || alien == IS_DIONA) +/datum/reagent/adrenaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) return M.SetParalysis(0) M.SetWeakened(0) @@ -3907,12 +3849,11 @@ glass_name = "glass of holy water" glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." -/datum/reagent/water/holywater/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() if(ishuman(M)) // Any location - if((M.mind in ticker.mode.cult) && prob(10)) - ticker.mode.remove_cultist(M.mind) - M.visible_message("[M]'s eyes blink and become clearer.", "A cooling sensation from inside you brings you an untold calmness.") + if(M.mind && cult.is_antagonist(M.mind) && prob(10)) + cult.remove_antagonist(M.mind) /datum/reagent/ammonia name = "Ammonia" @@ -3959,10 +3900,11 @@ remove_self(5) return -/datum/reagent/thermite/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(location == CHEM_TOUCH) - M.adjust_fire_stacks(removed * 0.2) - return +/datum/reagent/thermite/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjust_fire_stacks(removed * 0.2) + return + +/datum/reagent/thermite/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) M.adjustFireLoss(3 * removed) /datum/reagent/space_cleaner @@ -3989,7 +3931,7 @@ for(var/mob/living/carbon/slime/M in T) M.adjustToxLoss(rand(5, 10)) -/datum/reagent/space_cleaner/affect_mob(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/space_cleaner/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) if(M.r_hand) M.r_hand.clean_blood() if(M.l_hand) diff --git a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm b/code/modules/reagents/reagent_containers/food/drinks/bottle.dm index 03b85848d6..dd2f879b27 100644 --- a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm +++ b/code/modules/reagents/reagent_containers/food/drinks/bottle.dm @@ -78,7 +78,7 @@ //The reagents in the bottle splash all over the target, thanks for the idea Nodrak if(reagents) user.visible_message("The contents of the [src] splash all over [target]!") - reagents.trans_to_mob(target, reagents.total_volume) + reagents.splash_mob(target, reagents.total_volume) //Finally, smash the bottle. This kills (del) the bottle. src.smash(target, user) From 502c9f1510266102557f5c930744f62ca9845452 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Tue, 31 Mar 2015 18:34:59 +0300 Subject: [PATCH 003/199] Fixes missed merge leftovers in syringe.dm --- .../reagents/reagent_containers/syringes.dm | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index d7c140779f..c503d6da5f 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -58,8 +58,8 @@ if(mode == SYRINGE_BROKEN) user << "This syringe is broken!" return - - if(user.a_intent == I_HURT && ismob(target)) + + if(user.a_intent == I_HURT && ismob(target)) if((CLUMSY in user.mutations) && prob(50)) target = user syringestab(target, user) @@ -228,11 +228,7 @@ var/mob/living/carbon/human/H = target var/target_zone = ran_zone(check_zone(user.zone_sel.selecting, target)) -<<<<<<< HEAD - var/datum/organ/external/affecting = H.get_organ(target_zone) -======= - var/obj/item/organ/external/affecting = target:get_organ(target_zone) ->>>>>>> dev + var/obj/item/organ/external/affecting = H.get_organ(target_zone) if (!affecting || (affecting.status & ORGAN_DESTROYED) || affecting.is_stump()) user << "They are missing that limb!" @@ -260,13 +256,8 @@ target.take_organ_damage(3)// 7 is the same as crowbar punch var/syringestab_amount_transferred = rand(0, (reagents.total_volume - 5)) //nerfed by popular demand -<<<<<<< HEAD reagents.trans_to_mob(target, syringestab_amount_transferred, CHEM_BLOOD) break_syringe(target, user) -======= - src.reagents.trans_to(target, syringestab_amount_transferred) - src.break_syringe(target, user) ->>>>>>> dev proc/break_syringe(mob/living/carbon/target, mob/living/carbon/user) desc += " It is broken." From 7a3c8d2304a769651b8d34fa27a5d33a9435437c Mon Sep 17 00:00:00 2001 From: Kelenius Date: Tue, 31 Mar 2015 20:02:41 +0300 Subject: [PATCH 004/199] Makes the code compile --- code/modules/reagents/Chemistry-Reagents.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index 7829755035..1e1aff55a0 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -236,7 +236,7 @@ else if(volume >= 3) if(T.wet >= 1) - return + return T.wet = 1 if(T.wet_overlay) T.overlays -= T.wet_overlay @@ -245,10 +245,10 @@ T.overlays += T.wet_overlay spawn(800) // This is terrible and needs to be changed when possible. - if(!T || !istype(T)) + if(!T || !istype(T)) return if(T.wet >= 2) - return + return T.wet = 0 if(T.wet_overlay) T.overlays -= T.wet_overlay @@ -618,7 +618,7 @@ if(!M.unacidable && removed > 0) if(istype(M, /mob/living/carbon/human) && volume >= meltdose) var/mob/living/carbon/human/H = M - var/datum/organ/external/affecting = H.get_organ("head") + var/obj/item/organ/external/affecting = H.get_organ("head") if(affecting) if(affecting.take_damage(0, removed * power * 0.1)) H.UpdateDamageIcon() @@ -2231,7 +2231,7 @@ glass_icon_state = "hot_coffee" glass_name = "cup of coffee" glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." - + /datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) ..() @@ -4037,5 +4037,5 @@ id = "chemical_waste" description = "A viscous, toxic liquid left over from many chemical processes." reagent_state = LIQUID - color = "#ADFF2F" //rgb: 173, 255, 47, toxic green + color = "#ADFF2F" //rgb: 173, 255, 47, toxic green */ \ No newline at end of file From 948252d25b63b5dc14d27f23215db9928a7921b0 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Tue, 28 Apr 2015 11:00:56 +0300 Subject: [PATCH 005/199] Removes unused files added by accident, separates reagent files --- baystation12.dme | 6 + code/modules/mob/living/carbon/monkey/life.dm | 520 --- .../mob/living/carbon/monkey/monkey.dm | 287 -- code/modules/organs/organ_objects.dm | 275 -- code/modules/reagents/Chemistry-Reagents.dm | 3941 ----------------- .../Chemistry-Reagents-Core.dm | 198 + .../Chemistry-Reagents-Dispenser.dm | 376 ++ .../Chemistry-Reagents-Food-Drinks.dm | 1924 ++++++++ .../Chemistry-Reagents-Medicine.dm | 493 +++ .../Chemistry-Reagents-Other.dm | 382 ++ .../Chemistry-Reagents-Toxins.dm | 516 +++ 11 files changed, 3895 insertions(+), 5023 deletions(-) delete mode 100644 code/modules/mob/living/carbon/monkey/life.dm delete mode 100644 code/modules/mob/living/carbon/monkey/monkey.dm delete mode 100644 code/modules/organs/organ_objects.dm create mode 100644 code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm create mode 100644 code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm create mode 100644 code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm create mode 100644 code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm create mode 100644 code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm create mode 100644 code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm diff --git a/baystation12.dme b/baystation12.dme index 7c5fd96b40..5a0328e42c 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1447,6 +1447,12 @@ #include "code\modules\reagents\Chemistry-Recipes.dm" #include "code\modules\reagents\reagent_containers.dm" #include "code\modules\reagents\reagent_dispenser.dm" +#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Core.dm" +#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Dispenser.dm" +#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Food-Drinks.dm" +#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Medicine.dm" +#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Other.dm" +#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Toxins.dm" #include "code\modules\reagents\dispenser\_defines.dm" #include "code\modules\reagents\dispenser\cartridge.dm" #include "code\modules\reagents\dispenser\cartridge_presets.dm" diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm deleted file mode 100644 index b339fc086e..0000000000 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ /dev/null @@ -1,520 +0,0 @@ -//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 - -/mob/living/carbon/monkey - var/oxygen_alert = 0 - var/phoron_alert = 0 - var/fire_alert = 0 - var/pressure_alert = 0 - - var/temperature_alert = 0 - - -/mob/living/carbon/monkey/Life() - set invisibility = 0 - set background = 1 - if (monkeyizing) return - if (update_muts) - update_muts=0 - domutcheck(src,null,MUTCHK_FORCED) - ..() - - var/datum/gas_mixture/environment // Added to prevent null location errors-- TLE - if(loc) - environment = loc.return_air() - - if (stat != DEAD) - //First, resolve location and get a breath - if(air_master.current_cycle%4==2) - //Only try to take a breath every 4 seconds, unless suffocating - breathe() - - //Updates the number of stored chemicals for powers - handle_changeling() - - //Mutations and radiation - handle_mutations_and_radiation() - - //Chemicals in the body - handle_chemicals_in_body() - - //Disabilities - handle_disabilities() - - //Apparently, the person who wrote this code designed it so that - //blinded get reset each cycle and then get activated later in the - //code. Very ugly. I dont care. Moving this stuff here so its easy - //to find it. - blinded = null - - //Handle temperature/pressure differences between body and environment - if(environment) // More error checking -- TLE - handle_environment(environment) - - //Check if we're on fire - handle_fire() - - //Status updates, death etc. - handle_regular_status_updates() - update_canmove() - - if(client) - handle_regular_hud_updates() - - // Grabbing - for(var/obj/item/weapon/grab/G in src) - G.process() - - if(!client && stat == CONSCIOUS) - - if(prob(33) && canmove && isturf(loc) && !pulledby) //won't move if being pulled - - step(src, pick(cardinal)) - - if(prob(1)) - emote(pick("scratch","jump","roll","tail")) - updatehealth() - -/mob/living/carbon/monkey - - proc/handle_disabilities() - - if (disabilities & EPILEPSY) - if ((prob(1) && paralysis < 10)) - src << "\red You have a seizure!" - Paralyse(10) - if (disabilities & COUGHING) - if ((prob(5) && paralysis <= 1)) - drop_item() - spawn( 0 ) - emote("cough") - return - if (disabilities & TOURETTES) - if ((prob(10) && paralysis <= 1)) - Stun(10) - spawn( 0 ) - emote("twitch") - return - if (disabilities & NERVOUS) - if (prob(10)) - stuttering = max(10, stuttering) - - proc/handle_mutations_and_radiation() - - if(getFireLoss()) - if((COLD_RESISTANCE in mutations) || prob(50)) - switch(getFireLoss()) - if(1 to 50) - adjustFireLoss(-1) - if(51 to 100) - adjustFireLoss(-5) - - if ((HULK in mutations) && health <= 25) - mutations.Remove(HULK) - src << "\red You suddenly feel very weak." - Weaken(3) - emote("collapse") - - if (radiation) - - if (radiation > 100) - radiation = 100 - Weaken(10) - if(!lying) - src << "\red You feel weak." - emote("collapse") - - switch(radiation) - if(1 to 49) - radiation-- - if(prob(25)) - adjustToxLoss(1) - - if(50 to 74) - radiation -= 2 - adjustToxLoss(1) - if(prob(5)) - radiation -= 5 - Weaken(3) - if(!lying) - src << "\red You feel weak." - emote("collapse") - - if(75 to 100) - radiation -= 3 - adjustToxLoss(3) - if(prob(1)) - src << "\red You mutate!" - randmutb(src) - domutcheck(src,null) - emote("gasp") - - handle_breath(datum/gas_mixture/breath) - if(status_flags & GODMODE) - return - - if(!breath || (breath.total_moles == 0)) - adjustOxyLoss(7) - - oxygen_alert = max(oxygen_alert, 1) - - return 0 - - var/safe_oxygen_min = 16 // Minimum safe partial pressure of O2, in kPa - //var/safe_oxygen_max = 140 // Maximum safe partial pressure of O2, in kPa (Not used for now) - var/safe_co2_max = 10 // Yes it's an arbitrary value who cares? - var/safe_phoron_max = 0.5 - var/SA_para_min = 0.5 - var/SA_sleep_min = 5 - var/oxygen_used = 0 - var/breath_pressure = (breath.total_moles * R_IDEAL_GAS_EQUATION * breath.temperature) / BREATH_VOLUME - - //Partial pressure of the O2 in our breath - var/O2_pp = (breath.gas["oxygen"] / breath.total_moles) * breath_pressure - // Same, but for the phoron - var/Toxins_pp = (breath.gas["phoron"] / breath.total_moles) * breath_pressure - // And CO2, lets say a PP of more than 10 will be bad (It's a little less really, but eh, being passed out all round aint no fun) - var/CO2_pp = (breath.gas["carbon_dioxide"] / breath.total_moles) * breath_pressure - - if(O2_pp < safe_oxygen_min) // Too little oxygen - if(prob(20)) - spawn(0) emote("gasp") - if (O2_pp == 0) - O2_pp = 0.01 - var/ratio = safe_oxygen_min/O2_pp - adjustOxyLoss(min(5*ratio, 7)) // Don't fuck them up too fast (space only does 7 after all!) - oxygen_used = breath.gas["oxygen"] * ratio / 6 - oxygen_alert = max(oxygen_alert, 1) - /*else if (O2_pp > safe_oxygen_max) // Too much oxygen (commented this out for now, I'll deal with pressure damage elsewhere I suppose) - spawn(0) emote("cough") - var/ratio = O2_pp/safe_oxygen_max - oxyloss += 5*ratio - oxygen_used = breath.oxygen*ratio/6 - oxygen_alert = max(oxygen_alert, 1)*/ - else // We're in safe limits - adjustOxyLoss(-5) - oxygen_used = breath.gas["oxygen"] / 6 - oxygen_alert = 0 - - breath.adjust_gas("oxygen", -oxygen_used) - breath.adjust_gas("carbon_dioxide", oxygen_used) - - if(CO2_pp > safe_co2_max) - if(!co2overloadtime) // If it's the first breath with too much CO2 in it, lets start a counter, then have them pass out after 12s or so. - co2overloadtime = world.time - else if(world.time - co2overloadtime > 120) - Paralyse(3) - adjustOxyLoss(3) // Lets hurt em a little, let them know we mean business - if(world.time - co2overloadtime > 300) // They've been in here 30s now, lets start to kill them for their own good! - adjustOxyLoss(8) - if(prob(20)) // Lets give them some chance to know somethings not right though I guess. - spawn(0) emote("cough") - - else - co2overloadtime = 0 - - if(Toxins_pp > safe_phoron_max) // Too much phoron - var/ratio = (breath.gas["phoron"] / safe_phoron_max) * 10 - //adjustToxLoss(Clamp(ratio, MIN_PLASMA_DAMAGE, MAX_PLASMA_DAMAGE)) //Limit amount of damage toxin exposure can do per second - if(reagents) - reagents.add_reagent("toxin", Clamp(ratio, MIN_TOXIN_DAMAGE, MAX_TOXIN_DAMAGE)) - phoron_alert = max(phoron_alert, 1) - else - phoron_alert = 0 - - if(breath.gas["sleeping_agent"]) - var/SA_pp = (breath.gas["sleeping_agent"] / breath.total_moles) * breath_pressure - if(SA_pp > SA_para_min) // Enough to make us paralysed for a bit - Paralyse(3) // 3 gives them one second to wake up and run away a bit! - if(SA_pp > SA_sleep_min) // Enough to make us sleep as well - sleeping = max(sleeping+2, 10) - else if(SA_pp > 0.01) // There is sleeping gas in their lungs, but only a little, so give them a bit of a warning - if(prob(20)) - spawn(0) emote(pick("giggle", "laugh")) - - - if(breath.temperature > (T0C+66)) // Hot air hurts :( - if(prob(20)) - src << "\red You feel a searing heat in your lungs!" - fire_alert = max(fire_alert, 2) - else - fire_alert = 0 - - - //Temporary fixes to the alerts. - - return 1 - - proc/handle_environment(datum/gas_mixture/environment) - if(!environment) - return - - //Moved these vars here for use in the fuck-it-skip-processing check. - var/pressure = environment.return_pressure() - if(pressure < WARNING_HIGH_PRESSURE && pressure > WARNING_LOW_PRESSURE && abs(environment.temperature - 293.15) < 20 && abs(bodytemperature - 310.14) < 0.5 && environment.gas["phoron"] < MOLES_PHORON_VISIBLE) - - - //Hopefully should fix the walk-inside-still-pressure-warning issue. - if(pressure_alert) - pressure_alert = 0 - - return // Temperatures are within normal ranges, fuck all this processing. ~Ccomp - - var/environment_heat_capacity = environment.heat_capacity() - if(istype(get_turf(src), /turf/space)) - var/turf/heat_turf = get_turf(src) - environment_heat_capacity = heat_turf.heat_capacity - - if((environment.temperature > (T0C + 50)) || (environment.temperature < (T0C + 10))) - var/transfer_coefficient = 1 - - handle_temperature_damage(HEAD, environment.temperature, environment_heat_capacity*transfer_coefficient) - - if(stat==2) - bodytemperature += 0.1*(environment.temperature - bodytemperature)*environment_heat_capacity/(environment_heat_capacity + 270000) - - //Account for massive pressure differences - switch(pressure) - if(HAZARD_HIGH_PRESSURE to INFINITY) - adjustBruteLoss( min( ( (pressure / HAZARD_HIGH_PRESSURE) -1 )*PRESSURE_DAMAGE_COEFFICIENT , MAX_HIGH_PRESSURE_DAMAGE) ) - pressure_alert = 2 - if(WARNING_HIGH_PRESSURE to HAZARD_HIGH_PRESSURE) - pressure_alert = 1 - if(WARNING_LOW_PRESSURE to WARNING_HIGH_PRESSURE) - pressure_alert = 0 - if(HAZARD_LOW_PRESSURE to WARNING_LOW_PRESSURE) - pressure_alert = -1 - else - if( !(COLD_RESISTANCE in mutations) ) - adjustBruteLoss( LOW_PRESSURE_DAMAGE ) - pressure_alert = -2 - else - pressure_alert = -1 - - return - - proc/handle_temperature_damage(body_part, exposed_temperature, exposed_intensity) - if(status_flags & GODMODE) return - var/discomfort = min( abs(exposed_temperature - bodytemperature)*(exposed_intensity)/2000000, 1.0) - //adjustFireLoss(2.5*discomfort) - - if(exposed_temperature > bodytemperature) - adjustFireLoss(20.0*discomfort) - - else - adjustFireLoss(5.0*discomfort) - - proc/handle_chemicals_in_body() - chem_effects.Cut() - analgesic = 0 - - if(touching) - touching.metabolize(0, CHEM_TOUCH) - if(ingested) - ingested.metabolize(0, CHEM_INGEST) - if(reagents) - reagents.metabolize(0, CHEM_BLOOD) - - if(CE_PAINKILLER in chem_effects) - analgesic = chem_effects[CE_PAINKILLER] - - if (drowsyness) - drowsyness-- - eye_blurry = max(2, eye_blurry) - if (prob(5)) - sleeping += 1 - Paralyse(5) - - if(confused) - confused = max(0, confused - 1) - - if(resting) - dizziness = max(0, dizziness - 5) - else - dizziness = max(0, dizziness - 1) - - return //TODO: DEFERRED - - proc/handle_regular_status_updates() - - if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP - blinded = 1 - silent = 0 - else //ALIVE. LIGHTS ARE ON - updatehealth() - if(health < config.health_threshold_dead || !has_brain()) - death() - blinded = 1 - stat = DEAD - silent = 0 - return 1 - - //UNCONSCIOUS. NO-ONE IS HOME - if( (getOxyLoss() > 25) || (config.health_threshold_crit > health) ) - if( health <= 20 && prob(1) ) - spawn(0) - emote("gasp") - if(!reagents.has_reagent("inaprovaline")) - adjustOxyLoss(1) - Paralyse(3) - if(halloss > 100) - src << "You're in too much pain to keep going..." - for(var/mob/O in oviewers(src, null)) - O.show_message("[src] slumps to the ground, too weak to continue fighting.", 1) - Paralyse(10) - setHalLoss(99) - - if(paralysis) - AdjustParalysis(-1) - blinded = 1 - stat = UNCONSCIOUS - if(halloss > 0) - adjustHalLoss(-3) - else if(sleeping) - handle_dreams() - adjustHalLoss(-3) - sleeping = max(sleeping-1, 0) - blinded = 1 - stat = UNCONSCIOUS - if( prob(10) && health && !hal_crit ) - spawn(0) - emote("snore") - else if(resting) - if(halloss > 0) - adjustHalLoss(-3) - //CONSCIOUS - else - stat = CONSCIOUS - if(halloss > 0) - adjustHalLoss(-1) - - //Eyes - if(sdisabilities & BLIND) //disabled-blind, doesn't get better on its own - blinded = 1 - else if(eye_blind) //blindness, heals slowly over time - eye_blind = max(eye_blind-1,0) - blinded = 1 - else if(eye_blurry) //blurry eyes heal slowly - eye_blurry = max(eye_blurry-1, 0) - - //Ears - if(sdisabilities & DEAF) //disabled-deaf, doesn't get better on its own - ear_deaf = max(ear_deaf, 1) - else if(ear_deaf) //deafness, heals slowly over time - ear_deaf = max(ear_deaf-1, 0) - else if(ear_damage < 25) //ear damage heals slowly under this threshold. otherwise you'll need earmuffs - ear_damage = max(ear_damage-0.05, 0) - - //Other - handle_statuses() - return 1 - - - proc/handle_regular_hud_updates() - - if (stat == 2 || (XRAY in mutations)) - sight |= SEE_TURFS - sight |= SEE_MOBS - sight |= SEE_OBJS - see_in_dark = 8 - see_invisible = SEE_INVISIBLE_LEVEL_TWO - else if (stat != 2) - sight &= ~SEE_TURFS - sight &= ~SEE_MOBS - sight &= ~SEE_OBJS - see_in_dark = 2 - see_invisible = SEE_INVISIBLE_LIVING - - if (healths) - if (stat != 2) - switch(health) - if(100 to INFINITY) - healths.icon_state = "health0" - if(80 to 100) - healths.icon_state = "health1" - if(60 to 80) - healths.icon_state = "health2" - if(40 to 60) - healths.icon_state = "health3" - if(20 to 40) - healths.icon_state = "health4" - if(0 to 20) - healths.icon_state = "health5" - else - healths.icon_state = "health6" - else - healths.icon_state = "health7" - - - if(pressure) - pressure.icon_state = "pressure[pressure_alert]" - - if (toxin) toxin.icon_state = "tox[phoron_alert ? 1 : 0]" - if (oxygen) oxygen.icon_state = "oxy[oxygen_alert ? 1 : 0]" - if (fire) fire.icon_state = "fire[fire_alert ? 2 : 0]" - //NOTE: the alerts dont reset when youre out of danger. dont blame me, - //blame the person who coded them. Temporary fix added. - - if(bodytemp) - switch(bodytemperature) //310.055 optimal body temp - if(345 to INFINITY) - bodytemp.icon_state = "temp4" - if(335 to 345) - bodytemp.icon_state = "temp3" - if(327 to 335) - bodytemp.icon_state = "temp2" - if(316 to 327) - bodytemp.icon_state = "temp1" - if(300 to 316) - bodytemp.icon_state = "temp0" - if(295 to 300) - bodytemp.icon_state = "temp-1" - if(280 to 295) - bodytemp.icon_state = "temp-2" - if(260 to 280) - bodytemp.icon_state = "temp-3" - else - bodytemp.icon_state = "temp-4" - - client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired) - - if(blind && stat != DEAD) - if(blinded) - blind.layer = 18 - else - blind.layer = 0 - - if(disabilities & NEARSIGHTED) - client.screen += global_hud.vimpaired - - if(eye_blurry) - client.screen += global_hud.blurry - - if(druggy) - client.screen += global_hud.druggy - - if (stat != 2) - if (machine) - if (!( machine.check_eye(src) )) - reset_view(null) - else - if(client && !client.adminobs) - reset_view(null) - - return 1 - - proc/handle_random_events() - if (prob(1) && prob(2)) - spawn(0) - emote("scratch") - return - - - proc/handle_changeling() - if(mind && mind.changeling) - mind.changeling.regenerate() - -/mob/living/carbon/monkey/handle_fire() - if(..()) - return - adjustFireLoss(6) - return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm deleted file mode 100644 index 8cd0558e7c..0000000000 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ /dev/null @@ -1,287 +0,0 @@ -/mob/living/carbon/monkey - name = "monkey" - voice_name = "monkey" - speak_emote = list("chimpers") - icon_state = "monkey1" - icon = 'icons/mob/monkey.dmi' - gender = NEUTER - pass_flags = PASSTABLE - update_icon = 0 ///no need to call regenerate_icon - - var/obj/item/weapon/card/id/wear_id = null // Fix for station bounced radios -- Skie - var/greaterform = "Human" // Used when humanizing a monkey. - icon_state = "monkey1" - //var/uni_append = "12C4E2" // Small appearance modifier for different species. - var/list/uni_append = list(0x12C,0x4E2) // Same as above for DNA2. - var/update_muts = 1 // Monkey gene must be set at start. - holder_type = /obj/item/weapon/holder/monkey - -/mob/living/carbon/monkey/tajara - name = "farwa" - voice_name = "farwa" - speak_emote = list("mews") - icon_state = "tajkey1" - greaterform = "Tajara" - uni_append = list(0x0A0,0xE00) // 0A0E00 - holder_type = /obj/item/weapon/holder/monkey/farwa - -/mob/living/carbon/monkey/skrell - name = "neaera" - voice_name = "neaera" - speak_emote = list("squicks") - icon_state = "skrellkey1" - greaterform = "Skrell" - uni_append = list(0x01C,0xC92) // 01CC92 - holder_type = /obj/item/weapon/holder/monkey/neaera - -/mob/living/carbon/monkey/unathi - name = "stok" - voice_name = "stok" - speak_emote = list("hisses") - icon_state = "stokkey1" - greaterform = "Unathi" - uni_append = list(0x044,0xC5D) // 044C5D - holder_type = /obj/item/weapon/holder/monkey/stok - -/mob/living/carbon/monkey/New() - - verbs += /mob/living/proc/ventcrawl - - species = all_species[greaterform] - add_language(species.language) - - if(name == initial(name)) //To stop Pun-Pun becoming generic. - name = "[name] ([rand(1, 1000)])" - real_name = name - - if (!(dna)) - if(gender == NEUTER) - gender = pick(MALE, FEMALE) - dna = new /datum/dna( null ) - dna.real_name = real_name - dna.ResetSE() - dna.ResetUI() - //dna.uni_identity = "00600200A00E0110148FC01300B009" - //dna.SetUI(list(0x006,0x002,0x00A,0x00E,0x011,0x014,0x8FC,0x013,0x00B,0x009)) - //dna.struc_enzymes = "43359156756131E13763334D1C369012032164D4FE4CD61544B6C03F251B6C60A42821D26BA3B0FD6" - //dna.SetSE(list(0x433,0x591,0x567,0x561,0x31E,0x137,0x633,0x34D,0x1C3,0x690,0x120,0x321,0x64D,0x4FE,0x4CD,0x615,0x44B,0x6C0,0x3F2,0x51B,0x6C6,0x0A4,0x282,0x1D2,0x6BA,0x3B0,0xFD6)) - dna.unique_enzymes = md5(name) - - // We're a monkey - dna.SetSEState(MONKEYBLOCK, 1) - dna.SetSEValueRange(MONKEYBLOCK,0xDAC, 0xFFF) - // Fix gender - dna.SetUIState(DNA_UI_GENDER, gender != MALE, 1) - - // Set the blocks to uni_append, if needed. - if(uni_append.len>0) - for(var/b=1;b<=uni_append.len;b++) - dna.SetUIValue(DNA_UI_LENGTH-(uni_append.len-b),uni_append[b], 1) - dna.UpdateUI() - - update_muts=1 - - ..() - update_icons() - return - -/mob/living/carbon/monkey/movement_delay() - var/tally = 0 - if(reagents) - if(reagents.has_reagent("hyperzine")) return -1 - - if(reagents.has_reagent("nuka_cola")) return -1 - - var/health_deficiency = (100 - health) - if(health_deficiency >= 45) tally += (health_deficiency / 25) - - if (bodytemperature < 283.222) - tally += (283.222 - bodytemperature) / 10 * 1.75 - return tally+config.monkey_delay - -/mob/living/carbon/monkey/Topic(href, href_list) - ..() - if (href_list["mach_close"]) - var/t1 = text("window=[]", href_list["mach_close"]) - unset_machine() - src << browse(null, t1) - if ((href_list["item"] && !( usr.stat ) && !( usr.restrained() ) && in_range(src, usr) )) - var/obj/effect/equip_e/monkey/O = new /obj/effect/equip_e/monkey( ) - O.source = usr - O.target = src - O.item = usr.get_active_hand() - O.s_loc = usr.loc - O.t_loc = loc - O.place = href_list["item"] - requests += O - spawn( 0 ) - O.process() - return - ..() - return - -/mob/living/carbon/monkey/meteorhit(obj/O as obj) - for(var/mob/M in viewers(src, null)) - M.show_message(text("\red [] has been hit by []", src, O), 1) - if (health > 0) - var/shielded = 0 - adjustBruteLoss(30) - if ((O.icon_state == "flaming" && !( shielded ))) - adjustFireLoss(40) - health = 100 - getOxyLoss() - getToxLoss() - getFireLoss() - getBruteLoss() - return - -/mob/living/carbon/monkey/attack_hand(mob/living/carbon/human/M as mob) - - if (M.a_intent == "help" && a_intent == "help") - help_shake_act(M) - get_scooped(M) - else - if (M.a_intent == "hurt") - var/datum/unarmed_attack/attack = null - for(var/datum/unarmed_attack/u_attack in M.species.unarmed_attacks) - if(!u_attack.is_usable(M, src)) - continue - else - attack = u_attack - break - if(!attack) - return 0 - if ((prob(75) && health > 0)) - visible_message("\red [M] [pick(attack.attack_verb)] [src]!") - - playsound(loc, "punch", 25, 1, -1) - var/damage = rand(5, 10) - if (prob(40)) - damage = rand(10, 15) - if (paralysis < 5) - Paralyse(rand(10, 15)) - visible_message("\red [M] has knocked out [src]!") - - adjustBruteLoss(damage) - - M.attack_log += text("\[[time_stamp()]\] [pick(attack.attack_verb)]ed [src.name] ([src.ckey])") - src.attack_log += text("\[[time_stamp()]\] Has been [pick(attack.attack_verb)]ed by [M.name] ([M.ckey])") - msg_admin_attack("[key_name(M)] [pick(attack.attack_verb)]ed [key_name(src)]") - - updatehealth() - else - playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - visible_message("\red [M] tried to [pick(attack.attack_verb)] [src]!") - else - if (M.a_intent == "grab") - if (M == src || anchored) - return - - var/obj/item/weapon/grab/G = new /obj/item/weapon/grab(M, src ) - - M.put_in_active_hand(G) - - G.synch() - - LAssailant = M - - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - for(var/mob/O in viewers(src, null)) - O.show_message(text("\red [] has grabbed [name] passively!", M), 1) - else - if (!( paralysis )) - if (prob(25)) - Paralyse(2) - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - for(var/mob/O in viewers(src, null)) - if ((O.client && !( O.blinded ))) - O.show_message(text("\red [] has pushed down [name]!", M), 1) - else - drop_item() - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - for(var/mob/O in viewers(src, null)) - if ((O.client && !( O.blinded ))) - O.show_message(text("\red [] has disarmed [name]!", M), 1) - return - -/mob/living/carbon/monkey/Stat() - ..() - statpanel("Status") - stat(null, text("Intent: []", a_intent)) - stat(null, text("Move Mode: []", m_intent)) - if(client && mind) - if (client.statpanel == "Status") - if(mind.changeling) - stat("Chemical Storage", mind.changeling.chem_charges) - stat("Genetic Damage Time", mind.changeling.geneticdamage) - return - - -/mob/living/carbon/monkey/verb/removeinternal() - set name = "Remove Internals" - set category = "IC" - internal = null - return - -/mob/living/carbon/monkey/var/co2overloadtime = null -/mob/living/carbon/monkey/var/temperature_resistance = T0C+75 - -/mob/living/carbon/monkey/emp_act(severity) - if(wear_id) wear_id.emp_act(severity) - ..() - -/mob/living/carbon/monkey/ex_act(severity) - if(!blinded) - flick("flash", flash) - - switch(severity) - if(1.0) - if (stat != 2) - adjustBruteLoss(200) - health = 100 - getOxyLoss() - getToxLoss() - getFireLoss() - getBruteLoss() - if(2.0) - if (stat != 2) - adjustBruteLoss(60) - adjustFireLoss(60) - health = 100 - getOxyLoss() - getToxLoss() - getFireLoss() - getBruteLoss() - if(3.0) - if (stat != 2) - adjustBruteLoss(30) - health = 100 - getOxyLoss() - getToxLoss() - getFireLoss() - getBruteLoss() - if (prob(50)) - Paralyse(10) - else - return - -/mob/living/carbon/monkey/blob_act() - if (stat != 2) - adjustFireLoss(60) - health = 100 - getOxyLoss() - getToxLoss() - getFireLoss() - getBruteLoss() - if (prob(50)) - Paralyse(10) - if (stat == DEAD && client) - gib() - return - if (stat == DEAD && !client) - gibs(loc, viruses) - del(src) - return - -//Unless its monkey mode monkeys cant use advanced tools -/mob/living/carbon/monkey/IsAdvancedToolUser(var/silent) - if(!silent) - src << "You don't have the dexterity to use that!" - return 0 - -/mob/living/carbon/monkey/say(var/message, var/datum/language/speaking = null, var/verb="says", var/alt_name="", var/italics=0, var/message_range = world.view, var/list/used_radios = list()) - if(stat) - return - - if(copytext(message,1,2) == "*") - return emote(copytext(message,2)) - - if(stat) - return - - if(speak_emote.len) - verb = pick(speak_emote) - - message = capitalize(trim_left(message)) - - ..(message, speaking, verb, alt_name, italics, message_range, used_radios) diff --git a/code/modules/organs/organ_objects.dm b/code/modules/organs/organ_objects.dm deleted file mode 100644 index b7c451b883..0000000000 --- a/code/modules/organs/organ_objects.dm +++ /dev/null @@ -1,275 +0,0 @@ -/obj/item/organ - name = "organ" - desc = "It looks like it probably just plopped out." - icon = 'icons/obj/surgery.dmi' - icon_state = "appendix" - - health = 100 // Process() ticks before death. - - var/fresh = 3 // Squirts of blood left in it. - var/dead_icon // Icon used when the organ dies. - var/robotic // Is the limb prosthetic? - var/organ_tag // What slot does it go in? - var/organ_type = /datum/organ/internal // Used to spawn the relevant organ data when produced via a machine or spawn(). - var/datum/organ/internal/organ_data // Stores info when removed. - var/prosthetic_name = "prosthetic organ" // Flavour string for robotic organ. - var/prosthetic_icon // Icon for robotic organ. - -/obj/item/organ/attack_self(mob/user as mob) - - // Convert it to an edible form, yum yum. - if(!robotic && user.a_intent == "help" && user.zone_sel.selecting == "mouth") - bitten(user) - return - -/obj/item/organ/New() - ..() - create_reagents(5) - if(!robotic) - processing_objects += src - spawn(1) - update() - -/obj/item/organ/Del() - if(!robotic) processing_objects -= src - ..() - -/obj/item/organ/process() - - if(robotic) - processing_objects -= src - return - - // Don't process if we're in a freezer, an MMI or a stasis bag. //TODO: ambient temperature? - if(istype(loc,/obj/item/device/mmi) || istype(loc,/obj/item/bodybag/cryobag) || istype(loc,/obj/structure/closet/crate/freezer)) - return - - if(fresh && prob(40)) - fresh-- - var/datum/reagent/blood/B = locate(/datum/reagent/blood) in reagents.reagent_list - blood_splatter(src,B,1) - - health -= rand(1,3) - if(health <= 0) - die() - -/obj/item/organ/proc/die() - name = "dead [initial(name)]" - if(dead_icon) icon_state = dead_icon - health = 0 - processing_objects -= src - //TODO: Grey out the icon state. - //TODO: Inject an organ with peridaxon to make it alive again. - -/obj/item/organ/proc/roboticize() - - robotic = (organ_data && organ_data.robotic) ? organ_data.robotic : 1 - - if(prosthetic_name) - name = prosthetic_name - - if(prosthetic_icon) - icon_state = prosthetic_icon - else - //TODO: convert to greyscale. - -/obj/item/organ/proc/update() - - if(!organ_data) - organ_data = new organ_type() - - if(robotic) - organ_data.robotic = robotic - - if(organ_data.robotic >= 2) - roboticize() - -// Brain is defined in brain_item.dm. -/obj/item/organ/heart - name = "heart" - icon_state = "heart-on" - prosthetic_name = "circulatory pump" - prosthetic_icon = "heart-prosthetic" - organ_tag = "heart" - fresh = 6 // Juicy. - dead_icon = "heart-off" - organ_type = /datum/organ/internal/heart - -/obj/item/organ/lungs - name = "lungs" - icon_state = "lungs" - gender = PLURAL - prosthetic_name = "gas exchange system" - prosthetic_icon = "lungs-prosthetic" - organ_tag = "lungs" - organ_type = /datum/organ/internal/lungs - -/obj/item/organ/kidneys - name = "kidneys" - icon_state = "kidneys" - gender = PLURAL - prosthetic_name = "prosthetic kidneys" - prosthetic_icon = "kidneys-prosthetic" - organ_tag = "kidneys" - organ_type = /datum/organ/internal/kidney - -/obj/item/organ/eyes - name = "eyeballs" - icon_state = "eyes" - gender = PLURAL - prosthetic_name = "visual prosthesis" - prosthetic_icon = "eyes-prosthetic" - organ_tag = "eyes" - organ_type = /datum/organ/internal/eyes - var/eye_colour - -/obj/item/organ/liver - name = "liver" - icon_state = "liver" - prosthetic_name = "toxin filter" - prosthetic_icon = "liver-prosthetic" - organ_tag = "liver" - organ_type = /datum/organ/internal/liver - -/obj/item/organ/appendix - name = "appendix" - icon_state = "appendix" - organ_tag = "appendix" - organ_type = /datum/organ/internal/appendix - -//These are here so they can be printed out via the fabricator. -/obj/item/organ/heart/prosthetic - robotic = 2 - -/obj/item/organ/lungs/prosthetic - robotic = 2 - -/obj/item/organ/kidneys/prosthetic - robotic = 2 - -/obj/item/organ/eyes/prosthetic - robotic = 2 - -/obj/item/organ/liver/prosthetic - robotic = 2 - -/obj/item/organ/appendix - name = "appendix" - -/obj/item/organ/proc/removed(var/mob/living/carbon/human/target,var/mob/living/user) - - if(!istype(target) || !organ_data) - return - - target.internal_organs_by_name[organ_tag] = null - target.internal_organs_by_name -= organ_tag - target.internal_organs -= organ_data - - var/datum/organ/external/affected = target.get_organ(organ_data.parent_organ) - affected.internal_organs -= organ_data - - loc = target.loc - organ_data.rejecting = null - var/datum/reagent/blood/organ_blood = locate(/datum/reagent/blood) in reagents.reagent_list - if(!organ_blood || !organ_blood.data["blood_DNA"]) - target.vessel.trans_to_obj(src, 5, 1, 1) - - if(target && user && organ_data.vital) - user.attack_log += "\[[time_stamp()]\] removed a vital organ ([src]) from [target.name] ([target.ckey]) (INTENT: [uppertext(user.a_intent)])" - target.attack_log += "\[[time_stamp()]\] had a vital organ ([src]) removed by [user.name] ([user.ckey]) (INTENT: [uppertext(user.a_intent)])" - msg_admin_attack("[user.name] ([user.ckey]) removed a vital organ ([src]) from [target.name] ([target.ckey]) (INTENT: [uppertext(user.a_intent)]) (JMP)") - target.death() - -/obj/item/organ/appendix/removed(var/mob/living/target,var/mob/living/user) - - ..() - - var/inflamed = 0 - for(var/datum/disease/appendicitis/appendicitis in target.viruses) - inflamed = 1 - appendicitis.cure() - target.resistances += appendicitis - - if(inflamed) - icon_state = "appendixinflamed" - name = "inflamed appendix" - -/obj/item/organ/eyes/removed(var/mob/living/target,var/mob/living/user) - - if(!eye_colour) - eye_colour = list(0,0,0) - - ..() //Make sure target is set so we can steal their eye colour for later. - var/mob/living/carbon/human/H = target - if(istype(H)) - eye_colour = list( - H.r_eyes ? H.r_eyes : 0, - H.g_eyes ? H.g_eyes : 0, - H.b_eyes ? H.b_eyes : 0 - ) - - // Leave bloody red pits behind! - H.r_eyes = 128 - H.g_eyes = 0 - H.b_eyes = 0 - H.update_body() - -/obj/item/organ/proc/replaced(var/mob/living/carbon/human/target,var/datum/organ/external/affected) - - if(!istype(target)) return - - var/datum/reagent/blood/transplant_blood = locate(/datum/reagent/blood) in reagents.reagent_list - if(!transplant_blood) - organ_data.transplant_data = list() - organ_data.transplant_data["species"] = target.species.name - organ_data.transplant_data["blood_type"] = target.dna.b_type - organ_data.transplant_data["blood_DNA"] = target.dna.unique_enzymes - else - organ_data.transplant_data = list() - organ_data.transplant_data["species"] = transplant_blood.data["species"] - organ_data.transplant_data["blood_type"] = transplant_blood.data["blood_type"] - organ_data.transplant_data["blood_DNA"] = transplant_blood.data["blood_DNA"] - - organ_data.organ_holder = null - organ_data.owner = target - target.internal_organs |= organ_data - affected.internal_organs |= organ_data - target.internal_organs_by_name[organ_tag] = organ_data - organ_data.status |= ORGAN_CUT_AWAY - - del(src) - -/obj/item/organ/eyes/replaced(var/mob/living/carbon/human/target) - - // Apply our eye colour to the target. - if(istype(target) && eye_colour) - target.r_eyes = eye_colour[1] - target.g_eyes = eye_colour[2] - target.b_eyes = eye_colour[3] - target.update_body() - ..() - -/obj/item/organ/proc/bitten(mob/user) - - if(robotic) - return - - user << "\blue You take an experimental bite out of \the [src]." - var/datum/reagent/blood/B = locate(/datum/reagent/blood) in reagents.reagent_list - blood_splatter(src,B,1) - - - user.drop_from_inventory(src) - var/obj/item/weapon/reagent_containers/food/snacks/organ/O = new(get_turf(src)) - O.name = name - O.icon_state = dead_icon ? dead_icon : icon_state - - // Pass over the blood. - reagents.trans_to_obj(O, reagents.total_volume) - - if(fingerprints) O.fingerprints = fingerprints.Copy() - if(fingerprintshidden) O.fingerprintshidden = fingerprintshidden.Copy() - if(fingerprintslast) O.fingerprintslast = fingerprintslast - - user.put_in_active_hand(O) - del(src) \ No newline at end of file diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index 103db5c308..15a1398d39 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -102,3944 +102,3 @@ /datum/reagent/proc/reaction_mob(var/mob/target) touch_mob(target) - -/* REAGENTS START HERE */ - -/* Core reagents - the most important ones */ - -/datum/reagent/blood - data = new/list("donor" = null, "viruses" = null, "species" = "Human", "blood_DNA" = null, "blood_type" = null, "blood_colour" = "#A10808", "resistances" = null, "trace_chem" = null, "antibodies" = list()) - name = "Blood" - id = "blood" - reagent_state = LIQUID - metabolism = REM * 5 - color = "#C80000" - - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" - glass_desc = "Are you sure this is tomato juice?" - -/datum/reagent/blood/initialize_data(var/newdata) - ..() - if(data && data["blood_colour"]) - color = data["blood_colour"] - return - -/datum/reagent/blood/get_data() // Just in case you have a reagent that handles data differently. - var/t = data.Copy() - if(t["virus2"]) - var/list/v = t["virus2"] - t["virus2"] = v.Copy() - return t - -/datum/reagent/blood/mix_data(var/newdata, var/newamount) // You have a reagent with data, and new reagent with its own data get added, how do you deal with that? - if(data["viruses"] || newdata["viruses"]) - var/list/mix1 = data["viruses"] - var/list/mix2 = newdata["viruses"] - var/list/to_mix = list() // Stop issues with the list changing during mixing. - for(var/datum/disease/advance/AD in mix1) - to_mix += AD - for(var/datum/disease/advance/AD in mix2) - to_mix += AD - var/datum/disease/advance/AD = Advance_Mix(to_mix) - if(AD) - var/list/preserve = list(AD) - for(var/D in data["viruses"]) - if(!istype(D, /datum/disease/advance)) - preserve += D - data["viruses"] = preserve - -/datum/reagent/blood/touch_turf(var/turf/simulated/T) - if(!istype(T) || volume < 3) - return - if(!data["donor"] || istype(data["donor"], /mob/living/carbon/human)) - blood_splatter(T, src, 1) - else if(istype(data["donor"], /mob/living/carbon/alien)) - var/obj/effect/decal/cleanable/blood/B = blood_splatter(T, src, 1) - if(B) - B.blood_DNA["UNKNOWN DNA STRUCTURE"] = "X*" - -/datum/reagent/blood/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(dose > 5) - M.adjustToxLoss(removed) - if(dose > 15) - M.adjustToxLoss(removed) - -/datum/reagent/blood/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(data && data["viruses"]) - for(var/datum/disease/D in data["viruses"]) - if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) - continue - M.contract_disease(D) - if(data && data["virus2"]) - var/list/vlist = data["virus2"] - if(vlist.len) - for(var/ID in vlist) - var/datum/disease2/disease/V = vlist[ID] - infect_virus2(M, V.getcopy()) - if(data && data["antibodies"]) - M.antibodies |= data["antibodies"] - -/datum/reagent/blood/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.inject_blood(src, volume) - remove_self(volume) - -/datum/reagent/vaccine - name = "Vaccine" - id = "vaccine" - reagent_state = LIQUID - color = "#C81040" - -/datum/reagent/vaccine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(data) - for(var/datum/disease/D in M.viruses) - if(istype(D, /datum/disease/advance)) - var/datum/disease/advance/A = D - if(A.GetDiseaseID() == data) - D.cure() - else - if(D.type == data) - D.cure() - - M.resistances += data - return - -#define WATER_LATENT_HEAT 19000 // How much heat is removed when applied to a hot turf, in J/unit (19000 makes 120 u of water roughly equivalent to 4L) -/datum/reagent/water - name = "Water" - id = "water" - description = "A ubiquitous chemical substance that is composed of hydrogen and oxygen." - reagent_state = LIQUID - color = "#0064C877" - metabolism = REM * 10 - - glass_icon_state = "glass_clear" - glass_name = "glass of water" - glass_desc = "The father of all refreshments." - -/datum/reagent/water/touch_turf(var/turf/simulated/T) - if(!istype(T)) - return - - var/datum/gas_mixture/environment = T.return_air() - var/min_temperature = T0C + 100 // 100C, the boiling point of water - - var/hotspot = (locate(/obj/fire) in T) - if(hotspot && !istype(T, /turf/space)) - var/datum/gas_mixture/lowertemp = T.remove_air(T:air:total_moles) - lowertemp.temperature = max(min(lowertemp.temperature-2000, lowertemp.temperature / 2), 0) - lowertemp.react() - T.assume_air(lowertemp) - qdel(hotspot) - - if (environment && environment.temperature > min_temperature) // Abstracted as steam or something - var/removed_heat = between(0, volume * WATER_LATENT_HEAT, -environment.get_thermal_energy_change(min_temperature)) - environment.add_thermal_energy(-removed_heat) - if (prob(5)) - T.visible_message("The water sizzles as it lands on \the [T]!") - else - if(volume >= 3) - if(T.wet >= 1) - return - T.wet = 1 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") - T.overlays += T.wet_overlay - - spawn(800) // This is terrible and needs to be changed when possible. - if(!T || !istype(T)) - return - if(T.wet >= 2) - return - T.wet = 0 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - -/datum/reagent/water/touch_obj(var/obj/O) - if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube)) - var/obj/item/weapon/reagent_containers/food/snacks/monkeycube/cube = O - if(!cube.wrapped) - cube.Expand() - -/datum/reagent/water/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(istype(M, /mob/living/carbon/slime)) - var/mob/living/carbon/slime/S = M - S.adjustToxLoss(15 * removed) // Babies have 150 health, adults have 200; So, 10 units and 13.5 - if(!S.client) - if(S.Target) // Like cats - S.Target = null - ++S.Discipline - if(dose == removed) - S.visible_message("[S]'s flesh sizzles where the water touches it!", "Your flesh burns in the water!") - var/needed = M.fire_stacks * 10 - if(volume > needed) - M.fire_stacks = 0 - M.ExtinguishMob() - remove_self(needed) - else - M.adjust_fire_stacks(-(volume / 10)) - remove_self(volume) - return - -/datum/reagent/fuel - name = "Welding fuel" - id = "fuel" - description = "Required for welders. Flamable." - reagent_state = LIQUID - color = "#660000" - - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of welder fuel" - glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption." - -/datum/reagent/fuel/touch_turf(var/turf/T) - new /obj/effect/decal/cleanable/liquid_fuel(T, volume) - remove_self(volume) - return - -/datum/reagent/fuel/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjustToxLoss(2 * removed) - -/datum/reagent/fuel/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // Splashing people with welding fuel to make them easy to ignite! - M.adjust_fire_stacks(0.1 * removed) - -/* Basic dispenser chemicals */ - -/datum/reagent/aluminum - name = "Aluminum" - id = "aluminum" - description = "A silvery white and ductile member of the boron group of chemical elements." - reagent_state = SOLID - color = "#A8A8A8" - -/datum/reagent/carbon - name = "Carbon" - id = "carbon" - description = "A chemical element, the builing block of life." - reagent_state = SOLID - color = "#1C1300" - -/datum/reagent/carbon/touch_turf(var/turf/T) - if(!istype(T, /turf/space)) - var/obj/effect/decal/cleanable/dirt/dirtoverlay = locate(/obj/effect/decal/cleanable/dirt, T) - if (!dirtoverlay) - dirtoverlay = new/obj/effect/decal/cleanable/dirt(T) - dirtoverlay.alpha = volume * 30 - else - dirtoverlay.alpha = min(dirtoverlay.alpha + volume * 30, 255) - -/datum/reagent/chlorine - name = "Chlorine" - id = "chlorine" - description = "A chemical element with a characteristic odour." - reagent_state = GAS - color = "#808080" - -/datum/reagent/chlorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.take_organ_damage(1*REM, 0) - -/datum/reagent/chlorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.take_organ_damage(1*REM, 0) - -/datum/reagent/copper - name = "Copper" - id = "copper" - description = "A highly ductile metal." - color = "#6E3B08" - -/datum/reagent/ethanol - name = "Ethanol" //Parent class for all alcoholic reagents. - id = "ethanol" - description = "A well-known alcohol with a variety of applications." - reagent_state = LIQUID - color = "#404030" - var/nutriment_factor = 0 - var/strength = 10 // This is, essentially, units between stages - the lower, the stronger. Less fine tuning, more clarity. - var/toxicity = 1 - - var/druggy = 0 - var/adj_temp = 0 - var/targ_temp = 310 - var/halluci = 0 - - glass_icon_state = "glass_clear" - glass_name = "glass of ethanol" - glass_desc = "A well-known alcohol with a variety of applications." - -/datum/reagent/ethanol/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjust_fire_stacks(removed / 15) - return - -/datum/reagent/ethanol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjustToxLoss(removed * 2 * toxicity) - return - -/datum/reagent/ethanol/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.nutrition += nutriment_factor * removed - - var/strength_mod = 1 - if(alien == IS_SKRELL) - strength_mod *= 5 - if(alien == IS_DIONA) - strength_mod = 0 - - M.add_chemical_effect(CE_ALCOHOL, 1) - - if(dose / strength_mod >= strength) // Early warning - M.make_dizzy(6) // It is decreased at the speed of 3 per tick - if(dose / strength_mod >= strength * 2) // Slurring - M.slurring = max(M.slurring, 30) - if(dose / strength_mod >= strength * 3) // Confusion - walking in random directions - M.confused = max(M.confused, 20) - if(dose / strength_mod >= strength * 4) // Blurry vision - M.eye_blurry = max(M.eye_blurry, 10) - if(dose / strength_mod >= strength * 5) // Drowsyness - periodically falling asleep - M.drowsyness = max(M.drowsyness, 20) - if(dose / strength_mod >= strength * 6) // Toxic dose - M.add_chemical_effect(CE_ALCOHOL_TOXIC, toxicity) - if(dose / strength_mod >= strength * 7) // Pass out - M.paralysis = max(M.paralysis, 20) - M.sleeping = max(M.sleeping, 30) - - if(druggy != 0) - M.druggy = max(M.druggy, druggy) - - if(adj_temp > 0 && M.bodytemperature < targ_temp) // 310 is the normal bodytemp. 310.055 - M.bodytemperature = min(targ_temp, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) - if(adj_temp < 0 && M.bodytemperature > targ_temp) - M.bodytemperature = min(targ_temp, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) - - if(halluci) - M.hallucination = max(M.hallucination, halluci) - -/datum/reagent/ethanol/touch_obj(var/obj/O) - if(istype(O, /obj/item/weapon/paper)) - var/obj/item/weapon/paper/paperaffected = O - paperaffected.clearpaper() - usr << "The solution dissolves the ink on the paper." - return - if(istype(O, /obj/item/weapon/book)) - if(volume < 5) - return - if(istype(O, /obj/item/weapon/book/tome)) - usr << "The solution does nothing. Whatever this is, it isn't normal ink." - return - var/obj/item/weapon/book/affectedbook = O - affectedbook.dat = null - usr << "The solution dissolves the ink on the book." - return - -/datum/reagent/fluorine - name = "Fluorine" - id = "fluorine" - description = "A highly-reactive chemical element." - reagent_state = GAS - color = "#808080" - -/datum/reagent/fluorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjustToxLoss(removed) - -/datum/reagent/fluorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjustToxLoss(removed) - -/datum/reagent/hydrogen - name = "Hydrogen" - id = "hydrogen" - description = "A colorless, odorless, nonmetallic, tasteless, highly combustible diatomic gas." - reagent_state = GAS - color = "#808080" - -/datum/reagent/iron - name = "Iron" - id = "iron" - description = "Pure iron is a metal." - reagent_state = SOLID - color = "#353535" - -/datum/reagent/iron/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - M.add_chemical_effect(CE_BLOODRESTORE, 8 * removed) - -/datum/reagent/lithium - name = "Lithium" - id = "lithium" - description = "A chemical element, used as antidepressant." - reagent_state = SOLID - color = "#808080" - -/datum/reagent/lithium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) - step(M, pick(cardinal)) - if(prob(5)) - M.emote(pick("twitch", "drool", "moan")) - -/datum/reagent/mercury - name = "Mercury" - id = "mercury" - description = "A chemical element." - reagent_state = LIQUID - color = "#484848" - -/datum/reagent/mercury/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) - step(M, pick(cardinal)) - if(prob(5)) - M.emote(pick("twitch", "drool", "moan")) - M.adjustBrainLoss(2) - -/datum/reagent/nitrogen - name = "Nitrogen" - id = "nitrogen" - description = "A colorless, odorless, tasteless gas." - reagent_state = GAS - color = "#808080" - -/datum/reagent/nitrogen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_VOX) - M.adjustOxyLoss(-removed * 3) - -/datum/reagent/oxygen - name = "Oxygen" - id = "oxygen" - description = "A colorless, odorless gas." - reagent_state = GAS - color = "#808080" - -/datum/reagent/oxygen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_VOX) - M.adjustToxLoss(removed * 3) - -/datum/reagent/phosphorus - name = "Phosphorus" - id = "phosphorus" - description = "A chemical element, the backbone of biological energy carriers." - reagent_state = SOLID - color = "#832828" - -/datum/reagent/potassium - name = "Potassium" - id = "potassium" - description = "A soft, low-melting solid that can easily be cut with a knife. Reacts violently with water." - reagent_state = SOLID - color = "#A0A0A0" - -/datum/reagent/radium - name = "Radium" - id = "radium" - description = "Radium is an alkaline earth metal. It is extremely radioactive." - reagent_state = SOLID - color = "#C7C7C7" - -/datum/reagent/radium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.apply_effect(10 * removed, IRRADIATE, 0) // Radium may increase your chances to cure a disease - if(M.virus2.len) - for(var/ID in M.virus2) - var/datum/disease2/disease/V = M.virus2[ID] - if(prob(5)) - M.antibodies |= V.antigen - if(prob(50)) - M.radiation += 50 // curing it that way may kill you instead - var/absorbed = 0 - var/obj/item/organ/diona/nutrients/rad_organ = locate() in M.internal_organs - if(rad_organ && !rad_organ.is_broken()) - absorbed = 1 - if(!absorbed) - M.adjustToxLoss(100) - -/datum/reagent/radium/touch_turf(var/turf/T) - if(volume >= 3) - if(!istype(T, /turf/space)) - var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) - if(!glow) - new /obj/effect/decal/cleanable/greenglow(T) - return - -/datum/reagent/acid - name = "Sulphuric acid" - id = "sacid" - description = "A very corrosive mineral acid with the molecular formula H2SO4." - reagent_state = LIQUID - color = "#DB5008" - metabolism = REM * 2 - touch_met = 50 // It's acid! - var/power = 5 - var/meltdose = 10 // How much is needed to melt - -/datum/reagent/acid/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.take_organ_damage(0, removed * power * 2) - -/datum/reagent/acid/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // This is the most interesting - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.head) - if(H.head.unacidable) - H << "Your [H.head] protects you from the acid." - remove_self(volume) - return - else if(removed > meltdose) - H << "Your [H.head] melts away!" - qdel(H.head) - H.update_inv_head(1) - H.update_hair(1) - removed -= meltdose - if(removed <= 0) - return - - if(H.wear_mask) - if(H.wear_mask.unacidable) - H << "Your [H.wear_mask] protects you from the acid." - remove_self(volume) - return - else if(removed > meltdose) - H << "Your [H.wear_mask] melts away!" - qdel(H.wear_mask) - H.update_inv_wear_mask(1) - H.update_hair(1) - removed -= meltdose - if(removed <= 0) - return - - if(H.glasses) - if(H.glasses.unacidable) - H << "Your [H.glasses] partially protect you from the acid!" - removed /= 2 - else if(removed > meltdose) - H << "Your [H.glasses] melt away!" - qdel(H.glasses) - H.update_inv_glasses(1) - removed -= meltdose / 2 - if(removed <= 0) - return - - if(volume < meltdose) // Not enough to melt anything - M.take_organ_damage(removed * power * 0.2) - return - if(!M.unacidable && removed > 0) - if(istype(M, /mob/living/carbon/human) && volume >= meltdose) - var/mob/living/carbon/human/H = M - var/obj/item/organ/external/affecting = H.get_organ("head") - if(affecting) - if(affecting.take_damage(0, removed * power * 0.1)) - H.UpdateDamageIcon() - if(prob(100 * removed / meltdose)) // Applies disfigurement - if (!(H.species && (H.species.flags & NO_PAIN))) - H.emote("scream") - H.status_flags |= DISFIGURED - else - M.take_organ_damage(0, removed * power * 0.1) // Balance. The damage is instant, so it's weaker. 10 units -> 5 damage, double for pacid. 120 units beaker could deal 60, but a) it's burn, which is not as dangerous, b) it's a one-use weapon, c) missing with it will splash it over the ground and d) clothes give some protection, so not everything will hit - -/datum/reagent/acid/touch_obj(var/obj/O) - if(O.unacidable) - return - if((istype(O, /obj/item) || istype(O, /obj/effect/plant)) && (volume > meltdose)) - var/obj/effect/decal/cleanable/molten_item/I = new/obj/effect/decal/cleanable/molten_item(O.loc) - I.desc = "Looks like this was \an [O] some time ago." - for(var/mob/M in viewers(5, O)) - M << "\The [O] melts." - qdel(O) - remove_self(meltdose) // 10 units of acid will not melt EVERYTHING on the tile - -/datum/reagent/silicon - name = "Silicon" - id = "silicon" - description = "A tetravalent metalloid, silicon is less reactive than its chemical analog carbon." - reagent_state = SOLID - color = "#A8A8A8" - -/datum/reagent/sodium - name = "Sodium" - id = "sodium" - description = "A chemical element, readily reacts with water." - reagent_state = SOLID - color = "#808080" - -/datum/reagent/sugar - name = "Sugar" - id = "sugar" - description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." - reagent_state = SOLID - color = "#FFFFFF" - glass_icon_state = "iceglass" - glass_name = "glass of sugar" - glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." - -/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.nutrition += removed * 3 - -/datum/reagent/sulfur - name = "Sulfur" - id = "sulfur" - description = "A chemical element with a pungent smell." - reagent_state = SOLID - color = "#BF8C00" - -/datum/reagent/tungsten - name = "Tungsten" - id = "tungsten" - description = "A chemical element, and a strong oxidising agent." - reagent_state = SOLID - color = "#DCDCDC" - -/* General medicine */ - -/datum/reagent/inaprovaline - name = "Inaprovaline" - id = "inaprovaline" - description = "Inaprovaline is a synaptic stimulant and cardiostimulant. Commonly used to stabilize patients." - reagent_state = LIQUID - color = "#00BFFF" - overdose = REAGENTS_OVERDOSE * 2 - metabolism = REM * 0.5 - scannable = 1 - -/datum/reagent/inaprovaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - M.add_chemical_effect(CE_STABLE) - M.add_chemical_effect(CE_PAINKILLER, 25) - -/datum/reagent/bicaridine - name = "Bicaridine" - id = "bicaridine" - description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma." - reagent_state = LIQUID - color = "#BF0000" - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/bicaridine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - M.heal_organ_damage(6 * removed, 0) - -/datum/reagent/kelotane - name = "Kelotane" - id = "kelotane" - description = "Kelotane is a drug used to treat burns." - reagent_state = LIQUID - color = "#FFA800" - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/kelotane/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - M.heal_organ_damage(0, 6 * removed) - -/datum/reagent/dermaline - name = "Dermaline" - id = "dermaline" - description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue." - reagent_state = LIQUID - color = "#FF8000" - overdose = REAGENTS_OVERDOSE * 0.5 - scannable = 1 - -/datum/reagent/dermaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - M.heal_organ_damage(0, 12 * removed) - -/datum/reagent/dylovene - name = "Dylovene" - id = "anti_toxin" - description = "Dylovene is a broad-spectrum antitoxin." - reagent_state = LIQUID - color = "#00A000" - scannable = 1 - -/datum/reagent/dylovene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - M.drowsyness = max(0, M.drowsyness - 6 * removed) - M.hallucination = max(0, M.hallucination - 9 * removed) - M.adjustToxLoss(-4 * removed) - -/datum/reagent/dexalin - name = "Dexalin" - id = "dexalin" - description = "Dexalin is used in the treatment of oxygen deprivation." - reagent_state = LIQUID - color = "#0080FF" - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_VOX) - M.adjustToxLoss(removed * 6) - else if(alien != IS_DIONA) - M.adjustOxyLoss(-15 * removed) - - holder.remove_reagent("lexorin", 2 * removed) - -/datum/reagent/dexalinp - name = "Dexalin Plus" - id = "dexalinp" - description = "Dexalin Plus is used in the treatment of oxygen deprivation. It is highly effective." - reagent_state = LIQUID - color = "#0040FF" - overdose = REAGENTS_OVERDOSE * 0.5 - scannable = 1 - -/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_VOX) - M.adjustToxLoss(removed * 9) - else if(alien != IS_DIONA) - M.adjustOxyLoss(-300 * removed) - - holder.remove_reagent("lexorin", 3 * removed) - -/datum/reagent/tricordrazine - name = "Tricordrazine" - id = "tricordrazine" - description = "Tricordrazine is a highly potent stimulant, originally derived from cordrazine. Can be used to treat a wide range of injuries." - reagent_state = LIQUID - color = "#8040FF" - scannable = 1 - -/datum/reagent/tricordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien != IS_DIONA) - M.adjustOxyLoss(-6 * removed) - M.heal_organ_damage(3 * removed, 3 * removed) - M.adjustToxLoss(-3 * removed) - -/datum/reagent/cryoxadone - name = "Cryoxadone" - id = "cryoxadone" - description = "A chemical mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 170K for it to metabolise correctly." - reagent_state = LIQUID - color = "#8080FF" - metabolism = REM * 0.5 - scannable = 1 - -/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(M.bodytemperature < 170) - M.adjustCloneLoss(-10 * removed) - M.adjustOxyLoss(-10 * removed) - M.heal_organ_damage(10 * removed, 10 * removed) - M.adjustToxLoss(-10 * removed) - -/datum/reagent/clonexadone - name = "Clonexadone" - id = "clonexadone" - description = "A liquid compound similar to that used in the cloning process. Can be used to 'finish' the cloning process when used in conjunction with a cryo tube." - reagent_state = LIQUID - color = "#80BFFF" - metabolism = REM * 0.5 - scannable = 1 - -/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(M.bodytemperature < 170) - M.adjustCloneLoss(-30 * removed) - M.adjustOxyLoss(-3 * removed) - M.heal_organ_damage(30 * removed, 30 * removed) - M.adjustToxLoss(-30 * removed) - -/* Painkillers */ - -/datum/reagent/paracetamol - name = "Paracetamol" - id = "paracetamol" - description = "Most probably know this as Tylenol, but this chemical is a mild, simple painkiller." - reagent_state = LIQUID - color = "#C8A5DC" - overdose = 60 - scannable = 1 - metabolism = 0.02 - -/datum/reagent/paracetamol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.add_chemical_effect(CE_PAINKILLER, 50) - -/datum/reagent/paracetamol/overdose(var/mob/living/carbon/M, var/alien) - ..() - M.hallucination = max(M.hallucination, 2) - -/datum/reagent/tramadol - name = "Tramadol" - id = "tramadol" - description = "A simple, yet effective painkiller." - reagent_state = LIQUID - color = "#CB68FC" - overdose = 30 - scannable = 1 - metabolism = 0.02 - -/datum/reagent/tramadol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.add_chemical_effect(CE_PAINKILLER, 80) - -/datum/reagent/tramadol/overdose(var/mob/living/carbon/M, var/alien) - ..() - M.hallucination = max(M.hallucination, 2) - -/datum/reagent/oxycodone - name = "Oxycodone" - id = "oxycodone" - description = "An effective and very addictive painkiller." - reagent_state = LIQUID - color = "#800080" - overdose = 20 - metabolism = 0.02 - -/datum/reagent/oxycodone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.add_chemical_effect(CE_PAINKILLER, 200) - -/datum/reagent/oxycodone/overdose(var/mob/living/carbon/M, var/alien) - ..() - M.druggy = max(M.druggy, 10) - M.hallucination = max(M.hallucination, 3) - -/* Other medicine */ - -/datum/reagent/synaptizine - name = "Synaptizine" - id = "synaptizine" - description = "Synaptizine is used to treat various diseases." - reagent_state = LIQUID - color = "#99CCFF" - metabolism = REM * 0.05 - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/synaptizine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.drowsyness = max(M.drowsyness - 5, 0) - M.AdjustParalysis(-1) - M.AdjustStunned(-1) - M.AdjustWeakened(-1) - holder.remove_reagent("mindbreaker", 5) - M.hallucination = max(0, M.hallucination - 10) - M.adjustToxLoss(5 * removed) // It used to be incredibly deadly due to an oversight. Not anymore! - M.add_chemical_effect(CE_PAINKILLER, 40) - -/datum/reagent/alkysine - name = "Alkysine" - id = "alkysine" - description = "Alkysine is a drug used to lessen the damage to neurological tissue after a catastrophic injury. Can heal brain tissue." - reagent_state = LIQUID - color = "#FFFF66" - metabolism = REM * 0.25 - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/alkysine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.adjustBrainLoss(-30 * removed) - M.add_chemical_effect(CE_PAINKILLER, 10) - -/datum/reagent/imidazoline - name = "Imidazoline" - id = "imidazoline" - description = "Heals eye damage" - reagent_state = LIQUID - color = "#C8A5DC" - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/imidazoline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.eye_blurry = max(M.eye_blurry - 5, 0) - M.eye_blind = max(M.eye_blind - 5, 0) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"] - if(E && istype(E)) - if(E.damage > 0) - E.damage = max(E.damage - 5 * removed, 0) - -/datum/reagent/peridaxon - name = "Peridaxon" - id = "peridaxon" - description = "Used to encourage recovery of internal organs and nervous systems. Medicate cautiously." - reagent_state = LIQUID - color = "#561EC3" - overdose = 10 - scannable = 1 - -/datum/reagent/peridaxon/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - - for(var/obj/item/organ/I in H.internal_organs) - if((I.damage > 0) && (I.robotic != 2)) //Peridaxon heals only non-robotic organs - I.damage = max(I.damage - removed, 0) - -/datum/reagent/ryetalyn - name = "Ryetalyn" - id = "ryetalyn" - description = "Ryetalyn can cure all genetic abnomalities via a catalytic process." - reagent_state = SOLID - color = "#004000" - overdose = REAGENTS_OVERDOSE - -/datum/reagent/ryetalyn/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - var/needs_update = M.mutations.len > 0 - - M.mutations = list() - M.disabilities = 0 - M.sdisabilities = 0 - - // Might need to update appearance for hulk etc. - if(needs_update && ishuman(M)) - var/mob/living/carbon/human/H = M - H.update_mutations() - -/datum/reagent/hyperzine - name = "Hyperzine" - id = "hyperzine" - description = "Hyperzine is a highly effective, long lasting, muscle stimulant." - reagent_state = LIQUID - color = "#FF3300" - metabolism = REM * 0.15 - overdose = REAGENTS_OVERDOSE * 0.5 - -/datum/reagent/hyperzine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(prob(5)) - M.emote(pick("twitch", "blink_r", "shiver")) - M.add_chemical_effect(CE_SPEEDBOOST, 1) - -/datum/reagent/ethylredoxrazine - name = "Ethylredoxrazine" - id = "ethylredoxrazine" - description = "A powerful oxidizer that reacts with ethanol." - reagent_state = SOLID - color = "#605048" - overdose = REAGENTS_OVERDOSE - -/datum/reagent/ethylredoxrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.dizziness = 0 - M.drowsyness = 0 - M.stuttering = 0 - M.confused = 0 - if(M.ingested) - for(var/datum/reagent/R in M.ingested) - if(istype(R, /datum/reagent/ethanol)) - R.dose = max(R.dose - removed * 5, 0) - -/datum/reagent/hyronalin - name = "Hyronalin" - id = "hyronalin" - description = "Hyronalin is a medicinal drug used to counter the effect of radiation poisoning." - reagent_state = LIQUID - color = "#408000" - metabolism = REM * 0.25 - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/hyronalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.radiation = max(M.radiation - 30 * removed, 0) - -/datum/reagent/arithrazine - name = "Arithrazine" - id = "arithrazine" - description = "Arithrazine is an unstable medication used for the most extreme cases of radiation poisoning." - reagent_state = LIQUID - color = "#008000" - metabolism = REM * 0.25 - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/arithrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.radiation = max(M.radiation - 70 * removed, 0) - M.adjustToxLoss(-10 * removed) - if(prob(60)) - M.take_organ_damage(4 * removed, 0) - -/datum/reagent/spaceacillin - name = "Spaceacillin" - id = "spaceacillin" - description = "An all-purpose antiviral agent." - reagent_state = LIQUID - color = "#C1C1C1" - metabolism = REM * 0.05 - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/sterilizine - name = "Sterilizine" - id = "sterilizine" - description = "Sterilizes wounds in preparation for surgery." - reagent_state = LIQUID - color = "#C8A5DC" - touch_met = 5 - -/datum/reagent/sterilizine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.germ_level -= min(removed*20, M.germ_level) - -/datum/reagent/sterilizine/touch_obj(var/obj/O) - O.germ_level -= min(volume*20, O.germ_level) - -/datum/reagent/sterilizine/touch_turf(var/turf/T) - T.germ_level -= min(volume*20, T.germ_level) - -/datum/reagent/leporazine - name = "Leporazine" - id = "leporazine" - description = "Leporazine can be use to stabilize an individuals body temperature." - reagent_state = LIQUID - color = "#C8A5DC" - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/leporazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(M.bodytemperature > 310) - M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) - else if(M.bodytemperature < 311) - M.bodytemperature = min(310, M.bodytemperature + (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) - -/* Antidepressants */ - -#define ANTIDEPRESSANT_MESSAGE_DELAY 5*60*10 - -/datum/reagent/methylphenidate - name = "Methylphenidate" - id = "methylphenidate" - description = "Improves the ability to concentrate." - reagent_state = LIQUID - color = "#BF80BF" - metabolism = 0.01 - data = 0 - -/datum/reagent/methylphenidate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(volume <= 0.1 && data != -1) - data = -1 - M << "You lose focus..." - else - if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) - data = world.time - M << "Your mind feels focused and undivided." - -/datum/reagent/citalopram - name = "Citalopram" - id = "citalopram" - description = "Stabilizes the mind a little." - reagent_state = LIQUID - color = "#FF80FF" - metabolism = 0.01 - data = 0 - -/datum/reagent/citalopram/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(volume <= 0.1 && data != -1) - data = -1 - M << "Your mind feels a little less stable..." - else - if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) - data = world.time - M << "Your mind feels stable... a little stable." - -/datum/reagent/paroxetine - name = "Paroxetine" - id = "paroxetine" - description = "Stabilizes the mind greatly, but has a chance of adverse effects." - reagent_state = LIQUID - color = "#FF80BF" - metabolism = 0.01 - data = 0 - -/datum/reagent/paroxetine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(volume <= 0.1 && data != -1) - data = -1 - M << "Your mind feels much less stable..." - else - if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) - data = world.time - if(prob(90)) - M << "Your mind feels much more stable." - else - M << "Your mind breaks apart..." - M.hallucination += 200 - -/* Toxins, poisons, venoms */ -/datum/reagent/toxin - name = "Toxin" - id = "toxin" - description = "A toxic chemical." - reagent_state = LIQUID - color = "#CF3600" - metabolism = REM * 0.05 // 0.01 by default. They last a while and slowly kill you. - var/strength = 4 // How much damage it deals per unit - -/datum/reagent/toxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(strength && alien != IS_DIONA) - M.adjustToxLoss(strength * removed) - -/datum/reagent/toxin/plasticide - name = "Plasticide" - id = "plasticide" - description = "Liquid plastic, do not eat." - reagent_state = LIQUID - color = "#CF3600" - strength = 5 - -/datum/reagent/toxin/amatoxin - name = "Amatoxin" - id = "amatoxin" - description = "A powerful poison derived from certain species of mushroom." - reagent_state = LIQUID - color = "#792300" - strength = 10 - -/datum/reagent/toxin/carpotoxin - name = "Carpotoxin" - id = "carpotoxin" - description = "A deadly neurotoxin produced by the dreaded space carp." - reagent_state = LIQUID - color = "#003333" - strength = 10 - -/datum/reagent/toxin/phoron - name = "Phoron" - id = "phoron" - description = "Phoron in its liquid form." - reagent_state = LIQUID - color = "#9D14DB" - strength = 30 - -/datum/reagent/toxin/phoron/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.adjust_fire_stacks(removed / 5) - -/datum/reagent/toxin/phoron/touch_turf(var/turf/simulated/T) - if(!istype(T)) - return - T.assume_gas("volatile_fuel", volume, T20C) - remove_self(volume) - -/datum/reagent/toxin/cyanide //Fast and Lethal - name = "Cyanide" - id = "cyanide" - description = "A highly toxic chemical." - reagent_state = LIQUID - color = "#CF3600" - strength = 20 - metabolism = REM * 2 - -/datum/reagent/toxin/cyanide/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.adjustOxyLoss(20 * removed) - M.sleeping += 1 - -/datum/reagent/toxin/potassium_chloride - name = "Potassium Chloride" - id = "potassium_chloride" - description = "A delicious salt that stops the heart when injected into cardiac muscle." - reagent_state = SOLID - color = "#FFFFFF" - strength = 0 - overdose = REAGENTS_OVERDOSE - -/datum/reagent/toxin/potassium_chloride/overdose(var/mob/living/carbon/M, var/alien) - ..() - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.stat != 1) - if(H.losebreath >= 10) - H.losebreath = max(10, H.losebreath - 10) - H.adjustOxyLoss(2) - H.Weaken(10) - -/datum/reagent/toxin/potassium_chlorophoride - name = "Potassium Chlorophoride" - id = "potassium_chlorophoride" - description = "A specific chemical based on Potassium Chloride to stop the heart for surgery. Not safe to eat!" - reagent_state = SOLID - color = "#FFFFFF" - strength = 10 - overdose = 20 - -/datum/reagent/toxin/potassium_chlorophoride/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.stat != 1) - if(H.losebreath >= 10) - H.losebreath = max(10, M.losebreath-10) - H.adjustOxyLoss(2) - H.Weaken(10) - -/datum/reagent/toxin/zombiepowder - name = "Zombie Powder" - id = "zombiepowder" - description = "A strong neurotoxin that puts the subject into a death-like state." - reagent_state = SOLID - color = "#669900" - metabolism = REM - strength = 3 - -/datum/reagent/toxin/zombiepowder/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.status_flags |= FAKEDEATH - M.adjustOxyLoss(3 * removed) - M.Weaken(10) - M.silent = max(M.silent, 10) - M.tod = worldtime2text() - -/datum/reagent/toxin/zombiepowder/Destroy() - if(holder && holder.my_atom && ismob(holder.my_atom)) - var/mob/M = holder.my_atom - M.status_flags &= ~FAKEDEATH - ..() - -/datum/reagent/toxin/fertilizer //Reagents used for plant fertilizers. - name = "fertilizer" - id = "fertilizer" - description = "A chemical mix good for growing plants with." - reagent_state = LIQUID - strength = 0.5 // It's not THAT poisonous. - color = "#664330" - -/datum/reagent/toxin/fertilizer/eznutrient - name = "EZ Nutrient" - id = "eznutrient" - -/datum/reagent/toxin/fertilizer/left4zed - name = "Left-4-Zed" - id = "left4zed" - -/datum/reagent/toxin/fertilizer/robustharvest - name = "Robust Harvest" - id = "robustharvest" - -/datum/reagent/toxin/plantbgone - name = "Plant-B-Gone" - id = "plantbgone" - description = "A harmful toxic mixture to kill plantlife. Do not ingest!" - reagent_state = LIQUID - color = "#49002E" - strength = 4 - -/datum/reagent/toxin/plantbgone/touch_turf(var/turf/T) - if(istype(T, /turf/simulated/wall)) - var/turf/simulated/wall/W = T - if(W.rotting) - W.rotting = 0 - for(var/obj/effect/E in W) - if(E.name == "Wallrot") - qdel(E) - - W.visible_message("The fungi are completely dissolved by the solution!") - -/datum/reagent/toxin/plantbgone/touch_obj(var/obj/O, var/volume) - if(istype(O, /obj/effect/alien/weeds/)) - var/obj/effect/alien/weeds/alien_weeds = O - alien_weeds.health -= rand(15, 35) - alien_weeds.healthcheck() - else if(istype(O, /obj/effect/plant)) - qdel(O) - -/datum/reagent/toxin/plantbgone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - M.adjustToxLoss(50 * removed) - -/datum/reagent/toxin/plantbgone/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - M.adjustToxLoss(50 * removed) - -/datum/reagent/acid/polyacid - name = "Polytrinic acid" - id = "pacid" - description = "Polytrinic acid is a an extremely corrosive chemical substance." - reagent_state = LIQUID - color = "#8E18A9" - power = 10 - meltdose = 4 - -/datum/reagent/lexorin - name = "Lexorin" - id = "lexorin" - description = "Lexorin temporarily stops respiration. Causes tissue damage." - reagent_state = LIQUID - color = "#C8A5DC" - overdose = REAGENTS_OVERDOSE - -/datum/reagent/lexorin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.take_organ_damage(3 * removed, 0) - if(M.losebreath < 15) - M.losebreath++ - -/datum/reagent/mutagen - name = "Unstable mutagen" - id = "mutagen" - description = "Might cause unpredictable mutations. Keep away from children." - reagent_state = LIQUID - color = "#13BC5E" - -/datum/reagent/mutagen/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(prob(33)) - affect_blood(M, alien, removed) - -/datum/reagent/mutagen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(prob(67)) - affect_blood(M, alien, removed) - -/datum/reagent/mutagen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(M.dna) - if(prob(removed * 0.1)) // Approx. one mutation per 10 injected/20 ingested/30 touching units - randmuti(M) - if(prob(98)) - randmutb(M) - else - randmutg(M) - domutcheck(M, null) - M.UpdateAppearance() - M.apply_effect(10 * removed, IRRADIATE, 0) - -/datum/reagent/slimejelly - name = "Slime Jelly" - id = "slimejelly" - description = "A gooey semi-liquid produced from one of the deadliest lifeforms in existence. SO REAL." - reagent_state = LIQUID - color = "#801E28" - -/datum/reagent/slimejelly/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(prob(10)) - M << "Your insides are burning!" - M.adjustToxLoss(rand(100, 300) * removed) - else if(prob(40)) - M.heal_organ_damage(25 * removed, 0) - -/datum/reagent/soporific - name = "Soporific" - id = "stoxin" - description = "An effective hypnotic used to treat insomnia." - reagent_state = LIQUID - color = "#009CA8" - metabolism = REM * 0.5 - overdose = REAGENTS_OVERDOSE - -/datum/reagent/soporific/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(dose < 1) - if(dose == metabolism * 2 || prob(5)) - M.emote("yawn") - else if(dose < 1.5) - M.eye_blurry = max(M.eye_blurry, 10) - else if(dose < 5) - if(prob(50)) - M.Weaken(2) - M.drowsyness = max(M.drowsyness, 20) - else - M.sleeping = max(M.sleeping, 20) - M.drowsyness = max(M.drowsyness, 60) - -/datum/reagent/chloralhydrate - name = "Chloral Hydrate" - id = "chloralhydrate" - description = "A powerful sedative." - reagent_state = SOLID - color = "#000067" - metabolism = REM * 0.5 - overdose = REAGENTS_OVERDOSE * 0.5 - -/datum/reagent/chloralhydrate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(dose == metabolism) - M.confused += 2 - M.drowsyness += 2 - else if(dose < 2) - M.Weaken(30) - M.eye_blurry = max(M.eye_blurry, 10) - else - M.sleeping = max(M.sleeping, 30) - - if(dose > 1) - M.adjustToxLoss(removed) - -/datum/reagent/chloralhydrate/beer2 //disguised as normal beer for use by emagged brobots - name = "Beer" - id = "beer2" - description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong. - reagent_state = LIQUID - color = "#664300" - - glass_icon_state = "beerglass" - glass_name = "glass of beer" - glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) - -/* Drugs */ - -/datum/reagent/space_drugs - name = "Space drugs" - id = "space_drugs" - description = "An illegal chemical compound used as drug." - reagent_state = LIQUID - color = "#60A584" - metabolism = REM * 0.5 - overdose = REAGENTS_OVERDOSE - -/datum/reagent/space_drugs/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.druggy = max(M.druggy, 15) - if(prob(10) && isturf(M.loc) && !istype(M.loc, /turf/space) && M.canmove && !M.restrained()) - step(M, pick(cardinal)) - if(prob(7)) - M.emote(pick("twitch", "drool", "moan", "giggle")) - -/datum/reagent/serotrotium - name = "Serotrotium" - id = "serotrotium" - description = "A chemical compound that promotes concentrated production of the serotonin neurotransmitter in humans." - reagent_state = LIQUID - color = "#202040" - metabolism = REM * 0.25 - overdose = REAGENTS_OVERDOSE - -/datum/reagent/serotrotium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(prob(7)) - M.emote(pick("twitch", "drool", "moan", "gasp")) - return - -/datum/reagent/cryptobiolin - name = "Cryptobiolin" - id = "cryptobiolin" - description = "Cryptobiolin causes confusion and dizzyness." - reagent_state = LIQUID - color = "#000055" - metabolism = REM * 0.5 - overdose = REAGENTS_OVERDOSE - -/datum/reagent/cryptobiolin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.make_dizzy(4) - M.confused = max(M.confused, 20) - -/datum/reagent/impedrezene - name = "Impedrezene" - id = "impedrezene" - description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions." - reagent_state = LIQUID - color = "#C8A5DC" - overdose = REAGENTS_OVERDOSE - -/datum/reagent/impedrezene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.jitteriness = max(M.jitteriness - 5, 0) - if(prob(80)) - M.adjustBrainLoss(3 * removed) - if(prob(50)) - M.drowsyness = max(M.drowsyness, 3) - if(prob(10)) - M.emote("drool") - -/datum/reagent/mindbreaker - name = "Mindbreaker Toxin" - id = "mindbreaker" - description = "A powerful hallucinogen, it can cause fatal effects in users." - reagent_state = LIQUID - color = "#B31008" - metabolism = REM * 0.25 - overdose = REAGENTS_OVERDOSE - -/datum/reagent/mindbreaker/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.hallucination = max(M.hallucination, 100) - -/datum/reagent/psilocybin - name = "Psilocybin" - id = "psilocybin" - description = "A strong psycotropic derived from certain species of mushroom." - color = "#E700E7" - overdose = REAGENTS_OVERDOSE - metabolism = REM * 0.5 - -/datum/reagent/psilocybin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.druggy = max(M.druggy, 30) - if(dose < 1) - M.stuttering = max(M.stuttering, 3) - M.make_dizzy(5) - if(prob(10)) - M.emote(pick("twitch", "giggle")) - else if(dose < 2) - M.stuttering = max(M.stuttering, 3) - M.make_jittery(10) - M.make_dizzy(10) - M.druggy = max(M.druggy, 35) - if(prob(20)) - M.emote(pick("twitch","giggle")) - else - M.stuttering = max(M.stuttering, 3) - M.make_jittery(20) - M.make_dizzy(20) - M.druggy = max(M.druggy, 40) - if(prob(30)) - M.emote(pick("twitch", "giggle")) - -/datum/reagent/nicotine - name = "Nicotine" - id = "nicotine" - description = "A highly addictive stimulant extracted from the tobacco plant." - reagent_state = LIQUID - color = "#181818" - -/* Transformations */ - -/datum/reagent/slimetoxin - name = "Mutation Toxin" - id = "mutationtoxin" - description = "A corruptive toxin produced by slimes." - reagent_state = LIQUID - color = "#13BC5E" - -/datum/reagent/slimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.species.name != "Slime") - M << "Your flesh rapidly mutates!" - H.set_species("Slime") - -/datum/reagent/aslimetoxin - name = "Advanced Mutation Toxin" - id = "amutationtoxin" - description = "An advanced corruptive toxin produced by slimes." - reagent_state = LIQUID - color = "#13BC5E" - -/datum/reagent/aslimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) // TODO: check if there's similar code anywhere else - if(M.monkeyizing) - return - M << "Your flesh rapidly mutates!" - M.monkeyizing = 1 - M.canmove = 0 - M.icon = null - M.overlays.Cut() - M.invisibility = 101 - for(var/obj/item/W in M) - if(istype(W, /obj/item/weapon/implant)) //TODO: Carn. give implants a dropped() or something - qdel(W) - continue - W.layer = initial(W.layer) - W.loc = M.loc - W.dropped(M) - var/mob/living/carbon/slime/new_mob = new /mob/living/carbon/slime(M.loc) - new_mob.a_intent = "hurt" - new_mob.universal_speak = 1 - if(M.mind) - M.mind.transfer_to(new_mob) - else - new_mob.key = M.key - qdel(M) - -/datum/reagent/nanites - name = "Nanomachines" - id = "nanites" - description = "Microscopic construction robots." - reagent_state = LIQUID - color = "#535E66" - -/datum/reagent/nanites/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(prob(10)) - M.contract_disease(new /datum/disease/robotic_transformation(0), 1) - -/datum/reagent/nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.contract_disease(new /datum/disease/robotic_transformation(0), 1) - -/datum/reagent/xenomicrobes - name = "Xenomicrobes" - id = "xenomicrobes" - description = "Microbes with an entirely alien cellular structure." - reagent_state = LIQUID - color = "#535E66" - -/datum/reagent/xenomicrobes/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(prob(10)) - M.contract_disease(new /datum/disease/xeno_transformation(0), 1) - -/datum/reagent/xenomicrobes/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.contract_disease(new /datum/disease/xeno_transformation(0), 1) - -/* Food */ - -/datum/reagent/nutriment - name = "Nutriment" - id = "nutriment" - description = "All the vitamins, minerals, and carbohydrates the body needs in pure form." - reagent_state = SOLID - metabolism = REM * 4 - var/nutriment_factor = 30 // Per unit - var/injectable = 0 - color = "#664330" - -/datum/reagent/nutriment/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(!injectable) - M.adjustToxLoss(0.1 * removed) - return - affect_ingest(M, alien, removed) - -/datum/reagent/nutriment/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.heal_organ_damage(0.5 * removed, 0) - M.nutrition += nutriment_factor * removed // For hunger and fatness - M.add_chemical_effect(CE_BLOODRESTORE, 4 * removed) - -/datum/reagent/nutriment/protein // Bad for Skrell! - name = "animal protein" - id = "protein" - color = "#440000" - -/datum/reagent/nutriment/protein/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien && alien == IS_SKRELL) - M.adjustToxLoss(0.5 * removed) - return - ..() - -/datum/reagent/nutriment/egg // Also bad for skrell. Not a child of protein because it might mess up, not sure. - name = "egg yolk" - id = "egg" - color = "#FFFFAA" - -/datum/reagent/nutriment/egg/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien && alien == IS_SKRELL) - M.adjustToxLoss(0.5) - return - ..() - -/datum/reagent/nutriment/flour - name = "flour" - id = "flour" - description = "This is what you rub all over yourself to pretend to be a ghost." - reagent_state = SOLID - nutriment_factor = 1 - color = "#FFFFFF" - -/datum/reagent/nutriment/flour/touch_turf(var/turf/simulated/T) - if(!istype(T, /turf/space)) - new /obj/effect/decal/cleanable/flour(T) - -/datum/reagent/nutriment/coco - name = "Coco Powder" - id = "coco" - description = "A fatty, bitter paste made from coco beans." - reagent_state = SOLID - nutriment_factor = 5 - color = "#302000" - -/datum/reagent/nutriment/soysauce - name = "Soysauce" - id = "soysauce" - description = "A salty sauce made from the soy plant." - reagent_state = LIQUID - nutriment_factor = 2 - color = "#792300" - -/datum/reagent/nutriment/ketchup - name = "Ketchup" - id = "ketchup" - description = "Ketchup, catsup, whatever. It's tomato paste." - reagent_state = LIQUID - nutriment_factor = 5 - color = "#731008" - -/datum/reagent/nutriment/rice - name = "Rice" - id = "rice" - description = "Enjoy the great taste of nothing." - reagent_state = SOLID - nutriment_factor = 1 - color = "#FFFFFF" - -/datum/reagent/nutriment/cherryjelly - name = "Cherry Jelly" - id = "cherryjelly" - description = "Totally the best. Only to be spread on foods with excellent lateral symmetry." - reagent_state = LIQUID - nutriment_factor = 1 - color = "#801E28" - -/datum/reagent/nutriment/cornoil - name = "Corn Oil" - id = "cornoil" - description = "An oil derived from various types of corn." - reagent_state = LIQUID - nutriment_factor = 20 - color = "#302000" - -/datum/reagent/nutriment/cornoil/touch_turf(var/turf/simulated/T) - if(!istype(T)) - return - - var/hotspot = (locate(/obj/fire) in T) - if(hotspot && !istype(T, /turf/space)) - var/datum/gas_mixture/lowertemp = T.remove_air(T:air:total_moles) - lowertemp.temperature = max(min(lowertemp.temperature-2000, lowertemp.temperature / 2), 0) - lowertemp.react() - T.assume_air(lowertemp) - qdel(hotspot) - - if(volume >= 3) - if(T.wet >= 1) - return - T.wet = 1 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") - T.overlays += T.wet_overlay - - spawn(800) // This is terrible and needs to be changed when possible. - if(!T || !istype(T)) - return - if(T.wet >= 2) - return - T.wet = 0 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - -/datum/reagent/nutriment/virus_food - name = "Virus Food" - id = "virusfood" - description = "A mixture of water, milk, and oxygen. Virus cells can use this mixture to reproduce." - reagent_state = LIQUID - nutriment_factor = 2 - color = "#899613" - -/datum/reagent/nutriment/sprinkles - name = "Sprinkles" - id = "sprinkles" - description = "Multi-colored little bits of sugar, commonly found on donuts. Loved by cops." - nutriment_factor = 1 - color = "#FF00FF" - -/datum/reagent/nutriment/mint - name = "Mint" - id = "mint" - description = "Also known as Mentha." - reagent_state = LIQUID - color = "#CF3600" - -/datum/reagent/lipozine // The anti-nutriment. - name = "Lipozine" - id = "lipozine" - description = "A chemical compound that causes a powerful fat-burning reaction." - reagent_state = LIQUID - color = "#BBEDA4" - overdose = REAGENTS_OVERDOSE - -/datum/reagent/lipozine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.nutrition = max(M.nutrition - 10 * removed, 0) - M.overeatduration = 0 - if(M.nutrition < 0) - M.nutrition = 0 - -/* Non-food stuff like condiments */ - -/datum/reagent/sodiumchloride - name = "Table Salt" - id = "sodiumchloride" - description = "A salt made of sodium chloride. Commonly used to season food." - reagent_state = SOLID - color = "#FFFFFF" - overdose = REAGENTS_OVERDOSE - -/datum/reagent/blackpepper - name = "Black Pepper" - id = "blackpepper" - description = "A powder ground from peppercorns. *AAAACHOOO*" - reagent_state = SOLID - color = "#000000" - -/datum/reagent/enzyme - name = "Universal Enzyme" - id = "enzyme" - description = "A universal enzyme used in the preperation of certain chemicals and foods." - reagent_state = LIQUID - color = "#365E30" - overdose = REAGENTS_OVERDOSE - -/datum/reagent/frostoil - name = "Frost Oil" - id = "frostoil" - description = "A special oil that noticably chills the body. Extracted from Ice Peppers." - reagent_state = LIQUID - color = "#B31008" - -/datum/reagent/frostoil/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.bodytemperature = max(M.bodytemperature - 10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0) - if(prob(1)) - M.emote("shiver") - if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature = max(M.bodytemperature - rand(10,20), 0) - holder.remove_reagent("capsaicin", 5) - -/datum/reagent/capsaicin - name = "Capsaicin Oil" - id = "capsaicin" - description = "This is what makes chilis hot." - reagent_state = LIQUID - color = "#B31008" - -/datum/reagent/capsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) - return - if(dose < 5 && (dose == metabolism || prob(5))) - M << "Your insides feel uncomfortably hot!" - if(dose >= 5) - M.apply_effect(2, AGONY, 0) - if(prob(5)) - M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") - if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature += rand(10, 25) - holder.remove_reagent("frostoil", 5) - -/datum/reagent/condensedcapsaicin - name = "Condensed Capsaicin" - id = "condensedcapsaicin" - description = "A chemical agent used for self-defense and in police work." - reagent_state = LIQUID - touch_met = 50 // Get rid of it quickly - color = "#B31008" - -/datum/reagent/condensedcapsaicin/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - var/eyes_covered = 0 - var/mouth_covered = 0 - var/obj/item/safe_thing = null - if(istype(M, /mob/living/carbon/human)) - var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & NO_PAIN)) - return - if(H.head) - if(H.head.flags & MASKCOVERSEYES) - eyes_covered = 1 - safe_thing = H.head - if(H.head.flags & MASKCOVERSMOUTH) - mouth_covered = 1 - safe_thing = H.head - if(H.wear_mask) - if(!eyes_covered && H.wear_mask.flags & MASKCOVERSEYES) - eyes_covered = 1 - safe_thing = H.wear_mask - if(!mouth_covered && H.wear_mask.flags & MASKCOVERSMOUTH) - mouth_covered = 1 - safe_thing = H.wear_mask - if(H.glasses) - if(!eyes_covered) - eyes_covered = 1 - if(!safe_thing) - safe_thing = H.glasses - if(eyes_covered && mouth_covered) - M << "Your [safe_thing] protects you from the pepperspray!" - return - else if(eyes_covered) - M << "Your [safe_thing] protect you from most of the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 15) - M.eye_blind = max(M.eye_blind, 5) - M.Stun(5) - M.Weaken(5) - return - else if (mouth_covered) // Mouth cover is better than eye cover - M << "Your [safe_thing] protects your face from the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 5) - return - else // Oh dear :D - M << "You're sprayed directly in the eyes with pepperspray!" - M.eye_blurry = max(M.eye_blurry, 25) - M.eye_blind = max(M.eye_blind, 10) - M.Stun(5) - M.Weaken(5) - return - -/datum/reagent/condensedcapsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) - return - if(dose == metabolism) - M << "You feel like your insides are burning!" - else - M.apply_effect(4, AGONY, 0) - if(prob(5)) - M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") - if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature += rand(15, 30) - holder.remove_reagent("frostoil", 5) - -/* Drinks */ - -/datum/reagent/drink - name = "Drink" - id = "drink" - description = "Uh, some kind of drink." - reagent_state = LIQUID - color = "#E78108" - var/nutrition = 0 // Per unit - var/adj_dizzy = 0 // Per tick - var/adj_drowsy = 0 - var/adj_sleepy = 0 - var/adj_temp = 0 - -/datum/reagent/drink/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjustToxLoss(removed) // Probably not a good idea; not very deadly though - return - -/datum/reagent/drink/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.nutrition += nutrition * removed - M.dizziness = max(0, M.dizziness + adj_dizzy) - M.drowsyness = max(0, M.drowsyness + adj_drowsy) - M.sleeping = max(0, M.sleeping + adj_sleepy) - if(adj_temp > 0 && M.bodytemperature < 310) // 310 is the normal bodytemp. 310.055 - M.bodytemperature = min(310, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) - if(adj_temp < 0 && M.bodytemperature > 310) - M.bodytemperature = min(310, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) - -// Juices - -/datum/reagent/drink/banana - name = "Banana Juice" - id = "banana" - description = "The raw essence of a banana." - color = "#C3AF00" - - glass_icon_state = "banana" - glass_name = "glass of banana juice" - glass_desc = "The raw essence of a banana. HONK!" - -/datum/reagent/drink/berryjuice - name = "Berry Juice" - id = "berryjuice" - description = "A delicious blend of several different kinds of berries." - color = "#990066" - - glass_icon_state = "berryjuice" - glass_name = "glass of berry juice" - glass_desc = "Berry juice. Or maybe it's jam. Who cares?" - -/datum/reagent/drink/carrotjuice - name = "Carrot juice" - id = "carrotjuice" - description = "It is just like a carrot but without crunching." - color = "#FF8C00" // rgb: 255, 140, 0 - - glass_icon_state = "carrotjuice" - glass_name = "glass of carrot juice" - glass_desc = "It is just like a carrot but without crunching." - -/datum/reagent/drink/carrotjuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.reagents.add_reagent("imidazoline", removed * 0.2) - -/datum/reagent/drink/grapejuice - name = "Grape Juice" - id = "grapejuice" - description = "It's grrrrrape!" - color = "#863333" - - glass_icon_state = "grapejuice" - glass_name = "glass of grape juice" - glass_desc = "It's grrrrrape!" - -/datum/reagent/drink/lemonjuice - name = "Lemon Juice" - id = "lemonjuice" - description = "This juice is VERY sour." - color = "#AFAF00" - - glass_icon_state = "lemonjuice" - glass_name = "glass of lemon juice" - glass_desc = "Sour..." - -/datum/reagent/drink/limejuice - name = "Lime Juice" - id = "limejuice" - description = "The sweet-sour juice of limes." - color = "#365E30" - - glass_icon_state = "glass_green" - glass_name = "glass of lime juice" - glass_desc = "A glass of sweet-sour lime juice" - -/datum/reagent/drink/limejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.adjustToxLoss(-0.5 * removed) - -/datum/reagent/drink/orangejuice - name = "Orange juice" - id = "orangejuice" - description = "Both delicious AND rich in Vitamin C, what more do you need?" - color = "#E78108" - - glass_icon_state = "glass_orange" - glass_name = "glass of orange juice" - glass_desc = "Vitamins! Yay!" - -/datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.adjustOxyLoss(-2 * removed) - -/datum/reagent/toxin/poisonberryjuice // It has more in common with toxins than drinks... but it's a juice - name = "Poison Berry Juice" - id = "poisonberryjuice" - description = "A tasty juice blended from various kinds of very deadly and toxic berries." - color = "#863353" - strength = 5 - - glass_icon_state = "poisonberryjuice" - glass_name = "glass of poison berry juice" - glass_desc = "A glass of deadly juice." - -/datum/reagent/drink/potato_juice - name = "Potato Juice" - id = "potato" - description = "Juice of the potato. Bleh." - nutrition = 2 - color = "#302000" - - glass_icon_state = "glass_brown" - glass_name = "glass of potato juice" - glass_desc = "Juice from a potato. Bleh." - -/datum/reagent/drink/tomatojuice - name = "Tomato Juice" - id = "tomatojuice" - description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?" - color = "#731008" - - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" - glass_desc = "Are you sure this is tomato juice?" - -/datum/reagent/drink/tomatojuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.heal_organ_damage(0, 0.5 * removed) - -/datum/reagent/drink/watermelonjuice - name = "Watermelon Juice" - id = "watermelonjuice" - description = "Delicious juice made from watermelon." - color = "#B83333" - - glass_icon_state = "glass_red" - glass_name = "glass of watermelon juice" - glass_desc = "Delicious juice made from watermelon." - -// Everything else - -/datum/reagent/drink/milk - name = "Milk" - id = "milk" - description = "An opaque white liquid produced by the mammary glands of mammals." - color = "#DFDFDF" - - glass_icon_state = "glass_white" - glass_name = "glass of milk" - glass_desc = "White and nutritious goodness!" - -/datum/reagent/drink/milk/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.heal_organ_damage(0.5 * removed, 0) - holder.remove_reagent("capsaicin", 10 * removed) - -/datum/reagent/drink/milk/cream - name = "Cream" - id = "cream" - description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?" - color = "#DFD7AF" - - glass_icon_state = "glass_white" - glass_name = "glass of cream" - glass_desc = "Ewwww..." - -/datum/reagent/drink/milk/soymilk - name = "Soy Milk" - id = "soymilk" - description = "An opaque white liquid made from soybeans." - color = "#DFDFC7" - - glass_icon_state = "glass_white" - glass_name = "glass of soy milk" - glass_desc = "White and nutritious soy goodness!" - -/datum/reagent/drink/tea - name = "Tea" - id = "tea" - description = "Tasty black tea, it has antioxidants, it's good for you!" - color = "#101000" - adj_dizzy = -2 - adj_drowsy = -1 - adj_sleepy = -3 - adj_temp = 20 - - glass_icon_state = "bigteacup" - glass_name = "cup of tea" - glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" - -/datum/reagent/drink/tea/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.adjustToxLoss(-0.5 * removed) - -/datum/reagent/drink/tea/icetea - name = "Iced Tea" - id = "icetea" - description = "No relation to a certain rap artist/ actor." - color = "#104038" // rgb: 16, 64, 56 - adj_temp = -5 - - glass_icon_state = "icedteaglass" - glass_name = "glass of iced tea" - glass_desc = "No relation to a certain rap artist/ actor." - glass_center_of_mass = list("x"=15, "y"=10) - -/datum/reagent/drink/coffee - name = "Coffee" - id = "coffee" - description = "Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant." - color = "#482000" - adj_dizzy = -5 - adj_drowsy = -3 - adj_sleepy = -2 - adj_temp = 25 - - glass_icon_state = "hot_coffee" - glass_name = "cup of coffee" - glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." - - -/datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.make_jittery(5) - if(adj_temp > 0) - holder.remove_reagent("frostoil", 10 * removed) - -/datum/reagent/drink/coffee/icecoffee - name = "Iced Coffee" - id = "icecoffee" - description = "Coffee and ice, refreshing and cool." - color = "#102838" - adj_temp = -5 - - glass_icon_state = "icedcoffeeglass" - glass_name = "glass of iced coffee" - glass_desc = "A drink to perk you up and refresh you!" - -/datum/reagent/drink/coffee/soy_latte - name = "Soy Latte" - id = "soy_latte" - description = "A nice and tasty beverage while you are reading your hippie books." - color = "#664300" - adj_temp = 5 - - glass_icon_state = "soy_latte" - glass_name = "glass of soy latte" - glass_desc = "A nice and refrshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) - -/datum/reagent/drink/coffee/soy_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.heal_organ_damage(0.5 * removed, 0) - -/datum/reagent/drink/coffee/cafe_latte - name = "Cafe Latte" - id = "cafe_latte" - description = "A nice, strong and tasty beverage while you are reading." - color = "#664300" // rgb: 102, 67, 0 - adj_temp = 5 - - glass_icon_state = "cafe_latte" - glass_name = "glass of cafe latte" - glass_desc = "A nice, strong and refreshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) - -/datum/reagent/drink/coffee/cafe_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.heal_organ_damage(0.5 * removed, 0) - -/datum/reagent/drink/hot_coco - name = "Hot Chocolate" - id = "hot_coco" - description = "Made with love! And cocoa beans." - reagent_state = LIQUID - color = "#403010" - nutrition = 2 - adj_temp = 5 - - glass_icon_state = "chocolateglass" - glass_name = "glass of hot chocolate" - glass_desc = "Made with love! And cocoa beans." - -/datum/reagent/drink/sodawater - name = "Soda Water" - id = "sodawater" - description = "A can of club soda. Why not make a scotch and soda?" - color = "#619494" - adj_dizzy = -5 - adj_drowsy = -3 - adj_temp = -5 - - glass_icon_state = "glass_clear" - glass_name = "glass of soda water" - glass_desc = "Soda water. Why not make a scotch and soda?" - -/datum/reagent/drink/grapesoda - name = "Grape Soda" - id = "grapesoda" - description = "Grapes made into a fine drank." - color = "#421C52" - adj_drowsy = -3 - - glass_icon_state = "gsodaglass" - glass_name = "glass of grape soda" - glass_desc = "Looks like a delicious drink!" - -/datum/reagent/drink/tonic - name = "Tonic Water" - id = "tonic" - description = "It tastes strange but at least the quinine keeps the Space Malaria at bay." - color = "#664300" - adj_dizzy = -5 - adj_drowsy = -3 - adj_sleepy = -2 - adj_temp = -5 - - glass_icon_state = "glass_clear" - glass_name = "glass of tonic water" - glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away." - -/datum/reagent/drink/lemonade - name = "Lemonade" - description = "Oh the nostalgia..." - id = "lemonade" - color = "#FFFF00" - adj_temp = -5 - - glass_icon_state = "lemonadeglass" - glass_name = "glass of lemonade" - glass_desc = "Oh the nostalgia..." - -/datum/reagent/drink/kiraspecial - name = "Kira Special" - description = "Long live the guy who everyone had mistaken for a girl. Baka!" - id = "kiraspecial" - color = "#CCCC99" - adj_temp = -5 - - glass_icon_state = "kiraspecial" - glass_name = "glass of Kira Special" - glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!" - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/drink/brownstar - name = "Brown Star" - description = "It's not what it sounds like..." - id = "brownstar" - color = "#9F3400" - adj_temp = -2 - - glass_icon_state = "brownstar" - glass_name = "glass of Brown Star" - glass_desc = "It's not what it sounds like..." - -/datum/reagent/drink/milkshake - name = "Milkshake" - description = "Glorious brainfreezing mixture." - id = "milkshake" - color = "#AEE5E4" - adj_temp = -9 - - glass_icon_state = "milkshake" - glass_name = "glass of milkshake" - glass_desc = "Glorious brainfreezing mixture." - glass_center_of_mass = list("x"=16, "y"=7) - -/datum/reagent/drink/rewriter - name = "Rewriter" - description = "The secret of the sanctuary of the Libarian..." - id = "rewriter" - color = "#485000" - adj_temp = -5 - - glass_icon_state = "rewriter" - glass_name = "glass of Rewriter" - glass_desc = "The secret of the sanctuary of the Libarian..." - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.make_jittery(5) - -/datum/reagent/drink/nuka_cola - name = "Nuka Cola" - id = "nuka_cola" - description = "Cola, cola never changes." - color = "#100800" - adj_temp = -5 - adj_sleepy = -2 - - glass_icon_state = "nuka_colaglass" - glass_name = "glass of Nuka-Cola" - glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" - glass_center_of_mass = list("x"=16, "y"=6) - -/datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.add_chemical_effect(CE_SPEEDBOOST, 1) - M.make_jittery(20) - M.druggy = max(M.druggy, 30) - M.dizziness += 5 - M.drowsyness = 0 - -/datum/reagent/drink/grenadine - name = "Grenadine Syrup" - id = "grenadine" - description = "Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways?" - color = "#FF004F" - - glass_icon_state = "grenadineglass" - glass_name = "glass of grenadine syrup" - glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks." - glass_center_of_mass = list("x"=17, "y"=6) - -/datum/reagent/drink/space_cola - name = "Space Cola" - id = "cola" - description = "A refreshing beverage." - reagent_state = LIQUID - color = "#100800" - adj_drowsy = -3 - adj_temp = -5 - - glass_icon_state = "glass_brown" - glass_name = "glass of Space Cola" - glass_desc = "A glass of refreshing Space Cola" - -/datum/reagent/drink/spacemountainwind - name = "Mountain Wind" - id = "spacemountainwind" - description = "Blows right through you like a space wind." - color = "#102000" - adj_drowsy = -7 - adj_sleepy = -1 - adj_temp = -5 - - glass_icon_state = "Space_mountain_wind_glass" - glass_name = "glass of Space Mountain Wind" - glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind." - -/datum/reagent/drink/dr_gibb - name = "Dr. Gibb" - id = "dr_gibb" - description = "A delicious blend of 42 different flavours" - color = "#102000" - adj_drowsy = -6 - adj_temp = -5 - - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of Dr. Gibb" - glass_desc = "Dr. Gibb. Not as dangerous as the name might imply." - -/datum/reagent/drink/space_up - name = "Space-Up" - id = "space_up" - description = "Tastes like a hull breach in your mouth." - color = "#202800" - adj_temp = -8 - - glass_icon_state = "space-up_glass" - glass_name = "glass of Space-up" - glass_desc = "Space-up. It helps keep your cool." - -/datum/reagent/drink/lemon_lime - name = "Lemon Lime" - description = "A tangy substance made of 0.5% natural citrus!" - id = "lemon_lime" - color = "#878F00" - adj_temp = -8 - - glass_icon_state = "lemonlime" - glass_name = "glass of lemon lime soda" - glass_desc = "A tangy substance made of 0.5% natural citrus!" - -/datum/reagent/drink/doctor_delight - name = "The Doctor's Delight" - id = "doctorsdelight" - description = "A gulp a day keeps the MediBot away. That's probably for the best." - reagent_state = LIQUID - color = "#FF8CFF" - nutrition = 1 - - glass_icon_state = "doctorsdelightglass" - glass_name = "glass of The Doctor's Delight" - glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.adjustOxyLoss(-4 * removed) - M.heal_organ_damage(2 * removed, 2 * removed) - M.adjustToxLoss(-2 * removed) - if(M.dizziness) - M.dizziness = max(0, M.dizziness - 15) - if(M.confused) - M.confused = max(0, M.confused - 5) - -/datum/reagent/drink/dry_ramen - name = "Dry Ramen" - id = "dry_ramen" - description = "Space age food, since August 25, 1958. Contains dried noodles, vegetables, and chemicals that boil in contact with water." - reagent_state = SOLID - nutrition = 1 - color = "#302000" - -/datum/reagent/drink/hot_ramen - name = "Hot Ramen" - id = "hot_ramen" - description = "The noodles are boiled, the flavors are artificial, just like being back in school." - reagent_state = LIQUID - color = "#302000" - nutrition = 5 - adj_temp = 5 - -/datum/reagent/drink/hell_ramen - name = "Hell Ramen" - id = "hell_ramen" - description = "The noodles are boiled, the flavors are artificial, just like being back in school." - reagent_state = LIQUID - color = "#302000" - nutrition = 5 - -/datum/reagent/drink/hell_ramen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.bodytemperature += 10 * TEMPERATURE_DAMAGE_COEFFICIENT - -/datum/reagent/drink/ice - name = "Ice" - id = "ice" - description = "Frozen water, your dentist wouldn't like you chewing this." - reagent_state = SOLID - color = "#619494" - adj_temp = -5 - - glass_icon_state = "iceglass" - glass_name = "glass of ice" - glass_desc = "Generally, you're supposed to put something else in there too..." - -/datum/reagent/drink/nothing - name = "Nothing" - id = "nothing" - description = "Absolutely nothing." - - glass_icon_state = "nothing" - glass_name = "glass of nothing" - glass_desc = "Absolutely nothing." - -/* Alcohol */ - -// Basic - -/datum/reagent/ethanol/absinthe - name = "Absinthe" - id = "absinthe" - description = "Watch out that the Green Fairy doesn't come for you!" - color = "#33EE00" - strength = 12 - - glass_icon_state = "absintheglass" - glass_name = "glass of absinthe" - glass_desc = "Wormwood, anise, oh my." - glass_center_of_mass = list("x"=16, "y"=5) - -/datum/reagent/ethanol/ale - name = "Ale" - id = "ale" - description = "A dark alchoholic beverage made by malted barley and yeast." - color = "#664300" - strength = 50 - - glass_icon_state = "aleglass" - glass_name = "glass of ale" - glass_desc = "A freezing pint of delicious ale" - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/beer - name = "Beer" - id = "beer" - description = "An alcoholic beverage made from malted grains, hops, yeast, and water." - color = "#664300" - strength = 50 - nutriment_factor = 1 - - glass_icon_state = "beerglass" - glass_name = "glass of beer" - glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.jitteriness = max(M.jitteriness - 3, 0) - -/datum/reagent/ethanol/bluecuracao - name = "Blue Curacao" - id = "bluecuracao" - description = "Exotically blue, fruity drink, distilled from oranges." - color = "#0000CD" - strength = 15 - - glass_icon_state = "curacaoglass" - glass_name = "glass of blue curacao" - glass_desc = "Exotically blue, fruity drink, distilled from oranges." - glass_center_of_mass = list("x"=16, "y"=5) - -/datum/reagent/ethanol/cognac - name = "Cognac" - id = "cognac" - description = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. Classy as fornication." - color = "#AB3C05" - strength = 15 - - glass_icon_state = "cognacglass" - glass_name = "glass of cognac" - glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this." - glass_center_of_mass = list("x"=16, "y"=6) - -/datum/reagent/ethanol/deadrum - name = "Deadrum" - id = "deadrum" - description = "Popular with the sailors. Not very popular with everyone else." - color = "#664300" - strength = 50 - - glass_icon_state = "rumglass" - glass_name = "glass of rum" - glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.dizziness +=5 - -/datum/reagent/ethanol/gin - name = "Gin" - id = "gin" - description = "It's gin. In space. I say, good sir." - color = "#664300" - strength = 50 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of gin" - glass_desc = "A crystal clear glass of Griffeater gin." - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/kahlua - name = "Kahlua" - id = "kahlua" - description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!" - color = "#664300" - strength = 15 - - glass_icon_state = "kahluaglass" - glass_name = "glass of RR coffee liquor" - glass_desc = "DAMN, THIS THING LOOKS ROBUST" - glass_center_of_mass = list("x"=15, "y"=7) - -/datum/reagent/ethanol/kahlua/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.dizziness = max(0, M.dizziness - 5) - M.drowsyness = max(0, M.drowsyness - 3) - M.sleeping = max(0, M.sleeping - 2) - if (M.bodytemperature > 310) - M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) - M.make_jittery(5) - -/datum/reagent/ethanol/melonliquor - name = "Melon Liquor" - id = "melonliquor" - description = "A relatively sweet and fruity 46 proof liquor." - color = "#138808" // rgb: 19, 136, 8 - strength = 50 - - glass_icon_state = "emeraldglass" - glass_name = "glass of melon liquor" - glass_desc = "A relatively sweet and fruity 46 proof liquor." - glass_center_of_mass = list("x"=16, "y"=5) - -/datum/reagent/ethanol/rum - name = "Rum" - id = "rum" - description = "Yohoho and all that." - color = "#664300" - strength = 15 - - glass_icon_state = "rumglass" - glass_name = "glass of rum" - glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/sake - name = "Sake" - id = "sake" - description = "Anime's favorite drink." - color = "#664300" - strength = 25 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of sake" - glass_desc = "A glass of sake." - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/tequilla - name = "Tequila" - id = "tequilla" - description = "A strong and mildly flavoured, mexican produced spirit. Feeling thirsty hombre?" - color = "#FFFF91" - strength = 25 - - glass_icon_state = "tequillaglass" - glass_name = "glass of Tequilla" - glass_desc = "Now all that's missing is the weird colored shades!" - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/thirteenloko - name = "Thirteen Loko" - id = "thirteenloko" - description = "A potent mixture of caffeine and alcohol." - color = "#102000" - strength = 25 - nutriment_factor = 1 - - glass_icon_state = "thirteen_loko_glass" - glass_name = "glass of Thirteen Loko" - glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." - -/datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(alien == IS_DIONA) - return - M.drowsyness = max(0, M.drowsyness - 7) - if (M.bodytemperature > 310) - M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) - M.make_jittery(5) - -/datum/reagent/ethanol/vermouth - name = "Vermouth" - id = "vermouth" - description = "You suddenly feel a craving for a martini..." - color = "#91FF91" // rgb: 145, 255, 145 - strength = 15 - - glass_icon_state = "vermouthglass" - glass_name = "glass of vermouth" - glass_desc = "You wonder why you're even drinking this straight." - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/vodka - name = "Vodka" - id = "vodka" - description = "Number one drink AND fueling choice for Russians worldwide." - color = "#0064C8" // rgb: 0, 100, 200 - strength = 15 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of vodka" - glass_desc = "The glass contain wodka. Xynta." - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.radiation = max(M.radiation - 1 * removed, 0) - -/datum/reagent/ethanol/whiskey - name = "Whiskey" - id = "whiskey" - description = "A superb and well-aged single-malt whiskey. Damn." - color = "#664300" - strength = 25 - - glass_icon_state = "whiskeyglass" - glass_name = "glass of whiskey" - glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy." - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/wine - name = "Wine" - id = "wine" - description = "An premium alchoholic beverage made from distilled grape juice." - color = "#7E4043" // rgb: 126, 64, 67 - strength = 15 - - glass_icon_state = "wineglass" - glass_name = "glass of wine" - glass_desc = "A very classy looking drink." - glass_center_of_mass = list("x"=15, "y"=7) - -// Cocktails - -/datum/reagent/ethanol/acid_spit - name = "Acid Spit" - id = "acidspit" - description = "A drink for the daring, can be deadly if incorrectly prepared!" - reagent_state = LIQUID - color = "#365000" - strength = 30 - - glass_icon_state = "acidspitglass" - glass_name = "glass of Acid Spit" - glass_desc = "A drink from Nanotrasen. Made from live aliens." - glass_center_of_mass = list("x"=16, "y"=7) - -/datum/reagent/ethanol/alliescocktail - name = "Allies Cocktail" - id = "alliescocktail" - description = "A drink made from your allies, not as sweet as when made from your enemies." - color = "#664300" - strength = 25 - - glass_icon_state = "alliescocktail" - glass_name = "glass of Allies cocktail" - glass_desc = "A drink made from your allies." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/aloe - name = "Aloe" - id = "aloe" - description = "So very, very, very good." - color = "#664300" - strength = 15 - - glass_icon_state = "aloe" - glass_name = "glass of Aloe" - glass_desc = "Very, very, very good." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/amasec - name = "Amasec" - id = "amasec" - description = "Official drink of the NanoTrasen Gun-Club!" - reagent_state = LIQUID - color = "#664300" - strength = 25 - - glass_icon_state = "amasecglass" - glass_name = "glass of Amasec" - glass_desc = "Always handy before COMBAT!!!" - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/andalusia - name = "Andalusia" - id = "andalusia" - description = "A nice, strangely named drink." - color = "#664300" - strength = 15 - - glass_icon_state = "andalusia" - glass_name = "glass of Andalusia" - glass_desc = "A nice, strange named drink." - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/antifreeze - name = "Anti-freeze" - id = "antifreeze" - description = "Ultimate refreshment." - color = "#664300" - strength = 12 - adj_temp = 20 - targ_temp = 330 - - glass_icon_state = "antifreeze" - glass_name = "glass of Anti-freeze" - glass_desc = "The ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/atomicbomb - name = "Atomic Bomb" - id = "atomicbomb" - description = "Nuclear proliferation never tasted so good." - reagent_state = LIQUID - color = "#666300" - strength = 10 - druggy = 50 - - glass_icon_state = "atomicbombglass" - glass_name = "glass of Atomic Bomb" - glass_desc = "Nanotrasen cannot take legal responsibility for your actions after imbibing." - glass_center_of_mass = list("x"=15, "y"=7) - -/datum/reagent/ethanol/b52 - name = "B-52" - id = "b52" - description = "Coffee, Irish Cream, and cognac. You will get bombed." - color = "#664300" - strength = 12 - - glass_icon_state = "b52glass" - glass_name = "glass of B-52" - glass_desc = "Kahlua, Irish cream, and congac. You will get bombed." - -/datum/reagent/ethanol/bahama_mama - name = "Bahama mama" - id = "bahama_mama" - description = "Tropical cocktail." - color = "#FF7F3B" - strength = 25 - - glass_icon_state = "bahama_mama" - glass_name = "glass of Bahama Mama" - glass_desc = "Tropical cocktail" - glass_center_of_mass = list("x"=16, "y"=5) - -/datum/reagent/ethanol/bananahonk - name = "Banana Mama" - id = "bananahonk" - description = "A drink from Clown Heaven." - nutriment_factor = 1 - color = "#FFFF91" - strength = 12 - - glass_icon_state = "bananahonkglass" - glass_name = "glass of Banana Honk" - glass_desc = "A drink from Banana Heaven." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/barefoot - name = "Barefoot" - id = "barefoot" - description = "Barefoot and pregnant" - color = "#664300" - strength = 30 - - glass_icon_state = "b&p" - glass_name = "glass of Barefoot" - glass_desc = "Barefoot and pregnant" - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/beepsky_smash - name = "Beepsky Smash" - id = "beepskysmash" - description = "Deny drinking this and prepare for THE LAW." - reagent_state = LIQUID - color = "#664300" - strength = 12 - - glass_icon_state = "beepskysmashglass" - glass_name = "Beepsky Smash" - glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." - glass_center_of_mass = list("x"=18, "y"=10) - -/datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.Stun(2) - -/datum/reagent/ethanol/bilk - name = "Bilk" - id = "bilk" - description = "This appears to be beer mixed with milk. Disgusting." - color = "#895C4C" - strength = 50 - nutriment_factor = 2 - - glass_icon_state = "glass_brown" - glass_name = "glass of bilk" - glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis." - -/datum/reagent/ethanol/black_russian - name = "Black Russian" - id = "blackrussian" - description = "For the lactose-intolerant. Still as classy as a White Russian." - color = "#360000" - strength = 15 - - glass_icon_state = "blackrussianglass" - glass_name = "glass of Black Russian" - glass_desc = "For the lactose-intolerant. Still as classy as a White Russian." - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/bloody_mary - name = "Bloody Mary" - id = "bloodymary" - description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice." - color = "#664300" - strength = 15 - - glass_icon_state = "bloodymaryglass" - glass_name = "glass of Bloody Mary" - glass_desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder." - -/datum/reagent/ethanol/booger - name = "Booger" - id = "booger" - description = "Ewww..." - color = "#8CFF8C" - strength = 30 - - glass_icon_state = "booger" - glass_name = "glass of Booger" - glass_desc = "Ewww..." - -/datum/reagent/ethanol/brave_bull - name = "Brave Bull" - id = "bravebull" - description = "It's just as effective as Dutch-Courage!" - color = "#664300" - strength = 15 - - glass_icon_state = "bravebullglass" - glass_name = "glass of Brave Bull" - glass_desc = "Tequilla and coffee liquor, brought together in a mouthwatering mixture. Drink up." - glass_center_of_mass = list("x"=15, "y"=8) - -/datum/reagent/ethanol/changelingsting - name = "Changeling Sting" - id = "changelingsting" - description = "You take a tiny sip and feel a burning sensation..." - color = "#2E6671" - strength = 10 - - glass_icon_state = "changelingsting" - glass_name = "glass of Changeling Sting" - glass_desc = "A stingy drink." - -/datum/reagent/ethanol/classicmartini - name = "Classic Martini" - id = "classicmartini" - description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" - strength = 25 - - glass_icon_state = "martiniglass" - glass_name = "glass of classic martini" - glass_desc = "Damn, the bartender even stirred it, not shook it." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/cuba_libre - name = "Cuba Libre" - id = "cubalibre" - description = "Rum, mixed with cola. Viva la revolucion." - color = "#3E1B00" - strength = 30 - - glass_icon_state = "cubalibreglass" - glass_name = "glass of Cuba Libre" - glass_desc = "A classic mix of rum and cola." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/demonsblood - name = "Demons Blood" - id = "demonsblood" - description = "AHHHH!!!!" - color = "#820000" - strength = 15 - - glass_icon_state = "demonsblood" - glass_name = "glass of Demons' Blood" - glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up." - glass_center_of_mass = list("x"=16, "y"=2) - -/datum/reagent/ethanol/devilskiss - name = "Devils Kiss" - id = "devilskiss" - description = "Creepy time!" - color = "#A68310" - strength = 15 - - glass_icon_state = "devilskiss" - glass_name = "glass of Devil's Kiss" - glass_desc = "Creepy time!" - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/driestmartini - name = "Driest Martini" - id = "driestmartini" - description = "Only for the experienced. You think you see sand floating in the glass." - nutriment_factor = 1 - color = "#2E6671" - strength = 12 - - glass_icon_state = "driestmartiniglass" - glass_name = "glass of Driest Martini" - glass_desc = "Only for the experienced. You think you see sand floating in the glass." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/ginfizz - name = "Gin Fizz" - id = "ginfizz" - description = "Refreshingly lemony, deliciously dry." - color = "#664300" - strength = 30 - - glass_icon_state = "ginfizzglass" - glass_name = "glass of gin fizz" - glass_desc = "Refreshingly lemony, deliciously dry." - glass_center_of_mass = list("x"=16, "y"=7) - -/datum/reagent/ethanol/grog - name = "Grog" - id = "grog" - description = "Watered down rum, NanoTrasen approves!" - reagent_state = LIQUID - color = "#664300" - strength = 100 - - glass_icon_state = "grogglass" - glass_name = "glass of grog" - glass_desc = "A fine and cepa drink for Space." - -/datum/reagent/ethanol/erikasurprise - name = "Erika Surprise" - id = "erikasurprise" - description = "The surprise is, it's green!" - color = "#2E6671" - strength = 15 - - glass_icon_state = "erikasurprise" - glass_name = "glass of Erika Surprise" - glass_desc = "The surprise is, it's green!" - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/gargle_blaster - name = "Pan-Galactic Gargle Blaster" - id = "gargleblaster" - description = "Whoah, this stuff looks volatile!" - reagent_state = LIQUID - color = "#664300" - strength = 10 - - glass_icon_state = "gargleblasterglass" - glass_name = "glass of Pan-Galactic Gargle Blaster" - glass_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy." - glass_center_of_mass = list("x"=17, "y"=6) - -/datum/reagent/ethanol/gintonic - name = "Gin and Tonic" - id = "gintonic" - description = "An all time classic, mild cocktail." - color = "#664300" - strength = 50 - - glass_icon_state = "gintonicglass" - glass_name = "glass of gin and tonic" - glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman." - glass_center_of_mass = list("x"=16, "y"=7) - -/datum/reagent/ethanol/goldschlager - name = "Goldschlager" - id = "goldschlager" - description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break." - color = "#664300" - strength = 15 - - glass_icon_state = "ginvodkaglass" - glass_name = "glass of Goldschlager" - glass_desc = "100 proof that teen girls will drink anything with gold in it." - glass_center_of_mass = list("x"=16, "y"=12) - -/datum/reagent/ethanol/hippies_delight - name = "Hippies' Delight" - id = "hippiesdelight" - description = "You just don't get it maaaan." - reagent_state = LIQUID - color = "#664300" - strength = 15 - druggy = 50 - - glass_icon_state = "hippiesdelightglass" - glass_name = "glass of Hippie's Delight" - glass_desc = "A drink enjoyed by people during the 1960's." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/hooch - name = "Hooch" - id = "hooch" - description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" - color = "#664300" - strength = 25 - toxicity = 2 - - glass_icon_state = "glass_brown2" - glass_name = "glass of Hooch" - glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." - -/datum/reagent/ethanol/iced_beer - name = "Iced Beer" - id = "iced_beer" - description = "A beer which is so cold the air around it freezes." - color = "#664300" - strength = 50 - adj_temp = -20 - targ_temp = 270 - - glass_icon_state = "iced_beerglass" - glass_name = "glass of iced beer" - glass_desc = "A beer so frosty, the air around it freezes." - glass_center_of_mass = list("x"=16, "y"=7) - -/datum/reagent/ethanol/irishcarbomb - name = "Irish Car Bomb" - id = "irishcarbomb" - description = "Mmm, tastes like chocolate cake..." - color = "#2E6671" - strength = 15 - - glass_icon_state = "irishcarbomb" - glass_name = "glass of Irish Car Bomb" - glass_desc = "An irish car bomb." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/irishcoffee - name = "Irish Coffee" - id = "irishcoffee" - description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning." - color = "#664300" - strength = 15 - - glass_icon_state = "irishcoffeeglass" - glass_name = "glass of Irish coffee" - glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning." - glass_center_of_mass = list("x"=15, "y"=10) - -/datum/reagent/ethanol/irish_cream - name = "Irish Cream" - id = "irishcream" - description = "Whiskey-imbued cream, what else would you expect from the Irish." - color = "#664300" - strength = 25 - - glass_icon_state = "irishcreamglass" - glass_name = "glass of Irish cream" - glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?" - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/longislandicedtea - name = "Long Island Iced Tea" - id = "longislandicedtea" - description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - color = "#664300" - strength = 12 - - glass_icon_state = "longislandicedteaglass" - glass_name = "glass of Long Island iced tea" - glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/manhattan - name = "Manhattan" - id = "manhattan" - description = "The Detective's undercover drink of choice. He never could stomach gin..." - color = "#664300" - strength = 15 - - glass_icon_state = "manhattanglass" - glass_name = "glass of Manhattan" - glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/manhattan_proj - name = "Manhattan Project" - id = "manhattan_proj" - description = "A scientist's drink of choice, for pondering ways to blow up the station." - color = "#664300" - strength = 10 - druggy = 30 - - glass_icon_state = "proj_manhattanglass" - glass_name = "glass of Manhattan Project" - glass_desc = "A scienitst drink of choice, for thinking how to blow up the station." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/manly_dorf - name = "The Manly Dorf" - id = "manlydorf" - description = "Beer and Ale, brought together in a delicious mix. Intended for true men only." - color = "#664300" - strength = 25 - - glass_icon_state = "manlydorfglass" - glass_name = "glass of The Manly Dorf" - glass_desc = "A manly concotion made from Ale and Beer. Intended for true men only." - -/datum/reagent/ethanol/margarita - name = "Margarita" - id = "margarita" - description = "On the rocks with salt on the rim. Arriba~!" - color = "#8CFF8C" - strength = 15 - - glass_icon_state = "margaritaglass" - glass_name = "glass of margarita" - glass_desc = "On the rocks with salt on the rim. Arriba~!" - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/mead - name = "Mead" - id = "mead" - description = "A Viking's drink, though a cheap one." - reagent_state = LIQUID - color = "#664300" - strength = 30 - nutriment_factor = 1 - - glass_icon_state = "meadglass" - glass_name = "glass of mead" - glass_desc = "A Viking's beverage, though a cheap one." - glass_center_of_mass = list("x"=17, "y"=10) - -/datum/reagent/ethanol/moonshine - name = "Moonshine" - id = "moonshine" - description = "You've really hit rock bottom now... your liver packed its bags and left last night." - color = "#664300" - strength = 12 - - glass_icon_state = "glass_clear" - glass_name = "glass of moonshine" - glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." - -/datum/reagent/ethanol/neurotoxin - name = "Neurotoxin" - id = "neurotoxin" - description = "A strong neurotoxin that puts the subject into a death-like state." - reagent_state = LIQUID - color = "#2E2E61" - strength = 10 - - glass_icon_state = "neurotoxinglass" - glass_name = "glass of Neurotoxin" - glass_desc = "A drink that is guaranteed to knock you silly." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - M.Weaken(3) - -/datum/reagent/ethanol/patron - name = "Patron" - id = "patron" - description = "Tequila with silver in it, a favorite of alcoholic women in the club scene." - color = "#585840" - strength = 30 - - glass_icon_state = "patronglass" - glass_name = "glass of Patron" - glass_desc = "Drinking patron in the bar, with all the subpar ladies." - glass_center_of_mass = list("x"=7, "y"=8) - -/datum/reagent/ethanol/pwine - name = "Poison Wine" - id = "pwine" - description = "Is this even wine? Toxic! Hallucinogenic! Probably consumed in boatloads by your superiors!" - color = "#000000" - strength = 10 - druggy = 50 - halluci = 10 - - glass_icon_state = "pwineglass" - glass_name = "glass of ???" - glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" - glass_center_of_mass = list("x"=16, "y"=5) - -/datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(dose > 30) - M.adjustToxLoss(2 * removed) - if(dose > 60 && ishuman(M) && prob(5)) - var/mob/living/carbon/human/H = M - var/obj/item/organ/heart/L = H.internal_organs_by_name["heart"] - if (L && istype(L)) - if(dose < 120) - L.take_damage(10 * removed, 0) - else - L.take_damage(100, 0) - -/datum/reagent/ethanol/red_mead - name = "Red Mead" - id = "red_mead" - description = "The true Viking's drink! Even though it has a strange red color." - color = "#C73C00" - strength = 30 - - glass_icon_state = "red_meadglass" - glass_name = "glass of red mead" - glass_desc = "A true Viking's beverage, though its color is strange." - glass_center_of_mass = list("x"=17, "y"=10) - -/datum/reagent/ethanol/sbiten - name = "Sbiten" - id = "sbiten" - description = "A spicy Vodka! Might be a little hot for the little guys!" - color = "#664300" - strength = 15 - adj_temp = 50 - targ_temp = 360 - - glass_icon_state = "sbitenglass" - glass_name = "glass of Sbiten" - glass_desc = "A spicy mix of Vodka and Spice. Very hot." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/screwdrivercocktail - name = "Screwdriver" - id = "screwdrivercocktail" - description = "Vodka, mixed with plain ol' orange juice. The result is surprisingly delicious." - color = "#A68310" - strength = 15 - - glass_icon_state = "screwdriverglass" - glass_name = "glass of Screwdriver" - glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer." - glass_center_of_mass = list("x"=15, "y"=10) - -/datum/reagent/ethanol/silencer - name = "Silencer" - id = "silencer" - description = "A drink from Mime Heaven." - nutriment_factor = 1 - color = "#664300" - strength = 12 - - glass_icon_state = "silencerglass" - glass_name = "glass of Silencer" - glass_desc = "A drink from mime Heaven." - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/singulo - name = "Singulo" - id = "singulo" - description = "A blue-space beverage!" - color = "#2E6671" - strength = 10 - - glass_icon_state = "singulo" - glass_name = "glass of Singulo" - glass_desc = "A blue-space beverage." - glass_center_of_mass = list("x"=17, "y"=4) - -/datum/reagent/ethanol/snowwhite - name = "Snow White" - id = "snowwhite" - description = "A cold refreshment" - color = "#FFFFFF" - strength = 30 - - glass_icon_state = "snowwhite" - glass_name = "glass of Snow White" - glass_desc = "A cold refreshment." - glass_center_of_mass = list("x"=16, "y"=8) - -/datum/reagent/ethanol/suidream - name = "Sui Dream" - id = "suidream" - description = "Comprised of: White soda, blue curacao, melon liquor." - color = "#00A86B" - strength = 100 - - glass_icon_state = "sdreamglass" - glass_name = "glass of Sui Dream" - glass_desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame." - glass_center_of_mass = list("x"=16, "y"=5) - -/datum/reagent/ethanol/syndicatebomb - name = "Syndicate Bomb" - id = "syndicatebomb" - description = "Tastes like terrorism!" - color = "#2E6671" - strength = 10 - - glass_icon_state = "syndicatebomb" - glass_name = "glass of Syndicate Bomb" - glass_desc = "Tastes like terrorism!" - glass_center_of_mass = list("x"=16, "y"=4) - -/datum/reagent/ethanol/tequilla_sunrise - name = "Tequila Sunrise" - id = "tequillasunrise" - description = "Tequila and orange juice. Much like a Screwdriver, only Mexican~" - color = "#FFE48C" - strength = 25 - - glass_icon_state = "tequillasunriseglass" - glass_name = "glass of Tequilla Sunrise" - glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..." - -/datum/reagent/ethanol/threemileisland - name = "Three Mile Island Iced Tea" - id = "threemileisland" - description = "Made for a woman, strong enough for a man." - color = "#666340" - strength = 10 - druggy = 50 - - glass_icon_state = "threemileislandglass" - glass_name = "glass of Three Mile Island iced tea" - glass_desc = "A glass of this is sure to prevent a meltdown." - glass_center_of_mass = list("x"=16, "y"=2) - -/datum/reagent/ethanol/toxins_special - name = "Toxins Special" - id = "phoronspecial" - description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!" - reagent_state = LIQUID - color = "#664300" - strength = 10 - adj_temp = 15 - targ_temp = 330 - - glass_icon_state = "toxinsspecialglass" - glass_name = "glass of Toxins Special" - glass_desc = "Whoah, this thing is on FIRE" - -/datum/reagent/ethanol/vodkamartini - name = "Vodka Martini" - id = "vodkamartini" - description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" - strength = 12 - - glass_icon_state = "martiniglass" - glass_name = "glass of vodka martini" - glass_desc ="A bastardisation of the classic martini. Still great." - glass_center_of_mass = list("x"=17, "y"=8) - -/datum/reagent/ethanol/vodkatonic - name = "Vodka and Tonic" - id = "vodkatonic" - description = "For when a gin and tonic isn't russian enough." - color = "#0064C8" // rgb: 0, 100, 200 - strength = 15 - - glass_icon_state = "vodkatonicglass" - glass_name = "glass of vodka and tonic" - glass_desc = "For when a gin and tonic isn't Russian enough." - glass_center_of_mass = list("x"=16, "y"=7) - -/datum/reagent/ethanol/white_russian - name = "White Russian" - id = "whiterussian" - description = "That's just, like, your opinion, man..." - color = "#A68340" - strength = 15 - - glass_icon_state = "whiterussianglass" - glass_name = "glass of White Russian" - glass_desc = "A very nice looking drink. But that's just, like, your opinion, man." - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/whiskey_cola - name = "Whiskey Cola" - id = "whiskeycola" - description = "Whiskey, mixed with cola. Surprisingly refreshing." - color = "#3E1B00" - strength = 25 - - glass_icon_state = "whiskeycolaglass" - glass_name = "glass of whiskey cola" - glass_desc = "An innocent-looking mixture of cola and Whiskey. Delicious." - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/whiskeysoda - name = "Whiskey Soda" - id = "whiskeysoda" - description = "For the more refined griffon." - color = "#664300" - strength = 15 - - glass_icon_state = "whiskeysodaglass2" - glass_name = "glass of whiskey soda" - glass_desc = "Ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=9) - -/datum/reagent/ethanol/specialwhiskey // I have no idea what this is and where it comes from - name = "Special Blend Whiskey" - id = "specialwhiskey" - description = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." - color = "#664300" - strength = 25 - - glass_icon_state = "whiskeyglass" - glass_name = "glass of special blend whiskey" - glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." - glass_center_of_mass = list("x"=16, "y"=12) - -/* Super secret chemicals with randomized recipes */ - -/datum/reagent/rezadone - name = "Rezadone" - id = "rezadone" - description = "A powder with almost magical properties, this substance can effectively treat genetic damage in humanoids, though excessive consumption has side effects." - reagent_state = SOLID - color = "#669900" - overdose = REAGENTS_OVERDOSE - scannable = 1 - -/datum/reagent/rezadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjustCloneLoss(-20 * removed) - M.adjustOxyLoss(-2 * removed) - M.heal_organ_damage(20 * removed, 20 * removed) - M.adjustToxLoss(-20 * removed) - if(dose > 3) - M.status_flags &= ~DISFIGURED - if(dose > 10) - M.make_dizzy(5) - M.make_jittery(5) - -/* Paint and crayons */ - -/datum/reagent/crayon_dust - name = "Crayon dust" - id = "crayon_dust" - description = "Intensely coloured powder obtained by grinding crayons." - reagent_state = LIQUID - color = "#888888" - overdose = 5 - -/datum/reagent/crayon_dust/red - name = "Red crayon dust" - id = "crayon_dust_red" - color = "#FE191A" - -/datum/reagent/crayon_dust/orange - name = "Orange crayon dust" - id = "crayon_dust_orange" - color = "#FFBE4F" - -/datum/reagent/crayon_dust/yellow - name = "Yellow crayon dust" - id = "crayon_dust_yellow" - color = "#FDFE7D" - -/datum/reagent/crayon_dust/green - name = "Green crayon dust" - id = "crayon_dust_green" - color = "#18A31A" - -/datum/reagent/crayon_dust/blue - name = "Blue crayon dust" - id = "crayon_dust_blue" - color = "#247CFF" - -/datum/reagent/crayon_dust/purple - name = "Purple crayon dust" - id = "crayon_dust_purple" - color = "#CC0099" - -/datum/reagent/crayon_dust/grey //Mime - name = "Grey crayon dust" - id = "crayon_dust_grey" - color = "#808080" - -/datum/reagent/crayon_dust/brown //Rainbow - name = "Brown crayon dust" - id = "crayon_dust_brown" - color = "#846F35" - -/datum/reagent/paint - name = "Paint" - id = "paint" - description = "This paint will stick to almost any object." - reagent_state = LIQUID - color = "#808080" - overdose = REAGENTS_OVERDOSE * 0.5 - color_weight = 20 - -/datum/reagent/paint/touch_turf(var/turf/T) - if(istype(T) && !istype(T, /turf/space)) - T.color = color - -/datum/reagent/paint/touch_obj(var/obj/O) - if(istype(O)) - O.color = color - -/datum/reagent/paint/touch_mob(var/mob/M) - if(istype(M) && !istype(M, /mob/dead)) //painting ghosts: not allowed - M.color = color - -/datum/reagent/paint/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.color = color - -/datum/reagent/paint/get_data() - return color - -/datum/reagent/paint/initialize_data(var/newdata) - color = newdata - return - -/datum/reagent/paint/mix_data(var/newdata, var/newamount) - var/list/colors = list(0, 0, 0, 0) - var/tot_w = 0 - - var/hex1 = uppertext(color) - var/hex2 = uppertext(newdata) - if(length(hex1) == 7) - hex1 += "FF" - if(length(hex2) == 7) - hex2 += "FF" - if(length(hex1) != 9 || length(hex2) != 9) - return - colors[1] += hex2num(copytext(hex1, 2, 4)) * volume - colors[2] += hex2num(copytext(hex1, 4, 6)) * volume - colors[3] += hex2num(copytext(hex1, 6, 8)) * volume - colors[4] += hex2num(copytext(hex1, 8, 10)) * volume - tot_w += volume - colors[1] += hex2num(copytext(hex2, 2, 4)) * newamount - colors[2] += hex2num(copytext(hex2, 4, 6)) * newamount - colors[3] += hex2num(copytext(hex2, 6, 8)) * newamount - colors[4] += hex2num(copytext(hex2, 8, 10)) * newamount - tot_w += newamount - - color = rgb(colors[1] / tot_w, colors[2] / tot_w, colors[3] / tot_w, colors[4] / tot_w) - return - -/* Things that didn't fit anywhere else */ - -/datum/reagent/adminordrazine //An OP chemical for admins - name = "Adminordrazine" - id = "adminordrazine" - description = "It's magic. We don't have to explain it." - reagent_state = LIQUID - color = "#C8A5DC" - affects_dead = 1 //This can even heal dead people. - - glass_icon_state = "golden_cup" - glass_name = "golden cup" - glass_desc = "It's magic. We don't have to explain it." - -/datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - affect_blood(M, alien, removed) - -/datum/reagent/adminordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.setCloneLoss(0) - M.setOxyLoss(0) - M.radiation = 0 - M.heal_organ_damage(5,5) - M.adjustToxLoss(-5) - M.hallucination = 0 - M.setBrainLoss(0) - M.disabilities = 0 - M.sdisabilities = 0 - M.eye_blurry = 0 - M.eye_blind = 0 - M.SetWeakened(0) - M.SetStunned(0) - M.SetParalysis(0) - M.silent = 0 - M.dizziness = 0 - M.drowsyness = 0 - M.stuttering = 0 - M.confused = 0 - M.sleeping = 0 - M.jitteriness = 0 - for(var/datum/disease/D in M.viruses) - D.spread = "Remissive" - D.stage-- - if(D.stage < 1) - D.cure() - -/datum/reagent/gold - name = "Gold" - id = "gold" - description = "Gold is a dense, soft, shiny metal and the most malleable and ductile metal known." - reagent_state = SOLID - color = "#F7C430" - -/datum/reagent/silver - name = "Silver" - id = "silver" - description = "A soft, white, lustrous transition metal, it has the highest electrical conductivity of any element and the highest thermal conductivity of any metal." - reagent_state = SOLID - color = "#D0D0D0" - -/datum/reagent/uranium - name ="Uranium" - id = "uranium" - description = "A silvery-white metallic chemical element in the actinide series, weakly radioactive." - reagent_state = SOLID - color = "#B8B8C0" - -/datum/reagent/uranium/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - affect_ingest(M, alien, removed) - -/datum/reagent/uranium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.apply_effect(5 * removed, IRRADIATE, 0) - -/datum/reagent/uranium/touch_turf(var/turf/T) - if(volume >= 3) - if(!istype(T, /turf/space)) - var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) - if(!glow) - new /obj/effect/decal/cleanable/greenglow(T) - return - -/datum/reagent/adrenaline - name = "Adrenaline" - id = "adrenaline" - description = "Adrenaline is a hormone used as a drug to treat cardiac arrest and other cardiac dysrhythmias resulting in diminished or absent cardiac output." - reagent_state = LIQUID - color = "#C8A5DC" - -/datum/reagent/adrenaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(alien == IS_DIONA) - return - M.SetParalysis(0) - M.SetWeakened(0) - M.adjustToxLoss(rand(3)) - -/datum/reagent/water/holywater - name = "Holy Water" - id = "holywater" - description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." - color = "#E0E8EF" - - glass_icon_state = "glass_clear" - glass_name = "glass of holy water" - glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." - -/datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) - ..() - if(ishuman(M)) // Any location - if(M.mind && cult.is_antagonist(M.mind) && prob(10)) - cult.remove_antagonist(M.mind) - -/datum/reagent/ammonia - name = "Ammonia" - id = "ammonia" - description = "A caustic substance commonly used in fertilizer or household cleaners." - reagent_state = GAS - color = "#404030" - -/datum/reagent/diethylamine - name = "Diethylamine" - id = "diethylamine" - description = "A secondary amine, mildly corrosive." - reagent_state = LIQUID - color = "#604030" - -/datum/reagent/fluorosurfactant // Foam precursor - name = "Fluorosurfactant" - id = "fluorosurfactant" - description = "A perfluoronated sulfonic acid that forms a foam when mixed with water." - reagent_state = LIQUID - color = "#9E6B38" - -/datum/reagent/foaming_agent // Metal foaming agent. This is lithium hydride. Add other recipes (e.g. LiH + H2O -> LiOH + H2) eventually. - name = "Foaming agent" - id = "foaming_agent" - description = "A agent that yields metallic foam when mixed with light metal and a strong acid." - reagent_state = SOLID - color = "#664B63" - -/datum/reagent/thermite - name = "Thermite" - id = "thermite" - description = "Thermite produces an aluminothermic reaction known as a thermite reaction. Can be used to melt walls." - reagent_state = SOLID - color = "#673910" - touch_met = 50 - -/datum/reagent/thermite/touch_turf(var/turf/T) - if(volume >= 5) - if(istype(T, /turf/simulated/wall)) - var/turf/simulated/wall/W = T - W.thermite = 1 - W.overlays += image('icons/effects/effects.dmi',icon_state = "#673910") - remove_self(5) - return - -/datum/reagent/thermite/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjust_fire_stacks(removed * 0.2) - return - -/datum/reagent/thermite/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) - M.adjustFireLoss(3 * removed) - -/datum/reagent/space_cleaner - name = "Space cleaner" - id = "cleaner" - description = "A compound used to clean things. Now with 50% more sodium hypochlorite!" - reagent_state = LIQUID - color = "#A5F0EE" - touch_met = 50 - -/datum/reagent/space_cleaner/touch_obj(var/obj/O) - if(istype(O, /obj/effect/decal/cleanable)) - qdel(O) - else - O.clean_blood() - -/datum/reagent/space_cleaner/touch_turf(var/turf/T) - if(volume >= 1) - if(istype(T, /turf/simulated)) - var/turf/simulated/S = T - S.dirt = 0 - T.clean_blood() - - for(var/mob/living/carbon/slime/M in T) - M.adjustToxLoss(rand(5, 10)) - -/datum/reagent/space_cleaner/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) - if(M.r_hand) - M.r_hand.clean_blood() - if(M.l_hand) - M.l_hand.clean_blood() - if(M.wear_mask) - if(M.wear_mask.clean_blood()) - M.update_inv_wear_mask(0) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.head) - if(H.head.clean_blood()) - H.update_inv_head(0) - if(H.wear_suit) - if(H.wear_suit.clean_blood()) - H.update_inv_wear_suit(0) - else if(H.w_uniform) - if(H.w_uniform.clean_blood()) - H.update_inv_w_uniform(0) - if(H.shoes) - if(H.shoes.clean_blood()) - H.update_inv_shoes(0) - else - H.clean_blood(1) - return - M.clean_blood() - -/datum/reagent/lube // TODO: spraying on borgs speeds them up - name = "Space Lube" - id = "lube" - description = "Lubricant is a substance introduced between two moving surfaces to reduce the friction and wear between them. giggity." - reagent_state = LIQUID - color = "#009CA8" - -/datum/reagent/lube/touch_turf(var/turf/simulated/T) - if(!istype(T)) - return - if(volume >= 1) - if(T.wet >= 2) - return - T.wet = 2 - spawn(800) - if(!T || !istype(T)) - return - T.wet = 0 - if(T.wet_overlay) - T.overlays -= T.wet_overlay - T.wet_overlay = null - -/datum/reagent/silicate - name = "Silicate" - id = "silicate" - description = "A compound that can be used to reinforce glass." - reagent_state = LIQUID - color = "#C7FFFF" - -/datum/reagent/silicate/touch_obj(var/obj/O) - if(istype(O, /obj/structure/window)) - var/obj/structure/window/W = O - W.apply_silicate(volume) - remove_self(volume) - return - -/datum/reagent/glycerol - name = "Glycerol" - id = "glycerol" - description = "Glycerol is a simple polyol compound. Glycerol is sweet-tasting and of low toxicity." - reagent_state = LIQUID - color = "#808080" - -/datum/reagent/nitroglycerin - name = "Nitroglycerin" - id = "nitroglycerin" - description = "Nitroglycerin is a heavy, colorless, oily, explosive liquid obtained by nitrating glycerol." - reagent_state = LIQUID - color = "#808080" - -/datum/reagent/coolant - name = "Coolant" - id = "coolant" - description = "Industrial cooling substance." - reagent_state = LIQUID - color = "#C8A5DC" - -/datum/reagent/ultraglue - name = "Ultra Glue" - id = "glue" - description = "An extremely powerful bonding agent." - color = "#FFFFCC" - -/* Removed xenoarcheology stuff - -/datum/reagent/lithiumsodiumtungstate - name = "Lithium Sodium Tungstate" - id = "lithiumsodiumtungstate" - description = "A reducing agent for geological compounds." - reagent_state = LIQUID - color = "#C0C0C0" // rgb: 192, 192, 192, darker silver - -/datum/reagent/ground_rock - name = "Ground Rock" - id = "ground_rock" - description = "A fine dust made of ground up rock." - reagent_state = SOLID - color = "#A0522D" //rgb: 160, 82, 45, brown - -/datum/reagent/density_separated_sample - name = "Density separated sample" - id = "density_separated_sample" - description = "A watery paste used in chemical analysis, there are some chunks floating in it." - reagent_state = LIQUID - color = "#DEB887" //rgb: 222, 184, 135, light brown - -/datum/reagent/analysis_sample - name = "Analysis liquid" - id = "analysis_sample" - description = "A watery paste used in chemical analysis." - reagent_state = LIQUID - color = "#F5FFFA" //rgb: 245, 255, 250, almost white - -/datum/reagent/chemical_waste - name = "Chemical Waste" - id = "chemical_waste" - description = "A viscous, toxic liquid left over from many chemical processes." - reagent_state = LIQUID - color = "#ADFF2F" //rgb: 173, 255, 47, toxic green -*/ \ No newline at end of file diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm new file mode 100644 index 0000000000..cd3da656a9 --- /dev/null +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm @@ -0,0 +1,198 @@ +/datum/reagent/blood + data = new/list("donor" = null, "viruses" = null, "species" = "Human", "blood_DNA" = null, "blood_type" = null, "blood_colour" = "#A10808", "resistances" = null, "trace_chem" = null, "antibodies" = list()) + name = "Blood" + id = "blood" + reagent_state = LIQUID + metabolism = REM * 5 + color = "#C80000" + + glass_icon_state = "glass_red" + glass_name = "glass of tomato juice" + glass_desc = "Are you sure this is tomato juice?" + +/datum/reagent/blood/initialize_data(var/newdata) + ..() + if(data && data["blood_colour"]) + color = data["blood_colour"] + return + +/datum/reagent/blood/get_data() // Just in case you have a reagent that handles data differently. + var/t = data.Copy() + if(t["virus2"]) + var/list/v = t["virus2"] + t["virus2"] = v.Copy() + return t + +/datum/reagent/blood/mix_data(var/newdata, var/newamount) // You have a reagent with data, and new reagent with its own data get added, how do you deal with that? + if(data["viruses"] || newdata["viruses"]) + var/list/mix1 = data["viruses"] + var/list/mix2 = newdata["viruses"] + var/list/to_mix = list() // Stop issues with the list changing during mixing. + for(var/datum/disease/advance/AD in mix1) + to_mix += AD + for(var/datum/disease/advance/AD in mix2) + to_mix += AD + var/datum/disease/advance/AD = Advance_Mix(to_mix) + if(AD) + var/list/preserve = list(AD) + for(var/D in data["viruses"]) + if(!istype(D, /datum/disease/advance)) + preserve += D + data["viruses"] = preserve + +/datum/reagent/blood/touch_turf(var/turf/simulated/T) + if(!istype(T) || volume < 3) + return + if(!data["donor"] || istype(data["donor"], /mob/living/carbon/human)) + blood_splatter(T, src, 1) + else if(istype(data["donor"], /mob/living/carbon/alien)) + var/obj/effect/decal/cleanable/blood/B = blood_splatter(T, src, 1) + if(B) + B.blood_DNA["UNKNOWN DNA STRUCTURE"] = "X*" + +/datum/reagent/blood/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(dose > 5) + M.adjustToxLoss(removed) + if(dose > 15) + M.adjustToxLoss(removed) + +/datum/reagent/blood/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(data && data["viruses"]) + for(var/datum/disease/D in data["viruses"]) + if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) + continue + M.contract_disease(D) + if(data && data["virus2"]) + var/list/vlist = data["virus2"] + if(vlist.len) + for(var/ID in vlist) + var/datum/disease2/disease/V = vlist[ID] + infect_virus2(M, V.getcopy()) + if(data && data["antibodies"]) + M.antibodies |= data["antibodies"] + +/datum/reagent/blood/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.inject_blood(src, volume) + remove_self(volume) + +/datum/reagent/vaccine + name = "Vaccine" + id = "vaccine" + reagent_state = LIQUID + color = "#C81040" + +/datum/reagent/vaccine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(data) + for(var/datum/disease/D in M.viruses) + if(istype(D, /datum/disease/advance)) + var/datum/disease/advance/A = D + if(A.GetDiseaseID() == data) + D.cure() + else + if(D.type == data) + D.cure() + + M.resistances += data + return + +#define WATER_LATENT_HEAT 19000 // How much heat is removed when applied to a hot turf, in J/unit (19000 makes 120 u of water roughly equivalent to 4L) +/datum/reagent/water + name = "Water" + id = "water" + description = "A ubiquitous chemical substance that is composed of hydrogen and oxygen." + reagent_state = LIQUID + color = "#0064C877" + metabolism = REM * 10 + + glass_icon_state = "glass_clear" + glass_name = "glass of water" + glass_desc = "The father of all refreshments." + +/datum/reagent/water/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return + + var/datum/gas_mixture/environment = T.return_air() + var/min_temperature = T0C + 100 // 100C, the boiling point of water + + var/hotspot = (locate(/obj/fire) in T) + if(hotspot && !istype(T, /turf/space)) + var/datum/gas_mixture/lowertemp = T.remove_air(T:air:total_moles) + lowertemp.temperature = max(min(lowertemp.temperature-2000, lowertemp.temperature / 2), 0) + lowertemp.react() + T.assume_air(lowertemp) + qdel(hotspot) + + if (environment && environment.temperature > min_temperature) // Abstracted as steam or something + var/removed_heat = between(0, volume * WATER_LATENT_HEAT, -environment.get_thermal_energy_change(min_temperature)) + environment.add_thermal_energy(-removed_heat) + if (prob(5)) + T.visible_message("The water sizzles as it lands on \the [T]!") + else + if(volume >= 3) + if(T.wet >= 1) + return + T.wet = 1 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") + T.overlays += T.wet_overlay + + spawn(800) // This is terrible and needs to be changed when possible. + if(!T || !istype(T)) + return + if(T.wet >= 2) + return + T.wet = 0 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + +/datum/reagent/water/touch_obj(var/obj/O) + if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube)) + var/obj/item/weapon/reagent_containers/food/snacks/monkeycube/cube = O + if(!cube.wrapped) + cube.Expand() + +/datum/reagent/water/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(istype(M, /mob/living/carbon/slime)) + var/mob/living/carbon/slime/S = M + S.adjustToxLoss(15 * removed) // Babies have 150 health, adults have 200; So, 10 units and 13.5 + if(!S.client) + if(S.Target) // Like cats + S.Target = null + ++S.Discipline + if(dose == removed) + S.visible_message("[S]'s flesh sizzles where the water touches it!", "Your flesh burns in the water!") + var/needed = M.fire_stacks * 10 + if(volume > needed) + M.fire_stacks = 0 + M.ExtinguishMob() + remove_self(needed) + else + M.adjust_fire_stacks(-(volume / 10)) + remove_self(volume) + return + +/datum/reagent/fuel + name = "Welding fuel" + id = "fuel" + description = "Required for welders. Flamable." + reagent_state = LIQUID + color = "#660000" + + glass_icon_state = "dr_gibb_glass" + glass_name = "glass of welder fuel" + glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption." + +/datum/reagent/fuel/touch_turf(var/turf/T) + new /obj/effect/decal/cleanable/liquid_fuel(T, volume) + remove_self(volume) + return + +/datum/reagent/fuel/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(2 * removed) + +/datum/reagent/fuel/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // Splashing people with welding fuel to make them easy to ignite! + M.adjust_fire_stacks(0.1 * removed) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm new file mode 100644 index 0000000000..9d968aed78 --- /dev/null +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -0,0 +1,376 @@ +/datum/reagent/aluminum + name = "Aluminum" + id = "aluminum" + description = "A silvery white and ductile member of the boron group of chemical elements." + reagent_state = SOLID + color = "#A8A8A8" + +/datum/reagent/carbon + name = "Carbon" + id = "carbon" + description = "A chemical element, the builing block of life." + reagent_state = SOLID + color = "#1C1300" + +/datum/reagent/carbon/touch_turf(var/turf/T) + if(!istype(T, /turf/space)) + var/obj/effect/decal/cleanable/dirt/dirtoverlay = locate(/obj/effect/decal/cleanable/dirt, T) + if (!dirtoverlay) + dirtoverlay = new/obj/effect/decal/cleanable/dirt(T) + dirtoverlay.alpha = volume * 30 + else + dirtoverlay.alpha = min(dirtoverlay.alpha + volume * 30, 255) + +/datum/reagent/chlorine + name = "Chlorine" + id = "chlorine" + description = "A chemical element with a characteristic odour." + reagent_state = GAS + color = "#808080" + +/datum/reagent/chlorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.take_organ_damage(1*REM, 0) + +/datum/reagent/chlorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.take_organ_damage(1*REM, 0) + +/datum/reagent/copper + name = "Copper" + id = "copper" + description = "A highly ductile metal." + color = "#6E3B08" + +/datum/reagent/ethanol + name = "Ethanol" //Parent class for all alcoholic reagents. + id = "ethanol" + description = "A well-known alcohol with a variety of applications." + reagent_state = LIQUID + color = "#404030" + var/nutriment_factor = 0 + var/strength = 10 // This is, essentially, units between stages - the lower, the stronger. Less fine tuning, more clarity. + var/toxicity = 1 + + var/druggy = 0 + var/adj_temp = 0 + var/targ_temp = 310 + var/halluci = 0 + + glass_icon_state = "glass_clear" + glass_name = "glass of ethanol" + glass_desc = "A well-known alcohol with a variety of applications." + +/datum/reagent/ethanol/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjust_fire_stacks(removed / 15) + return + +/datum/reagent/ethanol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed * 2 * toxicity) + return + +/datum/reagent/ethanol/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.nutrition += nutriment_factor * removed + + var/strength_mod = 1 + if(alien == IS_SKRELL) + strength_mod *= 5 + if(alien == IS_DIONA) + strength_mod = 0 + + M.add_chemical_effect(CE_ALCOHOL, 1) + + if(dose / strength_mod >= strength) // Early warning + M.make_dizzy(6) // It is decreased at the speed of 3 per tick + if(dose / strength_mod >= strength * 2) // Slurring + M.slurring = max(M.slurring, 30) + if(dose / strength_mod >= strength * 3) // Confusion - walking in random directions + M.confused = max(M.confused, 20) + if(dose / strength_mod >= strength * 4) // Blurry vision + M.eye_blurry = max(M.eye_blurry, 10) + if(dose / strength_mod >= strength * 5) // Drowsyness - periodically falling asleep + M.drowsyness = max(M.drowsyness, 20) + if(dose / strength_mod >= strength * 6) // Toxic dose + M.add_chemical_effect(CE_ALCOHOL_TOXIC, toxicity) + if(dose / strength_mod >= strength * 7) // Pass out + M.paralysis = max(M.paralysis, 20) + M.sleeping = max(M.sleeping, 30) + + if(druggy != 0) + M.druggy = max(M.druggy, druggy) + + if(adj_temp > 0 && M.bodytemperature < targ_temp) // 310 is the normal bodytemp. 310.055 + M.bodytemperature = min(targ_temp, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + if(adj_temp < 0 && M.bodytemperature > targ_temp) + M.bodytemperature = min(targ_temp, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + + if(halluci) + M.hallucination = max(M.hallucination, halluci) + +/datum/reagent/ethanol/touch_obj(var/obj/O) + if(istype(O, /obj/item/weapon/paper)) + var/obj/item/weapon/paper/paperaffected = O + paperaffected.clearpaper() + usr << "The solution dissolves the ink on the paper." + return + if(istype(O, /obj/item/weapon/book)) + if(volume < 5) + return + if(istype(O, /obj/item/weapon/book/tome)) + usr << "The solution does nothing. Whatever this is, it isn't normal ink." + return + var/obj/item/weapon/book/affectedbook = O + affectedbook.dat = null + usr << "The solution dissolves the ink on the book." + return + +/datum/reagent/fluorine + name = "Fluorine" + id = "fluorine" + description = "A highly-reactive chemical element." + reagent_state = GAS + color = "#808080" + +/datum/reagent/fluorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed) + +/datum/reagent/fluorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed) + +/datum/reagent/hydrogen + name = "Hydrogen" + id = "hydrogen" + description = "A colorless, odorless, nonmetallic, tasteless, highly combustible diatomic gas." + reagent_state = GAS + color = "#808080" + +/datum/reagent/iron + name = "Iron" + id = "iron" + description = "Pure iron is a metal." + reagent_state = SOLID + color = "#353535" + +/datum/reagent/iron/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + M.add_chemical_effect(CE_BLOODRESTORE, 8 * removed) + +/datum/reagent/lithium + name = "Lithium" + id = "lithium" + description = "A chemical element, used as antidepressant." + reagent_state = SOLID + color = "#808080" + +/datum/reagent/lithium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) + step(M, pick(cardinal)) + if(prob(5)) + M.emote(pick("twitch", "drool", "moan")) + +/datum/reagent/mercury + name = "Mercury" + id = "mercury" + description = "A chemical element." + reagent_state = LIQUID + color = "#484848" + +/datum/reagent/mercury/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) + step(M, pick(cardinal)) + if(prob(5)) + M.emote(pick("twitch", "drool", "moan")) + M.adjustBrainLoss(2) + +/datum/reagent/nitrogen + name = "Nitrogen" + id = "nitrogen" + description = "A colorless, odorless, tasteless gas." + reagent_state = GAS + color = "#808080" + +/datum/reagent/nitrogen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_VOX) + M.adjustOxyLoss(-removed * 3) + +/datum/reagent/oxygen + name = "Oxygen" + id = "oxygen" + description = "A colorless, odorless gas." + reagent_state = GAS + color = "#808080" + +/datum/reagent/oxygen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_VOX) + M.adjustToxLoss(removed * 3) + +/datum/reagent/phosphorus + name = "Phosphorus" + id = "phosphorus" + description = "A chemical element, the backbone of biological energy carriers." + reagent_state = SOLID + color = "#832828" + +/datum/reagent/potassium + name = "Potassium" + id = "potassium" + description = "A soft, low-melting solid that can easily be cut with a knife. Reacts violently with water." + reagent_state = SOLID + color = "#A0A0A0" + +/datum/reagent/radium + name = "Radium" + id = "radium" + description = "Radium is an alkaline earth metal. It is extremely radioactive." + reagent_state = SOLID + color = "#C7C7C7" + +/datum/reagent/radium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.apply_effect(10 * removed, IRRADIATE, 0) // Radium may increase your chances to cure a disease + if(M.virus2.len) + for(var/ID in M.virus2) + var/datum/disease2/disease/V = M.virus2[ID] + if(prob(5)) + M.antibodies |= V.antigen + if(prob(50)) + M.radiation += 50 // curing it that way may kill you instead + var/absorbed = 0 + var/obj/item/organ/diona/nutrients/rad_organ = locate() in M.internal_organs + if(rad_organ && !rad_organ.is_broken()) + absorbed = 1 + if(!absorbed) + M.adjustToxLoss(100) + +/datum/reagent/radium/touch_turf(var/turf/T) + if(volume >= 3) + if(!istype(T, /turf/space)) + var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) + if(!glow) + new /obj/effect/decal/cleanable/greenglow(T) + return + +/datum/reagent/acid + name = "Sulphuric acid" + id = "sacid" + description = "A very corrosive mineral acid with the molecular formula H2SO4." + reagent_state = LIQUID + color = "#DB5008" + metabolism = REM * 2 + touch_met = 50 // It's acid! + var/power = 5 + var/meltdose = 10 // How much is needed to melt + +/datum/reagent/acid/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.take_organ_damage(0, removed * power * 2) + +/datum/reagent/acid/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // This is the most interesting + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.head) + if(H.head.unacidable) + H << "Your [H.head] protects you from the acid." + remove_self(volume) + return + else if(removed > meltdose) + H << "Your [H.head] melts away!" + qdel(H.head) + H.update_inv_head(1) + H.update_hair(1) + removed -= meltdose + if(removed <= 0) + return + + if(H.wear_mask) + if(H.wear_mask.unacidable) + H << "Your [H.wear_mask] protects you from the acid." + remove_self(volume) + return + else if(removed > meltdose) + H << "Your [H.wear_mask] melts away!" + qdel(H.wear_mask) + H.update_inv_wear_mask(1) + H.update_hair(1) + removed -= meltdose + if(removed <= 0) + return + + if(H.glasses) + if(H.glasses.unacidable) + H << "Your [H.glasses] partially protect you from the acid!" + removed /= 2 + else if(removed > meltdose) + H << "Your [H.glasses] melt away!" + qdel(H.glasses) + H.update_inv_glasses(1) + removed -= meltdose / 2 + if(removed <= 0) + return + + if(volume < meltdose) // Not enough to melt anything + M.take_organ_damage(removed * power * 0.2) + return + if(!M.unacidable && removed > 0) + if(istype(M, /mob/living/carbon/human) && volume >= meltdose) + var/mob/living/carbon/human/H = M + var/obj/item/organ/external/affecting = H.get_organ("head") + if(affecting) + if(affecting.take_damage(0, removed * power * 0.1)) + H.UpdateDamageIcon() + if(prob(100 * removed / meltdose)) // Applies disfigurement + if (!(H.species && (H.species.flags & NO_PAIN))) + H.emote("scream") + H.status_flags |= DISFIGURED + else + M.take_organ_damage(0, removed * power * 0.1) // Balance. The damage is instant, so it's weaker. 10 units -> 5 damage, double for pacid. 120 units beaker could deal 60, but a) it's burn, which is not as dangerous, b) it's a one-use weapon, c) missing with it will splash it over the ground and d) clothes give some protection, so not everything will hit + +/datum/reagent/acid/touch_obj(var/obj/O) + if(O.unacidable) + return + if((istype(O, /obj/item) || istype(O, /obj/effect/plant)) && (volume > meltdose)) + var/obj/effect/decal/cleanable/molten_item/I = new/obj/effect/decal/cleanable/molten_item(O.loc) + I.desc = "Looks like this was \an [O] some time ago." + for(var/mob/M in viewers(5, O)) + M << "\The [O] melts." + qdel(O) + remove_self(meltdose) // 10 units of acid will not melt EVERYTHING on the tile + +/datum/reagent/silicon + name = "Silicon" + id = "silicon" + description = "A tetravalent metalloid, silicon is less reactive than its chemical analog carbon." + reagent_state = SOLID + color = "#A8A8A8" + +/datum/reagent/sodium + name = "Sodium" + id = "sodium" + description = "A chemical element, readily reacts with water." + reagent_state = SOLID + color = "#808080" + +/datum/reagent/sugar + name = "Sugar" + id = "sugar" + description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." + reagent_state = SOLID + color = "#FFFFFF" + glass_icon_state = "iceglass" + glass_name = "glass of sugar" + glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." + +/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.nutrition += removed * 3 + +/datum/reagent/sulfur + name = "Sulfur" + id = "sulfur" + description = "A chemical element with a pungent smell." + reagent_state = SOLID + color = "#BF8C00" + +/datum/reagent/tungsten + name = "Tungsten" + id = "tungsten" + description = "A chemical element, and a strong oxidising agent." + reagent_state = SOLID + color = "#DCDCDC" diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm new file mode 100644 index 0000000000..220bad857b --- /dev/null +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -0,0 +1,1924 @@ +/* Food */ + +/datum/reagent/nutriment + name = "Nutriment" + id = "nutriment" + description = "All the vitamins, minerals, and carbohydrates the body needs in pure form." + reagent_state = SOLID + metabolism = REM * 4 + var/nutriment_factor = 30 // Per unit + var/injectable = 0 + color = "#664330" + +/datum/reagent/nutriment/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(!injectable) + M.adjustToxLoss(0.1 * removed) + return + affect_ingest(M, alien, removed) + +/datum/reagent/nutriment/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.heal_organ_damage(0.5 * removed, 0) + M.nutrition += nutriment_factor * removed // For hunger and fatness + M.add_chemical_effect(CE_BLOODRESTORE, 4 * removed) + +/datum/reagent/nutriment/protein // Bad for Skrell! + name = "animal protein" + id = "protein" + color = "#440000" + +/datum/reagent/nutriment/protein/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien && alien == IS_SKRELL) + M.adjustToxLoss(0.5 * removed) + return + ..() + +/datum/reagent/nutriment/egg // Also bad for skrell. Not a child of protein because it might mess up, not sure. + name = "egg yolk" + id = "egg" + color = "#FFFFAA" + +/datum/reagent/nutriment/egg/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien && alien == IS_SKRELL) + M.adjustToxLoss(0.5) + return + ..() + +/datum/reagent/nutriment/flour + name = "flour" + id = "flour" + description = "This is what you rub all over yourself to pretend to be a ghost." + reagent_state = SOLID + nutriment_factor = 1 + color = "#FFFFFF" + +/datum/reagent/nutriment/flour/touch_turf(var/turf/simulated/T) + if(!istype(T, /turf/space)) + new /obj/effect/decal/cleanable/flour(T) + +/datum/reagent/nutriment/coco + name = "Coco Powder" + id = "coco" + description = "A fatty, bitter paste made from coco beans." + reagent_state = SOLID + nutriment_factor = 5 + color = "#302000" + +/datum/reagent/nutriment/soysauce + name = "Soysauce" + id = "soysauce" + description = "A salty sauce made from the soy plant." + reagent_state = LIQUID + nutriment_factor = 2 + color = "#792300" + +/datum/reagent/nutriment/ketchup + name = "Ketchup" + id = "ketchup" + description = "Ketchup, catsup, whatever. It's tomato paste." + reagent_state = LIQUID + nutriment_factor = 5 + color = "#731008" + +/datum/reagent/nutriment/rice + name = "Rice" + id = "rice" + description = "Enjoy the great taste of nothing." + reagent_state = SOLID + nutriment_factor = 1 + color = "#FFFFFF" + +/datum/reagent/nutriment/cherryjelly + name = "Cherry Jelly" + id = "cherryjelly" + description = "Totally the best. Only to be spread on foods with excellent lateral symmetry." + reagent_state = LIQUID + nutriment_factor = 1 + color = "#801E28" + +/datum/reagent/nutriment/cornoil + name = "Corn Oil" + id = "cornoil" + description = "An oil derived from various types of corn." + reagent_state = LIQUID + nutriment_factor = 20 + color = "#302000" + +/datum/reagent/nutriment/cornoil/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return + + var/hotspot = (locate(/obj/fire) in T) + if(hotspot && !istype(T, /turf/space)) + var/datum/gas_mixture/lowertemp = T.remove_air(T:air:total_moles) + lowertemp.temperature = max(min(lowertemp.temperature-2000, lowertemp.temperature / 2), 0) + lowertemp.react() + T.assume_air(lowertemp) + qdel(hotspot) + + if(volume >= 3) + if(T.wet >= 1) + return + T.wet = 1 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + T.wet_overlay = image('icons/effects/water.dmi',T,"wet_floor") + T.overlays += T.wet_overlay + + spawn(800) // This is terrible and needs to be changed when possible. + if(!T || !istype(T)) + return + if(T.wet >= 2) + return + T.wet = 0 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + +/datum/reagent/nutriment/virus_food + name = "Virus Food" + id = "virusfood" + description = "A mixture of water, milk, and oxygen. Virus cells can use this mixture to reproduce." + reagent_state = LIQUID + nutriment_factor = 2 + color = "#899613" + +/datum/reagent/nutriment/sprinkles + name = "Sprinkles" + id = "sprinkles" + description = "Multi-colored little bits of sugar, commonly found on donuts. Loved by cops." + nutriment_factor = 1 + color = "#FF00FF" + +/datum/reagent/nutriment/mint + name = "Mint" + id = "mint" + description = "Also known as Mentha." + reagent_state = LIQUID + color = "#CF3600" + +/datum/reagent/lipozine // The anti-nutriment. + name = "Lipozine" + id = "lipozine" + description = "A chemical compound that causes a powerful fat-burning reaction." + reagent_state = LIQUID + color = "#BBEDA4" + overdose = REAGENTS_OVERDOSE + +/datum/reagent/lipozine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.nutrition = max(M.nutrition - 10 * removed, 0) + M.overeatduration = 0 + if(M.nutrition < 0) + M.nutrition = 0 + +/* Non-food stuff like condiments */ + +/datum/reagent/sodiumchloride + name = "Table Salt" + id = "sodiumchloride" + description = "A salt made of sodium chloride. Commonly used to season food." + reagent_state = SOLID + color = "#FFFFFF" + overdose = REAGENTS_OVERDOSE + +/datum/reagent/blackpepper + name = "Black Pepper" + id = "blackpepper" + description = "A powder ground from peppercorns. *AAAACHOOO*" + reagent_state = SOLID + color = "#000000" + +/datum/reagent/enzyme + name = "Universal Enzyme" + id = "enzyme" + description = "A universal enzyme used in the preperation of certain chemicals and foods." + reagent_state = LIQUID + color = "#365E30" + overdose = REAGENTS_OVERDOSE + +/datum/reagent/frostoil + name = "Frost Oil" + id = "frostoil" + description = "A special oil that noticably chills the body. Extracted from Ice Peppers." + reagent_state = LIQUID + color = "#B31008" + +/datum/reagent/frostoil/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.bodytemperature = max(M.bodytemperature - 10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0) + if(prob(1)) + M.emote("shiver") + if(istype(M, /mob/living/carbon/slime)) + M.bodytemperature = max(M.bodytemperature - rand(10,20), 0) + holder.remove_reagent("capsaicin", 5) + +/datum/reagent/capsaicin + name = "Capsaicin Oil" + id = "capsaicin" + description = "This is what makes chilis hot." + reagent_state = LIQUID + color = "#B31008" + +/datum/reagent/capsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) + return + if(dose < 5 && (dose == metabolism || prob(5))) + M << "Your insides feel uncomfortably hot!" + if(dose >= 5) + M.apply_effect(2, AGONY, 0) + if(prob(5)) + M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") + if(istype(M, /mob/living/carbon/slime)) + M.bodytemperature += rand(10, 25) + holder.remove_reagent("frostoil", 5) + +/datum/reagent/condensedcapsaicin + name = "Condensed Capsaicin" + id = "condensedcapsaicin" + description = "A chemical agent used for self-defense and in police work." + reagent_state = LIQUID + touch_met = 50 // Get rid of it quickly + color = "#B31008" + +/datum/reagent/condensedcapsaicin/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + var/eyes_covered = 0 + var/mouth_covered = 0 + var/obj/item/safe_thing = null + if(istype(M, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & NO_PAIN)) + return + if(H.head) + if(H.head.flags & MASKCOVERSEYES) + eyes_covered = 1 + safe_thing = H.head + if(H.head.flags & MASKCOVERSMOUTH) + mouth_covered = 1 + safe_thing = H.head + if(H.wear_mask) + if(!eyes_covered && H.wear_mask.flags & MASKCOVERSEYES) + eyes_covered = 1 + safe_thing = H.wear_mask + if(!mouth_covered && H.wear_mask.flags & MASKCOVERSMOUTH) + mouth_covered = 1 + safe_thing = H.wear_mask + if(H.glasses) + if(!eyes_covered) + eyes_covered = 1 + if(!safe_thing) + safe_thing = H.glasses + if(eyes_covered && mouth_covered) + M << "Your [safe_thing] protects you from the pepperspray!" + return + else if(eyes_covered) + M << "Your [safe_thing] protect you from most of the pepperspray!" + M.eye_blurry = max(M.eye_blurry, 15) + M.eye_blind = max(M.eye_blind, 5) + M.Stun(5) + M.Weaken(5) + return + else if (mouth_covered) // Mouth cover is better than eye cover + M << "Your [safe_thing] protects your face from the pepperspray!" + M.eye_blurry = max(M.eye_blurry, 5) + return + else // Oh dear :D + M << "You're sprayed directly in the eyes with pepperspray!" + M.eye_blurry = max(M.eye_blurry, 25) + M.eye_blind = max(M.eye_blind, 10) + M.Stun(5) + M.Weaken(5) + return + +/datum/reagent/condensedcapsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) + return + if(dose == metabolism) + M << "You feel like your insides are burning!" + else + M.apply_effect(4, AGONY, 0) + if(prob(5)) + M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") + if(istype(M, /mob/living/carbon/slime)) + M.bodytemperature += rand(15, 30) + holder.remove_reagent("frostoil", 5) + +/* Drinks */ + +/datum/reagent/drink + name = "Drink" + id = "drink" + description = "Uh, some kind of drink." + reagent_state = LIQUID + color = "#E78108" + var/nutrition = 0 // Per unit + var/adj_dizzy = 0 // Per tick + var/adj_drowsy = 0 + var/adj_sleepy = 0 + var/adj_temp = 0 + +/datum/reagent/drink/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustToxLoss(removed) // Probably not a good idea; not very deadly though + return + +/datum/reagent/drink/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.nutrition += nutrition * removed + M.dizziness = max(0, M.dizziness + adj_dizzy) + M.drowsyness = max(0, M.drowsyness + adj_drowsy) + M.sleeping = max(0, M.sleeping + adj_sleepy) + if(adj_temp > 0 && M.bodytemperature < 310) // 310 is the normal bodytemp. 310.055 + M.bodytemperature = min(310, M.bodytemperature + (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + if(adj_temp < 0 && M.bodytemperature > 310) + M.bodytemperature = min(310, M.bodytemperature - (adj_temp * TEMPERATURE_DAMAGE_COEFFICIENT)) + +// Juices + +/datum/reagent/drink/banana + name = "Banana Juice" + id = "banana" + description = "The raw essence of a banana." + color = "#C3AF00" + + glass_icon_state = "banana" + glass_name = "glass of banana juice" + glass_desc = "The raw essence of a banana. HONK!" + +/datum/reagent/drink/berryjuice + name = "Berry Juice" + id = "berryjuice" + description = "A delicious blend of several different kinds of berries." + color = "#990066" + + glass_icon_state = "berryjuice" + glass_name = "glass of berry juice" + glass_desc = "Berry juice. Or maybe it's jam. Who cares?" + +/datum/reagent/drink/carrotjuice + name = "Carrot juice" + id = "carrotjuice" + description = "It is just like a carrot but without crunching." + color = "#FF8C00" // rgb: 255, 140, 0 + + glass_icon_state = "carrotjuice" + glass_name = "glass of carrot juice" + glass_desc = "It is just like a carrot but without crunching." + +/datum/reagent/drink/carrotjuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.reagents.add_reagent("imidazoline", removed * 0.2) + +/datum/reagent/drink/grapejuice + name = "Grape Juice" + id = "grapejuice" + description = "It's grrrrrape!" + color = "#863333" + + glass_icon_state = "grapejuice" + glass_name = "glass of grape juice" + glass_desc = "It's grrrrrape!" + +/datum/reagent/drink/lemonjuice + name = "Lemon Juice" + id = "lemonjuice" + description = "This juice is VERY sour." + color = "#AFAF00" + + glass_icon_state = "lemonjuice" + glass_name = "glass of lemon juice" + glass_desc = "Sour..." + +/datum/reagent/drink/limejuice + name = "Lime Juice" + id = "limejuice" + description = "The sweet-sour juice of limes." + color = "#365E30" + + glass_icon_state = "glass_green" + glass_name = "glass of lime juice" + glass_desc = "A glass of sweet-sour lime juice" + +/datum/reagent/drink/limejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.adjustToxLoss(-0.5 * removed) + +/datum/reagent/drink/orangejuice + name = "Orange juice" + id = "orangejuice" + description = "Both delicious AND rich in Vitamin C, what more do you need?" + color = "#E78108" + + glass_icon_state = "glass_orange" + glass_name = "glass of orange juice" + glass_desc = "Vitamins! Yay!" + +/datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.adjustOxyLoss(-2 * removed) + +/datum/reagent/toxin/poisonberryjuice // It has more in common with toxins than drinks... but it's a juice + name = "Poison Berry Juice" + id = "poisonberryjuice" + description = "A tasty juice blended from various kinds of very deadly and toxic berries." + color = "#863353" + strength = 5 + + glass_icon_state = "poisonberryjuice" + glass_name = "glass of poison berry juice" + glass_desc = "A glass of deadly juice." + +/datum/reagent/drink/potato_juice + name = "Potato Juice" + id = "potato" + description = "Juice of the potato. Bleh." + nutrition = 2 + color = "#302000" + + glass_icon_state = "glass_brown" + glass_name = "glass of potato juice" + glass_desc = "Juice from a potato. Bleh." + +/datum/reagent/drink/tomatojuice + name = "Tomato Juice" + id = "tomatojuice" + description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?" + color = "#731008" + + glass_icon_state = "glass_red" + glass_name = "glass of tomato juice" + glass_desc = "Are you sure this is tomato juice?" + +/datum/reagent/drink/tomatojuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.heal_organ_damage(0, 0.5 * removed) + +/datum/reagent/drink/watermelonjuice + name = "Watermelon Juice" + id = "watermelonjuice" + description = "Delicious juice made from watermelon." + color = "#B83333" + + glass_icon_state = "glass_red" + glass_name = "glass of watermelon juice" + glass_desc = "Delicious juice made from watermelon." + +// Everything else + +/datum/reagent/drink/milk + name = "Milk" + id = "milk" + description = "An opaque white liquid produced by the mammary glands of mammals." + color = "#DFDFDF" + + glass_icon_state = "glass_white" + glass_name = "glass of milk" + glass_desc = "White and nutritious goodness!" + +/datum/reagent/drink/milk/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.heal_organ_damage(0.5 * removed, 0) + holder.remove_reagent("capsaicin", 10 * removed) + +/datum/reagent/drink/milk/cream + name = "Cream" + id = "cream" + description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?" + color = "#DFD7AF" + + glass_icon_state = "glass_white" + glass_name = "glass of cream" + glass_desc = "Ewwww..." + +/datum/reagent/drink/milk/soymilk + name = "Soy Milk" + id = "soymilk" + description = "An opaque white liquid made from soybeans." + color = "#DFDFC7" + + glass_icon_state = "glass_white" + glass_name = "glass of soy milk" + glass_desc = "White and nutritious soy goodness!" + +/datum/reagent/drink/tea + name = "Tea" + id = "tea" + description = "Tasty black tea, it has antioxidants, it's good for you!" + color = "#101000" + adj_dizzy = -2 + adj_drowsy = -1 + adj_sleepy = -3 + adj_temp = 20 + + glass_icon_state = "bigteacup" + glass_name = "cup of tea" + glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" + +/datum/reagent/drink/tea/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.adjustToxLoss(-0.5 * removed) + +/datum/reagent/drink/tea/icetea + name = "Iced Tea" + id = "icetea" + description = "No relation to a certain rap artist/ actor." + color = "#104038" // rgb: 16, 64, 56 + adj_temp = -5 + + glass_icon_state = "icedteaglass" + glass_name = "glass of iced tea" + glass_desc = "No relation to a certain rap artist/ actor." + glass_center_of_mass = list("x"=15, "y"=10) + +/datum/reagent/drink/coffee + name = "Coffee" + id = "coffee" + description = "Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant." + color = "#482000" + adj_dizzy = -5 + adj_drowsy = -3 + adj_sleepy = -2 + adj_temp = 25 + + glass_icon_state = "hot_coffee" + glass_name = "cup of coffee" + glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." + + +/datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.make_jittery(5) + if(adj_temp > 0) + holder.remove_reagent("frostoil", 10 * removed) + +/datum/reagent/drink/coffee/icecoffee + name = "Iced Coffee" + id = "icecoffee" + description = "Coffee and ice, refreshing and cool." + color = "#102838" + adj_temp = -5 + + glass_icon_state = "icedcoffeeglass" + glass_name = "glass of iced coffee" + glass_desc = "A drink to perk you up and refresh you!" + +/datum/reagent/drink/coffee/soy_latte + name = "Soy Latte" + id = "soy_latte" + description = "A nice and tasty beverage while you are reading your hippie books." + color = "#664300" + adj_temp = 5 + + glass_icon_state = "soy_latte" + glass_name = "glass of soy latte" + glass_desc = "A nice and refrshing beverage while you are reading." + glass_center_of_mass = list("x"=15, "y"=9) + +/datum/reagent/drink/coffee/soy_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.heal_organ_damage(0.5 * removed, 0) + +/datum/reagent/drink/coffee/cafe_latte + name = "Cafe Latte" + id = "cafe_latte" + description = "A nice, strong and tasty beverage while you are reading." + color = "#664300" // rgb: 102, 67, 0 + adj_temp = 5 + + glass_icon_state = "cafe_latte" + glass_name = "glass of cafe latte" + glass_desc = "A nice, strong and refreshing beverage while you are reading." + glass_center_of_mass = list("x"=15, "y"=9) + +/datum/reagent/drink/coffee/cafe_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.heal_organ_damage(0.5 * removed, 0) + +/datum/reagent/drink/hot_coco + name = "Hot Chocolate" + id = "hot_coco" + description = "Made with love! And cocoa beans." + reagent_state = LIQUID + color = "#403010" + nutrition = 2 + adj_temp = 5 + + glass_icon_state = "chocolateglass" + glass_name = "glass of hot chocolate" + glass_desc = "Made with love! And cocoa beans." + +/datum/reagent/drink/sodawater + name = "Soda Water" + id = "sodawater" + description = "A can of club soda. Why not make a scotch and soda?" + color = "#619494" + adj_dizzy = -5 + adj_drowsy = -3 + adj_temp = -5 + + glass_icon_state = "glass_clear" + glass_name = "glass of soda water" + glass_desc = "Soda water. Why not make a scotch and soda?" + +/datum/reagent/drink/grapesoda + name = "Grape Soda" + id = "grapesoda" + description = "Grapes made into a fine drank." + color = "#421C52" + adj_drowsy = -3 + + glass_icon_state = "gsodaglass" + glass_name = "glass of grape soda" + glass_desc = "Looks like a delicious drink!" + +/datum/reagent/drink/tonic + name = "Tonic Water" + id = "tonic" + description = "It tastes strange but at least the quinine keeps the Space Malaria at bay." + color = "#664300" + adj_dizzy = -5 + adj_drowsy = -3 + adj_sleepy = -2 + adj_temp = -5 + + glass_icon_state = "glass_clear" + glass_name = "glass of tonic water" + glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away." + +/datum/reagent/drink/lemonade + name = "Lemonade" + description = "Oh the nostalgia..." + id = "lemonade" + color = "#FFFF00" + adj_temp = -5 + + glass_icon_state = "lemonadeglass" + glass_name = "glass of lemonade" + glass_desc = "Oh the nostalgia..." + +/datum/reagent/drink/kiraspecial + name = "Kira Special" + description = "Long live the guy who everyone had mistaken for a girl. Baka!" + id = "kiraspecial" + color = "#CCCC99" + adj_temp = -5 + + glass_icon_state = "kiraspecial" + glass_name = "glass of Kira Special" + glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/drink/brownstar + name = "Brown Star" + description = "It's not what it sounds like..." + id = "brownstar" + color = "#9F3400" + adj_temp = -2 + + glass_icon_state = "brownstar" + glass_name = "glass of Brown Star" + glass_desc = "It's not what it sounds like..." + +/datum/reagent/drink/milkshake + name = "Milkshake" + description = "Glorious brainfreezing mixture." + id = "milkshake" + color = "#AEE5E4" + adj_temp = -9 + + glass_icon_state = "milkshake" + glass_name = "glass of milkshake" + glass_desc = "Glorious brainfreezing mixture." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/drink/rewriter + name = "Rewriter" + description = "The secret of the sanctuary of the Libarian..." + id = "rewriter" + color = "#485000" + adj_temp = -5 + + glass_icon_state = "rewriter" + glass_name = "glass of Rewriter" + glass_desc = "The secret of the sanctuary of the Libarian..." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.make_jittery(5) + +/datum/reagent/drink/nuka_cola + name = "Nuka Cola" + id = "nuka_cola" + description = "Cola, cola never changes." + color = "#100800" + adj_temp = -5 + adj_sleepy = -2 + + glass_icon_state = "nuka_colaglass" + glass_name = "glass of Nuka-Cola" + glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" + glass_center_of_mass = list("x"=16, "y"=6) + +/datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.add_chemical_effect(CE_SPEEDBOOST, 1) + M.make_jittery(20) + M.druggy = max(M.druggy, 30) + M.dizziness += 5 + M.drowsyness = 0 + +/datum/reagent/drink/grenadine + name = "Grenadine Syrup" + id = "grenadine" + description = "Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways?" + color = "#FF004F" + + glass_icon_state = "grenadineglass" + glass_name = "glass of grenadine syrup" + glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks." + glass_center_of_mass = list("x"=17, "y"=6) + +/datum/reagent/drink/space_cola + name = "Space Cola" + id = "cola" + description = "A refreshing beverage." + reagent_state = LIQUID + color = "#100800" + adj_drowsy = -3 + adj_temp = -5 + + glass_icon_state = "glass_brown" + glass_name = "glass of Space Cola" + glass_desc = "A glass of refreshing Space Cola" + +/datum/reagent/drink/spacemountainwind + name = "Mountain Wind" + id = "spacemountainwind" + description = "Blows right through you like a space wind." + color = "#102000" + adj_drowsy = -7 + adj_sleepy = -1 + adj_temp = -5 + + glass_icon_state = "Space_mountain_wind_glass" + glass_name = "glass of Space Mountain Wind" + glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind." + +/datum/reagent/drink/dr_gibb + name = "Dr. Gibb" + id = "dr_gibb" + description = "A delicious blend of 42 different flavours" + color = "#102000" + adj_drowsy = -6 + adj_temp = -5 + + glass_icon_state = "dr_gibb_glass" + glass_name = "glass of Dr. Gibb" + glass_desc = "Dr. Gibb. Not as dangerous as the name might imply." + +/datum/reagent/drink/space_up + name = "Space-Up" + id = "space_up" + description = "Tastes like a hull breach in your mouth." + color = "#202800" + adj_temp = -8 + + glass_icon_state = "space-up_glass" + glass_name = "glass of Space-up" + glass_desc = "Space-up. It helps keep your cool." + +/datum/reagent/drink/lemon_lime + name = "Lemon Lime" + description = "A tangy substance made of 0.5% natural citrus!" + id = "lemon_lime" + color = "#878F00" + adj_temp = -8 + + glass_icon_state = "lemonlime" + glass_name = "glass of lemon lime soda" + glass_desc = "A tangy substance made of 0.5% natural citrus!" + +/datum/reagent/drink/doctor_delight + name = "The Doctor's Delight" + id = "doctorsdelight" + description = "A gulp a day keeps the MediBot away. That's probably for the best." + reagent_state = LIQUID + color = "#FF8CFF" + nutrition = 1 + + glass_icon_state = "doctorsdelightglass" + glass_name = "glass of The Doctor's Delight" + glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.adjustOxyLoss(-4 * removed) + M.heal_organ_damage(2 * removed, 2 * removed) + M.adjustToxLoss(-2 * removed) + if(M.dizziness) + M.dizziness = max(0, M.dizziness - 15) + if(M.confused) + M.confused = max(0, M.confused - 5) + +/datum/reagent/drink/dry_ramen + name = "Dry Ramen" + id = "dry_ramen" + description = "Space age food, since August 25, 1958. Contains dried noodles, vegetables, and chemicals that boil in contact with water." + reagent_state = SOLID + nutrition = 1 + color = "#302000" + +/datum/reagent/drink/hot_ramen + name = "Hot Ramen" + id = "hot_ramen" + description = "The noodles are boiled, the flavors are artificial, just like being back in school." + reagent_state = LIQUID + color = "#302000" + nutrition = 5 + adj_temp = 5 + +/datum/reagent/drink/hell_ramen + name = "Hell Ramen" + id = "hell_ramen" + description = "The noodles are boiled, the flavors are artificial, just like being back in school." + reagent_state = LIQUID + color = "#302000" + nutrition = 5 + +/datum/reagent/drink/hell_ramen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.bodytemperature += 10 * TEMPERATURE_DAMAGE_COEFFICIENT + +/datum/reagent/drink/ice + name = "Ice" + id = "ice" + description = "Frozen water, your dentist wouldn't like you chewing this." + reagent_state = SOLID + color = "#619494" + adj_temp = -5 + + glass_icon_state = "iceglass" + glass_name = "glass of ice" + glass_desc = "Generally, you're supposed to put something else in there too..." + +/datum/reagent/drink/nothing + name = "Nothing" + id = "nothing" + description = "Absolutely nothing." + + glass_icon_state = "nothing" + glass_name = "glass of nothing" + glass_desc = "Absolutely nothing." + +/* Alcohol */ + +// Basic + +/datum/reagent/ethanol/absinthe + name = "Absinthe" + id = "absinthe" + description = "Watch out that the Green Fairy doesn't come for you!" + color = "#33EE00" + strength = 12 + + glass_icon_state = "absintheglass" + glass_name = "glass of absinthe" + glass_desc = "Wormwood, anise, oh my." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/ale + name = "Ale" + id = "ale" + description = "A dark alchoholic beverage made by malted barley and yeast." + color = "#664300" + strength = 50 + + glass_icon_state = "aleglass" + glass_name = "glass of ale" + glass_desc = "A freezing pint of delicious ale" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/beer + name = "Beer" + id = "beer" + description = "An alcoholic beverage made from malted grains, hops, yeast, and water." + color = "#664300" + strength = 50 + nutriment_factor = 1 + + glass_icon_state = "beerglass" + glass_name = "glass of beer" + glass_desc = "A freezing pint of beer" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.jitteriness = max(M.jitteriness - 3, 0) + +/datum/reagent/ethanol/bluecuracao + name = "Blue Curacao" + id = "bluecuracao" + description = "Exotically blue, fruity drink, distilled from oranges." + color = "#0000CD" + strength = 15 + + glass_icon_state = "curacaoglass" + glass_name = "glass of blue curacao" + glass_desc = "Exotically blue, fruity drink, distilled from oranges." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/cognac + name = "Cognac" + id = "cognac" + description = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. Classy as fornication." + color = "#AB3C05" + strength = 15 + + glass_icon_state = "cognacglass" + glass_name = "glass of cognac" + glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this." + glass_center_of_mass = list("x"=16, "y"=6) + +/datum/reagent/ethanol/deadrum + name = "Deadrum" + id = "deadrum" + description = "Popular with the sailors. Not very popular with everyone else." + color = "#664300" + strength = 50 + + glass_icon_state = "rumglass" + glass_name = "glass of rum" + glass_desc = "Now you want to Pray for a pirate suit, don't you?" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.dizziness +=5 + +/datum/reagent/ethanol/gin + name = "Gin" + id = "gin" + description = "It's gin. In space. I say, good sir." + color = "#664300" + strength = 50 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of gin" + glass_desc = "A crystal clear glass of Griffeater gin." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/kahlua + name = "Kahlua" + id = "kahlua" + description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!" + color = "#664300" + strength = 15 + + glass_icon_state = "kahluaglass" + glass_name = "glass of RR coffee liquor" + glass_desc = "DAMN, THIS THING LOOKS ROBUST" + glass_center_of_mass = list("x"=15, "y"=7) + +/datum/reagent/ethanol/kahlua/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.dizziness = max(0, M.dizziness - 5) + M.drowsyness = max(0, M.drowsyness - 3) + M.sleeping = max(0, M.sleeping - 2) + if (M.bodytemperature > 310) + M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) + M.make_jittery(5) + +/datum/reagent/ethanol/melonliquor + name = "Melon Liquor" + id = "melonliquor" + description = "A relatively sweet and fruity 46 proof liquor." + color = "#138808" // rgb: 19, 136, 8 + strength = 50 + + glass_icon_state = "emeraldglass" + glass_name = "glass of melon liquor" + glass_desc = "A relatively sweet and fruity 46 proof liquor." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/rum + name = "Rum" + id = "rum" + description = "Yohoho and all that." + color = "#664300" + strength = 15 + + glass_icon_state = "rumglass" + glass_name = "glass of rum" + glass_desc = "Now you want to Pray for a pirate suit, don't you?" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/sake + name = "Sake" + id = "sake" + description = "Anime's favorite drink." + color = "#664300" + strength = 25 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of sake" + glass_desc = "A glass of sake." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/tequilla + name = "Tequila" + id = "tequilla" + description = "A strong and mildly flavoured, mexican produced spirit. Feeling thirsty hombre?" + color = "#FFFF91" + strength = 25 + + glass_icon_state = "tequillaglass" + glass_name = "glass of Tequilla" + glass_desc = "Now all that's missing is the weird colored shades!" + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/thirteenloko + name = "Thirteen Loko" + id = "thirteenloko" + description = "A potent mixture of caffeine and alcohol." + color = "#102000" + strength = 25 + nutriment_factor = 1 + + glass_icon_state = "thirteen_loko_glass" + glass_name = "glass of Thirteen Loko" + glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." + +/datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.drowsyness = max(0, M.drowsyness - 7) + if (M.bodytemperature > 310) + M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) + M.make_jittery(5) + +/datum/reagent/ethanol/vermouth + name = "Vermouth" + id = "vermouth" + description = "You suddenly feel a craving for a martini..." + color = "#91FF91" // rgb: 145, 255, 145 + strength = 15 + + glass_icon_state = "vermouthglass" + glass_name = "glass of vermouth" + glass_desc = "You wonder why you're even drinking this straight." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/vodka + name = "Vodka" + id = "vodka" + description = "Number one drink AND fueling choice for Russians worldwide." + color = "#0064C8" // rgb: 0, 100, 200 + strength = 15 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of vodka" + glass_desc = "The glass contain wodka. Xynta." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.radiation = max(M.radiation - 1 * removed, 0) + +/datum/reagent/ethanol/whiskey + name = "Whiskey" + id = "whiskey" + description = "A superb and well-aged single-malt whiskey. Damn." + color = "#664300" + strength = 25 + + glass_icon_state = "whiskeyglass" + glass_name = "glass of whiskey" + glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/wine + name = "Wine" + id = "wine" + description = "An premium alchoholic beverage made from distilled grape juice." + color = "#7E4043" // rgb: 126, 64, 67 + strength = 15 + + glass_icon_state = "wineglass" + glass_name = "glass of wine" + glass_desc = "A very classy looking drink." + glass_center_of_mass = list("x"=15, "y"=7) + +// Cocktails + +/datum/reagent/ethanol/acid_spit + name = "Acid Spit" + id = "acidspit" + description = "A drink for the daring, can be deadly if incorrectly prepared!" + reagent_state = LIQUID + color = "#365000" + strength = 30 + + glass_icon_state = "acidspitglass" + glass_name = "glass of Acid Spit" + glass_desc = "A drink from Nanotrasen. Made from live aliens." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/alliescocktail + name = "Allies Cocktail" + id = "alliescocktail" + description = "A drink made from your allies, not as sweet as when made from your enemies." + color = "#664300" + strength = 25 + + glass_icon_state = "alliescocktail" + glass_name = "glass of Allies cocktail" + glass_desc = "A drink made from your allies." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/aloe + name = "Aloe" + id = "aloe" + description = "So very, very, very good." + color = "#664300" + strength = 15 + + glass_icon_state = "aloe" + glass_name = "glass of Aloe" + glass_desc = "Very, very, very good." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/amasec + name = "Amasec" + id = "amasec" + description = "Official drink of the NanoTrasen Gun-Club!" + reagent_state = LIQUID + color = "#664300" + strength = 25 + + glass_icon_state = "amasecglass" + glass_name = "glass of Amasec" + glass_desc = "Always handy before COMBAT!!!" + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/andalusia + name = "Andalusia" + id = "andalusia" + description = "A nice, strangely named drink." + color = "#664300" + strength = 15 + + glass_icon_state = "andalusia" + glass_name = "glass of Andalusia" + glass_desc = "A nice, strange named drink." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/antifreeze + name = "Anti-freeze" + id = "antifreeze" + description = "Ultimate refreshment." + color = "#664300" + strength = 12 + adj_temp = 20 + targ_temp = 330 + + glass_icon_state = "antifreeze" + glass_name = "glass of Anti-freeze" + glass_desc = "The ultimate refreshment." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/atomicbomb + name = "Atomic Bomb" + id = "atomicbomb" + description = "Nuclear proliferation never tasted so good." + reagent_state = LIQUID + color = "#666300" + strength = 10 + druggy = 50 + + glass_icon_state = "atomicbombglass" + glass_name = "glass of Atomic Bomb" + glass_desc = "Nanotrasen cannot take legal responsibility for your actions after imbibing." + glass_center_of_mass = list("x"=15, "y"=7) + +/datum/reagent/ethanol/b52 + name = "B-52" + id = "b52" + description = "Coffee, Irish Cream, and cognac. You will get bombed." + color = "#664300" + strength = 12 + + glass_icon_state = "b52glass" + glass_name = "glass of B-52" + glass_desc = "Kahlua, Irish cream, and congac. You will get bombed." + +/datum/reagent/ethanol/bahama_mama + name = "Bahama mama" + id = "bahama_mama" + description = "Tropical cocktail." + color = "#FF7F3B" + strength = 25 + + glass_icon_state = "bahama_mama" + glass_name = "glass of Bahama Mama" + glass_desc = "Tropical cocktail" + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/bananahonk + name = "Banana Mama" + id = "bananahonk" + description = "A drink from Clown Heaven." + nutriment_factor = 1 + color = "#FFFF91" + strength = 12 + + glass_icon_state = "bananahonkglass" + glass_name = "glass of Banana Honk" + glass_desc = "A drink from Banana Heaven." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/barefoot + name = "Barefoot" + id = "barefoot" + description = "Barefoot and pregnant" + color = "#664300" + strength = 30 + + glass_icon_state = "b&p" + glass_name = "glass of Barefoot" + glass_desc = "Barefoot and pregnant" + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/beepsky_smash + name = "Beepsky Smash" + id = "beepskysmash" + description = "Deny drinking this and prepare for THE LAW." + reagent_state = LIQUID + color = "#664300" + strength = 12 + + glass_icon_state = "beepskysmashglass" + glass_name = "Beepsky Smash" + glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." + glass_center_of_mass = list("x"=18, "y"=10) + +/datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.Stun(2) + +/datum/reagent/ethanol/bilk + name = "Bilk" + id = "bilk" + description = "This appears to be beer mixed with milk. Disgusting." + color = "#895C4C" + strength = 50 + nutriment_factor = 2 + + glass_icon_state = "glass_brown" + glass_name = "glass of bilk" + glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis." + +/datum/reagent/ethanol/black_russian + name = "Black Russian" + id = "blackrussian" + description = "For the lactose-intolerant. Still as classy as a White Russian." + color = "#360000" + strength = 15 + + glass_icon_state = "blackrussianglass" + glass_name = "glass of Black Russian" + glass_desc = "For the lactose-intolerant. Still as classy as a White Russian." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/bloody_mary + name = "Bloody Mary" + id = "bloodymary" + description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice." + color = "#664300" + strength = 15 + + glass_icon_state = "bloodymaryglass" + glass_name = "glass of Bloody Mary" + glass_desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder." + +/datum/reagent/ethanol/booger + name = "Booger" + id = "booger" + description = "Ewww..." + color = "#8CFF8C" + strength = 30 + + glass_icon_state = "booger" + glass_name = "glass of Booger" + glass_desc = "Ewww..." + +/datum/reagent/ethanol/brave_bull + name = "Brave Bull" + id = "bravebull" + description = "It's just as effective as Dutch-Courage!" + color = "#664300" + strength = 15 + + glass_icon_state = "bravebullglass" + glass_name = "glass of Brave Bull" + glass_desc = "Tequilla and coffee liquor, brought together in a mouthwatering mixture. Drink up." + glass_center_of_mass = list("x"=15, "y"=8) + +/datum/reagent/ethanol/changelingsting + name = "Changeling Sting" + id = "changelingsting" + description = "You take a tiny sip and feel a burning sensation..." + color = "#2E6671" + strength = 10 + + glass_icon_state = "changelingsting" + glass_name = "glass of Changeling Sting" + glass_desc = "A stingy drink." + +/datum/reagent/ethanol/classicmartini + name = "Classic Martini" + id = "classicmartini" + description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious." + color = "#664300" + strength = 25 + + glass_icon_state = "martiniglass" + glass_name = "glass of classic martini" + glass_desc = "Damn, the bartender even stirred it, not shook it." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/cuba_libre + name = "Cuba Libre" + id = "cubalibre" + description = "Rum, mixed with cola. Viva la revolucion." + color = "#3E1B00" + strength = 30 + + glass_icon_state = "cubalibreglass" + glass_name = "glass of Cuba Libre" + glass_desc = "A classic mix of rum and cola." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/demonsblood + name = "Demons Blood" + id = "demonsblood" + description = "AHHHH!!!!" + color = "#820000" + strength = 15 + + glass_icon_state = "demonsblood" + glass_name = "glass of Demons' Blood" + glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up." + glass_center_of_mass = list("x"=16, "y"=2) + +/datum/reagent/ethanol/devilskiss + name = "Devils Kiss" + id = "devilskiss" + description = "Creepy time!" + color = "#A68310" + strength = 15 + + glass_icon_state = "devilskiss" + glass_name = "glass of Devil's Kiss" + glass_desc = "Creepy time!" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/driestmartini + name = "Driest Martini" + id = "driestmartini" + description = "Only for the experienced. You think you see sand floating in the glass." + nutriment_factor = 1 + color = "#2E6671" + strength = 12 + + glass_icon_state = "driestmartiniglass" + glass_name = "glass of Driest Martini" + glass_desc = "Only for the experienced. You think you see sand floating in the glass." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/ginfizz + name = "Gin Fizz" + id = "ginfizz" + description = "Refreshingly lemony, deliciously dry." + color = "#664300" + strength = 30 + + glass_icon_state = "ginfizzglass" + glass_name = "glass of gin fizz" + glass_desc = "Refreshingly lemony, deliciously dry." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/grog + name = "Grog" + id = "grog" + description = "Watered down rum, NanoTrasen approves!" + reagent_state = LIQUID + color = "#664300" + strength = 100 + + glass_icon_state = "grogglass" + glass_name = "glass of grog" + glass_desc = "A fine and cepa drink for Space." + +/datum/reagent/ethanol/erikasurprise + name = "Erika Surprise" + id = "erikasurprise" + description = "The surprise is, it's green!" + color = "#2E6671" + strength = 15 + + glass_icon_state = "erikasurprise" + glass_name = "glass of Erika Surprise" + glass_desc = "The surprise is, it's green!" + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/gargle_blaster + name = "Pan-Galactic Gargle Blaster" + id = "gargleblaster" + description = "Whoah, this stuff looks volatile!" + reagent_state = LIQUID + color = "#664300" + strength = 10 + + glass_icon_state = "gargleblasterglass" + glass_name = "glass of Pan-Galactic Gargle Blaster" + glass_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy." + glass_center_of_mass = list("x"=17, "y"=6) + +/datum/reagent/ethanol/gintonic + name = "Gin and Tonic" + id = "gintonic" + description = "An all time classic, mild cocktail." + color = "#664300" + strength = 50 + + glass_icon_state = "gintonicglass" + glass_name = "glass of gin and tonic" + glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/goldschlager + name = "Goldschlager" + id = "goldschlager" + description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break." + color = "#664300" + strength = 15 + + glass_icon_state = "ginvodkaglass" + glass_name = "glass of Goldschlager" + glass_desc = "100 proof that teen girls will drink anything with gold in it." + glass_center_of_mass = list("x"=16, "y"=12) + +/datum/reagent/ethanol/hippies_delight + name = "Hippies' Delight" + id = "hippiesdelight" + description = "You just don't get it maaaan." + reagent_state = LIQUID + color = "#664300" + strength = 15 + druggy = 50 + + glass_icon_state = "hippiesdelightglass" + glass_name = "glass of Hippie's Delight" + glass_desc = "A drink enjoyed by people during the 1960's." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/hooch + name = "Hooch" + id = "hooch" + description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" + color = "#664300" + strength = 25 + toxicity = 2 + + glass_icon_state = "glass_brown2" + glass_name = "glass of Hooch" + glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." + +/datum/reagent/ethanol/iced_beer + name = "Iced Beer" + id = "iced_beer" + description = "A beer which is so cold the air around it freezes." + color = "#664300" + strength = 50 + adj_temp = -20 + targ_temp = 270 + + glass_icon_state = "iced_beerglass" + glass_name = "glass of iced beer" + glass_desc = "A beer so frosty, the air around it freezes." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/irishcarbomb + name = "Irish Car Bomb" + id = "irishcarbomb" + description = "Mmm, tastes like chocolate cake..." + color = "#2E6671" + strength = 15 + + glass_icon_state = "irishcarbomb" + glass_name = "glass of Irish Car Bomb" + glass_desc = "An irish car bomb." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/irishcoffee + name = "Irish Coffee" + id = "irishcoffee" + description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning." + color = "#664300" + strength = 15 + + glass_icon_state = "irishcoffeeglass" + glass_name = "glass of Irish coffee" + glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning." + glass_center_of_mass = list("x"=15, "y"=10) + +/datum/reagent/ethanol/irish_cream + name = "Irish Cream" + id = "irishcream" + description = "Whiskey-imbued cream, what else would you expect from the Irish." + color = "#664300" + strength = 25 + + glass_icon_state = "irishcreamglass" + glass_name = "glass of Irish cream" + glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?" + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/longislandicedtea + name = "Long Island Iced Tea" + id = "longislandicedtea" + description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." + color = "#664300" + strength = 12 + + glass_icon_state = "longislandicedteaglass" + glass_name = "glass of Long Island iced tea" + glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/manhattan + name = "Manhattan" + id = "manhattan" + description = "The Detective's undercover drink of choice. He never could stomach gin..." + color = "#664300" + strength = 15 + + glass_icon_state = "manhattanglass" + glass_name = "glass of Manhattan" + glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/manhattan_proj + name = "Manhattan Project" + id = "manhattan_proj" + description = "A scientist's drink of choice, for pondering ways to blow up the station." + color = "#664300" + strength = 10 + druggy = 30 + + glass_icon_state = "proj_manhattanglass" + glass_name = "glass of Manhattan Project" + glass_desc = "A scienitst drink of choice, for thinking how to blow up the station." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/manly_dorf + name = "The Manly Dorf" + id = "manlydorf" + description = "Beer and Ale, brought together in a delicious mix. Intended for true men only." + color = "#664300" + strength = 25 + + glass_icon_state = "manlydorfglass" + glass_name = "glass of The Manly Dorf" + glass_desc = "A manly concotion made from Ale and Beer. Intended for true men only." + +/datum/reagent/ethanol/margarita + name = "Margarita" + id = "margarita" + description = "On the rocks with salt on the rim. Arriba~!" + color = "#8CFF8C" + strength = 15 + + glass_icon_state = "margaritaglass" + glass_name = "glass of margarita" + glass_desc = "On the rocks with salt on the rim. Arriba~!" + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/mead + name = "Mead" + id = "mead" + description = "A Viking's drink, though a cheap one." + reagent_state = LIQUID + color = "#664300" + strength = 30 + nutriment_factor = 1 + + glass_icon_state = "meadglass" + glass_name = "glass of mead" + glass_desc = "A Viking's beverage, though a cheap one." + glass_center_of_mass = list("x"=17, "y"=10) + +/datum/reagent/ethanol/moonshine + name = "Moonshine" + id = "moonshine" + description = "You've really hit rock bottom now... your liver packed its bags and left last night." + color = "#664300" + strength = 12 + + glass_icon_state = "glass_clear" + glass_name = "glass of moonshine" + glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." + +/datum/reagent/ethanol/neurotoxin + name = "Neurotoxin" + id = "neurotoxin" + description = "A strong neurotoxin that puts the subject into a death-like state." + reagent_state = LIQUID + color = "#2E2E61" + strength = 10 + + glass_icon_state = "neurotoxinglass" + glass_name = "glass of Neurotoxin" + glass_desc = "A drink that is guaranteed to knock you silly." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.Weaken(3) + +/datum/reagent/ethanol/patron + name = "Patron" + id = "patron" + description = "Tequila with silver in it, a favorite of alcoholic women in the club scene." + color = "#585840" + strength = 30 + + glass_icon_state = "patronglass" + glass_name = "glass of Patron" + glass_desc = "Drinking patron in the bar, with all the subpar ladies." + glass_center_of_mass = list("x"=7, "y"=8) + +/datum/reagent/ethanol/pwine + name = "Poison Wine" + id = "pwine" + description = "Is this even wine? Toxic! Hallucinogenic! Probably consumed in boatloads by your superiors!" + color = "#000000" + strength = 10 + druggy = 50 + halluci = 10 + + glass_icon_state = "pwineglass" + glass_name = "glass of ???" + glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(dose > 30) + M.adjustToxLoss(2 * removed) + if(dose > 60 && ishuman(M) && prob(5)) + var/mob/living/carbon/human/H = M + var/obj/item/organ/heart/L = H.internal_organs_by_name["heart"] + if (L && istype(L)) + if(dose < 120) + L.take_damage(10 * removed, 0) + else + L.take_damage(100, 0) + +/datum/reagent/ethanol/red_mead + name = "Red Mead" + id = "red_mead" + description = "The true Viking's drink! Even though it has a strange red color." + color = "#C73C00" + strength = 30 + + glass_icon_state = "red_meadglass" + glass_name = "glass of red mead" + glass_desc = "A true Viking's beverage, though its color is strange." + glass_center_of_mass = list("x"=17, "y"=10) + +/datum/reagent/ethanol/sbiten + name = "Sbiten" + id = "sbiten" + description = "A spicy Vodka! Might be a little hot for the little guys!" + color = "#664300" + strength = 15 + adj_temp = 50 + targ_temp = 360 + + glass_icon_state = "sbitenglass" + glass_name = "glass of Sbiten" + glass_desc = "A spicy mix of Vodka and Spice. Very hot." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/screwdrivercocktail + name = "Screwdriver" + id = "screwdrivercocktail" + description = "Vodka, mixed with plain ol' orange juice. The result is surprisingly delicious." + color = "#A68310" + strength = 15 + + glass_icon_state = "screwdriverglass" + glass_name = "glass of Screwdriver" + glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer." + glass_center_of_mass = list("x"=15, "y"=10) + +/datum/reagent/ethanol/silencer + name = "Silencer" + id = "silencer" + description = "A drink from Mime Heaven." + nutriment_factor = 1 + color = "#664300" + strength = 12 + + glass_icon_state = "silencerglass" + glass_name = "glass of Silencer" + glass_desc = "A drink from mime Heaven." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/singulo + name = "Singulo" + id = "singulo" + description = "A blue-space beverage!" + color = "#2E6671" + strength = 10 + + glass_icon_state = "singulo" + glass_name = "glass of Singulo" + glass_desc = "A blue-space beverage." + glass_center_of_mass = list("x"=17, "y"=4) + +/datum/reagent/ethanol/snowwhite + name = "Snow White" + id = "snowwhite" + description = "A cold refreshment" + color = "#FFFFFF" + strength = 30 + + glass_icon_state = "snowwhite" + glass_name = "glass of Snow White" + glass_desc = "A cold refreshment." + glass_center_of_mass = list("x"=16, "y"=8) + +/datum/reagent/ethanol/suidream + name = "Sui Dream" + id = "suidream" + description = "Comprised of: White soda, blue curacao, melon liquor." + color = "#00A86B" + strength = 100 + + glass_icon_state = "sdreamglass" + glass_name = "glass of Sui Dream" + glass_desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame." + glass_center_of_mass = list("x"=16, "y"=5) + +/datum/reagent/ethanol/syndicatebomb + name = "Syndicate Bomb" + id = "syndicatebomb" + description = "Tastes like terrorism!" + color = "#2E6671" + strength = 10 + + glass_icon_state = "syndicatebomb" + glass_name = "glass of Syndicate Bomb" + glass_desc = "Tastes like terrorism!" + glass_center_of_mass = list("x"=16, "y"=4) + +/datum/reagent/ethanol/tequilla_sunrise + name = "Tequila Sunrise" + id = "tequillasunrise" + description = "Tequila and orange juice. Much like a Screwdriver, only Mexican~" + color = "#FFE48C" + strength = 25 + + glass_icon_state = "tequillasunriseglass" + glass_name = "glass of Tequilla Sunrise" + glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..." + +/datum/reagent/ethanol/threemileisland + name = "Three Mile Island Iced Tea" + id = "threemileisland" + description = "Made for a woman, strong enough for a man." + color = "#666340" + strength = 10 + druggy = 50 + + glass_icon_state = "threemileislandglass" + glass_name = "glass of Three Mile Island iced tea" + glass_desc = "A glass of this is sure to prevent a meltdown." + glass_center_of_mass = list("x"=16, "y"=2) + +/datum/reagent/ethanol/toxins_special + name = "Toxins Special" + id = "phoronspecial" + description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!" + reagent_state = LIQUID + color = "#664300" + strength = 10 + adj_temp = 15 + targ_temp = 330 + + glass_icon_state = "toxinsspecialglass" + glass_name = "glass of Toxins Special" + glass_desc = "Whoah, this thing is on FIRE" + +/datum/reagent/ethanol/vodkamartini + name = "Vodka Martini" + id = "vodkamartini" + description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious." + color = "#664300" + strength = 12 + + glass_icon_state = "martiniglass" + glass_name = "glass of vodka martini" + glass_desc ="A bastardisation of the classic martini. Still great." + glass_center_of_mass = list("x"=17, "y"=8) + +/datum/reagent/ethanol/vodkatonic + name = "Vodka and Tonic" + id = "vodkatonic" + description = "For when a gin and tonic isn't russian enough." + color = "#0064C8" // rgb: 0, 100, 200 + strength = 15 + + glass_icon_state = "vodkatonicglass" + glass_name = "glass of vodka and tonic" + glass_desc = "For when a gin and tonic isn't Russian enough." + glass_center_of_mass = list("x"=16, "y"=7) + +/datum/reagent/ethanol/white_russian + name = "White Russian" + id = "whiterussian" + description = "That's just, like, your opinion, man..." + color = "#A68340" + strength = 15 + + glass_icon_state = "whiterussianglass" + glass_name = "glass of White Russian" + glass_desc = "A very nice looking drink. But that's just, like, your opinion, man." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/whiskey_cola + name = "Whiskey Cola" + id = "whiskeycola" + description = "Whiskey, mixed with cola. Surprisingly refreshing." + color = "#3E1B00" + strength = 25 + + glass_icon_state = "whiskeycolaglass" + glass_name = "glass of whiskey cola" + glass_desc = "An innocent-looking mixture of cola and Whiskey. Delicious." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/whiskeysoda + name = "Whiskey Soda" + id = "whiskeysoda" + description = "For the more refined griffon." + color = "#664300" + strength = 15 + + glass_icon_state = "whiskeysodaglass2" + glass_name = "glass of whiskey soda" + glass_desc = "Ultimate refreshment." + glass_center_of_mass = list("x"=16, "y"=9) + +/datum/reagent/ethanol/specialwhiskey // I have no idea what this is and where it comes from + name = "Special Blend Whiskey" + id = "specialwhiskey" + description = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." + color = "#664300" + strength = 25 + + glass_icon_state = "whiskeyglass" + glass_name = "glass of special blend whiskey" + glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." + glass_center_of_mass = list("x"=16, "y"=12) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm new file mode 100644 index 0000000000..8a5396cc51 --- /dev/null +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm @@ -0,0 +1,493 @@ +/* General medicine */ + +/datum/reagent/inaprovaline + name = "Inaprovaline" + id = "inaprovaline" + description = "Inaprovaline is a synaptic stimulant and cardiostimulant. Commonly used to stabilize patients." + reagent_state = LIQUID + color = "#00BFFF" + overdose = REAGENTS_OVERDOSE * 2 + metabolism = REM * 0.5 + scannable = 1 + +/datum/reagent/inaprovaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + M.add_chemical_effect(CE_STABLE) + M.add_chemical_effect(CE_PAINKILLER, 25) + +/datum/reagent/bicaridine + name = "Bicaridine" + id = "bicaridine" + description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma." + reagent_state = LIQUID + color = "#BF0000" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/bicaridine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + M.heal_organ_damage(6 * removed, 0) + +/datum/reagent/kelotane + name = "Kelotane" + id = "kelotane" + description = "Kelotane is a drug used to treat burns." + reagent_state = LIQUID + color = "#FFA800" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/kelotane/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + M.heal_organ_damage(0, 6 * removed) + +/datum/reagent/dermaline + name = "Dermaline" + id = "dermaline" + description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue." + reagent_state = LIQUID + color = "#FF8000" + overdose = REAGENTS_OVERDOSE * 0.5 + scannable = 1 + +/datum/reagent/dermaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + M.heal_organ_damage(0, 12 * removed) + +/datum/reagent/dylovene + name = "Dylovene" + id = "anti_toxin" + description = "Dylovene is a broad-spectrum antitoxin." + reagent_state = LIQUID + color = "#00A000" + scannable = 1 + +/datum/reagent/dylovene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + M.drowsyness = max(0, M.drowsyness - 6 * removed) + M.hallucination = max(0, M.hallucination - 9 * removed) + M.adjustToxLoss(-4 * removed) + +/datum/reagent/dexalin + name = "Dexalin" + id = "dexalin" + description = "Dexalin is used in the treatment of oxygen deprivation." + reagent_state = LIQUID + color = "#0080FF" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_VOX) + M.adjustToxLoss(removed * 6) + else if(alien != IS_DIONA) + M.adjustOxyLoss(-15 * removed) + + holder.remove_reagent("lexorin", 2 * removed) + +/datum/reagent/dexalinp + name = "Dexalin Plus" + id = "dexalinp" + description = "Dexalin Plus is used in the treatment of oxygen deprivation. It is highly effective." + reagent_state = LIQUID + color = "#0040FF" + overdose = REAGENTS_OVERDOSE * 0.5 + scannable = 1 + +/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_VOX) + M.adjustToxLoss(removed * 9) + else if(alien != IS_DIONA) + M.adjustOxyLoss(-300 * removed) + + holder.remove_reagent("lexorin", 3 * removed) + +/datum/reagent/tricordrazine + name = "Tricordrazine" + id = "tricordrazine" + description = "Tricordrazine is a highly potent stimulant, originally derived from cordrazine. Can be used to treat a wide range of injuries." + reagent_state = LIQUID + color = "#8040FF" + scannable = 1 + +/datum/reagent/tricordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien != IS_DIONA) + M.adjustOxyLoss(-6 * removed) + M.heal_organ_damage(3 * removed, 3 * removed) + M.adjustToxLoss(-3 * removed) + +/datum/reagent/cryoxadone + name = "Cryoxadone" + id = "cryoxadone" + description = "A chemical mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 170K for it to metabolise correctly." + reagent_state = LIQUID + color = "#8080FF" + metabolism = REM * 0.5 + scannable = 1 + +/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.bodytemperature < 170) + M.adjustCloneLoss(-10 * removed) + M.adjustOxyLoss(-10 * removed) + M.heal_organ_damage(10 * removed, 10 * removed) + M.adjustToxLoss(-10 * removed) + +/datum/reagent/clonexadone + name = "Clonexadone" + id = "clonexadone" + description = "A liquid compound similar to that used in the cloning process. Can be used to 'finish' the cloning process when used in conjunction with a cryo tube." + reagent_state = LIQUID + color = "#80BFFF" + metabolism = REM * 0.5 + scannable = 1 + +/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.bodytemperature < 170) + M.adjustCloneLoss(-30 * removed) + M.adjustOxyLoss(-3 * removed) + M.heal_organ_damage(30 * removed, 30 * removed) + M.adjustToxLoss(-30 * removed) + +/* Painkillers */ + +/datum/reagent/paracetamol + name = "Paracetamol" + id = "paracetamol" + description = "Most probably know this as Tylenol, but this chemical is a mild, simple painkiller." + reagent_state = LIQUID + color = "#C8A5DC" + overdose = 60 + scannable = 1 + metabolism = 0.02 + +/datum/reagent/paracetamol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.add_chemical_effect(CE_PAINKILLER, 50) + +/datum/reagent/paracetamol/overdose(var/mob/living/carbon/M, var/alien) + ..() + M.hallucination = max(M.hallucination, 2) + +/datum/reagent/tramadol + name = "Tramadol" + id = "tramadol" + description = "A simple, yet effective painkiller." + reagent_state = LIQUID + color = "#CB68FC" + overdose = 30 + scannable = 1 + metabolism = 0.02 + +/datum/reagent/tramadol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.add_chemical_effect(CE_PAINKILLER, 80) + +/datum/reagent/tramadol/overdose(var/mob/living/carbon/M, var/alien) + ..() + M.hallucination = max(M.hallucination, 2) + +/datum/reagent/oxycodone + name = "Oxycodone" + id = "oxycodone" + description = "An effective and very addictive painkiller." + reagent_state = LIQUID + color = "#800080" + overdose = 20 + metabolism = 0.02 + +/datum/reagent/oxycodone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.add_chemical_effect(CE_PAINKILLER, 200) + +/datum/reagent/oxycodone/overdose(var/mob/living/carbon/M, var/alien) + ..() + M.druggy = max(M.druggy, 10) + M.hallucination = max(M.hallucination, 3) + +/* Other medicine */ + +/datum/reagent/synaptizine + name = "Synaptizine" + id = "synaptizine" + description = "Synaptizine is used to treat various diseases." + reagent_state = LIQUID + color = "#99CCFF" + metabolism = REM * 0.05 + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/synaptizine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.drowsyness = max(M.drowsyness - 5, 0) + M.AdjustParalysis(-1) + M.AdjustStunned(-1) + M.AdjustWeakened(-1) + holder.remove_reagent("mindbreaker", 5) + M.hallucination = max(0, M.hallucination - 10) + M.adjustToxLoss(5 * removed) // It used to be incredibly deadly due to an oversight. Not anymore! + M.add_chemical_effect(CE_PAINKILLER, 40) + +/datum/reagent/alkysine + name = "Alkysine" + id = "alkysine" + description = "Alkysine is a drug used to lessen the damage to neurological tissue after a catastrophic injury. Can heal brain tissue." + reagent_state = LIQUID + color = "#FFFF66" + metabolism = REM * 0.25 + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/alkysine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.adjustBrainLoss(-30 * removed) + M.add_chemical_effect(CE_PAINKILLER, 10) + +/datum/reagent/imidazoline + name = "Imidazoline" + id = "imidazoline" + description = "Heals eye damage" + reagent_state = LIQUID + color = "#C8A5DC" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/imidazoline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.eye_blurry = max(M.eye_blurry - 5, 0) + M.eye_blind = max(M.eye_blind - 5, 0) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"] + if(E && istype(E)) + if(E.damage > 0) + E.damage = max(E.damage - 5 * removed, 0) + +/datum/reagent/peridaxon + name = "Peridaxon" + id = "peridaxon" + description = "Used to encourage recovery of internal organs and nervous systems. Medicate cautiously." + reagent_state = LIQUID + color = "#561EC3" + overdose = 10 + scannable = 1 + +/datum/reagent/peridaxon/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + + for(var/obj/item/organ/I in H.internal_organs) + if((I.damage > 0) && (I.robotic != 2)) //Peridaxon heals only non-robotic organs + I.damage = max(I.damage - removed, 0) + +/datum/reagent/ryetalyn + name = "Ryetalyn" + id = "ryetalyn" + description = "Ryetalyn can cure all genetic abnomalities via a catalytic process." + reagent_state = SOLID + color = "#004000" + overdose = REAGENTS_OVERDOSE + +/datum/reagent/ryetalyn/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + var/needs_update = M.mutations.len > 0 + + M.mutations = list() + M.disabilities = 0 + M.sdisabilities = 0 + + // Might need to update appearance for hulk etc. + if(needs_update && ishuman(M)) + var/mob/living/carbon/human/H = M + H.update_mutations() + +/datum/reagent/hyperzine + name = "Hyperzine" + id = "hyperzine" + description = "Hyperzine is a highly effective, long lasting, muscle stimulant." + reagent_state = LIQUID + color = "#FF3300" + metabolism = REM * 0.15 + overdose = REAGENTS_OVERDOSE * 0.5 + +/datum/reagent/hyperzine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(prob(5)) + M.emote(pick("twitch", "blink_r", "shiver")) + M.add_chemical_effect(CE_SPEEDBOOST, 1) + +/datum/reagent/ethylredoxrazine + name = "Ethylredoxrazine" + id = "ethylredoxrazine" + description = "A powerful oxidizer that reacts with ethanol." + reagent_state = SOLID + color = "#605048" + overdose = REAGENTS_OVERDOSE + +/datum/reagent/ethylredoxrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.dizziness = 0 + M.drowsyness = 0 + M.stuttering = 0 + M.confused = 0 + if(M.ingested) + for(var/datum/reagent/R in M.ingested) + if(istype(R, /datum/reagent/ethanol)) + R.dose = max(R.dose - removed * 5, 0) + +/datum/reagent/hyronalin + name = "Hyronalin" + id = "hyronalin" + description = "Hyronalin is a medicinal drug used to counter the effect of radiation poisoning." + reagent_state = LIQUID + color = "#408000" + metabolism = REM * 0.25 + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/hyronalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.radiation = max(M.radiation - 30 * removed, 0) + +/datum/reagent/arithrazine + name = "Arithrazine" + id = "arithrazine" + description = "Arithrazine is an unstable medication used for the most extreme cases of radiation poisoning." + reagent_state = LIQUID + color = "#008000" + metabolism = REM * 0.25 + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/arithrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.radiation = max(M.radiation - 70 * removed, 0) + M.adjustToxLoss(-10 * removed) + if(prob(60)) + M.take_organ_damage(4 * removed, 0) + +/datum/reagent/spaceacillin + name = "Spaceacillin" + id = "spaceacillin" + description = "An all-purpose antiviral agent." + reagent_state = LIQUID + color = "#C1C1C1" + metabolism = REM * 0.05 + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/sterilizine + name = "Sterilizine" + id = "sterilizine" + description = "Sterilizes wounds in preparation for surgery." + reagent_state = LIQUID + color = "#C8A5DC" + touch_met = 5 + +/datum/reagent/sterilizine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.germ_level -= min(removed*20, M.germ_level) + +/datum/reagent/sterilizine/touch_obj(var/obj/O) + O.germ_level -= min(volume*20, O.germ_level) + +/datum/reagent/sterilizine/touch_turf(var/turf/T) + T.germ_level -= min(volume*20, T.germ_level) + +/datum/reagent/leporazine + name = "Leporazine" + id = "leporazine" + description = "Leporazine can be use to stabilize an individuals body temperature." + reagent_state = LIQUID + color = "#C8A5DC" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/leporazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.bodytemperature > 310) + M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) + else if(M.bodytemperature < 311) + M.bodytemperature = min(310, M.bodytemperature + (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) + +/* Antidepressants */ + +#define ANTIDEPRESSANT_MESSAGE_DELAY 5*60*10 + +/datum/reagent/methylphenidate + name = "Methylphenidate" + id = "methylphenidate" + description = "Improves the ability to concentrate." + reagent_state = LIQUID + color = "#BF80BF" + metabolism = 0.01 + data = 0 + +/datum/reagent/methylphenidate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(volume <= 0.1 && data != -1) + data = -1 + M << "You lose focus..." + else + if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) + data = world.time + M << "Your mind feels focused and undivided." + +/datum/reagent/citalopram + name = "Citalopram" + id = "citalopram" + description = "Stabilizes the mind a little." + reagent_state = LIQUID + color = "#FF80FF" + metabolism = 0.01 + data = 0 + +/datum/reagent/citalopram/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(volume <= 0.1 && data != -1) + data = -1 + M << "Your mind feels a little less stable..." + else + if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) + data = world.time + M << "Your mind feels stable... a little stable." + +/datum/reagent/paroxetine + name = "Paroxetine" + id = "paroxetine" + description = "Stabilizes the mind greatly, but has a chance of adverse effects." + reagent_state = LIQUID + color = "#FF80BF" + metabolism = 0.01 + data = 0 + +/datum/reagent/paroxetine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(volume <= 0.1 && data != -1) + data = -1 + M << "Your mind feels much less stable..." + else + if(world.time > data + ANTIDEPRESSANT_MESSAGE_DELAY) + data = world.time + if(prob(90)) + M << "Your mind feels much more stable." + else + M << "Your mind breaks apart..." + M.hallucination += 200 + +/datum/reagent/rezadone + name = "Rezadone" + id = "rezadone" + description = "A powder with almost magical properties, this substance can effectively treat genetic damage in humanoids, though excessive consumption has side effects." + reagent_state = SOLID + color = "#669900" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/rezadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustCloneLoss(-20 * removed) + M.adjustOxyLoss(-2 * removed) + M.heal_organ_damage(20 * removed, 20 * removed) + M.adjustToxLoss(-20 * removed) + if(dose > 3) + M.status_flags &= ~DISFIGURED + if(dose > 10) + M.make_dizzy(5) + M.make_jittery(5) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm new file mode 100644 index 0000000000..442a75803f --- /dev/null +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm @@ -0,0 +1,382 @@ +/* Paint and crayons */ + +/datum/reagent/crayon_dust + name = "Crayon dust" + id = "crayon_dust" + description = "Intensely coloured powder obtained by grinding crayons." + reagent_state = LIQUID + color = "#888888" + overdose = 5 + +/datum/reagent/crayon_dust/red + name = "Red crayon dust" + id = "crayon_dust_red" + color = "#FE191A" + +/datum/reagent/crayon_dust/orange + name = "Orange crayon dust" + id = "crayon_dust_orange" + color = "#FFBE4F" + +/datum/reagent/crayon_dust/yellow + name = "Yellow crayon dust" + id = "crayon_dust_yellow" + color = "#FDFE7D" + +/datum/reagent/crayon_dust/green + name = "Green crayon dust" + id = "crayon_dust_green" + color = "#18A31A" + +/datum/reagent/crayon_dust/blue + name = "Blue crayon dust" + id = "crayon_dust_blue" + color = "#247CFF" + +/datum/reagent/crayon_dust/purple + name = "Purple crayon dust" + id = "crayon_dust_purple" + color = "#CC0099" + +/datum/reagent/crayon_dust/grey //Mime + name = "Grey crayon dust" + id = "crayon_dust_grey" + color = "#808080" + +/datum/reagent/crayon_dust/brown //Rainbow + name = "Brown crayon dust" + id = "crayon_dust_brown" + color = "#846F35" + +/datum/reagent/paint + name = "Paint" + id = "paint" + description = "This paint will stick to almost any object." + reagent_state = LIQUID + color = "#808080" + overdose = REAGENTS_OVERDOSE * 0.5 + color_weight = 20 + +/datum/reagent/paint/touch_turf(var/turf/T) + if(istype(T) && !istype(T, /turf/space)) + T.color = color + +/datum/reagent/paint/touch_obj(var/obj/O) + if(istype(O)) + O.color = color + +/datum/reagent/paint/touch_mob(var/mob/M) + if(istype(M) && !istype(M, /mob/dead)) //painting ghosts: not allowed + M.color = color + +/datum/reagent/paint/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.color = color + +/datum/reagent/paint/get_data() + return color + +/datum/reagent/paint/initialize_data(var/newdata) + color = newdata + return + +/datum/reagent/paint/mix_data(var/newdata, var/newamount) + var/list/colors = list(0, 0, 0, 0) + var/tot_w = 0 + + var/hex1 = uppertext(color) + var/hex2 = uppertext(newdata) + if(length(hex1) == 7) + hex1 += "FF" + if(length(hex2) == 7) + hex2 += "FF" + if(length(hex1) != 9 || length(hex2) != 9) + return + colors[1] += hex2num(copytext(hex1, 2, 4)) * volume + colors[2] += hex2num(copytext(hex1, 4, 6)) * volume + colors[3] += hex2num(copytext(hex1, 6, 8)) * volume + colors[4] += hex2num(copytext(hex1, 8, 10)) * volume + tot_w += volume + colors[1] += hex2num(copytext(hex2, 2, 4)) * newamount + colors[2] += hex2num(copytext(hex2, 4, 6)) * newamount + colors[3] += hex2num(copytext(hex2, 6, 8)) * newamount + colors[4] += hex2num(copytext(hex2, 8, 10)) * newamount + tot_w += newamount + + color = rgb(colors[1] / tot_w, colors[2] / tot_w, colors[3] / tot_w, colors[4] / tot_w) + return + +/* Things that didn't fit anywhere else */ + +/datum/reagent/adminordrazine //An OP chemical for admins + name = "Adminordrazine" + id = "adminordrazine" + description = "It's magic. We don't have to explain it." + reagent_state = LIQUID + color = "#C8A5DC" + affects_dead = 1 //This can even heal dead people. + + glass_icon_state = "golden_cup" + glass_name = "golden cup" + glass_desc = "It's magic. We don't have to explain it." + +/datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + affect_blood(M, alien, removed) + +/datum/reagent/adminordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.setCloneLoss(0) + M.setOxyLoss(0) + M.radiation = 0 + M.heal_organ_damage(5,5) + M.adjustToxLoss(-5) + M.hallucination = 0 + M.setBrainLoss(0) + M.disabilities = 0 + M.sdisabilities = 0 + M.eye_blurry = 0 + M.eye_blind = 0 + M.SetWeakened(0) + M.SetStunned(0) + M.SetParalysis(0) + M.silent = 0 + M.dizziness = 0 + M.drowsyness = 0 + M.stuttering = 0 + M.confused = 0 + M.sleeping = 0 + M.jitteriness = 0 + for(var/datum/disease/D in M.viruses) + D.spread = "Remissive" + D.stage-- + if(D.stage < 1) + D.cure() + +/datum/reagent/gold + name = "Gold" + id = "gold" + description = "Gold is a dense, soft, shiny metal and the most malleable and ductile metal known." + reagent_state = SOLID + color = "#F7C430" + +/datum/reagent/silver + name = "Silver" + id = "silver" + description = "A soft, white, lustrous transition metal, it has the highest electrical conductivity of any element and the highest thermal conductivity of any metal." + reagent_state = SOLID + color = "#D0D0D0" + +/datum/reagent/uranium + name ="Uranium" + id = "uranium" + description = "A silvery-white metallic chemical element in the actinide series, weakly radioactive." + reagent_state = SOLID + color = "#B8B8C0" + +/datum/reagent/uranium/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + affect_ingest(M, alien, removed) + +/datum/reagent/uranium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.apply_effect(5 * removed, IRRADIATE, 0) + +/datum/reagent/uranium/touch_turf(var/turf/T) + if(volume >= 3) + if(!istype(T, /turf/space)) + var/obj/effect/decal/cleanable/greenglow/glow = locate(/obj/effect/decal/cleanable/greenglow, T) + if(!glow) + new /obj/effect/decal/cleanable/greenglow(T) + return + +/datum/reagent/adrenaline + name = "Adrenaline" + id = "adrenaline" + description = "Adrenaline is a hormone used as a drug to treat cardiac arrest and other cardiac dysrhythmias resulting in diminished or absent cardiac output." + reagent_state = LIQUID + color = "#C8A5DC" + +/datum/reagent/adrenaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.SetParalysis(0) + M.SetWeakened(0) + M.adjustToxLoss(rand(3)) + +/datum/reagent/water/holywater + name = "Holy Water" + id = "holywater" + description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." + color = "#E0E8EF" + + glass_icon_state = "glass_clear" + glass_name = "glass of holy water" + glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." + +/datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(ishuman(M)) // Any location + if(M.mind && cult.is_antagonist(M.mind) && prob(10)) + cult.remove_antagonist(M.mind) + +/datum/reagent/ammonia + name = "Ammonia" + id = "ammonia" + description = "A caustic substance commonly used in fertilizer or household cleaners." + reagent_state = GAS + color = "#404030" + +/datum/reagent/diethylamine + name = "Diethylamine" + id = "diethylamine" + description = "A secondary amine, mildly corrosive." + reagent_state = LIQUID + color = "#604030" + +/datum/reagent/fluorosurfactant // Foam precursor + name = "Fluorosurfactant" + id = "fluorosurfactant" + description = "A perfluoronated sulfonic acid that forms a foam when mixed with water." + reagent_state = LIQUID + color = "#9E6B38" + +/datum/reagent/foaming_agent // Metal foaming agent. This is lithium hydride. Add other recipes (e.g. LiH + H2O -> LiOH + H2) eventually. + name = "Foaming agent" + id = "foaming_agent" + description = "A agent that yields metallic foam when mixed with light metal and a strong acid." + reagent_state = SOLID + color = "#664B63" + +/datum/reagent/thermite + name = "Thermite" + id = "thermite" + description = "Thermite produces an aluminothermic reaction known as a thermite reaction. Can be used to melt walls." + reagent_state = SOLID + color = "#673910" + touch_met = 50 + +/datum/reagent/thermite/touch_turf(var/turf/T) + if(volume >= 5) + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/W = T + W.thermite = 1 + W.overlays += image('icons/effects/effects.dmi',icon_state = "#673910") + remove_self(5) + return + +/datum/reagent/thermite/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjust_fire_stacks(removed * 0.2) + return + +/datum/reagent/thermite/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.adjustFireLoss(3 * removed) + +/datum/reagent/space_cleaner + name = "Space cleaner" + id = "cleaner" + description = "A compound used to clean things. Now with 50% more sodium hypochlorite!" + reagent_state = LIQUID + color = "#A5F0EE" + touch_met = 50 + +/datum/reagent/space_cleaner/touch_obj(var/obj/O) + if(istype(O, /obj/effect/decal/cleanable)) + qdel(O) + else + O.clean_blood() + +/datum/reagent/space_cleaner/touch_turf(var/turf/T) + if(volume >= 1) + if(istype(T, /turf/simulated)) + var/turf/simulated/S = T + S.dirt = 0 + T.clean_blood() + + for(var/mob/living/carbon/slime/M in T) + M.adjustToxLoss(rand(5, 10)) + +/datum/reagent/space_cleaner/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.r_hand) + M.r_hand.clean_blood() + if(M.l_hand) + M.l_hand.clean_blood() + if(M.wear_mask) + if(M.wear_mask.clean_blood()) + M.update_inv_wear_mask(0) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.head) + if(H.head.clean_blood()) + H.update_inv_head(0) + if(H.wear_suit) + if(H.wear_suit.clean_blood()) + H.update_inv_wear_suit(0) + else if(H.w_uniform) + if(H.w_uniform.clean_blood()) + H.update_inv_w_uniform(0) + if(H.shoes) + if(H.shoes.clean_blood()) + H.update_inv_shoes(0) + else + H.clean_blood(1) + return + M.clean_blood() + +/datum/reagent/lube // TODO: spraying on borgs speeds them up + name = "Space Lube" + id = "lube" + description = "Lubricant is a substance introduced between two moving surfaces to reduce the friction and wear between them. giggity." + reagent_state = LIQUID + color = "#009CA8" + +/datum/reagent/lube/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return + if(volume >= 1) + if(T.wet >= 2) + return + T.wet = 2 + spawn(800) + if(!T || !istype(T)) + return + T.wet = 0 + if(T.wet_overlay) + T.overlays -= T.wet_overlay + T.wet_overlay = null + +/datum/reagent/silicate + name = "Silicate" + id = "silicate" + description = "A compound that can be used to reinforce glass." + reagent_state = LIQUID + color = "#C7FFFF" + +/datum/reagent/silicate/touch_obj(var/obj/O) + if(istype(O, /obj/structure/window)) + var/obj/structure/window/W = O + W.apply_silicate(volume) + remove_self(volume) + return + +/datum/reagent/glycerol + name = "Glycerol" + id = "glycerol" + description = "Glycerol is a simple polyol compound. Glycerol is sweet-tasting and of low toxicity." + reagent_state = LIQUID + color = "#808080" + +/datum/reagent/nitroglycerin + name = "Nitroglycerin" + id = "nitroglycerin" + description = "Nitroglycerin is a heavy, colorless, oily, explosive liquid obtained by nitrating glycerol." + reagent_state = LIQUID + color = "#808080" + +/datum/reagent/coolant + name = "Coolant" + id = "coolant" + description = "Industrial cooling substance." + reagent_state = LIQUID + color = "#C8A5DC" + +/datum/reagent/ultraglue + name = "Ultra Glue" + id = "glue" + description = "An extremely powerful bonding agent." + color = "#FFFFCC" diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm new file mode 100644 index 0000000000..a2ec160c17 --- /dev/null +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -0,0 +1,516 @@ +/* Toxins, poisons, venoms */ +/datum/reagent/toxin + name = "Toxin" + id = "toxin" + description = "A toxic chemical." + reagent_state = LIQUID + color = "#CF3600" + metabolism = REM * 0.05 // 0.01 by default. They last a while and slowly kill you. + var/strength = 4 // How much damage it deals per unit + +/datum/reagent/toxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(strength && alien != IS_DIONA) + M.adjustToxLoss(strength * removed) + +/datum/reagent/toxin/plasticide + name = "Plasticide" + id = "plasticide" + description = "Liquid plastic, do not eat." + reagent_state = LIQUID + color = "#CF3600" + strength = 5 + +/datum/reagent/toxin/amatoxin + name = "Amatoxin" + id = "amatoxin" + description = "A powerful poison derived from certain species of mushroom." + reagent_state = LIQUID + color = "#792300" + strength = 10 + +/datum/reagent/toxin/carpotoxin + name = "Carpotoxin" + id = "carpotoxin" + description = "A deadly neurotoxin produced by the dreaded space carp." + reagent_state = LIQUID + color = "#003333" + strength = 10 + +/datum/reagent/toxin/phoron + name = "Phoron" + id = "phoron" + description = "Phoron in its liquid form." + reagent_state = LIQUID + color = "#9D14DB" + strength = 30 + +/datum/reagent/toxin/phoron/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.adjust_fire_stacks(removed / 5) + +/datum/reagent/toxin/phoron/touch_turf(var/turf/simulated/T) + if(!istype(T)) + return + T.assume_gas("volatile_fuel", volume, T20C) + remove_self(volume) + +/datum/reagent/toxin/cyanide //Fast and Lethal + name = "Cyanide" + id = "cyanide" + description = "A highly toxic chemical." + reagent_state = LIQUID + color = "#CF3600" + strength = 20 + metabolism = REM * 2 + +/datum/reagent/toxin/cyanide/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + M.adjustOxyLoss(20 * removed) + M.sleeping += 1 + +/datum/reagent/toxin/potassium_chloride + name = "Potassium Chloride" + id = "potassium_chloride" + description = "A delicious salt that stops the heart when injected into cardiac muscle." + reagent_state = SOLID + color = "#FFFFFF" + strength = 0 + overdose = REAGENTS_OVERDOSE + +/datum/reagent/toxin/potassium_chloride/overdose(var/mob/living/carbon/M, var/alien) + ..() + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.stat != 1) + if(H.losebreath >= 10) + H.losebreath = max(10, H.losebreath - 10) + H.adjustOxyLoss(2) + H.Weaken(10) + +/datum/reagent/toxin/potassium_chlorophoride + name = "Potassium Chlorophoride" + id = "potassium_chlorophoride" + description = "A specific chemical based on Potassium Chloride to stop the heart for surgery. Not safe to eat!" + reagent_state = SOLID + color = "#FFFFFF" + strength = 10 + overdose = 20 + +/datum/reagent/toxin/potassium_chlorophoride/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.stat != 1) + if(H.losebreath >= 10) + H.losebreath = max(10, M.losebreath-10) + H.adjustOxyLoss(2) + H.Weaken(10) + +/datum/reagent/toxin/zombiepowder + name = "Zombie Powder" + id = "zombiepowder" + description = "A strong neurotoxin that puts the subject into a death-like state." + reagent_state = SOLID + color = "#669900" + metabolism = REM + strength = 3 + +/datum/reagent/toxin/zombiepowder/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + return + M.status_flags |= FAKEDEATH + M.adjustOxyLoss(3 * removed) + M.Weaken(10) + M.silent = max(M.silent, 10) + M.tod = worldtime2text() + +/datum/reagent/toxin/zombiepowder/Destroy() + if(holder && holder.my_atom && ismob(holder.my_atom)) + var/mob/M = holder.my_atom + M.status_flags &= ~FAKEDEATH + ..() + +/datum/reagent/toxin/fertilizer //Reagents used for plant fertilizers. + name = "fertilizer" + id = "fertilizer" + description = "A chemical mix good for growing plants with." + reagent_state = LIQUID + strength = 0.5 // It's not THAT poisonous. + color = "#664330" + +/datum/reagent/toxin/fertilizer/eznutrient + name = "EZ Nutrient" + id = "eznutrient" + +/datum/reagent/toxin/fertilizer/left4zed + name = "Left-4-Zed" + id = "left4zed" + +/datum/reagent/toxin/fertilizer/robustharvest + name = "Robust Harvest" + id = "robustharvest" + +/datum/reagent/toxin/plantbgone + name = "Plant-B-Gone" + id = "plantbgone" + description = "A harmful toxic mixture to kill plantlife. Do not ingest!" + reagent_state = LIQUID + color = "#49002E" + strength = 4 + +/datum/reagent/toxin/plantbgone/touch_turf(var/turf/T) + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/W = T + if(W.rotting) + W.rotting = 0 + for(var/obj/effect/E in W) + if(E.name == "Wallrot") + qdel(E) + + W.visible_message("The fungi are completely dissolved by the solution!") + +/datum/reagent/toxin/plantbgone/touch_obj(var/obj/O, var/volume) + if(istype(O, /obj/effect/alien/weeds/)) + var/obj/effect/alien/weeds/alien_weeds = O + alien_weeds.health -= rand(15, 35) + alien_weeds.healthcheck() + else if(istype(O, /obj/effect/plant)) + qdel(O) + +/datum/reagent/toxin/plantbgone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + M.adjustToxLoss(50 * removed) + +/datum/reagent/toxin/plantbgone/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + ..() + if(alien == IS_DIONA) + M.adjustToxLoss(50 * removed) + +/datum/reagent/acid/polyacid + name = "Polytrinic acid" + id = "pacid" + description = "Polytrinic acid is a an extremely corrosive chemical substance." + reagent_state = LIQUID + color = "#8E18A9" + power = 10 + meltdose = 4 + +/datum/reagent/lexorin + name = "Lexorin" + id = "lexorin" + description = "Lexorin temporarily stops respiration. Causes tissue damage." + reagent_state = LIQUID + color = "#C8A5DC" + overdose = REAGENTS_OVERDOSE + +/datum/reagent/lexorin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.take_organ_damage(3 * removed, 0) + if(M.losebreath < 15) + M.losebreath++ + +/datum/reagent/mutagen + name = "Unstable mutagen" + id = "mutagen" + description = "Might cause unpredictable mutations. Keep away from children." + reagent_state = LIQUID + color = "#13BC5E" + +/datum/reagent/mutagen/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(33)) + affect_blood(M, alien, removed) + +/datum/reagent/mutagen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(67)) + affect_blood(M, alien, removed) + +/datum/reagent/mutagen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(M.dna) + if(prob(removed * 0.1)) // Approx. one mutation per 10 injected/20 ingested/30 touching units + randmuti(M) + if(prob(98)) + randmutb(M) + else + randmutg(M) + domutcheck(M, null) + M.UpdateAppearance() + M.apply_effect(10 * removed, IRRADIATE, 0) + +/datum/reagent/slimejelly + name = "Slime Jelly" + id = "slimejelly" + description = "A gooey semi-liquid produced from one of the deadliest lifeforms in existence. SO REAL." + reagent_state = LIQUID + color = "#801E28" + +/datum/reagent/slimejelly/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(prob(10)) + M << "Your insides are burning!" + M.adjustToxLoss(rand(100, 300) * removed) + else if(prob(40)) + M.heal_organ_damage(25 * removed, 0) + +/datum/reagent/soporific + name = "Soporific" + id = "stoxin" + description = "An effective hypnotic used to treat insomnia." + reagent_state = LIQUID + color = "#009CA8" + metabolism = REM * 0.5 + overdose = REAGENTS_OVERDOSE + +/datum/reagent/soporific/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(dose < 1) + if(dose == metabolism * 2 || prob(5)) + M.emote("yawn") + else if(dose < 1.5) + M.eye_blurry = max(M.eye_blurry, 10) + else if(dose < 5) + if(prob(50)) + M.Weaken(2) + M.drowsyness = max(M.drowsyness, 20) + else + M.sleeping = max(M.sleeping, 20) + M.drowsyness = max(M.drowsyness, 60) + +/datum/reagent/chloralhydrate + name = "Chloral Hydrate" + id = "chloralhydrate" + description = "A powerful sedative." + reagent_state = SOLID + color = "#000067" + metabolism = REM * 0.5 + overdose = REAGENTS_OVERDOSE * 0.5 + +/datum/reagent/chloralhydrate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(dose == metabolism) + M.confused += 2 + M.drowsyness += 2 + else if(dose < 2) + M.Weaken(30) + M.eye_blurry = max(M.eye_blurry, 10) + else + M.sleeping = max(M.sleeping, 30) + + if(dose > 1) + M.adjustToxLoss(removed) + +/datum/reagent/chloralhydrate/beer2 //disguised as normal beer for use by emagged brobots + name = "Beer" + id = "beer2" + description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong. + reagent_state = LIQUID + color = "#664300" + + glass_icon_state = "beerglass" + glass_name = "glass of beer" + glass_desc = "A freezing pint of beer" + glass_center_of_mass = list("x"=16, "y"=8) + +/* Drugs */ + +/datum/reagent/space_drugs + name = "Space drugs" + id = "space_drugs" + description = "An illegal chemical compound used as drug." + reagent_state = LIQUID + color = "#60A584" + metabolism = REM * 0.5 + overdose = REAGENTS_OVERDOSE + +/datum/reagent/space_drugs/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.druggy = max(M.druggy, 15) + if(prob(10) && isturf(M.loc) && !istype(M.loc, /turf/space) && M.canmove && !M.restrained()) + step(M, pick(cardinal)) + if(prob(7)) + M.emote(pick("twitch", "drool", "moan", "giggle")) + +/datum/reagent/serotrotium + name = "Serotrotium" + id = "serotrotium" + description = "A chemical compound that promotes concentrated production of the serotonin neurotransmitter in humans." + reagent_state = LIQUID + color = "#202040" + metabolism = REM * 0.25 + overdose = REAGENTS_OVERDOSE + +/datum/reagent/serotrotium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + if(prob(7)) + M.emote(pick("twitch", "drool", "moan", "gasp")) + return + +/datum/reagent/cryptobiolin + name = "Cryptobiolin" + id = "cryptobiolin" + description = "Cryptobiolin causes confusion and dizzyness." + reagent_state = LIQUID + color = "#000055" + metabolism = REM * 0.5 + overdose = REAGENTS_OVERDOSE + +/datum/reagent/cryptobiolin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.make_dizzy(4) + M.confused = max(M.confused, 20) + +/datum/reagent/impedrezene + name = "Impedrezene" + id = "impedrezene" + description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions." + reagent_state = LIQUID + color = "#C8A5DC" + overdose = REAGENTS_OVERDOSE + +/datum/reagent/impedrezene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.jitteriness = max(M.jitteriness - 5, 0) + if(prob(80)) + M.adjustBrainLoss(3 * removed) + if(prob(50)) + M.drowsyness = max(M.drowsyness, 3) + if(prob(10)) + M.emote("drool") + +/datum/reagent/mindbreaker + name = "Mindbreaker Toxin" + id = "mindbreaker" + description = "A powerful hallucinogen, it can cause fatal effects in users." + reagent_state = LIQUID + color = "#B31008" + metabolism = REM * 0.25 + overdose = REAGENTS_OVERDOSE + +/datum/reagent/mindbreaker/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.hallucination = max(M.hallucination, 100) + +/datum/reagent/psilocybin + name = "Psilocybin" + id = "psilocybin" + description = "A strong psycotropic derived from certain species of mushroom." + color = "#E700E7" + overdose = REAGENTS_OVERDOSE + metabolism = REM * 0.5 + +/datum/reagent/psilocybin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(alien == IS_DIONA) + return + M.druggy = max(M.druggy, 30) + if(dose < 1) + M.stuttering = max(M.stuttering, 3) + M.make_dizzy(5) + if(prob(10)) + M.emote(pick("twitch", "giggle")) + else if(dose < 2) + M.stuttering = max(M.stuttering, 3) + M.make_jittery(10) + M.make_dizzy(10) + M.druggy = max(M.druggy, 35) + if(prob(20)) + M.emote(pick("twitch","giggle")) + else + M.stuttering = max(M.stuttering, 3) + M.make_jittery(20) + M.make_dizzy(20) + M.druggy = max(M.druggy, 40) + if(prob(30)) + M.emote(pick("twitch", "giggle")) + +/datum/reagent/nicotine + name = "Nicotine" + id = "nicotine" + description = "A highly addictive stimulant extracted from the tobacco plant." + reagent_state = LIQUID + color = "#181818" + +/* Transformations */ + +/datum/reagent/slimetoxin + name = "Mutation Toxin" + id = "mutationtoxin" + description = "A corruptive toxin produced by slimes." + reagent_state = LIQUID + color = "#13BC5E" + +/datum/reagent/slimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.species.name != "Slime") + M << "Your flesh rapidly mutates!" + H.set_species("Slime") + +/datum/reagent/aslimetoxin + name = "Advanced Mutation Toxin" + id = "amutationtoxin" + description = "An advanced corruptive toxin produced by slimes." + reagent_state = LIQUID + color = "#13BC5E" + +/datum/reagent/aslimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) // TODO: check if there's similar code anywhere else + if(M.monkeyizing) + return + M << "Your flesh rapidly mutates!" + M.monkeyizing = 1 + M.canmove = 0 + M.icon = null + M.overlays.Cut() + M.invisibility = 101 + for(var/obj/item/W in M) + if(istype(W, /obj/item/weapon/implant)) //TODO: Carn. give implants a dropped() or something + qdel(W) + continue + W.layer = initial(W.layer) + W.loc = M.loc + W.dropped(M) + var/mob/living/carbon/slime/new_mob = new /mob/living/carbon/slime(M.loc) + new_mob.a_intent = "hurt" + new_mob.universal_speak = 1 + if(M.mind) + M.mind.transfer_to(new_mob) + else + new_mob.key = M.key + qdel(M) + +/datum/reagent/nanites + name = "Nanomachines" + id = "nanites" + description = "Microscopic construction robots." + reagent_state = LIQUID + color = "#535E66" + +/datum/reagent/nanites/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(10)) + M.contract_disease(new /datum/disease/robotic_transformation(0), 1) + +/datum/reagent/nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.contract_disease(new /datum/disease/robotic_transformation(0), 1) + +/datum/reagent/xenomicrobes + name = "Xenomicrobes" + id = "xenomicrobes" + description = "Microbes with an entirely alien cellular structure." + reagent_state = LIQUID + color = "#535E66" + +/datum/reagent/xenomicrobes/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) + if(prob(10)) + M.contract_disease(new /datum/disease/xeno_transformation(0), 1) + +/datum/reagent/xenomicrobes/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) + M.contract_disease(new /datum/disease/xeno_transformation(0), 1) From 80467f8fa6c375ce253c9677e784706a4716f445 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Tue, 5 May 2015 12:01:02 +0300 Subject: [PATCH 006/199] Removes metorapan reaction --- code/modules/reagents/Chemistry-Recipes.dm | 7 ------- 1 file changed, 7 deletions(-) diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index b64e0f4a1c..2912a392cb 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -222,13 +222,6 @@ inhibitors = list("sugar" = 1) // Messes up with inaprovaline result_amount = 2 -/datum/chemical_reaction/metorapan - name = "Metorapan" - id = "metorapan" - result = "metorapan" - required_reagents = list("bicaridine" = 1, "iron" = 1, "nitrogen" = 1) - result_amount = 3 - /datum/chemical_reaction/hyperzine name = "Hyperzine" id = "hyperzine" From fedd0342a0aa0f683be8f2d5b6aba00d450d81c2 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Sat, 9 May 2015 12:03:22 +0300 Subject: [PATCH 007/199] Minor chem fixes --- baystation12.int | 2 +- .../Chemistry-Reagents-Core.dm | 14 ++-- .../Chemistry-Reagents-Dispenser.dm | 32 ++++---- .../Chemistry-Reagents-Food-Drinks.dm | 76 +++++++++++-------- .../Chemistry-Reagents-Medicine.dm | 56 +++++++------- .../Chemistry-Reagents-Other.dm | 20 ++--- .../Chemistry-Reagents-Toxins.dm | 52 ++++++------- 7 files changed, 131 insertions(+), 121 deletions(-) diff --git a/baystation12.int b/baystation12.int index adadb82f7f..b82874fded 100644 --- a/baystation12.int +++ b/baystation12.int @@ -1,6 +1,6 @@ // BEGIN_INTERNALS /* -AUTO_FILE_DIR: OFF MAP_ICON_TYPE: 0 +AUTO_FILE_DIR: OFF */ // END_INTERNALS diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm index cd3da656a9..d957e88a4c 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm @@ -50,13 +50,13 @@ if(B) B.blood_DNA["UNKNOWN DNA STRUCTURE"] = "X*" -/datum/reagent/blood/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/blood/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(dose > 5) M.adjustToxLoss(removed) if(dose > 15) M.adjustToxLoss(removed) -/datum/reagent/blood/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/blood/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) if(data && data["viruses"]) for(var/datum/disease/D in data["viruses"]) if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) @@ -71,7 +71,7 @@ if(data && data["antibodies"]) M.antibodies |= data["antibodies"] -/datum/reagent/blood/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/blood/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.inject_blood(src, volume) remove_self(volume) @@ -81,7 +81,7 @@ reagent_state = LIQUID color = "#C81040" -/datum/reagent/vaccine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/vaccine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(data) for(var/datum/disease/D in M.viruses) if(istype(D, /datum/disease/advance)) @@ -155,7 +155,7 @@ if(!cube.wrapped) cube.Expand() -/datum/reagent/water/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/water/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) if(istype(M, /mob/living/carbon/slime)) var/mob/living/carbon/slime/S = M S.adjustToxLoss(15 * removed) // Babies have 150 health, adults have 200; So, 10 units and 13.5 @@ -191,8 +191,8 @@ remove_self(volume) return -/datum/reagent/fuel/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/fuel/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.adjustToxLoss(2 * removed) -/datum/reagent/fuel/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // Splashing people with welding fuel to make them easy to ignite! +/datum/reagent/fuel/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) // Splashing people with welding fuel to make them easy to ignite! M.adjust_fire_stacks(0.1 * removed) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm index 9d968aed78..2d742bd01e 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -28,10 +28,10 @@ reagent_state = GAS color = "#808080" -/datum/reagent/chlorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/chlorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.take_organ_damage(1*REM, 0) -/datum/reagent/chlorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/chlorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) M.take_organ_damage(1*REM, 0) /datum/reagent/copper @@ -59,15 +59,15 @@ glass_name = "glass of ethanol" glass_desc = "A well-known alcohol with a variety of applications." -/datum/reagent/ethanol/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) M.adjust_fire_stacks(removed / 15) return -/datum/reagent/ethanol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.adjustToxLoss(removed * 2 * toxicity) return -/datum/reagent/ethanol/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) M.nutrition += nutriment_factor * removed var/strength_mod = 1 @@ -129,10 +129,10 @@ reagent_state = GAS color = "#808080" -/datum/reagent/fluorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/fluorine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.adjustToxLoss(removed) -/datum/reagent/fluorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/fluorine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) M.adjustToxLoss(removed) /datum/reagent/hydrogen @@ -149,7 +149,7 @@ reagent_state = SOLID color = "#353535" -/datum/reagent/iron/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/iron/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) M.add_chemical_effect(CE_BLOODRESTORE, 8 * removed) @@ -160,7 +160,7 @@ reagent_state = SOLID color = "#808080" -/datum/reagent/lithium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/lithium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) step(M, pick(cardinal)) @@ -174,7 +174,7 @@ reagent_state = LIQUID color = "#484848" -/datum/reagent/mercury/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/mercury/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) if(M.canmove && !M.restrained() && istype(M.loc, /turf/space)) step(M, pick(cardinal)) @@ -189,7 +189,7 @@ reagent_state = GAS color = "#808080" -/datum/reagent/nitrogen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nitrogen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_VOX) M.adjustOxyLoss(-removed * 3) @@ -200,7 +200,7 @@ reagent_state = GAS color = "#808080" -/datum/reagent/oxygen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/oxygen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_VOX) M.adjustToxLoss(removed * 3) @@ -225,7 +225,7 @@ reagent_state = SOLID color = "#C7C7C7" -/datum/reagent/radium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/radium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.apply_effect(10 * removed, IRRADIATE, 0) // Radium may increase your chances to cure a disease if(M.virus2.len) for(var/ID in M.virus2) @@ -260,10 +260,10 @@ var/power = 5 var/meltdose = 10 // How much is needed to melt -/datum/reagent/acid/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/acid/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.take_organ_damage(0, removed * power * 2) -/datum/reagent/acid/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) // This is the most interesting +/datum/reagent/acid/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) // This is the most interesting if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.head) @@ -358,7 +358,7 @@ glass_name = "glass of sugar" glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." -/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.nutrition += removed * 3 /datum/reagent/sulfur diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index d9b90f3de4..97db6ceab5 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -10,13 +10,13 @@ var/injectable = 0 color = "#664330" -/datum/reagent/nutriment/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nutriment/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(!injectable) M.adjustToxLoss(0.1 * removed) return affect_ingest(M, alien, removed) -/datum/reagent/nutriment/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nutriment/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) M.heal_organ_damage(0.5 * removed, 0) M.nutrition += nutriment_factor * removed // For hunger and fatness M.add_chemical_effect(CE_BLOODRESTORE, 4 * removed) @@ -26,7 +26,7 @@ id = "protein" color = "#440000" -/datum/reagent/nutriment/protein/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nutriment/protein/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(alien && alien == IS_SKRELL) M.adjustToxLoss(0.5 * removed) return @@ -37,9 +37,9 @@ id = "egg" color = "#FFFFAA" -/datum/reagent/nutriment/egg/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nutriment/egg/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(alien && alien == IS_SKRELL) - M.adjustToxLoss(0.5) + M.adjustToxLoss(0.5 * removed) return ..() @@ -165,7 +165,7 @@ color = "#BBEDA4" overdose = REAGENTS_OVERDOSE -/datum/reagent/lipozine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/lipozine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.nutrition = max(M.nutrition - 10 * removed, 0) M.overeatduration = 0 if(M.nutrition < 0) @@ -203,7 +203,7 @@ reagent_state = LIQUID color = "#B31008" -/datum/reagent/frostoil/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/frostoil/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.bodytemperature = max(M.bodytemperature - 10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0) @@ -220,7 +220,12 @@ reagent_state = LIQUID color = "#B31008" -/datum/reagent/capsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/capsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + if(alien == IS_DIONA) + return + M.adjustToxLoss(0.5 * removed) + +/datum/reagent/capsaicin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(ishuman(M)) @@ -245,7 +250,12 @@ touch_met = 50 // Get rid of it quickly color = "#B31008" -/datum/reagent/condensedcapsaicin/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/condensedcapsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + if(alien == IS_DIONA) + return + M.adjustToxLoss(0.5 * removed) + +/datum/reagent/condensedcapsaicin/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) var/eyes_covered = 0 var/mouth_covered = 0 var/obj/item/safe_thing = null @@ -294,7 +304,7 @@ M.Weaken(5) return -/datum/reagent/condensedcapsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/condensedcapsaicin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) @@ -323,11 +333,11 @@ var/adj_sleepy = 0 var/adj_temp = 0 -/datum/reagent/drink/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.adjustToxLoss(removed) // Probably not a good idea; not very deadly though return -/datum/reagent/drink/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) M.nutrition += nutrition * removed M.dizziness = max(0, M.dizziness + adj_dizzy) M.drowsyness = max(0, M.drowsyness + adj_drowsy) @@ -369,7 +379,7 @@ glass_name = "glass of carrot juice" glass_desc = "It is just like a carrot but without crunching." -/datum/reagent/drink/carrotjuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/carrotjuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.reagents.add_reagent("imidazoline", removed * 0.2) @@ -403,7 +413,7 @@ glass_name = "glass of lime juice" glass_desc = "A glass of sweet-sour lime juice" -/datum/reagent/drink/limejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/limejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -419,7 +429,7 @@ glass_name = "glass of orange juice" glass_desc = "Vitamins! Yay!" -/datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -457,7 +467,7 @@ glass_name = "glass of tomato juice" glass_desc = "Are you sure this is tomato juice?" -/datum/reagent/drink/tomatojuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/tomatojuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -485,7 +495,7 @@ glass_name = "glass of milk" glass_desc = "White and nutritious goodness!" -/datum/reagent/drink/milk/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/milk/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -526,7 +536,7 @@ glass_name = "cup of tea" glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" -/datum/reagent/drink/tea/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/tea/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -558,7 +568,7 @@ glass_name = "cup of coffee" glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." -/datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -589,7 +599,7 @@ glass_desc = "A nice and refrshing beverage while you are reading." glass_center_of_mass = list("x"=15, "y"=9) -/datum/reagent/drink/coffee/soy_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/coffee/soy_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.heal_organ_damage(0.5 * removed, 0) @@ -605,7 +615,7 @@ glass_desc = "A nice, strong and refreshing beverage while you are reading." glass_center_of_mass = list("x"=15, "y"=9) -/datum/reagent/drink/coffee/cafe_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/coffee/cafe_latte/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.heal_organ_damage(0.5 * removed, 0) @@ -718,7 +728,7 @@ glass_desc = "The secret of the sanctuary of the Libarian..." glass_center_of_mass = list("x"=16, "y"=9) -/datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.make_jittery(5) @@ -735,7 +745,7 @@ glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" glass_center_of_mass = list("x"=16, "y"=6) -/datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.add_chemical_effect(CE_SPEEDBOOST, 1) M.make_jittery(20) @@ -827,7 +837,7 @@ glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." glass_center_of_mass = list("x"=16, "y"=8) -/datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -864,7 +874,7 @@ color = "#302000" nutrition = 5 -/datum/reagent/drink/hell_ramen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/drink/hell_ramen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -932,7 +942,7 @@ glass_desc = "A freezing pint of beer" glass_center_of_mass = list("x"=16, "y"=8) -/datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -974,7 +984,7 @@ glass_desc = "Now you want to Pray for a pirate suit, don't you?" glass_center_of_mass = list("x"=16, "y"=12) -/datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -1004,7 +1014,7 @@ glass_desc = "DAMN, THIS THING LOOKS ROBUST" glass_center_of_mass = list("x"=15, "y"=7) -/datum/reagent/ethanol/kahlua/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/kahlua/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -1075,7 +1085,7 @@ glass_name = "glass of Thirteen Loko" glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." -/datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -1108,7 +1118,7 @@ glass_desc = "The glass contain wodka. Xynta." glass_center_of_mass = list("x"=16, "y"=12) -/datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.radiation = max(M.radiation - 1 * removed, 0) @@ -1289,7 +1299,7 @@ glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." glass_center_of_mass = list("x"=18, "y"=10) -/datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.Stun(2) @@ -1670,7 +1680,7 @@ glass_desc = "A drink that is guaranteed to knock you silly." glass_center_of_mass = list("x"=16, "y"=8) -/datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() M.Weaken(3) @@ -1700,7 +1710,7 @@ glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" glass_center_of_mass = list("x"=16, "y"=5) -/datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(dose > 30) M.adjustToxLoss(2 * removed) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm index dc26aa58e3..c17178ae63 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm @@ -10,7 +10,7 @@ metabolism = REM * 0.5 scannable = 1 -/datum/reagent/inaprovaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/inaprovaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) M.add_chemical_effect(CE_STABLE) M.add_chemical_effect(CE_PAINKILLER, 25) @@ -24,7 +24,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/bicaridine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/bicaridine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) M.heal_organ_damage(6 * removed, 0) @@ -37,7 +37,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/kelotane/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/kelotane/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) M.heal_organ_damage(0, 6 * removed) @@ -50,7 +50,7 @@ overdose = REAGENTS_OVERDOSE * 0.5 scannable = 1 -/datum/reagent/dermaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/dermaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) M.heal_organ_damage(0, 12 * removed) @@ -62,7 +62,7 @@ color = "#00A000" scannable = 1 -/datum/reagent/dylovene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/dylovene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) M.drowsyness = max(0, M.drowsyness - 6 * removed) M.hallucination = max(0, M.hallucination - 9 * removed) @@ -77,7 +77,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/dexalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_VOX) M.adjustToxLoss(removed * 6) else if(alien != IS_DIONA) @@ -94,7 +94,7 @@ overdose = REAGENTS_OVERDOSE * 0.5 scannable = 1 -/datum/reagent/dexalinp/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/dexalinp/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_VOX) M.adjustToxLoss(removed * 9) else if(alien != IS_DIONA) @@ -110,7 +110,7 @@ color = "#8040FF" scannable = 1 -/datum/reagent/tricordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/tricordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien != IS_DIONA) M.adjustOxyLoss(-6 * removed) M.heal_organ_damage(3 * removed, 3 * removed) @@ -125,7 +125,7 @@ metabolism = REM * 0.5 scannable = 1 -/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(M.bodytemperature < 170) M.adjustCloneLoss(-10 * removed) M.adjustOxyLoss(-10 * removed) @@ -141,7 +141,7 @@ metabolism = REM * 0.5 scannable = 1 -/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/cryoxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(M.bodytemperature < 170) M.adjustCloneLoss(-30 * removed) M.adjustOxyLoss(-3 * removed) @@ -160,7 +160,7 @@ scannable = 1 metabolism = 0.02 -/datum/reagent/paracetamol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/paracetamol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.add_chemical_effect(CE_PAINKILLER, 50) /datum/reagent/paracetamol/overdose(var/mob/living/carbon/M, var/alien) @@ -177,7 +177,7 @@ scannable = 1 metabolism = 0.02 -/datum/reagent/tramadol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/tramadol/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.add_chemical_effect(CE_PAINKILLER, 80) /datum/reagent/tramadol/overdose(var/mob/living/carbon/M, var/alien) @@ -193,7 +193,7 @@ overdose = 20 metabolism = 0.02 -/datum/reagent/oxycodone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/oxycodone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.add_chemical_effect(CE_PAINKILLER, 200) /datum/reagent/oxycodone/overdose(var/mob/living/carbon/M, var/alien) @@ -213,7 +213,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/synaptizine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/synaptizine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.drowsyness = max(M.drowsyness - 5, 0) @@ -235,7 +235,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/alkysine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/alkysine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.adjustBrainLoss(-30 * removed) @@ -250,7 +250,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/imidazoline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/imidazoline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.eye_blurry = max(M.eye_blurry - 5, 0) M.eye_blind = max(M.eye_blind - 5, 0) if(ishuman(M)) @@ -269,7 +269,7 @@ overdose = 10 scannable = 1 -/datum/reagent/peridaxon/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/peridaxon/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(ishuman(M)) var/mob/living/carbon/human/H = M @@ -285,7 +285,7 @@ color = "#004000" overdose = REAGENTS_OVERDOSE -/datum/reagent/ryetalyn/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ryetalyn/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) var/needs_update = M.mutations.len > 0 M.mutations = list() @@ -306,7 +306,7 @@ metabolism = REM * 0.15 overdose = REAGENTS_OVERDOSE * 0.5 -/datum/reagent/hyperzine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/hyperzine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(prob(5)) @@ -321,7 +321,7 @@ color = "#605048" overdose = REAGENTS_OVERDOSE -/datum/reagent/ethylredoxrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/ethylredoxrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.dizziness = 0 @@ -343,7 +343,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/hyronalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/hyronalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.radiation = max(M.radiation - 30 * removed, 0) /datum/reagent/arithrazine @@ -356,7 +356,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/arithrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/arithrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.radiation = max(M.radiation - 70 * removed, 0) M.adjustToxLoss(-10 * removed) if(prob(60)) @@ -380,7 +380,7 @@ color = "#C8A5DC" touch_met = 5 -/datum/reagent/sterilizine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/sterilizine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) M.germ_level -= min(removed*20, M.germ_level) /datum/reagent/sterilizine/touch_obj(var/obj/O) @@ -398,7 +398,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/leporazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/leporazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(M.bodytemperature > 310) M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) else if(M.bodytemperature < 311) @@ -417,7 +417,7 @@ metabolism = 0.01 data = 0 -/datum/reagent/methylphenidate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/methylphenidate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(volume <= 0.1 && data != -1) @@ -437,7 +437,7 @@ metabolism = 0.01 data = 0 -/datum/reagent/citalopram/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/citalopram/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(volume <= 0.1 && data != -1) @@ -457,7 +457,7 @@ metabolism = 0.01 data = 0 -/datum/reagent/paroxetine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/paroxetine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(volume <= 0.1 && data != -1) @@ -481,7 +481,7 @@ overdose = REAGENTS_OVERDOSE scannable = 1 -/datum/reagent/rezadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/rezadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.adjustCloneLoss(-20 * removed) M.adjustOxyLoss(-2 * removed) M.heal_organ_damage(20 * removed, 20 * removed) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm index 97e361e56b..0b57ef9372 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm @@ -69,7 +69,7 @@ if(istype(M) && !istype(M, /mob/dead)) //painting ghosts: not allowed M.color = color -/datum/reagent/paint/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/paint/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) M.color = color /datum/reagent/paint/get_data() @@ -119,10 +119,10 @@ glass_name = "golden cup" glass_desc = "It's magic. We don't have to explain it." -/datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) affect_blood(M, alien, removed) -/datum/reagent/adminordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/adminordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.setCloneLoss(0) M.setOxyLoss(0) M.radiation = 0 @@ -171,10 +171,10 @@ reagent_state = SOLID color = "#B8B8C0" -/datum/reagent/uranium/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/uranium/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) affect_ingest(M, alien, removed) -/datum/reagent/uranium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/uranium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.apply_effect(5 * removed, IRRADIATE, 0) /datum/reagent/uranium/touch_turf(var/turf/T) @@ -192,7 +192,7 @@ reagent_state = LIQUID color = "#C8A5DC" -/datum/reagent/adrenaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/adrenaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.SetParalysis(0) @@ -209,7 +209,7 @@ glass_name = "glass of holy water" glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." -/datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(ishuman(M)) // Any location if(M.mind && cult.is_antagonist(M.mind) && prob(10)) @@ -265,11 +265,11 @@ remove_self(5) return -/datum/reagent/thermite/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/thermite/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) M.adjust_fire_stacks(removed * 0.2) return -/datum/reagent/thermite/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/thermite/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.adjustFireLoss(3 * removed) /datum/reagent/space_cleaner @@ -296,7 +296,7 @@ for(var/mob/living/carbon/slime/M in T) M.adjustToxLoss(rand(5, 10)) -/datum/reagent/space_cleaner/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/space_cleaner/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) if(M.r_hand) M.r_hand.clean_blood() if(M.l_hand) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index 46bf3698f2..f74be65409 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -9,7 +9,7 @@ metabolism = REM * 0.05 // 0.01 by default. They last a while and slowly kill you. var/strength = 4 // How much damage it deals per unit -/datum/reagent/toxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(strength && alien != IS_DIONA) M.adjustToxLoss(strength * removed) @@ -45,7 +45,7 @@ color = "#9D14DB" strength = 30 -/datum/reagent/toxin/phoron/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/phoron/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) ..() M.adjust_fire_stacks(removed / 5) @@ -64,7 +64,7 @@ strength = 20 metabolism = REM * 2 -/datum/reagent/toxin/cyanide/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/cyanide/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) ..() M.adjustOxyLoss(20 * removed) M.sleeping += 1 @@ -97,7 +97,7 @@ strength = 10 overdose = 20 -/datum/reagent/toxin/potassium_chlorophoride/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/potassium_chlorophoride/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) ..() if(ishuman(M)) var/mob/living/carbon/human/H = M @@ -116,7 +116,7 @@ metabolism = REM strength = 3 -/datum/reagent/toxin/zombiepowder/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/zombiepowder/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) return @@ -179,12 +179,12 @@ else if(istype(O, /obj/effect/plant)) qdel(O) -/datum/reagent/toxin/plantbgone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/plantbgone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) M.adjustToxLoss(50 * removed) -/datum/reagent/toxin/plantbgone/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/toxin/plantbgone/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) M.adjustToxLoss(50 * removed) @@ -206,7 +206,7 @@ color = "#C8A5DC" overdose = REAGENTS_OVERDOSE -/datum/reagent/lexorin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/lexorin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.take_organ_damage(3 * removed, 0) @@ -220,15 +220,15 @@ reagent_state = LIQUID color = "#13BC5E" -/datum/reagent/mutagen/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/mutagen/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) if(prob(33)) affect_blood(M, alien, removed) -/datum/reagent/mutagen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/mutagen/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(prob(67)) affect_blood(M, alien, removed) -/datum/reagent/mutagen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/mutagen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(M.dna) if(prob(removed * 0.1)) // Approx. one mutation per 10 injected/20 ingested/30 touching units randmuti(M) @@ -247,7 +247,7 @@ reagent_state = LIQUID color = "#801E28" -/datum/reagent/slimejelly/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/slimejelly/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(prob(10)) @@ -265,7 +265,7 @@ metabolism = REM * 0.5 overdose = REAGENTS_OVERDOSE -/datum/reagent/soporific/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/soporific/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(dose < 1) @@ -290,7 +290,7 @@ metabolism = REM * 0.5 overdose = REAGENTS_OVERDOSE * 0.5 -/datum/reagent/chloralhydrate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/chloralhydrate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(dose == metabolism) @@ -328,7 +328,7 @@ metabolism = REM * 0.5 overdose = REAGENTS_OVERDOSE -/datum/reagent/space_drugs/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/space_drugs/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.druggy = max(M.druggy, 15) @@ -346,7 +346,7 @@ metabolism = REM * 0.25 overdose = REAGENTS_OVERDOSE -/datum/reagent/serotrotium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/serotrotium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return if(prob(7)) @@ -362,7 +362,7 @@ metabolism = REM * 0.5 overdose = REAGENTS_OVERDOSE -/datum/reagent/cryptobiolin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/cryptobiolin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.make_dizzy(4) @@ -376,7 +376,7 @@ color = "#C8A5DC" overdose = REAGENTS_OVERDOSE -/datum/reagent/impedrezene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/impedrezene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.jitteriness = max(M.jitteriness - 5, 0) @@ -396,7 +396,7 @@ metabolism = REM * 0.25 overdose = REAGENTS_OVERDOSE -/datum/reagent/mindbreaker/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/mindbreaker/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.hallucination = max(M.hallucination, 100) @@ -409,7 +409,7 @@ overdose = REAGENTS_OVERDOSE metabolism = REM * 0.5 -/datum/reagent/psilocybin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/psilocybin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return M.druggy = max(M.druggy, 30) @@ -449,7 +449,7 @@ reagent_state = LIQUID color = "#13BC5E" -/datum/reagent/slimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/slimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.species.name != "Slime") @@ -463,7 +463,7 @@ reagent_state = LIQUID color = "#13BC5E" -/datum/reagent/aslimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) // TODO: check if there's similar code anywhere else +/datum/reagent/aslimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) // TODO: check if there's similar code anywhere else if(M.monkeyizing) return M << "Your flesh rapidly mutates!" @@ -495,11 +495,11 @@ reagent_state = LIQUID color = "#535E66" -/datum/reagent/nanites/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nanites/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) if(prob(10)) M.contract_disease(new /datum/disease/robotic_transformation(0), 1) -/datum/reagent/nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.contract_disease(new /datum/disease/robotic_transformation(0), 1) /datum/reagent/xenomicrobes @@ -509,9 +509,9 @@ reagent_state = LIQUID color = "#535E66" -/datum/reagent/xenomicrobes/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/xenomicrobes/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) if(prob(10)) M.contract_disease(new /datum/disease/xeno_transformation(0), 1) -/datum/reagent/xenomicrobes/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/location) +/datum/reagent/xenomicrobes/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.contract_disease(new /datum/disease/xeno_transformation(0), 1) From 6c121d232b527d351930c7a63ee1f7721872ff2d Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sat, 9 May 2015 19:57:01 +0100 Subject: [PATCH 008/199] Makes bear traps do damage when stepped on --- code/defines/obj/weapon.dm | 14 ++++++++--- html/changelogs/Yoshax - trapping.YML | 36 +++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 3 deletions(-) create mode 100644 html/changelogs/Yoshax - trapping.YML diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 5b0ae96726..c1fc0566e2 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -198,18 +198,26 @@ if(armed) if(ishuman(AM)) if(isturf(src.loc)) - var/mob/living/carbon/H = AM + var/mob/living/carbon/human/H = AM if(H.m_intent == "run") armed = 0 H.legcuffed = src src.loc = H H.update_inv_legcuffed() - H << "\red You step on \the [src]!" + H << "You step on \the [src]!" + + var/obj/item/organ/external/affecting = H.get_organ(pick("l_leg", "r_leg")) feedback_add_details("handcuffs","B") //Yes, I know they're legcuffs. Don't change this, no need for an extra variable. The "B" is used to tell them apart. for(var/mob/O in viewers(H, null)) if(O == H) continue - O.show_message("\red [H] steps on \the [src].", 1) + O.show_message("[H] steps on \the [src].", 1) + + affecting.take_damage(35, 0) + H.UpdateDamageIcon() + H.updatehealth() + + if(isanimal(AM) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator)) armed = 0 var/mob/living/simple_animal/SA = AM diff --git a/html/changelogs/Yoshax - trapping.YML b/html/changelogs/Yoshax - trapping.YML new file mode 100644 index 0000000000..140afce721 --- /dev/null +++ b/html/changelogs/Yoshax - trapping.YML @@ -0,0 +1,36 @@ +################################ +# 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: Yoshax + +# 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: "Bear traps now do damage when stood on, enough to break bones!" From 86bf94ba079e78fd1be2c0cc695be9dd52d12ffd Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 10 May 2015 20:09:29 +0100 Subject: [PATCH 009/199] Refactors bear traps --- code/defines/obj/weapon.dm | 83 +++++++++++++++---- .../research/xenoarchaeology/finds/finds.dm | 2 +- html/changelogs/Yoshax - trapping.YML | 3 +- maps/exodus-1.dmm | 2 +- 4 files changed, 71 insertions(+), 19 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index c1fc0566e2..3dd6aed05b 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -175,47 +175,91 @@ origin_tech = "materials=1" var/breakouttime = 300 //Deciseconds = 30s = 0.5 minute -/obj/item/weapon/legcuffs/beartrap +/obj/item/weapon/beartrap name = "bear trap" throw_speed = 2 throw_range = 1 + gender = PLURAL + icon = 'icons/obj/items.dmi' icon_state = "beartrap0" desc = "A trap used to catch bears and other legged creatures." + throwforce = 0 + w_class = 3.0 + origin_tech = "materials=1" var/armed = 0 + var/deployed = 0 suicide_act(mob/user) - viewers(user) << "\red [user] is putting the [src.name] on \his head! It looks like \he's trying to commit suicide." + viewers(user) << "[user] is putting the [src.name] on \his head! It looks like \he's trying to commit suicide." return (BRUTELOSS) -/obj/item/weapon/legcuffs/beartrap/attack_self(mob/user as mob) +/obj/item/weapon/beartrap/attack_self(mob/user as mob) ..() if(ishuman(user) && !user.stat && !user.restrained()) - armed = !armed - icon_state = "beartrap[armed]" - user << "[src] is now [armed ? "armed" : "disarmed"]" + if(deployed==0) + user.visible_message("[user] is deploying \the [src]", "You are deploying \the [src]!") + if (do_after(user, 60)) + user.visible_message("[user] has deployed \the [src]", "You have deployed \the [src]!") + deployed = 1 + armed = 1 + user.drop_from_inventory(src, user.loc) + update_icon() + anchored = 1 -/obj/item/weapon/legcuffs/beartrap/Crossed(AM as mob|obj) +/obj/item/weapon/beartrap/attack_hand(mob/user as mob) + if(ishuman(user) && !user.stat && !user.restrained()) + if(deployed==1) + user.visible_message("[user] is disarming \the [src]", "You are disarming \the [src]!") + if (do_after(user, 60)) + user.visible_message("[user] has disarmed \the [src]", "You have disarmed \the [src]!") + deployed = 0 + armed = 0 + anchored = 0 + update_icon() + + if(deployed==0) + ..() + +/obj/item/weapon/beartrap/Crossed(AM as mob|obj) if(armed) if(ishuman(AM)) if(isturf(src.loc)) var/mob/living/carbon/human/H = AM if(H.m_intent == "run") armed = 0 - H.legcuffed = src - src.loc = H - H.update_inv_legcuffed() + update_icon() + //H.legcuffed = src + //src.loc = H + //H.update_inv_legcuffed() H << "You step on \the [src]!" - var/obj/item/organ/external/affecting = H.get_organ(pick("l_leg", "r_leg")) - feedback_add_details("handcuffs","B") //Yes, I know they're legcuffs. Don't change this, no need for an extra variable. The "B" is used to tell them apart. + feedback_add_details("handcuffs","B") for(var/mob/O in viewers(H, null)) if(O == H) continue O.show_message("[H] steps on \the [src].", 1) - - affecting.take_damage(35, 0) - H.UpdateDamageIcon() - H.updatehealth() + if(H.lying) + var/list/potentialorgans = list() + for(var/organ in list("l_leg", "l_foot", "r_leg", "r_foot", "groin", "chest", "head", "r_arm", "r_hand", "l_arm", "l_hand")) //iterate over names + var/obj/item/organ/external/R = H.get_organ(organ) + if(R && !(R.status & ORGAN_DESTROYED)) + potentialorgans += R + var/obj/item/organ/external/affecting = pick(potentialorgans) + affecting.take_damage(30, 0) + affecting.embed(src, 1) + H.UpdateDamageIcon() + H.updatehealth() + else + var/list/potentialorgans = list() + for(var/organ in list("l_leg", "r_leg", "l_foot", "r_foot")) + var/obj/item/organ/external/R = H.get_organ(organ) + if(R && !(R.status & ORGAN_DESTROYED)) + potentialorgans += R + var/obj/item/organ/external/affecting = pick(potentialorgans) + affecting.take_damage(30, 0) + affecting.embed(src, 1) + H.UpdateDamageIcon() + H.updatehealth() if(isanimal(AM) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator)) @@ -224,6 +268,13 @@ SA.health -= 20 ..() +/obj/item/weapon/beartrap/update_icon() + ..() + + if(armed == 0) + icon_state = "beartrap0" + else + icon_state = "beartrap1" /obj/item/weapon/caution diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index 521da5e4aa..3f3d3c95c2 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -191,7 +191,7 @@ if(9) item_type = "[pick("wicked","evil","byzantine","dangerous")] looking [pick("device","contraption","thing","trap")]" apply_prefix = 0 - new_item = new /obj/item/weapon/legcuffs/beartrap(src.loc) + new_item = new /obj/item/weapon/beartrap/(src.loc) additional_desc = "[pick("It looks like it could take a limb off",\ "Could be some kind of animal trap",\ "There appear to be [pick("dark red","dark purple","dark green","dark blue")] stains along part of it")]." diff --git a/html/changelogs/Yoshax - trapping.YML b/html/changelogs/Yoshax - trapping.YML index 140afce721..0de61852a9 100644 --- a/html/changelogs/Yoshax - trapping.YML +++ b/html/changelogs/Yoshax - trapping.YML @@ -33,4 +33,5 @@ delete-after: True # 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: "Bear traps now do damage when stood on, enough to break bones!" + - tweak: "Bear traps now do damage when stood on, enough to break bones! Bear traps can now affect any limb of a person who is on the ground, including head! Bear traps are no longer legcuffs and instead embed in the limb they attack." + - tweak: "Bear traps now take several seconds to deploy and cannot be picked up when armed, they must be disarmed by clicking on them. They also cannot be moved then they were deployed." \ No newline at end of file diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 0af561fa81..4f13080afc 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -4927,7 +4927,7 @@ "bQM" = (/obj/structure/table,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/janitor) "bQN" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/simulated/floor,/area/janitor) "bQO" = (/obj/structure/janitorialcart,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/janitor) -"bQP" = (/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/janitor) +"bQP" = (/obj/item/weapon/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/janitor) "bQQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/janitor) "bQR" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/janitor) "bQS" = (/obj/effect/decal/cleanable/cobweb,/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plating,/area/maintenance/engineering) From b0d10a650841dcd7ee26a4e3373f72ff696df725 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 10 May 2015 20:15:19 +0100 Subject: [PATCH 010/199] Fixes some stuff (+2 squashed commit) Squashed commit: [f63e170] Removes unnecessary / [ac1b52c] re adds 1 bear trap i somehow accidently removed --- code/defines/obj/weapon.dm | 16 +++------------- .../research/xenoarchaeology/finds/finds.dm | 2 +- html/changelogs/Yoshax - trapping.YML | 2 +- maps/exodus-1.dmm | 2 +- 4 files changed, 6 insertions(+), 16 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 3dd6aed05b..a497f4f7f3 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -228,25 +228,15 @@ if(H.m_intent == "run") armed = 0 update_icon() - //H.legcuffed = src - //src.loc = H - //H.update_inv_legcuffed() H << "You step on \the [src]!" - - feedback_add_details("handcuffs","B") for(var/mob/O in viewers(H, null)) if(O == H) continue O.show_message("[H] steps on \the [src].", 1) if(H.lying) - var/list/potentialorgans = list() - for(var/organ in list("l_leg", "l_foot", "r_leg", "r_foot", "groin", "chest", "head", "r_arm", "r_hand", "l_arm", "l_hand")) //iterate over names - var/obj/item/organ/external/R = H.get_organ(organ) - if(R && !(R.status & ORGAN_DESTROYED)) - potentialorgans += R - var/obj/item/organ/external/affecting = pick(potentialorgans) + var/obj/item/organ/external/affecting = pick(H.organs) affecting.take_damage(30, 0) - affecting.embed(src, 1) + affecting.embed(src) H.UpdateDamageIcon() H.updatehealth() else @@ -257,7 +247,7 @@ potentialorgans += R var/obj/item/organ/external/affecting = pick(potentialorgans) affecting.take_damage(30, 0) - affecting.embed(src, 1) + affecting.embed(src) H.UpdateDamageIcon() H.updatehealth() diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index 3f3d3c95c2..d9d5f300b0 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -191,7 +191,7 @@ if(9) item_type = "[pick("wicked","evil","byzantine","dangerous")] looking [pick("device","contraption","thing","trap")]" apply_prefix = 0 - new_item = new /obj/item/weapon/beartrap/(src.loc) + new_item = new /obj/item/weapon/beartrap(src.loc) additional_desc = "[pick("It looks like it could take a limb off",\ "Could be some kind of animal trap",\ "There appear to be [pick("dark red","dark purple","dark green","dark blue")] stains along part of it")]." diff --git a/html/changelogs/Yoshax - trapping.YML b/html/changelogs/Yoshax - trapping.YML index 0de61852a9..d9b7884761 100644 --- a/html/changelogs/Yoshax - trapping.YML +++ b/html/changelogs/Yoshax - trapping.YML @@ -34,4 +34,4 @@ delete-after: True # Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. changes: - tweak: "Bear traps now do damage when stood on, enough to break bones! Bear traps can now affect any limb of a person who is on the ground, including head! Bear traps are no longer legcuffs and instead embed in the limb they attack." - - tweak: "Bear traps now take several seconds to deploy and cannot be picked up when armed, they must be disarmed by clicking on them. They also cannot be moved then they were deployed." \ No newline at end of file + - tweak: "Bear traps now take several seconds to deploy and cannot be picked up when armed, they must be disarmed by clicking on them. They also cannot be moved then they are deployed." \ No newline at end of file diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 4f13080afc..8033385839 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -4927,7 +4927,7 @@ "bQM" = (/obj/structure/table,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/janitor) "bQN" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/simulated/floor,/area/janitor) "bQO" = (/obj/structure/janitorialcart,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/janitor) -"bQP" = (/obj/item/weapon/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/janitor) +"bQP" = (/obj/item/weapon/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/beartrap,/turf/simulated/floor,/area/janitor) "bQQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/janitor) "bQR" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/janitor) "bQS" = (/obj/effect/decal/cleanable/cobweb,/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plating,/area/maintenance/engineering) From 5ff5214528324f18a1715358c28da27105696b96 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 10 May 2015 20:51:36 +0100 Subject: [PATCH 011/199] Removes redundant var --- code/defines/obj/weapon.dm | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index a497f4f7f3..831cd68925 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -186,7 +186,6 @@ throwforce = 0 w_class = 3.0 origin_tech = "materials=1" - var/armed = 0 var/deployed = 0 suicide_act(mob/user) @@ -201,7 +200,6 @@ if (do_after(user, 60)) user.visible_message("[user] has deployed \the [src]", "You have deployed \the [src]!") deployed = 1 - armed = 1 user.drop_from_inventory(src, user.loc) update_icon() anchored = 1 @@ -213,7 +211,6 @@ if (do_after(user, 60)) user.visible_message("[user] has disarmed \the [src]", "You have disarmed \the [src]!") deployed = 0 - armed = 0 anchored = 0 update_icon() @@ -221,12 +218,12 @@ ..() /obj/item/weapon/beartrap/Crossed(AM as mob|obj) - if(armed) + if(deployed) if(ishuman(AM)) if(isturf(src.loc)) var/mob/living/carbon/human/H = AM if(H.m_intent == "run") - armed = 0 + deployed = 0 update_icon() H << "You step on \the [src]!" for(var/mob/O in viewers(H, null)) @@ -253,7 +250,7 @@ if(isanimal(AM) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator)) - armed = 0 + deployed = 0 var/mob/living/simple_animal/SA = AM SA.health -= 20 ..() @@ -261,7 +258,7 @@ /obj/item/weapon/beartrap/update_icon() ..() - if(armed == 0) + if(deployed == 0) icon_state = "beartrap0" else icon_state = "beartrap1" From cb8a4c7d75602426a7fbeae22e47e860a20e831f Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 10 May 2015 22:03:10 +0100 Subject: [PATCH 012/199] Removes redundant proc call --- code/defines/obj/weapon.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 831cd68925..81e132ad04 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -235,7 +235,6 @@ affecting.take_damage(30, 0) affecting.embed(src) H.UpdateDamageIcon() - H.updatehealth() else var/list/potentialorgans = list() for(var/organ in list("l_leg", "r_leg", "l_foot", "r_foot")) @@ -246,7 +245,6 @@ affecting.take_damage(30, 0) affecting.embed(src) H.UpdateDamageIcon() - H.updatehealth() if(isanimal(AM) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator)) From 9bdfeb5ab1d511ab7abf0f1aa534afd2c1c91a49 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Mon, 11 May 2015 13:16:07 +0100 Subject: [PATCH 013/199] Adds if statement --- code/defines/obj/weapon.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 81e132ad04..c111edd39b 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -232,9 +232,9 @@ O.show_message("[H] steps on \the [src].", 1) if(H.lying) var/obj/item/organ/external/affecting = pick(H.organs) - affecting.take_damage(30, 0) + if(affecting.take_damage(30, 0)) + H.UpdateDamageIcon() affecting.embed(src) - H.UpdateDamageIcon() else var/list/potentialorgans = list() for(var/organ in list("l_leg", "r_leg", "l_foot", "r_foot")) @@ -242,9 +242,9 @@ if(R && !(R.status & ORGAN_DESTROYED)) potentialorgans += R var/obj/item/organ/external/affecting = pick(potentialorgans) - affecting.take_damage(30, 0) + if(affecting.take_damage(30, 0)) + H.UpdateDamageIcon() affecting.embed(src) - H.UpdateDamageIcon() if(isanimal(AM) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator)) From f9d28385d3da6090086086d8847ecd75e5f6549b Mon Sep 17 00:00:00 2001 From: Atlantiscze Date: Mon, 11 May 2015 20:20:57 +0200 Subject: [PATCH 014/199] Fixes common channel radios not working. --- code/game/objects/items/devices/radio/radio.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 5c979f0569..1d8297e485 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -211,6 +211,9 @@ M.last_target_radio = world.time // For the projectile targeting system + if(!radio_connection) + set_frequency(frequency) + /* Quick introduction: This new radio system uses a very robust FTL signaling technology unoriginally dubbed "subspace" which is somewhat similar to 'blue-space' but can't From 56c610e1118993ace31ecf9a1a88fc45a7b8649b Mon Sep 17 00:00:00 2001 From: mwerezak Date: Mon, 11 May 2015 21:20:16 -0400 Subject: [PATCH 015/199] Updates weed control crate Removes the scythe from the weed control crate and replaces it with hatchets and plantkiller spray bottles. --- code/datums/supplypacks.dm | 10 ++++++++-- code/modules/hydroponics/trays/tray_tools.dm | 8 -------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 59926a6e0b..beedf6dca9 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -345,11 +345,17 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/weedcontrol name = "Weed control crate" - contains = list(/obj/item/weapon/scythe, + contains = list(/obj/item/weapon/hatchet, + /obj/item/weapon/hatchet, + /obj/item/weapon/reagent_containers/spray/plantbgone, + /obj/item/weapon/reagent_containers/spray/plantbgone, + /obj/item/weapon/reagent_containers/spray/plantbgone, + /obj/item/weapon/reagent_containers/spray/plantbgone, + /obj/item/clothing/mask/gas, /obj/item/clothing/mask/gas, /obj/item/weapon/grenade/chem_grenade/antiweed, /obj/item/weapon/grenade/chem_grenade/antiweed) - cost = 20 + cost = 25 containertype = /obj/structure/closet/crate/secure/hydrosec containername = "Weed control crate" access = access_hydroponics diff --git a/code/modules/hydroponics/trays/tray_tools.dm b/code/modules/hydroponics/trays/tray_tools.dm index 67d630119a..da6c996ac9 100644 --- a/code/modules/hydroponics/trays/tray_tools.dm +++ b/code/modules/hydroponics/trays/tray_tools.dm @@ -270,11 +270,3 @@ slot_flags = SLOT_BACK origin_tech = "materials=2;combat=2" attack_verb = list("chopped", "sliced", "cut", "reaped") - -/obj/item/weapon/scythe/afterattack(atom/A, mob/user as mob, proximity) - if(!proximity) return - if(istype(A, /obj/effect/plant)) - for(var/obj/effect/plant/B in orange(A,1)) - if(prob(80)) - B.die_off(1) - del A \ No newline at end of file From 4cf296a6c91cf0e4d77d91cb433128caf4ad244d Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 10:53:16 +0930 Subject: [PATCH 016/199] First pass on custom item cleanup/refactor. --- baystation12.dme | 3 + code/datums/supplypacks.dm | 10 +- code/game/jobs/job/medical.dm | 2 +- code/game/objects/items/toys.dm | 5 + code/game/objects/items/weapons/cards_ids.dm | 15 +- code/game/objects/items/weapons/kitchen.dm | 6 + .../objects/items/weapons/storage/firstaid.dm | 14 + code/game/objects/random/random.dm | 2 +- .../structures/crates_lockers/largecrate.dm | 75 +- code/modules/client/preferences_gear.dm | 2 +- code/modules/clothing/glasses/glasses.dm | 5 + code/modules/clothing/suits/jobs.dm | 8 + .../clothing/under/accessories/accessory.dm | 75 - .../clothing/under/accessories/badges.dm | 98 + .../clothing/under/accessories/lockets.dm | 50 + code/modules/clothing/under/jobs/medsci.dm | 7 + code/modules/customitems/item_defines.dm | 1615 +++-------------- code/modules/customitems/item_kits.dm | 120 ++ .../mob/living/carbon/human/inventory.dm | 18 +- .../mob/living/simple_animal/friendly/cat.dm | 17 + .../projectiles/guns/projectile/revolver.dm | 21 + .../reagent_containers/food/drinks.dm | 19 + icons/mob/suit.dmi | Bin 291894 -> 291895 bytes icons/obj/clothing/glasses.dmi | Bin 7033 -> 7184 bytes icons/obj/clothing/suits.dmi | Bin 103713 -> 104159 bytes icons/obj/clothing/ties.dmi | Bin 8732 -> 11017 bytes icons/obj/clothing/uniforms.dmi | Bin 59459 -> 59765 bytes icons/obj/custom_items.dmi | Bin 65819 -> 59311 bytes icons/obj/drinks.dmi | Bin 66710 -> 68301 bytes icons/obj/gun.dmi | Bin 49699 -> 50279 bytes icons/obj/kitchen.dmi | Bin 13043 -> 13154 bytes icons/obj/toy.dmi | Bin 30967 -> 31655 bytes maps/exodus-1.dmm | 2 +- maps/exodus-4.dmm | 3 +- 34 files changed, 675 insertions(+), 1517 deletions(-) create mode 100644 code/modules/clothing/under/accessories/badges.dm create mode 100644 code/modules/clothing/under/accessories/lockets.dm create mode 100644 code/modules/customitems/item_kits.dm diff --git a/baystation12.dme b/baystation12.dme index 2584fc6002..0ee7895710 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -927,13 +927,16 @@ #include "code\modules\clothing\under\syndicate.dm" #include "code\modules\clothing\under\accessories\accessory.dm" #include "code\modules\clothing\under\accessories\armband.dm" +#include "code\modules\clothing\under\accessories\badges.dm" #include "code\modules\clothing\under\accessories\holster.dm" +#include "code\modules\clothing\under\accessories\lockets.dm" #include "code\modules\clothing\under\accessories\storage.dm" #include "code\modules\clothing\under\jobs\civilian.dm" #include "code\modules\clothing\under\jobs\engineering.dm" #include "code\modules\clothing\under\jobs\medsci.dm" #include "code\modules\clothing\under\jobs\security.dm" #include "code\modules\customitems\item_defines.dm" +#include "code\modules\customitems\item_kits.dm" #include "code\modules\customitems\item_spawning.dm" #include "code\modules\detectivework\evidence.dm" #include "code\modules\detectivework\footprints_and_rag.dm" diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index c7495ab749..7b38c0fdb1 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -259,7 +259,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee name = "Corgi Crate" contains = list() cost = 50 - containertype = /obj/structure/largecrate/lisa + containertype = /obj/structure/largecrate/animal/corgi containername = "Corgi Crate" group = "Hydroponics" @@ -289,7 +289,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/cow name = "Cow crate" cost = 30 - containertype = /obj/structure/largecrate/cow + containertype = /obj/structure/largecrate/animal/cow containername = "Cow crate" access = access_hydroponics group = "Hydroponics" @@ -297,7 +297,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/goat name = "Goat crate" cost = 25 - containertype = /obj/structure/largecrate/goat + containertype = /obj/structure/largecrate/animal/goat containername = "Goat crate" access = access_hydroponics group = "Hydroponics" @@ -305,7 +305,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/chicken name = "Chicken crate" cost = 20 - containertype = /obj/structure/largecrate/chick + containertype = /obj/structure/largecrate/animal/chick containername = "Chicken crate" access = access_hydroponics group = "Hydroponics" @@ -314,7 +314,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee name = "Corgi crate" contains = list() cost = 50 - containertype = /obj/structure/largecrate/lisa + containertype = /obj/structure/largecrate/animal/corgi containername = "Corgi crate" group = "Hydroponics" diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index 8454ced144..00ac8536eb 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -230,7 +230,7 @@ if (H.mind.role_alt_title) switch(H.mind.role_alt_title) if("Emergency Medical Technician") - H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical/fluff/short(H), slot_w_uniform) + H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical/paramedic(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/fr_jacket(H), slot_wear_suit) if("Paramedic") H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical/black(H), slot_w_uniform) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index b6c9c5b14b..01aab07ec2 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -923,6 +923,11 @@ desc = "A plushie of a fuzzy spider! It has eight legs - all the better to hug you with." icon_state = "spiderplushie" +/obj/item/toy/plushie/farwa + name = "farwa plush" + desc = "A farwa plush doll. It's soft and comforting!" + icon_state = "farwaplushie" + //Toy cult sword /obj/item/toy/cultsword name = "foam sword" diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index 833524399d..75693427ef 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -81,7 +81,7 @@ /obj/item/device/taperecorder, /obj/item/device/hailer, /obj/item/device/megaphone, - /obj/item/clothing/accessory/holobadge, + /obj/item/clothing/accessory/badge/holo, /obj/structure/closet/crate/secure, /obj/structure/closet/secure_closet, /obj/machinery/librarycomp, @@ -162,17 +162,6 @@ /obj/item/weapon/card/id/GetID() return src -/obj/item/weapon/card/id/attackby(obj/item/weapon/W as obj, mob/user as mob) - ..() - if(istype(W,/obj/item/weapon/id_wallet)) - user << "You slip [src] into [W]." - src.name = "[src.registered_name]'s [W.name] ([src.assignment])" - src.desc = W.desc - src.icon = W.icon - src.icon_state = W.icon_state - qdel(W) - return - /obj/item/weapon/card/id/verb/read() set name = "Read ID Card" set category = "Object" @@ -297,7 +286,7 @@ /obj/item/weapon/card/id/centcom/ERT name = "\improper Emergency Response Team ID" assignment = "Emergency Response Team" - + /obj/item/weapon/card/id/centcom/ERT/New() ..() access += get_all_accesses() diff --git a/code/game/objects/items/weapons/kitchen.dm b/code/game/objects/items/weapons/kitchen.dm index e27e38af7b..60f8c24c40 100644 --- a/code/game/objects/items/weapons/kitchen.dm +++ b/code/game/objects/items/weapons/kitchen.dm @@ -155,6 +155,12 @@ "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") return (BRUTELOSS) +/obj/item/weapon/kitchenknife/hook + name = "meat hook" + desc = "A sharp, metal hook what sticks into things." + icon_state = "hook_knife" + item_state = "hook_knife" + /obj/item/weapon/kitchenknife/ritual name = "ritual knife" desc = "The unearthly energies that once powered this blade are now dormant." diff --git a/code/game/objects/items/weapons/storage/firstaid.dm b/code/game/objects/items/weapons/storage/firstaid.dm index 7b2c03ba4a..c23dfcdb51 100644 --- a/code/game/objects/items/weapons/storage/firstaid.dm +++ b/code/game/objects/items/weapons/storage/firstaid.dm @@ -289,3 +289,17 @@ new /obj/item/weapon/reagent_containers/pill/tramadol( src ) new /obj/item/weapon/reagent_containers/pill/tramadol( src ) new /obj/item/weapon/reagent_containers/pill/tramadol( src ) + +/obj/item/weapon/storage/pill_bottle/citalopram + name = "bottle of Citalopram pills" + desc = "Contains pills used to stabilize a patient's mood." + + New() + ..() + new /obj/item/weapon/reagent_containers/pill/citalopram( src ) + new /obj/item/weapon/reagent_containers/pill/citalopram( src ) + new /obj/item/weapon/reagent_containers/pill/citalopram( src ) + new /obj/item/weapon/reagent_containers/pill/citalopram( src ) + new /obj/item/weapon/reagent_containers/pill/citalopram( src ) + new /obj/item/weapon/reagent_containers/pill/citalopram( src ) + new /obj/item/weapon/reagent_containers/pill/citalopram( src ) \ No newline at end of file diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm index de73e5e7b3..18e0c75e1a 100644 --- a/code/game/objects/random/random.dm +++ b/code/game/objects/random/random.dm @@ -158,7 +158,7 @@ spawn_nothing_percentage = 50 item_to_spawn() return pick(prob(3);/obj/item/weapon/storage/pill_bottle/tramadol,\ - prob(4);/obj/item/weapon/haircomb/fluff/cado_keppel_1,\ + prob(4);/obj/item/weapon/haircomb,\ prob(2);/obj/item/weapon/storage/pill_bottle/happy,\ prob(2);/obj/item/weapon/storage/pill_bottle/zoom,\ prob(5);/obj/item/weapon/contraband/poster,\ diff --git a/code/game/objects/structures/crates_lockers/largecrate.dm b/code/game/objects/structures/crates_lockers/largecrate.dm index 5419ee2639..a0ef655579 100644 --- a/code/game/objects/structures/crates_lockers/largecrate.dm +++ b/code/game/objects/structures/crates_lockers/largecrate.dm @@ -23,44 +23,7 @@ return attack_hand(user) /obj/structure/largecrate/mule - icon_state = "mulecrate" - -/obj/structure/largecrate/lisa - icon_state = "lisacrate" - -/obj/structure/largecrate/lisa/attackby(obj/item/weapon/W as obj, mob/user as mob) //ugly but oh well - if(istype(W, /obj/item/weapon/crowbar)) - new /mob/living/simple_animal/corgi/Lisa(loc) - ..() - -/obj/structure/largecrate/cow - name = "cow crate" - icon_state = "lisacrate" - -/obj/structure/largecrate/cow/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/crowbar)) - new /mob/living/simple_animal/cow(loc) - ..() - -/obj/structure/largecrate/goat - name = "goat crate" - icon_state = "lisacrate" - -/obj/structure/largecrate/goat/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/crowbar)) - new /mob/living/simple_animal/hostile/retaliate/goat(loc) - ..() - -/obj/structure/largecrate/chick - name = "chicken crate" - icon_state = "lisacrate" - -/obj/structure/largecrate/chick/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/crowbar)) - var/num = rand(4, 6) - for(var/i = 0, i < num, i++) - new /mob/living/simple_animal/chick(loc) - ..() + name = "MULE crate" /obj/structure/largecrate/hoverpod name = "\improper Hoverpod assembly crate" @@ -71,9 +34,43 @@ if(istype(W, /obj/item/weapon/crowbar)) var/obj/item/mecha_parts/mecha_equipment/ME var/obj/mecha/working/hoverpod/H = new (loc) - + ME = new /obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp ME.attach(H) ME = new /obj/item/mecha_parts/mecha_equipment/tool/passenger ME.attach(H) ..() + +/obj/structure/largecrate/animal + icon_state = "mulecrate" + var/held_count = 1 + var/held_type + +/obj/structure/largecrate/animal/New() + ..() + for(var/i = 1;i<=held_count;i++) + new held_type(src) + +/obj/structure/largecrate/animal/corgi + name = "corgi carrier" + held_type = /mob/living/simple_animal/corgi + +/obj/structure/largecrate/animal/cow + name = "cow crate" + held_type = /mob/living/simple_animal/cow + +/obj/structure/largecrate/animal/goat + name = "goat crate" + held_type = /mob/living/simple_animal/hostile/retaliate/goat + +/obj/structure/largecrate/animal/cat + name = "cat carrier" + held_type = /mob/living/simple_animal/cat + +/obj/structure/largecrate/animal/cat/bones + held_type = /mob/living/simple_animal/cat/fluff/bones + +/obj/structure/largecrate/animal/chick + name = "chicken crate" + held_count = 5 + held_type = /mob/living/simple_animal/chick \ No newline at end of file diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm index 03a1104905..eff194f545 100644 --- a/code/modules/client/preferences_gear.dm +++ b/code/modules/client/preferences_gear.dm @@ -279,7 +279,7 @@ var/global/list/gear_datums = list() /datum/gear/scanning_goggles display_name = "scanning goggles" - path = /obj/item/clothing/glasses/fluff/uzenwa_sissra_1 + path = /obj/item/clothing/glasses/science/scanners cost = 1 slot = slot_glasses diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 97eb175277..8233172211 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -62,6 +62,11 @@ ..() overlay = global_hud.science +/obj/item/clothing/glasses/science/scanners + name = "Scanning Goggles" + desc = "A very oddly shaped pair of goggles with bits of wire poking out the sides. A soft humming sound emanates from it." + icon_state = "uzenwa_sissra_1" + /obj/item/clothing/glasses/night name = "Night Vision Goggles" desc = "You can totally see in the dark now!" diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index a589c745d2..efa2e01a2d 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -185,6 +185,14 @@ /obj/item/device/healthanalyzer, /obj/item/device/flashlight, /obj/item/device/radio, /obj/item/weapon/tank/emergency_oxygen) body_parts_covered = UPPER_TORSO|ARMS +/obj/item/clothing/suit/storage/toggle/fr_jacket/ems + name = "\improper EMS jacket" + desc = "A dark blue, martian-pattern, EMS jacket. It sports high-visibility reflective stripes, a star of life on the back, and has a nametag on the right side of the chest that reads 'Lombardi B-'." + icon_state = "ems_jacket_closed" + item_state = "ems_jacket_closed" + icon_open = "ems_jacket_open" + icon_closed = "ems_jacket_closed" + //Mime /obj/item/clothing/suit/suspenders name = "suspenders" diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 8ce02ec8e5..10c8bb70b8 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -140,78 +140,3 @@ /obj/item/clothing/accessory/medal/gold/heroism name = "medal of exceptional heroism" desc = "An extremely rare golden medal awarded only by CentComm. To recieve such a medal is the highest honor and as such, very few exist. This medal is almost never awarded to anybody but commanders." - -/* - Holobadges are worn on the belt or neck, and can be used to show that the holder is an authorized - Security agent - the user details can be imprinted on the badge with a Security-access ID card, - or they can be emagged to accept any ID for use in disguises. -*/ - -/obj/item/clothing/accessory/holobadge - name = "holobadge" - desc = "This glowing blue badge marks the holder as THE LAW." - icon_state = "holobadge" - slot_flags = SLOT_BELT | SLOT_TIE - - var/emagged = 0 //Emagging removes Sec check. - var/stored_name = null - -/obj/item/clothing/accessory/holobadge/cord - icon_state = "holobadge-cord" - slot_flags = SLOT_MASK | SLOT_TIE - -/obj/item/clothing/accessory/holobadge/attack_self(mob/user as mob) - if(!stored_name) - user << "Waving around a badge before swiping an ID would be pretty pointless." - return - if(isliving(user)) - user.visible_message("\red [user] displays their NanoTrasen Internal Security Legal Authorization Badge.\nIt reads: [stored_name], NT Security.","\red You display your NanoTrasen Internal Security Legal Authorization Badge.\nIt reads: [stored_name], NT Security.") - -/obj/item/clothing/accessory/holobadge/attackby(var/obj/item/O as obj, var/mob/user as mob) - - if (istype(O, /obj/item/weapon/card/emag)) - if (emagged) - user << "\red [src] is already cracked." - return - else - emagged = 1 - user << "\red You swipe [O] and crack the holobadge security checks." - return - - else if(istype(O, /obj/item/weapon/card/id) || istype(O, /obj/item/device/pda)) - - var/obj/item/weapon/card/id/id_card = null - - if(istype(O, /obj/item/weapon/card/id)) - id_card = O - else - var/obj/item/device/pda/pda = O - id_card = pda.id - - if(access_security in id_card.access || emagged) - user << "You imprint your ID details onto the badge." - stored_name = id_card.registered_name - name = "holobadge ([stored_name])" - desc = "This glowing blue badge marks [stored_name] as THE LAW." - else - user << "[src] rejects your insufficient access rights." - return - ..() - -/obj/item/clothing/accessory/holobadge/attack(mob/living/carbon/human/M, mob/living/user) - if(isliving(user)) - user.visible_message("\red [user] invades [M]'s personal space, thrusting [src] into their face insistently.","\red You invade [M]'s personal space, thrusting [src] into their face insistently. You are the law.") - -/obj/item/weapon/storage/box/holobadge - name = "holobadge box" - desc = "A box claiming to contain holobadges." - New() - new /obj/item/clothing/accessory/holobadge(src) - new /obj/item/clothing/accessory/holobadge(src) - new /obj/item/clothing/accessory/holobadge(src) - new /obj/item/clothing/accessory/holobadge(src) - new /obj/item/clothing/accessory/holobadge/cord(src) - new /obj/item/clothing/accessory/holobadge/cord(src) - ..() - return - diff --git a/code/modules/clothing/under/accessories/badges.dm b/code/modules/clothing/under/accessories/badges.dm new file mode 100644 index 0000000000..5f96b66288 --- /dev/null +++ b/code/modules/clothing/under/accessories/badges.dm @@ -0,0 +1,98 @@ +/* + Badges are worn on the belt or neck, and can be used to show that the holder is an authorized + Security agent - the user details can be imprinted on holobadges with a Security-access ID card, + or they can be emagged to accept any ID for use in disguises. +*/ + +/obj/item/clothing/accessory/badge + name = "detective's badge" + desc = "NanoTrasen Security Department detective's badge, made from gold. Badge number is 564." + icon_state = "badge" + slot_flags = SLOT_BELT | SLOT_TIE + + var/stored_name + var/badge_string = "NanoTrasen Security Department" + +/obj/item/clothing/accessory/badge/old + name = "faded badge" + desc = "A faded badge, backed with leather. It bears the emblem of the Forensic division." + icon_state = "badge_round" + +/obj/item/clothing/accessory/badge/proc/set_name(var/new_name) + stored_name = new_name + name = "[initial(name)] ([stored_name])" + +/obj/item/clothing/accessory/badge/attack_self(mob/user as mob) + + if(!stored_name) + user << "You polish your old badge fondly, shining up the surface." + set_name(user.real_name) + return + + if(isliving(user)) + if(stored_name) + user.visible_message("[user] displays their [src.name].\nIt reads: [stored_name], [badge_string].","You display your [src.name].\nIt reads: [stored_name], [badge_string].") + else + user.visible_message("[user] displays their [src.name].\nIt reads: [badge_string].","You display your [src.name]. It reads: [badge_string].") + +/obj/item/clothing/accessory/badge/attack(mob/living/carbon/human/M, mob/living/user) + if(isliving(user)) + user.visible_message("[user] invades [M]'s personal space, thrusting [src] into their face insistently.","You invade [M]'s personal space, thrusting [src] into their face insistently.") + +//.Holobadges. +/obj/item/clothing/accessory/badge/holo + name = "holobadge" + desc = "This glowing blue badge marks the holder as THE LAW." + var/emagged = 0 //Emagging removes Sec check. + +/obj/item/clothing/accessory/badge/holo/cord + icon_state = "holobadge-cord" + slot_flags = SLOT_MASK | SLOT_TIE + +/obj/item/clothing/accessory/badge/holo/attack_self(mob/user as mob) + if(!stored_name) + user << "Waving around a holobadge before swiping an ID would be pretty pointless." + return + return ..() + +/obj/item/clothing/accessory/badge/holo/attackby(var/obj/item/O as obj, var/mob/user as mob) + + if (istype(O, /obj/item/weapon/card/emag)) + if (emagged) + user << "[src] is already cracked." + return + else + emagged = 1 + user << "You swipe [O] and crack the holobadge security checks." + return + + else if(istype(O, /obj/item/weapon/card/id) || istype(O, /obj/item/device/pda)) + + var/obj/item/weapon/card/id/id_card = null + + if(istype(O, /obj/item/weapon/card/id)) + id_card = O + else + var/obj/item/device/pda/pda = O + id_card = pda.id + + if(access_security in id_card.access || emagged) + user << "You imprint your ID details onto the badge." + set_name(user.real_name) + else + user << "[src] rejects your insufficient access rights." + return + ..() + +/obj/item/weapon/storage/box/holobadge + name = "holobadge box" + desc = "A box claiming to contain holobadges." + New() + new /obj/item/clothing/accessory/badge/holo(src) + new /obj/item/clothing/accessory/badge/holo(src) + new /obj/item/clothing/accessory/badge/holo(src) + new /obj/item/clothing/accessory/badge/holo(src) + new /obj/item/clothing/accessory/badge/holo/cord(src) + new /obj/item/clothing/accessory/badge/holo/cord(src) + ..() + return diff --git a/code/modules/clothing/under/accessories/lockets.dm b/code/modules/clothing/under/accessories/lockets.dm new file mode 100644 index 0000000000..3842047a19 --- /dev/null +++ b/code/modules/clothing/under/accessories/lockets.dm @@ -0,0 +1,50 @@ +/obj/item/clothing/accessory/locket + name = "silver locket" + desc = "This oval shaped, argentium sterling silver locket hangs on an incredibly fine, refractive string, almost thin as hair and microweaved from links to a deceptive strength, of similar material. The edges are engraved very delicately with an elegant curving design, but overall the main is unmarked and smooth to the touch, leaving room for either remaining as a stolid piece or future alterations. There is an obvious internal place for a picture or lock of some sort, but even behind that is a very thin compartment unhinged with the pinch of a thumb and forefinger." + icon_state = "locket" + item_state = "locket" + slot_flags = 0 + w_class = 2 + slot_flags = SLOT_MASK | SLOT_TIE + var/icon_open + var/icon_closed + var/open + var/obj/item/held //Item inside locket. + +/obj/item/clothing/accessory/locket/heart + name = "heart-shaped locket" + desc = " A silver, heart-shaped locket. It flips open to reveal two pictures, one of a young red-headed woman and one of a brunette of similar age. Small writing is etched onto the back, reading 'M+L'. Some may regard it as cheesy." + icon_state = "heartlocket_closed" + item_state = "heartlocket_closed" + icon_open = "heartlocket_open" + icon_closed = "heartlocket_closed" + +/obj/item/clothing/accessory/locket/attack_self(mob/user as mob) + open = !open + user << "You flip \the [src] [open?"open":"closed"]." + if(open) + if(icon_open) + icon_state = icon_open + if(held) + user << "\The [held] falls out!" + held.loc = get_turf(user) + src.held = null + else + if(icon_closed) + icon_state = icon_closed + +/obj/item/clothing/accessory/locket/attackby(var/obj/item/O as obj, mob/user as mob) + if(!open) + user << "You have to open it first." + return + + if(istype(O,/obj/item/weapon/paper) || istype(O, /obj/item/weapon/photo)) + if(held) + usr << "[src] already has something inside it." + else + usr << "You slip [O] into [src]." + user.drop_item() + O.loc = src + src.held = O + return + ..() \ No newline at end of file diff --git a/code/modules/clothing/under/jobs/medsci.dm b/code/modules/clothing/under/jobs/medsci.dm index 10e6b05518..1e9acac452 100644 --- a/code/modules/clothing/under/jobs/medsci.dm +++ b/code/modules/clothing/under/jobs/medsci.dm @@ -113,6 +113,13 @@ permeability_coefficient = 0.50 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) +/obj/item/clothing/under/rank/medical/paramedic + name = "short sleeve medical jumpsuit" + desc = "Made of a special fiber that gives special protection against biohazards. Has a cross on the chest denoting that the wearer is trained medical personnel and short sleeves." + icon_state = "medical_short" + item_state = "medical_short" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + /obj/item/clothing/under/rank/medical/blue name = "medical scrubs" desc = "It's made of a special fiber that provides minor protection against biohazards. This one is in baby blue." diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index f1237cb721..a8ee25c896 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -6,896 +6,6 @@ icon = 'icons/obj/custom_items.dmi' w_class = 1.0 -////////////////////////////////// -////////// Fluff Items /////////// -////////////////////////////////// - -/obj/item/weapon/paper/fluff/sue_donem // aikasan: Sue Donem - name = "cyborgification waiver" - desc = "It's some kind of official-looking contract." - -/obj/item/weapon/paper/fluff/sue_donem/New() - ..() - - info = "Organic Carrier AIA and Standard Cyborgification Agreement
\n
\nUnder the authority of Nanotrasen Synthetic Intelligence Division, this document hereby authorizes an accredited Roboticist of the NSS Exodus or a deputized authority to perform a regulation lobotomisation upon the person of one 'Sue Donem' (hereafter referred to as the Subject) with intent to enact a live Artificial Intelligence Assimilation (AIA) or live Cyborgification proceedure.
\n
\nNo further station authorization is required, and the Subject waives all rights as a human under Nanotrasen internal and external legal protocol. This document is subject to amendment under Nanotrasen internal protocol \[REDACTED\].
\n
\nSigned: Sue Donem
\n" - - stamps = (stamps=="" ? "
" : "
") + "This paper has been stamped with the NanoTrasen Synthetic Intelligence Division rubber stamp." - - var/image/stampoverlay = image('icons/obj/bureaucracy.dmi') - stampoverlay.pixel_x = rand(-2, 2) - stampoverlay.pixel_y = rand(-3, 2) - stampoverlay.icon_state = "paper_stamp-rd" - overlays += stampoverlay - - update_icon() - -/obj/item/fluff/wes_solari_1 //tzefa: Wes Solari - name = "family photograph" - desc = "A family photograph of a couple and a young child, Written on the back it says \"See you soon Dad -Roy\"." - icon_state = "wes_solari_1" - -/obj/item/fluff/sarah_calvera_1 //fniff: Sarah Calvera - name = "old photo" - desc = "Looks like it was made on a really old, cheap camera. Low quality. The camera shows a young hispanic looking girl with red hair wearing a white dress is standing in front of\ - an old looking wall. On the back there is a note in black marker that reads \"Sara, Siempre pensé que eras tan linda con ese vestido. Tu hermano, Carlos.\"" - icon_state = "sarah_calvera_1" - -/obj/item/fluff/angelo_wilkerson_1 //fniff: Angleo Wilkerson - name = "fancy watch" - desc = "An old and expensive pocket watch. Engraved on the bottom is \"Odium est Source De Dolor\". On the back, there is an engraving that does not match the bottom and looks more recent.\ - \"Angelo, If you find this, you shall never see me again. Please, for your sake, go anywhere and do anything but stay. I'm proud of you and I will always love you. Your father, Jacob Wilkerson.\"\ - Jacob Wilkerson... Wasn't he that serial killer?" - icon_state = "angelo_wilkerson_1" - -/obj/item/fluff/sarah_carbrokes_1 //gvazdas: Sarah Carbrokes - name = "locket" - desc = "A grey locket with a picture of a black haired man in it. The text above it reads: \"Edwin Carbrokes\"." - icon_state = "sarah_carbrokes_1" - -/obj/item/fluff/ethan_way_1 //whitellama: Ethan Way - name = "old ID" - desc = "A scratched and worn identification card; it appears too damaged to inferface with any technology. You can almost make out \"Tom Cabinet\" in the smeared ink." - icon_state = "ethan_way_1" - -/obj/item/fluff/val_mcneil_1 //silentthunder: Val McNeil - name = "rosary pendant" - desc = "A cross on a ring of beads, has McNeil etched onto the back." - icon_state = "val_mcneil_1" - -/obj/item/fluff/steve_johnson_1 //thebreadbocks: Steve Johnson - name = "bottle of hair dye" - desc = "A bottle of pink hair dye. So that's how he gets his beard so pink..." - icon_state = "steve_johnson_1" - item_state = "steve_johnson_1" - -/obj/item/fluff/david_fanning_1 //sicktrigger: David Fanning - name = "golden scalpel" - desc = "A fine surgical cutting tool covered in thin gold leaf. Does not seem able to cut anything." - icon_state = "david_fanning_1" - item_state = "david_fanning_1" - -/obj/item/fluff/john_mckeever_1 //kirbyelder: John McKeever - name = "Suspicious Paper" - desc = "A piece of paper reading: Smash = 1/3 Leaf Juice, 1/3 Tricker, 1/3 Aajkli Extract" - icon_state = "paper" - item_state = "paper" - -/obj/item/fluff/maurice_bedford_1 - name = "Monogrammed Handkerchief" - desc = "A neatly folded handkerchief embroidered with a 'M'." - icon_state = "maurice_bedford_1" - -/obj/item/weapon/book/fluff/johnathan_falcian_1 - name = "sketchbook" - desc = "A small, well-used sketchbook." - icon = 'icons/obj/custom_items.dmi' - icon_state = "johnathan_notebook" - dat = "In the notebook there are numerous drawings of various crew-mates, locations, and scenes on the ship. They are of fairly good quality." - author = "Johnathan Falcian" - title = "Falcian's sketchbook" - -////////////////////////////////// -////////// Usable Items ////////// -////////////////////////////////// - -/obj/item/weapon/folder/blue/fluff/matthew_riebhardt //Matthew Riebhardt - ZekeSulastin - name = "academic journal" - desc = "An academic journal, seemingly pertaining to medical genetics. This issue is for the second quarter of 2557. Paper flags demarcate some articles the owner finds interesting." - icon = 'icons/obj/custom_items.dmi' - icon_state = "matthewriebhardt" - -/////////////////////// Serveris: Officer's Notebook //////////////////// - -/obj/item/weapon/folder/blue/fluff/officer_notebook - name = "Officer's Notebook" - desc = "A simple, spiral bound notebook. A holographic crescent moon is printed on the cover, as well as 'S. Seto' beneath it. Numerous paper flags divide the pages, titled everything from incident reports to personal notes." - icon = 'icons/obj/custom_items.dmi' - icon_state = "syrus_notebook" - -/////////////////////// Cataguettes - Lucy's Stethoscope - Lucy Kemmerer ////// - -/obj/item/clothing/accessory/stethoscope/fluff/lucystethos - name = "Lucy's Stethoscope" - desc = "A medical apparatus intended to ease in listening to the sounds of the human body. This one looks cleaner and sparklier than the rest. There is a small silver plaque attached to the tubing, with the words 'Lucy Kemmerer' engraved on it." - icon_state = "lucystethos" - item_state = "lucystethos" - icon = 'icons/obj/custom_items.dmi' - -/obj/item/weapon/pen/fluff/multi //spaceman96: Trenna Seber - name = "multicolor pen" - desc = "It's a cool looking pen. Lots of colors!" - -//////////////////////// AIsForAxolotl - Tea Flask - Margaret Stewart ////////// - -/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask/fluff/margaret - name = "Tea Flask" - desc = "A plastic vacuum flask with an ugly tartan pattern. 'M.S.' has been written on the bottom with a silver marker." - icon = 'icons/obj/custom_items.dmi' - icon_state = "margaret_flask" - -/obj/item/weapon/pen/fluff/fancypen //orangebottle: Lillian Levett, Lilliana Reade - name = "fancy pen" - desc = "A fancy metal pen. It uses blue ink. An inscription on one side reads,\"L.L. - L.R.\"" - icon = 'icons/obj/custom_items.dmi' - icon_state = "fancypen" - -/obj/item/weapon/pen/fluff/eugene_bissegger_1 //metamorp: eugene bisseger - name = "Gilded Pen" - desc = "A golden pen that is gilded with a meager amount of gold material. The word 'NanoTrasen' is etched on the clip of the pen." - icon = 'icons/obj/custom_items.dmi' - icon_state = "eugene_pen" - -/obj/item/weapon/pen/fluff/fountainpen //paththegreat: Eli Stevens - name = "Engraved Fountain Pen" - desc = "An expensive looking pen with the initials E.S. engraved into the side." - icon = 'icons/obj/custom_items.dmi' - icon_state = "fountainpen" - -/obj/item/fluff/victor_kaminsky_1 //chinsky: Victor Kaminski - name = "golden detective's badge" - desc = "NanoTrasen Security Department detective's badge, made from gold. Badge number is 564." - icon_state = "victor_kaminsky_1" - -/obj/item/fluff/victor_kaminsky_1/attack_self(mob/user as mob) - for(var/mob/O in viewers(user, null)) - O.show_message(text("[] shows you: \icon[] [].", user, src, src.name), 1) - src.add_fingerprint(user) - -/obj/item/fluff/ana_issek_2 //suethecake: Ana Issek - name = "Faded Badge" - desc = "A faded badge, backed with leather, that reads 'NT Security Force' across the front. It bears the emblem of the Forensic division." - icon_state = "ana_badge" - item_state = "ana_badge" - -/obj/item/fluff/ana_issek_2/attack_self(mob/user as mob) - if(isliving(user)) - user.visible_message("\red [user] flashes their golden security badge.\nIt reads: Ana Issek, NT Security.","\red You display the faded bage.\nIt reads: Ana Issek, NT Security.") - -/obj/item/fluff/ana_issek_2/attack(mob/living/carbon/human/M, mob/living/user) - if(isliving(user)) - user.visible_message("\red [user] invades [M]'s personal space, thrusting [src] into their face insistently.","\red You invade [M]'s personal space, thrusting [src] into their face insistently. You are the law.") - -/obj/item/weapon/soap/fluff/azare_siraj_1 //mister fox: Azare Siraj - name = "S'randarr's Tongue Leaf" - desc = "A waxy, scentless leaf." - icon = 'icons/obj/custom_items.dmi' - icon_state = "siraj_tongueleaf" - item_state = "siraj_tongueleaf" - -/obj/item/weapon/clipboard/fluff/smallnote //lexusjjss: Lexus Langg, Zachary Tomlinson - name = "small notebook" - desc = "A generic small spiral notebook that flips upwards." - icon = 'icons/obj/custom_items.dmi' - icon_state = "smallnotetext" - item_state = "smallnotetext" - -/obj/item/weapon/storage/fluff/maye_daye_1 //morrinn: Maye Day - name = "pristine lunchbox" - desc = "A pristine stainless steel lunch box. The initials M.D. are engraved on the inside of the lid." - icon = 'icons/obj/custom_items.dmi' - icon_state = "maye_daye_1" - -/obj/item/weapon/reagent_containers/food/drinks/flask/fluff/william_hackett - name = "handmade flask" - desc = "A wooden flask with a silver lid and bottom. It has a matte, dark blue paint on it with the initials \"W.H.\" etched in black." - icon = 'icons/obj/custom_items.dmi' - icon_state = "williamhackett" - -/obj/item/weapon/storage/firstaid/fluff/asus_rose //Kerbal22 - Asus Rose - name = "rugged medkit" - desc = "A dinged up medkit, it seems to have seen quite a bit of use." - icon = 'icons/obj/custom_items.dmi' - icon_state = "asusrose" - -/obj/item/weapon/reagent_containers/food/drinks/flask/fluff/johann_erzatz_1 //leonheart11: Johann Erzatz - name = "vintage thermos" - desc = "An older thermos with a faint shine." - icon = 'icons/obj/custom_items.dmi' - icon_state = "johann_erzatz_1" - volume = 50 - -/obj/item/weapon/flame/lighter/zippo/fluff/li_matsuda_1 //mangled: Li Matsuda - name = "blue zippo lighter" - desc = "A zippo lighter made of some blue metal." - icon = 'icons/obj/custom_items.dmi' - icon_state = "bluezippo" - icon_on = "bluezippoon" - icon_off = "bluezippo" - -/obj/item/weapon/flame/lighter/zippo/fluff/michael_guess_1 //Dragor23: Michael Guess - name = "engraved lighter" - desc = "A golden lighter, engraved with some ornaments and a G." - icon = 'icons/obj/custom_items.dmi' - icon_state = "guessip" - icon_on = "guessipon" - icon_off = "guessip" - -///////////////////////////// Jarcolr - Uberto Dandolo - Painted secure briefcase ///////////// - -/obj/item/weapon/storage/secure/briefcase/fluff/uberto_dandolo - name = "painted secure briefcase" - desc = "A bulky briefcase with a combination lock. It features the color green, white and red, and a golden eagle in the middle." - icon = 'icons/obj/custom_items.dmi' - icon_state = "painted_secure" - item_state = "painted_secure" - -///////////////////////////// Ziepes - Janis Godmanis - Red Zippo ////////////////////// - -/obj/item/weapon/flame/lighter/zippo/fluff/janis_godmanis - name = "Red-White-Red Zippo" - desc = "A badass zippo that looks like the Austrian flag. Upon closer inspection it is revealed that it's a different shade of red than the Austrian flag.." - icon = 'icons/obj/custom_items.dmi' - icon_state = "redzippo" - icon_on = "redzippoon" - icon_off = "redzippo" - -////////////////////////////// Tudoreleuu - Emilia Scotts - Customized pAI ///////////// - -/obj/item/device/paicard/fluff/emilia_scotts - name = "Customized pAI unit" - desc = "It seems to be a pAI Unit, albeit in a different shell. It acts exactly like the normal one. " - icon = 'icons/obj/custom_items.dmi' - icon_state = "customized_pai" - -////////////////////////////// Vivallion - Isaac Jachym - Butterfly Lighter //////////// - -/obj/item/weapon/flame/lighter/zippo/fluff/isaac_jachym - name = "Butterfly lighter" - desc = "A custom-made zippo lighter, looks rather expensive. On one of it's sides, a clean inscription has been made, 'Butterfly, what is your wisdom?' And I looked down at it's majestic form, flexing it's wings as if to show it's strength. 'Fuck chechenya.' Had it whispered, before fluttering away, and so we went to war." - icon = 'icons/obj/custom_items.dmi' - icon_state = "che_zippo" - icon_on = "che_zippoon" - icon_off = "che_zippo" - -/obj/item/weapon/flame/lighter/zippo/fluff/riley_rohtin_1 //rawrtaicho: Riley Rohtin - name = "Riley's black zippo" - desc = "A black zippo lighter, which holds some form of sentimental value." - icon = 'icons/obj/custom_items.dmi' - icon_state = "blackzippo" - icon_on = "blackzippoon" - icon_off = "blackzippo" - -/obj/item/weapon/flame/lighter/zippo/fluff/fay_sullivan_1 //furohman: Fay Sullivan - name = "Graduation Lighter" - desc = "A silver engraved lighter with 41 on one side and Tharsis University on the other. The lid reads Fay Sullivan, Cybernetic Engineering, 2541" - icon = 'icons/obj/custom_items.dmi' - icon_state = "gradzippo" - icon_on = "gradzippoon" - icon_off = "gradzippo" - -/obj/item/weapon/flame/lighter/zippo/fluff/executivekill_1 //executivekill: Hunter Duke - name = "Gonzo Fist zippo" - desc = "A Zippo lighter with the iconic Gonzo Fist on a matte black finish." - icon = 'icons/obj/custom_items.dmi' - icon_state = "gonzozippo" - icon_on = "gonzozippoon" - icon_off = "gonzozippo" - -/obj/item/weapon/flame/lighter/zippo/fluff/naples_1 //naples: Russell Vierson - name = "Engraved zippo" - desc = "A intricately engraved Zippo lighter." - icon = 'icons/obj/custom_items.dmi' - icon_state = "engravedzippo" - icon_on = "engravedzippoon" - icon_off = "engravedzippo" - -/obj/item/weapon/haircomb/fluff/cado_keppel_1 //sparklysheep: Cado Keppel - name = "purple comb" - desc = "A pristine purple comb made from flexible plastic. It has a small K etched into its side." - -/obj/item/weapon/fluff/hugo_cinderbacth_1 //thatoneguy: Hugo Cinderbatch - name = "Old Cane" - desc = "An old brown cane made from wood. It has a a large, itallicized H on it's handle." - icon = 'icons/obj/custom_items.dmi' - icon_state = "special_cane" - -/obj/item/device/camera/fluff/orange //chinsky: Summer Springfield - name = "orange camera" - icon = 'icons/obj/custom_items.dmi' - desc = "A modified detective's camera, painted in bright orange. On the back you see \"Have fun\" written in small accurate letters with something black." - icon_state = "orangecamera" - icon_on = "orangecamera" - icon_off = "camera_off" - pictures_left = 30 - -/obj/item/device/camera/fluff/oldcamera //magmaram: Maria Crash - name = "Old Camera" - icon = 'icons/obj/custom_items.dmi' - desc = "An old, slightly beat-up digital camera, with a cheap photo printer taped on. It's a nice shade of blue." - icon_state = "oldcamera" - icon_on = "oldcamera" - icon_off = "oldcamera_off" - pictures_left = 30 - -/obj/item/weapon/id_wallet/fluff/reese_mackenzie //Reese MacKenzie - ThoseDernSquirrels - - name = "ID wallet" - desc = "A wallet made of black leather, holding an ID and a gold badge that reads 'NT.' The ID has a small picture of a man, with the caption Reese James MacKenzie, with other pieces of information to the right of the picture." - icon = 'icons/obj/custom_items.dmi' - icon_state = "reesemackenzie" - -/obj/item/weapon/card/id/fluff/lifetime //fastler: Fastler Greay; it seemed like something multiple people would have - name = "Lifetime ID Card" - desc = "A modified ID card given only to those people who have devoted their lives to the better interests of NanoTrasen. It sparkles blue." - icon = 'icons/obj/custom_items.dmi' - icon_state = "lifetimeid" - -/obj/item/weapon/reagent_containers/food/drinks/flask/fluff/shinyflask //lexusjjss: Lexus Langg & Zachary Tomlinson - name = "shiny flask" - desc = "A shiny metal flask. It appears to have a Greek symbol inscribed on it." - icon = 'icons/obj/custom_items.dmi' - icon_state = "shinyflask" - volume = 50 - -/obj/item/weapon/reagent_containers/food/drinks/flask/fluff/lithiumflask //mcgulliver: Wox Derax - name = "Lithium Flask" - desc = "A flask with a Lithium Atom symbol on it." - icon = 'icons/obj/custom_items.dmi' - icon_state = "lithiumflask" - volume = 50 - -/obj/item/weapon/reagent_containers/glass/beaker/large/fluff/nashida_bishara_1 //rukral:Nashida Bisha'ra - name = "Nashida's Etched Beaker" - desc = "The message: 'Please do not be removing this beaker from the chemistry lab. If lost, return to Nashida Bisha'ra' can be seen etched into the side of this large beaker." - icon = 'icons/obj/chemical.dmi' - icon_state = "beakerlarge" - matter = list("glass" = 5000) - volume = 100 - -/obj/item/weapon/reagent_containers/glass/beaker/fluff/eleanor_stone //Rkf45: Eleanor Stone - name = "teapot" - desc = "An elegant teapot. The engraving on the bottom reads 'ENS'" - icon = 'icons/obj/custom_items.dmi' - icon_state = "eleanorstone" - item_state = "eleanorstone" - - volume = 150 - amount_per_transfer_from_this = 10 - possible_transfer_amounts = list(5,10,15,25,30,50,150) - -/obj/item/weapon/storage/pill_bottle/fluff/listermedbottle //compactninja: Lister Black - name = "Pill bottle (anti-depressants)" - desc = "Contains pills used to deal with depression. They appear to be prescribed to Lister Black" - New() - ..() - new /obj/item/weapon/reagent_containers/pill/fluff/listermed( src ) - new /obj/item/weapon/reagent_containers/pill/fluff/listermed( src ) - new /obj/item/weapon/reagent_containers/pill/fluff/listermed( src ) - new /obj/item/weapon/reagent_containers/pill/fluff/listermed( src ) - new /obj/item/weapon/reagent_containers/pill/fluff/listermed( src ) - new /obj/item/weapon/reagent_containers/pill/fluff/listermed( src ) - new /obj/item/weapon/reagent_containers/pill/fluff/listermed( src ) - -/obj/item/weapon/reagent_containers/pill/fluff/listermed - name = "anti-depressant pill" - desc = "Used to deal with depression." - icon_state = "pill9" - New() - ..() - reagents.add_reagent("stoxin", 5) - reagents.add_reagent("sugar", 10) - reagents.add_reagent("ethanol", 5) - -/obj/item/clothing/mask/fluff/electriccig //CubeJackal: Barry Sharke - name = "Electronic cigarette" - desc = "An electronic cigarette. Most of the relief of a real cigarette with none of the side effects. Often used by smokers who are trying to quit the habit." - icon = 'icons/obj/custom_items.dmi' - icon_state = "cigon" - throw_speed = 0.5 - item_state = "ciglit" - w_class = 1 - body_parts_covered = null - -//Strange penlight, Nerezza: Asher Spock - -/obj/item/weapon/reagent_containers/hypospray/fluff/asher_spock_1 - name = "strange penlight" - desc = "Besides the coloring, this penlight looks rather normal and innocent. However, you get a nagging feeling whenever you see it..." - icon = 'icons/obj/custom_items.dmi' - icon_state = "asher_spock_1" - amount_per_transfer_from_this = 5 - volume = 15 - -/obj/item/weapon/reagent_containers/hypospray/fluff/asher_spock_1/New() - ..() - reagents.remove_reagent("tricordrazine", 30) - reagents.add_reagent("oxycodone", 15) - update_icon() - return - -/obj/item/weapon/reagent_containers/hypospray/fluff/asher_spock_1/attack_self(mob/user as mob) - user << "\blue You click \the [src] but get no reaction. Must be dead." - -/obj/item/weapon/reagent_containers/hypospray/fluff/asher_spock_1/attack(mob/M as mob, mob/user as mob) - if (user.ckey != "nerezza") //Because this can end up in the wrong hands, let's make it useless for them! - user << "\blue You click \the [src] but get no reaction. Must be dead." - return - if(!reagents.total_volume) - user << "\red \The [src] is empty." - return - if (!( istype(M, /mob) )) - return - if (reagents.total_volume) - if (M == user && user.ckey == "nerezza") //Make sure this is being used by the right person, for the right reason (self injection) - visible_message("\blue [user] presses their \ - penlight against their skin, quickly clicking the button once.", \ - "\blue You press the disguised autoinjector against your skin and click the button. There's a sharp pain at the injection site that rapidly fades.", \ - "You hear a rustle as someone moves nearby, then a sharp click.") - if (M != user && user.ckey == "nerezza") //Woah now, you better be careful partner - user << "\blue You don't want to contaminate the autoinjector." - return - src.reagents.reaction(M, INGEST) - if(M.reagents) - var/trans = reagents.trans_to(M, amount_per_transfer_from_this) - user << "\blue [trans] units injected. [reagents.total_volume] units remaining in \the [src]." - return - -/obj/item/weapon/reagent_containers/hypospray/fluff/asher_spock_1/examine(mob/user as mob) - ..() - if(user.ckey != "nerezza") return //Only the owner knows how to examine the contents. - if(reagents && reagents.reagent_list.len) - for(var/datum/reagent/R in reagents.reagent_list) - usr << "\blue You examine the penlight closely and see that it has [R.volume] units of [R.name] stored." - else - usr << "\blue You examine the penlight closely and see that it is currently empty." - -//End strange penlight - -/obj/item/weapon/card/id/fluff/asher_spock_2 //Nerezza: Asher Spock - name = "Odysses Specialist ID card" - desc = "A special identification card with a red cross signifying an emergency physician has specialised in Odysseus operations and maintenance.\nIt grants the owner recharge bay access." - icon = 'icons/obj/custom_items.dmi' - icon_state = "odysseus_spec_id" - -/obj/item/weapon/clipboard/fluff/mcreary_journal //sirribbot: James McReary - name = "McReary's journal" - desc = "A journal with a warning sticker on the front cover. The initials \"J.M.\" are written on the back." - icon = 'icons/obj/custom_items.dmi' - icon_state = "mcreary_journal" - item_state = "mcreary_journal" - -/obj/item/device/flashlight/fluff/thejesster14_1 //thejesster14: Rosa Wolff - name = "old red flashlight" - desc = "A very old, childlike flashlight." - icon = 'icons/obj/custom_items.dmi' - icon_state = "wolfflight" - item_state = "wolfflight" - -/obj/item/weapon/crowbar/fluff/zelda_creedy_1 //daaneesh: Zelda Creedy - name = "Zelda's Crowbar" - desc = "A pink crow bar that has an engraving that reads, 'To Zelda. Love always, Dawn'" - icon = 'icons/obj/custom_items.dmi' - icon_state = "zeldacrowbar" - item_state = "crowbar" - -////// Ripley customisation kit - Butchery Royce - MayeDay - -/obj/item/weapon/paintkit/fluff/butcher_royce_1 - name = "Ripley customisation kit" - desc = "A kit containing all the needed tools and parts to turn an APLU Ripley into a Titan's Fist worker mech." - icon = 'icons/obj/custom_items.dmi' - icon_state = "royce_kit" - - new_name = "APLU \"Titan's Fist\"" - new_desc = "This ordinary mining Ripley has been customized to look like a unit of the Titans Fist." - new_icon = "titan" - allowed_types = list("ripley","firefighter") - -////// Ripley customisation kit - Sven Fjeltson - Mordeth221 - -/obj/item/weapon/paintkit/fluff/sven_fjeltson_1 - name = "Mercenary APLU kit" - desc = "A kit containing all the needed tools and parts to turn an APLU Ripley into an old Mercenaries APLU." - icon = 'icons/obj/custom_items.dmi' - icon_state = "sven_kit" - - new_name = "APLU \"Strike the Earth!\"" - new_desc = "Looks like an over worked, under maintained Ripley with some horrific damage." - new_icon = "earth" - allowed_types = list("ripley","firefighter") - -// Root hardsuit kit defines. -// Icons for modified hardsuits need to be in the proper .dmis because suit cyclers may cock them up. -/obj/item/device/kit/suit/fluff - - name = "hardsuit modification kit" - desc = "A kit for modifying a hardsuit." - icon = 'icons/obj/custom_items.dmi' - icon_state = "salvage_kit" - - var/new_name // Modifier for new item name - '[new_name] hardsuit'. - var/new_helmet_desc // Sets helmet desc. - var/new_suit_desc // Sets suit desc. - var/helmet_icon // Sets helmet icon_state and item_state. - var/suit_icon // Sets suit icon_state and item_state. - var/helmet_color // Sets worn_state. - var/uses = 2 // Uses before the kit deletes itself. - var/new_light_overlay - -/obj/item/clothing/head/helmet/space/void/attackby(var/obj/item/O as obj, mob/user as mob) - ..() - - if(istype(O,/obj/item/device/kit/suit/fluff)) - - var/obj/item/device/kit/suit/fluff/kit = O - name = "[kit.new_name] suit helmet" - desc = kit.new_helmet_desc - icon_state = kit.helmet_icon - item_state = kit.helmet_icon - - if(kit.new_light_overlay) - light_overlay = kit.new_light_overlay - - user << "You set about modifying the helmet into [src]." - playsound(user.loc, 'sound/items/Screwdriver.ogg', 50, 1) - - kit.uses-- - if(kit.uses<1) - user.drop_item() - qdel(O) - -/obj/item/clothing/suit/space/void/attackby(var/obj/item/O as obj, mob/user as mob) - ..() - - if(istype(O,/obj/item/device/kit/suit/fluff)) - - var/obj/item/device/kit/suit/fluff/kit = O - name = "[kit.new_name] voidsuit" - desc = kit.new_suit_desc - icon_state = kit.suit_icon - item_state = kit.suit_icon - - user << "You set about modifying the suit into [src]." - playsound(user.loc, 'sound/items/Screwdriver.ogg', 50, 1) - - kit.uses-- - if(kit.uses<1) - user.drop_item() - qdel(O) - -///////// Salvage crew hardsuit - Cybele Petit - solaruin /////////////// -/obj/item/device/kit/suit/fluff/salvage - name = "salvage hardsuit modification kit" - desc = "A kit containing all the needed tools and parts to modify a hardsuit into a salvage hardsuit." - - new_name = "salvage" - new_suit_desc = "An orange hardsuit used by salvage flotillas. Has reinforced plating." - new_helmet_desc = "An orange hardsuit helmet used by salvage flotillas. Has reinforced plating." - helmet_icon = "salvage_helmet" - suit_icon = "salvage_suit" - helmet_color = "salvage" - -///////// Weathered hardsuit - Callum Leamas - roaper /////////////// -/obj/item/device/kit/suit/fluff/roaper - name = "Callum's hardsuit modification kit" - desc = "A kit containing all the needed tools and parts to modify a hardsuit." - - new_name = "weathered" - new_suit_desc = " A jury-rigged and modified engineering hardsuit. It looks slightly damaged and dinged." - new_helmet_desc = "A jury-rigged and modified engineering hardsuit helmet. It looks slightly damaged and dinged" - helmet_icon = "rig0-roaper" - suit_icon = "rig-roaper" - helmet_color = "roaper" - -///////// Hazard Hardsuit - Ronan Harper - Raptor1628 ////////////////// -/obj/item/device/kit/suit/fluff/ronan_harper - name = "hazard hardsuit modification kit" - desc = "A kit containing all the needed tools and parts to modify a hardsuit." - - new_name = "hazard" - new_suit_desc = "An older model of armored NT Hardsuit emblazoned in security colors. The crest of the NAS Rhodes, a copper rose, is painted onto the chestplate." - new_helmet_desc = "An older NT Hardsuit Helmet with built-in atmospheric filters. The name HARPER has been printed on the back." - helmet_icon = "rig0-hazardhardsuit" - suit_icon = "rig-hazardhardsuit" - helmet_color = "hazardhardsuit" - new_light_overlay = "helmet_light_dual" - -//////// Meat Hook - Korom Bhararaya - Matthew951 //////////////////////// - -/obj/item/device/kit/weapon/fluff/hook - name = "hook modification kit" - desc = "A kit containing all the needed tools and parts to modify a knife or a butcher's knife into a hook." - icon = 'icons/obj/custom_items.dmi' - icon_state = "hook_kit" - -/obj/item/weapon/kitchenknife/attackby(var/obj/item/O as obj, mob/user as mob) - ..() - - if(istype(O,/obj/item/device/kit/weapon/fluff/hook)) - name = "meat hook" - desc = "A sharp, metal hook what sticks into things." - icon = 'icons/obj/custom_items.dmi' - icon_state = "hook_knife" - item_state = "hook_knife" - -/obj/item/weapon/butch/attackby(var/obj/item/O as obj, mob/user as mob) - ..() - - if(istype(O,/obj/item/device/kit/weapon/fluff/hook)) - name = "meat hook" - desc = "A sharp, metal hook what sticks into things." - icon = 'icons/obj/custom_items.dmi' - icon_state = "hook_knife" - item_state = "hook_knife" - -////////////////////////////////// -//////////// Clothing //////////// -////////////////////////////////// - -//////////// Gloves //////////// - -/obj/item/clothing/gloves/fluff/murad_hassim_1 - name = "Tajaran Surgical Gloves" - desc = "Reinforced sterile gloves custom tailored to comfortably accommodate Tajaran claws." - icon_state = "latex" - item_state = "lgloves" - siemens_coefficient = 1.00 - permeability_coefficient = 0.01 - species_restricted = list("exclude","Unathi") - -/obj/item/clothing/gloves/fluff/walter_brooks_1 //botanistpower: Walter Brooks - name = "mittens" - desc = "A pair of well worn, blue mittens." - icon = 'icons/obj/custom_items.dmi' - icon_state = "walter_brooks_1" - item_state = "bluegloves" - -/obj/item/clothing/gloves/fluff/chal_appara_1 //furlucis: Chal Appara - name = "Left Black Glove" - desc = "The left one of a pair of black gloves. Wonder where the other one went..." - icon = 'icons/obj/custom_items.dmi' - icon_state = "chal_appara_1" - -//////////// Earpieces //////////////// - -////////////////////////// Skrellian Tailwear - Qokkri Xilo - Paradoxon ///////////// - -/obj/item/clothing/ears/fluff/qokkri - name = "Skrellian Tailwear" - desc = "An ensemble of sophisticated jewels and bands, most likely belonging to a scientific Skrell." - icon_state = "xilobeads" - icon = 'icons/obj/custom_items.dmi' - item_state = "xilobeads" - -//////////// Eye Wear //////////// - -/obj/item/clothing/glasses/meson/fluff/book_berner_1 //asanadas: Book Berner - name = "bespectacled mesonic surveyors" - desc = "One of the older meson scanner models retrofitted to perform like its modern counterparts." - icon = 'icons/obj/custom_items.dmi' - icon_state = "book_berner_1" - -/obj/item/clothing/glasses/fluff/uzenwa_sissra_1 //sparklysheep: Uzenwa Sissra - name = "Scanning Goggles" - desc = "A very oddly shaped pair of goggles with bits of wire poking out the sides. A soft humming sound emanates from it." - icon = 'icons/obj/custom_items.dmi' - icon_state = "uzenwa_sissra_1" - -////// Medical eyepatch - Thysse Ezinwa - Jadepython -/obj/item/clothing/glasses/eyepatch/fluff/thysse_1 - name = "medical eyepatch" - desc = "On the strap, EZINWA is written in white block letters." - -////// Safety Goggles - Arjun Chopra - MindPhyre - APPROVED -/obj/item/clothing/glasses/fluff/arjun_chopra_1 - name = "safety goggles" - desc = "A used pair of leather safety goggles." - icon = 'icons/obj/custom_items.dmi' - icon_state = "arjun_chopra" - item_state = "arjun_chopra" - -/////////////////////////////////// GSTQ - Monogrammed Eyepatch - Edmund Flashman Adler ///////////////////////// - -/obj/item/clothing/glasses/eyepatch/fluff/edmund - name = "Monogrammed Eyepatch" - desc = "A black velvet eyepatch monogrammed in dark purple thread with the initials 'E. A.'" - -//////////// Hats //////////// - -/obj/item/clothing/head/secsoft/fluff/swatcap //deusdactyl: James Girard - name = "\improper SWAT hat" - desc = "A black hat. The inside has the words, \"Lieutenant James Girard, LPD SWAT Team Four.\"" - icon = 'icons/obj/custom_items.dmi' - icon_state = "swatcap" - body_parts_covered = 0 - -/obj/item/clothing/head/welding/fluff/alice_mccrea_1 //madmalicemccrea: Alice McCrea - name = "flame decal welding helmet" - desc = "A welding helmet adorned with flame decals, and several cryptic slogans of varying degrees of legibility. \"Fly the Friendly Skies\" is clearly visible, written above the visor, for some reason." - icon = 'icons/obj/custom_items.dmi' - icon_state = "alice_mccrea_1" - -/obj/item/clothing/head/welding/fluff/yuki_matsuda_1 //searif: Yuki Matsuda - name = "white decal welding helmet" - desc = "A white welding helmet with a character written across it." - icon = 'icons/obj/custom_items.dmi' - icon_state = "yuki_matsuda_1" - -/obj/item/clothing/head/welding/fluff/norah_briggs_1 //bountylord13: Norah Briggs - name = "blue flame decal welding helmet" - desc = "A welding helmet with blue flame decals on it." - icon = 'icons/obj/custom_items.dmi' - icon_state = "norah_briggs_1" - -//////////////// Painted Welding Mask - Kuratas Dotaavi - supercotton //////////////////// - -/obj/item/clothing/head/welding/fluff/kuratas - name = "Painted Welding Mask" - desc = "A blood-red welding mask with an intricate pattern. Smells like burnt rubber." - icon = 'icons/obj/custom_items.dmi' - icon_state = "paintedwelding" - -/obj/item/clothing/head/orangebandana/fluff/taryn_kifer_1 //themij: Taryn Kifer - name = "orange bandana" - desc = "Hey, I think we're missing a hazard vest..." - -/obj/item/clothing/head/fluff - body_parts_covered = 0 - -/obj/item/clothing/head/fluff/edvin_telephosphor_1 //foolamancer: Edvin Telephosphor - name = "Edvin's Hat" - desc = "A hat specially tailored for Skrellian anatomy. It has a yellow badge on the front, with a large red 'T' inscribed on it." - icon = 'icons/obj/custom_items.dmi' - icon_state = "edvin_telephosphor_1" - -/obj/item/clothing/head/fluff/krinnhat //Shirotyrant: Krinn Seeskale - name = "saucepan hat" - desc = "This hat is the shiniest shiny Krinn has ever owned." - icon = 'icons/obj/custom_items.dmi' - icon_state = "krinn_hat" - -/obj/item/clothing/head/fluff/bruce_hachert //Stup1dg33kz: Bruce Hachert - name = "worn hat" - desc = "A worn-looking hat. It is slightly faded in color." - icon = 'icons/obj/custom_items.dmi' - icon_state = "brucehachert" - -/obj/item/clothing/head/fluff/kaine_kalim_1 - name = "Formal Medical Cap" - desc = "An unusually sterile and folded cap. It seems to bare the Nanotrasen logo." - icon = 'icons/obj/custom_items.dmi' - icon_state = "kainecap" - - -/obj/item/clothing/head/beret/fluff/marine_beret //Von2531: Jack Washington - name = "colonial marine beret" - desc = "A well-worn navy blue beret. The insignia of the Martian Colonial Marine Corps is affixed to the front." - icon_state = "officerberet" - -////////////////////////////// Serithi - Adapted Security Helmet ////////////////////////////// - -/obj/item/clothing/head/helmet/fluff/adapted - name = "Adapted helmet" - desc = "Standard Security gear. Protects the head from impacts. This helmet is specially made for horned Unathi." - item_state = "adapted_h" - icon_state = "adapted_h" - icon = 'icons/obj/custom_items.dmi' - -////////////////////////////// Jarcolr - Uberto Dandolo - Feathered trilby ///////////////////// - -/obj/item/clothing/head/feather/fluff/uberto_dandolo - name = "Feathered trilby" - desc = "A sharp, stylish hat with a feather." - -////////////////////////////////////////////////////////// -///////////////////// Belts ////////////////////////////// -////////////////////////////////////////////////////////// - -/obj/item/weapon/storage/belt/medical/fluff/ems - name = "EMS utility belt" - desc = "A sturdy black webbing belt with attached pouches. H. ISHIMARU is scratched on the interior of the buckle." - icon = 'icons/obj/custom_items.dmi' - icon_state = "emsbelt" - item_state = "emsbelt" - -/obj/item/weapon/storage/belt/utility/full/fluff/sophie - name = "Sophie's belt" - desc = "A tool-belt in Atmos colours." - icon = 'icons/obj/custom_items.dmi' - icon_state = "sophie_belt" - item_state = "sophie_belt" - -/obj/item/weapon/storage/belt/medical/fluff/nashi_belt - name = "rainbow medical belt" - desc = "A somewhat-worn, modified, rainbow belt." - icon = 'icons/obj/custom_items.dmi' - icon_state = "nashi_belt" - item_state = "fluff_rbelt" - - New() - ..() - new /obj/item/weapon/reagent_containers/glass/bottle/fluff/nashi_bottle(src, 14, "Bicaridine") - new /obj/item/weapon/reagent_containers/glass/bottle/fluff/nashi_bottle(src, 15, "Dermaline") - new /obj/item/weapon/reagent_containers/glass/bottle/fluff/nashi_bottle(src, 16, "Dylovene") - new /obj/item/weapon/reagent_containers/glass/bottle/fluff/nashi_bottle(src, 17, "Dexalin Plus") - new /obj/item/weapon/reagent_containers/glass/bottle/fluff/nashi_bottle(src, 18, "Tricordrazine") - new /obj/item/weapon/reagent_containers/syringe/(src) - new /obj/item/device/healthanalyzer(src) - -/obj/item/weapon/reagent_containers/glass/bottle/fluff/nashi_bottle - icon = 'icons/obj/chemical.dmi' - New(loc, var/color, var/labeled) - ..() - name = "[labeled] bottle" - desc = "A small bottle. Contains [labeled]" - icon_state = "bottle[color]" - -//////////// Suits //////////// -/obj/item/clothing/suit/storage/labcoat - name = "labcoat" - desc = "A plain labcoat." - icon_state = "labcoat" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS - -/obj/item/clothing/suit/storage/labcoat/fluff/aeneas_rinil //Robotics Labcoat - Aeneas Rinil [APPR] - name = "Robotics labcoat" - desc = "A labcoat with a few markings denoting it as the labcoat of roboticist." - icon = 'icons/obj/custom_items.dmi' - icon_state = "aeneasrinil" - -/obj/item/clothing/suit/storage/labcoat/fluff/pink //spaceman96: Trenna Seber - name = "pink labcoat" - desc = "A suit that protects against minor chemical spills. Has a pink stripe down from the shoulders." - icon = 'icons/obj/custom_items.dmi' - icon_state = "labcoat_pink_open" - -/obj/item/clothing/suit/storage/labcoat/fluff/mit - name = "MiT Labcoat" - desc = "A lab coat from the Martian Institute of Technology with the name 'Dr. Lucina Franco' embroidered onto the right breast pocket." - icon = 'icons/obj/custom_items.dmi' - icon_state = "mitlabcoat" - item_state = "mitlabcoat" - -/obj/item/clothing/suit/storage/toggle/labcoat/fluff/epsilon //Devildabeast: Looping Song - name = "e UMi labcoat" - desc = "A suit that protects against minor chemical spills. Has a black stripe on the shoulder. The abbreviation \"e UMi\" is written on the back in bold text." - icon = 'icons/obj/custom_items.dmi' - icon_state = "labcoat_black_open" - icon_open = "labcoat_black_open" - icon_closed = "labcoat_black" - item_state = "labcoat_black" - -/obj/item/clothing/suit/storage/det_suit/fluff/leatherjack //atomicdog92: Seth Sealis - name = "leather jacket" - desc = "A black leather coat, popular amongst punks, greasers, and other galactic scum." - icon = 'icons/obj/custom_items.dmi' - icon_state = "leatherjack" - item_state = "leatherjack" - -/obj/item/clothing/suit/armor/vest/fluff/deus_blueshield //deusdactyl - name = "blue shield security armor" - desc = "An armored vest with the badge of a Blue Shield Security lieutenant." - icon = 'icons/obj/custom_items.dmi' - icon_state = "deus_blueshield" - item_state = "deus_blueshield" - -/obj/item/clothing/suit/fluff/oldscarf //Writerer2: Javaria Zara - name = "old scarf" - desc = "An old looking scarf, it seems to be fairly worn." - icon = 'icons/obj/clothing/suits.dmi' - icon_state = "mantle-unathi" - item_state = "mantle-unathi" - body_parts_covered = 0 /////////////////////////////// 50_n00b - R.A.N.G.E.'s blue dress ////////////////////////// @@ -907,142 +17,22 @@ item_state = "br_dress" body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS -//////////////////////////////// Broseph Stylin - Lombardi's Jacket /////////////////////////// +///////////////////////////// Astronovus - Harold's Cane //////////////////////////// -/obj/item/clothing/suit/storage/fluff/lombardi - name = "Lombardi's Jacket" - desc = "A dark blue, martian-pattern, EMS jacket. It sports high-visibility reflective stripes, a star of life on the back, and has a nametag on the right side of the chest that reads 'Lombardi B-'." +/obj/item/weapon/cane/fluff/harold + name = "Harold's Cane" + desc = "A cane with a wooden handle and a plastic frame capable of folding itself to make it more storable." + w_class = 1.0 icon = 'icons/obj/custom_items.dmi' - icon_state = "lombardi_jacket" - item_state = "lombardi_jacket" - body_parts_covered = UPPER_TORSO|ARMS + item_state = "foldcane" + icon_state = "foldcane" - verb/toggle() - set name = "Toggle Jacket Buttons" - set category = "Object" - set src in usr - - if(!usr.canmove || usr.stat || usr.restrained()) - return 0 - - switch(icon_state) - if("lombardi_jacket") - src.icon_state = "lombardi_jacket_open" - usr << "You unbutton the jacket." - if("lombardi_jacket_open") - src.icon_state = "lombardi_jacket" - usr << "You button up the jacket." - update_clothing_icon() - -//////////// Uniforms //////////// - -/obj/item/clothing/under/fluff/milo_hachert //Field Dress Uniform - Milo Hachert - Commissar_Drew - name = "field dress uniform" - desc = "A uniform jacket, its buttons polished to a shine, coupled with a dark pair of trousers. 'Hachert' is embroidered upon the jacket�s shoulder bar." +/obj/item/weapon/reagent_containers/food/drinks/flask/fluff/yuri_kornienkovich_flask + name = "Yuri's Flask" + desc = "An old gold plated flask. Nothing noteworthy about it besides it being gold and the red star on the worn out leather around it. There is also an engraving on the cap that is rather hard to see but it looks like \"Kornienkovich\" " icon = 'icons/obj/custom_items.dmi' - icon_state = "milohachert" - item_state = "gy_suit" - worn_state = "milohachert" + icon_state = "yuri_kornienkovich_flask" -/obj/item/clothing/under/fluff/john_saaland //GA Jumpsuit-John Saaland-Foxeye - name = "GA jumpsuit" - desc = "A tan jumpsuit, robustly constructed, with various velcro strips for name and ranking patches distributed over the torso and shoulders. Only one of these strips is in use, holding a patch with 'J. SAALAND' written on it in block lettering over the right breast pocket." - icon = 'icons/obj/custom_items.dmi' - icon_state = "saaland" - item_state = "saaland_suit" - worn_state = "saaland" - -/obj/item/clothing/under/fluff/kaine_kalim_2 - name = "Formal Medical Uniform" - desc = "An unusually sterile and pressed uniform. It seems to have a string of vials crossing the chest." - icon = 'icons/obj/custom_items.dmi' - icon_state = "kaineuniform" - item_state = "w_suit" - worn_state = "kaineuniform" - -/obj/item/clothing/under/fluff/jumpsuitdown //searif: Yuki Matsuda - name = "rolled down jumpsuit" - desc = "A rolled down jumpsuit. Great for mechanics." - icon = 'icons/obj/custom_items.dmi' - icon_state = "jumpsuitdown" - item_state = "gy_suit" - worn_state = "jumpsuitdown" - -/obj/item/clothing/under/fluff/lilith_vinous_1 //slyhidden: Lilith Vinous - name = "casual security uniform" - desc = "A less formal version of the traditional dark red Security uniform. It has the top button undone, rolled up sleeves and different belt." - icon = 'icons/obj/custom_items.dmi' - icon_state = "lilith_uniform" - item_state = "r_suit" - worn_state = "lilith_uniform" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS - -/obj/item/clothing/under/fluff/ana_issek_1 //suethecake: Ana Issek - name = "retired uniform" - desc = "A silken blouse paired with dark-colored slacks. It has the words 'Chief Investigator' embroidered into the shoulder bar." - icon = 'icons/obj/custom_items.dmi' - icon_state = "ana_uniform" - item_state = "r_suit" - worn_state = "ana_uniform" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS - -/obj/item/clothing/under/fluff/olddressuniform //desiderium: Momiji Inubashiri - name = "retired dress uniform" - desc = "A retired Station Head of Staff uniform, phased out twenty years ago for the newer jumpsuit design, but still acceptable dress. Lovingly maintained." - icon = 'icons/obj/custom_items.dmi' - icon_state = "olddressuniform" - item_state = "b_suit" - worn_state = "olddressuniform" - -/obj/item/clothing/under/rank/security/fluff/jeremy_wolf_1 //whitewolf41: Jeremy Wolf - name = "worn officer's uniform" - desc = "An old red security jumpsuit. Seems to have some slight modifications." - icon = 'icons/obj/custom_items.dmi' - icon_state = "jeremy_wolf_1" - item_state = "r_suit" - worn_state = "jeremy_wolf_1" - -//////////////////// PRC Uniform - Ronan Harper - Raptor1628 /////////////////// - -/obj/item/clothing/under/rank/security/fluff/ronan_harper - name = "PRC Uniform" - desc = "A well maintained uniform from one of the many Private Security firms Nanotrasen hires from. The name Harper is printed on the back." - icon = 'icons/obj/custom_items.dmi' - icon_state = "harper_uniform" - item_state = "jensensuit" - worn_state = "harper_uniform" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS - -//////////////////// Corporate Cap - Robert Mason - Masterrbc //////////////////// - -/obj/item/clothing/head/soft/sec/corp/fluff/robert_mason - name = "Corporate Cap" - desc = "It's baseball hat in corporate colors." - -/obj/item/clothing/under/fluff/tian_dress //phaux: Tian Yinhu - name = "purple dress" - desc = "A nicely tailored purple dress made for the taller woman." - icon = 'icons/obj/custom_items.dmi' - icon_state = "tian_dress" - item_state = "r_suit" - worn_state = "tian_dress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO - -/obj/item/clothing/under/rank/bartender/fluff/classy //searif: Ara Al-Jazari - name = "classy bartender uniform" - desc = "A prim and proper uniform that looks very similar to a bartender's, the only differences being a red tie, waistcoat and a rag hanging out of the back pocket." - icon = 'icons/obj/custom_items.dmi' - icon_state = "ara_bar_uniform" - item_state = "ba_suit" - worn_state = "ara_bar_uniform" - -/obj/item/clothing/under/fluff/callum_suit //roaper: Callum Leamus - name = "knockoff suit" - desc = "A knockoff of a suit commonly worn by the upper class." - icon = 'icons/obj/custom_items.dmi' - icon_state = "callum_suit" - item_state = "ba_suit" - worn_state = "callum_suit" /obj/item/clothing/under/fluff/solara_light_1 //bluefishie: Solara Born-In-Light name = "Elaborate Purple Dress" @@ -1052,67 +42,153 @@ item_state = "p_suit" worn_state = "solara_dress" -/obj/item/clothing/under/rank/nursesuit/fluff/sasha - name = "RN Uniform" - desc = "A nurse's uniform that is dark blue and gold. It looks like it's been tailored for a short person." + + + +/obj/item/clothing/suit/storage/labcoat/fluff/aeneas_rinil //Robotics Labcoat - Aeneas Rinil [APPR] + name = "Robotics labcoat" + desc = "A labcoat with a few markings denoting it as the labcoat of roboticist." icon = 'icons/obj/custom_items.dmi' - icon_state = "sasha" - item_state = "b_suit" - worn_state = "sasha" + icon_state = "aeneasrinil" -/////// NT-SID Suit //Zuhayr: Jane Doe -/obj/item/clothing/under/fluff/jane_sidsuit - name = "NT-SID jumpsuit" - desc = "A NanoTrasen Synthetic Intelligence Division jumpsuit, issued to 'volunteers'. On other people it looks fine, but right here a scientist has noted: on you it looks stupid." + + + +/obj/item/weapon/crowbar/fluff/zelda_creedy_1 //daaneesh: Zelda Creedy + name = "Zelda's Crowbar" + desc = "A pink crow bar that has an engraving that reads, 'To Zelda. Love always, Dawn'" icon = 'icons/obj/custom_items.dmi' - icon_state = "jane_sid_suit" - item_state = "o_suit" - worn_state = "jane_sid_suit" - has_sensor = 2 - sensor_mode = 3 + icon_state = "zeldacrowbar" + item_state = "crowbar" -//Suit roll-down toggle. -/obj/item/clothing/under/fluff/jane_sidsuit/verb/toggle_zipper() - set name = "Toggle Jumpsuit Zipper" - set category = "Object" - set src in usr - if(!usr.canmove || usr.stat || usr.restrained()) - return 0 - if(src.icon_state == "jane_sid_suit_down") - src.icon_state = "jane_sid_suit" - usr << "You zip up the [src]." - else - src.icon_state = "jane_sid_suit_down" - usr << "You unzip and roll down the [src]." - src.item_state_slots[slot_w_uniform_str] = "[src.icon_state]" - update_clothing_icon() -////// Wyatt's Ex-Commander Jumpsuit - RawrTaicho -/obj/item/clothing/under/fluff/wyatt_1 +/////////////// Oen'g Issek Medical Mask ////////////////////////// - name = "ex-commander jumpsuit" - desc = "A standard Central Command Engineering Commander jumpsuit tailored to fight the wearer tightly. It has a Medal of Service pinned onto the left side of it." +/obj/item/clothing/mask/surgical/fluff/primitive + name = "primitive mask" + desc = "A decorated and creepy gas mask with the filters removed." icon = 'icons/obj/custom_items.dmi' - icon_state = "wyatt_uniform" - //item_state = "wyatt_uniform" - worn_state = "wyatt_uniform" + item_state = "head_m" + icon_state = "head_m" + body_parts_covered = FACE|EYES -////// Black Dress - Lillian Amsel - PapaDrow -/obj/item/clothing/under/fluff/lillian_amsel_1 - name = "Black Dress" - desc = "A knee-length, dark gray and black dress made of a soft, velvety material." + + + + + /obj/item/weapon/storage/belt/utility/full/fluff/sophie + name = "Sophie's belt" + desc = "A tool-belt in Atmos colours." icon = 'icons/obj/custom_items.dmi' - icon_state = "lillian_dress" - //item_state = "lillian_dress" - worn_state = "lillian_dress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + icon_state = "sophie_belt" + item_state = "sophie_belt" -////// Tailored Security Uniform - Parker Eliza - MrSnapwalk + + + + + +/obj/item/weapon/flame/lighter/zippo/fluff/fay_sullivan_1 //furohman: Fay Sullivan + name = "Graduation Lighter" + desc = "A silver engraved lighter with 41 on one side and Tharsis University on the other. The lid reads Fay Sullivan, Cybernetic Engineering, 2541" + icon = 'icons/obj/custom_items.dmi' + icon_state = "gradzippo" + icon_on = "gradzippoon" + icon_off = "gradzippo" + + + + /obj/item/clothing/suit/storage/labcoat/fluff/mit + name = "MiT Labcoat" + desc = "A lab coat from the Martian Institute of Technology with the name 'Dr. Lucina Franco' embroidered onto the right breast pocket." + icon = 'icons/obj/custom_items.dmi' + icon_state = "mitlabcoat" + item_state = "mitlabcoat" + + +////// Medical eyepatch - Thysse Ezinwa - Jadepython +/obj/item/clothing/glasses/eyepatch/fluff/thysse_1 + name = "medical eyepatch" + desc = "On the strap, EZINWA is written in white block letters." + + + + ///////////////////////////// Jarcolr - Uberto Dandolo - Painted secure briefcase ///////////// + +/obj/item/weapon/storage/secure/briefcase/fluff/uberto_dandolo + name = "painted secure briefcase" + desc = "A bulky briefcase with a combination lock. It features the color green, white and red, and a golden eagle in the middle." + icon = 'icons/obj/custom_items.dmi' + icon_state = "painted_secure" + item_state = "painted_secure" + + + +////////////////////////////// Jarcolr - Uberto Dandolo - Feathered trilby ///////////////////// + +/obj/item/clothing/head/feather/fluff/uberto_dandolo + name = "Feathered trilby" + desc = "A sharp, stylish hat with a feather." + + +/obj/item/clothing/under/fluff/kaine_kalim_2 + name = "Formal Medical Uniform" + desc = "An unusually sterile and pressed uniform. It seems to have a string of vials crossing the chest." + icon = 'icons/obj/custom_items.dmi' + icon_state = "kaineuniform" + item_state = "w_suit" + worn_state = "kaineuniform" + +/obj/item/clothing/head/fluff/kaine_kalim_1 + name = "Formal Medical Cap" + desc = "An unusually sterile and folded cap. It seems to bear the Nanotrasen logo." + icon = 'icons/obj/custom_items.dmi' + icon_state = "kainecap" + + + /////////////////////////////////// GSTQ - Monogrammed Eyepatch - Edmund Flashman Adler ///////////////////////// + +/obj/item/clothing/glasses/eyepatch/fluff/edmund + name = "Monogrammed Eyepatch" + desc = "A black velvet eyepatch monogrammed in dark purple thread with the initials 'E. A.'" + + + + + + +/obj/item/weapon/flame/lighter/zippo/fluff/li_matsuda_1 //mangled: Li Matsuda + name = "blue zippo lighter" + desc = "A zippo lighter made of some blue metal." + icon = 'icons/obj/custom_items.dmi' + icon_state = "bluezippo" + icon_on = "bluezippoon" + icon_off = "bluezippo" + + +/obj/item/fluff/sarah_carbrokes_1 //gvazdas: Sarah Carbrokes + name = "locket" + desc = "A grey locket with a picture of a black haired man in it. The text above it reads: \"Edwin Carbrokes\"." + icon_state = "sarah_carbrokes_1" + +/obj/item/clothing/head/soft/sec/corp/fluff/robert_mason + name = "Corporate Cap" + desc = "It's baseball hat in corporate colors." + +////////////////////////////// Meyar - Cane ///////////////////////////////////////////////// + +/obj/item/weapon/cane/fluff/ryals + name = "cane" + desc = "This cane seems to have 'Ryals' engraved on its handle." + icon_state = "cane" + item_state = "stick" + + ////// Tailored Security Uniform - Parker Eliza - MrSnapwalk /obj/item/clothing/under/fluff/parkereliza name = "tailored security uniform" @@ -1134,7 +210,6 @@ body_parts_covered = 0 //technicially it's underneath everything, being part of the body canremove = 0 -////////////// Accessories ///// //////////////////// Blood Red Pendant - Mewth - Mu'taz Radi //////////////// @@ -1146,235 +221,26 @@ item_state = "radi_pendant" w_class = 2.0 -//////////// Masks //////////// - -/* -/obj/item/clothing/mask/fluff/flagmask //searif: Tsiokeriio Tarbell - name = "\improper First Nations facemask" - desc = "A simple cloth rag that bears the flag of the first nations." +////// Black Dress - Lillian Amsel - PapaDrow +/obj/item/clothing/under/fluff/lillian_amsel_1 + name = "Black Dress" + desc = "A knee-length, dark gray and black dress made of a soft, velvety material." icon = 'icons/obj/custom_items.dmi' - icon_state = "flagmask" - item_state = "flagmask" - flags = MASKCOVERSMOUTH - w_class = 2 - gas_transfer_coefficient = 0.90 -*/ + icon_state = "lillian_dress" + //item_state = "lillian_dress" + worn_state = "lillian_dress" + body_parts_covered = UPPER_TORSO|LOWER_TORSO -/obj/item/clothing/mask/mara_kilpatrick_1 //staghorn: Mara Kilpatrick - name = "shamrock pendant" - desc = "A silver and emerald shamrock pendant. It has the initials \"M.K.\" engraved on the back." +//////////// Earpieces //////////////// + +////////////////////////// Skrellian Tailwear - Qokkri Xilo - Paradoxon ///////////// + +/obj/item/clothing/ears/fluff/qokkri + name = "Skrellian Tailwear" + desc = "An ensemble of sophisticated jewels and bands, most likely belonging to a scientific Skrell." + icon_state = "xilobeads" icon = 'icons/obj/custom_items.dmi' - icon_state = "mara_kilpatrick_1" - w_class = 2 - -/////////////// Oen'g Issek Medical Mask ////////////////////////// - -/obj/item/clothing/mask/surgical/fluff/primitive - name = "primitive mask" - desc = "A decorated and creepy gas mask with the filters removed." - icon = 'icons/obj/custom_items.dmi' - item_state = "head_m" - icon_state = "head_m" - body_parts_covered = FACE|EYES - -//Painted mask: Dante Cicero - andrewmeythaler - -/obj/item/clothing/mask/andrewmeythaler - name = "painted mask" - desc = "A ghoulish mask with a stylized painting of a flame over the left eye, and a painted tear stream coming from the right eye." - icon = 'icons/obj/custom_items.dmi' - //item_state = "cicero" - icon_state = "cicero" - body_parts_covered = FACE|EYES - -////// Small locket - Altair An-Nasaqan - Serithi - -/obj/item/clothing/accessory/fluff/altair_locket - name = "small locket" - desc = "A small golden locket attached to an Ii'rka-reed string. Inside the locket is a holo-picture of a female Tajaran, and an inscription writtin in Siik'mas." - icon = 'icons/obj/custom_items.dmi' - icon_state = "altair_locket" - item_state = "altair_locket" - slot_flags = 0 - w_class = 2 - slot_flags = SLOT_MASK | SLOT_TIE - -////// Silver locket - Konaa Hirano - Konaa_Hirano - -/obj/item/clothing/accessory/fluff/konaa_hirano - name = "silver locket" - desc = "This oval shaped, argentium sterling silver locket hangs on an incredibly fine, refractive string, almost thin as hair and microweaved from links to a deceptive strength, of similar material. The edges are engraved very delicately with an elegant curving design, but overall the main is unmarked and smooth to the touch, leaving room for either remaining as a stolid piece or future alterations. There is an obvious internal place for a picture or lock of some sort, but even behind that is a very thin compartment unhinged with the pinch of a thumb and forefinger." - icon = 'icons/obj/custom_items.dmi' - icon_state = "konaahirano" - item_state = "konaahirano" - slot_flags = 0 - w_class = 2 - slot_flags = SLOT_MASK | SLOT_TIE - var/obj/item/held //Item inside locket. - -/obj/item/clothing/accessory/fluff/konaa_hirano/attack_self(mob/user as mob) - if(held) - user << "You open [src] and [held] falls out." - held.loc = get_turf(user) - src.held = null - -/obj/item/clothing/accessory/fluff/konaa_hirano/attackby(var/obj/item/O as obj, mob/user as mob) - if(istype(O,/obj/item/weapon/paper)) - if(held) - usr << "[src] already has something inside it." - else - usr << "You slip [O] into [src]." - user.drop_item() - O.loc = src - src.held = O - return - ..() - -////// Medallion - Nasir Khayyam - Jamini - -/obj/item/clothing/accessory/fluff/nasir_khayyam_1 - name = "medallion" - desc = "This silvered medallion bears the symbol of the Hadii Clan of the Tajaran." - icon = 'icons/obj/custom_items.dmi' - icon_state = "nasir_khayyam_1" - w_class = 2 - slot_flags = SLOT_MASK | SLOT_TIE - -////// Emerald necklace - Ty Foster - Nega - -/obj/item/clothing/mask/mara_kilpatrick_1 - name = "emerald necklace" - desc = "A brass necklace with a green emerald placed at the end. It has a small inscription on the top of the chain, saying \'Foster\'" - icon = 'icons/obj/custom_items.dmi' - icon_state = "ty_foster" - w_class = 2 - -////// Apollon Pendant - Michael Guess - Dragor23 -/obj/item/clothing/mask/michael_guess_1 - name = "Apollon Pendant" - desc = "A pendant with the form of a sacrificial tripod, used in acient greece. It's a symbol of the Olympian Apollon, a god associated with oracles, poetry, the sun and healing." - icon = 'icons/obj/custom_items.dmi' - icon_state = "michael_guess_1" - w_class = 2 - slot_flags = SLOT_MASK - body_parts_covered = 0 - -//////////// Shoes //////////// - -/obj/item/clothing/shoes/magboots/fluff/susan_harris_1 //sniperyeti: Susan Harris - name = "Susan's Magboots" - desc = "A colorful pair of magboots with the name Susan Harris clearly written on the back." - icon = 'icons/obj/custom_items.dmi' - icon_state = "atmosmagboots0" - -/obj/item/clothing/shoes/jackboots/fluff/hal_ishimaru_1 //YankeeSamurai: Hal Ishimaru - name = "duty boots" - desc = "Eight-inch black leather boots with side zips and NT-approved safety toes." - -////////////////////////////////////////// Vivallion - Kecer Eldraran - Toe-less Jackboots ////////////// - -/obj/item/clothing/shoes/jackboots/fluff/kecer_eldraran - name = "Toe-less Jackboots" - desc = "Modified pair of jackboots, particularly friendly to those species whose toes hold claws." - icon = 'icons/obj/custom_items.dmi' - item_state = "digiboots" - icon_state = "digiboots" - species_restricted = null - -/obj/item/clothing/shoes/jackboots/fluff/harmony_singh_1 //Bromuzl: Harmony Singh - name = "Springjacks" - desc = "A pair of highly modified jackboots in medical white, with some type of spring assembly on the ankle and heels, painted orange." - icon = 'icons/obj/custom_items.dmi' - icon_state = "springjacks" - item_state = "springjacks" - slowdown = SHOES_SLOWDOWN+1 //Slowing down because of her injured foot, these are for ease of pain so she can get off painkillers. - siemens_coefficient = 0.7 //copied from Jackboots under code/modules/clothing/shoes/miscellaneous.dm - -//////////// Sets //////////// - -/* -/obj/item/clothing/suit/storage/labcoat/fluff/cdc_labcoat - name = "\improper CDC labcoat" - desc = "A standard-issue CDC labcoat that protects against minor chemical spills. It has the name \"Wiles\" sewn on to the breast pocket." - icon = 'icons/obj/custom_items.dmi' - icon_state = "labcoat_cdc_open" -*/ -////// Short Sleeve Medical Outfit //erthilo: Farah Lants - -/obj/item/clothing/under/rank/medical/fluff/short - name = "short sleeve medical jumpsuit" - desc = "Made of a special fiber that gives special protection against biohazards. Has a cross on the chest denoting that the wearer is trained medical personnel and short sleeves." - icon = 'icons/obj/custom_items.dmi' - icon_state = "medical_short" - item_state = "medical_short" - worn_state = "medical_short" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS - -/obj/item/clothing/suit/storage/labcoat/fluff/red - name = "red labcoat" - desc = "A suit that protects against minor chemical spills. Has a red stripe on the shoulders and rolled up sleeves." - icon = 'icons/obj/custom_items.dmi' - icon_state = "labcoat_red_open" - -////// Retired Patrol Outfit //desiderium: Rook Maudlin - -/obj/item/clothing/suit/storage/det_suit/fluff/retpolcoat - name = "retired colony patrolman's coat" - desc = "A clean, black nylon windbreaker with the words \"OUTER LIGHT POLICE\" embroidered in gold-dyed thread on the back. \"RETIRED\" is tastefully embroidered below in a smaller font." - icon = 'icons/obj/custom_items.dmi' - icon_state = "retpolcoat" - item_state = "retpolcoat" - -/obj/item/clothing/head/det_hat/fluff/retpolcap - name = "retired colony patrolman's cap" - desc = "A clean and properly creased colony police cap. The badge is shined and polished, the word \"RETIRED\" engraved professionally under the words \"OUTER LIGHT POLICE.\"" - icon = 'icons/obj/custom_items.dmi' - icon_state = "retpolcap" - -/obj/item/clothing/under/det/fluff/retpoluniform - name = "retired colony patrolman's uniform" - desc = "A meticulously clean police uniform belonging to Precinct 31, Outer Light Colony. The word \"RETIRED\" is engraved tastefully and professionally in the badge below the number, 501." - icon = 'icons/obj/custom_items.dmi' - icon_state = "retpoluniform" - worn_state = "retpoluniform" - -//////////// Weapons //////////// - -///// Well-used baton - Oen'g Issek - Donofnyc3 - -/obj/item/weapon/melee/baton/fluff/oeng_baton - name = "well-used stun baton" - desc = "A stun baton used for incapacitating targets; there seems to be a bunch of tally marks set into the handle." - -///// Deckard .44 - Callum Leamas - Roaper -/obj/item/weapon/gun/projectile/revolver/detective/fluff/callum_leamas - name = "Deckard .44" - desc = "A custom built revolver, based off the semi-popular Detective Special model." - icon = 'icons/obj/custom_items.dmi' - icon_state = "leamas-empty" - ammo_type = /obj/item/ammo_magazine/c38/rubber - -/obj/item/weapon/gun/projectile/revolver/detective/fluff/callum_leamas/update_icon() - ..() - if(loaded.len) - icon_state = "leamas-loaded" - else - icon_state = "leamas-empty" - -/obj/item/weapon/gun/projectile/revolver/detective/fluff/callum_leamas/load_ammo(var/obj/item/A, mob/user) - if(istype(A, /obj/item/ammo_magazine)) - flick("leamas-reloading",src) - ..() - -/obj/item/weapon/reagent_containers/food/drinks/flask/fluff/yuri_kornienkovich_flask - name = "Yuri's Flask" - desc = "An old gold plated flask. Nothing noteworthy about it besides it being gold and the red star on the worn out leather around it. There is also an engraving on the cap that is rather hard to see but it looks like \"Kornienkovich\" " - icon = 'icons/obj/custom_items.dmi' - icon_state = "yuri_kornienkovich_flask" - -/obj/item/clothing/under/cheongsam/fluff/mai_yang_dress // Mai Yang's pretty pretty dress. - name = "White Cheongsam" - desc = "It is a white cheongsam dress." + item_state = "xilobeads" /obj/item/clothing/under/fluff/sakura_hokkaido_kimono name = "Sakura Kimono" @@ -1384,89 +250,96 @@ item_state = "sakura_hokkaido_kimono" worn_state = "sakura_hokkaido_kimono" -///////////////////////////// Astronovus - Harold's Cane //////////////////////////// +////////////////////////////// Serithi - Adapted Security Helmet ////////////////////////////// -/obj/item/weapon/cane/fluff/harold - name = "Harold's Cane" - desc = "A cane with a wooden handle and a plastic frame capable of folding itself to make it more storable." - w_class = 1.0 +/obj/item/clothing/head/helmet/fluff/adapted + name = "Adapted helmet" + desc = "Standard Security gear. Protects the head from impacts. This helmet is specially made for horned Unathi." + item_state = "adapted_h" + icon_state = "adapted_h" icon = 'icons/obj/custom_items.dmi' - item_state = "foldcane" - icon_state = "foldcane" - -//////////////////////////// Footman - Farwa Plush Doll ////////////////////////////////// - -/obj/item/weapon/fluff/farwadoll - name = "Farwa plush doll" - desc = "A Farwa plush doll. It's soft and comforting!" - w_class = 1.0 +/////////////////////// Serveris: Officer's Notebook //////////////////// +/obj/item/weapon/folder/blue/fluff/officer_notebook + name = "Officer's Notebook" + desc = "A simple, spiral bound notebook. A holographic crescent moon is printed on the cover, as well as 'S. Seto' beneath it. Numerous paper flags divide the pages, titled everything from incident reports to personal notes." icon = 'icons/obj/custom_items.dmi' - item_state = "farwaplush" - icon_state = "farwaplush" + icon_state = "syrus_notebook" -/obj/item/weapon/fluff/farwadoll/attack_self(mob/user as mob) - user.visible_message("[user] hugs [src]! How cute! ", \ - "You hug [src]. Dawwww... ") +/obj/item/fluff/david_fanning_1 //sicktrigger: David Fanning + name = "golden scalpel" + desc = "A fine surgical cutting tool covered in thin gold leaf. Does not seem able to cut anything." + icon_state = "david_fanning_1" + item_state = "david_fanning_1" -////////////////////////////// Meyar - Cane ///////////////////////////////////////////////// - -/obj/item/weapon/cane/fluff/ryals - name = "cane" - desc = "This cane seems to have 'Ryals' engraved on its handle." - icon_state = "cane" - item_state = "stick" - -////////////////////////////// Foxler - Erstatz Vryroxes ///////////////////////////////////////////////// - -//Use this subtype for spawning in the custom item. -/obj/item/weapon/holder/cat/fluff/bones/custom_item - -/obj/item/weapon/holder/cat/fluff/bones/custom_item/New() - if (!contents.len) - new/mob/living/simple_animal/cat/fluff/bones (src) - ..() - -/obj/item/weapon/holder/cat/fluff/bones - name = "Bones" - desc = "It's Bones! Meow." - gender = MALE - icon_state = "cat3" - -/mob/living/simple_animal/cat/fluff/bones - name = "Bones" - desc = "That's Bones the cat. He's a laid back, black cat. Meow." - gender = MALE - icon_state = "cat3" - icon_living = "cat3" - icon_dead = "cat3_dead" - holder_type = /obj/item/weapon/holder/cat/fluff/bones - var/friend_name = "Erstatz Vryroxes" - -/mob/living/simple_animal/cat/fluff/bones/handle_movement_target() - if (!friend) - for (var/mob/living/carbon/human/M in player_list) - if (M.real_name == friend_name) - friend = M - break - ..() - -///////////////////////////// Sabess - Maria's Heart-Shaped Locket /////////////////////////////////// - -/obj/item/weapon/fluff/mariafontaine - name = "Heart-Shaped Locket" - desc = " A silver, heart-shaped locket. It flips open to reveal two pictures, one of a young red-headed woman and one of a brunette of similar age. Small writing is etched onto the back, reading 'M+L'. Some may regard it as cheesy." +//////////// Shoes //////////// +/obj/item/clothing/shoes/magboots/fluff/susan_harris_1 //sniperyeti: Susan Harris + name = "Susan's Magboots" + desc = "A colorful pair of magboots with the name Susan Harris clearly written on the back." icon = 'icons/obj/custom_items.dmi' - icon_state = "mariaclosed" - item_state = "mariaclosed" + icon_state = "atmosmagboots0" -obj/item/weapon/fluff/mariafontaine/attack_self(mob/user as mob) - if(src.icon_state == "mariaclosed") - src.icon_state = "mariaopen" - src.item_state = "mariaopen" - user << "You flip the locket open." +////////////////////////////// Tudoreleuu - Emilia Scotts - Customized pAI ///////////// +/obj/item/device/paicard/fluff/emilia_scotts + name = "Customized pAI unit" + desc = "It seems to be a pAI Unit, albeit in a different shell. It acts exactly like the normal one. " + icon = 'icons/obj/custom_items.dmi' + icon_state = "customized_pai" - else - src.icon_state = "mariaclosed" - src.item_state = "mariaclosed" - user << "You flip the locket closed." +////////////////////////////// Vivallion - Isaac Jachym - Butterfly Lighter //////////// +/obj/item/weapon/flame/lighter/zippo/fluff/isaac_jachym + name = "Butterfly lighter" + desc = "A custom-made zippo lighter, looks rather expensive. On one of it's sides, a clean inscription has been made, 'Butterfly, what is your wisdom?' And I looked down at it's majestic form, flexing it's wings as if to show it's strength. 'Fuck chechenya.' Had it whispered, before fluttering away, and so we went to war." + icon = 'icons/obj/custom_items.dmi' + icon_state = "che_zippo" + icon_on = "che_zippoon" + icon_off = "che_zippo" + +/obj/item/clothing/shoes/jackboots/fluff/hal_ishimaru_1 //YankeeSamurai: Hal Ishimaru + name = "duty boots" + desc = "Eight-inch black leather boots with side zips and NT-approved safety toes." + +/obj/item/clothing/head/beret/fluff/marine_beret //Von2531: Jack Washington + name = "colonial marine beret" + desc = "A well-worn navy blue beret. The insignia of the Martian Colonial Marine Corps is affixed to the front." + icon_state = "officerberet" + +////////////////////////////////////////// Vivallion - Kecer Eldraran - Toe-less Jackboots ////////////// +/obj/item/clothing/shoes/jackboots/fluff/kecer_eldraran + name = "Toe-less Jackboots" + desc = "Modified pair of jackboots, particularly friendly to those species whose toes hold claws." + icon = 'icons/obj/custom_items.dmi' + item_state = "digiboots" + icon_state = "digiboots" + species_restricted = null + +/obj/item/weapon/folder/blue/fluff/matthew_riebhardt //Matthew Riebhardt - ZekeSulastin + name = "academic journal" + desc = "An academic journal, seemingly pertaining to medical genetics. This issue is for the second quarter of 2557. Paper flags demarcate some articles the owner finds interesting." + icon = 'icons/obj/custom_items.dmi' + icon_state = "matthewriebhardt" + +///////////////////////////// Ziepes - Janis Godmanis - Red Zippo ////////////////////// +/obj/item/weapon/flame/lighter/zippo/fluff/janis_godmanis + name = "Red-White-Red Zippo" + desc = "A badass zippo that looks like the Austrian flag. Upon closer inspection it is revealed that it's a different shade of red than the Austrian flag.." + icon = 'icons/obj/custom_items.dmi' + icon_state = "redzippo" + icon_on = "redzippoon" + icon_off = "redzippo" + +//Painted mask: Dante Cicero - andrewmeythaler +/obj/item/clothing/mask/andrewmeythaler + name = "painted mask" + desc = "A ghoulish mask with a stylized painting of a flame over the left eye, and a painted tear stream coming from the right eye." + icon = 'icons/obj/custom_items.dmi' + //item_state = "cicero" + icon_state = "cicero" + body_parts_covered = FACE|EYES + +/obj/item/weapon/storage/belt/medical/fluff/nashi_belt + name = "rainbow medical belt" + desc = "A somewhat-worn, modified, rainbow belt." + icon = 'icons/obj/custom_items.dmi' + icon_state = "nashi_belt" + item_state = "fluff_rbelt" diff --git a/code/modules/customitems/item_kits.dm b/code/modules/customitems/item_kits.dm new file mode 100644 index 0000000000..c1ee5c4a60 --- /dev/null +++ b/code/modules/customitems/item_kits.dm @@ -0,0 +1,120 @@ +////// Ripley customisation kit - Butchery Royce - MayeDay +/obj/item/weapon/paintkit/fluff/butcher_royce_1 + name = "Ripley customisation kit" + desc = "A kit containing all the needed tools and parts to turn an APLU Ripley into a Titan's Fist worker mech." + icon = 'icons/obj/custom_items.dmi' + icon_state = "royce_kit" + + new_name = "APLU \"Titan's Fist\"" + new_desc = "This ordinary mining Ripley has been customized to look like a unit of the Titans Fist." + new_icon = "titan" + allowed_types = list("ripley","firefighter") + +////// Ripley customisation kit - Sven Fjeltson - Mordeth221 + +/obj/item/weapon/paintkit/fluff/sven_fjeltson_1 + name = "Mercenary APLU kit" + desc = "A kit containing all the needed tools and parts to turn an APLU Ripley into an old Mercenaries APLU." + icon = 'icons/obj/custom_items.dmi' + icon_state = "sven_kit" + + new_name = "APLU \"Strike the Earth!\"" + new_desc = "Looks like an over worked, under maintained Ripley with some horrific damage." + new_icon = "earth" + allowed_types = list("ripley","firefighter") + +// Root hardsuit kit defines. +// Icons for modified hardsuits need to be in the proper .dmis because suit cyclers may cock them up. +/obj/item/device/kit/suit/fluff + + name = "hardsuit modification kit" + desc = "A kit for modifying a hardsuit." + icon = 'icons/obj/custom_items.dmi' + icon_state = "salvage_kit" + + var/new_name // Modifier for new item name - '[new_name] hardsuit'. + var/new_helmet_desc // Sets helmet desc. + var/new_suit_desc // Sets suit desc. + var/helmet_icon // Sets helmet icon_state and item_state. + var/suit_icon // Sets suit icon_state and item_state. + var/helmet_color // Sets worn_state. + var/uses = 2 // Uses before the kit deletes itself. + var/new_light_overlay + +/obj/item/clothing/head/helmet/space/void/attackby(var/obj/item/O as obj, mob/user as mob) + ..() + + if(istype(O,/obj/item/device/kit/suit/fluff)) + + var/obj/item/device/kit/suit/fluff/kit = O + name = "[kit.new_name] suit helmet" + desc = kit.new_helmet_desc + icon_state = kit.helmet_icon + item_state = kit.helmet_icon + + if(kit.new_light_overlay) + light_overlay = kit.new_light_overlay + + user << "You set about modifying the helmet into [src]." + playsound(user.loc, 'sound/items/Screwdriver.ogg', 50, 1) + + kit.uses-- + if(kit.uses<1) + user.drop_item() + qdel(O) + +/obj/item/clothing/suit/space/void/attackby(var/obj/item/O as obj, mob/user as mob) + ..() + + if(istype(O,/obj/item/device/kit/suit/fluff)) + + var/obj/item/device/kit/suit/fluff/kit = O + name = "[kit.new_name] voidsuit" + desc = kit.new_suit_desc + icon_state = kit.suit_icon + item_state = kit.suit_icon + + user << "You set about modifying the suit into [src]." + playsound(user.loc, 'sound/items/Screwdriver.ogg', 50, 1) + + kit.uses-- + if(kit.uses<1) + user.drop_item() + qdel(O) + +///////// Salvage crew hardsuit - Cybele Petit - solaruin /////////////// +/obj/item/device/kit/suit/fluff/salvage + name = "salvage hardsuit modification kit" + desc = "A kit containing all the needed tools and parts to modify a hardsuit into a salvage hardsuit." + + new_name = "salvage" + new_suit_desc = "An orange hardsuit used by salvage flotillas. Has reinforced plating." + new_helmet_desc = "An orange hardsuit helmet used by salvage flotillas. Has reinforced plating." + helmet_icon = "salvage_helmet" + suit_icon = "salvage_suit" + helmet_color = "salvage" + +///////// Weathered hardsuit - Callum Leamas - roaper /////////////// +/obj/item/device/kit/suit/fluff/roaper + name = "Callum's hardsuit modification kit" + desc = "A kit containing all the needed tools and parts to modify a hardsuit." + + new_name = "weathered" + new_suit_desc = " A jury-rigged and modified engineering hardsuit. It looks slightly damaged and dinged." + new_helmet_desc = "A jury-rigged and modified engineering hardsuit helmet. It looks slightly damaged and dinged" + helmet_icon = "rig0-roaper" + suit_icon = "rig-roaper" + helmet_color = "roaper" + +///////// Hazard Hardsuit - Ronan Harper - Raptor1628 ////////////////// +/obj/item/device/kit/suit/fluff/ronan_harper + name = "hazard hardsuit modification kit" + desc = "A kit containing all the needed tools and parts to modify a hardsuit." + + new_name = "hazard" + new_suit_desc = "An older model of armored NT Hardsuit emblazoned in security colors. The crest of the NAS Rhodes, a copper rose, is painted onto the chestplate." + new_helmet_desc = "An older NT Hardsuit Helmet with built-in atmospheric filters. The name HARPER has been printed on the back." + helmet_icon = "rig0-hazardhardsuit" + suit_icon = "rig-hazardhardsuit" + helmet_color = "hazardhardsuit" + new_light_overlay = "helmet_light_dual" diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index c19540c800..6b7c3b8eb1 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -116,7 +116,7 @@ This saves us from having to call add_fingerprint() any time something is put in update_inv_glasses() else if (W == head) head = null - + var/update_hair = 0 if((W.flags & BLOCKHAIR) || (W.flags & BLOCKHEADHAIR)) update_hair = 1 @@ -128,7 +128,7 @@ This saves us from having to call add_fingerprint() any time something is put in update_hair(0) //rebuild hair update_inv_ears(0) update_inv_wear_mask(0) - + update_inv_head() else if (W == l_ear) l_ear = null @@ -168,9 +168,9 @@ This saves us from having to call add_fingerprint() any time something is put in back = null update_inv_back() else if (W == handcuffed) - handcuffed = null + handcuffed = null if(buckled && buckled.buckle_require_restraints) - buckled.unbuckle_mob() + buckled.unbuckle_mob() update_inv_handcuffed() else if (W == legcuffed) legcuffed = null @@ -183,7 +183,7 @@ This saves us from having to call add_fingerprint() any time something is put in update_inv_l_hand() else return 0 - + update_action_buttons() return 1 @@ -321,7 +321,7 @@ This saves us from having to call add_fingerprint() any time something is put in /mob/living/carbon/human/slot_is_accessible(var/slot, var/obj/item/I, mob/user=null) var/obj/item/covering = null var/check_flags = 0 - + switch(slot) if(slot_wear_mask) covering = src.head @@ -331,7 +331,7 @@ This saves us from having to call add_fingerprint() any time something is put in check_flags = HEADCOVERSEYES if(slot_gloves, slot_w_uniform) covering = src.wear_suit - + if(covering) if((covering.body_parts_covered & I.body_parts_covered) || (covering.flags & check_flags)) user << "\The [covering] is in the way." @@ -534,7 +534,7 @@ This saves us from having to call add_fingerprint() any time something is put in var/obj/item/clothing/accessory/A = suit.accessories[1] target.attack_log += "\[[time_stamp()]\] Has had their accessory ([A]) removed by [source.name] ([source.ckey])" source.attack_log += "\[[time_stamp()]\] Attempted to remove [target.name]'s ([target.ckey]) accessory ([A])" - if(istype(A, /obj/item/clothing/accessory/holobadge) || istype(A, /obj/item/clothing/accessory/medal)) + if(istype(A, /obj/item/clothing/accessory/badge) || istype(A, /obj/item/clothing/accessory/medal)) for(var/mob/M in viewers(target, null)) M.show_message("\red [source] tears off \the [A] from [target]'s [suit]!" , 1) done() @@ -799,7 +799,7 @@ It can still be worn/put on as normal. target.drop_from_inventory(target.r_store) //At this stage l_store is already processed by the code above, we only need to process r_store. else source << "You fail to remove \the [strip_item] from [target]!" - else if(item) + else if(item) if(target.has_organ_for_slot(slot_to_process) && item.mob_can_equip(target, slot_to_process, 0)) //Placing an item on the mob source.drop_from_inventory(item) target.equip_to_slot_if_possible(item, slot_to_process, 0, 1, 1) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 4e72bf55c0..3197c6023c 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -228,6 +228,23 @@ icon_dead = "kitten_dead" gender = NEUTER +// Leaving this here for now. +/obj/item/weapon/holder/cat/fluff/bones + name = "Bones" + desc = "It's Bones! Meow." + gender = MALE + icon_state = "cat3" + +/mob/living/simple_animal/cat/fluff/bones + name = "Bones" + desc = "That's Bones the cat. He's a laid back, black cat. Meow." + gender = MALE + icon_state = "cat3" + icon_living = "cat3" + icon_dead = "cat3_dead" + holder_type = /obj/item/weapon/holder/cat/fluff/bones + var/friend_name = "Erstatz Vryroxes" + /mob/living/simple_animal/cat/kitten/New() gender = pick(MALE, FEMALE) ..() diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index f0291de0f8..cb17710773 100644 --- a/code/modules/projectiles/guns/projectile/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -41,3 +41,24 @@ name = input M << "You name the gun [input]. Say hello to your new friend." return 1 + +// Blade Runner pistol. +/obj/item/weapon/gun/projectile/revolver/deckard + name = "Deckard .44" + desc = "A custom-built revolver, based off the semi-popular Detective Special model." + icon_state = "deckard-empty" + ammo_type = /obj/item/ammo_magazine/c38/rubber + +/obj/item/weapon/gun/projectile/revolver/deckard/update_icon() + ..() + if(loaded.len) + icon_state = "deckard-loaded" + else + icon_state = "deckard-empty" + +/obj/item/weapon/gun/projectile/revolver/deckard/load_ammo(var/obj/item/A, mob/user) + if(istype(A, /obj/item/ammo_magazine)) + flick("deckard-reload",src) + ..() + + diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index 58b11a61ac..23dc52e1fb 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -260,6 +260,15 @@ volume = 120 center_of_mass = list("x"=17, "y"=10) +/obj/item/weapon/reagent_containers/food/drinks/teapot + name = "teapot" + desc = "An elegant teapot. It simply oozes class." + icon_state = "teapot" + item_state = "teapot" + amount_per_transfer_from_this = 10 + volume = 120 + center_of_mass = list("x"=17, "y"=7) + /obj/item/weapon/reagent_containers/food/drinks/flask name = "Captain's Flask" desc = "A metal flask belonging to the captain" @@ -267,6 +276,16 @@ volume = 60 center_of_mass = list("x"=17, "y"=7) +/obj/item/weapon/reagent_containers/food/drinks/flask/shiny + name = "shiny flask" + desc = "A shiny metal flask. It appears to have a Greek symbol inscribed on it." + icon_state = "shinyflask" + +/obj/item/weapon/reagent_containers/food/drinks/flask/lithium + name = "lithium flask" + desc = "A flask with a Lithium Atom symbol on it." + icon_state = "lithiumflask" + /obj/item/weapon/reagent_containers/food/drinks/flask/detflask name = "Detective's Flask" desc = "A metal flask with a leather band and golden badge belonging to the detective." diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index afb8b5236183301eb3418b8beeec2fcc3845d045..65b9782bf213e88145a5f94bae7aeeffb398771d 100644 GIT binary patch delta 1436 zcmV;N1!MZQ=n=Q*5s)N*`g&AYbVOxyV{&P5bZKvH004NLotjN=+%^z~&-Sknl512n zZh)SADG~%ZB)#-5jHp?1y!=py)Na)?f&}o`OCNN z0(-bNAT2f04L00iu!bO@IDDla!)u52ddN#nDPjq}I$?Wsdzs+A>M67(XyGDz-NfU4-2cJ&IE_f!u#F%_5p zU4V`4X*3CF@-hYWtTIwgQy3wzOxQv!6S67x@=QAQ8`{>#ab)X@jejSQ+)46WKsZw@ zRHdGl3D`at15qUn$6`{ba>-AIX3UP@pyRq1p;=RXHO!*OQk^~7g{Nc?zu;0vcN63k z96<|VBg&AW@HB!od&x7$iM2kSyr^X$-+@$eeYqN%%M!&@!MN088b`AyiGxdN0**Eb zGpj6N2r1Ujs2AYbeL6;la*#o5vsW%#VsG8E||p^O(WM!%bcQd zNR`ZGsjr~b?wS{!>jx*t%n@=v&Vr|jGX2jf`{#?LeE)9s_kXiKZR%6R+fKDVcWJ+rL74j_(eXu5;01of4)=_>_SoYNdesoyqUWHdt{@Gy^Bc zv!gg{7T~=rNI~<)dfab=2|y;!F!GV;0yE%;FEFy5ji;Q&fLCu7+aDh(9qEKk3Qu6; zqhAwgvh@gvPqOAvJ`$)}WCBUougD$CK~{85|~^+Fa{daSMIh qefsvX`}pnB28SjF0f#0A0*59B1Ggpy1Q2c|x!Mi@ delta 1467 zcmV;s1w{I{=n=N)5s)N*`Fd1XbVOxyV{&P5bZKvH004NLotjT?8#fTe&-SNSBv)_I zxB+_drAQFuko3~~VwO81$Ks#ukSj(0^gT$HS58zu8a^5LJq|e}hmTyn@BaGyj;JJu{Ib`Rah-+sTn*~?U1_t5=ue|zIttSiTVa-qWAL-%eKBg*e?Zzj>)J#-&$ zZ#GJSbNA4Fc#*g^0i==dO@Dr+NlMYShtfBM;%KEMQfua{GRJ-*ZJDGuj31a8726|A zaF^r?^zrs)Vo!(ep}W7kzq`L%9Ray0iFIXoB(nvId~vJ+sEUqhSFdn+PxX)!Q*rs< z1=!f0Mw5Uh&r?v(DkJ4Ig%JYFge}A}A)8_^Poz`7p>2H}N4CD$cz*)Pog~i%gfqoL zRqAn>fbDZO5LMD}EGC62m;7XC#_R|VI<9*Wnl;r|!z_v{)!CC>cuEHG3od1JH$hIp z5ws9Cq6`@dPa{~fmppTvSnK1-i&_Tq9Y`hDm#d+ zBhDz0T{2Y24Cyo`we^BaF*{Mf4Elu&)f-fv5R9WeUPG}J%MGxK?Xmm1itRaCiOeby z7@OEWNJPBO;FFh$xOKz~KrY{ak@ilD%y+|s^F8E^a4nT7$M6fHeE=I9rly5f{bL()Nccboj$PFxv|itVWcpuJ5}j#*5`9O4U(6zpf;F)kXR z%fSo%%6VKF=fumg>Pwq#XlC_A@_Y{C`H#7nd`MS*+7Csv9N^Nf9tm zES~!%QgKobpGKG!LUV8?L7Pc4*zlYW6zT?xI5K6GDD{23VzJ&HD-fEByjAvo$cvN# zd_`U<@Z%mllh3a)_w|Crv3SPb=k`>vXO`910mN|)O?S|hpuUn8ojtd;f2paTZc5QM zhPc$!=YL3v|@?BirD{HPH+l9#4+q zuvvg7uOJ0Y9qVz+4JOo&$1{w4CpyCnSmHB`>}caDXEEUITgCRrcS=V(VUxlW*!bud z22rcb5oC`g0)#zNaSS_)OMC!~*QjX^pHyoY+<)q8MPqk{pPXR*VG+5?UE<)r@1w-W z`U~>vN0Els;yq7p#*Eb2H#7Alw*;!C8Y{y$wbC*`Sx1_?6 z*|N3_=|zE*zM)~RE_5b^Kyhm88*3Txgj~p;*I=s-SxeUk);gl*p#TqT4H%l3QJIW8 zC4bX6ruj|EH%Dud;J0(=c5*>uLuXB;-d3JIC3N*@|u^-+X(|@AD{#$Bn-`o8=8{Zsep+t=Iw06!oFeT5_(2><{f07*naRCt{1or5z5 VhcgBNhcgBOhcgBPw=)I=1a4P9%})RT diff --git a/icons/obj/clothing/glasses.dmi b/icons/obj/clothing/glasses.dmi index 79fc6c98abcf449f83451ea0e76d14caad4389bf..43bea2af31892939b067442632a05c174a4f7ef1 100644 GIT binary patch literal 7184 zcmbt(bx>5%-~L@1DV3D&5SDNilt#KFrMnvhBwcptl#&t<5RedQkcOqZq`Oz(<&^UmCJ&*#oLXYQHj)bl(iT=ktS!6V8?000ok%SoxDas(=6;b5WOdhF(g z005%%(bRF5vUD?dwRLf~b#?*(uk^%t3A=XQ$I?@i98widwy91{9E6>b>yKp0yZ(^q zK223q_POSMTF;q!!0aWAgxwppWQul0(hlWZ2fR(mJ~*E{jojt0`unjoru642eCYH} z(t*Og)RUWnG3(nd7ulaC(E=w9tKgfP^V18pJc~C^4NF+? z9AeIwQv<{2owg&Q?Gi4oaO3FX1+)O)feuyH!cT!FeD!Q>Z1zqS(k0-B<3Co@EL#Ee zGv!btJoT@bGe7qPItG=3q&k&CTaZnnhFBu$vghc(=HM4qRDV&pQT~#blF;-@-~Z;T zsX5iu-4Ytc?pzQUFU7)(+xb#WwWmq`a5c6&;?iTH!`6H(fq9W@gLNdgE*n>Cj+&`1 z6=OE<^CtHzPwCPLIdz*qiQJX(JuW$p=+9Tt&C(@~o+Pxcyy*cd4(URnueSzxhXdi( zu!@TGH!aYi4AbVNJ3&ax;MYMbUJ4%;i$-H0kS~K5o!6ZJ0!U8%hXE_s)zuZVfIu>a ztCN!xckl49)RZ0rQ`sSwVFTV#=4L1E6r;Y6vIQu4x zVv@;Bg{4ucu9lXJ=snW>?_yKh7h{#Xls4}h{_Wkix51GL3W{~3X1ldyDN3x;G#eWm z^EP}R4e&4|j*2i}P~Zbq#NRV^J=y%kNvdZYx~j@}OQ*Ko1Y1uV+qkOOR3qt*%-|Ej z!MU49rhxbdOEF+M=hbC)ZdHOC`IqjdW_3E=uSy*b{N_u|&@#PZ8(Z7faAG!9Bcq{S zbHHF#Z=44Qt+1d#+}@sZu{j69a&Om-4Zw}NMX`X_aS$9}+rwSnQeo*<8Br>2^gu&p zxOa#Q)PemyHM@I5-c@p65h>4ooSA=#1}v5kU<03yciU4ZdDu{ZNy*CkzLdxu3oj|* zE%hzFGZ+<)6x^6*XhjndAt6|ue6#2U=7gb=5zdQ^Ur9(w zIYJcuQj@Q zhPXQ2GTa1EAL_ad3ngLprf3q6d!UJC!*1+sWLSY9K0dzfzkh=Ut=fO}^~*`5D5m=% z1Lz-1JPx1?(e!Xff81GG((>Z0g8kEbgZ}HmA{d@HNlX3x!0MyMnbGy9Q$O#^yNW=7 z+V;v=egjQcPjc$K@{1}sq3wLQw&?t*51P_ z)+6*ubeo>eNJ9MCxvm>a-dp+tT6&?hj*2)@bwhl7jUUys z>HK#1+9qXbX~{jMnf#2vb1RzE0SUP}ngeELgjYlh!9Z-*qhO2b<|J9avN+B6O^?gA z3(5*zlEL~iNvPD<*H_!vC|ug5Y8;tCwY_ILKaC-X9d>?NYutmW7@V1$ENeBCzOz%M zR?2h;4&ZCQ9bxM=x$CKKP4Jd1ph6lG0+biUEDuSE82P94|3X`_nGU6VzF>PT4oXA; zj%CJ(c)Say9UvqVBDTAhDxv?$vyBK3PtwSUcILNZ8qb?G!>DB*&0B~aEfygS8c@|V z9q3CtEA1nCgGNyMj8pk|J3IpM z!`r{O_v6v~8y-O!b9WiCJ{O@HWab0wEpUHL~ zl$WoDMdV564^M0a7LQRu$;H~EQep4IGGCZmLIep1ySnHMrPn2ow;Q}L4w;m{_}CNC zEmA%sCLVuPfJ9#jcF7pGjG*K>cybA67l!h1D1$dh%KQA5J=j+znzl{XSB(usFtX4? zT@zRVnE_c_hYE!)-+qPtWKdiC68+b&W8!Re>)2G5m!JT0vEbCKoE*ugP#v8Vi=e$h z6DSUEx{o2ZA5ehp0)Z37EJk&2K|@-vACG@?oa#XPMnlK6?|auXkd7rj|0%olkg3yc zSz~57NJc>Kfor?23}ve zPl2>!csp!>HR2~?l%%~~*6l>(V3(vrzU2W6o9Lf(W3lXXx(qFoAn}#g<7GXwZjW!M;z>7QKtY&IW(N_{6gWS!{-t(_cCxlsUZSErBIppn9~B1M z@4^{q0Tae-86i+(tgy7-u{sFbJdmH24&Va-gF4q>q&-}mtuaRp^;dwsqcr+684+0> z?zWwZlPyFH@7l-o7%5){#L_n=TtJmW6i94MMY&2(G zC|u)6T9O%9j!TyUfCjq9!n^0N>H>7#`&{G%x`E2E#yr^V-MUZ%!Oi4TaEMscUZBdC z<+zn$ofc|s){5zcQG+>n6{>e|!}@#mWs6oe^a5=dMaf9gL*k{fPQBL~Z)Uc*1%eC= z1mkj@+nVS zM;dsn>!e!ACe@yb*}3YRC^ticcK?T3!)6PM^+=HBkYGq-E8bqr{05%s%W9jvZbWL2_s9U z2Klfg?WbjCQ0LO0?EjW4mi-;ciS^c}Vz~QOJL!zQbJ#H=jvbP&?Q${;EAyolcsu|& z^~e>leEukF;`~#ppY#}eW%LO{SOmW0?mT4OT?!Y{N`ThzB#*J(B_+LZE++ZuQk);= z(7DhLWJslAyK}=Ek|il;OV(PD307@m&N}t9H9iRsr&aRA{}m9_RY*2DenT%xoF`FZk(DmA9XTUtSQ&#n3>5 zis|QpsIMSo0*Tpgz3$@Rfz8X<=cmMe6R^P#AP--1z0I&cT9FTJ6Cix|kAMY^VKjr| z3lKzRqx1bR_W7%urMpd{*?gHZ()(UEkOW0hzb{MZ1J?bdU-4zY84~$^*mB=+Dh1RP zORg=VVl|{`y?pt(KUsfeug(F7**q)%nE?*($XM_iw2vVs{a{FIeta?FC8x@THo6kg!xrZ zkITz(0h5FI8PS?sl0gD`9JKGa3Q%P=5w+dJI;em^&Y|`C#Fv;L@?pW<-vigfkUx}y zB`bvl*~?>~zf1jJ>NqGHk+^;NH4I}H z8roRLh!$;j(fOaH-6iBG8XvLvtFbYi3Y-^h@88l?*lHqfZO!I!xTsvk3j)$#d!x-Q z8Q}psSEtHAmRCmNSJI>EZU;h>@bC`}!2{=vDcAYj^X=~sZ=Qg-O>DN&e7<26?@x`) ziiVLJ-F0k8LhS;-QbigeEMCNMUd+LR0W!4P9XXULQAeqTLUXbGdKxeotZoo_jVVD- zN=jTPGRE5v*@+NV$tE=vm5e?FJSt??AP_+u85&+QB?fQB8=QTRj9KEPB;*hlgW3mLS3h8Lt%6K(Vh5 zEOp+miUlws3+t$Q>CW|2d3m@YpPI<_-WYwSe<3oh>+%yv(&g6m zKRxLwD$I#{b9;5FuE-rT`mpcOK*IC<`6|EjqSE@5>lDQ6?PH9RfKt`4B@*t%yy*LhW9KbbD8l<1cSo%JVq`CjxA;*H5lP;aZu1{B&u+F zEfQz7(Oa_eL$#hUH{=5UW%C|s22w~juPrfBpXQ5La`%P^yrGr{Cjc=TUN&muuDcMY z62G%FZ&fMZ9cYM|E()zb^SYU{H)L&XU7bo^S%=|N*KSi0uxj5(m1h1yjiblbcCjeS z;OFVI%afpm*QWz{Qv&f--nKRc&WOCJ#j~CC>b*&L285IENwS_^*~Nyj_nlCsbKvzq zH0?b@Ks_%za zu4lb3+C?h22F@v*3&_bqJ~XRuKbNjz>kusqG*>M*6UI^GRPLOA2Eo2{C4VOheuhx7 zTUwL8%63HI{9fx!-Yl zZd;8>im4E6&Xberm{m3*lzC#YH(AULE=?cpC=eBRyuLa-Jghywe=wVqINBDgdE439 zX;fP2cjvQOgv;tqRAy%Be}=tK4vp*npAXIgeehA2Js0dV{RIJbEUOb!WT(&u+BcT3iBJX zA-dCA^N*$sJ0HJz=->PQ)NdT^!<6I&JD2^PulwSQ0zqC%Du~%GqSYjJHycYW8B|3T z%`*6P?FEKHDkMHd8)`s%+EIY@|1A{&K=}hnNo4Ns?)3ax^R(Q2d}<2)${L=TVldHd z>hqX8FWg1wrD2Cu&~nDv+!2p%&07C1SiTb>M<+J~P;%?Hy41{6rKg=y5QQ3q&A|McHL7-@iwEL}LQ8k@63p zg5lE@KlLX}kL5q44JNURiRnO8iB(%Q9Qe~LUg{;+N42kv{F<^8^dyvb+gu*GE3e(T zkueam0TG6Erw)D7pjN41Cs@Ia5kWLVZ%nH7K;loufL;u{V|2vdnMxMop3;pN22tdZ z`Ob0g*i!b7_w%V+3JsEK@4$W$t+6JQ;kov-8^LmLgB-Yk=)ozNv}$ zJml|?&|$|+m(1DOS=Jnf6T8@J-msFAck|!A`j`GJDz7h7J-$~|P`rDJ=IA{EE^0Ng z`Q9G0;uZOvFl~_aTPfx^#;*Cv7RppR*JGvFF5Ar8h(vt6Sjju2@<$IXXXH^4zK7iG;vB9K4dw~IesN)>X8Ltsfahn8$%uGzf7%wyh;Ds9bj4!z~ zpTqQBU!clz>$Sy}`T4bC#lXXN4L-lVN)Qjr^Y zS#EuV9%CGwRopDLnopc#aymBW0G8uhBnX9I4BdlX`+VDW$LBa%%S7f8Ttw5pPG@j= zEg5UpNL9Er2p^mbpqZ<2X;ljIEj0>m9}VxgIWcz(w;8a&MQrGJvE%w2^yL%`7 z%*RPW0#t)?uy*c}5|UhZjasQrhfw_wr&_dhI8@3I;6X9 zIA65y{bEb%Y4tg_Fjruz66*`!3y0)2ccze0GhmrJ8A?A=E)1mKUl+{Tqe|ni7w`e5 z;$|&QiIZMSDBl5Vn_hKe6}g;(LVR>@_hOab)pXjBH|xn@et1y#4PZyyOl`M-h(-pC|Gg?Kf724Z$0D%{zr& z`IhU>OL2{{1y7T+gz%_d#g)|e5m>y>8TFo!V@Qn2sDP~s?+5Tr2A{8%+&{1UdfJU4 znlJr5jj*vr7-V2ghnfMmV@07qa(_G^&lz`+Ylqd>iNgz2nFmWM4vvl}Gw!VLladlX z%ARyip|xpTLY=x8K$J{Qzy1F+R-TYWO8Z5#o?D*^_dZ+nG~wF4oB@P>J2C-BvgXMN zA@wKs6Y4B)uoZAb?je!eO2##X#~62OH;4cHW6*UEl43Zf!^Jz=wn= zBeBu@6h%{`Y23njbjrk^qzQg}4rI-ZvLtdqPX$0NA^+EpKJLv?K?7d!yp#)fvi&>S zEjv_aqnrB`7ej(RlAK3IMI~m=qN8TfhZ9(C3&sQBU)WU8Mh@=!JGD<_H~^FO5Q6xT z0uZo_JYI`f)0={MiBlJEb%b#4_9{N*X_+D;RlO4}Mf*SdGcGNGpuwMr>uaB6bIsfH z^Yi#46wOh5b6)$3UJI`;zaj~CE{I5B6fF^X^;G+TPU&1kM1;G$0Lf!mAH<;{^&vMe zuRa0q;!c2HxBTo0F(Hj02HTSjrbsHl#*mG`VU zqd4Lu%?nPl78bdhlTI~EqN21YHW$Glj+#=;%Sko|jPxP|wXaWp+Y<3!a?{@p#bx6z zVY+BVInPuCW7Lbm(<`lq8DG96p=QhQS?$0D%=Y6;PJ-XhH z5``Jbx$jdkUR->DU7KN?Sm=sbt?4N*b>>--#M;&Ug7RDYy=Vn|N~D?>l-%ikiH`2h1zYB6gQ*-2@t{TnLvNn%Ookbl=aH{6f^<9ioS6EV3;;gapOOWf`}y$|-X4?5KX0+isxiaG3Xj~u4Y8Ug z!83d=U-8O$ok?yedX;r!6Z8N(-`u_t&$Seb+oQ$PQJ?BZ!eS0Z-jn1<_GcZUB|m=u zP-h@_V7Xsp^J*<)Ld)`C^QVVJ@SH{JZ4HO0l#N+oiT5Zczo8&T_*9-ZS>EHZX9 zB>y_(XJ=TXHsgGtoa;CPM}&VAaH~@XVHp|LnKb<-C@R{?>&UHgOyTi!LL{V#a!LC$ zkdF|a!oYK*boXsXQgoB(_@&dgK$OUPu)BAoJpj-!y_T2L^~pZX3G^V_?Hua<5GK2p z(hy=7l3rEP%gLJVQ{(rT);xY?Sx0C&(}?!dafpdp#TChv=7DFTkDS`l5^g8f1^uRW zqFstZf|QSLL)!~uoW!s+d23PD4yxgZ@#6??9N#mBl($~CUX2ppB$#ku0h07ydFz6( zAGX2k`v|GYANTYVR`t-{DK4GwNHnV0%P<^hfnz#A)gJM$2?CbSxVc#o2n1_71O|h> zwzMo*hm>Nvzwf*}>VRl#O=cg0TRiz(g@+s3N6(NSe*p{$vj zN0O6RbLiCgn81>FLGIG^-Ys-vjw0sKY=8e~ANgy&F`Mvhe0>^JtNX~dF~fkH;$-z3rAQWmlarHJ(5)CJ7ngWB0W{Jy z2JV~7p{J*3=i)LX(L(9FV1E1u050;}63~J8eS8q$mm_7B^SdSJ$v@3X%iVz=-XcxA zDVGxbm|!zL|t8?DGYJ(uHYTJ&1o=rX>oN1tQJi z#Q@dkPg?sADZ;p~r)7=L`5TlgHNWxd!{8u``5IG`pde{E)gNV^Xr4i`;XrORjl43Q z++$9)R^c4A<)yCEe6Q)z8CoRhXlV>p(-od)dV9kIhzv?^ujH)wZlKeum#`% zg8*^2=};z7N|e1Aw1f1Z0sH0q;2aFA8p3V;yEp*QSquh%E+A3QC_KH=*|Ov3Pc+gd zCv)ZeiE2zecW8Et3>KjKu*GDkVP;^UboQ*8^2tL=DAL;PGX*n$);KE@6DTPuNzD5! zdx(yaiAk>N*j3Ehi$}f(CfQbNMCD7kH_&Ur&nO~7vAViiw|tsz8i-SleO))pm$&cR z2MbWLRPxm419}mkPW2;AN$AWi=NkgYD%Js_Z1csSH}>RfM-G>Djz8}Ww)Fw%#sRUQ ztq%dDSVe7(o!UtDC5_7j7lC(EE}(NDKV>K6r+QMHB40F(UHP*@@=fE%GP7j{6yH2Xy3mag#Sy#3KbXch-+*AHqrc;O|^}#68nV-FDN|%k1~5ZkUAEyV1Y)Mv~CO} z7C}1rJ`e*;aX<`Z*1%?0$@k|4!M8swd{~}>(*IbM(kYwx$03W)d;uH)OvqNlws=~r zQ7`X#48}Zjpr$%kvA~ekL=#JGg&TPxkB>n==%2NVf4jTVf6P|%YU{wPrqmUmWPzQ{ z%;-nP##qS7$xY zD&uKo`~}^z)a83$EBiW!?&}vX`e3CRd27$z_f!XlhR^}^JZXYMIOo}mDV^w8zc2qp0`VXfotu;K6*AJr{#wRX>pO1&-zQYWx zY!wN$EDUVl*?b{X0*HxSlB=o?^HWTIe;`Ok0tFH>;nDe(l`0;8P{?Uv&u0~Uf7YXP z2Mu9t(MRl@t!zzWl!GO$nxpm%&&HLQNy1N|%hh_Dji88s*muXf0~( z|K5w^QGx=<8x3KMsAu6om5Ov)yGf>gtX=12QK7Yq_LX_QERhU{eYRnNNGgun^fu6eW zh{BS88~a|{_}sFH1%n{`DB3Tvo{{uTrCv7H4T+rWVgU>D8mm#5xPvCIIcJ(|Z5j+c z8RsJUjUnOzl-}(`kFw>v<~EtU)GZ?>Z$QMgcOa!VwK@xI@ykuc?qPmyV{==E{NQ)y z1#ww^f$rpnXzk?t;yPNj*|Q-g&m&aV%IBbV>z)XyAw$C2&3=)X5E3*G|KVH z9L1s!hN-CVF*BYlfV>P8CC5#yWS_2Tzadd%Rbsxnd)Fc3j;@vYMnNqsN%=wj4o&<`6 zokKpk9EI2$W;9=rsfaA}vcGAln*{}Ss~HQhVT!Ts3mKaaga)!DB%QOW4N|IU0Z>Kv zWB@n`l0A4j|L{ru$&cS0Z280+eqfow<>&kIU5(34-UQRkx0WUhx@w`TD6`GuIY<{5 zJEx82!~RhV-h<|}2R(Id$X5nNe=aQRqc$9 zGv%>LUuc5wOZGn}U9U~;31EM}l4}P3AkFt29I@(rF3%-jfn01vX|7D&3P0#X>Vu_^ z5gZI4mz0VQ27danqU{mXP-0nwz1y;Of)`bj*+C5?bJD%K7((3bW}-t>_|=xQHi8}m zDlvUi!m0qiX+K8K{}dWtCcOAn{Uprf^m}t9VPfSf75zzH-SKmE6QsA-8=zpLXB4Zy6=o-{Te*^(Bd%3yG5(ewTOs(BmBTY*>hny_6Qdxmzp~)s41a z(=LzvBiKgVvPKu-V)d1ucm?1GDGg`;l$}^Sy0qHiL%L*0lTWUHTEPW|YJj0vL4=nr zV|O?GNx|y-n9FW#PL!m*tdZfeBsHc83RB8^Oy0%t{l>Uzlrj>z0>7{Pu;sW9SaM;D z0uXjU$APnc;obJHm%JjU?82Wp&>bE!VUl$5^iAXBCdP-i`?dI1b)|TW{ReJ@jwv|l z0-Su+0Zhe1C&9?$b;mp!EuNCnTr{7cD)sX;x>-@|rYpz0{lWR6nwy&AgSPJ&{1F{Z zzaKq!{QMlf8_a9!5V-^~#Adaut0i9{v#6`Z8p7ORN=RKh^IDl(jQ7a;cp`!E1Nm&3 zURlM=2!STB%Z&*L35!_vj*mzmiv}!*{)0F?@P=n-qV@eQJ&v`O1T?>lD6AQvzuoFxw(Pc-g&hPZrfshs!GFu$mUmMDB za-yllsilj$#2@A66}ADWU=fllUn2WS`sJ=`*~?83E9jM(#HF45;YpF%aTQWhu(SM_ zCfAHlEC3T4=&x#RR)I+=BZu%gHfPeInfYk$86%I{*sOUPd?Y7$ha_I|^=Q|qazdP-g;5v?*yvaZOL<$f zwX@44dE=tjz}K>OTu=K5RUNz&s;sKodDZyr)QIT7&Viq5YIQZv^qUtkk30YjY0wRQ z_5K9_Z*BuvfZ?^bZ*8yw&jhm24Iq$CXD0Vf>@RorF<$PG@cSrWUqCW|{*E^kKH+G0 zPS+Px8@P4(MY?mXFK+Oug-F(j%}{j@GY|vJmOo7&x79W@9C_v>bK3T|dMNzAO9n-V zQBmaToIM&~u*CyFThv_oom*mj#gA#?|BO#EV9y~A9XUg}^lz&SZhA@q)y_@~Jjy~r zWh$dBspZBbM9l3aee&ZAZi~~7pPuH>^hKIXn;CK$=bG(yt z9f874X97uJ%0z)t?5Xx4`Ontqa^Xrb&~S4CkgE&f3q_zsEiu>Knl#~WwKiL#R$N>x zPr>_$B{b(!LV(hJ8j1-(2dzOsM-EctJx^PDOqwJ#@&~eI-nOOsc%z}EZ*H~0iCuB>$Q;mRF3=B zje>yXLF?Nb!Z&w*0P#iOVTNM|2GzU}M>8la64!C5y-=h*yc!G!1-Q7#4`NW_ibvV@}~dv5{BRKM$tOxR4@0Tuz9K2qK#Zw7@PUCp$ApmICqTbES` z^U3!N7m=>|km5-VMN}#f>AL@10r^#BO5pe7q?py@onwEde$ejq`Hx&of<#nCs#+BH ztJR=ZV_lQ)O?>$XXmyD|6xP-<%=~FgNuJVN=kJP*iy!jrH&rqsG`bRSzKr23zB7Kd` za0e1=W+H)D^#silGg6Onn~cwg7OA8OA0k)HpYP|X))6x*9jyr_ZNG)aY2d-o{#ZYC zzaM!-DjTKA#6Ogm%@5-DAjm>THKf4H`G4>ID*{r1ip4tDcaJ)Oq4s2<9-=KtH;mDv z89p~s?mqk6W#Vj1B*{YK!y2QHyC%;hkJMYniE2r&!roU zGdBb-+wu}!`an=@$>DXfm+_x)PXCVSqwp6`rCiETzy860FXOF}wRQ2q9NC9n#;*#G z3ailVDC5~CbB>A8*d{$W_VhlhICW9!0sn_n0W2C9r+)p4sHx!{7{pobXJcdgXy0ak zbmqQ45uROif62f%`0czaW?}eQE64VmTX(qA&F?Au%XT~U9|T-!QM*p3tF0@C11)e7 zZgVYp{0LTV|2?;+rX~!3>S4nUs*gs4qyb!09t?PC8)UjUKDd; zE*Ftpz{Td!)-h>mmxA%PI^oG(_0p=`8N@Tpmn6VO=M#pWCNUMKMtbhy;ht&8RXW&{ zvt%+ozE{q2vQFZx75!~y*7W>*q*+>B!R^!rk)L0?oBkX2F0co7Wps>9UUyZ8B%@-! zRBgjsVJdtlplom%kb?}k|tFz(ojOV)Y8cNk(5x@oFDaPp)x?2!f09RP1b9F63ciYspy`;y}lV~D{vOTB2;r3>z`w&`G z`B;6POw3d#(V+v+etj$qrFyz7;$EN{g{(CRnO%(REs(<}#8JOnTGAiP?WpR=<}yS) zuQBr+IhumRL`S!dXNkt-wVy2BUhJP&b$3@r) zEZEj36dAAtF}Xso6l?C3*?>^by%R}6!S0hf8%Oo35d>{9f%nQnd;zhmE3MjnAr#Ma z>Yo9ubauVrlA9T^8HlAe>!)%dwXF6t1LLxCaKzZmEM$G z#DkKgaZ#0oghVoadKB@@;j^eq6PxBUhpnUf*iILZ+cj+3b0;u$Y<<`&j_m;r+#iUj zu|%^tpke?23mH=~AFWqzrt-AnDc@oI@B07sO`HQQY@6?^)5$4lnmL*Ay;K@#K@?H! zOuOw^&=!rTk=NaS2CwCGW>;H+|4IEAJEHQRG|KZ=w)?(8GoF4Gk7Pxk+zj1)+-S#= zwJJr2re~+3piW6)H(suHUIiEae0uT!^29QSU9rp>=p9hcIqPiW9Wv+<2&v`2 zQQzPiYiu#e3$YD>5BUV&{|DDm@ngFDFUiq*o_D5bWyLK0aO<8i?%YyI((5BbP+XK0m;b}1Z*E2I66L-I>DplOJmFEEqw9Y>r{?P_TGQv~rMWwNPo4p? zzYy#K(>%>m@GxXL-mh=Mq@YQd^++#?M!k7NQ1U4KMcPSRvSc&iVeo%*nhlgy3y-Z+`A(TBhot>E> zqM%^^_2o%ONgji&zrO?tDX9XnQo&!6qC&bt{(GpZLG>E}4BY0sdh5P@%w6AHgX+E# ztXD)o>(&FIkEMnC;vVW7vKd3w>2!X;*lihlTCkgP4J?9f{r(j0ylU989a{!Ee z{h<4%CZXxeFJ3&--9i}J5nvP}K>UOn9ksGGGTb6T@`~TfyzVavL)be2;QGI@wVV_m z17E-;L-=#^)|XjZYc|WMmSK__W!S*=%+s7m)qli$iirS7fY$d*4XIbQ2|Nv=l`2 z-VLG~-tB(A=hu6D$MOC7=3tk#*IKjowa)8Y*LAMR`-fz@j3k8z)>Fk>M$A*;cfX-U zJRzCf{5WRr;^Wev$>r^wfSi`6PtO>0`!*8qH|Jm@R*7p@iD8dCK^Nq&pBdYy+cGLs zRBx0q1hgszWFy5+^d8N>Oiaw(^#0uQ@pjcrw!i*kxXO54*z(WfYOzjp?S27AK}&*8 zx?aJ%GLITX-3p6MmJjM3KS~x02vlx=;Za^-r=K`XK5~D7c=ct9JaXElthD*CI%lD} z_D(huyX@rk#EtY|<1VPF=0TnI{)|{6gX#kRb$W<%?N&TtpFSeeMU5GOVajbf`?&di zz&!%2qWe4v+Os>%ypkYQGY=)(|1DhQ%kUjg9S zWl`JWkT4U!`SV@FE4HroNzZZcr=`p4GTtphr!6+VU}@8HS^ zE}3aIxvWqbQb(MDQE4c^{O8~I+Hbx zH3>)DgVU?a*RP|YFI5c{09J{G46WyoiKkcp1}oAmFJ24kHOi|Z6;=sv^`={<`enw( z7}MR|4O%NUxriOX2eSGqa%5ltF3vnDN0mUVNjEx|_FOgVO`-F|!D3W{BE zHxq@=B(B~*(@JM7%34|!ShWhxFTbntpexbjDoQp`1P+}1;|hG)R_g?e(=;m>0fPre zu*4rOT!jPfaupkhwU38~{AAv>*qg7>a_uF^;AiWrX08*9qc$goDvynuU8;(8o?yA?L zN2?}V%gf7GP}h{`!zN;`UKicr);MZ+l;CnabDR)pNieUTyJtE|lv@DSDIa&<3q z9z2&MwWIrx`_EsOqF*dh($a@+3ek;tVL}*iH}71v-II+q8k$()lBNVOS@i?w!$_3W zs27>amk+5{lWO*k$`gy*!A~K58F1IpyUuljGu4^z>-xDTpCd zMEc3e$;BooYpSS(JA&s0+UdKrv{ouMXtWZ*DI;SdAS5L8Qkcy4{Om0B==iwx+`@S< zJ8@#-LC+a9t8Ibz0s;bVc0~-loEF#9Z7?7sQK;ix0Wh6crT#eVB(e7J#z4I`Joq8<4GecB(s30s?o; zqOpaAB!KtUgdC8zc+Abk6}-Vk+h=nhyib@$T!l>=8#B9m7U@s*=CN`%cpij)5XY_>D0v70gA==TQp;k6Bvs9zXM3wdz zegD4Xv-rMy*62y+K9VRFs$X?MWeC?AXMnnT?qk^voM0xE5w4l04K=xM5-_m znGC^EhZV)40!yR!4%doPhRyPi5dIH>QBRfNG{W-aa+{mY^@pA+C@WGPy!!{`qLDcF{i zQ0%~A%+b-42PG0J6{C>P&c^X)SN>kx4~9yvDJfagPlMs#o=$)u{)P@8cWCN0WlO~~ z{MFaDq)Bvj`)O*=&na@tI9zK;_+HX3E{>i~5YKs{fJ+Mc>b0aIe~m?Gdh%N;vnN4V z%40H?+2o1uhCijGC>Ae^AMxLIfNJHvdtX$s2Ai$rhuCSUY%G#)x{ovSC?{6mEb=Kb z3+$MW8?@U$(S4$@Be!w7!ZSz5pdzz_@|g=^zN~!|sU9(f(s)D;xF)8?X56AI89js5 z^!J-JFTpQwYdW{B#X>DX=#EC*7Z)NFy*CC1s+8kc> zhY*TTB(qBdJw3~HnyZga@bzR-W1(mSo(Q&x4As7-O@8~O+CTiJPovtII84}V+ ze=GSA{)Q^H$FZ#rA+49Klw9NG)n2ZaqgFBMFq$`5b+G9n8+4-38C7H_k#T#c>`qV| z9FBDB;raB-VeRK@QY<-wfS|@A0{iM5^EgKH?xibzy}V;`O3E4N*-W0w|?5V@VG93*6FZr(%u@~i_nXo`qK^!d22>T%S+(IpLY{}>AFqfWbe!Ahcq>EWY!*@n1~%8w*b6l z@u?oL+|QpG`uh_NN~FnxWT-3|Z|>Jqc4nd7l*-(r15~BBFq-)%X(03c-adB;1avfb z+Lr)zh&Mk-`lc8eV}uDX(5FF#N|pzGeTE zgyetx_@a7hJclu}v{cyh*NdP!6Q{NsLAqZ3MNS&!<6^cvcc`$txA%(2Qba`sihz(X ziew5UrX$N3Dmpp%8JIyb@evV)hlk_#H$fZlQzQN=ulgN|eNDq6l%Uo#1Lr#OuTjVp z`ZceY;ZSkRTpJu(c{dKSTQ_R?WP-#y&wQ>dz&*M;6Ip{~a6gpxhQ^&&DUGjd*v)q) zHl5{dGVOKUjn%bQ5Wv^;r){(+sr`QYI3S#u-M#N4eQ7p+=4XrjHfdO5MYF?wFos=w z)}`8-ZTN>7RdLl}gAn(3=&Gs;8RokE*jVFzeF5?C@GxW`F_s${k3J*W*%Lbp`Fim8 z?%lhiuirJ<7&tk{czT{?LB4Mt9pMtLk=vB&aNnjYswfW_df2q}S6#OKAKtyn^`T|i zPwQ4q#<^X2H%IJy{u!-u?NJy8tw<#fed2S#aMCdSBuAgU<-ui`@|HA}bG3QV2P45@ zbR+fVFJ4*nnQZORG2;^`Oldbq9ttt})*>r~*9t2B>0HE--6l%zbOP3;C3JdjsECAJ zUv!FnD+5bk%xXJ+Ps7ax#nh?1_+O2agR;=7c$BT#lXdrr-5Bdoj4%kBiQ1;{vg^!G zCfi3h{iVx(yFi@F{QTzO%pZABeW_IykWkpe&FofK@5Ok!dEPm0318CJ(_0#orEp;h zl5r@^&HdtpPK%;_89@s7b!Ur`Z%{m0+wM=uXfZT3B~8@e_E)KtNTW?*(chE58U`(V zc3O25_uGt1StCv9S3rnd$aCq^`_>TxJ9AslpFdBVnXmZcUDg{}d)`33-BiW!{4h<3 zk#$|;LGdRY!e8tAu?Y$EYb*P~vv2VsB-P;R>W_&RuNZ^6rJtboye8bPi|*34=I=~3 z^A2$XQd9CtuRYCQM*NDXqT7zIq=|)MsWXGCL^T$PsA;(*I&eQk992)Z=Hok)%gBd! zmEbtt=RO+!nltm~ji@j|KCs(GC zD9bqoi8>))yWdegc2+-{z!tmEnbQ+Y{-7N*QviEud}r`Pj2SxD?eQ=nDGe?vDoUn$ zVG0_$>Xr)>vphC-P70&+lt#j+P=k##=v8XUk#OEYy$Kr`jb zp37I|EwS$Utm_5?R##VF90hJqc?5~XS;MP;Pk=WF^Na+ea+SZ44pY;khW2giq&?7W zKTQEL3Ip3l{rClVm|rb+<_7BA70=s^98Z!PENlBM8VCa{o;Esb9DTMhiFI6-N1I0! zJx}IZ%1T4qq&MOZ93)B!fqhVb1MZ;q_o9vfrV|{ifnK5@} zkRcM76G=qRe1V}M#%^D6-`-x~jB+S^h1Nr@xmxShJ(WAnSBm+MvwBS{x8T5+Vzv(6j{Gwt z8t)42r70#V7p3plzd1|3d-pDqs#_BDLv{_|V{ikkZh0mpKKpCNcPA4fBZ(Fk7wy(Z z$|f2fuOHRb$wIfkf9^wG-jTPc<`c{%jwCOxqrUof|64tU_bR} z)*g|VpHbD+`mpUibG-NJ1wJ7aD-^bBLHcukVeF|CL-M(+1eFGz#Z!l!MlfrbjZ^Pr zd=fpfLh7mt1Bfs7^gDF2h;!X!5?+~+vX7W2DU!PEl;a>PsDAiCo(Mu|Q$O0?o{NH# zlGlBq}LQZu@2OBPp@OiqTr!ri;+Wk2w+haxz=(N@BEh#Vm(;8-cD2IwmFz>8Yt-e+O0*^;*gW z=uLoq)x3}ioE#m!!*@+Y6cw{54T@5-vj@!6wHH5c9mod%EgG7nWoC}c*Gvv5;VuAo z=DuE{;t60@>&cFNvSY93deK_%7bH`%fT>`RYiWl8(7~tma7yyJ)-!jBtJw>+%Z>5s zMecQ!1%`1@_px6iq1|AHu->3OIt2JQaH!L?%v+;_wN`e=*}yN+N}01{)qer zLRlV^IM0q%Ik1J)eEKvqQSUcNKxaS0y_0fpa5k-;_U!5Ti8D2de;5T8U+MxoalgN> zXikKT=tNpXu)U-eYvd!G6Tx!p@V#7|R(xNg)9YCozJzpzhS25#hEIuB`uuv#E+6o% z3=BV92t0gD`_#pNl+%z}mY1!a<&eLum%$@+(g{Tvcv^O>>(1XYaC5#r-OIADd+PE$ zzXaQqELsUU8Hxxjl;v-v>`<>!jg_2(HG z*N<%`A$biRt++MCBEv+V5@5a%KEn@bb?}I#M|EJi)>7N@lxhndFKg4l3gOo@+jV8GlD>WACl_+l73*|Vx_1g#+s#*{2A=)Q&UwX z(960NHQ$x2off{*bFq}^<=Yszy;NY~nDDPiNbaP(QJLNA+B}GX7fT`(kIivaL3_?% zx{l<(+Try)Dl$koR6&TuNN`?Ch$?k#6w3dqir#YnTU9gwR4*$>_T>SQm;IBatHJ); z{=d2;4e|f#Xm`p)M^BF-TjfPo*5qdRLpXSA+NN6{z56ofYytV~oSHR_G6(C_H{JO3 zJYoQDgmU`t5cEhn|C{O3nWsbf87UD_Y@qQ1KkB&Wvi)>4&KnhaG^@pWfjX~>&QS>Z znfv#!fiik{YKq3o%PSL!`8S^n$q@-V`){l191vzw$oCcm^BK#`Fk^!Ko49Bp;SYuL30^Mn077_ixBjy(zK zQrkR-0obi^cGtsgC@pvY{ZV}k>3WFzi3I_w)oEQSvVbA*< z@0@7UE8$V5&;OC;tumgkCOybqDH2K>8W4-JH(+On{TZKEHGvY zuXzJaMsdz4rSuoE)zG>=551PN^7i*g!;;jiV!_NT_%!1O3a7-xTHeF) z#?px7^P{ZZFsa&4oPvTBdp4P25R3^bLw8scHEwHa=2sOL4>EqY1pWO#&G^TlpgQ|> z{NM5Ls#7mFH#JL3)@W*0l8DwY`M|B*@^YHZ&CR-?J-!9sdIL=@6i{k|Zclco>J-v_v7^g*j+_O!Ct*8)f zYil#Guz0pJ-5lGCV-bMV2-tCm#U53b*)BT3f+|zm}#XM;ExbIu7cbXE{C~Vzm1@OY?Ef1J=%EslILUTiOS&Y1jiTYuF2xN4lK&?fA)zg_8Ndy^3V8$V zfM9TJ0su47+a8^HUF_T0u1HOX$$#k4&_735C5lgh<+84e#19^FqKQq2aXA&>6v`yB zP|4APIwb<54aq8C8|k(eiR~juD2+J0ncvVvcC9WFddeAqnDK-NooF_Lsuyq^r1U%f z`O`>ATKZREm4j1=^=lz>?iH=WjBirs&sXjhVSR`j_P#RFaU`zoasgqNN}vIxy^GHd z4`qpJ;1h+O@C3hls1nwQza-7&@9R&AG{B$j?L-}OPgnMQL9e|qS*!SddBeSmR(Or2RTeJlF6yT(fQJ>33I zG(~>pYJ>x{sEcJf0nc{s{1vGBMA+#y_zYFH40mkm+V|IiD4Qzutp)k7uCC?q4g#&lJ}Ad>lD!L*og|iY(4cQQc5c)ina%Y2yeH{= zJ1)?e=8mrJqBIM2`Gb0lA0@-sTS{{BDmkTE+i*n6n9H4xfIr;Pr#j9oAfIF+Bv-Yq ze&>AM@0__O7*(+2GRaBBKy+JOojhk432JDN92)gn4=`WczaCPbkU&+ALW7#6M?Zqm z3*FCcMU8C{j=rL1>4|J|-}&w!=-g04SN$u?eqL^A>9-dHj-3et6HSjEB|u}8AG8L% z_X?Q}Nw2lGwgLdeIFQs2*^R4QJ^9T%5<0>2hhs0xY{kZYrhji3nUB^m$C1o}2>sD5K!aVC?!`3=o2%RDF}V1_KHz7PQtN(Bp2O zNRibPF5T+w)rvIL?cXQG79%UEh}xl{ii^{NP~6_V7vJ%%S8w51ox99OyR8 zeS8)~HF!+m{y^Q>_^SUc_Bo5c-RLu)j+&LcAFB}fh=DO^BsUe7DS2{G$#o3P4?UOk zAyAY}3J=*n?(ilID<1hic1+`@wsHp<`A;&jvd&}_Ta^%mgNja62l#X_~N`SBzFJ%1v1>8RaxcOw$ZFz&53dn?W6BuI1p!B_C zvhf+IS!6UcosexSeOL}dY-}doO(-)x*SkFw6%Uhm$o zUKc%gjkr9HvcRVX=F`z5jYiKkV zX$%uOIz62cTq|)uTb~|mw=IeuU&Au6h6=t6Ay34PlZr9@vr_@0lJDC%wfFUv*qFy= zpOL85h>?NPJpRI+pqTCzi0mTyf2^B}wYIj;th2_Bj94VFerVY?5iE5{H4BWd^kFQ0 z`#56b5*YPP23Z_>jJtI?&ue6EOy`|(+XRjy)du8bF?hgxACIg zkK?FXA!Uc7R%+jPYVB#nh(1KdJ+ji&fqx(J_V&6W>#nkDssL^)fx2(Wm=fDYvRg=C zhxxUhRkjhgs*^)Wl$|A)2!M~tq0t>({HlSXWH=sdaen}|zL?{jTO*)kbi!!53@kT7 zYu;JBbQGhv(CTmn3i2R_CL z8Z29$={aqA)|XJVHVX(Z3sIGEEawFIys5N#8^Dn>mFa5*5obYhg?%4bdbQAw(bO0g zxaA*`Gj<*cYHyir|7btu1$Uru{)u2SjdE|FCGZLWAUCxYn}}-l-k3mol76R575cmpba9&Fa720PgGKmjydH98=FI)Jhy%W90D%@xh7XJF+i4 zdBz--WzM=}fHbO(yvqAxWeP&$_O^=0%z^UqQTX>?i{G7+V?a&?=Bu=sZdjIg*&q5EOa;m}PU8pXBZO~e&bnQGC9~QE#IIMe_1ZB77QYiy79T;Mn z_%K+SdaIto%%hr!$^Sh3lDmoVk=jht?N7a;S?%^fd_MXzVNxLfP&j*qNd20K6m>dh pY+f%^?cZN)*yB|H@0rxw3%ELw%Q}yFtpfmk?yBqEE?2e1{0}W2EPVg~ delta 8513 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 diff --git a/icons/obj/clothing/ties.dmi b/icons/obj/clothing/ties.dmi index ac6a4e01774479d6ba72891ded15d621905377ad..357c32e5e5884289d3f583dea9164d3439934122 100644 GIT binary patch literal 11017 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 diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index fa842ae5076124c1758980588dc748cd7d8509b9..19084b2ee283853368a0254b97e953ffc3ab9ca2 100644 GIT binary patch delta 23324 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≻RPj&X5uag6xr5~le&Z74955D3I( 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 diff --git a/icons/obj/custom_items.dmi b/icons/obj/custom_items.dmi index 0e1caba2443201db4411aaa424a9191b3f2226f7..f69c02c71d81f969dcf8fe3e3417e919a337aaf8 100644 GIT binary patch literal 59311 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 literal 65819 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 V@18MHSK(kkMOjrDh?Gg-{{w+A3i|*6 delta 11086 zcmY*;Wl$YWv@Nb71a~+{Ah^3ra0wC!1h?RB!3KACcXubah2ZY)dawkS1MhtI{&??A zO;vYw_3U1|yJySV6UhiE;Rtaw`1GC{-&~~3oK2i89b7E!?Ok|4Dd_C}{*AJ!V1AdHkJu3y6z-Jg2Ft!QG) z3fSWCyL`tG>0tRXhQvZtmR1m|S~&l2;FDbr2DbPtk$P5fgfv6M`7+XI+n;?;Q}$5) zhO{Bl75LCR92DM?xz51Wga}&4v}++N!ocrxUbn(VE<111sIW!0QH0BYI)SvqoE)~v z{!FZxo6RR#lkG)}>$qphn4}JLMvh#2h4~_Mn`8TW~XteZ&ijZ+EQiE=63SQadff)sPB2 zk&Le5SM4?L(zaimN}N>oed*01&r{=sN;Y5=wp1Md2y;OBjYX4%5yATSQr2N3GbwFX?aXUzHTBv z6+=uj=U-(H0}^m@k=y36a=4OPdBGE&jqMycG>?thRAxwmslN*?XD*%O>p^W35K*9&)qFl{D4>??hCjQm*qv{$hc&1mYFJ{GgLA8 zCk7(Z>Bt*yd}Pipa??i!Em`sz?!*MZ6{zI&ry-Uh0FoajmGul{H_LvgR42Q@0R?iO z-Tu75m+1nTOF2hn^t|G?(VgtyT`F6|{@iq?#(9aaR>r7}iK}IfWnMm*1~j&5=e}gO zu9`+m=TQmJu*RTCa%J8m$&e^=TqVxz386+^42|%ih+>G(Y_(s}a55PVG86W&Wca4t ziMcxd2CS}{RP>0$yjTner9%9>2!-F%rxKw5NkmmE62X}H09K+W$fJnDep*+>JfpWY zl4zg^J0FQQ`F-~6b#pfqfZxMS%vYI<3C6)|85Z}~W)+bYbff!1jl*ZvK5yPtD*`-g z_&hzC-HMK7!VHes9}&aAfMDdL#5Fv!&a!`cG&&=GTLHYhNeJA9R=Hq|kzxB6i$@D9=7P4QHND zL$3-)N$IF)yccOR6jR$^rg!v0ITmmGvBh*EimYdAYKX$pyy&ruI`$B9@-ye2Oc}DO zw$SX;5CHV;9%Yw`8Vzul#^FE3WwQ$R8Dxr-c-$%4gwPlSMsxJV1&{{R)Hsav>A7zV z;;0Dq#rob*Q(f;?=`=IEI2B?A@(XE&nG$y~JHCzC<$~jK&YC_gZMrZ<6oBNgwRRNc`y?sS5Rdo+<3EI z!Hg=q$uo+rpb|#~gqz?0x&C!puOcTn0sA7UZY!pKjg`Oi_;V=SZ(K5y#x(6XEYvuN zHo5>9?TzlS5|Cc}!bCjei+rk}HbIM9rp1OQj{wG_D%8OUP8b1U9l6QM5L)eI)<{`JE^$dT_WV^OY*r}3g#fZ%z>)z7VO`Kx&i%1?`&gL*jK}0c+<|Se)N%L6$#zzQh>3S zl$eWh#vGv^C%IbL<;aBQa|4#s^YFTX)G)qrhUrl5X`h|On;MhXJ5tL{l{!%|XJ-mZ z`s68*e|wkQaawHIhIKsUo+&OQ5uyk@@ML6UqyjEs(ImY8idlWa?>D_L{aQCYBQJd} zy@dV^Q^OEe(JJ!5r?@1C>_`ufP691f+V+;~7zEzSc1=6R138TA#8 ze6m4&u^5938Ef`sd*``KyNKI#S}#~I&t{oTwm~?CgLP)-7FDO@9M~oG@+8+-J1PlW zrhGM;hwx%4G!1G_FzJfwVejASha9nLSWi$9Psth(29)4K`o)L7YG@#cDFe#yVQg(} zhf?;IRj8KFEIr_|CC6p<9naHu+J5 zvg@84yjZ>0kIss)U6N_H3#?k#ewGlA&ucZinKIQyDuNuVHf21>AFD7y`fwFZ`7X@a zn0Nwts2yF6_Ew{3pQ^#hSk6W;jEmKVd#m*uZy;5CO-*_GBz$`2(%OTBNA0sMXR@w7 z2gIjC|8uL;o({J{4Q&3`ost2f&6<+e)oAqMYH(%JNz5a)qD*54kkL#+P*Gu^qfP%c zC554sbJpd|=-5=(iV{=Nhs;*skFAJb1Fk`z65zXaJJw)O+@Zr85|W0rT_3yHRMl`x zV8hIymg94`fjb*+Bwyz}MX*!;qR;{XP4Tu#npm3HHDi!I5g>8;gRp%6LCArjb=C4RVq*6vL# z&_pa?W}oe1FlrQBCeYiG?XdMP+>uweIXo?Hr!l9(R)h**s;Wx*#QarcwGj`7b2Tj% zC6Jcpk0%1|G!=W__wSxAw-8+d%Pri{rEQS?X?qz*O& z?Bh1|(*R{U?9+D$C=dPd$(x({o%*cW+S&+#;;Uehq#VQ(0Z0}xROlWAi*xjSY8 zQ=+J~fbgbcGz&R35@|wa2n&2)>&Mr>=8Pn-J_6n8v`qP$xOfuNdfa5DlVdP>_4Qb( zV|Xzx?+m#@Y^6+T6noDR|3$*-NY%v(C!J`H&$$?*b|v()CFSvyBpNr3 z-dq+w`NrJR5->EH%&6V%%^!)+T+r5*zPh@KReMi*YpC2P);fwLb&1l8FuinkXg@Tw zbo+n^=YOXgUoLC4?xK|P5x4D2fKj2A%j%R=ar-k&Fk{5!-xS~MN?(L?iZh=x zt034-b$s}zRl;Dk%9x8!Q)Vd-!8YnIITcip9EZrr5Fp7*Uf}shd)=W@V70uw{J~q~ za3WL2$cWOel_YX7U=W-99GhNxGA&om;Cb1XFt!y5A)ESxCm5_3*sl@ohk_8WPo==& zYmiO#J%T0?6+70C=7%Uwaz)KRQSP~z_O7|z+q;HI%^7YUiZVMT>JCeR!eAnaD!$}alSGU(;|CUt`z ziRS9*HJ_@5hdmtKpUbUk3iwpIP-Mkp0!y+^f`H?XglI-_A5B;MW-NX)h03ZZ*a25J z6DsnezNZGsaiV_AbCZ)v{$3)iNGnv=B5xp?U=ZS+7p74|&>XjZYiy~#uagErLLBVR zhPho^QBPd$graB6wl3|Jl^3=F!KW%}If-L%CF=(iWsz>%90M1_w zM97Lt^a0v_fCBmJ@NY|0&tdjob+Z;@rIw!e?7K@Gls^jLg;I%^ftmsViJ3td!_i<( z#tUBGvR_*d`7Cq=n@?~)j|z_@@_kW6ikUposRl2Ne8>nHSe4fc?UEunn;jSK&FKk% zm<%CSpNH(SAA%qppUnyM1x9S9ie?Co6|9$xDy-dS78hjQfx^uREJaFV*KQq`7pyL9 znQ-jt(o)pv(JK^XWo#Z$clQwmv?6_~Hz?{R&Q2lXOF3r>VlLPbhjSs6L%+i)s-ErSVYaj7e*|z(Pq@> z;(5x5fN;X|U!QTMK47Af#El0yKeV>m>OOn8bF6V%-XK2xTSxCX5_1*A5GLRBx%4?F zx#}{`TH@bf?~jFBAlhsjeB!Rr^16|SA6zY2IKl!y&;_vLlu63Tg>&>Yag`ta?7#No zYe{18*oN#1e$#w0n^0*tuz%=C$mEDk7*jTR0{*!<&ZncGaqeDA(WofRyIjc1X7mFY5EPUY3WY z6S!i`a!glIhoHqS;8}NR-t$j?H&F4^?~t`z`;j+?TuxgjvoUd8e9@*0T<&FLp?BO1 zBnLBU&R*UdUpVj86ABB>Oe6+H+)S>#I~R2|^|8 zIL8ArTmWr!he5|gz!|3DDR`(Rs0oi^JC~(BY*q4Wkf(S1@sxH;QW&hj+pNM@U=B6+ zT4DDTCh<}4!_(8L3e8RTt1<%QG2wT`Q_5UoK3OYldDlOa3=RWYm@H#M~lX^~GgPX)!ovLZSFo3Xqtt-Ynm;UpT z^dg1rIN0b?S`lMj6y`|I!ETFlZc zC|g@1RVu;kJsOqTf?3jZU)~J{$@F_m`b;2Sw8=bfwQeb@e;3rMh43iJWYn#Y>E11j z@tLd;!EiM~@(Qh7Orf)}4B zY0v6^hc3U;Hgst*+Is$V)CnUa?ebgC9iz~1ypP0~kreF?zuogsw_52SoUwz=z;c%8 z{o`BzB_@@eTKCMSYjFiFiRXwlKbtz`y>7bNql9E@w$(EY0BFyATXtaFxYnYX_mi@4 zZM7=l&I09Y_z}Hdn`3WjYo4{Q@U|`Toh+{agJW>}tr|h!t4U9;r`J~AlR=6~ijA9A zxh(q^kAI5hIK8j=-r-PaMbHC0T9rFZaClt$yTd;8{kdf0JYT*Gu`2@y6u2Cp1^|zz zxyhw(8tL=EogxA}0<~bzw=uv}rmB@TI!wRm&Y}dgvN~`(WUM%E5vaNPXC4=-v+#~v zGxZ1mixzLcgoNAC>(I^J(>4O^pGee!Iq zG{<5VVGPCemD0+^!PIAp2wJc(TiiXU0NYpV)beGEk>e5sUgK?lvUy#WV+SV(Gi1bB z0OlpZN<-sZ4|yUsLJ_kAw7-i3FuI^AMsg%;ciM!CE$sHnn`g}U_;}wrG`Ib=VMqEN z*{(HnjI~Gi=i@;GvY>U%`hnZt3UHS4(c$h6*~ZnunvOfy$3~F-FJDv0Ux5wL zmYn=ZUzeND){tX2n(v|+$Ti>kw)E-&C28otz#ydgc|s!!I~gV-4b$%kvn#mZn2pRY z?&o?1PNMUXrWaR(fUcfQ*4%Et zm_rstX~7OK=5`}P)AK@f)K`o&%pW<4U|;g?_kw`_J9oi0J99@5k%o%fQG-_w!Gj;7 z9o?)ePgnz3KcjdkGJTmFFG?x(0nNjx+HwQj%=C0Q85!jC^z`|qr9B5eq>0d>!q+xF z9W*I)W!zxZ%$Wi)oxIdn0C?eIJ$y0)w=`Of*f88JmRU*oiSIeyuA_&KOa1ct(Uy^b zgH*eu@clccel0=dpoEo`RsVBDhqsCZRS>K;$MwmkEeJ6#5Gg_>Gu?rD_n`avf~4VP zH1w*U$TmYKf7(^ z)c1YQPpTJJdU7_3%uBca4dpNiyp$`>pC`GFLl?GC9rN&g-P~o9ao@4g9KgL}r+6P4xVY$mFlw&8qnkt{B7AdL z)?;O6Fdb`yQdWIwdL5?xO#ynzkMn^}i%_d46RF5}Hlr*_H8!34(M1D?Bd}nM?rn@9 zVVCdLn=hcy+_dBX33VeSRRjN>jtNAy9 zy!f^Ep4{g~6{f{zr5{gAH$UBtOX1woOq)_YeesYwV8M#yMImVi$*40#+*T5sqj;N_ z_)4JN5=~>T#nW;B(a{tUW%%?xGKSfBfU(1-@HW6h&iGzNlxhr~g=YJ<;xLG~eIPzo zcD}F%{B2{1*B&hsvzZEnMRh_DO3j4JPKmXbFO6odw71CG?P;ptONfSOc+7frJb6`o z_fdqK<@d}Jd*OTHQ^|)16Cx1vtx0~$tD#_xtd{kXBeuwE<&i!g4KY<%>@SS4sSm!9 zs5pQ#+ToWt1F^u$kdwLQO4zo`?&lCGu^ZVwsae+Zh8`ho)R|5!HX5`7o)I2KRLUR5 zawC1j4TcwA*;+DXIg6-`kRlC)H;n0e7(L$~nSaXB9zX2J#uXf(Puoq0cl|k7SCSW2 z_0E+wAwFOZ%6DQtsx!jD?c6B%_&^Lt2hRaF%tarm*ZDBNheJI_Hc)1Vgueq(UgCsQ zCM=93XkY7H1H<0G!dvP;15jPx`A=`ll_rY>#lG!LC$^IUQU+stxgItleN!SWL^x5( z>umy!l(R<<<+Yo!`@@Fjz9Rm4Za9V;jzeTNt4*kU_^>lpxQanxJ7Ks5R<>ePApkWt zgfJGCo<6(0^ZN=Y+k$@v67!jrTu8=?-|3UA%Bl{17X+`kax7NxIKQilBr=0DK_LHy zr1kG(w5M2BO}7`(j!nC(K7KT0?vcF-3v2e&5 zmCG1XR1{btneUq;z63^$ELjdGpa9rkB;xE&IRsV|-PwdeatXLFnRwV6@n;+Qs3suDt^NIIz`oQtTN7EDjdFm*psxHV{M=@74XM&Go7mIuTo9ty8*- z#KB8+88IC}Prlj*8<_VU@AvL4pG_W~z_k<{@3a(J-0u=Tdpy|EU>AH;5dmI@4KaqL zBrpcpvu@x>V%9Z0pYj-wILg2O)IK?7kL$3&kEST&#hhmTp?dN+%rI$6C-zF`#xBEIUec>#D|6YfyO*;3uT=`c`kwK`$SA9zCSSJQM41)~16Mw^OKB zFcF%;4Z>one|Gx1);67c^+Z=-Y>$!mnbL{|(qOsVUOvF^9S{#5BEFvo56FRZ&1tyZ zk-Y9+Fjuro*?o4H+<>k(wA2(IccF7a&Ys5!dyj{m(2p0pqaJ+Ri4N5qW$Zqa3z;wCA6dcVB;n4Ast%A@POEk1w^Y8X} zT?vV7 z?B9w0;h>l~A>g(aqbk(1;aST&A+!^jkAN~gh50Ry-#9lYZ67YZOmuNB%_dwzX{jBc zK{<7a9;W+#;-!coDq$RqW)&{0FlHrlavc5d^dmhui^KrA=Is71cVU6Lq><#emqh=g z)dfEbBd(iifWkVyoMo^SJ}5=Rb)EI`G1W(<8C`6ebh2$S#|O$?CDdllJUTzHAJY{!cJ#;Fx{)6GJugIgBm@VqI2Ujo7cA55Mj+mOWzE zA7|7uFd^ge^f@wo7(qSuYm0BV>zZp95m{dP3?I2CP|^nSR&Vz&eT+W}Z=tt?SM%9h zXd<`hw^xK!U~M=9F;i!&;QiW7?NKViaO4zq=bxL6!Fax1TYbDrbmyAES5)f$I|1;# z-bS}3HI@)$U%BdGM0@XLzGdA=be86LX?i+>FLC`a-Oq^{&KEHxFBQHmt@o=>31`kn znwrZ448Y4q{d_4ok}PQ2E(cSb2^xznB|MgjAlJP)+{UV8a=!8VMV!K;7MtvLe`zPv zd{KjGoeEh%mX@KDZba?8^Kj>8>FmBTO~h{`OQcg!x9ywXJ4n@6vbAvG7p<(G&~Eo$ zsah`}`c{2{0KxXrBPTxn&i`=lo+aJLenbVZd@05-__a-CxviQE$wleHh!X=%=YDN@ z4OkLc<>o_O9ilkb!E~^U$(k<9`h_7|A(yY$vU}}@&1P!k=ylAIDYiGWC9~0NDyW>_ z++i-uB?bBtIM&lrg8U8k>Y?O^z|-4>6nk3yJLxleH$|kutGV2oxr>x(fxJ>!Y!n0l zCs1lanrW8@lq@qof9oN~$?z?ZnJ}7m)=TkWDm}4^Cp)e&MZY&Rw{w7Ni0etvtBzRx zal4U#-@06&M*uNk=fz{geSzeV3Q8WS2mPX(ewYMaMCogLC05eW3U***illRBQT{|%!&q9H)ZC^oq`21dqPyFf9S8`2rL zxGL1q{~2zZc0*JBUyce6I|EtDfrFCj1Dr5DGxI_RD)c+LAlUTZ>kdn{qh|&D-kZzA zwXf$}LGe&jaD7GMgmH3;bz@^WvG?0xd`^}BRx)&=v=XBQ*f~|`_eX01GB3}FO(iVo zbbk=bf3lidT2b*g%dAKF@B&9UYlaLbkoVeRz1-@b%@<`*F-*u?gOH zyZAXdE12k0AE+&z-*jAVNeU`N4Z0@>+kJt2*~$@-k=k{J;-+1+xlki`8qw^VT-{^H za15T%5cTyJiz5vJV8a6s56z3Ks-i+dkUTv-uO7W|ad919ACDSMhTb2XHBK##2kkSD zQc^QVYi$DL_QMlVS-QTjvt6Sb1|2fZJW}JxY!)I}%5>=XOnFUB8aOy=zBI=Sg6?ka zxG0U zxhjKIJaXd_BxQVv#51ydM1CqO>o2$Ar==|SFBVIaK}p#i`*+{KjCYIcwZYy0X_=OU z^!xIDs57{8#54mtI8NsDJG=Sl%M&{KF<|4K7=K_0sUb!gF*VySuMpl~r&y}2U*hek z{JMaI;?jBmpOlmm!-qWj)5jRWo|JXS?S|Sq)(M*N1%x@=9@!SzH+Rx#i{Il^?m)A!jH~KlZ688-2AfcpC9kY#H;vpahy4_7$w$ zv{n!x<<_%dR2&ZJZk=f;xqUeJ^~2~dYKvw5rIf09SM-t+rSBlS zvX@ag>fUS0=5X4yJX4b`L%a}&3qWDg7ZS&X{SCXgfmKr<5Oq_e#c5zNVIxFpEw@C# zXVo9?_IXB1B_Sq8$~ADA`P}(@(UGuqsWs0*i7EQRhJk_6dADi}tq8Jv-Pvf?>Q6A% zb{2%_Dsqq!d6;45O&?(_`8))|!u5grzI<_o5TVcgvQuZzT(aEei&0<)wn;ta1H)Qc za>dQ1H}iJF^p|E<3M>U1{+DhLd1-_GiBZX_7_z>;BG96oqyVJ86FINCn)z=^w%=eR zLG1MD>1jb_r2<~pHw_JqchX`|4Ato@V)||(TR9sl!xU7)Wz&@i{7|ouk6DR|0AFFn ztLf@&e}HJCf3y#@D-8*}dC707es!mrK@!8n!LF{ZMjc_)3Fj~V0ApYe5u;?N;`^!w z<3|34?g>k&Y3IYCB5v6sQ=b%wP1)KW&Mw|Z60XIo=chPGku3;b8ghvWJwCF+`Hp4|NFp32s^`y&B09# zqBA~%{hUht2@4i#48uRDV4(Q+P$Z6USx7D$46nZ*~LX#Soz;U4-j9F zjUu#eR#o59h<5}b(>7~GiCNQec$n1$|HA*U+hxDn~sKgGzwBQ3fdA~Q* zcuIwN;R1?91F<}m4ot)apNXNNlW|ohHer=?Qe3}fDQn(IfZc1ny5tGEbNwoFMl+=V z1kSU_utXn$M%VPoKY^DGSvDwU5?_gqIuaBGjZ_FRp;u`K3z^VT0-9b^VI@Fq+5$$O z1_$YY9Q)dcu8!;_vsQ!G1Y~}n>|niHdp`|mVh24D*hngkC&#OaQ|7U6xF{Ia?PrxpZn#O==3P*(DLFWo^4sOOK-@gp#7n=-lv}pevak6es3q z^}h;ZMD1*G+EM*i+g=#-=bj@2W<$1;hlHk~-HKKtXh8Y<()_rjmX{z?xZGZo;(~vZ zr+N+Q>S$RViw&s`sp#l_{6_R(STePU&IQdis>?NIl-1gaC(s1=ikho09@{I!t$r3T zE_9cvg;wBE3ZV)oh)ZyT`fZ|$N=l?Tt3!AQN~bdZoSj%Q2|45Y0Q$i>-7w$BZk3h( zbG>40Jf>YFps-vkEj(Yjk|CUe?m_5nFIuyv`8eV4+`~o*odZgHP#o>pQFg5$7TxRH zR-JvfA`45DDU9ePjn>EYc5ILTpD05(5EaPri(d8X`Qea6>X4GjvufSwx4CK$#jcw> z_uZ3Q)vw=+0r%_wmIV>wVL?41iG8Q4=gZ%rWS{4|9jCTqFnF)mAO38!E7R+;ORKRx zji}`0;i*%@w(|3PhBORXn#?HXsqw5}=Vq&r|0$oLQh(LdJl#MN&+7blNHPkxf5q^M zz;M<5x zJ?Ojs-}|laUH7|d-I=uxvu4gYzu(?x@BKXc*<`=LT93erV*_P;we;K-tlcbKUpTwJ zaC!v*-k%avTVs~QZ-fo)Q;zf}7JdNcD#DuzeSd7W_wy9aKE27yFjM{+cWvVgo=i&8 z)jXbbYoj3e(lNvc0w33Q6dGlNS0aTira?z59ix%o+vpUtr@K+~2OhRPUF{eye|hv#2HS_#?H_@Z99 zlnm8O)M3t9Xm#jU7`d}e)_QaOE+`Sr$IS=qj-UJq`}CX^M*{1M$VwFEe-3hA9HYxm zjTz%JrRe$nHXo;;oWJ@cwepO-XB*8ZqPM;Tc}y1rt8^tZ52(oOUU%L}H6nbhG3?E4j%BiW@l?>6!Jx><((`SRHO=JR7t-Y*eMp^sLEvrFTsD+;n5zq^w= zr1d3`s0-dt13!D8Qk7IoJ}KyJ+@c zb@El7=T3UB^k=L2&L=S^8?hNOGT+}~C!{`+$$#4+(e~MLqht5p7~>e_ZfU+0er4!G z!L_I9?$KNc=C-PndW-RjeM>}9W1Td#Tu}mof4pfK8Ri8g?$?-u?sj(Ve}-GaMsh!& z+Ge+`pK)+gZgEOcP^cBDf6QdOsV7q&i1`7BGLAR1W|X{uu`~V`_Q^X*0AF;dX zyEPYPS^Vx0vZb>ZfyK?xd%W=#6_#iWS$Ds*>fbni8~@JGJ|%(B+gZ8z{Tt5OE|bf2 zg=wV^FAI(D)^<&seR!D@Wxr-ksgvCrN@^gPbwX>f6hyV+D{=+ii`V4HVLzfh)@1T% z>r!V@2yo3-odo(qUWEHuFxxth4ozyjP~zz%ULe5SqYD%H74wRIl1jA;>SB0IaBMs8Ra?@90&5hvM6J6|z4TpZL%)AU=Zg@yWN@8f!yoved5Kq15 zz~qAu8Hj_mh02#S&919T+fx;Ixw*N2Ha1$%P_E1<=e4^vs86wYOeMt0=qtGB0|o+!Ob1F4 zHRCr(vX(T{HKL=l#tL?J6rSSagJPqY-#?&!#RPA9#^6cCUd_=K!`K3M(DKgjOik2PUYY%gJs_j08D9!|>iquEbX0ac z)C=J6+jvhKHpf0hA8-=VfrHs@?YC=;_$T|>pN3>;7wBeRjBynjG}6)V8v#H@8%&r- zd9o?HkBlyi(c3Q0_9bOirD*+Bw!j79E^EiL}al`D&tGZ z9L7Y((er)Amn{uDog(@9`7*Y)9MTsn6z1vA)zt$(exzPJsa&(A0(W4roQ_eo>0v)Q zyYm8_WbhA7UGh1J7vQIciT2H)FrCu!_VvM=ua67WHAw2{Xtr>t1mk~(UWD_TbUX$4 zURoTX)Tn`huV_CGRXAJVF2a8?wex7vq`5iib$427YNmcV$w`rcxO64X=TpR5VX3LS zJl4GbkqXe#8iEI60FPstqH7x7R>C%c2oc$P9jy^)39ya8NKcsdCxEoXik+TmrVP%| z^Nb0&{FZmF>$$T;JU-rFP!!g_i2o8+Rb)_vdlsqDP$-DM{xjxjz+rbq#@w8!hzNmK zVN`lLQx@C?r@4kanb>6!ofJblTkBm`I_Mxul&JmU1sB+(hVnkyo7TOyE%t${B zP-W|UgF8z+fBrlO@;A-Lg-TDyFc@-nR8`oi+(x8)t_TP%)M{F!RQ4yD#VV=?Dx@yRG0{W-I+rBl&Y2g@D5$FLagT%=zlir0kLsG9KOHlU)s^*W||L}4*TkT8Kt8xHu4SsrXXS@3K)oI+SY9Z3-`SbTT z`X?Q1vX;xd=N%-r?%3!j_o~}hQXDO}Ph$Y=!awfb6-*mk!aF>3`H4nZ{E`#b3jdR` zP0LuAdB&li$lXu&5bu4VQfE=;#PUk7FzZ?Ea*Q>`mYb`VbP0%9W_DZQ041+TaIwgM zvw1(TWJn@=B*OaVM~uMXy`_1-y+@{|3tD+ZKu>?af~hI9kg)LUkKkc1hhCHagMgFM zne%

|s2t7`f!Jy1IH(3fz1Dn5h-7J2o5n;#ObG3TB`h@F6kfEg~4xh*G3^XRg}m z7r^;3pg2E2BAnk4Ul4H*+I~!h;lat0D+0Wz$hI2@xHm&Z(#z& zMwc3TN$Fk`K#R4Ae99XAi^!WLx-Ux}udjE%Plo&1`g=Shf%a~KEZLs!yhV&_G7Eyi ztWA;D**e6ySVI!Qn3@X&YMt|qe!Xg_n$s%*VJ+PwAkI`>aHENjk58}M`yK-+-XRg8 z*^?_mzalZXg)PTn_Z97n8ukFzTko97AG)}@bEsnj^DMo& z+HG2gen22eAVG7u&oS?hDT&DhP>Ivg0MWnChB~Qk?yP#u+^KeoB82&^J>B-+;@cZd zube7vC6*CerPnxHQZ3$`Drz7SeJ082avMK&H(yYv=Zfa^a|SaFp`R#KJK zu`PYLL_#l$pBRF6kyF9Q{P80JvBJ^J%qwq^U%aNQTL=KhXJ^?(MFX}E6O}?wV@P@R z8)#`BJ}hh0#K@#LoA+Wq-CH0_RKk(>5P|7;J+^NqPWEnL*&{8D##?$5PmZ7F4IaB9Jwp7m zD4XGcvxMW5@alc=WE`Z3sen@X{J0?vUY=@xz|*hI&G$)_esKM(`Po|vZ~p;0^XcLd zfW~+Ktc}W9pW}FP>VgXoE7YB~++&hSDbhxj< zi|{h?SVGUL2QuVQ?46!nMTNZ^KY^+RhWv=-M#kWJ?1_9|Z*S0)L;8>Xg(^q-jQIFv zVPc>5FcKrEst$2uw9F(pZ%>wS;vddt>nFQB^U1nwZm?t)G>iq77>R>Q}|QTmJV&$T8F& zh8S}L=VBwrX-eT|q?71f?*?*n98gWrgkoJFASa@g^8;#CU ziev`IxvT<{#dHD^l_FW|`C90e(eBdVXpjgq&{AgE?R|PVS!UTYIM`)1s-8%E0VT}a z?MU&Xa*r*YSL=hHC5hw!r+}Ox2>@XF`cy$yi#iPF_Mbm8%F2<$DfLA~eBX)Hd6DIy z8Bu3Y9FYxY+Rj_{6@cF4|-x-Vg$q+c6&dozGMWBPTbpUQ2$nhOCk?YQu(97Cu=q$3x9O-}ZV zkB#j^$lmpqg2TIo-t4}psO#25$-4IUx2+_+W-lBZK9#v8^MS)a#A3!x3uNe|W~y=3 z+qQDmh9Z7?!4%8GPw90uUardNbA3F<2Eg z%-V9bZjoc8yV!529zU_dnOq8npNpkrxnjPu3>6> zZ)1bNpCzreCGv4i#3+b__?#>l`IZXxeja&E_O@efZwHXOk5?G_oU+KdbX#V?*SGbb z2Gq`hH4R0TRKwQo))k?|!Qa2zd+VHEwR2;*;0P|SKZ9_;3`Pgx=bGjNfMNirj1vLH z#Ko>D6!T>L{+_nQ7ulCw#0T-2Q$re07!iWOII?|Tz%OxX88%!kE?63XA~8JWG#_D1mI35h4Gk$!zcEIwT=}Zhj`d1ud3>!WlHAt!%raidzHmJo=l6v4Qv_w z;K|X#zq^Wnt-S^*X#cMK2Ile}z??ZyQUM+UkjwrmF@C2;fl(@igR0J;aX z%&hGH=A@n+X$*^iveo*9MIR>k`8}gsj5w6NaU1}XG=^UQa!VhL6#0gPZqrc-V&KSh z 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 diff --git a/icons/obj/kitchen.dmi b/icons/obj/kitchen.dmi index 7c1bce89fb41762b818ba6dd49c1534fbd0a780d..6d39c35541ecd476a41c2098b54e75461a2a8c78 100644 GIT binary patch literal 13154 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­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

<`s>#p42VH0rLzk2X1bd< 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 diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index 8154a2b9a2..64dc9e9cee 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -1778,11 +1778,11 @@ "Ij" = (/obj/structure/toilet{pixel_y = 8},/turf/unsimulated/floor{icon_state = "engine"},/area/wizard_station) "Ik" = (/turf/unsimulated/floor{icon_state = "engine"},/area/wizard_station) "Il" = (/obj/structure/mirror{pixel_y = 28},/turf/unsimulated/floor{icon_state = "engine"},/area/wizard_station) -"Im" = (/obj/structure/mineral_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Im" = (/obj/structure/simple_door/iron,/turf/unsimulated/floor{icon_state = "engine"},/area/wizard_station) "In" = (/turf/unsimulated/floor{dir = 8; icon_state = "carpetside"},/area/wizard_station) "Io" = (/obj/effect/landmark/start{name = "wizard"},/turf/unsimulated/floor{dir = 2; icon_state = "carpetsymbol"},/area/wizard_station) "Ip" = (/turf/unsimulated/floor{dir = 4; icon_state = "carpetside"},/area/wizard_station) -"Iq" = (/obj/structure/mineral_door/iron,/turf/unsimulated/floor{icon_state = "engine"},/area/wizard_station) +"Iq" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "Ir" = (/obj/machinery/shower{icon_state = "shower"; dir = 8},/turf/unsimulated/floor{icon_state = "engine"},/area/wizard_station) "Is" = (/obj/structure/bookcase{name = "bookcase (Tactics)"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "It" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/closet/coffin,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) @@ -1798,7 +1798,7 @@ "ID" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "IE" = (/obj/structure/bookcase,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "IF" = (/obj/machinery/vending/magivend,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"IG" = (/obj/structure/mineral_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) +"IG" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "IH" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "II" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) "IJ" = (/obj/structure/table/reinforced,/obj/item/weapon/tray{pixel_y = 5},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) @@ -2391,7 +2391,7 @@ aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYHYHYHYHYHYHYHYHYHYHYHYHYHZHYHYHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIaIbIcIdIeIfHYIgIhIiHYIjIkIlHYHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM -aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcIcIcIcIcIcImInIoIpIqIkIkIrHYHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM +aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcIcIcIcIcIcIqInIoIpImIkIkIrHYHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIsIsIcIcIcItHYIuIvIwHYHYHYHYHYHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcIcIcIcIcIxHYIyIyIzHYIAIBICIDHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIEIEIcIcIcIFHYIyIyIyIGIyIyIyIHHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM From be53fafa96197b0a8e891b333e0fcaa3b03cac43 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Sat, 16 May 2015 16:11:08 +0300 Subject: [PATCH 135/199] Adds chemistry update changelog --- html/changelogs/Kelenius-ofChemAndChangelogs.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 html/changelogs/Kelenius-ofChemAndChangelogs.yml diff --git a/html/changelogs/Kelenius-ofChemAndChangelogs.yml b/html/changelogs/Kelenius-ofChemAndChangelogs.yml new file mode 100644 index 0000000000..935eff9248 --- /dev/null +++ b/html/changelogs/Kelenius-ofChemAndChangelogs.yml @@ -0,0 +1,12 @@ +author: Kelenius +delete-after: True + +changes: + - tweak: "There has been a big update to the reagent system. A full-ish changelog can be found here: http://pastebin.com/imHXTRHz. In particular:" + - tweak: "Reagents now differentiate between being ingested (food, pills, smoke), injected (syringes, IV drips), and put on the skin (sprays, beaker splashing)." + - tweak: "Injecting food and drinks will cause bad effects." + - tweak: "Healing reagents, generally speaking, have stronger effects when injected." + - tweak: "Toxins now work slower and deal more damage. Seek medical help!" + - tweak: "Alcohol robustness has been lowered." + - tweak: "Acid will no longer melt large numbers of items at once." + - tweak: "Synaptizine is no longer hilariously deadly." From 14df1e5fb511171f9b9342177007cb82ec3aa2ce Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 03:24:05 +0930 Subject: [PATCH 136/199] Converts beds, chairs and stools. --- .../structures/stool_bed_chair_nest/bed.dm | 36 ++++++++++++++++-- .../structures/stool_bed_chair_nest/chairs.dm | 24 ++++++------ .../structures/stool_bed_chair_nest/stools.dm | 21 ++++++++-- code/modules/materials/material_recipes.dm | 6 +-- code/modules/materials/materials.dm | 6 ++- icons/obj/objects.dmi | Bin 122460 -> 122895 bytes 6 files changed, 70 insertions(+), 23 deletions(-) diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm index fb13813970..603d77c346 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm @@ -16,6 +16,24 @@ anchored = 1 can_buckle = 1 buckle_lying = 1 + var/material/material + var/apply_colour = 1 + var/apply_strings = 1 + +/obj/structure/bed/New(var/newloc, var/new_material) + ..(newloc) + if(!new_material) + new_material = DEFAULT_WALL_MATERIAL + + material = get_material_by_name(new_material) + if(!istype(material)) + qdel(src) + return + if(apply_colour) + color = material.icon_colour + if(apply_strings) + name = "[material.display_name] [initial(name)]" + desc = "[initial(desc)] It's made of [material.display_name]." /obj/structure/bed/ex_act(severity) switch(severity) @@ -33,13 +51,13 @@ /obj/structure/bed/blob_act() if(prob(75)) - new /obj/item/stack/material/steel(src.loc) + material.place_sheet(get_turf(src)) qdel(src) /obj/structure/bed/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - new /obj/item/stack/material/steel(src.loc) + material.place_sheet(get_turf(src)) qdel(src) else if(istype(W, /obj/item/weapon/grab)) user.visible_message("[user] attempts to buckle [W:affecting] into \the [src]!") @@ -54,14 +72,24 @@ ..() /obj/structure/bed/psych - name = "psychiatrists couch" + name = "psychiatrist's couch" desc = "For prime comfort during psychiatric evaluations." icon_state = "psychbed" + apply_colour = 0 + apply_strings = 0 + +/obj/structure/bed/psych/New(var/newloc) + ..(newloc,"leather") /obj/structure/bed/alien name = "resting contraption" desc = "This looks similar to contraptions from earth. Could aliens be stealing our technology?" icon_state = "abed" + apply_colour = 0 + apply_strings = 0 + +/obj/structure/bed/alien/New(var/newloc) + ..(newloc,"resin") /* * Roller beds @@ -71,6 +99,8 @@ icon = 'icons/obj/rollerbed.dmi' icon_state = "down" anchored = 0 + apply_colour = 0 + apply_strings = 0 /obj/structure/bed/roller/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W,/obj/item/roller_holder)) diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm index c49e6f8b86..c76cf57f8d 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm @@ -3,11 +3,10 @@ desc = "You sit in this. Either by will or force." icon_state = "chair" buckle_lying = 0 //force people to sit up in chairs when buckled - var/propelled = 0 // Check for fire-extinguisher-driven chairs -/obj/structure/bed/chair/New() - ..() +/obj/structure/bed/chair/New(var/newloc, var/material) + ..(newloc, material) //Todo make metal/stone chairs display as thrones spawn(3) //sorry. i don't think there's a better way to do this. update_layer() return @@ -20,7 +19,7 @@ user << "[SK] is not ready to be attached!" return user.drop_item() - var/obj/structure/bed/chair/e_chair/E = new /obj/structure/bed/chair/e_chair(src.loc) + var/obj/structure/bed/chair/e_chair/E = new (src.loc, material.name) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) E.set_dir(dir) E.part = SK @@ -71,24 +70,23 @@ icon_state = "wooden_chair" name = "wooden chair" desc = "Old is never too old to not be in fashion." + apply_colour = 0 + apply_strings = 0 + +/obj/structure/bed/chair/wood/New(var/newloc) + ..(newloc, "wood") /obj/structure/bed/chair/wood/wings icon_state = "wooden_chair_wings" -/obj/structure/bed/chair/wood/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/wrench)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - new /obj/item/stack/material/wood(src.loc) - qdel(src) - else - ..() - /obj/structure/bed/chair/comfy name = "comfy chair" desc = "It looks comfy." icon_state = "comfychair" color = rgb(255,255,255) var/image/armrest = null + apply_colour = 0 + apply_strings = 0 /obj/structure/bed/chair/comfy/New() armrest = image("icons/obj/objects.dmi", "comfychair_armrest") @@ -129,6 +127,8 @@ /obj/structure/bed/chair/office anchored = 0 buckle_movable = 1 + apply_colour = 0 + apply_strings = 0 /obj/structure/bed/chair/comfy/lime color = rgb(255,251,0) diff --git a/code/game/objects/structures/stool_bed_chair_nest/stools.dm b/code/game/objects/structures/stool_bed_chair_nest/stools.dm index 77d20c1f7a..6b05b9c85c 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/stools.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/stools.dm @@ -6,13 +6,26 @@ force = 10 throwforce = 10 w_class = 5 + var/material/material + +/obj/item/weapon/stool/New(var/newloc, var/new_material) + ..(newloc) + if(!new_material) + new_material = DEFAULT_WALL_MATERIAL + material = get_material_by_name(new_material) + if(!istype(material)) + qdel(src) + return + force = round(material.get_blunt_damage()*0.4) + color = material.icon_colour + name = "[material.display_name] [initial(name)]" + desc = "[initial(desc)] It's made of [material.display_name]." /obj/item/weapon/stool/attack(mob/M as mob, mob/user as mob) if (prob(5) && istype(M,/mob/living)) user.visible_message("\red [user] breaks [src] over [M]'s back!") user.remove_from_mob(src) - var/obj/item/stack/material/steel/m = new/obj/item/stack/material/steel - m.loc = get_turf(src) + material.place_sheet(get_turf(src)) qdel(src) var/mob/living/T = M T.Weaken(10) @@ -36,12 +49,12 @@ /obj/item/weapon/stool/blob_act() if(prob(75)) - new /obj/item/stack/material/steel(src.loc) + material.place_sheet(get_turf(src)) qdel(src) /obj/item/weapon/stool/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - new /obj/item/stack/material/steel(src.loc) + material.place_sheet(get_turf(src)) qdel(src) ..() diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index feb7abc945..6cfa22fb5c 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -12,9 +12,9 @@ recipes += new/datum/stack_recipe("[display_name] spoon", /obj/item/weapon/material/kitchen/utensil/spoon/plastic, 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] baseball bat", /obj/item/weapon/material/twohanded/baseballbat/metal, 10, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("stool", /obj/item/weapon/stool, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("chair", /obj/structure/bed/chair, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("bed", /obj/structure/bed, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] stool", /obj/item/weapon/stool, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] chair", /obj/structure/bed/chair, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] bed", /obj/structure/bed, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") /material/steel/generate_recipes() ..() diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 29cd325ee3..9f2ead01e7 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -353,4 +353,8 @@ var/list/name_to_material var/mob/living/carbon/M = user if(istype(M) && locate(/obj/item/organ/xenos/hivenode) in M.internal_organs) return 1 - return 0 \ No newline at end of file + return 0 + +/material/leather //todo + name = "leather" + icon_colour = "#5C4831" \ No newline at end of file diff --git a/icons/obj/objects.dmi b/icons/obj/objects.dmi index cf366f75eafe425a6806b9d8c5465ec6a27fa775..30056c1c5d8429bca482515608b056dcb131251d 100644 GIT binary patch delta 70140 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 delta 69702 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 From b636b3d9d299121c5a40760027e62d9875ba64ff Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 22:38:28 +0200 Subject: [PATCH 137/199] Changelog update. --- html/changelog.html | 10 ++++++++++ html/changelogs/.all_changelog.yml | 12 ++++++++++++ html/changelogs/GinjaNinja32_new_tables.yml | 5 ----- html/changelogs/HarpyEagle-tailanim.yml | 4 ---- 4 files changed, 22 insertions(+), 9 deletions(-) delete mode 100644 html/changelogs/GinjaNinja32_new_tables.yml delete mode 100644 html/changelogs/HarpyEagle-tailanim.yml diff --git a/html/changelog.html b/html/changelog.html index 227e839d13..83d87d57b3 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,16 @@ -->

+

16 May 2015

+

GinjaNinja32 updated:

+
    +
  • Rewrote tables. To construct a table, use steel to make a table frame, then plate the frame with a material such as steel, gold, wood, etc. Hold a stack in your hand and drag it to the table to reinforce it. To deconstruct a table, use a screwdriver to remove the reinforcements (if present), then a wrench to remove the plating, and a wrench again to dismantle the frame. Use a welder to repair any damage. Use a carpet tile on a table to add felt, and a crowbar to remove it.
  • +
+

HarpyEagle updated:

+
    +
  • Adds tail animations for tajaran and unathi. Animations are controlled using emotes.
  • +
+

14 May 2015

PsiOmegaDelta updated:

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 549c473270..baf01f2753 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -1779,3 +1779,15 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. with the shotgun. - bugfix: Portable air pumps now fill based on external/airtank pressure when pumping in. +2015-05-16: + GinjaNinja32: + - rscadd: Rewrote tables. To construct a table, use steel to make a table frame, + then plate the frame with a material such as steel, gold, wood, etc. Hold a + stack in your hand and drag it to the table to reinforce it. To deconstruct + a table, use a screwdriver to remove the reinforcements (if present), then a + wrench to remove the plating, and a wrench again to dismantle the frame. Use + a welder to repair any damage. Use a carpet tile on a table to add felt, and + a crowbar to remove it. + HarpyEagle: + - rscadd: Adds tail animations for tajaran and unathi. Animations are controlled + using emotes. diff --git a/html/changelogs/GinjaNinja32_new_tables.yml b/html/changelogs/GinjaNinja32_new_tables.yml deleted file mode 100644 index 5668126e2e..0000000000 --- a/html/changelogs/GinjaNinja32_new_tables.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: GinjaNinja32 -delete-after: True - -changes: - - rscadd: "Rewrote tables. To construct a table, use steel to make a table frame, then plate the frame with a material such as steel, gold, wood, etc. Hold a stack in your hand and drag it to the table to reinforce it. To deconstruct a table, use a screwdriver to remove the reinforcements (if present), then a wrench to remove the plating, and a wrench again to dismantle the frame. Use a welder to repair any damage. Use a carpet tile on a table to add felt, and a crowbar to remove it." diff --git a/html/changelogs/HarpyEagle-tailanim.yml b/html/changelogs/HarpyEagle-tailanim.yml deleted file mode 100644 index b3fdf054a3..0000000000 --- a/html/changelogs/HarpyEagle-tailanim.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: HarpyEagle -delete-after: True -changes: - - rscadd: "Adds tail animations for tajaran and unathi. Animations are controlled using emotes." From 8b39f9201a90987d0f01e64cbdf1ef0ae881220e Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 22:41:13 +0200 Subject: [PATCH 138/199] Compilation fixes. --- code/modules/projectiles/guns/launcher/pneumatic.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/projectiles/guns/launcher/pneumatic.dm b/code/modules/projectiles/guns/launcher/pneumatic.dm index 780626567e..d26750a36e 100644 --- a/code/modules/projectiles/guns/launcher/pneumatic.dm +++ b/code/modules/projectiles/guns/launcher/pneumatic.dm @@ -14,7 +14,7 @@ var/max_w_class = 3 // Hopper intake size. var/max_storage_space = 20 // Total internal storage size. var/obj/item/weapon/tank/tank = null // Tank of gas for use in firing the cannon. - + var/obj/item/weapon/storage/item_storage var/pressure_setting = 10 // Percentage of the gas in the tank used to fire the projectile. var/possible_pressure_amounts = list(5,10,20,25,50) // Possible pressure settings. @@ -26,7 +26,7 @@ item_storage = new(src) item_storage.name = "hopper" item_storage.max_w_class = max_w_class - item_storage.max_combined_w_class = max_combined_w_class + item_storage.max_storage_space = max_storage_space item_storage.use_sound = null /obj/item/weapon/gun/launcher/pneumatic/verb/set_pressure() //set amount of tank pressure. @@ -42,7 +42,7 @@ if(!tank) user << "There's no tank in [src]." return - + user << "You twist the valve and pop the tank out of [src]." user.put_in_hands(tank) tank = null @@ -82,13 +82,13 @@ user << "There is no gas tank in [src]!" return null - var/environment_pressure = 10 + var/environment_pressure = 10 var/turf/T = get_turf(src) if(T) var/datum/gas_mixture/environment = T.return_air() if(environment) environment_pressure = environment.return_pressure() - + fire_pressure = (tank.air_contents.return_pressure() - environment_pressure)*pressure_setting/100 if(fire_pressure < 10) user << "There isn't enough gas in the tank to fire [src]." @@ -118,7 +118,7 @@ if(tank) var/lost_gas_amount = tank.air_contents.total_moles*(pressure_setting/100) var/datum/gas_mixture/removed = tank.air_contents.remove(lost_gas_amount) - + var/turf/T = get_turf(src.loc) if(T) T.assume_air(removed) ..() From 4cd2a5a53296a62cbaf081c8dd5b9084f7cfb0c5 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 12:39:03 +0930 Subject: [PATCH 139/199] Updating stools/stool padding. --- .../objects/items/stacks/sheets/leather.dm | 10 -- code/game/objects/structures/simple_doors.dm | 2 +- .../structures/stool_bed_chair_nest/bed.dm | 16 +-- .../structures/stool_bed_chair_nest/chairs.dm | 9 +- .../structures/stool_bed_chair_nest/stools.dm | 108 ++++++++++++++++-- code/modules/materials/material_sheets.dm | 8 ++ code/modules/materials/materials.dm | 8 +- icons/obj/doors/material_doors.dmi | Bin 0 -> 26842 bytes icons/obj/doors/mineral_doors.dmi | Bin 31025 -> 0 bytes icons/obj/objects.dmi | Bin 122895 -> 122603 bytes maps/exodus-1.dmm | 70 ++++++------ 11 files changed, 161 insertions(+), 70 deletions(-) create mode 100644 icons/obj/doors/material_doors.dmi delete mode 100644 icons/obj/doors/mineral_doors.dmi diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index b0de81ff55..87cdf3b4c2 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -79,17 +79,7 @@ var/wetness = 30 //Reduced when exposed to high temperautres var/drying_threshold_temperature = 500 //Kelvin to start drying -/obj/item/stack/material/leather - name = "leather" - desc = "The by-product of mob grinding." - singular_name = "leather piece" - icon_state = "sheet-leather" - origin_tech = "materials=2" - - - //Step one - dehairing. - /obj/item/stack/material/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob) if( istype(W, /obj/item/weapon/material/knife) || \ istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || \ diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm index d2cd101a1a..d18a62ddf6 100644 --- a/code/game/objects/structures/simple_doors.dm +++ b/code/game/objects/structures/simple_doors.dm @@ -3,7 +3,7 @@ density = 1 anchored = 1 - icon = 'icons/obj/doors/mineral_doors.dmi' + icon = 'icons/obj/doors/material_doors.dmi' icon_state = "metal" var/material/material diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm index 603d77c346..a172775778 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm @@ -17,8 +17,7 @@ can_buckle = 1 buckle_lying = 1 var/material/material - var/apply_colour = 1 - var/apply_strings = 1 + var/apply_cosmentics = 1 /obj/structure/bed/New(var/newloc, var/new_material) ..(newloc) @@ -29,9 +28,8 @@ if(!istype(material)) qdel(src) return - if(apply_colour) + if(apply_cosmentics) color = material.icon_colour - if(apply_strings) name = "[material.display_name] [initial(name)]" desc = "[initial(desc)] It's made of [material.display_name]." @@ -75,8 +73,7 @@ name = "psychiatrist's couch" desc = "For prime comfort during psychiatric evaluations." icon_state = "psychbed" - apply_colour = 0 - apply_strings = 0 + apply_cosmentics = 0 /obj/structure/bed/psych/New(var/newloc) ..(newloc,"leather") @@ -85,8 +82,8 @@ name = "resting contraption" desc = "This looks similar to contraptions from earth. Could aliens be stealing our technology?" icon_state = "abed" - apply_colour = 0 - apply_strings = 0 + apply_cosmentics = 0 + /obj/structure/bed/alien/New(var/newloc) ..(newloc,"resin") @@ -99,8 +96,7 @@ icon = 'icons/obj/rollerbed.dmi' icon_state = "down" anchored = 0 - apply_colour = 0 - apply_strings = 0 + apply_cosmentics = 0 /obj/structure/bed/roller/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W,/obj/item/roller_holder)) diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm index c76cf57f8d..bcce35a220 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm @@ -70,8 +70,7 @@ icon_state = "wooden_chair" name = "wooden chair" desc = "Old is never too old to not be in fashion." - apply_colour = 0 - apply_strings = 0 + apply_cosmentics = 0 /obj/structure/bed/chair/wood/New(var/newloc) ..(newloc, "wood") @@ -85,8 +84,7 @@ icon_state = "comfychair" color = rgb(255,255,255) var/image/armrest = null - apply_colour = 0 - apply_strings = 0 + apply_cosmentics = 0 /obj/structure/bed/chair/comfy/New() armrest = image("icons/obj/objects.dmi", "comfychair_armrest") @@ -127,8 +125,7 @@ /obj/structure/bed/chair/office anchored = 0 buckle_movable = 1 - apply_colour = 0 - apply_strings = 0 + apply_cosmentics = 0 /obj/structure/bed/chair/comfy/lime color = rgb(255,251,0) diff --git a/code/game/objects/structures/stool_bed_chair_nest/stools.dm b/code/game/objects/structures/stool_bed_chair_nest/stools.dm index 6b05b9c85c..5ec94e39d0 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/stools.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/stools.dm @@ -1,31 +1,83 @@ +//Todo: add leather and cloth for arbitrary coloured stools. +var/global/list/stool_cache = list() //haha stool + /obj/item/weapon/stool name = "stool" desc = "Apply butt." icon = 'icons/obj/objects.dmi' - icon_state = "stool" + icon_state = "stool_preview" //set for the map force = 10 throwforce = 10 w_class = 5 + var/base_icon = "stool_base" var/material/material + var/material/padding_material -/obj/item/weapon/stool/New(var/newloc, var/new_material) +/obj/item/weapon/stool/padded + name = "padded stool" + icon_state = "stool_padded_preview" //set for the map + +/obj/item/weapon/stool/New(var/newloc, var/new_material, var/new_padding_material) ..(newloc) if(!new_material) new_material = DEFAULT_WALL_MATERIAL material = get_material_by_name(new_material) + if(new_padding_material) + padding_material = get_material_by_name(new_padding_material) if(!istype(material)) qdel(src) return force = round(material.get_blunt_damage()*0.4) - color = material.icon_colour - name = "[material.display_name] [initial(name)]" - desc = "[initial(desc)] It's made of [material.display_name]." + update_icon() + +/obj/item/weapon/stool/padded/New(var/newloc, var/new_material) + ..(newloc, "steel", "leather") + +/obj/item/weapon/stool/update_icon() + // Prep icon. + icon_state = "stool" + overlays.Cut() + // Base icon. + var/cache_key = "stool-[material.name]" + if(isnull(stool_cache[cache_key])) + var/image/I = image('icons/obj/objects.dmi', base_icon) + color = material.icon_colour + I.color = material.icon_colour + stool_cache[cache_key] = I + overlays |= stool_cache[cache_key] + // Padding overlay. + if(padding_material) + var/padding_cache_key = "stool-padding-[padding_material.name]" + if(isnull(stool_cache[padding_cache_key])) + var/image/I = image('icons/obj/objects.dmi', "stool_padding") + I.color = padding_material.icon_colour + stool_cache[padding_cache_key] = I + overlays |= stool_cache[padding_cache_key] + // Strings. + if(padding_material) + name = "[padding_material.display_name] [initial(name)]" //this is not perfect but it will do for now. + desc = "A stool. Apply butt. It's made of [material.display_name] and covered with [padding_material.display_name]." + else + name = "[material.display_name] [initial(name)]" + desc = "A stool. Apply butt. It's made of [material.display_name]." + +/obj/item/weapon/stool/proc/add_padding(var/padding_type) + padding_material = get_material_by_name(padding_type) + update_icon() + +/obj/item/weapon/stool/proc/remove_padding() + if(padding_material) + padding_material.place_sheet(get_turf(src)) + padding_material = null + update_icon() /obj/item/weapon/stool/attack(mob/M as mob, mob/user as mob) if (prob(5) && istype(M,/mob/living)) user.visible_message("\red [user] breaks [src] over [M]'s back!") user.remove_from_mob(src) material.place_sheet(get_turf(src)) + if(padding_material) + padding_material.place_sheet(get_turf(src)) qdel(src) var/mob/living/T = M T.Weaken(10) @@ -52,9 +104,51 @@ material.place_sheet(get_turf(src)) qdel(src) +/obj/item/weapon/stool/proc/dismantle() + if(material) + material.place_sheet(get_turf(src)) + if(padding_material) + padding_material.place_sheet(get_turf(src)) + qdel(src) + /obj/item/weapon/stool/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - material.place_sheet(get_turf(src)) + dismantle() qdel(src) - ..() + else if(istype(W,/obj/item/stack)) + if(padding_material) + user << "\The [src] is already padded." + return + var/obj/item/stack/C = W + if(C.get_amount() < 1) // How?? + user.drop_from_inventory(C) + qdel(C) + return + var/padding_type //This is awful but it needs to be like this until tiles are given a material var. + if(istype(W,/obj/item/stack/tile/carpet)) + padding_type = "carpet" + else if(istype(W,/obj/item/stack/material)) + var/obj/item/stack/material/M = W + if(M.material && (M.material.name in list("leather", "cloth"))) + padding_type = "[M.material.name]" + if(!padding_type) + user << "You cannot pad \the [src] with that." + return + C.use(1) + if(!istype(src.loc, /turf)) + user.drop_from_inventory(src) + src.loc = get_turf(src) + user << "You add padding to \the [src]." + add_padding() + return + else if (istype(W, /obj/item/weapon/wirecutters)) + if(!padding_material) + user << "\The [src] has no padding to remove." + return + new /obj/item/stack/tile/carpet(get_turf(src),1) + user << "You remove the padding from \the [src]." + playsound(src, 'sound/items/Wirecutter.ogg', 100, 1) + remove_padding() + else + ..() diff --git a/code/modules/materials/material_sheets.dm b/code/modules/materials/material_sheets.dm index bc1f2510c2..332d1dbe48 100644 --- a/code/modules/materials/material_sheets.dm +++ b/code/modules/materials/material_sheets.dm @@ -165,9 +165,17 @@ obj/item/stack/material/iron name = "cloth" singular_name = "cloth roll" icon_state = "sheet-cloth" + default_type = "cloth" /obj/item/stack/material/cardboard name = "cardboard" singular_name = "cardboard sheet" icon_state = "sheet-card" default_type = "cardboard" + +/obj/item/stack/material/leather + name = "leather" + desc = "The by-product of mob grinding." + singular_name = "leather piece" + icon_state = "sheet-leather" + default_type = "leather" diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 9f2ead01e7..c0c0a04b18 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -357,4 +357,10 @@ var/list/name_to_material /material/leather //todo name = "leather" - icon_colour = "#5C4831" \ No newline at end of file + icon_colour = "#5C4831" + stack_origin_tech = "materials=2" + +/material/carpet + name = "carpet" + display_name = "padding" + icon_colour = "#A83C1B" \ No newline at end of file diff --git a/icons/obj/doors/material_doors.dmi b/icons/obj/doors/material_doors.dmi new file mode 100644 index 0000000000000000000000000000000000000000..da1780ff8b6f9d29d9c495be86552873bad9a4e4 GIT binary patch literal 26842 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 E2i#SjlK=n! literal 0 HcmV?d00001 diff --git a/icons/obj/doors/mineral_doors.dmi b/icons/obj/doors/mineral_doors.dmi deleted file mode 100644 index a497f7e76344a14ad1dc40283d15ae67ee58242f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31025 zcmaHSby!qyyDlmsB1%dl-6g4nbW3*#BPAt*z)%hhBHbz7APv%zBS=U}Bi-E$!VC<< zS>yNnzO(l}*V%t?alu;iuJ@_?e(qe}HC+T`rM zP=$su=Z?*JG8l0i@K}hDc%fQ7`25;&1CtXFAh#LEA zgiF>3Y@E^8k)iBFV`8skbxyyw{&=4)^F@gVTsvsaPE?F|Kw;e{1ov+d;AQ`QR{Tt# zN36uqYd%ZERvGF7q zY)Q8Z=RV;d3K0{P#ioxWyUp=h+VY$B(Oo+>*?ByEY3{DaO@wtM*bb8qD&NT9-wN}8 z8j1BKBH$@8oi4MIb%L>3OyzF>px3vS)P>&B&dz*BCMJRTCr{$W*Kgs)*?hHHa-JTn zGHdZT6x{{gR9W#G%e;{4vKHMKr7!4FM7(6}mI%N4~<>q8B^BYq0x@I-wdc_%SS>z#sI{sunA2DUnyI*_s zu=AkwN3y-vJ5ySZ)_StTQZcp93!E@XUgySZg^o|2Xh{y1&izmdrW^*J(itKZ3A>1D z(OIf;YKsW*$U_O{?D^anSd2d34FkgY=1gk0tIf^~9C;+U+kH@G)rx#g_|A~F;3<1! z#iNaydKbeL>Zz;ZyYUm0~p~Q#tbuVknds&%8dk ze6Q7Tqs8#IzV*U9sI4d5LCp`o=U6}QwB~imB-^zAFWtKQ^hV!$VC(ozf zU9u80b^X*tkHKEMJ9qZ9@i9KvDeilAc>D*1)PI%5pVt0yd1O{Z66X>zXE`d|yjwcMu(o5y z>O9XDq#Q1b&myMigEXD{1;zT`S4tucYwt;a^KGLBA2iLLPYBWtPPF ze}KTRXl5;NW&?paaKsuyZHtP`G2&=uWXF>0Ce|eOvSHcI`A$Bcs%4Tb-C3h6Q^4%Y ztcg$9U5VDW$rp^@eNbv;2PEm_N$~9*vhW%%!bOE5Zi#vbgdbV*s#ZTB+8$If!_0Eyj5m?5`Y^zNGD&V_v6EgMQ z>}t-^>Omw6wR4szhmENB`TZ{`#BX}}-hyb7ZJ)&!%bP-%2bYY-XQ6g~Jzu_7OxIWy zo%_uU9GJiL$#rhmh}=`3ws8n{aNfAl=VmF|n_OE<8y`T*$Vz9S>t*pl(v|yBHn3z@ z>6Z#9-pL?cZvD*&1h(CSshG2kN4ZwGK&^NPQ2~BeDt$EFX{I0Y`A^10DaQ9^Z|51f zSgpNDZc*-uBJK9zRYKi}L4GEtc_cimnO0i4Vt6hrlIsJQg-2P*xrfbVVRsB#bdlv-~euFqlp@a61!_Z8!V6{>* z_R-dh7MOza@q!e(%J!b$4FQzSMtUw1cKHi-&!zAt8yy0@34l#eh1wN1IsH46|8Xb& zkW-nJ*?basUf`x-Ziy2+&L1r53^_Q8gQ(+XSxN-y=?=v-U2SK+**K#H$r~#n_wSVE zTSe055(2+ug@GpSQ_E?1J6PA zkpFcw|G5Dsr$lWj)DPJ+%#DQZk+go2wez&f&PfJ9pRlpR#b z9f#sFhIyh-q<%OpGPS_(vR=UCMSLR)NRd;%``eHDNol0gnW~KosuCHomuTD-ZV1Ox zVb#HNo1Pp0H6Xns05DB;o9XvD!JXT#yQd2X(>lTJuig=Exb`bvHb;G3IiZ#H^moW z+xE>DJQ%Zv3C@Jl5(a(lahg5=YU+(po4()JOhp51s7E()=sgnqx)AnZ)9c8Q1S0%n zgCttYFUInc%-KneQhlk%P_V!IzTH3)8o7m5X;W%=pG{gue$8Tb0F^^Qgbx0K!P|_( zxuiM6-fI~A9P>O8*zqt1werimm>#aRNdL=ZVw;HMUOs)uqj{5(>j>3FCAl-7CoWSJ~e+^jjxSBgL z!|KRVl^I5N{7u2mYc}|gRChR27g-yZ4D{A4cOPc$^1m(!6wU;&c!sAD_8D8*e|+V0Ur(sxl>fI@X%#_tRkRy_t?iQ4 zdx#h3sq4)K3A*(L!k^Dckow~4$L?Q7K^kaN!-kX@@Hjr{JMInf1A*%i;s+*#qPT1 zMjcL0+k~N@zVudgb>ac zxl?%xDmaUWfgq;=FxQ)7OtMNrPybqzADyuEqUqW_5DB4w_l)+>s@Lmx;sAx5ou_>( z+aVln?3Y5V=bJh~|D?l=LIa6mScZ1{)}Jilyv8DVmC>T;zr(Tnzg3SmXFly%L zdTtmkb*+hJfuf-3J(*lzxg`gjZCorvR}RVl z-il?0I7b`$g*$l26BEo@zKw3c*;D+z`Y2zVppVVdWXUCOxkDV9ok(oqAsz()Z1BdwcKxPz>;}x9RFwgHC6UhaS1Z{}g=uRsH@o}6{37qS zxIk=6kUMr#RLRZENGxVabi$21n4+&}Xf__+`V^l0?x@sC|8Q(E_S@J$d)Ab^jL`6V zNo&>wXcj^eB|5(%UGc{HGWVXdmlRemJ;XZFVGhJYM5Dw0xD42#0m3*%G${dkY&8;c za{+cdOwL}oF-uaA)5EI}P4x20+32$|iQI~J(J^wl>8hM2ageuSo21hn&Y&*^pG-=a6HHWmDLBh4UTTD(i{X_^P`~c*4jY+IBP-EPOyvar_w}jfp9_S)7|Yg=ZL=7(=B^o z8PZ{sNPcTxIa2l_t<(-{szPD#L0J6H8X7Ah25g=1F0rq;w`d*n_)@JCYK!=>6h{;j zL__)?+oh#Tv1)~rZrlsbP91%)e?gGlTGo51h`jo6kFQXxHM&YS)Gj?&Cnt?oAZyX) zwCDOwy$7i!`zXJ;#9=*IS-cj{u!HlAWo_yS?0bvDKXnKK!}i?kHnM1e6e)=|M^8QS zXlpSimmisW9oazI`iMA`pQNwz^WZ!#X09+-j4`^}z6&3U=~r_c;xh0&5| z+)rjld;6T3!_S#n;cwbh=cvcBxe3Gc*p&F_E;tvl#AaPhcRmC~ zYi#Z94Fiemi%M5nv8eQ%zFOH1V?>13QqDRsv+Rly>d^N{m)z-RE3XNpkRk4Oj2v*8 z67J^dCLAt|_ImDn7Nuq*|9DizD#@xk<&%!Jh@5;VN1RPGMQ09bTr{@uk-LE77T+DJ z$>(YOjasD_Gs!;MIcdJ+0b|53 zzDHYCEf<)z zi^p+;uW4ZPR}G1YM(|#a*5)Kc`~&)5>e;qAsfIgxpqAQ5c0Y8JlW8IW1z40 z@7~J*hfn@xjR(u&Dvq!Sv1Zpj!lzU2@3tB|k~FMb69vAFFW2P||HjvWcM11sh2SOI zswtAl;)Mn^-L%5JF$p3VO{qP}qJqsAARH@tPx$v>j)HDcGlv7E6$o9J858bs0O2jz zHTJ+6iInJM%qus3urx4`Nheh0he`9i&S?vlc6A2JQzDU|+5{E6(>Sa5h{UJjtOf@m z>wlHJlqs@R;!wXe7r=(gZU;=B3?O+QWjCC+6z6k28;q7|ZgewkQ7zI5yD{bNvXX#S%ipSvVgkQnXa^hBs#v|{>tkQJ3`>xI#1VtWs}+;cM> zE$irID>ig@-{uBPIGA~!;s#Z`rKa?hCaTAAC7qow9XNZ3UVV;_^$w1$;N{mFpTbt^3D&$a9tCACPP|3_Z`*x4H)oW2rkQDsZb zp+Oj}b(1(TQ*;o-#n5I~_v(wlJ64V5sy>!_3D2FP6>ATqy`vzp7N`(bu3 zJ*MG}#{7zo>Um)nv0C|>g1=*mE-ZZLSPq!19;-LsPa)oAs%x;DTbGsm^$!~VqJvIe zn-}IkFr)@=ZjmpzyKgjGMvlGty62l|Rw&4-%p8x);jM>D`lYiaGM3Alh(c7I`;M+) zr!~%z6jZ^TmnkrfkTLhvXltZjzy=3SIm=EM^!Vk0W26CdVVW1YQz(PSCcw`8CQB4j zC1;(u*l8Lr9zt@=6-h9Ac=GR;5hZiTJuTXV(z~icn3kM~7;+JFvp4f`>E_3h5*Wc+ z=F|ha-deh|{Oe{7X61+C(7d^fdH(Ba{O0(GZ(&jCFYj4J8Xit7Dw*>7Pf3|K;;+3C}cy;dYayyKUD=9Gi+Pm%3`)?6mS*KSI2qA?~~ms+TEunMcE*ew`Pr z$mH3FC&sPMcTfQ~3yAZ4DKWe7uJlOcs4d0TQ)8L(mxsPcwx5k6+6^y_Kc@jx7bjuO zn^Vm+kMNJS19@jf66ufsX_Zb9-G;FCe>Y2fz!ax!>TkC+iAvF%rhy`C|2CjO&F*MjG-T=)O)_1iZ=rokOO1{BiKPPWWq{ zfY%A#N}6wI6scP^a`YYB!RK!uZ3CTB)afSzK5VMP{dZ;8ZFjU~Dl#!Km`=C?F{ZaG z=!8S|Bt6{k+2BQI55;+<87bFili=neHQ3|5w&-pI=Qm%}h=Z2@FSP>+k7=N(JM9M* zj)!*Fq5(9#6)6m`d*w7sEtwW#`$V4v%h2#K!(C%<7FoF8NL(Gu#n(t6c4M+_o;zBt zI<_P7r6NQ`*tf{pO4|UmEiFxD- z^i|0T1o$e?ye-q1^#iKo*l#!7U#Rj`$Gd-YN1Ks2XwY|&$ZoppD`I?ua99*SZL6Aj z-uII%zA0ECW14-kd~-^}%01ypo-mX_B16)rH8RNf3+$Uc8mY0I4m(k=N6}O&R3+WG zTyCErpZdeA^1%nDnXv1_n>jUUjYEyTUh0A(y6mJdV}q{~Uwi{fT|K&1*F{ySC9gA~ zcfPCO>kSxw(v*bW6%YHk_M@8~BO&PWO$lJ=PCqkn-3HYh%@HR|AMC#210wmfH3Nb@ z`}wDRxNi4RnPtDdC5bOF{dfOz7(9N| zPW~MYuSqNJudk8n^ofsEQ(0N;aG$&Lp+#wrBmuJ^)TjvUk&QGYuNz;5xasCC46c65 zs2FYpp=WOHf`(j>fom~K`6=z)rqsHMbkFQSoPo;74i@oB%eGk{Q!Nh2iDX)g~*z3OpVS8OPG(H{o zv|T<^GRe&RwUF1i#8AG`rhT*^Ss860Ia3ZsQrxo*`xzgr(`n35_J$^;`M%hnTXFL5 zxDBM`)3iblQMKHG12BvZT@t!k-5bGlLLB8We19UCzDK;2E_dU~hFzciy5alZ=W6F0 zqFGS)pHrXWUHyKp7JGMMW^rH0y>d-nHMf=hMXj;|gW3P4F{jRwc18oaOd&A`_J2qCe<0e-x#+V`tEZdhlvsustq7!$G@BvfatF2IC*+}`5 z$lkj_{rnWT0R?Z2`w1bm>3uWs2ZGMwF+YvDN7Uiqw>k}3QWp)7w&%Q~#Ki+&$lUQ+ zs!g8Gaw~Ia>p$+Pi&3Lqx@%`Jk|lMBnGK!>kBxr*@E%qP^zyo)1&NhsruxAC^z}nU z{t+DBak=$9O`FcX%@SQyQQNF>O_Mlf+}ih)@v@jpTFA$Q7Lw1;?xiJLJ_% zgXSLx&g$y35R**(?m)OOuyj8>P2Qh-4o&po5c9G1G}SLL53BlE%LWn_@8XN*7qNQ( zN{26+gPg6)%VOsM@3RCm=+4mk*6Fv}t?XC*K;Qo1Fyab4Ir_OQGS8d_w9{A`T{-Xi zKES}^>)yhjW}~gA2KfbH{gbo)PPdn8xPKUZ()_3_8=)XRDIXhwQx-~mQr+3KA9UZo zf`O7@z^zn4r8rF}C!sHJa3e7yo^+fZQoU1{bn>hZG>g>O{(^XU_>z{M>l7X*esu{9 zF8>)@h73HAHS1uhMNb?5d!T9C`{EHDsE=A!$+WWlE65OFQ)B*~jqW7Bvfb_ehu|Os zphE{@EC)*15GDT37E?=B@mQs|HWE5iHkV;75U*~eEe{rpfB9I!y!ETtVhU?tvq7-x z-H{u8u}8ew-%-<+<<^&DJ~==}AaJG?;kp zcJnWO0Nx{3SAOl$;*m&bA;5~AK!@4kTYJmYKWCUwvh6jK{K&WVFgO3jMfY{{uHC>; z1P5^2zXE<}z4zohAlBhvnH62TfU)>ayC`-GBJxmNu-$5brH-|!u1>x5*zK6kP|F`q zgmya703Kf|zH`l!E`HqP=wNkUNVrO;mQ{u0(*RFNv>cr7Mt#-v+V%S`rhE*xxZuM6 z0}m2~P`i3n|1ShQxpJvfn=70{edAWPoe6-R&jIyz-Y2{B6s@?P1ezDZjr`Y8WTh z+D#`COFHwjmJ5F4W*U`OrnXn@Kv1L!eaY>-YEE54+)~62Ci(YSfE7MAsB=6t>%-#g zG0%uZnAtE0jdsp=>R?;4mrUTz4mIPZ8bldwKue z;sH_93)tWX*p+GI7w0peuFCYST`xLb`Z)m%qS0`u&8JaJ-U~D-7#;6-0$X_-jQx?> zi&2E5yxQxCe@fs7v8HNIyL{vuiBv+os1nA>zST3{cVlHi+i^|wyq0y2W4>MTp+n;$ zEF;avovQ*tpb5E?CUvxc@K5#AfghU|e>ywoasAAz1_9|O6fVXzwQUJBe22x@3#h|rpkvU>w$4pcAWEzoZr7`s3X4FI_(5!V6l#0YSj7N=+Q#g=aP{E3Cg!eVup?S~Zk8Nzem0qi)` zTg)m&B`=95wH3Izbi!>xQ&@?1^4Ore0pWT!Dr!WTq-!UEuG$RDHH?nCmZ`7}&kfKU zC!~S>!2ULe2-oY;`GOg*2p_*LyGvFJkAN!jx~Qo78C)%jHQaXjoevW>Dh83mUKZMx zX2GCAN>!i*Cza^l%&fguq`vS0rhidzCbg`#^=T6&rFSWruOq4VeL%K`J9SeGVYLcP zxCIm^NxcqossZD%l%K|iR1X}qbqsB4@fIkaC%@?89OoYU^N~{zQCjjsgtO;)dahy` zp@a!_I*}GLSR`Kl4*@N(&E2=&24h4y<8Hl2oI;+{=@$z@_L%)?micn0~_~MBI35$cQ?!BLX z2g|Q&DJn`!_QKmy13G$(tk4n$LTC<>pz<|nB9~K`9cs-s?Fu4Crv?Y@4*jZg>~1UW zNII-v+oP})~QuJ79ojm_l0XyBGqPsPwOVO)*{J6GqX)4R;`)MTB4#D!iXg<~$@{QU@$en=7^J ztFHKdH&Q1K(#AP@p-$M)8T&D$b5oBf(V(~-S?*9L;|-Vfi!IDd+GT&ddiNkr-cXg4 zACCbCa(uP{vU&Lem=!R>{~Xsce%KiLHfV71=_hD%Sm2x|c&)J-e(|yN5>9g9_$9Mm zhM@h}Rp7GWi`O+mEQ^fJ?MqmzejXuFeBdTLPZ^#?an}()i0e0nvp^r~TlI$Dznky0 zwvufCJ?l{R-$^0q7!6&>7vtTkBt~RtfjkJ!*}x0@)V5UYf2PfVnr+o;v=10qWlz&H z;jD07ozCX#SMW)t9!hlrQ|Ar0rLdc~=yE`*f;SxHSKg8|XExz$=VZv*;3U{5PEFLa zsWJ|@M%oLc6_SR5UlZMqJZg_kw?-}rNYcAKO5z$BBH`}FR*lOWNrv@@m4#7d9MwC6 zwS(6Ua~&3LO)yDOz-k|UKXL$kUfN$~j$$Z(0A-(>SujxA-L7Aq`!dqnVfRT|H@=&_ zTw6~+h)nM6NwR3aLRfV$#T^sJ+e9jl2h)FbCEE-x0iRh~ylSws3FVK6>QL1#&#E%8H(eA5HOVe`hFenleoy2Cy?gfV3K7oskCV$?;lK7~G7b!eZ z(qlBP_X>aLGL{#@Hntl)Vu`ax?PwAseSY!C`p3JoO-K7)N$1odpA*Vu^KyNqcKq>M z?i*#d$hLWpK2=jy4OSJ>thfG3ufD8bF|{G>P|6q@F<|1*p8gnnn;%DYftj_YU*uUX zbK>+j?P1KQx2<&Ccve8Z_0^z^uu7#uLCO0}QA^wkWDsrryF>=$n|#xSa)tWs?#7@4 zu;AGWd43-G2VkV4HiJ5zJ5_2}$QUnE8#p+<#auCLICHGMQ$@0LNjjWIp6NjoLRolG zKTltY_Wb@sG3eNE%pr|R=5#DF0| zE?sukNgvfhs#G9&gMjk$!e^-(pJO6_vNqzS=$06do14x?X8Y17ce!aTDs)N5tv>!4wzNj)!Hg-g7y-wSE`iKPbEi1cXr{9$0Z?WVKkPno1S(iS)k^Kl9Q@wyZA_%)MAGW=xlZ+` zq|P_;jGYYD1R)w<03ko4YC1T+3WTk2;Tt zQ4JFoPJWIk!H27aVVQ^`V-cSjplc)LFT&sGM={b6%p&)XXhSQwlS(T$Y#Yo{6sXHO z_qrRc16-G_q6|OUk;qWLQda()52iQxNP1VdEP2Y8$4T_GWS|+T`o=9%$BR*A+KW_0 z#f@vLB1s?W{TeZfO+hoF~?R#&H8;t71%_tsQ*O z?%v){*8H~nS0w?zqf=6;;p*PXJvv}N%HE(Ixl!G#LxFwZRH2F)CBK&a9iw z9Qn=V)P9qORTx6hd=#U?k(*@M9|=L@XWlkR(|O|6A+ME}<}c!8lmt`7-Up0LguA-5 z|DF`j27FzjOA$$D+4zk*heN_M0)-i)qz$7O-U0!{wjZJ!1LD-hTq^)|I;T3VCsTNw z#s(q2MU+QS>>4d8(J?tBUoiY9DL=cA(&|L#PJj+orhP`ARtE35XE5{qHK9EJ-`1<3 zAlRkoqhHR>KTcYH1CL+Ub4IThAHKM~)Bmf?BW|;*rU8-}oQe2y7i6Zh`G)-iEmEW> zG@L3yG;y2N#$UuvNYPk>t3Pw{flpG@VdQhkQ)U%)k!#Wt->9z5dnH=G2Su7*N3jgv zj;Dwu@V9jFGpqV3S zo5Mn9Xz#UvpmH2hCDEuYv(M)*4WsJ83kw_@+TH{P1#1JlH{b1j_pzwE72#bcw<4TM zc}yZ))w7JT1=haK(wo$BLLXxQIDM_616e`sBkf0y`LiVY8hOXa5FI=98TQCD38n#< zCHAi&QWEeQ1FTP^t{%2 ze2)BaUP_$qbexug?8be;7y{8w3cA}X^BLc5GDk4bE1a5}k*v;Rw??7xGV~Zf;#r!v z84-4u(Qb-SQntZnN>;e|h0Ns+i#Lc=2V&-e6nlO_wREC%#w z0H)+jw=PI@QT<*1<{Q$@-8b^$K|FT3fzd4Mm3d2qGmUwl;TQR*m260f&yz=jHJ9p zJW_QT1XSVKr4u^=_}zc0om01joKEv7y_yST{jDj77nNJ_@LyKX{BAdZWXisE6)$2% zcjOQe>j>LZs7aW0N9H8Sbh8$#m9Xk9*Dza;xXUug|F@w8vogb2P*tacn*gSFAd{ky z;2l?YxTuy;bTrgVsZoDOrYaI+%~6$01QG3(cj)()-%rKQ(G)%& z786Le$Y4p8b|rIuY^0u}(%q~k4GZKJ&yG65F2m2mc8BBXUZvG=rfU)dv5 z$qU}(8fOsh@kdpPV8g2ZtX$Ls5NeStcEa<+_w!*V-I)2ac71k;L%haJ!BZ0^Rim!E zjIy*2I=Ed0KO4RjID9O)oAG7<6z$LJ_nDxc(G%w}scfyp$BFVV?fzxgm!(W*2$$>A zKw#0-=tG^P2pMEznI@F1omoRh}Ajz&$i4TW){T-6sg1rq%`Nv#x(qt9>I3YM;ee6CHj!dv9I@^S-Gdk(J;S3sspZ9e({w zYACy*JF8yC0Z~90B5+$(Xc0Q8%o>j05QwwKvQXqO2*E%)J-ur)zdL@O0`PO zOzcV^+3gN^f3lkg@iW&=7R;+k+d#jkRLD$QwWX3h4pntusdCs`PJeAk6^(gW`}-aK zu(K5q!n{u{!e|}2jBXi(Z#f^VYJnBArPBP%`gKSA9PB6=MrJw{etuV`y87)_dd^Q# zL!1{BR^tg}tZL|06oHWOk?-T;{`k^Y%U04X6yzk44eH?V)w-W%_s~Dv#RR;7#p<3( z#X?Fa+ZBPt3cc^)<#&%de5o7Y!vcv?A9&l*GlGd^K-n0!*H1C*)F~0)`bf&uern{T ztl~l?V5QY;yko|rx?9?H_5DXnwxK-cCGKy9kg@RPJNkA385!>*!}*8b6vwe*$4ud@ z38|K7Kq?SK*POH1N}H}itLtZfM2 z1Aq!xUxvL~9MxqUweE2aw!kTStf7;Ttn~3hSkh~Ec1;t$oEGRO3%7iKbjpewxDH?W(1SQ+lFelp>S!pS*`9^_1FEc**^;VK8lQrSVj7pj2 zC?-y1r79veLQ|sU)f4*aW`^Yn7?ED86H5^Z!l>Dk4n- zN^4b z_;1%qTr(3&^1xfQbp_b}Qm8p4O%tD;b*_R^;|FpeTpoqPw)QJ^g9ovwI7-3y)P@3{ z9*s%eISSWNYe)O$HyT*arQO9oQD5{Zs{v9p2bLa4I*~htb31oGWBT;j0;yo|wW<1~ zU&95U5(}ADl=Nxu%w*X{^0e;)WP=Y>`W09uUWITX>J-?I{#aN6_T!0JWCA3j-!H4i zrmr_W38QAS-Fk$xf66m3GK)TJk7xCYU}qk0)0zV)`?N_ZOqNUGlt?8^1mZZTI>}!t z5Op}j_v+)o>?9t>8Ud!+{rIfo>=h-B znl$Xj^<$+af`z0Ucuol8h`8RrK(BB9XY-;zCjTlM#-GMn$3@c!EV&y;7fC1kea}Om zORo}Vqlh%@&mW6afO%BaCuR{5gs&kNNeOGIZjKv!MhU5-g;aH;jhz@9e9Ef;RsHYd zK0%FNCjO)?qPc7q_wXgc=Mne$z)N+G_w(mFn_%K%q~9Tg?79@cE=N zAGlQvg(C1T?T6X zHz1txdm2r04Y~Cz9Te=zKV?BlGVDU-S06jGVnAh&)hXt;JIhi$_8LBJ*Mz)GaH6uo z)1sx_kQ%^L%8>h#*#D?uLwK#l%Wem&<3GD7diBx(1|bR?u@k3>?a!L?a16FFQ8K8C z!F^+gGh<#J3Q2iMwbvhrEpHTT$D-a^{dpRTaouQ6;*-Rq#2+w5zRuHDuoip1c6kW& zpe^Tah51lp&$_zbqXjkMyGh^Q#4>X3p=Yi+Yn#0Z^i+u~*Y#0}jBj#yT>uytvCdZ! zp9z+duK$VIWFbH6xSjp4>B=j1ci^g`2R?9e#(i}I$3#Gi)d=}~=lvXoVz z$1v0_MS`hEzd$zY)$3eykh|33bUNP$CZ*88V%pj(d;T>zj=@_IL54gLb4%i}UqiW0 zD*o$vn8^R8ZE=ej78EvdCC&Slr29#7pp4DHG8~o~l&X;e6^P+djg3^$bLaP=@~WUE zb_}(a51lMpDR^#*A4u1_It*_RxEQFV2D?5*b4sBLU)ZR%@8E3wQVVMOavxyGz}H?5 zaN!faY={)~pV!K_mGae3Exr8I!UjQT1J`p(Ns4I2wIsx6HLXXG@)J%%Cq_Ft5jC4d z@^T$8T(_S@k+StZdv_s(oOr7KYV3s5bUVJF;4!F%rb3RSapVW5*^2hFe$XO*mhu>w z&#(M;US;;ag!8Y16xosv1P5Nfc?>|4u>wBskKVj)F9E%v{R%`HZ2Sxq_Ez#a^w3en zTa@e_U{rrXjrWj68>BmQKmOh-ka>uj9i!P}uv)A#Gm*|&adX~rFV})~*(`7=#rpdL zRuP899=nm?GDP1a-N$ag3fLXtPD54CNGyVWl~-AEJv5o9I99;Ul;uOedM0-$l28f8 zQ%jBemHn`DTBC~e7KZ#bTIIQfpMzG*lvaUUc6IeqQ?++OsW-hbs)FD;?$)@ zlx7Hu?$SYa)TUCa28wX+{mB zXcIfLaBOb!KzpH1Pt!M)Tey~bD73Y$1VV@xCSa;RARdy=11vWpwV^nU+!kc9T`wUO z>Isal^a&$E%GB+OByu;d%wRL7YU(BSmu;5ly@)SKtcAbz=(jtR?t>S2`Mu+X*t5HK z`$i`ZPLwo=OHYh)!u zFZihJVV-dE$q*I?JuvNS5MFZUx%IxoU1tH=V9M4CFo_Or_3uR#FUfNFm&*<vYWVJ}Wq?z{0p;Fff|!1Rt*1p%HQi4>X)Wfv)0(t9IGtMW->DQ+B>@&5 zoF91kFmYn1bPoSMo@}l1fq2>DZTk|yj^h`*q(8eat(3BQsf^0uG^pIs0bleIdEhhg{m^lJ82H|4$ zt9yyqECJ-*kr~a=ft-x?-#X7Q60p?PD?fGmv5a(NVRTp-BKI_K#wEYn_O}Kk)A`R~ z;AuipCQ@=ewyhbjSARaNJ~EG`>u~ExF8b*^-(g8?*EO8AqQ^(QHus(jErm#bd!ykp zb3YM&GrE{A(f5Age%jL9{0m0cUPXVb&`ritW*tsic6HAL^2vIF=EzC#F5SwlkW{(7 z=TO<{-15O5hn}~*x&~%Cx8BrjrgX)JcR%@@#u83V#(0ZafXov*M`JEe7W-3P@!JP_ zTw*Cfs=l9IM^{-bMMYPpepSp9?>QjOF`ix~koTRYNJa=pp|s*hhOtJLpv3KBj+$H7 zV)^>R-vt=bnH8)ya9_;86#;BvxC8Z;qHIGRf-Q;;q0Cgql>^7tyXS*Ht?XPusl zzNYfDMSI!JTlbO_Q=?mM{ZvyU_vejs{<0$xEq>^BYUA>Rwf%zAPTeD=YX#PC(&F%!|wu=o=0fgI)dDl0g_Qcy=YYD-a$Y=+p zW$p82R;}_=;w5H8RMqn<>o_QWlvfQ(ep2{Y)dAb`P$3lF_4?`eDc+6S+Q6fyW;JSv z8dg5YUYbW7FE*~xdDd*<8X6~#R3Ll5EJ9@U65`diGEb~Beyz+-?p2T6&A+zTf>3Ud zY$=#U4Yk9h!Icp5V>z_S5??7V$QY^f|4s_5vN$yD&&PVS9> z(89xkWc}1PN>(BbI2mVj^&{*EQf zu+Q&+KP5ngLLqpS@%H{RS9K~f+LGlzTp&!SR{G}iJ22c-yS7XH4Er^dL>HW89 z;_5c7&HeZW?yt3QZM;l>7obj7jI;C*Ix2M+vs85?2f+~@V)26>Y2b+ZRn&0GV3Q;- zeR5}2z>D)gdzc{nyrPIulZ*KGS%4&>JR_PLTiby3aXRw5SZ$*tBud8_tY+kLbmW^XP zaQ(9?5DM7Ip2>h1p#(LtRfYMaEKECcEXakRd_I;iEE>FAxrktM?zig|28)_-Lcg9P z8b&Y%Ac}gAY$+>!&NSoU9t`dBw-_0<N^QoLcrS~^Ah zh;H`;m?+Yx14&1aop>rUd0$FsK4a8pniiJkEOZDMtSzdpuOYVa;b>=v?bl#CkTHn{ z+DRMF;*Wf#L)Vgbx(KV2OgUjbE@x3j^2iB5CtoFoWGRwwysUT_w?oUJ7)sdMYajw< z3<@QReKr^c0SvP{GQI4^$`|x$GvECkPnAjedFY;&j7R76n`+7qj2UYS?~70h#I=St zVHLZ>$VuzyB5gX@D9Q)gg;-pVOCPB(o6bM6FTCJHV3`yb_3-twbVyz*d26?;Eoce+ z(GHZRx9QQ0v2bXN5MZZjrGlR>!$g*- zsbe;qndloBTJy#2v}fpyy&1q)N6%p=FcgWZ?QfsRv0xvaJhgst8c0whnUkxYLF{8kyUdkWeF!vT;donDk&?RMZ4V`F2O^fmoS6=8${!c64T+q zE{bWoqiqSj^}A~geV}Rbo}f4H30QPLaBf2G!xoWFY*ss?IY)RN7WR~J9)9_sd*8-Z z@;kjlqHmRu%JwTY45cmvTE~v7IRp^i;r%95&c?`^&dS7iAUeeY^&l}JlWO=)d&kJ< z%Jx~V!fXuTe#Q-nEbcdlM6vrpj5r|`J%QWO>;)6bg(G50JGW*Yh^LhQnmxC{Nhf#t zL&5O)i;>*kZ3b+yIpC`{9GAGc{E9^x9XemMahH8-{?;+v+%Ec$xX56!t%BC0^**yud-?B%vDil9Y>P(ZqyDIx7>l~gGO>CTBL zDMM^DtFyEpN(;oU+d($(3$Kl4kh35rn5kG*ZARCmg}V*O+*~G+r)R;NWwO5*!~PS z)+DsoeX=L)=B?5Iz2V4K9}p^ZO{Xx{@RH7pC$#wiWLLua>ODf@KGGbx3GCVTIj`^r zxmD4*$dRg0QfC!t+OaYdkts6pMfBX4Rb8E!vtj5R{QW*-6Wo^Q{2`iGwq0xMCgPqJ zqnxV46Jz%BzWJ%tOR}rHS%-6YFHwbE=6dxlaC;$+$n_yB ze@b%o(fb1u4i*wE;@cBp0!cd`-@mVd9}biACCJXUu#L%VJVXWNksY#Zzw+AM+Bh;- za)wK7kRs-sBDy`8$n$S_wZ1N6ONbqozWnYhOpi!et_C$qCV@%~e=^_FskwjovHqLO z(LFIM%6(q+>|DvS=FOapFZEt529d?rN9KM}GIcQ}&9B5&b+z_uYCLUKujgb$p>AU{ zgiLb^@yR61l9#or^Rh^vU6SB4QWr4#HrYu9K4ry{n;B-*#UQdN^$G1e%h*TC$f;q?SO8y!^f=ME0HG=4U5KZ=V~{4>HdDChl0HoNW(*sk(J53aZPe^8Z1GLuV__YXoo|k$CNlt8 z8Nlbb&sSu_Khpi-_jlk94-qS8<$J3zCOpGOn=PNJWxR!EMicW$@O2pkC3?d(w26D2 zp}Y%lNbM>&d z9?xCbM+e0m+%b%=z(5GuBTx25>$(H!zPehpG z^=1h2dfk`E+P04ovQgF7&syoUP1M{-as?u&jP4N*g+%_H_wq<$nurp-E1i?oD<*WUo5hHnkW02HY7W?TE$Q9bY2#S3 z7>{Nx)U<86J1x3+&+C@;1cjPieWT*Dmc0pz7iN--^003FDC6(-WYkVAA{$k4?5Vk4 ziVd}qgS5G^VWK=@e$6EYh%(k(#i{mz;rZbRVH0=LK-(}}`3Nu;m{TzyCOm)KNJc33 zNqMsJ1y2R{ry5pMe(I->CLZ}D+w3NW^D)%O5Jk&q?zSuD>5NT0T}$WcFK?@zliul3 z2skDu{Ob94rNB|+a6HLH>Jrj>^jyiJL0L;Wwi<3U`S?9v@&OGxSRu~gyV6#6x2=2{ zW-zz0rz-}6H#om%t4^HMSUS)csh6ZJXzPc*p)SRs2rE{@&#-f={V{S|XL;dF<2YkE zns+0u;YEn<=B)i{h3_(HNxieAHDQ)pMu5Fw7U8pk56}PY?uhWKw;`iq4O=_Rra-e|KJGj8G1~%w#xb6)h{PE#oSq$5*o0h3r!AP}YyDsF%y?s}dB& zsexMxaY+O%-aQzNlmR2h=mA|MOKP!O+uZhF^??-ZR-Y2n6ZX8f!>ulT{d)uNml~r= zC%|6|HBOubH9cjVA_nn43b4|-9V}rPI+T%oDu`uwtb>q@|VfGSmE7S;B*MaW%p(^OLrcQSOVU1-MOsPaBpf8BTRTY{{Q~ zJEo<3Xc3qh!!E(wJ7ll2CxWJ)Ogetzu>=%U=eD1^C|5;(J{MccC;1moWUaRKDy^B+ z9%%F1hW6d7ATSV}*y3@vICmH2pn0Pd_nP^EsrPqFMKdty9E*8PoLhV3)NTm-(xkglvHd!mbq4RIHo!dkEu@j>>*}Bs=Z}$*t_o-NmJPzIcRLM^9a>$8~okNI^$*P zZiWY`Z>#`@dK&xb_JJGM>PK%Bu2=4(n49IF;gdg89cQ?GEBaPIW0Ba|&hQYt9HtPL za3jD}a-Tl$mxGS7>=wtBRxM@{yjKVT?N9?+VO6=G8b?)vmgYMS?=WuJ%ABv7E<~|( z!}RK5A3+w>i5H5LgIm$rHVI`hrwR2J-@eh}H$0YvXR&Fb% zxAs+zGeYkc%ivdIulore^+<0G%FxxQ@EN37I0ZYWF(;BN?+=fF*hcMV!S96CgJg`l zLn&lBgW>2FsO>_r+Bsit@4mFe&Pc%-$~3f2nPtf1ruZwXiV-P1m9ztup&H3H(`p@d z=dD&e4w-jhN*e+hLZ5cyn!CCyArq7iD$0BILrM;E$H}zU5vBhtRqRaUD2-f)R-F=G z|M7bITXr_LlK^%nedeyJ#Ic%~>F#1nr?FCjM$bvnH&dA5hX@(JCsj4VBnb|QwgIZ9 zarAP2wz;w_gPR2ATe(s3zO5o0pdb#0#((hQhn9U|3%rVU^9kK>Wy&w$j^sEMEG^xaqnZ=jv^A6p3=m#r?d>9cT)4{@YIG6uhx2%g6Y*Pgg z9kmDnqI~|8o`FiG#M>+0^4BZ5uB4(;OElE3uBx1M6&+kyN=(SYyZo1kx__JQj|#sd z7UEUl!8psms>>$BQ&mmh$_n(#Q%x6$EZ__&Xqt@Lo;?(+&6&B5V$Pr4%a>Moc17Ja zHpmTVy`-ByfE&B4cJYp81Qz{ZQQzNP=2a|uk>Zk2(78f2Ewj9~(BfQqE+k76j@V-4 zd%vEH5&lwKU8UqU^edk8e{h$;C@&v3#!d}x89@yF&7Qe4$9jtr7 zR&^@<%r%yEqpXtHlx;yQgKlyNwgpZG{B?AQCTj9yozH6^ZWCxqYYFasV-yMX{cq$;B*j3-NYEj&rKDyGHq}v% zev{5b_hdmbC5hVkw{{^-wQAlU#=9_Iu z4I2(mS}jlclIdv2(_5|a5`Hcw*B8Y9`1hvf0KF4)ID?;>Yx&QW8&FxKsoeX}68{af+>r+#pKFG1hk#_^OvXTKW|1`lo)6A$- z60hD)V9od3LP+n6vGVhpU-}Z&HYEI7Lf(3Bfsa`ipPV_OdnJ_qsBV!uXCwI7!tk_o z9+xp=OP>5Q(&_L!4%ovs4W}9<$=2ACPC}*w7w8Yf_*+K&P1G@!P=9mW@GTDcbT(_g zJZ1DQ9w}oVN1{$1pD|Dr+Xz#KMh=?|B^Pu*pjzTm3%^=Ca~lz&3jAb##7hxS;=aoGNY)niI!>! zS!g?w#aQTr@L0j$5}Qgq+w|X`Bc31hl73-3&>@+n-Y!*bZ(z@S_(k#LueHp5rkckO zT0BB*HfOurZc4JYi*M9N+B_y@2^OAu4H4t1OwsMgJ816Sb16(!PaYv-=g^JJ;nIF= zQ(c#&Y~RjvQ;&&RO;J7e@=v z!UT0z(z);k)KL zl7GBZErI+XIlbhVHgq1T>-lT){4aBxcph0wZd2TT>wQjSG)g;7F2?%aGh#+R#RJ!& zX^GyBFPt&~p*yXb?cBYE1_?#oe3Nto?(Xekcd1+qmKrN$g!wE zk@SG|kfVN_sNHEE#nFvd?dz4RGZV&f$OSPasFo6!9$WVJ0 z%-y_C4@RjM0a^Lil4WTIe>_z{PFi76H;cN%h9h5nTlo2SvexpDTZb-X<)b>O!!hAV zVVyr?{QlRRr+#Qw-q$OZQ((fs(BcDWlgM07+$2XfHq#aNIC5paHA?+7oSM0&_&Q=X zjA3%@z8;13J1g?f>_+^KB04=CI4Nkhct}`!XMuG?BQ>cd|Fjd)kb-3$4WAfd!Qv!2 zPuTP`k)~!`S#wQ=}I}ZV7?C;0w2)&mXkVOc=C#U{kK2nq>S%CN6u1tCse1 zD7A#nk_h?{D;rP1(Cny0zIhEx4>g0v2!R2@wMX)wfbpAZ zl3e~Gs|qo1`xlIEq>FJFsSloE+BA$r%?F>^2^nXCWiAbfGCA}ORec*h`rs{n;X?+` zwEAoi^g9uS?4^}d@o2xWQ+9Y_Ov_8umh0uAJG27s`PCUuwyN`vW$)9y6EKxh zO+j$rPqJq{9~To3fA{*ET=|dyxM?N4@NbEi!gn#=h=1V~V{WWA&Hb4xXCiD{qTtX+ z7*C(J=d7ZabZ+&M^M28eUi)@=boE&sd|-RD09vm5*ABZw%AU%t>8h58cx0>@#pFE7^tAj4uY zK`cvaCOMl-isfvJAM%lQU=(mDehX2hvo7Bo)w=AUD{uPt-xQO3QfJ~m82~VG;S=Uw zB2TpcltXe;t=oiGInZG7n$&}8dJ5|vJYqa1#87?7|@=o`<4 zDd9hcOMl4JlgBeoWQ>?Go~^q{erQrFt+>V5Lc7%RaOeDvB)R~$0PH_mhffC%&#FqE z45}Me#8&ew5O#g-x0*Lo4UxWg8&jM2K*>Hi`9SEm@#`|qqHf5Ks1%RIpveRr()Q}O zYr**5bz*l>2__lUfuU6^HxgH}NA5h-eM8I4s7u6{tSZRyrTCV(>0{K1@Rm~~f!)1S zwdD0UzP%VJMZ2i%9}U%iYQpe=InbF5dX3)xNK_8R# zYIk1!s9Veb>Og3tM@Gi)F(EHYcM=|jT#wq7u}0P(%I2n-HAakGLgyRTem10R4*2($ z-yIYV##hMsMM>$e*>$C+hCLO`NKK>uv7n$$tv{HAEhv`j`Ef$#Y@+iF-hk@cQDdc}49(Nt69;OpkmLRyE{2d-qf zEIhScfsRqV&_<8*EmR?JTYFT8hI6T%YUXfeEAIPhaKr3*KlTjzW@6#vyc^~iAk*m#t@UwpR@*}1m%3u3=cVzBYLb05cL84Rsl0DsFsXGUoK^+fZ zaOCS5&gPn|fXpAMVp_qMT|CN_45%Qx9xa~4Na4@DC+yCj*`9I26dJ|_Sk~>)_&8sD zs%t*?;QWS0{eU>)tO?prFLekv3^-fE=)V15TN%EUg?9VuZ27$0|FR)$XrJ>ZtqIl8 z`b$$kL+%LiGJ+kX>Jek*;5^SyFT0q(Vi=KVI-75l!J!X_ik026{C@S`mbHlk_a%!J z!^uqixezy%IcOy7yAemyjN!k#ayf*?B>eqB-QYxg zE#pYrTI`^xPJt)^`C}B_qp3+t5?@VNeodg}c@YdM*b3_*3KCsM&R;D(ASvNjZ2z-I zCEej7v9wSiKt41z{-9mcB!H`nMP7FAsG5gvmF=<~ zf|u%np580&c!sN9iPDFwr0-A@DFd%MGtDk5e_3&El@V?1MQu#i?HVP-4ziDgSq%w< zuOuZzNTz$(Se4Vz{5kUidlvA|`3hI4sBNFv_Ycju#PRUzy|{Dr&TT?OrT1p4!!4$G zZlP#d9+-GxXVFoy)VaUwJr4Z?2%B4$2DAH-RV2!)NgO8H5G5d&NiE{J9lsB`;c?)L zjpCzuV5#LTgt6}$@#oPXG~33MX-K`(BwE$tpDX-mg?6+rC){xJGfdhy-x=$cV))#{ z%b;!i7&UD{9v*SKd846 zpW^04NjhnGnCuPJ4DMjP8O5?Og= z99)WVKBSWN*V$kNb+vudz+b)kCN^Ge_E?BNG`X!~#Q^Nu&NDc(#zAPu51y!`TS@|P zR7Jo8Oc-y_w9S0HL`n;jKZ@e4sV&h zU3oJ;ZR@-yp`#j9PU!FUhBlJYAzf771$u0{+8z8lu_t80W-~8lmAuDKcC|Wh_djAb_#O*8&;N)s*<+BQSgE64gHLHv*OxJE++^1HYo11@4`n z6u-(-kv@YxE7+{Ic+QIh_~u7_NB9X3NQKQZ)1A2 zxyksSSDnpf^mma3;p_kSUd{ot(WXK2U21a2=m9K4qmV=pX7-kbf5d@80&1! zJT&1*5%RNq+#Ws*OX_ROeXB>r$RyU^6`RSm_V7P#xpqQ{q3J;6Rk6magj=p`WKO;i zPmgGb^RaU3J^@HFgQ3F}*#iAll+b~FSA?>g4`^H2>(js|BIM8(W3G>Bu6y4Twa=u} zQ$4{d5}p#b?{bUzs-aDBuu}~j7h}xAx$4otD5vCk^4a9rIjhd9CTNuDD?EylIw|${XV53HlWRU;Ldl{~{|s z=nnVSHmrWlFhqN0d@drF@~gDY%A&HE?_k5Cy&$p^_uR|K=nN(#f-s-$6Hs?+Kum( zbY0w5I_g%ZrH%J|!Fj;%BU+sT$ts&TBS&)C9JAf)+Izy63a%%9_mZo;eA1MYeBhJz zZ(_ib-5b9pp*gpYL_A3)9VE%3c>B>o_Lm4EQQ6T{4M2AP(mRS3koa~CP>$z`je`~0YwF8K!L7ydNds_6w ziQ8crV=u~Z4Fc&vHLP!mZ47b? zqh@9laWYSOb|nCy0VT%Dse>pGVq{T{xRd^eM>;QiN=?+x=0_7zxDie?%@n2XL_f{% zv|L@cnlLT|8X`jPDy5EmUV^-}Feuk7oV&4y)N;cww*0rq-@kGh z4PS)mr9Xk;SO?W{?NVr+-lAV4Y}d<%Z#+c*>q9mU3b+pYP~q=u6L}Ifwb=|2CO}D$ zx~`?}*eKr%DHc0dWg`%M=CkO|WJtRjAZtKO7PTV#a~~AW=!IWVz8JRG(&mHfOR^4m zzZZb*u}VCGqZ&U_*}>`ha?lXa!I(038^SjJMrg+QlChAcxk~&d6U*naL{)ORACpOq zQ{wg?d<7X_ck9Y}yyuZZ4K;>ARucA;{YUYH2au zI_&(IMi06C-4R;>GCVcglJVo+(q%?@8(6{Ap6zYJkh3-Fq0BXpdKe$RsXm8)qH1*I zgreIW)A&n|i6I=GnZDG?$yAa)t|&8{Uh8&q%?An!JBuRBSI6<&&?Bce#hrS|jC;p8 z4Sut2*7?1KZpz0|bj^-YN^#uf!L>KYf(yP`;cx(b9}%memlp6tZi_u@pV;u8Mki{z zsSn&JiD}#4lN|aG9?Cvc%W&3*i>r~KC(MJW^Oz@ zMtQJN_hJtL^XHE~_-;LzK-pNhpeAMPXnb2w-!<1Mpr&7d$BvHP9^CFn-RK^O_pLL4p*Ws1;)6FM_Sy+pTA|m+}Q!``v5h9V6;U$QTCObai+l#Nm-< z9MfV=6Z5V_Jt`(-Q~5w4aSVB3|K5|jnxgklF3B@95yZ7PZG=bo@rfA0KUK4k3pvJ) zm|>64OQvlqrHluZXyPw@qSG~$(_9n&@PYuzIuDL9AJJ^sfIBym1A)hM;=~7=6|KQO zxCW1Jx@^#+R5Sv?mgufe!?Om%e1PaTbdW=><$C)(Vl2A>pfaM&-weGHo@X?PXNapK zI^3j7rpnuVaIGyh9;9~{MLV~XQ!ui{*?j&JdaQ-zAi)n)Og&$>lb+|n?(q1h^@$nxe6GNr;@=6p(YR|cY3v81InMXutBPt z=fT1E93Ps{=kRVAKb%gRtZprBhz*!(@^!_fB&|=fd)~nvwhNf)4yX8eB)q(~cHfAx zL@=!FrEa0-cBl0D_KfH9l+ARoL2uon5aw@s)91*V{jUB=k7bM-;$doFQs>grlI|>I zx#EQs*Fm#%^o>Xt8Fb45$_8z(%AuJh_H$x_mJ}i}Gxsx=z(d$&Y9<4GXt06pEY&El zHB!sZ)P({@16SK*f;2TX0bx78-A;e*wlc-$4?_8C_x%1Q7vxK@v-3uU`25lCvj1YL zA%v!48@0Pqm{VC%(I)&cC>fXQ<$B!vMY2zNWcW=rcouqscch1&ZV%S)`ZZ&arfSPl z-Czh*d&^z2cStWz#F{Tr&mXeYMnEvl5fduWf3#lJ?{|h7Jz`C9?UlS6J1iWCw-P$} zW4@|iYAv%VD$>&h(5eIqiapEs%vk_(ABjY&!mx?CR$!YsQhkfPZwE~1_g)90{lWG{ zpyv|aXMS_5b~Qn!pn%$}e$&)NccyY0iY;@`k=vNj`a(!;ehoHg?Tn3&8*^ZPz2^r! z0@IMcON`&V-9aa^JcdFo^`vqJoo;vT1xU7@?x=x^B3*d1Y83R}WOP>6?*?#XfHVxv z;c|c*LYRdaY>3O6cZj6VRf@pEa3)zs8;7pbO$g9PwS!emy04L zW&FB#xHeAO4*<8h$zA92M~t0PcBZ(jbq-l#O5jljKNl<1%$hTVAK#un+w}EE_6k4r z9gcRG+wRAn_Lnp`U!(ztA4Hb;s3?HXIDN%4w+jS;cK~rTQSBbDvh&}l8SUE5yg|i% z_jGHwU)oOOuE*^6YvE+gr#rn)&d%Gjk@OHk>9xg-G;v@|qe4zLa0eKMrDiMO1cSM^ zQWJp1tij_M4lE$}hCSFt9%#eheA(#eC~1gD?6~+WTTYP2Z$`{&aoHgH;0RL&JtLek z=9#XZnzf%Fc>Rwp55s|uEB4=$>2U;=g~;J7*m_RT&UH}sQ}ymw93OU2b6Yfbp`q9l zug<~a#AnC-0Y^d?R}J9jm@-pf>*n>*OnPPn1c4t>$?~AWd@g!{TUa<5=i+p|yA2>r zDTymPeZtc}0{h)W?)UQHhh3IFY$JWt;kJyp7xQUm6CBQ6%Es(C_ju3#`^eyb*5)B} zoui`*EX{Xw>S=IrR!fUy$WC%jc}>mF6EqyU{$k0lC1}XQ+`oFU7V|e|ayZv<^An_Z z?q35iJo{{GsV`%}{|)c!I#fXH*;#PMJg*%hQ#b}1#`oMC01Z`k{XQMea|7rD zae#(xfq8Zq9D4${G|KQ8(CV~fyHndmb%S%+zdHr zn%-_f2cyS&axkFgychq^W+X~P5dYXc!Qh{FBnpcjNFD!W&PzGPSYid+XSceDe0_W% zM_9X-Q(Han{4#Jy?fuUK|qP>Y1YPwD7lo4Dq~xmdG$w^x?uJ8uDg zcB5}E`JZ<^`cq|b4timH&pmL71bYa>j>TM5i6OXAq9NJ1#JvhoTnUDeRnKKaMN3N` z0e#RnSjb*3MRMeHYw!tq+eHSz1;kF3jGtLQE-uV)0>}DaSQCUA16uRerVQE}P$JMR z%MrM1n6_w>Be}N7maLNduhfaGE^E{~OEfMBZ5!bO0O{|(T>)$?z6>!wa5p1Km=_}j zv32gPxww+!ez>gh@5OO}S+RJj-&()Z61x49%E`qAPl+vF>TYCUH|`anwA@8F&OQMg zop|PB#FF}Ks0-IM50fAxbZ66iGkBb*w!p|jIksq~I!vJjd*T)r8eaGPyQJs7z`q>Ku;U}PF2t7C`SIXFl z?5!1@X8Xz4-@EH4G#?!-0|0E^SUr3ld?&i_$o#Asht|-1{f_0^`BRBj$&au=X*$r_ z0TqFcaxGtvv#VX4iJR70VrjN@Z&1xM*p(cnuzIrL3Z48sr47;O=|@1{0;9m*Q&Ixv zYVbD~)tjng~%tF`5iA_7l3=6 z#ox{XMaRD5V=<&jHL{b^RN_uwJuM z$7Wz>8Ifh$b0o#lN<|7%Cr6^y7V_>O z*79_&tG{W>@0PCtcKUo{8i8q1kht@u%%S1E(&Ub73kLap!;!AoB4$gXRqCVk$$C{7 zJb^xFtF4VR<`YA|r_{+hzXkLRV~`N3B$<~2+j_2L6)BDWKCd#R0I!R}5#`E2-YIB< zaJQ3*j$Q5YW!@XXi#@jizs4btt@hdj`vcJ}onTF*KAKJxRobNal!aP3A>qPw5u&I6 z+9({L8bs~KzoM3_a+H;og#Z<}UB0|~=o9I6fq9@44iD#HE0}FlqPwAjvW0T?Xp zFmTYfJ%iErflW{aDm%l!`XLm^cTI%v(C&^z>z|KsAjPDP7LvnAx(qFYQ$yhWfc4i5 zZkLsn(VIC{y~8L-{1V^%*Smq`CQIB|#4WeyfNoLiTo zvlc4YeGNdIog1qDu7WUk{*!;MUTR|eQxLar)a_Z~zU(ofO}^;bqQlwub*`;Ptf;`( z?TnHBox!MK;D~=c_lNr?0hhoySfjUQ5%H;bH(2NH@)6i9!-8jcOI zD^9UXp0TW?N+#;1&bowSrTn5V22oest1N?cSPfIz+bJU;y75Bd;w&^l`T z6BXz(-P+el5B+7!htnn)j5iJm|9SmCPyXqi-9JBh?^qaq)R!o2-y}B|PbUmiU{TTG z-&`2@$=Xrq*(j{#0Din$tQ2ywe=gSKZnJ6eZg2+k6?D-F4?Es9LW_Mw=0CyAtmjl5 zs)u5w^z{L?_*(?5u;2s*m~Aj)SL)KS=vB2K7;m7HAOT#f zAOZK>ZFK@(f=*f2$k3l9-nqXo1X|W*>Ei(yEgPfdFj#W)|6RE_)){n@fe{R7bH>|7 z;MJ8}riNye*MMvph*p`-q0|8INqg39%lCdQ(A;w}ZLKnh3UrRYa{+#k>E_>&o^UTg z(O;qmU5%dIDk93KBAdXp{-<>2F_R(92_?YoE1e-0|PLEh-IFy;UTw;Vd22oT_a$DB>% zu;oJ`Rep2-=KhLbBKx=3XK~a|r!S@TC-z4(m?M@k_C3xx%om($Kg-Al{4l<}=r0kt cjlJ@l%b?kq`Ogi$bo@5 zoA>uWXPpmct+T%{YuJ1C6L($Lbw9BkID0>F;+_E*55K(Eag()lHFvRbaP;4ni@;1MK%v5wMxOpUuM~`wEYAR z3L^uca3b|ZyFPc)$&)$eITtlA>ytB7L~w*vrYKSdmXFK*!fj{Da@6FWs#qro!Nz~cuPBu zj<9O(x%s?eDs_nQ?9w6GRj_f0_ei`EE*IPZ%)KQ8Kcv%_N333mJ$U#ttSpSPiPc;n zO^q?r29JZVw=&4!`6ix7-uu=E89#3MhYvDBBUEL>BUV&#->=(b`btQkOiXb?N%NmJ zwxHeiL^%%_R0oRqK;?3Q|Rqn8upv z;N2wzc%#&xyX~UGm#QW=2Yl8!enUnH41t+dJv@hRt0@f6eHmzyF!}tvc`^EN`1}G) zs`lRgEM^=Mtl;COiLlbT-fq*H`A$v!rBX$34ltczc#Ua zeE+U|b>6hdFs&ELFx9-q_2&^}sl#|u81?a6U0-159rjAGP{HNE#%1W{8o~yF(}=IR zRI1VBTl*Y?dIa#%(bSxW-U&O!36eilc=5WQ_1zOz{E~_`Uia7aK#5>X6{s zU3J6*E*4!cl*H94#=viX@0;?})YRRhPCb2{mE5#6suyE@F?3{m9Tcc=GM1ift{!U6|wryk->^^XfqK7?3i*SR&SCKf5-^9yI9k+N(ge^5z2FQ1YmWgf`S5sm@V z?AQS!p2drW{{44F`(&xuPjA2nm~76HpgS`;D^-B~!YkA65JJ+v7xQ>;Fd)C=8A~6e ze=kWa6oM=*EhQWTo{7>Z-Yhn|>eN}sH=X()gc*6RVbKaXNs5IA1jIfJTT!Pa(i=57 zGWTeCH>dD;uFfWLlQyfTM^?>0A|ir1pLKQ}T)(7!BAsfp;HIAxepLAAypBiS8_|M2 zD@K6Vfq>ZU+2qq$Z}D8@%d!*b*|^O5C>{?F&x?OHpFY+1RBoK<{PM^Bq>?DHE3Z9=4;i>g_KiHu4rV%UB zpTAyzd#O%K+x$96v&UxV(ZXGka(ck=u~X?mZaELdpS#>I|Jd3P+nK!7(N`mmz8g-A zHBC)IR|teD>h9Kz@q0HpxhL|ZPoA0NkM$|)Z#Qx9_{||DhSaZLzf5a#8SadXVuXnS zrsyw>HOyo_t2;ZP>$Qa3xU$=L2v=Ww1athmITLxe5KJs`GrE7X=O5fdxk zK`L5^2LuGNo}NPN?Cd>~?=Y$R=frCCAC)Ag65HB2yA1 z=SVWPg}$FrjCUHC@0AO*EZ2R{QwBWJm6#RlUw|(4H2^8O(OJXXG}TIW@Rs+sC|mS+ za!N{k>_9XwF0SLVD3Gd}6|@%5D2PY{=t1_B3@~&lo%7WRWW6M(8+1E?&gnv`_8}MQe9B zr@fSv)OrQ=Ix!JZN)Vw{{(Rgwoh(ABJ`xzBlduo`}?i z5>4l8-AN?6bU3VhASclRp1Y*iPLnj;CT;~9j#l>)>o}s$L?M}Y3eL{ePM3xrU8^5t z)zluUtE)40PJMry9ns&faCLoccDUGlb>Ij@&Sp9UnDCl_Ca>`3jq?w(ZDdyN>0V!D zlffH(wVRuf&f?7!oau}Xk%oBqli1e~1&;<+-DgQzzoUBBJn8v?L~V4!v$`$K3h$uc z;QYKi6WKIZ3jV}Gv`18jycif5Co`}+a({n+&wnLFa+@>O{1Mwe9c_QQ*cr-zP-Z1% zPtT@JfZAK(q@YuNAUsy+yJ{{s5mR(@w26W9Vtyv1iUKPsr-2Um#P@XG=8F7E2HOJYYlOHsR)qx?{MQt}kt+7J0v zRU{Bu7%@NrTJ+agIeGa|rZ0tUWRVdOq;!n9e-KksQ=Q;qx2o=n>;)-EU@tE(-)8`e zB0NH>ozZNv+gHVjG11ZFR)ceMb59vgn4Uk6pm=m4MgY0mOf<#GIcmRoOFL}sRV8Lk zP8hZsDk(}E7O6=qDk8$`x~=RDI*%Eq+QnmFp}{^eDfemeb7p2VD)$TvHGTa^KC4ki zPEG=i@5)l3b2Qy_E-dJqRp-sUJdiM3;SmW8-72C}6Bid}<={vhUSx~l@|u3Ds!EK! zy?sbQ@qDnYzFzY^Tn8%*ds(wo>rEL0Ctz=1PL)(%Ur#RTaVTqM_O*C++@bj2Kie`u zryBj>;9&hzOW)9tQe6vV+mL%dA!x$-k&nI3-TuCvbEz;Q=iNd+GqKi$)n3{%Su=T9 zmOa}Q&B2)&c{#X};WfLvyCkO&{Bj zI79q0Gik7S7ju1HP2uONoF}lR00E30jF725nC7|ND6j=r<>BZ)tEq9;zbo}$A%skq z>0)$a$BxP!zeWo0s~ZHu;C<{L1b{A<@a&&Wc+4Q`?&c`+h+THh8*USbJ1JJAEX zJdBV=by-X-to-(Nz=%}iDJ!c&nd^Fyf5h_RFUC5}C1`sr zJ=f13M{k$UdtDwTw`G$B!R8vbg? z-(wk_drleO_*ekBUu(@mx^TyJGI_&6{IsaYaRkQ#+y?3Qe^emYzdo|4=3qh=-52b6 z0V;yDmzH=RMzg|e;A1BIP2u*xAZYofGs5*mqxUgwCe`?*?O^uC?75zc!rA2|rKrry zqTej7`axNOQ$pf;8#u!lX7^s_%_q95;lv~|ayFhXL%O3g7|Dg@cU7{%y!YDBFngDY zhJk@6M@R|AhWHdW6$Y=ALzobod<1N5rFC?usA*`{j*fWf1C<92z))Cx757_8zGW;! zK9$us*KR=}!@Z1{R0P#gjIQa{R2nZgj zpf+pY85_s8w21KY^8iN;O{nHI2S$_Qh!vh#*(}bL#{@dI8b#0FD*q=3x*AE9)hCW{XS-iXRm3{sC&G3<3 z^Q=G5t5+0Y?2l(s z77S9v;=oy4kB1B)psSl+yg!k^sUo2;QFwt`@>mH!3T?Zs)UA~>8*q6PzzAL@J?Fx% z+hM?yCr_wo^)kP|bzE-y{5Cxov{G=PPic%mEaUG@sWbjcoqBUt2-mNh`{*IM^WLg)ztw~MI|MHHMRM9rLn~-)9wd{xwrdP&l(=r zW(#5EzoZTw^T_vezBuMczPZocsp&~qy3IAU4(hz<7#P3&G?V0P=Ga6m4eW^FO>^m6u=ejNvC6(?`YnqUOeYL%=N4vHfaMaK&3A4GN{Uz^1U$ z;T8QwNJM1JB2&Ha?w@1nkE#zN)J0!RN5>GtFkfVZ1fxrTAQRd%a)MW*vJMUvRHTOZ zaW;BvzUYk6Pikx?pWDsXy`lXE)I(@uj1KqvT^wht&_vz$75tiO?*UbY#-=4fR1kv97*82xh#n)Kp4EMMbAE@yjq=Bkz;f;YCQ}J2)k$al66U z*HjO&X_2ReJGHDlJo3`g0as8Ob~;|3Y$g^Kj%6A!K3rdaDSbh)Ic9Y-z>>S#esf56 znwy!)ahL+}yS=&82ZjYZ)ss{@+BVNt1BuzE$5?W`14NJ7H1_-F#&;XwBLPbRLjnI( zZ1NZ#IyiF|7Y)kv8{Z;-e*G%#jH`mH*iO{yanuXn8v3=u^^*Y%vE7rZP_8>8eSMBO zDKlKKxU&Yqx1Ac69~6Zc^E{i7m*0%_wHi|K1o7EP4;i2uhGGzPR~9qxC+%klpyiu` zlT%Pcw1VlRqspMsej!BQ<8&BIV^v(A(P$c>T|(>P+pyoG0-KqhR&1~@UBeDZ*0}hr zh=gBM%Au{Tt~QC7&bE9iEj{h%{O@`(ns?`y^aQ!VfFgk?bXB91T%xV`-W;@yTHgmK z09moIv%0!Ej_00Ddpjz6^Z?(X{V}-KwC)GgU7xa%g&11z!+fzt@e2A3nK6;|AVo@CdnT`|yV8I%7?uCWLx>&Dt z`po}7U;RI?r2fIh2-K1JN#{Z@X3f_fV=XKscNrjHV%p zGsHcUkA3R-h4+IoWe8ZOo9UW8{jP#9ZMejyoU@A`*!s}X&P%DX&BYh=0mJ?=aQgYo z`|6SohE$=j_T);~&s3g@NLLiKgH?mUi(QHnRB@1$)%2s3R<2$()}g5pPr6x za_F{uW1VNa#yivXWO-tfWt2T6aU^ls=@Y^*x}LuKXhAP_&Ewd~w>{t1^m|?-r`Sur zU>`@=(={r4g!aJZL3}#fJ363jN|*Mwml`@f8MG@OL87{V3hQ0F`!mzMiMf< zyi7Ftcd}R%fib_Z@B|`6<3>1W<{)(gTl(mj{=VSGg=aKd6dC}lZN&%SVg_wT_kG#W z7*+pq1`nT)FSs4)jRAt`7<8Vs11xM#3z5a(^z<%kI1ew?yX16$O_tc1XL$J0vJtQE zAPh9RhZs@61(uG#q4^*X*s;UPrXP*l^CQwf$uo=!?s7%45MpzBt?Od2NonHq1@Crm zBRRpR&nhAtDXBT8eA}Ajt*c)%hBHawYKUj7f^!U!!U-t2c7S%3!Nu@6P7exmY^fUMftyCQyXa`yPDGkCjFNj3C zD(BG?1U9GxSEg4s+Hx7#x8?FLdlh8mB-I99CWZ5aMKR@hu3rJY0hK9V|40(P0en32)%8ld`XTw2q<0KBt0?5%lMR zf!y@JPd0Zh!^i4+R$iC_FP|H=e|rqenxTNMDV73LO1u~(yrx~4vY!mPR#zFZqwkzp ztR|(99#~)AI;YMDE-< zQ=LAo2rVh0%U0Q0qY<+Ia}}P+C7S8LKX^2FO>Au=efmcdvyQ*>&mW1W*(u2MbowqB z%1d~(Nwt^OoM#lp^oCOuvb3qH=qKR&!^;?gUbm6T!9Y$2gCyP z9a;u#5!#j?zS{IEm$jd#l>WFAhJC!UAMv#7oQsJ&jRhRnt$?Y#G#00)MAT)O* z>~O`$Cmsam*asEc@C9<5P5*C9-tYAyYR}J`Hey7pOghmGybkKGwlf`%yLwl?Ha9>1 z`#09)#@*-ZiG}D6GB=z2n*|&v?|X;EKt}O{=qeZ@p6_j4p&23VD8G zJGkOy4q$cxcdp*IMU84;P5inBj{30SI5E2veOy%Ibg{6J;X?L%l0iysf;)9!WeT}* zew#YhVzd1WXC%nxmF?Au=m>(181m?}bF}wt-O4K0B?=qH{J6jT#TR(ud7z1{t-SRr z(?AgglI2GHg%#Z5jggKKMHw^Z_;;i&V(ZfiFy}^3#$)UfAqs_!In}IaRQ2!xIA_+t z^dJCk5`=Le@aGZC5U;;5#{HWFlGot@jDBHdK1TORK4jQGE&<30XoxHq@;a3FqPL+m z7=V`SLq5olbi)$Vc}=qXet*5>-3!nqSwJ~c5thVu6rf%@Tv-vmO{Rm~-L431c>sD=9oiW$nuDSr8-<7cz3D^@X-k>q>t>D62yu~`J_ zQ4+G;Q}(ve$S%0#MC=*^U0~~ZmiXl}dhcVYE8SIC#tKyX)Wf@lA@>%ca)PQX`(}vT zwSAEGfjRgTISsGAnwTQ_5cILv=MZ2BeQ^S3z8S210?jk#L$PJR1YQ3hu{6VFz$WCz)+1W^7cL+sr$Pt_*U}jG1+wt zJ$9Eg|JIRC+oP3{jPTCMqVd_qZ#t--4suxpxUc)nT8%g~cQZxEqkZqFtQ~r>@R1n2 zdB4UOd^Cz|M~S13E^~q7Ad{u1sD{xK*7mwim?X~K-$owUzM>m6$eW3Lt;rOvbp9Qy z{01Z#5d>)bbj3~z2@!iFflu=aap`1MU_D$~liXC)L`S)6;bY44r}zuyr!+bIr#$K7 z5o2}vsc^tXyxbIxc3WFrLhcy<)u3b5_l($}rDv~UybsW@UjQV(3#VVzH4=+HIlnlY zz3Jx&0rHCQXI>GbLt@U)!;$trK50H{Sry1bL&LCQk&up*4{lzcH$oFxOyQS(;Ijr2 zpGi-FEBa;er3YfJ)X^fc-Dg6U(jx~Rd40S7ehpf6M9Hx7dctxaA0cvnx)EQEW0_+D zPvj8_UG0<~*ea6r#Q*r?Md=Ch0YZbZt=qL=d~&IXO)&E0`feP;hlo&GMTKyc?3*xbZD3*t>bveW z{Ok^^pqr;LBy3BtcngI?t$Dmq=*NmBolx*or8U(TC_6E>wU-%pK5w0 z_G`RAxo2M-B7UKIxjXzaMZf1FDO>JzOPkTn*huIhsn}hK8@Apkn~_HIE(@{iK?Y`6 z_1-w}{kyvxe|Bg?B#?sGS_F$VQYfVS%7%o|xA6RO^!q7Eh^G%mkc+^6$6Vvn106n@>(Ww2I{pW=tP~OY)xJX;@~Jes6OfoeA4TcSD5kNrOAw3 zO^Gl^_p_0vE!1YzvA9c!@i{jYz@#(3|>({~7*zIc} zG~<6PrsEPpxu*mIX8my3-gg~Is-C(Q2HCr@So+r+Wh5P|Aqs*R+}RRXfs6*pTOL?Y z6M*HLHZ9&L0K!$&RJWrB8XGq^#bNv2TdKtCy1Tgg8Y0mO6pN*63i?>%rc;| zlIO5xj~kq(XdCB$)Ayi*;^5$f=Dgdgyt0oLu1db=jj03+#=d`9t1U4CB?0nE+yF=* zgcEDkj zB`GNh$;ixPo+){T>F4JMAs{MO(I^shTo!Y4cNfW)`j2baySfK~X8|MjO^)q|@4SF7 zKg9Kc%XHb^_I5~T=h|MN%w-c{;a$TIJdl%iwtbj!j~$Ohe2Kv8Cy>VuvH&0nP-hw< zA{hvI5RxC`=;U-IGAU&{g>e3V%>id0@7L)6Fl}c(RvlC@J8*-&54hU_@P0bPr}18i zLsn}R&S%q3H5}|$$LSCVL_lR@J{Sz6_$kmq=60$P^ z4rp$I%T<@mA%2&NJa{Wp-p|l^~(I1o0|baZ6T){MLk$?URyS-^1}_tH2<4MLEAG*t6j zTJ$!bpIuyh{ZXSX__1e-9jNega?*jYF)WRcH=**43yO*u>{EyJ0sZLS_#!G$q3Uw1 z;c07&n!O$Uf*GZ8b*!B5mOIas~Q*Pi?I2kd2ER!g$uQ_XrTYJq}D4WP6h; z;zAC9>=FdxvGgfb=y<{e##==knkm*(7h7pivUhVb8bkNhJ3Lb};)|D;^YN+_MAF^; zRVob6iGhTO2!9s1{v#f;;s|A0Z1E(|pypYXj{ICu+L(&7I1wI`gS(CjI?T~hhCi&@ zY_~f3+gE9_7s5Xxg6Zz35wMJLW_@}zS1aE?G}Ijny$j>gZ!j6l5%1E`lrDB~adF`_ z?sR>6 z)nIZ6c{EnnXkL_>7lRH~Xw%AEwG1P3PhTHS(h5ibNquDAv`vC)OA7IKZjWRh;I%gU z-hNS`DWXSyT$$w&YqDnkA~KerKR`EQ;7Zuybv?c`iDMFwHj0Ejc5rau?eNo`dD~lq z14Pz4ZUQ#z_%+}36Gzgo4bdS@9FtPulez7t4kZM;z!PH4HP9MC0dh@$jR64zA>p> z>1-8%v~ioSipgpiyp=S2X{q=}Sx@ly=O=)ki_6PX|VA=rJ znHy(`;!<-(*HL`*r8;DISQ&$B#KOWNue_X)nVGr2zkfVx z!#3r9=a^>OKG%}a(3ApK3-|m#|F@vHny>CAv7n-wTM$(5sQp0jxkT9LWsT(6i1M4x z&Tx;fTf6esb}do&|N9nXJ;Ed3-TcAx?Xl!-to;K5cn@sJnT!6;Mks^FedBnB(h2@v zbbB}_D7&(!;GeO$5d0GcHMd*0d4QnzPwtZKYD~nc;{cu%0JAB_Y{~%I0!2{K5?f)5 zbN31Tmz#VHt<>^C=PXrX-d{#025-)hfWLy}$t1$ok1gs_jW=f>Cq3at6K{7Z^!L`R z>z(2TLLbH56Dw;V-2!>fHT>u+aVD&CWcX3e6`r-u;}A<#vC@ShDdb0xlHoz49UT+g z_qriBy~q93(;q(IL8?Bn0<{060-NX2GB}CR(9m8@z7iB%cu(37KN}#QNlU{kuFhRy^72&f4R{AL^5AIcYNdd3d}=DV;!x^AfZw2F>q#l)!i&ys z!swAD>m%9@CSwn`i!|fTddGc1SmImGUph1Z670Ep)R6L~;=M1?eFc=CpRc99YZcJ= z>I$;`xT>6=c67})2_}Qrj~<9-j2BP^+4gS-39aJ`uI|9Q1+z<57L=F#iTiwg6KJ95m28Nff^gS)pm4NIizHxQsdkf?? zAmO1wL9?4IL!r!Z=Q2FL`u8fyH4gR~n7>jY>8Pkk7(4uiQgK$dY-Hsrd3nb}L-4cH zR!wDH9YZIxIDh~CZFepCt+3E$aNz0l=e^GXW#uRbV;(wb*crp=sN~jO+-prpryAoHR zFz;W+-BGpfDg<5O)kCK6QX|cA_d6>2$3g97{)Y==sPn(YhcnmuwsO%cw#$nnxfmGe zUwDW+TmwYKSegoIOZCNoU%NyEL>CymT|TV0-5yqJw-}$_I)lLySSXyv5|AL&yB2qH zVl^#eWx!OIb}`J3=XgZK##sAdM7?eK&mShRzeoEr)x7O=59?zJx)McPTpWor?xwmn zvBaV#>)l0Uom-q{VRN(Y`R~zv6P_&FUA1hha)keyC0YG3Ji{-C-V%RgZ4BD5qefBf zxFS&s+beERn<1*_?JO@<2;c;%dDK0_h8t*z#oM9bcArxqA`7 zHigjg%`W-(7^a}q7ut$<0**5jKE9%kfw{uT{={W36ezT$D!%cw(#w3l~0 zax9v%GL`~moi{i(Pw!B2E@@MGXu-fkE9y>AU0p4N7}L`^WmA(Lnuz5+pT?2h!(n6K zl82H`4%;E@!ccs#@01M1pB{lvv|i}~c0T{;yXOTj@EbdcT`Tar=j1%Vx}j@n7fm(R zbgSEhSCV8{>E)pVwsQJD))+2!Q1Dejbu*Ep?^SNbYw3DRP;(e36%BkzFz|5UV0kH? zc5NrA(CoFjKgs8>gswmfb*7*r{d~yY?xY;0@JQp=Z{INYW-7r}p^;fqXhRARwclyo zzw#X&4z@wyr*fw^l8vS>Mke0obQIl4al4bDt@bIcvq+Wtdn&`VeYox_1X0$~Bc#6u zlR17JfqK94?^ptA$tx`yOP4o{Z$S!l ztG(TF?!M$K50kS^5ZVaO9fb=gvP7a(4P1!P|409&Q9A!*DlY*_=<@v&WlR0m`i|_x zm!BtHjoofk^{XIw1?n;UtivIBG|-PeYCkXr11XRNxF0*)X1U71Y5T>-#+r$!zbpGi zT1^prmSH*9BruC#L>*!u2DeQ6K^VyiSG_pt`j^Xkvs=8D+TA_LU?|?v{N4AAxUPF; zjHd4g%`t-V{20hGxp;Z7e<zR(bx4|mc`FbXL;a z0osAk&lhE?2GJ8CeABTfjDV&R?+%a<6r*~%Q459P@&dI+g%$O*9qaPiG9CN^v07Nn zzA5@SvA<#~LU^AUX!|NHK81yBHDY>rc$k8U`_9ml#3xQu@5$#Y>Zo%@N5aooCtO(+)3BIO#c<*$HbDiy-5d##BvM| zTD8!pe?XG$N{mL)Tbr(dHNEjwG75?hmp@HSO*1et@rj7!oSdqzP_2{n-MyzrF;qdX zu9G&FY+}&_EFmF{=CAnqg%r8aXd(<%I(WpN`u}(%AFo%xPD>02K{H4bhbz%{rA|*$ zQ=~ytm92kS+0r}kpf2>wPN9h83Z!wD2nyXA7^@6gYW2W}Ax0dX;G1ud+k&vpBi~EW zPF-f%XyUL!%Z%;q51O>%;wc`D#V2Uhm|R!7Rjnp1Um&WEe~%Jbh&U(>m&8de3rbt% z;msi0Aj-udBO?nmY;}La#YN~w+ra$({d*Ho!prF0aN5)rqYra6!O5+8=~^UVKhF+V^3sY< z%^nL~>CGD{up9EK1QUJ^k)U=q99Zdo=<6k2t-pYUAz6dp+h>K2jgybyP8%FlR71=* zPhM|}%s+4aIK!QpT`!JIPEP)jjEAT7og5lDI{J1WgbZQf;Zl~C%#d23rr?au>CVmQ z;>=h-D`j-2iV`&KuIuwXv^1Oqkd+AwT&XZ@En8Od-?b(&YH?$mt~8Dv$rKb7cmP`e z{5mOkuE1;zZ{j!U#PoDXL&K|5n_U8m!NywTSyogO!PGP%l;x*oUnWwMjd632SM>VB zJ@+JUASh68J`l79V07Esa^l3eJOagt*v|yeJzx#bw?*#m`Il3S?g$)RiS6O^Zaqm^ z=5K9nv@w`6wObfnB6&5Jn3$LfDUvDtNcvoCR45ajF6;1+SW4rWQLWwPUG-fG^_9d| z+J2=`<3C|c_hXK7$ECk?X0d8P$lVzb6qOzUvy?O#>M@Ye9qkOuN?=lsRNLa4acg^&Txx7~NyM+=Q(Pg#6s@c8$V zi6tT_xN5#I=ng`x&2aOi6zI{t%~Ro=X}@WOU1VLiWK=%)>m_7mMI|JV7Tq%L>YmvN zC_bRe+93dX6Os1pj9_vbI|j9)V2$BX;x1W8(U0~Jv^Z`-f)Ql>ESlLiN{^9SSP+tW ztU+(R6KRC>(>;Osg);c+ycg+*Khcml1}z7}iIcXCi-DxjkjI77=1M%JU4l+WP#sq- z5L}Hn{O|QbOt~1X(p=5XLVk0n>3FGY#|Kf0tKLJi=2Q@#z~jGy-{matv2JcV)&~+pIKjp? z+MxShh0XqlC+RVpztSqJPvo+EdYMho2hJxxtbcU>;dC(oW?gc8w7ySecLex{bP zM6ZnDZS#>Q&jC#e5_Rc)usM7|wT};$06zg+>jEnVl4CDd0EVrtEd>RI4zR!HKrf-1 zh3LT=vBs(Mmtv^Ul)yllH{>hn%Y{BM$xvmi2zyMvXAC6G8#Z7O;74=V@Hi-{i~+)H zwLHQqLKIHk^U%}tx*G)idcZ=`Xx5zKURL4MVDNe(t*y_>FVmP^U-QbAHq<+ z-R(X%nAFHQmue-oeGkQ2ySbN{JJZEzbQMJ*neDZTaRruRqoc2~03m1TxG^((u8#vg zBp?ob`0(M{*=m6sc6hxmFQNA+>l1zwD+`OT!JzZN*^p}MiKi;G()f6IvdprC%Fh$6 zgJ0mNxVG(YyuSP4BWXZ4X4ZC+2$#g`xjBOIus?;oGcqE&&P^g}$%%`D=!I0v<5si0 zZ>BAS`y2m3V+b+*3+zp*H4uFzHN)?gVEk86Ymyx6<#5(_2N?ZP#zpgMmooNj`h=bq zby)EhA}2`&fn0sT-#z@-(~*Y*$t$hJz}C@DvCFTiA!PuNFJ9TrGLF_v`Th0<&mA;@ z9k{d?zw#_o%gQ*z3p*)Tb3cFn{NvOP*P@e=S(eMXIq1<7c|gjtYUb;GN&H?*OJoa2 zLtQ-p)K53IQjO)ld}*2<2_6c#$wfw)E32xlQ5Sxi%VPQ^TP$nkKlamvW zG7T88P#3?-RDKTGo>b#tXQy5NAf*V|i~6xm&kp0uvnt+t&Jj#8IOZ7-ld&V<2)Mw|OBV+FqtkGPkW4tl0eX7Ws;9OY{=36+u zy5u!l8rM^acCv}3sqi<6Z4=AOgvKjx0IGe;@r8w=?GuV>({AkhrX*zDCB4-OEeN6sjSCAN1#z*=$g^0b!B0(8C}4&z~wrC;6wh$k>DHoA}qx&7hQiG=GTqV z8}y5OnvBvS(f~M=Mf|dPjq^ z3APk<2VmhJuSfE%YjdSPc<`Vjp<*QyK=KlN)|8JY7x!kJZ1v?K5ca2d289}nsp!1H zt=h!sS`QCy*Qo+lncJ?`BcJ&$pvEF8l8GTgz+IcB@5ke;)tK+wM3~shvf4Y$X+LAH zC#F8*Vh4)OFN`d#e(`EuTdTMzNdeu(v{72h=GoJySr`6{rSe)@DTZTDiQ$3e!AgR9sokgg!U*P za8KZB^U_wku&x!R8j(7*9=ytwUYdAq3d>&V5RCi0iS5fzV z@dl*jf1~c6m92$~%9Oz|B$M~)-B)6M4)#qK9lk)W5LV*VZr_ncNAI91%N$1mCCA6d zlE%g>ag!xzMn*=vdwYS6u{_i?V+F8F^r)Pf)xEJ-rhDJ5Xj6#y`tr1JXKSruLFXt5 zC+^Wf8$m}~IG5bAI%@vysXNY@lJe|gc|E$5`t1`KM0wc0JAb(O zHs98SZrgOu3M=*8LNcM^=C;Fin5Z938oYt;;61=;2OULiL!BCFIO2#q_VcR3sSkEb zTF){ZiuWr0F5nc}WPUx2xH|DdJ19RtKFP)_2qnhGz8?2H6r~yu{n#~pg8uYb*U4fe zin$HhWzN0S`O6tN??}djgzh=l4}kl%%?7Q!`4@c6?O9w_zFjpglE6*`l(ugJgR)c`X@t% z2h^T$LQVIk%PU4PaQf1^U3uC$Dhi0sbfK6-q>JJq-7iGV(4OR?dwJvweOb}j@HqQi z!48|=azA?~P)=;_N)9U+bJau`8akApzMw{ey8M4)h@F?}|ItFG+V%&%qmo6Ouz+60 zxxQLtpX*$ov;^3;w$Z$A{)C~TBCxc4A0#G_NN>}D1m>`a2x;&v;ASJ3CEVU)Rap#> z4hRe;E+b5u3qp|i#oThWLMml$x!Fk z5w-8n%}PbICnGE(&#`lIa@K+K`W=bR>AxON+1c?N+fI6mAFP%X<=nrmUuE~;;I*b@ zp~Jk1uWvgE0|PN6K?H2Wr1ib9eJ|aFG~@xa;jRc{UHFV5B8~$catyZTt;NgJqd~4< z*GdN7+pwM$b`B1Kjg+0h979dbVDO~K!$rt(>8HKp&>3TG?~q#Hb4$WzB~GK!0mwl} z?+M?_7z%HreN0Ulhy)4y96Y_Z6b(i5Jlyw5XfT~?lYcKPL7j{{YQC&I$I zNWjEIk_iBZ)E&`_eouobVH>RbTJ;h6i#+kTT*D9oi%)(Z+{>gCyvnPzV>|8Q^`o8B^2#;D>o%2gih2w44%qilQNiJC@q^+jg#Y_fSmmOyQfYM4mO^u-ZVB5rZQU* z*Ec`sB>~li6bG75pe|AHqlT0cJlydSlvfnqzLf)oqP!`_v$ZZQPVRH8aiOosc3^qg zlc0Tfe|r14uo}V*uo-ZnHtOqNb#qYOix*7x4Ja2xrWD?5Wn}_-{YE0d^Y(L@UOgTF zHndjTPO;yAZeL!$nrit}2R4^=umHU$^LpUvs&`0OQxg>^gRHaU!TuYoCAWzVZq;`S z>vHe$Q!_L)DmGL?0zmq%9h?ZihOg(1pv>NdqX1D@ZY~2J9$s8l7N;)`?{_3Es2&np zWDNE9OX};>fGZpqAD_=QHkwBuW9888U>Pmx#nE|6kVq zxo`}Haz;D7pPQ<2L&iKS#1ttxQ0iN#BkH;y5cG1)`$VsuVT@KQUG=qE(&Y5py}C)L znC$rXdMc`#2@scxh8|r&K!w)q4v7ehj7&t1Qx>`Mv<_OCA&fq zU0u@mhuc=lw`SBpmk_5_moyN+c@j0vnI;o)^88*l@oamJ2?_@klR+UN>n9l`APY6a zOl&LCG(m;wU#fqnI2g)>0EMh);5)SurT#haqE5QF!Q6jJz}Ob0l92mlX@ccTb&B726RH{FK)8`W5A_8{g3~CSccokw>8ni-K%k9MgGuh3tY^oS&T7B zd27dDbW3F0I#tnjqu@zU02YRaQQ|KX?b@MF-#gv>0x*HdSC^nF^64Jx{r(vG|G`qvwZ+OjCPl=m{R+g|as&rk zB`t%HKeY3UUUH1MjGA))O0iLWTZ=(MSk*@o_=te`(DpQe?tMvfvfm@Z=_gYe#$kL_ zO#c^QZvqbG*T)Z!ecxpX4Q*rzDcMH|AzQYPwd^9YFSnf}B(iTQ`@U9atdV^Qp^RNw zvNOY&dC&ZQ&+}f-`(FR+`p(?wkm((0Q7OBo{0z0mMF+eZ--m zUGG>)6;IK-f|yKUU?U*U#xJoxU{I5IeyhB>gw0Cgbi;RsTY#zgdx=P0g#G{#WcTC= z-<2zO&BLC3*H9!85m_6lySKpmp>r$=iksX+fN^@q5M%z@N`(2~5zd~WDbO#n6*aaG zoEWKxl010Z_&y$SVFo!N#cMyDGx5sA&HS4mTgsstI}9H_ zbmYaD?eSZuFrHL4U<(Qgh|+=-e@KDH$aH03&cEQK511cNIB8-J7HG&EDNs3EuJw2Rr&Ll>f~8HR+&*7W;s3+!;M(mX zPSdKwQ=V@WsYrc|Y<8$Bo`o_$0k3;$R4X$+agYlBU)V*c5Z>lY&ns~aU zpr%M)M>>b=@jh*GBI2vgH<@5nPf&Mv8q<3(N$+aCt+^?PaUM+1$cU}37Hi(7qoEnU zENJcSE*2IZ%`-!Ic9J=ePsD?ts<|F5vRmSLg|uxukatT|6uDZ-6^?|hT=MqPQbCuw zmg#jiHGK_`-WTfKTiL5BE$y&fLy_rQq@aUihVpOOAa?3Q=qo0dby^oA1ygjS`K+uK3V{*4%FN76d0{>W*1&IwEhk5Lru@9rXQOY{ zJWeZBJ)gw)$Q|j1`VhBo8=D}56#65wh1K zK$Bdbkze1AGx4l>TgxH3mAh;SVxQXD8^BoID?iUA>C#qsKeJ1RZFF=L`qAJ_D6e5; zXD@2T0*i7NQ`E*y5kc4SgrTUSx5Q}~&cpMnHQ@MNUS69c<_&X)sYG((+qYL8Q(Mj~ zA8uKu5Gzq&e-Jxrf*}>ScI{ao>D|aY7R+~VrM>VsQd!Zam<>ONY||?$G??*nwK)s` z$$Hm=n!UHqk5WmK2tpE(Ay-{C^>fJdG634@Fo%gNIvVb?jK7~LX}vwy3TmE5Dd8_b zCFv&v99TNcPfBWQ$DV3`_2&al!3O+>+>qW59D z=~%>Xe?!BRM|EtPgzYy%EgB1#m#RlKCTT6DQ(70wj*nz{HnAKU|JvIC=W$ofb&UiD zz)WV@e1KIxgLyWxcpq4ZJeHiBL43<4Zz?S{qbvI1%gAAy zQRv;>45^57tgJEFiRVEr>FyKmjh@~FuS9HJT^$`r?<FClmrUja0;e- zI_=e$goW@22hVHhm*cY=+vvMEAx=&Z=&1om{SiwF5)t6P?J<-ZEvDacoA9H~cu5i7 z1Lhw~KOX4n5_tVfpoq#KD1rGmr_-lK8f*ROB;;>W#xE%{@|4$mA#nV57>NwoCat}iVgoV2R=NJ8PBHe&IVt~}0ZE{ls;LhitrgsP!kLZp5fGZ3++_ohD3mHNG#f-k-i*$0? zkV2S?un@4dceUW2$Ez_T0|WJ(12wLhhrX_W5a-kXf_>f}D>8L_~ih72IA55U9pD%y~4vNgIK;M`n+nFw3zHBx2{@!8|TfdMc zIY|gWMrZ(d^zKq|-TW4cR(>{LkgRKVmJ3|--Kc09nVE6AwUvDB0iXoH+}zv@(|KP0 z+wRmiZ*2F^F6l0fugh~&Z-@-_U6Zki)8R5YwIIKU)tz49Pv6pqxJfF+EM}2O*c7{k z&0C+at~_IQG~!lRwq!@rdLG=#ZO$5R?lqBIjH^2UM?hU@DSR|vKdhBM^gtRIBu1eC-N z!tlfLAWvIvEyGpvbhKepnrhXtE;AP_MB4rrZ05P82Y1yLDg$eKTY=<(p%CG3UJheZ zeHk7qLv#~z@aWI%O)wxJUIlf4 zZ{tA{P2vhY@yY)|qA!`8BmTUX2Ru8nx8r}51efpN%+*%r9TdKOG7_nhcze}sxKL*f z=UP-#L`eF%xtDl;e)0&hiiyjbo>a)?zoreScSsLB|LEN@zXk=i1Q+V^#Dlq`5%bZy~<>` zH|Fc8ePK~if>h{~Me&OLhNXxo7pm)Fk#YPe1>jkMS5%uI_07z;41fIvnN7pUA7i9N zH;c}%gsitS-Bk^S`YIcqm%mf(W7)b`o9xzlPL@8%`T@~5us2Xm@w1q0qjiJQyt}`h zND7BzGC#yQcW=8WRCXN=(?15{3G!%>Yr1*3HNYIOi^?EFjG zJnuXl6jm|5%?fS&2l~ix|1b2hb8wK1ot&Me0r-be6}c4y(kMG2>Dx~0@mwds7XbPJ z9i}FsN&H>=Z3lCK>5qwzztBzxLz@1RHG6g2OJx=b-NX62pZW(}lDVqdao<%;5c&`5 zLfh7Iwtuu8do=vatK&M^ayE}_7kSOUT+YkcHg0aB^cUnP+b~-i9%~=uKYSpDMOgS` z+xU-zQXbe}9gVS-yG>v5y_XW^S5hrHJckhslEbDUM+PXbsYjsYtg`SnZn|CfH_>SP z5~u{8G@}Bw^vgQg&_LB>h4OPPTBAzyYlVD0w=2%vzt&<8ms9)U92YiA=$O@U{-I64 z!V^u^L-A!S^q3G>+keoH1<*>;^@yLpes!ZX0rKHTb?q%rwjFhk@{>@x0XPiP zE6bM;Lt2=S*fC8h3o{|yumF`Xn$~pBGzk$JJnjjzS*apzT|tP6@e0BL%hfSYviMxC{QMTd zW4hqEjrp_aRVJr@y(;a~Fn4fbuDZg{e+f8i5RHe`WixsSh>MH+y8M#CE*!4aKmfzQ z?j}H8rG{nI;Cr-xz>@LC)W%#hcO3`}u3#^kgPU{Yb#EN#3rn2Si!q|4S3C!IE0Kxyg}RKKFL^ zL?(tx(c-d@;4M@zX!*@l_N5FFDX2|34hh8yF$$o6ByFnx+6@0DbjJLGT1AyyZS4G|F=O zXn4W2TBCN~458Cjk$E9Xt%ME13OISa|VY z5aia+~xo)_vBiJ*>5kdHOjIMz~2DDpUmka!f?(!Fc@jl9)RkE?U2tt_d&lm3R zH|ww2YT}YD?e84w?ByaLg~i3i%TNIy)K(stxVZwoPXj#AXrbjQkQe!#!e0@Z83<~; zJMgCvo&i)UR_$(B;?EP*ke)4)YG+9iz4>+-2PzTr0VNfbj4tLvBFM>M7GcHt7wS$CBq|TQ8V3V}u z8Ohi*16PO1Z4Vj(yud6W?ImM69O&{54g-JXm4ZA!9siY=^5fje9RiRthdXq{b5|;B zYSO^+T3a8z3mj<}FA_QZg*iEy3H&n71~H1r^4Z_?%gE+#J~jN7QEmj-+;x6Z`ry_f z3;Q(n>m2_AD<%8S0I*`U#Z6v8!AIZEA=F0^+Jv{>0S4>VBG`t$tD-{s_u~>h;6=nt zDJv_#PE6#z$Hl}H8WTe~kS0#Tubowmak>B2>VNPTwuCp(e<7E4QxB@xmoJ$D<~b)Q zL>`8>SObN#gx?WBc&p19fIYAQi4b55q?F}}0sMIfAT92je~pRaDyI#Dmz&1?tKaU~ zTUTLkdtb@(zFU3u=g{+VQ=dMrI10VyiyXH1Fub6pv&hLURA;BM7iRNbzcpMtTP6|$ ziWy)}k~pL|rW$(xTt!6%2Eze+FhA=CB#8oxeA*c=`bhEu!hjhuy-k0t6^vq(ZNYwD zfo=2UeY#B!o5Zk%uN9J_(|1xbhM9{Cta--DD`;fHmnjkdVNAl}Z64qs5xCI{zgAHz z&I1}0w`!`3=#z;##b@~-HFttLuTMlWgZs37{cGGEP+ON>=zUH28&v-GWfSBoo->R1 z23R7V9S48LD^@eda9~a|KmE86C0>+eS%UsukPwlJ$F2diJ`#yUz+yCFM08I8m7uGu zYrY^sfmwJ9s6!C(E#E}Nf;6Gr5_#bYzoe~Zi|tigCrE5LG6zJ>>7lxvI`{5zic5fH z0jN12I_pRq_Y25}J(ww;^%Gcy-?hB{zpO$@SzjX1EnT@=`hS}B{l2%Ex?gf0=C3;z zPisYGr{GQ62oSADmv=LYuVTe*F6s|~gGg|5RZmWjcXk+0PEHJhP zK!M6YnDQn2HU%v3Xj(pLgRmj@=TAFO*aM0!Ziko*A>If;fN(l#0f5`HSBBqMP0h_| z-+YT08PS!Y{;|L-2e?M$Gkx}s@(<^Th}*v61S3weRF_{!CTEGEwzafEe*boWt=_Ui zP^j^$$yf($K(E$?z{7p<;)P8%5Pl#&pZQLWX47csfAFM&25iGqN-_1x_;PmzL%LkHN zd(FF->Q3g*EnoSheKYv%UoHW3$3WppAM3%vffXPcIXFAlWl;QLWek&;5iNVTwz6{1 zj%#n4GIWt#iiJ@C01zMse=Rrs_{KdMMM*e-9%JNpXfNDWy;Lv6s>t*^IAEWNh2_%7 zK>u`wi<8nVv(Lk$Ljiz$mgGJ#)SGLE1c802566i2!-{2~BI)R|32B6UbLfy&SYbP3 z0_-~Hi%`hA7SiP6zuj$$W`}ui&(Xn@0Q_$Qwv>?gvu$Ps1CXpDtmzO8tPSXU@Lj!1 z4*2TC^J!O>fu_~bW#d=r683@~->Q6|0-fi!+nFtD<{P*|v)#|!K-57h;7HhRFyjOI zbgD=jA{GZn8F=f2hkNHTI&~xz)wu`%g_X zvhne8AblskTsNOKPJ9gx7>3>`E;hD8=$?W8CoJl};23l5Xc70eb^vYhHIn%>Y(={T zW`l{!;Jysu;Ztxs<3a4u0cu?+VQIJBa(vHv;7}I`0ADWkBouu4aslwQnG2p0w=I8r z(|wS7{ZR)HCb>&ySB{R*%8`4B4gNFs0TdAasX&}V;~2qgG~*#oP)VHVz$$`#knz!ptc_nTYqQ5Kk-l1||juxx2$6!k$fb)6p~(^LlvQs`fXdsQVRuW5};!wB)< zp%cD*@7eC+UA=q`{ma#X7>|L>+d7Ln?%)#o^z@};v@jnSqzj8nOL}^G?LkUeD!>a} zy`K@0lXJn>k506X_B);oYAS5Gj6)e><%WV=dH&X2AcX;O%y&ga6aa>BaC2+wvo<8k zS4HFNj<hUokK=d?G~xGW$#!j{D(B6pEP<{M*&E+OJJXCv+t#1p zNOqW1>!)=GzpF%e;HS@Xm;V~w+h5B?;A?_$qRpE(%!@M;|3>jCN9C24QiEUxmUj~J z{^l81ZiR8gD{%?Q{MtV#SjYp%setU^cUHt#grI$)km~4!3Kx!bO?9NZ{$;DWIp7j= zZ2`lk2MCLZ1En-L*B>y?Hzg?Vk{mJHT+8ERYvLFV1KK#Nhqb~Wyvuwb5%3y1D1cjo zGJ z15;C{&pS*S(2s%ffz#n!2#4)i$H2v`U>~o(cb=a#b8B!#eR=c+e4rteLQqSPSFrnf zwR~EE!`7WPl^Ctz`S(hyIkDpI#PpY-fVR7Th@BLHfr$j`)Woo+CiV4&O^Tii$qvC0 zoB8&LzkuwY+pd=Rmg9He&Q(Y|tC(I1JUe4ct5JoB_B^k!0KmI4m;?AHrfWR96Y068 z?WM=RbwWLpo)}C{EHEXU^{@;vka4Tux$sXyDqW!69Ms5DxXhMp_8_+QuJAx2d>Nwy)@Fz;E#L#cft z%+ah{_#|8xHeGEUe!@&mc0E<|Ox&M4@#5!&&6Uo@Z=7j#_3z$wl(ig1f)PJcmj_ZD zO`QwwDrbA*rr}DmG#OFaYEsR=D!+sPQMnQel2%(|F$ao8pg&>_JWTcMR_O_6$dr%B zRqZT?SY?Q}8E>jUe#xTlFWxP9pDT0xPx4{i7b{8kRtBZ=zeu(j5LPpG{KW$w{Js71 zh^drmS`Z$y?{+LblnZU-;N5TXadL8k@LEMZBhi=dLVS^F#D;Ha_qR9vhC~qy7nO8R zstiB6UUc95aYOxD=QAdlPmnz9u7fntY}3UvK)f-qT2Lhf{09HyqKlH6FIIc18bY7W z)Kk&03AcgEBs2Ji94a*b#~(uO4fouyd}=wWsm%>KdZ@To zrfc;auN*pk42%jELs1@pL!KR(nSpZfJf_Kz`HV!1R{xSyKqe=4Qi6%yk4azz5qeng z*$F11-}F<(;A=hLH!S1Nt|*-CJ@7&?RH8#a%u>wK+x&)T@9_Tg->7Ijo(s?!8Xi7Y zNZf}*=)hT^fi07}4=*k$+4WZ_D=j5Hfnaw?6M+beH5e`nrx8UUIjjIY$7550d7$k} zkk0X9Bn~+zWK`VqYNne!7yN2TXg2Rg}Oo402X{s)i)K{^?XzQ^}|8=Z`sRKRGKYMAwx8HbY)09}GG zOqGht=$>q4|t^v6py0Xrs>TPZ+u({fl9 zQ~jB$%1uqQI&8d<8;mI-eCJ(kr9?SP=s6{)27O{-;nfvI=*?nO>DeF!i$Vx5u{s!K zf`bHTF#5gqgfb(k7HH9hdy}kUU=FU8VO8}%dcy-S)!w9L@2_z*x=eRWzTNSN7qZyn zy@A`IY4IpbJzv>nCo7zA_x(s&K0&?=gv&OlFF|}LidSmET@UHf3m!_f%xqksDq>ST zMsPp}#|Ts3G5@mTlqVktbX>oN2Mv+LKTmFYpXrZ3jG6N6{l^~fVHgZq-bDt>{s=aL zvnwe@8zqiVUuy4*3d?)Z`@`jGn&9rVeQrvV8;V}Svc(@~pBrQ}CoM^q+FGD)X3K_W zH$TVh9e=<51^%SYpFR`gYj<6*BI=uk6eKKivn-&wj#Hz5h}c0={`7sYc%}MZ63?)g zkI9P}YG_hY9~G!eJX>3<=*cVp?04B+O7c?H#2m8ZQgaL zU-mI3*=U+@eN_Z&V}f?pkj@>kYlz7VMmviJ=99=-8=}mLjW0K#=49AA$hYWzW)vuX zMz^@cS;(lyJSS(RdcLJsNBK52Rc({Bs6p2GL16StUCY=R53LFAIOFD+x6@x3xaDcE znB$5%eh`0rj{va_*yJZeoJ|iOk!akg0Hmo0!LneVw$_^u?Ar;xFD%T^^J-E{Wmbf3 z8+2)9Od?&%AzeRHB0HK}8CM+bHQP@*E0r&c*6Kh5K`coi!A@ z{29hRgVB}x$RVF$P5b`+hO@J6$e1h}#NL@~gU3zCvq5LWm5s{gq2r8S6L!?8OphO` zRt2zpcg-9mmzJEY$g2ihUKn|fzweCfM8eLw2HA;zg`S*4dVkH&opywKOLFZN{hcTa ze&}~5e(Bt^JocDIxT>HXwmQ)-?b)Wy<5p`R2 z@2BW&`DvU(t&bWXO=bv1svYNs6JDJf9IEXD{XuuXzJMs?{k+PO1SNm&wTp=!rxYob zZ~sy6i*7>|oD#Gq+S{#f(ca>1x7)yx|J0@UVMQrvc6@t2<5t_z0gj+80b~eX<@qTx zGc#Y*PB#L=pD)_ODb#KW@B8Vmkhaq{<$gAO4cBegqzYe3Dd;CAm-;pSnh?459R9us*j`(x0eYG@(TArDLQLtwJI(?@<3$4i4sn_m&f4!uMZu%&EZ81E3Iq`ih(C&s3y8BpP0I|| zs8y5R#{@D0;f?z*h+iZj7N^xg0;8BRHQydCJ3DRu#2*h-!ih^;l$I0xB^!ZFk&6WMi!@n*!!8O-iKPkciw!~D6oG9+KTn4-0g}ikNPOabv8nrbKlPRJjG&%y z2w7b{0=79XJ5%_}tLQzpbpJiVSBJ^HE-2_PXo2;|;*OCNgguS2Qv!U+EBRU`3)#OT zI=LenPlEiMaEw&L;iRBI47)R$U9A&d3mg0SliR2p(8a887Ygm+Po|Jx;drzf?FG4y zp4AK?U?<Z ztJQ%`PXdWBJzvw|E%=&MiV$mMnaJIIrK&U!5=Av5?Vsr5A&!MZeE+8<@taXoh&il; ze9I=j<BbI&w@kjLb() zA3-f`2OxP62RAYAu2xmS*UymoM6eNEWd8;}vX7yypJ~!T_A2&C&Z}CfU5X#^R1m{o z1kC*6fj(kaQ4YiJrm%U4FghPo*@67l*^ledAb~m(8~y60@FtFm9FhUx)`V~9fv~Rj zDZ=hNBRwyF(bxt;*?Y*~=J#zS@1gHB8E{xIZs$SUYG+%g&O%rJhqhseXWXR%0imzW zS4SgnYGYgQ&o=OjYnFP*o-y(vu??T>_|x5aipAS#pK~~0Dmd*fvjWHBl|V7E1*qU) zC3T7_jB$4x;X>C7o{qTf*MSgJg-Q$Nu=m@L5wgc-XPX)efFF-4yz^uWbFmab7L=e4 zJG331*y(;LG~N26-i}%;$0MD;2of5yaTz6|FA|D%%573m>H;K48?4FvY!`R@8wFoO z!XW&e`(gm4YmYUd9)ep!!6FKnWfsCBB&Y~yp;$>LLO><8@Z!pEB9#gvDep~_uKv*g zbV0_eg9DuNDB0x2dF<}W_8;eb@Utf_XVC3r8&M1+hRIr(u#WNu_FvM}`o!@+KlpJH ze(@j6m-Z@=^gmXao?e2 zwZTv1%|`}AFzR3#@_wV1=xetvV-vigNW%Z6ZrTN7LDb6KH)%h86ji`2OGU*xrui>1 zLgf~x4-NdJ76-ShL{k1fNb_}t;7=zD34h4X{xf#5i5{ld<@!hai~?v>m5K+V6}hGL zU-@}fw%;*kDg7ets)3I-|H)pknQqd0B#~l^-U)>~(bPYxcpScOj;IpNB*sMEaZ&cw`vlIa9qU5O5VV5KY#-%>X_% zYD;X!{(H3UsNrc#NovyaK|4yT85{+3+h=CbA6@Juk)dx4>DUWZR-_kisWZp5x55uE+S}QM1;L6@ zz=ki2UxTiV1cPIG9v9T6r>6%~FoTImvdd6e*7um|X4zj^F&4*HUUmO% z-AFEA;VzTSapN&1*vAup+{;MId4m+@es7z#3SxjAN(pT|muZ&AzZXFBr?(-+sd2Ba z?!aTi@Vd!ZTcYwqEJLbgz~4ynhmtxu)DB?}Ki8|1!=zsm!)}njgqfYUV1&W=<3CO8 zoh%I{F-viS2?OBGAA;xqs9YjUkad?Yvb$?Dv_a=nFK zMeOI5-8;9;p=Qk77T2bwV&@!U19Xx;Un}(lx!C7hNFnOrsr$Ey^!5-;WO$aVJ1A~4 z{NUA{s+Z%RLahqPFERrnScZ|YEdE;g} z8!I-Uk0Tak>a!guCWnKLfl!>E>q|0|*}>nCT)jLXitW{w+`i>UqYuUqr|KuYZdD~R z`~5rXYr33$PaKep>OGaan&OVJ+|g>ew6fg?AjR7il_A72ys(~<2)ikW=_UyM2R|t0g7oHdH)vs+cx0Svi7tCle#D z%XWVSn%JBKvnym<%`5xn!KWhoqncgv)DjS{NC<32Ftu8a#97b&IwGHtJOh$osB`Gf z(DbW`zWWr1M9&W3P~7uVckT;mp|SVQp7~ml(=!aTQ3SaZr+tUR4{8>6o^-Y-oO^Rp zV51KyGR}LC7jro-n{#M(Wg-krt_VC&#hFbERq}>JzWlpP^3F%)Ku5?fLm}hbe9SwDrW7f3TL}F%anh?8!2w=lyra0;9oiZD;xdnmQEjiGzr*M z*dtsz(|NCq9DK+0bwcjXVHiWV_{}-&8=E$Gueg^jEt*8S@IovR647JO+F5cA%N}c6 znyvux5|Jgc6tQmI-L4@CiqFOp}<7j1Q`LI#Hi_#INj`+pFqPp4j3V2Nhc|;SK$$ z#uPo?{6@aFBd6w+oDUPVZR0cpO-oF?w=f+tNwtE)=e?oN`(N%33fyJV@O#(w`2 z~rE;+ufF!|^FGhRDR%H%s^5eb<(cX?av&bsVw&`Pb`iTZ&jE%4Jdqw#7ks z`J)+ENKee@ZfI8>KA#dn@d&z)b~rZH+bv#01z!77#iD3)C1lIj`t`t#Bw{fw;lgwA zCX)}!{zAU4RPvsJ4_-@%@qYnCAI$0p7FhDB)Dh?O5)BQ_3dr?-wmc_(YhhSAvvqj5 zK|utXz4Q&0otS84aZ;UkOF99*KV3B8?+}@Q!c{WB=C?%2fztRB=xMHJ=N&0gFQGlL zu1r+iNkuF%mBFNwYmA!A-ZnTCm+(4WJZgfo*ztM^2(_2QacT%Q7N}) zsf^8<8bwZye$O&r`|O7oO{b_k@7}eK}DlOjX#4eEKR&_nv>~0OPeqlUK zus$J*5M5oum-`Fvj(qx8R_f2W zeY@wYson8$#^10t=va1+h4<*)RJ7juF%c}Ym5q(9Z^>z6;v{w4$bp?@37dt;!OC;q zkypv?Nr3oBwqP#RbUc)w^r^l*$`;B$Op=2s?oIWT`f5?$J3m3RNxZJFeTU7VOHV9z zDRWV)$oS9Kjz8ja*nA}vTM&oS`!9^YKH&@b7pXfqh0t8{ho=>N5$D$h2kb(miEePU z7-hGDs`1<`T9@2O@+uvUZjfgAEF4Gs%I0UhNQ9VQi}$8XRMTzMm*Dr}wXooe_2(ha z7de08h6fDqyw~qc$VvErzv6xX=dNK9q)-#EBDu^(85t-1pn-8lfTP0GzP#Fh%N~t> zvsC;%x8wDtiFN4cQ8S&u*_3Lv3biXwIUeWR;Cc$)2N6=8KtP3}b2tP0$+QrNH-AB| z@JedxbC*r+^$UrJLewsxDK7ZU!%O!a=PLEq)gX(@Rxk4jaS=bQK7)|m``y)qWWZ$B zpXJ%|*nIQ>pD(OxZy3;V7*M@vI`C=Z2JN}=#P3D$s}{5H&S(Y|{oG&R|XlA55ltF+AcPnO&rm}6(B~Is;#O<`=LjvcLz!$=g8slEP4MrufJU=L#BNJ zj%VeRFpHT4KQH3RL(bL1(SqwMtgvFC#VDEr_D=|}s)_i7-T7k*$XwM`LYDff#Tg!~ zXep2P=Uwf!{euu5?@e!s^MIHUgp=pJNTZnEv%K>4Xs;-J+g?m}0v(w|(rn?@&W>3c z`PFX(J2`jixVrwxO)dEH@vyE}Hyai@H0=zC!>*7;yeXdLGAAK&Gkpu3tMA_NW72bq z^?G8aTRrdkdrkx6b|&)u)%Bmhx*4k)vl0S#!&!+ry`0b!t64|%hqo*2ubMCIk6y6H z!OMf}Xxl(^DFyv@(g(=uEb~+18uig%+lb6N^qe=kgp7&na)l((L$&!*M75svlD@8I zC;K2pNMMIPs%yl`eX=)J9?4N3d)A$NqvQeO!{-=Z;b5m4o#}2J(XUBRO6hEY+TB#@ z*BMD;u>}<4U&* zj01#Cr5lTWL908rD_8INEvzZG91*o=!-$?7nHtm&e9fW)E!n<~4P|uWH;^#yq!S4F zZqz)IOUc+1TP!BH^L)N<>j+!SR$!|@xoZj&p2LnRy|9Xzqj)cLfYPMgakzXC7Ui9* zAa_$A(sq4h8Vu?2&usY?$o_($l8?uT*YUq-G=VD!17@`<{Zhav*Vb%nHR+{oIHQ-K zJ1`=)?Qr@1d(~M)=K&Wsche_KlO3B6NuKzp=bm* zBQxr!sko<-h@fCCVDTukQvDtN)UojcJeQNe`j3b;YIB(z6bW(%mL|~0YB9lRt}QF( zGBOahg9xi}P!OE>bOeFNRs+_xQ+;<&F1K+c!`2r*_T$4*Qx#%Y9<33p*Kn=*k?og7 zjm6C1pWg}&pha&Hp;LQ8 zAU_!H7bHH9;t9bA5Bij$x77|DTwQPFzwHI$2v325zMBqe-)2FqYRLCk<&f&|&FLS# z+~MCrJ%$UmTS7>QE41HA*`0kB7|t2du>xb@Vkd8KFi}c(Zv1zwcxoXoQa(7AB86$3A13rcJ#oE zp;h%RY8#}Sr>+l#-T8h(1?+o(0=x`FCPBsn28mBXf(68(edl>(h!VD@QYYvoLoH5# z+wXaU;O+{zWiEl~q!zd?9A{BXNikzEqM@F*Ee_2>?8H#DH)fXYMlB&BQu|d|IR*ti zWw3iXN`C_Kad8QTKaq4_1D1R5!M-~8q`k;-$4~cLW~PP)5$d9rKFv|R3yziStSzr} zx5RKudzQ^_CDzvE=1cOn^x?@f_TL?2KW#-f`vAqew*JcyY?w4N{Nu z4SVKMieP&qr=RiFcrhn^k!nm6Lrl7!*dv(_rc$DwLd@3PgkWk=yPHSjVHvr#o%V^x(XuEB=U zYW{!YB{K%0(_wBI5=ZWOr5BUtwyLaP_^r%CXKWi;oOGJ;{zcFo*!nSHm4(*X=br&W z3v@o(-D)67*ZoCfT+W%GlqJFDkX-LoI%)zVu5! zdk5eq1eAlti9xu)*&O+R<@%f5tbuFUK3@&4)Ph46W(lZ?Dn<^6USisx1*zPCqaj1j z<_X>2N!CO5_@}~JUCns;Q2d0kC7mNv6xfR$PV#mKh!m(29JsiAj~L_(|zQL-dJnUtuIA z;w9x(5vO6a;Y2Wz#)QG56=Br6RE(s|4}$M7TCtObFe|=uXDn{1S!BP<#7wG7)yp43 z`GIb950qc`(?=`wU^O(4%W|#i+!Q%?>ery^Ao}P_m*M0?s9Wgq$hbW7{ELrzclw9P z62F}kP%y0}eTQXP5Xwv{=yoa~#226s2)(a7g ztgNhxtSeI$gO6h z-)7#y?lwnh!vq(5+`dCXfl3`KP}8En0~!66!fLVuCnYbV;$_n7sVs>Cml@SnMwLGP zVtw1#R^Z4;NpzX&X%h`EX>wxP9?Kor&+EEPTn0%n-x(F#9-R_W!B0d@T*>;Bq`a(! zJIIsuGLG9vH;_HYD2Yq&WTf$torvI;rV{=%$6h#sUGZX9xvX44EG$li92(Lg_uul$ zP=K9`TcCGt8`}=nbizXV3;1Z6+R+u>loR{5v(e~+D2QMr4zJ$r;yApLjLT$7QNGqa zSz)%|?UP|loN`4){8e&ta$3@hH@mXGSiNP5B5%ygZqiEuDhf3v%>4JwsZT#yt7G6H zHtUR}lTBXmuXl*xdR7nUfuqG;PAN=bbAj&8&SjRkMbyc}|seqc=) zy_yS3-t7AX;rKF}7NVs!!Wxm2Q~3w)a76v5Wp4nTu50DEyq2gfgKqY<{+n29I9yHR zz98t=VnPpn8Hx7$VD|PMtVrx~$(m)Ib+hp)%z1!M^$b3`3>_^TuOV#CAq4|}*7ezW zBd68|YHJ+e&@rkMr&ch*81XyE^8lMHKvFqd;Fm|**JjVl{;-|l`JQH29+twUPv_18 zIcxBpkW5Ok&$C8*4>b6g78m&Yyhc)9MIiI@+iQu$lKrKjsU`e+rY)?6#~k&!81Yv} zv+K<9g|Fr%D6sm*W|kG!oP?R^I?_I6>vYhqm+Bs8@ddwgn`-?#6NZ02V#%NEq!Ubb z`oK4GL$J;*87_o+8h;4i<)0$<#O*sB;95Anb)?Jc8R|A}_g?2gGzP^;#oUcp7j1C zk1@ed(QNK~@ZHmex0gTOR1m9KW~U78LN742QHI(?zTiP-K7tf$UR^6qD@FtS#nr{p zPlCxQOmGP0g;9&+h@@C$BMwPW7G{xCjT5t=_z6c$g+x$Zg=t~jQ{+}U4L!aNh)88V zJMRju>2w$ zn;AR>VB603{iZXA7GwNi)X^N*A>QSyqbLs8KrPL_LNBE!Vj0s;$Kw13b$0UrM0Jl* z@jBSdN@2M#eaEY#{$<3zk1ft>8oFLl`DVW-*RpKOcL8G$gPBPp;~O?6ZKwBAepnv4 zRSnm!2-SH1@^_iWex8yJxtN7sT05V}xKNrX7Eu3g+Sjp^<(|;m!fsEl5j~F4 zq3}F2;x(iqn#eLh0T#IL`eBMc*;5KSUO)t*c_&-U->SZI3)9McO_O2hSIBO*vac`ML^A1q_u+H2cv ziGU(V!LeFpr>>HjI@4q{Y(HRD-LdD^Uw$qq=q$T1N#2+{Q6N(0ef1g@_*5Vt1mh#E zsHkw_a*@oOxt%!}1wIiF-;)0;*GQ%vTP>C6bK+LBpdVyOk)O3sx%H9bl78SES_ao^GP)mxZ!4s}=xwVM@hE<#+ z?&}MoIRACY3FZKUE(D{QMRxqT zpLMl2*L`3DiCI4cSIcsU>}2lfzfj`MxkImosk)rY%i0I!t#M+LJt;w?j3%1@D+_JD zS>s#sB>Lvzwi1xOEn)XOJ{^1MnfP^0J%iJ=XXiisfFE#6U?ATWl?k1&C-7HS@X7a< zY`!7@0rl`Sl|rGXt=-!I?%A$j@S4j!1yyode>DS-$;DHd`sf2bfs?cIeMbi$Wxy@y zeKHL@fQs^$Mg!&z9poP*EGtNJoTYaExP5ZhrKN(Dqb&JR(~yLj>H*0-2>2ThrS~7} zcqw3;K*zt$$`QxJ0avFzs82An@CAavgAb51>68JxVj^;uv#~E1B;nx zQ0NILI_Tb&xpzhnvo|#j?2AY4_i#vfbI+1A#@JUYkxSIGqfH=UG*c51wn=|Zkx-M-7Z z`=qn%F5*E}Hr>}Ze|%CWY0^G?!&skV<7n8ZugO1q!GrAu8AAc1r36!V|{ zKTN#`IF;`oKmMHK;Mm8W z$ok#Bzw7tE{;n(6ap*bEbC37^9nf$DZ}{@*Y)U(L%)3@rLidAq^(D0) zc&?k>jCySHc%9#P#bNhm(_c>xLmeglE#%d&SOQ18QD;!e2sajir~L^?Y(sj|?2_9}k* zk=@mV1KBsO3wt^70S8Kk=gwCW^Mpx6s?7*MPzObiOHf95RNsMHwP|65+~T~N@Ox8J z5ZvUh1^p&YdE&B&${N=+@E+&x!!=QUHuiJOaeuQYhS}NA|6zl6=r%ef z(c1ROIeE+t?!q`c?z#I>nhrf;Fg3=X8CPHD$Oni>o14gg4fYA7EQv!e()K@D#OVs+ z@q>^5YE>ounWO2cxLDXD`0~<@w=lqF!)J5WBJQ<&CEo&xzVNru$*cUkN8x<-N#e>e z`Kc>O(zxP68@bq_XA3-Zg;?QcEh}6OWQYs@ zUfNP+C|Ss`acbqRpo_0?W5oyagf;NWoWdi6FJoWNU2lOwLW&qK!FB~LC<$@Myc-o_ zpc)t`%U1i8=GuQL8VHZJ)QjAU@Sjt~A3ng^n;%nR>+9>`>5p7pdkXGbzZ%Z|3}4-$ zJRR%)xeC|F3;@G?@7`6Myun?kEoeZJT4=E^`r-#E36qWD;ce;D z!MBR$UtDXyw^LtOJ0<^9;XA#HWXJh8JexRs30)1CzglI!4=^@b;q{wxgo%$wOik4e z!XHdxrNJjx@1M_1k&X9QIobQ25d~`X3SgTH@ooQpDLpEffGaDX!#aPFFkS{RZ|YRm zmF&9pVEQT@3RE)$9kfoG$k--#wH8Z>HB^UgAy0u<+icklT04i`l zc<_Ljf_UXr;aLG0+SbPJ*TbAwm}I5<=;4#7 z*Oo8{WWT8dKc)`t6Zjg1m#Se|9Z}&ChiBX+eu2A;{(Jsq9gC-oobAcMcB0!K_WJ|8 z_bnCszr!8R^(`u^vLE7avu8j3`t^)YSUCNRB0RT!b=MolOS`n3p<3N(Id%P=bpk-1=zS3$$3}@?b>v!B<>$-KLLO>JYoyltW307 zUj2kXzuAAh_Uk!gJ2suyM``Ex<^2E!_o(SDqBQQRKu-$3G=2Tw5ML=8Z}WNb1{xlQ zCbjwD7lTB_08Nj!T->s;sg7@pHHwhhPX&L6v?_n~R3Qb#+prjt!HvZ?+gbL_9n6-` z9KOBwi_7(jnR?h9rTC9Urku|?ev{_mO@M*KSSd}J?sW*FW2`YCM#G`h;&%=}8B?E>6DC|Slai3ryt-wWf~RXSg6Ws&{1Ker#t9DZ-?ir%pYO1qJpVk1ed>??D0H z%g;Uk%+4(ld*A)8Xni6W_|2`oH!muc{$le5;n-)C5V;ge30jt&npcLR24fxe#`Y>y=fG$fAhxa%;{I&suc(b#GmayQGu#TNG;!h_O) z05bq-6c@Yh16j6&kW~30kgOcMqm@`t@O*F2OaFNrPRaKY)Ts{0pOg2!Bs{?~4K?2K zA3ov-ImqDGgO!Bx*s?=*8{cErQyIVn32bikC>5?<;DR(T)J>5<^l2KrgB?f_ysGGq zn#<3^VR@}z=Sw_dSe1TuKlp-R_r4gQt-N6g*%26sB8#Dq*VPn$d!FYHjc_vjSx8aJ z6y;g7b7s6RNmr20_WMWw2C38$_;vq?jwlC4Fl5G(%LZ$9pS9%8pnTEahPaszQjXYX z{pSZ19$UHQWxE&KIo%tFFDjNqt9G8SpMwu~+bCouQF{7)E8718yQ}-sS^|X~nySjB z2&3;>=-hwXxB)mqnt z;-QCX230(GwiNCPm~#Ku(mQ9Q9MmT`au!LXeP2Rwd%NLzPTrFOy(- z#i`@iOxVv~wk3oy8Gmp63hrvWe%bIb%iiX{lb(|uaz#PSpa)b-CN`T=4I3I7AP5ks zOq@X-!+JV82mIdqpQVY}1VLeUU*Uj?8y}Zg?h|3{u`G)ZQ7*)OOy(}tq%q_xea}~_ ziAQCjzEaNLEd3*dGrHQj!XjUHA2AP=el-;qm;lAG1ke_+r?vR?^$Qy>MiD8={!G{z z^q3oupi!)%L*1>pcU{D)S%3CYCgo6m;c`rVIzN2a1%zWl|6;*yJQ)!asF{2G=KDK5 z9hd7&v)CMV-?w~v>jPT{0*Xo1_?Wy(9x3wwzyzxGP&N@thRx5B-l++pnd}NBBUCit zi2|C23^*e=UY(C6iCym60~Q<>RxTtY^hpHtNI%FmAVKfApJ16Jo%JP6R0&_wUN*eNR@@P;}vzAof(qs(I9q!vSP{I9AZ3_MPE`R(y-#&i{h8 zsOYsTNC-q99PPwLMn)!`w#HkY#(6Sf5?A)b0>>SnK6NAL2tAyQ0==L(R5)PV8K0U0 zN{a{}R-g#l5>NNG1KssLJZpt)(6}MkDFh)o*4;OTIa0rs=Y$taz}4xngx|LOd}lc^ z8gK}e=tE+7A38|=>U5V8Ck0Ie=TE0#m+Ym}2@FWlO*$u@pF)(YL)NcNGg2vVQ|-F4 z9*1SF<0~fu;#j41C!9q)F*RqR0``rvJPaRrK?8VVe;hOIZi^KXOvT!80BF?ZVo>~_ z%)6Hi1__ixeG%9|kk-n`OCUJlC4O94-f<9W1b2TBcQrmYmo0Z|1rxJx)L8xGtgo=K z@kSw$YB)lEli9eCi(4}rg2K@bvBjB$P+{!%+r`N&v4Wa32$kBHVhxD9&8qqXf|~^Y z7G8c0zf6On0s9*+8iw-f)7`x8zM^lr@AkB~uU!M|w}6L^WJAn6 z9mwyLJpo-s%19N^#u!8!-h)TH1FfF6yJ8%+W=@Z1QfH}Fr)j@T`VcWTHQBdviOl

    hC(<>?-%|FH2b~qJz%svpO6?ydN(XRDR-;FvI9c+Jt%UH;81%LyD5fB^0 zmH`X;f!uH-=cSE+0eZSU?-2zcafmpuf8+b16*Q&Yz8&??#m%kv`V;5&IJi3(JRG1kUQI*zO)}2 zHe}N@g$g=!#+{#9S)K!np;WenvTq}qDGMj}*RSf9Yac;!5focqYd_pxaoQ458sBBf z1%t7G8~IDcCNuiT#otB``>C$rco1GbPzhPqjd!N(kO;i1*Ini&5zTC zUyCYy*fI@~6O`-fh#GrW}UYCIAmeSIT}KZtLiHi;V>T?{EFR;a3| z!Z(UtQopK0@KR%h2VF;n@O2y$340h#(uxH)9*WhAx`+CbgE>u;Akaqbtp*Ho+85J@ zkWPj2h-53yJh({rHZ5E)*nwrE4yvlE5;t5yNDcPIavo9~z0fF{wh{@ZMq#94qn0;H;n^TW)&lUx?^_?A?J;UQT;im2aLBA(%fuo}Zl@29vOPTbyuK6LA!@e|OGR5M0D7eeK;Vyfy_#<6t^#qCnFo z==E7R+8Yv4L8_>$6Gc+7Cjg+>#HPpx2~xn4t)^u`dP(HYE6oT2F8w$l2=(vReRjxI zYCUG+T45?r%eAJ@?${;*bRu`t$N@ASSB_Tw?R<;wI+CO07ApE-83%%2i#b`1e{0FF zt@{x69Sn#==+Tzj*b~Vy0`7WNHL2K3jvW zUB5CzFXM5%a@0+b(OtlP2n3e(jf@B&z}F1qd}l)TKW`iYF|}_*5MYshE)bdjw443> z{5`KLm!c)-k_OFh1)H7+cb2=Sgcid!7(2Ow`#*|k|Hr<6va9pe!7A66a!&GZLaVTO z`uk#Q2lGBa`4|;^FMx13o#E3#rqd@?a2^}d(2BO`J^rImfKQ;D&-p3Qtn@+z3???U z;PGu{h3Ah9g8)mf`fcLcrU=fKMtY^Qk9xoFdW!w9u>3OlA0-A^-F6;yy7XpbwC27N zHuWPE1jBJ_#uW2)t$4w3pFZ&>JFs=JGBw;n$#FR%!ng(C@uSaB+2lScd`wtT;GW{| zkrhXz1uEIS4s-dp8XVAcVO0|<+mF4lGxO`hlR$JF4u{*bmt4p}L2`^YW$ePi63USWUmj?1*O-)Tp z`N7*H|5$Z&b^DUygsM)qWz>0i7w@l5k3JYhpSCXz{$1F2(`cIBJ+HGzV`HSon|#s1 z%Nn3UxdceoF2&3Nqt6#2w1|R&jf}^K@^|h0X%Gqr!Ksx=2>FI-F~hJm3ce3l&%I*! z(1pf^L;9pSXp~7x*B~ z95pFjJ%P{iy6BgT- z@84e``S@{-PdOGCT{SQ-1thv$qCSd=wZUUrvK@ z$QYu~;wSs;c6bz-%ZqP-Tbn^*;gesCMSN<{o)E;hiZ!_W7uL}gX$~KCe6hv!qX1jD zC({dFIzQSQu4b$t`8is2>n7_4VR%4}^5W;Y32G5qWVdwu`?NH*Mckj=ngDIlS30ky z0i7ox>hQSlOK*6%Wpv2P!xKb;-n^m^@Y|-Lv2mf3n7xPn{5LV1(i65vQ`Kp!pR$$? zKlu3gpaE$XJyV0=eCw?HL~2(;6SkpY9Jf&x z>iXMHBKy_S@HrGk@Tdg@il0*J!uitMYo^!kxrw z0Q_InXOYs6{}Z~@qZZ`k1wJ__zE?tvB2>uIKXGVeynB=UbHgBptI}E{C#_Ebqv1nE zB$B#t8D4}%mq?ICs_;LfY?_|^Z@otVhIl}aHI;<_iBoQECc6oMj-dS(IY3Rh=oY@Ve)(keBqgu*+xLg%u}pyH>BsamKwKvPv^!{Y2O1${02J5# zlu9w$aVR}&cwlk4_Gpy&I+7%9zV2J&RrU$=SS z-M_m~EOX>>n8UqL!65c?L82S{72iR)_kxtsf|k6yn@Y*m-iZmylyYO?E4@jb6?1fQ zm|uHEX@Y2#TJ1o7@y#_c-_x!2Q*7t&f&V-`-JUZWpp!U5PX)`{j~dC6FD_jL7Z?8F z#{64%PGlWcmmvtyy%bl6O?>?t4szI+ZWNP@2l|o}0D~l=x*DgN!l*+ypSINfv!dWQ z3g~7WIE&~SXw8PBH6ROEE*yfx4L&Y-V(1752L&<6FuvG)go6;4I%`w~S%gm{QbEUS zZKGlu7gG6RUl;Rfg`=AZRb;Md8ct2(j-K8fg7N*J7VKysIWN8+cej5cy(#F1)vNky zcphc>X0YX$%8i@~Df(bO9;W>0PjWreh%aNuXJI+Y!mj7x;qY8JU((lZZfmoz7(pxT z==eAu1nXdn6=4Bu9+a3joAs{F|FIg{q2kMDg!er+clXHAngW3kAnQ&j*$GkvwIP5z z?>P0V1!lk&Gaw^hCv6!1!8qA9b|ND81v}&xTk@`opsKUCm-C^-*r#UC zCF3G)hOVgZnj;Nh!$y~UGT89%2;P;wN=S>Pg;sa6d6?YcEx(U}%r9_ks)bei+4LRF z)j^vwC?)}IxEP>93sP4a2fc~hn)H;P@OOujO3X#|P83F4gfm|K=ibC#M|+}=TBa`i z534rY!bzW*rOt!kMX20VynoWxy`WcY(T z)=%Cu#DzBjT*T*6NpeLwQ@0%W;&(fUXDWR*+3M8z0+pG9f;j5~a)3(Xltkwr1g)yx z0(P^mA0r$LO6_*@9bqz||0HMJdw1)x7w2oUZPKn%tTXP?Pj;W(H#=uNJNXc*@!MGu z*qfx}9`p)5SuCn#s=c^TRM30y)MPv}#4xbiHp< z7pu56!IsglkK{{)jT1Phmm^3FV{Un{@u%P$A#fXM$clty_J7h4%sXr0l~hy<8dFiuq1a`@Xnn8TXJ)brV+4 zDQo|bLJe9YdN@Oqq~x%SM4UyB75VE;}07ftb}}961{>g*#+Geie~OV)vLieSr2a5 zTwnhC73p^1_kGgvz~Y&O>i0(D)W!k{fTI6C^jrCd{Zxq%5i(6uv- zuzb=b%%sT|l$_LgRf6u_F9DE$f9}xy2q(0**#lI^r~U{~m~tlBj3ik^NPST@3XEe6 zjb_BNP$hf(;bsZtpd+OSa{9tP!*f)pYmID8iEH#}1)- zJk+Ctb?AFk{KmdJBh`2M;*FmF2q4`FT>)x?%!W9ZdNXJ1CC}~S}ZFArop4r0MB`pHCaQBbp&KR1bz;Mn;8L2da!cM z|6PaMlLMrYOUhSUMOgNqLQEcmub+yg1Fqo^z9cDHPBc^tyh=_;l$;>aR_4`z6_uo% za9RN*j#BV(v(lR(eSHfHxdQL)BRk`A6y$T&Cn2eEElTjD@#|D9?i+MvTIASl5lLH~3&+#m085*F+9BGJ#qt;tTVXyvW+r#(X6f>yfL;Dmrzt!2B;R``k zLL-@ybI>+!g(m5_4D~AKEDt&%L}v`!1zB)wvR0p7&KtM^rsr!CM9Y^qN^Yx+OoF2e zqDdoA0yqrkpnaTIj9KJ+@&C+W)C|i0C{lxH?|Y`;Rwa#Jb+DdNl$Vs2m;5B7iNGM! zqN~tM99}R7NP}>c5>0+vksL;CXyQAtcV95{b@VOesRKHlvAvk`L~OJ%6cK5=EH>;# zs2Ul1WX{j7tYKn8pbV~kXtnOGMlRHsoeZXyTZ{>zbw2UwvtjLdXVi(0TZY1EA+x)L z0nL%Y*E5A-(R=+$)r1bSt-fl|{DbqD@R&O>&SfaO1XQ?h+dYSmCXagMZO!iNlP>C; zq-yoW7LZ1TMv zI}`D(YpbVBtEaTqQ#nlbx;{I~wWReZnN?cCr3~>tCwOMJ?1Qf?U4?L{dFv!OZ6_KT zC#I{KCNOS~I#P}Luf&A~6ln6eIlvO@DMaxdo9=(Wo?_wop<8LN=Vz{WiSJeDDb%Fu z)12Age2x_%8))_YwJe}zYdk|;(PU}gW`ae4tGFo&hULZzap+qmhJQ*jj={}2ch0-?kdWF$6knl zydvD25UWhQdMbqT^Jwt!Ao`guA^;md-OFefY6a~U|I#jo?w@~6suB04T=nrCMKb*8 z;mV8lisnn{9>6JA+9nm~_I)#lwsQ9wxyq!q=lAzfTS(oXZPfD|H_4_7=DkUV38pGMjNSsT;l6dd~G^oHx z+Xm4-7RfStO!Nq0%Qiux6H{M|GFpE;@JB6!}NVyH8we5j!aTlC3#34E{$lphn)AW zwR8Fky>ekBoq?Mpn6wU%c#!-6uA3@`gls5bb}op7=;5wfW^tFtpBQ{b^Js;c_L zd;w|@1#gxB8#9B%IYl-9Q zr~R9$AT*Owpc2V*W?D-X>#bi84A`2I|IBrx5qihPwd8whkBsJMhRrIh>6sSke}y|-BkLiRKx#3pY9|8)h7 z-OPX&w0?EzVt7}yc;}o-G5E96{FeU(G2{{GM#-|FSG163H2l{`YC_whtb1vx{v_jta`K4_X%`Z_v7tjAQ88IAd70~C<}5W!JE%m!#NUpx3&)Zkc*QsL zwvKi(<*2F#;vh!&=<92K%v?DTDmM0X)K~CEhD{Rfuq=X+l!>%?z5-&2aTc=|f)~C9 z2h5&PKG{?7MQ+Q?ZR@OlF)|g!jD;raLRS(r`0vRca2^%VtS)?!Pg30;6jHqHfww zsxt=k$C%zI(UGc5`JQh3w@ZX2adE!T#Bm>I-gv|SDUV5R&S90_67CX(m$^VVPz@tc z)&kFBibgU0)i$Gf9zn*)sieg2H{V1sEW5F>k-MZG8y&|3OJ2Tp@6nSdia-qR-NPrU z0B}OpVL?lBHKCo=@T1k)!Hz&Fm6CHc*5j3z#|c51u@+avxZdF+ndxUW%TNNZF}f&n zt4|ic`A0kzvHOw~Kzsm z|Me+RKw5Y1oI!?o)R;;pF*+@p2O4q%f*y4cTA91!BjtEkS^7#o}QjbC@g2h)BB|J593`b5ZN8kD6A(XpY&A~xU1NuG-R_@lnATx0 zo?Mn|{v?zC;a1+AzX9fB3GBG|;Lod^4oa6gkC3vK)?n=uri+39hb7p#Wp1AJk*Rz0 z`8&QI2(VbS%qoDCC9364#IR-Q~w zCD;@D3gsp}O9&tO{fC{>_Wetmcine*S!x#q_roDY~Nt%#aHv+KSUbtSpk5OBkW8E?~TfQdT5sSjUL` zk+{&-8N*TuxH|&tnA${MphXXmNzsB(0XE0w1C$O?oRi!maOG06&!wqxw=}xXP zMHZo6`rvrP`wX9U+PtW&S>#tNMdodIUX?Za;( zAlA;OK?lyRvVsmA2qLDs`lrFVLiNuNzG|XGC0`Z@cWjtuiv2Lf>jlG%pVHKF?@o>5|9IP;yJ1J6cL*4VA5O%-Ak&)KEPSfw-j4`Q`mKe_N88 zSdn&6L2NglD_0=s-~#{l0%i0+L2(HtKN<$8i_DO zrt;!(9C5PYsvOis4Glg|F72&7d0ZXv5ZE~3t2du}SDS5LCF&b+XH029$wu0iFhx>! z*J=x8JGE&bz5;JS75|K*N6jx?v{{tSdM!|jBinw8#xq>E1>5)@#pc}sQ-63B>TSJu z#qT~3vG1&@0k!t)a%36esmfX_rS(*23yd?otisPVP6L*BM>Xqit`NW979CT`NX0yT z1dwef0yU2o&RpWe9~QiG z7Q7n3L~-zvEh1Q$3%emHIbP5u-yhY4ev~?emY0uPWR(=kDec>2bw17bY-kYjG;(uO zv^ZpdBT9^^Vpne=_ode`FLR`r2~vz&e1ZXvL0^IEV@)Rb+lMnv2vki>R19=}8q3NMB!W#x&4!w( z-$Y_L%tXsm8cq`hulCl5c$}R3jHt@4@(b8!CH#txVG~W#?a8zr72;*u6y_>GVv0V* z^PFw%(*OynXjRVPLk;e5P_Z^h3N7kB$5I3pWN0K@tZ~gek^0$Yd^5;RvS>+R{Z>>A zUri^lA8AXmN=WX$$0)uAnzXw0xI zx$UxtEj6PZ0{2x$+H2)t$nHV)BSNU3lY8gsby1zSj*PBDFv!G&47SWuDfxG2j>>up z*2BxsA+xtO#agfdUrSMPztds-pfkuZ*$n%rhF z?v8q;%gBPs{hITC{%IhrxC_SW7yFN@OaFk<<>uwmwo1B#1zvKE9wTb>;^+?JD1FQL z&JJgMG@ZPo6crTBM+-tM>+G^duVD$t1EV1p2-#_W6}i1p@>h^BZl!~i#tp7I{+7kz zNB;^5M+h!W8>6bI{LMd8TxGTdV=`gPS>mys7|mqvcOQmCiMiC_P?#`!v+4E0{ErA| zI55Am68mA>dx0SFL0h``>{PF80UzS)%z8h@qq#W>_&iKphlj?RTG2S0(L}dZ*zcHt z_?|HNvRh-4cnnAXjV~!70n8WFRE8h_g(yOkx^Q*xCY#RZ%J%@bYVJHwHeCt}%`V%Q&>uJ_v~yd>i2)>1-W%>71tQS7 z?@^!pPSrAWCocA_1W9il73*p^*&3$b`8gKscgrEQT?z{ke?v~;!Uzd3gE6zGMDMYt z#@T0RuHly4l?TmEdj>9NiEAzqiPLsY=jqd2gz0ulcY0)$ZQ{i7D6~ooLY*Aq#deFA zqgF5wijyGR#^aU+E89?%5NxDnZGxBsa(_AB<;7mA98H3#qWLDO4^%8yfb9=VU2z%Hz=Nok8gyX5~5Rju*4Zm}n zlW@w-gxUG@b{D)`wjUgK-oul!=Iu}3o8P^g9t2X(!_*|%H^!1~$Wl4}&+GhctCoGZ z5`6oS0`v+sp8V|n^Q?^#LLXmvKNaJ;t3Y-_!Cu4XB-JrbK|We)>~rz(KATfV&T{p_?TPZv+h?)>E9cRzGlR0+ZmbsDB&cyVV$pm?pmmppl=$89fGeX)>tj~KS zHI{+Xo=b?(H3>4~?s14y@u0*RZjH~7E0;Xmrv17ldEZ0Wkm7}W`Iu<4H!Qt0B5ePt zj&?Skh1nk-o<@p&KtqjStUxO(J9r3xwSEcw8HW-$%B5C3s6%!HN-V3a)bSvaCP+c3 znq-k@>byD0;Kys|jf2fb^9;l=V+sTm2sqbYn|pP35u9Tl02h}Rycuc9VPa|;tWGz4 z(8{i0lU+sv0?O>N)lh%Ixi4&&A+4bJd#R+|)m-fV_ebz_`X0&8)axhpE|u0u0gA`{ z?+6})98ZgDb}Xe7N%^i6y;MHg{6nzG%cf82c~&{5?2j4WFlgs`(jO7?D!BQVhZj4#;9!v> z+n}I!Cp5OQa!pT9Pv9d7JHruTasG3m(oPp3pdH))W_xQe@os_l#6OOOx8V@ZB|G47 z*1yiKH_2WWp^*wMAzxoqesH^ zZ`yRG_fEz&!4YCf|5H0_Gsa4~?<*m~>~2JBc8bi@n8&Y&x_{TRnFRW<`$sRoSBLXa zH+HkkQkpor%#vov*4CE^l5CXbdWsyx?_Ui=2I1?84$>O>D2N$TqBXj8I0Y!8{r8+9*0PipX`0>!q^YCfF7znX>YxNVux75#qOVXkpO*sw?R1 zV5*92+|9;0MwRs8&z zKJ||pBt|W=;=Z=8H+R#1l$!k=nvZJu+HA-`B}D_pH=<*1a8rmtp7e&eV8jB5@DfBI*4cE1H&aalwj}^1|DR?fA04&}Xu{n56_q=CC`2eS)X=t&kiuMj zdU*+JYilQfND(nt_`C^}=6(WsRzpAlWE4{_aj&XJALzU|{WXm+#?U}DsX#^`tHo#i zYo-O;^P77bGrLWXj&1&KexJ_`{y`;su5hQb{}uJ(xgMqIhwCG8yhD*{TKXPRVdgoubxj_6m_@`6Y%ay=w z_#g=OD#gib*PAcA$$mTicF^`yzZnp^Mes34z7d)_dAaa;UenlQBeQxXh{ylt^Y+(k zYM|r+6()*3WQ3dJ_Vw2{^TT>f&#|*AIm?EB*U-gfSG6nz7KtG0tjWq>L8{0vXgnXH zJP&DJKS^xQsb+C&=7!9oImhxX)S7U-uIiQQW_okhCYZ9SqH#1IMwKFWAH$*AhDvq3 zalIJIMyqC6OLLdzd=o9NWOpBmHhI$%s>c-GX(L752w$VYG_N#~au8`}WBpT}tHyeT z9=y7LkcuZSMP-`ycF!E}EG8A5i(1hvC%?=rW0rpXRkAHggpQOyOu6t4sGK(fkV@H3 zcUVpcw_)m|g|3Kvfr}zK_DQu3Kle&D;amM2dic6$Alx{&OYh_VI7z?H~)e z;w$O9e~KHPp@%I-3jQ=;eSRZ}Uo|EW`;06TK)*)6#99gElyQR4iR{f@hn!EzbnnY_ zpG;>r6C8CVYyWp2tDS<#kFw^?-bL)v+I6XqgU5qPoXY&$oIa6c1U|gR53;!Lz?>9H zVmDoX@k;}>KDc zeip82*pbOXq#89p>sC?n_FH;53RlaGt`(x;$T4fsFh{^wi-+pf6Rkr&X|*(x7W*;+ zXJ|q*rEyjXt$ro0oObqZ3WH#?37Jba10@3PCDvSv;&e!P$?)aU_@w;?c{}tDD~qoAv%CXt*iZbB zjczmfVVBFBL3e z4^Lo)YDimTr>u-xXGO2)OOOACnSQ|?TCcm7vRj5|_o<8a%^yArk8VamVsJ4HJ8DOp znUT}T0{X^gq%s*bvuaNapO)(Na7$UCTyM3za%uJ4)SeSpJOy41qK*5?pNWxrb7*tI zNh}rZf%px96muy=|rAjL?N)X!l@x;Qnhx3hU?9oHyw5(kWJUwKuT;3y30#oa9- z)tGWklL?kSvloIq*Mv(JuLxZYS}TH?R_h=@-drCbV!{DJ=Q0J1jKFwK5s-k|Qv_z% z)AFq=^V<_H6q0Y-yrlXU2{o&x;=2LN_jYXiEeuUk@L~_i1DIUfPIoL;Jtfw^)~wZM z9Va-&6MpHL1pnPsF)>LqvR}5G`**iy$$?ria0c*aL~fn0$)3kd!jize3Z(+1L=>Kz zvk3rLY8ean9Zuc$Pu8h)i(jCrK0FH<_*6?bw`?UiDjHSQC@pR%k(iQonY7P6pXZK! zJR12Lw{ooTl%*Scg$Lv#Z-3mAq+pbI$GPT7yZju*U9kQ@T~PL zF|a+sRQBYNodq04yuTMs1l>ICx;N7@`ds=cuf2ojvAdmD>py$8UmCr0tWj@Kd8~|G zM=xgq7?d804IrdaDNOdR(*R}-U9Y0=+N6>xHn_sZk8KtHIHuw>Riyc13n}`^5wpalP&wiA6`7vP4oRALsxw8Y)6~7$*^fq2_Bk)H9i8 z-?J`kP$m*A4^=#>hiS+u&M>I2*OyTsrJ8GF(MlDePZh08G-)%%Mndz27y9J;Ym&n3 znf27cz25$R;ca|b8QvkQ#D0?72Ie1*0VzuD>c+Dd6lJNw7Eek*5dWZU7c z-P|e_x%$Wk z>wI8M{O;eFv;~aK?l}y-W9$=lKmXi}!vDeKHHJE6t1*G}&J{hZWVy_RqUQ+x`sErh zo6IR(#^ePnqY%E)3TWgoFVtXy6zb64V{#_`TUITFv|=gguT~NH6aM2&ZOLY* z|C}(ecKC{tA)a%stDL|?J28_o3q{#XW0blB(VbM4q6BDcvvpql9w8%30!dP97 z0MgasXWrFFj^S2#z%L}-ga+9CL#3kbsIK=A78BA1nImlyVCG1}NNB19+G5 zaNsKF@}W_zdHZ&9Z1=I-XEh4os4S!_@}y0?&dhirGuZ!3C~k1<;ONEK@%r=P=G9nH z$_W98uFy05mj>ZWR$iO)5~thi7j>=lX)k|a6+ZUKjLX30GX06#<#N9rgxKGsyjQu6 z&s&pmeHSEtWiIpfQve6_q{jWT9lE-+^w_Zz3A@m-FcoDw#e4p}x_au3iFWE1HI!Wq zjH?qKCVZg!IhVua+Kta|RWlKCWF2%UU8iVUlapj$X% zdkL6mgSW+kHxX*R!Ju;beYJ$fARkrye+qlcu&TQ5Z*-HAb-W%4MIp!F@NcGb|%Ekz2#aABD z<5&LpZUAk4#-+=M>-CUEzoFI756*MA>FVUIXV(X?T1R-@9`?*?ceR1CXT04v#}yQX zhjJbZj+W^%8(g?qD1Kfi`dvrQv~;zr`|_V*4!_MgTjC;0fremB0|U|YlXgSYLY5_6 zMyA7qata;bda4FaNxeVk)$=^HnY@=H1*w8YhlZdMTeTXiHc2-;Tr6FD1DfqGGr$AT zMGSbcK2}y%Rs0)2<3Po!r>+pE}iEx%D~%@bOY&&#t!c(KT>F{gTCMq z6848DXeHa8rXK_BDpacuf^2`cPr)ICD)m3Ddh8!x3pc)E$1UWLCgGdYBpH zhfbIYiG*3FnNrY#%1xfx7NU!cbk3xR3X!XThi+^Yg=B@F_40y;W6@}zu)M5nP{sWc zQo!9nUKnKvw8lI#xhKiu=L3mDs#!Mo?G1fwIgwZV8Ph(nqYvRqCE11bEG7peRO)fA zQ?;51#>WsaGQ2VExR3efGaOLA3jZK};9@cqPRd5b`!gA@7g^)a%J!VZi zQ~XQw?$=Flsmpgw0&_tVqL-$4#r8seBiNMBabP+$A0$9NqHa*Prq7{=qW?-5px_PF z`OHoBhi@0={PBaPssszf7klc6!b*@ue>w^HF}Op`y3ZYCfgN5@2|@!mBS%bc5Dn3bFW$hH{d^k4?AbRnEP|6;{>t^*{dos|WN*I|}i5 z;vD4hCiZAPI)8~XgOiG}jZ*KmWAWOzO-AM0yM!7I#HjDhC~p+6|iG-dvA``w2J zWV4DN45zpvy~%|MM14tGI7NN2rSY z!HusA2T z2CYjyA`E%75(NMpEBK*jO%V*v#`J!oIxl*y&cD&3iu6$uOpj?uS5-1(Z+p%v|D`s> zUFrCSiw>eNU!BfB%sBKM{J3TSKL&Zod@lI$CYX@ni}Tz|8Pi`n0j3o6^l;#-j&Lcu zAIJ0A?+xLblYp;weVj|ldHFvQ2PxQAk_$j>g6K#g#{fFTZo7W6&hRAA+E3H`H$;f6 zsttA>4Yd%L8&_ISu_4dIZzRH&`86@C^~(D`m4<3+amaoB>$TqXH#n!a(UsR_GMLCF%G;f<6pb&l-XmraR1J_TV>leL?gkW z&?`#;lgK|uRU%kc)VuUZ=}#C1Mb;y3VyRHfbh3Z`fDKU+O8%U}zu|m0H!1!WO=$cm zeX|NO!|;e5Y^sm;I*KUsDZ2)GL9LmX5y0nRw!{=dJcjSV5b%X&xFWO|;?UY&j|XfP zcWi|in%GUoP(B6yD;rTpM*8NXChlCQ@JlU8ptODVz?Me`ckRR4NxR@ua~i?Fe|Z zaSBT_?S7~-tS7bVIHhkrX^cb`XBFca0r2hk;BSdrqWqgeeg^axa)9bH{P(XH<>KwQ zX_%WgJh&U48F5}m^gQB8w%W(Mz}3^k+1#_p7EAotCm`jMQCUekUn_u@K(G)~ zd1H0;^dMzF`{dU5?xrQ9>#*W(773~WfiM?r_m_{5=-s<_2-eY=NR-^J1h2YsBt>Xvo|U(?h8t@D0BL()PTaEOoC@ycv20PNhA_4Q@% zQmu!vGE%7KYsh#ZXFd@hb#cDttVX(|1xJ9Eh)JRTl_!dEOlFLZ+oi`leUmy?PWtdky(%u3Jr4*`1H1-SSnX zJb=L00ma*h**fo2J#u#pPl@mYJL#N;h8d+mgxzi0#6)68P!LjuiTJi{S6P4v*+92! z#vN;eOC}OxPKnmsd~jaF@CCr4HFXOK0b`M2KdC!S9U(^YF8u%CNQUe>V*)Q`X{~ay zC(Tz5_x2%23BRuTW?($Gw4BJuZ6_conAO-QmTUdjJqTu^x-#+^b%ANHbb+<~W&RC1 zFj0;Id)MgbXnJlgx_mUvd!u*yfLsE6%f)s5dvk?GD_ff?7HBk3-td6{M{AZ4X z4>ue!Lkr;sZJ<6q_>J})QKn{l$G+qUpcYQx4IBV#Sj`yV<{^ZXf7br4dXgjl3~9mX z>OJN;;cObxwin-hSpWksuV7wS^2UQ4otlDiY;u%rb`LBpy1Y;CtB9R^-t?u#13NLa zL4C~F+;_8#Ro>?0>U!!ygi`Jb@9LRb={E~bogMlE-Z+x+b0#P83>D-fjj3p5O2110 zy#qiydH^?oBtf}c?Tk2NNBwrx#yVdj$So=aN$1&5&@1i-ioLSpj+hB(F7@V+H(9Ad zulM#%#c4){DrON2^U?@`TI{p{fpyKjU?Tmh8!5@fj^vuO5NyFk*d0_C`oF8^rh}TP zdY)42c1g2+6d(OmsVNF%>yt&vYYAQ%^5{?CMoG-=q!Oe-Fxr1sRWUq$dey+74Qi_0 z0|Rolwro}4`uOZ2YTWhn7a_&l-1|J!d){m&d=YOx2Vvd-XV_th(m>5#HG34b}%(d_-gRsc1U2o3IGD&(<3Ig_6jlad&-{Csl2B6ND>zN zt}v2nGl!1o%RY|w65lUT(GpE~82z?{wX0;wlRi(yefI>eEw+`s)ieUF`NHLCeeOkz zUq13ZPMTk^lDMMuJ^GZk5Di~50v1+sNQcf6ycsg_O+})?UZx10w&8@W!eq}-ad1$& zQ(Z;OqS&y0+ymoic*vZAf^TTZ9JxEh>rO#WHoM^AJ#1ml%|uFv?%v)upz4tPaAS~s zbbLHBJssk;{7s>)h2*B#oNL3qzjyQ8J;1Qu_1go1w+Ow?SB8dS*;a~RTVSKP_<9U` zXUicYY)%_!x-GBwgMtc6WE(FIMA`bYRyrY28=%vh(t! zXRaQ9R{2n<%_-~U^;BzYVp$D_niHRrFFH<6<4`lD`nspox?^*7TKP1sw^B1oF*R2C zf*O+IRIPK~1;97afMpmpHoUo5=Yxgu4Xe@R?7m~)-t1(pGt0`YW`R~D#j{i)r`HA+ zqE1U4vBbibI`yvXVD5zxNL&*F9h*jfRSQ*feSLjSSx#Qn2B|>^R;pI2E(A=_jH)WK zu4vjWEAeB>Lc@A8;9z!G&Sr-0W|+}*%Cd-u7)8YfwSU4k^%^}-(&0g{lJRoZZ7>iL zAU+Va#>2e{^By(2)A(bcb=WyznFEHbugUDB< zlt8oxio`T<10bsbmK{A6K9F4@RL@mv%}etQ=d~JG`169Z6Ie4J0y&cppngT!0q=WjUuMz9vdKx_UV%QAZaDtj#2|%HH`}&lj$r>lKW^OWI0?7lENfvr2p6LDT zrc(IoQaJ-efuicIMLYev7yigZd7VyK$=3*yqZ_a#5p23494BnwpW=;IEa$@VsUHmZ zJxYBj*e*cH@WIjDBch9&+(jbJ0NQ91$R5}0M-yxnLk01s87AwE83R(NE5OetAeZr9t;mk2jIp|oZMS?>g zy`|TeNNQoWJp?IT1;*(fAt>Q3=|)-W_$H$*;8Ah2pNGUQShh`zZRE4aVj0Cr-BkEi z!}2G6=}rCls|9XUHkAyMy@S7B$zs;l9>v5v*uBk<^cn1vcXoE^V5jr5SaQS2w6wB% z%1yUS6z4rTj*151Qwbq>dcXf&cmvpyV>7|Yhgou_*r`feIDSf9i;1{3k>B>7%_%1hL$=A2}A(!&OgX@=q&8Vd2z3b{x)T8k5I zZoLzyg*|bt_qL???sum2#VN<^;%-gd*~U)#yM)9Le_yGvupZ)T>6vL!i;%)?PS z4vVwug%Tx_?RWv_b%(|=OI!Sx$h9_&!pBXN`{Osbw&4zPy~)qp-(0Or+$k4Y z@_&(H>TZ>nz(1nnbY7w0hk8F^-H1TkRJt7>Qj%I`gqn#b`n&^ZFcucD&b1U{^V zw<3h!WfAGA+A6vfCCat8B2d9#%g~FmkaklU1|pYReHI=b9!Z(}n{ta=VEz+0xZd9P zK`%Q;x4KkfJGg%L!_X%s_eL=y2AE;?ad}i1VlYR@OU-~HPhy*0joo;Td*vm`&KxrI z%3J_nf@gjop{eLrYThID8_ki)y?cu0r^Jh+S4Ow^*S8neZ|Q2)1n+mWafiZlNG=I%(Lh^*t@BSd(a#h;9`pxmJCqc4B~cB5 zN~H*PGtB9(tco5d==KJw_)Miesr6I-k5O(P3M2vmKj6OAIK!?16g%_wlv^_V5J1`` zjt|AnMSdgtF<5*0ge%7CE-FI7`$DV-!$eooGcG1|C99a;|GH;Ixx707$kPT3Wx71&y$WdhQS-rqpR!4s`d-yFPYi=inC8kVaC7@WezCU6HK@^c3v={FH6Oy zmEr_fY}U+4;C*r~cU+f(CF~RaU_sW=daDDxBlU*7ppGnB8HYf+%-z+ZsU}LeR-JrK zatrGOC3s{ddG-BZ;+CV;zL3#%5GVY73slU&(&D-M3DrDZ)Td;YV{cbd@PY#ObZ^Rj zuEr%GbL}kZEqiyLs{#f@C467XHsG@)wSlwKYp;AX3wt{rpq< z_GPJoAA%UPd3-@PYvQv@YsbJ4CU1NbcNHQf1M+N}sr@fLCVAP;+jbpx}S;GBMXWU=Rd!izjm3mE&OWMB5oSz8;{H4%4K2)fCu;O#1_DVYt6~yA6U;RC#tgzyg5fdNx0pK54cfcW0 zJZ&&SE(jK%P*=y9f9{I+`CG?>8ME^I^`yO_Apg$=^qffH>_P2p*ho=}7w zjXxR=VVF$tD)LOdTM0}8tE;M}LoK|6qGrg50|F_OAOSaF>ByMZXobie0(~ojNzO_8 zf<~{i!~lAEAYQP>7%ht2&UNt7_!?OXQ~vwAfoC#}pG!1`q%aE&YKdiKwHn$9d>vUv zJLjcd4O6?XlDoZb55@!MG=U&O;2{z^ork0BD>a-5JG_Ov%Az!qi>pFIKo2C4a7bHv zS{fWVtxHMJ_?kK}D6<5H7*BqDN`83=Kt>Ty9vh!xKrgl72s7&M=U&STSp9u>2O941`go8Htn%8EOdWu89Zf3_oI%trH1x#F zD=JcK?QCt^3E*?-WN{zQNwOG(hDeCSHEgPM9q{>VF@#oROs}G%!s+_l337bGwa#`C z6LV${cG;J>YJbT!+-LX3BqE7^z@CYR(5IMEQx}>iWRy>XipklE=(N%7e(*XP!&ub_sZH@O0ecY zeymRg(j~}$$6I-5A2ZImo>lec-ahY6+NbK;eNo&7cjc?Sz0Ra(Im#xw7AR+4xY#sU$Y|d8g|IQV#%Z{TiWLMhH)DRsup_CEaY;DOb?Jgq# z+2F8(kYhbe+4p9V>%kj^qmNU(p~f#D-T1Hx02)ywl{^pKnvPQf2WWA#PqHK)a+=bb zMFo?}=t&UoPJkG*zg6!U=+G~~GXiiOZHI#DnO5#Aj$ahHAGcr8CBcB##qwktXhF^oMus%M8#-D%`Dt8kYO_G$?Nb1{P^|%IL7Ye5ofE8f z0#WC9PGfQN+P-+sE>KJS&nJy>no%c=DxD}%_^0< z`RGfDP@3UhRKjf((^3ybzHvMKYml=gW}p-7A1l3TA)0Xx;xEX<^%r7$J%=QjT=|=e zQ`7BrXJ)PYH7ADH=1RD%vsX|2k>_cSep7JoNS3@L(`mys%wu13>$$SBA{5(3OD&9S zvcP9R`Q)!Qec9sM{o38P{d%#yr}OgOMLLa36j6BuPlsL?An?sd?Fi>oUGFR!!YkyB0a{A?C}^+}tuoVn^77^GTP z-_LK5Hh4B=G&Lo)aOjrHT&xK;+YEpm>HG7;t%8!o>RHz$WJuz2IQsW8@IROKjbAqg z&MaAT4kbj9a)*f4fI!@j3RwJA(@@LQ-Y;dr*+83-+>G*a;@a9;X$Dh}F6znr2Be+r z>o#)}d=Nj*=H2&4IMIQj!3>Wzuh+t!-TaEiyu^ zsb(OB*zxw03`dwV0gOcy1M1ry+iA%!YpS}~R7BtWA`V_OEnH>s2ZE_C@82)Ry(o-3 z5wi^hU!PE-yc-O7`q_$B*J|#@$JX_1CVJwV+l{e<_K)|~!jq?7b!trCH?|wsoz~fy z!d%SOet*M;sGhq1{=5%TIvSP($=`t{+6>jk^)Zo{`iP(dJU8QjZO%o3(CTyqbK^CT zBUc3Rr!WOu_hNg9GE^EZh*aSB%J`5k1fSX;oMS-rIydV(MF8(5zM9T!RjtPTWAVx%`DDx#*yvt+^Zx2M&R3CJilVsm+hH?eTTTT>+x z*NX()H^^~hG0v1&6G+c9VW2}U*6w+3F~wZ~U%Ku0U_dh`u-hZ}^6dRud{eb_#!5a* zU@EC#MS1zbxV{58w7W97&-}#|8>Hoo2?vo!s%(0d{p=5DRwfh3*qxl509fD}wcE__ zzQffQZ6j_kGN&X#hg2T${Gy0Mq|-;!=N`*g_T+TXj8hl2wauo{yrR}>QE{<=Rexd* zG`_zd^>oh>dkL=#ty|cwyl!TD2P}c~%>5@}EUAv4Z>;qtnJyg9*zQOEdV)e2Dc7}o z=O{`?uldhrLmdjZiq>Cu4=DR8alhtKCj+hVW$M|A^wNv@3I(`ZcG>K;cqS-4mw`iA zYXYS?NN-&xb-oB`&GD4xS`t79B&?;>ld;GmLOUjApw_41#MLP58qfghW8v4)Z7=0lR=^9OFS)1U{m zV>@If;P=NsaqqlWyNPFM*}01vH1c^ntrC>Wq_F2(q+9W86NGMGz|0@!eZ(K;jDbQN zgWyv2R=wqkR~~FfjMq6Qhdav?1kRvAw7mlmYegS-iH{%2%HiU0Y*y&s3P6;T|?UahM6Pp%nsBQ&PO< zHtdwYg_lX~$>(Aj<%wA{4E6NhZ~!Uii3{luxaSS4U-h}bdT&%dQK*}xp{e<8*xF@u z+fOEI80iX)iPvP{J)%x_H)Of`y_`1b)9u~qfP~18quAQ?xvb7dl6 z_m>H30g|tj^KL&Fc118<6PmAcOk-Or=op{PtV@6Fw`{Mpo#5-|Sy^4h0_4PNixBaf zrT5Q1--O!v7o%@nhL9NEIWjmT?~dNTyl;2aF)Eigg0|y}1b676*+h10Sb^zkYQ@bk z<;Fv|kBlpj#60^ljH3krOK_l;pwI?%7CofY=~XG2y$4v)VIRQxmBx-1)1MC0KjF2i zFvBxK)Mtc=(#V0}0v%>QJ(3jSLf~2qM31;2@33w<10lh%Jx`%(hIhi4OB(W$a zF~dLRQHgM6$#4oDMbBwq7d#;w&yVpTrbFe%$H1pD0SG=!kF*}bbFD(155OJ}N}#Y4 z0h+RXgM%25L4$j2vvNEgGv4q$S}6VVIi%o6D5H8nNA=|1Irz26i2LzJ$U6?Z(!T-k z<~Bznv*Q4&&UWOO{uCI^$l1AYZZJ}oIwOfXPTlQXc5ZHz?$^(sQ6;_Muw)>_JLdBz zJd9Z!8nz;)M{WJ7uh- zj=IsQyDf{*a7QI(R3z+Y(CPIfM9n}KM++UczURKc`RI`(P*(>Ph)-Aje{c<>sR$(*3oRJGy_UKUyNGOQiTH6@!N&nmdromZdW!xGgMAOly zCj_L^Q@sI47S!>{70|*dzlyg!)&m3Y?x0|e(ENu|nVP7!Jl{lj%ctIkQ>oiAXAYM2 z%816346lDzY+)EZJv}WApoMU8ap@jDM9Y2sN~UmD6aI*hMs93wHGv3y&t7Do=7`Jm z`I?zA0*$t;*AjmxVA1SMvlolwvMDKfBVg-jurNlJv>5wn47C`~dE7=Th7$^lqGU1; zKk@%!>BEft2D|k;rXeiFuJHh^0&rix#>F8+3li@|r~w_N9q?KFiSG?5Uwnn2`@7F& zp1~TT=fR)qwA-3SLsVb&-X1P@NmmtR-#EUSZrXjj+6v0Hm*Nl*AUs{sHWt<%NVV(u z!e+OzBZ>!o)5oq}S|7aL>Se5+jj2;XBI21-*6B|&dh=#0;X#3xY^hqk-b7~L8-jzh z?+k5bnJF*oZb?G?)XO+^%Td83b*wdb1hcc_ZOYMMW}Q)|yu{G|kbwQ-`E#r-og@J} z;`5Q}R+G@lTlsy9AoDZ;X?mb}1{#z=#Qzj|y`l7yU#ujj3=&oPR6YYUy8cW43q^_!a;Bv``Fy`pOB zZTH|H0h@cT-HYf}heEYQ`pUleP9}M4&2zVh@y!+d=1LjBK_{ZZxj2NL++XeCh|}%0_!We>(S6 zZ()vj97NRKoaADi1SdTh{X{gC_V-k{q22<~&*U6b#=<_ARNl9;56C!qQq#nyC)IE2 zeb%$5t+v&8$aDHzn$8AJ1CuTmI@3TdSQ5mTh@1Ia0?IKL7Z<7DgxY(M6|DXh78D$B zP2g*w_Q4K7PtxVi(PzQ+f?JuH#BVsM!P~vuySCpF#(9dH?up0zR9|SdjYik^ zlOK(t-HU1r)2iSiN>G@kbh%-{_eH~0`EmKF(u@w|+2rn|i_` zyAH`5f0TdM%xb=gS|wuQEkRRo(>o%58iAyKUZQb;R@8t)!v9$o$jw*(3m!-dy@~8y z^v`QP;24?~08v>PGF_nhVyOJj)?CB#XX+mHf1=S;^OTOu8cp3*X zQmJY3S8;IQG~kG@DJmi>!1fIZCdYwlM5j^Jl@w3&a&M+5L=UMsL_|1*t?azsY#Usq z-SJ&d_*6nBtGf8L3kMUO?{-qw?-KTYh@Qv47$~hbb#Jk?x2GX-&uP{24OpAP;b-nR zBF7!YzIPkdGyQ8YjL&QY7*^!N1Wj+dcl&&D>9TQ2o_jlPT&m#y!i)iK4OO7l18gN4 z&X+!diJF@JXL=eZ<)t9=`2n>0u2xl5)o-;gzJ2xG;%44{km;D#6XR5H*ZZ=-SvT&} zr*D0$Z9_vbgOW0*c~w4hH?QlECQoLL;eVCNrLUL%vvl^**BrF~Qz7P@+FIRLhp}Li zeMdp^o;S!be(YVvTfzn{o^5beN&7IGAtlt3Hf5M;0Q7M|y1WMm{he%61txQ(Ux z_=?I%=K(g@1c_8oEqK03rJ|M;7e^t-v<;oGjGD~6;zH#nU6hv0$zsbET#z(G`tug8 zBmnc|F_MEOj~#am4FVr%?BGmTD6t|lm9S*){1RzXdTc*nK= z^=Zz*J#Vl|f@vC)n7Bo1eg2Na|8wHUXCl9~?4{q#1IzjMq=dav6KSd_Ai^MGI%-pd zjf1`_k{W|l&8r1n!pBGS)wkHY=aE8jJAhIw1{$3jRL{<+CgvlJ>I|?J8LJ;e*fmAR zRkXge*tjHl^9)27-gM*;^QXrfd2E|ivDlC?i9_Ui$j@!L?@5kAf-awWvK8+2ZcXfL+pgXxhKZQ61%aV1m_%zn$EZAwX~ncm=_;_ z<{}1xS11(d<*d$%LzG`{A^PCRf7B7n1s}OceTfQHM6Sk{DB~Gu2p9*n#3Dv~Ul7P~ zr|lbI{rfaBGb6g!@OXJ@e`CWBcr=ar0*jpH`PFTJ8DS_N^oddV_s}k{#F>s7pUURS zG2sT!v&!k&}p>{}aGtEs}d8Ye<)HLF&&6QQT)P>j`C-I*ZOd!XG(d| zW}hPM`ov6=L!WIo0ywW!yF>Q&>fzg{w!0t( zee43RlQ)*tg@qAFEp@ef+}lyEVLhXuI#;k2ouemuwwfeASY2ZAX{>1mP93i@>%n-v zB%Ngvny_@R*uK-p+1!Cq{jfz?0_pOFG~~CskGI&-SXVaBJJ;TGTyaQy@&bYos2(y- zBixjiA)x+}Sy4d(>|xx&**oUz*I=Lp!?KfPKKx_kiC{H$^a@gRJelX$J5PDiQ+^2S z5c$>yxjo84Ctp~^V21qlR^#vX72sx9S5{0+yC_9neW+f(C&=u_qBv=h=zrdUvp!Q3 z`{AUJTbo@W`zyRT(OUAz-79X} z@h7`Qsy_P}1;y8f3 zC7sz{E^yaNw|N|l&FAPdccT``TQoAiewu1_hG6i<=v$z(q3S$r!S3AWDtI&2C;mIr z@OH5e=97MhZ-V}=I<)y%DKOFTFt)yPN0=Zn6@IM-CU@xL1{tX@q`cxh5ES9$lu0Kn zF?~!8y&SM>@8!r^_W~=Ac>Uzo``_Sro!;DRT>HJYNUN0jkSKv)7pdTVGWBOh(8^OK z4n7oJ;fg>xDO~YjTc37ZCa^GRJNOkr2VB%A*|(~BKAZI2y0!t^X`9Dn^lC5h6&2f% zh7Bo738|mQO1)OR-!yl-zPt4q3zsK;p(KZ2t|B)|CaKgHYhLX&oM(a9ScD9@2lrx( zJPC?Y1Yh@*--B9gpnPO4SIUfLzCZ%{+tg3i$dEUtiK8PS$eYTQ`wH-^u_Hm|@Na#8 zfN^`YG`)88&eRx1Rg<4VL{3~&Q)|a|C>MX_m#$NO>2BALv^z|wbZcEgD#%X4J~^i! zUKL;|<#R^=qdj4AQjViwY#5O9jdy5GW8U>*?cK9dDclCF7Cn9jslvb6cR8o4wCwe? z9ecFA@A?_nO_(liP1B~kgEW8I!DK!}3Vup9bMDKLr8Iul_i%}l?j^?Bq509bU{lb$ z_CbEPe+adtfBTvcwiuZ3`>8-c=@?RwH8!TT?AJpwcnOl9>Z6scYz>oMHB0#6z_QJOvA1A)ora16re z8Fq;gCJ1|s>{nV%ktU<;Y)RhSG)t>c<3dAe~P<5pJH#vBusg zkcrJ9UjF5(aN%>xVD#sNDnz*rm>T(2T$KTim7Q&cYeZh};43J-_2lecMxuPZVdksz z$J93r>m8O18Xj#Je6Nk(gi@L zp&vdV{X08b29W6UtNFVq;3ff_*#7hF`EoS3sAxn-hfIyHb(dr+_2J_X!ym30y z2PLlS6J-lq*bmv{!(UO3_5~_*hJ?f};3(`!e@ac* zAZ_{ONAO__uWc6_Gl--JepwhSFcl(ss%^FHv_!yJHa6vXkCe0wMP*le%pMS(@)`ll zB?2Do?S1Xx;Q>7POwxQWZ4}l6dFW(*bMx^9&RZF^bKYL~+~fQ%FT3^7+vD`ft=E)s z8E+0zv%xH`mpTdl+;{+-WEdd0Hhmbao)?pl5DJFF^+GE~nJIkZIn!i`XJ3D!#l*~v zEICO@n0gbFwM|v8RP>~~Uiqo+Z7qlB&n4XrxsH&oXyGY$>&}X9iHRV$Bv)4ZdN2fB z58CMFHY4S=S*4RmDBMl3phK%9k_|-*_dG!w3{G6B%_pH&b6DMSUJAbJePa|+TLshY zB<>ef6q*O-Qt)UuvO5-+y>@#nr!S?AAf!1x*aMywz^+ef_dsqJvz~(I-rl*Vpn$j= zvNOkyRh2|TN4DWTy_Q`E?>$s;JMo~%!IYLWG8|QD!l}0cX?CB&V^w8C?tzRCw>;P% zzCKC9y19%V)^p9O8QT375sf?K022uDJ(!rW-K7N^eK0VI`08XLTaX9!BqE3{9!3wZ;9B6^^-`giGwTIRH4Mx#! zqyvFeyW!H`oG4nj#K(3x?^a$yXb9!zOiBp$uPtNuqwZN-8n#=FTrE+ArD3QBhg zO1UvnDwKo_YYIwA9f@`HPUVcyi?2Db$*;Dc8rM%K1A-1H&~Kx1RPaT6k90*@d0%KP zD7=7?0y0MK9T<@Jsw*20T79v4;qjz_5yyr|=e|MAhRBD2-QE21%YpDm&+k^F7q(7Q z*E_~$!*Ba&zrQ&XmS_F38)og?W`&;JkEJn9a+u7h=`{T$)W7dEU>A~;f&H)<0;ktq zS11X;`;3*Mlj-Uy%dFYf{uGe4+uGg+jAE`ebz|e`oEPyw_8}P}x*K6lU}yWfX-fRyM z8l~F3WV`uERIo7k-u%hv;kLNit z%%Irsce(8p*y+B_*vbWq@Q`gCoF2XW*XSS*x>Gc*>1@~C%Yy}6Hc5~$B)$6f?VGiY z4HBK@(}BX|koGPSN6S^wK_+u{c6Pv90bE1^?-uJuv=WI0T@2f?d{xx|?o;mZroZlJ zcdYK^4Ao@uY-mD>z6N` zE0qkb<3U4x8==oz0quKotU%joU+m1}u8-5J=xSWBIqWPcDHgb^0o%aK>u7ERV89+V zc-9n4FrlmC?OPk8V`r+VWpXp3;x*oQ@o(f2A4)({A6iq&YrF@oMR05pEIt~1;fbV^ z5U{MAC$>Gl#(~1|b0O~2V#irzsI$H1jIXXP<#dxzeG85fZ!VtMrVr)$3jbBNjQNs` zh4<5(U41#Z>H~j`R5U`l;H;zgGF^@PXe4%5GZ@SdJhFlejeQjcgE--z2LVH5N&Nzr z_=HLQzW`xokGqXY2c*m4PyX>no?%EWZpTLlTde^`+cnVPnScR@c#UHWysjYMzGF*R zZ+WiLq*N4^uV(BKH!H-3e|&-*^)$F~&aZDBy>`X?yk@XyYuYJ^HO(U0kT!&Tpf;A< zj^earskOO4jO52Pd*R(vf^(-lSBJna(`Trrc=HPSE`QrrGUb(FuVs32bJ9KqZzX;Z z1LBeG9atfDShS|K^8^8&>(gLD?2&9rTn?Gw?I%i!^ovrA;>`vN`ysD@wle(CduE-6 zQT)7aIm)!NQ(jkhD&ciSmZ8%lYtq4!G)_DS!q)rb^z%iQei+kv*LpmT(Z1F2q&S_I zLd&<2SD$R7~#23uw98#Rf=Rtm4qZ4oezzAVFGh z;CQZ=D_52;W}(Y4RJ94orN)6MA7vV8V! zSi^=!{YB=zeSux`>cZqmeXRi+-YK2*_px!04P^TV@^lb?!MHf)|Fa4ZAz->4KGyo| zAKkJbn=1+(rFp05wd&X#NBup`SxJ=Nb(+=-C-mj0v2&(}**KmBqT{tcWF~c>7WQ}W zfsd0Cgq@iY*+LO&J-tp3-ZtvszQrtq6$V*@JR@jRN zcJzjv7VFbvgU;ML&zDfg6D;FmX7A5IKleV|4a^VxsPwrt#JPGWaqTnlC&YS^nVCQ% zP*DjRsCxB^-(5TZJ3VdNb!FsuskDa&6A&;0zbenhIR_$E5L9M}eMSPkKRY`Mth97$ z9O?ar--e8A%7AbmSX$2CN1XqqyuiTygbW{hA&N|8Sfm-mh#WwMFw_4&DG;t2_BgWh zbyyV+c&j=wq8#&|kHG(j&!A$0xBQ>WTHr?hufO_#|6`bBrr{4^lAzjwV{rxOBUp-m zC8~;qn6BJ*{ubole4hhG*_cuu3VspN;62j-JWYi!uR8qz7aa%>apm|Ql-YH@wWM-% ze(f0Yl(*aQtvXGDW;ENpO%t>*FqA=IDpz6;4tC1 zAk#AA?gZEK2H@T~%BNx_VDDDzJc+GQ08bQ%H3oiXX{&afa_N-638uigVl|e4J|V7p z;|=)Hfg-BpN`wjloN(`1wX&^k!Mt6Y?0xSG^`>UKy5Mi%JBuIHX&^nLO4I9izIZZW zY~?qZQVN*N&}~48%j{C;M^i3}hA5)PqHsDoc46yV66|67W|w)#>5|b47LeKb9Ku8Q z%!KbgSXxE*TmghIb)f)N+FtM_Zigu^1(%O^k&vKKOC*ZDhIC8JbWsBB|J>M740H(e zjs4meB|#YlRD4L(OxPbk{?NV{DnyY+YyK!@Kot)u3Bw;Je~hq{689;L&ggX>?RtfW zjv^jWdSk4uic18ZuvZG12?8oY&j2h7)QqJ54lX*H^nGO)@;-NzIi>ZvMKkRpi7xxI z=`=}X4y{d#UtZ%7ops98-%K0(qCLGmc@{WwyUW>3T;_x5LNNtD)CG{+Nu{I0Rzx+% zC#P@44p*(Bj<$xY@4$5$BA&BT2aL+WsOIai4vc4n9jJb&3J^f31_OdYs|gpXSe`5x z0#CiqORbC_V#=yMdMNIi&$i&aa;>=JU4)k_IqXEq4dVx%FWKj!_N5~ z1mcsCpVInnMwB9a=un4g_YHKG%j@$u>6Hi7On$Z%ZF@vcW63mzCwC<5=HU^)V=4`D zf?FdVwkT`osUMv?T`X^|A3I#2jxroa3{)PQ7WO$GTmMRkxw-k+l&(kp>rSXNrkskk zVEg1*YkDa_nATgDZawkbYRof@uWCXrE&?}X@ZFa|{B&$s@qvR@tE_3Euh$W4NeN`k z;Nf$g=a%9r5-N zR+x7wY}O~=$T}*Q>&MzwG+#6~?dk0>Dqomy_Sm5UAd6xAOO`yHW6!!lNgb?s^XY^V zS#{Lw5^n8AWxP=}??)Pz!g6W8cT$wyc%1G(^s*xyPq#~LFosH)my+GWPFQ^-KbC+nfGwGmLoFH+_d|fjat=Es8eAVjGXLxOS9*U zp4a7u1t0wbQ{fg5+cop&66T6O2Ixi(oIPPq$K=1}qx`a04YTGn*S8uj5d*t?9cD?; zu^hpY5Xxt56${x0@kqCrYN&k_W{{PDdDI&ND6zB#ic1qSRxCVVFgg6Z{2pnk{(!ri zPb@g#0XNep3aU0s#-uz{hiCh8p8G-`qps;pub;_=G#6VXcYCdE3jtlANI@ja-!~bh zhl_4}o^K5kO2nOi@qA413YnX{{Y+xxJxobFoohfdBvbCyCqjO^sAsKNJPr$t@GN@6 zEP#G&tc-~9xYOi7>(d7&F^SV%*?X7VM!}nuMqO!2-S1rLi=oi@OTEWe-H#3EF=k9X zZ^V5$G-Q<$&>6}($*wY^3G)_mJQ?tzgJvU9>4kL4R*3(&MVMF%hvSMW-p3R;hsz}c z7glzmcbEvuGQLmknKN6vIks(ey+tvkgzr$d_AcruU{$hEmH_}T(bcVoVP##k;NK$^ zf_W641rf;`s*1&X3FZ=|rl~~UOB(FDxXbHaM2)KW!Kjm<@2e}8Xz^m@ko!RbrZ#8Y@vfa|RP?v*Y*d2tP9gz?u%@FvcCtw#bzO-h3K&vRiS3~LvlV%&NpF4w-_0_ zjyPy(|DbvvzmCcN=B(ZHNs(t2`T0m5Qyrj)qJ=ZX08SDGDsx%l$FQ}Cp@RMgPp4mqvMGyQrAnrYmtfTamJYn;yE2SXN_ zRS{Ipx+LH@-)Lx5`!4g#GLutS9$w%Qcf4+>`qwV`y;pZ{<4+D2#$y3%0uo62nZ!p-g6qj#YI#>K|!dKD~IzPhEth=;^#7( zv{y7sJim;9bhQSPsMDu{lA5!FG3UzW;Ui)~NB`ZLNeCoP_JUvMNsna2x1-V8;%C@) z%|1Z@)B3(TEHjb9_qmTR`a?=B*-rsjjpawAg73GBya(E>taVRA_1o>%>5$mM7nvU; zBT0&Ov&%%-|6;TKwgei{Yw4maF{lA&__7OUB_TOO3lhoUf3{;8luGqVck!@`!&`-u zU;h}lnH!f^e!2HH=qrPeL7)H@i}HWNvxWhLrdNZy88nW<5C~ZB3yB6EnlI8T;L@y0 zMuqkgOMer)!~dOTU#qK3@>q-&zDC4PJhH^?c+{(GVZnL(_H8X)-41;D8@8P5$KB2^ z^In+Aem`vONE8xH7WLeEML<9x8WxUJRasry4n(cKSvq#GTXUv7lJNbECw${muzV0u z+I{i@%A9F;o4UAwKwIm(iMWrz;qfVTbSN0hKEM*f&fn&o^AEs%2|vK#S^Ax}4>_2a zA_D^l7733!ULQ&yzaiio6ci-o zu|Xp(f46L4qqqYz?Y zG8st3|ASkTru%5!JM?ZfMAUg=m2K#|VpU!Mq`>02TU1+13*?q4XmOY27|Ar@8JfN3 z%e|M*5u;phPO^gVbcXNbf01s=hV5u%@v(^VFC?(M35C54=Lq%1 z(Pm|Dk&99m$jZuY?C-yw0koHwm!~&>CMQC&(y^m2kMaU(U>rrkrDNXsfx^g_%svi* zw6L;30%GDS6qk4)xWpFi6`$ri_FZnP8Ea|L%;+j&xVX4%EZcnf1$Y}3G(1IpkE}b~ zKd!u4EP2*Gr2H@Ga`8Y~7gfG_2bhlw@&29!4CS#N%+&f4hNgS~Ox7ADLY;Be=!F#b z;zQ`f3~Y|rLI+PkP%vSydHV&^lW2Zn;ivZYKMh@K?8XYX?%pMX!{MpY-uK{_GsxR} z1?im36jN1iskL=MM$H3z-K`$)?k+M73SSe^ka0nZO}Ta|l0#7PB*giOngj*bQ=@M%_( zWCk$#@f@tKL9<7SPfs?-B0qj);ei?zUr)t;&DnwLPg)&|n^K?AoskJ4d=wWw7-Pc_xoKmI#DzIZ$Y>srqSV%OGe zGMr=yRX)35l%N<4#%0pfJEyo!xL3sJ_a_n0ai}Zzv%JF z$u@9X&+&O=dMn)FfO2qffZ;!N_f-zwGHAzs=a9#nzkf?T)EVsQu?%QWNK9-O;>Y+h zK@NKOxT&5X-=DMH>bLbTe_~5d8MzW6C(RlerOzs2))?tfT1RyK?6u zCG30fQP#ZcB(u9jZpBfp6=_?@SY|trCK1)MwA2yRFA_o*1#Xy=latidpm}-Lqq8C7 z-VJubv|Nu9;e%6WO5_APA;ibW$AX6YYWnS1362uRRk?c24XS(Qx~Ex#_2YdYj`tr;E#0oCm0^`{*gof-}|37v(MvD2W`}b z5wm~)hDJwIKrBKeJyoCO_Bh~9C(R{|&w16;#7QHl*j|gdVdKTNC{#XueUaqFc7O@& zLDNIXjo+_y-!K8Z=R9rX2Yir>+Wp_YeM?>bF=A_-`N+^Ty7N={B!KQS?+39-OQ!ey z2Mi_v!uuvlh&V6$P|W-;G?UOBi}9^WWf$-M_3PJde*VZz?Y>KS8X_X1a{KYSdT?#p ze={=!zkPWUiNwHF`8zq8+tkDsLCx{Z!9nmv){~xJ4nzO}LFz!{_V%_irT86(N?tr} zLm}659zcPq*xpM?MtI~U8irbcp6zP0 zLoC46Eq>SYS`qz_C8jv*Y#%wam3;Ke_t@ra;N{hrWDAg<*TMsWnEhDmJLmK{zn=Co z)qucBJJQ-&epaz>pYpse-CHte8FUl|MKO_-^(Tp+%jZB4%BJBSy@)v-bgc`n^!U3@hw6nKoSrwsWV{>BY{vdgNMD@|0 zbDg+_>TQB_JzfD-jCqRY^XH;f--kyw8o9r+fCwumCkIb*-iP~E;|d0&()6U;bvSJ~ zhv%RQ?#CcXDeK`Vz3ccDy51cTnB3j{tyOyQX9+N`Drz@+hk%eU=f{s8p#ne&%ppbY zONBuno0%`neCmGS?en!?ax=#il>BS(+I?{O&{x?U`?!ow`sm8A{+YBdiWxx*yn019 z6TVFXLx^?RitqM+GZk-t6O(<;_^Fmz0)uI=<)cMng%8Kh1*vZrwmT0HTOY3tXnUM! zK*FbLmb>DhkarEc51A;4)Pc;$^phs;ly~pKLPi!^|9!-x{qv{H)1J-bfE?ahCW4s$ zF5n%zJn7KGb)S5ouh5eq8qE`F-NT&EffF#eFP2;T&k<9Il*hQ zg{b$=c0@6LSyEIbX4{l?m=F?s(>H&yoTr1-M+=d)crzmO_&Gsz(7ffKzcSNk^1LN z2U*c4u=iGtZM7q|?TbKL#B?kje%b6X8PtN^%`E2V1_-YTY)O z9pM_Frk9#JL>}CBLB@Wa8IRl{5c7aT!UhIb*68x#X{KO;kX8$$qK7`IC5F=Yts-Db zXvWyQ`2H6?x)b%7A?+nG5z&J&7+OeNLL#TRnSEej;CoRKAhw-n%h1d5;28?F9H(r$ zjP@;5Hv-nB@6TuFe*1>s+S-ab>Ju5r%E42VMJ1-B24{aH6!h|!8(L^f9dt~-6Po3niXMyIY%)?NxLD7Z)!d@mBWz z+Io+lzk5d}(C&v~%n{c*H5HXj;WB=KsYXdj$y9|^#Pn#??4PgJk9-%y7#;6&Ji%eF zF2B%!N*4Yud?Y{L4SO@1r&2tqf@Wo6YEh(?v0eija>5bcz6A^TSKm=fpw{;IaRr>u zdGB1t*Wz@G^u8EYvWDGJNtJzn@qOEUt=|%-ps09Xyz!w%=6s{?amE7}xJyM)r|Xi9 zXa5{%(f1C%I^~IXAG*>)bRyJjyy2otnFhkG$&Vfj2=wd(P|UNIoUu*F4QY$=vV%Eq zssgZz;C-TM?7x}0JyCM2M+UUoCMScr(^F;<fqL{FWo~!Z@ETlAYTfSmiQoR_mw8f%;QeCC#&R*$PX5Qjn%=} zC+GE^+vT3ydSXb%5;WTIVFx`|SU4+L&!M&mJa?ozH`1%;$zl6V8?qP{p1)>r?YyPs zWmnXJ<;mIE>$!SQp|l@*CdsIvPnk~|``z8#4lcIKwg)w-et^M187vl)MaVL%XsyjayG<}M zKRuiV;SuO*hA|bK04z>Z7EJ(dD~>(@4wsz~#)E(*VnwQRa6Z7F9%$FI*-FgusyO@l zSKjl!eB0gV;f-HM10l%ZzK|^qyRV$@TJB_n`4@z4;d5m_e`=d3=mdW*YdhPWsqom; z_Ck)HSAco$$<@i&4&2lpRx^R5Uas}^ zz8A9|h|A~Hr8`oZHkDs<^H?LZs>!}Yj^ICDAh&4A7^c&z`{fT znf2NhwoyK_C;TsZUZM!W`nfvXRF;#NnoZ%k3yF>StymDETdHW&+VqnsyuTt<|FS|H zQh3AJ5w2F&NOm0x=DJ0|Wb&0~M_cZl>2C-yXZi8=#qkPVfAd4u1YQjVcXu%}U)+00 z%TkB;x9Vy@=`!Pg#`XU1xO*T>_D>d)H<)s4Y+7~7gJDP@3s>hzWt(S@?|Gaqti%<1 z^n3^FtYBml1|Q#wnY^kp4;mJ>{O`PH&eK8!Vb2loZf0hC`1UQ+GYEteqM{`KidwGi zht3oZy)NZ{CX~i6H+n8++>9GJ zV_){k`9RJxC&$JzIj>fzv9dC6&KdE#bI~3>*}bxxl*IFrt$5;*2zeFoY%3Mll$H?m z&-;g-++*CX*{k;XU>$jVdHmt&=?~$Z&;D}Y@G>(q;~^Pj^(xSH)O%DE<&6GRuA z3N3JU852dwoR;~Kc2?!Gu_Y8N*!mD$H1b+>gW12V83-Oy;-FxTLBZFA0)PQW5A`&B zWUN=q{$1jaHf+L$L!A6RM33*K#ai;gAsd^UmUbt>;L0z5$&Sy+pxD~kaCUR6+-p?D zBu1>PSf@}1f>|Y!*%Y2~)X;#jFWnqKYN`_JGuG79j2395d$0xh!pkh5CSnoeVVL{G zWRySy68_W(|93tn-5U9o8}n0`b6TwI0m}J8W)O9mYyVFC;$5Ty2>0G)0bd}^zZ%<(Z5qnh$Or7jx1}T5j$MB!$zTldM zVV1s+e>qdE9T=;D(t)0mgfTQU)3&sP`4{qFqiz;hjOLT49rgjfPKP(|)n4c~5r~nH z-sDx6JLw>2Vqy6ce;<;y;`sQ^;%ee6NXzt^4r&sC4V!UB%w+|9UqfvDEKlssy zdrysMVYb<<2KGpjP@1@9$l6o0i13LQ9yM7(<_i=lhc_k7y<{^5d-n$~vf-ulPGk7@ zuS^74jHH$G$3DXZ`_wMZfwFd$A%Rq@owhI8yj7LZVGV2^fx&WN{W+9VUK(C^^io%s z=MZypb?6H@NkC)(7j=59GG|xcA6~}@@^0zj|@K?QC%Qu+}SGUCX1Do`a*K zKc?Oyt+TgELt4io`LY9OLH|pO2=QBDIsj;+(NS_g5?*fIpx z2&i{i#D`e)CJIQ&in`7oynW-Vg18u$H|bfe6{PAO`kZiB%O>se^9Lym-J>ZAU;|9v zpN^x}(wz?!=AB0-Cc>kmmCN5m$&N71^*C=dMy{F55+q(RM;H$+2BCa9fsJ(M@~x0v zDT!lypLQfwn=%K!4n}-+zk!SP1_DJ0G-JnRZ0+q8f{QVTo=agPKR=qoR}Wvj_kX4H zPT^T6H^_dureo#?U}gvaU7T(s>o%;OYLgqzff&okK7z>I=fF6si@@P$0uh2J;U2kn zF(V1t#T=pFT80w7cz9Vvh&v4WkSg}(qoJ9P8G9oS!Egb_9=+;`9QPwixCfZJd~7H$ zN4f-9e6#*wj-}if!4@asHY)b zkB(n?WH@*I7=!&gR&7{#f$gF9zc1~_j!nw=D8Edw!~dS6YA}tUVwHnaBWx9xAo@Fxy?MgYB-)hAw%fM4 zZ@Vw&55Qg!5atd5ci|*oNXu|n=A3?61sH&i#MyH9M!)?dF;y%b$$rbM?aA4RL+^l9 zBOF&{^{$gGuC)4x#m4>1HMEleli%@vxg{Ydyo4U&-?vX}`w+T*eY(ES{OJ|)21Dq- ze?~2m&)wl|38m{Wza9U6ZY;WVF~wNX08MF+#sx9ZV?c*e4T@jc*csl-JgL|&u@E1RQpr)A)5^*~O|O-AD(xtR`FAI9w+BpxCLgOs4`XgJ~dr{|>;V)5a= zSNLyj3m{W>Vf)@W`d76Y8`j5L^@{$7=5UDzoN)a= za+VM?l%3rc<->;^5&?dY~j|HB84h5F^SQggTBO3PV$=|$rLnT7~ zKh;3jf7JlrE3_co*n!M(b#XCBesEx;%5EOzm?pWkwKXN7^4TIjkXsosE|hR>u&3CC zk7NY;uYSkiaz2thS;7CWM3S-aWQ_igsm#mGaB#Y{H~WO<#{I?t``^pP^&SEWfPw-9 z@;Rb#)3ArGwq>EcIRLa^*8>>k<=zrb>+Szs!%`RT(;aAdxOyfBr2mT;v2-tv4Dx&T z*Nmw5o{2ih;6b!ZjPP??p=04V=fG1R? zSj^H3UO0o)%f{B0+vAY``xb=hGcL%0V~x$uTUL-%h4^C|Q)+5z3d$H04i&sSNB}IkA zpk8?ojh*Y+->ZxZ3$Ps!7UIOme^`D2#K?>m6z<)Jv|LILsv*bWor%d zKK*e#SNy?Agq9ouL9xZ@E&sf2=sV~=2@Ahr$61fQ*C%IG7Pw}o4ZBMU$buMfMRjMk zhGKsHS-`O_;Xk7nkeh!F%8t$D__^@)@yW=^^Fihm($fCn=D^zoWuTSk!MxthAvJ4?*>gd zL|fMH-%l5uB96ML3A*vy;vewOUOZN|!@|OX1gnEt*mY_@^PadZdSaFnYO*#}=gvo7 z;D)<8kF$HU^<^?s+Uq%l#%s6c)COereSj~-1r!H%A(x^RuhHN;7>|u!-$5=?R%mT3#&xVX# zLmIF?n5iu3nNJw57+*xTFE(#FS)%}X)x*AzLZ0^OR1=_n_9`3V7B^zerx`zWzc$QgYHhE#{Ww z)uwTlV{5#HF^yx*|C zz8uoE5K)@-O!zyUYjr7=ot>TDSYmSW5_ZK}1Ld;{@@N^Rh`XXLuh4TJO0(GizS3WI zbN~b!l0SbAPE4fJNTO+45uu|AdRZ=!+DE)kdF$cxA3uKloHy0evk@EEsx7($`Moy# z_PK_}(?zUT)n$5C}X9pPN zDy(~Gli!xaXJ?D(B1Q2`Wq8%H^GOP~9v25j7%=48$eK_MY(RHO+a3%Zmni-HWdkAsx%+diA;d3T z{7H^p-;~hBU+InD5hR%#Ga~&Ik}Pl1gt^`I>#O=Nf)muyD$$Yd2#a4Il8ew9Bv?GY zmJdT96695RAp3zV0;ws!X8g322&lepRxoWQ$?}j=&!L*Mc#D z?!$^$Dgn-8N}>P(mC=AyqKmXJkT|N1rnqpP6o3AY8Ipv~MrnV3NYB7R)slyD#HYCC z1Ly84?oSXnBTgPh5VOV(hzZJf|2%h*; zMG?4hs<<635m5x_tU>PUBClPvf(fAaOj$zDmALPDK|?~WY-MM{NX?#ApPG84xeIa0 z$jlW`EBX1=zr$2iR6ImmSy_25a}0GKm$Wa}3;V6*t3fCZ3M}SO@Cr3a+LV~;=qlMDpBP|14 z7kUKG?_fYEhy#^GbkW)Qtf)7LwbRaB+4Po_{`LcSk?*ni6&q{fu(urzxHn%f5omgN zo|hl%M`yJRgByeUNyHc|!26->l<`*;_E{ioy6SDic>UMTLU}a=F&-XIH2rFboa*!D z2C*ehR&BX!`pBoLrbahS+Pie`5A#08uQe^doq3TlF*&`Y zU%wuXt4UWWHoAVR)A!7(StEXytnv5Hj6c4gf0D2`u`F&XOFzaC3}iD~?`7x%=YR%p ztLe%&dSf7?t-;U5lKak(4cg}5ZEVkoW6!~u= zI)nB7(em9qr32UHvjPj{TAy9waslG8N#TDah5Z)3NwCT^B8`W!A@QP8U-u z7lWvgIa!;4=9kp#1T~xe6YCWUxd&%Y&#Lb#zW|Yt(?M5;L!0Z*j+^h_zdsQ7v-~z0d1NWd#Hmui z!>maSEqHO**-lCn8bS0mzl7Zxev+M1b1Xn@%mB&{!WF{&WAU_g9eZ7oC2`HV@QvJ2lX+uC5w1cnSB$IRP!5sEQivI}sX$E8As=5;{mCPv|L{ci&HA(G zL*;vjft$Qc_xXe%wMbeLD23F;oNuVP81pHgwCjbV?#>7SliHxVo;f5%&(SUS8>qj^rMmC zf25FpT0A*P`25AUSHy|L!YETxht@`vaItaiyRfpdve%EbwTe4vD;UB~e)2r}Ezy39 zFHPCe=jcspnkOj(x)9}OwW^u)-sA5<-=f5Q$Xrv)<^&!Eh1cyCBymKX`0}wxny70q z(9>64RLC&~#SBkQ#>Eb@t7j~Psij2!wqHB_E`6S4^z%M-jzzSH7DeRfsP?$Dx~*Wb zScTNl@iEVlvV)_el9~5ymS{?!u3EP#4omT)0KvoG_lYd$EFr32VCmdwQA3K84@Hai zQdUcGc}1m`a?kVM=<7J@?lcJp15Q!n3Mqb~h}v2^l~8JH-Uwli z_+@3pM3Oma^=GSQ@=iMVdoTo|&_4HxU*#5V{#*FU81SCe9Dm7mp#`tuG0+x9&S-D% zDebxxYLAS)$@jumMRN1WuJR)?bt z5FkgeEG8jRn*#I+PoT2_jH*6X#4;0*tzOsv1L}$SNX(j~6dWT3KTbz3cq1+|SBh!B zbrQFaKF|P5vAePJW_=CDe^G%3!3>xuC{s~zVU;+JFLiih_!;M9nrwQXd25zUBgdV0 zTv1O_p~O_r9VSbkW+o~A_ECEJ6!b&N&w8rQ9UX;KRaN7&fGn!Vu`{$_RiUM={mt$P zmGV5#Qjioe{NTrTQOYeboBr}gOs5ptH?&{A3<8@oq>DpA{GR&sEDv=PtVg;PZy(VK zae+rWk^<~8F)=R$p#jg2i^`h++5ZE{Ah9=3)j&XIu{S%yMdo8$v$Ld%F7i^yWOEnW z^YP%JI0lf_X?q~QxD;E?`FCOhzggbiyetc+a(*-f49Q@g{BlO#lffLcU0b9Z{|MB= zmqVy!T~tY5E<^uBJXmLY=|qUH20~IpL*~mOf}>Li_Tg6jXG8=y<}CDe?Jsho!0CHT z=15W|mf(U0ief@|Uhe^P`AoP{KzSyeO%){;UZQFE56_pPIga6pE zTU++ys)U4sV;{4X_4OIO_GSe-Iy=AB*RuqwOuxLKlmZ@$02gJ#FVxoEr=mb{*lzb< z4MZK<1LC&n1$}Mp*QbVLO3EPzV1wFp?M5{1=+u<0E2&&*^ugN>Te}Y%8yj-U%0R@p zxCasW>Wm@WPt(Sxzftx&@X1Bo^9%;3=B|0^1L; zt4&Ra`l=8=zZOQL_1|?NlPT@}*n~K5Ln{;PT%WnkcQrvKzMVuZ3y_kM>Sc4QF+((j z@bW^t6$95j1&!tT2S6)I=*#|1j40+25D?%O5%K;<9X|hbUoSUwxYc*CCF!X4N8l5W znI~-#=B!CCT%=(n36PBMXcnTDfI3T`wXzN>nwz*uTGyUByx(EjM{?5UCriZYABiDP z!0n{I$=Mg7j&5lKs9_W>6)p#$of5s8x+}h;&kZnsqUAQ#wBLxJ>-GcRaz-CeIO9F) z$-J2>ndsFzOM5f)j2s%7ek<@IAycTttii%(we7Q;yxnus5wgZr#h9CS1-O3MsM)s| zLs)(F$O$81re16PUu;y9F_L9MLWY&?c26VM&A@7BnfocAhE0bxO}^|-f&HbDg~Z3l zw-DtV9l5bS@riF5`_w4q-jb$AJo@RVm3k*xh|8m?prG?!Q5cW4jm>MYxhC?%2RzYl z(cP`v-s$OL0;+fAk|4J1!B$f8T%%r$n#0zMzBY_w<2Tk4bW}PAcEk(@O&^)Mw zLs~L?C38>s`-?eaTO3|PFomd`rrcXsibP=E_z)6dd@ULeQA^;_a;ne<~Hp# zP#ztFbR(9xipspE@Z}KW1~63h^z`%&TkKt~b0mPUJl~t6rNjo*q4N2$lKF;})*lAk z9sUMVP3p91AbfecM=IA>R+zx|H+XyAR{Tn?S&=0HHJz%?t@GEv>jKiSXUKuT>*i#Kpx$1)~LQ)0W?OCt-9i1Aj|rb@(jvtp?FW zf;J5lxDC-VG$g%%39xy{+`oULn!+lM_O<4Bw?{s!P((4YELqpmWXQ`3B6ZS=up1mS zo|C=@ykU1*qaSVvhQ{ySufVMpQL5m0ex$|8krT28GDc#eETRak|69!|SGWMa7VvHE$zV&9f(~>BAO@rV=RTjB~%`6 z7G^JnF`5AuvYclIa(_GV@B&lJ{8WyPj#x4eQchbWEmR{}cSj7R3=Jc%|KW#4uPd(( ze5Q_MO-Ak4aRpw@9S|_6X9?*#1Qxg}vODjOXdR!P9RTzw}1L+0(OTjH( zth&9^8rG=u$WVO6mdRE*q@s0)CBNk7Pqzyi)ym+VsS4;V$#<_xv>c}^pC$kyx7^*` zceSm3%!HG(O}K!Zz-ZS4hUg?gebw}bP7j1k>*;1{ol|TD!fkp%=p)g1@P~X9Y=7FV z44?t6R=3}Ld9BJeqL!jir*%T=*|Ka=^?-9d`lS?^Jr$R<&5Bl@_mw%57rwBfr6rfN zhJgxc`3m&U@`o^ZDhvnkT#wA%+eNSYM)eXyK$O*a7a?)&%@e<(NHSze=S&$bj$~Qn zyeA2nD6%$o#GMqucHy9u!hf|!M31Vbqk4N)BeGX-Ff-fLD#+V$b8}~&1#uQBdwKmb z-M?L^{#KZVU>>JH*=?T_Mja{bL;B&v2b++1mf?kj)YJ{&r-7* zvxwk(LRRcc9c4~!)2rN(Hde6RCarbd;!K1SX-47OgaGH=_vm@@LohJ)-Y(3`^D$m{ z$Y?Gv5}?+WU6HmdJ~Ea+{;>~HY5~X~C`yr9CaI?c2Zs`-h`-)9%${-o8=Pp9I=m}U zR!ic>UsbC(qJV}xYy3A^VqEB_#l5OX&iAS%PiaazeQ0nnxq6map_$3vYif9qUiiJ7 z$$;9y;h|-SmcM_)F0tqXk_!}S>P0brety2=LtsexdCciw zMDFxp!q|DbI06iZ_Ihyd!(Q}hBFHJjCDoaioxqUgL#oOc=f!v!dE6v^)S#E-z4B(L_8bAi&X{&6>ZU^GysPtbRbH zq_YdOj*XGGdZ!U zpbP`ayz`Q3NSfbpE@p3uXZSoNA;Ic-?@)?*h-{z}Bi)$o)s?_%2b)$~i86YwLvWoB z9WnS&gCKXfIJGk?fP_%#x+yrU?{^{*;C*cT$6cgZ@M;AK539E-P$V?Ig^d=2`P@dO z-8x)8r+qw=z5r}XQa%$gr=U8^T|My@{mP*qmVUOa{PfvE9V1T74;|JuTOXn(Cnxw@ z2am=DR-Fv)fzC%O(4&~L#@kISY?Kh6weA}MmpfHd?_KPX%kSW7oU0);^vprM;cU+v z&+Q;`t4MQ2T>gs;=z@gh1KR!fER#cOO4lb}Srh00M(`tN1g$Dq)dmLQhvMJ12zSnY zKXK46SoZv6W_;gO62bEddnHj201>?$;69u$e2G4vq@lAJ$kD%Uh0qskR-t4Us!JxVZSltqg%=!!Lf6Cdti?jEqDl ze3h&PBZXF$i7s(F>F-kP93>ZU-e+D709-)LHD`CdUv1E?`52J88}M>HSfx3dOg68< z*ETTV@964+LU>0X@A^e4 zDe&EvW!{t1)0~2OBT1*fnWy{jNYD-D*l$n!0%P`SMSNce>r)1ZRjK+7{37)%;M=JJ#x`8>mDC^=GbhUtb346`VNGo z;moMxk`k60%Z`9OG8`lOdYX5w!_a52T>fc+v)ZzKU^@gE;(9N+eaE?876RAf%-5hQ z1lF0va+kZRdp`ldTd^BS;C*e2$=+-tbC%zol^71+l^cziQ8k}E^m^;MA$j+zCYT!% z8-HuR#7+n?4F;}gs&&|dv&)Ce%o1asEg2j=8UUT2($a_c{hNuInR!R# zD*`h%HdX=lG4ld-pKX4y8r@ZDXRbYG=I?>Y$Ykb^e?C`r!u_mWWG^YIVm7O(uBJN& z_#CRP;&CXHyKpHPg_6EzTz;2H?ElIm|ErFytgovXQ7Ui2V<6ShcM;if)a)S~ z^?ucl0_=q3x{<8^J!tQ+F*Z-Dy|Z(vLc-x7VlunyBfa237YuttP_MWJJYE2W8uKzk z#XeXXMZgi@&012FaNYNd>+9`}PfqT{;$QS#Kd!Jl9=B?s1dpP_YREhz@$(j2^cWhX z=*QL3b=ou6O9ZY)W)jEPS4MkU%tGdt*t%f46*7R;t~|>lPjp}?^pNm z@c0UXND%0z9XXQsihG>WskZkZ1%+NU1Ms>KYuV&nk-Ou*pr(?Sk2yX*&fmJl`?aXc z`rY2vmbUtNg2RP`6YvCFh2G(+t1(AuZf@v#_ll+-F?(q|Y?WBFHu%8q^fOHU9?%p3 z^D*#42wva>>#jgee`O`PnzO#plkX03$#LBnhAfp1zqbt(*tY$!c&*x9(m?WKYkf5(SF;*;voVLYYf0!seEkaP=;+ufhdn;k zcSaW$6yOJb=?JL}2BoeCPeaX{M^pvCcgz%?JtInw{;iEw?TrvdyQ4inUaC6d*zLt$ z$FK(S7CMuWkQj6Z6Osco3=9RRA?>a_dZkNmHlcxEDp;@&zy_$Qs`5;M1-|6dJO<5c zmHY{O#jC)Ff7iN#adUHXs>UIu1QDr#xzHP~-nft)zn<}YnOD>K4-sUxQ^j^A=s z#er|vx;NP6)8>-^WI6M&mr*`7Fi7nXx3skMX?#cr&bEF9kgvv#fa=D7kC~E`#09FA z`skvdtfRtKHqjK=cuH2ENU{rRPk$h}=lQ0V5xYB)zS|{87)R4bCk;k$CelnQbOQm) zs>uj3G2hA;tj(9YV%ZcWT3T8y$(BOk^=^S8%GdnYAiwixz9=t1>Jl!&IZYu=P&Fqx zJ`Rk3yOPE$B8wEGFRIa+U_Q?Q3HVO!b;T)$M7!@G+wR%Ig~{d3yuWRo_|AO*fAo#C))u$*)$?-w|6}YupyBNLcj3{Ann*-1ksuKzI>9K3 z9wmh6L_~=$qPulT^r#UGL3ARBZj?lg7G3lbohXAD%$)6c-uHjLv%a&|_hrSJF*D}g z_b$J3?dx~#YnOdj%=PudYnujADHCH9_}jrAoQ|4`z5SgAB`gnErf+_qMhTDP(12z6 zecPWHir5Xf7Wgv7^kn7ctvs~>EDj8l)se__q6$kpbJZ~{=zkg#oL)iL( z<4dI%FSx`s=OUte6<}M6%DKqCRl-C|F5JB$ufJJmd@pamPqyR16*%^NsW^SK_n~4+ zbL5%yHz>d&2k%JmS^T^BR#Qhax8Netnk#Xipw|1jMhE1s#L3I%el_dO)19HO+n)L$ zWIVF2c18WBl6jX?Uq6*)fP?aCpklf>V7$VwlH9p>>(^Z2hn}y=Hww?5lFVl8(SQ0T z%2~6muWY{Jw)}189k~1jKF9+f%SLOsNXzl#D$4x+UUX{h<7I&<Kfm7;Sh4WH|C|lA zfZ9E`L!Fu>xBkWm!H-yay8}rV0tO?wItOBq!Mn*=kGQt7o3*bJ9Mxx|z zIQ%bbT5Y@>hsH0_o!`I11kr(iUFEidIMq^{P)evIu*;g8dsE*AEY83Vb)B-{;wj`O zqMKlA{SqbRLtEQ|^&c~DyM#NQqQ3MUl#1jrn3aE8Wq~HyAjv*2#|5=Jk;N{zMn4E! zXUm)%IXLHRyY+w113u-xgf3m0AulKa9V7kv?zxT4OMd8UOB`*{`^AK`w4x7Z-o25P z#)hMz_BBW8oa_;X!M3=u1ItkoP%sP17ξcKf|3ylrM#R<0(j8o%|lktQC|htW^Q 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 diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index e0992bcdf3..30da385706 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -297,8 +297,8 @@ "afK" = (/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth{frequency = 1380; id_tag = "escape_pod_3_berth"; pixel_x = 25; pixel_y = 25; tag_door = "escape_pod_3_berth_hatch"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/security_starboard) "afL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/camera/network/security{c_tag = "Security - Equipment North"; dir = 4},/turf/simulated/floor,/area/security/main) "afM" = (/obj/structure/table/standard,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) -"afN" = (/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "redfull"; dir = 9},/area/security/main) -"afO" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "redfull"; dir = 9},/area/security/main) +"afN" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "redfull"; dir = 9},/area/security/main) +"afO" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "redfull"; dir = 9},/area/security/main) "afP" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape_pod3/station) "afQ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/security_port) "afR" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/security_port) @@ -1179,7 +1179,7 @@ "awI" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/hallway/secondary/entry/fore) "awJ" = (/obj/structure/closet,/obj/item/weapon/storage/backpack,/turf/simulated/floor/plating,/area/maintenance/arrivals) "awK" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/substation/security) -"awL" = (/obj/item/weapon/stool{pixel_y = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/crew_quarters/sleep) +"awL" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/wood,/area/crew_quarters/bar) "awM" = (/obj/machinery/door/airlock{name = "Brig Restroom"},/turf/simulated/floor,/area/security/prison) "awN" = (/obj/effect/decal/cleanable/blood/oil/streak{amount = 0},/turf/simulated/floor/plating,/area/maintenance/arrivals) "awO" = (/obj/structure/table/reinforced,/obj/machinery/door/blast/shutters{dir = 2; id = "bar"; layer = 3.1; name = "Bar Shutters"},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) @@ -1209,8 +1209,8 @@ "axm" = (/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/fitness) "axn" = (/obj/structure/window/basic{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/fitness) "axo" = (/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/fitness) -"axp" = (/obj/item/weapon/stool{pixel_y = 8},/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,/area/crew_quarters/sleep) -"axq" = (/obj/item/weapon/stool{pixel_y = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor,/area/crew_quarters/sleep) +"axp" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -32},/obj/item/weapon/stool/padded,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"axq" = (/obj/effect/landmark/start{name = "Gardener"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics/garden) "axr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/crew_quarters/fitness) "axs" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/fitness) "axt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor,/area/crew_quarters/fitness) @@ -1254,8 +1254,8 @@ "ayf" = (/turf/simulated/floor{dir = 4; icon_state = "escapecorner"},/area/crew_quarters/fitness) "ayg" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/crew_quarters/fitness) "ayh" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/crew_quarters/fitness) -"ayi" = (/obj/item/weapon/stool{pixel_y = 8},/turf/simulated/floor,/area/crew_quarters/sleep) -"ayj" = (/obj/item/weapon/stool{pixel_y = 8},/turf/simulated/floor{icon_state = "neutralcorner"; dir = 2},/area/crew_quarters/sleep) +"ayi" = (/obj/effect/landmark/start{name = "Gardener"},/obj/item/weapon/stool/padded,/turf/simulated/floor{dir = 9; icon_state = "green"},/area/hydroponics/garden) +"ayj" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/chapel/main) "ayk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/fitness) "ayl" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/fitness) "aym" = (/turf/simulated/floor/airless{icon_state = "catwalk12"},/area/space) @@ -2182,7 +2182,7 @@ "aPX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor,/area/hallway/primary/central_two) "aPY" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=EVA2"; location = "Dorm"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor,/area/hallway/primary/central_two) "aPZ" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/hallway/primary/central_two) -"aQa" = (/obj/item/weapon/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aQa" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/chapel/main) "aQb" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aQc" = (/obj/structure/extinguisher_cabinet{pixel_x = -13; pixel_y = 28},/obj/machinery/atm{pixel_x = 6; pixel_y = 28},/turf/simulated/floor,/area/hallway/primary/port) "aQd" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Central - Northwest"},/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/hallway/primary/central_one) @@ -2198,7 +2198,7 @@ "aQn" = (/turf/simulated/floor,/area/hydroponics) "aQo" = (/obj/structure/disposalpipe/segment,/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "green"; dir = 4},/area/hydroponics) "aQp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hydroponics) -"aQq" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -32},/obj/item/weapon/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aQq" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/stool/padded,/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/chapel/main) "aQr" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/hydroponics) "aQs" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hydroponics) "aQt" = (/obj/machinery/light_switch{pixel_x = 27},/turf/simulated/floor{icon_state = "green"; dir = 4},/area/hydroponics) @@ -2262,7 +2262,7 @@ "aRz" = (/obj/machinery/biogenerator,/turf/simulated/floor,/area/hydroponics) "aRA" = (/obj/machinery/seed_extractor,/turf/simulated/floor,/area/hydroponics) "aRB" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor,/area/hydroponics) -"aRC" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Gardener"},/turf/simulated/floor{dir = 9; icon_state = "green"},/area/hydroponics/garden) +"aRC" = (/obj/effect/landmark/start{name = "Gardener"},/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics/garden) "aRD" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{icon_state = "green"; dir = 4},/area/hydroponics) "aRE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hydroponics) "aRF" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) @@ -2497,13 +2497,13 @@ "aWa" = (/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{icon_state = "grimy"},/area/hydroponics/garden) "aWb" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 5},/area/bridge) "aWc" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_two) -"aWd" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Gardener"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics/garden) +"aWd" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) "aWe" = (/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 6},/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2; pixel_y = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aWf" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/secondary/exit) "aWg" = (/obj/item/weapon/stool{pixel_y = 8},/turf/simulated/floor,/area/crew_quarters/locker) "aWh" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aWi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aWj" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Gardener"},/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics/garden) +"aWj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/stool/padded,/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) "aWk" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/maintenance/locker) "aWl" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/wood,/area/library) "aWm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) @@ -2553,7 +2553,7 @@ "aXe" = (/turf/simulated/floor/plating,/area/maintenance/locker) "aXf" = (/obj/effect/decal/cleanable/generic,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/locker) "aXg" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/closet/wardrobe/white,/turf/simulated/floor,/area/crew_quarters/locker) -"aXh" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) +"aXh" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) "aXi" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aXj" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXk" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) @@ -2589,7 +2589,7 @@ "aXO" = (/obj/structure/table/standard,/obj/item/weapon/material/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aXP" = (/obj/structure/disposalpipe/segment,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/woodentable,/obj/item/weapon/deck{pixel_y = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aXR" = (/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) +"aXR" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) "aXS" = (/obj/structure/table/woodentable,/obj/item/device/camera,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXT" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aXU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) @@ -2603,12 +2603,12 @@ "aYc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hydroponics/garden) "aYd" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) "aYe" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) -"aYf" = (/obj/item/weapon/stool,/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) +"aYf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/stool/padded,/turf/simulated/floor,/area/crew_quarters/sleep) "aYg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hydroponics/garden) "aYh" = (/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hydroponics/garden) "aYi" = (/obj/structure/flora/ausbushes/sunnybush,/obj/item/device/radio/intercom{pixel_x = 25},/turf/simulated/floor/grass,/area/hydroponics/garden) "aYj" = (/obj/structure/bookcase{name = "bookcase (Adult)"},/turf/simulated/floor/wood,/area/library) -"aYk" = (/obj/item/weapon/stool,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) +"aYk" = (/obj/item/weapon/stool/padded,/turf/simulated/floor,/area/crew_quarters/sleep) "aYl" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/simulated/floor/wood,/area/library) "aYm" = (/obj/structure/bed/chair{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/secondary/exit) "aYn" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/bridge) @@ -2630,7 +2630,7 @@ "aYD" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/hallway/secondary/entry/aft) "aYE" = (/turf/simulated/floor{dir = 8; icon_state = "whitecorner"},/area/hallway/secondary/entry/port) "aYF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/hallway/secondary/entry/aft) -"aYG" = (/obj/item/weapon/stool,/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/chapel/main) +"aYG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/item/weapon/stool/padded,/turf/simulated/floor,/area/crew_quarters/sleep) "aYH" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/simulated/floor,/area/security/prison) "aYI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) "aYJ" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/machinery/microwave,/turf/simulated/floor,/area/security/prison) @@ -2647,14 +2647,14 @@ "aYU" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_chapel_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aYV" = (/obj/structure/noticeboard{pixel_y = 27},/obj/machinery/camera/network/command{c_tag = "Bridge East"},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/bridge) "aYW" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/crew_quarters/locker) -"aYX" = (/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/chapel/main) +"aYX" = (/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},/obj/item/weapon/stool/padded,/turf/simulated/floor,/area/crew_quarters/sleep) "aYY" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor,/area/storage/tools) "aYZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/storage/tools) "aZa" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/turf/simulated/floor{dir = 5; icon_state = "blue"},/area/hallway/primary/central_one) "aZb" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/bridge) "aZc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/hallway/secondary/exit) "aZd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/bridge) -"aZe" = (/obj/item/weapon/stool,/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/chapel/main) +"aZe" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "neutralcorner"; dir = 2},/area/crew_quarters/sleep) "aZf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/bridge) "aZg" = (/obj/machinery/atm{pixel_x = -25},/obj/machinery/camera/network/civilian_east{c_tag = "Bar West"; dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZh" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/auxport) @@ -3213,7 +3213,7 @@ "bjO" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/wall,/area/maintenance/locker) "bjP" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) "bjQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/civilian_west{c_tag = "Locker Room South"; dir = 8},/turf/simulated/floor,/area/crew_quarters/locker) -"bjR" = (/obj/machinery/light{dir = 1},/obj/item/weapon/stool,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) +"bjR" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/reception) "bjS" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 19},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -26},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 1; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = 27; pixel_y = -3},/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "bjT" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/wood,/area/crew_quarters/captain) "bjU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/captain) @@ -3354,7 +3354,7 @@ "bmz" = (/obj/structure/disposalpipe/sortjunction/untagged{dir = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bmA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/decal/cleanable/blood/oil/streak{amount = 0},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera/network/civilian_west{c_tag = "Locker Room Toilets"; dir = 8},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) -"bmC" = (/obj/item/weapon/stool,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) +"bmC" = (/obj/machinery/camera/network/mining{c_tag = "Medbay Lobby Starboard"},/obj/item/weapon/stool/padded,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "bmD" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) "bmE" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/quartermaster/office) "bmF" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "warningcorner"; dir = 1},/area/quartermaster/office) @@ -3389,7 +3389,7 @@ "bni" = (/turf/simulated/wall,/area/medical/reception) "bnj" = (/obj/machinery/light{dir = 1},/obj/structure/closet/secure_closet/medical1,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bnk" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Chemist"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 4; icon_state = "whiteyellow"},/area/medical/chemistry) -"bnl" = (/obj/item/weapon/stool,/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/reception) +"bnl" = (/obj/machinery/light{dir = 1},/obj/item/weapon/stool/padded,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "bnm" = (/obj/machinery/light{dir = 1},/obj/machinery/disposal,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bnn" = (/turf/simulated/wall,/area/medical/exam_room) "bno" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; glass = 1; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access = list(7)},/turf/simulated/floor/engine,/area/rnd/mixing) @@ -3441,11 +3441,11 @@ "boi" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 30},/obj/machinery/chem_master,/obj/machinery/camera/network/medbay{c_tag = "Medbay - Chemistry"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "boj" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/table/reinforced,/obj/machinery/button/remote/blast_door{id = "chemcounter"; name = "Pharmacy Counter Lockdown Control"; pixel_y = 25},/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bok" = (/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) -"bol" = (/obj/item/weapon/stool,/obj/machinery/camera/network/mining{c_tag = "Medbay Lobby Port"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) +"bol" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/item/weapon/stool/padded,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "bom" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/substation/command) "bon" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal{dir = 4},/turf/simulated/floor/plating,/area/maintenance/substation/command) "boo" = (/obj/item/weapon/stool,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/assembly/robotics) -"bop" = (/obj/item/weapon/stool,/obj/machinery/camera/network/mining{c_tag = "Medbay Lobby Starboard"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) +"bop" = (/obj/machinery/camera/network/mining{c_tag = "Medbay Lobby Port"},/obj/item/weapon/stool/padded,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "boq" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) "bor" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bos" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/substation/command) @@ -7478,9 +7478,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNatTavmatTauNatVavyatVauNauQauRaxuauTauUauUauVauQauQaafaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaaaaaaaaaaaaanXanXanXauWanXanXapbaucanXaaaaaaalWauXalWauYauZavaalWaZYavzaonavdaveaveavfavgaveavhaviavjarAavkauravlarEatBasZavAavoavJatCawravqatFatGauzauAavravsavtatMatNavuavvauGauHauHauHauJavwavQawfavVatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaamaamaaIaaaaaaaafaaaaaaabpaaaaafaafaafaafaaIaaIaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNavBaxyavDauNavEaxAavGauNavHavIaxCavKavLavMavNavOauQaaaaaaaaqaaaapJapJapJapJapJaafbeSaafapJapJapJapJapJaaaaaIaaaaaaaaaaaaaaaaaaaaaaaaawkaxGavSayqaxOawoavWavXanXaaaaaaalWalWalWavYavZawaalWaYJaYNbbAaweawpaYHaukawhawxautawyawlarAawmaurayzarEatBasZawzawUawYaxaaxbawZatFatFatFawsawtawuatFatFatNayNawwauGauHauHauHauJawAavxawfaykatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaafaafaaaaafaaaaaaaYxaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNawGawHawIauNawGawHawIauNawJavHavHavHavHavHavHavHasAaaaaaaaaIaaaaafaaaaafaafaaaaaaaZhaaaaaaaafaaaaaaaafaaaaaIaafaaaaaaaafaafaaaaaaaafawPaxGawQazgaxOawSaucawTanXaafaaLcqTatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxarAawVaurawWarEatBasZawBaxjawCatCaxVavnazpaxcaxfaxeaxhaxgaxhaxiaxkaxlaxmaxnaxoaxoaxoaxnaxmavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaaaazoaYUazoaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaatSauNazFaxxatSauNazUaxxatSauNaAbauNauNauNauNauNavHatqaaaaaaaaIaaIaaIaaaaaaaafaaaaxBaZnaxBaafaafaafaafaaIaaIaaIaafanXanXanXanXaxDaxEaxEaxFanXanXanXanXaAvaucaucanXaxHaxIanXanXaxJaxKaxLaxMaxMaxMaxMaxMaxMaxMaxMaxNaxMaxMaxMaxMaxMaAHaxPaxQaxRaAHavpasZaxSawjcfSatCaxVaxXaxXaxXaxZaxYayaawLaxXavqaydayeayfaygayhayhayhayhawXavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaAuaBaaAuaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaynayoaypayoaBcayoayrayoaysaytayvayvayvayvaywauNawNatqaaaaafaafaaaaaaaaaaaaaafaaaayyaBkayAaafaaaaafaaaaaaaaaaaaaaaanXayBayCayDayCayCayCayCayEayCayCayFayGayDayHayIaxMaxMaxMaxMaxMaxMayJayKayLayLayLayLayMayLayLaZsayLayMayLayLayLarAaBEayPayQarEaAiasZcfSaycaxUatCayUayTayWaxpayYayXayYaxqayTazaazbazcazdazeazdazdazfaxraBOaxtaxTaxvatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaBuaBvaZraBxaByaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqazrazsaztazuazvazwazxazyazwazzazAazwazwaCeauNavHauRaafaafaaaaaaaaaaaaaaaaafazDazEbdHazGazHaaaaafaaaaaaaaaaaaaaaanXazIanXazJazKazLazLazLazMazLazLazLazNazJazOazPazPazPazPazPazPazPazQazRayLazSazTazTazVazWazXazYazZaAabeTazTaAcarAaAdayPayQarEaAiasZaybaAeauMatCaxWaxXaxXaxXaxXayiayjaAlaAmaAnaxkaAoaylaApaApaApaAqayVatPayZatPatPatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCwbfyaCyaCvaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaatSauNazFaxxatSauNazUaxxatSauNaAbauNauNauNauNauNavHatqaaaaaaaaIaaIaaIaaaaaaaafaaaaxBaZnaxBaafaafaafaafaaIaaIaaIaafanXanXanXanXaxDaxEaxEaxFanXanXanXanXaAvaucaucanXaxHaxIanXanXaxJaxKaxLaxMaxMaxMaxMaxMaxMaxMaxMaxNaxMaxMaxMaxMaxMaAHaxPaxQaxRaAHavpasZaxSawjcfSatCaxVaxXaxXaYkaxZaxYayaaYfaxXavqaydayeayfaygayhayhayhayhawXavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaAuaBaaAuaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaynayoaypayoaBcayoayrayoaysaytayvayvayvayvaywauNawNatqaaaaafaafaaaaaaaaaaaaaafaaaayyaBkayAaafaaaaafaaaaaaaaaaaaaaaanXayBayCayDayCayCayCayCayEayCayCayFayGayDayHayIaxMaxMaxMaxMaxMaxMayJayKayLayLayLayLayMayLayLaZsayLayMayLayLayLarAaBEayPayQarEaAiasZcfSaycaxUatCayUayTayWaYXayYayXayYaYGayTazaazbazcazdazeazdazdazfaxraBOaxtaxTaxvatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaBuaBvaZraBxaByaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqazrazsaztazuazvazwazxazyazwazzazAazwazwaCeauNavHauRaafaafaaaaaaaaaaaaaaaaafazDazEbdHazGazHaaaaafaaaaaaaaaaaaaaaanXazIanXazJazKazLazLazLazMazLazLazLazNazJazOazPazPazPazPazPazPazPazQazRayLazSazTazTazVazWazXazYazZaAabeTazTaAcarAaAdayPayQarEaAiasZaybaAeauMatCaxWaxXaxXaxXaxXaYkaZeaAlaAmaAnaxkaAoaylaApaApaApaAqayVatPayZatPatPatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCwbfyaCyaCvaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafauNaAwaAxaAwaAyazsazsaAzaAwaAxaAwaAAaABaACaADauNavHauQauQaAEauUauUauUauUauVauQaAFaAGbfAaAIaAFanXanXaxHaAJaxIanXanXanXazIaAKazJaaaaafaaaaafaaaaafaaaaafaaaazJazOazPaALaAMaANaAOaAPazPazQaucayLaAQaAQaARaASaATaAUaAVaATaDyaAXazTaAcarAaAdayPaDdarEaAiasZawzaAgaAhaBbayRaBdaBeazhaBgaBhaBiaBjaBjaCLaBjatPaBlaBmaBnaBoaBpaBraxvazibguazjatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaacaaaaaaaafaaaaCvazlaDAaDBaCvaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaBzatSaBAawHaBBaBCaBDaDcaBFaBBawHaBGaBHaBIaBJaBKaBLavHavHavHavHavHavHavHavHaDnaBPaAFazmaBRaBSaAFaBTaBUayCayCayCayCayCaBVaBWaBXazJaafaBYaBYaBYaBYaBYaBYaBYaafazJazOazPaBZaCaaCbaCcaBZazPazQaCdayLayLayLayLaDxaCfaCgaChaCfaECaCjazTaCkarAaAdayPaClarEaJCasZaznaAYazCatCaxWavqatEaBjaBjaBjaBjaBjaCqaCraCsaBjatPatPatPatPaDQatPatPaAfaAkaAjatRatRatRatRatRatRatRatRatRatRaumaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaEXaEYaDYaCvaaaaaaaaaaafaafaaaaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqaAxaCzaCAaCAaCAaCAaCBaAxazqaaaaBIaCCaxzaBLaCEaCEaCEaCEaCEaCEaCEavHaCFaCGaAFaEeaCIaAsaAFaCKaEvaCKaCKaCKaCKaCKaCKaCKaCKaCMaaaaBYaCNaCOaCPaCQaCRaBYaaaazJazOazPaBZaCSaCTaCUaBZazPazQanXayLaCVaCWaARaCXaCYaCZaDaaDbbfeayLayLayLarAaAdayPayQarEaAiasZaAtaEMauMatCaDgavqatEaDhaDiaDjaDkaBjaCqaDlaCsaBjaDmaESbgIaDpaDqaGwaDsatPatPatPaAZatjatjatjatjaEVatjatjatjatjaBfaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCvbgHaGyaCvaDCaDDaDEaDCaDCaDCaDCaDCaDCaDCaDFaDGaDGaDGaDHaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7493,12 +7493,12 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaLyaDJaDKaDJaDJaDLaDMaDJaDJaDKaLzaNgaBIaNhaLEaNiaMzaMzaNkaMzaNlaIAaNmaNnaLJaNoaNpaNqaNraNsaNtaNraNuaNraNraNraNvaNraNraNwaNxaNyaNzaNzaNBaOMaNCaNzaNzaNzaNzaNDaNEaNFaQcaNraNHaNIaNJaNKaNLaNMaNLaNNaNOaQdaNQaNQaNRaNSaNTaNSaNUaNVaNWaEGaNYaNZaOaaObaOcaMkaMkaMkaOdaOeaMTaMQaOhaQxaOjaOkaOlaOmaOnaJlaQAaQyaQEaOraOtaOtaOuaMZaOwaNdaKZaOyaOzaOAaOAaOBaLfaQJaODaOEaOEaOEaOEaOFaOGaQTaOIaOJaOKaOKaOLaRbaLfaJRaIgaONaOOaNjaOfaONaONaIgaORaOSaGFaOTaOUaOVaOWaGFaIoaIoaJVaIoaGGaGGaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOXaOYaOZaPaaPaaPaaPaaPbaOYaOXaaaaBIaPcaPdaPeaOvaOgaPhaPhaOxaIAaPjaNnaPkaPlaPmaPnaPoaPpaPqaPqaPraPsaPsaPsaPtaPuaPuaPvaPwaNIaPqaPqaPxaPyaPzaPAaPBaPBaPCaPBaPDaPyaPyaPyaPEaPFaPGaPHaMkaPIaPJaPJaPJaPJaPJaPJaPJaPJaPKaPJaPLaPMaPNaPOaPPaPQaPRaPSaPTaPJaPUaPJaPVaPWaPXaPWaPWaPWaPWaPWaPWaPYaPZaRsaQbaQbaQbaRraQbaQbaRxaQeaQfaQgaKZaQhaMCaQiaQjaQkaLfaCJaQmaQnaQnaQnaQnaQnaQoaQpaOPaQraQnaQnaQsaQtaLfaJRaIgaQuaONaONaQvaONaQwaIgaGFaGFaGFaGFaGFaGFaSoaGFaIoaIoaJVaIoaStaOQaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaafaBIawqaBIaQBaQCaGOaQDaSuaQFaQGaGOaQCaQHaQIaBIaSyaLEaPeaPfaQLaPhaPhaOxaIAaQMaNnaLJaQNaNpaQOaQPaNraNraQQaQRaQSaSEaNraQUaQVaQWaQVaQXaQYaQVaQVaQZaQVaQVaRaaSHaQVaRcaQVaRdaNraNraNraReaPFaPGaPHaMkaRfaMkaRgaRgaRgaRgaRgaRgaRgaRgaRhaRiaRgaRjaRgaRgaRkaRgaRgaRgaRgaRlaRmaRnaRoaRoaRoaRoaRoaRoaRoaRpaRqaRpaJlaImawOawOawOawOawOaItaRuaRvaRwaKZaKZaKZaKZaKZaSIaLfawcaQmaQnaRzaRAaRBaPgaRDaREaRFaQraRGaRHaRIaRJaLfaJRaIgaRKaRKaRLaRMaRNaRNaROaIgaRPaRQaRRaGGaRSaRTaRUaRVaRVaRWaRXaGGaRYaGGaRZaRZaRZaSaaSbaScaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaSUaGhaSdaOYaLDaDPaHxaHxaSfaLDaOYaLDaHyaHAaHzaLEaSkaPiaPiaNkaPiaNlaIAaSmaNnaSnaIAaLKaLKaSZaLKaLKaLKaLKaLKaLKaSpaSqaLKaLKaLKaLKaLKaLKaSraSsaSraLKaTPaLKaNraQPawbauoaSwaSxaNraReaUlaMbaMbaMkaSzaKOaSAaMnaMnaSBaSBaSBaSBaSCaJeasfasNarVarXarXavParXarXarVasNawFaJeaSJaSKaSKaSKaSKaSLaSLaSMaSNaRqaRpaJlaQqaQaaQaaQaaQaaQaaQaaSQaSRaSSaSTaUOaSVaSWaSXaSYaKZaKZaVeaTaaTbaTcaTdaTeaTeaTeaTfaTgaTfaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaTjaQzaTlaGGaIoaTmaTnaToaTpaTqaIoaTraQKaGGaTtaTuaRZaTvaTwaTxaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIazkaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaWkaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeazBaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUJaUKaULaUMaUNaWFaUPaUQayOaySaUTaTfaUUaUVaRCaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDawdcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeawgaVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaxwaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaVLaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaWdaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaNXaHIaQlaWgaTUaTUaTUaYwaUeaRyaUfaSvaUeaUiaVGaXpaKfaXraXsaUmaXtaxwaURaXvaUjaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXjaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXkaXiaXOaVPaYaaYbaYcaYdaYeaWjaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaXRaXhaToaYfaYkaZXaWLbaOaYmaWOaZcaVoaYvaUSbaBbanaYzaVzaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaEfaEfaYIaKpaKQaYLbaPaKxaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaHIaIKaISaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaNcaNeaNPaLwaYaaYpaZwaYdaYeaWjaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaYXaYGaToaZeaYGaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzaYKbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaSUaGhaSdaOYaLDaDPaHxaHxaSfaLDaOYaLDaHyaHAaHzaLEaSkaPiaPiaNkaPiaNlaIAaSmaNnaSnaIAaLKaLKaSZaLKaLKaLKaLKaLKaLKaSpaSqaLKaLKaLKaLKaLKaLKaSraSsaSraLKaTPaLKaNraQPawbauoaSwaSxaNraReaUlaMbaMbaMkaSzaKOaSAaMnaMnaSBaSBaSBaSBaSCaJeasfasNarVarXarXavParXarXarVasNawFaJeaSJaSKaSKaSKaSKaSLaSLaSMaSNaRqaRpaJlaxpawLawLawLawLawLawLaSQaSRaSSaSTaUOaSVaSWaSXaSYaKZaKZaVeaTaaTbaTcaTdaTeaTeaTeaTfaTgaTfaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaTjaQzaTlaGGaIoaTmaTnaToaTpaTqaIoaTraQKaGGaTtaTuaRZaTvaTwaTxaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIazkaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaWkaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeazBaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUJaUKaULaUMaUNaWFaUPaUQayOaySaUTaTfaUUaUVayiaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDawdcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeawgaVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaxwaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaVLaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaxqaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaNXaHIaQlaWgaTUaTUaTUaYwaUeaRyaUfaSvaUeaUiaVGaXpaKfaXraXsaUmaXtaxwaURaXvaUjaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXjaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXkaXiaXOaVPaYaaYbaYcaYdaYeaRCaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaWjaXhaToaXRaWdaZXaWLbaOaYmaWOaZcaVoaYvaUSbaBbanaYzaVzaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaEfaEfaYIaKpaKQaYLbaPaKxaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaHIaIKaISaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaNcaNeaNPaLwaYaaYpaZwaYdaYeaRCaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaQqayjaToaQaayjaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzaYKbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaWjaXhaToaXRaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaXubcFbcZaXmbbUaSFbaabaabaabaabaabbVbaaaXoaYObbXbbYbaibbZbbZbbZbbZbdKbbZbcbaTUbccbcdbcebcebcfbcgaTSaXebchbcibcjaKibdQblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbcrbcsbctbeabcvbcwbcxbbgaUpbczbcAbeeaUpaUpaaaaaaaafaafbekaaaaaaaUpaUpbezbcGbczaUpbbgbcxbcHbcIbcJbcKbcLaRpaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSbcObcObcObcObeBbcQbcRbcSaUQaUQaUQbeMbcUaTeaZMbcWbcXaYgaWBaYhaWDbcYaZzaZZbdabdbbdcbddbdebddbddbddbddbddbdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdraVoaYubdsaZNaVobeNbbOaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaEfbabbaaaZvaDobbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZaEgbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaEfaEdbeUaEcaDobbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPaAWbffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7506,8 +7506,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaafbhPaYDbhQbitbiqbjubjqbjwbjvbjubjBbjGbjCbjObhYbhZbgwbbZbbZbbZbiabfabbZaTSaTSaTSaTSbeRbibbicbjQaTSbiebifbdPbigbihbiibgDbijbdPbfibikbgFbgGbgGbgGaEhaMbbimaSzbctbjVbiobipbfjbirbisbfBbiubjMbdYbebbiwbixbiybjYbiybgYbgebebbedbiAbiBbiCbgQbiEbgZbiGbiHaJibiIbiJbiKbiLbiMbiNbiObiObiPbiQbiRbiSbiSbiSbiTbiSbiSbiSbiSbiSbiUbiVbiVbiVbiWbiObiObiNbiObiObiXbiVbiVbiYbiSbiZbjabjbbiSbjcbiObiObiObiObiObiObiObiObiObiObiObiObiObjdbiTbjebiSbjfbjgbjhbjibjibjjbjkaZNaWRbjlaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZbkZbkZbkZaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbfgbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktcsfbkvbewbkpbkwcLYbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObQDblrblEbQLbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbloblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbupbmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibCkbojbmYbmZbPMbolbjRbndbnebjRbopbmCbnhbnibnjbmPboKbnmbnnbPLbnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbPKbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbPJbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpScfibnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObmWboqbPEbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbupbmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibCkbojbmYbmZbPMbopbnlbndbnebnlbmCbolbnhbnibnjbmPboKbnmbnnbPLbnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbPKbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbPJbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpScfibnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbjRboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObmWboqbPEbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdvbpHbpHbpHbpIbpHbpJaZVbpKbqKbgrbqQbjpbrkbrcbpQbpRbrvbrubrwbrwbrwbrxbkWbpUbkWbkWbkWbkWbpVbpWbpWbpXbpYbdPcfycfocfzbrybqdbqebqfbrCbqhbqibqjbqkbqkbrDbrIbgGbgGbqmbfmaMbblqbqnbqoaJubqqbqrbqrbxqborbrPbxsbotaafbebbebbebbebbshbebbebbebbebaafbedbqzboCbqAbsjbqCbqDbqEaJibqFaRqaRpaJibskbqHbqIbqJaJDbqLboPbqNboUboUboUboUboUboUbqObqPbslboYbqRbqSboNbnnbqUbqVbqWbsnbpgbphbpfbqXbYfaVJbpjbqYbqZbqZbrabrbbsobrdbrdbrdbrebrdbrfboObrhbribrjbsqbnIbrlbpCbrmbrnbrobsrbnIbrqbpFbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBcaLbsHbsHbthbrzbrAbgrbtkbtlcaMbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabYZcanbotbosbotaafbsibZibtKbtTbsmbtXbtKcaJbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNcbQcdpcbdcbkceobsCbqObsDbnicevbsFcepcdGbnncdtbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNbVzbsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtccflbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbWIbXnbwnbukbulbumbnibnnbunbpubVVbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbPebpvbuCbuDbuEbuFbVybrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbVebnIbpEbpFbUAbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From a540e97e1bc0db31a63d79470bfdb066b3fe84e6 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 13:37:51 +0930 Subject: [PATCH 140/199] Stool and table tweaks, adjusted tables on the map. --- .../structures/stool_bed_chair_nest/stools.dm | 14 +- code/modules/materials/materials.dm | 9 +- code/modules/tables/presets.dm | 14 ++ icons/obj/objects.dmi | Bin 122603 -> 122580 bytes maps/exodus-1.dmm | 198 +++++++++--------- 5 files changed, 125 insertions(+), 110 deletions(-) diff --git a/code/game/objects/structures/stool_bed_chair_nest/stools.dm b/code/game/objects/structures/stool_bed_chair_nest/stools.dm index 5ec94e39d0..a8f879e084 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/stools.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/stools.dm @@ -14,7 +14,6 @@ var/global/list/stool_cache = list() //haha stool var/material/padding_material /obj/item/weapon/stool/padded - name = "padded stool" icon_state = "stool_padded_preview" //set for the map /obj/item/weapon/stool/New(var/newloc, var/new_material, var/new_padding_material) @@ -56,10 +55,10 @@ var/global/list/stool_cache = list() //haha stool // Strings. if(padding_material) name = "[padding_material.display_name] [initial(name)]" //this is not perfect but it will do for now. - desc = "A stool. Apply butt. It's made of [material.display_name] and covered with [padding_material.display_name]." + desc = "A padded stool. Apply butt. It's made of [material.display_name] and covered with [padding_material.display_name]." else name = "[material.display_name] [initial(name)]" - desc = "A stool. Apply butt. It's made of [material.display_name]." + desc = "A stool. Apply butt with care. It's made of [material.display_name]." /obj/item/weapon/stool/proc/add_padding(var/padding_type) padding_material = get_material_by_name(padding_type) @@ -73,11 +72,9 @@ var/global/list/stool_cache = list() //haha stool /obj/item/weapon/stool/attack(mob/M as mob, mob/user as mob) if (prob(5) && istype(M,/mob/living)) - user.visible_message("\red [user] breaks [src] over [M]'s back!") + user.visible_message("[user] breaks [src] over [M]'s back!") user.remove_from_mob(src) - material.place_sheet(get_turf(src)) - if(padding_material) - padding_material.place_sheet(get_turf(src)) + dismantle() qdel(src) var/mob/living/T = M T.Weaken(10) @@ -140,13 +137,12 @@ var/global/list/stool_cache = list() //haha stool user.drop_from_inventory(src) src.loc = get_turf(src) user << "You add padding to \the [src]." - add_padding() + add_padding(padding_type) return else if (istype(W, /obj/item/weapon/wirecutters)) if(!padding_material) user << "\The [src] has no padding to remove." return - new /obj/item/stack/tile/carpet(get_turf(src),1) user << "You remove the padding from \the [src]." playsound(src, 'sound/items/Wirecutter.ogg', 100, 1) remove_padding() diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index c0c0a04b18..fb296a6c12 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -159,7 +159,7 @@ var/list/name_to_material stack_origin_tech = "phorontech=2;materials=2" door_icon_base = "stone" -/material/sandstone +/material/stone name = "sandstone" stack_type = /obj/item/stack/material/sandstone icon_base = "stone" @@ -170,6 +170,13 @@ var/list/name_to_material hardness = 55 door_icon_base = "stone" +/material/stone/marble + name = "marble" + icon_colour = "#AAAAAA" + weight = 26 + hardness = 100 + integrity = 201 //hack to stop kitchen benches being flippable, todo: refactor into weight system + /material/steel name = DEFAULT_WALL_MATERIAL stack_type = /obj/item/stack/material/steel diff --git a/code/modules/tables/presets.dm b/code/modules/tables/presets.dm index 5f009e7e88..e52dac3bd6 100644 --- a/code/modules/tables/presets.dm +++ b/code/modules/tables/presets.dm @@ -7,6 +7,20 @@ material = get_material_by_name(DEFAULT_WALL_MATERIAL) ..() + plastic + icon_state = "plain_preview" + color = "#EEEEEE" + New() + material = get_material_by_name("plastic") + ..() + + marble + icon_state = "stone_preview" + color = "#CCCCCC" + New() + material = get_material_by_name("marble") + ..() + reinforced icon_state = "reinf_preview" color = "#666666" diff --git a/icons/obj/objects.dmi b/icons/obj/objects.dmi index 7d96d35a6e75b657b76b12c12b1f4232cb775ec5..9143ac4817b896b8b04fc28bd9b422d73d8fc423 100644 GIT binary patch delta 7958 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 AT>t<8 literal 13043 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 delta 12140 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 XrLTcB$C`%$z<%=5%2E{)Mgji^ir+z6 diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 5c2853fbab..d500809847 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -548,7 +548,7 @@ "akB" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/brig) "akC" = (/obj/machinery/light,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/brig) "akD" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/security/brig) -"akE" = (/obj/structure/table,/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = -28},/obj/item/clothing/accessory/holobadge,/obj/item/clothing/accessory/holobadge,/obj/item/clothing/accessory/holobadge/cord,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"akE" = (/obj/structure/table,/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = -28},/obj/item/clothing/accessory/badge/holo,/obj/item/clothing/accessory/badge/holo,/obj/item/clothing/accessory/badge/holo/cord,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "akF" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Security Processing"; req_access = list(1)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/brig) "akG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/security/brig) "akH" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/security/brig) diff --git a/maps/exodus-4.dmm b/maps/exodus-4.dmm index 30e1b823d6..3819e505cb 100644 --- a/maps/exodus-4.dmm +++ b/maps/exodus-4.dmm @@ -172,7 +172,7 @@ "dp" = (/obj/machinery/power/emitter{anchored = 1; dir = 4; state = 2},/turf/simulated/floor/plating/airless,/area/space) "dq" = (/obj/machinery/field_generator,/turf/simulated/floor/plating/airless,/area/space) "dr" = (/obj/machinery/power/emitter{anchored = 1; dir = 8; id = "EngineEmitter"; state = 2},/turf/simulated/floor/plating/airless,/area/space) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -430,3 +430,4 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} + From ed60b17f8d35bdcebdd1491662235b091db720c7 Mon Sep 17 00:00:00 2001 From: Miniature Date: Thu, 16 Oct 2014 05:41:44 +1030 Subject: [PATCH 017/199] Cherrypicking Mini's custom item code. --- code/modules/customitems/item_spawning.dm | 158 ++++++++++++---------- config/example/custom_items.txt | 15 +- 2 files changed, 99 insertions(+), 74 deletions(-) diff --git a/code/modules/customitems/item_spawning.dm b/code/modules/customitems/item_spawning.dm index beb8e6b2a7..966e789c5d 100644 --- a/code/modules/customitems/item_spawning.dm +++ b/code/modules/customitems/item_spawning.dm @@ -1,19 +1,19 @@ //switch this out to use a database at some point //list of ckey/ real_name and item paths //gives item to specific people when they join if it can -//for multiple items just add mutliple entries, unless i change it to be a listlistlist +//see config/custom_items.txt how to to add things to it (yes crazy idea i know) //yes, it has to be an item, you can't pick up nonitems /var/list/custom_items = list() +//parses the config file into the above listlist /hook/startup/proc/loadCustomItems() var/custom_items_file = file2text("config/custom_items.txt") - custom_items = text2list(custom_items_file, "\n") - return 1 + var/list/file_list = text2list(custom_items_file, "\n") + for(var/line in file_list) + if(findtext(line, "#", 1, 2)) + continue -/proc/EquipCustomItems(mob/living/carbon/human/M) - for(var/line in custom_items) - // split & clean up var/list/Entry = text2list(line, ":") for(var/i = 1 to Entry.len) Entry[i] = trim(Entry[i]) @@ -21,75 +21,87 @@ if(Entry.len < 3) continue; - if(Entry[1] == M.ckey && Entry[2] == M.real_name) + if(!custom_items[Entry[1]]) + custom_items[Entry[1]] = list() + custom_items[Entry[1]] += Entry + + return 1 + +//gets the relevant list for the key from the listlist if it exists, check to make sure they are meant to have it and then calls the giving function +/proc/EquipCustomItems(mob/living/carbon/human/M) + var/list/key_list = custom_items[M.ckey] + if(!key_list || key_list.len < 1) + return + + for(var/list/Entry in key_list) + if(Entry.len < 3) + continue; + + if(Entry[1] != M.ckey || Entry[2] != "" || Entry[2] != M.real_name) + continue + + //required access/job + var/obj/item/weapon/card/id/ID = M.wear_id //should be an id even though pdas can also be there, due to this being run at spawn, before there is a chance to change it + if(Entry.len>=4 && length(Entry[4]) > 0) + var/required_access = 0; + required_access = text2num(Entry[4]) + + if(!required_access) + var/list/JobTitles = text2list(Entry[4]) + var/ok = 0 + var/CurrentTitle = M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role + for(var/title in JobTitles) + if(title == CurrentTitle) + ok = 1 + if(ok == 0) + continue + + else if(required_access != 0) + if(!(required_access in ID.access)) + continue + + //the else looks redundant and that it should probably be not an else and just not have the if, but then if there was a name/desc/icon_state set then all the items would get the same one, and i dont want the config file to be wider than it already has to be + if(findtext(Entry[3], ",")) var/list/Paths = text2list(Entry[3], ",") for(var/P in Paths) - var/ok = 0 // 1 if the item was placed successfully - P = trim(P) - var/path = text2path(P) - if(!path) continue + //ids make the standard id be different, instead of spawning a new one (because clunky as fuck) + if(P == "/obj/item/weapon/card/id") + continue + PlaceCustomItem(M, P) + else + var/obj/item/Item + if(Entry[3] == "/obj/item/weapon/card/id") + Item = ID + else + Item = PlaceCustomItem(M,Entry[3]) + if(!istype(Item)) + continue + if(Entry.len < 5) + continue + if(Entry[5] != "") + Item.name = Entry[5] + if(istype(Item, /obj/item/weapon/card/id)) + Item.name += "[M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role]" + if(Entry.len < 6) + continue + if(Entry[6] != "") + Item.desc = Entry[6] - var/obj/item/Item = new path() - if(istype(Item,/obj/item/weapon/card/id)) - //id card needs to replace the original ID - if(M.ckey == "nerezza" && M.real_name == "Asher Spock" && M.mind.role_alt_title && M.mind.role_alt_title != "Emergency Physician") - //only spawn ID if asher is joining as an emergency physician - ok = 1 - qdel(Item) - goto skip - var/obj/item/weapon/card/id/I = Item - for(var/obj/item/weapon/card/id/C in M) - //default settings - I.name = "[M.real_name]'s ID Card ([M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role])" - I.registered_name = M.real_name - I.access = C.access - I.assignment = C.assignment - I.blood_type = C.blood_type - I.dna_hash = C.dna_hash - I.fingerprint_hash = C.fingerprint_hash - //I.pin = C.pin +//actually sticks the item on the person +/proc/PlaceCustomItem(mob/living/carbon/human/M, var/path) + if(!path) return - //custom stuff - if(M.ckey == "fastler" && M.real_name == "Fastler Greay") //This is a Lifetime ID - I.name = "[M.real_name]'s Lifetime ID Card ([M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role])" - else if(M.ckey == "nerezza" && M.real_name == "Asher Spock") //This is an Odysseus Specialist ID - I.name = "[M.real_name]'s Odysseus Specialist ID Card ([M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role])" - I.access += list(access_robotics) //Station-based mecha pilots need this to access the recharge bay. - else if(M.ckey == "roaper" && M.real_name == "Ian Colm") //This is a Technician ID - I.name = "[M.real_name]'s Technician ID ([M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role])" + var/obj/item/Item = new path() - //replace old ID - qdel(C) - ok = M.equip_to_slot_if_possible(I, slot_wear_id, 0) //if 1, last argument deletes on fail - break - else if(istype(Item,/obj/item/weapon/storage/belt)) - if(M.ckey == "jakksergal" && M.real_name == "Nashi Ra'hal" && M.mind.role_alt_title && M.mind.role_alt_title != "Nurse" && M.mind.role_alt_title != "Chemist") - ok = 1 - qdel(Item) - goto skip - var/obj/item/weapon/storage/belt/medical/fluff/nashi_belt/I = Item - if(istype(M.belt,/obj/item/weapon/storage/belt)) - for(var/obj/item/weapon/storage/belt/B in M) - qdel(B) - M.belt=null - ok = M.equip_to_slot_if_possible(I, slot_belt, 0) - break - if(istype(M.belt,/obj/item/device/pda)) - for(var/obj/item/device/pda/Pda in M) - M.belt=null - M.equip_to_slot_if_possible(Pda, slot_l_store, 0) - ok = M.equip_to_slot_if_possible(I, slot_belt, 0) - else if(istype(M.back,/obj/item/weapon/storage) && M.back:contents.len < M.back:storage_slots) // Try to place it in something on the mob's back - Item.loc = M.back - ok = 1 - - else - for(var/obj/item/weapon/storage/S in M.contents) // Try to place it in any item that can store stuff, on the mob. - if (S.contents.len < S.storage_slots) - Item.loc = S - ok = 1 - break - - skip: - if (ok == 0) // Finally, since everything else failed, place it on the ground - Item.loc = get_turf(M.loc) + if(M.equip_to_appropriate_slot(Item)) + return Item + if(istype(M.back,/obj/item/weapon/storage) && M.back:contents.len < M.back:storage_slots) // Try to place it in something on the mob's back + Item.loc = M.back + return Item + else + for(var/obj/item/weapon/storage/S in M.contents) // Try to place it in any item that can store stuff, on the mob. + if (S.contents.len < S.storage_slots) + Item.loc = S + return Item + Item.loc = get_turf(M.loc) + return Item \ No newline at end of file diff --git a/config/example/custom_items.txt b/config/example/custom_items.txt index f4bb1a7028..86c6bd31c0 100644 --- a/config/example/custom_items.txt +++ b/config/example/custom_items.txt @@ -1 +1,14 @@ -ckey: name: /path/to/obj +# custom items for people and shit in here +# basic: +# ckey: name: /path/to/obj +# additional options +# ckey: name: /path/to/obj: required access OR job title: item name: description: icon state +# required access is one of the numbers from +# if required access is 0 or blank then always gets it +# job title means if the item wants chemist but they are pharmacist then it wont do it (can be comma separated to have multiple, eg Chemist, Pharmacist if it's for both jobs +# yes they have to be in that order, and if you want a custom description you need to have a custom name too +# you can leave any othe than the ckey and path blank if you want and it will use the default for whatever the item is +# paths can be comma separated, but you wont be able to set custom name/desc/icon in this file, it will have to be done via an item definition (in code/modules/customitems/item_defines.dm) or by having multiple entries in this config +# unless its an id, because fuck code duplication +# if icon state is set then the icon had better be in icons/obj/custom_items.dmi otherwise it'll be invisible +# also # at the start means the line is a comment \ No newline at end of file From 37c16ff6e2ebfc846112ea3862c435bd53d4bd0b Mon Sep 17 00:00:00 2001 From: Atlantiscze Date: Tue, 12 May 2015 05:33:55 +0200 Subject: [PATCH 018/199] Merge powernet process into machinery process. --- baystation12.dme | 1 - code/controllers/Processes/machinery.dm | 13 ++++++++++--- code/controllers/Processes/powernet.dm | 20 -------------------- 3 files changed, 10 insertions(+), 24 deletions(-) delete mode 100644 code/controllers/Processes/powernet.dm diff --git a/baystation12.dme b/baystation12.dme index 2584fc6002..0e31e70812 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -108,7 +108,6 @@ #include "code\controllers\Processes\nanoui.dm" #include "code\controllers\Processes\obj.dm" #include "code\controllers\Processes\pipenet.dm" -#include "code\controllers\Processes\powernet.dm" #include "code\controllers\Processes\Shuttle.dm" #include "code\controllers\Processes\sun.dm" #include "code\controllers\Processes\supply.dm" diff --git a/code/controllers/Processes/machinery.dm b/code/controllers/Processes/machinery.dm index 232ef91973..702a4c7121 100644 --- a/code/controllers/Processes/machinery.dm +++ b/code/controllers/Processes/machinery.dm @@ -14,9 +14,16 @@ machines = dd_sortedObjectList(machines) /datum/controller/process/machinery/proc/internal_process() -//#ifdef PROFILE_MACHINES - //machine_profiling.len = 0 - //#endif + for(var/datum/powernet/powerNetwork in powernets) + if(istype(powerNetwork) && !powerNetwork.disposed) + powerNetwork.reset() + scheck() + continue + + powernets.Remove(powerNetwork) + + for(var/obj/item/device/powersink/S in processing_objects) + S.drain() for(var/obj/machinery/M in machines) if(M && !M.gcDestroyed) diff --git a/code/controllers/Processes/powernet.dm b/code/controllers/Processes/powernet.dm deleted file mode 100644 index 4a85ea4150..0000000000 --- a/code/controllers/Processes/powernet.dm +++ /dev/null @@ -1,20 +0,0 @@ -/datum/controller/process/powernet/setup() - name = "powernet" - schedule_interval = 20 // every 2 seconds - -/datum/controller/process/powernet/doWork() - for(var/datum/powernet/powerNetwork in powernets) - if(istype(powerNetwork) && !powerNetwork.disposed) - powerNetwork.reset() - scheck() - continue - - powernets.Remove(powerNetwork) - - // This is necessary to ensure powersinks are always the first devices that drain power from powernet. - // Otherwise APCs or other stuff go first, resulting in bad things happening. - for(var/obj/item/device/powersink/S in processing_objects) - S.drain() - -/datum/controller/process/powernet/getStatName() - return ..()+"([powernets.len])" From 59af7e5c4d6ff8781c2d799c27b6a9d5f387c73e Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 15:13:43 +0930 Subject: [PATCH 019/199] Refactor/rewrite of custom item spawning. --- code/modules/admin/admin.dm | 40 +++++ code/modules/admin/admin_verbs.dm | 2 + code/modules/customitems/item_defines.dm | 5 - code/modules/customitems/item_spawning.dm | 192 +++++++++++++--------- config/example/custom_items.txt | 43 +++-- icons/mob/custom_items.dmi | 0 6 files changed, 189 insertions(+), 93 deletions(-) create mode 100644 icons/mob/custom_items.dmi diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index b522d7e7c6..7d29322163 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -1010,6 +1010,46 @@ var/global/floorIsLava = 0 var/datum/seed/S = plant_controller.seeds[seedtype] S.harvest(usr,0,0,1) +/datum/admins/proc/spawn_custom_item() + set category = "Debug" + set desc = "Spawn a custom item." + set name = "Spawn Custom Item" + + if(!check_rights(R_SPAWN)) return + + var/owner = input("Select a ckey.", "Spawn Custom Item") as null|anything in custom_items + if(!owner|| !custom_items[owner]) + return + + var/list/possible_items = custom_items[owner] + var/datum/custom_item/item_to_spawn = input("Select an item to spawn.", "Spawn Custom Item") as null|anything in possible_items + if(!item_to_spawn) + return + + item_to_spawn.spawn_item(get_turf(usr)) + +/datum/admins/proc/check_custom_items() + + set category = "Debug" + set desc = "Check the custom item list." + set name = "Check Custom Items" + + if(!check_rights(R_SPAWN)) return + + if(!custom_items) + usr << "Custom item list is null." + return + + if(!custom_items.len) + usr << "Custom item list not populated." + return + + for(var/assoc_key in custom_items) + usr << "[assoc_key] has:" + var/list/current_items = custom_items[assoc_key] + for(var/datum/custom_item/item in current_items) + usr << "- name: [item.name] icon: [item.item_icon] path: [item.item_path] desc: [item.item_desc]" + /datum/admins/proc/spawn_plant() set category = "Debug" set desc = "Spawn a spreading plant effect." diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 877b29b0b1..c22fc85466 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -115,6 +115,8 @@ var/list/admin_verbs_fun = list( ) var/list/admin_verbs_spawn = list( /datum/admins/proc/spawn_fruit, + /datum/admins/proc/spawn_custom_item, + /datum/admins/proc/check_custom_items, /datum/admins/proc/spawn_plant, /datum/admins/proc/spawn_atom, /*allows us to spawn instances*/ /client/proc/respawn_character, diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index a8ee25c896..c021f715ed 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -2,11 +2,6 @@ // Remember to change 'icon = 'icons/obj/custom_items.dmi'' for items not using /obj/item/fluff as a base // Clothing item_state doesn't use custom_items.dmi. Just add them to the normal clothing files. -/obj/item/fluff // so that they don't spam up the object tree - icon = 'icons/obj/custom_items.dmi' - w_class = 1.0 - - /////////////////////////////// 50_n00b - R.A.N.G.E.'s blue dress ////////////////////////// /obj/item/clothing/suit/fluff/b_dress diff --git a/code/modules/customitems/item_spawning.dm b/code/modules/customitems/item_spawning.dm index 966e789c5d..55ee25a595 100644 --- a/code/modules/customitems/item_spawning.dm +++ b/code/modules/customitems/item_spawning.dm @@ -6,102 +6,146 @@ /var/list/custom_items = list() +/datum/custom_item + var/assoc_key + var/character_name + var/item_icon + var/item_desc + var/name = "unnamed item" + var/item_path = /obj/item + var/req_access = 0 + var/list/req_titles = list() + +/datum/custom_item/proc/spawn_item(var/newloc) + var/obj/item/citem = new item_path(newloc) + apply_to_item(citem) + return citem + +/datum/custom_item/proc/apply_to_item(var/obj/item/item) + if(!item) + return + if(name) + item.name = name + if(item_desc) + item.desc = item_desc + if(item_icon) + item.icon = 'icons/obj/custom_items.dmi' + item.icon_override = 'icons/mob/custom_items.dmi' + item.icon_state = item_icon + return item + //parses the config file into the above listlist /hook/startup/proc/loadCustomItems() - var/custom_items_file = file2text("config/custom_items.txt") - var/list/file_list = text2list(custom_items_file, "\n") - for(var/line in file_list) - if(findtext(line, "#", 1, 2)) + + var/datum/custom_item/current_data + for(var/line in text2list(file2text("config/custom_items.txt"), "\n")) + + line = trim(line) + if(line == "" || !line || findtext(line, "#", 1, 2) || findtext(line, "}", 1, 2)) continue - var/list/Entry = text2list(line, ":") - for(var/i = 1 to Entry.len) - Entry[i] = trim(Entry[i]) + if(findtext(line, "{", 1, 2) || findtext(line, "}", 1, 2)) // New block! + if(current_data && current_data.assoc_key) + if(!custom_items[current_data.assoc_key]) + custom_items[current_data.assoc_key] = list() + var/list/L = custom_items[current_data.assoc_key] + L |= current_data + current_data = null - if(Entry.len < 3) - continue; + var/split = findtext(line,":") + if(!split) + continue + var/field = trim(copytext(line,1,split)) + var/field_data = trim(copytext(line,(split+1))) + if(!field || !field_data) + continue - if(!custom_items[Entry[1]]) - custom_items[Entry[1]] = list() - custom_items[Entry[1]] += Entry + if(!current_data) + current_data = new() + + switch(field) + if("ckey") + current_data.assoc_key = lowertext(field_data) + if("character_name") + current_data.character_name = lowertext(field_data) + if("item_path") + current_data.item_path = text2path(field_data) + if("item_name") + current_data.name = field_data + if("item_icon") + if(field_data in icon_states('icons/obj/custom_items.dmi')) + current_data.item_icon = field_data + if("item_desc") + current_data.item_desc = field_data + if("req_access") + current_data.req_access = field_data + if("req_titles") + current_data.req_titles = text2list(field_data,", ") return 1 //gets the relevant list for the key from the listlist if it exists, check to make sure they are meant to have it and then calls the giving function /proc/EquipCustomItems(mob/living/carbon/human/M) + return + var/list/key_list = custom_items[M.ckey] if(!key_list || key_list.len < 1) return - for(var/list/Entry in key_list) - if(Entry.len < 3) - continue; + for(var/datum/custom_item/citem in key_list) - if(Entry[1] != M.ckey || Entry[2] != "" || Entry[2] != M.real_name) + // Check for requisite ckey and character name. + if(citem.assoc_key != M.ckey || citem.character_name != M.real_name) continue - //required access/job - var/obj/item/weapon/card/id/ID = M.wear_id //should be an id even though pdas can also be there, due to this being run at spawn, before there is a chance to change it - if(Entry.len>=4 && length(Entry[4]) > 0) - var/required_access = 0; - required_access = text2num(Entry[4]) + // Check for required access. + var/obj/item/weapon/card/id/current_id = M.wear_id + if(citem.req_access && !(istype(current_id) && (citem.req_access in current_id.access))) + continue - if(!required_access) - var/list/JobTitles = text2list(Entry[4]) - var/ok = 0 - var/CurrentTitle = M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role - for(var/title in JobTitles) - if(title == CurrentTitle) - ok = 1 - if(ok == 0) - continue + // Check for required job title. + var/has_title + var/current_title = M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role + for(var/title in citem.req_titles) + if(title == current_title) + has_title = 1 + break + if(!has_title) + continue - else if(required_access != 0) - if(!(required_access in ID.access)) - continue + // ID cards and PDAs are applied directly to the existing object rather than spawned fresh. + var/obj/item/existing_item + if(citem.item_path == /obj/item/weapon/card/id && istype(current_id)) //Set earlier. + existing_item = M.wear_id + else if(citem.item_path == /obj/item/device/pda) + existing_item = locate(/obj/item/device/pda) in M.contents - //the else looks redundant and that it should probably be not an else and just not have the if, but then if there was a name/desc/icon_state set then all the items would get the same one, and i dont want the config file to be wider than it already has to be - if(findtext(Entry[3], ",")) - var/list/Paths = text2list(Entry[3], ",") - for(var/P in Paths) - //ids make the standard id be different, instead of spawning a new one (because clunky as fuck) - if(P == "/obj/item/weapon/card/id") - continue - PlaceCustomItem(M, P) + // Spawn and equip the item. + if(existing_item) + citem.apply_to_item(existing_item) else - var/obj/item/Item - if(Entry[3] == "/obj/item/weapon/card/id") - Item = ID - else - Item = PlaceCustomItem(M,Entry[3]) - if(!istype(Item)) - continue - if(Entry.len < 5) - continue - if(Entry[5] != "") - Item.name = Entry[5] - if(istype(Item, /obj/item/weapon/card/id)) - Item.name += "[M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role]" - if(Entry.len < 6) - continue - if(Entry[6] != "") - Item.desc = Entry[6] + place_custom_item(M,citem) + return -//actually sticks the item on the person -/proc/PlaceCustomItem(mob/living/carbon/human/M, var/path) - if(!path) return +// Places the item on the target mob. +/proc/place_custom_item(mob/living/carbon/human/M, var/datum/custom_item/citem) - var/obj/item/Item = new path() + if(!citem) return + var/obj/item/newitem = citem.spawn_item() - if(M.equip_to_appropriate_slot(Item)) - return Item - if(istype(M.back,/obj/item/weapon/storage) && M.back:contents.len < M.back:storage_slots) // Try to place it in something on the mob's back - Item.loc = M.back - return Item - else - for(var/obj/item/weapon/storage/S in M.contents) // Try to place it in any item that can store stuff, on the mob. - if (S.contents.len < S.storage_slots) - Item.loc = S - return Item - Item.loc = get_turf(M.loc) - return Item \ No newline at end of file + if(M.equip_to_appropriate_slot(newitem)) + return newitem + + if(istype(M.back,/obj/item/weapon/storage)) + var/obj/item/weapon/storage/backpack = M.back + if(backpack.contents.len < backpack.storage_slots) + newitem.loc = M.back + return newitem + + // Try to place it in any item that can store stuff, on the mob. + for(var/obj/item/weapon/storage/S in M.contents) + if (S.contents.len < S.storage_slots) + newitem.loc = S + return newitem + newitem.loc = get_turf(M.loc) + return newitem \ No newline at end of file diff --git a/config/example/custom_items.txt b/config/example/custom_items.txt index 86c6bd31c0..e4bf80e29c 100644 --- a/config/example/custom_items.txt +++ b/config/example/custom_items.txt @@ -1,14 +1,29 @@ -# custom items for people and shit in here -# basic: -# ckey: name: /path/to/obj -# additional options -# ckey: name: /path/to/obj: required access OR job title: item name: description: icon state -# required access is one of the numbers from -# if required access is 0 or blank then always gets it -# job title means if the item wants chemist but they are pharmacist then it wont do it (can be comma separated to have multiple, eg Chemist, Pharmacist if it's for both jobs -# yes they have to be in that order, and if you want a custom description you need to have a custom name too -# you can leave any othe than the ckey and path blank if you want and it will use the default for whatever the item is -# paths can be comma separated, but you wont be able to set custom name/desc/icon in this file, it will have to be done via an item definition (in code/modules/customitems/item_defines.dm) or by having multiple entries in this config -# unless its an id, because fuck code duplication -# if icon state is set then the icon had better be in icons/obj/custom_items.dmi otherwise it'll be invisible -# also # at the start means the line is a comment \ No newline at end of file +## +# Custom items go here. They are modifications of existing paths; look at the example for details. +# Item will spawn if the target has one of the req_titles and if their on-spawn ID has the required access level. +# req_access is going to be a shit to maintain since the config file can't grab constants and has to use integers, use it minimally. +# Separate titles with a single comma and a space (', ') or they'll bork. +# +# EX: +# { +# ckey: zuhayr +# character_name: Jane Doe +# item_path: /obj/item/toy/plushie +# item_name: ugly plush toy +# item_icon: flagmask +# item_desc: It's truly hideous. +# req_titles: Assistant, Security Officer +# req_access: 1 +# } +## + +{ +ckey: zuhayr +character_name: Jane Doe +item_path: /obj/item/toy/plushie +item_name: ugly plush toy +item_icon: flagmask +item_desc: It's truly hideous. +req_titles: Assistant, Security Officer +req_access: 1 +} diff --git a/icons/mob/custom_items.dmi b/icons/mob/custom_items.dmi new file mode 100644 index 0000000000..e69de29bb2 From 51043bc84aee53f86cf0d52d98dc956b7204bb05 Mon Sep 17 00:00:00 2001 From: Atlantiscze Date: Tue, 12 May 2015 07:49:31 +0200 Subject: [PATCH 020/199] Update - Creates a global list of items which have pwr_drain() called every powernet tick - Makes powersink use this list - Adds scheck --- code/controllers/Processes/machinery.dm | 7 +++++-- code/game/objects/items.dm | 5 ++++- code/game/objects/items/devices/powersink.dm | 13 +++++++++---- code/global.dm | 1 + 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/code/controllers/Processes/machinery.dm b/code/controllers/Processes/machinery.dm index 702a4c7121..c95e8667d6 100644 --- a/code/controllers/Processes/machinery.dm +++ b/code/controllers/Processes/machinery.dm @@ -22,8 +22,11 @@ powernets.Remove(powerNetwork) - for(var/obj/item/device/powersink/S in processing_objects) - S.drain() + // Currently only used by powersinks. These items get priority processed before machinery + for(var/obj/item/I in processing_power_items) + if(!I.pwr_drain()) // 0 = Process Kill, remove from processing list. + processing_power_items.Remove(I) + scheck() for(var/obj/machinery/M in machines) if(M && !M.gcDestroyed) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 1c29aa8088..d2d8f1801c 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -599,4 +599,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. if(!cannotzoom) usr.visible_message("[zoomdevicename ? "[usr] looks up from the [src.name]" : "[usr] lowers the [src.name]"].") - return \ No newline at end of file + return + +/obj/item/proc/pwr_drain() + return 0 // Process Kill \ No newline at end of file diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index 623c57be89..caf2017237 100644 --- a/code/game/objects/items/devices/powersink.dm +++ b/code/game/objects/items/devices/powersink.dm @@ -27,6 +27,7 @@ /obj/item/device/powersink/Destroy() processing_objects.Remove(src) + processing_power_items.Remove(src) ..() /obj/item/device/powersink/attackby(var/obj/item/I, var/mob/user) @@ -49,6 +50,7 @@ else if (mode == 2) processing_objects.Remove(src) // Now the power sink actually stops draining the station's power if you unhook it. --NeoFite + processing_power_items.Remove(src) anchored = 0 mode = 0 src.visible_message("[user] detaches [src] from the cable!") @@ -71,25 +73,27 @@ mode = 2 icon_state = "powersink1" processing_objects.Add(src) + processing_power_items.Add(src) if(2) //This switch option wasn't originally included. It exists now. --NeoFite src.visible_message("[user] deactivates [src]!") mode = 1 set_light(0) icon_state = "powersink0" processing_objects.Remove(src) + processing_power_items.Remove(src) -/obj/item/device/powersink/proc/drain() +/obj/item/device/powersink/pwr_drain() if(!attached) - return + return 0 if(drained_this_tick) - return + return 1 drained_this_tick = 1 var/drained = 0 if(!PN) - return + return 1 set_light(12) PN.trigger_warning() @@ -110,6 +114,7 @@ A.cell.use(drain_val * CELLRATE) drained += drain_val power_drained += drained + return 1 /obj/item/device/powersink/process() diff --git a/code/global.dm b/code/global.dm index 2e7ddeb0e6..fce133f586 100644 --- a/code/global.dm +++ b/code/global.dm @@ -8,6 +8,7 @@ var/global/obj/effect/datacore/data_core = null var/global/list/all_areas = list() var/global/list/machines = list() var/global/list/processing_objects = list() +var/global/list/processing_power_items = list() var/global/list/active_diseases = list() var/global/list/med_hud_users = list() // List of all entities using a medical HUD. var/global/list/sec_hud_users = list() // List of all entities using a security HUD. From f76a1d2024c00b7307b5458cae7f1e407f1be0b4 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 15:49:56 +0930 Subject: [PATCH 021/199] Removed custom item defines, refactored mech kits. --- baystation12.dme | 2 +- code/game/mecha/equipment/tools/tools.dm | 12 - code/game/mecha/mecha.dm | 8 +- code/game/objects/items/paintkit.dm | 58 ++++ code/modules/customitems/item_defines.dm | 340 ---------------------- code/modules/customitems/item_kits.dm | 120 -------- code/modules/customitems/item_spawning.dm | 27 +- 7 files changed, 88 insertions(+), 479 deletions(-) create mode 100644 code/game/objects/items/paintkit.dm delete mode 100644 code/modules/customitems/item_defines.dm delete mode 100644 code/modules/customitems/item_kits.dm diff --git a/baystation12.dme b/baystation12.dme index 0ee7895710..ae6a940471 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -547,6 +547,7 @@ #include "code\game\objects\items\crayons.dm" #include "code\game\objects\items\glassjar.dm" #include "code\game\objects\items\latexballoon.dm" +#include "code\game\objects\items\paintkit.dm" #include "code\game\objects\items\shooting_range.dm" #include "code\game\objects\items\toys.dm" #include "code\game\objects\items\trash.dm" @@ -936,7 +937,6 @@ #include "code\modules\clothing\under\jobs\medsci.dm" #include "code\modules\clothing\under\jobs\security.dm" #include "code\modules\customitems\item_defines.dm" -#include "code\modules\customitems\item_kits.dm" #include "code\modules\customitems\item_spawning.dm" #include "code\modules\detectivework\evidence.dm" #include "code\modules\detectivework\footprints_and_rag.dm" diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index e7bd01c1ef..57bba9c97a 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -1070,18 +1070,6 @@ do_after_cooldown() return 1 -/obj/item/weapon/paintkit //Please don't use this for anything, it's a base type for custom mech paintjobs. - name = "mecha customisation kit" - desc = "A generic kit containing all the needed tools and parts to turn a mech into another mech." - icon = 'icons/obj/custom_items.dmi' - icon_state = "royce_kit" - - var/new_name = "mech" //What is the variant called? - var/new_desc = "A mech." //How is the new mech described? - var/new_icon = "ripley" //What base icon will the new mech use? - var/removable = null //Can the kit be removed? - var/list/allowed_types = list() //Types of mech that the kit will work on. - /obj/item/mecha_parts/mecha_equipment/tool/passenger name = "passenger compartment" desc = "A mountable passenger compartment for exo-suits. Rather cramped." diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index b0423340e7..0f908c5130 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -814,13 +814,13 @@ user.visible_message("[user] attaches [W] to [src].", "You attach [W] to [src]") return - else if(istype(W, /obj/item/weapon/paintkit)) + else if(istype(W, /obj/item/device/kit/paint)) if(occupant) user << "You can't customize a mech while someone is piloting it - that would be unsafe!" return - var/obj/item/weapon/paintkit/P = W + var/obj/item/device/kit/paint/P = W var/found = null for(var/type in P.allowed_types) @@ -838,9 +838,7 @@ src.desc = P.new_desc src.initial_icon = P.new_icon src.reset_icon() - - user.drop_item() - qdel(P) + P.use(1, user) else call((proc_res["dynattackby"]||src), "dynattackby")(W,user) diff --git a/code/game/objects/items/paintkit.dm b/code/game/objects/items/paintkit.dm new file mode 100644 index 0000000000..34059c1359 --- /dev/null +++ b/code/game/objects/items/paintkit.dm @@ -0,0 +1,58 @@ +/obj/item/device/kit + var/new_name = "mech" //What is the variant called? + var/new_desc = "A mech." //How is the new mech described? + var/new_icon = "ripley" //What base icon will the new mech use? + var/uses = 2 // Uses before the kit deletes itself. + +/obj/item/device/kit/proc/use(var/amt, var/mob/user) + uses -= amt + playsound(get_turf(user), 'sound/items/Screwdriver.ogg', 50, 1) + if(uses<1) + user.drop_item() + qdel(src) + +// Root hardsuit kit defines. +// Icons for modified hardsuits need to be in the proper .dmis because suit cyclers may cock them up. +/obj/item/device/kit/suit + name = "voidsuit modification kit" + desc = "A kit for modifying a voidsuit." + icon = 'icons/obj/custom_items.dmi' + icon_state = "salvage_kit" + var/new_light_overlay + +/obj/item/clothing/head/helmet/space/void/attackby(var/obj/item/O as obj, mob/user as mob) + if(istype(O,/obj/item/device/kit/suit)) + + var/obj/item/device/kit/suit/kit = O + name = "[kit.new_name] suit helmet" + desc = kit.new_desc + icon_state = kit.new_icon + item_state = kit.new_icon + if(kit.new_light_overlay) + light_overlay = kit.new_light_overlay + user << "You set about modifying the helmet into [src]." + kit.use(1,user) + return 1 + return ..() + +/obj/item/clothing/suit/space/void/attackby(var/obj/item/O as obj, mob/user as mob) + if(istype(O,/obj/item/device/kit/suit)) + var/obj/item/device/kit/suit/kit = O + name = "[kit.new_name] voidsuit" + desc = kit.new_desc + icon_state = kit.new_icon + item_state = kit.new_icon + user << "You set about modifying the suit into [src]." + kit.use(1,user) + return 1 + return ..() + +// Actual application of this kit is handled in mecha.dm attackby(). +/obj/item/device/kit/paint + name = "mecha customisation kit" + desc = "A generic kit containing all the needed tools and parts to turn a mech into another mech." + icon = 'icons/obj/custom_items.dmi' + icon_state = "royce_kit" + + var/removable = null + var/list/allowed_types = list() \ No newline at end of file diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm deleted file mode 100644 index c021f715ed..0000000000 --- a/code/modules/customitems/item_defines.dm +++ /dev/null @@ -1,340 +0,0 @@ -// Add custom items you give to people here, and put their icons in custom_items.dmi -// Remember to change 'icon = 'icons/obj/custom_items.dmi'' for items not using /obj/item/fluff as a base -// Clothing item_state doesn't use custom_items.dmi. Just add them to the normal clothing files. - -/////////////////////////////// 50_n00b - R.A.N.G.E.'s blue dress ////////////////////////// - -/obj/item/clothing/suit/fluff/b_dress - name = "Blue dress" - desc = "A blue dress, worn with a white blouse. It is small, and looks like it won't fit a full grown human." - icon = 'icons/obj/custom_items.dmi' - icon_state = "br_dress" - item_state = "br_dress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS - -///////////////////////////// Astronovus - Harold's Cane //////////////////////////// - -/obj/item/weapon/cane/fluff/harold - name = "Harold's Cane" - desc = "A cane with a wooden handle and a plastic frame capable of folding itself to make it more storable." - w_class = 1.0 - icon = 'icons/obj/custom_items.dmi' - item_state = "foldcane" - icon_state = "foldcane" - -/obj/item/weapon/reagent_containers/food/drinks/flask/fluff/yuri_kornienkovich_flask - name = "Yuri's Flask" - desc = "An old gold plated flask. Nothing noteworthy about it besides it being gold and the red star on the worn out leather around it. There is also an engraving on the cap that is rather hard to see but it looks like \"Kornienkovich\" " - icon = 'icons/obj/custom_items.dmi' - icon_state = "yuri_kornienkovich_flask" - - -/obj/item/clothing/under/fluff/solara_light_1 //bluefishie: Solara Born-In-Light - name = "Elaborate Purple Dress" - desc = "An expertly tailored dress, made out of fine fabrics. The interwoven necklace appears to be made out of gold, with three complicated symbols engraved in the front." - icon = 'icons/obj/custom_items.dmi' - icon_state = "solara_dress" - item_state = "p_suit" - worn_state = "solara_dress" - - - - -/obj/item/clothing/suit/storage/labcoat/fluff/aeneas_rinil //Robotics Labcoat - Aeneas Rinil [APPR] - name = "Robotics labcoat" - desc = "A labcoat with a few markings denoting it as the labcoat of roboticist." - icon = 'icons/obj/custom_items.dmi' - icon_state = "aeneasrinil" - - - - - - -/obj/item/weapon/crowbar/fluff/zelda_creedy_1 //daaneesh: Zelda Creedy - name = "Zelda's Crowbar" - desc = "A pink crow bar that has an engraving that reads, 'To Zelda. Love always, Dawn'" - icon = 'icons/obj/custom_items.dmi' - icon_state = "zeldacrowbar" - item_state = "crowbar" - - - - - -/////////////// Oen'g Issek Medical Mask ////////////////////////// - -/obj/item/clothing/mask/surgical/fluff/primitive - name = "primitive mask" - desc = "A decorated and creepy gas mask with the filters removed." - icon = 'icons/obj/custom_items.dmi' - item_state = "head_m" - icon_state = "head_m" - body_parts_covered = FACE|EYES - - - - - - /obj/item/weapon/storage/belt/utility/full/fluff/sophie - name = "Sophie's belt" - desc = "A tool-belt in Atmos colours." - icon = 'icons/obj/custom_items.dmi' - icon_state = "sophie_belt" - item_state = "sophie_belt" - - - - - - -/obj/item/weapon/flame/lighter/zippo/fluff/fay_sullivan_1 //furohman: Fay Sullivan - name = "Graduation Lighter" - desc = "A silver engraved lighter with 41 on one side and Tharsis University on the other. The lid reads Fay Sullivan, Cybernetic Engineering, 2541" - icon = 'icons/obj/custom_items.dmi' - icon_state = "gradzippo" - icon_on = "gradzippoon" - icon_off = "gradzippo" - - - - /obj/item/clothing/suit/storage/labcoat/fluff/mit - name = "MiT Labcoat" - desc = "A lab coat from the Martian Institute of Technology with the name 'Dr. Lucina Franco' embroidered onto the right breast pocket." - icon = 'icons/obj/custom_items.dmi' - icon_state = "mitlabcoat" - item_state = "mitlabcoat" - - -////// Medical eyepatch - Thysse Ezinwa - Jadepython -/obj/item/clothing/glasses/eyepatch/fluff/thysse_1 - name = "medical eyepatch" - desc = "On the strap, EZINWA is written in white block letters." - - - - ///////////////////////////// Jarcolr - Uberto Dandolo - Painted secure briefcase ///////////// - -/obj/item/weapon/storage/secure/briefcase/fluff/uberto_dandolo - name = "painted secure briefcase" - desc = "A bulky briefcase with a combination lock. It features the color green, white and red, and a golden eagle in the middle." - icon = 'icons/obj/custom_items.dmi' - icon_state = "painted_secure" - item_state = "painted_secure" - - - -////////////////////////////// Jarcolr - Uberto Dandolo - Feathered trilby ///////////////////// - -/obj/item/clothing/head/feather/fluff/uberto_dandolo - name = "Feathered trilby" - desc = "A sharp, stylish hat with a feather." - - -/obj/item/clothing/under/fluff/kaine_kalim_2 - name = "Formal Medical Uniform" - desc = "An unusually sterile and pressed uniform. It seems to have a string of vials crossing the chest." - icon = 'icons/obj/custom_items.dmi' - icon_state = "kaineuniform" - item_state = "w_suit" - worn_state = "kaineuniform" - -/obj/item/clothing/head/fluff/kaine_kalim_1 - name = "Formal Medical Cap" - desc = "An unusually sterile and folded cap. It seems to bear the Nanotrasen logo." - icon = 'icons/obj/custom_items.dmi' - icon_state = "kainecap" - - - /////////////////////////////////// GSTQ - Monogrammed Eyepatch - Edmund Flashman Adler ///////////////////////// - -/obj/item/clothing/glasses/eyepatch/fluff/edmund - name = "Monogrammed Eyepatch" - desc = "A black velvet eyepatch monogrammed in dark purple thread with the initials 'E. A.'" - - - - - - -/obj/item/weapon/flame/lighter/zippo/fluff/li_matsuda_1 //mangled: Li Matsuda - name = "blue zippo lighter" - desc = "A zippo lighter made of some blue metal." - icon = 'icons/obj/custom_items.dmi' - icon_state = "bluezippo" - icon_on = "bluezippoon" - icon_off = "bluezippo" - - -/obj/item/fluff/sarah_carbrokes_1 //gvazdas: Sarah Carbrokes - name = "locket" - desc = "A grey locket with a picture of a black haired man in it. The text above it reads: \"Edwin Carbrokes\"." - icon_state = "sarah_carbrokes_1" - -/obj/item/clothing/head/soft/sec/corp/fluff/robert_mason - name = "Corporate Cap" - desc = "It's baseball hat in corporate colors." - -////////////////////////////// Meyar - Cane ///////////////////////////////////////////////// - -/obj/item/weapon/cane/fluff/ryals - name = "cane" - desc = "This cane seems to have 'Ryals' engraved on its handle." - icon_state = "cane" - item_state = "stick" - - ////// Tailored Security Uniform - Parker Eliza - MrSnapwalk - -/obj/item/clothing/under/fluff/parkereliza - name = "tailored security uniform" - desc = "A red uniform shirt (tailored for easy access to the shoulder joint) and black cargo pants, paired with a set of somewhat bulky white casings for robotic limbs. The arms have a small label on the inner elbow, which reads \"Bishop Corporation Cybernetic Solutions\"." - icon = 'icons/obj/custom_items.dmi' - icon_state = "parker_eliza" - //item_state = "parker_eliza" - worn_state = "parker_eliza" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS - -////// Bishop "GOLEM" V2200 Industrial Limb Augments - Parker Eliza - MrSnapwalk - -/obj/item/clothing/suit/fluff/parkereliza - name = "Bishop \"GOLEM\" V2200 Industrial Limb Augments" - desc = "A set of top-of-the-line cyberlimbs, only usable to someone with extensive bone structure augmentation. Often used in industrial applications, they are capable of throwing a man clear across a room. The load limitation circuit in this set appears to be modified." - icon = 'icons/obj/custom_items.dmi' - icon_state = "parker_eliza_arms" - item_state = "parker_eliza_arms" - body_parts_covered = 0 //technicially it's underneath everything, being part of the body - canremove = 0 - - -//////////////////// Blood Red Pendant - Mewth - Mu'taz Radi //////////////// - -/obj/item/clothing/accessory/fluff/radi - name = "Blood Red Pendant" - desc = "A blue chained necklace with a ruby in the middle, it looks pretty!" - icon = 'icons/obj/custom_items.dmi' - icon_state = "radi_pendant" - item_state = "radi_pendant" - w_class = 2.0 - -////// Black Dress - Lillian Amsel - PapaDrow -/obj/item/clothing/under/fluff/lillian_amsel_1 - name = "Black Dress" - desc = "A knee-length, dark gray and black dress made of a soft, velvety material." - icon = 'icons/obj/custom_items.dmi' - icon_state = "lillian_dress" - //item_state = "lillian_dress" - worn_state = "lillian_dress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO - -//////////// Earpieces //////////////// - -////////////////////////// Skrellian Tailwear - Qokkri Xilo - Paradoxon ///////////// - -/obj/item/clothing/ears/fluff/qokkri - name = "Skrellian Tailwear" - desc = "An ensemble of sophisticated jewels and bands, most likely belonging to a scientific Skrell." - icon_state = "xilobeads" - icon = 'icons/obj/custom_items.dmi' - item_state = "xilobeads" - -/obj/item/clothing/under/fluff/sakura_hokkaido_kimono - name = "Sakura Kimono" - desc = "A pale-pink, nearly white, kimono with a red and gold obi. There is a embroidered design of cherry blossom flowers covering the kimono." - icon = 'icons/obj/custom_items.dmi' - icon_state = "sakura_hokkaido_kimono" - item_state = "sakura_hokkaido_kimono" - worn_state = "sakura_hokkaido_kimono" - -////////////////////////////// Serithi - Adapted Security Helmet ////////////////////////////// - -/obj/item/clothing/head/helmet/fluff/adapted - name = "Adapted helmet" - desc = "Standard Security gear. Protects the head from impacts. This helmet is specially made for horned Unathi." - item_state = "adapted_h" - icon_state = "adapted_h" - icon = 'icons/obj/custom_items.dmi' - -/////////////////////// Serveris: Officer's Notebook //////////////////// -/obj/item/weapon/folder/blue/fluff/officer_notebook - name = "Officer's Notebook" - desc = "A simple, spiral bound notebook. A holographic crescent moon is printed on the cover, as well as 'S. Seto' beneath it. Numerous paper flags divide the pages, titled everything from incident reports to personal notes." - icon = 'icons/obj/custom_items.dmi' - icon_state = "syrus_notebook" - -/obj/item/fluff/david_fanning_1 //sicktrigger: David Fanning - name = "golden scalpel" - desc = "A fine surgical cutting tool covered in thin gold leaf. Does not seem able to cut anything." - icon_state = "david_fanning_1" - item_state = "david_fanning_1" - -//////////// Shoes //////////// -/obj/item/clothing/shoes/magboots/fluff/susan_harris_1 //sniperyeti: Susan Harris - name = "Susan's Magboots" - desc = "A colorful pair of magboots with the name Susan Harris clearly written on the back." - icon = 'icons/obj/custom_items.dmi' - icon_state = "atmosmagboots0" - -////////////////////////////// Tudoreleuu - Emilia Scotts - Customized pAI ///////////// -/obj/item/device/paicard/fluff/emilia_scotts - name = "Customized pAI unit" - desc = "It seems to be a pAI Unit, albeit in a different shell. It acts exactly like the normal one. " - icon = 'icons/obj/custom_items.dmi' - icon_state = "customized_pai" - -////////////////////////////// Vivallion - Isaac Jachym - Butterfly Lighter //////////// -/obj/item/weapon/flame/lighter/zippo/fluff/isaac_jachym - name = "Butterfly lighter" - desc = "A custom-made zippo lighter, looks rather expensive. On one of it's sides, a clean inscription has been made, 'Butterfly, what is your wisdom?' And I looked down at it's majestic form, flexing it's wings as if to show it's strength. 'Fuck chechenya.' Had it whispered, before fluttering away, and so we went to war." - icon = 'icons/obj/custom_items.dmi' - icon_state = "che_zippo" - icon_on = "che_zippoon" - icon_off = "che_zippo" - -/obj/item/clothing/shoes/jackboots/fluff/hal_ishimaru_1 //YankeeSamurai: Hal Ishimaru - name = "duty boots" - desc = "Eight-inch black leather boots with side zips and NT-approved safety toes." - -/obj/item/clothing/head/beret/fluff/marine_beret //Von2531: Jack Washington - name = "colonial marine beret" - desc = "A well-worn navy blue beret. The insignia of the Martian Colonial Marine Corps is affixed to the front." - icon_state = "officerberet" - -////////////////////////////////////////// Vivallion - Kecer Eldraran - Toe-less Jackboots ////////////// -/obj/item/clothing/shoes/jackboots/fluff/kecer_eldraran - name = "Toe-less Jackboots" - desc = "Modified pair of jackboots, particularly friendly to those species whose toes hold claws." - icon = 'icons/obj/custom_items.dmi' - item_state = "digiboots" - icon_state = "digiboots" - species_restricted = null - -/obj/item/weapon/folder/blue/fluff/matthew_riebhardt //Matthew Riebhardt - ZekeSulastin - name = "academic journal" - desc = "An academic journal, seemingly pertaining to medical genetics. This issue is for the second quarter of 2557. Paper flags demarcate some articles the owner finds interesting." - icon = 'icons/obj/custom_items.dmi' - icon_state = "matthewriebhardt" - -///////////////////////////// Ziepes - Janis Godmanis - Red Zippo ////////////////////// -/obj/item/weapon/flame/lighter/zippo/fluff/janis_godmanis - name = "Red-White-Red Zippo" - desc = "A badass zippo that looks like the Austrian flag. Upon closer inspection it is revealed that it's a different shade of red than the Austrian flag.." - icon = 'icons/obj/custom_items.dmi' - icon_state = "redzippo" - icon_on = "redzippoon" - icon_off = "redzippo" - -//Painted mask: Dante Cicero - andrewmeythaler -/obj/item/clothing/mask/andrewmeythaler - name = "painted mask" - desc = "A ghoulish mask with a stylized painting of a flame over the left eye, and a painted tear stream coming from the right eye." - icon = 'icons/obj/custom_items.dmi' - //item_state = "cicero" - icon_state = "cicero" - body_parts_covered = FACE|EYES - -/obj/item/weapon/storage/belt/medical/fluff/nashi_belt - name = "rainbow medical belt" - desc = "A somewhat-worn, modified, rainbow belt." - icon = 'icons/obj/custom_items.dmi' - icon_state = "nashi_belt" - item_state = "fluff_rbelt" diff --git a/code/modules/customitems/item_kits.dm b/code/modules/customitems/item_kits.dm deleted file mode 100644 index c1ee5c4a60..0000000000 --- a/code/modules/customitems/item_kits.dm +++ /dev/null @@ -1,120 +0,0 @@ -////// Ripley customisation kit - Butchery Royce - MayeDay -/obj/item/weapon/paintkit/fluff/butcher_royce_1 - name = "Ripley customisation kit" - desc = "A kit containing all the needed tools and parts to turn an APLU Ripley into a Titan's Fist worker mech." - icon = 'icons/obj/custom_items.dmi' - icon_state = "royce_kit" - - new_name = "APLU \"Titan's Fist\"" - new_desc = "This ordinary mining Ripley has been customized to look like a unit of the Titans Fist." - new_icon = "titan" - allowed_types = list("ripley","firefighter") - -////// Ripley customisation kit - Sven Fjeltson - Mordeth221 - -/obj/item/weapon/paintkit/fluff/sven_fjeltson_1 - name = "Mercenary APLU kit" - desc = "A kit containing all the needed tools and parts to turn an APLU Ripley into an old Mercenaries APLU." - icon = 'icons/obj/custom_items.dmi' - icon_state = "sven_kit" - - new_name = "APLU \"Strike the Earth!\"" - new_desc = "Looks like an over worked, under maintained Ripley with some horrific damage." - new_icon = "earth" - allowed_types = list("ripley","firefighter") - -// Root hardsuit kit defines. -// Icons for modified hardsuits need to be in the proper .dmis because suit cyclers may cock them up. -/obj/item/device/kit/suit/fluff - - name = "hardsuit modification kit" - desc = "A kit for modifying a hardsuit." - icon = 'icons/obj/custom_items.dmi' - icon_state = "salvage_kit" - - var/new_name // Modifier for new item name - '[new_name] hardsuit'. - var/new_helmet_desc // Sets helmet desc. - var/new_suit_desc // Sets suit desc. - var/helmet_icon // Sets helmet icon_state and item_state. - var/suit_icon // Sets suit icon_state and item_state. - var/helmet_color // Sets worn_state. - var/uses = 2 // Uses before the kit deletes itself. - var/new_light_overlay - -/obj/item/clothing/head/helmet/space/void/attackby(var/obj/item/O as obj, mob/user as mob) - ..() - - if(istype(O,/obj/item/device/kit/suit/fluff)) - - var/obj/item/device/kit/suit/fluff/kit = O - name = "[kit.new_name] suit helmet" - desc = kit.new_helmet_desc - icon_state = kit.helmet_icon - item_state = kit.helmet_icon - - if(kit.new_light_overlay) - light_overlay = kit.new_light_overlay - - user << "You set about modifying the helmet into [src]." - playsound(user.loc, 'sound/items/Screwdriver.ogg', 50, 1) - - kit.uses-- - if(kit.uses<1) - user.drop_item() - qdel(O) - -/obj/item/clothing/suit/space/void/attackby(var/obj/item/O as obj, mob/user as mob) - ..() - - if(istype(O,/obj/item/device/kit/suit/fluff)) - - var/obj/item/device/kit/suit/fluff/kit = O - name = "[kit.new_name] voidsuit" - desc = kit.new_suit_desc - icon_state = kit.suit_icon - item_state = kit.suit_icon - - user << "You set about modifying the suit into [src]." - playsound(user.loc, 'sound/items/Screwdriver.ogg', 50, 1) - - kit.uses-- - if(kit.uses<1) - user.drop_item() - qdel(O) - -///////// Salvage crew hardsuit - Cybele Petit - solaruin /////////////// -/obj/item/device/kit/suit/fluff/salvage - name = "salvage hardsuit modification kit" - desc = "A kit containing all the needed tools and parts to modify a hardsuit into a salvage hardsuit." - - new_name = "salvage" - new_suit_desc = "An orange hardsuit used by salvage flotillas. Has reinforced plating." - new_helmet_desc = "An orange hardsuit helmet used by salvage flotillas. Has reinforced plating." - helmet_icon = "salvage_helmet" - suit_icon = "salvage_suit" - helmet_color = "salvage" - -///////// Weathered hardsuit - Callum Leamas - roaper /////////////// -/obj/item/device/kit/suit/fluff/roaper - name = "Callum's hardsuit modification kit" - desc = "A kit containing all the needed tools and parts to modify a hardsuit." - - new_name = "weathered" - new_suit_desc = " A jury-rigged and modified engineering hardsuit. It looks slightly damaged and dinged." - new_helmet_desc = "A jury-rigged and modified engineering hardsuit helmet. It looks slightly damaged and dinged" - helmet_icon = "rig0-roaper" - suit_icon = "rig-roaper" - helmet_color = "roaper" - -///////// Hazard Hardsuit - Ronan Harper - Raptor1628 ////////////////// -/obj/item/device/kit/suit/fluff/ronan_harper - name = "hazard hardsuit modification kit" - desc = "A kit containing all the needed tools and parts to modify a hardsuit." - - new_name = "hazard" - new_suit_desc = "An older model of armored NT Hardsuit emblazoned in security colors. The crest of the NAS Rhodes, a copper rose, is painted onto the chestplate." - new_helmet_desc = "An older NT Hardsuit Helmet with built-in atmospheric filters. The name HARPER has been printed on the back." - helmet_icon = "rig0-hazardhardsuit" - suit_icon = "rig-hazardhardsuit" - helmet_color = "hazardhardsuit" - new_light_overlay = "helmet_light_dual" diff --git a/code/modules/customitems/item_spawning.dm b/code/modules/customitems/item_spawning.dm index 55ee25a595..a5024aee34 100644 --- a/code/modules/customitems/item_spawning.dm +++ b/code/modules/customitems/item_spawning.dm @@ -15,6 +15,10 @@ var/item_path = /obj/item var/req_access = 0 var/list/req_titles = list() + var/kit_name + var/kit_desc + var/kit_icon + var/additional_data /datum/custom_item/proc/spawn_item(var/newloc) var/obj/item/citem = new item_path(newloc) @@ -32,6 +36,20 @@ item.icon = 'icons/obj/custom_items.dmi' item.icon_override = 'icons/mob/custom_items.dmi' item.icon_state = item_icon + + // Kits are dumb so this is going to have to be hardcoded/snowflake. + if(istype(item, /obj/item/device/kit)) + var/obj/item/device/kit/K = item + K.new_name = kit_name + K.new_desc = kit_desc + K.new_icon = kit_icon + if(istype(item, /obj/item/device/kit/paint)) + var/obj/item/device/kit/paint/kit = item + kit.allowed_types = text2list(additional_data, ", ") + else if(istype(item, /obj/item/device/kit/suit)) + var/obj/item/device/kit/suit/kit = item + kit.new_light_overlay = additional_data + return item //parses the config file into the above listlist @@ -81,7 +99,14 @@ current_data.req_access = field_data if("req_titles") current_data.req_titles = text2list(field_data,", ") - + if("kit_name") + current_data.kit_name = field_data + if("kit_desc") + current_data.kit_desc = field_data + if("kit_icon") + current_data.kit_icon = field_data + if("additional_data") + current_data.additional_data = field_data return 1 //gets the relevant list for the key from the listlist if it exists, check to make sure they are meant to have it and then calls the giving function From 99394bcadc05af1577716f22cc691374969d351f Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 16:06:03 +0930 Subject: [PATCH 022/199] Debugging! --- baystation12.dme | 1 - code/game/gamemodes/gameticker.dm | 2 +- code/game/objects/structures/coathanger.dm | 2 +- code/modules/client/preferences_gear.dm | 2 +- code/modules/clothing/shoes/miscellaneous.dm | 7 +++ code/modules/customitems/item_spawning.dm | 43 +++++++++++------- code/modules/mob/new_player/new_player.dm | 2 +- code/modules/research/xenoarchaeology/misc.dm | 2 +- icons/obj/clothing/shoes.dmi | Bin 15129 -> 15301 bytes icons/obj/custom_items.dmi | Bin 59311 -> 59174 bytes 10 files changed, 39 insertions(+), 22 deletions(-) diff --git a/baystation12.dme b/baystation12.dme index ae6a940471..95aab9ea58 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -936,7 +936,6 @@ #include "code\modules\clothing\under\jobs\engineering.dm" #include "code\modules\clothing\under\jobs\medsci.dm" #include "code\modules\clothing\under\jobs\security.dm" -#include "code\modules\customitems\item_defines.dm" #include "code\modules\customitems\item_spawning.dm" #include "code\modules\detectivework\evidence.dm" #include "code\modules\detectivework\footprints_and_rag.dm" diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index 41183aeffa..08ad7e7253 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -292,7 +292,7 @@ var/global/datum/controller/gameticker/ticker if(player.mind.assigned_role != "MODE") job_master.EquipRank(player, player.mind.assigned_role, 0) UpdateFactionList(player) - EquipCustomItems(player) + equip_custom_items(player) if(captainless) for(var/mob/M in player_list) if(!istype(M,/mob/new_player)) diff --git a/code/game/objects/structures/coathanger.dm b/code/game/objects/structures/coathanger.dm index a54c40b755..decba4bfd3 100644 --- a/code/game/objects/structures/coathanger.dm +++ b/code/game/objects/structures/coathanger.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/coatrack.dmi' icon_state = "coatrack0" var/obj/item/clothing/suit/coat - var/list/allowed = list(/obj/item/clothing/suit/storage/labcoat, /obj/item/clothing/suit/storage/toggle/labcoat, /obj/item/clothing/suit/storage/det_suit) + var/list/allowed = list(/obj/item/clothing/suit/storage/toggle/labcoat, /obj/item/clothing/suit/storage/det_suit) /obj/structure/coatrack/attack_hand(mob/user as mob) user.visible_message("[user] takes [coat] off \the [src].", "You take [coat] off the \the [src]") diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm index eff194f545..b63869bccb 100644 --- a/code/modules/client/preferences_gear.dm +++ b/code/modules/client/preferences_gear.dm @@ -893,7 +893,7 @@ var/global/list/gear_datums = list() /datum/gear/toeless_jackboots display_name = "toe-less jackboots" - path = /obj/item/clothing/shoes/jackboots/fluff/kecer_eldraran + path = /obj/item/clothing/shoes/jackboots/unathi cost = 1 slot = slot_shoes diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 616d13e858..9fd713fc74 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -89,6 +89,13 @@ force = 3 siemens_coefficient = 0.7 +/obj/item/clothing/shoes/jackboots/unathi + name = "toe-less jackboots" + desc = "Modified pair of jackboots, particularly friendly to those species whose toes hold claws." + item_state = "digiboots" + icon_state = "digiboots" + species_restricted = null + /obj/item/clothing/shoes/cult name = "boots" desc = "A pair of boots worn by the followers of Nar-Sie." diff --git a/code/modules/customitems/item_spawning.dm b/code/modules/customitems/item_spawning.dm index a5024aee34..9150bbd558 100644 --- a/code/modules/customitems/item_spawning.dm +++ b/code/modules/customitems/item_spawning.dm @@ -1,8 +1,17 @@ -//switch this out to use a database at some point -//list of ckey/ real_name and item paths -//gives item to specific people when they join if it can -//see config/custom_items.txt how to to add things to it (yes crazy idea i know) -//yes, it has to be an item, you can't pick up nonitems +// Convoluted setup so defines can be supplied by Bay12 main server compile script. +// Should still work fine for people jamming the icons into their repo. +#ifndef CUSTOM_ITEM_OBJ +#define CUSTOM_ITEM_OBJ 'icons/obj/custom_items.dmi' +#endif +#ifndef CUSTOM_ITEM_MOB +#define CUSTOM_ITEM_MOB 'icons/mob/custom_items.dmi' +#endif + +// Switch this out to use a database at some point. Each ckey is +// associated with a list of custom item datums. When the character +// spawns, the list is checked and all appropriate datums are spawned. +// See config/example/custom_items.txt for a more detailed overview +// of how the config system works. /var/list/custom_items = list() @@ -33,8 +42,8 @@ if(item_desc) item.desc = item_desc if(item_icon) - item.icon = 'icons/obj/custom_items.dmi' - item.icon_override = 'icons/mob/custom_items.dmi' + item.icon = CUSTOM_ITEM_OBJ + item.icon_override = CUSTOM_ITEM_MOB item.icon_state = item_icon // Kits are dumb so this is going to have to be hardcoded/snowflake. @@ -52,14 +61,15 @@ return item -//parses the config file into the above listlist -/hook/startup/proc/loadCustomItems() + +// Parses the config file into the custom_items list. +/hook/startup/proc/load_custom_items() var/datum/custom_item/current_data for(var/line in text2list(file2text("config/custom_items.txt"), "\n")) line = trim(line) - if(line == "" || !line || findtext(line, "#", 1, 2) || findtext(line, "}", 1, 2)) + if(line == "" || !line || findtext(line, "#", 1, 2)) continue if(findtext(line, "{", 1, 2) || findtext(line, "}", 1, 2)) // New block! @@ -96,7 +106,7 @@ if("item_desc") current_data.item_desc = field_data if("req_access") - current_data.req_access = field_data + current_data.req_access = text2num(field_data) if("req_titles") current_data.req_titles = text2list(field_data,", ") if("kit_name") @@ -110,9 +120,7 @@ return 1 //gets the relevant list for the key from the listlist if it exists, check to make sure they are meant to have it and then calls the giving function -/proc/EquipCustomItems(mob/living/carbon/human/M) - return - +/proc/equip_custom_items(mob/living/carbon/human/M) var/list/key_list = custom_items[M.ckey] if(!key_list || key_list.len < 1) return @@ -120,7 +128,7 @@ for(var/datum/custom_item/citem in key_list) // Check for requisite ckey and character name. - if(citem.assoc_key != M.ckey || citem.character_name != M.real_name) + if((lowertext(citem.assoc_key) != lowertext(M.ckey)) || (lowertext(citem.character_name) != lowertext(M.real_name))) continue // Check for required access. @@ -173,4 +181,7 @@ newitem.loc = S return newitem newitem.loc = get_turf(M.loc) - return newitem \ No newline at end of file + return newitem + +#undef CUSTOM_ITEM_OBJ +#undef CUSTOM_ITEM_MOB diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index d233ecea40..6ca5caf174 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -311,7 +311,7 @@ var/mob/living/character = create_character() //creates the human and transfers vars and mind character = job_master.EquipRank(character, rank, 1) //equips the human UpdateFactionList(character) - EquipCustomItems(character) + equip_custom_items(character) // AIs don't need a spawnpoint, they must spawn at an empty core if(character.mind.assigned_role == "AI") diff --git a/code/modules/research/xenoarchaeology/misc.dm b/code/modules/research/xenoarchaeology/misc.dm index c66e57f3de..b2d8cef42c 100644 --- a/code/modules/research/xenoarchaeology/misc.dm +++ b/code/modules/research/xenoarchaeology/misc.dm @@ -73,7 +73,7 @@ ..() sleep(2) new /obj/item/clothing/under/rank/scientist(src) - new /obj/item/clothing/suit/storage/labcoat(src) + new /obj/item/clothing/suit/storage/toggle/labcoat(src) new /obj/item/clothing/shoes/white(src) new /obj/item/clothing/glasses/science(src) new /obj/item/device/radio/headset/headset_sci(src) diff --git a/icons/obj/clothing/shoes.dmi b/icons/obj/clothing/shoes.dmi index 50981432711c02323b2812f28590c28a4b66130c..f6512b0d440563b7accdf48a603984131052e63d 100644 GIT binary patch literal 15301 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 F|1TKy+&=&S diff --git a/icons/obj/custom_items.dmi b/icons/obj/custom_items.dmi index f69c02c71d81f969dcf8fe3e3417e919a337aaf8..32f9ff68d77c593e2a93a468fde371daf87d8bd1 100644 GIT binary patch delta 19934 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 RXMsk@@bVR1s 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

U<}iNt?Zv`YPd9`9?6 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 Date: Tue, 12 May 2015 16:06:03 +0930 Subject: [PATCH 023/199] Debugging! --- baystation12.dme | 1 - code/game/gamemodes/gameticker.dm | 2 +- code/game/machinery/suit_storage_unit.dm | 8 ++ code/game/mecha/mecha.dm | 26 ------- code/game/objects/items/paintkit.dm | 71 ++++++++++++++---- .../objects/items/weapons/storage/belt.dm | 3 - code/game/objects/structures/coathanger.dm | 2 +- code/modules/client/preferences_gear.dm | 2 +- code/modules/clothing/shoes/miscellaneous.dm | 7 ++ code/modules/customitems/item_spawning.dm | 70 ++++++++++------- .../mob/living/carbon/human/update_icons.dm | 56 +++++++------- code/modules/mob/new_player/new_player.dm | 2 +- code/modules/research/xenoarchaeology/misc.dm | 2 +- code/setup.dm | 11 ++- icons/mecha/mecha.dmi | Bin 164822 -> 150214 bytes icons/mob/custom_items.dmi | Bin 0 -> 3773 bytes icons/obj/clothing/shoes.dmi | Bin 15129 -> 15301 bytes icons/obj/custom_items.dmi | Bin 59311 -> 576 bytes 18 files changed, 158 insertions(+), 105 deletions(-) diff --git a/baystation12.dme b/baystation12.dme index ae6a940471..95aab9ea58 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -936,7 +936,6 @@ #include "code\modules\clothing\under\jobs\engineering.dm" #include "code\modules\clothing\under\jobs\medsci.dm" #include "code\modules\clothing\under\jobs\security.dm" -#include "code\modules\customitems\item_defines.dm" #include "code\modules\customitems\item_spawning.dm" #include "code\modules\detectivework\evidence.dm" #include "code\modules\detectivework\footprints_and_rag.dm" diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index 41183aeffa..08ad7e7253 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -292,7 +292,7 @@ var/global/datum/controller/gameticker/ticker if(player.mind.assigned_role != "MODE") job_master.EquipRank(player, player.mind.assigned_role, 0) UpdateFactionList(player) - EquipCustomItems(player) + equip_custom_items(player) if(captainless) for(var/mob/M in player_list) if(!istype(M,/mob/new_player)) diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index d45cade6c5..d1e728e676 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -736,6 +736,10 @@ user << "The cycler already contains a helmet." return + if(I.icon_override == CUSTOM_ITEM_MOB) + user << "You cannot refit a customised voidsuit." + return + user << "You fit \the [I] into the suit cycler." user.drop_item() I.loc = src @@ -755,6 +759,10 @@ user << "The cycler already contains a voidsuit." return + if(I.icon_override == CUSTOM_ITEM_MOB) + user << "You cannot refit a customised voidsuit." + return + user << "You fit \the [I] into the suit cycler." user.drop_item() I.loc = src diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 0f908c5130..d27670c1d4 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -814,32 +814,6 @@ user.visible_message("[user] attaches [W] to [src].", "You attach [W] to [src]") return - else if(istype(W, /obj/item/device/kit/paint)) - - if(occupant) - user << "You can't customize a mech while someone is piloting it - that would be unsafe!" - return - - var/obj/item/device/kit/paint/P = W - var/found = null - - for(var/type in P.allowed_types) - if(type==src.initial_icon) - found = 1 - break - - if(!found) - user << "That kit isn't meant for use on this class of exosuit." - return - - user.visible_message("[user] opens [P] and spends some quality time customising [src].") - - src.name = P.new_name - src.desc = P.new_desc - src.initial_icon = P.new_icon - src.reset_icon() - P.use(1, user) - else call((proc_res["dynattackby"]||src), "dynattackby")(W,user) /* diff --git a/code/game/objects/items/paintkit.dm b/code/game/objects/items/paintkit.dm index 34059c1359..a562528fa5 100644 --- a/code/game/objects/items/paintkit.dm +++ b/code/game/objects/items/paintkit.dm @@ -1,8 +1,11 @@ /obj/item/device/kit + icon_state = "modkit" + icon = 'icons/obj/device.dmi' var/new_name = "mech" //What is the variant called? var/new_desc = "A mech." //How is the new mech described? var/new_icon = "ripley" //What base icon will the new mech use? - var/uses = 2 // Uses before the kit deletes itself. + var/new_icon_file + var/uses = 1 // Uses before the kit deletes itself. /obj/item/device/kit/proc/use(var/amt, var/mob/user) uses -= amt @@ -16,33 +19,46 @@ /obj/item/device/kit/suit name = "voidsuit modification kit" desc = "A kit for modifying a voidsuit." - icon = 'icons/obj/custom_items.dmi' - icon_state = "salvage_kit" + uses = 2 var/new_light_overlay + var/new_mob_icon_file -/obj/item/clothing/head/helmet/space/void/attackby(var/obj/item/O as obj, mob/user as mob) +/obj/item/clothing/head/helmet/space/void/attackby(var/obj/item/O, var/mob/user) if(istype(O,/obj/item/device/kit/suit)) - var/obj/item/device/kit/suit/kit = O name = "[kit.new_name] suit helmet" desc = kit.new_desc - icon_state = kit.new_icon - item_state = kit.new_icon + icon_state = "[kit.new_icon]_helmet" + item_state = "[kit.new_icon]_helmet" + if(kit.new_icon_file) + icon = kit.new_icon_file + if(kit.new_mob_icon_file) + icon_override = kit.new_mob_icon_file if(kit.new_light_overlay) light_overlay = kit.new_light_overlay user << "You set about modifying the helmet into [src]." + var/mob/living/carbon/human/H = user + if(istype(H)) + species_restricted = list(H.species.name) kit.use(1,user) return 1 return ..() -/obj/item/clothing/suit/space/void/attackby(var/obj/item/O as obj, mob/user as mob) +/obj/item/clothing/suit/space/void/attackby(var/obj/item/O, var/mob/user) if(istype(O,/obj/item/device/kit/suit)) var/obj/item/device/kit/suit/kit = O name = "[kit.new_name] voidsuit" desc = kit.new_desc - icon_state = kit.new_icon - item_state = kit.new_icon + icon_state = "[kit.new_icon]_suit" + item_state = "[kit.new_icon]_suit" + if(kit.new_icon_file) + icon = kit.new_icon_file + if(kit.new_mob_icon_file) + icon_override = kit.new_mob_icon_file user << "You set about modifying the suit into [src]." + var/mob/living/carbon/human/H = user + if(istype(H)) + species_restricted = list(H.species.name) kit.use(1,user) return 1 return ..() @@ -51,8 +67,35 @@ /obj/item/device/kit/paint name = "mecha customisation kit" desc = "A generic kit containing all the needed tools and parts to turn a mech into another mech." - icon = 'icons/obj/custom_items.dmi' - icon_state = "royce_kit" - var/removable = null - var/list/allowed_types = list() \ No newline at end of file + var/list/allowed_types = list() + +/obj/mecha/attackby(var/obj/item/weapon/W, var/mob/user) + if(istype(W, /obj/item/device/kit/paint)) + if(occupant) + user << "You can't customize a mech while someone is piloting it - that would be unsafe!" + return + + var/obj/item/device/kit/paint/P = W + var/found = null + + for(var/type in P.allowed_types) + if(type==src.initial_icon) + found = 1 + break + + if(!found) + user << "That kit isn't meant for use on this class of exosuit." + return + + user.visible_message("[user] opens [P] and spends some quality time customising [src].") + src.name = P.new_name + src.desc = P.new_desc + src.initial_icon = P.new_icon + if(P.new_icon_file) + src.icon = P.new_icon_file + src.reset_icon() + P.use(1, user) + return 1 + else + return ..() \ No newline at end of file diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 47821d6a24..79b1852e7b 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -92,12 +92,9 @@ /obj/item/weapon/storage/belt/medical/emt name = "EMT utility belt" desc = "A sturdy black webbing belt with attached pouches." - icon = 'icons/obj/custom_items.dmi' icon_state = "emsbelt" item_state = "emsbelt" - - /obj/item/weapon/storage/belt/security name = "security belt" desc = "Can hold security gear like handcuffs and flashes." diff --git a/code/game/objects/structures/coathanger.dm b/code/game/objects/structures/coathanger.dm index a54c40b755..decba4bfd3 100644 --- a/code/game/objects/structures/coathanger.dm +++ b/code/game/objects/structures/coathanger.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/coatrack.dmi' icon_state = "coatrack0" var/obj/item/clothing/suit/coat - var/list/allowed = list(/obj/item/clothing/suit/storage/labcoat, /obj/item/clothing/suit/storage/toggle/labcoat, /obj/item/clothing/suit/storage/det_suit) + var/list/allowed = list(/obj/item/clothing/suit/storage/toggle/labcoat, /obj/item/clothing/suit/storage/det_suit) /obj/structure/coatrack/attack_hand(mob/user as mob) user.visible_message("[user] takes [coat] off \the [src].", "You take [coat] off the \the [src]") diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm index eff194f545..b63869bccb 100644 --- a/code/modules/client/preferences_gear.dm +++ b/code/modules/client/preferences_gear.dm @@ -893,7 +893,7 @@ var/global/list/gear_datums = list() /datum/gear/toeless_jackboots display_name = "toe-less jackboots" - path = /obj/item/clothing/shoes/jackboots/fluff/kecer_eldraran + path = /obj/item/clothing/shoes/jackboots/unathi cost = 1 slot = slot_shoes diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 616d13e858..9fd713fc74 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -89,6 +89,13 @@ force = 3 siemens_coefficient = 0.7 +/obj/item/clothing/shoes/jackboots/unathi + name = "toe-less jackboots" + desc = "Modified pair of jackboots, particularly friendly to those species whose toes hold claws." + item_state = "digiboots" + icon_state = "digiboots" + species_restricted = null + /obj/item/clothing/shoes/cult name = "boots" desc = "A pair of boots worn by the followers of Nar-Sie." diff --git a/code/modules/customitems/item_spawning.dm b/code/modules/customitems/item_spawning.dm index a5024aee34..d8e7d5b07b 100644 --- a/code/modules/customitems/item_spawning.dm +++ b/code/modules/customitems/item_spawning.dm @@ -1,8 +1,19 @@ -//switch this out to use a database at some point -//list of ckey/ real_name and item paths -//gives item to specific people when they join if it can -//see config/custom_items.txt how to to add things to it (yes crazy idea i know) -//yes, it has to be an item, you can't pick up nonitems +// Switch this out to use a database at some point. Each ckey is +// associated with a list of custom item datums. When the character +// spawns, the list is checked and all appropriate datums are spawned. +// See config/example/custom_items.txt for a more detailed overview +// of how the config system works. + +// CUSTOM ITEM ICONS: +// Inventory icons must be in CUSTOM_ITEM_OBJ with state name [item_icon]. +// On-mob icons must be in CUSTOM_ITEM_MOB with state name [item_icon]. +// Inhands must be in CUSTOM_ITEM_MOB as [icon_state]_l and [icon_state]_r. + +// Kits must have mech icons in CUSTOM_ITEM_OBJ under [kit_icon]. +// Broken must be [kit_icon]-broken and open must be [kit_icon]-open. + +// Kits must also have hardsuit icons in CUSTOM_ITEM_MOB as [kit_icon]_suit +// and [kit_icon]_helmet, and in CUSTOM_ITEM_OBJ as [kit_icon]. /var/list/custom_items = list() @@ -33,9 +44,10 @@ if(item_desc) item.desc = item_desc if(item_icon) - item.icon = 'icons/obj/custom_items.dmi' - item.icon_override = 'icons/mob/custom_items.dmi' + item.icon = CUSTOM_ITEM_OBJ item.icon_state = item_icon + if(istype(item, /obj/item)) + item.icon_override = CUSTOM_ITEM_MOB // Kits are dumb so this is going to have to be hardcoded/snowflake. if(istype(item, /obj/item/device/kit)) @@ -43,23 +55,26 @@ K.new_name = kit_name K.new_desc = kit_desc K.new_icon = kit_icon + K.new_icon_file = CUSTOM_ITEM_OBJ if(istype(item, /obj/item/device/kit/paint)) var/obj/item/device/kit/paint/kit = item kit.allowed_types = text2list(additional_data, ", ") else if(istype(item, /obj/item/device/kit/suit)) var/obj/item/device/kit/suit/kit = item kit.new_light_overlay = additional_data + kit.new_mob_icon_file = CUSTOM_ITEM_MOB return item -//parses the config file into the above listlist -/hook/startup/proc/loadCustomItems() + +// Parses the config file into the custom_items list. +/hook/startup/proc/load_custom_items() var/datum/custom_item/current_data for(var/line in text2list(file2text("config/custom_items.txt"), "\n")) line = trim(line) - if(line == "" || !line || findtext(line, "#", 1, 2) || findtext(line, "}", 1, 2)) + if(line == "" || !line || findtext(line, "#", 1, 2)) continue if(findtext(line, "{", 1, 2) || findtext(line, "}", 1, 2)) // New block! @@ -91,12 +106,12 @@ if("item_name") current_data.name = field_data if("item_icon") - if(field_data in icon_states('icons/obj/custom_items.dmi')) + if(field_data in icon_states(CUSTOM_ITEM_OBJ)) current_data.item_icon = field_data if("item_desc") current_data.item_desc = field_data if("req_access") - current_data.req_access = field_data + current_data.req_access = text2num(field_data) if("req_titles") current_data.req_titles = text2list(field_data,", ") if("kit_name") @@ -110,9 +125,7 @@ return 1 //gets the relevant list for the key from the listlist if it exists, check to make sure they are meant to have it and then calls the giving function -/proc/EquipCustomItems(mob/living/carbon/human/M) - return - +/proc/equip_custom_items(mob/living/carbon/human/M) var/list/key_list = custom_items[M.ckey] if(!key_list || key_list.len < 1) return @@ -120,23 +133,25 @@ for(var/datum/custom_item/citem in key_list) // Check for requisite ckey and character name. - if(citem.assoc_key != M.ckey || citem.character_name != M.real_name) + if((lowertext(citem.assoc_key) != lowertext(M.ckey)) || (lowertext(citem.character_name) != lowertext(M.real_name))) continue // Check for required access. var/obj/item/weapon/card/id/current_id = M.wear_id - if(citem.req_access && !(istype(current_id) && (citem.req_access in current_id.access))) - continue + if(citem.req_access && citem.req_access > 0) + if(!(istype(current_id) && (citem.req_access in current_id.access))) + continue // Check for required job title. - var/has_title - var/current_title = M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role - for(var/title in citem.req_titles) - if(title == current_title) - has_title = 1 - break - if(!has_title) - continue + if(citem.req_titles && citem.req_titles.len > 0) + var/has_title + var/current_title = M.mind.role_alt_title ? M.mind.role_alt_title : M.mind.assigned_role + for(var/title in citem.req_titles) + if(title == current_title) + has_title = 1 + break + if(!has_title) + continue // ID cards and PDAs are applied directly to the existing object rather than spawned fresh. var/obj/item/existing_item @@ -150,7 +165,6 @@ citem.apply_to_item(existing_item) else place_custom_item(M,citem) - return // Places the item on the target mob. /proc/place_custom_item(mob/living/carbon/human/M, var/datum/custom_item/citem) @@ -173,4 +187,4 @@ newitem.loc = S return newitem newitem.loc = get_turf(M.loc) - return newitem \ No newline at end of file + return newitem diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index d7776fa18d..e17c0f49f8 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -468,7 +468,7 @@ var/global/list/damage_icon_parts = list() under_icon = w_uniform.item_icons[slot_w_uniform_str] else under_icon = INV_W_UNIFORM_DEF_ICON - + //determine state to use var/under_state if(w_uniform.item_state_slots && w_uniform.item_state_slots[slot_w_uniform_str]) @@ -480,7 +480,7 @@ var/global/list/damage_icon_parts = list() //need to append _s to the icon state for legacy compatibility var/image/standing = image(icon = under_icon, icon_state = "[under_state]_s") - + //apply blood overlay if(w_uniform.blood_DNA) var/image/bloodsies = image(icon = species.blood_mask, icon_state = "uniformblood") @@ -499,7 +499,7 @@ var/global/list/damage_icon_parts = list() overlays_standing[UNIFORM_LAYER] = null if(update_icons) - update_icons() + update_icons() /mob/living/carbon/human/update_inv_wear_id(var/update_icons=1) if(wear_id) @@ -754,7 +754,7 @@ var/global/list/damage_icon_parts = list() /mob/living/carbon/human/update_inv_back(var/update_icons=1) if(back) back.screen_loc = ui_back //TODO - + //determine the icon to use var/icon/overlay_icon if(back.icon_override) @@ -769,7 +769,7 @@ var/global/list/damage_icon_parts = list() overlay_icon = back.item_icons[slot_back_str] else overlay_icon = INV_BACK_DEF_ICON - + //determine state to use var/overlay_state if(back.item_state_slots && back.item_state_slots[slot_back_str]) @@ -778,13 +778,13 @@ var/global/list/damage_icon_parts = list() overlay_state = back.item_state else overlay_state = back.icon_state - + //create the image overlays_standing[BACK_LAYER] = image(icon = overlay_icon, icon_state = overlay_state) else overlays_standing[BACK_LAYER] = null - if(update_icons) + if(update_icons) update_icons() @@ -822,15 +822,6 @@ var/global/list/damage_icon_parts = list() if(r_hand) r_hand.screen_loc = ui_rhand //TODO - //determine icon to use - var/icon/t_icon - if(r_hand.icon_override) - t_icon = r_hand.icon_override - else if(r_hand.item_icons && (slot_r_hand_str in r_hand.item_icons)) - t_icon = r_hand.item_icons[slot_r_hand_str] - else - t_icon = INV_R_HAND_DEF_ICON - //determine icon state to use var/t_state if(r_hand.item_state_slots && r_hand.item_state_slots[slot_r_hand_str]) @@ -839,7 +830,17 @@ var/global/list/damage_icon_parts = list() t_state = r_hand.item_state else t_state = r_hand.icon_state - + + //determine icon to use + var/icon/t_icon + if(r_hand.icon_override) + t_state += "_r" + t_icon = r_hand.icon_override + else if(r_hand.item_icons && (slot_r_hand_str in r_hand.item_icons)) + t_icon = r_hand.item_icons[slot_r_hand_str] + else + t_icon = INV_R_HAND_DEF_ICON + overlays_standing[R_HAND_LAYER] = image(icon = t_icon, icon_state = t_state) if (handcuffed) drop_r_hand() //this should be moved out of icon code @@ -853,15 +854,6 @@ var/global/list/damage_icon_parts = list() if(l_hand) l_hand.screen_loc = ui_lhand //TODO - //determine icon to use - var/icon/t_icon - if(l_hand.icon_override) - t_icon = l_hand.icon_override - else if(l_hand.item_icons && (slot_l_hand_str in l_hand.item_icons)) - t_icon = l_hand.item_icons[slot_l_hand_str] - else - t_icon = INV_L_HAND_DEF_ICON - //determine icon state to use var/t_state if(l_hand.item_state_slots && l_hand.item_state_slots[slot_l_hand_str]) @@ -870,7 +862,17 @@ var/global/list/damage_icon_parts = list() t_state = l_hand.item_state else t_state = l_hand.icon_state - + + //determine icon to use + var/icon/t_icon + if(l_hand.icon_override) + t_state += "_l" + t_icon = l_hand.icon_override + else if(l_hand.item_icons && (slot_l_hand_str in l_hand.item_icons)) + t_icon = l_hand.item_icons[slot_l_hand_str] + else + t_icon = INV_L_HAND_DEF_ICON + overlays_standing[L_HAND_LAYER] = image(icon = t_icon, icon_state = t_state) if (handcuffed) drop_l_hand() //This probably should not be here diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index d233ecea40..6ca5caf174 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -311,7 +311,7 @@ var/mob/living/character = create_character() //creates the human and transfers vars and mind character = job_master.EquipRank(character, rank, 1) //equips the human UpdateFactionList(character) - EquipCustomItems(character) + equip_custom_items(character) // AIs don't need a spawnpoint, they must spawn at an empty core if(character.mind.assigned_role == "AI") diff --git a/code/modules/research/xenoarchaeology/misc.dm b/code/modules/research/xenoarchaeology/misc.dm index c66e57f3de..b2d8cef42c 100644 --- a/code/modules/research/xenoarchaeology/misc.dm +++ b/code/modules/research/xenoarchaeology/misc.dm @@ -73,7 +73,7 @@ ..() sleep(2) new /obj/item/clothing/under/rank/scientist(src) - new /obj/item/clothing/suit/storage/labcoat(src) + new /obj/item/clothing/suit/storage/toggle/labcoat(src) new /obj/item/clothing/shoes/white(src) new /obj/item/clothing/glasses/science(src) new /obj/item/device/radio/headset/headset_sci(src) diff --git a/code/setup.dm b/code/setup.dm index 654d9c8b70..82d89e277b 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -261,7 +261,7 @@ #define slot_legs 21 #define slot_tie 22 -// Inventory slot strings. +// Inventory slot strings. // since numbers cannot be used as associative list keys. #define slot_back_str "back" #define slot_l_hand_str "slot_l_hand" @@ -956,3 +956,12 @@ var/list/be_special_flags = list( #define LANGUAGE_GUTTER "Gutter" #define CLAMP01(x) max(0, min(1, x)) + +// Convoluted setup so defines can be supplied by Bay12 main server compile script. +// Should still work fine for people jamming the icons into their repo. +#ifndef CUSTOM_ITEM_OBJ +#define CUSTOM_ITEM_OBJ 'icons/obj/custom_items.dmi' +#endif +#ifndef CUSTOM_ITEM_MOB +#define CUSTOM_ITEM_MOB 'icons/mob/custom_items.dmi' +#endif \ No newline at end of file diff --git a/icons/mecha/mecha.dmi b/icons/mecha/mecha.dmi index a81afab57b953441893f3d48d512dae4b37dc7a5..b1f35226f829deb904c4c528f5978a6f9e0f4c50 100644 GIT binary patch literal 150214 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

cok`xhVr4^e(>%wRzG31GJ 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%0DM3&F%1thS$c7zw;x*aA9mE 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 V>{a9Kjv(Ndu9lHzsrtj0{|Ar?q=^6k literal 164822 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 diff --git a/icons/mob/custom_items.dmi b/icons/mob/custom_items.dmi index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..4e07b49bd7888de8102a0316de79501446447e42 100644 GIT binary patch literal 3773 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 literal 0 HcmV?d00001 diff --git a/icons/obj/clothing/shoes.dmi b/icons/obj/clothing/shoes.dmi index 50981432711c02323b2812f28590c28a4b66130c..f6512b0d440563b7accdf48a603984131052e63d 100644 GIT binary patch literal 15301 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 F|1TKy+&=&S diff --git a/icons/obj/custom_items.dmi b/icons/obj/custom_items.dmi index f69c02c71d81f969dcf8fe3e3417e919a337aaf8..ab385ae164390de35077f8c64fea1e346cb5a372 100644 GIT binary patch literal 576 zcmV-G0>Axw<1t^U1W{+<@>xNiQH0NV=-0C=2JR&a84_w-Y6@%7{?OD!tS%+FJ>RWQ*r;NmRLOex6# za*U0*I5Sc+(=$pSoZ^zil2jm5sW>sGEHOPbzPL2AM2U+tC9|j)C~U~ZnO2mTn+joL zD9%XD$xX$nTv@@@&jsul03hEhaqD~RkN^My5=lfsR7i>KlihB^APj}=;1mPfx-}$e zDDVHAGcaivgK4pL*&_u)#QE?K0eI>^g`)3C;h)SzVkVhYg!wX2(==O!pWUU|4bhCO z0I+kW_zhXh=K+$uAWT6Jv!aeDg>y}_tE;mBgW!EA^1iOl0wjZ%S2w?1-|a`q;g`L) zrSp-QqeLK+L=bsU#kJ_R^Z{{0BR!A@xA+6Fws9AA{Qz-;5KwLbh5%dap1s~h`?8L5 z^R9vAQpER6mS(pbyi9@3h6!rkMF?Ose|JyfGk+j{fiYKw-}g6 z4e*G*4O&2HfFE?>4@%DA10LvHQu;Ax0?HY6gq(9q5Q>G_-h O0000H-u1 literal 59311 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 From 088aa953ef3cfeb9757dc56e8d1b80706ab6293c Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 21:36:53 +0930 Subject: [PATCH 024/199] Cleanup of testing sprites and custom item defines. --- config/example/custom_items.txt | 34 +++++++++++++++++++++----------- icons/mob/custom_items.dmi | Bin 3773 -> 0 bytes icons/obj/custom_items.dmi | Bin 576 -> 0 bytes 3 files changed, 23 insertions(+), 11 deletions(-) diff --git a/config/example/custom_items.txt b/config/example/custom_items.txt index e4bf80e29c..79fb05a4c1 100644 --- a/config/example/custom_items.txt +++ b/config/example/custom_items.txt @@ -15,15 +15,27 @@ # req_titles: Assistant, Security Officer # req_access: 1 # } +# +# { +# ckey: zuhayr +# character_name: Jane Doe +# item_path: /obj/item/device/kit/paint +# item_name: APLU customisation kit +# item_desc: A customisation kit with all the parts needed to turn an APLU into a "Titan's Fist" model. +# kit_name: APLU "Titan's Fist" +# kit_desc: Looks like an overworked, under-maintained Ripley with some horrific damage. +# kit_icon: titan +# additional_data: ripley, firefighter +# } +# +# { +# ckey: zuhayr +# character_name: Jane Doe +# item_path: /obj/item/device/kit/suit +# item_name: salvage suit customisation kit +# item_desc: A customisation kit with all the parts needed to convert a suit. +# kit_name: salvage +# kit_desc: An orange voidsuit. Reinforced! +# kit_icon: salvage +# } ## - -{ -ckey: zuhayr -character_name: Jane Doe -item_path: /obj/item/toy/plushie -item_name: ugly plush toy -item_icon: flagmask -item_desc: It's truly hideous. -req_titles: Assistant, Security Officer -req_access: 1 -} diff --git a/icons/mob/custom_items.dmi b/icons/mob/custom_items.dmi index 4e07b49bd7888de8102a0316de79501446447e42..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 3773 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 diff --git a/icons/obj/custom_items.dmi b/icons/obj/custom_items.dmi index ab385ae164390de35077f8c64fea1e346cb5a372..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 576 zcmV-G0>Axw<1t^U1W{+<@>xNiQH0NV=-0C=2JR&a84_w-Y6@%7{?OD!tS%+FJ>RWQ*r;NmRLOex6# za*U0*I5Sc+(=$pSoZ^zil2jm5sW>sGEHOPbzPL2AM2U+tC9|j)C~U~ZnO2mTn+joL zD9%XD$xX$nTv@@@&jsul03hEhaqD~RkN^My5=lfsR7i>KlihB^APj}=;1mPfx-}$e zDDVHAGcaivgK4pL*&_u)#QE?K0eI>^g`)3C;h)SzVkVhYg!wX2(==O!pWUU|4bhCO z0I+kW_zhXh=K+$uAWT6Jv!aeDg>y}_tE;mBgW!EA^1iOl0wjZ%S2w?1-|a`q;g`L) zrSp-QqeLK+L=bsU#kJ_R^Z{{0BR!A@xA+6Fws9AA{Qz-;5KwLbh5%dap1s~h`?8L5 z^R9vAQpER6mS(pbyi9@3h6!rkMF?Ose|JyfGk+j{fiYKw-}g6 z4e*G*4O&2HfFE?>4@%DA10LvHQu;Ax0?HY6gq(9q5Q>G_-h O0000H-u1 From da7bfd137b3754b72ed774d28aa4c68ea66fe9ab Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 21:39:46 +0930 Subject: [PATCH 025/199] Renaming custom item icon files. --- code/setup.dm | 4 ++-- icons/mob/{custom_items.dmi => custom_items_mob.dmi} | 0 icons/obj/{custom_items.dmi => custom_items_obj.dmi} | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename icons/mob/{custom_items.dmi => custom_items_mob.dmi} (100%) rename icons/obj/{custom_items.dmi => custom_items_obj.dmi} (100%) diff --git a/code/setup.dm b/code/setup.dm index 82d89e277b..14f924a9c5 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -960,8 +960,8 @@ var/list/be_special_flags = list( // Convoluted setup so defines can be supplied by Bay12 main server compile script. // Should still work fine for people jamming the icons into their repo. #ifndef CUSTOM_ITEM_OBJ -#define CUSTOM_ITEM_OBJ 'icons/obj/custom_items.dmi' +#define CUSTOM_ITEM_OBJ 'icons/obj/custom_items_obj.dmi' #endif #ifndef CUSTOM_ITEM_MOB -#define CUSTOM_ITEM_MOB 'icons/mob/custom_items.dmi' +#define CUSTOM_ITEM_MOB 'icons/mob/custom_items_mob.dmi' #endif \ No newline at end of file diff --git a/icons/mob/custom_items.dmi b/icons/mob/custom_items_mob.dmi similarity index 100% rename from icons/mob/custom_items.dmi rename to icons/mob/custom_items_mob.dmi diff --git a/icons/obj/custom_items.dmi b/icons/obj/custom_items_obj.dmi similarity index 100% rename from icons/obj/custom_items.dmi rename to icons/obj/custom_items_obj.dmi From 6bede8152389462ef356841259d3544404d4cb7c Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Tue, 12 May 2015 14:24:27 +0200 Subject: [PATCH 026/199] Map cleaning. Fixes some issues with windoor definitions. Cleans up windoor usage. Fixes #9194, making it more evident where the disposal unit sends its goods. --- code/game/machinery/doors/windowdoor.dm | 7 +- maps/exodus-1.dmm | 89 +++++++++++++------------ 2 files changed, 49 insertions(+), 47 deletions(-) diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index b91270ad60..d693f848eb 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -7,7 +7,7 @@ min_force = 4 hitsound = 'sound/effects/Glasshit.ogg' maxhealth = 150 //If you change this, consiter changing ../door/window/brigdoor/ health at the bottom of this .dm file - health + health = 150 visible = 0.0 use_power = 0 flags = ON_BORDER @@ -249,13 +249,14 @@ /obj/machinery/door/window/brigdoor - name = "Secure Door" + name = "secure door" icon = 'icons/obj/doors/windoor.dmi' icon_state = "leftsecure" base_state = "leftsecure" req_access = list(access_security) var/id = null - health = 300.0 //Stronger doors for prison (regular window door health is 200) + maxhealth = 300 + health = 300.0 //Stronger doors for prison (regular window door health is 150) /obj/machinery/door/window/northleft diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index dc6ed0e670..f90849cbe7 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -625,7 +625,7 @@ "ama" = (/obj/structure/table,/obj/item/device/t_scanner,/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"},/area/maintenance/security_starboard) "amb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/brig) "amc" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/stool,/turf/simulated/floor/carpet,/area/security/detectives_office) -"amd" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/southright{base_state = "left"; dir = 4; icon_state = "left"},/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/security/lobby) +"amd" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/door/window/eastleft,/turf/simulated/floor,/area/security/lobby) "ame" = (/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/lobby) "amf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/lobby) "amg" = (/turf/simulated/floor,/area/security/lobby) @@ -666,7 +666,7 @@ "amP" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the brig foyer."; id = "BrigFoyer"; name = "Brig Foyer Doors"; pixel_x = 28; pixel_y = -15},/turf/simulated/floor,/area/security/brig) "amQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Big Brother is watching."; name = "Brig Monitor"; network = list("Prison"); pixel_x = -3; pixel_y = -33},/turf/simulated/floor,/area/security/brig) "amR" = (/obj/machinery/flasher{id = "Cell 3"; pixel_x = -28; pixel_y = 0},/obj/structure/bed,/turf/simulated/floor{icon_state = "red"},/area/security/prison) -"amS" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/southright{dir = 4},/obj/structure/table/reinforced,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/security/lobby) +"amS" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/table/reinforced,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/door/window/eastright,/turf/simulated/floor,/area/security/lobby) "amT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/lobby) "amU" = (/obj/structure/disposalpipe/segment,/obj/structure/table/woodentable,/obj/machinery/button/remote/airlock{id = "detdoor"; name = "Office Door"},/obj/item/clothing/glasses/sunglasses,/turf/simulated/floor/carpet,/area/security/detectives_office) "amV" = (/obj/structure/table/reinforced,/obj/item/weapon/folder{pixel_x = -4},/obj/item/weapon/folder/red{pixel_y = 3},/obj/item/weapon/folder/blue{pixel_x = 5},/obj/item/weapon/folder/yellow,/obj/item/weapon/stamp/internalaffairs,/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) @@ -691,11 +691,11 @@ "ano" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Big Brother is watching."; name = "Brig Monitor"; network = list("Prison"); pixel_x = 3; pixel_y = -33},/obj/machinery/computer/station_alert/security,/turf/simulated/floor,/area/security/brig) "anp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/button/flasher{id = "permflash"; name = "Brig flashes"; pixel_x = -6; pixel_y = -24; req_access = list(2); tag = "permflash"},/obj/machinery/button/remote/blast_door{id = "brigobs"; name = "observation shutters"; pixel_x = 6; pixel_y = -24},/obj/machinery/button/remote/blast_door{id = "Secure Gate"; name = "Brig Lockdown"; pixel_x = -26; pixel_y = -4; req_access = list(2)},/turf/simulated/floor,/area/security/brig) "anq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) -"anr" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet,/turf/simulated/wall,/area/security/prison) +"anr" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) "ans" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) "ant" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/brig) "anu" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) -"anv" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/security/prison) +"anv" = (/obj/machinery/door_timer/cell_6{id = "Cell 2"; name = "Cell 2"; pixel_x = 32},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/brig) "anw" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) "anx" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "lawyer_blast"; name = "Privacy Shutters"; opacity = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/lawoffice) "any" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/security/prison) @@ -729,23 +729,23 @@ "aoa" = (/obj/structure/closet/crate,/obj/item/weapon/tank/emergency_oxygen/engi,/obj/item/weapon/tank/emergency_oxygen/double,/obj/effect/decal/cleanable/cobweb2,/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/evahallway) "aob" = (/obj/structure/table,/obj/item/weapon/pen,/obj/item/weapon/paper,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/security/brig) "aoc" = (/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes/buildable{charge = 0; RCon_tag = "Substation - Security"},/turf/simulated/floor/plating,/area/maintenance/substation/security) -"aod" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) +"aod" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/prison) "aoe" = (/obj/machinery/computer/security/wooden_tv,/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "aof" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "EVA\\Security Maintenance"},/turf/simulated/floor/plating,/area/maintenance/security_port) "aog" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/security/prison) -"aoh" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) +"aoh" = (/obj/machinery/door/blast/regular{dir = 1; id = "Cell 3"; name = "Cell Door"},/turf/simulated/floor,/area/security/prison) "aoi" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) -"aoj" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/wall,/area/security/brig) +"aoj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) "aok" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/prison) "aol" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/security/prison) -"aom" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/southleft,/turf/simulated/floor,/area/security/prison) +"aom" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison) "aon" = (/turf/simulated/floor,/area/security/prison) "aoo" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/prison) "aop" = (/obj/item/device/radio/intercom{desc = "Talk... listen through this."; name = "Station Intercom (Brig Radio)"; pixel_x = 0; pixel_y = 26; wires = 7},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aoq" = (/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/security/prison) "aor" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"aos" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/door_timer/cell_6{id = "Cell 2"; name = "Cell 2"; pixel_x = 32},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/brig) -"aot" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/prison) +"aos" = (/obj/machinery/door/airlock/glass_security{id_tag = "prisonentry"; name = "Brig Entry"; req_access = list(2)},/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/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{icon_state = "red"; dir = 4},/area/security/prison) +"aot" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "brigobs"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) "aou" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/lobby) "aov" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/lobby) "aow" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/lobby) @@ -754,25 +754,25 @@ "aoz" = (/obj/structure/window/basic{dir = 1},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aoA" = (/obj/structure/window/basic{dir = 1},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aoB" = (/obj/structure/window/basic{dir = 1},/obj/machinery/photocopier,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) -"aoC" = (/obj/machinery/door/blast/regular{dir = 1; id = "Cell 3"; name = "Cell Door"},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/security/prison) +"aoC" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "brigobs"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/security/prison) "aoD" = (/obj/structure/window/basic{dir = 1},/obj/structure/filingcabinet/chestdrawer,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aoE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/basic{dir = 1},/obj/structure/filingcabinet/security{desc = "A large cabinet with hard copy security records."; name = "Security Records"},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aoF" = (/obj/machinery/newscaster{pixel_x = 28; pixel_y = 1},/obj/structure/window/basic{dir = 1},/obj/structure/filingcabinet/medical{desc = "A large cabinet with hard copy medical records."; name = "Medical Records"},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) -"aoG" = (/obj/machinery/door/airlock/glass_security{id_tag = "prisonentry"; name = "Brig Entry"; req_access = list(2)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/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{icon_state = "red"; dir = 4},/area/security/prison) +"aoG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "brigobs"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/security/prison) "aoH" = (/turf/simulated/wall,/area/maintenance/dormitory) "aoI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/dormitory) "aoJ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/dormitory) "aoK" = (/turf/simulated/floor/plating,/area/maintenance/dormitory) "aoL" = (/turf/simulated/floor/plating/airless,/area/maintenance/dormitory) -"aoM" = (/obj/machinery/door/blast/regular{id = "Cell 2"; name = "Cell Door"},/turf/simulated/floor,/area/security/prison) +"aoM" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) "aoN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/prison) "aoO" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) "aoP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/airlock/engineering{name = "Security Substation"; req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/substation/security) -"aoQ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) -"aoR" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison) -"aoS" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "brigobs"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) -"aoT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "brigobs"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison) -"aoU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "brigobs"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison) +"aoQ" = (/obj/structure/disposaloutlet{dir = 8},/obj/structure/window/reinforced,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/prison) +"aoR" = (/obj/structure/window/reinforced,/obj/machinery/door/window/westright,/turf/simulated/floor{dir = 8; icon_state = "loadingarea"},/area/security/prison) +"aoS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/window/northleft{name = "Forensics Area"},/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/security/detectives_office) +"aoT" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/simulated/floor,/area/security/brig) +"aoU" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/window/brigdoor{dir = 4; id = "Cell 2"; name = "Cell 2"; req_access = list(2)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/security/brig) "aoV" = (/obj/structure/cable/yellow,/turf/simulated/floor/plating/airless,/area/solar/auxport) "aoW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "lawyer_blast"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/lawoffice) "aoX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/auxport) @@ -782,14 +782,14 @@ "apb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/evahallway) "apc" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/security/brig) "apd" = (/obj/machinery/button/remote/blast_door{id = "Cell 2"; name = "Cell 2 Door"; pixel_x = 30; pixel_y = 1; req_access = list(2)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/brig) -"ape" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor,/area/security/brig) -"apf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor,/area/security/brig) +"ape" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/security/brig) +"apf" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/prison) "apg" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/fore) "aph" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"api" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/prison) +"api" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "apj" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating/airless,/area/solar/fore) "apk" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/prison) -"apl" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/security/prison) +"apl" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/security/prison) "apm" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/security/prison) "apn" = (/obj/machinery/flasher{id = "permflash"; name = "Floor mounted flash"; pixel_x = 0},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/prison) "apo" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor,/area/security/prison) @@ -846,7 +846,7 @@ "aqn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aqo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aqp" = (/obj/structure/bed/chair,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor,/area/security/prison) -"aqq" = (/obj/machinery/door/window/westleft{dir = 1; name = "Forensics Area"; req_access = list(4)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/security/detectives_office) +"aqq" = (/obj/machinery/door/blast/regular{id = "Cell 2"; name = "Cell Door"},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/security/prison) "aqr" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/dormitory) "aqs" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/dormitory) "aqt" = (/obj/structure/table/gamblingtable,/turf/simulated/floor/wood,/area/maintenance/dormitory) @@ -879,7 +879,7 @@ "aqU" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "aqV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "aqW" = (/obj/structure/disposalpipe/segment,/obj/structure/bed/chair/office/light{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) -"aqX" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/window/brigdoor{dir = 4; id = "Cell 2"; name = "Cell 2"; req_access = list(2)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/brig) +"aqX" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/security/prison) "aqY" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = -30},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aqZ" = (/obj/structure/closet{name = "Evidence Closet"},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/evidence,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "ara" = (/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "lawyer_blast"; name = "Privacy Shutters"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/eastright{base_state = "left"; dir = 4; icon_state = "left"; name = "Internal Affairs Desk"; req_access = list(38)},/turf/simulated/floor,/area/lawoffice) @@ -2028,7 +2028,7 @@ "aMZ" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aNa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "aNb" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) -"aNc" = (/obj/structure/closet/coffin,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "chapel"; name = "Privacy Shutters"; opacity = 0},/obj/machinery/door/window/eastleft{dir = 8; name = "Coffin Storage"; req_access = list(22)},/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) +"aNc" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/turf/simulated/floor,/area/security/prison) "aNd" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aNe" = (/obj/structure/table,/obj/machinery/light/small,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) "aNf" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/chapel/main) @@ -2614,7 +2614,7 @@ "aYn" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/bridge) "aYo" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/bridge) "aYp" = (/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"aYq" = (/obj/machinery/door/window/northright{base_state = "right"; dir = 8; icon_state = "right"; name = "Library Desk Door"; req_access = list(37)},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/wood,/area/library) +"aYq" = (/obj/structure/closet/coffin,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "chapel"; name = "Privacy Shutters"; opacity = 0},/obj/machinery/door/window/westleft{name = "Coffin Storage"},/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) "aYr" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 1; id = "office_shutter"; layer = 3.1; name = "Office Shutters"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/starboard) "aYs" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) "aYt" = (/obj/structure/bed/chair/comfy/black{dir = 8},/turf/simulated/floor/wood,/area/library) @@ -3242,7 +3242,7 @@ "bkr" = (/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor,/area/hallway/primary/starboard) "bks" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/hallway/primary/starboard) "bkt" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/hallway/primary/starboard) -"bku" = (/turf/simulated/floor{dir = 8; icon_state = "whitecorner"},/area/hallway/primary/starboard) +"bku" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/door/window/westright{name = "Library Desk Door"},/turf/simulated/floor/wood,/area/library) "bkv" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor,/area/hallway/primary/starboard) "bkw" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/simulated/floor,/area/hallway/primary/starboard) "bkx" = (/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Warehouse"; dir = 8},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) @@ -3273,7 +3273,7 @@ "bkW" = (/obj/structure/disposalpipe/segment{dir = 4},/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/plating,/area/maintenance/locker) "bkX" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Central - East"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/central_two) "bkY" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Starboard - West"; dir = 1},/turf/simulated/floor{icon_state = "bluecorner"},/area/hallway/primary/starboard) -"bkZ" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Starboard - Central"; dir = 1},/turf/simulated/floor,/area/hallway/primary/starboard) +"bkZ" = (/obj/machinery/light,/turf/simulated/floor{dir = 8; icon_state = "whitecorner"},/area/hallway/primary/starboard) "bla" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/locker) "blb" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/locker) "blc" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) @@ -3552,7 +3552,7 @@ "bqp" = (/turf/simulated/floor/plating/airless,/area/rnd/xenobiology) "bqq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/extinguisher,/obj/item/weapon/extinguisher,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bqr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/substation/command) -"bqs" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/window/eastright{dir = 8; name = "Chemistry Desk"; req_access = list(33)},/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "chemcounter"; name = "Pharmacy Counter Shutters"; opacity = 0},/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/medical/chemistry) +"bqs" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Starboard - Central"; dir = 1},/obj/machinery/light,/turf/simulated/floor,/area/hallway/primary/starboard) "bqt" = (/obj/machinery/button/remote/blast_door{dir = 2; id = "Skynet_launch"; name = "Mech Bay Door Control"; pixel_x = 6; pixel_y = 24},/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/assembly/chargebay) "bqu" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating/airless,/area/rnd/xenobiology) "bqv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating,/area/maintenance/substation/command) @@ -4781,7 +4781,7 @@ "bNW" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "misclab"; name = "Test Chamber Blast Doors"; opacity = 0},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "white"},/area/rnd/misc_lab) "bNX" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Janitor"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/janitor) "bNY" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/machinery/sleeper,/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/sleeper) -"bNZ" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/window/westleft{dir = 8; name = "Server Room"; opacity = 1; req_access = list(30)},/obj/machinery/door/window/westleft{dir = 4; name = "Server Room"; opacity = 1; req_access = list(30)},/turf/simulated/floor{icon_state = "dark"},/area/server) +"bNZ" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "chemcounter"; name = "Pharmacy Counter Shutters"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/window/westright{name = "Chemistry Desk"},/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/medical/chemistry) "bOa" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bOb" = (/obj/structure/bed/chair/office/light,/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/server) "bOc" = (/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},/obj/machinery/door/airlock/command{name = "Research Director"; req_access = list(30)},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/rnd/research) @@ -4885,7 +4885,7 @@ "bPW" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whitehall"},/area/rnd/research) "bPX" = (/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera/network/security{c_tag = "Custodial Closet"},/turf/simulated/floor,/area/janitor) "bPY" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) -"bPZ" = (/obj/machinery/door/window/westleft{name = "Janitoral Delivery"; req_access = list(26)},/turf/simulated/floor{icon_state = "delivery"},/area/janitor) +"bPZ" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/window/westleft{dir = 8; name = "Server Room"; opacity = 1; req_access = list(30)},/obj/machinery/door/window/eastleft{name = "Server Room"},/turf/simulated/floor{icon_state = "dark"},/area/server) "bQa" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bQb" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "CMO's Office"; req_access = list(40)},/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bQc" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "CMO's Office"; req_access = list(40)},/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{icon_state = "white"},/area/crew_quarters/heads/cmo) @@ -6347,7 +6347,7 @@ "csc" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Operating Theatre 1 Storage"; req_access = list(45)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "csd" = (/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/structure/table,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera/network/medbay{c_tag = "Medbay Surgery Prep"; dir = 8},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) "cse" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Operating Theatre 2 Storage"; req_access = list(45)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) -"csf" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access = list(55)},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/xenobiology) +"csf" = (/obj/machinery/door/window/westright{name = "Janitoral Delivery"},/turf/simulated/floor{icon_state = "delivery"},/area/janitor) "csg" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio3"; name = "Containment Blast Doors"; opacity = 0},/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access = list(55)},/turf/simulated/floor/engine,/area/rnd/xenobiology) "csh" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/engineering/atmos/monitoring) "csi" = (/obj/machinery/door/airlock/research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "xeno_airlock_interior"; locked = 1; name = "Xenobiology Internal Airlock"; req_access = list(55)},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/purple,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) @@ -7380,6 +7380,7 @@ "cLV" = (/obj/item/frame/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) "cLW" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "engineering_shuttle"; pixel_x = 0; pixel_y = 25; req_one_access = list(13,11,24); tag_door = "engineering_shuttle_hatch"},/obj/structure/bed/chair{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/station) "cLX" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/station) +"cLY" = (/obj/machinery/door/window/eastleft{name = "Containment Pen"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/xenobiology) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7470,9 +7471,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaaaaaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWalcaldalZalQagWalgalhahLalialjagWacTamoacTagWabVamsabUagWalpamuamtalsagDaltaluamxalwamyagWabTabSabSabRagWalBamcalDalEalFalGalHakoamAanQamDanQanQaaaaaaaafaafaaaaaaaaaaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqaaaaaaaafaafaafaaaaaaaoYaafaafaaaaafaafaaaaaaaamaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafabMaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafabfadEamEalMalMamHamFamMamJalRahKalSaljagWalTalUalValWalXalYamNamOahKambahKamPamdameameamfamgamhamiamjamkamlammakoamnamUampamqalDalDamrakoadQanQamvawKamwaaaaaaaaLaaaaaaaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaamaaIaaIaaaaaaaaaaoXaaaaaaaaaaaIaaIaamaamaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWamWamBamCamZagWankalRaljanlamGagWamRamIanmalWamKamLannanpanoanPamQanaamSamgamgamfamgamTaoWamVanfamXanhakoaoeanWalDamqalDalDanbakoancandaneaocangaafaaLaafaafaaLaafaafaafakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafaaaaaaaaaaoVaafaafaaaaafaafaaaaaaaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaofagWagWagWagWagWagWaohaosaojaojaojaojaotaoCaotanraoQaoGaoRanvaoSaoTaoUanzanAamgamgamfanBanCamianDanEamXanFanGanHanIanJanKanLanManNanGanOaoPapqanRanSaaaaaaaafaaaaafaaLaafaacakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanXanYanZaoaagDaobaoZagWaodapdalKaogappaoiapDaokaolaomaonaooaonaopaoqaoraonaoOapHamgamgaouaovaowamiaoxaqgamXaoyanGaozaoAaoBaqqaoDaoEaoFanGaqCanQanQanQanQaoIaoJaoHaoLaqJaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalJaaaaaaaaaaafaaaaaaaaaaamaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaaaaaaaacaaaaaaaaaanXanXapaapbagDalMapcaqPapeapfaqXaphapiaoMaonaonapkaplaonapmapnaoraonapoaonaoNapEapramgamfamgamTaraamYanEamXaptanGapuapvapwapxapyapzapAanGapBaoHapCapLapGapFapPaoHaoHarjaoHaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafaaaaaaaaaaoVaafaafaaaaafaafaaaaaaaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaofagWagWagWagWagWagWanranvagWagWagWagWaodaohaodalWaojaosaomalWaotaoGaoCanzanAamgamgamfanBanCamianDanEamXanFanGanHanIanJanKanLanManNanGanOaoPapqanRanSaaaaaaaafaaaaafaaLaafaacakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanXanYanZaoaagDaobaoZagWaoMapdalKaogappaoiapDaokaolaonaonaooaonaopaoqaoRaoQaoOapHamgamgaouaovaowamiaoxaqgamXaoyanGaozaoAaoBaoSaoDaoEaoFanGaqCanQanQanQanQaoIaoJaoHaoLaqJaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalJaaaaaaaaaaafaaaaaaaaaaamaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaaaaaaaacaaaaaaaaaanXanXapaapbagDalMapcaqPaoTapeaoUapiapfaqqaplaplaqXaNcaonapmapnaoraonapoaonaoNapEapramgamfamgamTaraamYanEamXaptanGapuapvapwapxapyapzapAanGapBaoHapCapLapGapFapPaoHaoHarjaoHaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapJapJapJapJapJaafalkaafapJapJapJapJapJaafaaIaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaapKapaapbagDapUapMagWalgapNalKapOapVapQapRaokapSaqmaqcaqpapWapXapYapZaqaanUaqNaqdaovaqeaovaqfarnaqhaqiaqjaqkanGaqlaqWapyaqnaqoarlaqoaroaqraqsapFaqtaquapFaqvaoHaqwaqxaqyaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalkaaaaaaaaaaafaaaaaaaaaaaqaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqAaqBagDagWagWagWarvalRagWalWalWalWaqDaqEapkaqFaqGaqHaonaqIarwaqKaqLanyarMaqOaryaqQaqRaqSanxaqUaqVarQamVanGarzaqYaqZarCarbarcardanGarearfapFaqtaqtapFargaoHarhariarFaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaaaaaaaaaabgaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaqzarkaqBagDaobarHagWarmarOalKaogarPaoiaokarparqarrarsartaonarualWarZarSarxalLasnarAasBamzasOarEasRarGasWamjanGanGarIanGanGanGanGanGanGarJarKarLasaasaapFarNaoHaoHasXaoHaoHaaaaaaakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaaaalJaaaaaaaaaaafaaaaaaaaaaamaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7493,14 +7494,14 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaDIaDNaDJaFkawiaFlaFmbIraFoaFpbHfaFlawnaFraFsaFtaDPayuaBLaFvayxaBMaCxaBMaBNaGravHaFuaGxaFxaGHaFzaDfaGPaFJaFKaFLaFLaFLaDraFLaFLaFNaFOaCMaaaaBYaDtaElaFQaEnaFRaBYaaaazJazOazPaGVaFTaFUaFTaFVazPazQaFWayLayLayLayLaFXaCfaCgazTaCfaFYaHIazTaGaarAaGbaGcaGdarEaAiaDeaDvaDuaCoaDeaHJaDzaHYaGlaGmaBjaBjaBjaBjaBjaBjaGnaGoaGpaIcaDpaIkaIhaDsaDsaDsaDsaDsaDsaDsaDsaDsaFaaFbaDsaDsaFaaGtaDsaDsaaaaaaaDCaDCaDCaDCaDCaEZaEWaFdaFcaFwaDCaDCaDCaDCaDCaGDaGEaGFaGFaGFaGFaGFaGFaGGaGGaIlaGGaGGaGGaGGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaFraGIaFyaGKaFlaFMaFlaFMaFlaFMaFlaFMaFlaGMaGNaGOaDPayuaBLaInaFAaGRaGSaGTaGUaCEaFBaFDaFCaFCaFCbazaIzaFCaHcaFLaFLaFLaFLaFLaFLaFLaFNaHdaCMaafaBYaHeaHfaHgaHhaHiaBYaafazJazOazPaHjaFPaFUaHlaHmazPaHnaHoayLaHpazTaARaHqaATaHrazTaCfaFYaHsazTaHtarAaHuaHvaHwarEaGuaIDaEUaGvaDwaIIaGzaGjatEaHCaHDaBjaHEaBjaHFaBjaHGaBjaHHaGpaIZaDpaJsaJjaHLaHMaHMaHNaHOaHKaHKaHKaHKaHKaHPaHKaHKaHKaHQaHVaDsaDsaDsaDCaGBaGAaGCaGCaGLaGJaDCaDCaJwaDCaIdaIeaIfaIgaGFaJBaGFaIiaIjaJHaKjbinaKlaIoaIpaIqaKHaIsbjFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaIwaFlaFlaDKaFlaFMaFlaFMaIxaFMaIyaFMaFlaGMaGNaGOaDPaFFaIAaIAaKMaICaKPaICaIAaIAaIEaIFaFCaGQaFHaGWaHkaFCaIKaILaIMaFLaFLaHRaFLaIOaIPaIKaCMaaaaBYaBYaIQaHSaIQaBYaBYaaaazJazOazPaISaITaIUaFTaIVazPaIWaIXayLaIYazTaKQaEwaCfaJaaEyaATaJbaJcazTaJdaJeaJfaJgaJhaMbaKVaCuaCuaCuaCuaCuaHUaHTaJlaJmaJnaBjaJoaBjaJpaBjaJqaBjaJraGpaKXaJtaGsaGsaDqaJvaDsaDsaKYaDsaDsaJxaDsaGsaJyaGsaGsaGsaJzaHZaHXaHWaIaaLcaIraIbaIbaIbaIRaINaIgaJIaJJaLdaJkaJMaJNaIgaJOaJPaGFaJQaJAaJSaJTbinaJUaIoaJVaLeaGGaGGaGGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaFraJXaFyaGKaFlaFMaFlaFMaFlaFMaFlaFMaFlaGMaGNaGOaDPaGYaGXaHaaGZaHbaHbaIBaLiaIHaIGaIJaLkaJZaJYaJGaKaaFCaIKaKmaKnaKoaKpaIKaKqaKraKsaKtaKuaaaaafaaaaKvaKwaKvaaaaafaaaaKuazOazPaKxaKyaKzaKAaKBazPaKCaKDayLaKEazTaARaKFaKGaHrazTaLmaKIaKJaKKaKLaJeaEDaKNaKOaLYaEEaKRaaaaaaaJlaKSaJKaMcaJlaJLaJnaJnaJnaKWaJnaJnaJnaBjaDpaMvaDpaDpaDpaDpaMwaDpaKZaLaaLbaMEaMVaMFaLfaLgaLhaLfaLfaLfaLfaLfaMXaLfaLfaLfaLfaLfaLfaLfaLfaJRaIgaLjaJWaLlaEFaKbaLoaIgaLpaKTaGFaLraLsaLtaJTaNcaJUaIoaJVaIoaKUaLwaLxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaFraJXaFyaGKaFlaFMaFlaFMaFlaFMaFlaFMaFlaGMaGNaGOaDPaGYaGXaHaaGZaHbaHbaIBaLiaIHaIGaIJaLkaJZaJYaJGaKaaFCaIKaKmaKnaKoaKpaIKaKqaKraKsaKtaKuaaaaafaaaaKvaKwaKvaaaaafaaaaKuazOazPaKxaKyaKzaKAaKBazPaKCaKDayLaKEazTaARaKFaKGaHrazTaLmaKIaKJaKKaKLaJeaEDaKNaKOaLYaEEaKRaaaaaaaJlaKSaJKaMcaJlaJLaJnaJnaJnaKWaJnaJnaJnaBjaDpaMvaDpaDpaDpaDpaMwaDpaKZaLaaLbaMEaMVaMFaLfaLgaLhaLfaLfaLfaLfaLfaMXaLfaLfaLfaLfaLfaLfaLfaLfaJRaIgaLjaJWaLlaEFaKbaLoaIgaLpaKTaGFaLraLsaLtaJTaYqaJUaIoaJVaIoaKUaLwaLxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaLyaLzaDJaFkawiaFlaFlaFqaFlaFlaFnaFlawnaFraLCaLDaDPaLEaLFaLGaLHaLGaLGaLGaLGaLGaLIaLJaFCaFCaFCaFCaFCaFCaLLaLMaLNaLOaLOaLOaLOaLPaLQaLRaKuaLSaLTaLTaLUaLVaLWaLTaLTaLXaKuaNAaKuaKuaLZaMaaLZaJeaJeaMbaNGaJeaJeaJeaJeaMdaMeaNXaNPaMhaMiaJeaJeaJeaJeaMjaKNaMkaMkaMlaMmaMnaMoaJlaMpaLqaLnaJlaJlaJlaJlaJlaJlaJlaJlaBjaBjaMsaMtaMuaOiaOoaLvaMyaMfaKZaMAaMBaMCaMCaMDaLfaOpaOqaMGaMHaMIaMJaMKaMLaMMaMNaMHaMJaMIaMHaMOaLfaJRaIgaMPaMgaMRaMSaMqaMUaIgaOsaMWaOCaMYaMraNaaNbaGFaGGaOHaJVaIoaMxaNeaNfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaLyaDJaDKaDJaDJaDLaDMaDJaDJaDKaLzaNgaBIaNhaLEaNiaMzaMzaNkaMzaNlaIAaNmaNnaLJaNoaNpaNqaNraNsaNtaNraNuaNraNraNraNvaNraNraNwaNxaNyaNzaNzaNBaOMaNCaNzaNzaNzaNzaNDaNEaNFaQcaNraNHaNIaNJaNKaNLaNMaNLaNNaNOaQdaNQaNQaNRaNSaNTaNSaNUaNVaNWaEGaNYaNZaOaaObaOcaMkaMkaMkaOdaOeaMTaMQaOhaQxaOjaOkaOlaOmaOnaJlaQAaQyaQEaOraOtaOtaOuaMZaOwaNdaKZaOyaOzaOAaOAaOBaLfaQJaODaOEaOEaOEaOEaOFaOGaQTaOIaOJaOKaOKaOLaRbaLfaJRaIgaONaOOaNjaOfaONaONaIgaORaOSaGFaOTaOUaOVaOWaGFaIoaIoaJVaIoaGGaGGaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOXaOYaOZaPaaPaaPaaPaaPbaOYaOXaaaaBIaPcaPdaPeaOvaOgaPhaPhaOxaIAaPjaNnaPkaPlaPmaPnaPoaPpaPqaPqaPraPsaPsaPsaPtaPuaPuaPvaPwaNIaPqaPqaPxaPyaPzaPAaPBaPBaPCaPBaPDaPyaPyaPyaPEaPFaPGaPHaMkaPIaPJaPJaPJaPJaPJaPJaPJaPJaPKaPJaPLaPMaPNaPOaPPaPQaPRaPSaPTaPJaPUaPJaPVaPWaPXaPWaPWaPWaPWaPWaPWaPYaPZaRsaQbaQbaQbaRraQbaQbaRxaQeaQfaQgaKZaQhaMCaQiaQjaQkaLfaQlaQmaQnaQnaQnaQnaQnaQoaQpaOPaQraQnaQnaQsaQtaLfaJRaIgaQuaONaONaQvaONaQwaIgaGFaGFaGFaGFaGFaGFaSoaGFaIoaIoaJVaIoaStaOQaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaafaBIawqaBIaQBaQCaGOaQDaSuaQFaQGaGOaQCaQHaQIaBIaSyaLEaPeaPfaQLaPhaPhaOxaIAaQMaNnaLJaQNaNpaQOaQPaNraNraQQaQRaQSaSEaNraQUaQVaQWaQVaQXaQYaQVaQVaQZaQVaQVaRaaSHaQVaRcaQVaRdaNraNraNraReaPFaPGaPHaMkaRfaMkaRgaRgaRgaRgaRgaRgaRgaRgaRhaRiaRgaRjaRgaRgaRkaRgaRgaRgaRgaRlaRmaRnaRoaRoaRoaRoaRoaRoaRoaRpaRqaRpaJlaImawOawOawOawOawOaItaRuaRvaRwaKZaKZaKZaKZaKZaSIaLfaRyaQmaQnaRzaRAaRBaPgaRDaREaRFaQraRGaRHaRIaRJaLfaJRaIgaRKaRKaRLaRMaRNaRNaROaIgaRPaRQaRRaGGaRSaRTaRUaRVaRVaRWaRXaGGaRYaGGaRZaRZaRZaSaaSbaScaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaSUaGhaSdaOYaLDaDPaHxaHxaSfaLDaOYaLDaHyaHAaHzaLEaSkaPiaPiaNkaPiaNlaIAaSmaNnaSnaIAaLKaLKaSZaLKaLKaLKaLKaLKaLKaSpaSqaLKaLKaLKaLKaLKaLKaSraSsaSraLKaTPaLKaNraQPaUjaSvaSwaSxaNraReaUlaMbaMbaMkaSzaKOaSAaMnaMnaSBaSBaSBaSBaSCaJeasfasNarVarXarXavParXarXarVasNawFaJeaSJaSKaSKaSKaSKaSLaSLaSMaSNaRqaRpaJlaQqaQaaQaaQaaQaaQaaQaaSQaSRaSSaSTaUOaSVaSWaSXaSYaKZaKZaVeaTaaTbaTcaTdaTeaTeaTeaTfaTgaTfaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaTjaQzaTlaGGaIoaTmaTnaToaTpaTqaIoaTraQKaGGaTtaTuaRZaTvaTwaTxaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIaVzaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaVLaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeaUfaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUJaUKaULaUMaUNaWFaUPaUQaURaUSaUTaTfaUUaUVaRCaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeclraVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaVPaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaWkaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaWdaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeclraVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaVPaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaWkaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaWdaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONbkuaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaXiaXjaXkaWgaTUaTUaTUaYwaUeaXmaYxaXoaUeaUiaVGaXpaKfaXraXsaUmaXtaVPaXuaXvaXwaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXOaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXWaZhaXYaXZaYaaYbaYcaYdaYeaWjaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaXRaXhaToaYfaYkaZXaWLbaOaYmaWOaZcaVoaYvaZnbaBbanaYzbaCaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDbaNaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaYHaYHaYIaYJaYKaYLbaPaYNaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaXjaYUbbTaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaZraZsaZtaZuaYaaYpaZwaYdaYeaWjaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaYXaYGaToaZeaYGaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaZYaZkbaaaZvbacbadbaebafaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajaaaaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXOaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYabbxbbybbzbbAbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafbcCaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7509,10 +7510,10 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbfAbeObePbeQbfWaRtaYHbeTbeUbgubdzbbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPbfebffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaabgnbgobgpbgqaZUbgrbgrbgrbgrbgrbgrbgsbgtbgraYOaYOaYOaYOaYObhKaYOaYOaYObgvbgvbgwbbZbdDbgxbeZbgybbZbgzbgAbgzaTSbeRbdLbdMbfdaTSaXebdObdPbgBbgCbgDbfgbgDbdPbfibgEbgFbgGbgHbgIbgJaMbbgKbgLbctbhLbivbgObgPbexbexbgRbgSbgTbdYbebbmIbgVbhRbhNbfzbgYbhSbebbedbhabhbbhcbeCbhTbeEbhgbhhaJibhibhjaRpbhkbhlbhmbewbewbhnbewbhobewbewbewbewbhpbewbewbewbewbhqbewbewbewbewbewbewbhmbewbewbhrbhsbhsbhtbhsbhsbhubhvbewbhqbhwbhxbhpbewbhybewbewbewbhzbhAbhBbhUbewbhDbewbhEbewbewbhFbhGbhHaVoaYuaVobhIbhVbhXbhWbhMbidaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaafbhPaYDbhQbitbiqbjubjqbjwbjvbjubjBbjGbjCbjObhYbhZbgwbbZbbZbbZbiabfabbZaTSaTSaTSaTSbeRbibbicbjQaTSbiebifbdPbigbihbiibgDbijbdPbfibikbgFbgGbgGbgGbilaMbbimaSzbctbjVbiobipbfjbirbisbfBbiubjMbdYbebbiwbixbiybjYbiybgYbgebebbedbiAbiBbiCbgQbiEbgZbiGbiHaJibiIbiJbiKbiLbiMbiNbiObiObiPbiQbiRbiSbiSbiSbiTbiSbiSbiSbiSbiSbiUbiVbiVbiVbiWbiObiObiNbiObiObiXbiVbiVbiYbiSbiZbjabjbbiSbjcbiObiObiObiObiObiObiObiObiObiObiObiObiObjdbiTbjebiSbjfbjgbjhbjibjibjjbjkaZNaWRbjlaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZaaaaaaaaaaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbjAbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktbkubkvbewbkpbkwbkZbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZaaaaaaaaaaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbjAbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktbkZbkvbewbkpbkwbqsbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOblBblrblEblCbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbloblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbmobmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibmWbojbmYbmZbnabolbjRbndbnebjRbopbmCbnhbnibnjbmPboKbnmbnnbnobnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbnAbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbnHbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaabpsbnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpSbpTbnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbcEbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbqsboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbpcbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbqtbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObpyboqbpAbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaabpsbnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpSbpTbnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbcEbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbNZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbpcbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbqtbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObpyboqbpAbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdvbpHbpHbpHbpIbpHbpJaZVbpKbqKbgrbqQbjpbrkbrcbpQbpRbrvbrubrwbrwbrwbrxbkWbpUbkWbkWbkWbkWbpVbpWbpWbpXbpYbdPbpZbqabqbbrybqdbqebqfbrCbqhbqibqjbqkbqkbrDbrIbgGbgGbqmbfmaMbblqbqnbqoaJubqqbqrbqrbxqborbrPbxsbotaafbebbebbebbebbshbebbebbebbebaafbedbqzboCbqAbsjbqCbqDbqEaJibqFaRqaRpaJibskbqHbqIbqJaJDbqLboPbqNboUboUboUboUboUboUbqObqPbslboYbqRbqSboNbnnbqUbqVbqWbsnbpgbphbpfbqXbYfaVJbpjbqYbqZbqZbrabrbbsobrdbrdbrdbrebrdbrfboObrhbribrjbsqbnIbrlbpCbrmbrnbrobsrbnIbrqbpFbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBbsybsHbsHbthbrzbrAbgrbtkbtlbtvbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabsebscbotbosbotaafbsibtObtKbtTbsmbtXbtKbubbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNbsxbuxbszbsAbuTbsCbqObsDbnibsEbsFbsGbuUbnnbsIbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNbsObsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtcbtdbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbuhbwlbwnbukbulbumbnibnnbunbpubupbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbuAbpvbuCbuDbuEbuFbuGbrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbuNbnIbpEbpFbuObnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7525,10 +7526,10 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGubExbGubEybEzbEAbEAbEAbEAbEAbEBbGAbEDbzTbEEbdPbEFbEGbEHbEIbEJbGDbGCbGWbGEbGvbtCbENbAbbEObEPbyEbvwbEQbHabESbBMbETbvwbBPbHibHjbAhaaaaaaaaabAjbHmbHlbFcbyNbFdbFebFfbFgbDnbDobFhaJibxwaRqaRpbHMbFjbFkbFlbFmbFnbHNbFpbFqbxCbxFbxFbHObxFbwkbFsbFtbFubFvbFwbFxbDJbFybDLbFzbFAbFBbDObFCbFDbFEbHPbVlbDXbHQbVAbFJbDXbDXbFKbFLbFMbFLbFLbFNbFObFPbFQbFRbFSbCvbHRbFUbHSbFWbFXbFYbFZbGabGbbGcbGdaafaafbCJbGebHUbHUbHVbIfbHZbIobEvaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGlbGmbGnbdPbdPbGobwNbwNbwNbGpbdPbdPbGqbGrbGsbdPbGtbGtbGtbIvbGtbGvbGwbGxbGybGzbtCbvtbAbbIAbGBbtCbtGbtGbtGbtGbtGbIBbtGbtGbtGbIDbtGbIUbIMbIXbtGbJbbtGbtGbtGbtGbtGbtGbtGaJiaJiaJiaJibxwaRqaRpbHMbJqbFkbCSbGGbCWbGIbGJbGKbGLbGMbGNbCjbGObGPbGQbGRbGSbGTbGUbGVbJrbGXbGYbGZbJDbHbbHcbHdbHecLVbCpbUSbUfbwwbwwbwwbwwbwwbJVbwwbwwbwwbzAbKfbzAbzAbHkbBhbCubCvbHRbKobKzbHnbHobHpbHqbGabGbbGcbHraaaaaabCJbHsbHtbEobCIbBybKBbKUbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaafaaaaaaaaabHuaafaaaaaaaaaaaabGtbHvbHwbHxbHybGvbHzbKVbHBbHCbtCbvtbAbbAcbAabHDbHEbHFbHGbHHbHIbHJbHKbHLbLabLxbLnbLzbAabAabLIbMhbLYbAabHTbAabzZbHHbKJbHWbHXbHYbMibxwaRqbDsaJlbDtbDubDtbDCbDPbxCbIbbIcbIdbIebMlbIgbIhbIibIjbIkbwmbIlbImbInbDJbDTbElbIpbIqcLUbFDbIsbItbIubCpbMpbIwbIxbIybUdbLybMqbICbMCbUcbIFbIGbIHbIIbIJbzAbIKbCubCvbMHbMFbINbIObIPbIQbIRbGabGbbISbEnbEnbEnbCJbCJbCJbMSbMPbCJbCJbBybCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabMZaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbITbEmbIVbIWbNdbIYbIZbJabNfbtCbvtbJcbJdbJebJebJfbJgbJhbJibJjbJgbJfbJebJebNkbJkbJlbNqbJnbJobNBbJebJebJpbJgbJhbJibJjbJsbJtbJubJtbJvbJwbvUaJlbEtbEqbFHbGFbNLbGHbDzbHAbFibDVbxFbNQbCFbDSbDEbJGbwkbJHbJIbJJbDJbJKbJLbJMbJNbJObFDbJPbItbJObCpbJQbJRbIxbJSbJTbJUbNZbJWbObbJYbIFbJZbKabKbbKbbzAbKcbKdbKebOcbKgbKhbKibKjbKjbKkbGabGbbKlbEnbKmbOdbKnbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKpbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabMZaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbITbEmbIVbIWbNdbIYbIZbJabNfbtCbvtbJcbJdbJebJebJfbJgbJhbJibJjbJgbJfbJebJebNkbJkbJlbNqbJnbJobNBbJebJebJpbJgbJhbJibJjbJsbJtbJubJtbJvbJwbvUaJlbEtbEqbFHbGFbNLbGHbDzbHAbFibDVbxFbNQbCFbDSbDEbJGbwkbJHbJIbJJbDJbJKbJLbJMbJNbJObFDbJPbItbJObCpbJQbJRbIxbJSbJTbJUbPZbJWbObbJYbIFbJZbKabKbbKbbzAbKcbKdbKebOcbKgbKhbKibKjbKjbKkbGabGbbKlbEnbKmbOdbKnbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKpbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKvbKwbKxbKwbKyaaaaaaaaabGtbGtbOfbKAbIVbKAbOibKCbOnbKDbKEbtCbKFbvtbKGbKHbAabKIbAabzZbHHbKJbAabKKbKLbKMbKNbKObAcbAabKPbKQbHLbKRbHLbHLbKSbKTbODbOtbKWbKXbcLbKYaRpaRpaRpaJlbOEbFlbFnbOFbJmbOGbJybJxbFIbLgbLhbLibLjbHgbDEbIkbIabIzbHhbDJbDJbLobLobLobCpbLpbLqbLrbLsbLtbCpbLubLvbIxbLwbFGbLybOHbLAbLBbLCbIFbJCbLEbKbbKbbzAbRsbLFbCvbwwbLGbLHbOIbLJbLKbLLbGabLMbLNbLObLObLObLPbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbLQbLRbLSbLRbKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbLWbLXbOJbLVbLZbMabMbbGtbMcbMdbMebMfbMgbOLbOKbMjbMjbMkbtCbtCbtCbOMbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMmbMnbMobtCbtCbtCbtCbtCbONbtCbtCbtCaJlaJlbOQaJlaKSaMpbMraJlbKZbJXbORbGFbLdbxCbDzbLDbxCbMybMzbMAbMBbwkbOTbMDbMEbOUbMGbPubMIbMJbMKbMLbItbJObFDbFDbMMbJObCpbMNbMObMObMObMObMObMObMObMObMObMObPvbMQbMRbMRbzAbPAbMTbMUbwwbMVbMVbMVbMWbMXbMYbMVbMVbMVbMVbMVbMVbNabNbaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymbPCbLRbLRbNebKtbKtbLTbLTbPDbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbNsbNtbGvbNubNvbNwbNxaaaaaaaaaaaabNybNzbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPbPZbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbOxbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbRybEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbNsbNtbGvbNubNvbNwbNxaaaaaaaaaaaabNybNzbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPcsfbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbOxbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbRybEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbNgbNgbNgbRAbRzbKAbOSbRDbRBbKAbRFbOVbOWbGvbGvbGvbGvbGvbGvbOXbOYbOZbPaaaabPbbPcbPcbPdbPebPfbPgbPhbPfbPibNFbPjbPkbPlbNFbPmbNXbPobPpbPqbPrbPsbPtbPtbNSbRWbRJbPwbPxbPybDtbNYbLbbScbGFbGFbSgbDzbSibxCbSnbPEbSrbPGbwkbSubPIbwkbOkbPKbPLbOlbPNbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPPbQYbPRbOsbOsbOsbOsbSwbMObPTbLEbPUbPUbzAbBhbPVbPWbSEbPYbPYbSMbSObSNbSQbSPbSSbSRbSSbSVbMVbQfbSWbOObQhbTgbOpbQkaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQlbQmbQmbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbQnbQobTAbQqbQrbKAbKAbQsbQtbTObQvbQvbQvbQvbQvbQvbQwbQxbQyaaabQzbQAbUbbQCbQDbPfbQEbQGbQFbPfbNFbQIbQJbQKbNFbQLbQMbQNbQObQPbQQbQRbPtbQSbPxbQTbNUbPxbPxbQUbDtbPnbGFbQVbUkbGFbPzbDzbLebRCbQZbPBbUobRcbRGbDEbIkbSpbOkbPLbPLbOlbRfbMKbRgbRhbPJbRjbRkbRlbPMbRnbPObMObOsbOsbRobOsbOsbOsbOsbRpbMObRqbLEbRrbRrbzAbRsbRtbRubUqbRwbUGbUwbUPbUObUWbURbVkbVjbVvbVmbVybREbVGbVzbRHbRIbQibRKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaabLVbRMbRNbRObLVbRPbMabMbbGtbGtbRQbRQbRQbGtbGtbNxbRRbRRbRSbRSbRSbRSbNwbQyaaabRTbRUbRVbVObRXbRYbRZbSabSbbSbbWgbSdbSebWibNFbPtbPtbPtbPtbPtbWkbPtbPtbShbWobSjbNUbPxbSkbSlbDtbQHbLbbQVbSmbWMbPzbSobJAbJBbSqbRabSsbStbJzbFsbSvbIEbSxbRibRbbSAbSBbMKbRmbSDbWVbRjbSfbSGbXabRnbPObMObMObMObRobOsbOsbOsbMObMObMObSIbSJbRrbRrbzAbSKbSLbCvbzIbXcbXfbXebSQbXibXqbXpbXvbXubYabXxbMVbQfbYobOObSXbSYbSybTaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbTcbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7548,15 +7549,15 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEckrckuckscgEckzckBckAcgEckDckJckIcgEaaaaafciiclbcgTcgUcgUcgUcejckMckKchWchWcoAchWchWchWchWckTcieckWckYcbqclackZcldclccoBcleclhclhclhclicljcljclkciAcllcgqclwclxciGclyciIclzclAclBcoCclDclEclFcoFclHclIclJciSclKciUcoJcoLclNclnclmclQclNclRclSclTbYfceQcdIcdIcdIcdIcdIcltbYfaaaaaaaaaaaaaaaaaaaaacdLcmacmbcmccmdcdOcmecmfcpdcdScmhcmicmicmiclvcpfcmlclPclOcmicmicmncdScmocpgcmqcmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafcgEclXcmmcmjcgEcmtcmmcEgcgEcmtcmmcEgcgEaaaaafcmzcgTcgTcgUcgUcmAcejcmvcmucmxcpocprcmycmCcmCcmEcmDcmCcmFcpycbqcmIcmHcmKcmJcimcmLcmLcmMcljcmNcpAcmOcmOciAcibceVcpBcqgciGcnbciIcnccndcpCciGcmSciNcmWcfYcpGcnicnjciScnkciUclLclMclNcnlcpHcnlclNaaaaaaaaabYfbYfbYfcnnclSclSclTbYfbYfaaaaaaaaaaaacdOcdOcdOcdOcdOcdOcdOcdOcdOcnocnpcnqcdScdScnrcnscntcdScdScdScdScpIcnscntcdScdScnvcpNcnvaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaafaafaafaaaaafcnxaafcnxaafcKAaafcpOaafcKAaafcpOaafaafaaacejcnAcnBcgUcgUcnCcnDcpRcpPcnycnmcpUcnzcnzcqecnzcnGcqrcnHcnGcnJcqtcqscqAcnMcnOcnOcnOcnOcqIcqDcnRcnRcnRcgscgscgscgscnSciGcnTcnUcnccnVcnWciGcmSciNcnXciUcnYcnZcnjcoacobciUclLclMclNcoccodcoeclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaacdOcofcogcohcwlcojcokcqLcomcqNcopcoocdOaaLaafaafaafaafaaaaaaaaacqOaaaaaaaaaaafcoscqWcosaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafcoucrvcracoxcovcowcrzcoxcrQcrUcrzcoDcrVcrXcoEcnycnycnycnycnycnycnycnycoHcoGcrZcoIcsacoKcoNcoMcoOcnGcoQcoPcoRcnGcoTcoScoUcnOcoWcoVcoYcoXcpacoZcpjcpbcpbcpkcpncpncpjcsbciGciGcpccscciGciGciGcpeciNcsdciUciUciUcsecphciUciUclLcpiclNcvmcpscvmclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaafcdOcplcpmcplcsgcsfcppcpqcomcomcsicomcdOcdOaaaaaaaaaaafaafaaaaacaaaaaaaaaaaaaafaaacsnaaaaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafcoucrvcracoxcovcowcrzcoxcrQcrUcrzcoDcrVcrXcoEcnycnycnycnycnycnycnycnycoHcoGcrZcoIcsacoKcoNcoMcoOcnGcoQcoPcoRcnGcoTcoScoUcnOcoWcoVcoYcoXcpacoZcpjcpbcpbcpkcpncpncpjcsbciGciGcpccscciGciGciGcpeciNcsdciUciUciUcsecphciUciUclLcpiclNcvmcpscvmclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaafcdOcplcpmcplcsgcLYcppcpqcomcomcsicomcdOcdOaaaaaaaaaaafaafaaaaacaaaaaaaaaaaaaafaaacsnaaaaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaaaaaaaaaafcptcsDcpucpxcpwcpFcsLcsMcpzcsWcsQcpEcpDcsXcpFcpLcpJcsYcpMcpQcsZctbcpTcpWcpVcpYcpXcqacpZcqccqbctccqdcticqfctkcqzcoTcqJcqKcnOcpacpacpacpacpacqMcpjcqPcqPcqPcpncpncpjbTFcrYciGcqhcqicqjcqkciGcqlciNcqmciUcqncqocqpcqqciUctmclLcpiclNctxcqQcquclNaaaaaaaaaaaaaaaaaacqvcqwcqxcqycqvaafaaaaaaaaaaaacdOcplcplcplcoictBcqBcqCctIcqEcqFcqGcqHcdOaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaafaaacmZaaaaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafcqRcqYcqScqVcqUcpFcqXcpFcvWcqYcqXcpFcvWcqYcpFcpFcpFcpFcpFcqZcpFcpFcpFcrbctOcrdcrcctScpZcrfcrecrhcrgcrjcricrlcrkcoTcqJcrmcnOcrncpacpacrocpacrpcpjcrIcrKcrJcrKcrLcpjbTFcrqciGcrrcrscrtcructTcrwcrxcryctVcrAcrBcrCcrDciUcrEcrFcrGcrHcqvcuacqvcrHaaaaaaaafaaaaaaaaacqvcrRcrTcrScqvaafaafaaaaaaaaacdOcomcomcomcomcrMcppcrNcrNcrNcnpcrNcrOcdOaaaaaaaaaaaaaaacrPcrPcrPccMaafaafaafaafcnaaafaafaafaafaafaaqcrPcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcptcpFcrccpFcrccpFcqXcpFcuecxacufcxaculcxacxacuycurcpFcpFcuLcuEcuEcuEcuYcuUcvkcvkcvlcpZcvncshcsjcnGcsmcskcvscnGcspcsocsrcsqcstcsscsvcsucpacswcpjcsxcrKcsycrKcsKcpjbTFcizciGcszcsAcsBcsCciGcfYcvtcfYciUcsEcsFcsGcsHciUcsIcrGcrGcqvcsJcsNcvvcqvcqvcqvcqvcqvcqvcqvcqvctMctDctNcqvcqvcqvcrHaaaaaacdOcofcogcohcslcsRcqBcrNcrNcrNcnpcrNcsScdOaaaaaaaaaaaaaaacrPaaaaafaaaaafaaaaaaaaackxaaaaafaafaaaaaaaaaaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaacptcpFcrccpFcsOcsTcvEcsVcsUcvGcufcxacvOcxacxacvXcvRcwmcwacwzctacwUcwHcwHcwWcrccrccthctgctjcwXcnzcnGcwYcnGcnGcnGcwZctlcsrctncttctoctyctucpacxdcpjcxocrKcsycrKcxpcpjctvctwciGciGcxqciGciGciGciBctzctAciUciUciUcxrciUciUcsIcrGaaacqvctCctZctEctFctGctHcxsctJctKctLcqvcuVcxtcuVcqvcxFctPcqvaafaafcdOcplcplcplcxHcsfctRcuccxJctUcudcrNctWcdOcdOcdOcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaacptcpFcrccpFcsOcsTcvEcsVcsUcvGcufcxacvOcxacxacvXcvRcwmcwacwzctacwUcwHcwHcwWcrccrccthctgctjcwXcnzcnGcwYcnGcnGcnGcwZctlcsrctncttctoctyctucpacxdcpjcxocrKcsycrKcxpcpjctvctwciGciGcxqciGciGciGciBctzctAciUciUciUcxrciUciUcsIcrGaaacqvctCctZctEctFctGctHcxsctJctKctLcqvcuVcxtcuVcqvcxFctPcqvaafaafcdOcplcplcplcxHcLYctRcuccxJctUcudcrNctWcdOcdOcdOcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcsOcsTcsTcsTcvEcsTcsTcsTcvEcsTcsTcsTcsTcsTcxVcyacsTcybcsTcyccsTcsTcsTcuhcugcuicpvcpFcujcygcukcuncumcupcuocumcuqcuscyhcuucutcutcuvcutcuwcyicuxcuAcuzcuBcuBcpjcuCcuDcymcuFcuFcuGcuHcuIcuJcuJcuJcuJcuJcuJcuJcuJcuKcrFcrGaaactFcypcuPcuNctFcuOcuRcuQcuQcvdcvacuQcuQcvhcuQcuVcuXcuQcqvaaaaaacdOcplcplcplcslcyrcuZcvicvbcvccvjcrNcrNcvecvfcvgcdOaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcpFcpFcpFcpFcqXcpFcpFcpFcqXcpFcpFcpFcpFcpFcvWcpFcpFctScpFcyucpFcyEcyzcvpcvocvrcvqcyFcvqcyHcvucvxcvwcvycvucvucvzcvAcqIcvBcpacvDcvCcpacpacyJcrKcrKcvFcuBcuBcpjbPxcAscvNcvNcvNcvNcyKcvNcvNcvNcvNclMcvPcrGcrGcrGcrGcrGcrGaaactFctFcyRctFctFcyScvScvTcvUcvVcvHcvJcvIcvLcvKcyZcwbcwccqvaaaaaacdOcomcomcomcomcwdcppcvicwecwfcvQcrNcrNcwhcrNcwicdOaaaaaacrPaafcwjcwjcwjcwjcwjaaackxaaacwjcwjcwjcwjcwjaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaccMaaaaaaaaaaaacptcpFcpFcpFcpFcpFcqXcpFcpFcpFcqXcpFcpFcpFcpFcpFcvWcpFcpFctScpFczncpFcpFczncznczocpFcpFcvZcvYcwgcwgcwgcwgczqcwkcoTcwocwpcsqcwqcpacwscvCcpacwtcpjcwucrKcwvcwxcwwcpjczrcvMcvNcwIcwJcwKcwLcwMcwNcwOcvNcwPcwQcrGaaaaaaaaaaaaaaaaaacqvcwRcwycwAczBcwCcwBcwEcwDcwGcwFcwTcwScwVczFcuWcuQcxecqvaaaaaacdOcofcogcohckXcsRcuZcxgcxhcxhcxicxjcxkczLcxmcxncdOaaaaaacrPaaaaafaaaaafaafaafaaackxaaaaafaaaaafaaaaafaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcpFcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcpFcpFcvWcpFcpFczXczVcAhctdctdcAhcAtcAhcxlcAvcAwctdcAAcAxcAHcADcAJcwkcoTcxucoTcxvcxwcpacpacxAcpacxBcpjcxCcxCcxDcwxcwwcpjbPxcvMcvNcxKcxLcxMcxNcxOcxNcxPcvNcxQcxRcrGaaaaaaaaaaaaaaaaaacqvcxScxTcxUcAUcxWcxXcxYcxZcuTcBkcuScxEcuTcBmcqvcqvcqvcqvaaaaaacdOcplcpmcplcBncsfcppcrNcrNcyecyfcrNcBqcomcomcomcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBsaaaaaacBsaaaaaaaaacBsaaaaaaaaaaaaaaacBsaaaaaaaaacBsaaaaaacBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcpFcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcpFcpFcvWcpFcpFczXczVcAhctdctdcAhcAtcAhcxlcAvcAwctdcAAcAxcAHcADcAJcwkcoTcxucoTcxvcxwcpacpacxAcpacxBcpjcxCcxCcxDcwxcwwcpjbPxcvMcvNcxKcxLcxMcxNcxOcxNcxPcvNcxQcxRcrGaaaaaaaaaaaaaaaaaacqvcxScxTcxUcAUcxWcxXcxYcxZcuTcBkcuScxEcuTcBmcqvcqvcqvcqvaaaaaacdOcplcpmcplcBncLYcppcrNcrNcyecyfcrNcBqcomcomcomcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBsaaaaaacBsaaaaaaaaacBsaaaaaaaaaaaaaaacBsaaaaaaaaacBsaaaaaacBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFczmcrWcrWczpcxGcrWczpcrWcxIcBucuEcuEcBzcuEcBAcuEcuEcuYcBDczncpFcpFcyjcylcykcyncBEcyocpFcBHcyqcyscyscBIcytcoTcxucyvcnOcywcpacyxcpacBKcyycpjcpjcpjcpjcpjcpjcpjbPxcvMcvNcyMcyNcxLcyOcxLcxNcyPcvNcyQcBLcrGaaaaaaaaaaaaaaaaaacqvcuVcBOctFctFcyTcyAcyVcyWctMctDctNcyBctMcvhcyYcqvaaaaaaaaaaaacdOcplcplcplckXcBRczacrNcrNcrNcyfcrNczbcrNczccrNczdaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaacBscBscBscBsaaaaaaaaacBscBscBscBscBscBscBsaaaaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFcqXcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcyCcpFcvWcpFcpFcpFcyDczncpFcpFcBScAtctfcyGcwgcCccwgcwgcyqcCecyIcCfcytcoTcxucoTcnOcyUcyLczecyXczfcpacnOczgczJczJczhcCicClczNczOcvNcxNczPczQcxNczRczSczTcvNczUcCncrGaaaaaaaaaaaaaaaaaacqvczWcuMcCBcuVczYczZcAactFcAbcAccsPcyBczWczjcAecqvaaaaaaaaaaaackEcdOcAfcAgcAgczkcAicAjcAkcAlcAmcAncAocApcAqcokcAraaaaaacrPaafcwjcwjcwjcwjcwjaaackxaafcwjcwjcwjcwjcwjaaacrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaaaczlcpFcqXcpFcCFcxacufcxacCJcxacufcxacCJcxacxccxacxbcCKctectdcCNctfczsczucztczwczvczxcwgczzczycwgcwgcwgcwgcwgczAcqtcCOcqtcnOcnOcnOcnOcnOcnOcnOcnOczDczJczJczEcANcAObPxcAPcvNcAQcARcCQcATcCYcAVcAWcvNcAXcAYcrGaaaaaaaaaaaaaaaaaacqvcuQcAZcAectFcBacBbcBcctFcBdcBeczHczGczIcBeczKcqvaafaafaaaaaaaaaaaabquaaacdOcBlcDmcDacBocBpcDmcDpcBrcBpcDmcDtcdOaaaaaaccMaaaaafaaaaafaaaaafaaackxaaaaafaaaaafaafaafaafcrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaa From 13e036ccd23cfd9504213b3641a2f6d5e46bb1bc Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Tue, 12 May 2015 14:26:24 +0200 Subject: [PATCH 027/199] Changelog entry. --- html/changelogs/PsiOmega-BrigGarbage.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/PsiOmega-BrigGarbage.yml diff --git a/html/changelogs/PsiOmega-BrigGarbage.yml b/html/changelogs/PsiOmega-BrigGarbage.yml new file mode 100644 index 0000000000..c376528d84 --- /dev/null +++ b/html/changelogs/PsiOmega-BrigGarbage.yml @@ -0,0 +1,5 @@ +author: PsiOmegaDelta +delete-after: True + +changes: + - maptweak: "Should now be more evident that the brig disposal chute sends its goods to the common brig area." From 9896bb4a9c7c9140f231a5d48fdc6a81a86b4e63 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 23:21:23 +0930 Subject: [PATCH 028/199] Cleanup of custom item icons. --- .../objects/items/weapons/cigs_lighters.dm | 22 ++++++++---------- code/global.dm | 2 +- .../clothing/under/accessories/badges.dm | 2 +- .../clothing/under/accessories/lockets.dm | 16 +++++-------- icons/mob/belt.dmi | Bin 9749 -> 9175 bytes icons/mob/ears.dmi | Bin 2849 -> 2479 bytes icons/mob/head.dmi | Bin 131950 -> 130155 bytes icons/mob/mask.dmi | Bin 22366 -> 20777 bytes icons/mob/suit.dmi | Bin 291895 -> 289076 bytes icons/mob/uniform.dmi | Bin 263894 -> 254111 bytes icons/obj/clothing/hats.dmi | Bin 63191 -> 63054 bytes icons/obj/clothing/suits.dmi | Bin 104159 -> 102873 bytes icons/obj/items.dmi | Bin 61952 -> 61951 bytes 13 files changed, 18 insertions(+), 24 deletions(-) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 304131d736..0f202d9d05 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -414,35 +414,33 @@ CIGARETTE PACKETS ARE IN FANCY.DM icon = 'icons/obj/items.dmi' icon_state = "lighter-g" item_state = "lighter-g" - var/icon_on = "lighter-g-on" - var/icon_off = "lighter-g" w_class = 1 throwforce = 4 flags = CONDUCT slot_flags = SLOT_BELT attack_verb = list("burnt", "singed") + var/base_state /obj/item/weapon/flame/lighter/zippo name = "\improper Zippo lighter" desc = "The zippo." icon_state = "zippo" item_state = "zippo" - icon_on = "zippoon" - icon_off = "zippo" /obj/item/weapon/flame/lighter/random New() - var/color = pick("r","c","y","g") - icon_on = "lighter-[color]-on" - icon_off = "lighter-[color]" - icon_state = icon_off + icon_state = "lighter-[pick("r","c","y","g")]" + item_state = icon_state + base_state = icon_state /obj/item/weapon/flame/lighter/attack_self(mob/living/user) + if(!base_state) + base_state = icon_state if(user.r_hand == src || user.l_hand == src) if(!lit) lit = 1 - icon_state = icon_on - item_state = icon_on + icon_state = "[base_state]on" + item_state = "[base_state]on" if(istype(src, /obj/item/weapon/flame/lighter/zippo) ) user.visible_message("Without even breaking stride, [user] flips open and lights [src] in one smooth movement.") else @@ -460,8 +458,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM processing_objects.Add(src) else lit = 0 - icon_state = icon_off - item_state = icon_off + icon_state = "[base_state]" + item_state = "[base_state]" if(istype(src, /obj/item/weapon/flame/lighter/zippo) ) user.visible_message("You hear a quiet click, as [user] shuts off [src] without even looking at what they're doing.") else diff --git a/code/global.dm b/code/global.dm index 2e7ddeb0e6..c8b00b8721 100644 --- a/code/global.dm +++ b/code/global.dm @@ -267,4 +267,4 @@ var/global/obj/item/device/radio/intercom/global_announcer = new(null) var/list/station_departments = list("Command", "Medical", "Engineering", "Science", "Security", "Cargo", "Civilian") var/global/const/TICKS_IN_DAY = 864000 -var/global/const/TICKS_IN_SECOND = 10 +var/global/const/TICKS_IN_SECOND = 10 diff --git a/code/modules/clothing/under/accessories/badges.dm b/code/modules/clothing/under/accessories/badges.dm index 5f96b66288..bb6613582e 100644 --- a/code/modules/clothing/under/accessories/badges.dm +++ b/code/modules/clothing/under/accessories/badges.dm @@ -6,7 +6,7 @@ /obj/item/clothing/accessory/badge name = "detective's badge" - desc = "NanoTrasen Security Department detective's badge, made from gold. Badge number is 564." + desc = "NanoTrasen Security Department detective's badge, made from gold." icon_state = "badge" slot_flags = SLOT_BELT | SLOT_TIE diff --git a/code/modules/clothing/under/accessories/lockets.dm b/code/modules/clothing/under/accessories/lockets.dm index 3842047a19..d5fa21c0aa 100644 --- a/code/modules/clothing/under/accessories/lockets.dm +++ b/code/modules/clothing/under/accessories/lockets.dm @@ -6,32 +6,28 @@ slot_flags = 0 w_class = 2 slot_flags = SLOT_MASK | SLOT_TIE - var/icon_open - var/icon_closed + var/base_icon var/open var/obj/item/held //Item inside locket. /obj/item/clothing/accessory/locket/heart name = "heart-shaped locket" desc = " A silver, heart-shaped locket. It flips open to reveal two pictures, one of a young red-headed woman and one of a brunette of similar age. Small writing is etched onto the back, reading 'M+L'. Some may regard it as cheesy." - icon_state = "heartlocket_closed" - item_state = "heartlocket_closed" - icon_open = "heartlocket_open" - icon_closed = "heartlocket_closed" + icon_state = "heartlocket" /obj/item/clothing/accessory/locket/attack_self(mob/user as mob) + if(!base_icon) + base_icon = icon_state open = !open user << "You flip \the [src] [open?"open":"closed"]." if(open) - if(icon_open) - icon_state = icon_open + icon_state = "[base_icon]_open" if(held) user << "\The [held] falls out!" held.loc = get_turf(user) src.held = null else - if(icon_closed) - icon_state = icon_closed + icon_state = "[base_icon]" /obj/item/clothing/accessory/locket/attackby(var/obj/item/O as obj, mob/user as mob) if(!open) diff --git a/icons/mob/belt.dmi b/icons/mob/belt.dmi index e8a10e349dbee29f2a8150e0e8a4a5d601ad16a4..456e6a6b01de713890687ff6d51888375211f948 100644 GIT binary patch literal 9175 zcmc(F2|QHY|Npg=dMc8NERm9yC;OIdBq|kpFd+sZk}b=O%rK)=l&w;XJtZDXWZx-d z-(?2FOc`4SV;h4pGykjl_B_A;_xF4KzRUCb{a&v-_ug~noO93lyg$qPeC~a8#pwL5 zUxa@F0AQEF1w9i0;FQ?>ZQBagR6Xhy1q(_@GYen68$J%+F1LMMJUsy5PU4H0HV=Z% zPJR4}`L>ptc>$QesoJrs3+N9o&lM^0D=T6{pma**HoF#mQ{v2#&rj-61`(^)%sXrT z$n40xjPVx^1w?4bExLQLb$Ce&4E}pb!uTr(0%DCUb)(fa zW5X_`-GwAm?d(lob(C%&W{S9lnZ`X23k#rmkN;jbqgJwBuDkt0%yBR4>jO?vUMM+| zpBxFftOXX@>_OK@a1P3-bYGF&4P#Ayq7zL_bKZh zxAbAPTA;r_T-3AXZJu0J} z5pS8C#8s0W*&I?Q=y${(IW{ z+%v7BW%&=6F9s`XF*zUZ*kZNU?aF-8Wm1ovM919CZTkm0kga1E*lg5-vhrJ-G`L{u zK{F+>>1l$+=kJ{;d+h()-syC!$cjq_JF~8cJiBo8m*%2OnAx6BJ~Ah8 zQjbj@h`xOiS$5oz>isSv;9Mffz2EFqS@+rJm-=iH4?ntlSV>95q4yJ&`K29MZK+X6 zj3a4KHB+LBhG^~Uf#@!3TstFaGRX@Ghw%V9>6jh_2cYB6y&I570yu#*0UaR7mvbBN z#0cO3dbdjeI_ezUzy;|b0QmY3HcHopLJh%#0DrDqdzZFHXG%%B4snBy_VDPumiJQH zxBp@B#$soZM#563hHMR+Q46tIYc)Ryh5m+z2P`F!!aW1XB3@J7sRPBX=APCcZBVnt z9pos;!O0X1T64Mktn{#I*=%15Yk8m%Lm&`wIVvmf`8MA3H6-~FPvh3|G+B%Bjasai z564~K6_B#~)r{aUy5yqqeNn|J%tLn{sL$$roMk;+*FbAf#ax+BTw8Ijmdz?^8cw4i zjd6Q*uI>ObWLd>W93aW@%^pR8xdN! zXN&QXH0Ww;(gUw9Kdf+!>+9sZ6}c$H8Sfi&=wUBvK257IT##}0c&2o4dE*UtbA{93 zSk)D|gj|l#TcFVXDr#0}x!>fL6a#Y;41&sPgHI*}I0fqYIPI>J) zDcV@OB4iM;T_B@PE1wGlxp4FJ7a;x5=!}&qP(Jt2_7kz1k@x}Pf-Yseq>b^i`R#xcq()}O+OA{T2dJQMLw1yGK1zx8mKUczEfAJ~$ z*@Sw|Go%8R(q*GERL(1=Xeo0ZR6els!N>QlW@ z@Uz-HQDcYqE z#$sE-;NW2Tth&N~6rF|!p}nJHpZqs*x+JT}ftVI`7WZ*D zQi;{op`qr91cVe>6-!Y~`GLw0;M?0TH-vTFstkW*Vq%;Q&rRZ$;7VC#DiUN48U9J7 zQl*!cma6Yed@X6i9s?Bwv`4{7*Z|_dVby&cW3TXr?EN!3e`=pDP0}7fY>CbQL0sS? zq4sdV)75e|OgZyXA=BJfN6-Stc#CKU!PP{z%U6eoc4>Y1jZIEHa0f9H) z?Iz-tH02iwMMXt^S#4L?7GM4EVv384do-~6@P|B|oQ{rmlZs%CdZ5GFeD3S1mI}`1 zjg0`=&dS?huaBFzHW2)eahEN`|FHHS?bjh&mOetP>4((Gtc0OlyT#{!v)Dh`I&Lu9 z28MrqoExyaz!Lil$mo|fF+)kT+as|?+4YGStXrMi|Ri|TI%TRL_RZ0BQ;g6ew2-LW=~BvsW;ZHwreyU^uDO*3v4QQ zUU=a%UN9bQ;)3Li{u1Y${AgG0JgHH=u_uKQoPV%ZPvjx<<0daKw|3Sz^Bu@u0qjmX z5#{MA+<2^`o8yS2y_H^jc;=Jbzm4QQEXy2tx{88bR%yohqQC0HH`q+9;Y@ z4kjne_MY`O^ACee{`_Koq$vw@ikqDDvkyVR<<5Y`mYgr6?b0dX z4<0?=gP>uU&wohri>>%?k7dHm@e~P zfZ?mFQFKHFN8e}J6yF2CO4={g1Ug`TWqrb=$Sy9Ro5cK-WNH(K?I!C{j&^sxGq))q z*4D@nW9R;jOk+U9`lq<{zX0h^Du1{DRIVa0g84oGIK|ANP*W)9ZI>KWT)NAMY7tBa zZ&=rP9t03vR|!P|U!=J`Uj~Gt zTb@KFl<*t@ZtT`ce-D}~L8@EwP|;;v_2s^zxo@k!eqv_OM%mrwF-MTh9|ZJ&pM{#f z%*skn%fFOBJrW*xf{Cszt{4)kELw|nb>nc_*J9! zQj4_1_3NoG;Mny1El>E5t?60ZTD_&QdJ2@iKsDl`i~EdCUUgECNt5;?bS+6UaAi83lSg#H~(`TI>@-KSNYVpl-ctnke!nrs4%dXVFOrdJQe29MZY z)Vv z7d{GICDM86*G@g|Qz)QsI{ENv3)m*8Ms)*Cja1dzLRY+o%$-?RVvmzp^zT{g4z>y5 z@o{`33DLrM4~#GuxY=XV@qttHcuI6Acw-R;o7AYy8USuQBw-)d;a# z91<4&GK>Ow2AE85?-`g~O@S2Dc6^aGDVCNMa*QmFhY%M=R6_ZvRrIV#6eOVMSp!?5EW{jvgK!W+BrJn_9M~ zaqDM24c1I`7jxN@{P<*rGOn4knL(u2;B5Al%7YV6x}SfyfQgGGiW@_izKL+0@y9+4 z!gwjJFp|ACX+uE3XUo<|%ttiec}$TW21zj1v!& zHtNhGi+e-Rqd2nkdptUqPPVNqI*r!dD926TvNFfln&WBByj$gr+VZs6G*^hTYOdT# zJc*o2_~yabf;)dYn7>z>zjT{PF#`qz;r*MgM7ok~M&|&c9l+>M?{6}i&rX`6yXD1y zV3H9G9!$CA>`4c=tA6AN)oDzD!SvdZev`+4T)yH8Cd8h6c*I)aV|n*s-rX7>V>gUG zh1NE@7Y8Y0*)IjjxnCZvC-37lUmr+exro&7cYlVo!JC)BbiIydPMRBCIrRpcmTbFb z7I+QgS$~aPClGdiG_lbB>wU;7y3;a4ndMTx(5Y43@6lDp?L#iMO8BsUgzK#*09Rr4}I9@^dR<6!^>5|9xuqCniX_4GLMs9WN(mQ2gBf8B+U?%d6RBPf|^_ zC967&`w6^kF|%TJPs}HXN$Gbf(q1qKGO23OpO&I*EH~?h=GNv$DpBUPf$&0bGj5ap zASd`|O6q&`1dfIOA25E9lbYJM#hfxEC<8k$0UT4I*?BeBn#Z^mq5bVD>Mqz_p`L5B(D}da9BgaSWD3NT;Oo$ z)+Z`pT1siIf+8bLm~7pk^jS4L<_3cF*vg8o?uVF{{K)H)UbG93R$ILS-J>8x8g zZ`8yp9G3A3=+gx_gzjc#ArFupAG|HbHpF8CIJdojl2tMHR&x*s?Kgub?a?;6dN!e8 zvTJ#_4xsL2q8mE@0l7^AaDBHiM&;g_VGM9syw1u+scsX0Cj)jC?gtsZ!lBqRFSEIK z2Ps>i2XB}V!#H3^f^t5T%2em9;oih1Ew@a7o+G^Xh&3zjzHq_vq^IlpQfboiX_gs1 zzhc*G?a!B?%3%)3D`-k@Tf7g1K1lq`Xk|!BUL|VtVrpp6Z0+t&ar%2bJ-vRaDy>eJ z>WGo~&53Vln!c!tPM%?TCGU=nsvJ7+b$HRZxsB2+Tp1yMI5O$8pi>@oS501(tfc+; zEcr@Dd(Qf5v^LITjKeWM7iA2EE)~dY$*}_{+3`y$3|0xPukJ8sWAkFT-hnLv7 z3%Ss!Wh+j>1f68mcvtn`5`B@R;iod02w+H503L%pIft?`j`#~d;qKH^A2y(zJEFV$k*8u~r6 zL)%PI(Qs*)UN$ir8YLDQs$j(GZ@+9RE3nM$dUq24;o!gZ%4)$A@Dh6AIH+qnexIMm~Bqq4ybv5?^Zo1K7%G?ftSK+5wa&< znO9XgOQ&59rcvn(T&>O}3ft}mbBB@zyA{LMx161BT9hl;FJe?03buBl%=KN;@=e*K zWSa*_EWuQny8VcTLcJZ-%?A{*C5XhYkIh6 zyF|CV(f!#Tl#mz)H&z(T!Z!xG9pXNB7P!mnwdjgZAZ<*9hOTyyHVi2MjJH z{8B$;peKM;QtmYGLr|7SM`^8C_%t4HZW!?+jUbMHTyH+F-HQTW6o_ILr7?R-iO6jB zoKOPma{sb3Zsp$V+6+ic(^zAKNR#(4m?|Qx$vDVu6E>e+*U|K+=AF}Pc(@}9JZq%{ z80zU&%_XTux$juVF#GeRhcRp2s-sV3(aMsNou@s|YI;o#uJ%SdpVw>1BdtBkkH9Dd z*ZhiRrrxQi(Iep-T_hEJd)4$tsE}u#`O<(xl(H2G4x1@wtlXhx+a?j6BeS!zTqH*) zNvxGSYzE2mlu#x(&8qQW=nVU&7(f4xFmh$lomTajE%Ct`yp4yWGz-$z*A<~YSwpiy zzU}*{Xr*LkCvlaKrzNHs3lqjHL25*ttJVv!C?@$*s-5**E#=Yz@sw=TNh0%Rz}J>S z^1~6?usHK1aRO$XF;P7V9;A+qaMsckWZOP;>oMAnK;*_X}i{C!ix6PpE}Jd9@U z5bdso`=raelgg0`r8Sg_sgI=(qPBPI>B+w8pI2q??gtA30~J#fgQr!AB~&ISbQ!n_!F$5HM)Bg0 zqcBRNS$t>}nT@Zpjib&GLCE4z;b^l%O2kMl!|dWNRoH@U3ghcc*`m44UWnIn6jQ|mylhIGS(crZng{|SD( z>BE}^*+;IUqh-jiHRXn?O@gBiO=#JJkrn}C{ywJJhLVhb&ZfHBPYa zkOorj$Jp8oR*lxYz#J?-vx=;zNfTKMQE2*o9TktT6sEQHYM*Sx;iy0ruqQS5nsLL~ z!{YSCl(iOcHJF)^O21KK6)+v<(FmPi(kZjGF)!_H~oXfTF z`am%J{Y!DL4|kg4mXke)%knKLH=cRS1LErUPYz+NYoN(OcN$4N6wIM10QAd-?Rb0Y)-_{zYiewS+a3^sV4zh~}ERCFe# z!W`QFvhn%u#k<>Q&L$|VKOI?m@Ufy4XIvL98SrZaWZNN67?~upXjrJdg-c*A#>&H` zVy}*5BwztC%k%lecG6?B+G6$FXwF#^pHK72GW|&c2{C9iCL$F_M-bsWR_!g9jFu^LQ8_q{Uc}co zc@qUVrJZ@WvB&!MXiFLmZ|5-jM&7_GFmLEkrjrjQGb*`{#r!3l8J`LCrewyKxNh!S z>XEF)MV)sbsyJI-;L1Ja*&sJ6)kVc)ctB5dhj{g+$Pr@Y*g%RZSm6dL+@NBg_?pp! z5k3HW@GSLP+c~YW!w3Dxp1w(noR|(Rqm)zm^IiJVLqiAndB_t}s#b!6=Sog`8!F|K z6NB>?5^t)ERJnXzdGJ;`GQYYu<5B29^*i{OhJrb1er_VyN_$Wwz}DYZuc4K2UW=94 zXz^Aiy=n6$b7&~f!8>;S4AOGC>c?DIWe%i!JEekKK-_9&=`L-b_X(8KdPk%WugsRj zP|&_5l3brTTiJcb3@=AM@5yE&SPPw}is?@pp-M77L%hG1-~a!NsS!yK3k85CGsX z+58s36WNzAdY9*5XeG5qgGkHu({IR+#^_y!0|Vtg&V}CSwzI#T1FqF<Zz*#| zyL5Q!&eG3g{BLNj^Bv5SeqDlD?HpaI;X`*S2>FbgHk6~Y<^4bd<` zMPGC(sceUrgrtne=;sf?UP}TA_RnK&lS{e04K*<{lL!aigPKA<2_A^;56yxFQq4&t zCQv9rN+%zDeJ&YU+cZiH*0AprfRy<%KKLArOh_5n%P-$MFMnHio268c=&+ZZq`li0 zF03}^wj$>ajx@tdha3kJuJFjL4Jh-=C#$A#_89T$-RVhmENC_Q+q7bPnO==L74xzWu zloF9HC3J*P6CkwELXvw>zqxn*b?;jL`tF@sD_J>v=iTis&s+9+si}U8<>=|7006Mu zxvhK;01haE-?L1I!5#<40ei4yRe%UlKpvm{eIic32|q{mZQQk8*j{CKDG>HA?iKBX0+X^GJcexR2!sK2?dw-GlXSu`g+S!OYW@b4N{g$=1g5i6# zJ;(*g^TWQ0AF1^p3#4Q2R8@Y~6Vr?Mtv$jl6D1rSU><)0E5tm)cX=6@rLfM9$UQxB zgLqF=y-T_zVENSHrmoB18khwo+pi&6bq}h^>O%)ZKZZ0IGwUAQG%XaUJQ>KT)ss++ zf7bSxmh525Oc9D{Tait=y154yv8?U3EO6EyLj1~ADC!6yu7N)*{yDFg z#~1-v4I3ci#Sd((%PXGb9fbVBAggHnh|&7!B5>|0@0BP)Y(#Poshn-?Q$dMI!xY~YCD7?ijjFDNze z%GjpRGS#Hv$-76v&sdJuy*}lA`quj)Sop^Sm?6b@o&`EWtS%#?H?*{X^UL#5F`G2z zjzf`0rrxmC&Kzqhzc;*jf{vBf?Lub~He8J95KCXjtldH~9ste)ca(2vdnPT7Aqtb> zenKl8=)PLNifUVaW03Ru`{b`hl6Dn&@L$Uek8;Cb1i9>-YnG#6JB~=jB|cfM zos;YGTAm{(v?e9GF8kG?NOL~RUgL9=B*jdTHURiMeMs#j0BA}54`Nej{4$6y+XOu#P})8rzJ-2 zLl*rNb>w_$>P9bq+=m34Dx&!z_OJ-K;?;@G@(P{x@Ug9Qh23=LUNxz3H=1jt0wzN% zasvH$^K|>tmajy_J%iX}lvXC!b>6D0SQB4b3$v&%d~3J%a~PgBiZG1 zqm^xaQJDI*Na!j$*t`AEq12sEYFZph!j{Jw+4$t9-0QFj+!#^fKz{B8At6~RnzDs6 z=v|a=&!6K&d#X6VUtz%sy=QWeloadgH>`8bT}mX?Rkti-7K__%Rv#1hu(Ie|=Y1bEl#rE)7HNwxO7-rqqLi!;#FLHU%}UJ9 z#(RH7*(KrJ&f^8|YgCUp-qp}xqgLkcGHcSOF=p6^xtf(ukBN&sc1bc~)D=T`%BvE) z92{xv)gz4A(|hFU&WvN+N=LlEB3%6@aQvqT&JQ^Q0!IBk^qwt69Qx816(g)L=61wP zNL9oAW)tBY=>YsoF%JO(0a}uI|94vQZ)#lf0As3ffv*R-=L|Y4p&*@g4u$Y9a~!MY zaOKs`NHI?!rd}cc(rd^VlPwfKE0gtM^F0|dzl`29^PT&6D^WC^OG9o|nMcmEaN$bJ zAOHP;en{5EkZU%cOT%S4%1zmsay@Rpnt}Yi(gD|u_kLqj5D0RHW{6m>nNh&qU`ZFs zXH^_?tXMc<>x$*|a1#(v_jT@#35&c7Tj(OUUri`5_cbTnK@`lPehO;WmHPVremC>? zu~AV`$w(xnj&{5EL*Hy2qpqaUr@_{~sI{*3_Wc#tvK2mG#oe$V+{vh7wfz-l0|!Eo zgQuXmnVH~$B&}*&xaJN2+}Pbe84>$6O5Gr~G4~*ldgwtt!$F`>^T2W7RRnMlcrOS* zfCVN+KvCvz?#e%^_%9KGfY5U1Uo1BttA_VCH7SQwvHtci)?NvzD&U^|cysBcPzo|e zSWnWZMIYqDj}w8aE%k#hKiXlY1^Gje2N-t;PUtEzPT?;?y2qiyDQ3{?cFOGhpOfcQ zm0tkHoUyzhvq|!!KWyfQOusI<3r5Hm{a2MR*LHPK0|=Bp{^`MG6Xac3>orgW^R3g< z=0Yj{H9tu2s;j$Cm0nF0HOm9RWB)H>De(<_xhRlKPME15tN*DlfAmJ(%19`9v1qy&UCXK1ul0!sMwc~_TMay|7QApHpTAADAhWFj`DK>rEeC@HfcQvT!Q9q2}KXvVg(UtY3lzKCQ*7KWjamK{|_{*!I}ff7*JD@MWx=@n{m;<|rY z^q8ZROVYw&sj!q%89;5H`EYi%IIYmu)>ic-cgtRju$Z5M`fe-WIrgD7QtHoz1O%p3 zM-mEB<@d4SFQi%;b;E8DGwW>FLbS#8Fc|=NkWQ5aBf?|9{8Og#r)+w2fKm|BY)wtm zY^x)j-~52Gzijuu#!Yb?XQSL;mfHVg7k`1k^tX0)?g1fbS>xSqP_qmFvW1^=1%;5T zc2eB(3i+qDyJMV9dsV{X|6B@`frt=gA9}zi^gbU!d(`SElYm&exD>lu{veJ|N?J7h zxxhZd6^8!nVpqN!o{F+>-ok+v&5RU#`|1Gk=)az+_2TUCuWc>|gAW1RCi%mV0|58o ze?J2GU-%X{aX^Qion5CF9u`<;ha)J3Z%_>QMUU3r-UlolEsp+bI5E$s@o2pdw5U?P zR2~5NkG-z}>vuc#YM2h2i5@I`+<4mrS=)1pe;?SB<5c7}hZZta@1RGPj^2Q-_V6!@ zZd-v$4@$*d66EM=M4s_33}15qQ_ zbwW%Y0|DRJiVrdR43Po4sgb1?T%za!WG2dAMtAQMe}r3Dpc8fUc4XHl*n0a_wYXQ~ zrs{ibJtlnm+m6#A&_1n1&{R5c4%8cX$6E40rwe!B#~2G6SWClqy5TX*$vt2D@BW1w zD*4!|h9ZOtL9D;Y$o;HT|1=|itQJ#Jz98@*r$4Siz;gTr2!P%~C!lBCqm%0q?-zbs z>vjs*Bt%;bxv>C1nJty|IMDF>k$=F=fVPugZg*cx!iZr>5a{u)HAa`8te3%>URIf$ zW)vBH#-O=*GBH`!BO`^ro{doe|0gKJKECfP;=ZfJp`)#{i~Er0?(kbqh6h4!YuN51 zWIkPClvjl}zsMQi(pl~>A~zXnif;)|mQm^+ul11?X5-1StJL@UrnoqUsklE9z;oXq zc0izrMfOW)5N`*J@j1%<;S)e+eH(vM>z1AUNO^uWAt$$Hp0634EGPVo)W87B7_A4Z zv(+(bY{uv64na-}s%UBVtP*cuJ-Fiju&A4VdxWIGs{jl6mF#e3Y2hjak-BC`G*puLuvl0$T3+bHtA0JkV#Jgv zxK(+(&{W0-Jzz6sJ~%yy*HjuP3eLVCYtbtK zbl;2j2uLV6M;vSv*k{=G@oWG0v6SjYZ6=E5+bdCc8PsTz9s{(OTJQNn#r?)d8?<-K z7>ese0PyJLCSpCYe$b6YBn*t^Ld~}_Yjv*~0YGWT;y1Ic%w#Zy(+}|9hWZXWT#Rb~ zktWDF$(jEuWf1$7NIspL`?9E{!-J*Fyh|iR%KPR zFmMmjLKcmPZ~AU7kBu0B=8;pR$0vQg3)Fr*7xygfBfe=cQN|*PRlV#HU6iqqM@S zrrB;tt(v#*wn-J#Z>udcT@!aN--&1(?6NX773d%QzSWYwZ4v;<_W;d6imNk$TXw`3 z``A8~AM`AT;jX=h!rsaFTxr@j1XhwY09<;+_-}fS|0!Fx%7V=MXedy39`i-I7tw&y zW=)1}P^KN1*>1JzBYFU^J=#~_YU281S@ExblnNcCuxhjmQwAQYdVnReV#l%a56Z&+NtnAK=8)d0NFH)|O z{_GatDB|NP7M&NN;BV3IrY3@r75z2GC@~~m9v4C8ZZJH?s)+XcHcBuXsW5qBTQ&Pk zi=)qSzvp#5fD><752u&;QKp1wwD46bNug)wWj(@dZ+6zisiwfWa1@8Yp1%q)t4l2c zVVBI$Uv@@eW8Ah*0Up+|SME5LLzg&{nG$*b(y^i}-c*I5z3D=tbuDU_7E=a;5P0n5 zU2zlZ=el;c0$alQy`B0onbyDf%E?jtY7jRa>H=^mME%M1g2|m-V?Cy1A|A16rN*2% zEKRNv5wop+u43>tI5mECn6Wc|st<>gpQY1^#5`RHfCE(c{YHjqaoRsZrZDwgQpRgH;ZDxn-SY#up+l5#ZZEm~T>FXIp)ESOwfx%lP>?!z+ES zWJ`fkI8k>2W2v^~+nb@*zxa^QtK5Y{o0#mA6P88uw$ANB$U_?*bh$n}%O$|bL+g5; zl6Y!{PaRm4=>(^_w=`Ik-fMmC2yAoEtSoXTkbm#2`t_OUxBjj+wQN0XSy))}i~dtH zRhE9Fr&#c1NG$D-&M2;fJCckU7DuJV8z;sV^7Djg93a|a4|%k z7vIOZ$z@t30S1BH2UHB)XHyp2(y~H|^Um+_{CZAZKL{wZR1;= zF!b(t)f_K8ITA#;%i)bP6(0t=!OY_JhwkSfRj&jLO60LCx@mylrw6@vG+9Kg!Yh{&v^LxyzhEl<%g0T_myC6i@o$Pr&nF}QW`F_SR^;? zVwy-B(pb!~X0^qZPNNq2Q8r(9&{wvh&I1Nk&C6pLe20_2>!{z>-Lrh;ZEW7cP)eBF z9yqdk7pB)M%cmBpfVyCNdiHG_;lv=QR|}$$B)9qJ^-fKAU%MtOe}-g#HMi3!d8yME zLEy&ld(QfgMavMc`xe)_buz?tdig%blfWA6CTW5n<3Wl*BF8Wux9D}%jT-eCNKZ$N zo7oxuC3}~0RUd)cs%sUEBCCoEY;mZ-Te$0v#XCexNctTKTh-*K%@MIOI*_=&6-HQm z>VH+F?Kcpxm`x3g4ln@R&;QZ7)K3cs-h;_@Ut-NWg4(zyFL70d*qSHOmLsA{J)9cD z#SyT(@8MQ`C(Yl6I94Q(Gg^>6GGLL4hd=Ql+Ii$@df+8*D=p{^^KNlaRtrE0{|Y3AyNH-)TYqY}$qf z{aQgiZI{5nza20k%cTZ9gOCHeDCLODtfRYjP-oLT>Gh9D%fkK_vY=oyKsa;Jb{Q8_wXuWf9rme!ccGl-kp7eY{UV5(7U2V0XP9fBT zQy2nYw4k9Mxjz}qN)&3A%C~oz&LLG?kJumil9siLNGN#WZMa>)h>yQTLe~3yTb)nw zaNJv>dtOoZ-0>1$t#;yNJ)gezA(1X4YD|AqxnjiDvcIa{vh=UjVzMwv>KYrCmBD2)Izt%Q@z?@Gggf@d|3-{`h8}P6hE_St~xj)v)2kD*ZO+`I*smzFrlAM+$FKy{(eUFz4 z=1T{TH>`8d6nweJj2U-kRq#`Les;LSDgcO>9JWI{%*@FJ>3E#^q|sDTHs(I!;7lds zDqK3U;(&tozHfB2V?qmF0j(cQ*H<@_FDGF<+$%* z0@(F`d^?~Sx>2pt50-`sd3de@9IF}x#x{>Ya?_948ik8xi8Q3v1dU`Ap50#bk-jX`U3*w`eQixyTWjiD0mxOb& zqe!xQFbu!3>o!peB?m&l)&zpy-Kde|H!nu9blioQn|4S9*OLaaJA&(t*HN`K(mkbz{4@yur<$oEkzSIN~CbRjg zHQyRKDwuhq=U5b}h25c3Pk?xtow`P$?ZhpWB)`p)iF%)jgv#kfq=emow$B!;2V<6# z?RwwjstJEw%aC*HB=*99Av=PTAGK3gDQ3D$n`^iDMP8mr^b)ZhuWmNA;n#%)Q?}Wx!(#w|A#nd)fJkUX z4Y}bqG24>2HU#+_Ys<&L;APJnO;72Pp4%^_{{S9@?5lF)_>l*B#uZr+gDj_8#C>XC zzo==RAM4HCOcB4Y0hVbpGBR$;j4QxoU?hj+1nv@rWuI|+1mV7vZvi{hnH-GHnw2-c z#Zuygrmb-H-;(z>6B3w$kr21YU!v4`y;#(Q+n{yXUVLEfk-AEm%)C>=paGUd6}T_y z-IATu81qu+gci-_^+cGA`Kk9$Smc1*S|y`+zue^eo$V%1WV=lS$Kg zYI0h3wtk6^T2tMmFJBhols%#2)&ykuq?7`N;hF@e9UpBKiR5wJy5 zOc9t`{0%(*R6;PW>9QCCX2m%F)pL0;*gYNWH3f}U^r=>^Kev9Ttm2Rwco1?5iDv6d z=!N)Ehkog1&CF*52 zCq1;x!1=@;s#imItOJg5^(2w6FAfC^IDp0cs8@AxLh6ZAie3 zc`CrMYR^PSBq?=6#Wz-5J@=H(WjTFgyCEhRtkj*yc4MoShL5}1WG%nP477DLfO*cN zsuh!GhyUkSF@k9IpR5zpE+&XVfUNkxC84uwh0O2TiRM{O900;F;A;;$C+R(|zjrtA$F*fI%GLfW4Iw%ICoPQWl*+oot#&_ZF7Sekj^-?48W&)={sU95MNA5^Y>KHPyI3lpd01T@BuJ jThchW|9`3lbp9MRLecT_HCo{7Ucem{b>)KJA3ggIK)#n7 diff --git a/icons/mob/ears.dmi b/icons/mob/ears.dmi index 4cab7dd237e96333688d77c97e053ec4dad33c20..cc0869939e73dabb63d912bc481cfb42fcfbe462 100644 GIT binary patch delta 2156 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 APXGV_ delta 54054 zcmce;2UHYK)F;|QMkJ|#N=5`l5J93u6(orWl5>!pbEZK>auyIlKm^H>a~O~$ARtIi zgA9_>ATR?n%xv@jf8Tq%d*0cz@9cYDpTkgeRae*CTQ~jgEw(V^yKgBHxj}4zw!W8w zwWpPby_=W4s|x`5WtAJMC(Mb_$?V}Ta5jC7@s^D?J=Wr;@K6reFu9s!<*s|BpXT|*P3vHiEmz7#FhVrJ9v^4wVgS~eCI=E#A?^h&=dO=sAubPZAzs1Y&P+o6SZk( zCbef(&_t)mg_ffQjl*)g!z#o>TWhft)y|HDEBOlLR>4V9eO=9m6tb z6iDt?4Ly;#(ti|qXMa{QskrpzEsKs;D&30=rjp0V61`P7277B2Frwf`(UsGl^!XY? z!M4)5L#Fv7EswRrp7b5*j2@p2>5SjaebX;0+BY0tc95IhFh!>Yel-oe6=C{SI_0t8 z#m0`Op(#V!x+_e6RtyG~9v%H}$=V~HGie8dfmSoWzWUou`r4|%8*l6DGWVT2+xl~n zE+#(WR45lwGb1&)>jXwSg?WAd^j?C?z9w

aON;K-;UBC0#N~!9x?X#*av9OKBws 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 z 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 diff --git a/icons/mob/mask.dmi b/icons/mob/mask.dmi index 70baf0badb586f466748d9d70e3146f94284d4ac..2b2bdfae95fdd470ddbaa15bbf2f63be593a1f26 100644 GIT binary patch delta 2428 zcmb`Hdo_OsozfVMsYqp{7=|Xfg4U{KQs{iBYoMBSfxK z)1Jn4QtmQ?7-U?cGMiysYS;~9j`lu(?RC~VXRUMIKc2PT_xY}8z3cn^yzfK}q`U}{ zh5$>V94?2OdWU(2UJnkx9)t&gn|V(&n(%Do&JN#MjU+EB(V)A}%zCPDDXlR+_;BxM zGlZ?GhGzEw!6FXfC;r$Y7{1i7h#}GD)>;Z$(nm2WqdKM71CC@KxDk+>hz+T58o$a$ zA-LV_LwnVqMMWsi3_FqZ0zK8eS(WSHEB!;#S&rmLSXQE;M5pH-SwD*ea%i19-1uYT z+3%P^YKpOZ<(wmJR`)6!;i{ekDoTk`h_(l`_<2;$p-UPG7hE$84l9&)t>_&DV+LQd zZ|mb2wnr>?TR64fL8OKsIcQth<K^4?xx9PlVTS=h9P*k(o<5=}(DrrMJMGp$gXL zH%!0FduxWF>e4EGx^}nk9_66C!zq{U*UA}k#71RyHD@}mhKhA4IQ8dr{Xt3Y9=@ID z_qMWC$UCPxs&=zag~^Xxzk)`_AKa?XPgd~)i|Q+BEH8wjCU@sWl1g~YuEe_9YNgka zH{L(cUp=5oa$%I$2p_1$6(c1caQCO=nOA|DcYYK9mXNQ_@i-#b!<*{g?D!6k zD8H1poHMDP_i@L`bJ;!kmk+%-F^i1(MX8q0j5Hzr`^4uaa3XqLH5=Flqy^x{<&Y|1 zlN%XD;JNxc&ta`#3XHkLrm1fq?9IM&2(f&;fIzn7bANxr6JVvzH)mOh$w#whUzQ~Y zommckL|X80C$oBaKf3Y|*~mBjS|>Bmq71HoE~y9TYZYW04PGsng~$C|=(%2?^$J6| zp{E_-#e9;QZPMD#6m=%7b##M#>TxpJ6-QK)pTOM$P%*0x%YDW2W3M(%NM|m%2r2iD zp;^6Ikb$<-?usSrxh(jOi0M(H!sNJ!T>D!%iVl8zz1)#IIdc28s3jpovV_+wx@5}v zM@phezDrP*tnOo}0y7cyh^Cz1I3aa6+uv>dL%U(OzC(2ti_1@z2T3Pd@8N1Plae-P zl~cAq!)EIB3RgvRPmD7vo$?9ivakJ)$pV}1c3#M46j`y!{3z;L0;A5CQCNPr#X~`% zA5RMuUrYmZjdkC$Qj(IU-@l(qO8RlN=_xg}MW@T4b#1-&3iFLtK|vK|!(2WW;%m+L zp{o5!As+=^k)^L19}4?@gX0x)9Dbs0!6(*}^IF>TIo++5!E!-=PsGvf@wTV0v*jTVCQ zOSGm~(*T+HeGtEB;225Tr>F3%6)g*<-$xIw3sOEcy^+nEnd;C>HI+Sa-}j6oQ~21% z_=J|$Ym|;om;wB8Y7%BUj;}!1^^z>AtE(Ft8*?=;heAag+0%=Y0(<|mFZTuc9rC7z zD|W3cqV^vh&Vv_4-GcR$KX|FmG1 z&2yv9kr`8DYs~EFX@n|6mhyAv3R08GBrlv~sKk(KDc_ogY~Dq;E%z2^7}yF?bAtJo z=O;C{!I~Vcm!h^z)D_Wi9oNbA+~E)B?a!dogNnp2YoL>4+y(AplzleUQH%a8yg2KkIIq>sXe9#uW9;-?Teqz>b7Cz(fz;^0zNqIO zg=M8&)`@?xWajDGq||`{+f!g_cH;dXi)j=qha0-6!Q60*QwKLr*L2P_W9K>&ne zGXOl4aR-1d2_z8bC8h+NJqh`5WcL2313yKqoo&hyKzB9+BZGtaEc~f2Ix(OlEMo04 zL3otPUbr-F^vIlZEDmDtyQLmzG%4>s#jF~~({k#?H!FrIr>~n21cWo!=K>_!tH;tl zWX(??dP8?bAz z4VE}&*)WcmyVp|0I|IZC0=FTj3ZqiDs8CRYU{L_jIkg+{?{R1-R(=urYkk|s+v+cg z?}W~=o|Km($7i&LC(ql1`Iv$6#*9v7U--7LPuaHiGZVL(TzWt|5cV_GTL>d6ZG>aF zlVgzf8rI?(mj@Xs9+QEMROZD?{I5*@>BQ;(fVfCJOdykeO#j_9u(d4BY)os;xySz# D)NGI( delta 3724 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

  • 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 delta 119962 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
  • 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 L=&0wbS>OFHf|p%i literal 263894 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≀=HeR>*_{U2r96+XBDOZFk*{C2q%`l$b$gFyBt z=bBsyh8p3DnWl@(O6&*Q9QCdO9kt8xA?xA|3xb56RA)ZMN+*KT?px6nJ*YNPp< z4*{e!LbusGPwqaYxEAoWhy9Z7nGa`CQKgM3FB8K5IqB2vJ>ZfJIK)+--Tqz$fsJ0u zfktaP*ydMW>>TRb@OEBijg_!7XH>#!>NhqqQfdgDLnWy*^))JkjVmScSk8x)hVya8 z$XH)N$ihy<<rwtC^Tq^A6~Z&bvz97go4vXpSgCSr2&$aDrk51!L5mE%!=c;r`BF zS^6CQM4@~KL-HFKAP4W~55I_RN(f`5afj^_snID}AA}{P)FlKay^UtkY<}VEDaw)VU$)$J`E;gc;G@1+E zp&)g}y^yJxr-g1VCrz5f5g+1`cAcPI8xnsT^=w`8v?+5C1wjk@YK^Tp5?FwB4aT!~ zAB@n=wCy;mCLbLC; zGI0E|b(NsYI=~l08^<&toGH0Kv zQ=#MS#(_PuCD6RdbIU4dU)GU{6erUdH0@y-W3v3-wRPgVkG}Vg1_&o$ieed^j=EEH zpFXnH8cRjnox7sH-PGqIuDYz*Mq_`FV0dydoc3r2i`sPK^htYZ?sK+jci54}m4H`Z z6r8Zb;hn`XO6ZrsjcIlG|4q4k;c;j40Q~QL>_^1^Tk-V&e}D}=Gt-#ZLfe-j3I@g! z;xIrRlVCx}Rm7W8BjEe=ROs@PZRFbe$@{Htq8<>A;20ud4GxN972eSM^|1rAG(C=> zZjuPsty!JjTKA4$@5>C-Qd2crZo29~)`$CE)Ud=wPU-fM$}^U2O>-mI`wRF^ah1So zN2Qt8qmp|Z@7od!kMrKLihCYQn)#M|s->3T7SX8VG-`E?B@+}B6aaFseWWy8Q)8&l z0lZ>m?GYc(9vf=^)CbL3g4(t|I@fr024U=-Iie`af?x*zEAp_=&ty3+r&{x<@lOmV zY1HG;7n4iN2h;ZQFxi^pqaL-2ww?VJitG7@MHA<8ts@txS0F8Q%ZsL`9uzAhGh$c* z1UKsvwue?b`n;xEb@K1CxR^4e*KT(RI%nvxuHM* zU=kOaQ8Lp#ER8VGv<{u9*iO)hGoPj~+%Gg9X0IS8AV7F7Yx4DLw|oI!+Lt~M0}*0i9CYQU#p zte%K1?bIo+uzsWWSyd@1+TK|Kdm^|c$?Ik?+sc`S6{e~Z`5Y|oYtY$ zZnF3mmlT)yKF54bN@cw1B~3H7ac`^ zO99r{FE86BU4TARN5kgU9osPcdyJ2djw;(LPv1&t1Z&`dl}(Mv1v&N?VVgUvm67-JXl~4gBuJ7AfVX1PC^m8 z(T>>oWXADk{VYWl@6P7 zAeA!Q*VztE8eX|dK7BaGpr(F5rGlW^@*N$xtTQr~#$ z@R-E6zVQ>_X5wW@2tvwZ4+j|dvJll6NYI3_UX|arIyLQ6W_L06M5d@ zVk5Bo<<0OL8`otbYUtZz?K;xG%)ruKKPL?-+AzdyRRf6%$Y`y@bLZ!qM+cD?8!XlY z{Q>33!WyfeP3MQx>^M0312W*A#y|B}+;wmXPUm7ckzzb8mXNWieX9Ciz4GyEjR-#M z`G2qgQYVI&ftI{pH47cwm@x9 zIWgVBkSsVG-{~YhIXP@$K?i`u#}fr%kg3195se~YHwrLHM0W79Oi4|(yksnSzN_h% zFRLf3oyeG&L5+<9CIbn+Ak8k}4?>V>R~w!RlS(+exR?oTo|im#<}Ni2U9RGQj2m%h z87{6JiNyb7*SW^7idJ3KVp&d0N(GNEHWB*{b|aNWHMWK${K*;cbRJ6fu_{)*Sl%M8 zU~`kkf>rC)9IYqK9QPHy2iXz5E3l?0-jz%CZlLh{++%ZUhS#}#*ouUa0s<||qCu8V zMh9ju!DT$UZ0U%`gug*=MJ2~bA@L#w1^dJ#f$rOb_eoBpW^CX#cnBs$g*Ec$Pxk4} zg>@Z8I1b~Syc1R4zDitbK>{0LdQNFU1q83;@`<{vwKL6`#*j~YN2p1Cf z3DJ&5g!rgR=E7XO4|V4J zzI_w3uqYZd@Ws7T&1czRm)oDtmC84Ab#tSk2Ga$mr44))5)#6}#->K_T3B2pd(h!c z$vZL7Hy9ijweqXCogvOBdPD`^*vij!!QX3kf8Ot>@Jl&opW)LCVpous<*98)OccUO zrppJ@lBKRcE=0wOHA<+>?LZoYM6Jd4_TCqfVCYk<_JN4^!*8kNqp06b646Y^Nsprb zs3dH(sX!npEN_B-!w7QDC)B@?1V;Oejz~>H_(5&}5=ps6k>GpHXT0JyRP;quNvIxU zs@9%YUaC)+4P&n}EuyQw(D8fCiS_qmq8A4s=if4`^i)Tkz0DqZfDjpDnyZj}G*dv( zMcI*SaA6CxSuG6E^mH@L%j-_6z^sMP`NW0nQ5!YpPy>Epq2EuhOk}A&pVaetuuOh_ zP~enT2Aoc+f@y`wix-_)^4Ix!d9OcWb!drjaS_C`=!z>VM|ayxNlE>7+WpaOU%aP0 zVg(1BoM6jPx3sjJTwbby#2S0O*5$Pko#wBT&o4Lh@4EyJf$th-^~-m6=|}pG@Hf*f zdDF(_x#`4k8@e@uEXPGNWz{Xrk#1q*lv#6NzyR_sA@NzxjnW(NR)L;x=CCKFt9KK4 zJRTb{T2Q6YwqqIhR|jufQQpK|(d0Y4K7laqw~vqG{Z3NdwwJRj?VtqO1&$wBn(l2_ zKZdC9SbRbN>c6A^SxBLW{TN+!K>GONWAU z^$1pKyPPJS)wC^PdcEl-0nl48pjcBL(W&eQrWprB3!LMy^{Uf0wzg#+e*=$5^Kb_?e1U8=y~e zg)lM)W;RIgHEJ5)v$QrXPr3O7%#*^zzg^?Z&5O+Ndp;s(SWp_5CrGyum!W~prJ&C& zW7$1vF;2SmA=pSvRNMvyu$K$*wMUeeAbDB*iF&o*{mf2{QIOaTeZ}Hm^pN5c`L(A} z%f!9upD>xREzHl7NPJb+zJP*c_lAMQ5GzQ_ld?G4XA9g~Q&-^FQs4zZF(#bFW-@zK z-pO&&shoarV3opa4-1lyex#Cr%-2K)<#WXBEuqva>(u;MZ~2HrOH{Ykk9W1NKoTxL zirwAakJ!|2-t?QuqvqN>JI8TQfZ@&G)6y_S2ks0AoH7Smf9L2yZOlZrhozRdRz}!Q z6CIj6$gMISeo$XcyQF=*v-YMY415Js!S*GY>Rt0Tqm&KIiA0lZKAGKRTz2*FqLiDE zumjENWDD?Pfs)jCfuJLXkb*Q_YG zlEbw=;No?t$A2M^7(6e-5}(!FjCfmTJMFeawfcx4Tcg)Q3H#&C+Y|Gbn6>>Dkb`;B z88mV5`MwI-g*AO$-zYj!s1-VIR$=e8&~xdTLl+2daWh@Wj$7u#Ch97`3Es3DA;fw_ zD_N&0HKAsVqjow+$ViZ2XL3TgdpHBu)g8p>H9$gGNf;X+ z|9+em(3qjsr@gQ-e(HV+=6vb?>RooWBIDI#PdeP{F-a*?lZ>v@iem5@5(wzQmD(ck zSHqNgD_^_G?Gg#u1poFDEu+bEraAFovU98kJSFfa>;Cj-U%kfL#M(#MrM4j&Hq5k; zJ!L-cBTBOT>AG)P#q9JmvN5{AL5O5u=lc3JmiL593YSYP3=I~?2)EZl?|!)`vw&8| zy|r;!be;~~mTE?GGr#{5*caf}QlT#-n^t(m50vSU+5FggUCaNtf9tRQ;jqCiL957e z@LkF+lF_>lDP`UBT2@y0)XK z=!7X5+Ky;zsVP_WruCgc$s+b#M3ro99g(9zWpi_g^ZJ2_PwSwRygY`@Qq#9(?|Y2a z$1Ad-6h8ls4sqT3_osT2OeB4aw7 z9TClwR=G62!dqsTq!1ea_$%{6blyo!tH_V$rj^}YlvIV_Z!e@*3KWq1+acg=2UL@5 z@`N4q{8PvvC(;XRs){zyG|!Qv0gW$B6RSUsHg^P#NWXQ zR&PYPviVlixc`W$kB3a*VA4=|6|%UXp(&$B+uy7Ex}SlkyFY{puinNMj;cN~93W#7 zBgkI=>~2Mw>M0)+@pNSyN<9}pUTS2g(QXqs_6*NS&7Dd8V0W|t|E#(%Gzt4myr?np zlzd&V5?k+4d|{m#@W_P)6AD{OzHqnRA9(|^W82D27K8$DK-lm@u<_E7no^45_R@bBLk>3m&xp>WcPS(JI1m2G067@j>~}Rr#0fkHqMR z563=GIBLQaP$$xYD@9cQc4|&YVC6e;aoD?yUH|ZKbf=?**)`3w>Gielu(p_ki}Uky z7^?o3>gu;(|C1=2HeUE`-$vkk2e5&(+Ta~Q4&l|k$zP(!LDs6IZX;s(W_v(FvHV_F$G%(cW`W)do$=(8*l&1GKyd z8B%D2i|2k*9VZ)a#*x=HF)RE@C!$cM|5H<^``OK-5wxA|3I7heSTuBEsS6|bMu^r># zag)r;4?34V$7R1j{IM^JS^hXCzjElqKFMP<1M&HaBQca;7H2#g+}zt#H;gjDt={mg zlwFZYb0$LqS*RRw?F#%fs>f{w42A@R{(^4h1S!~{I*yK-NYU{Vb!o|EljMjqP;>(@ z@35FL=-TrNMS3#ZVP4#`J-}o`oc)CS5ZFhY%*?6XtXgh7Vv!^?uuTuJbP$~NF~nxD zfR2)=k*ZjklnN1+hb#1{2m0Ew&Ci+sb!GL|pY?+p*7J5Z`Yz;Qftw>&|LQY0QnIS0 zwm(c6PMbKN<&AzVbGtHWU6Z2#1sAe`$B{hmrgEa-Ey&*VjCrsNnSdvN0( zH?0S`EHjJEumHYb@Ahqv<`p0Qj+63Ddju&M_N-d zf1HN8&GS?W?cVlucy3ra{J z4s*7!u<%!TnIyN|;-x(OHl`HJK60R0`yRKy6^h*Rj>7<=5zS6R12Z~0`k@AfnxCK4 zdafE~GNK@qF6K=SC-ezsg^vbv&Uee%nS7)hW@ijXR3^jBCpG_d9`pkJypN216uvVk z*~j8uJi-bC!aL||LTc4N8k4KiMZgFcELs3ZoQZpNtX@cATVeAR_rBKV?i}6P)uy+a z&g-qq^aWC3E8Q3rn)J@fkypz|kgM>#j^xSf8s?s^r+&Uop`$ z3gy9Z*yLKI@8;Cd%!22rxccw#oC1l^l8X>hJj)muC$P=FAz~BzpyV|U0V{HSO7wr9 zko8RUgKo7H2;BwWew;fRQ7-O?J=@3Gnu~|t){N|iZOit^kD~y*U-!^t6zxyc+@Fxm zs39*kV}x-%U7Ex|xn?w1@d!wIt@E@!{lU5%T{v7O3YzR!t}8mj(su71)R2dc>_WwG z18+GXhNSUD^roU80!bzsS)%goX{9+zOZA>h6HpR2ROa|^|=Cq8;*#XvTBPDM`-Q{AO?^FsH-D^1}w(smso9QrH%u71~bHt9vJHYJV2L@K$-f=hDaKQLjH7w%B6DJ+eay_ zoJ~(LE`2g4smj^aA@0kGFCwf4N4J2YMxBgalmDv0$y zb6p)DtS+&I9x0uP*o@y4>CpwH-ELcIvrRS}w$sUCOZpItM4@8|Z+;h; zgzzc~?>xOsJZp?jGG@wtHeDeJBa@WUcdcqQ)~%7c{%HMYPIIeNx!9b|ahV(tfJj6B zNU17xBU(WaP%t3aD|qug=4WJi&gqOYF9IWU9`X1-n0C`=9sq=%Y*8_Vu3bF87Ld2` zch^YNxcPBE2#u|0M!$1g=76I;sVNydhJ1nP(-QkGRvEC2OAs&0)QbSB#qJ5ZQ*E_G zKk>|dp*}dwGg0{WIyySo6co%Q9ThIedS*3RJ0M9_*()dPnKFHmNq;PSZLtte(;+r2 z;SnpOyT^T}1}$G?b*95wjRYTil+0F6w~_Y6McqDcYbZyASNwy>K{8_FoZOZo^lCe&3Kyu`rnJBi?*f-L}jZ3prwuety_Kbys4E zw2l(Zjc65BIVt1?+XKokQFw{NiXk`g32LF;&ldeey!`2?szeDz=!gn?~iU zI`y{|tKqzleq7n6TPS>iZHefPz{=@;Hw5xk2sLitfWe|K-zTLPa6q-31_zGYP=_Wy zD9@@V!a5(TIy}ExXa6fq;a!9A{&(0rIZM>VVOF`{&Pyp0S$)jWB))PDH9A+D<5^;= zg{1o+hM&~AbQ$L{;e)e5v%{Gs->4SrU^r=*(YnK&9&q4XEt$z*ZmzuH$$W=xx9a?c z@dleoHT(O-M3GGU4{&;jDjR|C%B%49w_PJaD14^6JhDm7fy7WYCw$IZ6jduj2jyLaWCw(gMX)R>}A&nmbK@eGI|J_Q%Sc)AS?N#BzXzh0QVOge~KP z1$Hjo!wPANPcJTFYu~(nt=b63nh%oR6A*0GU~O_&1YurbAi_EEr>cgDMWBaNnGVx} zxvWfw(|%I2v$GTP+8J~*@I>b>5~3w0CccxC`{9QrCMNdV?VLUclcG;2ox^EIX`#st z4?GBTiN5>z5toCLQw^<+E)QUJ-$FT~4j@Gbv)ov@R`_dJ_LOBq+7*A9NLGTQ9eFy-lf5?pm9MCrTP)D%0M_De*vNd6R;!;p@%&>*bOl7?=9QrLc6 zlzxcA<_9MUF@TRpPmrQP8#tk2oEaf;-a!{o^TWdDZ#!PvC{&O7c%wuiyH8n&! z+8%|tV8Jrt>uf(=xSHkgK6V6<{wn{=1r83Q;AJOQhoCiBhT`?>*GlSBo=^Jf>Lxe= z1{lnO{8lsNCdoGJb}OP_$r`>|R@*FU{ak_j0SWbK^;V;@QvdDs|ueA$V0W#22ZCagNnu91<+^=~QgqCqMvI^hRTG zqlVH>``C1FmYf~T3|hrDk??f-@m-o|e)0xBw=J-tmtWol%TDxB**gD;BW2RrIi&u3 zkrt3sp+csi;JagWxoxy35I3$@d|j0{khY@p_07T*a!6&B%9p#IXPcYk?Cff-bX)zN z`XHD93=pfX;h#BT}Ft*>#jq4<0TLi^IB{_VZ&Ei~^ zJg33l+;CE5B}a;|7b#$OFvG64XZySoS)Hjc1|Z}4iaeIj@0BqUQt-l!jl1(@LNuT( zbEb+0dFyNe_X{?*mN;eHsYK+h5ixm&ce(EwxIQ?wVX)c%@Lu88Y@$TyUj;3T)U-EJ z+^ewxj*r2AuHMKy1Rk=slzPWiI}+~esS;08L6qbz{F635eM{$}u-pD*{@qHo3^vy? zBEucLCpdGLv}{-@e(Tm`8bPt7|2-!O+S*Djds19cRW9}(`CN^St~g(}fDa>^y56}Y zc;9?)GUI!uJuaGEkiw1FSL-5KYbAnlQ)UD*)F075(h8G2<=pf3+7Uyq=C6@cVK;QW zDM5k_ehR0Ts9dk~zAB$!q}mw5&E0c?nJBRH^)wXuK;xHsF7R@)HO4#ccSC4Pz6l|0 zpv6bBi2!ft+nJ25Ypjs3q7#_hN?UZy)J_DL4IBAYRaLLsk@`%rO7TJe1hbW$i;HOs zDxyItbY#Xm_uH@akJ(@ixK`tpwaZPW2HIqTg^Xbu$FL){`pciabd3cpxwD^(p^!fA zdbOx4R+kJ|YhAE6&NVUR*Zy=(;mG5{$%j)G8 z83#E8#u0G*w>d=z_;O*Z#LB@Id6%Eooa3x%UV8DtdT*jC{97g97!uD#Cy|)f;d{5i~QS(e>xg+FXt0*Q-L%f$`e=c9RI4p%w7oQ@SQx$AT&oI;UB}!s>h{(aJJKZn}?hcwY0) zO=l2gAbigYU&;@XHD5w1{GFX>gS+753Y;gwM#6RX_;Tm9fR;)4In2qW#XARq&`*WG zG~+2Q&JC<(Kr?c}RRX7{AJ<=Dy@)Go3MEH79627Jh<%=-9B+F9^vzF(*q1z9#mkWq zEenx6^yX@A!x*!Mk6xbD*&&4#tIZ#W*fV?BwiK&reOWMUT%tg8q?D`)L->dmSyO-Y@7r!UK zHti%bOk9)7PX;&NoYB}OegWr_Ytk5oMT(l<>WWQ*5XPm08q&^Ma-rU5XYV}6!RkV4 zK=7Wd2!Itl{gnDhUc_Ju1kBCkS3fO7Nm0j+aSHW$&+%GrS;&hoOAgB~`N00{c||^y zGGg0{ErzW0-YPGoSj+l2cJlFth6a47=R&LHvbi|QiCvwY2?dwa3-4?^H{eBCjL5XdD08At zA3^iTZf1~hAR<-63uH3!s@{bWU3efbuvC5Ux?l?2`7B|^y&Fk=LvnA}v4F4u<@+#V zazKlW4*M3fty>Ze+S4srA;R|V*|A#>{gtU`?(rFhU6@N{!l92|RnbFE2%4`o7p^P0 zA1jYd48N|zIeLYB4HY31S9aBNoF7@6O(|n2Yx!c+a{vY=L3YvP%6H*-K-oekGhTxB zI(*@z*|_7n+DaHbZiQ{8A1uHh!3be}8`0i-pWyip+mm?_6I!!l zVRN5b*63I6o`puOVr4U50xmq@HPO<8j_*xU)n88A&zCe$Q7bhQV->A*S_G=kAiY_Dfo?S6#y%E}Ae1|l(qJDt zr}7JBGO2{?Uc?LPyllIYi0wn`3S_}llQbgpFCd+jof1C2MK+}H1OP*MI=jOnS|9l0 z%T1V&;Gtdu8#}Zcao*$)(CMg_ZhzzQM!#`);fkShnJdA(MKR2O6u9yrux- zHH>ircI?cA%`Z3J1Hg|s$lipC8Mu9O*CKW^zdcSJyCm5jFg$}u?cDm|-9GotRc_hI z!=&rN5|r;P43_8#6#)EhhB|^e`PH9iwbOxqF5>Fm-U_x>u~rRgS?g27+Z)iJ5*w-f z8d)h`c(TgoO$lo-B6SNjR9sRL{yDF*>xn^5Zf?5)8vw*PYY$9ZZ|UoZ1ETrk?aRyh zm4;^5qNI=uL7Gif={CjmWE94%_*s31u~d_vUf47Sc-Ri3%S9S6X72 zCE}{H7~Fk;K<0&qrXU!AB^`SFHR1GA@hSFk*9C}qHyy{1FP4Io6-b?)VOvMfhqMS5 z{81((wX?fAK?HcAUj#8Rzjm(YaRaeL8xtho&0cpTrW-6*kQE6y6`d0g*7O(DJK%gp zV2aJ*zr=@kVZS$WxX?0#h4`<#!+f*)iq#4wrCdH2pqCK=+NrP?=EHokRRF(EL$S}F z=>&y@R=2l<2L?WLb#)o^L{ex}7$Nxi`#&E9XG|a<#`wW?^HIN4pNQ#_aS;a|0GFtK zAZUhOF%2Eyb+}=}#Ul|A0Ys>%E{>O}UdTlJICx&fTJ?94Y(1+~aIuO*LV^M$aGGKQ z24gw0Cue6JAoeDAeTUtp3aX-&1riW@o{(Z+mV*lY-OQUd6ni#ke1IbJ6_tqhLKgF( zNChI@!B6`C51!%mcjD}(7G|S9cw!l34ZAfO_=M8iU_nOVXWY#%5O<@A1;8SPh#{>b z!?1r5Jn2=&JZ!&(_iZ;ifdPInKYH~o^Ju3T%qjX4%=w=uZ}_~u7X!yUAY-dfs=6T> zttaVq*gCmo(a4@Oi$$ppJT>B*cdarj1dSi;p$z6IW3>_v}sisPG!wBA}8ywEnjAcNMqQb+wI>OoIOM47TsECMy zLqd?l1X3ZqqFF9-a>P3$wW?d&;yScl=0)N+G zBbNw~TBTCc3Dg^#jOJOdUe@GJqqdhT0~(}!X)1wz9t+rinlV6Uv#RqmC}Xa8Gc zeEloNx4oVxbDXgc%^|17db#P9^|<#-OA!D<55)!EjWdS+LU|1acmmGW-K`=&uP|Sg z(i8TKp2z0V^K=?zloh^?uWi-5q{WlxbHJ$QmVGZOZ-eOQHPkGn5V-udL%Oy<_wUZ*I}H_tM@V1Vp;R=4G&8Sc1_ETw>dfUimhLow-l_ZWJAJ z7Ok5S&JjjN&B^z z1C8hN%T|+*JC1jnY(H!_e+}N|3aWGQ4siP=QNABsrj!^B-#A7FbO8|Xmu~^1PwsF( zNn~d(J3l4V@x$95KZF$4a&s2_H&mhl#AL09%BPz5==t;a8xny! zpeM-84z6B)s`bv32kmhvRbXCFeTfP@@hSay>a&+NJ}na8u#3zRKl9l5cyxL?mgt9e zoAsm8-)UUd3yby}<-g(0L6`RP$vTCwl^^v}J)>;)tp6&3;-5=$LH#ibN4x=| zvFPY%5I`6AAjHXu2QHon#lF>}OrLnlx~#b4`9yJFkgY>Qccz zyh%DA_1#=CLfmg$%H|LVqVB?F3}M)8USs15kZst*c+|pDctTor?yHBuMp~XvSXuvy35c9h zl~!3=;+yChWZ7br+=?DHAhy-<#sO<@!);XyU`_{%h)%osWD30wD{^5ewL^nxSUP2` zo90JMq@!tDE51HaZnj6=MXtY1E9=lF0t^WC;_qs$X8mNSye5o*vz_cHqy9MN%e4Gh z;mPWnlIj*N2_lycTf?6TBu6g>0)9W>H}6pLS>Ss|Mj{eJp*0HadUMtlfJ(}x>#M&b z-Cw8w-f~ur5{qrPv|As7DGw-m%mt;en&>lN+u*ixr=C^z;i0vCN?jcfxSh*5TRWs8 zM`bnx{W(@=a_XOo?Q9iwbB9$;4%J5m2-Z+Z!l*W$pr&U&-5k_eeV39E0&Nz%6Ecn5 zTZP0R@)Xm0Vw@Y-&oU5x^uDWS_#PQO5T1)`Z%3Qe-i<{Q9lju9HK~AE<{5KgTlNn` zaTvFP<)D2;n0ogLtWY;G%)AG$s_GK%z(k^);3N$ssiJd^Ri#%gJ~bTFKwBmo(xhAB z<=h`w{*khMO$=+dWMK_Uo`6pW9JrKyORSv|mjP1NF@K&bZjKxxc(;>1P}Asqh$@=0 zWcc{~*z_9+21tJKI2%X5|56m@Jn(;_F1DUpzJEZ|?Oup9&;0dwVVQ{g{@xl>%MUuQ zWm1)UBl7%+3*C4~zfB+*`**6@71`2axUt>5x!5r5iy?Y3WeuP(ivo1Qh88 zkuK@(5|Hi=>6DIP?&kY_fA78T{p0?9{RrpGo-@PD-uvvm)_R`xtaGaQ4=>2^Y7RT@ zcdZ+?Sx_6gkX{Guwrb21fsXm1BnDbUL4Ff7BwxAar=JBp=T`(Z%@HU5H`QXNLnm+i!C0I5^)9075fvmkApPd;<>8`& zib@G6IIpMo_`Rq|{VM5A01zmd+--FKivboed{R=>v?v(d2Ne|+SkDlYN=b!~@jzy% zsLMn7bj-d(r0p+cYDNKN-W3a?`}p|SD)ZtBY=>igf1(th>AW{Jc(w(mk>|pm7v^$y zKt{(GD!jlCi6jl-BUqHVN#OX%lv34pA>a#5M8lMehuv&G5um*(sFA{3L#N?{Hn%>4 zB){nw;QGPvh;A_|F49H?-9`dS%x(c_uv|<=9$)Vl+=1;93XTf6n6duI?3XE$?q9L` zD}8XE(a5B(HItb^1@@wa5DBTco)7JK7mB=lb}$;d#-1%k!Lb+Cf+TWKhnn804SS|8 zB7(EM2087ZWioK_AB{JtX)C}}wuY><{tJA!+O(GG@J^z3S>f=Fo9IWSv!$6CeKq_4 z#J&A|0q&iYd|7Y?Q#*e$ll+AC2KphOTHLNJ)`)PtUhuW=F)y{axHCw&~p#h&e_QexgNXP3rXa8Tgq$Am_G_kd}st0b0~o&>0#bj)jJl{ z-~sE^7O-rY67K$(UKYsjp zWN&W|`5vP6pzr(TWRVHJ@}rIH?82hjbh?i(#)4Du!fANkqWSy#+a9I}J3l>L&J-nH zfH|x2h{xU!N6YRnh@nY~?R5!$1usM2Z;y!<`;p7E2oqI2Df9${4rR)0_yBL_#(hR? ztcH!2XzuF$^2a+GKdH6~F)mF~1i84jkq>=j2MBgo9MYs%CQ?cl@cP~hNTwHo_=`_7 zKsH>R@hT}77THkUXJdT`|qPyfAHH!(N z3HEB(=6Onr;+UesuNOEX5rt7g=Oqr`mcc+E)YP;oolT;MnP$P8g4?G8OZ)+R|LMAg zzNfv{zdx-!cZ+bqnGu6rA})KvJ}SQ{Fo;-g6jM`Mf?D$)JrUzGLVii|Nur+JZ8YY2 zYccnFt}hy<@J=^dNUc-)BWRn(Z}Y;Zq@Vh`?3xA4^)o9ilnOV)`2`%Pw%N{9dj|ID zems|2vxU#Q2vB}~GUC=@ws%oDktXjHN8)kPO2zHFvDKKmrhKLq1S_GzU9y^X)c#;8 z2Q+GK8hj9az`H|jqc&SXfC9%-SQ3xPH7K@eQ&4D9gCpBNj<;++&DS*2E)4%ua_gS? zB?Kq!tL+JVS@$!c@0D9QR*NWQI`iEkAFKnkd@fyEcwwzZflFooi$IXB?D@m^6w!;> z{QL9?pHHD_oDdkcI~k$T7NxMLVbRsa{dbI%d+4-FUt@8_H{F_kFTl6lnx3-hmiu}h zx1%PCy8Yrq1G1CZ^iAuXhnJ|()|T~;l>qP0+)JLPD#dLWZ%r|M1>d}!4l5Cc*wC=B z0$W=p7J6O30SAyM*=fh2oV|(b*+RnXmc+9KojSZ-IbZ9m>uWk*UJcKqVPA0C?o%f5 z%qpxs09C(g$K&$!)STKEs)GyG!iR@G#`xn_R?E4b4hi}ZKlA;R;x~F(1J7v|41el* zxP1!moK~J)_r+XJny-I4h0xcGvZAxnQD)Y7`@GE}+Wm(6=M8SyFN&!D0P$&l4&n@T zriEU$pM|9K1>4GUgq>el;vu?o0%-iZo>b^^^Q+We@ds!;FyN6soyip;@a;0C!gO}U z>%$_Q{}9&vwx;Prg>7m0?INCj7>tbhI;qq)3QwL-n0;b6vG$SL_tDBXEB?M>1Vm3C z9f!xMnx}Nv&wt}%K_q@?@iFQ;mcM-DhS)!hu%=$4UvQL2&AAn1s{yYc=|v&6XN+w* zhO{L#kt*H+SP%xUS&^xpnqB&X02Xn@ngmiFoq0LynQ1CQqH+N1KZ<9Tyg8wjJ1CK& z+q9grh3^qwy20=hiuNlVHuMA$G9{J0YSP0yk{{ggo*sIzQInIClkvO_we~|(`3iJEtWHZ||VGJMVu+H%+d z1)?J3oQSfp-mdvdnFbj!ezV%fNoRI(S$-3GA3mp+(7_m6@#*3FYmj07UIl{LV~d;LYN%c>N_FoJFKwFX z82*cu3@dyVTX!1HNdOixk555UQ@2=vfXVyocG)*QbZekFxskwpLbFy7eD(`K}(q zFyCThwG>5_xF!cUiI}U6dTm57yD&)Ky19c;~ntH1|)1pcphH@eBB)<@SM4# zR6&0L-uVxAWgWqG3tG0j_vtM%5!GbEY0#(%Mexl|k$gwY^|p;>3@(F3PHRoFNMxrl zOONts0z=$UR$bLSCv#-R_69jf{sG|sx#<Y0F&|CId~ zmNZw-Vn2RHAUx74gSvCVEk$cQZhe0hAh`=^l&gmu`Fa=FCV$E;x2CD=U><%%Njbv~ zUcKdr8Q9qBn!Yvn%|EcvTJG{2e*F9qs&vFpDDmP21HW9eh~$$ePi9o&&CG&vygE_= z5rG$I%UP9!8xR*5j9R?V`xzCIKN%9yC+ofDfEqs2INfw1T(plX^zlox$E6u)B9rhI z1y_KOy!WyFiqV%6zl^OCEuEJjsUPWjhBikS0Q>%-=n zvfq6$JRK_Fm>l9S&5#|n(LRF}(ME=j=gg>94JnxW%v-DYLB8!mLn15jxA24=f9rer zy9Sm{SgTvXQ+8?XHT0Rq_qG3|4QCchWx=CKMB4wt`i&xQjLrwAbyMO2Czpm6!Lo-TzXbCg?l4OZu?|!^bdj-VLd*XDKu?vWgP=pc!-vr;#{} z9#Mz+qCL>%QiRNLES0@|5H@{H0%OLxCXKO_6^3tGCIB`kHKW zYn~lVqV!5;yH_4MI;~?}2aT2gfy8~pb8Rt(r!Xgf2;?hHk)I^t)K&h;zl0(A)*20Z zTH*ljZKGsY?JGYlj$|GFX56@4e=?(R4XzFgk-u2ByZK0|7hx6sLmegoX~xcFG7-xO zLWu#`;Gp^J5qc;;%>z_lmGnCBy}<~5%y3f;0&WrDzCG;UqUOoF(sm#~Tcex(o!B{7 zzbGzvapC5pfq@}He&tyj|9{@lX%3sp7A&IcU15ZUJGa-@1>!TAP44fh$$8~d?I-ip zK*Gj3CVJr`8W!WARu0Y97!%XZL~irr-6XdKxK`k;#HA19nzcPagCP#74EjR8tt!Y) z2gx^2U7||U@=Kmhe{wt~1OHr2C0U-LLiW2VDW7>1>>4b{R zD`HvMziqRx)8d$m-2lOGWgiVRm`HIqu0<08VB+6^ug(uinRe^}3+U=y+q0ki{(R%*VwdfjP9wnJL*?*bP_>iwE)@`7cLM~_DSe<}~-Ax=vGVEK2#Z)9! zzSUma2TXDG#-}IDJ4qY^Zu2E#qPQ)&*5b)?$h0XMjetUF?0JIRa zMN^AC{x75t4DUdrV&cA|o1j|}$mC{FwApaa2)Nm6wl{XRh z?pU$)UEz(PQboWghc=k8tW|3x;EDb}(QC>-Y1#LW-2XSe{eWm+Qi?+D{|D+V^#9w2 z>Dt)aO2lfKA4~ zb?N!%OG1|%b8p4SpTAnT--*Ajy$FrihUcjv$@%Sj2YiIR(y4@pB!t}$>n+dWTw9E! zimqidTQ|G>X$}+6RAW+3grFHdC%cm6*)wyxN6_b^r7zi_@Jq-?nD0!+iGfZ@m4k;n zzIuo#Ry>H@RXo7n0TQA_M9yzb^iw4zIKM*V$MW1vzT!qvSxd)iX9)Ms zlS9luM{`}}+>mT-xWsD5g|9q6i?hGa*vr{86w{z~5 ztot>|W&7Y~S<&k#74XU4uJwr#pvDYH9iLPztDSVJVM;)EujmBy8Ix0+ znA<;lS9f=_?lE!ML-<2dC&!qhG+?OWq{jayl&WFIEoxR?^;CRU zl6Gk5=8gL8UrfY8zB&Z=A)!iw$D4p!dW+4WKNTxFtranRBaQ>PUhhjmZQUI&oou$yAd=gf zJW|u8rql4-wuL8tvde|UOfFUt)@HK0z2azBe@V#-i%v2k9@G->PM5@cCobc?W>N+f zReM?+odZ;Jq;`$({mY-VN-@mPt&L%CEVg`!CT0Ev2Q`6k5?FXVHwX1##(Pe#OD6e~ zG|i>~*)HpQV`|4I-M;&5n>XJDWzOGv%Lh-0dtPy=4yU50?R>h@%hLe*80>)QER!GK zZqn9y;1{L#(K{gh+s#0p$Z%PVW+@?)ect z&Rq`sO9WdJ(W{Jl#+WLUUSO}$F&R-so=8DcI;dNfe zbSQE(-3d}s0!TRD%bbPp*1OQVaB2L$Av-)HcoehOi%VmQ?^uo_$#`}3vX?d2!44BU z5S*`BekPFz2T!^BGkC`N3S31aK2|kPMvd8`ALT}<9HYhYQ1zaOpZ5O?bY1U_29@N1 z$qyC;J*?-&VPC$;0ni7?N65gsw|@L!tZQsE2k}}3Ehr%rehb=#5;aAUQf&wiquKQ*&)gk+k ztp@7~+c#?6u-2=|sO_3!3chuNkx?0}V63KLa-^eAJ%4=4Y3`2hUg#_0Lc;FPWqAJ} zFUC8|fWA-K`*cY4usDFp`7!`L5JB>0-)BcXSnl>;w%j)8L-ntHKX2e*nN$E%6%+P| z#u&_IJ<1oiApQR5!;pAip=o|TjC^<{Q3qvA+LL!uFE=<`A`ZC4GbbdT;uNdJqp_vb-=BUon9gQ)AN^~p5`G!wyG9nrp2PTJ(>Iuvb`z&?#V+Q{&~7S!1TyhPl_HVPh8Iv%ARl8%DVP0orsEzly!70=UaJ5V*)4LnX;!a11l@#+;b6^ zQrL^(24h7pnjB;1Y6 zpFbUNdTy=dBb`?XyL_bx(k!6b8 zLe>G&vCACX0cZ+WsvxU-qWT8?6zAbR+F{0C;kHDYB5@jis7+~5A`h+dIn4$+Zc1<| zu>iK=fUL1hmmcn-7$98aYVp^_7$b|!=9a17Ol|W$R!-zXc)0H1F-GbPw}Ao5rMN}i zu(>gkG@JOWl=ZlOEO@pXn7^`@1Dv+lmQ3;Ndy2dIv$Eog!QB`vm-JPcYq8p}s;hM{ zU(LNfYnQP3HvGBGxtR*0`s-f9gSRWJ#=23~C?OgOnUMgJl9@I@KKmT_`|R9KIgElY zD{GIKIeii}w=P*9GW;ofzlr?u9ZAF?fP{pEs;U3M*ea?!WIz3o zm><(LKgV>>GM=t{Joit)t9;5nw7!*-vDhXGGBYGPgb!`OYqS$BS?|kwc1aiDcDw+& z4RjvDm&D@XuZ3s)E@&%A#b6v9qvOs)3=<+Q*HN5DTL~TwC9EeNTMr)9wRj&mrqGT` zX!Yc8AHQKwfff=X^wBh=ieSKsX{x5e_r1`>`5?hwGW9_GIpcp4_p5+is$~l0$E(Ub zY`nQj_V+d~S^Sex26v;oyD-E}Y`NAI_JD4_E7W>`3>#gJfAZ>im^)nAI45(=6dFhlHNP$-Zj+>@p`$tDdNnr3oZT+M8$5u1) zxwF8r;)4XtIatZ5gNH@|!pRl9xOH@N6#d0&vmM3otKYA;{RANSB{`{u{Q=or+Mzhv zHE(0~I1kjKwftYcNvsS-1vgg=h(N&KpZExmq({^<4vJvSQJx~7M7DX1!v*K;y4w7F zFRIeZF&>S+GZ9Q*3YE;cxrhI6$$_x14AZO4AKKEz+P*SW0=h{wkQHj`mrmThb?()7 zpz3XKW>{Tc4*=RCJ8l>I3^Ns?iQOHf1PO&UoTv@|l^{sud52pQjTElK%?GtzbWqGx zZlToJQG|eWVz|Z8;Cgc16daD868OYd5>4|BQ5W(DDZhp>?UKbNZHMYwPlu9{Y3u5m zm0`W^pc;}?F8L5&XPT%OW(8F-n%W; zc|B=-)(#QW-evnaJQ0*Y$N*3sJ%dZ9Rk(lR?*(pD)z=u`zCU7QQYCg`mdkx?ne=Pa zpm@x3Wo-=+u)g~KejH2_Ax#mm^Ow)@(<=$qF3R17Q|#{f-M9k{CNvou1hV4siB{Nj zYmIe^&YSkMXm0a5@(OE~#}Mt?0g^#gWuiazz`|vv7*g5)=DqRCm}Y-Q{A=;As`i-! z!v2+=;f{B`xSGyX4KBQB(#lhDk8N9bSAvS=-7h67ly1JxR0nHN9_b3iKyAxwI;I_g z=ra{?RB4;X6I7oiV$g?X%S5t;7D;ssxkh;2nR__dqxIx(`K@~#kG>K#Efh*BLoK+{ zWk=YS2>Leg7eqdrV*I_CpFb4ou+VFXM7T>XJR}g>*}?NyqoZr{VczJpVsFNIe!Oxc@y$1A z2NRzF(ONL;P6*CYZgaQ1wV|ksl#f{M!ceX=^9%n1@`P59-EX{ES)Yp|qxB#_l1R|j z=HDxXHeA*=C-)nI5|Sf1*1q4HIGZW2F~;)T=9k3Uwjct+ZQ%HPBFGehUhMlZ_zG$e zZAc7VG?C`gR#9@=+i{^+#nI=vF@68RxYCAz`$PLv+I_D?bI@+B7ha_`^rksd6_pG^ z5t+}<%h{QK54RVna}TkH1cc}!kJIkgje}!pkp+p+@`h>gH7b<7Ba<(9>M6s*a=5S0 z$d4O(Td|mPj1<2f*Ssb~Jr;zf^w={e5feDq6LMaxVz$+~d5EcefC#JgToF^nebpg* z_r0gTZ|1&GoKOoqzJh;hy8k;c<8sDgq?{>&yxB5sEckrOL7x1kl>{QtPBe5GAEPCB zYZXx3BYXw}lgp&z(f)EP4eGKxX|y3no4=SxIehd5{;l?wa9djU{9=n1zIuB2;glr0 zA$+;QmUdMHM*d8?Pgmqn$A{6K{G#{MWxhM9d?ioTbt;29x$9yiG2Pqk+Z}?Xnm^v} z^APd=Rxc4S>u@4Yv`uIB%X5D{AtHR%WhaRn@_wBfdlQeQ>rXyC*c=<6hF$EVJH9rP~ zH)-Za(9_=o6=NRUS`@{}BC{EHC>v)UND(CL(gu`VWij?=^b2=8thn@?x3L4@JH`%JP#1Dq4$6O}!LXpFA z*=VdIVd&l8o-S%6@jGjemmDetN7ri0RlFyr6z}f~ylaJFaP; zVv7wc=7h)&R(w$!AWjQhcAtk~k_V17WomgivcwU#dR4m|MWfENdSbimH z`lS0^@|qp(6kcLWy!LTTxqMGJ-kOy@wpu9>!N!Ve{lx*9ld%l*EdtbV6!)@9$viY7 z=+Q@oOa#9?JAO@@8v?Bou_pFn5m?ftW+0D<2n9%3>=1_Y$tn{N5@u-^t*)-pEd)mR zh2$}Vh7aevS`(9#tId~70j;gA?Xjf z8&e-^Dr&t!6v)kh+JG!Y%muyJ^&66}-|Tba0~t^DcDq_ zLYWuUMGXf_>Es%cBfr(#YCX!T+&nQCmH4;d)*M?*+vC|or3xk?F)5o+nTbv(4yG)y z+BvpKLHlVetipclXK|A|J~Qj{yrs+vo$7cN@3KQ|@fYBT(~5}blOd&i{~idUfA&~a zXo4m$a|x`gA6K%`Ke4XXt73iyU2cT5o@_bXyojQ-IwlGi;9+K7^?L6v4D@E3A!tGO zc<{_AR$!FrKn@+TQm|um6#rvANXf!jN${?)biH6GoO>7^b#?V3xyY2`hjA#7(4 zJfU^9CdieFR^xa}nytC?`H|?J!=iNScglQv`k2JL?h^gl756<7sO|lwJzI`0Ds$_V zz@PX@v*q)r2F)7GY+!HCvN*BZ&`A8Om7(~$fS~BH(!vx0-PJ2CUEfqaDteDmPRZYd zvjfON)xw(mdD#}k)2lV{ZG}C*v{caaxZn<}rvKo(dhGN~Uat&`x@ik2!fmSaOaBJ9 z5lvgK(q-vK)s_Ev?2&8F!d5^M->fc}ugLI+d@_(rkh8RbmesbfH}0n}-PMYbA)*~& z``Zwd{e6klLU9NjC}XJ}XWG#_mTmqt6jwL@@=V2<#kSBvi!hr(I0NBB(UY^J)YM2I z5yTSr@*#QRM5<`^jDh~!r)wU;b0g9Z+kN;mvk?iGx^Lcu#rfcYt1N3BNXM4D0*@>i zpFC+_&QKBpurrB@PrTd@M&W0{Z2C1=K#EX7Rh2|#o@^6tIMBHbe~Y;VpVxBQv#UZr zg_D5wt!pD$K0pNuM=+RerohYEF69`#tMv*nb#jkMxu>X%PWb8~~Ce^_g5P(*yUyrkWpvEj^krsRj=N;^kPE{3W{-@6x zpOW-DqgfXg$&EJ5Gu!ZGw4G4lq=zp3q?;RsyG; z5>IQn;YVhP@a0?Y%Z`9ucv5F=yF*C^%Xnt|<+J#!l5?3&$4xlaiEh=#ogu8|=yR(_ z`;}kFNmYR1iR1>0@BV1cDCZN@s`srUd7@dmW8i!?=fygU9XCo&QX|zI?IvDm=>@z9 z;%P@lUQ_xln}ov8k)=yutR5_C$jW0%2Gx@uTA|55d@el@g`Gtxf#-_bJN1gUIR{us6p8SNoHE=~AHbu>bNU#}(vF(`&%66uW~|{l+)gVw z&(QB)YV^oj#k}F4$7wqXaUI2n3de)J$tUe7P-vt&o>61n^(459Ui;&U{zdO5NLg&e zwso|v`BL*)=hj$f&!ze&x1m*lce#|Z$XoYWTr=Jm!|>}D5^ToHkzH%JBJFTFZFp#q(iJHY=xHtyM=?mt~(9Jd!okefgKZu7vgLcAlPb zv%8k--(EOiS7>B}{~@dJDt}g;1g~wo%ea;}cD(j^Qa9%!XUQ7)zVKkUuxyxEY_U|q zYdQ55+v<6DqL=TH>#1Mx%N!kFd*(#=f-;24L5j{#7Lh#9^W}mtLLBeXrB`FNn7xMS z)F&!r68L=>ZiqB^ACzCqHNw&)k&P6OYH(Fcgqh)BE@l;rkEgnM0P5pN zMO0sbn$eZv4fwZzfooBhW?aCl4*;1{|2fp*$|eh?{?DU_#-2_rOv(S_noOMkzcxf^ zS$w`9z~%fVlY+ZmA%uUm$|=G~Rh>d%WN}R9Ihjw< zQcYDA1)8AwC9|(|cINi}&Vu+u)#siYp;H<(pOjWNv4UdG&I`c=F}w?|`&3(-myBRl zg_Li7w6uudzmZkH#kL1+cOJkK%rY#|#yqmxJuQBA9r!&i&eX0g9JOOPexpSVs038Z zc(o&$;;s+(hmZ#-_!#R$ZIz1}LCbT|wVh~?f%?>1TGkf$bP~ezFOK0>8f-xqhKgT0 zZi52KUS0ahq23bKM-Y=>i@_zY^bO>>MlC7uF1vD3JE(gyVslY@V<65KP}`ul1bS;V z=dTPpC`Mm1j9-oNV8Y?Jl$W;0K0^V}+D~Ru(QL&%$v)TwphI0H*i0$7pW0Eu0u#9? z{?+O1&82^fw~sz6$K-BcZfnW+h89*45;@k;d$-JjqUe^*Y!;3y+8!4R(Wc@nPu?9u zGPES+U?4KwZWb@LngC9um}0YhENQhpTatb|#7xt0nLzT<)L#Ho&6FI-v7=y-`HK62 zZoXRS3|&QXtlH%X`x8zF;px|@@-44dXIGl_jTR2P?K(zq1cML>FE+a$&g`i9Da-Tj zH_=0!3<$CGfZ+`7X7l*fd5Fs6abf$=tnpKs8;xLOB!lN229R~i)Gi9@2Fd_;0(v*1 zdoRW5c7fEaL9dTtKXaf%UV)7*61)MdGKdgpe{E+XYQXs2fhoXU$<&Uu{mHwM_H+2R zUnEoU1X#Q5a?(O+dk)gq?+G@hsiay6WFsruN`J_khLM^3(Hf)sdp?;sa|53{)T<3k zvr&$ogCUVkcqXHfbQtgCzV(gGX!|`QXai4mh?}5XdEldTEwmS23S_+9;#JV%Ipj@3I%sOyO+SrU1q1nM*KW#x`$`V}q= zM@sB`&8L(ipRx9)N;-kYA-DUPB>Uz2`zK6%H!wCG9<_w1yBdD(F@YK9k|>Gd(RbOH1q z|L@zDy|N1N;kZ<@GjvU~y{i9?qB4_=t83lJ=ha@ptWkj#iAJp}6K%EKH~1gO+uvT- z?74m_WZvM=CcE1A3AAHnWzEmem-HO51|~#h`>pX*lpNarUT8$Z@2}wQ^YKoIa)Fch zgF6#z`zSDVAP&u)yHw+T+7w0hkO6~W^&kMtfyR>|fx?y-2Ll`#z{tYva^DZ2h3Zo% zgH`V9sI830@$Fe{9Q`GJ&}@$1$9jY9V++??T53tzN|h6ckIA2LQ$A-D%`Z6gJ;l{2 z!J;igfGNk-pVpu9LHZ<5A>X__W^f1EJ@_hP?!JLW2x%ZABcs%ClWlf`xKZUMu6E5LjP7Km2!3ij9V$H~YzZK_tI~`su<` zaUcNNqB;R1l$Cb;MP+Q#z@D1s*)U$>r`!VW;geJ~z z`Qi~?Rn;5In3I>j8WEIJRmBnAyFhT1HyO4^+n>c2nm&3peel=nOI!M4p!0BpS6@GZ zr{|o{^8u5EXH9S+LH%FIw3jD1?9GnQ{qth7SwI8vXI>d$xXGP}fNQ`SA1< z8@9ZdHlMB&A7J$7(m1;PySI@M_3wcJ?2BidoG*-w(oHhz&s5qiC?H>uVhtUx9j&i3 z=%G9+%X0{*u*2$sby&~*;iX)as zG#sop2$GiT)7Pj3mnlIe#Xj}r=(7poS@rLp+Zuc-A_M0i>dX6!Z+@;+VndmE5-vw# zwt+;Q@(ObOz9W_tkHowvBJIq%4oS^H#o)rO{8vKqK_4$?!SV+A-c%mt=-gPWWEwBa<@ zmV3mJ>NIa7{c!_Af3OE=IWMU28*4~`o0p4g#3TdU1(<5^YuMHLV2LqMIbvq!_&cz) z1T>pAHUdGhLd7yUI@|_!?FVsl-<{bf;o;$W2g66b zG%sY9pJPh<08VGm_xN~vZf<=o9G^uhiuayo_1>9Fq~S5Uvt81 zwq1LAtCh$~W>H-Bny}BXo((ODVY>Be%iY1@ih+@ zIWB3>z01Ay0GA9bDgR%Y7RA0x?frD=r6u2ES=ZaD>$j~XSfNo-jrx3#vDXN~pQOQ3 zJ;V;}pBE?WWYTQ(9be$*-upMz{|RmpgD%so9vPm^R`KO8hHAfza5L@~yIylg7&g|Fl#v z9xLRkucG9amf~2=*QuI#%LzQ)+li9edUm+H_qhj70?@q9zOM`)4(9k{=jVU>Zg1E9 z*?u7}|JXAs!+0-*y650$6ff!R#lgc>2+*?EC6%>JeO?Rd#ZgG5^83$X=Be*^C}&z} zpofCjM=iHF{|Vsl&(}s5ettpzq{@QUG*k(c@K)E*c&$70k&3;@y8h2Ua@_yCae_BR zf=|GIK74kzv@3n8_H!I!gH}un)!mVS@wt8Xo<753$4$lre52Pxvyh`&niaC4tN0+< zM5&KURoY2w5UWJtNRs!;&*dd@xJ@m}BZ-s_Uikx0s?d_=yYl+-Of3>g{a$C1`%jS; z&Lh*jaegCHA2y}opL|}fY)Vq=>H2o^bwvUp{Hs<0+f|F5E8bsLR(MH`OhrSjdEUo4 z%`h^T;hNehveXxttd77`(!M>hBTyReO;UnKIb++}8i4g1$-%(^@&z;=@HN@k*+29) z^c3IpIG&U2V!uzi;`FA61hLllXDj*MVgp5Ply$LlyQGs0t-vy+6AN?2!`mOtyZ1Nk zxB{5IZn_lZ(*DhDbH2nV4__iXn;z&r*E}W|o%(Q@ZG2KO_oJoYl8VZub!KJ;`cI_w zYFIql0MQZLi&R30b+ukiLR{4Tbazvih!C2?dd8Orw52&oHpa91I`>~(@5aa zcJ2Ao;F^2k){&{h(AK+SdbhoW#)$)0@Oy((qG{&Ivd%wfVIEir*?=juHJs6VeY*7^ zNwv`8MG+YK>1AXd*lQ>A3$uOJO_f2;O;IwTnR08t%h|j;v5dY?nz5ygOIKu|+*|n$ z`rXf=x#RdC01D*Nss1RN+E?kZKdd3_W~NW;CW$+_l&!+?UDri!?3%-~N?QMLR#l6b zt#-eA3w|aJ@RahzQmNQJY-(bIl@}PA0Yw@i)%!yzbdqm~rEYeZKyAK`oe8FeQd+#7 zf6Lb40}F^$nz?JZov-5bXlvWbx0}hv9sW_lYK*!^ri`~p=jN#JolRN88p^*nP?_yi zg(zDyV0G8I7Ep5FEDAr*wi7+El_(pu}d(#1fZ3Un-TA zXD#i`63!SxZf;CYG%yIN7BJ0g)ffZvBrp@GBwkHAZ!ZneqH({mc)odF7(n{#@y?h2 zXv4ASuF@faE9O@7SxH2QFa@or`2(2)4C~*K6#U0Wx`z>adp~Zx)`lgx|9ohtrEb^X zFCJi(d@bZ4V zbWW;78)+%nPN&Q$NHs4&I;-t;SORw;GY=OUmVk?br4>|W`f$3bVq(%OkemX12f`E? zYF#%=%&%$*=6|QyyHJMK5s$fP2XCo(3O(bPmpX4=V%W zbRaJ@tGxVGpD&_Go$71joYATqczjF@6eR8Eb$jtaMxA9k>l6s5fb6W-dV1lY-iar- zJE${~OhLCDdKqTG(M#~f2#Q&|zP!Bbttnz}e{iJ&4vt#k;=qZ`-{EYki}d6(iSu*V zL6vwYU*+h$=QUVBLr54fS)_y6&@)T@)0U4kr1ZS!?_;&qd!IWS_WLsJqAc}-W1Q}t z8Pz2$xpEt>e{psOaEDE^RTKA{pQR;@YL7bDd$Bn|I@I){IXZtLH&7czbs{L2k&O*2s8?sD6N}??>bqDKk0g&nV^*Dh1Y9j5v~9KX z9|^p5@%k}i8iwQ@wr{mIre$^8-+`+QmX(N{W4k5QMwETo5|VT%4>yy@H)ToqfPn44 zQ0BL|p(GRsdDg!F0Ggp<7>rCK)pVbeSA~3dUrODN+YWmGFb&!F(do~0M1vZsm|W~% zkN5Dd<4Dw+o_0?$=sVW08j60dhtv!vA#L?SDii4VbFG6`;P<@jM*dgQwJa-9?~u@! zcZPNGrF-T+wB9iAPd(@A#5R8G9TskUuPApL;nLdGKxgk*5#u{O1g;8h$>3PE%b{P0 zG~f_qk?be^u`w?!f~;miF6_ke5CZ9?_P~Nxc6YECmXd1c-kTT44RH3mu)FFt@?9UF%srSfM}qlETYTvJP>SG5 zA44?S9w~=GW+5(A6fRCb&_wbQGVvO+cnesk(y%a4N)7R|)A_)_05?dt0xU?`y)qy9 z&G}{~&@H)*Aa1Lvt=%#DH3h+RG+PdEg$e!DC`myswizNjpv`{C`y~E$tKwN*u!!de({!Ap4H!Xlt~4z7+8q?)FK#LKe9+ z2X6G;pDZIn7C%^$k%>qta#+M6x^PxL`Nn!IbWNu@^Qs9g0pRQd^|$zxwj9M0khRud847wM z$Q=^STS)Xc@jSM=<*9Sm%jG8Zfw+#x$$+J&fY~5<|LislT-`A{Ti+aA=g_bKKRsRD z-Nn$+(E{`>+t}S*>*A+3p$|W2`?KS;S8b?>mORUc{QaXjFAyBbr5?gj z`vs+?KgF@ufhOofEyo!2N=y8NPr@Luko@Za!1i+2@MR$U4H)M#7d5E$VsBo!s=(gp zTE3$p^ARX30Jy%#uc*GI3)=hp`|as68g@4b*B4&7=aXOr*P0q$`I}%&B0LW!ArJJ5 z^~$aGZSFMvv*wz0sv+Ny2x9MNxXgku1~eM9irp#otC07{a_~yGAuwYW&Z22s<3b2= zNpEDb1`ptuZ@Dw9UKKdZi1oWr>qFO;{WW!nZ4LEl_iRlDs6MLS{g0QYC+ai56r6I% zAN$cP#TaNkx=k>AWl+?OIz(suri27l1(j*2V}bw8Hx;D-1s9h?<{}zLGGM?0sL@oy zU7PIVkDs|K88u-hAKtS*_0B4)e_lzn7hJb`n@lqOx00^QKjTnQVvThQJ2WkgDvDBw zez4EOEX2=-@*jc)EqO8z_{8Kqyg$J z{@9{1Iz6z(v^>HehoXp3Vv`k{K+`{B{)1|SXN*c8mze`lKMB>`AcTPEEJhNp8A;|s zrA72{%XaTe*O}yW;*QiAeUZ%VUV6_6hadrQ3Td_mkZ~G}EpwB^n{Qj%`0?u4^tteJ z+P5=Yl;WO=4dQSSEL>btv8y)Thq1rO$@t1`-h(Cp6c=8>4@5vI39Q<$1AnDy&E~4C zIy@c^{tEqW+nB6yRj_;}k_tf1(CBE=i=6j?_&2j8p!$_rKRrO7uUeo$TeJ$3X?V!# zjn82+PPzScqlbsbdQn-O&HVspD_c`uyNJxNB5*Zii5BZU>|wq#CkO6yr&5E6-@_WK zhK{PFwb88S#5P)1dDMIljNyz`(gac7xaS*b8lhUazTG!^AX;tCX=qb@{(94HC-ajw*8e_#54?N$EqB&+10Cm{4ivi(i3~aniqG ze^;sbf*q7LumgeLAUmP}Z&yr+jlk)9As)E9#9DIr2@?}KC_~X#jj=^x;@}W};4=~a z#sFohJ;TxHwEQN9aI~{~akgEi1e{Xol#ncKiIhL=U^%==k4P2#AZW6=jcUwt4MAv4 ztGE~W&t>V_U9W+ak}im7Ey`6Zl~iEcqf7i9!ioXl9Uw)ZIac!H2cTmz5zx@YfP|Lu$Cwy7fS+V$*p*qjUaPuG{7UZTfQEN4ZYNVehsNjSj!At4o_)MJB_q};gKQ- zYXdcNjAc+Wm*0?nE>8mmL3$H&U*%pxPb>u-tR}UQF0~VvDeIJIIfIOFN>9}F^%ve> zo7nvR>!ftUb)PN+fZfn;bQ#Hl`f@NGPZNhC2!igX?8sYAv#xN$dm#yxd?JREb~1cj zc0kf;Ivsrll9BEG@k}y>frFOWH8nM_%-dE7bsNDp3ix3`F){cx_DgI&|lFKxvEa*jB{dL3vG$tW_ad5KI}^Yej$_8K0V3+bwG)=|(8K3UuK}ri?cD z-8EQVUr*1?q4-PCsslW3P;N9AOG#D{=2@80V7SJGFpSA z62>SMKqUql0zi{21{(-QeR+n0ju)O|69FE`(uhQ9Rf#m;hF-%EgB{2OpBhc}Q&{`c zp2>vCsB}>x6DF#$zRk6WH}w|MTxRxHf}$HVx^}yg(Ox5j++UO61bu60AkSAx53H_s z?G;LWEQz6#E*Ju&z_f^)L9^koHSO)m{YG2Ex~MFHv(3yN@>(T;5?Sj-{=o)6=`>Xd+6DOb_bbW=p_(2S{crk(q9FYUS$E7tynex7`}V#4d&J~ zqMH(#^Y;^t97B)K`10X0R#wmB;^K_#?4rOSU$X?!b~57sIxeKR-bx@oE{+2f!USHb zXPoCg)}*536ciEm=|O>v^GG%AOxoNVY;A2D=nosMJeuw?ABSf~W?Wv~F`f7{tgkqWV}qSpvBCOYoYCP5gz^(T}?P3AOPr3HRaRArsIiMeX(RvL4Gs! zpVB`ww7Te4n?;jAaH7{|UAyHALR%mw2PJ=tfYbJN0dKgk+_2SW)tAH`0{%zqjC|W zV|=v1RVjG!d@?ZT;YVD>1NrP`NwuO%^o{Uu1Nbjjf*yh#UJjnrXT|T5=Rwo=;|-jp zp%)>w|73YrJ6BGF@P%mxqvGy2H0V`(D0opi)4p(61zS^9u z`h;B214cYR&j1m;fa_rt)ANHR{49oN?PZZ6F)=Y)?P%0~%)*dlZ)-~nbtaAhQwjnG zLNT-UnQrN&(BWaV9c}^+fvz7H!_=&6d+p-3nY)TK{1<1fnn>Y_Ren3xMNuUBC1o*w z1MZyWtsLgy7)YGA=S@GT&@0KJ%nbs5m!)UDRZ7emwj4y!MUFPr#~}ot6!H5`K|BC-twb z_q?F)O)I~q9qf&7#+mbm7y-QXPWcF##_oYv7Z&7N?WeshBJY;8GyQR9X4l#`;+xOBoDpS6mX*KY=rlgG0F(h%#QW$>ombhI^0K@tR~G`%3gIU3 z(G-6XMI3B;{NKO}0JZppSHEc`@c4g2V;FJllaToTpU{l|K1fjg|Mo)h;J>ERWwMS| ze5!xURr%@73{8e7UFsiS;_UWC8&KmVJv!xfEon5?ogAZA)o1v14+!|zkWE`yn{RTG zFQk5#sj*UPj>w}(e(8+X(?`TvBF9<1L|e9m@mLfwMJjnyjId{9RSziNZ!Fw7VQmqP zk>6_~+-<%LIINxSaFy2940rYA7yb|8qDk$clJLz8G9>z3naIxudtMT_t^Kq)YQFKb zZf#dcLFzbLI(Z!9>=nyx4aH~i@xvaI~jw8qA{D0sV z3NGU+$Ct+*lsA@alO=vKmnAQvui`!#)M3JW2%;{7x5xd0uCE<;JSA_Q#NZN0Wm-7? zNkoNY+2?~54$QKxbX^lK(*gV-?$($f+LwnE!htj5gw|uua72K#J6Kb4hlJQTKa`b~ z$?fch72ctRmC`5(&N7+8KdNjmxuQvf9c;8LjOhBzK~mgaE*G>eD^fF6yZx(YOY_;E zFYcqW3QP|)elydG7rRy+=rT3$MU-D_(-_!nw{x0-HeV05Wwk}lkZ^hP$&!zQn$2xN zE%x@qD^A!Vauc7k;J+o8r?l9dLb>W zu6M|<-CnSo&k*^kzn_vcc@dypPRyQws(FR0GKxbRK}+#0(016@mcO8-jPUEeX=A`r z9!+i*5{(a37mXm=L??ucDC_%rlrRnAKe_c5a<@6G;UL>!6tre~{IRutRwGc-Jt_b} z+F)Y@pcwMExFhO9g|}#DXDC5EMxT4pj4^S@rSvny@I@j2>hGvyL2s}&1M^Bnn-)*A zzLeM4Zrg9q^%y0^m%kv)^}g8O()2-sNL`-IbEX8_lF2|>sz(p{%(#N>K4u+LP&W9{ zJG!_8!@1;~aC_|BiE@WGOOXjM|E4Mc@mh$syzD935stPY%m801 zBna>m#{&sKBS|yH-&e;$&UK5^nA6Ks!05h<;60i-sC4(ewqY;KU}k)pRIXDl#~5Eh zi`x0`ex6iLBG=mgZ5u@^uR(6n`NP2OTQQ9_`Nsb{ZmsX+yCe||BSnNgJ9wLU7CYYz z&;>;J{Mb!`b0i1Np2Q6)lHe=+5MD_AW2jHBNMK^>2PL;QV6doOFmfg1fR~#tHq`I$ zrv5;}iqXy?1p0>vk*H@xYKGlNtLt%I**#v}j09;;orhY8=^CdZUa^_uOWsd3H0g$R z*H|34Aj*}QPQvCV`YR+RK?a{o9rjnCMu}(#D*8@;d46jN0@2H5?gf3F%V>n^?@Ad= zNntR_{N80Ol)k9ChtnLUBcAle5E7eUA3S`ShhBmTDdE4v1kV97Lw)^{^9!wig(ws} z2{h24f}N8?Dj$QXOT8a2#g`DCxOXR|FlrrwK;sV`HPW$2wQML*=}m|vGvK`>Dt@oq zC&hxu9Cm-s1QAG0#n9&k;zIAL2R`fVY7yjgLZ~!8YK2-QHD40XY$ozF3JcKa06`ZC z0tNr+R+v~Iy5P6OFqE8pJZUcpQCtO-QS4(v5m#E!b+jH?+~5ol0}6a7b7VNq6#yV~ z93%Q-w^vn9GG00qkam`V%!@d9s`-4TLlm*qNhPOA1N}>{+k%0MYfNnFBlhoyT3J>c zb5IM>f#;6s=8Ad1-!hh1-Dzp5QUCc4Mpl?U66nkJB~5&uwl!(YueXhH4Wer+lJKyU ze?#@Q!{%br%&2r=!Rzn~U%~B%r~QsaWb;KLl1HZkZY-bhrrTMm`1+38#HoAU2)4Y9 zkKXyjY*xnpP!JyT;!rO6=iq!?$urH#m5K-OSocYv4Q`_20y}Z7{SsQ+1Ih;XgXrld zJ(q(;eGGXmEv@AS!)FFI9EJoYTi2hvfJIAx#y3s{*FQ#c(o;~-nL?4N{5d5qJ9}9p zp5**%T#PS@A!%upbqn1sAdGQ8`FsI%&hW0E68UqlQ!~VRLysG@3wFJ5d>#btX$GIc z`?|hUw)OUgHSn#in670-wb>diHt`Ru<@aolSrwGoi+2pcLP{s8x5c!xTUwBwKQAn& zZELDsg7|E^dP*oNYRn(--n~zK>04;WyR%E-aP30==C^BkwuoB^tO-pqK&Uvof+nbOY6=u(0Fd;yy*8 zsNO^bu0OFV8|;xP`M)C&?#~^s^j*`EOJqZ%TiYjgJ;S2_jxnh&j7gRj*`@Eo>j|%h zZ*I67V$}q97*aa+NcCPUNR4od;XW$$1rN%7Zo~N&e&lR?_J~Dx;(`K>Vq9P%e%WJ8 zaLY~;ly_hWiQ5{m4QnGov4*0d_DyKnMFkk3tmb}Kzh^Ff4|D@jg`^tYjqFRdjl^#S zS{9aig?OYVzd!qaql8E)K@6H3_uxO+iSH;EsIqkU{*u&C^*g%{^=}F$tP9=`b^cbi zHu^7);^%H?U~F<5#mQn@IN?*ZC9{}kde2d zVnn-O>s{Qnuz{}7UQ3u{(kOeYT0lgObmRNL7`+M4X7rgMuY;BkMJkxBL}5b0A`$W}o*{WBKKBa28eX|b4;lUnkN<5b^Jdlx_%+R13D@7gX1>nj!1E!?MB%i2HKwH& z+Fqv()=~n1^trzF(sS9vhWd6nQAJM14m-_}(MhrlDQVE+a8*?WxAm0|yLQ8E1Ni zUslnm5P5O<@KsH91uEoGuP~w`gL7WY;fxvz5L=I3PVKdaRU3JF^7-n&xJgI^^cyn+ zRExtEsZqGg(+rl!OcI*B@bp7W4Gk4Z_g=zgud~4YXd*Uqs-9LNQKXcjBfWlseu8aT zJ$Oho{G!pX3lt~RUcY`oK|ygJWN!>mT>4GLXq`sYCr#1fv_k%Nx~s9C8~9M$(->h% zIW2sHrzd}CrfV2fELBB@{Ubeb?WlT;=7}CzxR41s2=l~v%U`-u12k{Y9VC8I7iRXa z?Fj8AS+g}e7qd|lIFkIJte*>8CzYgafdF>ckS>MkXS z^icW2g{4)#As||(l*s-Q18T1?v+m}?^Wa!%>=qdsil%pg-F>l8&l-Nv7`6&lRC4k< z@1gN2{8ui5CkA1sXS+K)S=&P7DJ|a!QxjR5%8H8{neN=ejEG4{a>`@9JHi6o?GKx& z-TA?ajL{y2{W@r6wJ%D9eR5rr`HZ_P2{TvYx%DnN5>)LPRj0;F<}ViUp502u_&$}4>E4Fg5d{4EX!(cq>F8|N((j(jn@G)#QT`WuLeedc3ngIN zS*T1T&1<(Vj05_k(3zqP_GHdw%FM zheK39jq~7N#X4`tT8dhh9W@P?&C=*bLo=?&z%!A6rt010ZF6k~69An^<>w+$CG*EH zAJalO|An_W@wel{MX&>t!iMDRI0Rz&%QlVXz6$VcPrMU$-oR1Grxf>^MH=Ua9PEA5 zUY^0=j{F!%rS%T!S#!1a-?n6_wfIjQPP{VSo<$uwRQfkmVIJVNGWx(fUYuY+pE3n- zfiLEFfDHjPdXOOWL%5Q14c!LBoc{OSxx`Ef--_{+4z#j}&2JQJ99Y_m^(>q?BVLsZ zt|3JD$*TY2#)_?k?^0y8eY3v^*)U=VY}Cb+qE(`@V7pU5SyOZEL5?$+FOfRiBadxD zQ^Jbqv@gOmpWyEqTp;IVI1?b7cZ$D@5mk-*Fwdbi{$p20YBJV(8Sym~g7%3~G7YRM zWMC1)VifK~x64bFwBeqYPgY*UZ;s5gkJ8>P&9p!K>NO@&i0Rl&tDRmxsRF+4zo)Dn2Y_h zgK|_2D03`}JAKY0QTR2X?mYsiAK=@VYEb8Kz^CH+Uj0URu;#y*@5iX%# zh&QX)nV->9Gva@+wcC0esWW@MYhvXteP4G6`IUQ!i)nFpj@N1qeH_6#qH@Pj#X#% znt!ZzO>HS~FQff*%S+Xe}EB-?q=RYY_WFXq(L%cc1?jPI`lLf8m)d zfByf#sMPXZWPGaA9k=FPwwpe8u3-W42Fp3F0j;epuYI9I0O?rNBmFO^!X(cg094{D zI(N!JUL_|!MiO+B*=o7q?Ym2lUi6fJHiHQ?iSYh4oRi(k6Q|gC3svPMEfO^Q7-I25 zXKcbR4GF`)+U@~DfF!?i+Y*DSuX#TF3!15SX7W1SLZSgaK06cGufDRj1OJfEiHTt# ziUEail*mo?EV>27rGWwELxg6&hRjH-+BKyS&##@@CBGnmRs|=f3ZE;dWo_$Y$p7!} zL{s4AF8}J4l!5~0hB9B8*YAX=4YR#JX2f*K|Ef{k^c5IwERY+c8RIRyoX0YALKn3t zzx6~Q_6<5ISb?h;@psG>&KVsBM zq^5}+p|55X|It!tT0iGxKF0-&UG#OQml?@dIDXd(c>e)6MJ3LQqLqIQt;$m6%It}v z;2-`bhaaTv?(V*G{r;C=+gN#tR~U;~Mux-bVOyXKcfi{CIudli=0$4gbN;}3+*+$x z%YUQ*|Gy#-!kAdAoKTXBx`f8h6pO_y4;G_MWNB;N+tyy6&b?Zq0P+_icM9YW6uwei z^U>VO_X~!>soP@_jv0q%ihrVR@p-oo2tOtKa1Kvv+a|a0P69#@lns*6tAU3ly0@En6a7 z^LoA!m>GAD+Ct=#NRPumoFjtMGn?|e+`EvA==ng|k~@A#bv5rF{hM~;g+}+@j2^=B z)2gmA<`1%;M53Y`s;i_y*)LzL3?!?wrNT^3w?;hvRrEqoX=y1?)ghUTp%R*0TrsD+ zuOTF(0bWO6o#R^Ya}G@n4d|DvB{K^Pr#X)MroNh*KSKb8 zaOy!5ym|)4Djgs&Vu*Tpdjm!4cx!Y@ND{q~97kd#Um*t)uO+YWLr2seJ8*eYUZ^@8 z1W*7p#`hvzsIagwHizNzSof`f=jd~pjyYM)n*$g^2-F=RAc^F8xhYnk>iZG(@a&B6 zHkJh7JK6!DCgdzHj}aBUR>{|Wy^pZyS{$&8HzTO#Kj{Xi~X}gR{EH?Nku^a`eLAGHR)WC*HnzzCkbXhpF5+8N+I5t$1$=kwO zX_4x(y3&PCz5JKHwnQ<>sdV8&{E!*tJo0oPwud*$QpV*Y8cog3Q>NA^altldnHRO3 z%*rdZl6?U}H4-2W{_U}h%)Z8i({XS!L?>)X00}JH}#^xDmX^pc_RSdVKLf|D)(S0 z<_SA0O(N9xH7&b~lwdGqzu^JL2fWw53)^<`EFWGT=sKOpO`&kpH`!IWh=Jm}7t9xl z>5vL4t@K4+!rYB9X8h@ZdY=h&Z3~!`K<9LH{@D>)Ak4*{4HC0%a&KcrF;JicT6}GB z1Uz$U+0|VxKuOs$4u}F22(R*Gg3>o2>ovIUh9)@C&NYjvIbohfpHb0RG6H=!6c!d1 z9=_vbwJ6D(=Hczi?^?{9W*CX*>IMdQi5nHmK5TNLmHzZiggbjxi1Pr1dF63BpqY%$KMk9>XKCRr(>TZ zd%u2KZziDLhqAo-=Z?GTX9Z!+7)}d4j^5LiFhiZ0>8$KhJhs8+*w94z3P#d^=9B_+ zf2a+idzo@5>S@o#sGLFn<3L4F8bG0rkB<*K4C^~00cT&LPp!1};tqzdF~#>6;d8hW zBlYAOk?krihC!EyK+!vtFv0b~VmmCi!>l!nL5em+GTP|K6iyYJ3(oHyvYUXP9Heex z)U*>Sh;^Vt5JqLr4=|qjZ=DL$5#T379hvxWED; zw9KqBnA{AMI5G(NuYRjFnu<@2*6{xEso}grZs?V4CKjV=8jbXzp2s6igG8(`W0HTY zNHiE({UAplx9NuWRCH|NfnEL!1Y;+fUvz_YplM7-zIErpP5p8w!{CTUf^2;PD0b^1q=DsEKbv&8o`+*|{ZXP07G#)W zGju4eU+aIsBz|PrUO7~C+3LvI*QKBEO>8+3uL*b4-HNmP>MllXguUY$AerOvxzPw) zz9Ie*cRC+=88P3{4X+K#`!!L?o(|nyD5Qy8;eN>(7X#U~>jV51?49<2BTV&65$1L? zAxJAii^xSvi(0+SP^UFetL_`AV(gT44Vm-9Ob-2r;LHK8l+wOt$1s+Npc^Fq0jQ)~ z$(ftdd%LIFBh*my?m zdK5M?^`!lk$#{RZw%4dX4ZvTk!MsT}T;Q?)Vfz?`>)+=)vfij>c6I{ z5j5zb5)ZREsk?od%PF7e)juOdJrJIL@CcQ#=9)-Hn^?!Oy%%d0d68Pnh%mq@OtQY} zdlfFRmx8^*ERR*3xgShv(9DUY`A>4W(_)#np|T3sm5)$9ck)T{!Bqx9f{*rtNQLQ< z2isqUEnikeYUklS;G`pXTvm4_e#lApWbF|r%}!B>gxdirw6_$Xg7V-5i2$u@ofCJI z>bstzD_`2E=U%y>Y{QKr<~1vAAF$_3}nhQMuyg;DMg3{3Eqg zWib>~2X;?S1&c>>xhN*U3xq7<05OF6?QPvja!WJ0`e(c0@1_OQvP345r&^f5jTA3J zG{)#|_uLu&gdOr9pe_2nZo(GZADEa%)Ev$R9*Fi(;H!SiQ$D{5<}IUbiMgmZU`R1k zB+23tWuM15Kwa(#D|;T7F7YY4F$1Qpx5ls|bQE0@KtTyb5 z0oQRwPSv_A+!eEG_Sg44c%+C62^8-|0Z_$?!X4ocxdU^UL1m=c`RIH{4n z*x&U1BA`pg<^h?#;?I)HB2yCWIJ@Sn)c3i24kea+J`~=cQT*MGn5(Et=XX>`F!w*z z7R(Ebe_=@sR4ibreabxLJ0?R;WOt0%kH~(> zA5!?ZO2IwB$#p_9`LT(pi?0C(>h(yv=cYufmPGt`+c1p1OG~?C9*Z{7i zmG@cIEV{lK8mIO3t{xhylFJ!xZA>XT*KAgGPT91OJh@c@J;YN;#pZKKE^Es7OI`dm z4MCpQryg6q%R^qJ6neb_vP>G}hg0A$H1EW2nazQY&1D)&TB}=%4}}7Hwx|$N$;89b^_7fxc$f7g0>z zv49u3g~cZc%;IGK_~^5?<*w^{ghE%X_+QV5=`bU#MZYvq%(dKN@<%u!Jrg>#o+_o< z81%$}%KbVM!=s`eKuVdiKnguUwfD!`V#C)SF##(`(7lD|>})?F|0fpH1aekRXyo;^ zU{m#}3^A!;PmGwpNpEY1^xvL#J*u<-2udn0p=Lz2JKulFlnYOUs&Bs3&+X%Kl1Ffd z#)e=v+|krOJAJ3=i==fpW~!1g}M6e8=pKT0HVcmwI3FQXYbEmK&g{ox2Za5 zz?@RVtE&5ze-&EBrsL_BdN*z?&uTNn1hg(Wo|2Ptag?0RBiZO*Aje+h?^$&od_@7a2>v*d>RV0pqjvNZXlA~5#y=W|6r|pmAOw` zkk0sdFC@V*^$UF7**=`{qlAK1sgkJ)ACI19DFHq0xR2VbEp2W=@V~GG{5WVT4dIsl zg_8zjspqTHs#YRdHd3U# zj25NiKEYXCgE5K197dtr%Q1#`PEp6p^g||T;0+7l_?BwHEa*VpgbK;I9!2|?P4`qt zoZjha*?ajvaGkbyBmOpza3i)}Jzm_UqMXAn;Av|`AA14cijlf7bHq1eIO;vmXg@Tt zfPyt9A{PvM#FA6!$#LJ4B6VT4_7jIQX~q+zx~b@qXsA$+^d8;qyNM<4^yXrq$-5vQ z_H_#s{r2}Fy73+|Nl<)vTZnUbVu-m&;HF&#%o$u_6 zGvO!WbOn`ypD$A#ZtwE5Z?RE^o=wu|n|3;?1ViI#GU_3!1)re_PNfyt(K{!7?rt zTSL|8fLDcsali+=&ei|mE1AWL@;yRq(b|#Y1AeYKI#50(try>O+C_j*N0Uy9ma&3d z{kudJBjLSxM92?tlF#ZQ1Y}^Infh zY`G3A_$eT|2{GAQMsYhyaj90lAi;)ccmJ+M^t9DAlhu5{x#ylWSGJyAiKUjG5iXi> zsf%DJlotLkEC61ppFj#zjF9_2YYm_)M#c;YXG+|W$@|zpqai2v`b}vcG!?zR=O*-% zG$WgQD5vSK&%t6dr|-2(mrn^{by42COQ0ulZ>3gz&6Z8l32rb!EO{R^o7{YUD%aJ^ zbB1a4m*x;HNP@5=ul$+)OByPwsPSlajVO!h22No}7=F3t!C+llP~B6Pu>>?{AvF=W z+y{A*8yFxxuevW)S&emFJUbE*Ho3bKhSHL5eghqR#qN_~?XfF>FZVhXF^+N+X|))l zzU6RcswN9>dA}g%@k6d^8vge+3eU-AKuwD~CH!29L(OCfrHyIOrNwRz=;Xh3)s!x= zBV0QC4<*_{Qe*nc&^SR5Q3)qCx}!;hBf65=&S3yt+;tAbE{-^reFM|(h8|BP@Y$en z9iscMxPlTosnBV!wmR;X=x*#2MC?>e)L#qoIU}R@c+j$zG(Ln8LD*3zLRL?gJY~s) zfs5M>(v84vfwARlN=gKvH6lTl$plhjlmoRkQ+N;o2}$U$Uy4W7cvOOI=9Ng0wY7CY z3c=_a4U|B3i5^HshnmuhxbFc#t%8<8VoRsaA^UO`GW%a*9y3%)sjT|_r>PN zjSLZQhyD4NN7eUw5@`bJpF%c5B;H-2`@FS!-Z5bf@^Y)HEC~O6UnJV7084TlG)TO8 zB0|N{ahy%E??@F$0%HL`P5+A}7|oK;2`)s-!;>(3BnCzq&BIj{9U%R^x>jD!AwY>& zk-p(h`}iM``A|lbcFu;A&8J<@?`XNwHuoLly89+(3Vcno;dCJS<{Kj#F@EcFR9yuI zk>8CQrGSHf3MTDDSt`QfHitj5Y=MU2W4J3Kx9EU9x;v88RNRek(J*e{dkJM%KAULS zpQD4(cjdyLTN9GPzp!X)Am+pz^G?R{Rneh)V@91ybKL!wn-6Kio)61fu9*!yRvtiY zAj4jWgZyFQ1O~v?YB8{81AKq@mEkM`6BBc~&he@Fgz`#_j8CW7&A&=O{f2Z9W20Xl z{(}Qlaqrg`y2N|1LO5tmK%Hl4nXIt`haIbJqV;`*`C|grl22=qUeSk^+{sE10Wr|K zu6kF}YqNl*x;)nX{ZFt_U+B0GEe?$+Wkp2=I11!kiN|^qaGiFJH1VtjsA+58+tO#A z1EMK2BPu6N(}H&6LNo>chqkI3rO#_BH%?3~uM*k7&^h}U5{h~Bkvkm*5bE8Vb2WCI zAP-#bup$W#;=DFrFRuY#;yvQwVKfp10PYVTJ`|p{v?L+{Lt(e%&8^$K0N~<4(8f?^ z44|wwoeTK=zq>$zGER=O{e#3%mA#;+L+0(z?sBKUMg}QI;&mnk za+zBWndj_fwO_E@#qu}9iEaHHu3RemYrlS7#FQ6 z=~1nxdy(L_{$>*hI&v_v2|)4+LpfmY&-2>91N5-N9twM-?ubYCmYGNAbM|ZSn*&nA z#2dkAj4(f zd`1FXr9I&2{uUX2DZj47hT%(K2xa)5zs)?Kt3WW_`ybWqO4}FR!HlIv@gV?ee18YS zK7+k#MWnt)Sv3iRC%tt=_ILRFo-0`z#VD@=m#;K(jbhFK4?Lc5(8yCl9F;q$Y;Ies zLa04!z~lCfq!=J<6{DA|Q?t51nz7XHou`_~mfDg4W|iZi zBUo_%WQx%YiQfG1xHtm@5~o+!;yjEhY2g-`z9e95kyav!&QxJKWg_m*V4%Xhv%7n= z93q<9@e_U_#c?CX%ln9);`>XUMvT9VU*>{o3#ZqS_mV1Rt_MOb z36vjp{wX4w&NbOU38Ee?M2E^j@GNVX7!TGG$1Ez0`2KZu{6N0-g9%HXVe4uj48=c_ za|RGvpul-F$Ufk!;=xECqTB4n%f-b7VK804tu&_t?x){mqa=q!M6$=W0kleDz}FAl z^}DZ+;NTcQigGqHGEA5a-oIx6e?**&f&l@7u|F7{ii%iY+4LijFc%t4 zXA_?5G`Ktm`mz8`;<(cBV5b4f(!gYh&&>;J-Q?j&9pJw+tkq!!Poi4n*uZYrWy-%kGH29g&d4r58XqtlWD+M zz|#b!hi#YXdguI0f&XHH1$?ioE_G4@l{+yO?=RmGfl-OWsRC&BSdYiRni~YZD%gDY z>o=(ng%8vt{YgM>7is9EZZpF>HX#8O$O&q|!nzpwe;^i6cVOR*?+#vZ+`vFfn7pxd zwj5z5GwlA<*7l1M^n(kFaKMKUro*bI=-<{`kybhjo-JF+MHdvmDdsHaLI*e2UG?C| za^D{xX!t)+hT_xUeNlYSxPTYgy~<5MYv!zq}yqyk9+%ka_6L(K%@+ta;^W7XD;e z;SL4oI;Fw3VC8lJcwfBD4a&rvuZvAq>Rphr^)Z5*XFWf-Wv zctwKR??;>0@z)F6sp!YEvWtI+V=r{@v`&wG3+6c?{sMdT6!$`OYgS!g34b@Iy_}7_ zn~OF)g9q(kdfk8C7so}N<{7u+=3x5I`H<7e`@|nGvG+w25KPAduJWr_hHSntdF;i{ zFSmn%v*@oEn?bdqJZM(7PHopqq?3pb3Hu0;NRqwDyuEARLL3n>)f6C7-;2lQ#6Vqz zc-r1La_U2b5#$i)J#p}?Zq~F;j&+ffi>zb?WWVN%T3*$?_Dyu?-K1RZYqCBF;PX^j ze7cawdu@?1L?E{N=j8Ex@+P-H>Hwp`R=iLd;JcU4*wP++{xC)kJ{Ur@t&%L`;RB=Z zZv8?lD!M4e57e7E?T|UW!7CukKwy{BL&Qmwa^33cGl&$O zMBpU;2|s7ZF-_o*QIi8mgb75Sc+iymp^fa$kgJyCJg=Ug36D?eP{F+iB|?hTw5dy$8)-E<9*vR6ejxO?l&-4)`4YvQwy5 zT`FI8@?CrURy2=`;%ZzF04h-{kZ4bR0^)S;8{ z9Z}T4H31$T9wISwXt zvo&^+fE$@vmq05fX6Vv&u{RTBSr*vF6FzBOVLwC-1yW?Pzl{?A06-66&o%Rm0Gfk( zZ*j?WaR|k3>fs$=C05O3j*af6bhHJaaJuej2_Lqh#FD=V7<|P;`>u=9YdHX&16;6=yjH58mBO!T`^zELpWWmNjXRm&v5iC=*WK?Xt7N5`k0BgXf z)(_?Oz{0B094>6TzxXKZx<+M*#w$!J?bsnN7mac1>f#g^d-hl9#w*=AZYm|pFm8s9 z)6`CL?o%#{dyLH5%JGq2mNRe}$l{+X<-HCVJQ;PXKSjCMn}phczMl*?*UczH_rAY{ zVFRi-2Nl2l;y=RpH1MaU0E>XsYD&I~=&7-Z7TtxZeyD}3Dkw<2x?b`Ydil8$k;-dj z4`QNdBs*^Y%vZEtZrD;o$IyD2fyc(A&31L^*W6rWLvPd!|f|}%EFzu|MF@nRp-ku zi!UG7=7PVdhq{g|_x?WJjTvvK!Wh-*W2SPFh<E`x=DGkFMokYBb^o>e}e)c)KP`;Jwh#R zn_4>caC=o_AB3(&*QzDNZ?0)k;F!8JM;u%)1+tPFql$nfBc6Z^#jcUqN4 zy4}x7lDprSk?5|#M6j+LkvRk@9Ex(N^O<)Xf96o5S)imLaXnq{@&5Rmg_k6u>PLc3 z@iPgG(s2)!`p@2113lpQwgpbeIcTRP4)6>2PoG%@03rD@^`LD02p=?3$Fim+FIj&12#}jk^$bi!hY`H1g~AHmt91&b?GiZ2?|?TKXEen z0Sc&~xR?l*^6;A;n0%2|b|A3yI31Czc>kMZ=x^AyMtm>WF=JCx=PVIo+?7{f!c!w! zCHA9sr|zwRfMm-vlfKUkVo2gt)Oa2*nk2kwRlcUh!%GyY5YjNP)_)wI)g; zCY9XMgM)ny1pJPWlr%r-u@DgNg*rqpw9nGa>HdHvidIOJI$hB9VKidhj50hb#Gp*> z?c2wSii+j2DT0Tu4h+bEo^UA;UfN%1^uCP-7KjoONF@>;?=W7>JDf%*IVcbmb}Mv-cLf*hX*7&ZLC6X6gj=p6ME#i}T{M?vGy)GP zCLjnTU!avzhPHcw0MR#rAk77mIY3VqI6qK$H5*U{Z?3Or{rnl{g#(XV*Pam3`;d9(1Y3AU3Vvu2!7H|>K%RRRrGxOX8Q<8TbFGe;X`5g zG_ruz=e9qO31UYenFbOiKx;&Y@Q!fzV6(p}?Ec|3^P^J3Rv>0b9yQJe#{hcukD^p6 zXFdUQ-nHyPk^NtfEU_25%~fru{V^cSQW{OEEKKra2bdqyewmxT2g% z+qly*EB2j&Xi4;Fc-+rPTDR&oKlBVu?b9z53r-BkBqZ}4%L21N%xU#E*pLJC7m`#{ z?_P^0Q}M~rd*>fTy^pR(0jj1r1hSq zBUQ9pMbhj9w(i39qa~dOCJfJ50RL2*WDsQgWbW2VBTZ6R_cDIHX#Cn!*6u|OU7v2R z8H?t+`Fy^v=dWIioCgXQgRLMBCa<7CsEh$|JdVPVJ6P~&5vc|rYyZXutLl2cI84bbS0~08q^Y_vvJ`e!PxNMg zN!KUXT_*; zM$OPLCN`Ep<|_?jIUN53f@x__6k)OXE_Qk--SOs*4n-Moj8u$8{KVdH7`-ZD-5PuS zE$Q4sRc{@>3q$`uhD5I}!bZC%N1Ob5oloILgp&JntkWM9~JBIF3De3NR=?>}c zmX?wpn3?nNd(Zd1?|1$`=UkVU^RS=Vv7WuxUh7`>`Zw+)7>4E7;?*ECMU#zmgX;y8 z{21r)TIcurmvM<|SUPL+;rVlJa2{u}GDB3vzqAmDFy^U5qGl;c6xRH6}@B=_0LuSvkhnw zFK{_^^<+PwM3`{_1hZXcT+BjP&A_(-e9v30m4GD!u=_YDh%LE;k&v?(s3qQ7^<+?4 zORLkKYR3`Rbe@K{2(Zzqwpru?xXMfxYs?>WZ!!iaZs`F-$xR;pm>g|u7p==&5(EP5 z5F7x}nal_lsvv@uG;(V|obyxoCWLxA&GU7z-Ui0@mIg)OB$M}~tgLLri%rEo$f1~C zjZW`?Vm3UhP^<5deD*)5yCgH3j{cgwV!IcKHxI=t$qy!2rZ+T@&R|l17duv zo)hhazj*c6*zVhb?m{?zKhtr9se~6YNJyMuc8-xzkW& z%nA?FtYx)IZhBp$PV~dr$UMeE9$>T`DHGb{qz@#O4tyZm-n5MP`2yV}fJgac`CehFwOI+MzH<#}^*y9d(|YbbP&(BX?q%MMOv8IBkvuu%eP0c`jw z;ivGl>4PBI-1pvZ29L)88!+w*bBCm|-}>IDopDX}&X%wA?AZ;{`cNQAd~fi=H7bx^ z3YsZR&lf*l@35x^tZjDY4_5e^sz(@6BBz*}JR*Y-g!uR$NBqp1CYiM_<2zxqROmIH=n#E~CwsbZE?KC-=49Lj@DV=>& z@UGoifl_^20_T-{$+=7mt^3lqR|M?|O*AxaV)=2x*>%7k8qhU?;Jat~ZmFXoB_(fw zSTLD%_fFA0PO=v!(m$?Sm1K<^og9Pm`2%~$J01d7(hT=%hLOzZrWjGW5~;Mwgda(F zYQ$TMYqUj`u|xh$oM#{O3bZlM{0^4CGtmg_XguTG*D`G1WZ7QqA zPdoTP`&8U zh4tb%1X4_%jDTqlb=?GOy@OfYS?8*7;9)^m-Z-pO%={dUU==@z1wf87oM>+>&~=_@ zF#`~r-n$9B9iWm9`;KhglJSNi(@&oTNF_OOUXS?#B%_8OiMZIl@_yah7Ecb|up{}p zhxh`*bP|n8AC<94O*9N?e1k@pJk5^1oD)Cl7e_}0V&3WZA>pPg8UufNLTsNI1gJ%o z0RG|D*@0OOme#w`Ce0iu5eT`WjxRxbYU9KFv_ddT@ynV#uL2(44o?3}s?h*Z(ORIo z3k{bNeBI&6jOq`vXlq_jp@xGkfZS-($NpfW8BSNXwh}V{tuls#SIAIjz0^twq^qv- zrRAD6(P|sLDV$4fR*VXbVprluSP}wMFxR5-5koY|{RqGkw`dyP1&ru9|IZf%vsT3i zSdyi)nB@czjzemWuZF;EjW~~mHoX)=O-M)(vyC{wvd{R)OIt zIX%lgRg*RRZCpz}C=!VcI>j<(dkCRlTnX3-e^?u-1^HY+9L>+()$*{fN+kV zx_&Wy?D~L)DD+-Bc9r@1qz2(e9EGSXbIGcibC_;0ENzef5nK;3Cgpjvu|2@n(1aA+ zPEi-!hRtrBo(OSDJk%qXE?-6lHtd#DV*L+)cnaqK)0HiEcPR0H__DtW|NrA4U*W>+ z9oB_ibj^4u(E8*%|4)y5Q$iCxURYA&uo}DE6l!v7f6v01vIqIKy_`sM#iVWuj z7;OGG5`enI2#ZF>ilEGgEA+>a)6f@!qlMf1yxq=qvl+(ByVU(eyZg*RCE#t2CvyM$ zt}dg8J-SGg>i>3jH+WVlD5FAUdtau)&V6#bL7;bt&DMqX9m7C(&>;6x)z*Ptbz58<{IAd8xw9ZYL|fDrpCHEjZo5DdODE^8dtFlz_kq_`BghM-O(*2TLOEyC zO-!hnXBzKdsVUj)kJEEUs;JuE-iVVT+w|K~>sLfRWpPVlw6J6Lf!kJ1pD!d9N5nY| zE?X$KtAt&UVs|{LF+Ru?>xzzCs^~q z0&WNPPQz$tE#LtEXXnyw&j!XH(~h1UB)f#`%`GDNr6YjkbEiyPFphH*?ex=K{m+cP8q}3Cz7MC5|&rZn~U!Tsp&t*^!zlhfX zfxsf(iZh<)Et?{s%ZTZXotA_2z{itGFM;$y8jO~G*OgE%6p)Z?ePPMF+sxIQGpgla zI+wp)x;e;cg4Kbf`Gs>N12~^zJZcrXi(&+;3;m`pu0NwlxIT2cazzC)8u$ZMkM!S1 zgSaFZ*w}%IS;Pv8p)D8v!fxlFxF+vk?~q^EKcRxO&tVu=_t3=}e-q?8P2s-lRm~ge zfP5wP8iXBYnuCgEEx!)1A?kR>o1_c;9$j_&YunZ5Xz1xhs$g@8cBfA7be}d5P=|8{ z+)Z%TQ05B%TL1AL^La{ebZx0k(MKFwbeITqk;H7`FFv_+X}KoR1ugB8-yeY+FM@bf zp};DKn64+KI_`#9QziZ7qC+~DuMh!yX9x{U%-EcY8T z3Kr7Aw`_GZhwuPo(Gxr<0p;()mgd66kyh9zo^`BE?-}YkDA88G+prmX&{gVwFCRpr zOe$(;3~H@^!ayXGzG#>?nXqEyCC;ht68A5_A+qu5uD3PyX!XQ!6I~*GA=|gvK1?EU zj0|*J^KXes*y_I4F>(O|j&E}N!o0to?LHSo7nM+2UU5Tj(Q-Gt5AaPwGI7MKyu$Ig zRrIsDOwUVQN~U6B!*?;Uo%1&$k}BeAZx0T*Cw!5ClbuEYvRRWEYtN&lo9s{JLG@rxK>yk;AnY4|R@S>Y-#)+Da_hPK73(Th|GtUV`CnRk z1WwiUAMJKi-L8kQ80)}Sg`->6Hw2ME*>xx&H3Ox2blP1sf4qlBkz_HKCn|?jPfVm$ z-;Y1Ew}~4)1ch?=EcLki)-Qu#XCH}OPhbRpTqqbolZ;WBXK}X+E&9yFe+~)}xFC*S zmyIirqMX1b9yWKWnE|DzMbB3%dE=Sj)Nny^=~Jc-!9{J2{2O!{iRoe z7!(>yzSZT6JAJt&gbdPl=$@4IwhbylnN>B0B<|H|@X{K%!`To7T9o7F)aamI-}M;b z1imP6hNsSB|HIbj&p>DAarYn)iK;LHp?Y!cQ;Q$=XbT9yz&!)p?^2cXrmM{^Th`+u za2^1UQg+xPtw~H*tr0YE5gF`yIs1e`T9!QS%VC(msFdj14}DE6JJg?qK@bLM=z#?o z5;OKDg{aqiKXc?TGbLY6*s`ijyRL!}c7?7K7zCDkzCJ z)!}u)NgMLMg6|hzSkO-Rmcq@3C)%@s~1nNi)U$xcDvY?d*<-ne)4Wba5I3rvV_{l zv>T;!`*EJkD=_%p1||jeiQAG=-=<1MDO-u{T&SXau?Qtk?KdhtJhao3v6mR6AGeI9 zi;K5P>+NA5i{rf3ecX>cNk8aePvMrlw`$z>`FW27=1uR2*(Yab9H4^uq{v+~PEaSx zft7~}2n-h&@LsFkHhg0Rqjq>;!VCB|5`L}?)-rZ<;B<96QJ#IE;Ur?c+9No(>qps~ ziAQ9~UXwjerSDo#2{Ny*mLoZCCclaudl6_3TA`MS3MPU@OHjTUpR^c!)+K-9;(Do! zePvOY{SGi9TW+tu7;3pr$ZhS9X(!GI++1Lssim6&gj+7w6Vt;>TsBMl4OCXXk5cG4!Ph`djX2Fvg;6Zt3l0-m%I%A`4+bn%y3MN)|pa zci2)dks508UDaJO3YMdH^wVEw)XwxPINq5T7|pSfq|o;9yY4S)OW!3-H7+gf=IL06 z#IjYg;3|=+SJ0MUs;v(%N#?{#tek~^{nu%X`}K81MTw)|eRojFn|1$B)}KD|Bm(#x zYCj{kR{Py`waT_95CEV7x>_pTvIfNg!ly|RonVfvd_yt(dlKuH6qW_P|?4wXJ*$;Lg+W@4+SyH;qNTW15J4cp1ImG{Jp8vh2O!RE0V#`-)-B4QnnV ze(&}bY>h$6Oq)?!Ht4nvE$-tZ+GJeFuD@TuFPX3Xl~4n&%-ULPc4=85?SX$q&03H5 zLQ^T(r@c|?>Y?zP4e0tBn8Wr^+51w49<-6m{)Q9y<1c()F7`&A8{^N6-4n+{uWef~ zKq8e>g@{Yl2TY*GPw*88uU`}xeLU2DEc9$!dqpfwk*X&@iUmsEay9`(ugt>>17tM1 z%u>}PhbktZb8t@0rJq~xo=j*^B=wMa%21k4J^9SsU4;;rG6T0-h_T2^7Vda86%YJ|{tE-M#!+u=!hK89LN2i<=KrH~F zmWg~&q0spHcf0n5!=lRt2!>~%v#U?sY@|zlt|mhAqoKf*>+Li5x0-76^CF?2edAio z*RBs*u&((p_$Cb~8|@eDykJLXP48ovU$H^)b4OJvj7wAt>&X&Esj{s^CK>Q&aG=nPhvB^cuiOHp;)H{4Ia- zCWE=g$h!Th2kw)n|76T_Pi>iB_5Yz|=Oqjs{oGp;1h@69X6cuf-I`RH{lJqi(p*eo zO83ebC^ok}ExD}2%rLbJSdd!^FwaR)&EFbvr8HobcN{8e|^ez|(&G)?@*HtkJz zqhj<^W6hPP&my)PQc~@n`+Ytw2ha{C553`A7YEaYk+H+Sf9p_UOIS(9y~Q+n^M~9v z`m2%w<0<1Zf1fvvybAXBK8SK~S}I=M(9zbt{&Hi#_Zgpzd;*8{`TB2&-jVyS&Fupa5Y%Jxba|$m6q}%5Lk5M68Rw42>!MO5}#?9 zBrhwfzVH(_M5xQ8k@gGx2JuycuY%ympBXg23MyVTl}N~XU3(5Q?TgpOMU-19D@ijF?1BJim&ksa(^t#91AxF_!N2H#BAl9Kr3h?|wP759 z=uyOu8C{X>E4`;9rj6_Or!2iqSy`m^+iU&T&qZTFvSod^_vRz^M5>`FW^b49>V>cF z6msf#XT}as@Ct47)G2TkS%;VdfGVLftKNGb2=!0BCS}&-8mw6vD|JQ08q50qwd;)< zq=TQ(_LY2ODs^ywd@+C0(NQonVM`EB*5|c0-T2>rG(@%o6+&t4#$7v}Pnb6$3H*{qv44BijAmIs@C ziW}dde7{fnk`QFEtl8v!0vwG!-8mPtbPY-SlQiprcX{+WG_3^kSc{SQ8) z{{vTD%a06ne~s`90cQ}6Voj-*VoGX=^J|wH0ZL9ZP?%LQebz%9kxaN2mqPFw*Cb*Z zM=X{YxRT8c<@bfAaSDC$fm*OyZ9MlbC z6-$wV0{(Gd=k+cCs#iuQ0bp{|wUTifxSBftLlLGV9*TDvo1kONi#=_C`tun8WYLsj zj`=mkme(J&vK#n()qG>gH_(0HCO1~ByB?0Y&o-^zdUd|W$n)M28d}jD^0*hQZCOR? zsvIC|TgnC8_o%S-T~u7*1vE+R;s&0@OWXWJ4~Ux=KPby4j?R1QO9!ci=T48-$ccjf zR+~N+Xixrbkz`RSJ)4V*hbs`e-KbBA3ywvazL^#8RN(Q2P zetxG&7Ld3F05PsCaVXXI2iF2VQXE?U0mbkZQS%c(n|-NRhKKEHTrSQBMQC_51GB4- z5olL%AGW){H{Fu&o6BEYkQ3!EE1nr>7roPSe6MEJW%{FzM#;{Tcs~X?+VDfk@B{$* zB!7EDIa1zPcTSNu@+S0?2`W|d95f{AxU7jlmO zOchqIj>dh~ai3m5#6?0VqRm6=Fu%`k#J)H^n8-O!iO}!MhR{DS@N`1e1M61TT^-+V z)aV-4(hZl;bk3F34V8Pi3FZ#PhU5J(lrZ(jTo1$?zM4xOOt zwZNvWzIhNx?Cr?APZOm7&bz~vsd(AI>b`K=!@iU=k zjp=Ff;>f+sppVSo?@O!ilDQbrfBJ4x4X1Ssr8*v-R$TZvvjqC4l;C6Dl>1x2lVcN7WL~%O>@2*k< z^kDu#Oa;-+6F;rQ6-l@_t{g(RjWT3@d60?4J{-X-!mnoj#pvXuzG?xsY4F?Fu$6AgV!~8Q_z%+lD=Gb ze(Qbw_J))HxnD8Ha0x$_WugqFpWt`XKabljhd^%^fI;QRU^4;@ZHN|TT|A|%wBSs zWwk7n@g%8pRRTx zV#I`H|FsBg3*E?G$RVdUf|y>DlD#@-=^#iW8|gjiZSRoZAMk8`zDb>z29$+P+oZnj z5jro-_ls7^9ySa~b_k^sb{&Lb&FO+6op{(wFu%%Q4xf)LIdLV2@WQ5S>BT(jl0XTL z2yc8@M%nvhLdC-*QW;n>VI2Ubmz1!i`mJB95oR45r0}Yd01ygb&o~lxTGa@eJ^?5hRfLJ?z6eSj;`x|n?HFtK0 zPkOq6Iee1S;O{0yN5s)Ne3TK^qT_9&pL~Bz{Iwf-~r1u+Zj^(HGXI$p1$4bl;wX zH;*klEA$`Da%!5IApj=lZC-JvJ)?owF_{?5LgbMy76{V}@7Nn%4lO^8k$fZL10A;U zEjW$>!c;}hd)aK#F_Y)i@j#t(C02izK1L(q>y}K+%>Fmsc05U_^G2_9)Z@E7= zxeRu$1Ew`?85Qcefsbm?lg^kYNH-6QBe$>H*0m(ARN;~!?h`koeYl?`>keST5Av7m zCm@+1+1GG}7jXXWV+<{uuvnRI02a-x?p!MUF+y-H?@$35Cry_nT3OOR`^zS2|Rknm$g4gpItN>^L} zCkudnIo!{T0DMf5BrpGZQ^M{2%Y0i!a|jdX6+O|f%}u}3xe2TIq&eWK#y*E{^hhzVs^e8(^Tp2%_zr|{(G~o1XTv5dJnR; zGCZhIl)mDFFOnm7x~KqxW%q&A{}g;|@Xh3c6NVYKq!u9_{Y*I-O;9t_-NNd~SqKn= ztb2iUIjMy2ep`s119!&*~dYuO^NgtzlfatFAZwr5>Xj$arS`O!S!XNEc z4_!BH+>jA$tjl3yk9upQI~0@EhyUNfeI#R-Ro|V~)~!T^CE=c7`1Y43gK>NKTrsh` z&QI(|t1Pj>Q|cc+87SlK&-6}npZ4VTe3+1xNA`)}s-zt5f6jWSc*hI7b~ZHnVy?>} zFe!RA!jfl*ehqb9??HA9$pvpCCw#mQ(VlLVJa4%kG7RiXRS>o6r5C6jOARLLr~V^v zQ+GAQgAUR5bb1KV&U8(A)YpJ?iC%R;!YbgneDGPCDL*oXahf{Ez~Nm7h4?0|a`Fw0 zt8zifIA3*v{!X0mB6$9EOQE2vhClQSF3=Tq*GC?KA+=R?Y1<6L4e8B}uN;8Wc9#X3 z+YxLgwWkk#TS&S07!@ zE^$^B-hV|0rXhwY7?z+A3ry)y!rLdY0;PJBo{E3Z4o8H1pV9p%p`x-s4d;X92OdBV zaG)8Ob_bv^SrQxN90GaKUlsV0fVG~GXF|i|33|B15`&Lw8v^49x!jBdpJbDOzmV#3 z=GERmq#8h=pg22cBW3<8{;E?i)7;n3q|#ljYmY9kAZ=8r*3tb)#<>7P zHxawEU8nY#ofSBxaPI{TV#e)z8m?a-`yX1p!Sr*(v$q@onTXVxg8ag7ejUZiTLT8t z4&OX+5+LHo^L6Y24oJX}k5IJ51;~slpoa}x1BP((6!+PqyO}vc^Wd5Qlg|;n>h^ORz1r^&4kSb2 z`2=%iX#6`$`@pWcQ9o#J&sT3DlH9dD?Uuriuye)7hH%ij!rz+Fy~dB|T@_t^V=lH1Q?6So6;-J{ zH|PQhglj~FN5!vt)AVX;<<>M)Ecy++3z@%oS<&zk^mlf)ihq)$Y4&QU6UyWF`_QTv zwDm6MD3lB(VRn`bpQg)-q?X;H4-yqCtsuf<8uz%Ik7ZU$oZ#02mEbX^y@eHe=Rp}~ zB$beCgoem?LKW>uw*1u50gYIv&#Bx@yJ)m7eV+%tN2A>-A$3SBzz9J*@Kr8m zHD=|^{=8aU`mEDem&sK(c-yCu7yaHgJ1i^X{?*xm@C!k1_b3aESimIHdZdFXhjZZ% zsaxa4 zO#P3NCFWL#^aP;hk|iSxewdRVPTPl*-ae&o`q_orZnQ)|BxMp^3oJUE^y7E1oipeS zD9uq6!F#BrfOn?N98jL=)e}X31Kx48n;7>@aGbZB*7G zY|MVPHXhD*>th!4YNpEf*O-)``1u8g{1H(iRkd4KCZ2mj34B9kk4@D6vg5`ny@hH1 z6ptTRI369Ts^Lq7>d$5gdWA6>jStj~JE>0pd@IsC5pI$Ti?cL$#@-DK(dvJQm*i2v zdtI_-oBv@_F5^DH-eQ1x!C-%$?oLN8i2_2e{;I7k6jrTg@b#Z;ba}#9I{y z@>@=_7_~)_{ZA^_)#U>aC`l4?Qr&KV2vKi8}#o zyvcWc(^K!rGgGy{3(9eY*5^RpX%1R%@-2B?IaIu?jrZ}H&ojbfGO`RZt3!v^+%F08 z=Rk=Y_KpJIe^LPiC;%Yg%k&mrn5P#S045}&B99TmsNML#kuO=Ego<WQGXe%HyWE^B-vR{cjdRJRkrtF{}!rrKX#45ST`al)NjS``PX;r8YB`bi` zNq3Gkyz4o1rh6SE6(x(G0u>}5^lfDFue?gRc47?bPO7gMn7TpgT&6ygV>P#ha_*xl zcjW+!2Jre>f9wVzfYMbG=Ft{-awv`{a^uNTk;l$i4$f8W(pa|x(+rEat2S%Z5TL(u zM=!aFGi|)rCsqGiQ;rB7k!<<5-UBk)jGs?Xs_nzhaI#?7F-eY{fR#m zONkQ<4&o3?7RFVm1B&JRwi>AET~E>_@H;8uw_?qBqfGN90SuA6@@1OKea}dG#0`>= z+s%>ChgUy)N*Is1(HeO~g+DPrw^kQTYR-rC+a@Npfw}9yu{hbJL;oih=Ql46wL$*& z=Z?jJZKUndvX=J}H6r1VpH%MWXb9YL{`ox^fHuUuOj=4meZDJr>IPg=)URe-liO|9 zWciYnO~0};|LA*23%qf1HzZrN=-z(k?aZ4Eq>5(2ZEk#QAvFM}x)FUqyy`x;vsT;1 zG)g5}ucV|ug52s_0;qb;ZzKYF&P};LhNCtm61zS;1AskW`%lC#{PAdYZcFcg5yWnZ z=rKP({eud$Bs|1E%>u*&8mviE{5KS#w1Qi?-Ut1R;b*@x+5K91tcl^)1^s_OV*r_I ze((E_>3@KN$fA}B{@SlGSb;R8vwp(2-Yn!t}GMC{T< z!UA&ty7fLdhp;b{=c-S@6%j4BJQiWW8(bu6cwWRB;s8_nuzlx#uK%#Xw+Zr_w96!| z=USueM}ufeiDu|}`0L=kB)xiik6hHgIq!IXDu&oAYnE(#N7}}jeER%ZL{d^_J3S0~ z{N335=QIMjD139vP;!ZcGBg$_ECW6tTa4fNE4Vs;a&iXgO80Y)DvmIE^^^3C+A5MN z`Jbc6d~nrQd!JMzKJ)SXq&e(K*dSb|Xho@b#WK}EVJgp-VdxIdDf;6lk1g}a&t^}6 zJkKCqko(8@kDm-bFNT~l0{8a*8dHq-RqCq(;M%j%AoEdY-#Y|;@AkRTa$Wt130aMO zo;SR-Zf$26K8X5GrpwBqu)mgO3Sna{D9Ojto8iQK7U+-4sZ?=z~m6lx{~B zialM7L$D`6MjKR}NyiqrY?qc)T87djUF|iZ>kA zA!J9eqxh+>)3zczb4N^)FSknnU3Ku8=d2)HM%6v;RtHW@eO3C$eIj0`Or0TeZB84< z5^*jJ7}kvF6W?X_@MJ98kiV8{h7Sa&d>dcHl2yzc-U;r+@^#JZXiTNcMCw0pL>AID zBHh^s5f?~VH_U2tR3-BExoeKeM2QFU&OL&L^AV^k0lCEiKBx&+t!rNXk=+;AkU=*% zsMF3rw3raBTnvv}4T#~6^zzbUjP>y*-z|hT9i6o7*xI!sgg$q;v+TQ)GC(phK2Lo= zAX=?R!l`j^0SG>PJaQ(!`2XBD_f;#8I5$8ACB>?IYpjmwsy;LgV0)F9ps~CG-&gg} z-D0(q_!TWPpqIa%jPt>ldNJAc6_Hl|2g8`$A@4ZL!&_lZALUD~*F~C2)m0PTrk-r% zRyC-gCjt0PgR1&XekTm(O;!_ zij)89gsz9%JX}#h?%EmPk^uiPFW4+a2thEt{NL@w!QK7FhVu*Lr{Qvcw%NY;uR+)8 zi{!89U>weaJ}reL_X8=0;rNi_HM+aqSk3p#sQ83TIZ+k?HPDgaH_QU4)Uv9l%e+%IdB6Aw6{eO zPZ{Tnp;E<|HKv6H8YG{<-VxJr4N8D1mPznaD93z0eyc)+hoR^3O*<{p`s}2`)%Y(v zG(76B)h;=i4{5T(-T8+y#O_OF*aZ>Ocw}uACey@PkbM~}xrmD(Al0u%(p|h+gA2@c z0h%5hy#9g9%Zrk7ph0nsGPkmOOmQ^qFhKxyzLwEvZZ%Yq1H_YaJmT?g;4b3u`B53A zY71M*R!-3*WtA{8U)>|y1!AjSQ4+ax9Zy0$zW&Yc?j5b79b-ksIMw^%lsO~rS(Il% z95lrqUcNG6;W!e)56~*PrL}7XD&&_KaHq8>n^^`)^~OQukf@y7_Q78i3ue-C73};w z$Yb_+ASB^2M{g?O^Kz9iT3oqj=KW}Wr#Ao*7OyosE33JQq}oN-f%9)$wj|sfrmf3^ z=|_Idi?T34EaOZEVm1SC*?`daucSao{MMsjA}0r7A?6U{Z)TEjJ=mUl!2MXhhS@;P zGa49rJ6O2GxVHUk>=@&`94@Yd*{eBeEkdFHK9sIByzW4$DB;M^{}2=W?laIO?r;k` z$5W^LWKLEz*1nv2oJ|f^`s7=qyv>b9$R@S>X&T*6LXSXygqBPLdwON@<9XVWC@e(> zl!-4E7uOGaKY=?RQ%0rOyiFB zcG%CH(92qng}`|2QG)nq=m{DR0*gs8D4cIR8uq2swpIKf}mqy+aLG`M1m~Z^kclx z^8+&DkbZvy#9DvYMT?dq2NvX1LO(OUKUY%9K;2HDAB0qK;fW&vt%bJMMZv}W+6YFEOr2_W_O58|DYghFn z?B+JhIgJ6vnoI~n_j3FjSRj^7U6D;+*JD^knS7B|myrfJw>i+TU`#0YLrFIlL2z2psgT}%6lkQ1ofV2V}0 zEuXCzRF?}3@_XI;_0+NQzuF2lQo`=5mD=Z;#nxr8?@_0G7%7&8%a0( zo+AnW<`gZeMR5u}k4)2h874t-7JWqgw{n@Kl2Dl}$Z#dKmZ78`M+GTfkH=}62T<0@_>k|-d?%5-Sv-c) z?s9*G*EmL^s$JNN0j_9*r}=j_Cupjy=-sxhBWDaQqS%R)x)>9iga?6sCt7I5@P(HX z#qjQZ-}*cpc}_~*K0Q)9FTR|tF8WHsdLd&dovyjqbDpNNhA*Zq8I7}c%0ho2Co}x; zg`Je|0a0G;Xdtr{uTN%VkZIQ?LGkssK^E}de1)pJ7+SIq&`p3*Y{7dVu8BuM16~_U zfzr$wuhJmJ<9Lm7Jd;%10c!ZVS|aB6Rs5IQkGDa|u&Wloey*#SXmjb4Yxf7+*mi`omv8#}A8)Z!;1HEyQQD_1<3VcF zYS4)!tnLLLh9FVegJJd#y56_A0iOW`3xDb5@V32@Xo&8i%dlUT=Wntc(`nQccoq-U zQb5X69W#lEzgSjp0EU|EiVD?=8wd_M>OVdR7mK#J1d|GpmB4Fy`eJ32M77$$&-qL$ zu?=`B*OIm1qGC1eyftb#qHx*pXQ2uy`lxSKfu!-%Dr;^v(jCr(1jS>ZGnD?;&{#Yo ze84pLGE|&%K~GIpn$00dO@s@LPm3a8 zh{`uVmT*%KA%Dcj+5XcWjxYG}q#-d_Au;o;XaR@CCSegOxE9xFyd;V~p&yoWE5%n4 zfSjoS?|m%%O+k>;gaBFfDbD)Vo6tub5oVQ1G$UcaYFi8Rpe+cr*uVzz6S?mjtTimt z#YCUg=qI8|CH+sI#LL}@12963^6BIJyBvm3L_GKYDNpi)Ax1BV!aVP>e&=0JF~Bu& z7tJLmY|uau4JzN^d|7Qa-or!`iK}={o=6q6|J33di=ebYt^;Ueqv*?VA>6I9ak6q2 z2-MO|MZtgKQfqOn1QXR~t#|8na!SM`MwI$k^^lo_iNiAuc!T|p!d@UR>Lur+x?JyQ zizdUUmGE!*w{OZ}sG`5Xkmu`yf(xP~=K9)+*aGj^!(S@2KE6IN!HT+i?0p5CsYm&$ zB;^N?d6cUwJKK&6V-1ZtwDJQrQXbk|%YB)`0zq%Cx0vx5DkX5f`fscb6_n49K2pJj z&{CsfYbA=?M2TVpbFMo=G%oz-NC2+TQK6;t^K)#>{IT%{OKS{PZn~AP{C6KZ%G&9v+gIi>k5Ev$Lu6w=%SmDu4M7?xqGsiRGIZ}&n#Z5Ip!Lg_*3NE zwJ>;&AHJ_*Efi0U#g+POTwOi?K6T`6vHq`h7@zN3ajk1GPKglA1>vglx`0{n*tRrq z0V=HvFb-C|gL$Y_98|IYb4oqD??`};MV2FNJ=Y3S2=e9p$5hsl=_yanT*l&;67G4a z3I)9giiBVcc38ehmU`SorE1F&>eCw#&AfBgksl1!*sy+AHOvSvQLq;JfWa~`^j6=k zMWO^bHjo*fyxm^QOJ+6=Nrq#q62>0u^_5px5sF|Rs5^8;) zp5!}S&R2dw^cLf-%1^8U)hR=zf|-h?*vVsPpMi^<`0K+T4li-@U4dne#7lSaj&gC0 z=9g$)0h&J6%zQ^ZTqpO~Zd`M1VC=6|lg?7n>^)L1Gjwz>R&Sqkx8bi9$VTIvuE-vS zA29`CPZ0}-Vvg_Ee_CjxN4|>3`JXbcsrw~!`u*3^7Zj#5Y$ZFQm2wW&As1coW*pn2bWr`hhwURJgq&^ZT zw-1(SqR2Qqdg* zAM^clW4_dwO_I_L7p>x@!@%ljeRHp}?J@0%5vEDo zZ_K`9=;L$kiZ4Ml9kGF|D<;g#rc{L_zvp+?Ark^>exuCfp!2_W$fu{+uc~BzH(QiF z-B_nty{RG#dH=LTLZ%IN(a!f5C2rBiu()k!TPNouT28qQ>iqc!8re`t>D!>h3`R1% zPErv}P!;c-By7LB!6S`9dX#JOiz$9KInLCbK#QfyILVHn8|hrut>b%$Ml?}*Xj*TY zN>}2OCM24GZ|=gmxSuH1S=!e-f%3~}(&D+mi4O?AKbV7Jofco=0<7|bR(!)jwN(Z} zd%N#Bczg$?HN&$fqwS~9a3OG=RFz?mj1fMG zzY5xR2&UO}(1}Y}v`NHaOaV-KF`=71ExZ*5o=fK zZ50BWQvJ}U=@s$I4YL(e0fHDA5c9}^bll+#?}o(-G7Rqan-_G9Y*-+*7yokds?jmK zW)6W@SSVWa4fnDrxe`MtLL53K+-cj#qhMEnRmI%di!^-L2+xJjXF_{%mQNu-WH#3TpQy1v)LM^~Za_UN67 z!*{(?S_jMTA`g;;CO=<}Nfu-0QSbHq)Mq_PSFus9%9jnHMdw%84K#@3*r-JHw$7JZ zrRdZ`3A$1Uj^N{$oV_=;6)1>ocxK(h8B}spx|B@L{yq;97pe{D>e&}}K2dd%9DY{M z`a`%;`O=FdT&)BMI;`EzlfE$SK)D8J<$-0Ef9Ubs5(~0U2+_a&- zf9|k5LViaZVG{ZCsZK7iYqET!Hisc#N*h7<;Cq!W>uggduMmS*y-=mh1-_)C#4H&D zS$BM=woXJN;f2T-e&d+b(4&5Xv*G;9wP1YFv3Vs*ivIAXV{Y26LEcKyEUd4~j{ZV| zz1ujeghKlUd~m+{1tLR2G<9$+;SaCM_)pu8!cDQM!eEGbci3oR7{A~jT2jCk zLDyBb9%qD#3N0e_dJwJ}=s;V)Z^&lT#y=SI69wL!2vgc19b;S7Q(BQESA^4-@Rb*? z+u&GRnT5%?hnk7)W8k1&eFVPTgZGV?MWvuH)mOARg-vCPgtz)I!k){P?xOb{aNbPc zT6!V!@4!1T@Y(Vx#^9J)a5OTKVnoGuu|28g@bL(F$prbEpM;aP&AINYp5_pNYz`qd zI}gM1Un6iaE?etOXQ6KZ9o}TFodj%Ywy3DcZ+J)YXA55EsPdIl%kCDC7iDm4OcU-R zl+NUk#4#KD(acf%SkFv{dsEq-4lZ;}Ra020Bq!4+YJaE4RLY8W_9>Oqs;{P1Y~kBa zW<#W|Y;6D1<>lZNJ4=uL$c+DZD4y)suPpN&dFaz*hXZf8eidmE0;yu@0Aklg%fEKL zwcxanJr)+gwB-+QLOfi*HJSOY#NPHCl(L4*MFEkJs5c*_@LDHZ38#Qc;m7B(*=v026H^E*Vx z4ryMcL1{ChN$@&8d}*KE?j8=kF#8M(3G9Q|xhz*D?b2x=RR8`~PW|WXsr5m`F?P#a z&IdUV_MT--uZraS=fKAssP*)#d89J=a*Vsn_-WkY@2g5SW)yp{Fq}+=!A*EwN@g0c z_P2q#ZGYF_TuZ(06Mr=iJ|qMs26OnFMoaokf6>>`p{RIRP0((n!v{zJ?0@Nqn1a}T{;J`Or&wV|0e^u|#w_fTLbH=;p?C$B_d+oKX?#$I{SACS7 zZ+38eMq{$AOr_!0(uw38-b+3I?fFJ*@=!MPU0kwD|D6?2+{RG80z&W~ISy$H7q;^8 zGGs&?riZ;#-^L?0-`-vo_ZlO3F+n-jVL-q_W6%iP$`|a7>4=1b9C1~L z8Yuhj09eykbCvhqtVu!};dyecW}RG2M7$6O76~>wO6T|gEF?a2Oh?Ouf2)bzR}ziJ z`g`x@@Jr`;!wu=P@Ys9LytvOiCr-vdznP|}WT!$KV6#+*()P-tq_)P0n-4Lf(Xh|t z+g*}Zry4~}(CaY;eE)`!v$>q9fiO}T{Nr7I|o-jl=9(P(<*ryrBH z_yIWnY=HZ!#$qkqOEJOk{__~qzEd=9VlvxAdtRHU zb_E6~Tu~Ttvz9GZn08_$f5o^l>A~Q^Wu2l9qMX*hSOD>i9m6%8${eWY+J}1RA|bD# z_P*X2w#xdzQ()^v^wn~7ROa1_$?G=Q6$I58UQyD`;{<-JVh^re7ky;n(I}S7fIFgX zB_iYffgCBYi61ko`hfoTM2n1UmG3-6AsvTP$dIu&AHnuwZF~~6N^*n3V)a#UgWK6wz)^An<1BykYju5ST zR~x!nuR=QN>sEr^ZP2U=I5sOLl3^rs@JTmMWQ0+&y^ZDhJWJHRaIYm`T48sh>W_M~ z8y)rT`vK?gBZMN{_U|Ye^GqzRP{VT+p&zxIUp70?{Q@1XxFV^js8sw04@y#>K~XzX=k0 zc&@QhiP5+b1lG7bj_%Hdl;hZC;%>EtC7}F$+g15ZH!x#9cTsUK?rNvQE+GUp3ewtg z!+3X2Di#SOKH2oCo0l!uw~~(&x|qXDY(1N2?>M?`sx>OcPEc4f6&sgMCHg_#i0)rE(wDkSu(&oFdmB;08q>;)dRtvvTODz{ zSBGrDukY`WQ`Y8Y#&M{W_dVIMGK~-2i7525LFezJ0nlFyIz1vJq#}ZW;;s?~LXODn z$&uJ~ll7O>7+ur{klVvx>KO{epYI?2AiRJ%^sLHP9Jkl(lQT1Z`RiC|n*g2`(`($A z!mc+76!5(8>eW+vYzo7FD0K?tRqYFC0!Tm0olX71RG%-4H^<5AI6);YIQ5kkVwi8~1G2}L zK{kONPsoVhJ#-}3C(XV&89TlV!Uqoa43vsK=+1;A!h0yQQnpDzx4GM>1F%bwXm?fN z0rZ_i{NI!>4Mmj6T}=v4>ykQ>KDyUr_XHFT{xvSY78;#N`vM)aiwvg;Ni?#S&5U3WZ~+-+ZraJ*8Vq zmqw=TJ>bT2c}NgNCHL+Fi}%Z&j39CAowSc^1h2ucUAV|!gzdG4iCjA+V-1GRP-h|$ zZPYDMcHS*f?5<#RT*cah9KFT6*BxtD&LCxwJ<21czFgcQzvCN@<5ysD2OpYS=JXl} z^IIj)t98{8g=Sn6*AIT=13nd&iH4D;#4LUyv)^P3qpsy&AtI;Q~ zPL}mkc^@?if4|g{B-E}t-ceczw!W3IuYl1Tpn5kn)RfLAr|Pi(UZ*(kB@MmsQy^2v z;Tp|dBC>g3_dAJ<%iGMF$qaT}klPqh`+JEVRTi1QwC+P|pIBojl#t3XP}*bFNPjr_ zQsR#yKOGYj+NaWZzt)45_aJ3S*{4b}w=oi`^srUfTrGOIk5Kxygh6a;GmSUWW;GB%VZ>~ewH7iJtE@VqdpM|xTbJbV}!h%_;^jN zMXsVS@n_{k#2HLkWGX0c>`yGz!YKaxHa4O9r~fH3v(sdOtA7IHP}tO+N^c&@6N2L5 zYqs{zqIcI@%BEkn_qxi^d!=Kxx&vv8w*DQ@!t|E)6Q72*Hid~O{5bMMY_eW|?u_T4 zLo##rVpp#w;&<8ACHu3wQ&rH!w8` z;DYd{NK4Il{(`JTS& zTm*OSP*_lfdk}Ul$+Me*3XD_g>zqAc@rrpJBf|S)rTE2BhZzQwP>Q-(jE3CUY*K|# zc?LZ);!4VRfLwzA?C37Bi1)aA8Ikjlj+09yHPEo?^v`9>s|bX!exl%BwmnFp8us}@ zURwCvFP(ivuCj!Dh{<}$e55t&E}xbangYiCoJnz5r`^X&v7}@V9uLinSNwIICuEu9XdeX@&u={6kqo_i
  • U9 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

  • T2p(y}jR1+DfxVv&W>!E27uJpMoX4sUWik1#l0 z6p;WN(YuXb*9PQ)t&aaQk)cJ3RdM!yFL6cbew*^KF=T1*gK=H$C!yMfTc z2D{W%6`^;B<|>$3$eD^r{V)DKd0qQJtQO2Wr|l)*B+Tn)ldXgv&>GwF?Vjw>HhK+HO>LJ+u%x?xTAv3Lt<9b(Au6x;!{I za7uxr!9mR`C@2`=YdO8mlh1nj0o{KzNZe@5|NPaO<(F(r(?h;b@t@ver_|0_yH%RF z1MTEC|la&>TU!0lYW5*6VLKNe{O98`%s!pwEWGXBBg?%=Y{zj!fMvQ)R zxLK25_Xh@T@;kv{TeWqQTEIZ>!%=jYGUluOhPwF~a>VQV^ZM%zkntHSxC^98d|JH5 zcEtq60sdVDw+^o(BmVa~*6Slm^vkO#K1pN$ajD5_h!P&Sj>uR(gtpZ?(*yb!`R*y{-X#=e zlPW^8TE`jFnLvC0PNtVS7FdI5proWfw!LwW^+;#um0f5EiQV=dy=m2fnx?~@ zffb0MN<`=E{z_F|ht>5|iA~J|jxlTbI6ov1`;!;-c-Tiy?U<5Z{=9_ut|}N+XY_@N zxY7UqBBMz{58M$LgK~+pFWoEXuq2V~4_iL9?vTaD{p3QcojHm9A{)&j^pz{F>L6JD zHa0E=qd796l?w}6M07%jzu6K{Uo#a6iW(KQa?yYKkz`FQ#T7KS4Y>s;1Ao7h8@CEc z&I}V7eold7xfI&&&Q?_Tsh7}V`f9~y;zc|)_ z4cL`_)cxZQ`M~v%8cBOHE&F9;{ZpxxirI)>MoWkzZ%=k96Ba@QqLx&DG@J~4^LulZ zG)zBtuWzYBEznD5sgyG@rswa*|D;X-guP#VMV|r!p^^>BsTx=b8nPqQj7+vk`<1-I zzI~E<*!&Y)jPJl9bi`Img#IVsU)xMWk-spo9U%UF4G{;#HatJK-|ZsSjLo#u_(J3Qf`<0PUXKiEBwGqG6=+CCR4xOJ|wjkVMhc zgWG^y*VCB`=-+|4rcjXUiCqxI|CPLDqo`+jjSSrMtsc4VK7#T)?-*SEy+^c+Qsume zyKlDU5yN}2;*^MxoQ195}iB88rsCz7^$2zyCu=hL$s zu~9wBovt`z1rY#d7vh#Mv!Yw&og_zh;(B~c~4ggGX6rq3riFY2Q#urSVga^aE}V&ZTt+@|GlRb2!EzldiNrvPz^$< zer|2Xu&W#a7j)b>=*kJrA$3@8-3=;@AT;vH76Qz7dm6IShn-&kr(+Xkze-Gt6>8@C zb+Of>n?f*kEB%^T?A>rTnU?6YPtYm>&3(!5%V6w?Sh)Jo^+w4^ZO5PZ*Tv~+W^a~k z;!89>?(c^LWULU*B-Yh!%fxS|e+S*Z&5tXIsT3v=2Kw4gPB>#lNh)p8@%TM zYl_w8dH!|!R=+2e`QU7kfn8Q!k?dzEJ!oK4@jP6!%PV7m3uB&zkWQ_F?kFb0u`=o+ zDM|9KEv~Oo_RKpOa`Y6inxjFVF#jjQ-{Olf$B-c-tq!A7#TD`Q+%P}HBm*c@@PGbK zY~5IE0}h~xRE*#e{NDio=D!{P0(#jmF(F88t`KM@6ia6ub_P@;jhhDFP=V#vhOG#C z2oV^eX65=;I~6S079#T@-FcZY=)(@7{kh}Y8PfzL+#$qldPFvsDb4cNgam_syXL!{ zMaH1dYE|_Xr^ZK!3}uf&nYFVYu3IY>3BkH!N87(VzNRA+Kv}cvyjaZYeVB;8>f8S)sp8chj8AW^qK` zL*7HEh>Jl5-tyDtvN+1rQ3xwqVg*DO3qo~iNc(oIlr3zZHQ7;m{OmIPx3|8p&2mCA zV{lPcqOV@hw{Dgc-AFM3NRZ1!g zrC+LM^v~x3))J+Ot8Z~$${KySa6{D;w-g*>30eQd48>nzNX4$zIndyU;`t&x_5+LD zP)sFG;tj1gm0S!M&wgo6qvbbI0=G{6@rJDumraGP0SWhxLiwMFEhEkJc}#FwWTCQU z{1S)8vAfOQ6mE_pN3&D5@kO(rGh3zWSwTF^de&OaUv2vK+SN`KhRHH(4hc5uzb$kC zgR-6keRY9kFAI@U zBrIw)=%YmMvU&JR#zP+i=A%W=QANIiVY`nkgG>_t)++64;uBw2hGfES!u;>k^iLW% zwlFvA;ho}(aE{bSAF7Bf)DXknpHV`3VAp34R>sX!$(Hmzz=UAzhuHJ=C?VyCf?2bVKQtWrUV6aZpEO`8CSPVY#a37jW2^wR-(=>?xVIRYXXdPP0p` zKVQ6 zEgB)J%Q*=r#06DPKz3*l%?|4Q;M`rG$a;DTgM=C22TR!5`J%!iTWS2AH;7p`UgW9! zwPLHAK{ja=EgW>f+{XpOxuLe^{dU$vxIL?NS+sBz4h9O0VV=)8861NLGBD%H(4l{I zqa^S6sCPvJvrYuMn~fM@Z9T)f-nAmq>@f5P&d4+`vsj#EWRQ@VVM|9CWeA$lRj4o2 zxUL-YqTKD7K@|aj!<@0pS4LD>Kq$9s6C}Kds6~kPmHi~#lN7td`xWZy8RdRdr~t=b z6q5>3&CHx6uj2)>YFo$9r>p)|MAjB&z-ITlrPSCd%2!eW9)wA1x6zIE zq!j|{mvw06uIOJub0JJ_`?8{s=?5p&GGJ0TsGSziq^j>)8oLL8KrOI$BEboPRFA|jb4*N@jogi&-ZoUX@zL_Xymb~aZCARlldA_WhM%m?Fb_epSm=Pb)o^(a^} zCuA$b3WnV_jn4Ddi6XArqN?f*{$2`i5$n;5`4zh9Nj&W4(q&p)sog?EKUwJDTcPT6nzcnmpQ{8%l?fGoRdRWZGK3LvmF<2&R&pZP~m zmx>VEG%9fVGD+}$)q3HjgOH^sh`^uq?DGeU<%A;YVvQx&B!Cs_nU|wqn(?YTJi=D& zlkmropY{`J2P=kE8gE$YR3j&Dg;%E5S8Lr}hL3(i68<9Sh>~M)&7w@byq8mgP`8_oqv^lZfbEXw z{!@;}QHV?IQ=k+Eg&+Vdy1$7ghucg`+FZ{JFArw1!L5>DOtr=}ISiq3{qu6w;SiXO zUS-7AzRz2@eO0F=KOaV_KqN%}HPYq8VZC#y-)`$@^)puj;fBv`Uj-eui8m|I-shV- zkQM$b#}Z`R^K!y~V0slm0cDEIt{0{~?`NI*22?0Su$B~T>OEKh6)Qhy;v3FAHwR=z zFKsNK|K_7=-d7m=WU|28tIeKQ7rrELEGf{=IEg3wW%`R-%@^56b8|X@Zsi5b%PWu({5Az- zHEJIg!hPJA1?_2-&${dhl+I-s%X7>QisSK7ydlR{|3cm!M#aP=H&bv1!a6ylJAUw~ z=n}N_a4=lO&cgDU)#V#XY~Pa(Xg^*`h6j{ah$uF$2;CJ;N2=;D3pgFcDhIG|W)X;Zt(l?1*3|44Sgo3q6*wuREl`r<-}b$HYrn z&9Y(0YWju$>1>K;zn-c5j?lDOJmm8Y%=H`J-NEB*;T5`f`h0Li&HPxORWI&`050+w zPVH~o3Fluwe287TMfTYqN~(#s`S>`Zobl^o6;2b?27$>jltXu`T(R$7FV{xl?R%aP55M|{<7fI?VlTv zc~!s@)4VjhMB*$S;_dd#A>UqH9yWU0Kx((SD|NYR+%diYkl(+56*Yq#V`J;W8|aWz zE#6K?{2lGqzwmj>_enTFYv|92hn34zs06i$`H~;MXDI;KLO-p?^|HRT`td!Em%XL( z?I~(27AFOxs-7zd|Fl7%#BcjO=vu`FMqhR=I<~)p&|)kw=|_a(ZX;Ec!1F)R5r2>h zwFl=V={qS~POxXAbc^PJvCc?d$!1p^t{qs5FdAi(@+G>4OUIX=cDd*6*>e8c zYxA;#4q}OnNR177DEEqu5RgbZTCp$@NdG*&vj-2ULdLIn{Ct`4^4^|rZ|UI6e_iMW zKEA>2`8LSL({a8%^g&H6FZeK8LT|o% zf4eklZIb;RB`UlKtQv9X^UDtQpzi)5)AqKCMXGqRi~gXYs}p7?Zi;wLS5LUtn>3)o z(Dl7(?gaqMk5I2;1hJiPym4i^9E-xwkcNvM=;foccD0s(>Q*q_`@wqV)vcKkuqI<` zxF1^ONbU^exIvyzy;&k4t6Dd+Ib6PcKQR=ukhyAKiVhJdRa7(V+LPCwX1z$us8~ks zR(2qCV>s1INDm>Rhoo0HV!T8xo{Z!5rve*0e$RkfUvN2h9B8-jU6mIK!m>MJ(El>g#u{P8F)(V8TH&3->1@vh0 z%p6+P92J&OMDDT%?Fvs&EqrfnT`;sJ;uRuYw7M(akE@RD`WFizyU9whE4*?UkrOwjA;z^2_Z_%p+Iu6=dHYhwUSqtY_bQO)<_2@_l zx^EpRA15=(dExk5g?@(YYl7}^8CzMTK@0wfPkro-n&I0E&8C=B&qzq13M+AQ*q zX|JN!lc-w1Ma)lsVe=^6mcO1Xau*I$-^r#KyI4XHGx}1gaTFZ%3fCl6q>av{R)kKO zSVGdN?@QYUk`n3ed5HTFeyd&00(Js~YL0dNQ4Z#u{+h7ZuhiZ%)!OY8bmmkNR??6= zYAOnU+Y6NLd~&NYUzH;P#?KB5DYyRP$hf}`;hi=a;KY`X`j%{oPWwVt7W>F7enIno=IJsbp!?@#_#&w{v-f-(;WcrS`>F-t z^XvLx*ajZ@LNU=+gpB6vmh*M}^KVT8wrFi=2HkV{vv|PGCdK0%=xe|In+o_$uis&BSyq8#~aZ1Fmtg&rB)pIf8}ussnPPP|c%nQgu} zKO{iQqmN@3(;I#x3tuv&l&(+%m9D#_jqBr{sEug`eF(^?}QNaOrr?EQ2qoULNDGF~D6yg_KblLqnC>=b%keSpFyOYmd z<=*I#{?-U|KOf9E~jhp2PXvtjVq$?7xR13IIB_qsT2ADR21w-;7<>Q+UWW{jA$b#{j_vitz6WlDNaE9_uh}A8Z$- zW3QxFWfKcmx)d|dZ+`32(u{_nJZRqMHa?*19!n0AO1iF(QzZ9tufmkLEN55%A9t^< zH$vp`}5%gb zH@C$A#2^WrRTGY6t*QEI8Na>s*1v3}Zlw-*1|~`K$ZikN2hLnFr75tq{OXwaMfx22 zrK6=x%8T}L2!6SMheX%0T>9D=yGg zRYeF{oD!5M{@(X1G>#8_TSx_-ltdb39R7bUG55>D%9l+MY>jxTo| z5kTWbntD(%R>2I(dDmGOAoAP0HML1(`v-zIb(_L{l)x*#L2O`m+gqdIK&dXC^PcNW z=@M6;UFL&I8C`v_40_ zcBaG#irD^*s;V(KM{L&dE}4F`l|Pw%=#tW?Se6(nav9~+~zb~ zQ^d$Xq>JT8T5i)(M5-z}RI23H4h2@vDRhj{&|ro-eN^F72h!AFV;Z}v3iXOCa{(f&emZ56yl?L}sz0L7y2H$q9hHazoU{JHC1tF0AYyoBjJ z#>P9=h(_<{zf}w1kxndsgyNKW@5Iv09fupYV>BeKm1V@G?5Uceta|qt1MR-zxoSIx zqt-A^Pb;{|15p=<^7#}B%Eukg_7w;KEC$g5wSNLYQ%#Afa`+&8k3zcvf2nczdhiY1 zoKu%-zpFEDjIm^))`?hI>2n=S^Y#U~IYKwN8Y08J6S8rjdo?uTeW9}M=}T45L0*&x zsZJXD^$<(!{<$WO@WM6HdE!KAS^Hg=z1@agx_kXQ=E;NAp+_#JA6FbuFBRYRTJlQU z5AE4QuX)u13;rTTS!g_C|F4j3eW0;S@0lI zmCI&HzytIEf_k8Kg6V+I`T18ct%D#12W&awpawZZg^OoBy4_c*{?FGEjW$$c5Z$yi zd-;`CP^R`hH&v0>Y;oqM@k8WyuNMraY2O&(OSix8?JKys!2h0Xt{llQJEwYv2M{{#IsWh&_ zqS@yBy;N}j3?{?sq1SAs z`qaf+Ekmz3jC$pt8WRrkrE-si(d75tQEz8wzTOC8e?KAmji8?*jEzRr;3`7uNC9{Q zy-hH&n{oWF{|t0o`69cul^l3dxd&{19tPTN+-7!?T#Bi0KiFnF_8`XI1e6GqSw31vFM;5*j+~xl@!}e z9QiztdQ&8-VRMJSC)LfYG&k%X($(H)hHtHtJ4zC|eu$dPt&p<5Cl;`OzU%&?<-rZb zVu&OLpio@!ov=KSt#``jo7KyXzE3!v@%Bm2wUz8GuM&f4F^aat6npV3S__G9Qbi)_ z#&^A8CH5387W=r|1IA6&rgb7(Gu7I`jk@vvJkM#dud^(m+ExumQ`*ta59Yy(7InQ# ze=O=c&3Fdy%o9S#zI%b1>ig`>Ff+5@)y=cDsbW>ogh4~T*$8JJ8yjnvP?46D^dIyP zaN2+IhCCWf{7nI0?1LcOU{s{J_bDfTsnPxi?0NB&Xo`2PG1sub^r83&3K+pY=ZIU? zwEx=6^fR*-uBO_gbhIb_&z#;PQzmcG=-tns^Xj7J2#TWufjw0m zru5R{ZQN;KXD@~~tnWId+*EqMIv$l5Yaq0hyuFCl@6ED`=MSn)w37K|^mfAS0oT#} zjBhDD!3X=Ua05Jk_iDrX#%o6M$37D{XHNI{as@}})VC z&_sjiXgkfcgYj8#j8!G&yqN@O{toACoqIW7cA$=?Bj7SQ&IK1r9PyU#2Y5&p*|jO(DwW;<&9YAHKa^Tgx*wJ3FKSr)kKSYP2ug zB`->VkB<-Ld4L)Bpal!kE2b3*Qv6i^q!|&4$MBRv0=kRA-9<(EmL8Z5N&0uqFI_9V zK$rm7%YU%D*1CbtR49W>*V4kNGf!|&J?K$z3DMY_^k5 zWj0CEE$La;PeS|777}Mi+1H&!j)sf@ZEZe>mWHN|RA%I*0d2RpgwCR-W*zB#X8jXN&1Hjj0+4_!=-iR7?6+Be%(f zTV*CI$((->SEiR9@9jFb9qU5i(tRXQl4>|bU}5#?)2G37oge06k8W?s3MPz%|d&Mf_qEX(Sv1bwgEBC_)~Y^GT!Jom6o&>+T{N_NE5tXs;uPL>lLM> z1XGidI5|0sij-S3G!|}))!V#;TW|l8rips%S`0 z(GfX=!GkHecYIC`wKQb=w>wO5OurwL`NN^0zy{_Zi_3G6C8w~1Tf1*wD{89+2GMNbyPVqp)9?5_1L=N686La5emWLhMRM4GHc%dG&Wt~s zH_A7bXukF!+ZGLq#Q)`$Trd22ViQh@`u5#BNlnck;h3NCe0EP+i0Vd70xY$$(PwXr zaC{v6kB=+iUebAuEfc9hQi3t3_~^!WL}fUB>S-yj8)pj)Z~Xm`{QDO5L5PVwjvu8K zvqeCIvGrIG9^(K7HqiIhG{_LlsV7kjS@C|Bz>g6~PuUJ8vl-QO%})i01V?p70aCUw z@nOF?C`!(yazx^S;7wp~W9@BVaMqW%)W=x-aCPz}-@abwxq7Ii?iwJ}y_YjvM%tfB zRiM8-UM2-)TzYHh=+sI0fj@~K-%0{SG}UZd&lqX zlZ-UJv=jkm$;f4b1nt6P;0Q&s)M=zSTRh~~$9|tiAse8ii-(*~c`;t9?M~GAkaad3 ztNc^=(gtz_NvZUV%cp41!WELRCBrkcu>o6<)#->|@)70@R#W0;;?ZSQRKNc&+VGIo zupQK$aRJ2aJ#8Z}+3biP*2~z{X=c;hEVVdWt2&SbiYpVFz6RQ99d{uH?f9l~O(`KO zKacJtM(}a@q3jGZ1KM%G+32-e*Cz=6er=aNIhS0lm&DZf+3g)A>F2W<;XiFJ=-lev0_| zw9C!=!y^t53CFSPJExyjMNk=punqAUz#y~m#JYf5q9?z|eez)cvxXBdlkKIV zo71e=WHU@uwu}g3l|50-c5gbW<7$$3ld6ZfrX7h_W15M>VyhO$_uz?^0y|WYt~I-Y z`vQt}H)_8`C85oN5P=O)Mv(hOPAQ~?3fr-9Q5+&95zI~bD$Cyfa_?(nFGZJTX>5)0 z+`4T3n*Xnt_!F|?-}1!ZM z8FMDUYP-9eSo6Ot?OGR`Sz-@pZx`!Hx0lz^Ngr~b{8IKQyy1S%Z1CGq1uL*&Bde2M z4aX?v_}5yqO!j?XaYK;2_t#Rt9%Y^H7t9{6X96~#`!9NLyV_^XgeOCyUt1@pxaHoUD8y`$w%D|!i zLAq-F5h&G$-l*@b$suI>`BJDo)k~}u4j<1Ao?<@vK=pfA^yVVfLEzI>6tO%0hPN@C-l(gNbKRrod(MNp)*?-Wc%JVih!}h1ArU0|j;;h+lTmr!*pVkTI zW(wi*nz0{v$55XGI~*6!n)#n0twPSfbiSUOuQiosY1sKB!*%ZS|9SI9E{p&CTmkWQ zt?cJu8kl! znXG>1*PD^a&&m|FokzJ;YF+*FewFkXT7uD0WNrUelH5Xz%=&25Bw`Z9WzHvxOOfJ` z#MP{BT_Jq3hrCB%PbjBQj@aR2pAJ(ty!eD~94fvbUs_*V&tpl{ujgq=RueHOJ9Md2 zD=JzjN0CW;*nwj!0=;ynV%C&R(rj0ZJ=+s^czAdf`;E+WjEtxzH5w#4?)j*GcHkA! z_)^~s@~4)SwH-MNL9dQV8#9DJU$|4#cphJ}0zIMoiw;dVts3IWdSP>+dw&{k{j&!IwR?1x-nX`cs;K-qHa52c@IU&V|Wjq!j||FV$II|ff zMr+r42jXHV4mGc32jJs*7TYbHM$X60c);QJQGE(!rC^e(q*%q7=`L=fI%DNLK6J-gAl zpa-{Yt+dgiLz4*oyfFG**!?Q2>H~{Z+dw|L;_F6W;6YK@Q$n*#4^;>IPCV2%A6sY-KRTHPp2m9h? zC>E(`;Jl_;y?ziWo5xfHiq7uGA>XtaaD!<5wg{Srxo{(A(I`#C=DYh_$?`A*a(an?M*D{v(WBnhWJ5^M@J|_bI z4j^t|>#LVTO?UB0ttRVex)2JZDB@zE!_H{aWz!OYps@_ou!~#8E(LjxJuxy4d5*8l zCt!BgUViTv3RRk7r_^ftRKH{1=lnsFlpEoCeU@y`58sN3|3sO9gqA@{Y*d00_p8|0 zfHMh?xoZ`xXljw2%Q^ z5)ojkHo==9^{uR|S|t1yAb{lKcpK}r0kzBNNWFVN>!Rgb@Z^wrtuU?&T)-%04?%3c zn5;X#p3+r9X{+otW(|xy>CwrBR7mo8@^zADW=II?09>4dK?+yGn&+O&!OTehTCV#M zQvT&~Hn&Z`Y0BH%Q!Eu7ow5ZSjKaxK@P#^O#doodOtr$iv9C7wnUFHJ~t8A=t?dOvN8a%^GcXZ zGKPkW951dJT95f&4b--k`*PS(@>Hh~GIn0C8o4_2p=*Rzn$A#qt%<4i_R)apQVB>% zyD9MjphQb|QbP9ep@z>ox9`)?vR{4)b~G>Ht0ua}XDcB9@_P-Y(c6*o(dGg|C5!7AsMkzv+mc*U zgFe7->?VC-q#~iD5g&bp%Li4q3X64-o_vqDL7K!kKG#%)KMMh;ov*|=KePEsEtW3( z?Xk=IgN=(4;NV;-zIM1hQwEC4@M_vRC3#S>$FqW0C`clGENTRci_}*4XjNwXe?X5_ zwJmty-F9KPox?{6#ekPP<{~yAB1=f1^E5KAda6jVe2a~>gPDPtURyJ%350C;LtZOKi|pqnPQed zG0uufYLOFPh!aZs`>_<>5@WGBvdg{9ok{ORZbK=upIvk>;JdmRPDeMT#s186x-+2T z+E-%j{!t*0S~8K6#1ObiF~n(kjK7p`Fq+z4$##fYqSgv-L(*619bE4%r@WKDFY%*%V?=)FEChZ)Hpa2C#nLg0 zI`9K3iNXzG`vgCPAv+$-U}_!-UVao`J(;45KAAaVZ@NNxa75wu1a`TNH4a{fdq%l) zFV=lvA|WN!u@C}hIM6{iR0$&^8Xl5JHJrHCnW?EFKBNL6aQ+E4*Z!fQu6AF9l*O?^ zC5kj*cLHSp4$BU?MA(xsbOT7+u-d}yRS!j95%#?eIv=>cc6fC17KPGF^ zHEGgezLfmQ2Hp+s!@!}*YWAh80Dgt;Z&dKXe|30$+yqaWK+VjI4k~oa)tF*~PK;fy zd(#amPSRHp@@;PHEhtaFIAq&dAx$8*xRt*^DU)s9o_FEpGclfSxC0SV#fKZ_srHH#fRD}lGX7*-u_GkWfIcbs_Zx(5{#9OcR%Tx^Kez~y)i!U6@;u{QgnWj}tz*JZqC z{+7R*i3F(I>2n&qMjFra3LHZrL|_G8`S=rCX8Yf;uQEL2IG9sJc~h)MB_mY_i%ytJ z+by$na&trIbHcD#YplAxk@|WPA`B1wd@c0j5-zW`QtuR@pc)2OOQ9L;k8cfY{d;I? z+#z;0u=95lFGU2oNHE^_>;v4~$CayYttYL1KI< zY4ZUgh;|>~fj8?OKg9NNpWo|?y>K--a6Mm0ze5C`zDeA5*)){$VbTD_f0mCzX%0mY z2K;lXF7#VnYgkEpe|V%n^JtGbws8qdKt*U*)eMP(H9lynH^Q-BwkF z%Psmtto}{qXTWFGOE6{b$T=V=s8gR~?NFm03gkTT;!s4FUAn% z&lP4O#Gq!uZ>*lF0CHvCz@=4imSdd=*yL7e|7vXDh{Ebe5D`8DaQp}(0M<{5eV%%# zIf@&A#ttV81RQ-$agxlurQfrYcR^|VrH4f=f#?GiA&x%m*oH_SaC0Eo$@N_^UFvv7 z>n|kZwG#nz(Fi0Ay^#y6%~)1=bEe{Kx2s~+=d-3rz|G=lw(&zH5FtlE0kwiIU?{lx z6}Mj82)W*4on2qsMPYg`zK*|N%~OT1i_GV9s%3I~C4cK29n$}Y$kPHN_PTF+EF0)v zkVOx?J-MX0u@czJ$ChZ3{Jp+nH;D1hho5%muoF02;^O4daJr=kJZZR8`7d`oJlud6;Lbb1^! zI*@`vjUX==l!}Mv1;`#sBO4VkZSisYFDVW;)-K*D=o2tkF#Ga_E-uIDYisI7lifkV zuK{=#`q&cplr_TJ~)|D1o%b#XD*%oTIY@r>sl_qYcsy8#3| z;jzTBz6^L0Kn&M2AGYmY?K>DtQDrf z*?iKpsL@WRcJ_t%yh_OKpM@<>9Q3jQA?I*2S~6_(JrT>!x7x|VMZ@-UZ{wCWbhr=E zZt3gxYa{!(zD|YQ4c{!g?}!eYH!})&$<#)*VaN_(UW_?(_i{EN+o2oL%&bmXNc9ij zB+WV;7S(tcp)@9Q9OUqjSnY@J1?hin5~6>hNDw?ccfpfs9^^6AVk~%rTx4y&`QY>w zIzIT7Nz=O$O&m8e<@J-rQIMFgTV!%WT6~4S4%ADsS#3^dwMy#Jwaw1#`328cQq2eB zrMPy_NtTH3A6XbvKpEl~_U~ylB*T3tt7C~Dnp;ssjD83|V5!U}_KBM_u(av^%Q=D+ zGkU%JHd<1R9BO?(beFT3a@5PNN|GWuF*Ambilk<)nAxyJ(M~tW-uKg^!36)s-@i|?T8(P~ zrm3W-$BHI$a&n@ICDLmP=4!qDk6(QPqvtz4y^`-Z(zvsZYw48rT{xo^TAk8pOZ}zH z%4NnK^a)4n8pNH_<&=Jso^EFx8F}@^P;L|3c)NB>A%RaiFoKmRNvX9bT~n2&J8J1^ z!!0D7Ekj)`wVRUos3v>2*07kKIc=a-bkRy#VC*m{F}C9+3>pU+KFkDS7G zU6QR(L5`b#D&j*X%wQ!?1fpTtTq{tC%5`r-3cMpjg+(PPy41T1-JD&1P8h`e^4a_8 zQwb*in-^bX9*TTzatZT9sNmEej5tq3L<}1#J1N%ia2=wt7Fl_t=}aYGa(=leQ1k0- zlrO^Pve@Pz-SQ{Fe}sWareP}{Dj@ckOL8UP&izA8zClOe!XLh}#wR_IKfuqhg^Xr% zmxgj^8nM`RXv$Z1?T@>KJaG-v6%Q0)A$4ZDXFDxh=38Ss@ z#^j3r#^*n@h$e5GU00$;5492W4Gr~R)D{t+oSv#p>`xYxgE1J?iXQdtQ-hLd6hlM9 z0#gHrf1IMokM_2VgTBY`LI8sO7KAgt925J{p|4Yke3ry&+x2ye%32%xci7?I!OwMx z5Vp)7uElNn-CZW~{p*-IQdeZ91D~?WIysj{iN+%dZuIAol5B32za@h^KFkMkLajyG z(m#)o=bruuB`Nr%trXT7!l08^7gG5ew8x2%Fp~IMmBNikO?}SATeB4Z?!gs&A=9xx z5B1~ToaDD9l)=27_fW~cnUH|=PsvC31!!@y~G(@!#3Pu2_PacQ+pI`{e+>{yywcDKJLST$sB#NqKveiouU2>ej4cX8{vgCZ7}Mva{z zz{Q8`AjFGDCVI{mS{b_JVMir}{REQC!zGfpc@?K)^$=UJ;g(4beo^&gW_V)Lzj(UU zGP8R=U_mtXb$}Fnb6UO=uhCy9Dp?8-bqKyMkR^bx@!or-0O8C!tEFVCA$s1OV&(mc zbyhXPuXd$MTgXb3Z?yJqrtq zqdfRh@&0CkV!2jvnbrjPjbHKfa^c@#EmxWbt(HRW(%0mCEfkS*T@5H|2|K@P5c8lQ zq-Zwi^UGHaXgstpIZ5UJ?Bryih^bUQe)p+ui+DN&?D}0WQQFgWz5ai$ba69$JTdtB zz-#2(-X#xlo%?+pof`l;^VXtQR_6JK*4Me+YUW}#OjeEC8jV+U6F#tCfopH0QOvEz zW!g|7x#msP1RS+&i@cX=uNU?9-f!h)6c8%Oq$#_ecw4^T2h>RCBXdOp?boz6M4<)S zUddLKH8sQl(`v!={S6Y7S*F}rO24@e@AmwZ_4Hy+oN7+(Rahr^R&O$0_iNxf=j#+j z4XCOg`b*{2OCh55nUS6lb2sd7ISY{wH~V}j+}>&lhW#TI(mFZ3x4d^K@HM;_(-HkM zMoXfs$d3#kmY|Z!77E;4815Sl3n#xB)yYRTf}`_x+n2X@jU@VKvx5%A5AopMI=1he$&{X(wL(za550_l z|0?nm6*V(g_#C7gh-8!v$1^v1fak~Y4GPH2|3f>NSgmqQeo``-AQ?>S!q;0O={e1> zzhKD!Wip1AS6>u@;DTPgX|Tz9pF8~oRn63-v~7;w5gR zGQ{ThaCDp|H0lx)|4WVgkC2Cl_up^k=VXy8%2H>}bARQ{*|2{<@W0MuO6VXEeeZFz1=9c5hU3FM@+}qPtag!&vxhlj zWb3(qUz^bj=Y6 z@>L;NMt=T>>w3inzF??T5>Gh9GrICwF^+iB8vJq*12Xvo4@$yOrG`MihO7&KV_7C; z-?62v`O80BXmsyMasT__>sP{jVL?H1?OMCgE~BdZx=p-&V0?{UCd;- z-ox=sq33S?9HX}CTEKX&+25zSa$LG}tp;b)IqP*ijMXhMntc(r#q9_`U;HJR9&7A( zfTcqH3Fhw#Yn1TbXFfMJjGOH@{2c#&r+>ffCl&c9ubWn(%4>%6e2z{7_VkL1M^Kr~ z45t~d_;tSfr%NjGZ~!_EXx*`Z+x+SDii-AH|FMizAXU=PVi9&_7^shnel-i|k7LVd*X;t^Tv9Wq0y!XQfv z(9i91-OQ2J#YO7u>}&>)yO0$gFdYm@c}mTO$F)8K}d<%tPU~j3(EQQ(mSOj9SuPp2^sC<(XS%3+VBcYzuP^B*xe6wEXkS3yNhLLK}-S#a2R(72rP|X3;SHL zL+n@*AN9Bc!Tc5(>W-y8%xJM+1bt5?tW3#5NNZn&g1N6HJQzW8y98v zwTk24Ll)aJTqh%gDwyop9of3}tLZdL+|Uq2Du?;h&JSBY=ZlBIs8W*vySyWLe5yR1 z_D5mE7FBda#lFYEG1_Pi5dsWZSB%3_oyKN5jE{YPH^k#)m6hQOx*z=GY4Y&4zb5mj zPq)1zpJVL_6ih0LD)5C&QV*p}a3%e!quCg%uo@qt8G|-q3UQQ|G62ufmja zMfr&}y^*K0WZEdqc{cDcoPKxN@~hcU7}kqSWYpDG;s%l0+U|}Y5A}YewL%rm!%-be zW?|+6W{2Omt@sB0qU5#g^$U}pL8KQ07_3$3NQ0Z~jv=~d+OE&$XOl3*2c+HyZ(Z%; z+5NxICdmoHu>b8_X$i3&q>P!&LzcXw#uWVc9Gsa&DI8VV$2AI-ly|Q^$e!k2%8dMySVQlPr zN&prDKIC(@ly~FkWI(qBv>@M`E=Pfmu6lQmN;6l?ole&J;tn&j=$NMx#>U4{Qxw8; za$Y33#f#&Em!KD|3rXLea%-XtrAPlrp?rk2sB)=P_aBAs#GYtdEUt|LSAfW2i z;jB((#q~&StgbrS@@jEm(&C9gt@bw?OZ%B{BKRHUFDvBhvGcBJ9iG40@V{5SdUJn; z#=~XsgDy~@e71w8Q-yrImrP7**SFHr(sJ+?*IjkUs0Br-=@4mTTd%_8!A}^@KdogL z<%fSf@!bxkh8$Owyq2I|d0xZYG@kVBweUJk4`L>b64h~n99YK&0)zV-nlgTnL@?e$ z<`)O2eR$+<HtT?UxezQ2FRc6lSJ9BpkaG5+cCzjJVF zaI(-Z5=J7mO|5}`o11L`vrJ@Pbnf_DeKb*$MYpGdkcc70HY{SBIbIO_S?O-BrM)`I zB}PqufkLNCLT;hIr;C*s4Ni_UH)DS58-gwNQ`(y~Dz2qLwsQ+~evLur2`C_6C3odl zPxo?+;6bZ*Y;*^p3?e~-ZhK+?=LV#64m22X*!uCeLzcSwM|5Rxv;&pit&F{RyP$He;-?+ev z<_Xdi%ZG=t@$tl#Pw<0L0J;gkxs(R9kI1tYUik2^Qr~gy+`jTsU}&?TRxvU70~QN> zGZc`XPJ@bynx2sn7@CEJgM)*Ki7BR}gb$^ITn2H}>k2u``4q(8U*5*Rfcb7)b>=B~ zp>XQNsJ<`slDT8`dvrsDO3I6rmrKE;u!G?x6gUF3uJyRP-aJmQZ|)kk6V`mwP*$al zce|c!e|&p76l@lvq@8CgEAfh2L?q!O0IT{&?j15{vhos*+HZ~*1AH>-G&w0v%|xTc zmP`$K8b?P*<@9A>$D=i&jJBd_Rld$M9-UoXG9BDsH-O0>AJ?0J4i@0gMf4PLG@+rN zQB|c{J>+j`$=D3rVY=V?Oz{5QYGW@nbYcY-y1KfcfP)bkcD-j?@KzL$(|)#*n?MYM zrZ>aFS`?4ebaXyGmy0*h?MHtN(=X9id4GR!1hoqma+q)gaNd}t7c?sv3qfFOUOuyu zj=qASVa7NfRA#pzU_rOCJdD@gEcyEWvftv*mj1A{bb?ifEevsTf>_txNtwCGsHk_E zn!WSr+!;w2{Odo*n0ka6$}aw~R-zeotqW0xarL*8xKKYoU+>(WrMUayG_ssFBB!G$ zNP~{5XLbR}C5f1=v)_(*5BGGL4yKr9{=Ei?6Kl(>1!-|# z4dWGX5iI_n9il#Ab)@5_PgUOGDon3cV6bVvm*UUFI4WQTwlK6qh>aY_+ zi)#TUUw2^s_igMMjpJn#f5b?qzE{9^`E{p?5EJ8pex>0fbhWrKvGH`Xn zf@o~_@PId_0<;5D3tTLKml%|5LJbpo?L-$P3)A{}~yx<+fj4ib7@8Q+_1&irWfrxr^n&|bpt z#4YbtP|?p2`&RsN>)Er9Nl{6a_U?WE7<7GpF30YCvHynj6$xoWfKnZ|zYTs%r z4osO0l zi-xu~6OcqPA`a>^QGSLMXeQcw&II(`!Djv&U^c)+lqs>FpO=0WJZyR#V9kThl!rcH zA_E-YvllPW!O%=Zw4y}YxDW&U4T$WnuCMEhP*%?WLyy~bAr9h&gW;Hqm$wmB?0a(Z z^B!p#_ytW!dVc-`ZfPkB@gg+x;N1%c_){D$wvRjnS0oo`0Ci zQWzHo4etY;6?RhWltBs51FEVwtIy=Km2PiFhyIqkGAK_6O^oct@ySBK83ChCRKTB# zJrvRTV4JdBf1A*^*7qg*E_;4_k$ad$KX=L;cwG-x#Ja*c!ugu*%bZ;!4xsHpoko>l z@tNvRKwW+djcw-5g4>)epuBV^au~CFo|p`z3Tr>)n;+MAcoN_B2#~;lW#!}DrwwK* z&F?)q=_|93Kef1S0??`VkVc?@5DsUK%b6}dH8FOuxVI1bslRNtLjwb<&#>BbTl!oc zaf42w<_ihQZ|R99+|4%!Q$%Xfu)XnbaEY$xO9;V&)?hlAl$U`FoOxIdcjCDlkE_7* z;j1f^Hu1I{%2$2?E+m@!+xrEo?U%!zmsk=dETzJqC<^t^Lwu$`$icBf({5yDFhnTk z_Z&;TMUR>|-(yn2Hl3TyC5Cyf{eX7X+U&{f;|F~^reeL}DZRE9Y?4{Q!+R+D3h=Ex zKfSqrLtq==!&1B`O~S8|Z>BC}#;mVty7-47sPP3#klG|lmkFmK7^GQOW!XR)-ax#j z%(w?PUr*AU-)%23TqJasM%og7kyl*&t$VqkZ?afBNpu?{0N4!Vke{DEVKp*69RUVR zE*_qSd5RNm@KjO&RXfmT%lO>8YR^8P)k zlxxG7EpdS(*&oUcEx;#$_=xoZi3A{SRyKn|M`us_hN20p<9O=EyWFOA^UFL@iG+NV zl4l?T%=_0P^9(Mx+fpYvhX;}!c1_1pmL3txu&SJ3q5h9%V!dA)GM{F)gV9Ss6&b<dyi(_hZ4ZmdJnO2IzifgUyupA>Gp3=V91SR*a&^E>WybyF8C4v~7cP*|I(M z6fZM-%7@)cZ)o&2v=+&$?vT@)#uf?kYDPBrg`_wXe2`ji_8u`}q+U$x&X%6@y?`CK zQk(2X?s^AL>O+L?FhSG_9&+LE9tKoOx8>rRwphm0jz3#|2Vig?cOT-4D`hG^?0-RK zQ};bRn4*i5MiX?WO-|O`VO3&HK%x~Locd#Ber`#OI*~hrC%fxy+#k=P`OAyjMS!x# zo&?J<|5Nl5?!UaA+(qFuvKAYRF0@kts2oDz!fIN}*M?mTpz34Y)K2iyWM zm}LJvJJcOF)J^c{(Nm%|lMhmvj!DShW|iK(L#mv)A*@bWcG`x2_>davS+e%u z{JH{n$N$Bz+yC@s!A=@v+K8r{bL|(KS<^(Vg8NLI%B3I7=YB_>jZ7V7CWP(Worykw zo;{{e&g<*h9ovK+;{77-5v)0GZp~JTsyfcP@$$&2MAUD!MG>bn4XQwu)iLc3+~Tx(u+l*x-%rEJSlloq~CNZIyM;q9%P^Gbn(|$ zyzn&@t8&+oK1;Z*k=WY0(b;#@XeZg68t)oi#|#tN61QcaB}LU8km6Wa?D^uG z_5^>QVv4}`v^e%5rC(a1@PRDf@#{IyzF-Oxr*ZNiT0Ac$@&T!?U{>|<#sP=rm{RPB zi2T+u#1;oz?6A;sU@}0A8*l4TkT8WfIxl z#>}Z*;ez=wLlHkezXCowh1{{{(<^_a>Hd=DPM_PeC1>R2^;$1WW>?TOH*B`(Erz3~ zF&qR+-BaKMc7tzkH_U|JLL*3`?gtd?L7`6Mz%@E=JJ++E8=@i8!7lCqtMl_(t)p+_r?nsx>*BzLm$j#oX zqAkQvc3Dx(VH8HudGYxhNu0bKuJcU-g9Gz4g3E!t!Lpx-C}a^7^)r8hEyU9m^~Je^ z4+m*2DplcBxn&|O|7_#pAT#724qnHS4G$zw46@`2m(FBbvg)1N*O7{tvU8O+pd6Oy4m4E`{+F^2w9L2^b zihiEmAfqazQ`0BZPTE_{l(Mvca_~>{cEcuT=#_DWqW3~lsNO>&v5m66vF|C@y!1Hn zeW-HrPcA1kzDD|{#trc7N<894eqh@rs%w)`>B7(nEJp7pR$xvvhj1l+kANx=UB5@S zxcTO$@4N}^i4SEi;mM_LJPa9WYdnh*&%=ceG6Z%6;Jm(-uHw+NzviL`I)mlLJwCYh z2D+HBJ2w(IzV7!)ZeT4QS)G;70C7fMUY;tZg$$6i-r$zq=I3hV_qy!JU(%PIFhAgS ztd+*ua)>PvFqbtlditdb!PI8K^%P)EQkkDD8-58Mv=MpTX%(wiV`B=;MR_lp|A9-S zBN4>^cuAL_t0Cua7)i}3LOAt)QsR>{EQwmTq~(v93j7x7_{YL4Jq6Lz%ybiIl;lFr z)Pggm^X!x3)ybC3q!X*=pxOCZmt_Yl1-%VbinJw0VNqKRgc?b8n@ z4wRov;WRF2e}l-Hb5Kk_l(u3;HIV4l$I+RIxvb-du(nz&b$|wW%*O;ChRT=iSnA`( zE^aLf=KQzgN5tcGvwIjzFOl&BwgPgpvkg}|Kirc$^}ZcVJR&8H$fyUMyjw_+hHA_V z)5tjgA)FlSpXM|U=LFJ-HPgEWs{oysw7P&<4mq-Lvq6w7d|HGnE zB-h-%dC4ggZc_HZtsAn=BD7s-(Te z1Z{|m*>}j=@FcHc?zjl3ani8zjt8B8B*nuKiisV19_;2SCI;Ql;=<84*ptvlQ_wnw zXjX6e0IRoX&@NCaQ@s1yQIl^4x(7S*Yigfu{jI*=^YwWJr9=mhtL_Bw}~eUuF9!X7X`%NW}h+B3{gA*2rLjWD2KsayMu?)N{; zqxZkv>-_-H&diT1(8g1YIpT6ok^Tz|<^}Sx!TBXW+Ky?Ve{vC9^;Z8k$0)>AePD6b z_{ipc=+ye98m8E-u!xk7gFo6cZB35495NN&K^iWsdn|eFkQ1KWEt}T!GIYT%TxV>7 zYEnFXq6gzC!<*Z0U;Gh~V-6LFJNT6jXHbw1N;Fw?4mW1&9m4*|I`hGwAkyP*zNdHs zWqEBYF`!T;XKsA={C=B6cqopaEterT5&d%ktsmRSFoUggSWUk4d0T;riRB-+u{OV6Pkf6KU zcC3KSh&Qh}$fB=ynMxsu$8I{{3|YflQzT@0Dox+t5B}}fUCKi-sI~LM;|#@U+Q;+? zovFg!tpcQui@ujK1oQ$gzO$N}n3R1*ry-teIB3{~p!N0jh-f0`Ay6#0!Kuc8h0A)Y zM+&k$|6;57;XVUD_#cCL)^xLPqqH!3JP#<q(V6seVknQ9 zXHHu63^$}7_x2jD>^*K&B;y#HG*blUBu*c#6&$Z+EK7pgvZIHy01Pkim;?+ozptp!Ge4=srzQb$|sL&fveIZTd6b`8y2Enq-n^9}^SjMB)VS zo&B-lk<1*)6S$2t6NZe~!_X;<)R|6c#J2mdC5A|DzOraHgvl?quq_&)~;A$u;6gTzc@BZsS2aPOez%cx;0_)whO0y+quQg-@ z)E`4{WM!QkMdGDcjQsW!q*xx^-}AN7(xxC_0Wt~ z^>qY$D*^SQ0d{h&yKjrg-*x`y`}gkv4p}-p#Ea_sX$AiRes;bT1=8r1%>@gt_HCD- z^Dq99^KBY}S2VSOlYyVoYQMK(6i&Q^=X=7D(wm$AzFq`R9N~tk47d|P6IQQ%e-+^; z{f-f>4wSfA-K6qK|4K+=yc&ix-Qq8L|EzpoF`B5#G&U}G>_Bg7vUyTaSa^I=VLDxB zi1Jgd0U^IztqPEVL;=@=ok9BSi3e!VKngFOO0I%h*LBv>?og>{%iV7se^)>5Cm9>^ z2^3nJ0XvmN-hk>*Fd6o~Hl}mtr_(=SyGlkyuTAQ3&7*#E>`s2lD=@twR4!@RRicvp zSUv5^pvdhjYf{IzIMHkPi^EE(>E-voq}&WtT#tihJA>#oqUk{xvP`nCB7TOR)z6z~;JGj$2l8(Mhbr>EHqIKJ zn+4yK7Ad=ivn*8AtFr@eo-#cdv zeuQ(+I(Zkos${8*kWSB^`2b!Ivy?pmd-57or|!fbj!eWHu<3#~&tOWg#w)2xc@A!o zE){AWvCWdhc>9!xeRX%Bdv!B~uJsEg4HH8^xB!@_1PKK;c}ITB!uHPHp_MQHEv$C& z&Uq{$v-4cz8I)o6BBVBnRdYzhk!4$@#(t5NrSN@#atS}ks@mMeawZ{saM1GPrx_H)+P|+Pm-gQ>Vz*q& z|C=mvEi)MOfA#Fx%tiYj!p1#aq{9&R|F0WjS{~VRvbnN8c+IY!+rq?f?AJV;b|Ae~ z;pvbutS2bv`wXMTw%74Z6!W?69=m{Hs`7x&uI#Y=p(K8;q2Ix-7EfGU96r=)Gxt`8 zNwPNdUs}iA7H@144%qi*N>o5V%c``f=qn%|sObH=Qd9=x1rc1o=>?GR0%#?G|Cyt; zIu9xn$X>0c>f>DtaVld#S2uBN&x_5Sb00%_1r^I}9T#dEzQG0t)b(qs#nRUgP zKk1Wv=WQ%*Pab!H{DKOZ-NS{Z;CxDu!hNRJGMp>rJ?FmzbE1TlBzI+%#!}0=Mob)f zarlm=SUykIi4Hx>-M#2Ik$SEI_a6Ey+w8l^=d-n82WHyPQ_92(Nb2-C-0)}tv#uaW6Xpo2Vn$hh+&BKi; zLWdq=b#{1LLz9~Z@C@q zKg1Q6Q>)MM@#qkHZY{iYTg4a?0u?lrZ+K%zkr(a~Lzb_-dyYy?4I7=*;k%wBw<3DEHe zuqc2bztn_=gc!_LS-w4IEY-WE&o9aoQ`)^I$40-8Lzz^Jdmnvk{+OrU;K>cQ}ED)D!_yO2&v+%-1aCNu`@Szl($Nk!y{yvCMV)!*C>sj#gu`Rh@tVe z?d84{&!vBq3~&06^qNTS8r`Oro_GJBq_3W+p8m>@$LXj?JQg5qz54y zOD$OTokdfN24tush*kNZR!syNir^)c&eQe}+A|j56 z<$Z8%fff>uV6=1i+HpIcmiXi5Rj&Rsz-Q?QM8PO?+t2vQEgku z=m98L6^J%jjlnu@Mn$An5Y_4Nl46gdOc(NB;$qO;(=yO$2s{~rh|b@1vs-H8Dj-8V zSxh%{S)vQE1`U(W9SLq%RvM!O7y0@Jgu%2Q&z}p{ToNGqH^ZyAONvoexQs;EM_tPU zFS-)kTDQ)s(3FH;8G{7s=LVAx(l?yqt#TnARk@`)`4;%C34St;9A1~(9Xe?zI(Pk9 zKxj5uA}TOxixJ-NiyrjWn8 z>Jc?sFVkpPd*Ra8N74(jC^{7W?w~#|r4^(1PJa1n5j2N{h&G4lax~bW)>8WhJl=tP zQ!?n@+#Y$s9faKAqC#hjB4>mb=9H!z0VqaCfz2(p>U5tl#K(J~jA3TN--Gjt>HXM` z=519U!grsb{)w6;lemN~sPB!B)Mq#bz3A~=%?(0jga(?hpV`1bFv{DK2Pq<-+g`T( znL}CPEq?9j+lNc$W8o!XMMn*5J8awh@cfdW_N?LZ!7fe6U9n=s`LrY^WfR3(CJ{cB zjpZC^StOu@paV@lq=>aO6H9Le1zZa#=-^+HO3Ncn4Dpqf6`iWd5?w5@U%AU?`L#_$ zNUauJoDW)iU*Y9t+Iway1E$papL^3Htl|3(85uxIB9FyO6m73Ic1t;2rrCXN&Zpia z2|WR9goK*P-yuhncxOKtix3!VPw@WkZEe-NU-kcv^kN)lhd%VS$$(ZGCfJe;L4vUO zgx9}?fOk_UrMOIQO>lE;0X*jAN3z=qf^7duYLl#R+2Z=wtGHa5gC=dW0(B;IW$jyE zk#Q0;h(Jzz0FS^{6(8_22ubLC*JS~>w45NOTPk+_>>JZNWu1@X&*gN&?5;y3u2y<%h=*V8`I5zG%>RgRA2G3t2k1bg|t8PKn4@Izuv>eMZ1Y12; zj(Z$$r#Yb3#@#78At9Z2#Yt(=ms>r(Zz!MAxn6aY^o6kM_W^WXAJ-~M8P?3ekSG2+ z^ooCPju%-#H-M1TpwGVfhnPzP#CQb|pzxp|vdM}>N5_JHJy|j@p8h|k^*`u$mx6Uf zIXDO=UfHt3KutoEA^7DrYwalS_AjX`n6~j}zPUtPpXUl7E^cC_j{>=`S&Sx^ZDV5s zK%K65!jos3fAa|Kyj?>2-PC_@3Xc353<7S>am3%Di_oRCl6?X_AOlvjsIF@k=g?p$ z>bBt*H0FA9e343jq_BiCP>K)?#EYxF6hf-!!4avO%R{BU;|=@z$MwdxQUSFp^A`p+ z^!1N!Bp!l1^NqgGku7$gk5~C+^aXzDpLuM?u z=@C9%2+n(?>C3IixNuF)Ye%s$lotEr z2L+VchS3l!q#`B*XA+n3bq9qm4<0;76!jN@6gT70PL?DkB#?0__?9Mko}U95Kru`t z+JBr}dWvN{A+g0t4M11e{{kpyn)-FSD#de$btvJuRR8>5>l;N-VfnhR!SA_}_!2-d zD7K*BrK+ln50|8LKIj+<>Z5>IkT_;rg=xPItT__^&wwR_E%p?6&J0W`hM;%2D&e7m z*pw$USjbsLHc=w|;Rfsz8dfcXpI7ly;M0?P;ZL->Qv6FhE&nOr)_NzX&~f`iE;8y< zQW7Hz209uoI|B#_Ot0}jULd1sNP?mH;$Xph#uxl&n(2%DJ;|2z@gsIfXsBVQ>(p`> zxqWA;`JhPw)8^DG^OgJ6h}{xEB_QSGe;X5 zP5Shb=6z?9$B%=`%4jwk3=PF2K3Fy$mlV3U4k=PnyWCzKLrafB;_zg^up=3af5yha z@s3DWpINI46Ue^xoNbQ@2fdO#d96yEArM8(VugUv>M!?-O-9bbN9g&XC=%hA`?$;E zX61EkrlJ!>Ebp&rW!|Rr3!R(RFi*&TB>UIN?d$Q75XJ+aM(5vquz=-#Va264@TseF z`AgdJ9*5iQ48^1!l-4vV7~u!uu+=Hvg>bra{Z(*SosE0#y9X-=Hl5lsenvp8T!5gI z#SXdXu{h_g7-#3c{qt+ugF&g+=lS#~SFZ}4^|<1HQGtO=5inxWv?n5! zInqU|uBG1x7eEnK{EkD5Cy|GQBcim=RL_$ViVg@7n3B6MP+SAnZ^}m(Ywbbpkn70P zD{C&zS~DC#97x>l-v>2RmX?-4w<#D@LNPH(nwUHT=*O&oumWI|gn;@~Af@9u?a009 zr}hN@ggIPu8v(^l1uG#l-n51XCkt;TUZOZtM4HfgY;E%Wuf%vc**Pc8T8F|KPgMf# zsJO+2xO55(FhpKg;LqQ)CGOFVSV$TSy#NEDi4IkkT_isVN~n5)2EDZ`7SBL;VyVY* zn)|wh*ZATK)k0$iu$|FSChvAlCC%W1m*ie9ha1X8$GLfj(O|8hz@|*|>#x28Y+|`g z6B0Q+&vhaop$(*g@LLv+BM5!&%bA%=b|52si96Z3iB92ZB~{fBFq<>;nwXfN z+U(<8S{{tCzr%qT3Pb|CqNt>okSU)CW{5@>fE#U|l)fHIJjm z((0t&hyF%3&zRoa!EbaYw=dNE(Nmc%2*MRyl>J9O5f@p>w_cf_G2<@~h^=neSbn5w zpaTQTm3EyKW7*c5&2wQI1{3%6j%!oI6u)s`I|nM@BDX$8Py$r5rlOD|2o{FY(cYx zsC3^rmRH?HAl@eP$k)2qGiEC>cry|!RoS2sD7_=l=)^hyIYso(ucr^Uh>pBnrQ_U#^AEFDwTSW4DtOMqL62ldi^2{eGRuZoGYwWX`8KYIFfMVF?9Y`ke>LFC#4LuhWys6&X+sg;l_@yH}4QXb~O(c2S%816X*r=!u zptoP{)Ai71u7L<~Icp6LtrmB!Cy)jO&ydxb#1g z;a2DMShB;AFH-pS+jVV&tA@gByc*7$4hM=a7;_G_F2!q#>zV~E;AmpU;s`YHY8<;9 zkp2H7uw^5U25X9`AZqw|e^hgERWnnedT~3;?o;kuP_pZf7X|Dx2)(_&oDU}@7wSu#J%KSRq zJG(_7F+s}6>hDjT0|SzUZS~HZ4hQr6J~#WdqsFlQ&c#oF@3nk$*wS;n+T*y^OJF8& z-eXwi>O8mP|NMbr4mcbr{q1}SJ zRq2Gx$Fu~#h2iEh`g8*M58f{lFk`9Jlor3iI#$jA7tII<^EjtB$SvjP zYZV?J%o((CYNH&P-G^1@a)P$zYN#V)FiHY)@EngS#jaQ5q-tt0 z!dF-^kxLp{ruR?RdYH0Xe6F3wCngNHhBMyy%P}{T0a9PKT*A+~I?Z?R7>7T6ns=7E zTXnBP#u)|(-$tM80V}tR$cYMwpA7A#=d#CLFrhj-cWy!Rl_4nX_@A(sM z+1qUEKi|2_w7SH%`X19KTGR(yy)RY=n%musFP>iyr5~bsW!iE&C6oOZ7l5myb)mRq za&`j*X@{apA$xmHCgus5Sy{L}G2fPtK0Vr7)CVbgCLA1|AHvpO?ez45RQ$QP$`sqI zEy`rP>dgz5)}Qlrb#jIQL;fqdMh>?J+7FZ}-#6LkY<2gssIWrYjw8`u=7bd(;ic5c8#)n> z0?a<)=!^2md-}R-;shMiL#>(DLmfw%HnS=2aVK6SykX^g4Ky8H#1cYuck$VBAu>W!?#}Po%_&b=aa&-C_!4(VAxfSR}2ki;+fdgU;l$M zYM&$VdwM(|%6VKQnL|*aMrk)-zNMt*hWJU>nNi$U4i3)WI!)9i7Gdy{*d$N>q=K8M zu&*)c4gBy9|A`2Y*VuSq0Xby%$81c{kBU%7ex#4B{*7#LS{F4Eo~#CF26mkIvqB2A zYo&!fV&y~IgdYQ$2~A1A2jo|L#Pei!`Gy;+Iq9Ae5ZzkQjFmFGz4Q3X_eyM?+<&TE z=U;F4AFRU;sN7w2G>*@SL@hdac2K?Sa^nSDE+$VeAi=7|1#E|(C zo121Nua>J*QB`KP*)+>qEobk8U9-U-AI8U3DMbA!l&&x|HS%&A-G1o}0b26a3;*SL zoXt1jphu4$vD?ma1uR@qL-#Lo@7!yjVp@CQT#8Fv;eR}I#kinoBKZ||ldp{W*{Lb- z;R5Wked72y?^k3N5hJ);m8ra3^-%n9l@!&XfB8*8@YOSSjJ*6?1i%! zn9HQj*Oj&QkTmDoS?ibjrM(||a}n~u*wN5-tXSOw(iRW$cTCHNVU4R_M_W9*c*V9@ z(`)MQ5_8Bf1;UcmZ90?TIgAC14;Sr5Up|ISEfNOwhaBt<@h(R(K)C7o(MCzKqpEWi zC!v|xIl03paK)N`@*e5f@B}Kq$4mt*yxo_N?VpIySeZVnGh!z_@>miLd0aX801BBX z)L?=|?P|ybLA-@rxI3%6CfL2NXdr`Eg zIwkYNvt8XYUN`r1s>$q95~}YvcpImwy?ZY)3)?%fG1uj%M7izcqif<(Ol8QsvA#5r z*zu($+zaHqK%<}Qu;3~v*o+iZ0UAPtBODyPeSPAOVC)k^eSK|2`T2Ic!pyskN^f|J zP2Auzgl(SM>}35`pRQ-MhtJM};Z10ILFgi0ly3;H3BjPUg1(fC z3l~uG{84gWzwl9tj_OTX-&@3bLYI94;1ejII9y+#V9jigZ4*1aP)yw$r^YmWfd}z< zUoek$M}L6{*=INtaJqB63}s;k2z$8i8+?fqq^Q1!ixBnr%=>|T)w3;dnFPIy^v!(5>rlhKI`;f1PuW5OT??8rg22Sq~7`thvpN7)LKzDM_s zw(|4yH9?gSF|%g+4k2~{UaO1>3%q7UMqa)P$hmXyY%Aw@xjaPQKjr;AO>&o|`bh$N z$L%>TwLoac;}dpRJSP6y5*YFOF&5UvN z01x?xeg6DW+X=&0n<^21?4$yGMdGa{=C@4FQ4HHE~MoNHRY;@F4(&bG3 zYkd6Aq9W`xlH3)$?AN9~@4iI(>r_A497>Z0#fd2gnVFf#ukBt=``(BbKK+uD`=z&9 zfAJ$A$ZQKj)_Oh+k4#NtLG?)0^$kK}zdMf$4Gm4X?R5j8IcS@wniRiOuv(CBM%!Cs zq@=47?P`Jv3>G2 zm{@DR!)kx9?tWSU*W~0}eSE$o$4&@Zyf5u? zZ71bu8paZad=YD36ccx>tF^L{f82P(&bI3^>mS{oVi7|hu`;|)V8*Rnq^<&_Xh`(C z0hEiI$Pp;Fs{yDHykVq|OVII==%l}wBI>9jFqYEr;JGIr@%UVXAO@@$xyUaF?-<6UhR%uHuCA`q z+ib!Vzom^2KC1WAzAQTLNR552#zu|`MR@QA)?HxiR&)4J=;f8Nx6vyNpg-^yiBbKf z!vKj*pO$xqI}%6uJnRmq_QMn_3XJ>yy+D>$_Wxn-EyJP=+jrj?hLjfR20@fYI)@NM zN~F6HknZkoL6J_8QbJ0)!JxalQ>2HOee=HSzxG<+_lJEP;yiIrJd z1==7)9$q9@HGFyiArO6%?u%K44_5v9YVKegai5twJ$$+gRWgQhc#DEf?E7jmV(7ChSDebLy+a-(BlLA(p;~2jt@iuQFNga4DNO z8OEXw)p_H|J84Ag0_+sJ`mP|}0!x9!V%oF#?FSt`Tw8r^tG!Nvi3bGn3CVSzo>W!9 z3Ic8in8%u*G(+KSs{yD`g`krHs36^CYm88W`(G3T^N}Zcfd^<#jOL`ECX-W4Sa`^ncRxg3qdxhJ1veo>f znj8(B1M9}#X+qLWf%A%=ePLUqY!Jviw+k~M48OP6l^<1NjRKSJtCs=X2Z7lw0BsW* zidtmH$HLB$a{5X^L63&CItTl^;GGdj&qzXuaC49R^1akrU+ZrR^gc!Gxx&{S=}c2S zrDguCMVj=RXO%!0R(mMveDtAQhOp_=P6pt_)gD^9>0(D zAc}0dGgbmhvwb`f+u#Jjjc$6n)dkdiBtul?;XSbU@#DuYS-E~55j}jEN&>%mzTNh| zMn=%{FP;12!zUds`BC}-oBe5}Y*AMRpRL4y)`o1!BvVIS|LO?ANK2*T!_Q=P_|{63 z*Fh-gCCe5_NkIjTSWY~AiY-nVm5!mzI*Xq@xisxZn3w)!D6@SzOzl^!iV?ld4$PF6 z?eeR|U#6+-;~iG>znvxP>uE%oxbf|JWfgs)W#kqp{EIWrCkGqN-_U1?0-2PX`84W9 zCrjU;&QdDX8iM|iE1MqW9=x4tH7OOce8PdbGh6DO)p0ug4aIknM4(g-2K{6_Gpn5+ zaH|yjMK?9uD|^Qy5%eo!se~ThgQ7Z&6KTpcFeJrq;r5=z+_-qFfz!Mr0fEgUPEHo1Bf9Iu3Yejy!x7C{n_PgT< zA&o}Xc2i{Y*1ydf6UjJs6MEbTgq>DpicQ2{4{mLk+%~#RH+gVQR_GPkPzP??FI0j7 zeDmpQ48Z?&D{!_(-q(YT8O}W(vmxmOK&+;|;G65Yj~Ijczi9Q8e(}ew_DlBl1==$n zdfd((Gh}P&&lqOuupg321Rwh`ipca8F>`~xa5w?eDYyelYZ|f)^E^98yLqW#8JzJH z`f628gL7AFqM)RG^>bNDYgx9j%oS7a=egfJPbjLN~g`i^;f&m<56KbKO*}cmhA!)ZLxcfuNa2zy=KBUnreG35s-nJg2vE>fiJxh(0d2-~&A#u)f+AHsAJ6=i5uF?8&0k zQH9X-jY56q_j(7Q-eS|P z3``T}gQocMQXM(u#P?10uBi9ad-~c@-F@PtOsI%6{JGlfNg?6lS*Hxz4bUns*de zK>TD zzZFxIW*=Ve&=69ebOL_T(qVgs!t}zU*;4 z5RP29oG7#?_@;$(*KMWZ)Z;$?Zmg;7tjDGWcL_weDC1>&_c-c93aW6bU{C?Q7Yg{_c(Uny zM+LyJ={h?~$PYhJa3oNYU0Y=j1_yHd6kbxu7w_^5o9+5S+`y8%zJ=^dhPsH`*J9B_-IG>kkHLh+xaq-Uj^t8u`k~_#t)lgR zp+{14!`5Y4^oFyW76KW&<3q3BmBLWt$U+RnX6kmuiZw7g#}EN;-4AA&aJ}Uc?9=|O zm&c(wQ(v{~EvDeO*>v1${IG(p8of`z-ud#;{GccYCGeRWCQ!VJUoMBFguet>k?$HA zHV8W)%1V&9!-Vg905s7XQK#D%^SD1WC_;%)Fb}px)G2UuzXdupn2Q(d1SXj_?%_%z zcal+Yg-Weu`%vkgb+!%Exojx~So^8iG(IGI+`2^M9esjp#e5I8;VRga+p^QcGJa z!98`2%H`cA%3pAUp8Eaj?#1pzS;n~jT`~nuxh#wiru`O0aHob)YXItI^RU$9higi? zxfJG?(}!XIk%d__czdC6&tbADvFkAVR|)gt!m^aJZ$SuVT&|FY_@cejxF~B}Ct`%pcPbPhA%1w?O$y<UKS20z$4S}~zKxsMQjDcybBKku*>;?_8 zfeBs@TWSdUNnnsj|t)3Lu zL3CwdCJp|z4OkF5OjD}5&DhxJaOP=^XVCm!q5809PAlMQ`EHx@_E6B(>WPb=R~&2# z_&aSknX+(s*4#<^OoiNE`^@-dHLm|C?7+^w&~Ak*LZt&>kN&g$-v=uD{|!(2Us^nY zd&txOi$vmzp!^>=)PE1B{(tTXs+=L($`|G-j6P@t>-bc?BW1#D{+?Dc z21M^6Z7g}7KA%0_{rDucH~EJvCNvP2lArDhZY00=Gm?tO58(=dAG*k;0iRANyl71R z0Qd-a_rF0N4bCJMVkhp&l1X+xGrEt7%jA=S3A4l%HLZ zVc}g_UQl4`%Y3+L3?|HtE!s%Bbnu&QOPQu*17lC;H*>LrbY&Z7L=@Fjomy~;9(Y{rz z@f(C+m{Iv?SzMRzZ?Nj0#9Upwo=&Ng;o|D`b4vT*1^d2mTuOo&G4v``Zmtg>bDN7% z!Rmg5Y(WQUMr$uqlMgFRSDxzIUj_n89Cm+{FdE2#6}l1E$frI@+P-jEkU-oNbvtaQ zmiTO{?J`{VAtiChsOfP)eTO#3ftlMOxc|(IggB7t2#R^Vxqrw2rPmMEueEXdHxLW2 zW8$o?wlmP7Jp;X%toQDL;A6JAA6n(7&`Z|NMu&x2-mKnroAXFkOql`3ieQUpRZYdx zYR|pMW80sE88T6{edc|C&2^c7{{F}cg-m^jz4#fp+?Q$x$Y0*u^d)f<4GF#yaUcVN zK|;dFroa-yBrZ;a9uo8mKAqLd%67Klba`3Ryan>jPPN&eOW6zm=3qik>KB->V8wicN>(b@#|GZRai4h7nh$6 zk8w%g5yqf#^pxxuzhlFd$N&7oq1jw?z2oEWoo-QHtJ_J3e59-Ik3Kr8G24Ah@mTh% zb4d$+K|pIOVGtn6EK`Jod9|EFK~Vl07A!9JE2y&UYM78si2$O!g;hgFXp>6dd=f-~ zUw+I&9Ww8`jq@slAcKVYJ!-^d+B^I2o%7}qpCIGfc4U-95yDNxs{VH@C8S7lni>Hf zZu(I$SnFGTNT@l@bLn4oh4h2K)nf&&_IPF&@OdIiGaS4~huQi-|-Kvn^83gx1_%AkO0TWJQ%wq62iGe#>fe zIG~S!HFXfPv>=HYWT8akg^GRSOz7(C!+8Hb|Jas`46a02%fn@b1FB&jeN!_t=zZ#z zqNyjN15eZeO*oVuw{nIG6Xy}ZlE?!J14y>_27zYm?4c^rYN-Yz=#-NS#O(xOncW

    7SkWPNR_7>V}|{sZssiDK$9Sm+DXoFigZbo~8j`vIwqILo)A!&-y-ovS4s z=O@_mPm06m|5~&1GfmfUMLo8z`8KQK+p61$#jz=qBpaiIo&0DA3I2bXz)b0j3SETQ z*lA8vDOHM4{Ur(f`kN=SjC)1juGUpCL6?YU>-_Z%f)mBDh6^uHaJnK|;R6oD2D3P5 z-Z$4NSE%mA0hI^$&jAcbs>c+W{`;h0$(EbPCo9n(9{mDnu4{*86yz_e(wE433vmb> zo_L*5;p33H%xfSmza1EG5ftLNu}1v^1TJVJxg2CwGTH0g99^e`^lV*tXbrDCG2Ced zw;yFB4R=VqC>SyB|EXRNE{er4L6IVq=}aUf32|tck>s{&Rd&bHnwK(jqpfu!SupbQ zOUOIhS5@vNI9{$+99*Y0u9SSd*iY#jw23G~KP2kMQlxLxAV=~Vw3{m3+*95lPDv6y zN9~%D5X#$wA-&%jPkFP)qI9byx2kxbVa`C`iulKIBvCs8`AskZ<>TIenaZ(Y*#fRx z#1k&mH^5}AyT`q+X%EzmN97f^d<6VyippsyuXa7qna&KH_-NTkuvbl+3g(h-wQJbY zuI4Xa{7I6pXSyaNodY$6H+sj6G3QfvI_p-8n%jbYxlgTse>+1`Q!7}{| z-xlHrHng$=usG0$fPWAfqTqBI8x#Hv!bgwRABBL~rdUEIFW+|$(oWXRW4CFeJtR0~ zCEvp=Ht_amRbz{c=An62vQ7ioD@)gw4$53relVIO4L)Qql3ruVZ5<4CIb*)`en(I|!Z0m|jRFm(YgfjM)jZB|NUOq8 z%~Or;g?kaU3z{2?jAnkPqlr=YVE@&rh*&c<=HO+Qp!rL3@>eG#0&Qy-UsGz{*+|_- zW^ri7FuTcP|DoTVa!WUZG6A6CoX+?-a_DkyX<^CZ6W_2iYV zGO5giz>J{!v-ZQqRkL}V*mMkSlGbR|6JSq&L6Q@Zk&$3loR9(4KWHA1F&Ydc`8LoJ zIIYmr_lqd#sajxA7xe*c1q2o$!etR%9F@^S#(!ZGg$ZignpF@Shbsv4ud99-gQ}f$n6D7HE+~QtYp)D#kgq&KbGM4Vn z=M+>eax6e{OUtq3VuT$+>)yeC?ukR#Lwv3(?#k6Tw_6_SVA}1}hm9ggQDXLCD(|wq ztOeyq!E7AIo#d@?X?QMvP%eH))R5NN~fv(Ck;Hezs#LM*$fjBY&vHVj;!Sb3dd=1J-a~I-^8m#{3)EwG;9$=f$nB z3mp8l9%HYbN#FiF5axyt)4a^R{Mc!O{hTN!yV>H8){&%3>^>&m?m~7vE&e zhepOn?mLqNm-z$GQHIeafVY4wP2!0ow$mx0lrgSGy9W=~!xL^uB{jbe#Ly?S;x`*W z>Ck>gM~npq0DnB?Ii2Ixlf`lfjh~UIq4jNlHvE`Oker~$tlPctOphBfO^9Qio5MAR z@q?VKNxj)3;=7SLo5;ArXxG31H!mflNN`>;l)mB`Qj0 z@KO}w)B}2ux`svv$e{;@Y+&%Bp`n3kGx&SliWj(SW8&c*g6}MH3xuG+6RIRm{7c&% zYspbOn83fMlJQaiU&R8zgNA%Q(Snt}DEbTzffLrx!ry$(dBucHvmN*QS+Glw8&}~c zOk~!3rsmoeQPWOFdckROu`ClKcN#;o24#eioOJQu}u}hDG=T0iT$aZ**lSFs>UuJGcWp>~k-}TLXr~HdD#gOh1>P}Yt+h2)4q-^CV>KJj$&Z#WR>urWi z)4R05+5{kh>SHETL5kM2280DQ+co2dhh7Hsd-&Y7?(3S@?h+`~ddnr<7-#@Ts~>P&U*Yp8~KGAB2|z*Z=lRYbS>O zUN@(D*I2$&{?9H2jb-k>yH?SLpctbdSl~y)0-Nd2fO+@$W0Z{F-PcV%A2D68e?pE) zsHxe-+%KBbIS_e=rz+tn8*4HHtLnjwu=RzM}u3VXJK$1Y$I9G}O%5THKc1%;lVw>)u8ii|PDMDiqx+QO`20YB9dkMg&h* zfBJ$}NlwM;-Rrp-+t707s){aW-C*4@Q4Um1Zh7WT=+^lf>sVo52yOb_9U0T*j>zMm zr|&3j2p671O(KqNCkF|^%IAYdoOx0~0 zI-`Z#(}&}_(cfyrLZfF8<@6KsAjm+(<5d*|zLv^;K;>uhL2FLc(9XlAETzyi>u2?H z^oPlV!}ul^KO)I1)h*VUaoM_z=7j~PSE`mZ1^q19a~-#}+jD9WmBu3w%u_Sug21p! zd$>~0eKlEJLTUyQFDYcLUwCC)18kL_>OBW(^+$YenLm7Q!DgvcqwMecbEJ7b>y+bL z_y^Lb5@==-lFiWe0#!IkVDl?F-SbS&j3WhBs2OG7(^3c6_lyfY$S_)}f*pvfBwRYZ z^VyjuyPwqi5$(nzyY7$|-sfsu(WiJ{7on)}XuGAnKNs2W{$;nM#TojjQCRhMh0%D> z4}V3kjo-uc`Vz)^a2D~Vrm$nx7x+h(mS!Roe#eNR0Hyo~|ENzYDvn~x@_q%XzC~lU z0DD%`DzdKjTK`%~Y5g`EG~0k#suZFcJ$-2M7yGo2Tslkb8cf*y>>Bf-Z>zj-bh%xm zd9Kcj4vKH-K3tK~3IAQ>X*!TRFz=tBrxwkCCKJ~=*-ic^L>WH06+sFq<6@Qg|^A_?^v^CV!7%hojt91 zdu*5p1fSe1LeVF)jCgc~mR==XD5h?ng+-Zubl?wsq#1Kx->UV> ze1pJ?LvO`HiTOq-Y-F@u<4?f52n2n07lMUk2R`gJ=QUp|UlV_N+4;bQ8;_jqI}@R? zD6#8AN*AUy$Ar7^)bhChx*S@qVU}aFhD123_u6&rZECuE$p`4MU$1}Y9v_PxO=^?K zp{b{ZzH-^rh*h^Pz8`vY({J`UC+3Xyxu)B-4|LDe$80`Eg%FI1%Eghz=iE&XN=-%y zV|Nr2b`{!rv6cUEcK;av9qXPOqEV)4@E1s2S^f0if;RU3qD#XN^^4U}`cTUNzzWRx z`1M}u%e2;K%g=bxP=Mkda~)3?@#DEHM+)+VP{o&IG&(M-$^h83!y~0>PN-EYv_>_s z@=?}C? zg7*KU7PXIKvLVJfY$@yC$?~JnhTV=x;e9ixK-}c0MfawJEi}fDT2lvf0}Cgf5vdNH zKjvkm7Zz?DF#9OAxCPL)78RMFO!L$7DL2}s=GB!}8j z7k%~z@Xus_&?zLk9qe{p^Y9>`hyisMa~J5x*_H#~Rif{M$FB}00gph9=l)qX0}KMM`F$(M*)^7}pS5)|Y$!Y;GhZqx0H z1^rNrNR%0nvDabpw9Q(AQS;7?7+>NJ!ZnO$<}HKtYi%A|4`p6eJAwJOF&#+OH|#v# z^3Cuk*Bu%ewZ~G&@dcEH&rBx_or&>CW>#y}^lahkfD1C@@KUll?KwvBf!LF`f>!xSUb&$5K$pHT87c zP*5oaN`4aVc4N22px5(%Hsd+r@3mYW3T<%+lGmtfq57dA2Hc#1cs(GqSe9OqO*_*a@ESMwks3;K! zHjSjF$nARic+Ge5b*9kaO~A!V^{Dnn{Pp7Fm^M~BC5hMXbc01)q{}9x$|g!vpps|8 zM3k%`Hf-L#)1dW4>YOh0?b(hZs&e*!n9tav zsx}oGlJiREbQzroSeA*cV%K%hp@p73TIx9e zf*j)~i;8U{D$BJ-e_reE#;vZJ&igC$aX;&^bE=0z8Zn}i7q*Tv6D-V9ppfX@=+vDz z*;IcYH)2H21}}&0byY;rd74OeqHu?^oOAz>0v>mZgWeephTtR8D0zKoh!=Syp(0fu zn{p8_`^`EM!S{RTHbGC=KdXHE2@})3FX#45bfXxTNj+SX`hYgzF6&d8NFO zaxbcGQSczx1=+GQjCL3GO=KTsvUh1gSB%)moNuG!BhdVgPeeUk0bH|DxF{D_VgosF zWi+@B;R99F0R{Ef3TeGFJYZ6#p%eWb^u_@&?0!xB_3Om3x}-6D!S*k-$_#eu_&C%V zp&4)O0{P7$!6>kmjR{KRZ6Vp^##?oMn-$t@6wWf-t-%f0r>dB~d8-%jK)hPFvr63q zLElSMAnyx{e#O`+6|AbG5f^digR|5o_Q=wOz0~FdACsMuQZb)E-sFCugSC*ijI|S@ zn9#Bst!`On{$llL7;%NdNc{1mV2W9%A7=_<`2}%tc}Z}S(SohrfU0Js6xtWfKUc^@ zYF19~r$!Hw?W>tRm3d2a44)165v9NFF135`a!U-Vd~CeuWSMSl9R<<#_d1$j9oeCQ z|B=y0Ki&Np38yu(@^h_35NPjfqN47t9BjlfmubX?G>E&C`ne{=Vn0t=n)^{NU^Mhv#PL!cuuEl8l#TdqhSG;UrA3E=H zFkLbu^YE&x$?`%aW6t>Z-H-EnBQg8Vjvy}$y#gQ$0=`&t+sHhEz{Kx1S&gTq70(Xd zF7~Jid_jS@)3UVR&oA$o$e~hDsyRh&!uTk~TM*CpS!d=-vxv(pBzQKRA59Y1G~}Qi z*=sA&WQ!|60v!UbKE}p2P(dmy%qyPtLMCz>m+tU_LsWM$yuyWV%P~7{`#e(bu zd2OQ*U_Q{@-JJ^}v$eG~2}+lP(vbwloh64TeDvFO6zD(WmKG$pYa%GynnECnh}DY# zTZ`>wK$I7|Phs>*wWvv&NB;7)7l_t@;d4 zkzQJE5vou0F^V!M%3o>9ghu4&k77!EBiSI$j%fevjB9ElvZ_iCkMaWL62Cj>PV8cSt>!3MMI6ev57y! z8pkO}jDU0+26?TmMTZ*-b;AkFZ)Et1ar>|DtCuH&ZDj$s42ybu%s+Ql;m|+(>deUb z;-oXUmXqkJ;ZGcfO+1&04+Gb0%kRAV=r?k;wr|^TV{QCWlMse8sPTWFLIS_+Q_;Nz zzG`L8e;6wl)PmPn-pT4hfC9inf=9ED%=lUx$R&*!+}(uaUJbN>YGmfh&#u`mv* zjR!o3y?4z5E6hn(c#I6tHVb#~0Jxup&Gt$>HyjFP_f&Osu;BgSxe0T+*=q9tNOKcA>^GuFUBH$b5(}2NZQqbSc0B7CpIDBQ!GYE2i-T4{6`Lj_C$%Z z&5~4PUNbLK|Fue*Iyhkdm0I0kbmY3gz&ztFE_1NDsBMfMu}V^m93~L^hht&IfHyuh zQDC$rb6lNU|F0KjG29LnbUA0MAuK88pUCyGWs99)zC?I3syfK1qh2qaBtL|yYMMm! zJc5;d!^)%gp0D>K!5YCR`0|A$1ikb*T9@|HY7Kxy-*{CU{YWRw{t8{Or-;-&BVE@m zcPb{9R#c=iHC;{o^od?f6L#DEi%XZ1F!va(q$CLNqQ3lokh*8%IIj)pYtG3gCz}J) z&0f_un<1j%D&ki%qaLJ`*xSEJ+TL2MfWRw3?>^GeQNGrBn9FqOt$;ph`w)3PWjh;P zQEyHMFHs@k!7dZLPr0MwD)}b08H(%es>U z@r8rK=g6mX{&D|>zfvoh$*}mfFob=@clAw?bQAqGNq1?o#6F1wWwkC%z)W*aRjZi; zL31nOkv6ifxc<)0)9>sll~2g@9*j#_kHwQ(0Lr8mIAGRuVu<8dEU;HSKxD`+Fc{y? z<)3d>!GAphB{~G{@@%*Phktx>vXtlVC+Q-C(1-}&aSJ#LQ~=94K|$bL5JmyDnKb%o zOO3X$SeD;CfCZnvrWEDT$rjM)2Ms=zZ=OU*zken-ce6-(??L62cFKyCqJV)gw*iXH zs^QLre+}6n%UqEUn13pnIcsIUkuRQcWEcv58%|B4ysncutK;JJio%q!o73=wgD~rG z8dHozMPBU%EyUY{D8TLN;58b_w|OjSrt6IheQtH(N~;a!8~5VQr_8l1rL3K2$;=OI z%*B4@eZd$`a)J*K;OPYqL8O&Y5Q=ny&#}MAIS>Xvug)EMG#4^doSP%`Kys#q&=)=b zj+~CANg&)j-n3i=i;XIBxNB9Y$i`jTL$<|8;%Vb^^v^c#WO?9uKKM@>MkiUMdCCkp-u!|fnGh?_Du~)y^~gT!a|%L#8qz%@=PRv_USqI z5SD){#r{kS5ob5&qj(yzU@kubif``y)IaUdh=0!qHHFHSQJWy>sKmTc?~9!8FJeg; z;bup9DM!Xw7)69Tb1@YE*}6vB0kgLP{&cT>3FF2Gdt~*rrCsOJZg1+Oy=o0?%#<3U zmM3c4Or}PjeaMI$uiLXCHZ-`-82>_&*Re|K5cARR086WwIWDNnLd z>WgZe=8aw$(a2E*I>|SU3~54D#;Iu`xjElZ){@*Aad)#swvOVOF*mB7Twov0PK+KY ziYSQY?ffD`oFBw6>ga%0Sk@|%288Zw9i6Ckdil$UbICjhqwom_sB27Aw;JIPrXSID z=jiJQzMQWS3pOv7#BUQlnDPBvZHwUQni?<&$(bQTXhawUvPf|ppO~B+Lb^KfN8E?r zKkt60UbdML0{7I$yf60C%si|Kfqziz(T((Y!6FpEz}&*xUh`%_mA22US$M^>3}45? z?(6;Z1}nRVolWJ*OR+$r#$lc(l52|HVu32TJki!Xpn)ur>lRR8$Drqd|*kMN7?@uHCZ)m4VCiUv%}E_59H z>0~%zl`~&G*{|HbAY9uy6MAY5*hR@>W;U&A54L=q8gOp(Shs?$$_9gh%jCRuNy))0 zS=rvDH`hn8>1Q;vA?3Y!%ytw1ODT#xyop{Q9lz5W`$V)$1cg{VwvDN1D0t7?uJ>2A zSOwK4&k$WxZ;V}(8#kmt-0qua-Xu?E_T-TwTfhd{Hbmgb6AZEy(Mt^xbohAA(j~7B z|7$;@<)fE+XEYpjc-^4$a~LgNs)IQ?hB)LEQ;m^or3lwGH~%rNP4-}Yqod@!Gfw&m z&zMKi1_v|W>*~t_k@LYt=K0DU_f-n)h^~hoe6-_VVJkp+oLxh;Q&6TJfDAxvKeOh; zsbvX)T5!2epKDEgswT|{G7BUL(oVYz-JJ?J*uxHs*ld-rqq>Gd2*R{ATo=B%=JoE9 zKJrko0|{^?6d`5I2Iy)^KHbrinN4^d{fdf<1Li8PZ=0WH zUrw~Kr{MaYsSy1!%90WY+hpCNhHwl95`d>0;6(jLlledLz9K(Q!dL&Z^B>7y|H}V1 zTKumBaMKYM{C_>iexsX=9E?k2A#CfT_U7S_uuU9#aZ2GTek6Of?&fTSWd?@^>ERXxX z_J1{dXA%<_fsv7zB`x{+Qb2{b#1{`T81e!8v*mfC*SZ4`AaY{?i0|K(E@-91Md4z^ zud`oDm*K$2KHda@txW-RjCQ01eHjyT0(xgPaFL{VRab#JSNyDll z3b&1a5M789yh~-8n05)}`(n>K>hYh*#cQqHR59BMh$n>6R~P#Gmv|GClOlM$nY|dj z9La221&c5F{?@c+9!LRqZ>PsdmE-y^vZDX)a++*dc#tFi#NJI~OuavyiO^`e%O3u8 z;?Z^&PA+`w*4`ap1#tsy=ZFJ8K8A{O1Wmt29}aK08VMs`SswvFx*TiEqv!bD4n zo`|SjV`+3eNpxfDz_=XfcMO_ldn0C@9&=Dj0fUJumn~(GeD}^szRxxJBcvVpwhRvs zx0?fn6CVXGNTtY9i~zUoo+WzVZV9yP$0tJ)1psyXD^V5J^@tG|7PW(fc@3cpv!`k6 z38nr&*!FqrHu{#UerwCWeeokGHh~kmkn@30@tCam&Y-~e?~Xks2ewF@LxSfTVx9R% zUG?y%zGF}w>kD*;AA~J9{lUb@_x~3Q)o^#?zWNtP+S@}M)Z4u~pHOI?G@RvQLggaV z9IzN2q^cq>JY!Mu{>v{SP-8aU<%wJ{*qq<8=$#S9nsLaTeWE0E{=*Aizx8gjLO{}E z3>R}cDJZbX((@EC6@U=ht#}2Ci<)R?Q*Vj>Z0IipF&Vp3MF>eeO2)_2 z-i`}S#EYbNax{+3 zrah#VAJW6-L3r5}B=SqhO>4(1pzrJY;SbIF{ox0h71bI7jgI>_X%)TrsGa8v_NUpV zV5O$WGx|MFMKP1}0nkqk|Ip5C+FPcD1bfRUfVDwhoqeuPnhgI&@3MZYZ`Vr92~Ly;AaU0s^+mujUJjD2L*Yw|KyiP`q$>ynw>#FfjJzOZ zP55KUu!f(6L&TVvg5Q*&EJj~mf{|dO^=;wY{-+Ai;U4n8qF|UhTqDJ!AdPV;3OO7Y zphc|pB}C+1>Eo)!n%_g90tYe#x|Wufo~lVcyo`Pl-Cg_TAkb zShUszTD*vP-%8zYkU#)-ERh%wOvi^9*Xpk9?P15sc6~mAa-ZZP+dD?j?LJ{?6WY`5 zRb_s~6iA%ocy|@B6tHZ}b|(JS3a1>Q{)FZ6!^7E+lSOPN;)->o-E_P9Jyp{Q<7TM0Dw5JDq5{_K%8yxDq=vscIL^M?U=LptsDl>lWgd?`U;I@hap@(-c zVm{^_L{6EfbnRY1`6})XVv0NtbKw@l)T~jmnhDl4#PLQH53wO3%7(LYZ!4G3W3YM5j^6lkmd z^oK$M^KB?gchkYT>qj2$hXuaeXVuv0s?Ms4w~8U%EXN8zz@WuGjab7?iKVoTdxY|) z>+!=;fnMvsDtVi*uyhE$pV=cy%=)6E2Y|1Zs=#W(r}J9x^)n08*V5s9%3o9pQlm`y zbc{K^ndb|<{pDs}8Q@XWArY32|HuXf=lrOA8vaAfPfL5dsbJbh_G1g-TejLa%;rK=5_>DlKfoH=%4CQK}mGBq+qLNd72~SPOANNdLJ2+S< z9hjQ>RDvZr5D^}ZK0ZEf+@Hz~vf6Nf9u8Zm9=NW_*MIqf4xA8^u=05O-tfpP>eE^` zf#79feTvRUZQrB_*O9LpgL5&LNewH;uN*hP~WhlVy71`9?D$8x>O?4aMJCLX!se&s0b zET<~l(Gc>Tg@KE}9G3va-1?<(maD+b-i6#*iMoT%US|CIt*DBGfnRA^o5O^BR_4j1 z&tgdJo-?=Cs*GFCVhF((hn*SNB=&%+LrS(70WB$p!q8@k=Oi|%$<9p3A3973Nkw+d zM_REkNpkYYc%Hm|&8UH#06ciqt6@D(0>yVHTR8>b*ft9hx`ny%hMbDY@oqz-4fhl2 z$d15btLORo16&kJG)vqRO1rHDA(C28P{$JD`MY*1%QoJ>AHhuEV&LJ?Wp@zE+ zxeYn@2>L#tm4rCH?$+#^BQFEe*Dj-Vj__F~Zm}cps=fv6VS&^*CXQ-qC)0E$Zlw^V zF%G_@sXFGM#xs5mK|PvWj}O0z3X7|+kBp~gsCN~v^h16V*=1-JM6_0jA@<&tRMZp< z8p1x+QV~|E+MtHBNHH>u@7YCSzL2qfq_5dS|HjDL;TA)h>{ z=H3q)Os}lXOI&3=9bnEKu1n0+JVzylE=R%+Ng_>;0$%*}jhB#^h84+-BLj_JQZ-AE=NO4|297WR0Y=pOU@N5z88{Xy1kq_%5KT_U>*9Pds zH6MAHT>K+7Njr%|P>Y?F>6eqV>1{aglpn>NWz`B^&F)>Ugb}|q;=<=7= zX>O&s_F*#K3%b2OF40_x^2Er8deURkd2IiEYA&9z_haT_`l$lBIH?4gjgswIw}xGQ z{MO5V3JH>tBzs{oG$u36#%eT^<$rpHV{!BY)|7tS^=1&5@iRUZk8kpS<4a}QZ>iy7 zB^$2G$({ZZwFL`527Y|S012e$Rdkagi(@8}>ViOewqgiqNIC}4foEYaI?_(xOu9vw zFZ9U@p)BNgLvK?7wBJcgS2z?~@wqs?u~>$ZuJ>+@+VYaiPh*YfWjj7K37 zHoNJL<=-X6zAQ}E1T7T3b1Z*DzAYDy_LeY#bu~levOnDABkr`HF0#l`LTQ%ame)FF z{d{Rsvz+&~o04%sIedbuaNwk{sN_mETwFhg1GdOXe>zU?{-2=qT|n4=04Dd<4S~kP8XB1rRR#B4S^@pIZe9$pHC#-6aP!T-IuD^ zxhv7TE;QX-bF3yf<+p57kZn8LtfREg4;s||Y$0jC(HTZ=X!YB{_Vp+tC`;51zun^3 zvb*qRQH>={9jpkos8EwZr--pa<~%(L0l87U{TdJ6v!bMF}yRq*r;4h#|` zgAybPBB%(6ySlo%`d3|5sscisP;KD1&?Jf<&@7YT=JLRJNW)w z1~%R9Czn=VmiqP6;u~8Rn63;?Xi|n|ia*GnJvY!RRjp*<;ZPv>NPZ-9ygTpIi2c=G z3@5DKc>TR?eYj?rliw zD&RZg=WON@(ob>2KTrj_qw%!v?!1h7R|uYhM4|omz)zITPd9_P#HU2$rz}meug^7fg_}G)?T9E<%jOO;HJr zIkG-@__9wdnNMuybGCX8DG>KTt)etRqJY4;1;xR`(hL^E0v^saGguZU*^v=p&n06^ zTdNRbGU-xyUq3_kF$PBdF=j`hutb0j;dA50`hy#Lm3vO#e^xegp2%BkKRo>VAt`;o z=EsWp&T&-l7v-I=bR*|;Fp>Vuq6XV~=DfFLd%qh7rbfsbs?Vxgmk}3!sb02-lM$jJ zHsePA+#_sVj?8YZwLOz$_(^Fb--(osh_Jljif;s~Hv7f>dz~B<37jqHPGrit0S5<% zPh9Qm8#cle)Ihr^pkTE(aTtVYjAzicy4h z$9h)riDTjCoxY>ALTn~qyp5xMcs};tpXpIPdcwoN zW|H=C`%ty`&_3$uD`xjsJp6pk8apSJ#FvVNsV=TO>PC(r&XvHF-DMNYdR+fvD#<5W zm*5>;wwA4~j>+IuX}#0Oq-$(MYaT1J-BwdLR|B{2hw3koi_)i~eEpO9HrKDq4AQ$E zRhUGvPsk?4H^$}ieCZcVU7XcDM|^(ALIp1678LH4DAhgBGk&>qf(YegPZ*YqIY{S{ zROHSWu>u}UG%GGt%RZK!6oc=1DyC+x|DTFdd!nZ&#-DMU1f;zVWsQuIHAVuFi;@NX z92DguC6@k`%yW!ngn|9`rPt*ZX_=TdX^*sa)f!{Yx?EeB&F)L%ttx?;3^G@un^pg6 zkY>Ai?l~l}5T7qJV#L%e#UERZyeg82NX=zmg`~v60^2Quy>X?aQK-UF(LUX*1gJu-`Bz#XIxN zNd|8U4wER02XPX~i}bv(eZhVzc+%$hz5k>25T+wtPP*1gGad`(YSPiNHy)#3|*} zS*Qd@sz+a{9<~`6;O8iW^xjU--4!ECr*@Edt*5Grx2w@rYmc%MV}Y8KJr4U28QiOb zm!r_$*l@*vuF2!FBrZ<&qlkmHc^$<1EoZ(B;kD~=B%b)j=Bm$x@%qijFD7%jfiA-E zk}qiT?#OwuQ_TR6<@GRMZ+FhILN;r`<~IehvE9MW-tNxh$L_Y>1zVOp_X8TbDC*LP z!w5fSyJMp)F0uDdjBI+RA(?~3uU_BsI@$<6ql5*0Q;pZu)`sSE2WKHuT9u|#WfWpC zhS-C)5RG+lnD~R85tGp+tS_sX^U|B=Jf6ald&;AUmXau|#?; z!MB=TZ*5a^eyrBJ52vQT`pSbC2%-xu?VvWB#X|eWyH}pZ`=pA5DBduE8TS|(kJ|sR zm3{S;oJ^UMj5@vL@F6mVhpk@ev8M$>6umTjj@?MY0tVn_mb`NO)asdzf~7`Ren!j5%UQPa|pIUGSeR?V1_4$m*V4i z#?h4gbKEDQ?Zl7$JM|9!yaCo#+T~f(Hw@%YPg}cBIyLTN9^qbj66rJ_YkiaI=;%Y0 zN@A$oHJ~Cel$hl*TYdtTDz`=ecwGtx}3T^P_%|qdtEXlB1C<>w2d2 zdJ9IzWZ?@D^Ky)p%I)AFf%MhsbdSrNM3i1EOS?CJI$<1e$Jf1_xL-Hm(QgzscLpVt zIU(yqmKp5We&fb#S`ROHZ6YPQ-PXuCc#@yaYTiJT2uqbo>3^EIZdml_1f7nqozgFpA5jqt|Gc%l(^FYj*)QKIq~>vvO(1uwQc1&2o; zo;R}v4)Zd^ycvucVHcKWm6d|bTi%>QVw>O69d2&(58Wq(IBfWUY?-a%?0lp5H0me3 zWBlJzoiVn4PggnarX4DZ{<@fX&q249>+G2??USof3ePdXds<;;tmrp8{tECb^b_T{ z6^$LPa@Ic^x-PD;tfm%&dqlvd1MG6nCcJ)Taq})Vu&}YFFq}T&8nyq%zh~H=H5Hyl z&7r>7VYVI4*0i@Nvg+kpy03FBO zSLC!`Py8ieOcE6}HTA|577o*4W3Y9#dCOE}e?(ZR!>lhzacL*NBd<3#L&}bWZjL?# zES({zk`SZFyHb+YVovU(i}dZjVlO3``}?l8e!IW?gRSl3O?0SgqWppRCgM@okxYh* z&y)TXg1-S=NlqG;`a>QSF2v}ip)zhfGJHr$2|B-!{=t&`v`+XM4{mV`YlMI`@LyC8 zsX#_GK6EC~fl0$u6ilslrJ}VjAQLC|00)hTtx`cE@#xbZO-VTl6BpXyP@lH>LC;0r02G8 zqIj5YFl}gQ4__e1EQLr^TP8*(a@Fzf$iRbQX7j?x$Z4YqzK~-kWnp)_g4Qe_lBJur zaLPUN%E>Q42zV=s%R$mwW-q7&o0+-fX(00sqkp@MpG=I;wps|7Ij}*RCZi*dkWIUCB>3R1NzQFCt87h6&nuvFjg^T#vhxpSC1XeykwREp*D~|6D_?cNnY#2e$zR zdRF+Rg7WhqB^g3BdQ3+=Se(u3hJxncnkJm%K%iuew6L)i(MrZaRhaWctFi-9n(+2X6FmPkpK@?;nN z(b18-t%G>}KrsqZ&3yjDZAeFL=PkX`m9sEGrOaG*HW9<%{-Kz9y&-|;rEzg4t*ne- zX}f^KRrY)Xr|Q+dvyx51UK;q!vDaS=YT?$iJY7WmJWQ_?`R*_-93i%y`{zUH zb(;3qY@Yu>L%>XkyH|4+>iw7BY`0%PDbcanAY0imNhT!efa@}(_X z+%lOmgAmgb^7lXq2k1>*y0ek329B;Ap7Or4)F$YQd)YSI+Lh1mO_|y}866%LwVgow zU7M5sb09{xgg9a+n_PA+t?u3iRFm^TZK4PyJ#eQems0j)+nU`Jm?i$r4AwQhl_2b} zCP=|pqzw8BcY>ygvAxOA$zAu390w=Z&qUEs?>5Ka;=2{Fnq(k#p#5D7JiZ zgTW2&9>VegXja=LGKIWafsAmW+ayGVU=`KN)?D(-%9-ON5*wR9D}QZog+VbfW?i(# z{i2wFNB#X;?r*v%QpNFvR@w5evY!bvIHy`$y6aRI(EusGPf<}!95;)mp!*SY5BYQ)>)ui~ENL5mCR-E z!sU|D;g?gB&4&}uW4=^etTuW(msUPMJ){pgxk{Fy8?YPcMyz}o=ytADvYQejM@1kP zrr<*GsHB34>4N|4dTtWY6hRC|CcL!S*z*BTfulf@I{j8GeV`L2o^*Rhn&^fD(JOY= ztvgiBB{v8Bbw^~yCeB&E$)(^^lQH3wdnl0y1r`=_C1|t1GgnA^1l6J@2Akbw44U<> zmfcfBnuL{eY4#Bf*06`oQ}L_@uDzsEbRa$)fj<}WA6`ZxX>*h4`S2c7PJei0h`;Pj z6-$(HPYk5v9Sq)pf4?8FFCEqeH7!HK-^pltT9?C<5UN_TJ#Lhvy#uy8J#rCIi{2HkzeE_k&mHEvDn zTJz9h=o)dv-NaG??g3_3Q!xHwdm%47;mE_S$9jvtN2>h>HO24JvjF>bM8@C?uy0)w zFVtAJ%tn1O@%I5RSWA&KBt~~~P}AVA)|>nPv`*@`5S;Kn&OsT!m%j$sQ;7MD1oBQ7 ztGNLmsUW(5xzeBAnw@)=SRX$}rYMlfRxT2juB1^9pV4e2c6YfN`u z5c)GMaXf}QON8)v$LSV*o;(H%&1crj@rjL9Da3`9>|H4f_8L0H2aRysXoGvmKZgxR zik1~uw2leT7}CndDr5ILY@qLDU?Hk-d}aeSv271lF-N(V_B9ty!zW{#b|)|hnV)&I zkH-SNj6^`!(Mqu?_7ht^a#Dp`Q{2(>fj8R6bGus9XG2`GCgo3^XEqrmRqf?!=I~Hs z+@~$^tZl&z2TM33#4Xu~9Fki({XjS6b_16$Z+~nKNey1YnBh=|Q^X`0gu!=N3L}B_U+qrMBArU1o+F&R`?Oiw`(y!*^HA8Emhc zO9wi2134MFqlX>Acu&b~!)CCuCpB2cW;fZkSy9cR^RoCcE;*Na z;I~Y$zfJ^fPKlpSZzp(kuvi7A9kuP7c`o0m*!v2~IAVgUTgX#ZLBwbO3ADH*+(8fBSS4rkUsQS_nJxsiYn&k5Yq1qQNir{3f*zWon0We=WMXrEbXj}a zvmYFJOCJ&;1s}8c9|Vc(Q}AENOH|L(cA_N+0-KA~qAB@K70ujSuOxar1dJ)}W*U9| zt--gEnUiFotfatO(T(@t{FPp2nS`&Y51eDg}fBC%ozO*;H3?BuK(t^N_Q*yYKUeGA2!RNzV zwv#%wynz_I)ZSZa>2Mvt0rnRq7&IL`qU>01 zX0x%_h5%Kho0Bt>n$=Vh5Z++LWr7++j(jnf2=#7kPGNyJQ{5oU8P0O^nj99V7Lay+ zNeQ4oVE-wx=+G4_S!J53Si_urubaXC)bHF+ExJUxjbg#UzU>XyrjvAnpZ5k_!`I&L ziwr5{FSRwNBdlf*!NqOgxE%xB1D&z(s)9>c&AzqKCU&W-czP7GnTP6aUWK(rsmkm) zZDYZq9TbO+!gmlFwbPfVUZ`lXW-`@Q#Ztd&iQOgP&J<*~Beq~b6Va)F{F$yCR_X2% zaN-Ydo1Zi6PkmZ%OH5Z*)gS*+nG-Uf;=QxyVSx@b)8n>ur+GrRU+!ka7xL!y{5g|- z%aQ185JMRwkO{R+YviO@vs#6Rf+GmR2j94q)pO*b#hWMMct!-@?m2c6bN5BGZyCtC}hA);8%@2^HoK3lr< zB?a+$f>fdBu3yiQOERnVNc-l??zoL2@xOESIHISY`cOlfsBUDt$$wO)1q%R(KhOy$ z$`wx053WMp_|r9t>xW!z-w?Ydfl%4YY2b4WXn&4dTcfyyJo8$ILkW{?fyMc+l|l z2!=6}SbF@17t|RYg)*z!XkSu_$K@6@#=Uq7W!Df?NO|2p;EqHI9>ET0P%r9qgvke9 z*f-5vgKLW&Tx?Z&msrQnj!)cQADHY4*KVK;>WiLkV~c)mx{QuHZKUuXNuU^9HR9i5 z-6LvMDmF)?^=mf#+@I^KAX|fl)9OOTF*s=ktsGHCA4kqnO?=;UlFc&CECB z3ygJ@HhoTOhSFaMWC+jhkb8Pge2NcsTx?%|^V~XuNmPCG$l{B!r2w8+a3_vkRNr!)WZP%UV&0iZs3b4qITVlt-5q3SP zWupR>@3xL-jqUj3!F>)}Uw=+9f;mC#(?!(msT)lr5a<5b%6h|BO)9aQ z@Ps0Xw4)!0TCDV*JJvn;ICUJ1u6f;FC(BF-_x;2fJSILj!!4M+} zr;`cUV~jE#YBLv+J9ND)l2+tXE0$d4>8hHsw(^0c!d^Yj5}!Ee=)1+RdS1}KdOv6*XR8Flkk4RuR+ znkZV(X?t5EDQxngMXoW5^*sr0S^^csvX9lu-yXa%Iuc!4&O5K{dIIoph=1pIF(YR6 z_-{d$Z~rhq-b@%w1QRXqppIc<9ZEOxJJ?WacTN$C(k^Ka@e*V1eLr|OHr^7Q{Bv7Y zV@YuU45L?+lxrCKb~L8Aa{7h0;w+XThji3UvI0w`i}jA@)80g&hRlt!FX!r9z8c_a zhK;^VA%f@LL_D9?tDLz$g$1VskSJT}bTqtq?sD$>6k_%S85eS{n%nSNK|52B>UAK3 zI&gu=&N!g+3pXC*29p&|cI{4uQZ9z~8iKJ5)zW^zF!k~pj?Un=W}}0EL|v1?mX3?5 z0TxRutNl$#Zc!0k1{-iTDk&+^>7II0$3kUZ`Q+NQ6s;<}+>}S31)jc9kXvAMP2^tw zwl!>f2l;1h=cqV2bUJRon;eMp5Dv*?J{*RcMLRX28C833AU2bn3gpX%h{hTQHG2XZ zMVu5Ntgv~P_8Mo)%I=NW$zgYeTL5$WxBzbLMMPl?$hbMM9d>NM=%hWuhYY$}(mwsyN7{pAZ@Q!!Mw4!f#o z>D>s-6RTw-y@px6ofaO_0Yfc92`9te(n~;XkX1=dK$?F9z1k5&89EMY%yM-8zC5={ zivc-&fhnZ!Wv>@SPWNJ2J~j*Uc&+x;r8j@Uo2qHks_D-|k}obPHa|Tm?=EwtGgJ!h zAFcvT4XUfsSBdyvR*q*Di?c`#LjT_bk)E=WR}HrQX4y=g z!oJD9)CG0uKUf3SYR@ZPS@rK>MK7-?@)i8?j=(Fy!wkiu_`0)vEy+tLyPpW zu<+Pf%wD_X9&qGmDtW!2@JF~}@HU4KiAm@CiEcr#|1P$Z;#w} z=#}(eS!8p|w%UK}7?LET+Y-_YK!{O&oxg93-|j&UXVMM-|vCQ>?(gjdZuR zDKB3BL`9h^q~9yR0J$}Ga|~LGHLO|(Cel0%?ucW8X*=2qtgWODrEe|v*B|Vx&u)|j zn0D{>mjcnOaLFYkGSWn4wZye87j~05M3d7lRe%C+H(8{tsP@g{o~{w<1^2{VhK%eq zOH&Fq)C>NL!U#w4&nYR9Acj7>v@}arR@NhRbsbpvfQdac?$R>+mq$tJOrtb~>t|(J8ry}QOeR7%Od}!`i;WuuunVD@&g(QFh2^|U zO?3*g3K$jq+=~%uXCw@*=yiH~y@b3lhhf>N+1;)NsxaAPJAagGIvVLchkcHnsl(t| zVK4vb;}P9w7z>SyOY%x3F}52U$;9O0@`|seaBN+QNd7opicT;4GbFuf&PaZ^ z^x~Bh7euezImD+UK`u&L~XO}Yg)#KuW$NQrARg#VdEv?FZ2x!~V- z6=ac5?&t1*5j=L1kK(1Qv-(fiZ05N`3zHJYrF*Gw@p|#s!vc~ zs<5jnG>|CX&Dr#t`dtcsR-j3KUEer6?EZ&iFAX;S-@w?(^A;LpkoghM#v_ewpo@=S zw9()sa0L63c~GRxeRly9C)#RduDP^KRu+;rPX zH~FW;6(U8H*k^wT`ROFm0=$X;1m^Pw3TaDxMP>UzbDP>63VB%)m&gCPn%Pb9YebkJ zqp7sJ{EQpPqjwdqLj}>9Lm&Rx5SIJs&Hn+uS#oaA4Ss@4e~P8c@E{p#$_W|0`O+CS zmNvPeK-Y$Iv}z>YV50udKEAH5Cnm(?AjPWCw;N0~)+qGo?ap-<(?95wPMlUK^|`kqNFbipvhy6y;aF`&Z67IDFHV@#r<*%Xp=-NIYT<=83>1|o%At&e^tfjdg1Y}(z8e@c@LIoii%d>HB)r&qNqfgyt}D17YRD_lNM zqxUvbLR?d!z7&K2WX#Ra-x&D0ZG0tA7&6svfm(RjBH`B)(hwS}R{w*VX6B3_O=gdJ zl0^7F7^;k|q^}ek{SR{ir2{xViRBK&N-{MkYL#^T^sTMQYQIE!hD0hvQ#&)rvsClt zu|5ItZB!36@}1K0X(Uz;Wl_#-?5x6XmPm(CfyK;CAu@of2Dx4&kb@(RwB=}&vCAs0 z|9Klw$AqS?1(b2oH%}oOLi=%JuB}6vWH9HyXhoEJ3CM*m$6_6~;ZizvyR5_y>uDcu z;3PW-$Fuk4Br&_ut5!HEN0zP(1Rp!P1-{(UQ?T@PILGV9yPH?H?=n2h(NHp7dEs;% zjLfILo8jab7NR5>6T{QZYsgFIbFtR}xu!xe-5&M#A{A}=L);T`5t~+HZ9bvNvy9Fw~KzJcE*!^P-)^q;C2}8`#RlRL-%0ip7 zc!_qfw1n)E;Ti-Q?eo*K;Ktjg4E8tbsreH49ynTnjy@NY!3lqVnyfvb&s;O4lxgdY zG%@|DCjgQ_#KgqRPyBrKl9Ls`nVH=CWJd|a_kftpHwCa@8Ysls%fpT#-qzY3539rc z@Yf3O*Df+zHWvT(Y?>l?{ohdVu0f@aMhK5f|#C#CXdQ-j`d&BFPzdYZPQyRh^ZgjPvJme=_BeR zq2KFQOD>-KI~j*P@*2}ooT34ro9o$Rlny0>MDjhya@djx&FPLvnItyU8ZFnS9V2a* zy%e^Q{5bC7ziNfOUi%8&PdI68PDx6Q!au+9!;Nouv* z+M!A0n6>8wiUJL(226@xa+lJ3)MwXz&porQkB5^g3Z(kI1-3{4w{Y7*7EC@)I3|xo|_>#KBBDjbI&<_FXLD2oVMTn6e;;iCYpEd^)ursC!IGk z(LEIu<>!fBeua&S>)z8hU356s{z`m|XMH_P2*c z(VwaCoW`+8Q#RO~`37R5qn}j#q)w&*E@Hve>F(=={1fM7e15O&;WEEdkv1Hh1h4(C zFOqVXhfi($SGymmoqc(~`Ca37(U*7IVGh=!K7x+P1nlJnVoJ57My3PP*KO8{T!O9V z{vEI6gz_-;s6;PQbH;2pcn5q^$$Wi0Ri}H0?ScGR3h|{;om(D1^*Ls1K;o66IIP^j zz;|}FQT!~`$;#@kauh4M^VqGk1s2jJF7CK)N|YXZV%hD^OqD2QaM^=ANR%6^-MHU% z@4=fM28bx$M6Tyd5a7sppd~M57gq!tg-!%NE)}+BzIY~`L^qPUV&1<*=wCr-i<#b zmn60*yq#tl2s_9(2{KsrP|yF2;=j{lcgcwPZjLoD4`=3cIP{m7Xs$=K)0$tQa~7Ll%FM0d4F-Ol4IPx z4U!=4vQn`A3GY!e!Cc(3`J)#WNOU3}y@FSQmrJl)YSVuvk32safK#$FHrYZl@Wdcu z?2ixdVw?w0Dl$d=%|9&{LvFPs2|vaxgo>Iry3x=Z*)t`?nUS(TuBx$>pk!T5+3R~L ze%Fm)AkD|msuiD%0eWrAhXvZs+oa6|$;;!0u-~oZ7M%ThkInP&{)~<0k+9;gNLkJg zrm|NdxhSolcWO7Sw*}gdpH)ESk+Y4Y*nbcB3)&*Vp|osuUY1%#Nt zZ=SC}{aQo@%5OEj-$U@8ej{BI$48a|p>b1l5jLay2KNg_KPW-w8;=VhQfI}lJ-Jqq z&9ReZzRWBdeEQS2=f1$(TiVbLlGF=muR9uclp^m7PuQdL*tFoi|xM{~7 zkNmT^DX;tqw1fQKUX7Wcod67U4=p}4%FI4H9@uOxyKz}=*d{z4EkT?>X+A*iF^0X^ zd+>;bAT2D_PuJPs15O!|drt4zTM@w`Nr%EuSoYgU0Zc^WjgQ^2FBJf8&GQ7X%c2#? zULz}+F$D?Al8AadiQI#floSsFLSE#TEyNkxH4~90CR1)ndQr6Z0^u>Ns-9U=LY1l} z_7My*z)u2+2@l`-^6~Pvt#jp=_KhLf`%WDrBS0+bS0DitgS3|r?-h{Sv;=aXuzK+6 zz{GFO2UqIPk&42D5}Gu>yMnvNFKKuyXppwQ86o8__WF&?m3eEB9Tv|YU50Y>A`6l} zqD>cLxmeIIif`n84=I8=P(aupbKX>Hb- z#eb&O>Wt|^_32~Q>0x_o{DGh&_?>m;XOtHn zk6ai3&X8drQTE=F$^q5&M0|@;V}YD7GsE{qUMoK|mQS?NCT#w#!tn!#Ync##B9NLC za84k*LLAql%-2%x5+s2iKQoZ6i7>#wCf}hHQ8t5Hu|YIhC@>~-j9Zn{DbDdlNA^GU znwa^}&(J1@gNzXx+kpxXvlpcy^twL=wEOsxFstAg_C@hqrao3|Kb)ok!;#V9{jSif zehW{PHr#=-5BE2Ioh(~^2x;67i3|g$=59}?HiOp6p&4~0hYiS1TDm9&ctq>^pFlCK zZ&8d1d}VSDbH5g2Pz^o(Bvh77lwoWU(5Cl8KHs@1e+6k7bIMw0V4)J7QvAuoR}>sG zgxF*ed|n1_S+~2ZCyoo4g!)B=gSh zyD&`&{poNM%yckA3FII^A=w(dj#@xY_cUB6T}lmRZ+y!+kMtKiGfw=+J6D{F`{fM` zzHPXel&nQ0OS+r2SBW#EmoLt&=ems zKaj4Fu(wUtY{1?1)p0Z$!bMD5fgV(G7eHK+X?jQ#pCUTo2I#;*81OfXiJs>fot@lZM03j%5C z?*|eqF*^(2R6UvvRw{K7p#$vIb*xI(yGhGc48|^mt-3!nnQ3YZ&ICo}YQ|c_uc`bt z4Zjj<&1WiRF@pgNGuFZ!ltcSBZTv*tjgy|kNnblLkk-L-)K+6z#xNpw;CYrbsUY*xF$;GoJZZSk~&HzUyKVfzc!eeaMZzUCz1=rEW&OA77;s} zRCe|LF@1-IY{GSK7E`k!08|}wM5Y1V`tDu_o43!gY-kceS4`*|D9F+l48&7GUnme} zP{{Y1=o_EYx}q4GrTG>5Q=~_?4R5Q-n!mWNAr1it0BG)3%GvkmQ+D+RVx5W`_KZzV#{Rh0Bw6LobjG%(F}Nyh04T=S})qxAYxfq#U3dj^M#2m%2AM{DAxrzAC42 z`7NJDD1+f6&+#eiy;l^FhQrH+LULJJU-l4LFO1D58E*2~%k$k$;v(VKL!inKeR;!v zQLp;m^{prYHxJNtdB{5cil`gwO(y0a4i-*4`l7#wH;RIrqfWGk9j?)U`~+jIH;10R z4w<#AC>Qa7(@Trjye@QMg=ovH9r+P<5eUrog>IHvbUy_D?g z6;BhBQ;%6ekHWOR^^cxW|4u0;e4Q_n+*jDvLvmS@j0L}3+0H^idSQ%n%Cy? zA@c6H;fQ$7#d^dDw$FRFPZD)X<_B^~e{i4mB)UY^hfW_tWgXuExzbvU0aB(~0){_1 z3~qg%2!arOaO75YlEi}FCu$ZQkt}P7RcW(6PyVLthu7%nIQaSdU%49_r)&h3Sj0S; zC@8xyZc0fH8ty-JBV4L_{oB6N3PW^upYdU1^1>KaeyX6%PxS{JX`GbcU@MZqA1avK z?A){<$sn_hF+OmVI`SPfMEa7YFuUqoTABtLh$P<}V6Q5i+x#H|No}q=E}K2SKRFUR zZ$6BmlZHZeMUzdRA{%AqEQa|e9KF`9bDTXWk1JBYCWCX&z6?c)WdmN1=6p5SqWGFU zdG_VIiiph-()La+>nvzs$6{GxN|VL#*h28z&E3gz*VCWH53t!0Vsg%3eFPs^ z3t#y=zbED}Oe;3uNWsz>xaXYoZee?!nr+3rfi7 zZ7nSl)>TqsNek3E-7M;$S@dQG4zO;7c|&qV-hX(qD+ZUH5HEX6!TYxveQD%xEw5%lV`b$Dcn>y}IdeGP$d(>p7DLK{8^u*{tL` zTfXs~gGn|^0p4zy8BjNP?%u_h7!<0=W+Mi}Yg&jQFR$v=;o9J*?=_H(QQuHe@c?|^ zqk8fB&iBnY^iQT!zG^u zicT#h_6%l-DURi;)36@)r`(5=r}Zz`LSo)BOc94+LaQ8;{RUy)l|J15YE_MKf%u0F z>y92wUTm|3!u;*g72BAP>f-EUk=_cp?HvOHQMjcZYDVgdZ_GHToDiZBt_mD=pPL|g zKc5`lWQf=bQtY?ItD(A>TC9BhGl2gg_hJ0EinbKgTE;UHCD~EBIbU6W1RuWr<-Pfu z`yBM|qNE`SPdN^YC!XDXaDQ;M?$+D%AlltTi*ztl`jzGj=V&>lD?K;S6-0L4>ebr| zJ=L_FT-m?SKHH30G%q27-@27Q-UyDl*3bRv&Ye39!dBNBu^6;Ja3G@OQIBez^mX*= zeCsM4QOP{6pQ7Q(+K=)zKJz`XM-G=86UN+Oz+S8{`OifVLmIUON{8d0OzK^&j=6IW zXotm#V{JoBTrv1BV5e*sXo`^Qps&A#q`^X5_OaU5=K%w%bM)qPho9KaRbRkjnp4V{ zSAK9=VeNO9cqYV&Zh1=jZi#niDt;$(Xg1jIcIWPTR%i7Jp-AJUYE z(pemFFBrW;^pU3>6iA21DNeuomF$ikSAL}L_@f>wo}-QyV^dtOI{eD*myg1?u)2AZ_z@l2vm z8f^dO&Cy9CL^ggEjl4d~B5BlShnSx?7iG@ZlHDFfIBde|wyt|_Supu#%R-*8hPaCt z`Qx4PDXdebi1U0%UE}n|HdZ~AI-1T{?N@FP12X2uKG4GjY^Q|k(K~e|2EsQTF}{nn zC60^A%#vuHnKxK#0_(k=hx>BbmhwTIV=hQj~)D9l`BPG5L zf(Y4pW-3`{jwiF?JY(0%V)Zi~7b=9f<3CZhgXNUlbwB?4)+$+Mvoa|L?O0Ek8U7@T zarzrkQ)&ZUpd_1pigl;=E(;G4!9Y^NXLpJZ&VlS@ieC&u$xs9_5r6#D*Z%~){`Z2_ z+qb$8#Ek<1dXx2668)QZL>TC&xyTKANKB{fq8Mc(blD&BjaJL4U+yy|vxnxX6^md! zt)}2JjEnMA3aAmPP*2@nhjmH%efhP01H@4I z!sK^7Ju)Ap%M8wg`(E`Ka7;Uwa+#y$7#YaYxGU`%=$n)$oJAb0p=9zY${gPl?Uye5qmTM}Cib3aRS@FjE6L3RA(mx#<2rzj+divr#5$<=! z1#IIEOTWRkvP#?Om?So4EC$k)6w5p9{DiC0_NSf$re1KP+@R3o!K!%CIRbN#D$Sfc zd%Qd12Z7j#G`&%n7|it8He@HC;~<|> zXfN2;SYC}QkVJA}m8idG_5nvpIVRGur!^}-hz{Xk*B`ceTR#r`*ARA#JEE5+>H%Vu zTtgfKf@w*gdml*tL7R?v3~| zZX0kh>aS+9<&uQ&V7Mc9LX&3ZB$&k0OXL(<+b>D`P+hLEQ1)kl1;N#MeQYRY;PkK? z!jgrZzc*Zq2%}M4bo}#UJcjR9cfu!LSVQd%u@~ev+BSD2?(%U%4eer*Pni6BY~~pQ z@I7Q4=ll*;zE%y(g^%GmJ$tx|0=lt0GrMXu-IGa47Cn?o1(7 zeV-WU91@8W6_`U91Wf!x4;J!LqMVWRDH~_ihg)U+UHpxw9JnY$5;q}fU3ML)XQ>;d z+60Fdoc^1^d6R&Pdj3J~w-_G<30|zP``HpW6YN$k$mx5}cC9*{_yHH;i0|LO`=dX6 z_~7vb4dP~f{`M_jg3IGo|D9MIzRa`+%$p!$Er|T_P{p5^X+j*7DLbI{OhrRB@sPEw zGoPfKl0=4+aL@-Uof}Ed-Wuza*7M%ej|^C?iHGR%r(wodW1eWd;p!gT=^xZ&rtAqB z#kV28Z85MFw97}2XSk#NRBH0EL~M}LT%)fB^zrDOoCeDqQNw< zhw*m|x}lymr(JzjW_P3|iQS+VRC!9mYQK^DCvanCbB~a<1}QKZLVKIVy2BjN9+JO~ z+q$|$zo==|m>|TSe^DPdAT?!C7kvQF+l&(blOt_us!m1OD~Trfch6WcJPHWdTRL8Eip?AE?!w(BfIkl(YBWv${Okj*|g_o!>nM z!d|F0H)aDCCPMHf2A2Fe?$-SnMG3a@sr$Z-e{6Ypc@_2b8Cl7{^2Nr+I!4tFN5{ow zQ(R1@AwXy=t6M?DX1#A*y|J?m#FUiu*}dSm1Jlsk{n5&nrq%8w4Q<$5+Z)F0K-()o z1Pr^+OAQJ^;N-WL>=a?lhqNgrc*Sl4%2SybD4WO2P7uw|k<(nm$P# z!0;j>IxERR(f`~@nwDKMY9$zEG=hP!tNw$zbKT6rfH%$tbX-H401^ zL(03D0>hP_%bLEphzK2U2;`BI1Hq;LBvVF!O$JZFDIwi)yUoA1rVxCyyJ>Ypx#Xy# zWDT043MYK`_89@e&1l)-`-)FniGd-HTQfstmV~|TgI|eo!}?VbDwZ7W$2@o@YXj+G zZd(bgmF0|&qnAMXH!@~1&0Ib}r9tVuf`Zm*d*sZ^0a_k@{*ybj*=%WQ1c{>dglS7= zRA2q0_n!B6WHF@rQv5PQ4?uwT9~PVPS3mvPg3 zYVgO~eto`rj4lu(D?hSIPmb9Aj2|5*4Y{#US$+%reL)&dA$s;ZrT^)Je>U2%d3lQe;qJp;t?>U*@u18}mKil@*oT$SKd$1(ZoWSAh??~~ zq5e;66fFc^H{1s62+$hK|97nhnt zLT^dI^doCSnAxQsdln&+_Fp29;@59k>dN+Sgsy< zd5Ch_Qr%o?PwL?Md_EKVp^m@vx;s32u5Nyk2!WC>?KyrwP+X0UW;Xo#qp^Hh>ZnfA z*_}Uzw4bY6m9$K{=wPVDre^nLsg(PPe9?I7I(>?292<6Adm}t{Z_Glf{#8KIEBK5# zX3S};U^&#CckPoj>>g2&bHC@E?~vTdWR#Y1nIzlID_wpm=TD*jC86ZIZt_8^+});> zOansxIT8yl5|R~gO5dE}^@sE7pkd&PT2fh>{gWl-sM?m*4aRtG*bq`9pnfYO;%srR| zCeN#f&A&5pH&8#GTqd>Ax3)C-`|g-y!P2R{**LY253Yn>&D=(-rj)4 zSoY~FyIxb!-JN@FR3gOWTxtB#?`BOHQgi@E_&vvbW0Z`EN#BiHZMc9c5gAXn8F(+Q zy!5H3^bYo*Y^-;uX&o+yucBL!_loe3H4>4sP3NG zX%GYiFB@)G1Oe4NCus57LlhhDq?EmVg{vKR-$9>Ov<3Unbhl)7pV4v$VM5ZTqj zdvNNJI&P5nvH#*o@Xhah1f7T;Bh(@=%sfi2;XLQ{rPQB79Mt%;s8GlCM`ECZlT=uq zWW(61^~H2DgH-x6*dSp@P{7hUEGS^3)gMdL_5S$ORup{|tM*dE<>Wz#+Q?9h{T zs*R~AB+``EH`WX`!WbKzAtNL50Q5<-?-i5#j`)AoNs1cu1$rT2VPPrj>e?P{m1E{& z8qSS7B9XEo=FfZ{c&oT*6jjxX2KPNc{(y>8^+ky2y8ix{$QBkJE}mvTH1MX(&Ecs@ z3^3%l7%&8Ea9mt?L59Es0xD{=MYlE@n0@ZO^g#lhy9B3U`L9`Ghrd|}rYYU}gu~Rj z6vC=Mw~NUBya2I+}6#m5Q4d^F3e!Kh6#-XxR~;LDaj-thSuHOMxWW z55+w}T(d7Z6=y~EY%V2O$6`f}aySxgikSC^2Tqj}p%Ceh z>*!B*FLCx_bMN7%k1pvrCbmINae2M{?2~61Tefq-(6AvN>;VVgR z027Pn9NEJ1JxS-s!eZgNe=1~?11vyEhmw^;Q%&)DCHIwdb8Fwf{H%q@Az=m^#+zg2 zrQ_!o?naV4M#>(_8Oqz@LBmIbuvEYG%yK6G;g_}jdHTfGOqXdTXC|drir%Wc__#7x zdz({!=y#_EPX|2T{-Qbd)N6e%ePsO`>+ie5%8ts3Lc75%Pf8MlE1!}pu1~@we+vH1 z4m8OCSGk`ewNs&HhU`mfCWQ@XjXlV5z#nqGRm8jDq4UWjRCvNLf2FTb699K3M{hOX zWcp(+aI>uWr0dUzpHcI{udzEzGJpLdoCyM2n*|PUV-@;-+@ueZ>#4%lIy(xSQ#@d1 zVv_g~Y&du8nF?PYiVc-(e+vXlLdx`-|8~l;(!OScP+5$p|D>~UyjcFq}WQI({H zK3xU?gLb~{19QIJD^MHT7zf(g0FfJT$E8|oug-8MHqm(FItqB=#6-EB3BtWE9iny2C2>;Z!%&?m!qS1l52iAfN?ci|5!4BE3HTT#N|qpST`)0!KjqCRffN zNXfH#5sA=-;FP<2`w?g6hNaeJd9(Q@zIN#{hy^O@)?I$HFeWza`92DX3!xwD;1Iz{ z#eCJ?-c2_i&3q8hLt@vJd8d+fuBn3ih6iy>6H3nc{2i84jrvLL`+oeaQ4!c? zF_s;Rs!xtRZitSm`Mg)%PXdO>^+1+&?9;r$b2`yU_Mt?l5ot5Bz?fK>=B;rTd z61v60krByhg92wA!Tc<@@2)5>FOdg9JA!4 znd0Dxv8fy%m6W?DVrX*M*6lQ@+kT{7Tr^t&6blxOA&;!_(QCff?*~AS_tjW42Rf5< zuaQyEaKt`*z!av!HTSef*@(-t=qnL4>;S3OR$YCY&U+aZx}FkX(87yC3qK{jg6>T7 zVb&8nV+LV0ApN-TMxENRd;|k8%O*Rr8;0Q8QIb(ly$Jt%mkWCF>%*EKv3bVdKYZQ^ zbl0tG8yG@~AG#V1T0T>z416@jBER`S8nXS_?=vPB8ds<_Delj0SRTU967>wZj*A3mY_eL7&Nu^V3jUawO2HE5Te{fi7 zD(_|1MVs9K!UKoRqnQdS8Y{l-v;3VThf*Ue6XGOr0axF7flW>B(HdFf-*HdjSmLLUR`}H8CdWK22&o|l=sVlV>hnH>-E7IW31XXBA~G~ zP`l=-DIUP_E&A*USAImRO|H`O1M0g3H7R9raeH&M%ul2G<;1{N{OL|9sbvUyo#0=b z$8+aa7D+m9UMwdaUP_}uh0}YPutkz56rl#$ft#a!B*BSsS%unQn6GqU-hw+OJ-a1V+9!7 zA3#g#J9{;ZsNJKhd69JV^qn4_J{4#pzx?O1w>e zUjmE&7ZyOzAcCjQ%W(V?ogbp!-nGg=F-&63m7UGYgQ5+2<53OgrHQ{UQ2Afux?=|3 zu`{a3=V86)2M5Hit+ik4zpWez(?P%Uk{SPlb!_RG z2}3pO1Wxj%MsXwd55y(O!Yf{2|<;zj`Wvu{_ zoHnx-)WAgl0jU|rw{OK)@XW>~xoV?74pRB_Pn)?FCMpPmG#Mh&b2=V`jhOt)0+^{C~PKZ z++|u{Rhl(pa08!22(DZ8c05s5r}$SgF6dzdUH&E+*BH;VC5U8M6x@d1cy!UxafiSCPGp4Yo-MSB#YCj_Il>8Ii(c!qdo5w(>=d zq@!3Q1_Wid=bHZtOQ0d@Vg2{`_*|*XR9y9elR=OrDIPG{Kr1ucfe=fkI%OJjF;K;b z|98y!gZXlxg^xkIuZ%ns-Y7aJJ%oyB!^FOiscz?cW;G3x^G(14fy66TUa_{276>6a z47H8FJQTs{|Jm;J*%VXCR80h@>WEe?`P~Udf?i3jWV@F#a>eZKL*WqeS?ZBPY1a_k zB0h;4n655P#?Ao_N1PaAl9^=^VzE(q_c1qFf3;?(+ux`wt+f%eN4M7J{{)gtY?PCC zO>gj3`dqtXBuuIZ(qC=g3N01_0G3dcc=Why?Bh5Gf(rrd;$#S5cBJfo-|@;2eHb60 zNDcP3?H)+%|1c~u2-Bf)$3#1Ad}5@l@a}+Ethif#JC_*cgJr;6e6SckXoW4-mPD0s z-uL)jNzpUII@Ww%+bpPr4Z-SYrnV*88Sc@0KG!TqUg3W+cJkgZb=0~QbR-l?KFUCq zISn+uBbxweo5-|^=N)lj6jPC?!&LFgG_CU$`Ks``;*pf!xqK0$mucX*H)4$F-D}0C z2mFe-VyTXoyMu#+3O*kPfOXDEzm}YwEF%~cafHG=mLYPe@q<%-T;{uU!x#aOJxYEK zqvg*6(hN2p(E&|E)nO;#bI;>1vwwekw0W-`i(Wn-Y2ie!2#zcFgL`l6S_91(EzAhB zY8TP%vH-hUW^NFA8K59oYHWM)C_$8jm7-%MF)K%?juvM7&CE5Zn($3h-4zQV&85GE zq@fMbjgLB;TEgK7^dt7Ks=A<*SFv;AC>u+~R*NfbjPtN&pc|sXt3J%Jq?Cu+`gxtI&fb-4 z(tCs1;Oqz;0NOvW*RcJQwUJzp%;Fj!oMO;66-}!1P?veH(NiG2=eA}X@?o=I`)!&a z%5G21G!26E-%gnd`C*34XM}YGoiQadt*8LmA%ukQ=55o~ zG_s=QZr+&3-UQOD#XxjpxUAsLT_=<`m zm9`Q&KAvw={ApnB)XC!|L3F6$`GDzI(W-B(KOcUA2!3X@b^Z9+gqG_(#uF7^Ugns$ z&)1z+e|h53&uh~^67wEpbYL2}n4Pr^H@|LQb6U*WAHhl}gvllNTF^25j&QE3ZDQj+ z6wO7GyY5^C_ATb4&>{OTT;zf6=oymSgMyrdr?SgpiT1@a(! z$eo!ep;v8GRCu>j%`3}^YU-Fd>s*q@qpV5(M9w#Tmb?1N`K*X!lCAca1b$zeSAD@a z%ar|tgx%hFiO>;%eao3@Y*Yc}pR`iBE0TyTw5%rvIQ)|wX9Iq~anoD8kY)sLw+J6a zT;{o9p$+FaU^GU`V#{hhNg|P#UZJJ?=H}*k=kW;% zJN2c=Z9Vh`8K1q`QlD%@piAk(?i;T2Q?Cyn!Yh%(B1jtOcY9o}qf&91j6wcD_u+O~ zwX1zhig$$~yTkTW?+T9-N0-k1>Hs+83%7rWka!B0s*}~`?)|UXN=m;0tyJ9KO6_x` z5$n~duBsXY5kbnI4hL??`B(6B6`-^0$%7H1IcWoH!0@K*lITm;g;pC!L`X&rCIoZovux*Xc&Q-*nzLw{oRvti^_**;49nI3U#y>SAb!}cLMna(uj-|%tTj?62FXiNeB!$JLDNx+7_xV(%v69YUa-Qxzc zJ()J)dDx5QQNPDexK2g_}8gWKXOm_poI>qhjBc4X4@Rts3$>!F{v ziqC26ME#=Od@OC8y6pVVZV4FfD2<3-#E@Xes)S&^QEceu#N@XLp@o4!@F~Qv(St*Y z+4@X*BX0>U72LGeONu7K&O0HmUBR$^Nj)^0ykwMspG=o^(CaF^QIgpL4&Nh&&q-=K zDE#0lh8LmB$1)$RIJx@Gvw-PhOT;F+PQjm8%M2V6F1^|+#>&)}tjs_%w3e_M`}QQ! z_E!--B&Fywl9ltC$kQaD_$o3x&wl#|3;|psk`uX<8SKOr%u8sq``Kf?4%E%yY@3jY ziJzWVuKJ@uuRJg6@fJYo&kTuLEPFS3xeX1{rdN#FCcu2lektB|v{cfd`@GAN{p^0%8$ z&g40)#CNmT^DKli*b)`5*pH-KxrHZp0Q&Ve`j3S|cFARoDJGaWuQ)?v{>uP(epkK{ zqsa_2KHybgMb`ngDbL%NOb!Fy@EycsY|sg&$l3&ajkL>1uy+xj@e2gzO*8OAdp6bk zNnj#L`o_y^GW10j)(?(IIT1PO||z zp?vh*Quu9xDPUILC;TO>q6V!dS#Ncbv_Su;oJ>YRfqhLf51*0z6ER$6VU+$kwPM>r zeq?5B53L>v(mM+*XWrOtpFTX9(t$S=tJ}PNZ-5X%*jV5G=lrNI-yI!~{=7nIs(%#m z{a$QXkVi{G4N|tXKBLcrraX_U^F4dsw>TReKqj=){98W*PC-u)(oiw5T-LY}t&!e+ z5(~OyV$N@4sitI6G!|_;ps3LEdOX8}ALWjQgCLkI4t!KS^O^TtU++7Cg#@*R1A7kn zqH_~KAU9za>z$RLF<%C(pR>PZl_8cQaocA;K&t5s+SozKTtMdrPsvIlHMhdG@I0$W zB952-y=!{@^RzAr_wk5hh*nN6@_9~&$kJ%Y@q35q@laql$(&q?8&9y}*r+Qr7Z{Ie zq*L+SKt%9GBAs=+Up6Lwbl{%)k*P(OYLyrssuRu2F}1g0XPafS>f0FnKzDM-dRpuR zoG>tuxbpfnTY$M)SkMpdZjm}eGV^X}__tqD7RDpqtgDE_zhajG+-I7}$2M;`;Y-S7 zAOm6)(Ez`l088OBJKu*xV?)Eef6q&}z+FZV#|BJ%7J}^3vngy7u62n^@igk)^~&do zt-^}TNDIf(666V1yD6ikJKq^h#jmCnFph2x2+jj57;4snEK8vsFr&L<-1~(ZUhHp) zsbQo9=w7^UN^V^=cx1OyXBq`CG0&t!68Ia4NQ88EZ>btQ0uFRTs z-BR2Amh$FUdIq~5+97ytmaM>ngeiR~t8d-8UQV}zVt^UA^`)`mFvdKr~EL#>cQ*JE0t>Rin=9Gc<%HL zU~~iU3+K;rYv|co3(PLz+TWwqLc^uZFRmYOn=_Mv;qK>hai^qzNN1uy((r|u7emUfY6wW zD&W15NJyzU3G}H^vuJ7~+)p%SgJiT$H%a|zCG_!$0uiNku#%m5U2*`5~-OvgWW*+Eadl%X}_r-Y0s;^(g`=5zjZR{bp2!RBT z{9QwVZY59$65z`ibW$LY^+2s+B?f|jT#0zD)r$in?Gqbe{UASMSwu*uOL4T-j&lk~ zCttloW1du8qHD1^c5f}*>_J05@SW4SOEzX_21RHIr-G92Xt8}5vr-Z_?wxP-q#@s% zyUP$`_H0>PTx*G>QFM5QOgZMAXO`n-XZ4w*7-oc})LEsK4Q?19l#@JGpbco;G$4|4 zI)eX70A((C%Jr1O762B+sOC$Jh4GIN(3yKl%0kSOz z;Ww?nNngaV5xX|74#qG`-`VZ{onuIhyGtTqy3MIcvCe0uMF7z?@0gWNxY!1 z1OKyxqJ)qsAWHuCb(-`6M|3efJEMOeKa=>i9geZqIrd5X?;ChxOU(=O)z&+za+2*7 zBs+rG7vRdDy|%RGfLz`%ZI*W_Kz3m#Tu~z>Os)&^$faI!iz;`^^V(t-qx}P7ATh5Z z*X>wlr~<2hW`Aqa|i-nYBzpVY#YgNlyRJHRKZ}{`MY6~S$$JO-b=cU)H{M;Y_68Yw2??QCS z*d6*n-shqyFVAzMp{hzUZg$|D0rwRwE-RBc@eii_dyk?mf63OQ@j-Yn_PMbv)jLD% zI@Z)Evm8>8l(cl`;WaV{Yv*W>V;-3PzY=C}hRlkU;m>XACG8#6p~>L9~0<{)JN-f}4rgaWw%QhJa*?0I7zZ7)n!)igfL5^ufVqm0zQPnw^d*_gY3TQ_f9SD|y5&)5jp zJ*-V)m5<7)D$-tRYzL;x_3?Th1#}N|0A|i-p!NAfDcx)x*ItR7OGgLtcLR{s5t!5m zes`OpPta1Q5{vPSBp$0Dsy<`W>+BXpRJhsMIY=N(Ow0kNkt)4QEi~9h1Tx)xrVVSU zRwolPka4pXg7!uz{kxsS*3}9*N-!+#odgc5_*be|#7D-?+%ikw?A%_d zlCx9thTKe;qrBEd6IiMY%zk9I9K#oe!FGu7!32QsYm4^Q0ngIE!w#@%c~u?kbj%F*LcTeLp%HCwf07SN z9B=RZa?;Fh=(kfN_0ORMW1;PtQj`J^q+S!Cf2S%MtE^l9HZF_7+2m=1Yxs3DvJPGb2&M z2;mGLXnQ7li(kbfvCt+DXuz8qLxS$q{o_KkN+FV;^S9&n3Cw)x7a9^#J9~*mfIm%; z%YZ)3qWm-*Nl#luJHTQ&Pur*~BfR+2MOXR^?JCccE7*~6R3hupw zqQ8@o9yEb-0g4#^<||QEA8zld@o02=kR~Z-m7@R!(vDRo~(lW z6ZJiw0YyZnYJP&rdjMxP8{*R46`I-44eE0STtNT&(cZ!+_ZSIB7LB${I{KyPv(*Jg zLS?;FIpAist6D0&Xq!}r7Hm{Q`jkI6^AQJ0I5#7`lJBms{aoZ_IvO6nyOe0^Rzwnk z1p?e!=zQ-1nrfa05CCJv(~meKqa;>3z~$C0R-+xKIHY;ZL}!rhjj8Ek)itN!dnvd&PkaJvy6^yt+Sh+)QttfeL@U3vfk&eZ0 zC2tC@{upsM@p7D?E6#mSKhnfV7=yky#c6vR(Zn#1g!rZ?Hix&o(A>%;BVg%KWI)e) zB4cyTGM{yXJg1r7eYj|pJ%``pe*Y&YkvM#BayL}Z;XaTH^4BwX)bUdB88Ca?*ap+G z!!SXHh&Bhu`zko&gE#KbirL-vm5sj#w?vVa_NQ-v+?sbEt9}vTI-9Md`l}K=AxG_A zD8=Y;yXqE~lw_HF-Z3~lEGaD=Oz5K++#e{FPjEP29=d8T+ZTop^8f7OQm}fS#iOTq z|NdQGbVdZHNk1~^$o1V5@-PaYR(aD(kI%$rf4#l^+|L3iF4Ew4+HDK;Lltm8qXtp4 zu_+coHr5dV1Z5CBjW)hyB>(CCo{j*Nc*_{DC>6-@Y(rcUF|AY2BzXEvOP_CLk{FXy zuhve9HFZNC4Wv4k+50WU^Tt&F*NkQji7^NSTvgF3_j$osQW$D`oM$rCZx*OgG)FW~ z&rEK^jotLZ+$pT1vPz~!h(2(&uC?O^SU|2NC6fa1e~XV_%Khd$S;j~MARqAi+Dy!% z1vagMY>(+pm@Z>K(Dx6K#Yfd96ZG5Q5ub_yYs%dMFACEFIOua)JcHv}1$rZFB5>0% zbiiTIOz-UIZlt^3Hw3@zXsnCbnd>Te1$~+)}%#uk~_LPmpfEX^Y{0a&fZ{NMb zFZ98Hme=zCEh5j~Y@b`h00HB&U%%ddH>Kgp1xG0#@XIPFL>oyI@Vsuw&~&9isk}1Y z6p2NikPms1>%UBT`g_S?AVXm6HH3{S*`&V)kj{zvXSa5k4=$pq!h-*_@EqVbPO85W zb1Y&{+%M~6Q9x^J6-W*a3x@JIs!ye4Boq5*pG3~DL~^HKtewszV@5lE8Ca))RD zx@wad{Pj(KBgz*R-WNFQv@fm+7zVriuedgaimD*eb>(-cew|MHZ&zuc<@$Y2Zj3S>;*VXGjljB!+OzjI3{9q07n`U;d^R!+~QyOdcqMNrO zyI&q<9h3s;-=^UHJ)fIkLiv`c+n~$V{t~0DG#fR5mW+Dy@0`-9IZ)7n!xy%^&NTXd zZ?>42%I8XjMXL(6-q*AKinF|c(ZR_eK+ny-vUY~WG8V!wc9$dnI5w8x_t3q^%&~1D z$_@Alo+J#QzKyQ@-Kjl8?1n|*_@5r@`E5C_ii?UJFMcI#PPI0xM>t>1Smj`DqfBz! zI(!`P-IxLFAfP)oItZYq$z86bjFbeDJEO`Q8Uz3! zn)tRH#p`^<^l$xJoe5SBALiG&j#*QIlfuvWrXQc3jc?8`P5C)-hUiWbYv`uhdOvT> zW`7!h3qEKU?y?_TlH55H-JAD~G-0`o!QP&<*)Wzh@R7!5%Ka)s+!abK15#q^q&ej8 zn1^U@l9t9`0+0Kk%K&`}9)&%m<)6@->xb@AFb>u9>4)41r$edh*eA!B$_D(6&Q*HPu)bJ-!g?dXnl^q8%j&p0M-;BMJ`k`rM^ zitXs7^SL&QVmS^f-#eo%=&2t9=HCnlz}Xd&`eZ{x@ytNP*lsV9v$wA=yQzt6*zc-_ z$A=rxpAF^X#UTG>`{}=)$3yX-cz4G$aY62{eYimziwnzt4w5m|U4Lg2f+olmzxYgg zbMR-YMi*V~YHu<<3i$qQFoGoAx}gE~fQpuyov_l;GO^hS7Y-SRm=y(ZK#K;ttNX+A zk8Ir+##+`6_hiv;A*m2(H6%FMd1|N%Bs?UPD}4OO%>|MGgiJ{Z%fH=SljEh@Btd6- zK-=)ITZW7fWz7@31+0L_b??B=MEwYEi!nps7GKW6H_%G)sN1BCWDFG*6#=KeK~B1P zn1;EycXAx6?C73%XGT51&n+y$Nlp`R>bevD^9?ijv>MVst%7RkSaljQ45wYP=)gRA zO+Sswad;WKQFJwGYjBPkp}XIw`N01&6&f?q!OeODF6`!X!{>O=rfc#yN8VuZKb1$< zHJaLujkrQF-b}Om8%(n^SPiq=6fgiO$Y0Eo7;VlGVnDM!DHp4K6xA$uH)NMqj-neU=t7uo|E@qthRvhw*4>zt-vxp zM)toVgPvmYxOXjhcCa%$%_)T13JhGaE$XQ~gxgn|xi+fb{3Z8%?TM(zZ)1Nx0ik$n zGk@Ts0Q3!uj_xI(<9{kUIqdgq%dKpOWI579Iy{Ap^>{u0mu*X*-cF_`BilHswGYTr z*lljy8xO!ZX|FS7DA~g!@yCJfA_s(uYnVpL^Xe;!30q8blyjZ-flpI8D|2ZnU{T7MB z2-y6f8F;?UNN&boApJB5dO8SXZ=Kn@H7s$j!~}J?M@1u}z4>2QfFSP}Vb_j6uTMeT zXlmLf=6cU65y%!{lcAf&Vv2v`vT#A&l$=QS!MxY+Lv?+)5fr|qcH#+%&o|HCpCCFm zeW=G~d;X5LT!Ft5Kg@l}_X2%(DP@MY@mKf~(5p?41eDww9J>+|(t$=#rI$rWLmv+pkue-TL>Z+b$xN59{C1 zXW*;cMf-}fX@?ZGQ=Qfu&3OSL{g}5vD>|p<4=P(?@nZa22?aH^jav2a*_VmHN_ziQ z$Z2na2B(|u(={%oP*7!Za>64O04JyccAJy?LUF|sE+Nu7-$`lPw{SHr#0J{P$Gzmk zw9s`CNzLzF?Po{8>0BS)o6Jj@`k4q&? zLKTY+I7k{6eF(9>K%;zX;y=)&Y(qaF2WuIU@86W~A7*u1~ zcWiX-pS?ek7$X&S=P)OddJS;c_IWT}<5Bnw^ph`!2O4UB+9Nf2wQs{_CD6Z|k&~9< zMd$_RZVN22_Rer?IV>hd1}KcD%SLQ&wjKdAIp^Ww*_bK(?7jhH>vl~1g2=|hBScxd zOWou#!#+sm`F^}AF~%Ws`w9i?91PH~aB|{5ZBT*2Sm*osnb|;TXMj44S`A7Eq7Z%8 z#H6G>ek9`hQ_VZksjKlcL4u0Y6q~XD0jfP#1uFl98^3KLjWCln+bC3gEFo94p5CPp z+sBp;pYHDONJeSZ(!y1JzpHBSG2eD-cowkOseZyTs$B|dWJksK6jp<69EtoH++vbL zDN#=qh+B8sL6sV|szmB!cvSl15HkGY0p8;tc2)0<06?G9eo? zmhx7z%h{xGyu*+|2E7j0%UJNyJvm)V3aKWUx)yfa;ZY`ExHK^cT#*>zd~R{xpU6

    ahAW@|JMKe#Xu-c~U%z-?Z&e|RLWH@oP>w$I>#EAr?B5-=N7t0 zAMn{m&Ie`=j!2&j(r=jlaYh|ppQH{R8C7rn8HGOW&fgjXrYKJEcOkSEXqFm)rDOU? zj=yV*qZ#r!zAee9gPW@>T##zfGi8wD&2Ll*wa-#Yvk*cshVK8oo>74|jizlX#)6of zuG0}My@6Q_4}*K&#ewjK;3(z*6t}|a!5j$r+Fjz(^eZB#_Br&qWGdA@I1 z*dRl7Kw_C0{<{^ji=iB`{ecitZTcSgBTVJxzG?CJ<15@^t&mrMbMcw;eq%%w$ozJ3V(0v9tI7oAAF;JgK2EU3{)q+?R3LQ7 zd*zx)*&Fu97wLT9@8V+S@`;zPFl=j>fE09fLKbZAT8f{O-x+CP;m784d7L zf1=1I6TEe=p}y2;PUXt`zyiN*o1dhhcKU@Xjg5`_Cx4}PHrW0$pr4uym#e%zX-U)w z1}lkWrtDvlZhJi6uln?E+RwVj z05CS?dg`~s*}=bgoTqGAbT&+yXvKTO4E^sAVbN7D7fx{-Vbunjn7|0SGtNrT z#v{LKDsBcEd)lN*fdIUfiy+%=p0V9FaMet9Gb%>nv`j^g3$Fo*<4@u$2N)o!nlU8F zgd}ceoP*|Oc9tnpyahIrS*(o-q=(Io+ir}jJw9&#RCc;XQQHX=M4Jry4#b>P%!D+v zx@<9IWcQHHfwD<39ReJ+JjtI+6v3RRmc<6oXZ;$--B+X3yeYdD&nmmEbV{*a9Ty6TaoEarCZJQW7`eZFxXX3eoTT1h9)`38P8@EAS3Hs0Pd1h5j<0owJfj!|ENKl>Haqd=Q037))*LXcI4xm%mnlp$dKd89Y;owZi$YhKnl{k+{{90&`hRcDEs_L(E{um{+?nc7b|Ko9nimPWYM!eBpx~(Tg%sfIJ}o60~1Z z)cJ}bcyrR&faIY=FwoM%ZGwL!(i;tjR`6~$Nr3`YMwj3++lv*$|ssHmFY z8zv(Qz(H4P+b#&=ox*tPS$2X8*70%tWAG#`WL(hR%TCf8{(=NW0w2#s^Pk|zUFT$x znSkI!nP0{6n2Z1<=*uX83)x5`87}pa5_)!i-*tzKHIF?(l7XGsiq$b5QxTCqNbh|rC@~WWd2unnkBfDi@Il< z1E{5BBYfdg#qbwkN-;1iYy()Wpc+}Vd-I#qbzC;F9Z|6@Su|N2-((*_i3?Xf8ehIc|QlNzx}+Gb3)VA#%Sw#V;(ud`9hF0g-WUuWB} z26-XjJUip`&%wHST0z;|RW*HsRpsI0M>l`{5tXwhQwu4$2XR~9?+^y_N{uF56UF7H zVtRsd25VT0_r?@VU$rG=qr$1futReN6>n%k8d@WjkU^&^gc$tcR2Ed0`YYPL^1Khu zJqz?$?dG+NgqVpvh-s#5nQC0_PROJ0#eTeg)Hnnn>g&WEab%;mK;ikF?l`jF^m(%+F0+zqw?i{y{Ani|$)Eqj^ z?8=F~>6#+@fIztTfKs4%nK5l;Z>S-w9JHnfkxr%t1SqgHq>}Z6r!W;=fs+lYfpo-bj_Bzt@>p&kbP|J=DB!1% z;)#M9pl6kBA`}n;GmW6Sg=U2w$yo}9qe&!RJ9OV#tF=$e9ky_<^J16-FWiUeZRYa+W5L|K?h zAsT^LfS7?(kRc38;9m02M?k-g;ZLQLPvG6xUyuj974k1C_h*tRm|3)vncbtI|2X6N zGzHdldy4x1a01hGP=)~J%2S?fOXmCWt`fC}{2SFIJOc%tuDirpR}1NFXsC0^G3s*f;Z_s2z=(L-i= zP@iT({f>f|A|wsl>7E5;G@$NXvvOc&QMz%zaCj|==8s|%AkH0t@>wNNjSv0An51U0 zz8zE$UbM$k`1^&e841tlWo5^cJ{J&hr%K?UT%V_tJ>N&cxENL^>7*~ODKEDo&W;~= z>pp&|)+(!L=PAQ*-YwtfnfH^i=S%$}kqRmlaPy@E8Gh8o*Vo{gyP;s{X012eZE_)T z8D@1iT@@P9JE&wGbE=Z=@-5K`T~bs(|+KC}vrcBL+pTA~Bd0j-cy+&f96Vmp+eYU>3Y50WK zc;Dq8?F^mLRb=r_V(dUGl>?jc-$nogKZ$pBZ!H+J)}}3o^F-JPTuNL|VZb0}TfP&^ zhpz6PIjK0onQBKCZnrDb6)3>Ze!IR`&u@l%>#C-;%dv{3KJ-VmQ(dn&qr~_K+2NI~ zxKkVYjYzZ2_`%t%>38c8r+x(YH+zgTeD2G+>qR(WL`v6Y%NZ`55X@Z)?Gt0*uo4(j zJHQcXDqzZ+N0e)B9CH;<_*IX1p=%F8p|TrjgG0!H{1i>|NCm zcVS@y3BGJ-#XMo8Y6BDm7kK_+rPtpI4&yFqgLd^GJu3DD)b=$FkI0{K2V8OT8-K^) z2ZQYXrebdVSg}ngbhv!<{<1vLa$ewWFTc~U~(H?e^T zMg1r+T-zsdz=qtY~qLY8Lbcf+uLe_FVzG`^rg6j zna=eWlD^B_@b+2-s>IUur7iWEB1|(6T7R?<5fBqVm!9`_Ty6OQ&=}^t7W_T(tbRPZ zZvUP3T)hHepfHf1*s#FHKa6q(SCCrQp}U}%*GXUGecG4J$5^2UZm_@#p=G(R^P6`M zTl>p1k&>w6UpIDH^l=L*lCTU@Dok?PS||Mw0fiv-57?5aj$j@u2UHF`UW~2PL~(B3 z&(zlJ{^N~}6bYi(y}Uq@VZu!n@6{ERi;{)gFKM>rAH1+@+QUVko9y&5u967g zY~=sonM2tt|IZ`zzKiJnk^Vx*?RtPBnbKFjU>Cm0Rga*iLI(j{_atSPeg;pZwZ$RP zd}z-l*>Y;Z;BEg^Y)0-?>{k~m*Rz=a+5H5mLPs>?jS@V)3L4dab~<~y#ZYe$=~wQ% z9(GJQV!=;eizu^++#1Xr|DNrzx1|D5j_v24-9(@4Sm?Xl%f;wq>oJeSGhu0WeXL`G zMYe%$CD_FR8wiCp=6EU=A!CHrmwB_z>CEDQ(jfC=ZTSrBMip4%{HhwaDIVOFe6Y2L zW-!=&=$CF~Di+p%h|~kHXH4m(mRA*Z$~3W6u`iGp*$;kO{~vbK{7Rwpr{BbA(&<6k z&-=9qRjlZzvMUsf`PNJS8-YUz)C_;?#CaLQ6^*1XLaPv~^i_lXdcl7FwC>FB@~>1< zwP#`fs{;t?_QVjDy+bE#XYXE8l2nX4Y>S4xm{UXix%wh#PYV~t$#*Puuj&YY3tyn1 z-Ms4G`xnS01xj7F_f$^GRrVZT3I26xgS>K6sCnHxb~;|}aD#caq@S%H{DeIT)tCN5 z5pL&OJ%`c#T${XHZv$^g6BE78`neXn#5d?M07QNYb>_H%33+DfXalq(nwV&0mf<$? zy1i7X!n4IHl9TH8pq!LN@I~9jWC2jB*vN;=*L_v!D7You@3SL84+r>73biO8gj*B0 zOeaRs?OWb&!+gXB+oQgqRpNGS#jeN7g7v~^m&c){V)#>3I0}2te-8LNP3GJDk8F5Q z-T;cxI+5}R{I(pBt_w%bXce@}wZE2m!82RQ&#iqg97aZJSL>z*&)j}H7_1*BTzom6 z9w>Gj<^?&(57n;TxG@|q*RumLlFIEtUQmr@9bs8#ak3EywL;!VwAa66B>t1Z+E#8` z$R)QoVU_v&1lDEaspkM9m~8MTVtw!4-}T__85lW!Cy*!?R2E0l%_~`D`^5F;1QPUs zY!2{QK5vD@Wj@?oAIbVCn#`3DR~q++8T85$StBZE$|}awH`_ z9DvgSrIn3(BfNpLMfykeYyXXHG#^@jqsg|zmiz$HMG%t$hO_V%AqgJnDLDSwX)IV! zu@6RGqJL0H+2sCG=Uf%({`lhBWaH;%4sC!Iu9;zn8+gfn+=)w{ej+0SL;b#y|CONt z&*O7X(TFdPyqD{krER2>nr~6h2A0+|d8&sP1NN{DoBlOB9y+H17~*I-fdtB@DBe`?1=snC>~iWA1R(1+}}8Ljj}a4Lb5?UHts>-GHm_J z@-}75P%q)}rEY4fWEJpN*zL9b3+F|`fz=iF-CcywLEGP}Z2BdKnPNvH+_n{6y6o(( z1@cxS`B~>^5|?F2)X-rja9=|m))x9%E{tK*%59}^*( zFzmO6!OX)2zRq~1KjyqTX<5kMyr)>`%= z>5k;DolJQk1;v-jio zt__h1qoW~apc^M%??+B|C`voS{&Ip5G5{Q$CoM?Dv$+NmyC;lwm{kyLXw-&PryY9o z+=lRi5e!Q?Zq2k~GjG7`LNNp;^%=FzZdw0 z+xsRlz!LwNSC2N)$g+*X-e1)9 z^K&8kW@rv+C8_!7Y&}WJ&Vq!3EEl!!7g((}4pl1!Ee;wg$N-EsxQOeUB8-jP5#2wN z?jXxS-BsuioD_!#%&B=_FezY9M=8Ng*uId$dS8Ys^JJ(NuIHHv5YVEutNyOqG|`D8 z-8y}xwwdMeEKC@hz78Mwx&Cx=x0=nQHRY?la<*|c=q{k_G)5`uRWKLW(M+1M&++_h zY~}_xCA?*_{U;dNzz%uBJoT^1j4EP_riYU;?israNmvPGC=Hxw=zkQ?mOsXHn|#zlbOd{> zKEt_00;S#8A+HVMPF+n}HEOVl^91(2uSq@P;BB&fE*eC#48V^;HEQf7_YyThe580g zL=38BVn)GgGJU}X(0*CZt-}1$L_zn1eVm8$xU~pcEYVG2i`pfxYnH%9P>A)8j21WRxT5ZnSGI7tZZ1b5e6oCFUfxF!S= z+}+*X-Q8XH4A1*L=e@3TexLJWcXnrbdb+2ps;jH3>dyO)rw|nLkYOeSu`H;J@Vh-3 z-W5V+;BH$#wrcGeDdVo!k_lEI1VaN=_u$LA`4(DfdDO-TlH~F%-foQ_Ko0?L(@l9X zI0NXaZ@Bme1wrwEDp3_3{djhLCKO>P9@WNK)g=n=WrNatqmiafgm#d zNyWW!LHAZJm}lUmUPuT{q7YEB35?eVm*e_NLuE8z4F0!a4xBfjOcz3{3M4uW>r!&GP@w`OJdGvCNoh!)v zgxbCq6*or>{XO5Qi2m5&McaKC(!2y8dFw-#z8^wQ=+{=!;cgPyvhU?ZKa;6=?Lj7O zF+=wIg^N_Fln{ID=AwS3uhxX9_Il5e{r0Ndet$wbkEy%?pF}B=0MF*u{%}WZLO3-k zxYX?ooUEQ}n&G&kea(OaM(q4$u^9e$5**x*%-N5Yw;v)Awvvug^7%-Wfc&8u+usl7 z#zU#mTJAuGuK!A%G|IM$;_^*qpJ?%roQW+zoc@(14hkneSZ|VCIoW1u_~jRg{$VeU z(AZw}%K+Mh2mzK3a z&mqn~3Po2Uo5<;XN1X(tVNWid{42d`=|uJ+KA^lGYw?cObeMrz2%;}mV3}S(Dy3mD z)6wm-!ju5tgBo8pH2g3TyY8?zK-Vs*$E@MFm$pSx`ZeBaEox3^7r%!I%!V9}$MG7z z4aa8>^Dtlw4~|CxvMw*i=#JSsH>N1MS*TE!pH1dZI40uj))kq}_7s^1H1RW~t$i&j zY-A=c;EdA_*Jg$ZRdYxj6`*|fUKQzdet1%sR{9-ib%~uo+earAbh}UYlre7Xf-&w_ zAoo{QFakMrfTN&t;N9H=9-%YDLEwCd|>@c!6dGYGT8Zi4F4rto3>h*5U=m7UUn8COqFvKY?j(CqI4i7Qm zj}O%A++zogkK8l31b;Ztu>eXO==LS_jtiSeeRg>>Koqxg7cv_M1{KgdSrcD|vs+d@ zrj5L11^;-H;Y(edjSYPo@(1`VOFS-oNofs0dl2}rClWrrjh9FUIBd;`5jh^ZNzSh~ z`1mt<%_K}9rvG z?dKG9%I0Z3Mq7b}_hix5!DrTL0)@6ZJzq+DKXB&9pU%p{#&^>tO}M}WA9E< zmX!NVo#IntBcatw)jlIXox7aO_(y}`&1P0~ap=Q3Uux}$_xE@&UMo>^MsdA;!1(`! zk-bemf3xbf;S&?WT1fMH!USC+j19B#OQx!opMRpg$&1n?q=F_?qc%A%kRuSlP_&y{ zyTx)qS^w&{`X7*wH!BV0-r0&0HA80<3kT%6PZ8F&Oe8?({q})^=aVY~Odd6|PMb(k zrfHmvnT?OvlnF&ez9oo{!T8I211)zh0C4^#j-Nwsc-IQTmqNrtTTRxStejK?U%$5z z-xSD4;}q%Yv79S@@q(Ymwe|lzq!Q3Di9tayPb3VGWwR;Z1@zD4e$68(CgTbJbZSiq zyuIB*n*Nu5MSsj62rRwcdJqH*#%o=Qk@8)~M_rd#K?9FljE^EV0PzSv`ZX7Gpha>F zuJfd{eROeGCY#{FSBU3P)?zt(|D?j!2%AU&=BNNLj;;e-n2TRHj3>_?rj+>B@IJsE zY`n#|!3mYJ?vl@FU8N$MNs++gRA_&8F0_1Ev$jB{&lmr5-Eb*+em|OTR}mOOsf(X! zCP6vcn1jO@2>S8difVw$Le@Y8S{efW>#2kcA@1Sb9=Eyvkj!ohpHwbfP_-tBE?RKy z&2-t)k7k_3_C;d*&b<@Wb+g>_bbr5it1yrrN0}Uk0H|{UGHr1Up5a7Xa_1K0evyGIdRs(2@cv2k~B=Q_d zuez3vN6FoH-hwB&CY^5PI8j6iv)DrA-}80QbH4tK9M0-j$u2vib+*Det_v+W&#H06 z7G?ZTw9oZZxY4%x^@6Hh;!Q>YYz0imLuC#Kh`4 z=ZJX`Sa_p=HgOf^*F`J(aD~Q($3p zWx(&0cd|~gNB_~hH4^adov6}>wG#1GsvqYAnV%059_#X-Y5WEfM*9V(!DS+o_Y59v z$lZMJBC4MbwG77u16Ms?6LH%7e_(QOrlv9`64a zfUR2eg$vbtmyV26fq?80m3$dU|BW~lUnV{C0iyY5aX_t$zOp<*tKRp-iIC2+&{nb^ zo4ITG4^q>wG%q?TUG)e6=Bf`Bm9Vwok2WwRRy?qaG{`1Ze`2I!Nhk<+jYV~OJ2Y3` z%yGATs@jCAa1v&UtiAdT2m>XH>T7N^+ZvQSCZ%SBa`^2ThNFBDw3s{W&n3TXu^RTP zGl_m?cWLPTr=AsDkB0?NUUhCrmQv5r|J8a7C2exIDY2!JQGJ67lFrE2Oz?gD?}qj7 zCrbLCo$#mc|L@`-{~z1cVA!RYIGy9qvOkso8;zOu%P>!K*W!YoZNQ;41r)V#E5^3gp!HJ}Yxgqab^8w&H2`cX$A`t{zD5*;dGaK^3tPwu z-{QUiTO;`Dm#9uBV9FLX3 z%3?pbF_v#rz%0d74A~v;6y@4>C-Nd5O3yn4uFoR5XH*GdZ*HOI{Sq(c(AM4^_$t&x zA-ZtRXOVmQSKCEgth2!)IM@x;P`^SbsVc!(ctm^|?`J%sI^~twoim4_CVfO1Z=C%{ zF1`DnRClNk`?UiZBQUiU`X|7n=_TQM;^#*^4CvAG$#lQo^r@0N=*3cJWxkVG`FscJ z{GRP)gZ6DLO;Y2(D?2=@H+-uh1G#wdB?N0ZEl#VvFE70f67c7}-%+~aq&O^;+?_?J zDFB6dz}vgVOCBmuow#r3v|^}$#jUzSsMga6%x2BKL;^+B^}&0CC0FOLh%Qi}s&>a~ zORIsZoc4)Xp9JjJ8S+U{NOfkM*3^ONOfR33=Z*LHp-M;pCwNcqqeWP36gZPU!6f|0 z(bDwH|2j=Mu#U5JeHw?ZIHe*h| z+IwB}W-evuN?8Akz|fU<`cdpRFb%B9PNC{fVCV%xhLj2?fKG*9iVgE*VipwzqnXa9 z3EF)sar=I`N9vtc3A372|`_9q27DUT@bB+H;)>Yz4Ne_UHmcE|}0MvXW zJvKzD1+}BHvNP@aaI?xb!-$@+HikZnMy-1F3WuIrXKskOJQ5jqhPSLXMFfsB))a}H z{Q`WUEKwoz)mrdQye{P9tpQ<~8mH(o`hD|<;Mo;)bA6$;M}|XP=wtl$S~nYWz+}!3 zd@#Gg4s0%%mG)ZvvX2TGA5E-Wv|yiF_EL;;jOGmfH-{X#hmBdvLQio1K~THmtyEE+ z#B0c6XhKlV(qj?BwaVKdDEe@=SSb@8Y;ziI+={?F(x=%>nHq53u^TCDy~=iRzdeAj zMucjXD;k7yHVOuOIC`&Mj~e9pxzwm7Xt|*sEpOq{e+!%(d^{dy_{7!n7^AzjsS#Ixo_1;uXA`T(UnMOIRn* z2i7OFiL7_F3}M)R#aiYOE3F6QbA-XMTV!B|T{$6AJH|F4u}+Fn5*n06;B^g;Rhfp! z>r_y!-*(KIOE|x~i?t~)N>$;^4ChEt>71%K@Rk0`r&61Gcc}Xcndbf3C<36Bu72!g z&I&XiWtN1_aAD$goy&sb=ZMuiY`l$}xAIJJf~f_~(bwNOaUafbTWx)-rl%<;UOfqt zK_;6mMQMI;(0F_&NoIbpuRSljo((Lli^`_cC+fQddNvX@0s?}@<*j3$&B@70wR3~? zwm1IIhDM!g+Mn9+(T;Pis5)n^)NhR+*S1UOCB4AhdRSC3#h29M&KQOVB7u=;7I&sa z99<*Evb)ylokm0OsfhRl_}fRjBHUkp^2j@Q_${+$AGSod4Y}xJdIN7 z_kAxBfCV8B!@cm1<{7dN(OHep92)a-fLWmmTi0@R_8z)o4O?k0_pb% zS;Eo5_m!`A=9lnoi9ewZe{ zNyN8@Xp+1@A5lq3vWyNB9eYVAA*XYmh&y7cVN6N#*PS>}txY!=kA_|NMnO>##efWo z)BLaPAsv1%JDpw%2f$0Xq#ILsd!uCHF64X$a!rFhJ(*b?o3V>|Z%F;9NUn}y**wqi z@gcv(nl5xPhC7w@R59WUyrLlhz~IX&kUw)}92 zvpdxR{Ok+0ZXz57PQnt0kog;q&^P8g8bd-7P@l!$JT&Gw0D_>8HY2e40J-_~^14gZ ztKs4GM$~(?M;VW3#Sn8ee!C;iwDP*|ANz+^@QwclL@zHp^UWdM5YY!ssn3G$P)$SS{kDv4#zAbOv5ca$coJ_(M7|yF5oC?)%+CUiBOwQsX zCxW>fAIS(exzPj5%&?raTeL{QkmWIsNrb~*oB)B{MY0urVJrb8cD(Y|Dt#!-?~|(! zCJ^)LuSM16S*1sjv0dH#bn->Z2#?zQ;H&!&mS1T*mfs;?md#9zOs}+s7#r^P2_Imd zufD%t?Jj$EdkN_{X4n19h~#hnGGZLgb*FFgC|dz9qTo=Sq9Y$@fh#|F2i?$2JbupN zv0v<8<4_rdub%r_aJ>^N$T{W}709Ug)aj?whG;oPA|>C%=LKj~1gQnOO`;zt`9t1g zx7mL!BNBYk65_JA#%Xux{i69I|06 zCKE}C5g`*Wgq?idR41B~0RNn?f#AUT#mmH-Dm^-ce@O!&L-3f#BF0gZ$;A{hZx<~Y z7m*EW09i&(HOdIpotuvIMow?qU{HG?V|19p$r3Ni0^}82X>0Z^EmMjE3jv$wx*z{R z=z#eMpO_C#RWn-fh5_7k+%sQ4;Rj@c*X%m=sf>oYf>KGRleEkl?*`Pr%XM~DgRPH= zjST>0l(m(V7-D0AB2(n=l-P2s*(4)y7LU1wjZ(fPv6CBUKIQ*uICW@Oa5-jVLWM`RH_O4ley8Nm^}fW`CuMl&(<;AgKd2Q3 z&O`%!c1PW+^nv-TN!Vn9VC)c&X)lq2Qd*C4A~y4gnb-of})4ww0Za;J5aoc58xoS={S(Gc{% z4a>O}oJaiZf>EWr&gEpMc>O7F#w^8b9;$~}d4@ybD={o5=6f8%x@Qno_-71R;!^Acd_)e;p^?FcreunwuIlM(3ot%t?v3@i@b4pLo{f2k2wYU z$?&2Bj<&RTxT3O7d$=D5y?fk-t+pJzYNiaOPkQge2SSLW*zEoc;<=upl$L;4%|O`( zboRF5rfDFJ&Hc{Z%PUE_&wpJU(QrJDZwvo;E@x}~9;v!E>)>l&ya@vyL7Bfcmy+4utM`g>hWeX48 z514p_PtX&rq|w2b{v@L+oFfQ5=H%O9t-_tE++O|hIJ}J7-uYV(=U@EPwzn+N0?+eD zqn{run}xeg}A$MCy_$%Rl+q2Vc7E{L9ra zmxCO?bV8NF{NFz+)%I16R%EjT`wl>j4t%%xiyd7fgT3@9?(wXe{vd}Mrb>|5c(Rti z`6*WGn#Q)meeCg(@_~r|8=H%}qx>O25SF`3Pc`f*keO;GZ+I86TG!21gMYXe;S?0f3iTcTKGuIlN_-k zyC8rHeX1dov(5P;_*=n@wJ$TPY?0CSm zJ3G$D-YYiS&Vo-&^!6MKW(-x`Y9whij)I;Mi3vWU{m#x-ogyYYT@L}PY1_W0Ilkss z#<&a@yb^&H{|k@_I4qEr%2qSXw4yqK0b)$WfQ#o zfoWxH1{T5LnhAMo|LZEA47I^MC4Ph4wA=!nJ$Z zY$UX``}2RwfbBPw_Xz$0k8j#go`4SojnK~-PV!{7T7kp-ZTp{(4t`!3(X5aAps|vM z2K=O_r*lk;YilcjoF2G0G&DrA&$X`~nMLQR32fPFr#Zt7w8B7y(fj4|w2g&wV#ZjE zE!!ytj0c__5-?>BeAX|wr=baQy&$d z_e;?a{5HU2!-=m3M2~QXFNQa?qV_zuxla#2;!Q<|wQ)^u3E5TVe{V+8ta7WLZ*SNe ziXHS#Myja7P@JW##(rjxk46_KP7bT3fw%;_=3X6xs~LCMajNgnCbM}k8RJe~;7iQ? zd0c61eWj9Ds`c4_Ux#q^#xo zh0*i(r9M^Fn1~C!rvVt_bV5MEoO4yWvbXnYdN~w3G-1E(sW5notx1ky>Ur6U@A^_( zq`gUktP{E@ekfafS@`u;F@5P0$?rH#!JD(q!KkWuJ+Yo^QhvL``|GnWX<9P=yu&I} zf^0tA4_hI+GF@XS7n$tdjTRj~)27b#(~Pq=;)u9&l{RhlHD@I@b9{LRynkPfiT_nV zwqOF6!p_V$Zp&wiuassN-=j*|uE#IS_+pegDYllXo#S0~oRoW0D)*rQhMIqY&;m%? zN%_4D3JpLEGk-R~05q$h%9=q0v}geAyLc=<-gs$e+Czpe<)}Q)0(nyYsL62@}$tm9m15jMP+_s zCx8C0FF?gW2ay8v8V+h-|0~o01n||#+S(Q#C-J+9w%=_~qdGJ$ndY6zA>oX=?3|S2 zqZ!A^^fX7Yfn86SvY^S4-t>zTFTfOc;e_SG2`oMWSy|h}FTdF$kVGMoM723{%GuWK zwu6UZl6^x?=4YTZW`6n7|E~FSiO1QOIG0;7>&1GqLnQsTs;V(`WcZQeXsl%T?WhfU z9Mc)jsK_GL}iBN_?73erR5I8`6{?X}3t8-Y@wzfj-ZGASt%T$~WU5@HInD zQf$-!P|r^i3Nc0mBMv814^^8ElWUr$65Ji|{VAEMd_j%s{-+W3kh^2DnYe*Jhi^1-2A{u3ZNAt7{i)#x{yU`xz_NpIJ2#e=)D zva&)l9}WQ7`WP(*t_JH|pCX5zttI2J|>FLctq2dj<*EhWGs8_nHc8Tvg_S1R}iXUDJ=2jXBeQUIy zTJwMG6#ihp{-=A>;^f}b)MW5|DO;TgY;^J#P)d1lh1?YkCAfRF1l3;lA?!@c2jE2x z!v0gt&Zo0I%qA`t1c?I6vRH&E*@Jk`ttF0XIy%_Rf@k94yjUhIqmqra_qcBI&{}vWzgG%%JgXnii;5-5hTo6|~D2G>3xZ@W^c^TC&K;%9U?7b1Z z7Kccn`AM7Y!P4m92{v$M;9H1tQor}vNxgoOWCN+bGesa;v3!q&)$4n*zU z7mRqDH$lh6HS*7vND< zu!nA=hU71fsic(1{Wc-OaJ@T5Jw2xE>{X$J1U?$jP6qH=sywZN!d`Nl9wNtE>V1-(wlA@;M~lHDr3^_M$@eD2Ok_cAO?-ZaQ4{Y4GbHB`?6mO6i%^%}!-wZ{XDBKQe1U_hLS+zXo)DD( zZTb@vsDwPvH2E(>JatNfiWv4^68g{i|G!Q!$x<}`_rdoBq^Z{e%0Hngm->S-m0&wM zX$UkC@qMleHxQOh+UYK(`ZGF%y)f$Q>VyCT%NcZ=T9Tou$}QoRQ`E+ zd|Sc$`}@EH4-b!4ZbhHgmu<4%phBS@%xXovRF$3h%AJFQgLS0--9*~TNsKVCKU;y7 zCZvm8u*&r6+F=but(rQ$Ewd~Gk|HXs-HASc>Q0`i==v!CsnfT}NL22`?{9P4Ph^7$ZD$tcZ zebK+^kwYI4e@EhZpnQ&y@p+iO^-|wO46Bd#;>hh?&eGf*#T@-wUK6~B=cct)5^xSc zh>bNn1yn$A+2&^P^OKt34=629uj=UF00&Ta9m%qr=M-gTe#g}?3$e)>+p%|iRQ_o5 zHDdHs1YzC#mgP^pGEw<6o!D#GR(cm1pjvX?2$hD;{$^gc)?l~BOL$;>=GLw@6+g=* ziBNEB4|(7B%Hd!n9ebm~_9wKysDF{kyrIbu8xN@2bZlo8em4-jtsIQm1UI7cnzJ~0 z4CWF(u(CmK=P*hikC(w|fgqrj&Vz>ab5g+;OQ8T-CW=FbV?rh+X=!QXG@nb&c3F!X zAuH6g6ICtW!TFld(9q`guY?8u$h_xFN-5}WZf@%v8yFnmG1{m693u~#=ES3>24JOv zPp=A41FOHvzxiB+s#`lyHt{;4-~r%84b$t;B%G(`fSi4NevS;ZOIzGbe2qHe`c&!e z=}E`H5cCiJ)mK3QyS~0Y@H2RH0ZrRO!e^jc6==n5G^qcI23*jIb=)hLV|FHAcOMXX z0PdTKX1RJ^L;MxqaB=x#T2P5TXC}2<4e63SeUsf>z?}ijaEXQm`#xP=arL;!tH?7I zQUog&SsFh*gByFq9Eo8dvLK9nV~Zr*hq#W6_Sffb$mOIXQ}pIkEqClS_*0i)J{ulp zDte*-juTg{TO*-%j#1Re3~x^?Jxe^cf)TJ2nVFfK*Xa{%!3^Bew{)^@&H0Uo3b3?P6wh!08Ss1>~&AoI&lDW}X5EveS1JqcWekw>6P zNJwl`@P{Yi{2migDfb0Oyi5H7PJ^CdHsLyZYkJU%&v~b~@@bMi99*{xox-(Rx8N0l zXs}8#)=&L#>9B2(KvtIn^eG}HL`w@@oGLI;pE?1O#pyc3f|69axIbPyV~G#1OULx+ z!0UJ{zl`AK=Utn8+elB`tZgN@TuF=Nix=_sfA-O&_Qo&)`^#niaUR#x(fe{MCIFX8JeDtdF( z6y)Rdc*$Q~Tho)4DB&-rr>95y#_>g($0nJytn3<2WE+KW6bPMeJyVJT5*Mf}Nvf%R z-+v_8%lr5;I$5vzyN5A%V(yOo0f_F4R9adZ9Tyh}f>+Sd(jw>!Ul3_M-t%O!hy{gy z9X)lU@j!;&-C8N6i&80z-n{tD*W+{W`wW`bUuvsz^<+xv2qPKEmL~z%Y3AWgh=93? zWa!0Qc`1}~M)?(Cz_dg;5VpvWvwPXCl6LO!fl~#|Qv6DiSX_PXA2EGO>WP z2FX!QOd zy%E4kO!J~W)s}nTaBDC%LD1!;=;>uAm@w)IR2>ipXGlTkZHU#~+$b8WMf0kg*6oGi zV!em?&DqfOLLP}r!9s&)=EjhiF?e#k0^FnZ8V{JHIs|j4iyuJo5S*EQ7Ran z$_FIf>Py@0=jZ62QCfj|5>d;ODI(Rc&7z8%uA*s6P3hiU>`B`CXm61;U1546Pr*0B z`opvgNih}Mwe*T~DlKADqF0_X#>!0-6A=Z1)CUm~(nc4JegGR56chwj5E?)O{su{T zx~uAdo|OU{^{MHCF7IO$&=D;H_V=wB)`_Nw&}abh*UogpY2E~2Lcwhe&;T{?@>)Fd zMByhBJq(!!&;VDZ89{j$OF}b4SCklV`n=rhbmz;Pz8nNVDfMod!|K_|?UmSa-kc}- zcXe+U?Wn0HI095N7CmRsC*PX3vPbTmN$N(?N@lgDgGB(ODBx#g6KSdMW#>_MovC<~ zD_-|c0&#B2Q(H32?e{%(rp-=aABuO=7yg>OVD-47M64pS zB9QVo0C)~~=PKi4VGr8$X|XWk7rTs;W$3Ch6wu!>KMw>Q%3399uT^GCD8A)&!dXx- z0;@%i280BU9mLG{{-x!AHzoP}xw^WR?&PYkl^X;11p~tb8M8UIoSdA1!?wGUl@5$^}-{-P`-GB=u(_k=E_ybg3y8AdkPUA&p$he7_*y)7#rx5{gcHENPw5 zb73UU6hAzejSt?0j*Z<8LVbe&Zm-g1%o3chdrBLO&3EQXgRma}m@EzR@5efNMiv%~ zC{Y6oCvM81OP6#}=XdVAcp8FrH)2I7Q;Rq@Q1@p~pL-V`B^trsp^a?jyK|+ol;Jxd z-BGKIP5Fr9NF22omo-ALT(P_%E-&N>p?z&=gc$T4Z8-UL-fhf%==WD|&IoTG!q_FldYaXa% zUszK=C@x`~YuA-DEfN}ugY%gTaiF6(k|wHx-F1>e$@k|DWxtEk`$=h-%kG&Hb@wc?^9 z@8b!x5&>%5=pS@6n6Le&#gR_WXBG!48gSjf>5^4BGy4`)$locv%OzMIHZ`T?qLpBl zVTo^KYe(T=Qp%6Kjrta<0%qI&C>^Ls(O%ip0_yqR&d%k-H%q0aVH3w_qbsg%Zcj$7 zpKRKJ5b<(sO-`2`Lh~K@8pn-q3rGG{RaJC;QMgos8m2y>a_`@_{&@A-WNi25&rhb; zH0?puNcqW2mZ{FcQnS1wSQ7s@aQ&wxy;CS}uY_LQ!64MG2tZ>LYpE8=Q9M0X%g@FJ z2r`*3B*)i>)(_pnYq99VeLvi6a*fe1*zC|ssT09((>{+Ek$HIJG*EtQshzU_Y$)y z2E611>6u-_^Rn1 z?PYo?IygCuxHBA98)^4X6vKA9w;2>T_}>hA|LW^oS9H)wA#nosQ!!y!W?`=4b&J*Q*?B!n^*e`!+sMzX=px%*=i5t z>2s=?!|6lJuWD>ydRWazCcib>#q<|=rd63L>WoecroxV9ubFpSl(%%~fPZZ|MPzs+=|p`^G(eeY6s+$-jV&hVy44G!1; ze)cjRdKvwL&juWMgR(*x?=}E1ZNb}P6p-IQI;fQg;a|sgoVONjMd#f_O3f$I0Fx)!FO{nD|PeOWhtlkwf)H9&_@H#J2RC81CqI0a^;jj5OkJ^eReDCO4htJS~ z#jafOU=!wu2D*eum`r8J_gTfH;8@qrfVc<0kQ+HBCG?mt%64`{B*a-XteU`G8QvLh z0R9~k-dUKFQ_wydS4U9LG&G^GG0s=W72U!fRBkw-{}hO&r9Iw!!@|mB&}52xrd+5~ z?HtLj2vp!=>Q7i%%iTZA(iFUla~5E-^Q-K3dh4ArWAIzO8CKTaGa#azzO& zkJ>dE!jIy)KKQi1ko6+h&n)>M}=932z$ zdqJ$V{E`7DkkmL$aL+P7{*x}Q6+fKzba#%9{+Hl{p7#Qw=X~ZLmdWCYO)@gFQZw=T z5;uC!!v%BAuR5A%F!l!<-@~~E3cm&lHYr|fpTe~IQhH*Mp56?Gi$|T+NDbhVlr;Hq z&F%3}kr-f*=wife@F~QPb*%lb6U}kFGL}RrIP(-g+(ihSHFPK+2@8hR;vj1W(H?z{ z!h9@9k1oDF0 zmysz#R8u$g^E!bp2j5!hWnr$4UvJBk9Pq~Kx8+*c z^!1`TtQDR5_yA77dC6=Rd@!9`HKh~*KM+hjtK*O3Algf?9F=zQ+jk)!ULr|Sp3_cY z#vuXF)pm>-f7>!`g{|VUm4oT&p@}QuQC4gVnLwReml@u>i5=4OG~-~8==>=9BK1#q zg{2ns#C>0)3TBAf|H45PBgig_c4E%uQj95HbYN&=t3HvWLNc2E1);szoxo6qn^byP z2+Y;l^7!3O?Cs}rHcEfKse$40TaFNRV%-uO$IKCP1MbAYtVok>GdmlCKO}arK^H#f zPGU(JNaD{A*=jv%Ark+TOJA{WsUvtyt}Sg$#)AeQd{E&X9##QW4fH9+S!2gjg|tp= zO4!D%=#`Gu#HMA1R)UB0;aTH&Y+Q$2pX`h;3h9w~LrM>TcycQ>wM^z)n?t5B#S(RrLwYe;k@oV3!vF z&pR|r0Vjfvwr$HW7V0l20p*Nn7}3n8Xk>^j#Tn9Gym@?8u?U&SC_N|4-M!)x+za76 zES3Irt7Kf}^r<(J3aJS6WT4ItB&JGQw7Wodd4y2gL~#aT3ByRa0)n{w-;U_2)^Ufe z>L+|bCjoqk9MWfhFJB#8f6pX+Zvp`&?ktsmOGY2)W*-)5Ecf8UD!a07s zzxU3R681{GSElN?1(vtA%q9>>ipIu^a&vP_Z1$&1)DIAPPjd4<7a3g_8%iddvDInh zL^yJF9xw_oq+~d_wtjCA`?dU@Y>=V*l>#{3ahwuW?$1FU6{L_VUPK(J%c7a$g zLsMs^+~V8e-1j9WM{kLAb`aO%KPoowJiN@~D~gKXMIZl1G-Alh;s3~oIJlc;e_7n` zKVdq9`thfZc=ic4<|*`pG<=E!7k!3!_2B)s{0`A`6tgJX>xZc+q6vnB$fF$#WE7MZ z6K>EU0YhRDocf-U7Yn5B1tqtnuX+~J0KbZ<0C0O$fsyb>h}!SRfF6@)U)ELrvNpYy z*2n0^j{{UDf4|?G)2re@Gcpktk4aTUw&=Y|tx7!f$(3NP9tN zAo*!|Wz`{XW97NC75;hu8^2#NeIMrus{I;BqOgvD;j)i6A*HR@MC-bK*yy2V4H@}N zjDMR?-PGqEpy86YmxpkR-MQ7V6z}UBk2VrFPVd`~yPgMslsh8FKdvtoNbBj*>RGJb zkW<2rS!R%&@mjC#_2;`eTAntAp$2W zWDHRgGc$T3XC5wY)LnP({gwj{yO7VCZeEMYOdT9N;JGA(3=p?QvjBv>G63O9&XH}l zL3a%e4KeR)`v{k$`8qee5J{yIDegOaz@B-Xs0rK}3=9fF0Qjt@#Xr#$m)}4i&uD<= zZ25S5^vTQlzB*Y&uk;!=15_1s=k4Xl#a{|f1}srRhK%8QoFy|`tcZ|KM;_~7dnas- zZy99$sJpizRm$tJOiT^{evJ>^(IGYBM?~FP^I@+zjK6VVuyblt$#{0%;$Ndw_K277 z_PG-0)NGKr4!lL|>C^R2`erlUZ2T6njYkSt96L3cZp*kT_l5~^?$tDQ556|k%lVTn zH5uZOdg-vo9<^d7GDSkcpPFxoH-MNjfHJzn6b+!;2vc841s#pm_l*<@0J)^syi2_S zdd+q0DI&F*))^Hd)T#GCBBSvvHQA6NxZe^F?hAOC2s5R9qT}SmpDJTJTFr`G=P{{a zxdk;b6PLn9hqmhvIZBzJ)}`K+sKD5QS~5_HX~y>>BLhOaHe}9=*#-e;@51D9fj97` zabF}QP-~+AP47j8Nr$gR7HZq5h=`?^Sz^)6VP5kq#8g3Oofy@q)=# zbJpAvrP$y8M)%dO$mx~a02;7jC3_5BPf4j)Rk25-f!5=O#fvCU1V@SKg}5FFw)XU( zS-uXj|0*J5>=5A3iGwR1O@W_ri+Wr)%5=T26IiykI7xAhrt~YE8Cf_T6<9%J6;Q=BfycL4WKM*^-!YkU~B5jRG(18A3qT5|+ z$o37Z{y{N$T4pvRqoI+&fKK4}4UP3cVh%MzhJIYX8w4HQB_JXuetG($(|{BG`Jf_W ztcs5=#=&@E&;0TAJ5kU|PhE^GQs2-JlbVVHI*Wi8#vhcefqy)sp(5{Rp6KZH<2n3078XrW>NxrMd8- zI0SX{|6=Pez@m)0HehsUkRb%5Q%a--=>`$$E@=_zknZkO>F!2EkPztxX^`&jt|8`Z z-tTHc3V0LaMz{Ag4Z)ah`Z1hTxcLNno) z{nY8{+U90Ri3t7i@v+!D3=YO#40?Kcd&jeECT3+#O;l0Q0sEqW07N%8ZKt!-Q|eFm z%FKRQQe5*!yXss3v>Bo8-2oPw3Z4TsLz)Zv?+DNzeNvl&!eJIr8c)BR7E46K zp_CU!LM+CX0B5vMmID*8KnfVI4XyPvlDf9`i~M!7PoFR;9O!LZxk;lFuyqn`i%>8i zabohu#yKVwz9m?zCh4ew{=cz&vlc1t%U&HpmfdulISAIqpXJ#LMIRo=wkRFNh*k8P zeOg*{;peXw((2`=n_3u}Lh2bmeTH=x35S34z?J=IG(T+4p0)9LH1O)=V3s8S2lLM^!3*(@^Yg>I@~1=38Q&QxQlg?kH-5!LFcUVI`oNqviS<4>ZSzccc;<1@UM-jL9d9<@IkH4h2 z5*Qe$Vqg#hqy$7D_dPx8Ol(>nuRYFX9}+bV4oZ4$QF#3q%!U(%j%R>5 zXltHcT>FJ5zoSg5$WR`vK92nWr~0lo2TL0k#fH~v?IT1;SN1sfCPcT}jBm}Uh; zsR-tG?1eFc3N0mp`Tw8}UV760HJY~r+qQUR9f2-=8`>#{bmbJYW>~su)0Y@t9j&iG zZ9c|RiBZ8Ct&ri|1P1tu0lToUK6>j51v4{-W^%$FCKb2$QE6#pK(D@h`SSQ8&+s$o zJfK`QY42#ocGG)>_CKF9Dm0WAd}|1ZF$)&HUKGPm%h80;A z>g+En>sjT51C{q_BYqQJ)CUw1)Lq}RjHCI;I-kz69ItA}Lz}0^%>0Q$z7nj%QTei` zKRAxsvGKgnKgavw^Z>rJF*m6dwC(uvvTzY2-le81nBC@}2&>P}ejOM3>JFsiU&Q`r zFa@kXcR7f-P}DrqSLbaie5z^2;(ZfyoB4zFaOIaxEe*R|WaXh^PJ92bh}iV}Y8Vg| zI!RpDuZF*f8-0Dc8b(75%#jlsFhB<)32gbr`iSiqE_C*TEeVwAGV_`_0b|+x{+7bi zqEI$JiwDg+fY#2VfSd8X`3JjySZ@cr+l=Pffrynk@BGl(@gWWK-RrEj<6Gs8L)MFu z&Rdn_kZD4q4-hf=Yvzb0IyZayX_7HMKK{kxXu~7mYS|rTgL;R?U?zLX@788(0OJ7$oqR@aySdMB50houTO{${NG@tQA z#ie>O6hXFX^KnUBcr?WY=ONc-{$>Wwgt_4bcxADKXz#OO3ex16hdOJoT+>m~Oj1<63LgTeRlsSXiJa zC@5%;k2Tem{kbqWh?VxXJn8<(9{59)#hC{(rR8)5|3nN|no(p3 z$*-kF^siaZ($RF9c_ zkc>db!g}-WUHGab4gfi1q4E45erA+~lNfqY+9LUr+I$=7b*M;K9SRBxlP0Ewb*OHI zrj(kzv~RJ!2x!0_Sf(mrR5LNwT;{}&7sW%jnIa3wwCjx&}p zVVZ;I_t4P6K9z~vykmDrFOlgU`mo|dvK`R~r5`=I(GedWdHokheNFH80)rKKOX)~} zg6{u$zX@g}6UlW>fK{@(Z|Go~Xevim zF8}X)gSRn`M4j~0CWRFb%A?Z<;P}zwul6U%LlU!*+!6YbsXF-@`6bu34o2kB@t_Va zjxO;S|NYq}B2hnz{c*EL!ht-@qKUntkvSI6x)p>h=jBwFpdfU@RO3e&!>X|%d~|1z zX{Q&7(VVtZ>JMUiFQxxd#ptiqes;DgDuBb34V|3TFy?%@(vJVNdF{ef1*7^J2A|JK zQIu>X)L(YBu&yCcpPgM0BV;rBaY3*l=qX%8kROG6Pb_)(bPcV0kg_V@s#~8O`+{IL z+V_L>h7VZpfLAzp1%gJA~}d!)l5Ktj`2__+}on38M1A*3QvB) z+VWe2d3&irb}~~?MRyT0ebIvIhu_7+Pg<}MSax2}Sx~r2>gWIDdfn&3x6APNDViYB z@&~d9Uz*p?B*(p%PZ#Vata0}Yn>;k8AC?1gBrv=YPvA-&2@Old(GHD;ryZ(lIYDp$ z?pa<~V3qVPO4L}gvbFi>j;^Jv8!^LLs8(&<(S*EW3?R!{KZM!Ym9z^>lpaAL>@Q!o z_s4x4T)ln7iX3fh1kd1i12^AlMu+lSFQlfka`}3l*~iVjcmK0k~t!9brS`D@4nIzvdo-HN1;ds*I+WGFVD<0jO{BK9(D99j@d98PiinI>uN3ZMPSF}p z4UP@P0bo`(hGzumzE^@?UfGkDClZz~qsVwoOjPpsdBQFtBO)yKuTD>MOM#<%AnxO+ zL*ilB7^2YDCc$Vr|GngoYR1#tHv&|{`i&vuZEeZoRrtBFW2Z!rHu%SnANh!!zwS}a zCD~1uCM?5k{U+h44bub#8&t((m4omWB)1q7BfskwGQUbcvlVy|f*zz8<{Rs&wdkw} zN(eAa;7PuRfjzPtIEc9SS^_S}5a01@Qya(JVK~^3jrmBjUpqQ=gd$ic} zf|d2zWkX{l?epgWpoA!4g;s=}m*~63)Df727sEGt^6`mUFR9?XPi@%j`0o`UyUx$IdjFE_eMC8RSFjrX|iAn-(Lc;_0n z&Oo!QtgiP&^=?E@CA~PC4HiSxx!8QB-R!dEGG$q8;$`Gr+v0 z%daENY0Yu+Z8Ke?TvH#;CA9O*ild*z#onwXJ!db1ggP5y-d0z_**tMqH(sz(vCc4H ziG^L+l<})qj*YkV}tK#*Ya1z&oMk=k*4D?Yo6)xIutDL0KRK6fjhsAkn*V} z&ucdJSeTj&e2Q`%zPc4^_`b%^06^|#Y`)H+Zu(-bE+g$6BMo-IP0|k0;7LhI9g~w9 zZbckNrdd)dDuG_b@AL*6+i2OVZ(*G2*g}wDP2?GS2 zvcD^7r#1wz^QN8L5E-J+5wdAR3=It*I}1{|xhW4vL;&Cp`~_26>T9dGtgKk2hkHBY zrSz72tnaqAKSfhMJ=B5Vt|(}_w)pTMk)0z}NpyEaJ8MupMO%n)VE73O9S?Mg2eWv* zKeA=?y}0v^GchXg=0jlznBY&Lx&b&4+<6ggVzyEBu;#SL>SI}vx{~h5{crD=2opAC z)l-=rsD%;U<9J1Z*=!#er#S0jFQ8|l{x|Ef{DE9X33opyxU!O6u@0x5&~QmNc23nf zJ-yt3WXRQ7ZN=#}TVPlrW@opseK%p{=k3zeloq;3x-C@@F{EP-O=Yw+a+0~@W<`T1 z&L#Z&PZh<94>cD6&GV=j9v%=RJ~fq0V~R`%ZkP3#ms|%qT}DPmL&}jLva35KgtI}@ z5*;y*Gt11(tfHf1aWR1aiAf%G1D(dJyl-8EKzScnI4JyyPNe3$aydDM9hs$nLtC`G zhwtw15g=Ro`YSs-?+rZ4R5gf`}-fxAAq$La}K}L5YlZR1tmiofY4z4_M7;h>gwvjf&Rz-+#0{V)Gi(Yiu#&~$MFl4>&YOq)nCZoJuo1*?Nyi| z{D`+P0&d?Upz$lc+G>PpEI9l}CqImfb3%b1}79R+P1hp6K*7fu(QBg=r z1bYL(O_*)#Rm(pJ^3I)Lqt4GKf1f2xy9gniNsETodt*&%2Qz^PHcTm1Zb>Xujtk%jw*Ssoi*B__=T9<3X*j z@opH=kBioxb{-SCf(AVQ1FF`q-@I-p805YS@I+`9HRQR;skSI@* zC(ADK7SN81Q_epUGQ`t9ot}-}{>BECE^gq;+x@TaKMjRCR;`xs+OJ7tgDvM5DiwHa zS95D&M-% z4)s?sXd%#2SxF)1-S{6%|F+C`B1_84^K;p|flu(|%a>_F!jQ2s)f)3r#MPluY8Bm= ztf&nQ7zYRY`%#3fy4f`~1as}}xFjSxA7s?kzSQQ`-&2+TJ`r+Sb;-#3CfUM&?dzqT z+;Oio`+gUGVr;B_$BxbN?!Lu=`Nt9U4+myyZ1uh!Ur(3`DEF8kT01<9d1mEBap*g? zs0y#tUSn>A156hi6Vp3w7YFBHIgNi9I)p{bQ;?M_&&wUf&+HwL&sL}FakCw?;4vOh?u+w#L#fOa%A9oAVtF#$YF8l!N z+d=D}0tRdV=n*#670gj^AckL+IE|WJ7_H!MO7-`~p3UUp2xEPaag|=LwNb(MKPCLHjT`j z;p~l|2~Xas0i^c8BJk&Dte4EpDR3soPV4SkVH;)lVZ1x_c6cY+nBqP705iN^RVLBw z-_6`Hd*X(BH-Pl0uK!CK)4OW{r+?aM+um8gvV^>C&5J~U;3O7}sNVniBSgnQH-T=y z4Pd6panuB~@p4Oqs{x_;3D1)RO%T`4#wq^I{~Q{3sm^}jaXwmvL9eD(QU zAX#C9`VH=DpGA(e{x5k`E8wgMsX*F5Z*TFi#U9qEl2VKLFMYi*JjmEMyXt7t^MiB2 zMt-%DCZkAT={n3z`PNwkj)g_iFoo9~2382*a{qWeAwdr9)1tU{rN)waTA;EbjkPM{GZ&-J_d)93pOs75^g7HYf-(?k#YOKc{r#D0G?3OXd?Bz+;3|h1Z*aR*P4fC$N)@B5r6XGSaHHFJMjIeb=5It`Y8Oy{1o+j9A}sthPg~317 zB@f+rm06y8PlIH513*Bc514v--#uc}UOH2Q0*EzA-l$EPjNr{>-x7t-s&iNHBuO+Y z@}-d@!zM&r6H4eV9YH3YoBQvzwroW#VU2G9cQR&;P8t@<9R~{QBuV45IiZsM^JS;8 z{13EWUOw>xrUaemJ<9uQ*Il`E+j&i45Y*GfW>%iMLSo*Hc@T1Vs>??Je>N`v89R8 z2LMKBVBSeA7RTRq9pE7ERzQa~>Hs1f(rA=5>_oX#cWIDAy%| z+&eJs>d9hLU-aEvZ=;6^j%ZGF@YV4o$!kK(&6bqwC@JkcmXv_4`m(uWND-DM^XZRwsbVwz7-=h)~i<*6V zt*>Ptrtkk0V)Bs^m3vn4R!dW}eP)IvaDLvNviM7?-I3$xopG3+{`Kvxq_7pCN8~X3 zOBXPKBWJnJC%*{)j-5Vej1%-DoVC1ucz9?{U>^Jj7nQbfS4~#NPA!9nH@jtoG!yvx z`qmFwbU$R#9$jS#sU(Q#&{yL~sS9t!7k19wrUUBzL;#6cU0p>4hL&bm1ylzWBGcpi z=&c#+H|ox=<)=ry4(I!f433^$PzG7u5kgw=$t+Zp;0YsjzvRg*=DtI9x?hvQ=c=lh z06wLA<-Ols1-`B6C&_~qe?x2vDf27)`QD-LQ(M-?Tu1>P+ zq9h<93tmB6{YW47)4_2s42u4K%6foDS6x$6*Ag<#^yKaP##-mp>D_r;Z~831+23Zm z6zuQ8)zv9N)?|3w-4XikOWAjrz%v4_D=0O5v3SG6!Xl-ps2H83I{m~lZWbveC1v6w zJfy+{hg)^70WMbO9NT8^Sww~OLjh4K_Dipbi)UWi^+Q0+Z^5nRT^vlP=A@=0%1+H zTI0q#US(}`^&Jt08Kr9Mu9ySE4`b^^rIwW1u6`FV^8M+D*Z)`y#r2n#M8%5X%DTEw z0Ce`v`N2vr6rFx&x{9_&mlc$9EdwhOWEoeAvV0^!&Bp2JX`EcilR9-Oi0#t%O!pk; zy?+ofeP4imcwGyCW&@?d$IKe|$CFxyI=|e#t>ZB_;kR>efH^z9x(dz8qLPk%Ai!sU zEO{Z_U9X+>4h#flst#h6G^a(&BUR7H>l^Ai;T2!Pi&fy=K^T4xtQz=n-|~8Rm$s{X z;fQGubszKe)(^BJJB72v@;?PeFqa06omD$`HWFSWOW6+k)c3f}dO`Ibv&oKV$=wXyKKO2grDjSz> zFnVZdxi^eY!vsLl=_l2nH#S~aOBs&XLUO+^BPnMfs91cjnIo~a#?2OiT?i|w1>%;$ z6xSXj0SkKXX?d(fsV0pH(6mDgfxWMm;-1U)kk#ZEYnLkvhku$ad^e}((IS>pq4)Cn zm0)pwgxf6*%W6dH_gj5&sXsY;xdT2Z`ud5^1-S$L3R;>GZjxUrnFD?Yd}gLb)O?{V zV%_z&m^o<00ggKZccm1RNRqwo+2KQ_fPhghI*Bmfg5_ku6h5 zT_9uCLM6=xcN{MrkoO^M@kX*&r;;PSKH>~5)4oM3quKFS4o{Lf*XVlEJCA>hW^NIg zp1SnI=31sh!s}}9zb-s<@$~nvTpV1YcAak>`UV&Z?`mK}9t>Ju=5|!dKwFeN!jOWd zYXm&T{WJL;8J2B3U>AExwT&;95TO5XLTVp?^hDTH&0TlI9(;0NQjpx4>cudI9#CgD+@OLZ2G3<=WxrYIe|i^&D{6)BVVOj^rfbn z*cNqBf|`rr48c&E%2+J-2T}OlOQCBcBv~RAECdUSl7}-mzu(AK7U7#+gYD5Kw9AP} zVvW z50(38St)5~(E@iIT)$|l#*g}DK$GsN<>BcPS%7sfB%kM5b2}7es|@uqbtJCucK#YOLz!z7osE(bw2(n{P5); z8kp?(AzzODyK!Oow>tSP0QE*{T)@syoZ37pQ7iiK@syzy2C{g6Pl2-_sTjjSFlqV< z=zRZD5y<@Mq5hqQmVTXUjl}GNk}nkjwm4$@49EqU+J>+Uly9 z<$TGcC2&g8`5i+nq5F4+Gh3p*UBu0vv6QR77c7I>swSO^S=it9t$7L-EbZuUpm%zi z+YzI(=D&H7K&>8{Y3i*$mHcD-*Gxnw0wmHPEqa$!O$@4PPDZ2g5K0k%Atrbx7BN-% zjzL#AT=PsEL-U!s97DzDh$!pHRYb#){+2M@&w>uukZc2*w{BBT955^$AhKNNda_q!0^YyGjEr72kEx z5@={>ym;>wpf(#MBO`-5i2C&amyJ14oT%XNTE7$)6cU2^<^z-dIqlocoLIUqB0!E9 zf1LS#+{ORidFBhs=gO&CBGht^GYO)lk(vx}fNHt2dp`{1Zun}Gx+7^AGrZ(Z(<^3CL& zqcPYkQykk!#MirbS5Hn;`4Mz*zZ6UUcWO}j?T!;_(Bx)omSNV@IE0g}sZXtzjw4}8 zQut*7vb3iB^+Jn0I9Zh>FQaA4aR3^721gd>4aShr7rZ_levs%}lYLx|myv%kN1pAw z2tM~FifAbmQ6n`2_?`T|MdT`Mvddft1Om%> zfMxWSEkq^@j`%L&wxOhC^(S7IAd{-F1^E}FoxX1eqVJ^j*tF8B;6O{fOnAlH{2a9G zn>%>QnJLi)%9);xN1mU=)`+ag3d2`+g`Iw3ONC;gi}m`%4f)XA-%bo%VN@HNfBj7$ z<5}}b1R{|b)Fl28AZ3aQ&3+A_V#@J^GYOLTLU+N$II3sH#-q{(hb912z*$$9xc?(E-~!aC9t3(hL1it_mvk``l`?z99z@7bGb;ubu9x%^9y z4ET{{b%Vm(MyZlEK){>!!32Vx3gjIdIp+>g|C&Mi4{ik?hKK~=6+g~!x=g5b%K(fZ z{ER(%4XK*{=hjlJ>Mf;ZDd0AEviF7{_m+PLAK;)F*qHV2zL+mw^fmpdp{~P|f?dDW z&9bM@^i3+mVAE1-w8_X>u;8OwXhy5QhXy4hE=`lzT@BvYx@Q9TP99O zC5-fB(+^I8v8yz!}2X$VDj>5BYV9sp%O+FX3jJRxB zWRF~Ig`}AWsygX2kMqB_pdCQm|C5S_O6Q}eAkbvIdCt#S-LWZY&mfiY>!L~UTeLlA zwKg};OdRf%i{f<5Hk#|S_Xm!CGm1_KJOp2={N-I&CIFhITm84ZpbqW2i z@gGywdMy2k(Psah26lMU4n_a3EH(%6gfZ&>rS$(N>CS=lf5Z;|8P7Qx;lF+a@Qwn1 z|KAJ@W@7*SCT-c+T>ozt2NGOp_i)q#Qp_2Vu9k%8bxuw5R}YF6)u{0Q9lL%aZ0GN{ zsb2)AzCJe}A+4eh53W`BpnEkXu6nJOmeV=@qDSUyL z1*lDeEn-!o-)5!JxO^s!V))*4IiO%zS`?)CN%=WLkGJny>>VG|dhO%;r|2w>_SO)&|hrAk*I4xc!6=Vh71G7p_zSbhUDG=DUVFcPG=rt6Tf*NFvL#R!M1wc4@6w z+nLCa7nS8ia|Jd>^Oy93@c87PS3U-1Q-~0rb3-P|El^494zcIvJMK%qn23SLH(f<$ zap9qj(vJWt-<+7K5G+tt8GUo@>=CPgQ$NRJPfoM1;isvk)C(yZ?Ff>S71wzqQGn?gw!Tk$6j%@@;Xkm*KD{6@khwQfD zPL!c9+0o|)2;_Flhn8|nrOa*}0Tl5YZQaimQ}~j?(krrmODfTAN>++^8`tTosJ*AP zl~a-nW#fEWP^75JOOrU++?`fhmh;aX`QY4%g+r+G*|g>fCKQM1bcInDrB=gBA=;jN zo{i|$E3T3hT-ZF6QWAk1kq@VpZKn7Pet@*>DZt=Yi~}i>*uFYpR~y3#la$DhMlV?9 zcXy-^^=f6CPAfIGGxwVa+aA9qsDbVD%8#uqSFLT|YW&>iM2Fog8>pdy2~Us>rrhbX z`Dd|%U*AyX2C<3pA2SP@aO(ZL8$vU6{>Hh9;$$yFeU&-`{{O{&KTdqD&oKhSf+J4A zoJBIA{07oEJFDyPURReC4EWNlh2hC!(;-2n=!gm^A5&R&aetL$}LDxREi}wHDj(h#gIA z2^nFed;9vL7UPfV=Gzw)_6~i)6JC!(vy(;@F?Z-;M4CTm?i5r2lM2P1SDZsu>9Oi` z9y@8d>eVw~k_<2pjtmaje4Od}dcOVn27E1j=V!J}7n;_SI~;wsJ&aji0Y3MzmFtr= zdw~pf`7ni(_t)>f1ue~eV^qq`&zG8){u^3Y$neLXwz0V6?hpFIoa zAFZwjFL6r+eCN5p{?++YiFolrr~y-{q1Oq@YkZUG!Z%))mX>03MEHdEbv`<{_V*S% zX(h=Jsg^bxCo$pg|KM=#=wo>0lqFy&ScA-_QmaZzV|Y~ha4*-7^B770aRBHO%U`5^ z@WL#r&s-x1E=UmUzjO4SP$|(zW_YnEbTJM}Nb8Q1i*Ab~YUl4niHAPMEGbn@LXV3b z=GwUm&22pVu8T1>MioPi;EjPKHBOpG^>O6V@Z)fhx2yK%Y>QS{nBwj${c<7;f(?Fd zYi$Ih?(5gDwHrPc)Z1Jl;fPg?_GYH!3=b}UIWm0bXCx6XlPLxbvwdixKXnO`+(in& z$iX~8Ou0Z>C4S=PWjc&ztJNQc&O_0;mWlBaRenc`Omsc9`9)=k5)J4 z4mf*oqlA3Ln^5jy>uLM&?I{HX7Gyi)itT!`pEz!QUgK`3`pUTXb=u0M5Qeig%RD8{ zL{$}-*z}KqH|I4@=Q}gBt>)TivsP}$RXvE%Ftx4z$AxP3mQOp&=$G!77dH<@1ytl{ zkmK(R=LgJpgzpB4XGw_p2T;#c*U)g;difQ|A<8qZB{yQ!49J{R=-l#QqLhuHjNO6i z%=56R+kui~+?GWi{}$g}F_p+<>WzepYYRA&9#<*O1vKhWHR7{=y%C2JL$q6NiuXC? zXFNr-W@zQ~T&MSKppc533nBF+t-jf(*#DBcX(kH_*rO#WD#cZ0zfNn~m4wdi1PB;N zPD0RQ{LMom-W(EZdcp@kff8m$Ml=Tp2RFAxA)(tI(bdixi(dCFicv3OAvX>dLQGj% zS<}}v`I~|9Iq=^IN~M%g4k}Q&0mver;Rl(DK*aRYkG&fK(*Q6gCjd1;&16}LnIELR zidy&P=4RCn*LbZv`ezz$2M_D2*5B}+EYX;^7CR*QAJK`@_cnV>E@g2b+5em_S` z;r9jjv6asKvriLu@sSX5<u=sAXgzgOpx=-vwbR3a`N26}{+^_y(^qzB-{O4#ZAP(e zd&X-j)zgh}yTA!{OaashZuWed=$sFIQW=F)E=aCGZXu9gFcow4vt|2fPSb4;r-ALr z{2;{QNk&i!I`FT5@g`|^?*itxLgcsHx_c3TBtHOP2f(XqxxtML>|ywD?dKz-pwJa( z1(P5u3ORDER1<~QlDsq^D!NR=3D{9K_$9_o13WI%N!kqC#Ywu_XmWnMwGb>x08i@1 zB18SGf{IRY24wssMhNR3lcvsx4-2RU!1{SSw=>SUlj-?m^VgL5yNGi4gV*xEw!a`S>KDsS}eQw|nM?EB^N zQ04TpnpLM@ea(C2^zXQ1NBzuuqt%|z53>Ytr=oTPvo5o8>6s+{hTaxoOAQ}}uPPJZ zeVY&3y|cm+Fu%|}mphp32H*TIr4B*|{rW#U9R7vbs9pynUX|=YXi7pg=6@BLqx?G0jTp3R7)#*0386 zmwoNxNlS-qOjem9!T1~HrRDbDH&vh!X_V~?R^dQVU-DQGE8tWUv%SX@2hR4uksU@a zNcP^dA3i*}*lSrmtgPXr5@JJ3Tw0QNuggt3JI6MtnEmd@jo5aSPiUmF?cyJue_PH8 zyOudgbr$0cz`68;LJLOe86+yFK8zPCAXN3eNgERF^BB3I>P(I^6$vx*gEC0@`AEe1 z&<0_<(&}Cz z^2bjJg_%Fl=lgmQB@Bs14bC-g1f#n;p()6jmLo}mPsVG|gGRyUK&ObK2 zb=?XH#vg!8=6cT%{?d#t?ozi=|8nSudW&#Aj9VcL9Q_reHvQ=QJ#XS!z-u6`|5iSX zYXD)ZYTRZ4+y2QxGgmGKO?P}oh}~62TZ1gK3sFWw6PNtCV1Rm7AqKduJlP-jorjas z?r~KEaXy8<7zYiAG$Z~+8)E{dH39d6O%jXsM-uIeIeaILft09QsNx1 zQ~?A0xM+z$ARs`&{i!uU0bcUIa{b7YwVt)f07RfCVU=X|r|a)P)-qHU3KINXec##@ z!o(}1Ff2r(z)}OJ3UZa|A7Fc&R{tJ3RYt?889Fu86HvY*KH`qR(16h#N+qJlO#?76 z#pbDlX32w_ezh~q!ZKr4z}LbQP6}xzA3m^TX>l+3t{}*1YEJvwJO6GoL7?=OHP}?t zoSPKP&9#@v8z&2UaijoKQ5l8c{?pIX75=UgAc*pEV4&*)a6_sM1OSHC)zi7OMI^}i z?zq<9fNZQjA8JVz8E9LTK8wvOD%p0C*KtRqmQVD8FmSV%wtWpnt-7JzshojT7fb2& z^9)1CfSQTs>ki!0;Ad3!$64gPOq@|gglAVo+_SE0@&y>R-Gjy7>+-sHTT^85qoips z2^Zuw;PN{bpfcK_oak5!v`AVLueRdc-DOd~Kxhl1&hV-*Yao`)^JI4My<&B~e+)pu zr0aYSQsRK!=F}_xLgaS8`p4XQuLOF*W8`IYpIW;@GhN`B+trPP!?;n~ANR-Kw`5Px z_x?hg!;aFKBK!4iHgoTnU|d=F-u;FRG-mvnOVvZ5y5YM__ozcxL%JH7ON5;XG*_pq zgE^ufinUr`^ZW{KUox()<9sfYHV?~*v&6?2vlif~Z5FHu;4(qu9@gP;%218THtb%mHna z0(#QGo9_c3Vpv~%1^u4X;Sx@7S{9&T3yrQwVqyxR%jHNr0`8RV8S~{j)u;fv4g%E? zakyMT$+$INQgNgjL0kx&)vh*+z6*Hpz`>HnpEBZhcoc>lGTTn@hwO6#w>OXZ@yG11 z(Fs2S0|e#1`~_CXpeUj>d9d+WEH$$%zHS!kSGsSK9k$5QN(jShB&%2&!X>-t<5mKjP zm@oeNKb-EldGh1M8Yck>dvb#lR}~)_o4_x$Z)^L4wjaK5+?}uo!nH0*(dqX5{~Wdd z>6uN&VNcUs&GY0%7K;57gGwm39F47;f|fzU$3U8%c`Kl0B@ip^*~ACcEKtoEHK>%q zLe8anLT|+(6FzCa;=r#Au0JFwsZ1Ri-VlJBmkJ+HY=FJrMU`9^Sv_NY?9l{*VXGZ` z7wu-%E3JR@=l$Iqi}NLMy^F?4vK1%+kDMHgh?^SVVmKW)0q8X`!p1|txHQoJAjg1_ z5!i4@5c#Gx7w+qELlBtddxCAskv_Lz3AWN?kDdbr&OTXX?_dQv+l{m%z5rX_>2UCe zv9^{KJ}~G?-d0Fo*T2VyMnatHQ-i9_McI+HfKyHqYde}+3meNJiJ$fzP_)kYgQEQt z1>By)%#d>vL)-e5by~n3^K$8@8t1}TIFATuhpQnEg>5>$y_#s+P8+8HhAS|A-T*&g zl7`)R++dYI22>LRx-|*!jx5|f)tvS7%2o&R7=5jRUZ;5E#QbTPUX`*znmoCUB|f)76M1W#F8J^H5-D;Q4;$G{da~M)RT}<&RY+#kU z!iIdb3|&ihLfa3V!cz#xqHuGl3tvfcAV#6RW3er|V_F`YVL-R5G+bi9U)_niIcPpK zxd{B!_{gVys2@nHba0?N{~7oh#=mq&8(r-H@jeGNri2AB(6Irv`(l%4q{C>Cd|e5M z%naF;O9M|GB~X0H%nVf*mZK~oN-j%^@MVH7nA%x@0#Mcf;-9V!;3GK{K6&z+eDvzZ zi{`>x#4zdn16z%QMb=h*h?au(>{f%H%MNbT@(MAL$3hn#8FN(Ay9c@$+M_0ttTR&{ z?4611n&nB$M>p}F@YA1bscCtW_~>k%XVM46vE`L>KG$z=$oY_4I8C@6Jdm+gwqMfQ zTnyjpZS&ZPVzW^M+n%|s-jU^TSoXLHz>Li~QtNeS%N%wKJl(C|NkxsLM_FHe{E2&( zCEm*0u)X=qZ4LalSrnUEep;a+7j9q%TtXqZ6RDYWD&LD@ix!!lp;(v9~bu-eS5gid_S6bqj2(%<|-oQU5^CK>mwHUi9X2V0=mejO0wxym|) z<&AQ=lMNfHV4;|{Y9-`P2tl41>9CcWjR~A!0RyBRr?l#btuw#4U=@8uew3#H4bNHo znKDjR7ik^c`4z(KXP|)Q5HNJLm!Y7TFd(Po;+Gy*HfrB1Z%X#jh8}}9fX*)tBR^W~ zl(`Wqg;mSnJ@??oUJK&5chDgL(J-75CjY02AacQX?dvfG<2ja-Gwe!lt}fmQ-o1{n z5m!?in_$!-j=uDu+x{8^a=cAiqWyB!ESHMziDYMeV`0gZW5oG;ZJhnlL%w-{042=V zhKCGD<1aE3w9Ny&*sA$Q4I}~FYW&Y$m3SGx5SpU;@{$UFHcpi)D0*(miBc0obVX~e zY_o4zck2*5&<^g$lL5nn+_Z8)I*_X&eoM%`Exn2k#P^aPQ1dJ|sJWM_s5F?-5bTY| z4!vzILdTBcac=j?Xllh4>!zY@Hd8{Ce;I;l9{{ zDC?Tu_U?_6@5ulW*wo*feZ^kP6m}>)=YDMinNEj26P@&OY=!&k?YCsBcshKC8F%&j zfh|gsqT3w$EH6DSrrBw_0|?DC5^P*@Njmh8wj<4F1oGbA-ZFzfgGKGRn!WsBt_H-AL->*Uw1_6=G+xY#?n*~-c*FNXr2jS0bJK=i|9^CjS08V6n|4pku|u~ab);80@% zz6~K@4)6oa)m^A_?x;kZZjS_lcX3&Fnl6^DC}b${xFP*_vvx{#s=!;OQ%Td`ZF#=rh`9cmat_ zIIeN0%ZpUHS`Sxm(aGe|&vFP=7Rlo7)fqE6P}*E8dLMM z9vvI}KU1@6e9XO?I1mWl4el%PfM} zw@Sj^n7@m7@Hg`kRyljJFF(YSsT#JKR2czo=+!tONImJfz{Cx-AK>HsozhT3@=BePS>ES>ZO}d1q!>q?eFpIKfg}& z@5V0(l@0@<-K?HxB`zRggoke@BvNwVqp@q?bGEAR9#Fx>&xP;hN;j zc=V&0pSWi$5@Rl77k@ygobbt7G#F;d=7%RkMsNSIm%3zY_V@%lRLXtcjiy(UY?_c?kuxS72W66(mF zzw7XUe>s6M^l)?1_t{)1&K?e=_~(d%KRt|}r0)gSFU4T#e-?XIpbyX#Z0}m>2p)sv zcfuSB_}KvVm+A9^UBw^&MvIP&yJO>fm5&y!*9jfh8D}^S5PNXHn~mkm*9RgWZY9g? z?i0@-BXm1oQfR#x%$3kc%8zVpr3;-1(feV39Dn^y#f8*Qpjlj{>|a%b8mlHJyG;HU z3m_|xpi6Whw%K|p^Tu`J{qBi!7uQ|se#>V%o>|yfjHu2~f4_uAg71>Xc?}jS5-K+N zi=oSG%`&7!P~0!8G(YTnc6rjmCzwh*5S}QNpPyet%1LlVWlj+y5t2*b9(mnRx)gTu z!cBBF!W4vsg;Fg36CI|r=(6+5UE1CHK(4vbm;P5;2)wA zaWP9xPtD%rP=LnHxV&#SG81y!tXI!Lt^d~jrexjm>;z5f0z^0{SthE6uDa1XBH0|< zb_uUu*s}No%|Ac$6G%zlEo6i&00AAv%=2P57#1ShcJLnE`TP}#AM}i__NhA;q&GU# z;6V6C-9fM*Sb&Exe0B=bYkKDlakeh^C4OSmjCQwjgu|4}OyL2H9;AN>y@m&T za?J$*R<1@13S;KYyF_?6p&btEMuGrpX{Ja>69esXl}Uu@#itvjver87Y3Cao^+5;oTU0`=U)(; zpMca9c}gZX6FtU7qK7;a(W=8Vx%!?Vq;-%NQ^yB5ec&I^#WL^SAyCWvz7xD(I&g{H ztOiUtpG+_^Ny1UbGrlz_6tdnu%7#?6-BR-pZI%~IObDEa=ASPz$!&jKEt$M^1Ul!s zQX{O#^p#4PZ<~4Wgm+lYjhIQ86GcQ8*MVXONtASj_(yksFzKU4b&&&Of6-Ipg_@Jb z%~zkBh{$}P4v7RwrX7o&pQ$)W+yZbU^NgKbm9awP1qd{l11eGC56_{7Nz#~o9HG

    n2Ii>l$4Xh{A0jQ{+$s4f<5)k{L*8T^O{@q7;IF{6UaX{5&Q=3+|Y45R$(#D(zm>eAX^2qszES2@=on13l!Ll5Ldr4T3%7gw;7Snv*8!oBtfp z4jDU&l})|06~PrDsm`Rm&5HkuTwzca27>#WlA!*(zMR{XPrBH+mpkP!{cnnVA>_;$ zbXtsXx!WrB=>Uby^FFr++jDi59OSa%XTYKJZMzuI5!KAY8d39DDnRaWU?P4l$}3PV`;eU3414L9w(A3L}h_|FkJ)0xr`np_xl z?Tg^pf6#WPL0}R)`7aKPi+a25EMT-uwFLB;iHpyc&OLOl_r^p(-weV#AM$+y8JRxE z^fRmoGc(T=my|@}h8whEk-S{mN2Bm}a-&tj{R)LsQyj`b(Hh1|esV95-?ps9_X?qh zIQ<5U=jB}S9iz*wj353v%9;wxjFLL#&WH)zmnIXxi4>D9np1y%_MBYRhQ1Jj0@TUQ zP+$5OLlE~~v{QXx=sHthrm!aguQ;U5ZKnF|3={9-!+kLOtGT%c$0ul0nBY8jopE9bJ4XE@yr0%uplHgV1QTX&r-Ppez!jHMoZ~AKnBKDKS5mWTfnHJ(r*R4f6@Fowfu{`mt+HeC z&`7$jkVSCuaQW%yRjssHP9R z7P6%gEHv)Lzp4Gr1EMK^M{BPk(9~l1Z5N#c)Wd@6x*T)Q81=%J$?q``gcaJUq`xIF z^D{olmv6BL5=Bk*5zx8j53!f1YMEZ8hA|QM0Ggtgim`Nfv&*!?j%J050xlsS%>1qn z7|wNI0R5aXaafIHPLN00eWimm{TVJlNWixNX~&+sT*}o%*hK!fMGlnqb(?_S<74*e#A9ON zHLN^nTPxn3CPYPd1%B3BsnY23x87v&gY)^sJxSfb5kdyPRF#HNvC}_jl;ih-0Cn=8 zV3(rY+g7{(e1k%l=Kl@L@}CDO>iGWwsR5uXluHplmwo0;E?>#FoRcOu>jlt~!XO<* z&4+Xyx>X-uy+wi8Ua87GlIkQ%t1DDh5 z#i*!ft49|u{L5ojkg`Dp^O7fn=;seI+fDfRA$Pc_w}rpVDD$=l&#OQI4|3VDN4xTN-(lB&87X^az5B1C z+w&V-l`~ms!>prP*V?0TZlT9dcKlWeu@YlgY}}9+f0R{5tJk^J5BKOE;r-bY6kVR7 z{99R;A2(?Oa9dzRUa4Go01L)|gm(A?*wD9(K-WjXD~G;-kYvjKacbx5wCkYPKg*8+ zh)(rJ%zfD49Qd>u#{*=2=N5>ou z{YE>Xct_@*L;uR=*I_ik%O z*-JrzOw2?`%$|JQTgdB4x+2V{{nzno1?;A*PR)JMJI+3Ln279b-!1zqGQq_jhyBfF z{d*}l!R*oJqYfk(ZT6v$e6ikM+6a~hT}fM1%s0jGCvq+4jQ+IGt~(4Fd~>X%P8L%+ z&wcwO9gQTQWOiT5m^LZKQRz<8mt(t@I&`+Q1Sv;{v*8fMl(y^Qa1n~A>~Di?z6UOt zG>{lcOHYpnl^e@ro~4+?pFn`9V1$VE8bSz##-d>0hs`QPQ6LqLVnN1E^PSc8q90i zcQIrQv*`DaRAW&dHJ@8B@Ug#^k(=?OsJ0OBT|4%+bJ-~nIPS~pd_E~D(anC|c)dT+ z%-r%WDa_hfl|j;VM;jsqYP^7MtFAP7^Z6SAfS__%c-95Fgn>gziytaGS1@kF=d>aR z(609vxM0Vo=K$ zJrJV~oo?yl&q|rpSHi-dGdvU(Z9S#$@vp)9=XSLsl2!QrMDqy)uIa$WRjFau8DItm zDt$6ji{9i7HwPV!{BJF;Pq$ax>_?dOpSH_o-2g6W$n7E=U8-)0H3MlI$YJC=5uW&W z0#R$P+mktwBg0y)Q9J;A5TC1J({Ch*&+1)O0dU>N>x8~kF~Q^SMhixDlqopoA7%$ z$HAWkdV5KaqwEseWixNU;X$&pGUKKI`aZkkftneZY8Dv)q(7sKjnLPY71Y*?s3G^Z zH90ZSE|N{S`lP%jJUEpQx1J%xcjQ=CUY;p!Ra5(Icki0^r3c*t*)mn4OUSwaQafNq z-z5ncz}R+zWGkJc(bEt>ka|owNMxX~~ z+e4*;SW(mW^iX`T#*p+7CuS!a1)v|FwginD>(~|H>La_uKyofq?(bNH>acz*xtO&# zkVoF_RfQ%?^W5YUEms9o=e@UAK-sDXbibQ%79CW-DSRhYH*bH;uzv~Mvd{sQxCG6O zKmpczP(X5WGGMmC15-=gY8nxQK8*m&0A*#RIxHea!NTczYeiV(xCR$@fX+Lq+z!^7 za^FM5(bQ;UCA=9yGD}4(X!R4_Wq09);GL$NydslMzJg^g2{0uvUaV#kty=f}Tn10l zxT)O=Y+o(4mtgZD!}5#0W%8m;p!rn+_FKgJ+NJ5~dsfzGDTHPcaht#furpj!PX}Az zqM#`GN8+|(>X;w|F}vt^z8o67*$i*61-Vpg92`DiHBq!r$y7rKdH~V`<;P>IW5>bF z6iHu+&$!SSkg2c$01*r{hc zVFP4!bQXF+d#LYFd+7P|P8P?;f(lrdxtY>vfw(Tl-;)!-`$v$iUq>yS$?tV}h5#;@@#+<+*P59!OcVhZR;H%lyUmS^Avn%IB%4of# zwFH3J;MM_^+i&drR9#$=j&Yj+ck@!vn*(HqzFs+=_7aIb_LZRXI+A|&MVN>{@|G7D z=ke3hX?+yNU+d2DSNynN1Jp3{88%S-icn76oVb%Yu^(W+`_vzDlC%i{_!dam1`6a$ zxflj~)^4c`rl#Y4rk1b__rw8k4X*){dzccL0c;y+0leV>Zvm58d2dBXk}Ct==T3fM zoABlhd$4xZ;yD44q!U#O3@$ilWW?O~dDyCRV<7!rjj_@W3_5x>w)#>VC?8@fGk7A( zD!|)&3(YqHgVW6)-GQRs)o~9rXL9$xf_6_c0{bFHS&vOYSTFu@B{_l3@_3~y1;9>D zJ;m?EksH3|oj~WN@dVL&&tuZiB+2gp*aX5L+8RLu<>{1(2k^lMsJG4@&zd2*^c6j+vSBzIye1J5mfn^Hbma43l;?!R;w98l=IeHdQNm^Z1Yo&$$)1 zzn&sz)J=3&Ur|(Rt-o3hEuHn2L9wm5AQiJlf%6+w^{;1G^mH2*1+L&ZKOOsf6#)rB zSE!|e1kl0z_KpPDXP4rETckz9GQC3oda>>X49@m@ITHnQa(kZ=&3IX>9xn6}hlv$* z&!U1R75_kV^V1Z*%k{NBV^5g6>jVLSDvEEfyz`dG`l=v@DbDvfn}R3paMN~uXLqNw zfnbw!aM^2JMD8jy3ycqub`Z0DN#ZkC*B^K&mp*@V{=6y<_=)Jn7e|1ND!Bte$!5w{ zP~eG(S=Dr0;+*I3w>&I{aTOKyZrwY@uiyIofoI}1-nKf%Kt7!VRx^`M_Q{slCU)|nwcEcmf~ z8((kqa+SWA=LPz+f>!l1mGPOrWNwu9lV_~i?uU_oWWuU_l=2LgEwa^);Gq#}toP0! z6M3>o3!-D5$w=y#8pQAKU*~0I4x!}(BJQ=zAX@>EU0$WL@cLFKe}@65FIEy@e4zPl zI9a;3&|uGUv7LA!T&fdkc=H9FSaJ1W`1#Q8nX_sQQ185dA+=&PH?t`K(%cdme={k_ zseRhwBIo9e*6s!!;>33)9tdGh`leDnL8l@{$rKuj!_>;kscQ?_)4yOi^z{jxBitS) z|4snmHhtfElDF%;gF)hc)9I(@QmhxHs@79C=A!Q^iab32%>t?Vz|w*l&?Jy z@A^}BS}$-)i*J~Yi(y(tjvrb&@O~X|;4R&V7}l2`m<)P@9XFjCi{2Pkhn7#{#Lkiu zCd^TFx-wf9M-dAp(hqpj555~L-7A*x6C@`aajid-eGc^e&|%X+)=x>TkjV)m1#&9Q z!s=P*eiIGE%cAvgx8o1+$-BL?Sy|;(2ALVftSKHhTgitlWbPMNtY$a!-Ysp4U6VB* zxbg0~yA_V4SJgjcD(3oHVFP&HvHbLwV2>=;!NCb$3p;gb9rx<5)}v7gpF3j>bD*CJ z@`QTuUT*sC*fjA*i=2#La_il3tJb+e(MOSn`K+s9+c?1-;Uq{wfMTNgI1|9{Q+iy^1_HU zQifMgl-HMxONOYy0?kSM;IX6Ld3$NFX6(tyXLX$3>ukG*paysgp^6a#W750#IeN%boAUM8AjlYAXh_Iz6p!UDzjy9(Ke->UHOm`^SZoD%WceVF zN9`AQlpFN;?p8UM;x6G9g6Xp~1T1lM@AJDQQLJjq&`TSrqk1))agfG0l=+l$j&d9a zf6tB}LkF2&9%zRC<<-U45>ra^R-gO1t!2(IT$ag{qobbqo7O zmZaWtFiU=S(8O zhRt#0V!QXuw`j7j4-nZxAP%rQK`}b>t;z5#pPiA9u7Yp7g?#Spo_{jOpSwJ(l|NN< z2R#aMZ>?^xXN4gW5bcbq0@lzJB_iX{U>@09vvWSvWdiUo(X)Lg-J(Dbl_?{l6;GoPhPwrS2tx{=7_pl2+?XgnsD>6CeP;a?UCe5Bm zkUv?HiyI8{>Is@JXcR0c6xh}33r%fhG4T9;>tqovSZNOVS=rjk+1Zs|T4`IH$2+pu zEhYyDZf{|{eaaqxN2rn@X7#Q%RLhAy|HP`@)*kR*3p=d@c_ha!t$w(??a0pijS4y` zfvTt(SmhyL?w0J60DjUKO}^>oOq`|wd@Z$Y_{iF203MS2B9b{p&?kMpAWbxOYw|o? zx&x^D9*>%> zl5@LCqB^FEeXD#FKW9q%{0Xu|1I`Y6@|B!CV}pkUFY^lvS9M|6q!Z<)v1wGwq+1eW zYsbTi(44$HRDeP5?d!w3OplNEA1&0dJQwHxwvAzmi6r$}9u45HD&G#$8br;Xs)1j}Mk!Qbv{=KkSFwm9 zuP2*{?^lpXc@Jby=0m-vyIk&Yc3qvGl?FS8lso1plk(7EE3lgU%$Pg5u1t=o*UZ@q z5&HM4 zRS*YKqQ4>Jdr-NO?^fyVHV5>&efinRWaWP#X1~ zRbK>v2tL4$=5>4ABZX{yr`emo7@s0a96N_P=tfild%&6$ ztb|&BE8z;tC&?T-1tsTNLo+IuD{JKsJKqYARw8*AfezdD_IBNIH}&y=&|-E$0XpzC zzf~Z~f;qwclj36( zMr|>HpPu=0;}kwB_fgOLv+Ja#MLSPxR+bLUxnT?T@IfAxGhK{U+_y9j6n zarxh3n|el)J^Bi|=S>4Rb<0rcUr9gsf*;i*&qphE-1T~8Pssdgl*{J2PZhBMPhj6+ zYpKKiFzmZI2;auQhx|36=~rblW!@L4lpkFAyFkU|Gq`E~LP{)L0$P#shfmmTk78tW z^!bYyqn->!ZQ%U(tTOMzAn5XV=$L zCM6|-M*7a>j!={uAk$ZTJuon^B&^==vGk#3KvYeqM9<$>4iU)X3unfFh?8BcBZZ}= z0LV}G3m&n#Zx?%7=&0LUiZfpHeC)=d?UQ@KzsJ+;vWGjF405P2A4z2CMczkJ<_a+s zq*S!0I34#Muh4zse9T)(DGWHhk#)k4cAhI5n?^A3kpg#%n0Q5c#oE?IOGvsqhL*ZQ z{Y`f7z(Bse6vXdaF?Mcu6cYV|PUh>I3oSY?3^S*};JK5{&&OzbT_{q3aTTRM^uGHP zv22)fPEl($%m~j_e&AmA zv@<1Jd06&o{k@^*ZRuEBbL1Us!>7}X72)WERD*F2RdO#!4 ziqZ&O2HrY|%Ma)r(V?`B*sE1R0xoGAzlYh*-!r4E~YYQF(IN`Xb;+larTc z07$7vaEmX%I|ZEgOlJsRVp;7($6O8oaXf6k$fUq1rEpF*FuOK>cOK|w8Lml!Og-eQ z;G09g*7?B8V@v;GhNG6Bmgr>2@$`dMTLl}NVhZxo<$p4SDUeZ$BcSAR%%{*Id5u%$ zbU6?wT9ulHq$QLe9;-4yz-tl{%ZJ`cLX-Oie3WokLP%IQ)Zga36q>o&MIlBPTT~u& zenqZYzqfgP)ad~s%r-r4|E3N-;a=o!dC-p$pjC-`FiEoQxzzHl76P$_+ZDJ`mF4eG|fkuKEH7^6W|~D#Xc2 zBlo5jW3=XWxIp`+N}un>Gcheaq<^N$y13=kN58uDCHEb6%fn!5i7ueK0DO3dmv`5>6k?{C1l zNY%9w#P{|>leFrx@)?V#;3IRUk-^i5$N9S;_uE#`61;_Lz?U}Jqs#6_G6SIGyJrEL zADr|#EG#URjy>c${JDBM*8q~OJ3-nCKw5SY?c(6&A??-9u0BL%W@C$7 z^$9Uf54}(3+&??CT%ijscrblRNSO6ah+Hag3LJ*Hqu;Me@5bxCcwgfz6ippvKDm+O zdx$$HV9)!~+nOd9{X$;nhf4e%KAH%*e&53=syW?CZ;T)udXOl%Z+=hc%iHSGwYM)5 z2AUYxJ<-%`HyK$tImr}0p#-$pj=@Qcf`VlCi=9cWm1TedijzR1gJ4$EwMo4v8cGX9b{z9YG+ADC7o7K zTQbim-GSI#*D2Oott1Z*0l;ELScNdMu_=D>dDgc}^my-UT^$8Y4+9?`Na#jszVd7b z84?;{M+it;gG;-TYYOujJCn@#OQ(pP{V67N-d-{0!qSLsbx(HRY2I~`q35RZ@`F(N zfCb;glKyk6p^*_}FwG?l(kwTbI7q!U!U}5{+>~WLEtfl&Jkr=h7*|<&l9H2m2=mDs z>3$_-x?12%edck@!wK~0Lq3XAGoR>h5FnEU^#7Af}5>!6H(*SnErG z1W_b~nFGjX>l0rvM?B@Vo#JI-o{gzL*~O^kAPv>JnWtOf(==P8EKU3(%)LZnI+S>G-oRQau=6PrN%*@O{9}9)z@hhdyH_J-u>fQb* z7;y;+D7EQ6WW+sAb=N!Jot9dWwp>J=`b$qQM`=Q-OAy~p@30SH2%xp7yK)O+JaPM> zh+!{h=f|MeiuYA7p&l1m-GeXwp;j!Q%>ih!0pDC2klug`d>E1DlZdMr=0c;3jQ7XZ z{&cH9`R+Rh1e8AD8RpU(hH$}1*uFK@_1*b~a|l|h28t5f_3!czta`A5w$wZ4x{Epr zrTO5yK-7*70n8Pbl+LJrV;ld~q+8xYdV-lkm6=zmd(bg1vOLx&j4@*BzQU(T>Z+=d z!h7GpyUaZNltyS*clFg`o0s9I^rBbM_wOWCv_8Vzxc*@=8YESWRwT4pA@=hh@2B)W zZI+tXuU;{TD#$luvPx%tMk$@}d$HN?hkQee?aZy7!JlimASL{u$iEG&kBUZt$dav;lx`-s@=2kPs(KL64m3MNl`jnT)?#mXn`2i4X>P7jVw?Mru zB!$56(9*oB@ewmf+xPiI!rYBVR_y5&s3r@80vIEhgk9+q#Sl?LU^tTJLSaI7_s)MA zl5gtyIonR9GrI^L-*e%Fr=GoN(po`(@;bZ)O)9!H`+7aZXS!9?bJFtBE>%5PR)V8q z3R*(+Y|+LwgfJ_$BK?OW1~(h6I+|7MAF8~jG_tvtq>;o3Z1bz4u0^dz{D#?AO+$XA zhP7-Atwy*191U=}3@4KP2n%Frz`{C?NF!JdF=Q7(7yERrrF8C3jOG{skj!Dx(ehq0 z$X~D*ym537+cw|n$Ytd%x>je94Gh?Kb{5V0ennP#Cp{E`>yJ6^v(g#<+axOvIKe3? z6l-g1s4m?}?VBeIpoyA~j}Kt$wO(DK5PIB(b4bsWubm+7m>NlMkVUUMeeAa+yN~0A z5jh9f#(Tz6-GeBG(yr-y$cEBqhh-1Ev7T7%Uvj=~G9q>g`hJl;<}M}d&9bXW_%%0o zc+SgdviX;GSzQ#SYi0f#8bzO%Rk<3L65lVSk*O^?nSjS=!s2uU6J^G;GjXiX)X3)w zQhZVbSuO{C;V4o?UD-g2rMY%o;4L!y+~cdrWL(yBRwC1c*oKs^I1vT#jbK z|7wjS+k8U6%E+=&A%Ao<9~o-?gFZ2`k9#_=bw9r1O#0MsWAw-rK$6@-lJ@*Qy|$(i zIAij@Wx7v&C%M7z1wj~i{wE|Qqql$l-z+KrFtV&h1pH5A%m2opbR*s#_OGTFk022B zdHU)09L711s_D^4^LhPrUb#{dxhta8K1Y(K-S$!>(w37?9L_3Y-_5S`6D?{L7Phx# z#AK(>Mn1G0=Y?`z6E%DLzaI`n)SR;hz5j^N;D>fB z^M+Cr{<8p_y!+RVDIIv2|1A91YvKN7bkzG5|9(xg;fNCOpRe)X*CDn2$9nuwkvTt* zKKzfv(%4J=x7X(C&#F4jlid>xq-cuGriWs8ko=&%~UQw zWl=@A@jlDV-{(3#ab0e?V{j))97&eYk*Ru;81r`HyLay#j1GU)%DQpx2u`qJ8~M-o zLs0i>A@QyDzJF!1Po1|fK1g#ngp~LAEre)Ju%zUJpwhe7166X4vzn>=ep{jVX2cld z?gTBg6^ZRxQ!kp@w6HIhW>a@ikWOTacMrTden`SO_4QAzy)Sr35WjK!wSpN{_2|aIj}9Y4Y(nkC8;ktJkmn7eM*;d7T$-&i-+TCFO}kHWlZ) zOqSr^J#j!OLdnu%0)vT-X!Z(iEw2{q5I*))X>~r!Ga+Gtb?OffJ%vd4H~4A@I*qeX zPU|6|L+G5E$J|h>4%GjZL(>eJ=f}Arzx&@cCkul`4}7Q8Qx(&{bvZ~QDKaEl^?ED% z(yYxR$%&ps$0w#ccpBgXPki?_*hlD>pPLu^a$iV7PJQh#w-GahKeTT29TD#&nNCG? zX0-0$<#-I<3-vFWlxwTTBq#g4oY=v`suNx~$dQwEwW9fV zp|IzB{e}2CFsq+sy6PrOXxr`cHB3?TwN!sCH!FXPm?9**p%|M>EldM;%7kdF9ZvBf zqN}riYAe zh+pJ{SU5NeKM-IU!H^`RVx9MheW5vCzBR@&=3qZun+^A_dld(jh>H43+?w19}e6Tqm3B#yf=b8;ZpKG zpcHc^M_@zu*m7j5lxvOe-5lAN*ei5Mlx}0iueXE_tK-}dsR7wH{ZzHV;Sz*(4Nbq^ zO0|u=x>XTizaSE`w`%=-A<@o*;`?H6Z8O;)7XRqbJE#W_53Ic3L@zDsr36Y9=Taki ze+RIws0ktSG3dmK-f-8-rY~5ssBTey)~mlY==qbN-f$CX$QiL%dcymJ!3u#;5s<#q zm<>#_XYYyNX3d3H2o@oHS*Qx`77;%gq?6uiq4?RWs;D4ylKAb6rcZdv0R!T+4)BU^ z2?q}j8)brV-FClwa~ke+C55WuK^oLZCP_=4L5hLicxMqXsm4#Nz0)HI6$;*aOR_d7 zz0|XT4B1&5Jkm>rXlE^qcuO3!&X?t3IoF)}zQv_z6NMFbv}4I{zdGNWF8cPZE#0A+ z#XideaW}N%;!%0QrSBVbf6q@}U9#dDctUBek{Qf2rj zTXwM{`4iH7{QeJov~1n${GxZ9T{kU>xX17oYSY#@SnR9E50)dZ;cFY;UtXT7N*+AQ zL<3tNv7HAMzrxueuQ$n^xuu3q?}2}(^(eL4qt1}e?lVXqG{X7IJki;J-V3IK3ac6lU!VpG@^(n5GeN;v(&e{0MJ^O`U4gL1Q+Ar+ zFkq1?vGtX9?{Vpb1k7|3$Wnc3_rl`@uJRIZ(tO`FehnI0CU6;&V6v_HxeOYT zTk8XGhrhmeUj>kV_d@s5w%0iYS(5`+V75n`!%GjN2_Qr7&XQ6D+`jKATUjAsn-eQP zf1vIKllxL<#^OX?tk`F4e%V4C+awo}k0IDrE67dO1`w&%2qhB9Wr+MgfUi zI6+pr_?A*BTSFl;KoGGw3rSLd))?D^;PRoJ?fo(9^}UZeM;l4E5y_cQr8l2x@onDI z57GI=zBso`P9qqnBk(CMMS{2t?uGn~NPzfBb9{?CsM-y-n6|)tBFU}}gH}F#IpuZ_ zN29Q`2oSLTc)#h$^j;`EGSW$5)5@!VeMA94x2>tCMo96RiRuOF84;Z2O~inPx4nZv zJm~J`90~IIk!eh4XJ<^y>+eHrzK0T$_oJeDyLeFs4D0^7=XWT8WXIbaH#n=+ZjAKH zAMz#Gm>KEW{MYc#%puxox?z{NG=iNOmA&~*0$lkxU6sG9QZ2wp~w%wtP4_djsP0OJLtBDvrHyeOhf!(F=5H*v2#UCxf*%J0V zbNYONBo+6Ty9A(Bg0!0P2C=j|>o8WolBh=itrDhr;!lU@^EQ<=z-y0?IGj^fKe#d2 zLy7Dn<`b;PRD(ZpGLBz33CM;Ms0FQ;$XS8#0Pk}WVa`UN3U%aZCb^lqF=gI3eTm2R zmH#WSJo3>5k|aoGa`P<=P{&yP%_b_tUmfkOTso=AAU8FGV+(Ki`w+ zG;(OmPSgh0thsM3xWSalXXm6K%WK~R_rz^pBR+*~F#@LE)!bMKWI~FNHe^>j7S@9= zVVfBH9nD=;aiXv3C;DkQGhOo4DJg1TUy62AJ7JGrN`S$bPv{Eo-XQgVa(ujaLa?tn zsbkS9@Bc@ggDSkNK(10;uL@XWN$OKFW3})V$7Ce(Zviv%RGc`@&dzayxfu5oKJ$b8 z1kl!6;Hfod?=FYZx$nkFh7wGL@4aFC44sEg{r(|9<;Ipn6^*W4IM@^!PF#Qk5vGaB z?x{LYbKEpe=p00pG#BVx9CG2|;T_%FfsQl0#|(MG8R}yIsCjsio0B80bN9I#Vg^4J zm_cxvUFv;xlgk`0prwQU$uI%W{ z&E}h#O!#?9;v|eZcAYsw+1(0p@nJkja!@tS7$$zlQ`?f*P898^UYqTdiZb~O+iDbE zxZjqhvD|Jc5-xq`JHU(-{hQ`~y`vlxi807j#`cWvNYKTyu`|HMw-rZn#tA_Rx?bG# z@nrtm`4(l~d}hrym&pysWpgQ_?7A6G8teE_S@IKpX^5t^B~jMr-$u#AS)Zx@wH+7@ zzrZI>unQNViG+yEQ>N`98%#?;*UAgJGC{z=?jzeLqP9GXR)&kfIy164)9oBq-706rjR8Q3(tB>hcv((w2f} z8OxDvm*=T8Bl~V0>&|U9Kih47KAy}K1uU~AYUBoY5D4)3AdsxVP%Qlahg39n61SD4NHKj; z%gZpL#o9-LQ&i@p7AYFN7?31mfnL}Pv}QhOTY`!H4?f&c-FjQmSm3?jU)+1RgOR3C zbwB~(^m~+&!pqbwy&92h>cl4z%vprMSj3q7>wxVXj+=v6ma6t#b+L!~+7^Y^#kU4$HKRaA}L}smJE&HD0 z*i*P3F-~y$q5Lk9>m_FVsi8_W(1jB@o5gv8oXF@xfyrrghNQMb8|}ZiBv7jJtnQ|Z zs%r=1+UsWzlPakU^WA4+JJDMy^}BPKXh=RLE&2$h=o2g!&`er2U177X!e!i`{W+Wc zDRdF_W{kYTw)aPNA6{sGudE7>_(%v>Yg)Y}-z$a8%e4C-HA)f}O*{+A-_ZyR$o;~UxY?`nHEE#=%GTnUDk1n^u{c6UG`fR=RZeU-#XAxMnZDxcC=H-*W#TW_zrxRdy z0t2dS?l7-fyFnloW3?JUF+4xt^G$upoG5-{n$yx^V(Y;2j2!fCfcRzaWAz84evX-1nXNd#wte4RiCr z(&ylint*zo7EFC!KQ77(^h!>*Qno_14w$5s5i`D*L*krQ>n|kIb{bA0OfefR_!>#c{g;$xn5Iu(ktoA zb{o;q@WKL_n@wQ3@C19P$AwYJMxwep%c$Dj1cmIqWHkl=K{78YZ-^?lBt)bTJV-kl z{eZS*DN2-QB~e}RAKN7<#MWA@)57V(Yb{7f`Jn9ow~w03p(U;lpE(}@r*e^TKR-Qn}3E=ODWbc zTritT<)^!q@^^#M?g3r=&V>$FkN15l6sLedJ2`@?uwi_%F9)#EW>4;d!c518Pxjz% z09fi+CJgn!Jw1?jg+mgPliIBWmIhcjkN<=%KXc)5;MT{=9rpYCLkqWGL)PHT#8!?Q zjFqRJA2gmF)JdX?T;VC1EZ(MPdK8k$J`6=W^IbTSRuV%%97T!lMw8Si1SbMXLPg0n zihN!(4NVdTJ~f$G>gZv<$?)+S8fX9R!>s-YI! z&cE8deHRwHo_H1d5~W$td1AN6o76Kw43)YeXE2RMoJ&zh@%5oo;~!s8Lw0Iw5$hua z>&{8EstDrS1xed)^2cwkzs_~r12l#3+_NKc&LDo zvZ?QUkZU85o|cVB$@yZye+9>s(4i{_5JRLXtaXPLM zr6Q8yH*@@3N=vR8CFlg>?t*Ba`t=E(STs~#p;}JJMz5SW?+xMEH?6W2H9HW;DqcSJ2(X}pAB+d#2PX#pk9`=5#x$)@*>85ykMF8XXx09` z&xIgr*U0L?JLMO-UgNEHFG;Esaeu!Ib}TsTD8`l<&Bw8L`Or2|TO`(VLri8?D%_kx z3lDfu4}RBeUK2ZDBnKQG5#kyg6I!=m)F&@Sb)E#Cw*i{ua!FUS6UnU3$t+RL=Px6H ze{J~)&o>ZH=~oCyrfs=-GcVkVhho$SO{Me@s!XoQ-B#Fr2M$q=9lWEabStgDWli;$ z2_ykYtax;}^3r2V1L3V**s(S`ST%uIs)oOU1Tbe3JOH;+;3ywv;bGMViU8D|S^Tq| z*~sPn-#3oH!Zv^R1s{UUkk(D#%j~9_#q0#7P>G>pjO~g*E8MP}EZ>>?6VgQw!Z`ad zbwBZ0AU5%!W9QT^#P41#VPB$_QlHQm91BYCDwxXRmJBON4d%cxT5lwS)Y9Fvn@Y5g z;XFK?T?GSAQ+9ubd^(}iG@$ay?yNw~9S(bR;YH~dvw!SiP#P6SB1)i;$G~lPaHYjd zm6VRF(f5HsZh$NV%Ff3nZKu?F9NLk5asH9|Kep|G!fUeydnK>zRoO)jk@EAGF`V&L zt-_gqQe_Qdo32c4U(^~sHAaF6BHK2QNzi-W#4)3EZHyV6K>fq-;d{)qu(0y!!#QixuC;Z z`;6sC_ckC$|Jgc|dQkmxBNPe3HcS#8z9)GL8-J7CvH-~@W8-|sclNo)GLb|SE6;_J zE`qoN85EuYPYvLs;<3+tDLJf%B|Ag+GD;^0i$z@A_zQ-N@po)SeRtC5@PWj zgT&2tCdkmCrNNl*SGYi*{kDYa)((kOt4nrx9r1O1i(x(~hRRE+YCt^k_Xg1To;m#Y zEhKb3y5g%>q`qN?O%&5GcCoXKFgNDkaOHg0fFOFw{~#3{1WX&IgciD2zf*n{m2a(8d}}K^=^Dhir>1W4u83n zzQmiKap2W%8H^6BG(WBwNh*^v2Mx8TQ|rzQ0J2!3`!)L-gdZz?=uhZC=>OhZWoz>h zKn9qU3-uD3t9g5i18xm)#XDBaOEbRAkp}Qlx73+Ty;GA;62dZZrFy(_*Bkb>@%G)P zZlr|nP~ZU4JaxkbITuiQzt>!esw}8kltRZwIN`-FXs91V^!M9CrlQ4@Wu83dZ)6au zf2Su_a+W)fD9e-jQC}?`D*lk^v*1=m+eFy4_Bp9=YyCXpLk9)}#}l0UOGq`=cX_GE z51vv4UNh?WUb7e}+m^S`P5Bme!J#)&MI?hE!A~?I>~53oNR+f}$U*>Xeypzm=L7w95S8I956 zs;~Kx^Cc34JXPSFEH7iuNH=;}`^PWl7fDhilP||m=@$wU%zp%3dT$*Ag1C?FH#Zg8 zaNS~LnFxUpItLTguq-0zU>O)gszfT)*skOeT3TIUW66bnl;^cyTb zS5afB-_v2&*PbBVjGoHPrGe@yDh_&p?#o&E!4hTPQ4(HKHA+Otstv-w+`gVgbyi;H1+x$*B>QW3%-UL6 zQBmb;sGXscIl{|GOBmO8TF}4gd7aid1^kB{a{bxHcVH`Ms%mD+3(cGoZLcrTqC)e= zxYn{3VuK|hMo;&hXyzJ;aEO#ntv}vs?P)b35LH+7+`Z!ds@S36m&{@6aoVr$NwsM^AD>5?oT{6CwH@-WC?{>rkfx@CNAMHV;C6z2#P*NHO4r)eFw?1CWArV{u=j(V$M zUq9+dvHzh~f;YTPK(=k%nqU_7jN=4}U{Jz2EZ3u}wgate&jtW)g8uVu z`pQ{Yv^DNyh9Zvm%uMc&q%!Dtt;!)jG?G3vKpv^L7n4g~4;Wy2^gbcIG-3AWc3dir zk|@a0OR|yyiP>JShq2Qyi~0-yDgj07TfR!(u5Q$>xK!I9^};~T{6k?LK+8<(F4+3@ZSwuz0{cXOa6TT zX=n^hXnp~%@;7}Ym4SA@j}AnKhBm((w|bolt}!m`J6VD|;=o8Gs~8ix5jbtD(}Wm! z!|%i4wtR1pU@PYQH_M;e&4ugSa~b(O#OS~cB2Vng;W8E6vFtav83_LOtUkB3{&jCY zBcy^}63{vO+ONNT53*`rI5y5p%km`xknd$P9$|yabLQh@nNZ_PBOO8*fkZN?k3*n^ z>I}HC2-IPw z@gnqoen|Aj<{h(RsEv!|TYt0eZE4TPcStjepAYKCFF?<(M$1*Z#pMzc81aMTa=jJF z%k%eSI}Zka_SZeRp_7s`f2nqFtLrj)eyMN~ia)QPRr2*JDF@8kV-Tji_fI2sy7nXL z-gyXUPXQX&aOkFoGTLHX_KV3QDip3>kH^V*1qGRO2RRD0W6aEKos3K@SO8rEV&S3f zGkV-fWY!?5!byy!aJ$p|zVE#^Z|0AwnyQ&w1?O@&S5Eit?%jK@wKg3!8EXh>dnuE2u~xr1 z53Qh}u7INfKrLu$x#35a9pSUFsq@izk;f<#g@IX$GW(NCMO|H_a_OzL;x=C=Y*PFO zi!rPJg|;Z@U4RY*oMYbIgfVlWoaEeGOaSvc3S>j6+C!++AP91JYT)pBfFZY3BL1Nh zPk@)Z5HJ;L7Gt96KGUrU0GgnCEr7Y$8FM5S$S@l(OFETHG0W)ye=qW(7po&FUHgg% zxE}gtN(nFR&1FCZ=n`}BpTPv!d9H5XFb3iC2(|1x)zlWwWE!TX=}>ab#a{pVnJ6>- zD!WLQ_T6A~iq*(&R^*=#d}U%;8e4dI>L`iB$aOR<`Bbip_%Sm|j;i#}_}lvr&LLL- zo$OP#)oq-~h>a7&HQ?CUd0Qa_yyfsp|h;TwVYPmOkwoOty_z1W{sEv$B$H2z)bO*l>Xx)sAf7Vi! z6j`2g{oli{MdZ_iIw(kEK0UQmPSi8l`+3>Us-DgHCb=P-3w z;ME4p&&|zA)g&tTrcetd27?BP%6*mmaN7?qFTTeV`NrB=YmpwD42k%h8lr^cL-^uD z2iTHjGOUH;3bYynzN?*Gecv_;s=drf<8Z`sc}Hq%?aK62&%Lsgl@(A<>Tdcy9Vt}!%YD#S)=RS3kY%nl%!XKKZ*PbMo7=X!;-+z)W-=@hArG8Z-NLQ9HyV`*um} zG|W2?wKQZ#HT{XO?6qwH`35+EJ9SP}s77QB{A3Jr;32C=FT~Is2Xn1LSC16b)UaX- za5AL_8)K1Lh7oRd7aTqPs_y0ujo4cBD={S(ueZgfondzSuSB-_ICYnf*{WZKrN4Rp z)QS{Y!N-W)886;~H22G^AtGE4!8rMduV$sUon9^rL@;r`a~2_(Oi4@_cvjeIV2H3` zw*NJc=#~0ED+&>*6JyhGz9?JC#Ex|Pg5w9~o-}Sk3^IThkuN8aiNj`PHJM(khd0UA z_doW2QsHK##ao`cn?~2MLam1;W6=eVHIJIN8A481y&VX-`j)1yrDB!Oj`|}Zz7J$k z-a`oa@Y0^uSDVuyS|)H&EB^Ddm61eTg{r{{H}eVGGm# z$G7?iANGHPKO69{-qxatV}x8`cNbQn+e{(OX7BIfILtm#LiHzK&SWsSj|4#B-rKp-GoPN+g8Cc>J?^*I#+AQXdB>$0hIE z-rDt{5?y&m`>oiI^QmVA_2#AL{2y#5$o<_XZY;!F{M|^}0E;XvkmTpDbne4P0Bzy@ zVxf;GUeYB``2ilbU@%ZLyL&vRtw9&$r>=7Yn<`}<0mVetJUg;zZhBg{=mGO=b@`-@ zCy!mCGXba${LbynGQ>o3A&%J&0;QTa&SPTGPww+0TX>HWKXH@bHW|f(1t_0r753nW z0#^cCqB+w32|&GA-aKdQ4&Zcp@g4{IhdVE7N0SZ)bOg}jl1oE#+g3njn~4fP38~ZaN@&;QW}fI*kG@i<;(GWmxK9+B`R6+9OI73 zUfTOTM+G6igT<4@NoPirb`K!pOmNt`iT#ir@pqmnQMx?t#{p^k3$-d67t~4`5)zb- zl?1?}J!zW)NI%wR1V3GZZYZF&?8;=VE0o(u0R(Wt`ldc|%R`@ov)ZiSM^#m1RF)NZ( z*zXlR$%`=d29X*{ao>87wm}9rpDDG{h{Q@g-_hhLwWaduGV|M=bZd>Ua2Q zz|mFIP|&kQE}P7RgIce?O7bd&%brmftDlH=(WSRZ*u?M2rle(sAZHLX78KAsz?(Zm zn#5nfFhf#HR_C)C(k@YQhH{L~r>ngjZ_*YgM*yJu1egdCW5nvx!^)% zMHv}*`FL_h=hap>dJsf6prDoN*~yd$5X<-7V+GLl2LY7+M686*N3irx6YK9EY=A?V z$^Sy#pnGIAiIF}E@HdTWmUvIn`9UTSk83c8#e3=U;{a}q~4@y1IuqR)(APUN`_;%%I!Mz2@6QFKk(XzDe z-sTF>8I)q)xK{x;@AT_TfrL*~Y-~R$9GjU56+4VA0InRLKM;s{gVLOD+jDp!d)2u>QzCTP#nvkRT(aJ4>1iSUYeR{{w95dhZiU4&zo_6DG3JW3M{fcVyA)N2Y4+s(dLC7$lZJo@HcYBzW5HDR@Py zRk>1&{H!q#zvpiUFj4V>gIkU~LD=|5hLe~l7nPw5AXrUwfBFU0)2&uK2Z zGbE+%Q4{Sj>#gsTQIzgcaqf?{aE|X5gB~v7rPdn`EWBv_^>cL_Zq8_6MHFK&*iNG7 zU;yjl%i!9g5#^4!`d8A>Q@BC}N%J+kwUn0#L4KzQknJ_zCJ!lG6YH8+{LkR@0e`7y=(AR4#n(xgT%^It`lb;I)IsoAT+AQ%_<35*Av?bNkxdQr zpK1CQuDwvTRshROOr3&fhPn|kd*mm2hVzc^8mBUbq!USk7pO^o6-4$TAw0DTX2f{8 zoeG}1THO0s<{;qSgwHouL zu=!9x*o0lLy63@$Reo>*3@X{*`-de%vx|sbPpU@G>PxPur79R68NYcS3}WYdBl9y@ zW{l=vI0!gvyw;@|lVAVM0~>MsH;8-hUd09sh5sAx=_@a)hd-GQ zJE*hlm0a7G@vKr~A53&iqOC#nN<$e>EvmdWn;{!#WCxDc9NzeRG(H3|E8-Jj9-U+A z^7S*W96TDz;dL5d+y&wta2h5eX5((-mGJUol8lL{ z3|))z}qrB2N`i75ca9xf# z48!x4r8O*M^zkAm%@Awy-bnBRlvyk@j5e2JjDAGbo zODu;$J+0l%QI^*mPQpJe+fl*=lPC~Sfg(%ieE#NerK9BpJFndD;_w|cZYw-@ywV|h z6rGBE5~!^K5R@`%DDSTz2=M*%2tu=Qk_$-+WGw7uK9Bg%B_M&>hP6taJW_^*nG!v!G@(0X%B%4cM?ziu>wR4-~$^d>4`lURw@e#AhDjvoF26E7va z2ZzwfZ2~pYwrM*{*UoBUDf7(!vDqUOkY+|!zc$Mcl-#Kg-?VA^z}%;^y6=R!=p2W2 zKjqUEuX-wb;!Cma(N>gTU;D({=lTx75=%PgSejep2@qbZV&-yr87z%_Im8NPJeH)* z#+6FCf>fN$CH1b;hM%vN{}Fk7r|Ic}s$+Kfq}6_&K*~AjCmU@J2Gn-vHrpW=(o7?g zy~{gWlEc&n9Usof0ZY=-G6@5Qbi`%CAfb@z)`q{XcrBh9XCbV2om^2-E1g$rI%jfs zA5(Z~pbajaKdOUp?PA4Lx-73>eyzr<6XG_gm+I^W?&RP{`XU|7B25Ar&>m%w3NRNY zy+@i(rAgT0Q1F~&S@U&gF5tLDMSH3&I5rnv(Hh7m>eqdv2emoHsBRdf%4g}oQ?Mmu zK~8sEYOawBI{~ot4J=gBWT1>K zQ!wcK_j%702JNvv8~ciex(+Y-33nG<@Z>)BBKIjT`!W}W4qLokyIoVv2(o>t*FI93 za)0#%>&I)0&u>|w;MB-wTA`Ob&VHBF1GZR0qq5H-NV`mR*OlmL74kp@&QMBR9444t zz%&G6WDR}6Ow06KG}uN(Ad(D-H-L@;G@Yh**P-Oort;^KAOA>K&3~??LA$0aM+Uq` z;Kg8P6Q&9VcGEaCiCJ>E%T(c1T;XOf&!VH!E|iFv>ahbLPemYb9|xZ?j)y$))e?=y>z;pi={SX9akf!)eHz;zMnvIJ_#H*mZahTHi@#V?hhL=r7c$Y zE95H}c!BI@CsTe_ism`kkgkTR;C5^c|j9E5e zuHv@NFo?e;2$v^NW-~ciuo7o9;%d9-hpj?hDYX>sdXs?n39uT2yLx zy2iQUAGX8by4UUKIp$|R5Jc0c^i*1hE=2+|STPm2gkNpJl8~%E{51(mw>Tvi&PE+H zT;CBbTpl%XY(WqOtc$p6)r_v$Cse)P7?d=fAO|iX7M z6^GYh`5uuRWYPdBqX~+P0Y)0Q5Uh6Lj9nf%fCCDIN?!;X^WznMk<2?9sIcajZoJ zCo+K-p|1ne%=63`L3O%%G#XY9MfjD-Px7n*=wKQ+KU!V2rJU{oG+`hG=XA6HR|100 zr_Nn{p8-6*lX!-XJot$&?#v!a%NTNy)!*$Ot2;y!$PV&~7A8n;wI_h2jUwJmb&pPj zQ%md^+3oPUyV{8t?Z>ai(UMul2`c z`w3{?>(hla%c+z_SG5d!+?+TaJ>3VhFqE^ILW~V+Kk@y^Kt8xs;Or=5T2@AgWr+W4{;MKPUR8vrxi|`EgJmGrJJ)AVwBN3k9fNB!4R7zxJd4!Sv}H*ifQ9 zJo^VU76S8I+y?$XNEUg}?7kE$28f~)IMnQ*@GW%OWPyriy14U3Z zKCD?4_5D?kOu-Osmt5m@h$UZE-$u&w{(}z|ce>o@GwcWD>PRprdr8q_pB00k`B->C zN{|Tf@Rr{Rr1Z)B_M$ndLsa(RsClyHus)zRiAscn{Ks+EYB%s8;7AAybr(MaG8aIu z^_U(FwwqCDX*q4@XY>eVegEmyr9z@A`u(^q{}XBrgZYpZ=NEh^vMd0bI_~e*W()#I zs=434>g6TrNqPKy?Y`USZSvf^EB;uJ%?0`xQP+?h&#OgwSZUU5XIGW@+;@dcx{Ca* zuSw3)bIiB5=sR&ey?Gz>sXj*Lq)XzrZn`5{PLUz->JpCC>gs8cH6L_8ZiWvw@R6cv zITI5-&HE(Za2+zU_P2i*<9;l4qTa7s6U9SI`cbrk@T&$Cy8 zD)q>3t7D>Uk%mrr>)0zvj8vX)+q7vR6_7;sEI|l~fC(kg1vdFX7FnA;;*bqGz%|QZr=Ky6^Ke40jdw6}GIl zGeyYwS?c|+Rm&1^nosH|B#5oD>et~OM9FjXp3ft0mCAc)99{1JoVmEkDSQ^;XU9=R z>mMI4J?6wEF3MSHV~TU(uN^0Ms4MbFkAGkQ@mFxglY}D|LxPG>#ZkL_ns=q&MoV!J zKl++bwiYa7iI5wgGx`xB%e_EcPAI(4xLn5yeT(TyM3StCrh18?ugKw|K|3`njH6Uy z!w6cNVMn08y~}c@pl}wE407jG_&#$Jo{d$MXvi6PwYwK&**`}!aFOrpg?H%f!Vs<7 zNQ2E7K`yCoMlaFnr#;n>VCs#QCDx=k?foudMi=K{%bl$L=d!oLrZ10zImJ%b3`~sv zJPw8c;yyGY(@$BDXi*pUiow6;B@OhYrVx72UE{zcF3L0}z#z5a3^7`%@Zh z+5Koqgcn)d+rPg$Upn@NVr{tVQB&_zbDk7(Q9&e3> zu=Sinrs-F}4a>ct?Hlt?boKCwE7S&A;et%5O5?q=Gc!hc6dyRn{C`;skkhHP+ViQl zG!9ww0dX68ut5TD=A1C7?uq!edTQ508q|q$^q=~S`c;vgN+#%1KjA*ob!Bmh@J7b5 z20m2q)S>&^QpJcrD&hMpTA&j5XqWiRlw-VF+x7=Wp%1FOj>uv|gRMKBt+RnfQ$6!z zi4JEb=W9FL%;vLCY4BsEQk+=S2INn6cq?%A2?+}oCXFe%S%)V5&ex8EKAAI8lm!X7 zwSJAMy7$K7l31Y@8PRh&43)FYInpYekag==aqTG9-(br-<@I>}vG7{?ql&e4wH7{9|zIhTs!e+aoq|#qQ~EPXk-Nd)5gLe zsfAG+>dVl_Ho2oab^AR$FT(*5JgPIDB@5WiCH%NY=P?pte4RY;K40yc7WD)T3komEDNYtTx1iv|-6I5uI;Vw_{r*SWmcgP*jbYof;d9*hby6)F zc$q3Hjz79fA1T`2c;=!VqOQ6T4QEICS^sKC?0x$tC!Y+<{Ke00`au=~C11{G@nUm_ zOVK8g7nU_E5#u5V)y~}4B@Bf_z2_awN_B&SWFZBHy922nm;IAzp9@eE#wVl>KIIwQ z%nHqkEHCh!p_KXZ(`1F}6k|8+k;aWrm{$^g7WNy1q=_>9808ZSB=#evh3}9BgdhoF zsoNewr|wCzeV8%aPAb#{H>Ifjs*Ad38=joQ@hnI%vJ1A|A**L%Uco&?YoimsO*RNL zR5kTU3>?G&QbqlR`L3Y@a=m(=lTePx_fn&pgv$)ZWTvc--yMMtTzId!rZwrC3EMD` zw;J1uv6HILM{N{OmHzNmGN-UAh($?YB4gLebhr_A&7V(c26=QF+*UCZ4I$J-MGYw;DQiA|p^#WjI7Q0z+E1;pftMt)3=TqMzKZvx zmFGKQtMZ{?_;+v;^;F^-8xC`*2Nx6R)S?#qWA82zPv3@xYPFcW>gDbf0^_zMm>w0U z?2`&-3pYN($+WQdavota7u@=Q0y;SU-bh8mfs6j;fv>H>L>WGf!A<8epNt~W8G5^! z;DSg_p>ohUCt~gS($uBPPM+$`nGykwelCX%YhouMLW(NftVyx6x=@z{oD>I#ZSy>@ zPqYb-xC=vsj0Q#LC2x|=mP$upna?Th)|nNMaOD5v}hBpdPmBl z_I|w;`9JtexnK9=q7xGpfWJ17HZtcR_|d3F1V+5iNVmDU3DUM4d*9~fKqlDrY<}~E z#r^*K#TLB#af3KKZiNt#Pr}tNDO@sqIMGK$W2yj@lII*=YYxh;W?+QAc~Sp>w4R?| z*B=CPVJ26Q((Y<^w_T@V6$FF;epg97eYgGhPH}X$8|_qL{)IRk)1X+lvLcHz$!pn7 ziy9izP>cQ&Oz|~IOzR!q#HNbysdeHRAKJG(w6!-C(%zOc*ugOg2?oP&n{q* zKCrs(J-PKSZb*ps0lY8ntf8Wl`Uvu*XT?Rp@_wpTxdF2STb~n@;dNJ92?^7NbrPvU zxSh11mL)9UHG|p>Q53BpJJRp`C^B(EWirOBV<_yN@9v2AEFlXw0SW=VK(^}@8lzZi#`jB31l6~tIYR6Nyxa9|qp zg-(r%>>AifT`94Ysstr?A0?K6tm(GlJZ8U9Gw%?#?3%73r3}P%K(Ivfz0Skz2dW57 zZfpNm*;y5?AqKfOk;6gI_1k}=$AZ|1!T^wDo?K-210a`+P{s_doe3dN^cMbnf-10^ zv8U3~XnQ!77U~g!RX)b)tj_>N6VD?P^3kxQFZR@U2mK8g6uH|3>6%-TbrtsyJ-(~T zaLy=6Srj}p!NFIq?da0Uq(j_z=C#<>p%y&ImKKf@h`SwKmu)j~_^}9*`q@NP5>T*6 z4Y_Ut^0a@2TdUTVom8$~7NYmV96}!Xc*MWLi#_#H#i}CXqmON_bTWEe?2RqGAa(0z z89O9(d)EezN#r!%`GR73aO#n|)y)+mhUn$}=y~d7{C1NAlSt+KNx#Vf?}+DpGC7W1 z<%3|?5CR#KU|jhGDdRYb@{T47*r!Mfw~R6UD7(SopNH)&>LW!q5mUE_?;u0^CTALh*98s{L+kZlH>zHm z*$@v8&BDw84`b43@dve7ZWAbO0sKY~;Bf4G)y1=7QN(JK^CqPD10OcS}tj$N%{vfEkgxePn}+qsf{33C5HElKsNH#6*7 z&_urk2i9jY9zvBclIZr}+Gn!n02gz8ag+!uyIZXxiJvHUZ%1_BoeO;L^x+33NP0UF zeRV934Xi3PXbM)@Ie!asYy!2h7)mdOk^qan*ZG$1oQzA#I+EU9Kcdj;zU}LBz#(NP z>PA~R$J>$8JhPMQX{*F}>ZOj(SS1NyM^fxGl}?_^0sBGW7kaSdlEL93MP1DJj4nJ@ zLCKP9WnD}E*9TR7E&DFC@oH+n2aSrN5GTd)0mywQ&cyGlTGDr7Dv6iHRT`w2A?y$9 zbYQnx1B1xoHKBty%T+%~%-EKUs%qTEFANZpW>Hg-mD=efRK|o$mdT)xXHx#sO}CZf z@(J!*Jn=y?3=~??QP=(qDnB_X4;Ib2wL~l+$0dp{syw;>^NprBFqG;*D9RI)Gw)^o z%k9ExQqLLuX-Z`GT1(Bm+5slDsB|(s@XZ8dNO%)qa$-*q=><;8g3@Y(qtYcJutkgH z6$J_xm9c^VTxpvt9oZ!ot!4foUYSwqV?{kmpw~MKf2h|MGd@BP$eDj!l(s<~zkA15 zVm=Usw*XrIZ>o739g<-e%A>{?FxtEE{JZ3Nzrxmd!4p=|k>B5G6qGes-ItRK1KdhZ z3Hkia75tSGHh5jXsL8-q)9zu3%@W^!K_MlpRD(pj%klBB#vz2#ej;4p*hmy`SHpuq z+8=b(h-i7FaAC_VB72LQBMn$?dFd7P+iVn>rO@?nGoA_6Zw>mot>~SsLP~ovRAeue zGM-((W#~ed2qI9QW3Qr!(J@0K__-Zc3f5hz(aP7-ORJ)H3l2^284dBhtE5+cpGps^ zU32qK|7?eq>))IEFBfU9EEt55g6_%w^XCt?6HNS-5GkaL(|>$JpXhCGe{-Z(K+jDj zL@Sda_71J}S(SM>SCi72A$KpCvbJ_=>wRMif#$R3`>U63f^kepD#2`(`%6s+7nQ5k z-=E->f`2LtJ`5X&eL}8)xR03SDJrkzjrN{JZ*j{eQ#QVi`D1ldt^E}ltdH!8EIcSr zOO&wF^8I%e?I{9d;>yNfxN_#)`2i0+So=yyo2CJGD4Elp;w4?rYDwqSy8R>Q zT_E|4JwSm}+70*oPog_t3`g5vZ$2Gfzur%Kez)V8xTU)Gzv}jQc;hSoH))^Tgm5kXZ`^OC2q--4V|=E#>m!+#0w41hs%A z?3EDiD<*Do-M8vOU+VBn61OnkZ(dK!zuz<~%~R#-VxV{&#Iq?h2_r~^SslQV=`u3w z?;@YYU2s@@8(QIfe*wUc(N)2OizmfS4Vv)Z}m4m_lfJ0%*km?Ct7_K~H;31pC!EJ(qo~PAJ|>5R26FE}QRu&J;R}rXfI5`-?%44I5IhCBy`9wd^{Xa@ z!5oSA6t`R$#GFRqyOA&WtB^ATy@eVM4I`H(nOpz1WoX@~@q*mZ_+Sg0QAl#zrQU~Z z+_^yQxW@&4WGw|6<|~Z}-y7;?)S0|ie0Y@;gf^NVySwc&e!o0UeFXJH77(t_sC;l+ zqH1FiU5x5D>?E!Fm}(Qh89S!{6yUGw=Z4lkp_RRgj8$mT6DaQ`7?~gQ?(ojPu$M9RmKKJj zCQW(0_eN{pp`CoML~-4CDvmKqtDakd!zc5ZZ4Brri-XsKe0Wz>o5VkwQ~zL~ZtG^a z5JL4NRkQezAoE%Ybm-lQ6pcm}UxXnMVtmL9XOIYFe!DsQGu?qiCu0aM_mRQPJqBijCxK@<_bm4j>YVH7Ja!@p-zT(Pv#3)q;uGf> zR|AtUBwNwaGsK1#?q%(#{=&MuI%4hjpKL<+!f>+6js>rRkGF;}LPXMO4awiHTOA~2 zo=bnQ^HOT7uGBgx+t>Azvzv30$$5LggwdhcWdCT6mS9Ab07GVj?A+GT2rA2*vN z_kqsmDgrHpR-X%k#~3qb;7(e)zZ81ZQI(rj&cxCWvo(-5!$$ zKhDsOmC|+iJ2BDewOSF{A4!mzg|KM3LhKUQAtoY_NFO-{LGM`LTX7&?uTalCgOr|C zNxk68-dII$i*Jl;8Ny@%QC|E|z-5?Z3)k9lW) zzTC>n4BdM4MtDE@^g%N@&gBhn4wg_3mdiv<_14zbdK_GXCkdzsk~U{g@E+x=wA60s zrG6bs7+FK54n!HN0^YyyZ*)y03X}bNjr{flr5r5_eK)N>w+!iP%yJ>yY2y9nLUbuiO;^)-F??VTxcra) zpo5-i2})Te{J1;#XyN{}Ik4`>t>@X&Y5*}QzYxm5TJM0RN}GpJPWlNo06DCtY=qgW zkqltR9Jvzi(321l(CO$csKrvnGT~y5>>L$*?GAuhJE0u1;!Nv86kPQKw zjHJ6;10csxczAgm4qsMI{PxB3OYJoSxx~HsggD%4Yn+BNcty;{3;TYnl9UVVF)yiOM*ohv~P;kq`tU=pRFyU+3FN@ydlVccHJ94mEO${HErAHOr1 z7sINh_LmLVf3DtY4DahloMaVGDsiuA>O)k@=r^_eEKaHrBKZ-ddpDgQOH3;odNN^4 zDuFEX@9!l(k2)kR*E^NyVt`#1Z(QBtEKqZ~_Pc_23spUyc=Go~w#VdkpSx8i)oth5&&L~nfsTmTxZr8#ldH5*h zcTKHgX|kIQS_b#+^=mqQmyys2s9Bk$V;{V{(zGI^cH=;-bLkyO<=nT9zJ8NWHN7!Pc8zd94-_jl(EKk~1G zr@7mz6@}xET23r=M=M?)HKP8<+^08>-|xbDYE2&RPl{YlGR_GrgAuZ^?!NGLQ+W1D zp6H1&cJaAlQ9i-Hhlk4x@iymIpR|x}s$NZ>_I+-RaM6(tC=S1yZ!3#4k77il^fR3s z<^*>pa^8vBz+kb6I+VOk2|u|J5ygND4gvYP6^kR}LxMe|`1j^?QtIVySZW7MfECJe1_rpVrElhyD+^ CWB$kh diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index ec29f0ce41bd4e5494bbedfc41b205338e8b6499..999e6b61c61666e033f9733c44cb15048c9fb70b 100644 GIT binary patch delta 25907 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 delta 26020 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

    O&F@XOFoy`k?$0hRF2>G<<}WKh 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 diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 5dbeea2cdd766f18f15b5c8eeebea09b341f38c4..bc3f111fd3ee51b10a05c45acc6de80420098755 100644 GIT binary patch delta 28493 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

    -eFH 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 delta 29789 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 delta 811 zcmV+`1JwNg;{$-?1CS&E^|2-F0e^0UZ75>cDf)en;*Kxyid zfw&@`O`j-Z-`!eD5h&tCJa3Px^@F+hl(RWX0&T5hiR{5dN(ERFwVpxtsOn6i)-%TU zG`60XNF`O&zBAr?B%@|FErH{pNyBo9MIXr&TrL{Grf%zmMh#cpz8bXTsHM4Y{@CnZ z_BXS))T4VgB?>Z)i`I^=TKof0+h>>@jTDN&K3dRwZpTv@lAy6>y_NxFJyRLrMIN~< z6BtO6=bQ%tPJ$;99JK`A9)Guw9O@m=lTuB+px%?Obp5We@~ZLG?bLAKs}0C2Vpf3* znpFt~j9IG^43uS7B^WfxtV%Foj#-sp1STs-%1d}bGFp{juw1k%0ZzqvH%gMw8-3v9 zsorr$l28nfv7jtczGo7fO3ZBFsU)Bh&NMj0m|?8Q&nz}X`lc6{4}Z<*gQ$nbPWph9 z_lPt(If^~d<5lpYBJOTBw=YVftH_=k%>VI`3H?Y!!7pSF;O%&z;9L?9L>&0>r_%yd z>M4(8r&0i0kL(?cT^Z6`40m>yn=qS@fxGDwS#PenCwp2(9}@>#?;k*H)|qYMqe}wy zQ~!;vKSf=@z>Cxwet)+FzFPwSx&;0WxGy?mlO9_FIslOCB(dSgBB7ro572|x_agOK zrKiG=EqSlOv`961Auy#}kbCS|rtWtoVA8D=frp!{6dn5sIJdG=%%|W4Z-IeX_b5UB z`cU7vnXB(s(IZe9=f1$w0hrLRGjTxfm*iWZ4~>JCdcSXJgIKn7<@Egh pRTDP*&F#%)R~LBIac`RspWip{KYd*P3tn+YB!RI|S+gMp-t5GkjBEe^ From f908119b989a42e7bf5b5aa8baeb11a0def51e94 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 12 May 2015 23:56:51 +0930 Subject: [PATCH 029/199] Very minor oversight. --- code/modules/customitems/item_spawning.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/customitems/item_spawning.dm b/code/modules/customitems/item_spawning.dm index d8e7d5b07b..7904b60b5c 100644 --- a/code/modules/customitems/item_spawning.dm +++ b/code/modules/customitems/item_spawning.dm @@ -22,7 +22,7 @@ var/character_name var/item_icon var/item_desc - var/name = "unnamed item" + var/name var/item_path = /obj/item var/req_access = 0 var/list/req_titles = list() From c952507f3cc77e327ee5ca47252c17ee0871e397 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Tue, 12 May 2015 15:53:28 +0100 Subject: [PATCH 030/199] Fixes carp attacking mechs over z-levels Fixes #9198. --- code/modules/mob/living/simple_animal/hostile/hostile.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 03bf90b0f5..aa29a02547 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -115,7 +115,7 @@ var/list/L = hearers(src, dist) for (var/obj/mecha/M in mechas_list) - if (get_dist(src, M) <= dist) + if (M.z == src.z && get_dist(src, M) <= dist) L += M return L From 2bd9292b463966f0c981f1bdba38d453ec82474b Mon Sep 17 00:00:00 2001 From: ccomp5950 Date: Tue, 12 May 2015 13:42:18 -0400 Subject: [PATCH 031/199] Fix issue with alert monitor template not sending: Short version: We had two files that were exact matches, because of the way byond optimizes resoureces it only sends one file when the MD5 matches. We're not using atmosphere_monitor.tmpl anywhere in the code and it's just a copy of alarm_monitor.tmpl byond was sending atmosphere_monitor.tmpl instead of alarm_monitor.tmpl No copy / paste nanotemplates allowed, there must be SOMETHING different about them even if it's just comments. --- nano/templates/atmosphere_monitor.tmpl | 37 -------------------------- 1 file changed, 37 deletions(-) delete mode 100644 nano/templates/atmosphere_monitor.tmpl diff --git a/nano/templates/atmosphere_monitor.tmpl b/nano/templates/atmosphere_monitor.tmpl deleted file mode 100644 index 0089467e43..0000000000 --- a/nano/templates/atmosphere_monitor.tmpl +++ /dev/null @@ -1,37 +0,0 @@ - - -{{for data.categories}} -

    {{:value.category}}

    - {{for value.alarms :alarmValue:alarmIndex}} - {{if alarmValue.origin_lost}} - {{:alarmValue.name}} Alarm Origin Lost
    - {{else}} - {{:alarmValue.name}}
    - {{/if}} - {{if alarmValue.has_cameras || alarmValue.lost_sources != ""}} -
    - {{if alarmValue.has_cameras}} -
    - {{for alarmValue.cameras :cameraValue:cameraIndex}} - {{if cameraValue.deact}} - {{:helper.link(cameraValue.name + " (deactivated)", '', {}, 'inactive')}} - {{else}} - {{:helper.link(cameraValue.name, '', {'switchTo' : cameraValue.camera})}} - {{/if}} - {{/for}} -
    - {{/if}} - {{if alarmValue.lost_sources != ""}} -
    -

    Lost Alarm Sources: {{:alarmValue.lost_sources}}

    -
    - {{/if}} -
    - {{/if}} - {{empty}} - --All Systems Nominal - {{/for}} -{{/for}} \ No newline at end of file From bdf440069537caafbb7cb8d59a95717b62486781 Mon Sep 17 00:00:00 2001 From: Techhead0 Date: Tue, 12 May 2015 13:22:38 -0400 Subject: [PATCH 032/199] PAPs now use external pressure when pumping in. This allows Portable Air Pumps to be effectively used for draining rooms and air tanks. Also, default cells in pumps and scrubbers changed from 1k basic cells to 5k heavy-duty cells. --- code/game/machinery/atmoalter/pump.dm | 4 ++-- code/game/machinery/atmoalter/scrubber.dm | 2 +- html/changelogs/Techhead-PAPin.yml | 4 ++++ 3 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 html/changelogs/Techhead-PAPin.yml diff --git a/code/game/machinery/atmoalter/pump.dm b/code/game/machinery/atmoalter/pump.dm index 659e17d4b2..8d80e57e78 100644 --- a/code/game/machinery/atmoalter/pump.dm +++ b/code/game/machinery/atmoalter/pump.dm @@ -22,7 +22,7 @@ /obj/machinery/portable_atmospherics/powered/pump/New() ..() - cell = new/obj/item/weapon/cell(src) + cell = new/obj/item/weapon/cell/apc(src) var/list/air_mix = StandardAirMix() src.air_contents.adjust_multi("oxygen", air_mix["oxygen"], "nitrogen", air_mix["nitrogen"]) @@ -78,7 +78,7 @@ output_volume = environment.volume * environment.group_multiplier air_temperature = environment.temperature? environment.temperature : air_contents.temperature else - pressure_delta = target_pressure - air_contents.return_pressure() + pressure_delta = environment.return_pressure() - target_pressure output_volume = air_contents.volume * air_contents.group_multiplier air_temperature = air_contents.temperature? air_contents.temperature : environment.temperature diff --git a/code/game/machinery/atmoalter/scrubber.dm b/code/game/machinery/atmoalter/scrubber.dm index 1977e55646..6e52f88b3e 100644 --- a/code/game/machinery/atmoalter/scrubber.dm +++ b/code/game/machinery/atmoalter/scrubber.dm @@ -20,7 +20,7 @@ /obj/machinery/portable_atmospherics/powered/scrubber/New() ..() - cell = new/obj/item/weapon/cell(src) + cell = new/obj/item/weapon/cell/apc(src) /obj/machinery/portable_atmospherics/powered/scrubber/emp_act(severity) if(stat & (BROKEN|NOPOWER)) diff --git a/html/changelogs/Techhead-PAPin.yml b/html/changelogs/Techhead-PAPin.yml new file mode 100644 index 0000000000..3e6eccdf62 --- /dev/null +++ b/html/changelogs/Techhead-PAPin.yml @@ -0,0 +1,4 @@ +author: Techhead +delete-after: True +changes: + - bugfix: "Portable air pumps now fill based on external/airtank pressure when pumping in." From eef2f589cefe16332382bc30939c1dfd99dbabfe Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Wed, 13 May 2015 10:32:26 +0930 Subject: [PATCH 033/199] Housekeeping. --- code/datums/supplypacks.dm | 8 -------- code/modules/clothing/under/jobs/medsci.dm | 2 +- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 7b38c0fdb1..8b5124eae1 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -310,14 +310,6 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee access = access_hydroponics group = "Hydroponics" -/datum/supply_packs/lisa - name = "Corgi crate" - contains = list() - cost = 50 - containertype = /obj/structure/largecrate/animal/corgi - containername = "Corgi crate" - group = "Hydroponics" - /datum/supply_packs/seeds name = "Seeds crate" contains = list(/obj/item/seeds/chiliseed, diff --git a/code/modules/clothing/under/jobs/medsci.dm b/code/modules/clothing/under/jobs/medsci.dm index 1e9acac452..3ceab6cee0 100644 --- a/code/modules/clothing/under/jobs/medsci.dm +++ b/code/modules/clothing/under/jobs/medsci.dm @@ -115,7 +115,7 @@ /obj/item/clothing/under/rank/medical/paramedic name = "short sleeve medical jumpsuit" - desc = "Made of a special fiber that gives special protection against biohazards. Has a cross on the chest denoting that the wearer is trained medical personnel and short sleeves." + desc = "It's made of a special fiber that provides minor protection against biohazards. This one has a cross on the chest denoting that the wearer is trained medical personnel." icon_state = "medical_short" item_state = "medical_short" body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS From a9f936fe42e4046a305b70975990ac24ebf39357 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Wed, 13 May 2015 11:20:54 +0930 Subject: [PATCH 034/199] Added exosuit customisation kits to cargo. --- code/controllers/communications.dm | 2 +- code/datums/supplypacks.dm | 29 ++++++++- code/game/mecha/combat/gygax.dm | 2 +- code/game/objects/items/paintkit.dm | 83 ++++++++++++++++++++++++- code/modules/admin/verbs/striketeam.dm | 6 +- code/modules/clothing/suits/jobs.dm | 2 +- icons/mecha/mecha.dmi | Bin 150214 -> 168092 bytes 7 files changed, 113 insertions(+), 11 deletions(-) diff --git a/code/controllers/communications.dm b/code/controllers/communications.dm index 9e82c55d05..723d2e001a 100644 --- a/code/controllers/communications.dm +++ b/code/controllers/communications.dm @@ -72,7 +72,7 @@ Radio: 1355 - Medical 1357 - Engineering 1359 - Security -1341 - death squad +1341 - deathsquad 1443 - Confession Intercom 1347 - Cargo techs 1349 - Service people diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 8b5124eae1..f88149cf3a 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -1511,7 +1511,32 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/weapon/stock_parts/subspace/crystal, /obj/item/weapon/storage/toolbox/electrical) +/datum/supply_packs/randomised/exosuit_mod + num_contained = 1 + contains = list( + /obj/item/device/kit/paint/ripley, + /obj/item/device/kit/paint/ripley/death, + /obj/item/device/kit/paint/ripley/flames_red, + /obj/item/device/kit/paint/ripley/flames_blue + ) + name = "Random APLU modkit" + cost = 200 + containertype = /obj/structure/closet/crate + containername = "heavy crate" + group = "Miscellaneous" +/datum/supply_packs/randomised/exosuit_mod/durand + contains = list( + /obj/item/device/kit/paint/durand, + /obj/item/device/kit/paint/durand/seraph, + /obj/item/device/kit/paint/durand/phazon + ) + name = "Random Durand exosuit modkit" - - +/datum/supply_packs/randomised/exosuit_mod/gygax + contains = list( + /obj/item/device/kit/paint/gygax, + /obj/item/device/kit/paint/gygax/darkgygax, + /obj/item/device/kit/paint/gygax/recitence + ) + name = "Random Gygax exosuit modkit" diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index 7e8df94015..b47564e2b3 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -17,7 +17,7 @@ max_equip = 3 /obj/mecha/combat/gygax/dark - desc = "A lightweight exosuit used by Nanotrasen Death Squads. A significantly upgraded Gygax security mech." + desc = "A lightweight exosuit used by NanoTrasen Heavy Asset Protection. A significantly upgraded Gygax security mech." name = "Dark Gygax" icon_state = "darkgygax" initial_icon = "darkgygax" diff --git a/code/game/objects/items/paintkit.dm b/code/game/objects/items/paintkit.dm index a562528fa5..f626af6ff3 100644 --- a/code/game/objects/items/paintkit.dm +++ b/code/game/objects/items/paintkit.dm @@ -7,6 +7,10 @@ var/new_icon_file var/uses = 1 // Uses before the kit deletes itself. +/obj/item/device/kit/examine() + ..() + usr << "It has [uses] [uses>1?"uses":"use"] left." + /obj/item/device/kit/proc/use(var/amt, var/mob/user) uses -= amt playsound(get_turf(user), 'sound/items/Screwdriver.ogg', 50, 1) @@ -63,13 +67,19 @@ return 1 return ..() -// Actual application of this kit is handled in mecha.dm attackby(). /obj/item/device/kit/paint name = "mecha customisation kit" - desc = "A generic kit containing all the needed tools and parts to turn a mech into another mech." + desc = "A kit containing all the needed tools and parts to repaint a mech." var/removable = null var/list/allowed_types = list() +/obj/item/device/kit/paint/examine() + ..() + usr << "This kit will convert an exosuit into: [new_name]." + usr << "This kit can be used on the following exosuit models:" + for(var/exotype in allowed_types) + usr << "- [capitalize(exotype)]" + /obj/mecha/attackby(var/obj/item/weapon/W, var/mob/user) if(istype(W, /obj/item/device/kit/paint)) if(occupant) @@ -98,4 +108,71 @@ P.use(1, user) return 1 else - return ..() \ No newline at end of file + return ..() + +//Ripley APLU kits. +/obj/item/device/kit/paint/ripley + name = "\"Classic\" APLU customisation kit" + new_name = "APLU \"Classic\"" + new_desc = "A very retro APLU unit; didn't they retire these back in 2543?" + new_icon = "ripley-old" + allowed_types = list("ripley") + +/obj/item/device/kit/paint/ripley/death + name = "\"Reaper\" APLU customisation kit" + new_name = "APLU \"Reaper\"" + new_desc = "A terrifying, grim power loader. Why do those clamps have spikes?" + new_icon = "deathripley" + allowed_types = list("ripley","firefighter") + +/obj/item/device/kit/paint/ripley/flames_red + name = "\"Firestarter\" APLU customisation kit" + new_name = "APLU \"Firestarter\"" + new_desc = "A standard APLU exosuit with stylish orange flame decals." + new_icon = "ripley_flames_red" + +/obj/item/device/kit/paint/ripley/flames_blue + name = "\"Burning Chrome\" APLU customisation kit" + new_name = "APLU \"Burning Chrome\"" + new_desc = "A standard APLU exosuit with stylish blue flame decals." + new_icon = "ripley_flames_blue" + +// Durand kits. +/obj/item/device/kit/paint/durand + name = "\"Classic\" Durand customisation kit" + new_name = "Durand \"Classic\"" + new_desc = "An older model of Durand combat exosuit. This model was retired for rotating a pilot's torso 180 degrees." + new_icon = "old_durand" + allowed_types = list("durand") + +/obj/item/device/kit/paint/durand/seraph + name = "\"Cherubim\" Durand customisation kit" + new_name = "Durand \"Cherubim\"" + new_desc = "A Durand combat exosuit modelled after ancient Earth entertainment. Your heart goes doki-doki just looking at it." + new_icon = "old_durand" + +/obj/item/device/kit/paint/durand/phazon + name = "\"Sypher\" Durand customisation kit" + new_name = "Durand \"Sypher\"" + new_desc = "A Durand combat exosuit with some very stylish neons and decals. Seems to blur slightly at the edges; probably an optical illusion." + new_icon = "phazon" + +// Gygax kits. +/obj/item/device/kit/paint/gygax + name = "\"Jester\" Gygax customisation kit" + new_name = "Gygax \"Jester\"" + new_desc = "A Gygax exosuit modelled after the infamous combat-troubadors of Earth's distant past. Terrifying to behold." + new_icon = "honker" + allowed_types = list("gygax") + +/obj/item/device/kit/paint/gygax/darkgygax + name = "\"Silhouette\" Gygax customisation kit" + new_name = "Gygax \"Silhouette\"" + new_desc = "An ominous Gygax exosuit modelled after the fictional corporate 'death squads' that were popular back in 2554." + new_icon = "darkgygax" + +/obj/item/device/kit/paint/gygax/recitence + name = "\"Gaoler\" Gygax customisation kit" + new_name = "Durand \"Gaoler\"" + new_desc = "A bulky silver Gygax exosuit. The extra armour appears to be painted on, but it's very shiny." + new_icon = "recitence" \ No newline at end of file diff --git a/code/modules/admin/verbs/striketeam.dm b/code/modules/admin/verbs/striketeam.dm index c49e09d554..ef217b16f9 100644 --- a/code/modules/admin/verbs/striketeam.dm +++ b/code/modules/admin/verbs/striketeam.dm @@ -4,7 +4,7 @@ var/const/commandos_possible = 6 //if more Commandos are needed in the future /client/proc/strike_team() set category = "Fun" set name = "Spawn Strike Team" - set desc = "Spawns a death squad if you want to run an admin event." + set desc = "Spawns a strike team if you want to run an admin event." if(!src.holder) src << "Only administrators may use this command." @@ -20,12 +20,12 @@ var/const/commandos_possible = 6 //if more Commandos are needed in the future var/datum/antagonist/deathsquad/team - var/choice = input(usr, "Select type of strike team:") as null|anything in list("Death Squad", "Mercenaries") + var/choice = input(usr, "Select type of strike team:") as null|anything in list("Heavy Asset Protection", "Mercenaries") if(!choice) return switch(choice) - if("Death Squad") + if("Heavy Asset Protection") team = deathsquad if("Mercenaries") team = commandos diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index efa2e01a2d..e0fa47f64f 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -187,7 +187,7 @@ /obj/item/clothing/suit/storage/toggle/fr_jacket/ems name = "\improper EMS jacket" - desc = "A dark blue, martian-pattern, EMS jacket. It sports high-visibility reflective stripes, a star of life on the back, and has a nametag on the right side of the chest that reads 'Lombardi B-'." + desc = "A dark blue, martian-pattern, EMS jacket. It sports high-visibility reflective stripes and a star of life on the back." icon_state = "ems_jacket_closed" item_state = "ems_jacket_closed" icon_open = "ems_jacket_open" diff --git a/icons/mecha/mecha.dmi b/icons/mecha/mecha.dmi index b1f35226f829deb904c4c528f5978a6f9e0f4c50..c5d882a5032dddc7cc18f7435119b8a473a75dd7 100644 GIT binary patch literal 168092 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

    rKJal0_mZ2;2~)5iSB%Tw5z>Jq1Nc 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%0Ake)n#ritn6F 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 literal 150214 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 literal 0 HcmV?d00001 From f9f99d61b27bcdf28e2490ddf30f506316f4fd62 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Wed, 13 May 2015 19:09:40 +0100 Subject: [PATCH 048/199] Map changes. sed -rbi 's#obj/structure/table([^/])#obj/structure/table/standard\1#g' maps/**/*.dmm --- maps/RandomZLevels/Academy.dmm | 52 +- maps/RandomZLevels/blackmarketpackers.dmm | 32 +- maps/RandomZLevels/challenge.dmm | 8 +- maps/RandomZLevels/example.dmm | 44 +- maps/RandomZLevels/listeningpost.dmm | 10 +- maps/RandomZLevels/stationCollision.dmm | 80 +-- maps/RandomZLevels/zresearchlabs.dmm | 160 +++--- maps/exodus-1.dmm | 634 +++++++++++----------- maps/exodus-2.dmm | 266 ++++----- maps/exodus-3.dmm | 42 +- maps/exodus-5.dmm | 156 +++--- maps/exodus-6.dmm | 3 +- maps/overmap/bearcat/bearcat.dmm | 42 +- maps/overmap/example_sector1.dmm | 26 +- maps/overmap/example_sector2.dmm | 10 +- 15 files changed, 782 insertions(+), 783 deletions(-) diff --git a/maps/RandomZLevels/Academy.dmm b/maps/RandomZLevels/Academy.dmm index 878f74e61a..7de78aa9f3 100644 --- a/maps/RandomZLevels/Academy.dmm +++ b/maps/RandomZLevels/Academy.dmm @@ -102,13 +102,13 @@ "bX" = (/turf/simulated/floor/engine,/area/awaymission/academy/classrooms) "bY" = (/obj/structure/target_stake,/obj/item/target/alien,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms) "bZ" = (/obj/machinery/vending/cigarette,/turf/simulated/floor,/area/awaymission/academy/headmaster) -"ca" = (/obj/structure/table,/obj/item/weapon/lighter/random,/turf/simulated/floor,/area/awaymission/academy/headmaster) +"ca" = (/obj/structure/table/standard,/obj/item/weapon/lighter/random,/turf/simulated/floor,/area/awaymission/academy/headmaster) "cb" = (/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster) "cc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster) "cd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/awaymission/academy/headmaster) "ce" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) "cf" = (/obj/structure/stool,/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) -"cg" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "floorgrime"},/area/awaymission/academy/classrooms) +"cg" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "floorgrime"},/area/awaymission/academy/classrooms) "ch" = (/obj/effect/decal/cleanable/oil,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "ci" = (/obj/machinery/door/airlock/plasma,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster) "cj" = (/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster) @@ -116,7 +116,7 @@ "cl" = (/obj/machinery/computer/area_atmos/area,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster) "cm" = (/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster) "cn" = (/obj/structure/stool,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) -"co" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/item/weapon/pen/red,/turf/simulated/floor,/area/awaymission/academy/classrooms) +"co" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/item/weapon/pen/red,/turf/simulated/floor,/area/awaymission/academy/classrooms) "cp" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/awaymission/academy/classrooms) "cq" = (/turf/simulated/shuttle/wall{tag = "icon-swall1"; icon_state = "swall1"},/area/awaymission/academy/classrooms) "cr" = (/obj/structure/stool/bed/chair,/turf/simulated/floor,/area/awaymission/academy/headmaster) @@ -124,16 +124,16 @@ "ct" = (/obj/machinery/door/window{dir = 8},/turf/simulated/floor/plating,/area/awaymission/academy/headmaster) "cu" = (/turf/simulated/floor/plating,/area/awaymission/academy/headmaster) "cv" = (/obj/machinery/door/window{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/awaymission/academy/headmaster) -"cw" = (/obj/structure/table,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) -"cx" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/item/stack/cable_coil/random,/turf/simulated/floor,/area/awaymission/academy/classrooms) +"cw" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) +"cx" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/item/stack/cable_coil/random,/turf/simulated/floor,/area/awaymission/academy/classrooms) "cy" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/awaymission/academy/classrooms) "cz" = (/obj/item/target,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms) "cA" = (/turf/simulated/floor{icon_state = "red"; dir = 4},/area/awaymission/academy/classrooms) -"cB" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/academy/headmaster) +"cB" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/academy/headmaster) "cC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster) "cD" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster) "cE" = (/obj/structure/sign/nosmoking_1,/turf/simulated/wall,/area/awaymission/academy/headmaster) -"cF" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/awaymission/academy/classrooms) +"cF" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/awaymission/academy/classrooms) "cG" = (/obj/item/stack/sheet/metal,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "cH" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/awaymission/academy/classrooms) "cI" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor,/area/awaymission/academy/headmaster) @@ -245,7 +245,7 @@ "eK" = (/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/awaymission/academy/classrooms) "eL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/awaymission/academy/classrooms) "eM" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms) -"eN" = (/obj/structure/table,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) +"eN" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) "eO" = (/obj/machinery/processor,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) "eP" = (/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/classrooms) "eQ" = (/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/classrooms) @@ -254,7 +254,7 @@ "eT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/awaymission/academy/classrooms) "eU" = (/obj/structure/mineral_door/wood,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/academy/classrooms) "eV" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) -"eW" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/snacks/spellburger,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) +"eW" = (/obj/structure/table/standard,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/snacks/spellburger,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) "eX" = (/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHWEST)"; icon_state = "warnplate"; dir = 10},/area/awaymission/academy) "eY" = (/obj/structure/window/reinforced,/turf/simulated/floor,/area/awaymission/academy/classrooms) "eZ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms) @@ -263,17 +263,17 @@ "fc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms) "fd" = (/obj/structure/mineral_door/wood,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/academy/classrooms) "fe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) -"ff" = (/obj/structure/table,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) +"ff" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) "fg" = (/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) "fh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) "fi" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) -"fj" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) +"fj" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) "fk" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{dir = 5; icon_state = "yellow"},/area/awaymission/academy/classrooms) "fl" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{dir = 9; icon_state = "yellow"},/area/awaymission/academy/classrooms) "fm" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) -"fn" = (/obj/structure/table,/obj/item/trash/semki,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) +"fn" = (/obj/structure/table/standard,/obj/item/trash/semki,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) "fo" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms) -"fp" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) +"fp" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms) "fq" = (/turf/simulated/floor{icon_state = "cautioncorner"; dir = 4},/area/awaymission/academy/classrooms) "fr" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/academy/classrooms) "fs" = (/turf/simulated/floor{dir = 1; icon_state = "yellowcorner"},/area/awaymission/academy/classrooms) @@ -309,8 +309,8 @@ "fW" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "fX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "fY" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/awaymission/academy/classrooms) -"fZ" = (/obj/structure/table,/obj/item/weapon/pen/red,/turf/simulated/floor,/area/awaymission/academy/classrooms) -"ga" = (/obj/structure/table,/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/awaymission/academy/classrooms) +"fZ" = (/obj/structure/table/standard,/obj/item/weapon/pen/red,/turf/simulated/floor,/area/awaymission/academy/classrooms) +"ga" = (/obj/structure/table/standard,/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/awaymission/academy/classrooms) "gb" = (/obj/structure/stool/bed/chair/wood/normal,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) "gc" = (/obj/structure/bookcase,/obj/item/weapon/book/manual/engineering_hacking,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) "gd" = (/obj/structure/bookcase,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) @@ -323,7 +323,7 @@ "gk" = (/obj/machinery/door/window{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/academy/classrooms) "gl" = (/obj/item/weapon/storage/box/monkeycubes,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "gm" = (/obj/machinery/door/window{dir = 4},/obj/machinery/door/window{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) -"gn" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/academy/classrooms) +"gn" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/academy/classrooms) "go" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/awaymission/academy/classrooms) "gp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) "gq" = (/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) @@ -337,9 +337,9 @@ "gy" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "gz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft) "gA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft) -"gB" = (/obj/structure/table,/obj/item/weapon/gun/projectile/shotgun/pump/sc_pump,/obj/item/weapon/paper{info = "Grade: A+ Educator's Notes: Excellent form."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) -"gC" = (/obj/structure/table,/obj/item/weapon/gun/projectile/russian,/obj/item/weapon/paper{info = "Grade: B- Educator's Notes: Keep applying yourself, you're showing improvement."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) -"gD" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) +"gB" = (/obj/structure/table/standard,/obj/item/weapon/gun/projectile/shotgun/pump/sc_pump,/obj/item/weapon/paper{info = "Grade: A+ Educator's Notes: Excellent form."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) +"gC" = (/obj/structure/table/standard,/obj/item/weapon/gun/projectile/russian,/obj/item/weapon/paper{info = "Grade: B- Educator's Notes: Keep applying yourself, you're showing improvement."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) +"gD" = (/obj/structure/table/standard,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) "gE" = (/obj/structure/window/reinforced,/obj/item/ammo_casing,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/awaymission/academy/classrooms) "gF" = (/mob/living/simple_animal/hostile/bear,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "gG" = (/obj/structure/bookcase,/obj/item/weapon/book/manual/hydroponics_pod_people,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) @@ -352,7 +352,7 @@ "gN" = (/obj/machinery/door/airlock/gold{locked = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms) "gO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) "gP" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) -"gQ" = (/obj/structure/table,/obj/item/weapon/gun/energy/floragun,/obj/item/weapon/paper{info = "Grade: D- Educator's Notes: SEE ME AFTER CLASS."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) +"gQ" = (/obj/structure/table/standard,/obj/item/weapon/gun/energy/floragun,/obj/item/weapon/paper{info = "Grade: D- Educator's Notes: SEE ME AFTER CLASS."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms) "gR" = (/obj/structure/closet/crate,/obj/item/stack/sheet/glass,/obj/item/target,/obj/item/target,/turf/simulated/floor,/area/awaymission/academy/classrooms) "gS" = (/obj/machinery/shieldwallgen,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/awaymission/academy/classrooms) "gT" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/academy/classrooms) @@ -449,13 +449,13 @@ "iG" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/wood,/area/awaymission/academy/academyaft) "iH" = (/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/engine,/area/awaymission/academy/academyaft) "iI" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft) -"iJ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/weapon/beach_ball/holoball,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/academy/academyaft) +"iJ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/item/weapon/beach_ball/holoball,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/academy/academyaft) "iK" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/awaymission/academy/academyaft) "iL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft) "iM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft) "iN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft) "iO" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft) -"iP" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/device/soulstone,/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft) +"iP" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/item/device/soulstone,/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft) "iQ" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l"; icon_state = "propulsion_l"},/turf/space,/area/awaymission/academy/academyaft) "iR" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/awaymission/academy/academyaft) "iS" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_r"; icon_state = "propulsion_r"},/turf/space,/area/awaymission/academy/academyaft) @@ -465,24 +465,24 @@ "iW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft) "iX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft) "iY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft) -"iZ" = (/obj/structure/table,/obj/item/clothing/glasses/meson/truesight,/turf/simulated/floor,/area/awaymission/academy/academyaft) +"iZ" = (/obj/structure/table/standard,/obj/item/clothing/glasses/meson/truesight,/turf/simulated/floor,/area/awaymission/academy/academyaft) "ja" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft) "jb" = (/obj/structure/noticeboard,/turf/simulated/wall,/area/awaymission/academy/academyaft) "jc" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft) "jd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft) -"je" = (/obj/structure/table,/obj/item/brain{name = "The preserved brain of Harry Houdini"},/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft) +"je" = (/obj/structure/table/standard,/obj/item/brain{name = "The preserved brain of Harry Houdini"},/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft) "jf" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/awaymission/academy/academyaft) "jg" = (/turf/simulated/floor{dir = 8; icon_state = "yellow"},/area/awaymission/academy/academyaft) "jh" = (/turf/simulated/floor{dir = 4; icon_state = "yellow"},/area/awaymission/academy/academyaft) "ji" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft) "jj" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/awaymission/academy/academyaft) -"jk" = (/obj/structure/window/reinforced,/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/golden_cup,/turf/simulated/floor{icon_state = "red"},/area/awaymission/academy/academyaft) +"jk" = (/obj/structure/window/reinforced,/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/golden_cup,/turf/simulated/floor{icon_state = "red"},/area/awaymission/academy/academyaft) "jl" = (/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "red"; dir = 6},/area/awaymission/academy/academyaft) "jm" = (/obj/structure/cult/pylon,/turf/simulated/floor{icon_state = "yellow"; dir = 10},/area/awaymission/academy/academyaft) "jn" = (/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/academyaft) "jo" = (/obj/structure/cult/pylon,/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/academyaft) "jp" = (/obj/structure/window/reinforced,/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft) -"jq" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/item/device/batterer,/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft) +"jq" = (/obj/structure/table/standard,/obj/structure/window/reinforced,/obj/item/device/batterer,/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft) "jr" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/space,/area) "js" = (/obj/machinery/igniter,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft) "jt" = (/obj/structure/window/reinforced,/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft) diff --git a/maps/RandomZLevels/blackmarketpackers.dmm b/maps/RandomZLevels/blackmarketpackers.dmm index d6c1ca8455..293a212f96 100644 --- a/maps/RandomZLevels/blackmarketpackers.dmm +++ b/maps/RandomZLevels/blackmarketpackers.dmm @@ -42,8 +42,8 @@ "aP" = (/turf/simulated/floor/plating{tag = "icon-warnplate (NORTHWEST)"; icon_state = "warnplate"; dir = 9},/area/awaymission/BMPship1) "aQ" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/appendix,/obj/item/weapon/reagent_containers/food/snacks/meat,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/awaymission/BMPship1) "aR" = (/obj/structure/closet/crate/freezer,/obj/item/brain,/obj/item/weapon/reagent_containers/food/snacks/appendix,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/awaymission/BMPship1) -"aS" = (/obj/structure/table,/obj/item/weapon/packageWrap,/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/awaymission/BMPship1) -"aT" = (/obj/structure/table,/obj/item/weapon/storage/box,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/awaymission/BMPship1) +"aS" = (/obj/structure/table/standard,/obj/item/weapon/packageWrap,/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/awaymission/BMPship1) +"aT" = (/obj/structure/table/standard,/obj/item/weapon/storage/box,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/awaymission/BMPship1) "aU" = (/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/awaymission/BMPship1) "aV" = (/turf/simulated/floor/plating{tag = "icon-warnplate (NORTHEAST)"; icon_state = "warnplate"; dir = 5},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/awaymission/BMPship1) "aW" = (/turf/simulated/floor/plating/airless{tag = "icon-platingdmg2"; icon_state = "platingdmg2"},/area/awaymission/BMPship1) @@ -130,7 +130,7 @@ "cz" = (/turf/simulated/floor{tag = "icon-carpet"; icon_state = "carpet"},/area/awaymission/BMPship3) "cA" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; locked = 0; req_access = ""},/turf/simulated/floor{tag = "icon-carpet"; icon_state = "carpet"},/area/awaymission/BMPship3) "cB" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/awaymission/BMPship2) -"cC" = (/obj/structure/table,/obj/item/weapon/screwdriver,/obj/item/weapon/screwdriver,/obj/item/weapon/paper{info = "The next person who takes one of my screwdrivers gets stabbed with one. They are MINE. - Love, Madsen"; name = "scribbled note"},/obj/item/weapon/screwdriver,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) +"cC" = (/obj/structure/table/standard,/obj/item/weapon/screwdriver,/obj/item/weapon/screwdriver,/obj/item/weapon/paper{info = "The next person who takes one of my screwdrivers gets stabbed with one. They are MINE. - Love, Madsen"; name = "scribbled note"},/obj/item/weapon/screwdriver,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) "cD" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) "cE" = (/obj/machinery/hydroponics,/turf/simulated/floor{tag = "icon-green (WEST)"; icon_state = "green"; dir = 8},/area/awaymission/BMPship2) "cF" = (/obj/structure/sink{dir = 2},/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/BMPship2) @@ -139,14 +139,14 @@ "cI" = (/obj/machinery/hydroponics,/turf/simulated/floor{tag = "icon-green (EAST)"; icon_state = "green"; dir = 4},/area/awaymission/BMPship2) "cJ" = (/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) "cK" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"},/area/awaymission/BMPship2) -"cL" = (/obj/structure/table,/obj/item/weapon/butch,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/simulated/floor{tag = "icon-barber"; icon_state = "barber"},/area/awaymission/BMPship2) -"cM" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{tag = "icon-barber"; icon_state = "barber"},/area/awaymission/BMPship2) -"cN" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor{tag = "icon-barber"; icon_state = "barber"},/area/awaymission/BMPship2) +"cL" = (/obj/structure/table/standard,/obj/item/weapon/butch,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/simulated/floor{tag = "icon-barber"; icon_state = "barber"},/area/awaymission/BMPship2) +"cM" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{tag = "icon-barber"; icon_state = "barber"},/area/awaymission/BMPship2) +"cN" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/simulated/floor{tag = "icon-barber"; icon_state = "barber"},/area/awaymission/BMPship2) "cO" = (/obj/machinery/processor,/obj/machinery/light{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{tag = "icon-barber"; icon_state = "barber"},/area/awaymission/BMPship2) -"cP" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) -"cQ" = (/obj/structure/table,/obj/item/weapon/kitchenknife,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) -"cR" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) -"cS" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) +"cP" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) +"cQ" = (/obj/structure/table/standard,/obj/item/weapon/kitchenknife,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) +"cR" = (/obj/structure/table/standard,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) +"cS" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/BMPship2) "cT" = (/turf/simulated/shuttle/wall{tag = "icon-swall7"; icon_state = "swall7"},/area/awaymission/BMPship1) "cU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/poddoor/shutters{id = "packerCargo"},/turf/simulated/floor/plating,/area/awaymission/BMPship1) "cV" = (/turf/simulated/floor{tag = "icon-carpet15-13 (EAST)"; icon_state = "carpet15-13"; dir = 4},/area/awaymission/BMPship3) @@ -189,8 +189,8 @@ "dG" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/awaymission/BMPship1) "dH" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; environ = 0; equipment = 3; locked = 0; req_access = ""},/turf/simulated/floor/plating,/area/awaymission/BMPship1) "dI" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/BMPship1) -"dJ" = (/obj/structure/table,/obj/item/weapon/paper{info = "I'm no scientist, but judging from the design and components, it seems to be some kind of gateway. This thing is gonna be worth a lot of cash to the right man. The boys are excited, as they have every right to be, and I've let them crack into that case of beer we got. I normally wouldn't allow such a thing, but this is a time for celebration! It's not like a couple drinks will hurt anything."; name = "Captain's log entry"},/turf/simulated/floor{tag = "icon-carpet6-0 (EAST)"; icon_state = "carpet6-0"; dir = 4},/area/awaymission/BMPship3) -"dK" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor{tag = "icon-carpet14-2 (EAST)"; icon_state = "carpet14-2"; dir = 4},/area/awaymission/BMPship3) +"dJ" = (/obj/structure/table/standard,/obj/item/weapon/paper{info = "I'm no scientist, but judging from the design and components, it seems to be some kind of gateway. This thing is gonna be worth a lot of cash to the right man. The boys are excited, as they have every right to be, and I've let them crack into that case of beer we got. I normally wouldn't allow such a thing, but this is a time for celebration! It's not like a couple drinks will hurt anything."; name = "Captain's log entry"},/turf/simulated/floor{tag = "icon-carpet6-0 (EAST)"; icon_state = "carpet6-0"; dir = 4},/area/awaymission/BMPship3) +"dK" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor{tag = "icon-carpet14-2 (EAST)"; icon_state = "carpet14-2"; dir = 4},/area/awaymission/BMPship3) "dL" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{tag = "icon-carpet14-8 (EAST)"; icon_state = "carpet14-8"; dir = 4},/area/awaymission/BMPship3) "dM" = (/turf/simulated/floor{tag = "icon-carpet10-0 (EAST)"; icon_state = "carpet10-0"; dir = 4},/area/awaymission/BMPship3) "dN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-carpet"; icon_state = "carpet"},/area/awaymission/BMPship3) @@ -212,7 +212,7 @@ "ed" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (EAST)"; icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/airless{tag = "icon-engine"; icon_state = "engine"},/area/awaymission/BMPship1) "ee" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (WEST)"; icon_state = "propulsion"; dir = 8},/turf/space,/area/awaymission/BMPship1) "ef" = (/turf/simulated/floor{tag = "icon-carpet15-15 (EAST)"; icon_state = "carpet15-15"; dir = 4},/area/awaymission/BMPship3) -"eg" = (/obj/structure/table,/obj/machinery/recharger,/turf/simulated/floor{tag = "icon-carpet5-0 (EAST)"; icon_state = "carpet5-0"; dir = 4},/area/awaymission/BMPship3) +"eg" = (/obj/structure/table/standard,/obj/machinery/recharger,/turf/simulated/floor{tag = "icon-carpet5-0 (EAST)"; icon_state = "carpet5-0"; dir = 4},/area/awaymission/BMPship3) "eh" = (/obj/structure/stool,/turf/simulated/floor{tag = "icon-carpet13-1 (EAST)"; icon_state = "carpet13-1"; dir = 4},/area/awaymission/BMPship3) "ei" = (/turf/simulated/floor{tag = "icon-carpet13-4 (EAST)"; icon_state = "carpet13-4"; dir = 4},/area/awaymission/BMPship3) "ej" = (/turf/simulated/floor{tag = "icon-carpet9-0 (EAST)"; icon_state = "carpet9-0"; dir = 4},/area/awaymission/BMPship3) @@ -255,7 +255,7 @@ "eU" = (/obj/machinery/power/terminal{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/awaymission/BMPship1) "eV" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/BMPship1) "eW" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/BMPship3) -"eX" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-carpet7-3 (EAST)"; icon_state = "carpet7-3"; dir = 4},/area/awaymission/BMPship3) +"eX" = (/obj/structure/table/standard,/turf/simulated/floor{tag = "icon-carpet7-3 (EAST)"; icon_state = "carpet7-3"; dir = 4},/area/awaymission/BMPship3) "eY" = (/obj/structure/stool/bed/chair/office{dir = 8},/turf/simulated/floor{tag = "icon-carpet11-12 (EAST)"; icon_state = "carpet11-12"; dir = 4},/area/awaymission/BMPship3) "eZ" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor{tag = "icon-carpet15-14 (EAST)"; icon_state = "carpet15-14"; dir = 4},/area/awaymission/BMPship3) "fa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-carpet15-15 (EAST)"; icon_state = "carpet15-15"; dir = 4},/area/awaymission/BMPship3) @@ -382,8 +382,8 @@ "hr" = (/turf/simulated/shuttle/wall{tag = "icon-swall15"; icon_state = "swall15"},/area/awaymission/BMPship2) "hs" = (/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/awaymission/BMPship1) "ht" = (/obj/structure/stool,/turf/simulated/floor,/area/awaymission/BMPship1) -"hu" = (/obj/structure/table,/obj/item/weapon/paper{info = "DEAR DAIRY: So we was doing our typpical route when the captain says we've been picking up weird signals on some backwatter planet. Madsen wanted to stay on course but he ain't the captain, so we went out of the way to check it out. There was lots of rocks on the way, but we got to the planet fine. Found a big fancy camp with nobody around and this big metal donut thing with NT stamps all over it right in the middle. Case of beer too. Captain reckons we can pass it off to some buyer in the Syndicate. Ingram says it's bad luck and that someone is going to come look for it but it sounds like better money than selling bad meat to jerky companies."; name = "Old Diary"},/turf/simulated/floor,/area/awaymission/BMPship1) -"hv" = (/obj/structure/table,/obj/item/weapon/pen/red,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor,/area/awaymission/BMPship1) +"hu" = (/obj/structure/table/standard,/obj/item/weapon/paper{info = "DEAR DAIRY: So we was doing our typpical route when the captain says we've been picking up weird signals on some backwatter planet. Madsen wanted to stay on course but he ain't the captain, so we went out of the way to check it out. There was lots of rocks on the way, but we got to the planet fine. Found a big fancy camp with nobody around and this big metal donut thing with NT stamps all over it right in the middle. Case of beer too. Captain reckons we can pass it off to some buyer in the Syndicate. Ingram says it's bad luck and that someone is going to come look for it but it sounds like better money than selling bad meat to jerky companies."; name = "Old Diary"},/turf/simulated/floor,/area/awaymission/BMPship1) +"hv" = (/obj/structure/table/standard,/obj/item/weapon/pen/red,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor,/area/awaymission/BMPship1) "hw" = (/obj/structure/closet,/obj/item/clothing/under/overalls,/turf/simulated/floor,/area/awaymission/BMPship1) "hx" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/engine,/area/awaymission/BMPship3) "hy" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/engine,/area/awaymission/BMPship3) diff --git a/maps/RandomZLevels/challenge.dmm b/maps/RandomZLevels/challenge.dmm index 627db267fe..fc91bdf165 100644 --- a/maps/RandomZLevels/challenge.dmm +++ b/maps/RandomZLevels/challenge.dmm @@ -160,11 +160,11 @@ "dd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/poddoor{icon_state = "pdoor1"; id = "challenge"; name = "Gateway Shutters"; p_open = 0},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) "de" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/space,/area) "df" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/awaymission/challenge/end) -"dg" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet,/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) -"dh" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) +"dg" = (/obj/structure/table/standard,/obj/item/weapon/paper/pamphlet,/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) +"dh" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) "di" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) -"dj" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) -"dk" = (/obj/structure/table,/obj/item/weapon/implanter/explosive,/obj/item/weapon/implanter/explosive{pixel_y = 4},/obj/item/weapon/implanter/explosive{pixel_y = 8},/obj/item/weapon/implanter/explosive{pixel_y = 12},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) +"dj" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) +"dk" = (/obj/structure/table/standard,/obj/item/weapon/implanter/explosive,/obj/item/weapon/implanter/explosive{pixel_y = 4},/obj/item/weapon/implanter/explosive{pixel_y = 8},/obj/item/weapon/implanter/explosive{pixel_y = 12},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) "dl" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/space,/area) "dm" = (/obj/machinery/door/airlock/centcom{name = "Gateway Access"; opacity = 1; req_access_txt = "109"},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/challenge/end) "dn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/challenge/end) diff --git a/maps/RandomZLevels/example.dmm b/maps/RandomZLevels/example.dmm index 246137e61d..2fd222eacf 100644 --- a/maps/RandomZLevels/example.dmm +++ b/maps/RandomZLevels/example.dmm @@ -25,14 +25,14 @@ "ay" = (/obj/machinery/light/small,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/awaymission/example) "az" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/example) "aA" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/effect/decal/cleanable/oil,/turf/simulated/floor,/area/awaymission/example) -"aB" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table,/obj/item/weapon/paper/pamphlet,/turf/simulated/floor,/area/awaymission/example) +"aB" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table/standard,/obj/item/weapon/paper/pamphlet,/turf/simulated/floor,/area/awaymission/example) "aC" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor,/area/awaymission/example) "aD" = (/obj/machinery/light,/turf/simulated/floor,/area/awaymission/example) -"aE" = (/obj/structure/table,/obj/item/device/flashlight,/turf/simulated/floor,/area/awaymission/example) -"aF" = (/obj/structure/table,/obj/item/weapon/crowbar,/turf/simulated/floor,/area/awaymission/example) +"aE" = (/obj/structure/table/standard,/obj/item/device/flashlight,/turf/simulated/floor,/area/awaymission/example) +"aF" = (/obj/structure/table/standard,/obj/item/weapon/crowbar,/turf/simulated/floor,/area/awaymission/example) "aG" = (/obj/effect/decal/cleanable/vomit,/turf/simulated/floor,/area/awaymission/example) "aH" = (/obj/structure/ladder{height = 1; id = "example"},/turf/simulated/floor/plating,/area/awaymission/example) -"aI" = (/obj/structure/table,/obj/effect/spawner/lootdrop{loot = "/obj/item/weapon/wrench;/obj/item/weapon/screwdriver;/obj/item/weapon/cigpacket/dromedaryco"; lootcount = 2},/turf/simulated/floor,/area/awaymission/example) +"aI" = (/obj/structure/table/standard,/obj/effect/spawner/lootdrop{loot = "/obj/item/weapon/wrench;/obj/item/weapon/screwdriver;/obj/item/weapon/cigpacket/dromedaryco"; lootcount = 2},/turf/simulated/floor,/area/awaymission/example) "aJ" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/awaymission/example) "aK" = (/obj/machinery/door/airlock/command,/turf/simulated/floor,/area/awaymission/example) "aL" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/awaymission/example) @@ -51,14 +51,14 @@ "aY" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "example"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/awaymission/example) "aZ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "example"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/awaymission/example) "ba" = (/obj/machinery/door_control{id = "example"; name = "Privacy Shutters"; pixel_y = 25},/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) -"bb" = (/obj/structure/table,/obj/item/device/healthanalyzer,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) +"bb" = (/obj/structure/table/standard,/obj/item/device/healthanalyzer,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) "bc" = (/obj/structure/stool/bed,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) "bd" = (/obj/structure/stool,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) -"be" = (/obj/structure/table,/obj/item/device/mass_spectrometer/adv,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) -"bf" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) -"bg" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen/red,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) +"be" = (/obj/structure/table/standard,/obj/item/device/mass_spectrometer/adv,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) +"bf" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) +"bg" = (/obj/structure/table/standard,/obj/item/weapon/folder/white,/obj/item/weapon/pen/red,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) "bh" = (/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) -"bi" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/reagent_containers/syringe/antiviral,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) +"bi" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/reagent_containers/syringe/antiviral,/turf/simulated/floor{icon_state = "white"},/area/awaymission/example) "bj" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/awaymission/example) "bk" = (/turf/simulated/floor{dir = 4; icon_state = "yellowcorner"},/area/awaymission/example) "bl" = (/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/example) @@ -74,7 +74,7 @@ "bv" = (/obj/effect/landmark{name = "awaystart"},/turf/space,/area) "bw" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/example) "bx" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/example) -"by" = (/obj/structure/table,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) +"by" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bz" = (/obj/structure/stool,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bA" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bB" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) @@ -84,7 +84,7 @@ "bF" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/example) "bG" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/turf/simulated/floor,/area/awaymission/example) "bH" = (/obj/machinery/vending/boozeomat{density = 0; pixel_x = -32},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) -"bI" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/sodawater,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) +"bI" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/sodawater,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bJ" = (/obj/structure/bookcase{density = 0; pixel_y = 32},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/book/manual/chef_recipes,/obj/item/weapon/book/manual/ripley_build_and_repair,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bK" = (/obj/structure/stool/bed/chair/wood/normal{tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bL" = (/obj/structure/table/woodentable,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) @@ -93,25 +93,25 @@ "bO" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/bottle/wine,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bP" = (/obj/structure/stool/bed/chair/wood/normal{tag = "icon-wooden_chair (NORTH)"; icon_state = "wooden_chair"; dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bQ" = (/obj/machinery/vending/snack,/turf/simulated/floor,/area/awaymission/example) -"bR" = (/obj/structure/table,/obj/machinery/light/small,/obj/item/weapon/paper{info = "X X O
    X O X
    O X"},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) +"bR" = (/obj/structure/table/standard,/obj/machinery/light/small,/obj/item/weapon/paper{info = "X X O
    X O X
    O X"},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bS" = (/obj/structure/device/piano,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bT" = (/obj/machinery/light/small,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bU" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/validsalad,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/example) "bV" = (/obj/machinery/vending/cigarette,/turf/simulated/floor,/area/awaymission/example) -"bW" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/example) -"bX" = (/obj/structure/table,/obj/item/device/analyzer,/turf/simulated/floor,/area/awaymission/example) -"bY" = (/obj/structure/table,/obj/item/weapon/rack_parts,/turf/simulated/floor,/area/awaymission/example) -"bZ" = (/obj/structure/table,/obj/item/device/toner,/turf/simulated/floor,/area/awaymission/example) -"ca" = (/obj/structure/table,/obj/item/weapon/wirecutters,/obj/item/stack/cable_coil/yellow,/turf/simulated/floor,/area/awaymission/example) -"cb" = (/obj/structure/table,/obj/item/weapon/wrench,/turf/simulated/floor,/area/awaymission/example) +"bW" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/example) +"bX" = (/obj/structure/table/standard,/obj/item/device/analyzer,/turf/simulated/floor,/area/awaymission/example) +"bY" = (/obj/structure/table/standard,/obj/item/weapon/rack_parts,/turf/simulated/floor,/area/awaymission/example) +"bZ" = (/obj/structure/table/standard,/obj/item/device/toner,/turf/simulated/floor,/area/awaymission/example) +"ca" = (/obj/structure/table/standard,/obj/item/weapon/wirecutters,/obj/item/stack/cable_coil/yellow,/turf/simulated/floor,/area/awaymission/example) +"cb" = (/obj/structure/table/standard,/obj/item/weapon/wrench,/turf/simulated/floor,/area/awaymission/example) "cc" = (/obj/machinery/vending/assist,/turf/simulated/floor,/area/awaymission/example) "cd" = (/obj/structure/ladder{id = "example"},/turf/simulated/floor/plating,/area/awaymission/example) "ce" = (/obj/structure/filingcabinet,/obj/item/weapon/paper{info = "Todo: write up a lawsuit for Ted, fuck what the pamphlets say, nothing good is gonna come out of that gate. Ted'll thank me later, I'll bet."; name = "documents"},/turf/simulated/floor,/area/awaymission/example) -"cf" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue,/turf/simulated/floor,/area/awaymission/example) +"cf" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue,/turf/simulated/floor,/area/awaymission/example) "cg" = (/obj/machinery/photocopier,/turf/simulated/floor,/area/awaymission/example) -"ch" = (/obj/structure/table,/obj/item/weapon/screwdriver,/obj/item/weapon/hand_labeler,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/awaymission/example) +"ch" = (/obj/structure/table/standard,/obj/item/weapon/screwdriver,/obj/item/weapon/hand_labeler,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/awaymission/example) "ci" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/simulated/floor,/area/awaymission/example) -"cj" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet,/turf/simulated/floor,/area/awaymission/example) +"cj" = (/obj/structure/table/standard,/obj/item/weapon/paper/pamphlet,/turf/simulated/floor,/area/awaymission/example) "ck" = (/obj/machinery/door/airlock,/turf/simulated/floor,/area/awaymission/example) "cl" = (/turf/simulated/floor{dir = 4; icon_state = "yellow"},/area/awaymission/example) "cm" = (/obj/item/weapon/paper{info = "Hey Ted, remind me to take Angeline out some time before I ship out. You know how bad my memory is, so don't get all high and mighty with me. READ THIS."; name = "note"},/turf/simulated/floor,/area/awaymission/example) @@ -124,7 +124,7 @@ "ct" = (/obj/effect/landmark{name = "awaystart"},/obj/machinery/light_construct/small{tag = "icon-bulb-construct-stage1 (WEST)"; icon_state = "bulb-construct-stage1"; dir = 8},/turf/simulated/floor,/area/awaymission/example) "cu" = (/obj/effect/landmark{name = "awaystart"},/obj/item/weapon/mop,/turf/simulated/floor,/area/awaymission/example) "cv" = (/obj/structure/closet,/turf/simulated/floor,/area/awaymission/example) -"cw" = (/obj/structure/table,/obj/item/weapon/cell/high,/turf/simulated/floor,/area/awaymission/example) +"cw" = (/obj/structure/table/standard,/obj/item/weapon/cell/high,/turf/simulated/floor,/area/awaymission/example) "cx" = (/obj/structure/stool,/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor,/area/awaymission/example) "cy" = (/obj/structure/mopbucket,/obj/machinery/light_construct/small{dir = 4},/turf/simulated/floor,/area/awaymission/example) diff --git a/maps/RandomZLevels/listeningpost.dmm b/maps/RandomZLevels/listeningpost.dmm index 6c0fbf52f3..a6c4014fa1 100644 --- a/maps/RandomZLevels/listeningpost.dmm +++ b/maps/RandomZLevels/listeningpost.dmm @@ -5,14 +5,14 @@ "e" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; name = "power storage unit"},/turf/simulated/floor/plating,/area/awaymission/listeningpost) "f" = (/obj/machinery/door/airlock,/turf/simulated/floor,/area/awaymission/listeningpost) "g" = (/turf/simulated/wall,/area/awaymission/listeningpost) -"h" = (/obj/structure/table,/obj/item/weapon/paper/monitorkey,/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/item/clothing/glasses/regular,/turf/simulated/floor,/area/awaymission/listeningpost) -"i" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/listeningpost) +"h" = (/obj/structure/table/standard,/obj/item/weapon/paper/monitorkey,/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/item/clothing/glasses/regular,/turf/simulated/floor,/area/awaymission/listeningpost) +"i" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/listeningpost) "j" = (/turf/simulated/floor,/area/awaymission/listeningpost) "k" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plating,/area/awaymission/listeningpost) "l" = (/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "m" = (/obj/machinery/computer/message_monitor,/turf/simulated/floor,/area/awaymission/listeningpost) "n" = (/obj/structure/stool/bed/chair{dir = 4},/mob/living/simple_animal/hostile/syndicate{desc = "A weary looking syndicate operative."; faction = "syndicate"},/turf/simulated/floor,/area/awaymission/listeningpost) -"o" = (/obj/structure/table,/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "november report"},/obj/item/weapon/pen,/turf/simulated/floor,/area/awaymission/listeningpost) +"o" = (/obj/structure/table/standard,/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "november report"},/obj/item/weapon/pen,/turf/simulated/floor,/area/awaymission/listeningpost) "p" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/simulated/floor,/area/awaymission/listeningpost) "q" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/mask/gas,/obj/item/clothing/head/helmet/space/syndicate,/turf/simulated/floor,/area/awaymission/listeningpost) "r" = (/obj/machinery/door/airlock,/obj/item/weapon/paper{info = "I wonder how much longer they will accept my empty reports. They will cancel the case soon without results. When the pickup comes, I will tell them I have lost faith in our cause, and beg them to consider a diplomatic solution. How many nuclear teams have been dispatched with those nukes? I must try and prevent more from ever being sent. If they will not listen to reason, I will detonate the warehouse myself. Maybe some day in the immediate future, space will be peaceful, though I don't intend to live to see it. And that is why I write this down- it is my sacrifice that stabilised your worlds, traveller. Spare a thought for me, and please attempt to prevent nuclear proliferation, should it ever rear it's ugly head again. -Donk Co. Operative #451"; name = "odd report"},/obj/item/weapon/gun/projectile/pistol,/obj/item/weapon/silencer,/turf/simulated/floor,/area/awaymission/listeningpost) @@ -20,13 +20,13 @@ "t" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/mineral,/area/mine/unexplored) "u" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plating/airless,/area) "v" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/brown,/turf/simulated/floor,/area/awaymission/listeningpost) -"w" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/awaymission/listeningpost) +"w" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/awaymission/listeningpost) "x" = (/obj/machinery/vending/snack,/turf/simulated/floor,/area/awaymission/listeningpost) "y" = (/obj/structure/disposalpipe/segment,/turf/simulated/mineral,/area/mine/unexplored) "z" = (/obj/machinery/vending/cola,/turf/simulated/floor,/area/awaymission/listeningpost) "A" = (/obj/structure/closet,/obj/item/clothing/gloves/boxing,/turf/simulated/floor,/area/awaymission/listeningpost) "B" = (/obj/structure/filingcabinet,/obj/item/weapon/paper{info = "A good start to the operation: intercepted Nanotrasen military communications. A convoy is scheduled to transfer nuclear warheads to a new military base. This is as good a chance as any to get our hands on some heavy weaponry, I suggest we take it."; name = "april report"},/obj/item/weapon/paper{info = "Nothing of real interest to report this month. I have intercepted faint transmissions from what appears to be some sort of pirate radio station. They do not appear to be relevant to my assignment."; name = "may report"},/obj/item/weapon/paper{info = "Nanotrasen communications have been noticably less frequent recently. The pirate radio station I found last month has been transmitting pro-Nanotrasen propaganda. I will continue to monitor it."; name = "june report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "july report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "august report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "september report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "october report"},/obj/item/weapon/paper{info = "1 x Stechtkin pistol - $600
    1 x silencer - $200
    shipping charge - $4360
    total - $5160"; name = "receipt"},/turf/simulated/floor,/area/awaymission/listeningpost) -"C" = (/obj/structure/table,/obj/item/weapon/paper{info = "Mission Details: You have been assigned to a newly constructed listening post constructed within an asteroid in Nanotrasen space to monitor their plasma mining operations. Accurate intel is crucial to the success of our operatives onboard, do not fail us."; name = "mission briefing"},/turf/simulated/floor,/area/awaymission/listeningpost) +"C" = (/obj/structure/table/standard,/obj/item/weapon/paper{info = "Mission Details: You have been assigned to a newly constructed listening post constructed within an asteroid in Nanotrasen space to monitor their plasma mining operations. Accurate intel is crucial to the success of our operatives onboard, do not fail us."; name = "mission briefing"},/turf/simulated/floor,/area/awaymission/listeningpost) "D" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor,/area/awaymission/listeningpost) "E" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/awaymission/listeningpost) "F" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/mineral,/area/mine/unexplored) diff --git a/maps/RandomZLevels/stationCollision.dmm b/maps/RandomZLevels/stationCollision.dmm index cbdd44a7c8..7a6add9b68 100644 --- a/maps/RandomZLevels/stationCollision.dmm +++ b/maps/RandomZLevels/stationCollision.dmm @@ -19,7 +19,7 @@ "as" = (/obj/machinery/power/solar_control{stat = 1},/turf/simulated/floor,/area/awaymission/northblock) "at" = (/obj/machinery/power/solar_control,/turf/simulated/floor,/area/awaymission/northblock) "au" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor,/area/awaymission/northblock) -"av" = (/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass,/obj/item/stack/sheet/plasteel,/turf/simulated/floor/airless,/area/awaymission/northblock) +"av" = (/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/obj/structure/table/standard,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass,/obj/item/stack/sheet/plasteel,/turf/simulated/floor/airless,/area/awaymission/northblock) "aw" = (/obj/structure/window/reinforced/tinted,/turf/simulated/floor/airless,/area/awaymission/northblock) "ax" = (/obj/structure/window/reinforced/tinted,/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/airless,/area/awaymission/northblock) "ay" = (/obj/structure/window/reinforced/tinted,/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/airless,/area/awaymission/northblock) @@ -36,7 +36,7 @@ "aJ" = (/turf/simulated/floor/plating/airless,/area/awaymission/syndishuttle) "aK" = (/turf/space,/area/awaymission/syndishuttle) "aL" = (/obj/machinery/recharge_station,/turf/simulated/floor,/area/awaymission/northblock) -"aM" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/northblock) +"aM" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/northblock) "aN" = (/obj/machinery/robotic_fabricator,/turf/simulated/floor,/area/awaymission/northblock) "aO" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_r (EAST)"; icon_state = "propulsion_r"; dir = 4},/turf/space,/area/awaymission/syndishuttle) "aP" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (WEST)"; icon_state = "heater"; dir = 8},/turf/simulated/floor/plating/airless,/area/awaymission/syndishuttle) @@ -78,8 +78,8 @@ "bz" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/shuttle/plating,/area/awaymission/syndishuttle) "bA" = (/obj/machinery/bot/medbot/mysterious{desc = "A dark little medical robot. She looks somewhat underwhelmed."; name = "Nightingale"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/awaymission/syndishuttle) "bB" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/awaymission/syndishuttle) -"bC" = (/obj/structure/table,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/awaymission/syndishuttle) -"bD" = (/obj/structure/table,/obj/item/weapon/paper/sc_safehint_paper_shuttle,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/awaymission/syndishuttle) +"bC" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/awaymission/syndishuttle) +"bD" = (/obj/structure/table/standard,/obj/item/weapon/paper/sc_safehint_paper_shuttle,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/awaymission/syndishuttle) "bE" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/awaymission/syndishuttle) "bF" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/awaymission/syndishuttle) "bG" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/awaymission/research) @@ -114,7 +114,7 @@ "cj" = (/obj/machinery/door/window/southleft,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/awaymission/research) "ck" = (/obj/item/weapon/shard{icon_state = "small"},/mob/living/carbon/alien/larva{bruteloss = 50; fireloss = 150; stat = 2},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/awaymission/research) "cl" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/shard{icon_state = "small"},/obj/effect/alien/weeds/node,/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/awaymission/research) -"cm" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/paper,/obj/item/weapon/paper,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"cm" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/paper,/obj/item/weapon/paper,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "cn" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/mob/living/simple_animal/hostile/hivebot{opensdoors = 0},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/awaymission/research) "co" = (/obj/structure/window/reinforced,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/awaymission/research) "cp" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/awaymission/research) @@ -137,7 +137,7 @@ "cG" = (/obj/machinery/power/emitter{anchored = 1; dir = 1; icon_state = "emitter"; state = 2},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "cH" = (/obj/item/clothing/mask/facehugger,/mob/living/carbon/alien/humanoid/queen{fireloss = 300; stat = 2},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "cI" = (/obj/effect/decal/remains/human,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"cJ" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"cJ" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "cK" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (WEST)"; icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/awaymission/research) "cL" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/clothing/suit/storage/labcoat,/obj/item/weapon/clipboard{pixel_x = -7; pixel_y = -4},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/research) "cM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/research) @@ -204,13 +204,13 @@ "dV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/awaymission/northblock) "dW" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "dX" = (/obj/item/weapon/table_parts,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"dY" = (/obj/structure/table,/obj/item/stack/cable_coil{amount = 5},/obj/item/weapon/screwdriver,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"dY" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{amount = 5},/obj/item/weapon/screwdriver,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "dZ" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "ea" = (/obj/machinery/light,/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "eb" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "ec" = (/turf/simulated/wall,/area/awaymission/research) "ed" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/item/weapon/shard,/turf/simulated/floor/plating,/area/awaymission/northblock) -"ee" = (/obj/structure/table,/turf/simulated/floor{icon_state = "bluecorner"},/area/awaymission/northblock) +"ee" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "bluecorner"},/area/awaymission/northblock) "ef" = (/turf/simulated/floor{icon_state = "blue"; dir = 6},/area/awaymission/northblock) "eg" = (/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/awaymission/northblock) "eh" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/awaymission/northblock) @@ -244,14 +244,14 @@ "eJ" = (/obj/machinery/atmospherics/pipe/simple{dir = 9; icon_state = "intact"; level = 2},/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "eK" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (WEST)"; icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/awaymission/research) "eL" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/awaymission/northblock) -"eM" = (/obj/structure/table,/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/awaymission/northblock) +"eM" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/awaymission/northblock) "eN" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "North Block APC"; pixel_x = 28},/obj/structure/cable,/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/awaymission/northblock) "eO" = (/obj/structure/window/reinforced,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/awaymission/northblock) "eP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/awaymission/northblock) -"eQ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/grown/potato,/obj/item/stack/cable_coil{amount = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"eR" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"eQ" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/grown/potato,/obj/item/stack/cable_coil{amount = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"eR" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "eS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"eT" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/weapon/book/manual/research_and_development,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"eT" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/item/weapon/book/manual/research_and_development,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "eU" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/remains/human,/obj/item/clothing/suit/storage/labcoat,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "eV" = (/obj/machinery/door/window/eastleft{name = "Windoor"},/obj/machinery/door/window/westleft{name = "Windoor"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "eW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 120; icon_state = "in"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) @@ -263,16 +263,16 @@ "fc" = (/turf/simulated/floor,/area/awaymission/northblock) "fd" = (/obj/machinery/light/small,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/awaymission/northblock) "fe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) -"ff" = (/obj/structure/table,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor{pixel_x = -3},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 3; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module{pixel_y = -3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"ff" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor{pixel_x = -3},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 3; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module{pixel_y = -3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fg" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"fh" = (/obj/structure/table,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stock_parts/micro_laser{pixel_x = -3; pixel_y = -3},/obj/item/weapon/stock_parts/micro_laser{pixel_x = 3; pixel_y = 3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"fh" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stock_parts/micro_laser{pixel_x = -3; pixel_y = -3},/obj/item/weapon/stock_parts/micro_laser{pixel_x = 3; pixel_y = 3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fi" = (/obj/machinery/computer/crew,/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/awaymission/northblock) "fj" = (/obj/machinery/light/small,/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/awaymission/northblock) -"fk" = (/obj/structure/table,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/awaymission/northblock) +"fk" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/awaymission/northblock) "fl" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{dir = 1; icon_state = "bluecorner"},/area/awaymission/northblock) "fm" = (/obj/machinery/door/airlock/gold{name = "Airlock"},/turf/simulated/floor,/area/awaymission/northblock) -"fn" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 5},/obj/item/weapon/cell/crap,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"fo" = (/obj/structure/table,/obj/item/weapon/stock_parts/matter_bin{pixel_x = 3},/obj/item/weapon/stock_parts/matter_bin{pixel_x = -3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"fn" = (/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 5},/obj/item/weapon/cell/crap,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"fo" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/matter_bin{pixel_x = 3},/obj/item/weapon/stock_parts/matter_bin{pixel_x = -3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fp" = (/obj/machinery/door/window/eastleft{name = "Windoor"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fq" = (/obj/structure/target_stake,/obj/item/target/syndicate,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fr" = (/obj/structure/closet/secure_closet/captains,/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/northblock) @@ -281,12 +281,12 @@ "fu" = (/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/awaymission/midblock) "fv" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/awaymission/midblock) "fw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/awaymission/midblock) -"fx" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/stock_parts/console_screen,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"fy" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 20; pixel_x = -3; pixel_y = -3},/obj/item/stack/sheet/glass{amount = 10; pixel_x = 3; pixel_y = 3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"fx" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/stock_parts/console_screen,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"fy" = (/obj/structure/table/standard,/obj/item/stack/sheet/metal{amount = 20; pixel_x = -3; pixel_y = -3},/obj/item/stack/sheet/glass{amount = 10; pixel_x = 3; pixel_y = 3},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fz" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fA" = (/obj/machinery/r_n_d/protolathe,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fB" = (/obj/machinery/r_n_d/destructive_analyzer,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"fC" = (/obj/structure/table,/obj/item/device/analyzer,/obj/item/device/mass_spectrometer{pixel_x = 5; pixel_y = 5},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"fC" = (/obj/structure/table/standard,/obj/item/device/analyzer,/obj/item/device/mass_spectrometer{pixel_x = 5; pixel_y = 5},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fD" = (/obj/structure/table/holotable,/obj/item/weapon/gun/energy/floragun{pixel_x = 2; pixel_y = 3},/obj/machinery/light,/obj/item/weapon/gun/energy/taser{pixel_x = -2; pixel_y = -2},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fE" = (/obj/structure/target_stake,/obj/item/weapon/grown/sunflower,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "fF" = (/obj/item/ammo_casing/c45,/obj/item/ammo_casing/c45{pixel_x = 7},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/northblock) @@ -328,9 +328,9 @@ "gp" = (/obj/structure/closet/crate,/turf/simulated/floor,/area/awaymission/midblock) "gq" = (/obj/machinery/gibber,/turf/simulated/floor,/area/awaymission/midblock) "gr" = (/obj/machinery/vending/boozeomat,/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/awaymission/midblock) -"gs" = (/obj/structure/table,/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/simulated/floor,/area/awaymission/midblock) +"gs" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/simulated/floor,/area/awaymission/midblock) "gt" = (/obj/item/ammo_casing/shotgun,/turf/simulated/floor,/area/awaymission/midblock) -"gu" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/midblock) +"gu" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/midblock) "gv" = (/obj/structure/stool,/turf/simulated/floor,/area/awaymission/midblock) "gw" = (/obj/structure/stool/bed/chair,/turf/simulated/floor,/area/awaymission/midblock) "gx" = (/obj/structure/table/woodentable,/obj/item/candle,/turf/simulated/floor{icon_state = "dark"},/area/awaymission/midblock) @@ -345,7 +345,7 @@ "gG" = (/obj/item/ammo_casing/shotgun,/obj/machinery/power/apc{cell_type = 5000; dir = 8; name = "Mid Block APC"; pixel_x = -28},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor,/area/awaymission/midblock) "gH" = (/obj/item/ammo_casing/shotgun,/obj/item/ammo_casing/shotgun,/obj/item/ammo_casing/shotgun,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/midblock) "gI" = (/obj/item/ammo_casing/shotgun,/obj/effect/decal/remains/human,/obj/item/clothing/under/rank/bartender,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/cleanable/blood/splatter,/obj/item/weapon/gun/projectile/shotgun/pump/sc_pump,/turf/simulated/floor,/area/awaymission/midblock) -"gJ" = (/obj/structure/table,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/midblock) +"gJ" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/midblock) "gK" = (/obj/structure/stool,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/awaymission/midblock) "gL" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor,/area/awaymission/midblock) "gM" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor,/area/awaymission/midblock) @@ -362,7 +362,7 @@ "gX" = (/obj/effect/decal/remains/human,/turf/simulated/floor{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/awaymission/arrivalblock) "gY" = (/obj/machinery/computer/security,/turf/simulated/floor{icon_state = "red"; dir = 9},/area/awaymission/arrivalblock) "gZ" = (/obj/machinery/computer/secure_data,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) -"ha" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law,/obj/item/weapon/melee/baton,/obj/item/clothing/head/helmet/warden,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) +"ha" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/security_space_law,/obj/item/weapon/melee/baton,/obj/item/clothing/head/helmet/warden,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) "hb" = (/obj/structure/closet/wardrobe/red,/obj/machinery/light{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) "hc" = (/obj/structure/closet/secure_closet/security,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) "hd" = (/obj/structure/closet/secure_closet/security,/turf/simulated/floor{icon_state = "red"; dir = 5},/area/awaymission/arrivalblock) @@ -372,8 +372,8 @@ "hh" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/purple,/obj/structure/window/reinforced/tinted{dir = 1},/obj/effect/decal/remains/human,/turf/simulated/floor,/area/awaymission/midblock) "hi" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/purple,/obj/structure/window/reinforced/tinted{dir = 1},/turf/simulated/floor,/area/awaymission/midblock) "hj" = (/obj/machinery/door/airlock,/turf/simulated/floor,/area/awaymission/midblock) -"hk" = (/obj/structure/table,/obj/item/ammo_casing/shotgun,/turf/simulated/floor,/area/awaymission/midblock) -"hl" = (/obj/structure/table,/obj/item/ammo_casing/shotgun,/obj/item/ammo_casing/shotgun,/obj/item/ammo_casing/shotgun,/turf/simulated/floor,/area/awaymission/midblock) +"hk" = (/obj/structure/table/standard,/obj/item/ammo_casing/shotgun,/turf/simulated/floor,/area/awaymission/midblock) +"hl" = (/obj/structure/table/standard,/obj/item/ammo_casing/shotgun,/obj/item/ammo_casing/shotgun,/obj/item/ammo_casing/shotgun,/turf/simulated/floor,/area/awaymission/midblock) "hm" = (/obj/structure/stool,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/midblock) "hn" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor,/area/awaymission/midblock) "ho" = (/obj/structure/table/woodentable,/turf/simulated/floor{icon_state = "dark"},/area/awaymission/midblock) @@ -393,19 +393,19 @@ "hC" = (/obj/item/ammo_casing/a12mm{pixel_x = 2; pixel_y = 5},/obj/item/ammo_casing/a12mm{pixel_x = -4; pixel_y = -5},/obj/item/ammo_casing/a12mm,/turf/simulated/floor/airless,/area/awaymission/midblock) "hD" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/airless,/area/awaymission/midblock) "hE" = (/obj/structure/sink/kitchen{pixel_y = 32},/turf/simulated/floor,/area/awaymission/midblock) -"hF" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/obj/item/weapon/reagent_containers/food/condiment/peppermill,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = 4; pixel_y = 4},/turf/simulated/floor,/area/awaymission/midblock) -"hG" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor,/area/awaymission/midblock) +"hF" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/obj/item/weapon/reagent_containers/food/condiment/peppermill,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = 4; pixel_y = 4},/turf/simulated/floor,/area/awaymission/midblock) +"hG" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor,/area/awaymission/midblock) "hH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/midblock) "hI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/shuttle/plating,/area/awaymission/arrivalblock) "hJ" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/awaymission/arrivalblock) "hK" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor,/area/awaymission/arrivalblock) -"hL" = (/obj/structure/table,/obj/item/weapon/storage/fancy/donut_box,/turf/simulated/floor,/area/awaymission/arrivalblock) -"hM" = (/obj/structure/table,/obj/item/weapon/handcuffs,/obj/item/device/flash,/turf/simulated/floor,/area/awaymission/arrivalblock) +"hL" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/donut_box,/turf/simulated/floor,/area/awaymission/arrivalblock) +"hM" = (/obj/structure/table/standard,/obj/item/weapon/handcuffs,/obj/item/device/flash,/turf/simulated/floor,/area/awaymission/arrivalblock) "hN" = (/turf/simulated/floor{icon_state = "red"; dir = 4},/area/awaymission/arrivalblock) "hO" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/blue,/obj/effect/decal/remains/human,/turf/simulated/floor,/area/awaymission/midblock) "hP" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/purple,/turf/simulated/floor,/area/awaymission/midblock) "hQ" = (/obj/machinery/processor,/turf/simulated/floor,/area/awaymission/midblock) -"hR" = (/obj/structure/table,/obj/item/weapon/book/manual/chef_recipes,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor,/area/awaymission/midblock) +"hR" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/chef_recipes,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor,/area/awaymission/midblock) "hS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/midblock) "hT" = (/obj/effect/decal/remains/human,/obj/item/weapon/butch,/obj/item/weapon/kitchenknife,/obj/item/clothing/head/chefhat,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/midblock) "hU" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/midblock) @@ -422,12 +422,12 @@ "if" = (/obj/machinery/door/airlock/glass_security{name = "Glass Airlock"; req_access_txt = "0"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/arrivalblock) "ig" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/airless,/area/awaymission/midblock) "ih" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/awaymission/midblock) -"ii" = (/obj/machinery/microwave{pixel_x = -2; pixel_y = 7},/obj/structure/table,/turf/simulated/floor,/area/awaymission/midblock) +"ii" = (/obj/machinery/microwave{pixel_x = -2; pixel_y = 7},/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/midblock) "ij" = (/obj/structure/stool,/obj/item/ammo_casing/a12mm,/turf/simulated/floor,/area/awaymission/midblock) "ik" = (/obj/item/ammo_casing/a12mm,/obj/item/ammo_casing/a12mm,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/midblock) "il" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/a12mm,/obj/item/clothing/under/syndicate,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/gun/projectile/automatic/c20r/sc_c20r,/turf/simulated/floor,/area/awaymission/midblock) "im" = (/obj/structure/stool/bed/chair{dir = 4},/obj/item/ammo_casing/a12mm,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/midblock) -"in" = (/obj/structure/table,/obj/item/ammo_casing/a12mm,/turf/simulated/floor,/area/awaymission/midblock) +"in" = (/obj/structure/table/standard,/obj/item/ammo_casing/a12mm,/turf/simulated/floor,/area/awaymission/midblock) "io" = (/obj/structure/stool/bed/chair{dir = 8},/obj/item/ammo_casing/a12mm,/obj/item/ammo_casing/a12mm,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/midblock) "ip" = (/obj/item/ammo_casing/a12mm,/turf/simulated/floor,/area/awaymission/arrivalblock) "iq" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/awaymission/arrivalblock) @@ -505,7 +505,7 @@ "jK" = (/obj/structure/closet/emcloset,/turf/simulated/floor,/area/awaymission/southblock) "jL" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "jM" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/southblock) -"jN" = (/obj/structure/table,/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/southblock) +"jN" = (/obj/structure/table/standard,/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/southblock) "jO" = (/obj/structure/noticeboard{dir = 1; pixel_y = 32},/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "jP" = (/turf/simulated/floor,/area/awaymission/southblock) "jQ" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/gateroom) @@ -528,7 +528,7 @@ "kh" = (/obj/structure/stool/bed/chair{dir = 4},/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "ki" = (/obj/machinery/light/small,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/southblock) "kj" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/southblock) -"kk" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/southblock) +"kk" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/southblock) "kl" = (/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "km" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/southblock) "kn" = (/obj/machinery/gateway{dir = 8},/turf/simulated/floor,/area/awaymission/gateroom) @@ -562,10 +562,10 @@ "kP" = (/obj/structure/morgue,/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "kQ" = (/obj/machinery/vending/medical,/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "kR" = (/obj/structure/stool/bed/roller,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/southblock) -"kS" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet{pixel_x = 2; pixel_y = 2},/obj/item/weapon/paper/pamphlet{pixel_x = -2; pixel_y = -2},/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/awaymission/gateroom) +"kS" = (/obj/structure/table/standard,/obj/item/weapon/paper/pamphlet{pixel_x = 2; pixel_y = 2},/obj/item/weapon/paper/pamphlet{pixel_x = -2; pixel_y = -2},/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/awaymission/gateroom) "kT" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/awaymission/gateroom) "kU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/awaymission/gateroom) -"kV" = (/obj/structure/table,/obj/item/device/camera,/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/awaymission/gateroom) +"kV" = (/obj/structure/table/standard,/obj/item/device/camera,/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/awaymission/gateroom) "kW" = (/obj/structure/stool/bed/chair/comfy/brown{tag = "icon-comfychair_brown (WEST)"; icon_state = "comfychair_brown"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/southblock) "kX" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock) "kY" = (/obj/structure/stool/bed/chair,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock) @@ -585,7 +585,7 @@ "lm" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/awaymission/gateroom) "ln" = (/obj/machinery/light/small,/turf/simulated/floor/wood,/area/awaymission/southblock) "lo" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/awaymission/arrivalblock) -"lp" = (/obj/structure/table,/obj/item/weapon/book/manual/hydroponics_pod_people,/turf/simulated/floor,/area/awaymission/arrivalblock) +"lp" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/hydroponics_pod_people,/turf/simulated/floor,/area/awaymission/arrivalblock) "lq" = (/obj/item/weapon/grown/deathnettle,/obj/item/clothing/shoes/brown,/obj/item/clothing/under/rank/hydroponics,/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/arrivalblock) "lr" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/awaymission/southblock) "ls" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/turf/simulated/floor,/area/awaymission/southblock) @@ -600,7 +600,7 @@ "lB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating,/area/awaymission/arrivalblock) "lC" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/awaymission/arrivalblock) "lD" = (/obj/structure/closet/crate/hydroponics,/turf/simulated/floor,/area/awaymission/arrivalblock) -"lE" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor,/area/awaymission/arrivalblock) +"lE" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor,/area/awaymission/arrivalblock) "lF" = (/obj/effect/decal/cleanable/blood/splatter,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor,/area/awaymission/arrivalblock) "lG" = (/obj/machinery/computer/operating,/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "lH" = (/obj/machinery/optable,/obj/machinery/light/small{dir = 1},/obj/effect/decal/remains/human,/obj/item/weapon/tank/anesthetic,/obj/item/clothing/mask/breath,/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) @@ -612,7 +612,7 @@ "lN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/awaymission/gateroom) "lO" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; name = "power storage unit"},/turf/simulated/floor,/area/awaymission/gateroom) "lP" = (/obj/structure/closet/secure_closet/hydroponics,/turf/simulated/floor,/area/awaymission/arrivalblock) -"lQ" = (/obj/structure/table,/obj/item/weapon/shovel/spade,/obj/item/weapon/reagent_containers/spray/plantbgone,/turf/simulated/floor,/area/awaymission/arrivalblock) +"lQ" = (/obj/structure/table/standard,/obj/item/weapon/shovel/spade,/obj/item/weapon/reagent_containers/spray/plantbgone,/turf/simulated/floor,/area/awaymission/arrivalblock) "lR" = (/obj/machinery/light,/turf/simulated/floor,/area/awaymission/arrivalblock) "lS" = (/obj/effect/decal/remains/human,/obj/item/clothing/mask/surgical,/obj/item/clothing/suit/storage/labcoat,/obj/item/clothing/gloves/latex,/turf/simulated/floor{icon_state = "white"},/area/awaymission/southblock) "lT" = (/obj/machinery/door/window/westright{name = "Windoor"},/turf/simulated/floor,/area/awaymission/southblock) diff --git a/maps/RandomZLevels/zresearchlabs.dmm b/maps/RandomZLevels/zresearchlabs.dmm index 28309859e9..a14c5a3558 100644 --- a/maps/RandomZLevels/zresearchlabs.dmm +++ b/maps/RandomZLevels/zresearchlabs.dmm @@ -17,26 +17,26 @@ "aq" = (/obj/machinery/door/airlock/maintenance_hatch{name = "Underground Maintenance"},/turf/simulated/floor/plating,/area/awaymission/labs/cave) "ar" = (/obj/effect/critter/fleshmonster,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "as" = (/obj/effect/critter/fleshmonster,/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"at" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil,/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"au" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"av" = (/obj/structure/table,/obj/item/weapon/camera_assembly,/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"at" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil,/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"au" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"av" = (/obj/structure/table/standard,/obj/item/weapon/camera_assembly,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aw" = (/obj/machinery/power/port_gen,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "ax" = (/obj/effect/decal/cleanable/dirt,/obj/effect/alien/flesh/weeds/node,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "ay" = (/obj/machinery/artifact,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "az" = (/obj/machinery/floodlight,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aA" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"aB" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"aC" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"aB" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"aC" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aD" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/wrench,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aE" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/yellow,/obj/item/weapon/storage/belt/utility,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aF" = (/obj/structure/closet/radiation,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aG" = (/obj/structure/closet/secure_closet/engineering_electrical,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aH" = (/obj/structure/closet/secure_closet/engineering_welding,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aI" = (/turf/unsimulated/desert,/area/awaymission/labs/cave) -"aJ" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -1; pixel_y = 7},/obj/item/stack/cable_coil{pixel_x = 0; pixel_y = 3},/obj/item/stack/cable_coil{pixel_x = 0; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"aK" = (/obj/structure/table,/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"aL" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/camera{c_tag = "Engineering SMES Room"; dir = 4; network = "SS13"},/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"aM" = (/obj/structure/table,/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/module/power_control,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/machinery/light,/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"aJ" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{pixel_x = -1; pixel_y = 7},/obj/item/stack/cable_coil{pixel_x = 0; pixel_y = 3},/obj/item/stack/cable_coil{pixel_x = 0; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"aK" = (/obj/structure/table/standard,/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"aL" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/machinery/camera{c_tag = "Engineering SMES Room"; dir = 4; network = "SS13"},/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"aM" = (/obj/structure/table/standard,/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/module/power_control,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/machinery/light,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "aN" = (/obj/effect/alien/flesh/weeds/node,/turf/unsimulated/desert,/area/awaymission/labs/cave) "aO" = (/obj/effect/critter/fleshmonster/fleshslime,/turf/unsimulated/desert,/area/awaymission/labs/cave) "aP" = (/obj/machinery/door/airlock/engineering,/turf/simulated/floor/plating,/area/awaymission/labs/cave) @@ -54,13 +54,13 @@ "bb" = (/obj/item/apc_frame,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bc" = (/obj/structure/closet/toolcloset,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bd" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) -"be" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) -"bf" = (/obj/structure/table,/obj/item/blueprints,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) -"bg" = (/obj/structure/table,/obj/item/weapon/camera_assembly,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) +"be" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) +"bf" = (/obj/structure/table/standard,/obj/item/blueprints,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) +"bg" = (/obj/structure/table/standard,/obj/item/weapon/camera_assembly,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bh" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "bi" = (/obj/effect/decal/cleanable/blood,/obj/effect/decal/cleanable/dirt,/obj/effect/landmark/corpse/alien/laborer,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "bj" = (/obj/effect/critter/fleshmonster,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) -"bk" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -1; pixel_y = 7},/obj/item/weapon/circuitboard/autolathe,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) +"bk" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{pixel_x = -1; pixel_y = 7},/obj/item/weapon/circuitboard/autolathe,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bl" = (/obj/effect/decal/cleanable/blood/tracks,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bm" = (/obj/structure/door_assembly/door_assembly_research,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bn" = (/obj/item/weapon/table_parts,/turf/simulated/floor/plating,/area/awaymission/labs/cave) @@ -171,8 +171,8 @@ "do" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) -"dr" = (/obj/structure/table,/obj/item/weapon/implanter/nanoaug/strength,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) -"ds" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/paper{icon_state = "paper_words"; info = "Study of the Soghun genome has proven successful. Using their blood as a base, we have managed to develop a series of nanoaugmentations that operate on a biological basis. With it, we can supply our commandos with implants that would give them the strength of at least ten Soghun, or the combat skills of many more. Further research is required to develop safer solutions, but the soldiers seem receptive to the current batch of test implants. They are to be kept under watch at all times in their quarters."; name = "Research Notes"; text = "p"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) +"dr" = (/obj/structure/table/standard,/obj/item/weapon/implanter/nanoaug/strength,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) +"ds" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/paper{icon_state = "paper_words"; info = "Study of the Soghun genome has proven successful. Using their blood as a base, we have managed to develop a series of nanoaugmentations that operate on a biological basis. With it, we can supply our commandos with implants that would give them the strength of at least ten Soghun, or the combat skills of many more. Further research is required to develop safer solutions, but the soldiers seem receptive to the current batch of test implants. They are to be kept under watch at all times in their quarters."; name = "Research Notes"; text = "p"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dt" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/effect/alien/flesh/weeds/node,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "du" = (/obj/machinery/vending/coffee,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dv" = (/obj/machinery/vending/snack,/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) @@ -189,11 +189,11 @@ "dG" = (/obj/effect/decal/cleanable/blood,/obj/effect/landmark/corpse/alien/testsubject,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dH" = (/obj/machinery/power/apc{dir = 4; name = "Worn-out APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) -"dJ" = (/obj/structure/table,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) -"dK" = (/obj/structure/table,/obj/item/pizzabox,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) +"dJ" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) +"dK" = (/obj/structure/table/standard,/obj/item/pizzabox,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dL" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) "dM" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) -"dN" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) +"dN" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/machinery/microwave,/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) "dO" = (/obj/structure/closet/secure_closet/security,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dP" = (/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/effect/alien/flesh/weeds/node,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dQ" = (/obj/structure/stool/bed/chair/office/light,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) @@ -202,7 +202,7 @@ "dT" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) "dU" = (/turf/simulated/wall/r_wall,/area/awaymission/labs/gateway) "dV" = (/obj/machinery/door/airlock/hatch{name = "Gateway Maintenance Storage"},/turf/simulated/floor,/area/awaymission/labs/gateway) -"dW" = (/obj/structure/table,/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) +"dW" = (/obj/structure/table/standard,/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dX" = (/obj/machinery/bodyscanner,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dY" = (/obj/machinery/body_scanconsole,/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "dZ" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) @@ -218,8 +218,8 @@ "ej" = (/obj/structure/noticeboard{pixel_y = -3},/turf/simulated/wall/r_wall,/area/awaymission/labs/researchdivision) "ek" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/wall/r_wall,/area/awaymission/labs/researchdivision) "el" = (/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) -"em" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) -"en" = (/obj/structure/table,/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) +"em" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) +"en" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "freezerfloor"},/area/awaymission/labs/researchdivision) "eo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "sandstorm shutters"; layer = 2.4; name = "Sandstorm Shutters"; opacity = 1},/turf/simulated/floor,/area/awaymission/labs/militarydivision) "ep" = (/obj/structure/rack,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/awaymission/labs/militarydivision) "eq" = (/obj/structure/rack,/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "warning"},/area/awaymission/labs/militarydivision) @@ -232,8 +232,8 @@ "ex" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) "ey" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) "ez" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/wall/r_wall,/area/awaymission/labs/gateway) -"eA" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) -"eB" = (/obj/structure/table,/obj/item/weapon/phone,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) +"eA" = (/obj/structure/table/standard,/obj/item/weapon/paper/pamphlet,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) +"eB" = (/obj/structure/table/standard,/obj/item/weapon/phone,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) "eC" = (/obj/structure/filingcabinet,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/unary/vent_pump,/turf/simulated/floor,/area/awaymission/labs/gateway) "eD" = (/obj/machinery/power/smes,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/labs/researchdivision) "eE" = (/obj/machinery/power/smes{charge = 0},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/labs/researchdivision) @@ -310,7 +310,7 @@ "fX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) "fY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/gateway) "fZ" = (/obj/machinery/turretid{name = "Gateway Turret Control"; pixel_x = -24},/turf/simulated/floor,/area/awaymission/labs/gateway) -"ga" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 7},/turf/simulated/floor,/area/awaymission/labs/gateway) +"ga" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 7},/turf/simulated/floor,/area/awaymission/labs/gateway) "gb" = (/obj/machinery/door/airlock/glass_research{name = "Storage"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/labs/researchdivision) "gc" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/energy/xray,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "gd" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) @@ -415,7 +415,7 @@ "hY" = (/obj/structure/stool/bed/chair/comfy/black,/turf/simulated/floor{icon_state = "wood"},/area/awaymission/labs/militarydivision) "hZ" = (/obj/effect/decal/cleanable/blood/splatter,/obj/effect/landmark/corpse/officer,/turf/simulated/floor{icon_state = "wood"},/area/awaymission/labs/militarydivision) "ia" = (/turf/simulated/floor{icon_state = "wood"},/area/awaymission/labs/militarydivision) -"ib" = (/obj/structure/table,/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) +"ib" = (/obj/structure/table/standard,/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) "ic" = (/obj/structure/filingcabinet/chestdrawer,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) "id" = (/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) "ie" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) @@ -450,7 +450,7 @@ "iH" = (/obj/machinery/recharge_station,/obj/effect/decal/cleanable/cobweb2,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{temperature = 393.15},/area/awaymission/labs/researchdivision) "iI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor,/area/awaymission/labs/researchdivision) "iJ" = (/obj/structure/rack,/turf/simulated/floor,/area/awaymission/labs/researchdivision) -"iK" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) +"iK" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table/standard,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "iL" = (/obj/structure/table/reinforced,/obj/item/metroid_core,/obj/item/weapon/camera_assembly{pixel_x = 2; pixel_y = 8},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; frequency = 1379; id_tag = "mining_maineast_pump"; on = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "iM" = (/obj/machinery/door/airlock/maintenance_hatch,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/awaymission/labs/solars) "iN" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "wood"},/area/awaymission/labs/militarydivision) @@ -471,8 +471,8 @@ "jc" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/research_and_development{pixel_x = -1; pixel_y = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "jd" = (/obj/structure/stool/bed/chair/office/dark,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) "je" = (/obj/structure/table/reinforced,/obj/item/stack/cable_coil{pixel_y = 3},/obj/item/stack/cable_coil{pixel_y = 3},/obj/item/stack/cable_coil{pixel_y = 3},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/researchdivision) -"jf" = (/obj/structure/table,/turf/simulated/floor/plating,/area/awaymission/labs/solars) -"jg" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating,/area/awaymission/labs/solars) +"jf" = (/obj/structure/table/standard,/turf/simulated/floor/plating,/area/awaymission/labs/solars) +"jg" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating,/area/awaymission/labs/solars) "jh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/awaymission/labs/solars) "ji" = (/obj/structure/closet/secure_closet/engineering_electrical,/turf/simulated/floor/plating,/area/awaymission/labs/solars) "jj" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/under/rank/navysecurity,/obj/item/clothing/suit/armor/navysecvest,/turf/simulated/floor{icon_state = "wood"},/area/awaymission/labs/militarydivision) @@ -484,8 +484,8 @@ "jp" = (/obj/structure/table/woodentable,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) "jq" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) "jr" = (/obj/machinery/camera{c_tag = "Central Hallway South-West"; dir = 8},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) -"js" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) -"jt" = (/obj/structure/table,/obj/item/weapon/paper{icon_state = "paper_words"; info = "We got back from another ship-out today. Those idiots on the NSV Icarus somehow managed to land themselves in the middle of a fleet of pirates. Frigates were downed easily, and they boarded with the intent to take the artillery cannon. Thankfully, those implants the doctors gave us worked like a charm. I think they made me sick, though, I've got this terrible rash on my arm that is a pain to scratch. Making my skin look all pink and nasty. Gonna go see Doc Brown in the monring, I need some rest after all we've been through."; name = "Journal Page"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) +"js" = (/obj/structure/table/standard,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) +"jt" = (/obj/structure/table/standard,/obj/item/weapon/paper{icon_state = "paper_words"; info = "We got back from another ship-out today. Those idiots on the NSV Icarus somehow managed to land themselves in the middle of a fleet of pirates. Frigates were downed easily, and they boarded with the intent to take the artillery cannon. Thankfully, those implants the doctors gave us worked like a charm. I think they made me sick, though, I've got this terrible rash on my arm that is a pain to scratch. Making my skin look all pink and nasty. Gonna go see Doc Brown in the monring, I need some rest after all we've been through."; name = "Journal Page"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) "ju" = (/obj/item/ammo_casing/c9mm{pixel_y = -8},/turf/simulated/floor,/area/awaymission/labs/militarydivision) "jv" = (/obj/item/ammo_casing/c9mm{pixel_x = -28; pixel_y = -4},/turf/simulated/floor,/area/awaymission/labs/militarydivision) "jw" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/hos,/turf/simulated/floor,/area/awaymission/labs/militarydivision) @@ -506,7 +506,7 @@ "jL" = (/obj/structure/closet/secure_closet/engineering_welding,/turf/simulated/floor/plating,/area/awaymission/labs/solars) "jM" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) "jN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) -"jO" = (/obj/structure/table,/obj/item/weapon/butch{pixel_y = 3},/obj/item/weapon/kitchenknife{pixel_x = -4; pixel_y = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) +"jO" = (/obj/structure/table/standard,/obj/item/weapon/butch{pixel_y = 3},/obj/item/weapon/kitchenknife{pixel_x = -4; pixel_y = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) "jP" = (/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) "jQ" = (/obj/effect/decal/cleanable/blood/splatter,/obj/effect/landmark/corpse/officer,/obj/item/weapon/gun/projectile/silenced/sc_silenced{desc = "A sidearm commonly favored by terrestrial security forces."; icon_state = "g115 Pistol"; name = "Pistol"; silenced = 0},/turf/simulated/floor,/area/awaymission/labs/militarydivision) "jR" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/hos,/obj/machinery/camera{c_tag = "Central Hallway South-West"; dir = 8},/turf/simulated/floor,/area/awaymission/labs/militarydivision) @@ -515,10 +515,10 @@ "jU" = (/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor{temperature = 393.15},/area/awaymission/labs/researchdivision) "jV" = (/obj/effect/decal/cleanable/dirt,/obj/effect/critter/fleshmonster,/turf/simulated/floor{temperature = 393.15},/area/awaymission/labs/researchdivision) "jW" = (/obj/machinery/door/airlock/glass_research{name = "Thermal Suit Storage"},/turf/simulated/floor,/area/awaymission/labs/researchdivision) -"jX" = (/obj/structure/table,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/awaymission/labs/solars) +"jX" = (/obj/structure/table/standard,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/awaymission/labs/solars) "jY" = (/obj/machinery/turretcover,/turf/unsimulated/desert,/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) "jZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/awaymission/labs/militarydivision) -"ka" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -2; pixel_y = 8},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) +"ka" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -2; pixel_y = 8},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/militarydivision) "kb" = (/obj/item/device/violin,/turf/simulated/floor,/area/awaymission/labs/militarydivision) "kc" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light,/turf/simulated/floor{temperature = 393.15},/area/awaymission/labs/researchdivision) "kd" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "delivery"; name = "floor"; temperature = 393.15},/area/awaymission/labs/researchdivision) @@ -608,7 +608,7 @@ "lJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/awaymission/labs/solars) "lK" = (/obj/structure/cable,/obj/effect/decal/cleanable/dirt,/obj/machinery/power/solar_control,/turf/simulated/floor/plating,/area/awaymission/labs/solars) "lL" = (/obj/machinery/camera{c_tag = "Aft Port Solar Control"; dir = 1},/obj/machinery/power/apc{dir = 4; name = "Worn-out APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable,/obj/machinery/power/terminal{dir = 4},/turf/simulated/floor/plating,/area/awaymission/labs/solars) -"lM" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/awaymission/labs/solars) +"lM" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/awaymission/labs/solars) "lN" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/simulated/floor/plating{icon_state = "solarpanel"; temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) "lO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) "lP" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) @@ -617,8 +617,8 @@ "lS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) "lT" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{icon_state = "solarpanel"; temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) "lU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/awaymission/labs/solars) -"lV" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor/plating,/area/awaymission/labs/solars) -"lW" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_y = -3},/obj/item/stack/cable_coil{pixel_y = 3},/obj/item/stack/cable_coil{pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/labs/solars) +"lV" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor/plating,/area/awaymission/labs/solars) +"lW" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{pixel_y = -3},/obj/item/stack/cable_coil{pixel_y = 3},/obj/item/stack/cable_coil{pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/labs/solars) "lX" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) "lY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) "lZ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{temperature = 393.15},/area/awaymission/desert{lighting_use_dynamic = 1; luminosity = 1; name = "Desert"}) @@ -660,9 +660,9 @@ "mJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/cargo) "mK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/cargo) "mL" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor,/area/awaymission/labs/cargo) -"mM" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/labs/civilian) -"mN" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/labs/civilian) -"mO" = (/obj/machinery/atmospherics/pipe/simple{color = "blue"; icon_state = "intact-b-f"; level = 1; name = "pipe"},/obj/structure/table,/obj/item/weapon/book/manual/chef_recipes,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) +"mM" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/labs/civilian) +"mN" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/labs/civilian) +"mO" = (/obj/machinery/atmospherics/pipe/simple{color = "blue"; icon_state = "intact-b-f"; level = 1; name = "pipe"},/obj/structure/table/standard,/obj/item/weapon/book/manual/chef_recipes,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) "mP" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) "mQ" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) "mR" = (/obj/structure/sink/kitchen{pixel_y = 23},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) @@ -698,7 +698,7 @@ "nv" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/oil,/turf/simulated/floor,/area/awaymission/labs/cargo) "nw" = (/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/awaymission/labs/cargo) "nx" = (/obj/machinery/bot/mulebot,/turf/simulated/floor{icon_state = "bot"},/area/awaymission/labs/cargo) -"ny" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/wrapping_paper,/turf/simulated/floor,/area/awaymission/labs/cargo) +"ny" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/wrapping_paper,/turf/simulated/floor,/area/awaymission/labs/cargo) "nz" = (/obj/structure/closet/crate/secure/bin{name = "Valuable Ores"},/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/uranium,/obj/item/weapon/ore/uranium,/obj/item/weapon/ore/uranium,/obj/item/weapon/ore/clown,/turf/simulated/floor,/area/awaymission/labs/cargo) "nA" = (/obj/structure/closet/crate/secure/bin,/turf/simulated/floor,/area/awaymission/labs/cargo) "nB" = (/obj/machinery/recharge_station,/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/awaymission/labs/cave) @@ -725,35 +725,35 @@ "nW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/awaymission/labs/cargo) "nX" = (/obj/machinery/bot/mulebot,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "bot"},/area/awaymission/labs/cargo) "nY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/wall,/area/awaymission/labs/cargo) -"nZ" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/awaymission/labs/cargo) +"nZ" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/awaymission/labs/cargo) "oa" = (/obj/effect/critter/fleshmonster/fleshslime,/turf/simulated/floor,/area/awaymission/labs/cargo) "ob" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/cave) "oc" = (/obj/machinery/power/apc{dir = 4; name = "Worn-out APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor,/area/awaymission/labs/cave) -"od" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) -"oe" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) -"of" = (/obj/structure/table,/obj/machinery/reagentgrinder{pixel_x = -1; pixel_y = 7},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) +"od" = (/obj/structure/table/standard,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) +"oe" = (/obj/structure/table/standard,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) +"of" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder{pixel_x = -1; pixel_y = 7},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) "og" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/awaymission/labs/civilian) "oh" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor,/area/awaymission/labs/civilian) "oi" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/awaymission/labs/civilian) "oj" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/command) -"ok" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/device/multitool,/turf/simulated/floor{icon_state = "red"; dir = 9},/area/awaymission/labs/command) +"ok" = (/obj/structure/table/standard,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/device/multitool,/turf/simulated/floor{icon_state = "red"; dir = 9},/area/awaymission/labs/command) "ol" = (/obj/machinery/computer/secure_data,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/labs/command) "om" = (/obj/item/weapon/wrench,/obj/structure/table/reinforced,/obj/machinery/camera{c_tag = "Bridge West"; dir = 2},/obj/item/device/assembly/timer,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/labs/command) "on" = (/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/awaymission/labs/command) "oo" = (/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/awaymission/labs/command) -"op" = (/obj/structure/table,/obj/machinery/camera{c_tag = "Bridge East"; dir = 2},/obj/item/weapon/storage/fancy/donut_box,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/labs/command) +"op" = (/obj/structure/table/standard,/obj/machinery/camera{c_tag = "Bridge East"; dir = 2},/obj/item/weapon/storage/fancy/donut_box,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/labs/command) "oq" = (/obj/machinery/computer/med_data,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/labs/command) -"or" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor{icon_state = "whitehall"; dir = 5},/area/awaymission/labs/command) +"or" = (/obj/structure/table/standard,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor{icon_state = "whitehall"; dir = 5},/area/awaymission/labs/command) "os" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/awaymission/labs/command) "ot" = (/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"},/turf/simulated/floor,/area/awaymission/labs/command) "ou" = (/obj/structure/ore_box,/turf/simulated/floor,/area/awaymission/labs/cargo) "ov" = (/turf/simulated/floor{icon_state = "bot"},/area/awaymission/labs/cargo) -"ow" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/cargo) +"ow" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/cargo) "ox" = (/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/awaymission/labs/cargo) "oy" = (/obj/effect/landmark/corpse/alien/cargo,/obj/effect/decal/cleanable/blood,/turf/simulated/floor,/area/awaymission/labs/cave) "oz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/cave) "oA" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) -"oB" = (/obj/structure/table,/obj/item/weapon/butch{pixel_y = 3},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) +"oB" = (/obj/structure/table/standard,/obj/item/weapon/butch{pixel_y = 3},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) "oC" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/civilian) "oD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/civilian) "oE" = (/obj/machinery/door/airlock/glass{name = "Civilian Division"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/civilian) @@ -785,7 +785,7 @@ "pe" = (/obj/machinery/conveyor{dir = 5; id = "garbage"},/turf/simulated/floor,/area/awaymission/labs/cargo) "pf" = (/obj/machinery/conveyor{dir = 4; id = "mining_internal"},/turf/simulated/floor,/area/awaymission/labs/cargo) "pg" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 140; on = 1; pressure_checks = 0},/obj/effect/alien/flesh/weeds/node,/turf/simulated/floor,/area/awaymission/labs/cargo) -"ph" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/labs/cave) +"ph" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/labs/cave) "pi" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor,/area/awaymission/labs/cave) "pj" = (/obj/structure/largecrate,/turf/simulated/floor,/area/awaymission/labs/cave) "pk" = (/obj/structure/table/reinforced,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/labs/civilian) @@ -852,7 +852,7 @@ "qt" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/unsimulated/desert,/area/awaymission/labs/cave) "qu" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) "qv" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) -"qw" = (/obj/structure/table,/obj/item/weapon/kitchen/utensil/fork,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) +"qw" = (/obj/structure/table/standard,/obj/item/weapon/kitchen/utensil/fork,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) "qx" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) "qy" = (/obj/structure/barricade/wooden,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) "qz" = (/obj/machinery/door/airlock/glass{name = "Mess Hall"},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) @@ -878,7 +878,7 @@ "qT" = (/obj/machinery/nuclearbomb{r_code = "LOLNO"},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/awaymission/labs/command) "qU" = (/obj/item/weapon/coin/silver{pixel_x = 7; pixel_y = 12},/obj/item/weapon/coin/silver{pixel_x = 12; pixel_y = 7},/obj/item/weapon/coin/silver{pixel_x = 4; pixel_y = 8},/obj/item/weapon/coin/silver{pixel_x = -6; pixel_y = 5},/obj/item/weapon/coin/silver{pixel_x = 5; pixel_y = -8},/obj/structure/closet/crate{name = "Silver Crate"},/turf/simulated/floor{tag = "icon-vault (EAST)"; icon_state = "vault"; dir = 4},/area/awaymission/labs/command) "qV" = (/obj/effect/alien/flesh/weeds,/turf/unsimulated/desert,/area/awaymission/labs/cave) -"qW" = (/obj/structure/table,/obj/item/weapon/kitchen/utensil/fork,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) +"qW" = (/obj/structure/table/standard,/obj/item/weapon/kitchen/utensil/fork,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/labs/civilian) "qX" = (/obj/machinery/door/airlock/glass{name = "Civilian Division"},/turf/simulated/floor,/area/awaymission/labs/civilian) "qY" = (/obj/machinery/door/airlock/glass{name = "Command Rotunda"},/turf/simulated/floor,/area/awaymission/labs/command) "qZ" = (/obj/item/weapon/coin/silver{pixel_x = 12; pixel_y = 11},/turf/simulated/floor{tag = "icon-vault (EAST)"; icon_state = "vault"; dir = 4},/area/awaymission/labs/command) @@ -907,8 +907,8 @@ "rw" = (/obj/structure/toilet,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/civilian) "rx" = (/obj/machinery/washing_machine,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/civilian) "ry" = (/obj/effect/decal/cleanable/blood,/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/civilian) -"rz" = (/obj/structure/table,/obj/structure/bedsheetbin{pixel_x = -2; pixel_y = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/civilian) -"rA" = (/obj/structure/table,/obj/item/clothing/suit/storage/labcoat{pixel_y = 3},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/civilian) +"rz" = (/obj/structure/table/standard,/obj/structure/bedsheetbin{pixel_x = -2; pixel_y = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/civilian) +"rA" = (/obj/structure/table/standard,/obj/item/clothing/suit/storage/labcoat{pixel_y = 3},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/civilian) "rB" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor,/area/awaymission/labs/civilian) "rC" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/awaymission/labs/civilian) "rD" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor,/area/awaymission/labs/civilian) @@ -936,9 +936,9 @@ "rZ" = (/obj/effect/alien/flesh/weeds{icon_state = "flesh1"},/obj/effect/decal/cleanable/blood/gibs/limb,/turf/unsimulated/desert,/area/awaymission/labs/cave) "sa" = (/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/civilian) "sb" = (/obj/structure/stool,/turf/simulated/floor,/area/awaymission/labs/civilian) -"sc" = (/obj/structure/table,/obj/item/weapon/paper{icon_state = "paper_words"; info = "

    Memo to all Personnel


    Greetings,

    I have recently heard of rumors amongst our workers that we 'kidnap' some in their sleep and drag them off to the high-security laboratories. This has caused enough stir in our ranks that I personally am writing to you to denounce these naysayings. We at NanoTrasen would never do such things to harm our personnel, especially ones who put their lives on the line in dangerous caverns and extreme temperatures to excavate century-old artifacts. Rest assured, the laboratories in the high-security section are for nothing but the studying of the artifacts that you bring back to us.

    Now that that is out of the way, allow me to personally give my congratulations to our Head of Excavation, S'rrsa Unoyo, who is celebrating her twenty-seventh birthday today. Celebrations will be held in the mess hall after work hours, and all staff are invited.

    As always, please have a productive shift, and do not listen to the fearmongering of certain individuals. You are safe here, with us, at NanoTrasen.

    -Overseer McDonald"; name = "Personnel Memo"},/turf/simulated/floor,/area/awaymission/labs/civilian) -"sd" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/awaymission/labs/civilian) -"se" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/labs/civilian) +"sc" = (/obj/structure/table/standard,/obj/item/weapon/paper{icon_state = "paper_words"; info = "
    Memo to all Personnel


    Greetings,

    I have recently heard of rumors amongst our workers that we 'kidnap' some in their sleep and drag them off to the high-security laboratories. This has caused enough stir in our ranks that I personally am writing to you to denounce these naysayings. We at NanoTrasen would never do such things to harm our personnel, especially ones who put their lives on the line in dangerous caverns and extreme temperatures to excavate century-old artifacts. Rest assured, the laboratories in the high-security section are for nothing but the studying of the artifacts that you bring back to us.

    Now that that is out of the way, allow me to personally give my congratulations to our Head of Excavation, S'rrsa Unoyo, who is celebrating her twenty-seventh birthday today. Celebrations will be held in the mess hall after work hours, and all staff are invited.

    As always, please have a productive shift, and do not listen to the fearmongering of certain individuals. You are safe here, with us, at NanoTrasen.

    -Overseer McDonald"; name = "Personnel Memo"},/turf/simulated/floor,/area/awaymission/labs/civilian) +"sd" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/awaymission/labs/civilian) +"se" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/labs/civilian) "sf" = (/obj/structure/closet/toolcloset,/turf/simulated/floor,/area/awaymission/labs/civilian) "sg" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor,/area/awaymission/labs/civilian) "sh" = (/obj/structure/closet/secure_closet/engineering_electrical,/turf/simulated/floor,/area/awaymission/labs/civilian) @@ -951,7 +951,7 @@ "so" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor,/area/awaymission/labs/civilian) "sp" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/civilian) "sq" = (/obj/machinery/power/apc{dir = 4; name = "Worn-out APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor,/area/awaymission/labs/civilian) -"sr" = (/obj/structure/table,/obj/item/weapon/paper{icon_state = "paper_words"; info = "Hey, Carlos, when you get this, get down into the sewers and fix the damn piping, will you? That nasty fleshy shit's been growing again. Blocked off half the pipes and it's stil clogging the vents. Has to be coming from the high security section, that's the only pipe I hadn't tried to seal yet. Dunno what those freaks in research are doing but tell them to fucking knock it off. I'm not paid enough to scrape that crap off the walls down there. It's starting to get into the air as well, smells terrible. Yell at the head egghead or something."; name = "Note"},/turf/simulated/floor,/area/awaymission/labs/civilian) +"sr" = (/obj/structure/table/standard,/obj/item/weapon/paper{icon_state = "paper_words"; info = "Hey, Carlos, when you get this, get down into the sewers and fix the damn piping, will you? That nasty fleshy shit's been growing again. Blocked off half the pipes and it's stil clogging the vents. Has to be coming from the high security section, that's the only pipe I hadn't tried to seal yet. Dunno what those freaks in research are doing but tell them to fucking knock it off. I'm not paid enough to scrape that crap off the walls down there. It's starting to get into the air as well, smells terrible. Yell at the head egghead or something."; name = "Note"},/turf/simulated/floor,/area/awaymission/labs/civilian) "ss" = (/turf/simulated/wall/r_wall,/area/awaymission/labs/security) "st" = (/obj/structure/grille{layer = 3.3},/obj/structure/window/reinforced{dir = 5; health = 1e+007; layer = 3.4},/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "sandstorm shutters"; layer = 2.4; name = "Sandstorm Shutters"; opacity = 1},/turf/simulated/floor,/area/awaymission/labs/security) "su" = (/turf/simulated/wall,/area/awaymission/labs/medical) @@ -965,9 +965,9 @@ "sC" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor,/area/awaymission/labs/security) "sD" = (/obj/structure/closet/secure_closet/security,/turf/simulated/floor,/area/awaymission/labs/security) "sE" = (/obj/machinery/vending/medical,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"sF" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/adv,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"sG" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop{pixel_x = 1; pixel_y = 3},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"sH" = (/obj/structure/table,/obj/item/weapon/storage/beakerbox,/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"sF" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"sG" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop{pixel_x = 1; pixel_y = 3},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"sH" = (/obj/structure/table/standard,/obj/item/weapon/storage/beakerbox,/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "sI" = (/obj/structure/closet/secure_closet/medical1,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "sJ" = (/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "sK" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) @@ -981,8 +981,8 @@ "sS" = (/obj/machinery/door/airlock/glass_medical{name = "Medical"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "sT" = (/obj/machinery/door/airlock/glass_medical{name = "Medical"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/command) "sU" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor,/area/awaymission/labs/security) -"sV" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor,/area/awaymission/labs/security) -"sW" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/labs/security) +"sV" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor,/area/awaymission/labs/security) +"sW" = (/obj/structure/table/standard,/turf/simulated/floor,/area/awaymission/labs/security) "sX" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor,/area/awaymission/labs/security) "sY" = (/obj/effect/decal/cleanable/blood/tracks,/turf/simulated/floor,/area/awaymission/labs/security) "sZ" = (/obj/effect/critter/creature{armor = 20; atksame = 0; desc = "A blob of pulsating human-like flesh, bearing one angry eye and a huge mouth."; health = 130; max_health = 130; name = "Failed Experiment"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) @@ -995,14 +995,14 @@ "tg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/wall/r_wall,/area/awaymission/labs/security) "th" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/security) "ti" = (/obj/structure/stool/bed/chair{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/security) -"tj" = (/obj/structure/table,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor,/area/awaymission/labs/security) -"tk" = (/obj/structure/table,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/security) +"tj" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor,/area/awaymission/labs/security) +"tk" = (/obj/structure/table/standard,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/security) "tl" = (/obj/structure/stool/bed/chair{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/awaymission/labs/security) "tm" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/security) "tn" = (/obj/structure/closet/secure_closet/personal/patient,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "to" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/medical,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tp" = (/obj/machinery/vending/wallmed1{pixel_y = 28},/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"tq" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/tie/stethoscope,/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"tq" = (/obj/structure/table/standard,/obj/item/weapon/folder/white,/obj/item/clothing/tie/stethoscope,/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/space,/area/awaymission/labs/medical) "ts" = (/obj/effect/decal/cleanable/blood/tracks,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tt" = (/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor,/area/awaymission/labs/security) @@ -1010,23 +1010,23 @@ "tv" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/orange,/turf/simulated/floor,/area/awaymission/labs/security) "tw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/awaymission/labs/security) "tx" = (/obj/machinery/door/airlock/medical{name = "Patient Room"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"ty" = (/obj/structure/table,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"ty" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tz" = (/obj/machinery/sleeper,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tA" = (/obj/machinery/sleep_console,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tB" = (/obj/structure/table/woodentable,/turf/simulated/floor,/area/awaymission/labs/security) "tC" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/awaymission/labs/security) "tD" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"tE" = (/obj/item/weapon/gun/syringe/rapidsyringe,/obj/structure/table,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"tE" = (/obj/item/weapon/gun/syringe/rapidsyringe,/obj/structure/table/standard,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tG" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tH" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"tI" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"tI" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tJ" = (/obj/machinery/chem_master,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tK" = (/obj/machinery/chem_dispenser,/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tL" = (/obj/machinery/bodyscanner,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tM" = (/obj/machinery/body_scanconsole,/obj/machinery/atmospherics/unary/vent_pump{dir = 8; frequency = 1379; id_tag = "engineering_aux_pump"; on = 1},/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tN" = (/obj/structure/closet/secure_closet/personal/patient,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"tO" = (/obj/structure/table,/obj/item/weapon/storage/pill_bottle,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"tO" = (/obj/structure/table/standard,/obj/item/weapon/storage/pill_bottle,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tP" = (/obj/effect/decal/cleanable/greenglow,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "tQ" = (/obj/effect/critter/fleshmonster,/turf/simulated/floor,/area/awaymission/labs/security) "tR" = (/obj/structure/rack,/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/awaymission/labs/security) @@ -1049,18 +1049,18 @@ "ui" = (/obj/structure/closet/secure_closet/warden,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/security) "uj" = (/obj/structure/rack,/obj/item/ammo_magazine/c45,/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/awaymission/labs/security) "uk" = (/obj/structure/rack,/obj/item/ammo_magazine/c45,/obj/item/weapon/gun/projectile/silenced/sc_silenced{desc = "A sidearm commonly favored by terrestrial security forces."; icon_state = "g115 Pistol"; name = "Pistol"; silenced = 0},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/awaymission/labs/security) -"ul" = (/obj/structure/table,/obj/item/weapon/storage/backpack/satchel_med,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"ul" = (/obj/structure/table/standard,/obj/item/weapon/storage/backpack/satchel_med,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "um" = (/obj/machinery/computer/prisoner,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/security) "un" = (/obj/machinery/computer/security,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/security) -"uo" = (/obj/structure/table,/obj/item/weapon/gun/syringe/rapidsyringe,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"up" = (/obj/structure/table,/obj/item/weapon/scalpel,/obj/item/weapon/retractor,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"uq" = (/obj/structure/table,/obj/item/weapon/surgicaldrill,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"ur" = (/obj/structure/table,/obj/machinery/light,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/obj/structure/cable,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"uo" = (/obj/structure/table/standard,/obj/item/weapon/gun/syringe/rapidsyringe,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"up" = (/obj/structure/table/standard,/obj/item/weapon/scalpel,/obj/item/weapon/retractor,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"uq" = (/obj/structure/table/standard,/obj/item/weapon/surgicaldrill,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"ur" = (/obj/structure/table/standard,/obj/machinery/light,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/obj/structure/cable,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "us" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "ut" = (/obj/structure/closet/secure_closet/medical3,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"uu" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"uv" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) -"uw" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"uu" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"uv" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) +"uw" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "ux" = (/obj/machinery/iv_drip,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/medical) "uy" = (/obj/machinery/vending/cola,/turf/simulated/floor,/area/awaymission/labs/security) "uz" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westright,/obj/machinery/door/window/eastright,/obj/item/weapon/paper{icon_state = "paper_words"; info = "
    Incident Report


    Arresting Officer: Meyers

    Suspect: Laborer #24

    Charge: Assault

    Description of events: Damn fool clocked another lizard upside the head with his wrench, started screaming about how the voices in his head wanted him to bring bodies to research to 'feed the mother' or something. Probably spent too much time down in those caves. Give him a good couple of days in the brig, he'll snap out of it quick enough."; name = "Incident Report"},/turf/simulated/floor,/area/awaymission/labs/security) @@ -1072,13 +1072,13 @@ "uF" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/security) "uG" = (/obj/structure/toilet,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/security) "uH" = (/obj/machinery/shower,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/security) -"uI" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/book/manual/security_space_law{pixel_x = -3; pixel_y = 5},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/security) +"uI" = (/obj/structure/table/standard,/obj/item/weapon/folder/red,/obj/item/weapon/book/manual/security_space_law{pixel_x = -3; pixel_y = 5},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/security) "uJ" = (/obj/machinery/door/airlock/glass_security{name = "Armory"},/turf/simulated/floor,/area/awaymission/labs/security) "uK" = (/obj/machinery/computer/arcade,/turf/simulated/floor,/area/awaymission/labs/security) "uL" = (/obj/machinery/door/window/westright,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/security) "uM" = (/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/labs/security) "uN" = (/obj/structure/closet/secure_closet/brig,/turf/simulated/floor,/area/awaymission/labs/security) -"uO" = (/obj/structure/table,/obj/machinery/recharger,/obj/item/weapon/gun/energy/stunrevolver{pixel_y = 6},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/security) +"uO" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/gun/energy/stunrevolver{pixel_y = 6},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/labs/security) "uP" = (/obj/machinery/recharger,/obj/structure/table/reinforced,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/labs/security) "uQ" = (/obj/machinery/recharger,/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = -30},/obj/structure/table/reinforced,/obj/machinery/light,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/labs/security) "uR" = (/obj/machinery/recharger,/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "red"; dir = 5},/area/awaymission/labs/security) diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 837031cf89..182358213e 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -134,12 +134,12 @@ "acD" = (/obj/structure/table/rack,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 2; name = "Weapons locker"; req_access = list(3)},/obj/random/projectile,/obj/random/projectile,/obj/random/projectile,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) "acE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "acF" = (/obj/structure/table/rack,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 2; name = "Weapons locker"; req_access = list(3)},/obj/structure/window/reinforced{dir = 8},/obj/random/energy,/obj/random/energy,/obj/random/energy,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) -"acG" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/security/main) -"acH" = (/obj/structure/table,/obj/machinery/recharger,/turf/simulated/floor,/area/security/main) -"acI" = (/obj/structure/disposalpipe/segment,/obj/structure/table,/obj/machinery/recharger,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/main) +"acG" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/security/main) +"acH" = (/obj/structure/table/standard,/obj/machinery/recharger,/turf/simulated/floor,/area/security/main) +"acI" = (/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/recharger,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/main) "acJ" = (/obj/structure/table/rack,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/light{dir = 1},/obj/machinery/door/window/brigdoor{dir = 2; name = "Weapons locker"; req_access = list(3)},/obj/item/ammo_magazine/c45m/flash,/obj/item/ammo_magazine/c45m/flash,/obj/item/ammo_magazine/c45m/flash,/obj/item/ammo_magazine/c45m/rubber,/obj/item/ammo_magazine/c45m/rubber,/obj/item/ammo_magazine/c45m/rubber,/obj/item/ammo_magazine/c45m/rubber,/obj/item/ammo_magazine/c45m/rubber,/obj/item/ammo_magazine/c45m/rubber,/obj/item/ammo_magazine/mc9mmt/rubber,/obj/item/ammo_magazine/mc9mmt/rubber,/obj/item/ammo_magazine/mc9mmt/rubber,/obj/item/weapon/storage/box/beanbags,/obj/item/weapon/storage/box/beanbags,/obj/item/weapon/storage/box/flashshells,/obj/item/weapon/storage/box/stunshells,/obj/item/ammo_magazine/c45m/practice,/obj/item/ammo_magazine/c45m/practice,/obj/item/ammo_magazine/c45m/practice,/obj/item/ammo_magazine/c45m/practice,/obj/item/ammo_magazine/mc9mmt/practice,/obj/item/ammo_magazine/mc9mmt/practice,/obj/item/weapon/storage/box/practiceshells,/obj/item/weapon/storage/box/practiceshells,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) -"acK" = (/obj/structure/table,/obj/item/weapon/reagent_containers/syringe/inaprovaline,/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = -2; pixel_y = 5},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_y = 10},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/security/main) -"acL" = (/obj/structure/table,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = 5; pixel_y = 5},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/security/main) +"acK" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/syringe/inaprovaline,/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = -2; pixel_y = 5},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_y = 10},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/security/main) +"acL" = (/obj/structure/table/standard,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = 5; pixel_y = 5},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/security/main) "acM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/security/main) "acN" = (/obj/machinery/computer/secure_data,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "acO" = (/obj/machinery/computer/security,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) @@ -153,12 +153,12 @@ "acW" = (/obj/structure/table/rack,/obj/machinery/door/window/brigdoor{dir = 2; name = "Weapons locker"; req_access = list(3)},/obj/structure/window/reinforced{dir = 1},/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) "acX" = (/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "acY" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/security/armoury) -"acZ" = (/obj/structure/table,/obj/machinery/recharger,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) +"acZ" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "ada" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/security/main) "adb" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/main) "adc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/main) "add" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/main) -"ade" = (/obj/structure/table,/obj/item/device/healthanalyzer,/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/bruise_pack{pixel_x = 10},/obj/item/stack/medical/ointment{pixel_y = 10},/turf/simulated/floor{dir = 4; icon_state = "whitered"},/area/security/main) +"ade" = (/obj/structure/table/standard,/obj/item/device/healthanalyzer,/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/bruise_pack{pixel_x = 10},/obj/item/stack/medical/ointment{pixel_y = 10},/turf/simulated/floor{dir = 4; icon_state = "whitered"},/area/security/main) "adf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/security/armoury) "adg" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/main) "adh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/vending/snack,/turf/simulated/floor,/area/security/main) @@ -182,7 +182,7 @@ "adz" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"; req_access = list(3)},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/machinery/light{dir = 8},/obj/machinery/camera/network/security{c_tag = "Armoury - Secure"; dir = 4},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) "adA" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/noticeboard{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "adB" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/security_starboard) -"adC" = (/obj/structure/table,/obj/machinery/recharger,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) +"adC" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) "adD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/security_port) "adE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/security_port) "adF" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/armoury) @@ -193,7 +193,7 @@ "adK" = (/obj/structure/table/rack,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/reagent_containers/spray/pepper,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) "adL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "adM" = (/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) -"adN" = (/obj/structure/table,/obj/item/weapon/folder/red,/turf/simulated/floor,/area/security/main) +"adN" = (/obj/structure/table/standard,/obj/item/weapon/folder/red,/turf/simulated/floor,/area/security/main) "adO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/armoury) "adP" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_x = 30; pixel_y = 0},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "adQ" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/security_starboard) @@ -214,17 +214,17 @@ "aef" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Briefing Room"; req_access = list(63)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/main) "aeg" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/security_port) "aeh" = (/obj/machinery/light/small,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/security_starboard) -"aei" = (/obj/machinery/light{dir = 8},/obj/structure/window/reinforced,/obj/structure/table,/obj/item/device/megaphone,/obj/item/device/megaphone,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) -"aej" = (/obj/structure/window/reinforced,/obj/structure/table,/obj/item/device/taperecorder{pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) -"aek" = (/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced,/obj/structure/table,/obj/item/weapon/packageWrap,/obj/item/weapon/storage/box,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) +"aei" = (/obj/machinery/light{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/standard,/obj/item/device/megaphone,/obj/item/device/megaphone,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) +"aej" = (/obj/structure/window/reinforced,/obj/structure/table/standard,/obj/item/device/taperecorder{pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) +"aek" = (/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced,/obj/structure/table/standard,/obj/item/weapon/packageWrap,/obj/item/weapon/storage/box,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "ael" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "aem" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/main) "aen" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "aeo" = (/obj/structure/table/rack,/obj/structure/window/reinforced,/obj/machinery/door/window/brigdoor{dir = 1; name = "Weapons locker"; req_access = list(3)},/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/suit/armor/laserproof{pixel_x = 2; pixel_y = 2},/obj/item/clothing/suit/armor/laserproof{pixel_x = -2; pixel_y = -2},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) "aep" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "aeq" = (/obj/structure/table/rack,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 1; name = "Weapons locker"; req_access = list(3)},/obj/item/clothing/suit/armor/bulletproof{pixel_x = 2; pixel_y = 2},/obj/item/clothing/suit/armor/bulletproof{pixel_x = -2; pixel_y = -2},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) -"aer" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/main) -"aes" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law,/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,/area/security/main) +"aer" = (/obj/structure/table/standard,/obj/item/weapon/folder/red,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/main) +"aes" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/security_space_law,/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,/area/security/main) "aet" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/security/main) "aeu" = (/obj/machinery/light,/obj/machinery/flasher/portable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) "aev" = (/obj/machinery/flasher/portable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/security/armoury) @@ -287,7 +287,7 @@ "afA" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/security/main) "afB" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor,/area/security/main) "afC" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) -"afD" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"afD" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "afE" = (/obj/machinery/vending/cola,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "afF" = (/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "afG" = (/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/security/main) @@ -296,7 +296,7 @@ "afJ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/meter,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/security_starboard) "afK" = (/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth{frequency = 1380; id_tag = "escape_pod_3_berth"; pixel_x = 25; pixel_y = 25; tag_door = "escape_pod_3_berth_hatch"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/security_starboard) "afL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/camera/network/security{c_tag = "Security - Equipment North"; dir = 4},/turf/simulated/floor,/area/security/main) -"afM" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/storage/box/donut,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"afM" = (/obj/structure/table/standard,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/storage/box/donut,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "afN" = (/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "redfull"; dir = 9},/area/security/main) "afO" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "redfull"; dir = 9},/area/security/main) "afP" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape_pod3/station) @@ -323,7 +323,7 @@ "agk" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/main) "agl" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/main) "agm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/main) -"agn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30},/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/crowbar,/obj/item/weapon/crowbar,/obj/item/weapon/crowbar,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"agn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/standard,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30},/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/crowbar,/obj/item/weapon/crowbar,/obj/item/weapon/crowbar,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "ago" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/wall,/area/crew_quarters/heads/hos) "agp" = (/turf/simulated/wall,/area/crew_quarters/heads/hos) "agq" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/security{name = "Armoury"; req_access = list(2)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/warden) @@ -362,8 +362,8 @@ "agX" = (/obj/structure/closet{name = "Evidence Closet"},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "agY" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "agZ" = (/obj/structure/closet{name = "Evidence Closet"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) -"aha" = (/obj/structure/table,/obj/item/device/camera,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/security/brig) -"ahb" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/brig) +"aha" = (/obj/structure/table/standard,/obj/item/device/camera,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/security/brig) +"ahb" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/brig) "ahc" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/brig) "ahd" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/brig) "ahe" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/brig) @@ -390,8 +390,8 @@ "ahz" = (/obj/structure/grille,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized,/turf/simulated/floor/plating,/area/crew_quarters/heads/hos) "ahA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/security_port) "ahB" = (/obj/machinery/space_heater,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/security_port) -"ahC" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor,/area/security/brig) -"ahD" = (/obj/structure/table,/obj/item/stack/medical/ointment,/obj/item/weapon/folder/red,/obj/item/stack/medical/bruise_pack{pixel_x = 10; pixel_y = 2},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/security/brig) +"ahC" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor,/area/security/brig) +"ahD" = (/obj/structure/table/standard,/obj/item/stack/medical/ointment,/obj/item/weapon/folder/red,/obj/item/stack/medical/bruise_pack{pixel_x = 10; pixel_y = 2},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/security/brig) "ahE" = (/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/obj/structure/grille,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/brig) "ahF" = (/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "ahG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/command{id_tag = "HoSdoor"; name = "Head of Security"; req_access = list(58)},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/heads/hos) @@ -400,7 +400,7 @@ "ahJ" = (/obj/structure/grille,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/heads/hos) "ahK" = (/turf/simulated/floor,/area/security/brig) "ahL" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) -"ahM" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/security/brig) +"ahM" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/security/brig) "ahN" = (/obj/structure/closet/wardrobe/red,/obj/structure/window/reinforced,/obj/item/clothing/accessory/holster/waist,/obj/item/clothing/accessory/holster/waist,/obj/item/clothing/accessory/holster/waist,/obj/item/clothing/accessory/armband,/obj/item/clothing/accessory/armband,/obj/item/clothing/accessory/armband,/turf/simulated/floor,/area/security/main) "ahO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/brig) "ahP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/decal/cleanable/blood/oil,/obj/item/trash/tastybread,/turf/simulated/floor/plating,/area/maintenance/security_starboard) @@ -419,18 +419,18 @@ "aic" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/security_starboard) "aid" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/turf/simulated/floor/plating,/area/maintenance/security_port) "aie" = (/obj/structure/closet,/obj/item/clothing/head/ushanka,/turf/simulated/floor/plating,/area/maintenance/security_port) -"aif" = (/obj/structure/table,/obj/item/device/t_scanner,/turf/simulated/floor/plating,/area/maintenance/security_port) +"aif" = (/obj/structure/table/standard,/obj/item/device/t_scanner,/turf/simulated/floor/plating,/area/maintenance/security_port) "aig" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/heads/hos) "aih" = (/turf/space,/area/skipjack_station/northeast_solars) "aii" = (/obj/structure/bed/chair,/turf/simulated/floor,/area/security/brig) "aij" = (/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/obj/structure/grille,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/security/brig) "aik" = (/obj/structure/bed/chair/office/dark{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) -"ail" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/item/device/taperecorder,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "dark"},/area/security/brig) +"ail" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/obj/item/device/taperecorder,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aim" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/computer/security/telescreen{layer = 4; name = "Observation Screen"; network = list("Interrogation"); pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) "ain" = (/obj/structure/filingcabinet/filingcabinet,/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aio" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1449; listening = 0; pixel_x = 0; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/camera/network/security{c_tag = "Security - Interrogation"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aip" = (/obj/structure/bed/chair{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) -"aiq" = (/obj/structure/table,/turf/simulated/floor,/area/security/brig) +"aiq" = (/obj/structure/table/standard,/turf/simulated/floor,/area/security/brig) "air" = (/obj/machinery/computer/secure_data,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "ais" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "ait" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) @@ -452,13 +452,13 @@ "aiJ" = (/obj/structure/closet{name = "Evidence Closet"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aiK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aiL" = (/obj/item/device/eftpos{eftpos_name = "Brig EFTPOS scanner"},/obj/structure/table/reinforced,/obj/machinery/door/window/brigdoor{dir = 8; name = "Warden's Desk"; req_access = list(3)},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) -"aiM" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1475; listening = 0; name = "Station Intercom (Security)"; pixel_x = -30; pixel_y = 0},/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/security/brig) -"aiN" = (/obj/structure/table,/obj/item/weapon/storage/box/evidence,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/brig) +"aiM" = (/obj/structure/table/standard,/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1475; listening = 0; name = "Station Intercom (Security)"; pixel_x = -30; pixel_y = 0},/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/security/brig) +"aiN" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/evidence,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/brig) "aiO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/brig) "aiP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) "aiQ" = (/obj/machinery/computer/secure_data,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/security/brig) "aiR" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/security{pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) -"aiS" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law{pixel_x = -3; pixel_y = 5},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) +"aiS" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/security_space_law{pixel_x = -3; pixel_y = 5},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "aiT" = (/obj/machinery/computer/prisoner,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "aiU" = (/obj/structure/table/rack,/obj/item/weapon/crowbar,/obj/item/device/radio/off,/obj/item/weapon/wrench,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "aiV" = (/obj/structure/closet/secure_closet/warden,/obj/item/device/megaphone,/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1475; listening = 1; name = "Station Intercom (Security)"; pixel_x = 30; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) @@ -476,16 +476,16 @@ "ajh" = (/obj/structure/filingcabinet,/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/heads/hos) "aji" = (/obj/structure/closet/secure_closet/hos,/obj/item/device/radio/intercom{pixel_x = 27},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/heads/hos) "ajj" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera/network/security{c_tag = "Security - Interrogation Observation"; dir = 4},/turf/simulated/floor,/area/security/brig) -"ajk" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/machinery/camera/network/security{c_tag = "Security - Processing"; dir = 4},/turf/simulated/floor,/area/security/brig) +"ajk" = (/obj/structure/table/standard,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/machinery/camera/network/security{c_tag = "Security - Processing"; dir = 4},/turf/simulated/floor,/area/security/brig) "ajl" = (/obj/machinery/light/small{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/security_port) "ajm" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/cable/green,/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/heads/hos) "ajn" = (/obj/structure/bed/chair/comfy/black{dir = 1},/obj/effect/landmark/start{name = "Head of Security"},/obj/machinery/button/remote/airlock{id = "HoSdoor"; name = "Office Door"; pixel_x = -36; pixel_y = 29},/obj/machinery/button/windowtint{pixel_x = -26; pixel_y = 30},/obj/machinery/button/remote/blast_door{id = "Secure Gate"; name = "Brig Lockdown"; pixel_x = -36; pixel_y = 39; req_access = list(2)},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/heads/hos) -"ajo" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 2; pixel_y = 4},/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/camera/network/security{c_tag = "Security - Evidence Storage"; dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) +"ajo" = (/obj/structure/table/standard,/obj/item/weapon/folder/red{pixel_x = 2; pixel_y = 4},/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/camera/network/security{c_tag = "Security - Evidence Storage"; dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "ajp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/brig) "ajq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/brig) "ajr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/security/brig) "ajs" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/brig) -"ajt" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/camera/network/security{c_tag = "Security - Equipment South"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) +"ajt" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/camera/network/security{c_tag = "Security - Equipment South"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "aju" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/brig) "ajv" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/brig) "ajw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/brig) @@ -548,7 +548,7 @@ "akB" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/brig) "akC" = (/obj/machinery/light,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/brig) "akD" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/security/brig) -"akE" = (/obj/structure/table,/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = -28},/obj/item/clothing/accessory/holobadge,/obj/item/clothing/accessory/holobadge,/obj/item/clothing/accessory/holobadge/cord,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"akE" = (/obj/structure/table/standard,/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = -28},/obj/item/clothing/accessory/holobadge,/obj/item/clothing/accessory/holobadge,/obj/item/clothing/accessory/holobadge/cord,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "akF" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Security Processing"; req_access = list(1)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/brig) "akG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/security/brig) "akH" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/security/brig) @@ -622,7 +622,7 @@ "alX" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/turf/simulated/floor,/area/security/prison) "alY" = (/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{icon_state = "red"; dir = 4},/area/security/prison) "alZ" = (/obj/machinery/meter,/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/turf/simulated/floor/plating,/area/security/brig) -"ama" = (/obj/structure/table,/obj/item/device/t_scanner,/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"},/area/maintenance/security_starboard) +"ama" = (/obj/structure/table/standard,/obj/item/device/t_scanner,/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"},/area/maintenance/security_starboard) "amb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/brig) "amc" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/stool,/turf/simulated/floor/carpet,/area/security/detectives_office) "amd" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/southright{base_state = "left"; dir = 4; icon_state = "left"},/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/security/lobby) @@ -727,7 +727,7 @@ "anY" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/evahallway) "anZ" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/evahallway) "aoa" = (/obj/structure/closet/crate,/obj/item/weapon/tank/emergency_oxygen/engi,/obj/item/weapon/tank/emergency_oxygen/double,/obj/effect/decal/cleanable/cobweb2,/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/evahallway) -"aob" = (/obj/structure/table,/obj/item/weapon/pen,/obj/item/weapon/paper,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/security/brig) +"aob" = (/obj/structure/table/standard,/obj/item/weapon/pen,/obj/item/weapon/paper,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/security/brig) "aoc" = (/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes/buildable{charge = 0; RCon_tag = "Substation - Security"},/turf/simulated/floor/plating,/area/maintenance/substation/security) "aod" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) "aoe" = (/obj/machinery/computer/security/wooden_tv,/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) @@ -738,7 +738,7 @@ "aoj" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/wall,/area/security/brig) "aok" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/prison) "aol" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/security/prison) -"aom" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/southleft,/turf/simulated/floor,/area/security/prison) +"aom" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/table/standard,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/southleft,/turf/simulated/floor,/area/security/prison) "aon" = (/turf/simulated/floor,/area/security/prison) "aoo" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/prison) "aop" = (/obj/item/device/radio/intercom{desc = "Talk... listen through this."; name = "Station Intercom (Brig Radio)"; pixel_x = 0; pixel_y = 26; wires = 7},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) @@ -811,7 +811,7 @@ "apE" = (/obj/machinery/light{dir = 8},/obj/structure/bed/chair{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/lobby) "apF" = (/turf/simulated/floor/wood,/area/maintenance/dormitory) "apG" = (/obj/structure/bed/chair/wood/wings,/turf/simulated/floor/wood,/area/maintenance/dormitory) -"apH" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/table,/obj/item/weapon/book/manual/security_space_law{pixel_y = 6},/obj/machinery/camera/network/security{c_tag = "Security - Lobby"; dir = 4},/turf/simulated/floor,/area/security/lobby) +"apH" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/table/standard,/obj/item/weapon/book/manual/security_space_law{pixel_y = 6},/obj/machinery/camera/network/security{c_tag = "Security - Lobby"; dir = 4},/turf/simulated/floor,/area/security/lobby) "apI" = (/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/obj/structure/cable/yellow,/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/auxstarboard) "apJ" = (/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/obj/structure/cable/yellow,/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/auxport) "apK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/evahallway) @@ -851,7 +851,7 @@ "aqs" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/dormitory) "aqt" = (/obj/structure/table/gamblingtable,/turf/simulated/floor/wood,/area/maintenance/dormitory) "aqu" = (/obj/structure/table/gamblingtable,/obj/item/weapon/deck{pixel_y = 4},/turf/simulated/floor/wood,/area/maintenance/dormitory) -"aqv" = (/obj/structure/table,/obj/item/weapon/dice,/turf/simulated/floor/wood,/area/maintenance/dormitory) +"aqv" = (/obj/structure/table/standard,/obj/item/weapon/dice,/turf/simulated/floor/wood,/area/maintenance/dormitory) "aqw" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "dorm_pump"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 9},/area/maintenance/dormitory) "aqx" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/dormitory) "aqy" = (/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "dorm_sensor"; pixel_x = 25; pixel_y = -8},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/dormitory) @@ -859,15 +859,15 @@ "aqA" = (/obj/effect/decal/cleanable/dirt,/obj/structure/closet/crate,/obj/item/weapon/reagent_containers/food/drinks/bottle/wine,/turf/simulated/floor/plating,/area/maintenance/evahallway) "aqB" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/evahallway) "aqC" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{name = "Dormitory\\Security Maintenance"; req_access = list(12)},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating{dir = 8; icon_state = "warnplatecorner"},/area/maintenance/dormitory) -"aqD" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/obj/machinery/librarycomp{pixel_y = 0},/obj/structure/table,/turf/simulated/floor,/area/security/prison) +"aqD" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/obj/machinery/librarycomp{pixel_y = 0},/obj/structure/table/standard,/turf/simulated/floor,/area/security/prison) "aqE" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor,/area/security/prison) -"aqF" = (/obj/structure/table,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 2},/turf/simulated/floor,/area/security/prison) -"aqG" = (/obj/structure/table,/obj/item/weapon/dice,/turf/simulated/floor,/area/security/prison) -"aqH" = (/obj/structure/table,/obj/item/ashtray/plastic,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) +"aqF" = (/obj/structure/table/standard,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 2},/turf/simulated/floor,/area/security/prison) +"aqG" = (/obj/structure/table/standard,/obj/item/weapon/dice,/turf/simulated/floor,/area/security/prison) +"aqH" = (/obj/structure/table/standard,/obj/item/ashtray/plastic,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aqI" = (/obj/structure/reagent_dispensers/water_cooler,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor,/area/security/prison) "aqJ" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "dorm_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(13)},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless,/area/maintenance/dormitory) "aqK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/prison) -"aqL" = (/obj/structure/table,/obj/item/weapon/storage/box/cups,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/prison) +"aqL" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/cups,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/prison) "aqM" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless,/area/solar/fore) "aqN" = (/obj/structure/bed/chair{dir = 4},/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{dir = 8; icon_state = "redcorner"},/area/security/lobby) "aqO" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/lobby) @@ -883,12 +883,12 @@ "aqY" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = -30},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aqZ" = (/obj/structure/closet{name = "Evidence Closet"},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/evidence,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "ara" = (/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "lawyer_blast"; name = "Privacy Shutters"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/eastright{base_state = "left"; dir = 4; icon_state = "left"; name = "Internal Affairs Desk"; req_access = list(38)},/turf/simulated/floor,/area/lawoffice) -"arb" = (/obj/structure/table,/obj/machinery/newscaster{pixel_y = -32},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) -"arc" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) +"arb" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_y = -32},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) +"arc" = (/obj/structure/table/standard,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "ard" = (/obj/machinery/computer/security,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "are" = (/obj/structure/disposalpipe/segment,/obj/machinery/light/small{dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/dormitory) "arf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/dormitory) -"arg" = (/obj/structure/table,/obj/item/weapon/dice/d20,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/wood,/area/maintenance/dormitory) +"arg" = (/obj/structure/table/standard,/obj/item/weapon/dice/d20,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/wood,/area/maintenance/dormitory) "arh" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "dorm_pump"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 10},/area/maintenance/dormitory) "ari" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/dormitory) "arj" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "dorm_outer"; locked = 1; name = "Dormitory External Access"; req_access = list(13)},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/dormitory) @@ -899,18 +899,18 @@ "aro" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access = list(4)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/security/detectives_office) "arp" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/prison) "arq" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor,/area/security/prison) -"arr" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor,/area/security/prison) -"ars" = (/obj/structure/table,/obj/item/weapon/deck,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"art" = (/obj/structure/table,/obj/item/weapon/newspaper,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/security/prison) +"arr" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor,/area/security/prison) +"ars" = (/obj/structure/table/standard,/obj/item/weapon/deck,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) +"art" = (/obj/structure/table/standard,/obj/item/weapon/newspaper,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/security/prison) "aru" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor,/area/security/prison) "arv" = (/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/security{c_tag = "Security - Brig West"; dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) -"arw" = (/obj/structure/table,/obj/machinery/vending/wallmed1{pixel_y = -32},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/prison) +"arw" = (/obj/structure/table/standard,/obj/machinery/vending/wallmed1{pixel_y = -32},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/prison) "arx" = (/turf/simulated/wall/r_wall,/area/security/lobby) "ary" = (/obj/machinery/button/remote/airlock{id = "visitdoor"; name = "Visitation Access"; pixel_y = -28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/lobby) "arz" = (/obj/machinery/computer/secure_data,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "arA" = (/turf/simulated/wall/r_wall,/area/hallway/primary/fore) "arB" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless,/area/solar/fore) -"arC" = (/obj/machinery/light,/obj/structure/table,/obj/item/device/mass_spectrometer,/obj/item/device/reagent_scanner,/obj/machinery/camera/network/security{c_tag = "Security - Forensic Office Aft"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) +"arC" = (/obj/machinery/light,/obj/structure/table/standard,/obj/item/device/mass_spectrometer,/obj/item/device/reagent_scanner,/obj/machinery/camera/network/security{c_tag = "Security - Forensic Office Aft"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "arD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating/airless,/area/solar/fore) "arE" = (/turf/simulated/wall,/area/hallway/primary/fore) "arF" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "dorm_airlock"; name = "Dormitory Airlock Console"; pixel_x = 25; pixel_y = 0; req_one_access = list(1,5,11,18,24); tag_airpump = "dorm_pump"; tag_chamber_sensor = "dorm_sensor"; tag_exterior_door = "dorm_outer"; tag_interior_door = "dorm_inner"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 6},/area/maintenance/dormitory) @@ -963,7 +963,7 @@ "asA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/arrivals) "asB" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Security Lobby"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/hallway/primary/fore) "asC" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/evahallway) -"asD" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1475; listening = 0; name = "Station Intercom (Security)"; pixel_x = 0; pixel_y = -30},/obj/item/device/radio/headset,/obj/item/device/radio/headset,/obj/item/device/radio/headset,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/brig) +"asD" = (/obj/structure/table/standard,/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1475; listening = 0; name = "Station Intercom (Security)"; pixel_x = 0; pixel_y = -30},/obj/item/device/radio/headset,/obj/item/device/radio/headset,/obj/item/device/radio/headset,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/brig) "asE" = (/obj/item/device/radio/intercom{pixel_x = 30},/obj/machinery/door_timer/cell_1{pixel_x = 32; pixel_y = -32},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "red"; dir = 6},/area/security/brig) "asF" = (/obj/effect/decal/cleanable/dirt,/obj/structure/bed/chair{dir = 1},/turf/simulated/floor,/area/security/prison) "asG" = (/obj/machinery/portable_atmospherics/powered/scrubber/huge,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/brig) @@ -1143,12 +1143,12 @@ "avY" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 5; pixel_y = 0},/obj/structure/curtain/open/shower/security,/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) "avZ" = (/obj/machinery/light/small,/obj/structure/mopbucket,/obj/item/weapon/mop,/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) "awa" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/obj/item/weapon/soap/nanotrasen,/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) -"awb" = (/obj/structure/table,/obj/machinery/light{dir = 8},/obj/machinery/microwave,/turf/simulated/floor,/area/security/prison) -"awc" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets{pixel_x = -3; pixel_y = -3},/turf/simulated/floor,/area/security/prison) -"awd" = (/obj/structure/table,/obj/item/weapon/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/item/clothing/head/greenbandana,/turf/simulated/floor,/area/security/prison) +"awb" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/machinery/microwave,/turf/simulated/floor,/area/security/prison) +"awc" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets{pixel_x = -3; pixel_y = -3},/turf/simulated/floor,/area/security/prison) +"awd" = (/obj/structure/table/standard,/obj/item/weapon/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/item/clothing/head/greenbandana,/turf/simulated/floor,/area/security/prison) "awe" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor,/area/security/prison) "awf" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/crew_quarters/fitness) -"awg" = (/obj/structure/table,/obj/structure/bedsheetbin,/turf/simulated/floor,/area/security/prison) +"awg" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/simulated/floor,/area/security/prison) "awh" = (/obj/structure/closet{name = "Prisoner's Locker"},/obj/item/clothing/head/soft/orange,/obj/item/clothing/shoes/sandal,/turf/simulated/floor,/area/security/prison) "awi" = (/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) "awj" = (/turf/simulated/floor/wood,/area/crew_quarters/sleep/bedrooms) @@ -1216,7 +1216,7 @@ "axt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor,/area/crew_quarters/fitness) "axu" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "arrivals_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/arrivals) "axv" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/fitness) -"axw" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/camera/network/prison{c_tag = "Security - Common Brig Southwest"; dir = 4},/turf/simulated/floor,/area/security/prison) +"axw" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/camera/network/prison{c_tag = "Security - Common Brig Southwest"; dir = 4},/turf/simulated/floor,/area/security/prison) "axx" = (/obj/structure/sign/pods,/turf/simulated/wall,/area/hallway/secondary/entry/fore) "axy" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_1_hatch"; locked = 1; name = "Escape Pod Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod1/station) "axz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/power/apc/high{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry/port) @@ -1308,7 +1308,7 @@ "azh" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/undies_wardrobe,/turf/simulated/floor{icon_state = "neutral"},/area/crew_quarters/sleep) "azi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor,/area/crew_quarters/fitness) "azj" = (/obj/structure/grille,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/fitness) -"azk" = (/obj/structure/table,/obj/item/weapon/paper{desc = ""; info = "Brusies sustained in the holodeck can be healed simply by sleeping."; name = "Holodeck Disclaimer"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/crew_quarters/fitness) +"azk" = (/obj/structure/table/standard,/obj/item/weapon/paper{desc = ""; info = "Brusies sustained in the holodeck can be healed simply by sleeping."; name = "Holodeck Disclaimer"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/crew_quarters/fitness) "azl" = (/obj/item/weapon/stool{pixel_y = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "azm" = (/obj/item/weapon/stool{pixel_y = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "azn" = (/obj/structure/bed,/obj/item/weapon/bedsheet/mime,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/sleep/bedrooms) @@ -1560,12 +1560,12 @@ "aDZ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/maintenance/auxsolarport) "aEa" = (/obj/machinery/vending/assist,/turf/simulated/floor,/area/storage/primary) "aEb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/storage/primary) -"aEc" = (/obj/structure/table,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) -"aEd" = (/obj/structure/table,/obj/machinery/alarm{pixel_y = 23},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aEc" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aEd" = (/obj/structure/table/standard,/obj/machinery/alarm{pixel_y = 23},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) "aEe" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera/network/engineering{c_tag = "Solar Maintenance Fore Port"; dir = 1},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) -"aEf" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) -"aEg" = (/obj/structure/table,/obj/machinery/light_switch{pixel_y = 28},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) -"aEh" = (/obj/structure/table,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aEf" = (/obj/structure/table/standard,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aEg" = (/obj/structure/table/standard,/obj/machinery/light_switch{pixel_y = 28},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aEh" = (/obj/structure/table/standard,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) "aEi" = (/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,/area/storage/primary) "aEj" = (/obj/machinery/vending/tool,/turf/simulated/floor,/area/storage/primary) "aEk" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{icon_state = "vault"; dir = 1},/area/security/nuke_storage) @@ -1644,7 +1644,7 @@ "aFF" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 4; icon_state = "whitecorner"},/area/hallway/secondary/entry/port) "aFG" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Port Solar Access"; req_access = list(10)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aFH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/substation/civilian_west) -"aFI" = (/obj/structure/table,/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/civilian_west{c_tag = "Tool Storage - Primary"},/turf/simulated/floor,/area/storage/primary) +"aFI" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/civilian_west{c_tag = "Tool Storage - Primary"},/turf/simulated/floor,/area/storage/primary) "aFJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/storage/primary) "aFK" = (/obj/effect/landmark/start{name = "Assistant"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/storage/primary) "aFL" = (/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor,/area/storage/primary) @@ -1716,8 +1716,8 @@ "aGZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "bot"},/area/hallway/secondary/entry/starboard) "aHa" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bot"},/area/hallway/secondary/entry/starboard) "aHb" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bot"},/area/hallway/secondary/entry/starboard) -"aHc" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) -"aHd" = (/obj/structure/table,/obj/machinery/light{dir = 4},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aHc" = (/obj/structure/table/standard,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aHd" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) "aHe" = (/turf/simulated/floor{icon_state = "vault"; dir = 1},/area/security/nuke_storage) "aHf" = (/mob/living/simple_animal/mouse/brown/Tom,/turf/simulated/floor{icon_state = "vault"; dir = 6},/area/security/nuke_storage) "aHg" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "vault"},/area/security/nuke_storage) @@ -1802,7 +1802,7 @@ "aIH" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/hallway/secondary/entry/starboard) "aII" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east) "aIJ" = (/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/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/hallway/secondary/entry/starboard) -"aIK" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) +"aIK" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/primary) "aIL" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor,/area/storage/primary) "aIM" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/storage/primary) "aIN" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/library) @@ -1810,7 +1810,7 @@ "aIP" = (/obj/effect/landmark/start{name = "Assistant"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor,/area/storage/primary) "aIQ" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/security/nuke_storage) "aIR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/meter,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/library) -"aIS" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/table,/obj/item/weapon/deck,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/gateway) +"aIS" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/table/standard,/obj/item/weapon/deck,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/gateway) "aIT" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/gateway) "aIU" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/gateway) "aIV" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/gateway) @@ -1885,7 +1885,7 @@ "aKm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/storage/primary) "aKn" = (/turf/simulated/floor,/area/storage/primary) "aKo" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/storage/primary) -"aKp" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor,/area/storage/primary) +"aKp" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor,/area/storage/primary) "aKq" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor,/area/storage/primary) "aKr" = (/turf/simulated/floor{icon_state = "delivery"},/area/storage/primary) "aKs" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "Tool Storage"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "bot"},/area/storage/primary) @@ -1893,7 +1893,7 @@ "aKu" = (/turf/simulated/wall/r_wall,/area/hallway/primary/port) "aKv" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/hallway/primary/port) "aKw" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/security/nuke_storage) -"aKx" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes{pixel_y = 2},/turf/simulated/floor,/area/gateway) +"aKx" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes{pixel_y = 2},/turf/simulated/floor,/area/gateway) "aKy" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/gateway) "aKz" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor,/area/gateway) "aKA" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/gateway) @@ -1944,7 +1944,7 @@ "aLt" = (/obj/structure/table/woodentable,/obj/item/weapon/nullrod,/obj/item/device/eftpos{eftpos_name = "Chapel EFTPOS scanner"},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "aLu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/hallway/secondary/exit) "aLv" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/carpet,/area/crew_quarters/bar) -"aLw" = (/obj/structure/table,/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/chapel/main) +"aLw" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/chapel/main) "aLx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/chapel/main) "aLy" = (/turf/simulated/shuttle/wall{icon_state = "swall_s5"; dir = 2},/area/shuttle/arrival/station) "aLz" = (/turf/simulated/shuttle/wall{icon_state = "swall13"; dir = 2},/area/shuttle/arrival/station) @@ -2030,7 +2030,7 @@ "aNb" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "aNc" = (/obj/structure/closet/coffin,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "chapel"; name = "Privacy Shutters"; opacity = 0},/obj/machinery/door/window/eastleft{dir = 8; name = "Coffin Storage"; req_access = list(22)},/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) "aNd" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/bar) -"aNe" = (/obj/structure/table,/obj/machinery/light/small,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) +"aNe" = (/obj/structure/table/standard,/obj/machinery/light/small,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) "aNf" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/chapel/main) "aNg" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/shuttle/arrival/station) "aNh" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/port) @@ -2193,7 +2193,7 @@ "aQi" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "aQj" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "aQk" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) -"aQl" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) +"aQl" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) "aQm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "hydrofloor"},/area/hydroponics) "aQn" = (/turf/simulated/floor,/area/hydroponics) "aQo" = (/obj/structure/disposalpipe/segment,/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "green"; dir = 4},/area/hydroponics) @@ -2258,7 +2258,7 @@ "aRv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aRw" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/obj/structure/window/reinforced,/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aRx" = (/obj/machinery/door/window{dir = 4; name = "Bar"; req_access = list(25)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) -"aRy" = (/obj/structure/table,/obj/item/weapon/hatchet,/obj/item/weapon/minihoe,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) +"aRy" = (/obj/structure/table/standard,/obj/item/weapon/hatchet,/obj/item/weapon/minihoe,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) "aRz" = (/obj/machinery/biogenerator,/turf/simulated/floor,/area/hydroponics) "aRA" = (/obj/machinery/seed_extractor,/turf/simulated/floor,/area/hydroponics) "aRB" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor,/area/hydroponics) @@ -2307,7 +2307,7 @@ "aSs" = (/obj/machinery/door/airlock/glass{name = "Art Storage"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/hallway/primary/port) "aSt" = (/obj/machinery/door/morgue{dir = 2; name = "Confession Booth (Chaplain)"; req_access = list(22)},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) "aSu" = (/obj/item/device/radio/beacon,/obj/machinery/camera/network/exodus{c_tag = "Arrivals South"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry/port) -"aSv" = (/obj/structure/table,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor,/area/hallway/primary/port) +"aSv" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor,/area/hallway/primary/port) "aSw" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/closet/emcloset,/turf/simulated/floor,/area/hallway/primary/port) "aSx" = (/obj/structure/closet/emcloset,/turf/simulated/floor,/area/hallway/primary/port) "aSy" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/obj/machinery/camera/network/exodus{c_tag = "Arrivals Southeast"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/port) @@ -2395,11 +2395,11 @@ "aUc" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/crew_quarters/locker) "aUd" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor,/area/crew_quarters/locker) "aUe" = (/turf/simulated/wall,/area/storage/art) -"aUf" = (/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/storage/art) +"aUf" = (/obj/structure/table/standard,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/storage/art) "aUg" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/storage/art) "aUh" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/storage/art) "aUi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/locker) -"aUj" = (/obj/structure/table,/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Port - East"; dir = 1},/turf/simulated/floor,/area/hallway/primary/port) +"aUj" = (/obj/structure/table/standard,/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Port - East"; dir = 1},/turf/simulated/floor,/area/hallway/primary/port) "aUk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/port) "aUl" = (/obj/structure/sign/directions/security{dir = 4; icon_state = "direction_sec"; pixel_y = 4; tag = "icon-direction_sec (EAST)"},/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_y = -4; tag = "icon-direction_med (EAST)"},/turf/simulated/wall,/area/hallway/primary/port) "aUm" = (/turf/simulated/wall,/area/storage/tools) @@ -2433,8 +2433,8 @@ "aUO" = (/obj/structure/flora/pottedplant{tag = "icon-plant-22"; icon_state = "plant-22"},/obj/machinery/camera/network/civilian_east{c_tag = "Bar East"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aUP" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aUQ" = (/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"aUR" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"aUS" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aUR" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aUS" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aUT" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aUU" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) "aUV" = (/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) @@ -2483,7 +2483,7 @@ "aVM" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/storage/tools) "aVN" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/storage/tools) "aVO" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor,/area/storage/tools) -"aVP" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/tools) +"aVP" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/storage/tools) "aVQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_one) "aVR" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/bridge) "aVS" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/bar) @@ -2554,21 +2554,21 @@ "aXf" = (/obj/effect/decal/cleanable/generic,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/locker) "aXg" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/closet/wardrobe/white,/turf/simulated/floor,/area/crew_quarters/locker) "aXh" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) -"aXi" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor,/area/crew_quarters/locker) -"aXj" = (/obj/structure/table,/turf/simulated/floor,/area/crew_quarters/locker) -"aXk" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/crew_quarters/locker) +"aXi" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor,/area/crew_quarters/locker) +"aXj" = (/obj/structure/table/standard,/turf/simulated/floor,/area/crew_quarters/locker) +"aXk" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/crew_quarters/locker) "aXl" = (/obj/machinery/door/morgue{dir = 2; name = "Private Study"; req_access = list(37)},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/library) -"aXm" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/storage/art) +"aXm" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/storage/art) "aXn" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/camera/network/civilian_east{c_tag = "Chapel South"; dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) -"aXo" = (/obj/structure/table,/obj/item/device/camera_film,/obj/item/device/camera,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/storage/art) +"aXo" = (/obj/structure/table/standard,/obj/item/device/camera_film,/obj/item/device/camera,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/storage/art) "aXp" = (/obj/machinery/portable_atmospherics/canister/air,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plating,/area/storage/emergency2) "aXq" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plating,/area/maintenance/research_port) "aXr" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/storage/emergency2) "aXs" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/extinguisher,/turf/simulated/floor/plating,/area/storage/emergency2) "aXt" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor,/area/storage/tools) -"aXu" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/storage/tools) +"aXu" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/storage/tools) "aXv" = (/turf/simulated/floor,/area/storage/tools) -"aXw" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/cell_charger,/turf/simulated/floor,/area/storage/tools) +"aXw" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/cell_charger,/turf/simulated/floor,/area/storage/tools) "aXx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_one) "aXy" = (/turf/simulated/wall,/area/bridge) "aXz" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1331; id_tag = "nuke_shuttle_dock_pump"},/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "nuke_shuttle_dock_sensor"; pixel_x = 0; pixel_y = -25},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/hallway/secondary/entry/port) @@ -2594,10 +2594,10 @@ "aXT" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aXU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) "aXV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"aXW" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aXW" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aXX" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access = list(28)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/hydroponics/garden) -"aXY" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"aXZ" = (/obj/structure/table,/obj/item/weapon/book/manual/chef_recipes,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"aXY" = (/obj/structure/table/standard,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"aXZ" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/chef_recipes,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aYa" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aYb" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aYc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hydroponics/garden) @@ -2621,7 +2621,7 @@ "aYu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hallway/secondary/exit) "aYv" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor,/area/hallway/secondary/exit) "aYw" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4},/obj/machinery/camera/network/civilian_west{c_tag = "Locker Room East"; dir = 8},/turf/simulated/floor,/area/crew_quarters/locker) -"aYx" = (/obj/structure/table,/obj/item/weapon/storage/fancy/crayons,/obj/item/weapon/storage/fancy/crayons,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/light/small,/obj/machinery/camera/network/civilian_west{c_tag = "Art Supply Storage"; dir = 1},/turf/simulated/floor,/area/storage/art) +"aYx" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/crayons,/obj/item/weapon/storage/fancy/crayons,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/light/small,/obj/machinery/camera/network/civilian_west{c_tag = "Art Supply Storage"; dir = 1},/turf/simulated/floor,/area/storage/art) "aYy" = (/obj/machinery/camera/network/command{c_tag = "Bridge West"},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/bridge) "aYz" = (/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "escape_dock_north_sensor"; pixel_x = 0; pixel_y = -25},/turf/simulated/floor/plating,/area/hallway/secondary/exit) "aYA" = (/obj/item/device/radio/beacon,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/bridge) @@ -2631,20 +2631,20 @@ "aYE" = (/turf/simulated/floor{dir = 8; icon_state = "whitecorner"},/area/hallway/secondary/entry/port) "aYF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/hallway/secondary/entry/aft) "aYG" = (/obj/item/weapon/stool,/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/chapel/main) -"aYH" = (/obj/structure/table,/turf/simulated/floor,/area/security/vacantoffice) +"aYH" = (/obj/structure/table/standard,/turf/simulated/floor,/area/security/vacantoffice) "aYI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) -"aYJ" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) -"aYK" = (/obj/structure/table,/obj/structure/window/basic{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) +"aYJ" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) +"aYK" = (/obj/structure/table/standard,/obj/structure/window/basic{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) "aYL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/security/vacantoffice) "aYM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/bridge) -"aYN" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/security/vacantoffice) +"aYN" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/security/vacantoffice) "aYO" = (/turf/simulated/wall,/area/security/vacantoffice) "aYP" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/locker) "aYQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/locker) "aYR" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/locker) "aYS" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/locker) "aYT" = (/obj/structure/closet/wardrobe/grey,/obj/machinery/requests_console{department = "Locker Room"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor,/area/crew_quarters/locker) -"aYU" = (/obj/structure/table,/obj/item/clothing/head/soft/grey{pixel_x = -2; pixel_y = 3},/turf/simulated/floor,/area/crew_quarters/locker) +"aYU" = (/obj/structure/table/standard,/obj/item/clothing/head/soft/grey{pixel_x = -2; pixel_y = 3},/turf/simulated/floor,/area/crew_quarters/locker) "aYV" = (/obj/structure/noticeboard{pixel_y = 27},/obj/machinery/camera/network/command{c_tag = "Bridge East"},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/bridge) "aYW" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/crew_quarters/locker) "aYX" = (/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/chapel/main) @@ -2657,7 +2657,7 @@ "aZe" = (/obj/item/weapon/stool,/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/chapel/main) "aZf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/bridge) "aZg" = (/obj/machinery/atm{pixel_x = -25},/obj/machinery/camera/network/civilian_east{c_tag = "Bar West"; dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aZh" = (/obj/structure/table,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aZh" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aZi" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/secondary/exit) "aZj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/bridge) "aZk" = (/obj/structure/bed/chair/office/light{dir = 8},/turf/simulated/floor,/area/security/vacantoffice) @@ -2667,10 +2667,10 @@ "aZo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZp" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2; pixel_y = 4},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 6},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) -"aZr" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme{layer = 5},/obj/item/weapon/packageWrap,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"aZs" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"aZt" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"aZu" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"aZr" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/enzyme{layer = 5},/obj/item/weapon/packageWrap,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aZs" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aZt" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aZu" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aZv" = (/obj/structure/bed/chair/office/dark{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) "aZw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hydroponics/garden) "aZx" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/grass,/area/hydroponics/garden) @@ -2700,14 +2700,14 @@ "aZV" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/aft) "aZW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hallway/secondary/entry/aft) "aZX" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) -"aZY" = (/obj/structure/table,/obj/item/ashtray/plastic{pixel_x = 4; pixel_y = 6},/turf/simulated/floor,/area/security/vacantoffice) +"aZY" = (/obj/structure/table/standard,/obj/item/ashtray/plastic{pixel_x = 4; pixel_y = 6},/turf/simulated/floor,/area/security/vacantoffice) "aZZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/hallway/primary/starboard) "baa" = (/turf/simulated/floor,/area/security/vacantoffice) "bab" = (/obj/structure/bed/chair/office/dark{dir = 8},/turf/simulated/floor,/area/security/vacantoffice) -"bac" = (/obj/structure/table,/obj/structure/window/basic{dir = 4},/obj/item/weapon/folder/blue{pixel_x = 5},/turf/simulated/floor,/area/security/vacantoffice) +"bac" = (/obj/structure/table/standard,/obj/structure/window/basic{dir = 4},/obj/item/weapon/folder/blue{pixel_x = 5},/turf/simulated/floor,/area/security/vacantoffice) "bad" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/security/vacantoffice) "bae" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/vacantoffice) -"baf" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/table,/obj/item/weapon/stamp,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/item/weapon/pen,/turf/simulated/floor,/area/security/vacantoffice) +"baf" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/table/standard,/obj/item/weapon/stamp,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/item/weapon/pen,/turf/simulated/floor,/area/security/vacantoffice) "bag" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/locker) "bah" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/maintenance/locker) "bai" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/locker) @@ -2777,7 +2777,7 @@ "bbu" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bbv" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bbw" = (/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"bbx" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"bbx" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bby" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hydroponics/garden) "bbz" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) "bbA" = (/obj/structure/table/reinforced,/obj/item/weapon/hatchet,/obj/item/weapon/minihoe,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) @@ -2799,7 +2799,7 @@ "bbQ" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/flashlight,/obj/item/device/multitool,/turf/simulated/floor{icon_state = "blue"; dir = 6},/area/bridge) "bbR" = (/obj/structure/table/reinforced,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/item/weapon/storage/box/donut,/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/bridge) "bbS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light_switch{pixel_x = 25; pixel_y = -25},/turf/simulated/floor,/area/bridge) -"bbT" = (/obj/structure/table,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/tape_roll,/turf/simulated/floor,/area/crew_quarters/locker) +"bbT" = (/obj/structure/table/standard,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/tape_roll,/turf/simulated/floor,/area/crew_quarters/locker) "bbU" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hallway/secondary/entry/aft) "bbV" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/vacantoffice) "bbW" = (/obj/machinery/door/airlock/glass_command{id_tag = "sbridgedoor"; name = "Bridge"; req_access = list(19)},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/bridge) @@ -2836,7 +2836,7 @@ "bcB" = (/obj/item/device/radio/intercom{pixel_x = -25},/obj/machinery/camera/network/exodus{c_tag = "Departures West"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/secondary/exit) "bcC" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "exterior access button"; pixel_x = 5; pixel_y = 25; req_one_access = list(13)},/turf/space,/area/space) "bcD" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/bridge) -"bcE" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor/plating,/area/maintenance/substation/command) +"bcE" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bcF" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "centcom_shuttle_dock_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13); tag_airpump = "centcom_shuttle_dock_pump"; tag_chamber_sensor = "centcom_shuttle_dock_sensor"; tag_exterior_door = "centcom_shuttle_dock_outer"; tag_interior_door = "centcom_shuttle_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "centcom_shuttle_dock_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "centcom_shuttle_dock_pump"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "bcG" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/bridge) "bcH" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/hallway/primary/central_two) @@ -2877,13 +2877,13 @@ "bdq" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) "bdr" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/secondary/exit) "bds" = (/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/hallway/secondary/exit) -"bdt" = (/obj/structure/table,/obj/machinery/photocopier/faxmachine{anchored = 1; department = "Vacant Office"},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor,/area/security/vacantoffice) +"bdt" = (/obj/structure/table/standard,/obj/machinery/photocopier/faxmachine{anchored = 1; department = "Vacant Office"},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor,/area/security/vacantoffice) "bdu" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "bdv" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "bdw" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/aft) "bdx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor,/area/hallway/secondary/entry/aft) "bdy" = (/obj/effect/decal/cleanable/cobweb2,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/bluegrid,/area/turret_protected/ai) -"bdz" = (/obj/structure/table,/obj/structure/window/basic{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) +"bdz" = (/obj/structure/table/standard,/obj/structure/window/basic{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) "bdA" = (/obj/machinery/photocopier,/turf/simulated/floor,/area/security/vacantoffice) "bdB" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor,/area/hallway/primary/starboard) "bdC" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/locker) @@ -2891,7 +2891,7 @@ "bdE" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bdF" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bdG" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) -"bdH" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) +"bdH" = (/obj/structure/table/standard,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bdI" = (/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bdJ" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/closet/wardrobe/suit,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bdK" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) @@ -2955,7 +2955,7 @@ "beQ" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor{icon_state = "warningcorner"; dir = 4},/area/hallway/secondary/entry/aft) "beR" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/locker) "beS" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating/airless,/area/solar/auxport) -"beT" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/turf/simulated/floor,/area/security/vacantoffice) +"beT" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/turf/simulated/floor,/area/security/vacantoffice) "beU" = (/obj/machinery/firealarm{dir = 2; pixel_y = -24},/obj/machinery/light,/turf/simulated/floor,/area/security/vacantoffice) "beV" = (/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Warehouse Maintenance"; req_access = list(31)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/quartermaster/storage) "beW" = (/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = list(19)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/wood,/area/bridge/meeting_room) @@ -3034,7 +3034,7 @@ "bgr" = (/turf/simulated/wall,/area/hallway/secondary/entry/aft) "bgs" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/hallway/secondary/entry/aft) "bgt" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/hallway/secondary/entry/aft) -"bgu" = (/obj/structure/table,/obj/machinery/newscaster{pixel_y = -32},/turf/simulated/floor,/area/security/vacantoffice) +"bgu" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_y = -32},/turf/simulated/floor,/area/security/vacantoffice) "bgv" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor/plating,/area/maintenance/locker) "bgw" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/locker) "bgx" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) @@ -3047,9 +3047,9 @@ "bgE" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/office) "bgF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/quartermaster/office) "bgG" = (/turf/simulated/floor,/area/quartermaster/office) -"bgH" = (/obj/item/weapon/storage/box,/obj/structure/table,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{icon_state = "arrival"; dir = 1},/area/quartermaster/office) -"bgI" = (/obj/structure/table,/obj/item/weapon/wrapping_paper,/obj/item/weapon/wrapping_paper,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_y = 30},/turf/simulated/floor{icon_state = "arrival"; dir = 1},/area/quartermaster/office) -"bgJ" = (/obj/structure/table,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/turf/simulated/floor{icon_state = "arrival"; dir = 5},/area/quartermaster/office) +"bgH" = (/obj/item/weapon/storage/box,/obj/structure/table/standard,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{icon_state = "arrival"; dir = 1},/area/quartermaster/office) +"bgI" = (/obj/structure/table/standard,/obj/item/weapon/wrapping_paper,/obj/item/weapon/wrapping_paper,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_y = 30},/turf/simulated/floor{icon_state = "arrival"; dir = 1},/area/quartermaster/office) +"bgJ" = (/obj/structure/table/standard,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/turf/simulated/floor{icon_state = "arrival"; dir = 5},/area/quartermaster/office) "bgK" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_one) "bgL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_one) "bgM" = (/obj/structure/filingcabinet,/turf/simulated/floor,/area/security/vacantoffice) @@ -3129,7 +3129,7 @@ "bii" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bij" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bik" = (/obj/machinery/conveyor_switch/oneway{id = "packageSort1"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/office) -"bil" = (/obj/structure/table,/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) +"bil" = (/obj/structure/table/standard,/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) "bim" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/hallway/primary/central_one) "bin" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "chapel"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) "bio" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/item/device/eftpos{eftpos_name = "Bridge EFTPOS scanner"},/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/bridge/meeting_room) @@ -3378,7 +3378,7 @@ "bmX" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_one_access = list(5,12,47)},/turf/simulated/floor/plating,/area/hallway/primary/starboard) "bmY" = (/obj/structure/sign/chemistry,/turf/simulated/wall/r_wall,/area/medical/chemistry) "bmZ" = (/obj/structure/reagent_dispensers/water_cooler,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/turf/simulated/floor{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/reception) -"bna" = (/obj/structure/table,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/weapon/storage/box/cups{pixel_x = 0; pixel_y = 0},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) +"bna" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/weapon/storage/box/cups{pixel_x = 0; pixel_y = 0},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "bnb" = (/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access = list(12)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/exit) "bnc" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/buildable{charge = 0; RCon_tag = "Substation - Command"},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bnd" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 1; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/reception) @@ -3392,7 +3392,7 @@ "bnl" = (/obj/item/weapon/stool,/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/reception) "bnm" = (/obj/machinery/light{dir = 1},/obj/machinery/disposal,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bnn" = (/turf/simulated/wall,/area/medical/exam_room) -"bno" = (/obj/structure/table,/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = 7},/obj/item/weapon/paper_bin{pixel_y = -6},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = -9},/obj/item/weapon/pen/blue{pixel_x = 3; pixel_y = -5},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/morgue) +"bno" = (/obj/structure/table/standard,/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = 7},/obj/item/weapon/paper_bin{pixel_y = -6},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = -9},/obj/item/weapon/pen/blue{pixel_x = 3; pixel_y = -5},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/morgue) "bnp" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/morgue) "bnq" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/morgue) "bnr" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/morgue) @@ -3404,14 +3404,14 @@ "bnx" = (/obj/machinery/door/blast/regular{id = "mixvent"; name = "Mixer Room Vent"},/turf/simulated/floor/engine/vacuum,/area/rnd/mixing) "bny" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/chargebay) "bnz" = (/obj/machinery/computer/rdconsole/robotics,/obj/machinery/alarm{pixel_y = 25},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"bnA" = (/obj/structure/table,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"bnA" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bnB" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bnC" = (/obj/structure/reagent_dispensers/acid{density = 0; pixel_x = -32},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bnD" = (/obj/structure/bed/chair/office/light{dir = 1},/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bnE" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "scanhideside"; name = "Diagnostics Room Privacy Shutters"; opacity = 0},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/medbay4) "bnF" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bnG" = (/obj/machinery/autolathe,/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) -"bnH" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/gloves/latex,/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"bnH" = (/obj/structure/table/standard,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/gloves/latex,/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "bnI" = (/turf/simulated/wall/r_wall,/area/rnd/lab) "bnJ" = (/obj/structure/closet/hydrant{pixel_x = -32},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/storage/emergency) "bnK" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/emergency) @@ -3484,7 +3484,7 @@ "boZ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bpa" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bpb" = (/obj/structure/filingcabinet/medical,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) -"bpc" = (/obj/structure/table,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/morgue) +"bpc" = (/obj/structure/table/standard,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/morgue) "bpd" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/medical/morgue) "bpe" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/medical/morgue) "bpf" = (/turf/simulated/floor,/area/medical/morgue) @@ -3506,9 +3506,9 @@ "bpv" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Roboticist"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/assembly/robotics) "bpw" = (/obj/structure/closet/emcloset,/obj/machinery/camera/network/exodus{c_tag = "Arrivals Auxiliary Docking South"},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hallway/secondary/entry/aft) "bpx" = (/obj/structure/sign/securearea,/turf/simulated/wall,/area/hallway/primary/starboard) -"bpy" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) +"bpy" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) "bpz" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/firealarm{pixel_y = 27},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/quartermaster/office) -"bpA" = (/obj/structure/table,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) +"bpA" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) "bpB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/disposal) "bpC" = (/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "bpD" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) @@ -3533,9 +3533,9 @@ "bpW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker) "bpX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker) "bpY" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/decal/cleanable/dirt,/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/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/locker) -"bpZ" = (/obj/structure/table,/obj/item/clothing/head/soft,/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/soft,/turf/simulated/floor,/area/quartermaster/storage) -"bqa" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = 0; pixel_y = 30},/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/quartermaster/storage) -"bqb" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor,/area/quartermaster/storage) +"bpZ" = (/obj/structure/table/standard,/obj/item/clothing/head/soft,/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/soft,/turf/simulated/floor,/area/quartermaster/storage) +"bqa" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = 0; pixel_y = 30},/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/quartermaster/storage) +"bqb" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor,/area/quartermaster/storage) "bqc" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 1},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/quartermaster/office) "bqd" = (/obj/structure/closet/secure_closet/cargotech,/turf/simulated/floor,/area/quartermaster/storage) "bqe" = (/obj/machinery/light{dir = 1},/obj/machinery/alarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/quartermaster/storage) @@ -3579,7 +3579,7 @@ "bqQ" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/obj/machinery/door/blast/regular{density = 1; icon_state = "pdoor1"; id = "Disposal Exit"; name = "Disposal Exit Vent"; opacity = 1},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/disposal) "bqR" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bqS" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) -"bqT" = (/obj/structure/table,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000; pixel_x = 5; pixel_y = -5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"bqT" = (/obj/structure/table/standard,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000; pixel_x = 5; pixel_y = -5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bqU" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/morgue) "bqV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/medical/morgue) "bqW" = (/obj/machinery/optable,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/medical/morgue) @@ -3640,9 +3640,9 @@ "brZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/hallway/primary/central_one) "bsa" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Command Substation Bypass"},/obj/machinery/light,/turf/simulated/floor/plating,/area/maintenance/substation/command) "bsb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating,/area/maintenance/substation/command) -"bsc" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/command) +"bsc" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bsd" = (/obj/structure/disposalpipe/segment,/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"},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/medical/medbay2) -"bse" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/table,/obj/machinery/cell_charger,/turf/simulated/floor/plating,/area/maintenance/substation/command) +"bse" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/table/standard,/obj/machinery/cell_charger,/turf/simulated/floor/plating,/area/maintenance/substation/command) "bsf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/plating,/area/maintenance/substation/medical) "bsg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green,/obj/machinery/power/sensor{name = "Powernet Sensor - Medbay Subgrid"; name_tag = "Medbay Subgrid"},/turf/simulated/floor/plating,/area/maintenance/substation/medical) "bsh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/vault/bolted{name = "AI core"; req_access = list(16)},/obj/machinery/door/blast/regular{id = "AICore"; name = "AI core maintenance hatch"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) @@ -3661,24 +3661,24 @@ "bsu" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bsv" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "admin_shuttle_dock_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13); tag_airpump = "admin_shuttle_dock_pump"; tag_chamber_sensor = "admin_shuttle_dock_sensor"; tag_exterior_door = "admin_shuttle_dock_outer"; tag_interior_door = "admin_shuttle_dock_inner"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1; icon_state = "map"; tag = "icon-manifold-f (NORTH)"},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/entry/aft) "bsw" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/reception) -"bsx" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/cups{pixel_x = 2; pixel_y = 5},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/reception) +"bsx" = (/obj/structure/table/standard,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/cups{pixel_x = 2; pixel_y = 5},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/reception) "bsy" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -8; pixel_y = 25; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry/aft) -"bsz" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/machinery/computer/med_data/laptop,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) -"bsA" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) +"bsz" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) +"bsA" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "bsB" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "bsC" = (/obj/structure/filingcabinet/chestdrawer{name = "Medical Forms"},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{dir = 5; icon_state = "blue"},/area/medical/reception) "bsD" = (/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 30},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/reception) -"bsE" = (/obj/structure/table,/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"; pixel_y = -32},/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) +"bsE" = (/obj/structure/table/standard,/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"; pixel_y = -32},/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bsF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) -"bsG" = (/obj/structure/table,/obj/item/weapon/cane,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cane{pixel_x = -6; pixel_y = 4},/obj/item/weapon/storage/box/rxglasses,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) +"bsG" = (/obj/structure/table/standard,/obj/item/weapon/cane,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cane{pixel_x = -6; pixel_y = 4},/obj/item/weapon/storage/box/rxglasses,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bsH" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry/aft) -"bsI" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/bodybags,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/morgue) +"bsI" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/bodybags,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/morgue) "bsJ" = (/obj/machinery/mech_bay_recharge_port,/turf/simulated/floor/plating,/area/assembly/chargebay) "bsK" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/assembly/chargebay) "bsL" = (/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor/bluegrid,/area/assembly/chargebay) "bsM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/assembly/chargebay) "bsN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/assembly/robotics) -"bsO" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) +"bsO" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) "bsP" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) "bsQ" = (/obj/machinery/mecha_part_fabricator,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) "bsR" = (/obj/machinery/mecha_part_fabricator,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) @@ -3693,7 +3693,7 @@ "bta" = (/obj/machinery/r_n_d/protolathe,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/rnd/lab) "btb" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "warnwhite"},/area/rnd/lab) "btc" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) -"btd" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/pen,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"btd" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/obj/item/weapon/pen,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "bte" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/oxygen,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/mask/breath,/turf/simulated/floor/plating,/area/storage/emergency) "btf" = (/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "admin_shuttle_dock_sensor"; pixel_x = -30; pixel_y = 8},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/hallway/secondary/entry/aft) "btg" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1380; id_tag = "admin_shuttle_dock_pump"},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/hallway/secondary/entry/aft) @@ -3711,7 +3711,7 @@ "bts" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{pixel_y = 27},/turf/simulated/floor,/area/quartermaster/storage) "btt" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/quartermaster/storage) "btu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/quartermaster/storage) -"btv" = (/obj/structure/table,/obj/item/weapon/deck{pixel_y = 4},/turf/simulated/floor/plating,/area/maintenance/disposal) +"btv" = (/obj/structure/table/standard,/obj/item/weapon/deck{pixel_y = 4},/turf/simulated/floor/plating,/area/maintenance/disposal) "btw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/office) "btx" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/quartermaster/office) "bty" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/quartermaster/office) @@ -3730,7 +3730,7 @@ "btL" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) "btM" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/turret_protected/ai_upload) "btN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/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/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) -"btO" = (/obj/structure/table,/obj/item/weapon/aiModule/asimov,/obj/item/weapon/aiModule/freeformcore,/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Core Modules"; req_access = list(20)},/obj/structure/window/reinforced,/obj/item/weapon/aiModule/corp,/obj/item/weapon/aiModule/paladin,/obj/item/weapon/aiModule/robocop,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) +"btO" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/asimov,/obj/item/weapon/aiModule/freeformcore,/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Core Modules"; req_access = list(20)},/obj/structure/window/reinforced,/obj/item/weapon/aiModule/corp,/obj/item/weapon/aiModule/paladin,/obj/item/weapon/aiModule/robocop,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) "btP" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/obj/structure/cable/cyan,/turf/simulated/floor/plating,/area/turret_protected/ai_upload) "btQ" = (/obj/structure/displaycase,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/captain) "btR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/captain) @@ -3743,13 +3743,13 @@ "btY" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/dropper,/obj/machinery/light{dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "btZ" = (/obj/machinery/chem_master,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bua" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) -"bub" = (/obj/structure/table,/obj/item/weapon/aiModule/oxygen,/obj/item/weapon/aiModule/oneHuman,/obj/machinery/door/window{base_state = "left"; dir = 8; icon_state = "left"; name = "High-Risk Modules"; req_access = list(20)},/obj/item/weapon/aiModule/purge,/obj/structure/window/reinforced,/obj/item/weapon/aiModule/antimov,/obj/item/weapon/aiModule/teleporterOffline,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) +"bub" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/oxygen,/obj/item/weapon/aiModule/oneHuman,/obj/machinery/door/window{base_state = "left"; dir = 8; icon_state = "left"; name = "High-Risk Modules"; req_access = list(20)},/obj/item/weapon/aiModule/purge,/obj/structure/window/reinforced,/obj/item/weapon/aiModule/antimov,/obj/item/weapon/aiModule/teleporterOffline,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) "buc" = (/turf/simulated/wall,/area/medical/chemistry) "bud" = (/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = -32},/turf/simulated/floor{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/medical/reception) "bue" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{tag = "icon-whiteblue"; icon_state = "whiteblue"},/area/medical/reception) "buf" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/crew,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/reception) "bug" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/office) -"buh" = (/obj/structure/table,/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"},/turf/simulated/floor,/area/medical/reception) +"buh" = (/obj/structure/table/standard,/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"},/turf/simulated/floor,/area/medical/reception) "bui" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = list(20)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/captain) "buj" = (/obj/machinery/door/airlock/maintenance{name = "Captain's Office Maintenance"; req_access = list(20)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/visible/supply,/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/captain) "buk" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/filingcabinet/medical{pixel_y = 0},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/reception) @@ -3757,7 +3757,7 @@ "bum" = (/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 32},/turf/simulated/floor{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/medical/reception) "bun" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "buo" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/item/weapon/screwdriver,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) -"bup" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -28},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) +"bup" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -28},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "buq" = (/obj/structure/morgue,/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/medical/morgue) "bur" = (/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/medical/morgue) "bus" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor,/area/medical/morgue) @@ -3765,30 +3765,30 @@ "buu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/medical/morgue) "buv" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/medical/morgue) "buw" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/turf/simulated/floor{icon_state = "blue"; dir = 6},/area/medical/morgue) -"bux" = (/obj/structure/table,/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = -5},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) +"bux" = (/obj/structure/table/standard,/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = -5},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "buy" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/assembly/chargebay) "buz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/assembly/robotics) -"buA" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/cable_coil,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/assembly/robotics) +"buA" = (/obj/structure/table/standard,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/cable_coil,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/assembly/robotics) "buB" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/item/weapon/storage/box/matches,/obj/item/clothing/mask/smokable/cigarette/cigar,/obj/item/weapon/reagent_containers/food/drinks/flask{pixel_x = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/captain) "buC" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bot"},/area/assembly/robotics) "buD" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "bot"},/area/assembly/robotics) "buE" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/hologram/holopad,/turf/simulated/floor{dir = 8; icon_state = "warnwhite"},/area/assembly/robotics) "buF" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"buG" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"buG" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "buH" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "warnwhite"},/area/rnd/research) "buI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "buJ" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warnwhite"},/area/rnd/research) "buK" = (/obj/machinery/computer/rdconsole/core,/turf/simulated/floor,/area/rnd/lab) "buL" = (/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor,/area/rnd/lab) "buM" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor,/area/rnd/lab) -"buN" = (/obj/structure/table,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) -"buO" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/extinguisher,/turf/simulated/floor/plating,/area/storage/emergency) +"buN" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"buO" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/extinguisher,/turf/simulated/floor/plating,/area/storage/emergency) "buP" = (/turf/simulated/shuttle/wall{icon_state = "swall_s6"; dir = 2},/area/shuttle/research/station) "buQ" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/research/station) "buR" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/research/station) "buS" = (/turf/simulated/shuttle/wall{icon_state = "swall_s10"; dir = 2},/area/shuttle/research/station) -"buT" = (/obj/structure/table,/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/device/radio/intercom{broadcasting = 0; canhear_range = 5; freerange = 0; frequency = 1485; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = 3},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) -"buU" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_y = -10},/obj/item/weapon/folder/white{pixel_y = 0},/obj/item/weapon/pen,/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25; pixel_y = 16},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) +"buT" = (/obj/structure/table/standard,/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/device/radio/intercom{broadcasting = 0; canhear_range = 5; freerange = 0; frequency = 1485; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = 3},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) +"buU" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_y = -10},/obj/item/weapon/folder/white{pixel_y = 0},/obj/item/weapon/pen,/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25; pixel_y = 16},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "buV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 0},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "buW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "buX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) @@ -3807,8 +3807,8 @@ "bvk" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/office) "bvl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/quartermaster/office) "bvm" = (/obj/structure/disposalpipe/tagger/partial{name = "Sorting Office"; sort_tag = "Sorting Office"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/office) -"bvn" = (/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/obj/structure/table,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/quartermaster/office) -"bvo" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/clipboard,/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/quartermaster/office) +"bvn" = (/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/obj/structure/table/standard,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/quartermaster/office) +"bvo" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/clipboard,/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/quartermaster/office) "bvp" = (/obj/machinery/computer/ordercomp,/turf/simulated/floor,/area/quartermaster/office) "bvq" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access = list(31)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/quartermaster/storage) "bvr" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/substation/medical) @@ -3817,8 +3817,8 @@ "bvu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/hallway/primary/central_three) "bvv" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/hallway/primary/central_three) "bvw" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/hop) -"bvx" = (/obj/machinery/computer/skills{icon_state = "medlaptop"},/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/crew_quarters/heads/hop) -"bvy" = (/obj/structure/table,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 32},/obj/machinery/recharger{pixel_y = 0},/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/crew_quarters/heads/hop) +"bvx" = (/obj/machinery/computer/skills{icon_state = "medlaptop"},/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/crew_quarters/heads/hop) +"bvy" = (/obj/structure/table/standard,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 32},/obj/machinery/recharger{pixel_y = 0},/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bvz" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/recharger/wallcharger{pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bvA" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bvB" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/crew_quarters/heads/hop) @@ -3831,7 +3831,7 @@ "bvI" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/computer/aiupload,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) "bvJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) "bvK" = (/obj/machinery/hologram/holopad,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) -"bvL" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module,/obj/machinery/light_switch{pixel_x = 27},/obj/structure/reagent_dispensers/acid{density = 0; pixel_y = -32},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"bvL" = (/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module,/obj/machinery/light_switch{pixel_x = 27},/obj/structure/reagent_dispensers/acid{density = 0; pixel_y = -32},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "bvM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) "bvN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) "bvO" = (/obj/machinery/door/airlock{name = "Private Restroom"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/captain) @@ -3847,7 +3847,7 @@ "bvY" = (/obj/machinery/smartfridge/secure/medbay,/turf/simulated/wall,/area/medical/chemistry) "bvZ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Central - East Southwest"; dir = 8},/turf/simulated/floor,/area/hallway/primary/central_two) "bwa" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "scanhideside"; name = "Diagnostics Room Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay4) -"bwb" = (/obj/structure/table,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/item/weapon/reagent_containers/glass/bottle/stoxin{pixel_x = -6; pixel_y = 10},/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/medical,/turf/simulated/floor{dir = 8; icon_state = "whiteyellow"},/area/medical/chemistry) +"bwb" = (/obj/structure/table/standard,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/item/weapon/reagent_containers/glass/bottle/stoxin{pixel_x = -6; pixel_y = 10},/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/medical,/turf/simulated/floor{dir = 8; icon_state = "whiteyellow"},/area/medical/chemistry) "bwc" = (/obj/machinery/light_switch{pixel_x = 22; pixel_y = -8},/obj/machinery/button/remote/blast_door{id = "chemwindow"; name = "Chemistry Laboratory Window Shutters Control"; pixel_x = 26; pixel_y = 8},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bwd" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor,/area/medical/reception) "bwe" = (/turf/simulated/floor,/area/medical/reception) @@ -3855,9 +3855,9 @@ "bwg" = (/obj/machinery/button/remote/airlock{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyerPort"; name = "Medbay Doors Control"; pixel_x = -16; pixel_y = 28},/obj/structure/bed/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Medical Doctor"},/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/medical/reception) "bwh" = (/obj/machinery/door/blast/regular{id = "toxinsdriver"; name = "Toxins Launcher Bay Door"},/turf/simulated/floor/plating/airless,/area/rnd/mixing) "bwi" = (/obj/machinery/door/blast/regular{id = "toxinsdriver"; name = "Toxins Launcher Bay Door"},/turf/simulated/floor/plating/airless,/area/rnd/test_area) -"bwj" = (/obj/structure/table,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/turf/simulated/floor,/area/medical/reception) +"bwj" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/turf/simulated/floor,/area/medical/reception) "bwk" = (/turf/simulated/wall,/area/medical/medbay2) -"bwl" = (/obj/structure/table,/obj/machinery/button/remote/blast_door{id = "medbayrecquar"; name = "Medbay Entrance Lockdown Shutters Control"; pixel_x = 6; pixel_y = 8; req_access = list(5)},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"; pixel_x = -5},/turf/simulated/floor,/area/medical/reception) +"bwl" = (/obj/structure/table/standard,/obj/machinery/button/remote/blast_door{id = "medbayrecquar"; name = "Medbay Entrance Lockdown Shutters Control"; pixel_x = 6; pixel_y = 8; req_access = list(5)},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"; pixel_x = -5},/turf/simulated/floor,/area/medical/reception) "bwm" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/medbay2) "bwn" = (/obj/machinery/button/remote/airlock{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyerStar"; name = "Medbay Doors Control"; pixel_x = 6; pixel_y = 28},/obj/structure/bed/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Medical Doctor"},/turf/simulated/floor{tag = "icon-vault (EAST)"; icon_state = "vault"; dir = 4},/area/medical/reception) "bwo" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/assembly/chargebay) @@ -3875,14 +3875,14 @@ "bwA" = (/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/rnd/lab) "bwB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/rnd/lab) "bwC" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 4; icon_state = "warnwhitecorner"},/area/rnd/lab) -"bwD" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"bwD" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table/standard,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "bwE" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/emergency) "bwF" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/storage/emergency) "bwG" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/shuttle/research/station) "bwH" = (/obj/structure/closet/crate,/turf/simulated/shuttle/floor,/area/shuttle/research/station) "bwI" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable/green,/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/obj/structure/window/reinforced/polarized{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/heads/hop) "bwJ" = (/turf/simulated/shuttle/floor,/area/shuttle/research/station) -"bwK" = (/obj/structure/table,/turf/simulated/shuttle/floor,/area/shuttle/research/station) +"bwK" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor,/area/shuttle/research/station) "bwL" = (/turf/space,/area/shuttle/administration/station) "bwM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) "bwN" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) @@ -3896,16 +3896,16 @@ "bwV" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/quartermaster/office) "bwW" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 1; sortType = "Cargo Bay"; name = "Cargo Bay"},/turf/simulated/floor,/area/quartermaster/office) "bwX" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/office) -"bwY" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire{pixel_x = 5; pixel_y = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/random/firstaid,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) +"bwY" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire{pixel_x = 5; pixel_y = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/random/firstaid,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bwZ" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = 30; pixel_y = -5; req_one_access = list(13)},/turf/space,/area/space) "bxa" = (/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/office) -"bxb" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 5; pixel_y = 5},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/random/firstaid,/turf/simulated/floor{dir = 8; icon_state = "whiteyellowcorner"},/area/medical/chemistry) +"bxb" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 5; pixel_y = 5},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/random/firstaid,/turf/simulated/floor{dir = 8; icon_state = "whiteyellowcorner"},/area/medical/chemistry) "bxc" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_three) "bxd" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/hallway/primary/central_three) "bxe" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "loadingarea"},/area/hallway/primary/central_three) "bxf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{icon_state = "delivery"},/area/hallway/primary/central_three) "bxg" = (/obj/machinery/door/firedoor,/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "scanhideside"; name = "Diagnostics Room Privacy Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/medbay4) -"bxh" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 5; pixel_y = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/random/firstaid,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) +"bxh" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2{pixel_x = 5; pixel_y = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/random/firstaid,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bxi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) "bxj" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) "bxk" = (/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) @@ -3921,7 +3921,7 @@ "bxu" = (/obj/machinery/cryopod/robot/right,/turf/simulated/floor,/area/assembly/chargebay) "bxv" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/disposal) "bxw" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/central_two) -"bxx" = (/obj/structure/table,/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{dir = 1; icon_state = "whiteyellowcorner"},/area/medical/chemistry) +"bxx" = (/obj/structure/table/standard,/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{dir = 1; icon_state = "whiteyellowcorner"},/area/medical/chemistry) "bxy" = (/obj/structure/closet/secure_closet/medical1,/turf/simulated/floor{dir = 1; icon_state = "whiteyellow"},/area/medical/chemistry) "bxz" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access = list(31)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/quartermaster/storage) "bxA" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) @@ -3931,8 +3931,8 @@ "bxE" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/medical/medbay) "bxF" = (/turf/simulated/wall,/area/medical/medbay3) "bxG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/medbay3) -"bxH" = (/obj/structure/table,/obj/item/weapon/aiModule/nanotrasen,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/item/weapon/aiModule/reset,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) -"bxI" = (/obj/structure/table,/obj/item/weapon/aiModule/freeform,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/item/weapon/aiModule/protectStation,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) +"bxH" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/nanotrasen,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/item/weapon/aiModule/reset,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) +"bxI" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/freeform,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/item/weapon/aiModule/protectStation,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) "bxJ" = (/obj/machinery/door/firedoor,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/medical/medbay2) "bxK" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-white_ex"; icon_state = "white_ex"; dir = 2},/area/medical/medbay2) "bxL" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) @@ -3950,14 +3950,14 @@ "bxX" = (/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/machinery/light{dir = 8},/turf/simulated/floor/bluegrid,/area/assembly/chargebay) "bxY" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/assembly/chargebay) "bxZ" = (/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,/area/assembly/chargebay) -"bya" = (/obj/structure/table,/obj/item/device/mmi,/obj/item/device/mmi,/obj/item/device/mmi,/turf/simulated/floor,/area/assembly/robotics) -"byb" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/machinery/newscaster{pixel_x = 26; pixel_y = 1},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"bya" = (/obj/structure/table/standard,/obj/item/device/mmi,/obj/item/device/mmi,/obj/item/device/mmi,/turf/simulated/floor,/area/assembly/robotics) +"byb" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/machinery/newscaster{pixel_x = 26; pixel_y = 1},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "byc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating/airless,/area/space) "byd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora) "bye" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora) -"byf" = (/obj/item/weapon/folder/white,/obj/structure/table,/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/design_disk,/obj/item/weapon/disk/design_disk,/obj/item/weapon/reagent_containers/dropper{pixel_y = -4},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) -"byg" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) -"byh" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"byf" = (/obj/item/weapon/folder/white,/obj/structure/table/standard,/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/design_disk,/obj/item/weapon/disk/design_disk,/obj/item/weapon/reagent_containers/dropper{pixel_y = -4},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"byg" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) +"byh" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "byi" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "byj" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor,/area/quartermaster/office) "byk" = (/obj/structure/closet/crate,/obj/item/weapon/coin/silver,/turf/simulated/floor/plating,/area/storage/emergency) @@ -3999,7 +3999,7 @@ "byU" = (/obj/machinery/door/airlock/research{id_tag = "researchdoor"; name = "Research Division Access"; req_access = list(47)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "byV" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/medical/medbay) "byW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/medbay) -"byX" = (/obj/structure/table,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/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{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/medbay3) +"byX" = (/obj/structure/table/standard,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/obj/item/device/flashlight/pen,/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{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/medbay3) "byY" = (/obj/structure/closet/secure_closet/medical3,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay3) "byZ" = (/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay3) "bza" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/alarm{pixel_y = 25},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/medical/medbay3) @@ -4025,9 +4025,9 @@ "bzu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/assembly/chargebay) "bzv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/assembly/chargebay) "bzw" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/turf/simulated/floor,/area/assembly/chargebay) -"bzx" = (/obj/structure/table,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/assembly/robotics) -"bzy" = (/obj/structure/table,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/obj/item/device/mmi/digital/posibrain,/obj/item/device/robotanalyzer,/turf/simulated/floor{dir = 8; icon_state = "whitecorner"},/area/assembly/robotics) -"bzz" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/device/radio/headset/headset_sci{pixel_x = -3},/obj/item/device/multitool{pixel_x = 3},/obj/item/device/multitool{pixel_x = 3},/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"bzx" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/assembly/robotics) +"bzy" = (/obj/structure/table/standard,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/item/device/flash/synthetic,/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/obj/item/device/mmi/digital/posibrain,/obj/item/device/robotanalyzer,/turf/simulated/floor{dir = 8; icon_state = "whitecorner"},/area/assembly/robotics) +"bzz" = (/obj/structure/table/standard,/obj/item/weapon/crowbar,/obj/item/device/radio/headset/headset_sci{pixel_x = -3},/obj/item/device/multitool{pixel_x = 3},/obj/item/device/multitool{pixel_x = 3},/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bzA" = (/turf/simulated/wall,/area/rnd/research) "bzB" = (/obj/machinery/light{dir = 8},/obj/machinery/computer/guestpass{pixel_x = -28},/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/rnd/research) "bzC" = (/obj/effect/landmark{name = "lightsout"},/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/rnd/research) @@ -4064,15 +4064,15 @@ "bAh" = (/turf/simulated/wall/r_wall,/area/turret_protected/ai_server_room) "bAi" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 1; icon_state = "left"; name = "Shower"},/obj/machinery/shower{icon_state = "shower"; dir = 4},/obj/item/weapon/soap/deluxe,/obj/item/weapon/bikehorn/rubberducky,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/captain) "bAj" = (/turf/simulated/wall/r_wall,/area/turret_protected/ai_cyborg_station) -"bAk" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/teleporter) -"bAl" = (/obj/machinery/light{dir = 1},/obj/structure/table,/obj/item/weapon/hand_tele,/turf/simulated/floor,/area/teleporter) +"bAk" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/teleporter) +"bAl" = (/obj/machinery/light{dir = 1},/obj/structure/table/standard,/obj/item/weapon/hand_tele,/turf/simulated/floor,/area/teleporter) "bAm" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/closet/crate,/obj/item/weapon/crowbar,/turf/simulated/floor,/area/teleporter) "bAn" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/teleporter) "bAo" = (/obj/machinery/light{dir = 1},/obj/structure/closet/secure_closet/chemical,/obj/item/weapon/storage/box/pillbottles,/obj/item/device/radio/headset/headset_med,/obj/machinery/camera/network/medbay{c_tag = "Medbay Drug Storage"},/turf/simulated/floor{dir = 1; icon_state = "whiteyellow"},/area/medical/chemistry) "bAp" = (/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/teleporter) "bAq" = (/obj/machinery/light_switch{pixel_x = 27},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/teleporter) "bAr" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/hallway/primary/central_two) -"bAs" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 5; pixel_y = 5},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/random/firstaid,/turf/simulated/floor{dir = 8; icon_state = "whiteyellowcorner"},/area/medical/chemistry) +"bAs" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 5; pixel_y = 5},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/random/firstaid,/turf/simulated/floor{dir = 8; icon_state = "whiteyellowcorner"},/area/medical/chemistry) "bAt" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/multi_tile/glass{id_tag = "MedbayFoyerPort"; req_access = list(5)},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/medical/medbay) "bAu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medbay Reception"; req_access = list(5)},/turf/simulated/floor{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/medbay3) "bAv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) @@ -4106,7 +4106,7 @@ "bAX" = (/obj/machinery/button/remote/airlock{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyerPort"; name = "Medbay Doors Control"; pixel_x = -24; pixel_y = 26},/obj/machinery/computer/guestpass{pixel_x = -28},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/medbay) "bAY" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor,/area/assembly/chargebay) "bAZ" = (/obj/machinery/recharge_station,/turf/simulated/floor{icon_state = "bot"},/area/assembly/chargebay) -"bBa" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags{pixel_x = -1; pixel_y = -2},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/assembly/robotics) +"bBa" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/bodybags{pixel_x = -1; pixel_y = -2},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/assembly/robotics) "bBb" = (/obj/machinery/optable{name = "Robotics Operating Table"},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bBc" = (/obj/machinery/computer/operating{name = "Robotics Operating Computer"},/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bBd" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "warnwhite"},/area/assembly/robotics) @@ -4136,16 +4136,16 @@ "bBB" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/shuttle/research/station) "bBC" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) "bBD" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) -"bBE" = (/obj/structure/table,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/device/multitool,/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Office"; dir = 4},/turf/simulated/floor,/area/quartermaster/office) +"bBE" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/device/multitool,/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Office"; dir = 4},/turf/simulated/floor,/area/quartermaster/office) "bBF" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "QM #2"},/obj/machinery/bot/mulebot{home_destination = "QM #2"; suffix = "#2"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) -"bBG" = (/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/yellow,/obj/item/device/eftpos{eftpos_name = "Cargo Bay EFTPOS scanner"},/turf/simulated/floor,/area/quartermaster/office) +"bBG" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/yellow,/obj/item/device/eftpos{eftpos_name = "Cargo Bay EFTPOS scanner"},/turf/simulated/floor,/area/quartermaster/office) "bBH" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/quartermaster/office) "bBI" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/office) "bBJ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/quartermaster/office) "bBK" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_server_room) "bBL" = (/obj/structure/closet/secure_closet/hop2,/turf/simulated/floor,/area/crew_quarters/heads/hop) "bBM" = (/turf/simulated/floor,/area/crew_quarters/heads/hop) -"bBN" = (/obj/structure/table,/obj/item/weapon/pen,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/device/megaphone,/turf/simulated/floor,/area/crew_quarters/heads/hop) +"bBN" = (/obj/structure/table/standard,/obj/item/weapon/pen,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/device/megaphone,/turf/simulated/floor,/area/crew_quarters/heads/hop) "bBO" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 32; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/crew_quarters/heads/hop) "bBP" = (/obj/machinery/message_server,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_server_room) "bBQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload_foyer) @@ -4168,7 +4168,7 @@ "bCh" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/medbay) "bCi" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay3) "bCj" = (/turf/simulated/floor{icon_state = "white"},/area/medical/medbay3) -"bCk" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 28},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/medbay3) +"bCk" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 28},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/medbay3) "bCl" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay2) "bCm" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bCn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(5)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) @@ -4195,19 +4195,19 @@ "bCI" = (/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/rnd/docking) "bCJ" = (/turf/simulated/wall,/area/rnd/docking) "bCK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/shuttle/plating,/area/rnd/docking) -"bCL" = (/obj/structure/table,/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "research_shuttle"; pixel_x = -8; pixel_y = -25; req_one_access = list(13,65); tag_door = "research_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/research/station) +"bCL" = (/obj/structure/table/standard,/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "research_shuttle"; pixel_x = -8; pixel_y = -25; req_one_access = list(13,65); tag_door = "research_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/research/station) "bCM" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) "bCN" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "QMLoad"},/turf/simulated/floor,/area/quartermaster/storage) "bCO" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor,/area/quartermaster/storage) "bCP" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "QM #3"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) -"bCQ" = (/obj/structure/table,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/belt/utility,/turf/simulated/floor,/area/quartermaster/office) +"bCQ" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/belt/utility,/turf/simulated/floor,/area/quartermaster/office) "bCR" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/quartermaster/office) "bCS" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bCT" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "bluecorner"},/area/hallway/primary/central_three) "bCU" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "bot"},/area/hallway/primary/central_three) "bCV" = (/obj/machinery/keycard_auth{pixel_x = -24; pixel_y = 0},/obj/machinery/account_database,/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/crew_quarters/heads/hop) "bCW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) -"bCX" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/obj/item/device/eftpos{eftpos_name = "HoP EFTPOS scanner"},/turf/simulated/floor,/area/crew_quarters/heads/hop) +"bCX" = (/obj/structure/table/standard,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/obj/item/device/eftpos{eftpos_name = "HoP EFTPOS scanner"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bCY" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "cargo_bay"; name = "cargo bay hatch controller"; pixel_x = -30; pixel_y = 0; req_one_access = list(13,31); tag_door = "cargo_bay_door"},/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Recieving Dock"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) "bCZ" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/glass_mining{id_tag = "cargodoor"; name = "Cargo Office"; req_access = list(50)},/turf/simulated/floor,/area/quartermaster/office) "bDa" = (/turf/simulated/floor/bluegrid,/area/turret_protected/ai_server_room) @@ -4237,9 +4237,9 @@ "bDy" = (/obj/machinery/status_display,/turf/simulated/wall,/area/medical/medbay) "bDz" = (/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bDA" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/medbay) -"bDB" = (/obj/structure/table,/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/mask/muzzle,/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/turf/simulated/floor{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/medical/medbay3) +"bDB" = (/obj/structure/table/standard,/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/mask/muzzle,/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/turf/simulated/floor{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/medical/medbay3) "bDC" = (/obj/machinery/door/firedoor,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "acute1"; name = "EMT Storage Privacy Shutters"; opacity = 0},/turf/simulated/floor{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/sleeper) -"bDD" = (/obj/structure/table,/obj/machinery/light,/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks{pixel_y = 0},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/medical/medbay3) +"bDD" = (/obj/structure/table/standard,/obj/machinery/light,/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks{pixel_y = 0},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/medical/medbay3) "bDE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay2) "bDF" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bDG" = (/obj/machinery/atmospherics/unary/cryo_cell,/turf/simulated/floor{dir = 9; icon_state = "whitered"},/area/medical/cryo) @@ -4293,7 +4293,7 @@ "bEC" = (/obj/structure/bed/chair{dir = 8},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -28},/obj/machinery/light,/turf/simulated/floor,/area/quartermaster/office) "bED" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/quartermaster/storage) "bEE" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "QM #4"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) -"bEF" = (/obj/structure/table,/obj/machinery/newscaster{pixel_x = -27; pixel_y = 1},/obj/item/weapon/tape_roll,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/simulated/floor,/area/quartermaster/office) +"bEF" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_x = -27; pixel_y = 1},/obj/item/weapon/tape_roll,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/simulated/floor,/area/quartermaster/office) "bEG" = (/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/quartermaster/office) "bEH" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/computer/guestpass{pixel_y = -28},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 2; icon_state = "browncorner"},/area/quartermaster/office) "bEI" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/office) @@ -4306,7 +4306,7 @@ "bEP" = (/turf/simulated/floor{dir = 4; icon_state = "loadingarea"},/area/hallway/primary/central_three) "bEQ" = (/obj/structure/filingcabinet/chestdrawer,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/crew_quarters/heads/hop) "bER" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_server_room) -"bES" = (/obj/structure/table,/obj/machinery/photocopier/faxmachine{department = "Head of Personnel's Office"},/turf/simulated/floor,/area/crew_quarters/heads/hop) +"bES" = (/obj/structure/table/standard,/obj/machinery/photocopier/faxmachine{department = "Head of Personnel's Office"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bET" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bEU" = (/turf/simulated/wall/r_wall,/area/turret_protected/ai_upload_foyer) "bEV" = (/obj/effect/landmark/start{name = "Cyborg"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_cyborg_station) @@ -4315,7 +4315,7 @@ "bEY" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{dir = 1; name = "Emergency Kit"; req_access = list(5)},/obj/machinery/door/firedoor,/obj/item/weapon/storage/toolbox/emergency,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag,/obj/item/device/radio{frequency = 1487; name = "Medbay Emergency Radio Link"},/turf/simulated/floor{dir = 1; icon_state = "whiteyellow"},/area/medical/sleeper) "bEZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medicine Storage"; req_access = list(5)},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bFa" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/machinery/camera/network/medbay{c_tag = "Medbay Equipment Storage"; dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/medbay3) -"bFb" = (/obj/structure/table,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/machinery/camera/network/medbay{c_tag = "Medbay Cryogenics"},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/cryo) +"bFb" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/machinery/camera/network/medbay{c_tag = "Medbay Cryogenics"},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/cryo) "bFc" = (/obj/machinery/recharge_station,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_cyborg_station) "bFd" = (/obj/machinery/computer/teleporter,/turf/simulated/floor/plating,/area/teleporter) "bFe" = (/obj/machinery/teleport/station,/turf/simulated/floor/plating,/area/teleporter) @@ -4338,7 +4338,7 @@ "bFv" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor{dir = 1; icon_state = "whiteredcorner"},/area/medical/cryo) "bFw" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/simulated/floor{icon_state = "white"},/area/medical/cryo) "bFx" = (/obj/machinery/power/apc/high{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/cryo) -"bFy" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags{pixel_x = 1; pixel_y = 2},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{icon_state = "white"},/area/medical/genetics_cloning) +"bFy" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/bodybags{pixel_x = 1; pixel_y = 2},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{icon_state = "white"},/area/medical/genetics_cloning) "bFz" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/genetics_cloning) "bFA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/genetics) "bFB" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/medical/genetics) @@ -4360,7 +4360,7 @@ "bFR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 5; icon_state = "whitehall"},/area/rnd/research) "bFS" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bFT" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/rnd/research) -"bFU" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/stamp/rd{pixel_x = 3; pixel_y = -2},/obj/item/weapon/paper/monitorkey,/obj/item/device/megaphone,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) +"bFU" = (/obj/structure/table/standard,/obj/item/weapon/folder/white,/obj/item/weapon/stamp/rd{pixel_x = 3; pixel_y = -2},/obj/item/weapon/paper/monitorkey,/obj/item/device/megaphone,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bFV" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized{dir = 8},/turf/simulated/floor/plating,/area/rnd/research) "bFW" = (/obj/machinery/computer/aifixer,/obj/machinery/requests_console{announcementConsole = 1; department = "Research Director's Desk"; departmentType = 5; name = "Research Director RC"; pixel_x = -2; pixel_y = 30},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bFX" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{dir = 8; icon_state = "warnwhite"},/area/crew_quarters/heads/hor) @@ -4439,7 +4439,7 @@ "bHs" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor{icon_state = "white"},/area/rnd/docking) "bHt" = (/obj/machinery/computer/shuttle_control/research,/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/rnd/docking) "bHu" = (/obj/structure/lattice,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 32},/turf/space,/area/space) -"bHv" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/simulated/floor,/area/quartermaster/miningdock) +"bHv" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/simulated/floor,/area/quartermaster/miningdock) "bHw" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/quartermaster/miningdock) "bHx" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/miningdock) "bHy" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/light{dir = 1},/obj/machinery/light_switch{pixel_y = 24},/obj/item/weapon/storage/belt/utility,/turf/simulated/floor,/area/quartermaster/miningdock) @@ -4462,7 +4462,7 @@ "bHP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/research{name = "Genetics Research"; req_access = list(9)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/genetics) "bHQ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access = list(47)},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bHR" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/rnd/research) -"bHS" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) +"bHS" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bHT" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor,/area/hallway/primary/central_three) "bHU" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/rnd/docking) "bHV" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "research_dock_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = -25; req_one_access = list(13,65)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/rnd/docking) @@ -4513,16 +4513,16 @@ "bIO" = (/obj/machinery/computer/mecha,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bIP" = (/obj/machinery/computer/area_atmos,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bIQ" = (/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) -"bIR" = (/obj/structure/table,/obj/item/device/taperecorder{pixel_x = -3},/obj/item/device/paicard{pixel_x = 4},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/item/weapon/circuitboard/teleporter,/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) +"bIR" = (/obj/structure/table/standard,/obj/item/device/taperecorder{pixel_x = -3},/obj/item/device/paicard{pixel_x = 4},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/item/weapon/circuitboard/teleporter,/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bIS" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/research_shuttle) -"bIT" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/miningdock) +"bIT" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/miningdock) "bIU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/primary/central_three) "bIV" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/miningdock) "bIW" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/pickaxe{pixel_x = 5},/obj/item/weapon/shovel{pixel_x = -5},/turf/simulated/floor,/area/quartermaster/miningdock) "bIX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/hallway/primary/central_three) -"bIY" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/device/megaphone,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/qm) -"bIZ" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/turf/simulated/floor,/area/quartermaster/qm) -"bJa" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = 0; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/qm) +"bIY" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/device/megaphone,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/qm) +"bIZ" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/turf/simulated/floor,/area/quartermaster/qm) +"bJa" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = 0; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/qm) "bJb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/highsecurity{name = "Cyborg Station"; req_access = list(16)},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_three) "bJc" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AIW"; location = "QM"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor,/area/hallway/primary/central_three) "bJd" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/hallway/primary/central_three) @@ -4588,7 +4588,7 @@ "bKl" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/research_shuttle) "bKm" = (/obj/structure/closet/crate,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/device/assembly/prox_sensor,/obj/item/device/flashlight,/obj/item/weapon/storage/backpack,/turf/simulated/floor/plating,/area/maintenance/research_shuttle) "bKn" = (/obj/structure/table/rack,/obj/item/weapon/extinguisher,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/mask/gas,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/research_shuttle) -"bKo" = (/obj/structure/table,/obj/machinery/computer/skills{icon_state = "medlaptop"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) +"bKo" = (/obj/structure/table/standard,/obj/machinery/computer/skills{icon_state = "medlaptop"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bKp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/rnd/test_area) "bKq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/rnd/test_area) "bKr" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless,/area/rnd/test_area) @@ -4659,7 +4659,7 @@ "bLE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/storage) "bLF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bLG" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) -"bLH" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/light,/obj/structure/table,/obj/machinery/photocopier/faxmachine{department = "Research Director's Office"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hop) +"bLH" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/light,/obj/structure/table/standard,/obj/machinery/photocopier/faxmachine{department = "Research Director's Office"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hop) "bLI" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{icon_state = "warningcorner"; dir = 8},/area/hallway/primary/central_three) "bLJ" = (/obj/structure/closet/secure_closet/RD,/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bLK" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) @@ -4674,7 +4674,7 @@ "bLT" = (/turf/simulated/floor/airless,/area/rnd/test_area) "bLU" = (/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor/airless,/area/rnd/test_area) "bLV" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/shuttle/mining/station) -"bLW" = (/obj/structure/table,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/mining/station) +"bLW" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/mining/station) "bLX" = (/obj/machinery/computer/shuttle_control/mining,/turf/simulated/shuttle/floor,/area/shuttle/mining/station) "bLY" = (/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Central - South Southeast"},/obj/structure/sign/securearea{pixel_y = 32},/turf/simulated/floor{icon_state = "warningcorner"; dir = 4},/area/hallway/primary/central_three) "bLZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/miningdock) @@ -4702,7 +4702,7 @@ "bMv" = (/obj/structure/bed/chair,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bMw" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Medical Doctor"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bMx" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Medical Doctor"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) -"bMy" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/table,/obj/machinery/photocopier/faxmachine{department = "CMO's Office"},/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/crew_quarters/heads/cmo) +"bMy" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/table/standard,/obj/machinery/photocopier/faxmachine{department = "CMO's Office"},/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/crew_quarters/heads/cmo) "bMz" = (/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bMA" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bMB" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/closet/secure_closet/CMO,/obj/item/clothing/mask/gas,/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/crew_quarters/heads/cmo) @@ -4748,14 +4748,14 @@ "bNp" = (/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/quartermaster/miningdock) "bNq" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_three) "bNr" = (/obj/structure/closet/secure_closet/quartermaster,/turf/simulated/floor,/area/quartermaster/qm) -"bNs" = (/obj/structure/table,/obj/item/weapon/coin/silver{pixel_x = -3; pixel_y = 3},/obj/item/weapon/coin/silver,/obj/item/device/eftpos{eftpos_name = "Quartermaster EFTPOS scanner"},/turf/simulated/floor,/area/quartermaster/qm) -"bNt" = (/obj/structure/table,/obj/item/weapon/cartridge/quartermaster{pixel_x = 6; pixel_y = 5},/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster{pixel_x = -4; pixel_y = 7},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor,/area/quartermaster/qm) +"bNs" = (/obj/structure/table/standard,/obj/item/weapon/coin/silver{pixel_x = -3; pixel_y = 3},/obj/item/weapon/coin/silver,/obj/item/device/eftpos{eftpos_name = "Quartermaster EFTPOS scanner"},/turf/simulated/floor,/area/quartermaster/qm) +"bNt" = (/obj/structure/table/standard,/obj/item/weapon/cartridge/quartermaster{pixel_x = 6; pixel_y = 5},/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster{pixel_x = -4; pixel_y = 7},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor,/area/quartermaster/qm) "bNu" = (/obj/structure/closet/crate,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/cargo) "bNv" = (/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/maintenance/cargo) "bNw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/cargo) "bNx" = (/turf/simulated/wall,/area/maintenance/cargo) "bNy" = (/turf/simulated/wall,/area/storage/tech) -"bNz" = (/obj/structure/table,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flash,/obj/item/device/flash,/obj/machinery/ai_status_display{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plating,/area/storage/tech) +"bNz" = (/obj/structure/table/standard,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flash,/obj/item/device/flash,/obj/machinery/ai_status_display{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plating,/area/storage/tech) "bNA" = (/obj/machinery/light/small{dir = 1},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plating,/area/storage/tech) "bNB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor,/area/hallway/primary/central_three) "bNC" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/turf/simulated/floor/plating,/area/storage/tech) @@ -4805,7 +4805,7 @@ "bOu" = (/obj/item/device/radio/intercom{pixel_y = 25},/turf/simulated/floor/engine,/area/rnd/misc_lab) "bOv" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/engine,/area/rnd/misc_lab) "bOw" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/light{dir = 1},/turf/simulated/floor/engine,/area/rnd/misc_lab) -"bOx" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 10},/turf/simulated/floor/engine,/area/rnd/misc_lab) +"bOx" = (/obj/structure/table/standard,/obj/item/stack/sheet/metal{amount = 10},/turf/simulated/floor/engine,/area/rnd/misc_lab) "bOy" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/rnd/storage) "bOz" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/storage) "bOA" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/rnd/storage) @@ -4816,8 +4816,8 @@ "bOF" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bOG" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{autoclose = 1; name = "EMT Storage"; req_access = list(5)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/medbay) "bOH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/server) -"bOI" = (/obj/structure/table,/obj/item/weapon/cartridge/signal/science,/obj/item/weapon/cartridge/signal/science{pixel_x = -4; pixel_y = 2},/obj/item/weapon/cartridge/signal/science{pixel_x = 4; pixel_y = 6},/obj/item/clothing/glasses/welding/superior,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/camera/network/research{c_tag = "Research - RD's Office"; dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) -"bOJ" = (/obj/structure/table,/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "mining_shuttle"; pixel_x = 25; pixel_y = -8; req_one_access = list(13,48); tag_door = "mining_shuttle_hatch"},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/mining/station) +"bOI" = (/obj/structure/table/standard,/obj/item/weapon/cartridge/signal/science,/obj/item/weapon/cartridge/signal/science{pixel_x = -4; pixel_y = 2},/obj/item/weapon/cartridge/signal/science{pixel_x = 4; pixel_y = 6},/obj/item/clothing/glasses/welding/superior,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/camera/network/research{c_tag = "Research - RD's Office"; dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) +"bOJ" = (/obj/structure/table/standard,/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "mining_shuttle"; pixel_x = 25; pixel_y = -8; req_one_access = list(13,48); tag_door = "mining_shuttle_hatch"},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/mining/station) "bOK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/light_switch{pixel_x = -24; pixel_y = -24},/turf/simulated/floor,/area/quartermaster/qm) "bOL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/mining{id_tag = "qmdoor"; name = "Quartermaster"; req_access = list(41)},/turf/simulated/floor,/area/quartermaster/qm) "bOM" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/central_three) @@ -4838,7 +4838,7 @@ "bPb" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/storage/tech) "bPc" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/tech) "bPd" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/tech) -"bPe" = (/obj/structure/table,/obj/item/weapon/module/power_control,/obj/item/weapon/airlock_electronics,/turf/simulated/floor/plating,/area/storage/tech) +"bPe" = (/obj/structure/table/standard,/obj/item/weapon/module/power_control,/obj/item/weapon/airlock_electronics,/turf/simulated/floor/plating,/area/storage/tech) "bPf" = (/turf/simulated/floor/plating,/area/storage/tech) "bPg" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/tech) "bPh" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/plating,/area/storage/tech) @@ -4864,15 +4864,15 @@ "bPB" = (/mob/living/simple_animal/cat/fluff/Runtime,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bPC" = (/obj/machinery/door/airlock/external{name = "Toxins Test Chamber"},/turf/simulated/floor/plating/airless,/area/rnd/test_area) "bPD" = (/obj/machinery/light{dir = 1},/obj/machinery/camera/network/research{c_tag = "Research - Toxins Test Chamber North"; network = list("Research","Toxins Test Area")},/turf/simulated/floor/airless,/area/rnd/test_area) -"bPE" = (/obj/structure/table,/obj/machinery/computer/skills{pixel_y = 4},/obj/item/device/megaphone,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) +"bPE" = (/obj/structure/table/standard,/obj/machinery/computer/skills{pixel_y = 4},/obj/item/device/megaphone,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bPF" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "mining_dock_airlock"; pixel_x = 25; pixel_y = -5; req_one_access = list(13,48); tag_airpump = "mining_dock_pump"; tag_chamber_sensor = "mining_dock_sensor"; tag_exterior_door = "mining_dock_outer"; tag_interior_door = "mining_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "mining_dock_sensor"; pixel_x = 25; pixel_y = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1; icon_state = "map"; tag = "icon-manifold-f (NORTH)"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/miningdock) -"bPG" = (/obj/structure/table,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/computer/med_data/laptop{pixel_x = 3; pixel_y = 4},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/crew_quarters/heads/cmo) +"bPG" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/computer/med_data/laptop{pixel_x = 3; pixel_y = 4},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/crew_quarters/heads/cmo) "bPH" = (/obj/structure/closet,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/quartermaster/qm) "bPI" = (/obj/structure/disposalpipe/segment,/obj/machinery/newscaster{pixel_x = 30},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) -"bPJ" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = 36},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/button/windowtint{id = "isoA_window_tint"; pixel_y = 26},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/patient_a) -"bPK" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) -"bPL" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/britcup,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) -"bPM" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = 36},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/button/windowtint{id = "isoB_window_tint"; pixel_y = 26},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/patient_b) +"bPJ" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = 36},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/button/windowtint{id = "isoA_window_tint"; pixel_y = 26},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/patient_a) +"bPK" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) +"bPL" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/britcup,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) +"bPM" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = 36},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/button/windowtint{id = "isoB_window_tint"; pixel_y = 26},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/patient_b) "bPN" = (/obj/machinery/computer/med_data,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bPO" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port) "bPP" = (/obj/machinery/sparker{id = "Xenobio"; pixel_x = -25},/turf/simulated/floor/engine,/area/rnd/misc_lab) @@ -4915,7 +4915,7 @@ "bQA" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/borgupload{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/aiupload{pixel_x = 2; pixel_y = -2},/turf/simulated/floor,/area/storage/tech) "bQB" = (/obj/machinery/portable_atmospherics/canister,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/rnd/mixing) "bQC" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall/r_wall,/area/storage/tech) -"bQD" = (/obj/structure/table,/obj/item/device/aicard,/obj/item/weapon/aiModule/reset,/turf/simulated/floor/plating,/area/storage/tech) +"bQD" = (/obj/structure/table/standard,/obj/item/device/aicard,/obj/item/weapon/aiModule/reset,/turf/simulated/floor/plating,/area/storage/tech) "bQE" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/pandemic{pixel_x = -3; pixel_y = 3},/obj/item/weapon/circuitboard/rdconsole,/obj/item/weapon/circuitboard/destructive_analyzer,/obj/item/weapon/circuitboard/protolathe,/obj/item/weapon/circuitboard/rdserver{pixel_x = 3; pixel_y = -3},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/tech) "bQF" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/arcade,/obj/item/weapon/circuitboard/message_monitor{pixel_x = 3; pixel_y = -3},/turf/simulated/floor/plating,/area/storage/tech) "bQG" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/security/mining,/obj/item/weapon/circuitboard/autolathe{pixel_x = 3; pixel_y = -3},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/storage/tech) @@ -4923,8 +4923,8 @@ "bQI" = (/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -27},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/aft) "bQJ" = (/turf/simulated/floor,/area/hallway/primary/aft) "bQK" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 2; icon_state = "yellowcorner"},/area/hallway/primary/aft) -"bQL" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor,/area/janitor) -"bQM" = (/obj/structure/table,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/janitor) +"bQL" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor,/area/janitor) +"bQM" = (/obj/structure/table/standard,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/janitor) "bQN" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/simulated/floor,/area/janitor) "bQO" = (/obj/structure/janitorialcart,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/janitor) "bQP" = (/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/janitor) @@ -4940,7 +4940,7 @@ "bQZ" = (/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/crew_quarters/heads/cmo) "bRa" = (/obj/structure/table/rack,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/glasses/hud/health,/obj/item/device/flashlight/pen,/obj/item/weapon/storage/belt/medical,/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -38},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/crew_quarters/heads/cmo) "bRb" = (/obj/item/weapon/stool,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -30},/obj/effect/landmark/start{name = "Chemist"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) -"bRc" = (/obj/structure/table,/obj/item/weapon/folder/white{pixel_y = 10},/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/item/weapon/stamp/cmo,/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/crew_quarters/heads/cmo) +"bRc" = (/obj/structure/table/standard,/obj/item/weapon/folder/white{pixel_y = 10},/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/item/weapon/stamp/cmo,/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/crew_quarters/heads/cmo) "bRd" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/obj/machinery/atmospherics/portables_connector,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/rnd/mixing) "bRe" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/obj/machinery/meter,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/rnd/mixing) "bRf" = (/obj/machinery/computer/crew,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) @@ -4953,7 +4953,7 @@ "bRm" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/structure/bed/chair/office/dark,/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/patient_a) "bRn" = (/turf/simulated/wall,/area/medical/patient_b) "bRo" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/engine,/area/rnd/misc_lab) -"bRp" = (/obj/structure/table,/obj/item/device/assembly/igniter,/turf/simulated/floor/engine,/area/rnd/misc_lab) +"bRp" = (/obj/structure/table/standard,/obj/item/device/assembly/igniter,/turf/simulated/floor/engine,/area/rnd/misc_lab) "bRq" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor{icon_state = "floorgrime"},/area/rnd/storage) "bRr" = (/obj/machinery/portable_atmospherics/canister/phoron,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/rnd/storage) "bRs" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor{dir = 5; icon_state = "whitehall"},/area/rnd/research) @@ -5001,18 +5001,18 @@ "bSi" = (/obj/structure/disposalpipe/segment,/obj/machinery/light_switch{pixel_x = 22; pixel_y = -9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/medbay{c_tag = "Medbay Port Corridor"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/medbay) "bSj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/engineering) "bSk" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/engineering) -"bSl" = (/obj/structure/table,/obj/item/device/t_scanner,/turf/simulated/floor/plating,/area/maintenance/engineering) +"bSl" = (/obj/structure/table/standard,/obj/item/device/t_scanner,/turf/simulated/floor/plating,/area/maintenance/engineering) "bSm" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bSn" = (/obj/machinery/light_switch{pixel_x = -22; pixel_y = -9},/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Medical Officer's Desk"; departmentType = 5; name = "Chief Medical Officer RC"; pixel_x = -34; pixel_y = 2},/obj/machinery/camera/network/medbay{c_tag = "Medbay - CMO's Office"; dir = 4},/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/crew_quarters/heads/cmo) "bSo" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bSp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "staffroom"; name = "Staff Room Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay2) "bSq" = (/obj/machinery/light,/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor{dir = 10; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/crew_quarters/heads/cmo) -"bSr" = (/obj/structure/table,/obj/item/weapon/paper{desc = "A few notes scratched out by the last CMO before they departed the station."; info = "\[i]\[center]To the incoming CMO of Exodus:\[/i]\[/center]\[br]\[br]I wish you and your crew well. Do take note:\[br]\[br]\[br]The Medical Emergency Red Phone system has proven itself well. Take care to keep the phones in their designated places as they have been optimised for broadcast. The two handheld green radios (I have left one in this office, and one near the Emergency Entrance) are free to be used. The system has proven effective at alerting Medbay of important details, especially during power outages.\[br]\[br]I think I may have left the toilet cubicle doors shut. It might be a good idea to open them so the staff and patients know they are not engaged.\[br]\[br]The new syringe gun has been stored in secondary storage. I tend to prefer it stored in my office, but 'guidelines' are 'guidelines'.\[br]\[br]Also in secondary storage is the grenade equipment crate. I've just realised I've left it open - you may wish to shut it.\[br]\[br]There were a few problems with their installation, but the Medbay Quarantine shutters should now be working again - they lock down the Emergency and Main entrances to prevent travel in and out. Pray you shan't have to use them.\[br]\[br]The new version of the Medical Diagnostics Manual arrived. I distributed them to the shelf in the staff break room, and one on the table in the corner of this room.\[br]\[br]The exam/triage room has the walking canes in it. I'm not sure why we'd need them - but there you have it.\[br]\[br]Emergency Cryo bags are beside the emergency entrance, along with a kit.\[br]\[br]Spare paper cups for the reception are on the left side of the reception desk.\[br]\[br]I've fed Runtime. She should be fine.\[br]\[br]\[br]\[center]That should be all. Good luck!\[/center]"; name = "Outgoing CMO's Notes"},/obj/item/device/radio{frequency = 1487; name = "Medbay Emergency Radio Link"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) +"bSr" = (/obj/structure/table/standard,/obj/item/weapon/paper{desc = "A few notes scratched out by the last CMO before they departed the station."; info = "\[i]\[center]To the incoming CMO of Exodus:\[/i]\[/center]\[br]\[br]I wish you and your crew well. Do take note:\[br]\[br]\[br]The Medical Emergency Red Phone system has proven itself well. Take care to keep the phones in their designated places as they have been optimised for broadcast. The two handheld green radios (I have left one in this office, and one near the Emergency Entrance) are free to be used. The system has proven effective at alerting Medbay of important details, especially during power outages.\[br]\[br]I think I may have left the toilet cubicle doors shut. It might be a good idea to open them so the staff and patients know they are not engaged.\[br]\[br]The new syringe gun has been stored in secondary storage. I tend to prefer it stored in my office, but 'guidelines' are 'guidelines'.\[br]\[br]Also in secondary storage is the grenade equipment crate. I've just realised I've left it open - you may wish to shut it.\[br]\[br]There were a few problems with their installation, but the Medbay Quarantine shutters should now be working again - they lock down the Emergency and Main entrances to prevent travel in and out. Pray you shan't have to use them.\[br]\[br]The new version of the Medical Diagnostics Manual arrived. I distributed them to the shelf in the staff break room, and one on the table in the corner of this room.\[br]\[br]The exam/triage room has the walking canes in it. I'm not sure why we'd need them - but there you have it.\[br]\[br]Emergency Cryo bags are beside the emergency entrance, along with a kit.\[br]\[br]Spare paper cups for the reception are on the left side of the reception desk.\[br]\[br]I've fed Runtime. She should be fine.\[br]\[br]\[br]\[center]That should be all. Good luck!\[/center]"; name = "Outgoing CMO's Notes"},/obj/item/device/radio{frequency = 1487; name = "Medbay Emergency Radio Link"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bSs" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bSt" = (/obj/machinery/computer/crew,/obj/machinery/light,/turf/simulated/floor{dir = 6; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/crew_quarters/heads/cmo) "bSu" = (/obj/machinery/light_switch{pixel_x = -22; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay2) "bSv" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) -"bSw" = (/obj/structure/table,/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/device/multitool,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/engine,/area/rnd/misc_lab) +"bSw" = (/obj/structure/table/standard,/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/device/multitool,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/engine,/area/rnd/misc_lab) "bSx" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bSy" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; layer = 4; name = "Test Chamber Telescreen"; network = list("Toxins Test Area"); pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "warningcorner"; dir = 1},/area/rnd/mixing) "bSz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/aft) @@ -5060,7 +5060,7 @@ "bTp" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/robotics{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/mecha_control{pixel_x = 1; pixel_y = -1},/turf/simulated/floor,/area/storage/tech) "bTq" = (/turf/simulated/floor,/area/storage/tech) "bTr" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/storage/tech) -"bTs" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/item/weapon/wirecutters,/turf/simulated/floor/plating,/area/storage/tech) +"bTs" = (/obj/structure/table/standard,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/item/weapon/wirecutters,/turf/simulated/floor/plating,/area/storage/tech) "bTt" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/cloning{pixel_x = 0},/obj/item/weapon/circuitboard/clonescanner,/obj/item/weapon/circuitboard/clonepod,/obj/item/weapon/circuitboard/scan_consolenew,/obj/item/weapon/circuitboard/med_data{pixel_x = 3; pixel_y = -3},/turf/simulated/floor/plating,/area/storage/tech) "bTu" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/powermonitor{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/stationalert_engineering{pixel_x = 1; pixel_y = -1},/obj/item/weapon/circuitboard/security/engineering,/obj/item/weapon/circuitboard/atmos_alert{pixel_x = 3; pixel_y = -3},/turf/simulated/floor/plating,/area/storage/tech) "bTv" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/secure_data{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/security{pixel_x = 1; pixel_y = -1},/obj/item/weapon/circuitboard/skills{pixel_x = 4; pixel_y = -3},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/storage/tech) @@ -5087,10 +5087,10 @@ "bTQ" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "bot"},/area/rnd/research) "bTR" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay4) "bTS" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay4) -"bTT" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/medical/patient_a) +"bTT" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/medical/patient_a) "bTU" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 3; icon_state = "whitered"},/area/medical/patient_a) "bTV" = (/obj/machinery/iv_drip,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 6; icon_state = "whitered"},/area/medical/patient_a) -"bTW" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/medical/patient_b) +"bTW" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/medical/patient_b) "bTX" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 3; icon_state = "whitered"},/area/medical/patient_b) "bTY" = (/obj/machinery/iv_drip,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 6; icon_state = "whitered"},/area/medical/patient_b) "bTZ" = (/obj/machinery/shieldwallgen{anchored = 1; req_access = list(47)},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{icon_state = "white"},/area/rnd/misc_lab) @@ -5120,7 +5120,7 @@ "bUx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/maintenance/cargo) "bUy" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/storage/tech) "bUz" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/tech) -"bUA" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/storage/tech) +"bUA" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/storage/tech) "bUB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/plating,/area/storage/tech) "bUC" = (/obj/structure/grille,/obj/structure/window/reinforced/polarized{id = "isoB_window_tint"},/obj/structure/window/reinforced/polarized{dir = 4; id = "isoB_window_tint"},/obj/structure/window/reinforced/polarized{dir = 1; id = "isoB_window_tint"},/obj/structure/window/reinforced/polarized{dir = 8; id = "isoB_window_tint"},/turf/simulated/floor/plating,/area/medical/patient_b) "bUD" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "yellowcorner"},/area/hallway/primary/aft) @@ -5150,7 +5150,7 @@ "bVb" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay4) "bVc" = (/obj/structure/table/woodentable,/obj/item/weapon/dice,/turf/simulated/floor/carpet,/area/engineering/break_room) "bVd" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/patient_wing) -"bVe" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/patient_wing) +"bVe" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/patient_wing) "bVf" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet,/area/engineering/break_room) "bVg" = (/obj/structure/closet/secure_closet/personal/patient,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/patient_wing) "bVh" = (/obj/machinery/iv_drip,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/patient_wing) @@ -5193,7 +5193,7 @@ "bVS" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/cargo) "bVT" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/cargo) "bVU" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/cargo) -"bVV" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/device/multitool,/obj/machinery/status_display{layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plating,/area/storage/tech) +"bVV" = (/obj/structure/table/standard,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/device/multitool,/obj/machinery/status_display{layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plating,/area/storage/tech) "bVW" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/storage/tech) "bVX" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/yellow,/obj/item/device/t_scanner,/obj/item/clothing/glasses/meson,/obj/item/device/multitool,/turf/simulated/floor/plating,/area/storage/tech) "bVY" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/device/analyzer/plant_analyzer,/obj/item/device/healthanalyzer,/obj/item/device/analyzer,/obj/item/device/analyzer,/turf/simulated/floor/plating,/area/storage/tech) @@ -5232,7 +5232,7 @@ "bWF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whiteredcorner"},/area/medical/patient_wing) "bWG" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor{dir = 1; icon_state = "whitered_a"; tag = "icon-whitered_a (WEST)"},/area/medical/patient_wing) "bWH" = (/obj/structure/bed/chair/comfy/beige,/obj/effect/landmark/start{name = "Station Engineer"},/turf/simulated/floor/carpet,/area/engineering/break_room) -"bWI" = (/obj/machinery/light{dir = 1},/obj/machinery/alarm{pixel_y = 25},/obj/structure/table,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) +"bWI" = (/obj/machinery/light{dir = 1},/obj/machinery/alarm{pixel_y = 25},/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) "bWJ" = (/turf/simulated/floor/carpet,/area/engineering/break_room) "bWK" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor{dir = 1; icon_state = "whitered_b"; tag = "icon-whitered_b (WEST)"},/area/medical/patient_wing) "bWL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "whiteredcorner"},/area/medical/patient_wing) @@ -5263,7 +5263,7 @@ "bXk" = (/turf/simulated/floor/airless{dir = 5; icon_state = "warning"},/area/rnd/test_area) "bXl" = (/turf/simulated/floor/airless{icon_state = "warningcorner"; dir = 4},/area/rnd/test_area) "bXm" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape_pod5/station) -"bXn" = (/obj/structure/table,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/ointment{pixel_y = 10},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/crew_quarters/sleep/engi_wash) +"bXn" = (/obj/structure/table/standard,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/ointment{pixel_y = 10},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/crew_quarters/sleep/engi_wash) "bXo" = (/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/crew_quarters/sleep/engi_wash) "bXp" = (/obj/machinery/atmospherics/pipe/manifold/visible,/obj/machinery/meter,/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) "bXq" = (/obj/machinery/atmospherics/unary/heat_exchanger{dir = 4},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/rnd/mixing) @@ -5362,7 +5362,7 @@ "bZf" = (/turf/simulated/wall/r_wall,/area/maintenance/atmos_control) "bZg" = (/turf/simulated/wall,/area/maintenance/atmos_control) "bZh" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/engineering) -"bZi" = (/obj/structure/table,/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/medbay{c_tag = "Medbay Lounge"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay4) +"bZi" = (/obj/structure/table/standard,/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/medbay{c_tag = "Medbay Lounge"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay4) "bZj" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor,/area/medical/sleeper) "bZk" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor,/area/medical/sleeper) "bZl" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/medical/sleeper) @@ -5443,8 +5443,8 @@ "caI" = (/turf/simulated/wall,/area/medical/psych) "caJ" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; glass = 1; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access = list(8)},/turf/simulated/floor/engine,/area/rnd/mixing) "caK" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) -"caL" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = 22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) -"caM" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whitered"},/area/medical/patient_c) +"caL" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = 22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) +"caM" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whitered"},/area/medical/patient_c) "caN" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/medical/patient_c) "caO" = (/obj/machinery/iv_drip,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/patient_c) "caP" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/patient_wing) @@ -5581,7 +5581,7 @@ "cdq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/ward) "cdr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/ward) "cds" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/medical/ward) -"cdt" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/newscaster{pixel_x = 30},/obj/structure/table,/obj/machinery/computer/med_data/laptop{pixel_x = 3; pixel_y = 4},/turf/simulated/floor{dir = 4; icon_state = "whitered"},/area/medical/ward) +"cdt" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/newscaster{pixel_x = 30},/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop{pixel_x = 3; pixel_y = 4},/turf/simulated/floor{dir = 4; icon_state = "whitered"},/area/medical/ward) "cdu" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "bcarpet01"},/area/medical/psych) "cdv" = (/turf/simulated/floor{icon_state = "bcarpet02"},/area/medical/psych) "cdw" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "bcarpet03"},/area/medical/psych) @@ -5628,8 +5628,8 @@ "cel" = (/obj/structure/closet/secure_closet/engineering_chief,/obj/item/weapon/tank/emergency_oxygen/engi,/turf/simulated/floor,/area/crew_quarters/heads/chief) "cem" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/carpet,/area/engineering/break_room) "cen" = (/obj/machinery/iv_drip,/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) -"ceo" = (/obj/structure/table,/obj/item/weapon/storage/box/cdeathalarm_kit,/obj/item/bodybag/cryobag{pixel_x = -3},/obj/item/bodybag/cryobag{pixel_x = -3},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) -"cep" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -36},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/button/windowtint{id = "isoC_window_tint"; pixel_y = -26},/turf/simulated/floor{dir = 6; icon_state = "whitered"},/area/medical/patient_c) +"ceo" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/cdeathalarm_kit,/obj/item/bodybag/cryobag{pixel_x = -3},/obj/item/bodybag/cryobag{pixel_x = -3},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) +"cep" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -36},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/button/windowtint{id = "isoC_window_tint"; pixel_y = -26},/turf/simulated/floor{dir = 6; icon_state = "whitered"},/area/medical/patient_c) "ceq" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/purple,/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/rnd/xenobiology) "cer" = (/obj/machinery/keycard_auth{pixel_x = -24; pixel_y = 0},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for engine core."; id = "EngineVent"; name = "Engine Ventillatory Control"; pixel_x = -24; pixel_y = 10; req_access = list(10)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/button/remote/airlock{desc = "A remote control-switch for the engine core airlock hatch bolts."; id = "engine_access_hatch"; name = "Engine Hatch Bolt Control"; pixel_x = -24; pixel_y = -10; req_access = list(10); specialfunctions = 4},/turf/simulated/floor,/area/crew_quarters/heads/chief) "ces" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/atmos_control) @@ -5665,7 +5665,7 @@ "ceW" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) "ceX" = (/obj/structure/noticeboard{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) "ceY" = (/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/sleep/engi_wash) -"ceZ" = (/obj/structure/table,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/hand_labeler,/turf/simulated/floor{tag = "icon-whitegreen (NORTHWEST)"; icon_state = "whitegreen"; dir = 9},/area/rnd/xenobiology/xenoflora_storage) +"ceZ" = (/obj/structure/table/standard,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/hand_labeler,/turf/simulated/floor{tag = "icon-whitegreen (NORTHWEST)"; icon_state = "whitegreen"; dir = 9},/area/rnd/xenobiology/xenoflora_storage) "cfa" = (/obj/structure/bed/chair,/turf/simulated/floor,/area/medical/surgeryobs) "cfb" = (/obj/structure/closet/secure_closet/hydroponics{req_access = list(47)},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage) "cfc" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/smartfridge/drying_rack,/turf/simulated/floor{tag = "icon-whitegreen_v (NORTHEAST)"; icon_state = "whitegreen_v"; dir = 5},/area/rnd/xenobiology/xenoflora_storage) @@ -5677,10 +5677,10 @@ "cfi" = (/obj/item/weapon/shard,/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/research_port) "cfj" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(12,47)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/rnd/xenobiology) "cfk" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(12,47)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/turf/simulated/floor/plating,/area/rnd/xenobiology) -"cfl" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/table,/obj/item/weapon/storage/box/botanydisk,/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) +"cfl" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/table/standard,/obj/item/weapon/storage/box/botanydisk,/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "cfm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/yellow{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cfn" = (/obj/machinery/botany/extractor,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora) -"cfo" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora) +"cfo" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora) "cfp" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/smartfridge,/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "cfq" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplatecorner"},/area/maintenance/research_starboard) "cfr" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/research_starboard) @@ -5690,9 +5690,9 @@ "cfv" = (/obj/machinery/light/small,/turf/simulated/floor/plating/airless,/area/rnd/test_area) "cfw" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/plating,/area/construction) "cfx" = (/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plating,/area/construction) -"cfy" = (/obj/structure/table,/obj/item/weapon/tank/emergency_oxygen/engi,/obj/random/tech_supply,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/construction) -"cfz" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/construction) -"cfA" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/construction) +"cfy" = (/obj/structure/table/standard,/obj/item/weapon/tank/emergency_oxygen/engi,/obj/random/tech_supply,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/construction) +"cfz" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/construction) +"cfA" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/construction) "cfB" = (/obj/item/clothing/mask/smokable/cigarette,/turf/simulated/floor/plating/airless,/area/rnd/test_area) "cfC" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/atmos_control) "cfD" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/atmos_control) @@ -5712,7 +5712,7 @@ "cfR" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cfS" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/wood,/area/crew_quarters/sleep/bedrooms) "cfT" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow,/turf/simulated/floor/plating/airless,/area/solar/starboard) -"cfU" = (/obj/structure/table,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) +"cfU" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) "cfV" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/medical/surgeryobs) "cfW" = (/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/medical/surgeryobs) "cfX" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "blue"; dir = 6},/area/medical/surgeryobs) @@ -5727,7 +5727,7 @@ "cgg" = (/obj/machinery/vending/snack,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) "cgh" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/medical/patient_wing) "cgi" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/landmark/start{name = "Psychiatrist"},/turf/simulated/floor{icon_state = "bcarpet06"},/area/medical/psych) -"cgj" = (/obj/structure/table,/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/medical/patient_wing) +"cgj" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/medical/patient_wing) "cgk" = (/obj/item/weapon/storage/toolbox/emergency,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "cgl" = (/obj/structure/table/rack,/obj/item/clothing/suit/radiation,/obj/item/clothing/head/radiation,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "cgm" = (/obj/item/device/radio/intercom{layer = 4; name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/engineering{c_tag = "Engineering - CE's Office"; dir = 1},/turf/simulated/floor,/area/crew_quarters/heads/chief) @@ -5765,7 +5765,7 @@ "cgS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/construction) "cgT" = (/turf/simulated/floor/plating,/area/construction) "cgU" = (/turf/simulated/floor,/area/construction) -"cgV" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/table,/obj/item/clothing/gloves/black,/obj/item/device/multitool{pixel_x = 5},/obj/random/tech_supply,/turf/simulated/floor,/area/construction) +"cgV" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/table/standard,/obj/item/clothing/gloves/black,/obj/item/device/multitool{pixel_x = 5},/obj/random/tech_supply,/turf/simulated/floor,/area/construction) "cgW" = (/obj/machinery/door/airlock/glass_medical{name = "Patient Ward"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay4) "cgX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora) "cgY" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxin_test_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/research_starboard) @@ -5782,19 +5782,19 @@ "chj" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/engineering/foyer) "chk" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor{icon_state = "bcarpet08"},/area/medical/psych) "chl" = (/obj/structure/bed/psych,/obj/item/weapon/bedsheet/brown,/turf/simulated/floor{icon_state = "bcarpet09"},/area/medical/psych) -"chm" = (/obj/structure/table,/obj/item/weapon/gun/launcher/syringe,/obj/item/weapon/storage/box/syringegun,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) +"chm" = (/obj/structure/table/standard,/obj/item/weapon/gun/launcher/syringe,/obj/item/weapon/storage/box/syringegun,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "chn" = (/obj/machinery/light,/obj/machinery/camera/network/research{c_tag = "Research - Toxins Test Chamber South"; dir = 1; network = list("Research","Toxins Test Area")},/turf/simulated/floor/airless,/area/rnd/test_area) "cho" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/purple,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "chp" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized,/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) "chq" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized,/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) -"chr" = (/obj/structure/table,/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/item/weapon/storage/box/masks,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/surgeryprep) +"chr" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/item/weapon/storage/box/masks,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/surgeryprep) "chs" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 1; icon_state = "bluecorner"},/area/medical/surgeryprep) "cht" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 4; icon_state = "blue"},/area/medical/surgeryprep) "chu" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/window/reinforced/polarized{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) -"chv" = (/obj/structure/table,/obj/item/weapon/tape_roll,/obj/item/device/analyzer/plant_analyzer,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) +"chv" = (/obj/structure/table/standard,/obj/item/weapon/tape_roll,/obj/item/device/analyzer/plant_analyzer,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) "chw" = (/obj/structure/sign/biohazard,/turf/simulated/wall,/area/medical/virologyaccess) "chx" = (/obj/structure/disposaloutlet,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/plating/airless,/area/medical/virology) -"chy" = (/obj/structure/bedsheetbin,/obj/structure/table,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) +"chy" = (/obj/structure/bedsheetbin,/obj/structure/table/standard,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "chz" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) "chA" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/research_port) "chB" = (/turf/simulated/floor/plating,/area/maintenance/research_port) @@ -5831,7 +5831,7 @@ "cig" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/turf/simulated/floor,/area/engineering/foyer) "cih" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/engineering/foyer) "cii" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/construction) -"cij" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor,/area/construction) +"cij" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor,/area/construction) "cik" = (/obj/machinery/firealarm{dir = 4; layer = 3.3; pixel_x = 26},/turf/simulated/floor{dir = 2; icon_state = "yellowcorner"},/area/engineering/foyer) "cil" = (/obj/structure/closet/secure_closet/engineering_personal,/obj/item/weapon/tank/emergency_oxygen/engi,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/engineering/locker_room) "cim" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/engineering/locker_room) @@ -5890,11 +5890,11 @@ "cjn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/light,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora) "cjo" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) "cjp" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/engineering/foyer) -"cjq" = (/obj/machinery/light,/obj/structure/table,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) -"cjr" = (/obj/structure/table,/obj/item/clothing/gloves/latex,/obj/item/weapon/hand_labeler,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) -"cjs" = (/obj/structure/table,/obj/item/weapon/storage/box/syringes,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) +"cjq" = (/obj/machinery/light,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) +"cjr" = (/obj/structure/table/standard,/obj/item/clothing/gloves/latex,/obj/item/weapon/hand_labeler,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) +"cjs" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/syringes,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) "cjt" = (/obj/machinery/button/remote/airlock{desc = "A remote control-switch for Surgery."; id = "Surgery"; name = "Surgery"; pixel_x = -24; pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/surgeryprep) -"cju" = (/obj/structure/table,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) +"cju" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) "cjv" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/camera/network/medbay{c_tag = "Medbay Recovery Ward"; dir = 1},/turf/simulated/floor{dir = 6; icon_state = "whitered"},/area/medical/ward) "cjw" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cjx" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/light/small{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) @@ -5926,19 +5926,19 @@ "cjX" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "cjY" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{tag = "icon-whitegreen_v (NORTHEAST)"; icon_state = "whitegreen_v"; dir = 5},/area/rnd/xenobiology/xenoflora) "cjZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) -"cka" = (/obj/structure/table,/obj/item/weapon/FixOVein,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/item/weapon/surgicaldrill,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) +"cka" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/item/weapon/surgicaldrill,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "ckb" = (/obj/machinery/computer/operating,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "ckc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) -"ckd" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"},/turf/simulated/floor{dir = 4; icon_state = "whitered"},/area/medical/surgery) +"ckd" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"},/turf/simulated/floor{dir = 4; icon_state = "whitered"},/area/medical/surgery) "cke" = (/turf/simulated/floor{tag = "icon-whitegreen (NORTHWEST)"; icon_state = "whitegreen"; dir = 9},/area/rnd/xenobiology/xenoflora) -"ckf" = (/obj/structure/table,/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 7; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Surgery Emergency Phone"},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/surgeryprep) +"ckf" = (/obj/structure/table/standard,/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 7; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Surgery Emergency Phone"},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/surgeryprep) "ckg" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/medical/surgeryprep) "ckh" = (/obj/structure/disposalpipe/segment,/obj/item/roller,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) "cki" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) -"ckj" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/surgery2) +"ckj" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/surgery2) "ckk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "ckl" = (/obj/machinery/computer/operating,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) -"ckm" = (/obj/structure/table,/obj/item/weapon/FixOVein,/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 30},/obj/item/weapon/surgicaldrill,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) +"ckm" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein,/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 30},/obj/item/weapon/surgicaldrill,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "ckn" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/closet/crate/hydroponics/prespawned,/obj/machinery/camera/network/research{c_tag = "Xenoflora Storage"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage) "cko" = (/obj/item/weapon/stool,/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "ckp" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance,/obj/structure/disposalpipe/segment,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/medical/virologyaccess) @@ -5995,14 +5995,14 @@ "clo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio6"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/disposalpipe/segment,/obj/structure/cable/green,/turf/simulated/floor/plating,/area/rnd/xenobiology) "clp" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/red,/turf/simulated/floor,/area/engineering/foyer) "clq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio5"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/rnd/xenobiology) -"clr" = (/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/storage/art) +"clr" = (/obj/structure/table/standard,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/storage/art) "cls" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio5"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/disposalpipe/segment,/obj/structure/cable/green,/turf/simulated/floor/plating,/area/rnd/xenobiology) "clt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/research_port) "clu" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering EVA Storage"; req_one_access = list(11,24)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/red{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/engineering/engine_eva) "clv" = (/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "clw" = (/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/engineering) "clx" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"},/area/maintenance/engineering) -"cly" = (/obj/structure/table,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) +"cly" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "clz" = (/obj/machinery/optable,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "clA" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "clB" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whitered"},/area/medical/surgery) @@ -6014,7 +6014,7 @@ "clH" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/surgery2) "clI" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "clJ" = (/obj/machinery/optable,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) -"clK" = (/obj/structure/table,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/scalpel,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) +"clK" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/scalpel,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "clL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/medbay) "clM" = (/turf/simulated/floor/plating,/area/maintenance/medbay) "clN" = (/turf/simulated/wall/r_wall,/area/medical/virologyaccess) @@ -6057,7 +6057,7 @@ "cmy" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact-f (EAST)"},/obj/machinery/light,/turf/simulated/floor,/area/engineering/foyer) "cmz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/construction) "cmA" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/construction) -"cmB" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) +"cmB" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) "cmC" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact-f (EAST)"},/turf/simulated/floor,/area/engineering/foyer) "cmD" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact-f (EAST)"},/obj/machinery/requests_console{announcementConsole = 0; department = "Engineering"; departmentType = 4; name = "Engineering RC"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor,/area/engineering/foyer) "cmE" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact-f (EAST)"},/obj/machinery/computer/guestpass{pixel_y = -28},/turf/simulated/floor,/area/engineering/foyer) @@ -6070,7 +6070,7 @@ "cmL" = (/obj/structure/closet/secure_closet/atmos_personal,/obj/item/weapon/tank/emergency_oxygen/engi,/turf/simulated/floor,/area/engineering/locker_room) "cmM" = (/obj/structure/closet/secure_closet/atmos_personal,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/item/weapon/tank/emergency_oxygen/engi,/turf/simulated/floor,/area/engineering/locker_room) "cmN" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/engineering/locker_room) -"cmO" = (/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/engineering/locker_room) +"cmO" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/engineering/locker_room) "cmP" = (/obj/machinery/light/small{dir = 1},/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Tank - Air"},/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/engineering/atmos) "cmQ" = (/obj/machinery/light/small{dir = 1},/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Tank - Oxygen"},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/engineering/atmos) "cmR" = (/obj/machinery/light/small{dir = 1},/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Tank - Nitrogen"},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/engineering/atmos) @@ -6083,7 +6083,7 @@ "cmY" = (/obj/machinery/door/blast/regular{desc = "By gods, release the hounds!"; id = "xenobioout6"; name = "Containment Release"},/turf/simulated/floor/engine,/area/rnd/xenobiology) "cmZ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/starboard) "cna" = (/obj/structure/cable/yellow,/turf/simulated/floor/plating/airless,/area/solar/starboard) -"cnb" = (/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/retractor,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) +"cnb" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/retractor,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "cnc" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "cnd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "cne" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering EVA Storage"; req_one_access = list(11,24)},/turf/simulated/floor,/area/engineering/engine_eva) @@ -6092,7 +6092,7 @@ "cnh" = (/obj/machinery/button/remote/blast_door{id = "surgeryobs2"; name = "Privacy Shutters"; pixel_y = 25},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/surgery2) "cni" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "cnj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) -"cnk" = (/obj/structure/table,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/retractor,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) +"cnk" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/retractor,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "cnl" = (/obj/structure/sign/biohazard,/turf/simulated/wall/r_wall,/area/medical/virologyaccess) "cnm" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/turf/simulated/wall/r_wall,/area/engineering/atmos) "cnn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/research_port) @@ -6127,15 +6127,15 @@ "cnQ" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Locker Room"; req_one_access = list(11,24)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/engineering/locker_room) "cnR" = (/turf/simulated/wall/r_wall,/area/engineering/locker_room) "cnS" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating{dir = 4; icon_state = "warnplatecorner"},/area/maintenance/engineering) -"cnT" = (/obj/structure/table,/obj/item/weapon/hemostat,/obj/machinery/light,/obj/item/weapon/cautery,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) -"cnU" = (/obj/structure/table,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) -"cnV" = (/obj/structure/table,/obj/machinery/vending/wallmed1{pixel_y = -32},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/random/medical,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) +"cnT" = (/obj/structure/table/standard,/obj/item/weapon/hemostat,/obj/machinery/light,/obj/item/weapon/cautery,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) +"cnU" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) +"cnV" = (/obj/structure/table/standard,/obj/machinery/vending/wallmed1{pixel_y = -32},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/random/medical,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "cnW" = (/obj/machinery/computer/med_data,/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) -"cnX" = (/obj/structure/table,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) +"cnX" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) "cnY" = (/obj/machinery/computer/med_data,/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) -"cnZ" = (/obj/structure/table,/obj/machinery/vending/wallmed1{pixel_y = -32},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/random/medical,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) -"coa" = (/obj/structure/table,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) -"cob" = (/obj/structure/table,/obj/item/weapon/hemostat,/obj/machinery/light,/obj/item/weapon/cautery,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) +"cnZ" = (/obj/structure/table/standard,/obj/machinery/vending/wallmed1{pixel_y = -32},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/random/medical,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) +"coa" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) +"cob" = (/obj/structure/table/standard,/obj/item/weapon/hemostat,/obj/machinery/light,/obj/item/weapon/cautery,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "coc" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "bluecorner"},/area/medical/virologyaccess) "cod" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/virologyaccess) "coe" = (/obj/machinery/light{dir = 1},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/medical/virologyaccess) @@ -6212,7 +6212,7 @@ "cpx" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1443; input_tag = "air_in"; name = "Mixed Air Supply Control"; output_tag = "air_out"; pressure_setting = 2000; sensors = list("air_sensor" = "Tank")},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "arrival"},/area/engineering/atmos) "cpy" = (/obj/machinery/door/window/eastright{name = "Engineering Reception Desk"; req_one_access = list(10,24)},/obj/machinery/light,/turf/simulated/floor,/area/engineering/foyer) "cpz" = (/obj/machinery/atmospherics/valve/digital/open{name = "Oxygen Outlet Valve"},/turf/simulated/floor{dir = 5; icon_state = "blue"},/area/engineering/atmos) -"cpA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/engineering{c_tag = "Engineering Locker Room"; dir = 1},/turf/simulated/floor,/area/engineering/locker_room) +"cpA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/engineering{c_tag = "Engineering Locker Room"; dir = 1},/turf/simulated/floor,/area/engineering/locker_room) "cpB" = (/obj/machinery/door/airlock/maintenance{req_one_access = list(10,24)},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/substation/engineering) "cpC" = (/obj/machinery/button/holosign{pixel_x = 24; pixel_y = 2},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/camera/network/medbay{c_tag = "Medbay Operating Theatre 1"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "whiteredcorner"},/area/medical/surgery) "cpD" = (/obj/machinery/atmospherics/valve/digital/open{name = "Nitrogen Outlet Valve"},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/engineering/atmos) @@ -6224,11 +6224,11 @@ "cpJ" = (/obj/structure/reagent_dispensers/fueltank,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = 25},/turf/simulated/floor,/area/engineering/atmos) "cpK" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor{icon_state = "warningcorner"; dir = 1},/area/hallway/secondary/entry/aft) "cpL" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/engineering/atmos) -"cpM" = (/obj/structure/table,/obj/item/device/t_scanner,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/radio/headset/headset_eng,/obj/item/weapon/cartridge/atmos,/obj/item/weapon/cartridge/atmos,/obj/item/device/pipe_painter,/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 0; pixel_y = 28},/turf/simulated/floor,/area/engineering/atmos) +"cpM" = (/obj/structure/table/standard,/obj/item/device/t_scanner,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/radio/headset/headset_eng,/obj/item/weapon/cartridge/atmos,/obj/item/weapon/cartridge/atmos,/obj/item/device/pipe_painter,/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 0; pixel_y = 28},/turf/simulated/floor,/area/engineering/atmos) "cpN" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "solar_xeno_pump"; tag_exterior_door = "solar_xeno_outer"; frequency = 1379; id_tag = "solar_xeno_airlock"; tag_interior_door = "solar_xeno_inner"; pixel_x = 25; req_access = list(13); tag_chamber_sensor = "solar_xeno_sensor"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "solar_xeno_sensor"; pixel_x = 25; pixel_y = 12},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "solar_xeno_pump"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/warning_stripes,/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cpO" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/space,/area/space) "cpP" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access = list(12,24)},/obj/machinery/atmospherics/pipe/simple/visible/supply,/turf/simulated/floor,/area/maintenance/atmos_control) -"cpQ" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/item/clothing/glasses/welding,/obj/structure/closet/fireaxecabinet{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/engineering/atmos) +"cpQ" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/item/clothing/glasses/welding,/obj/structure/closet/fireaxecabinet{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/engineering/atmos) "cpR" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access = list(12,24)},/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/turf/simulated/floor,/area/maintenance/atmos_control) "cpS" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/hallway/secondary/entry/port) "cpT" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor,/area/engineering/atmos) @@ -6250,7 +6250,7 @@ "cqj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery) "cqk" = (/obj/machinery/iv_drip,/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery) "cql" = (/obj/structure/closet/secure_closet/medical3,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/surgeryprep) -"cqm" = (/obj/structure/table,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/BMinus,/obj/item/weapon/reagent_containers/blood/BPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) +"cqm" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/BMinus,/obj/item/weapon/reagent_containers/blood/BPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) "cqn" = (/obj/machinery/iv_drip,/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery2) "cqo" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery2) "cqp" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery2) @@ -6345,7 +6345,7 @@ "csa" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/visible/red,/turf/simulated/floor,/area/engineering/atmos) "csb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/turf/simulated/floor/plating,/area/maintenance/engineering) "csc" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Operating Theatre 1 Storage"; req_access = list(45)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) -"csd" = (/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/structure/table,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera/network/medbay{c_tag = "Medbay Surgery Prep"; dir = 8},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) +"csd" = (/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/structure/table/standard,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera/network/medbay{c_tag = "Medbay Surgery Prep"; dir = 8},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/surgeryprep) "cse" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Operating Theatre 2 Storage"; req_access = list(45)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "csf" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access = list(55)},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/xenobiology) "csg" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio3"; name = "Containment Blast Doors"; opacity = 0},/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access = list(55)},/turf/simulated/floor/engine,/area/rnd/xenobiology) @@ -6393,9 +6393,9 @@ "csW" = (/obj/machinery/atmospherics/binary/pump{name = "O2 to Connector"},/turf/simulated/floor,/area/engineering/atmos) "csX" = (/obj/machinery/atmospherics/binary/pump{name = "N2 to Connector"},/turf/simulated/floor,/area/engineering/atmos) "csY" = (/obj/structure/dispenser,/turf/simulated/floor,/area/engineering/atmos) -"csZ" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/structure/sign/atmosplaque{pixel_x = 0; pixel_y = 32},/obj/machinery/cell_charger,/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Northeast"},/turf/simulated/floor,/area/engineering/atmos) +"csZ" = (/obj/structure/table/standard,/obj/item/weapon/wrench,/obj/structure/sign/atmosplaque{pixel_x = 0; pixel_y = 32},/obj/machinery/cell_charger,/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Northeast"},/turf/simulated/floor,/area/engineering/atmos) "cta" = (/obj/machinery/atmospherics/binary/pump{dir = 8; name = "Supply to Waste"},/turf/simulated/floor,/area/engineering/atmos) -"ctb" = (/obj/structure/table,/obj/machinery/newscaster{pixel_y = 30},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/storage/belt/utility/atmostech,/obj/item/weapon/storage/belt/utility/atmostech,/turf/simulated/floor,/area/engineering/atmos) +"ctb" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_y = 30},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/storage/belt/utility/atmostech,/obj/item/weapon/storage/belt/utility/atmostech,/turf/simulated/floor,/area/engineering/atmos) "ctc" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Monitoring Room"; dir = 8},/turf/simulated/floor,/area/engineering/atmos/monitoring) "ctd" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/turf/simulated/floor,/area/engineering/atmos) "cte" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/obj/machinery/meter,/turf/simulated/floor,/area/engineering/atmos) @@ -6426,7 +6426,7 @@ "ctD" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "ctE" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/turf/simulated/floor{dir = 4; icon_state = "warnwhite"},/area/medical/virology) "ctF" = (/turf/simulated/wall,/area/medical/virology) -"ctG" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/structure/reagent_dispensers/virusfood{pixel_x = -30},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"ctG" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/obj/structure/reagent_dispensers/virusfood{pixel_x = -30},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "ctH" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 26},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "ctI" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/camera/network/research{c_tag = "Xenobiology North"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "ctJ" = (/obj/machinery/disease2/incubator,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) @@ -6440,7 +6440,7 @@ "ctR" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "ctS" = (/obj/machinery/atmospherics/pipe/simple/visible/red,/turf/simulated/floor,/area/engineering/atmos) "ctT" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre 1 Storage"; req_access = list(45)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgeryprep) -"ctU" = (/obj/structure/table,/obj/item/weapon/storage/box/syringes,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) +"ctU" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/syringes,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "ctV" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre 2 Storage"; req_access = list(45)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgeryprep) "ctW" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "ctX" = (/obj/machinery/power/solar{id = "starboardsolar"; name = "Starboard Solar Array"},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/starboard) @@ -6486,7 +6486,7 @@ "cuL" = (/obj/machinery/atmospherics/pipe/simple/visible/red{tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6},/turf/simulated/floor,/area/engineering/atmos) "cuM" = (/obj/machinery/atmospherics/pipe/manifold/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cuN" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/turf/simulated/floor{dir = 6; icon_state = "warnwhite"},/area/medical/virology) -"cuO" = (/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/white,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cuO" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/white,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cuP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cuQ" = (/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cuR" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) @@ -6499,8 +6499,8 @@ "cuY" = (/obj/machinery/atmospherics/pipe/manifold/visible/red,/turf/simulated/floor,/area/engineering/atmos) "cuZ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cva" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cvb" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/clothing/gloves/latex,/obj/item/device/slime_scanner,/obj/item/device/slime_scanner,/obj/item/weapon/hand_labeler,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) -"cvc" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) +"cvb" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/clothing/gloves/latex,/obj/item/device/slime_scanner,/obj/item/device/slime_scanner,/obj/item/weapon/hand_labeler,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) +"cvc" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cvd" = (/obj/structure/bed/chair/office/dark{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cve" = (/obj/machinery/smartfridge/secure/extract,/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/rnd/xenobiology) "cvf" = (/obj/machinery/optable{name = "Xenobiology Operating Table"},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/rnd/xenobiology) @@ -6554,8 +6554,8 @@ "cwb" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cwc" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cwd" = (/obj/structure/closet/l3closet/scientist,/obj/machinery/light{dir = 8},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/xenobiology) -"cwe" = (/obj/structure/table,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) -"cwf" = (/obj/structure/table,/obj/item/stack/sheet/mineral/phoron{amount = 5; layer = 2.9},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) +"cwe" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) +"cwf" = (/obj/structure/table/standard,/obj/item/stack/sheet/mineral/phoron{amount = 5; layer = 2.9},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cwg" = (/turf/simulated/wall/r_wall,/area/engineering/atmos/storage) "cwh" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/rnd/xenobiology) "cwi" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor{icon_state = "whitehall"; dir = 8},/area/rnd/xenobiology) @@ -6579,10 +6579,10 @@ "cwA" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "green"; dir = 4},/area/medical/virology) "cwB" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cwC" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/medical/virology) -"cwD" = (/obj/structure/table,/obj/item/weapon/storage/lockbox/vials,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cwE" = (/obj/structure/table,/obj/item/weapon/storage/fancy/vials,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cwD" = (/obj/structure/table/standard,/obj/item/weapon/storage/lockbox/vials,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cwE" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/vials,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cwF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cwG" = (/obj/structure/table,/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cwG" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cwH" = (/obj/machinery/atmospherics/pipe/simple/visible/blue{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/engineering/atmos) "cwI" = (/obj/machinery/atmospherics/pipe/tank/phoron{dir = 2; volume = 3200},/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) "cwJ" = (/obj/machinery/atmospherics/pipe/tank/oxygen{dir = 2; volume = 3200},/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) @@ -6606,7 +6606,7 @@ "cxb" = (/obj/machinery/atmospherics/pipe/manifold4w/visible/yellow,/turf/simulated/floor,/area/engineering/atmos) "cxc" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow,/obj/machinery/meter,/turf/simulated/floor,/area/engineering/atmos) "cxd" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/engineering{c_tag = "Engineering Workshop"; dir = 8},/turf/simulated/floor,/area/engineering/workshop) -"cxe" = (/obj/structure/table,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cxe" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cxf" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating/airless,/area/solar/port) "cxg" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cxh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) @@ -6615,7 +6615,7 @@ "cxk" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cxl" = (/obj/machinery/atmospherics/valve/digital{dir = 4},/turf/simulated/floor,/area/engineering/atmos) "cxm" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/rnd/xenobiology) -"cxn" = (/obj/structure/table,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/rnd/xenobiology) +"cxn" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/rnd/xenobiology) "cxo" = (/obj/machinery/light_switch{pixel_x = -27; pixel_y = 0},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/engineering{c_tag = "Engineering Storage"; dir = 4},/turf/simulated/floor/plating,/area/engineering/storage) "cxp" = (/obj/structure/closet/crate,/obj/item/weapon/circuitboard/smes,/obj/item/weapon/circuitboard/smes,/obj/item/weapon/smes_coil,/obj/item/weapon/smes_coil,/obj/item/weapon/smes_coil/super_capacity,/obj/item/weapon/smes_coil/super_capacity,/obj/item/weapon/smes_coil/super_io,/obj/item/weapon/smes_coil/super_io,/turf/simulated/floor/plating,/area/engineering/storage) "cxq" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "Operating Theatre 1 Maintenance Access"; req_access = list(45)},/turf/simulated/floor/plating,/area/medical/surgery) @@ -6624,7 +6624,7 @@ "cxt" = (/obj/machinery/door/window/southright{dir = 1; name = "Virology Isolation Room One"; req_access = list(39)},/obj/machinery/atmospherics/pipe/simple/hidden/purple,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/virology) "cxu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/engineering) "cxv" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/engineering/workshop) -"cxw" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor,/area/engineering/workshop) +"cxw" = (/obj/structure/table/standard,/obj/item/weapon/crowbar,/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor,/area/engineering/workshop) "cxx" = (/turf/simulated/floor/plating/airless,/area/solar/port) "cxy" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/port) "cxz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/solar/port) @@ -6637,7 +6637,7 @@ "cxG" = (/obj/machinery/atmospherics/omni/filter{use_power = 1; tag_east = 1; tag_north = 3; tag_south = 6; tag_west = 2},/turf/simulated/floor,/area/engineering/atmos) "cxH" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio2"; name = "Containment Blast Doors"; opacity = 0},/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access = list(55)},/turf/simulated/floor/engine,/area/rnd/xenobiology) "cxI" = (/obj/machinery/atmospherics/omni/filter{use_power = 1; tag_east = 1; tag_north = 4; tag_south = 7; tag_west = 2},/turf/simulated/floor,/area/engineering/atmos) -"cxJ" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/glass_jar,/obj/item/glass_jar,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) +"cxJ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/glass_jar,/obj/item/glass_jar,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cxK" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) "cxL" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) "cxM" = (/obj/machinery/atmospherics/binary/pump,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) @@ -6652,7 +6652,7 @@ "cxV" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact (EAST)"},/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/simulated/floor,/area/engineering/atmos) "cxW" = (/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/medical/virology) "cxX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cxY" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cxY" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cxZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/virology) "cya" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan,/turf/simulated/floor,/area/engineering/atmos) "cyb" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact (EAST)"},/obj/machinery/atmospherics/pipe/simple/visible/red,/turf/simulated/floor,/area/engineering/atmos) @@ -6676,7 +6676,7 @@ "cyt" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/engineering) "cyu" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor,/area/engineering/atmos) "cyv" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/engineering) -"cyw" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor,/area/engineering/workshop) +"cyw" = (/obj/structure/table/standard,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor,/area/engineering/workshop) "cyx" = (/obj/structure/bed/chair,/obj/effect/landmark/start{name = "Station Engineer"},/turf/simulated/floor,/area/engineering/workshop) "cyy" = (/obj/machinery/constructable_frame/machine_frame,/turf/simulated/floor,/area/engineering/workshop) "cyz" = (/obj/machinery/atmospherics/unary/freezer{dir = 2; icon_state = "freezer"},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engineering/atmos) @@ -6691,26 +6691,26 @@ "cyI" = (/obj/machinery/space_heater,/turf/simulated/floor,/area/engineering/atmos/storage) "cyJ" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/engineering{name = "Engineering Hard Storage"; req_access = list(11)},/turf/simulated/floor,/area/engineering/storage) "cyK" = (/obj/machinery/door/airlock/maintenance{name = "Incinerator Access"; req_one_access = list(5,12)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/incinerator) -"cyL" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor,/area/engineering/workshop) +"cyL" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor,/area/engineering/workshop) "cyM" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) "cyN" = (/obj/machinery/atmospherics/trinary/mixer,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) "cyO" = (/mob/living/simple_animal/mouse,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) "cyP" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/sign/deathsposal{pixel_x = 32},/turf/simulated/floor/plating,/area/maintenance/incinerator) "cyQ" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall,/area/maintenance/medbay) "cyR" = (/obj/machinery/door/airlock/medical{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "virology_airlock_interior"; locked = 1; name = "Virology Interior Airlock"; req_access = list(39)},/obj/machinery/atmospherics/pipe/simple/hidden/purple,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cyS" = (/obj/structure/table,/obj/machinery/light{dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/machinery/camera/network/medbay{c_tag = "Virology Port"; dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cyT" = (/obj/structure/table,/obj/item/device/antibody_scanner,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = -32},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cyU" = (/obj/structure/table,/obj/item/device/floor_painter,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/t_scanner,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/engineering/workshop) -"cyV" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 8},/obj/structure/disposalpipe/segment,/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 7; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Virology Emergency Phone"; pixel_x = -6; pixel_y = 8},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cyS" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/machinery/camera/network/medbay{c_tag = "Virology Port"; dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cyT" = (/obj/structure/table/standard,/obj/item/device/antibody_scanner,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = -32},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cyU" = (/obj/structure/table/standard,/obj/item/device/floor_painter,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/t_scanner,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/engineering/workshop) +"cyV" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 8},/obj/structure/disposalpipe/segment,/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 7; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Virology Emergency Phone"; pixel_x = -6; pixel_y = 8},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cyW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/medical/virology) -"cyX" = (/obj/structure/table,/obj/item/device/radio/off{pixel_y = 6},/obj/item/device/radio/off{pixel_x = 6; pixel_y = 4},/obj/item/device/radio/off{pixel_x = -6; pixel_y = 4},/obj/item/device/radio/off,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor,/area/engineering/workshop) +"cyX" = (/obj/structure/table/standard,/obj/item/device/radio/off{pixel_y = 6},/obj/item/device/radio/off{pixel_x = 6; pixel_y = 4},/obj/item/device/radio/off{pixel_x = -6; pixel_y = 4},/obj/item/device/radio/off,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor,/area/engineering/workshop) "cyY" = (/obj/item/roller,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cyZ" = (/obj/machinery/door/window/southright{dir = 4; name = "Primate Pen"; req_access = list(39)},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/virology) "cza" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "czb" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "czc" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "czd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/rnd/xenobiology) -"cze" = (/obj/structure/table,/obj/machinery/light,/obj/item/weapon/wrench,/obj/item/device/flashlight,/obj/machinery/cell_charger,/turf/simulated/floor,/area/engineering/workshop) +"cze" = (/obj/structure/table/standard,/obj/machinery/light,/obj/item/weapon/wrench,/obj/item/device/flashlight,/obj/machinery/cell_charger,/turf/simulated/floor,/area/engineering/workshop) "czf" = (/obj/machinery/requests_console{announcementConsole = 0; department = "Engineering"; departmentType = 4; name = "Engineering RC"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor,/area/engineering/workshop) "czg" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "czh" = (/obj/structure/bed/chair{dir = 8},/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/plating,/area/maintenance/engi_shuttle) @@ -6741,7 +6741,7 @@ "czG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/yellow{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/simulated/floor/plating,/area/medical/virology) "czH" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/turf/simulated/floor{dir = 3; icon_state = "whitered"},/area/medical/virology) "czI" = (/obj/machinery/atmospherics/pipe/simple/hidden/yellow{dir = 10},/turf/simulated/floor{dir = 3; icon_state = "whitered"},/area/medical/virology) -"czJ" = (/obj/structure/table,/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) +"czJ" = (/obj/structure/table/standard,/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "czK" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 30},/turf/simulated/floor{dir = 3; icon_state = "whitered"},/area/medical/virology) "czL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -7; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 7; pixel_y = -32},/turf/simulated/floor,/area/rnd/xenobiology) "czM" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/visible/green,/turf/simulated/floor,/area/engineering/atmos) @@ -6868,7 +6868,7 @@ "cCd" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/incinerator) "cCe" = (/obj/machinery/space_heater,/obj/machinery/light/small,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor,/area/engineering/atmos/storage) "cCf" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/simulated/wall/r_wall,/area/engineering/atmos/storage) -"cCg" = (/obj/structure/table,/obj/item/weapon/storage/box/cups,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cCg" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/cups,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cCh" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cCi" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "cCj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) @@ -6916,8 +6916,8 @@ "cCZ" = (/obj/structure/bed/chair,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/engineering/drone_fabrication) "cDa" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/machinery/button/remote/blast_door{id = "xenobio4"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access = list(55)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/rnd/xenobiology) "cDb" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cDc" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"cDd" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cDc" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cDd" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cDe" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) "cDf" = (/obj/structure/disposaloutlet,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/plating/airless,/area/space) "cDg" = (/obj/machinery/recharge_station,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 27},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) @@ -6945,13 +6945,13 @@ "cDC" = (/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engineering/drone_fabrication) "cDD" = (/obj/machinery/computer/security/engineering{name = "Drone Monitoring Cameras"; network = list("Engineering")},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cDE" = (/obj/machinery/recharge_station,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) -"cDF" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = 25},/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/device/multitool{pixel_x = 5},/obj/item/clothing/gloves/yellow,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/engineering/engine_smes) +"cDF" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = 25},/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/device/multitool{pixel_x = 5},/obj/item/clothing/gloves/yellow,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/engineering/engine_smes) "cDG" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = 27},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor,/area/engineering/engine_smes) "cDH" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/engineering/engine_smes) -"cDI" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -2; pixel_y = 5},/turf/simulated/floor,/area/engineering/engine_monitoring) +"cDI" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -2; pixel_y = 5},/turf/simulated/floor,/area/engineering/engine_monitoring) "cDJ" = (/turf/simulated/wall/r_wall,/area/engineering/engine_monitoring) "cDK" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/engineering/engine_monitoring) -"cDL" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor,/area/engineering/engine_monitoring) +"cDL" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor,/area/engineering/engine_monitoring) "cDM" = (/obj/structure/closet/radiation,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = 28},/turf/simulated/floor,/area/engineering/engine_monitoring) "cDN" = (/obj/machinery/atmospherics/binary/pump{dir = 1; name = "Phoron to Mixing"},/turf/simulated/floor,/area/engineering/atmos) "cDO" = (/obj/machinery/atmospherics/binary/pump{name = "Mixing to Mix Tank"},/turf/simulated/floor,/area/engineering/atmos) @@ -6963,7 +6963,7 @@ "cDU" = (/obj/machinery/atmospherics/binary/pump{dir = 1; name = "Mix Tank to Port"},/turf/simulated/floor,/area/engineering/atmos) "cDV" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cDW" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/ai_status_display{layer = 4; pixel_y = 32},/turf/simulated/floor,/area/engineering/engine_monitoring) -"cDX" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cDX" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cDY" = (/obj/machinery/washing_machine,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cDZ" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/engine,/area/rnd/xenobiology) "cEa" = (/obj/machinery/light/small{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/engine,/area/rnd/xenobiology) @@ -6975,14 +6975,14 @@ "cEg" = (/obj/structure/grille,/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/simulated/wall/r_wall,/area/engineering/atmos) "cEh" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/visible/yellow,/obj/machinery/meter,/turf/simulated/wall/r_wall,/area/engineering/atmos) "cEi" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engineering/atmos) -"cEj" = (/obj/structure/table,/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/fancy/cigarettes,/obj/machinery/light/small{dir = 8},/obj/item/weapon/deck,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) +"cEj" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/fancy/cigarettes,/obj/machinery/light/small{dir = 8},/obj/item/weapon/deck,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cEk" = (/obj/machinery/drone_fabricator,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cEl" = (/obj/effect/decal/remains/robot,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/engineering/drone_fabrication) "cEm" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engineering/drone_fabrication) "cEn" = (/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cEo" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cEp" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) -"cEq" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/turf/simulated/floor,/area/engineering/engine_smes) +"cEq" = (/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/turf/simulated/floor,/area/engineering/engine_smes) "cEr" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engineering/atmos) "cEs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/engineering/engine_smes) "cEt" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor,/area/engineering/engine_monitoring) @@ -7001,7 +7001,7 @@ "cEG" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = 1441; icon_state = "map_injector"; id = "co2_in"; use_power = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/engineering/atmos) "cEH" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; external_pressure_bound_default = 0; frequency = 1441; icon_state = "map_vent_in"; id_tag = "co2_out"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; use_power = 1; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/engineering/atmos) "cEI" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "co2_sensor"},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/engineering/atmos) -"cEJ" = (/obj/structure/table,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) +"cEJ" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cEK" = (/obj/machinery/computer/arcade,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) "cEL" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/engine,/area/rnd/xenobiology) "cEM" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = 1441; icon_state = "map_injector"; id = "tox_in"; use_power = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "phoron floor"; nitrogen = 0; oxygen = 0; phoron = 70000},/area/engineering/atmos) @@ -7017,7 +7017,7 @@ "cEW" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engineering/drone_fabrication) "cEX" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(10,24)},/turf/simulated/floor/plating,/area/engineering) "cEY" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) -"cEZ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/lights/mixed,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/engineering/engine_smes) +"cEZ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/lights/mixed,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/engineering/engine_smes) "cFa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/wall/r_wall,/area/engineering/engine_smes) "cFb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/engineering/engine_smes) "cFc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/engineering/engine_smes) @@ -7306,7 +7306,7 @@ "cKz" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 5},/obj/structure/lattice,/turf/space,/area/space) "cKA" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/visible/green,/turf/space,/area/space) "cKB" = (/obj/machinery/light_switch{pixel_x = 22; pixel_y = -10},/turf/simulated/floor,/area/engineering/engine_smes) -"cKC" = (/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/obj/machinery/light_switch{pixel_x = -27; pixel_y = 0},/obj/machinery/airlock_sensor/airlock_exterior{id_tag = "eng_al_ext_snsr"; layer = 3.3; master_tag = "engine_room_airlock"; pixel_y = -22; req_access = list(10)},/obj/structure/table,/obj/item/weapon/book/manual/supermatter_engine,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor,/area/engineering/engine_airlock) +"cKC" = (/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/obj/machinery/light_switch{pixel_x = -27; pixel_y = 0},/obj/machinery/airlock_sensor/airlock_exterior{id_tag = "eng_al_ext_snsr"; layer = 3.3; master_tag = "engine_room_airlock"; pixel_y = -22; req_access = list(10)},/obj/structure/table/standard,/obj/item/weapon/book/manual/supermatter_engine,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor,/area/engineering/engine_airlock) "cKD" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "engineering_dock_pump"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "engineering_dock_sensor"; pixel_x = -25; pixel_y = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 10},/area/maintenance/engi_shuttle) "cKE" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/electrical,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/camera/network/engineering{c_tag = "Engineering Drone Fabrication"; dir = 8},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cKF" = (/obj/machinery/door/airlock/maintenance_hatch{name = "SMES Access"; req_access = list(11)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/engineering/engine_monitoring) diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index a0c8550f82..54f5f95db4 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -405,9 +405,9 @@ "hO" = (/turf/simulated/shuttle/wall{dir = 2; icon_state = "swall_floor_f9"},/area/centcom/evac) "hP" = (/obj/structure/closet/emcloset,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "hQ" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock"; req_access = list(13)},/turf/unsimulated/floor,/area/centcom/evac) -"hR" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"hS" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"hT" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"hR" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"hS" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"hT" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "hU" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_1_recovery"; pixel_x = 25; pixel_y = 30; req_one_access = list(13); tag_door = "escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) "hV" = (/turf/simulated/shuttle/wall{dir = 2; icon_state = "swall_floor_f5"},/area/centcom/evac) "hW" = (/turf/simulated/shuttle/plating,/turf/simulated/shuttle/wall{dir = 3; icon_state = "swall_f10"; layer = 2},/area/centcom/evac) @@ -467,7 +467,7 @@ "iY" = (/turf/space/transit/north/shuttlespace_ns9,/area/shuttle/escape_pod2/transit) "iZ" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdownside"; nostop = 1; tiles = 0},/turf/space/transit/north/shuttlespace_ns5,/area/space) "ja" = (/obj/structure/flora/bush,/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/area/syndicate_mothership) -"jb" = (/obj/structure/table,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"jb" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "jc" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "jd" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "je" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) @@ -476,7 +476,7 @@ "jh" = (/turf/space/transit/north/shuttlespace_ns15,/area/shuttle/escape_pod2/transit) "ji" = (/turf/space/transit/north/shuttlespace_ns8,/area/shuttle/escape_pod2/transit) "jj" = (/turf/space,/area/shuttle/escape_pod5/centcom) -"jk" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"jk" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "jl" = (/turf/space,/area/shuttle/escape_pod3/centcom) "jm" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/simulated/shuttle/plating,/area/centcom/evac) "jn" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock"; req_access = list(13)},/turf/unsimulated/floor,/area/centcom/evac) @@ -492,10 +492,10 @@ "jx" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/syndicate_mothership) "jy" = (/turf/simulated/shuttle/wall{dir = 2; icon_state = "swallc1"},/area/centcom/evac) "jz" = (/obj/machinery/computer/arcade,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"jA" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"jA" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "jB" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "jC" = (/obj/machinery/computer/security/nuclear,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) -"jD" = (/obj/structure/table,/obj/machinery/button/remote/blast_door{id = "syndieshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"jD" = (/obj/structure/table/standard,/obj/machinery/button/remote/blast_door{id = "syndieshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "jE" = (/obj/machinery/door/airlock/hatch{name = "Infirmary"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/centcom/evac) "jF" = (/obj/structure/computerframe,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "jG" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 8},/area/syndicate_mothership) @@ -505,7 +505,7 @@ "jK" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) "jL" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) "jM" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/simulated/shuttle/plating,/area/centcom/evac) -"jN" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"jN" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "jO" = (/obj/item/weapon/stool{pixel_y = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "jP" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 4},/area/syndicate_mothership) "jQ" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 9},/area/syndicate_mothership) @@ -517,15 +517,15 @@ "jW" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) "jX" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) "jY" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"jZ" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"jZ" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "ka" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_y = -32; subspace_transmission = 1; syndie = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "kb" = (/obj/structure/closet/syndicate/personal,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "kc" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows2"; dir = 1},/area/syndicate_mothership) "kd" = (/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "ke" = (/obj/structure/sign/double/map/left{pixel_y = 32},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "kf" = (/obj/structure/sign/double/map/right{pixel_y = 32},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) -"kg" = (/obj/structure/table,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/syndicate_mothership) -"kh" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/syndicate_mothership) +"kg" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/syndicate_mothership) +"kh" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/syndicate_mothership) "ki" = (/obj/machinery/sleeper,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) "kj" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) "kk" = (/obj/machinery/door/window{dir = 1; name = "Cockpit"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) @@ -549,14 +549,14 @@ "kC" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 6},/area/syndicate_mothership) "kD" = (/turf/unsimulated/wall/fakeglass,/area/syndicate_mothership) "kE" = (/obj/structure/bed/chair/comfy/black{dir = 4},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) -"kF" = (/obj/structure/table,/obj/item/weapon/folder,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"kF" = (/obj/structure/table/standard,/obj/item/weapon/folder,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "kG" = (/obj/structure/bed/chair/comfy/black{dir = 8},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "kH" = (/obj/structure/closet/crate/freezer,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/syndicate_mothership) "kI" = (/obj/machinery/door/airlock/hatch{name = "Cockpit"; req_access = list(109)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"kJ" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/obj/item/device/flash,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"kJ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/handcuffs,/obj/item/device/flash,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) "kK" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "kL" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) -"kM" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"kM" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "kN" = (/turf/simulated/shuttle/wall{icon_state = "swall14"; dir = 2},/area/centcom/evac) "kO" = (/turf/simulated/shuttle/wall{icon_state = "swall13"; dir = 2},/area/centcom/evac) "kP" = (/obj/machinery/door/airlock/external{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) @@ -572,24 +572,24 @@ "kZ" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 8},/area/syndicate_mothership) "la" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "lb" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) -"lc" = (/obj/structure/table,/obj/item/device/radio/off,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"lc" = (/obj/structure/table/standard,/obj/item/device/radio/off,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "ld" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 4; name = "thrower_escapeshuttletop(right)"; tiles = 0},/turf/space/transit/north/shuttlespace_ns8,/area/space) -"le" = (/obj/structure/table,/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"le" = (/obj/structure/table/standard,/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "lf" = (/turf/simulated/shuttle/plating,/area/syndicate_mothership) "lg" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_mothership) "lh" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/turf/unsimulated/floor{dir = 1; icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"},/area/syndicate_mothership) "li" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 5},/area/syndicate_mothership) "lj" = (/obj/machinery/door/airlock/centcom{name = "Barracks"},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "lk" = (/obj/structure/mopbucket,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) -"ll" = (/obj/structure/table,/obj/item/weapon/storage/lockbox,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"lm" = (/obj/structure/table,/obj/item/weapon/stamp/captain,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"ll" = (/obj/structure/table/standard,/obj/item/weapon/storage/lockbox,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"lm" = (/obj/structure/table/standard,/obj/item/weapon/stamp/captain,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "ln" = (/obj/machinery/computer/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"lo" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"lp" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"lo" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"lp" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) "lq" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'FOURTH WALL'."; name = "\improper FOURTH WALL"; pixel_x = -32},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/area/syndicate_mothership) -"lr" = (/obj/structure/table,/obj/item/device/aicard,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"lr" = (/obj/structure/table/standard,/obj/item/device/aicard,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "ls" = (/obj/machinery/door/window{dir = 4; name = "Brig"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) -"lt" = (/obj/structure/table,/obj/machinery/computer/pod/old/syndicate{id = "smindicate"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"lt" = (/obj/structure/table/standard,/obj/machinery/computer/pod/old/syndicate{id = "smindicate"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "lu" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/obj/structure/flora/grass/brown,/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 8},/area/syndicate_mothership) "lv" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{dir = 1; icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"},/area/syndicate_mothership) "lw" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/turf/simulated/floor/wood,/area/syndicate_mothership) @@ -610,26 +610,26 @@ "lL" = (/obj/machinery/sleeper,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) "lM" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) "lN" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) -"lO" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) -"lP" = (/obj/structure/table,/obj/item/stack/medical/ointment,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) -"lQ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) -"lR" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) -"lS" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/infra,/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) -"lT" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) -"lU" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"lO" = (/obj/structure/table/standard,/obj/item/stack/medical/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) +"lP" = (/obj/structure/table/standard,/obj/item/stack/medical/ointment,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) +"lQ" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"lR" = (/obj/structure/table/standard,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"lS" = (/obj/structure/table/standard,/obj/item/weapon/wrench,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/infra,/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"lT" = (/obj/structure/table/standard,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"lU" = (/obj/structure/table/standard,/obj/item/weapon/crowbar,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "lV" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 8},/area/syndicate_mothership) "lW" = (/turf/simulated/floor/wood{icon_state = "wood-broken3"},/area/syndicate_mothership) "lX" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) "lY" = (/obj/machinery/door/window/westright{name = "Tool Storage"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "lZ" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Infirmary"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) -"ma" = (/obj/structure/table,/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/toolbox/syndicate{pixel_x = -3; pixel_y = -3},/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"ma" = (/obj/structure/table/standard,/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/toolbox/syndicate{pixel_x = -3; pixel_y = -3},/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "mb" = (/obj/machinery/door/window{dir = 8; name = "Tool Storage"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "mc" = (/obj/machinery/door/window{dir = 1; name = "Secure Storage"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) "md" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/adv,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) "me" = (/obj/item/weapon/weldingtool,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) "mf" = (/obj/machinery/door/airlock/centcom{name = "Barracks"; opacity = 1; req_access = list(150)},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) "mg" = (/obj/item/weapon/crowbar,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_mothership) -"mh" = (/obj/structure/table,/obj/effect/spawner/newbomb/timer/syndicate,/turf/unsimulated/floor{icon_state = "floor4"},/area/syndicate_mothership) +"mh" = (/obj/structure/table/standard,/obj/effect/spawner/newbomb/timer/syndicate,/turf/unsimulated/floor{icon_state = "floor4"},/area/syndicate_mothership) "mi" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "syndieshutters_workshop"; name = "Blast Shutters"; opacity = 0},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "mj" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/obj/structure/flora/bush,/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 8},/area/syndicate_mothership) "mk" = (/obj/structure/table/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/syndicate/black/orange,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/syndicate/black/orange,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) @@ -664,9 +664,9 @@ "mN" = (/turf/unsimulated/wall{icon_state = "phoron13"},/area/alien) "mO" = (/turf/unsimulated/wall{icon_state = "phoron9"},/area/alien) "mP" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/space,/area/space) -"mQ" = (/obj/structure/table,/obj/item/device/flashlight/lamp{pixel_x = 4; pixel_y = 8},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) -"mR" = (/obj/structure/table,/obj/effect/landmark{name = "Nuclear-Code"},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) -"mS" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 8},/obj/item/weapon/pen{pixel_y = 4},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) +"mQ" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp{pixel_x = 4; pixel_y = 8},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) +"mR" = (/obj/structure/table/standard,/obj/effect/landmark{name = "Nuclear-Code"},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) +"mS" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 8},/obj/item/weapon/pen{pixel_y = 4},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) "mT" = (/obj/structure/bed/alien,/turf/unsimulated/floor{icon_state = "floor5"},/area/alien) "mU" = (/obj/structure/bed,/obj/item/weapon/bedsheet/hos,/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) "mV" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/unsimulated/floor{icon_state = "grimy"},/area/syndicate_mothership) @@ -676,23 +676,23 @@ "mZ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) "na" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) "nb" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) -"nc" = (/obj/structure/table,/obj/machinery/chemical_dispenser/bar_soft/full{pixel_x = 2; pixel_y = 6},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) +"nc" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full{pixel_x = 2; pixel_y = 6},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "nd" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) "ne" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "nf" = (/obj/structure/sign/double/map/left{pixel_y = 32},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "ng" = (/obj/structure/sign/double/map/right{pixel_y = 32},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "nh" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "syndieshutters_infirmary"; name = "Blast Shutters"; opacity = 0},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "ni" = (/obj/machinery/computer/shuttle_control/multi/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"nj" = (/obj/structure/table,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) +"nj" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "nk" = (/obj/structure/sink/kitchen{pixel_y = 28},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "nl" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "nm" = (/obj/structure/bed/chair/comfy/black,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) -"nn" = (/obj/structure/table,/obj/machinery/button/remote/blast_door{id = "syndieshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"nn" = (/obj/structure/table/standard,/obj/machinery/button/remote/blast_door{id = "syndieshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "no" = (/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "np" = (/obj/structure/table/reinforced,/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "nq" = (/obj/structure/bed/chair/comfy/black{dir = 4},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) -"nr" = (/obj/structure/table,/obj/item/weapon/folder{pixel_y = 2},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) -"ns" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_y = 4},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) +"nr" = (/obj/structure/table/standard,/obj/item/weapon/folder{pixel_y = 2},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) +"ns" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_y = 4},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "nt" = (/obj/structure/bed/chair/comfy/black{dir = 8},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "nu" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "nv" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/syndicate_station/start) @@ -708,7 +708,7 @@ "nF" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/security,/obj/item/weapon/storage/belt/security,/obj/item/ammo_magazine/mc9mm/flash,/obj/item/weapon/gun/projectile/pistol/flash,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "nG" = (/obj/structure/table/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/syndicate/black/red,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/syndicate/black/red,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) "nH" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_station/start) -"nI" = (/obj/structure/table,/obj/machinery/recharger,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"nI" = (/obj/structure/table/standard,/obj/machinery/recharger,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "nJ" = (/obj/machinery/computer/security/nuclear,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "nK" = (/obj/structure/closet/secure_closet/freezer/kitchen{req_access = list(150)},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "nL" = (/obj/structure/computerframe,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) @@ -716,7 +716,7 @@ "nN" = (/obj/machinery/door/blast/regular{id = "syndieshutters_telebay"; name = "Outer Airlock"},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "nO" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/machinery/recharger/wallcharger{pixel_x = 5; pixel_y = 32},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) "nP" = (/obj/structure/table/rack,/obj/item/ammo_magazine/a12mm,/obj/item/ammo_magazine/a12mm,/obj/item/ammo_magazine/a12mm,/obj/item/ammo_magazine/a12mm,/obj/item/ammo_magazine/a12mm,/obj/item/ammo_magazine/a12mm,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/gun/projectile/automatic/c20r,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) -"nQ" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -1; pixel_y = 2},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"nQ" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -1; pixel_y = 2},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "nR" = (/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "nS" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "nT" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) @@ -731,9 +731,9 @@ "oc" = (/obj/machinery/door/airlock/centcom{name = "Bathroom"; opacity = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "od" = (/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "oe" = (/obj/structure/table/rack,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) -"of" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"of" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "og" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/supply/dock) -"oh" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 8},/obj/item/weapon/pen{pixel_y = 4},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"oh" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 8},/obj/item/weapon/pen{pixel_y = 4},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "oi" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/window/reinforced,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) "oj" = (/obj/structure/mirror{dir = 4; pixel_x = -32; pixel_y = 0},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "ok" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) @@ -783,7 +783,7 @@ "pc" = (/obj/machinery/door/airlock/centcom{name = "Hardsuit Storage"; opacity = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) "pd" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/shuttle/administration/centcom) "pe" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/shuttle/administration/centcom) -"pf" = (/obj/structure/table,/obj/machinery/computer/pod/old/syndicate{id = "smindicate"},/obj/machinery/door/window{dir = 4; name = "Blast Door Control"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"pf" = (/obj/structure/table/standard,/obj/machinery/computer/pod/old/syndicate{id = "smindicate"},/obj/machinery/door/window{dir = 4; name = "Blast Door Control"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "pg" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/administration/centcom) "ph" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_station/start) "pi" = (/obj/structure/toilet{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/syndicate_station/start) @@ -802,12 +802,12 @@ "pv" = (/obj/item/device/multitool,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/reinforced{icon_state = "table"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pw" = (/obj/item/weapon/storage/toolbox/mechanical,/obj/structure/table/reinforced{icon_state = "table"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "px" = (/obj/machinery/vending/cigarette{name = "hacked cigarette machine"; prices = list(); products = list(/obj/item/weapon/storage/fancy/cigarettes = 10, /obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/flame/lighter/zippo = 4, /obj/item/clothing/mask/smokable/cigarette/cigar/havana = 2)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"py" = (/obj/structure/table,/obj/item/weapon/kitchen/utensil/knife{pixel_x = -6},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = -1},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 9},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"py" = (/obj/structure/table/standard,/obj/item/weapon/kitchen/utensil/knife{pixel_x = -6},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = -1},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 9},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "pz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "pA" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/floor/plating,/area/shuttle/administration/centcom) "pB" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pC" = (/obj/machinery/door/window{dir = 4; name = "Brig"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"pD" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) +"pD" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pE" = (/obj/machinery/cell_charger,/obj/structure/table/reinforced{icon_state = "table"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pF" = (/turf/unsimulated/wall,/area/centcom/living) "pG" = (/obj/structure/table/woodentable/holotable,/turf/simulated/floor/holofloor{icon_state = "carpet15-15"; dir = 4},/area/holodeck/source_courtroom) @@ -823,7 +823,7 @@ "pQ" = (/obj/machinery/door/airlock/glass,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pR" = (/obj/item/stack/sheet/glass{amount = 50},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pS" = (/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) -"pT" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/living) +"pT" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/living) "pU" = (/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/living) "pV" = (/obj/structure/closet/secure_closet/personal,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/living) "pW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor,/area/centcom/living) @@ -849,8 +849,8 @@ "qq" = (/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) "qr" = (/obj/machinery/atm{pixel_y = 24},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/living) "qs" = (/obj/item/weapon/stool{pixel_y = 8},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/living) -"qt" = (/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 6},/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) -"qu" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) +"qt" = (/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 6},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) +"qu" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) "qv" = (/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/living) "qw" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/living) "qx" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/living) @@ -860,12 +860,12 @@ "qB" = (/turf/unsimulated/wall{desc = "Why it no open!"; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/suppy) "qC" = (/obj/structure/closet{name = "custodial"},/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "qD" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/simulated/floor/plating,/area/shuttle/administration/centcom) -"qE" = (/obj/structure/table,/obj/structure/closet/secure_closet/medical_wall{pixel_y = 32; req_access = list(150)},/obj/item/bodybag,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = -4; pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 4; pixel_y = 7},/obj/item/weapon/reagent_containers/syringe,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) -"qF" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate{pixel_x = -1; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"qE" = (/obj/structure/table/standard,/obj/structure/closet/secure_closet/medical_wall{pixel_y = 32; req_access = list(150)},/obj/item/bodybag,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = -4; pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 4; pixel_y = 7},/obj/item/weapon/reagent_containers/syringe,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"qF" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/syndicate{pixel_x = -1; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "qG" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_r"; dir = 4},/turf/space,/area/shuttle/administration/centcom) "qH" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/administration/centcom) "qI" = (/obj/machinery/door/airlock/centcom{name = "Living Quarters"; opacity = 1; req_access = list(105)},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/living) -"qJ" = (/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) +"qJ" = (/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) "qK" = (/obj/machinery/suit_cycler/syndicate{locked = 0},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) "qL" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{name = "plating"},/area/centcom/living) "qM" = (/turf/unsimulated/floor{name = "plating"},/area/centcom/living) @@ -887,12 +887,12 @@ "rc" = (/obj/structure/table/rack,/obj/item/clothing/suit/storage/vest/heavy/merc{pixel_x = 2; pixel_y = 2},/obj/item/clothing/suit/storage/vest/heavy/merc{pixel_x = -2; pixel_y = -2},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) "rd" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "admin_shuttle_bay"; name = "shuttle bay controller"; pixel_x = 25; pixel_y = 0; tag_door = "admin_shuttle_bay_door"},/turf/unsimulated/floor{name = "plating"},/area/centcom) "re" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = -32; subspace_transmission = 1; syndie = 1},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"rf" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler{pixel_y = 2},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"rg" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"rf" = (/obj/structure/table/standard,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler{pixel_y = 2},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"rg" = (/obj/structure/table/standard,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "rh" = (/obj/structure/bed/chair/comfy/black{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "ri" = (/obj/machinery/door/window{dir = 4; name = "Infirmary"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "rj" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) -"rk" = (/obj/structure/table,/obj/item/weapon/screwdriver,/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"rk" = (/obj/structure/table/standard,/obj/item/weapon/screwdriver,/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "rl" = (/obj/machinery/vending/snack{name = "hacked Getmore Chocolate Corp"; prices = list()},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "rm" = (/obj/machinery/dna_scannernew,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) "rn" = (/obj/machinery/computer/cloning,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) @@ -915,10 +915,10 @@ "rE" = (/obj/machinery/button/remote/blast_door{id = "syndieshutters_infirmary"; name = "remote shutter control"; pixel_x = -25},/obj/structure/mopbucket,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "rF" = (/obj/machinery/door/window{dir = 1; name = "Secure Storage"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "rG" = (/obj/item/weapon/stool{pixel_y = 8},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"rH" = (/obj/structure/table,/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"rH" = (/obj/structure/table/standard,/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "rI" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/shutters{density = 0; icon_state = "shutter0"; id = "syndieshutters"; name = "Blast Shutters"; opacity = 0},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "rJ" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) -"rK" = (/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -6},/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) +"rK" = (/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -6},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) "rL" = (/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) "rM" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) "rN" = (/obj/machinery/chem_master/condimaster{name = "CondiMaster Neo"; pixel_x = -5},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) @@ -926,44 +926,44 @@ "rP" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; icon_state = "shutter0"; id = "syndieshutters"; name = "Blast Shutters"; opacity = 0},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "rQ" = (/obj/machinery/button/remote/blast_door{id = "syndieshutters_workshop"; name = "remote shutter control"; pixel_x = 25},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "rR" = (/obj/machinery/computer/shuttle_control{req_access = list(101); shuttle_tag = "Administration"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) -"rS" = (/obj/structure/table,/obj/item/device/aicard,/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"rS" = (/obj/structure/table/standard,/obj/item/device/aicard,/obj/effect/spawner/newbomb/timer/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "rT" = (/obj/structure/closet/secure_closet/bar{req_access = list(25)},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) "rU" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) "rV" = (/obj/structure/table/reinforced,/obj/machinery/librarycomp,/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/shuttle/administration/centcom) "rW" = (/obj/structure/bookcase,/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/shuttle/administration/centcom) -"rX" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) -"rY" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) +"rX" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) +"rY" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) "rZ" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "supply_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/shuttle/plating,/area/supply/dock) "sa" = (/obj/machinery/door/window{dir = 1; name = "Surgery"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "sb" = (/obj/machinery/telecomms/allinone{intercept = 1},/obj/machinery/door/window/northright{name = "Telecoms Mainframe"; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"sc" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"sc" = (/obj/structure/table/standard,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "sd" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "supply_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/supply/dock) "se" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/structure/sign/nosmoking_1{pixel_y = 32},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "sf" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/syringe,/obj/item/clothing/mask/surgical,/obj/item/clothing/gloves/latex,/obj/item/weapon/surgicaldrill,/obj/structure/closet/secure_closet/medical_wall{pixel_x = 32; pixel_y = 0; req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "sg" = (/obj/machinery/door/window/northright{icon_state = "right"; dir = 2},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) -"sh" = (/obj/structure/table,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) -"si" = (/obj/structure/table,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) +"sh" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) +"si" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "sj" = (/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/shuttle/administration/centcom) "sk" = (/turf/simulated/floor{icon_state = "chapel"},/area/shuttle/administration/centcom) "sl" = (/obj/structure/closet/secure_closet/medical_wall{pixel_y = 0; req_access = list(150)},/obj/item/weapon/surgicaldrill,/obj/item/clothing/gloves/latex,/obj/item/clothing/mask/surgical,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/syringe,/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_station/start) "sm" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{name = "plating"},/area/centcom/living) "sn" = (/obj/item/weapon/stool{pixel_y = 8},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) "so" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"sp" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"sp" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "sq" = (/obj/machinery/door/airlock/centcom{name = "Living Quarters"; opacity = 1; req_access = list(105)},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) -"sr" = (/obj/structure/table,/obj/item/roller{pixel_y = 8},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) -"ss" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) -"st" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) -"su" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler{pixel_y = 2},/obj/item/clothing/glasses/night,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"sr" = (/obj/structure/table/standard,/obj/item/roller{pixel_y = 8},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"ss" = (/obj/structure/table/standard,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"st" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"su" = (/obj/structure/table/standard,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler{pixel_y = 2},/obj/item/clothing/glasses/night,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "sv" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "supply_shuttle"; pixel_x = 25; pixel_y = 0; req_one_access = list(13,31); tag_door = "supply_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/supply/dock) "sw" = (/obj/machinery/door/airlock/centcom{name = "Commander Quarters"; opacity = 1; req_access = list(109)},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/living) -"sx" = (/obj/structure/table,/turf/unsimulated/floor{dir = 9; icon_state = "carpetside"},/area/centcom/living) +"sx" = (/obj/structure/table/standard,/turf/unsimulated/floor{dir = 9; icon_state = "carpetside"},/area/centcom/living) "sy" = (/turf/unsimulated/floor{dir = 1; icon_state = "carpetside"},/area/centcom/living) "sz" = (/obj/machinery/sleeper,/turf/unsimulated/floor{dir = 5; icon_state = "carpetside"},/area/centcom/living) "sA" = (/obj/structure/mirror{pixel_y = 28},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) "sB" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) "sC" = (/obj/machinery/computer/card/centcom,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) -"sD" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/kitchen/rollingpin,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) +"sD" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/kitchen/rollingpin,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) "sE" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/turf/simulated/shuttle/floor,/area/supply/dock) "sF" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "supply_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/shuttle/plating,/area/supply/dock) "sG" = (/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) @@ -978,13 +978,13 @@ "sP" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpetside"},/area/centcom/living) "sQ" = (/turf/unsimulated/floor{dir = 6; icon_state = "carpetside"},/area/centcom/living) "sR" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpetsymbol"},/area/centcom/living) -"sS" = (/obj/structure/table,/obj/item/weapon/card/id/centcom,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) +"sS" = (/obj/structure/table/standard,/obj/item/weapon/card/id/centcom,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) "sT" = (/obj/machinery/vending/dinnerware,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) -"sU" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) -"sV" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) -"sW" = (/obj/structure/table,/obj/item/weapon/cautery,/obj/item/weapon/hemostat,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"sU" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) +"sV" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) +"sW" = (/obj/structure/table/standard,/obj/item/weapon/cautery,/obj/item/weapon/hemostat,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "sX" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) -"sY" = (/obj/structure/table,/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/retractor,/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"sY" = (/obj/structure/table/standard,/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/retractor,/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "sZ" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/syndicate_station/start) "ta" = (/obj/machinery/teleport/station,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "tb" = (/obj/machinery/teleport/hub,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) @@ -1053,7 +1053,7 @@ "um" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/unsimulated/floor{name = "plating"},/area/centcom/control) "un" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/floor{name = "plating"},/area/centcom/control) "uo" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/control) -"up" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/control) +"up" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/control) "uq" = (/obj/structure/closet/secure_closet/security,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/control) "ur" = (/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/control) "us" = (/turf/space,/area/centcom/specops) @@ -1136,7 +1136,7 @@ "vR" = (/obj/structure/table/rack,/obj/item/weapon/rig/ert/security,/obj/item/clothing/accessory/storage/black_vest,/obj/item/weapon/rig/ert/security,/obj/item/clothing/accessory/storage/black_vest,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "vS" = (/obj/structure/table/rack,/obj/item/rig_module/mounted,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "vT" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/glass/reinforced{amount = 50},/obj/item/stack/sheet/glass/reinforced{amount = 50},/obj/item/stack/sheet/glass/reinforced{amount = 50},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) -"vU" = (/obj/structure/table,/obj/item/weapon/scalpel,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) +"vU" = (/obj/structure/table/standard,/obj/item/weapon/scalpel,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "vV" = (/turf/unsimulated/floor{icon_state = "green"; dir = 4},/area/centcom/control) "vW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/control) "vX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/control) @@ -1243,11 +1243,11 @@ "xU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor,/area/centcom/control) "xV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor,/area/centcom/control) "xW" = (/obj/machinery/door/airlock/centcom{name = "Courthouse"; opacity = 1},/turf/unsimulated/floor{icon_state = "whiteshiny"},/area/centcom/control) -"xX" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/control) +"xX" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/control) "xY" = (/obj/structure/sign/nosmoking_2,/turf/unsimulated/wall,/area/centcom/control) "xZ" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/control) "ya" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) -"yb" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/item/weapon/handcuffs,/obj/item/weapon/storage/pill_bottle/dice,/obj/item/weapon/deck,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) +"yb" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/obj/item/weapon/handcuffs,/obj/item/weapon/storage/pill_bottle/dice,/obj/item/weapon/deck,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "yc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{name = "plating"},/area/centcom/specops) "yd" = (/obj/structure/bed/chair/office/light,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "ye" = (/obj/structure/undies_wardrobe,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) @@ -1284,7 +1284,7 @@ "yJ" = (/obj/structure/table/rack,/obj/item/weapon/storage/backpack/security,/obj/item/clothing/under/syndicate/combat,/obj/item/clothing/shoes/galoshes,/obj/item/clothing/head/bio_hood/janitor,/obj/item/clothing/suit/bio_suit/janitor,/obj/item/clothing/gloves/purple,/obj/item/clothing/glasses/science,/obj/item/weapon/storage/backpack/security,/obj/item/clothing/under/syndicate/combat,/obj/item/clothing/shoes/galoshes,/obj/item/clothing/head/bio_hood/janitor,/obj/item/clothing/suit/bio_suit/janitor,/obj/item/clothing/gloves/purple,/obj/item/clothing/glasses/science,/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = 6; pixel_y = 3},/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = 6; pixel_y = 3},/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "yK" = (/obj/machinery/chemical_dispenser/ert,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "yL" = (/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/control) -"yM" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/evac) +"yM" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/evac) "yN" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/control) "yO" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/control) "yP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor,/area/centcom/control) @@ -1303,7 +1303,7 @@ "zc" = (/obj/structure/table/reinforced,/obj/item/device/megaphone,/obj/item/device/megaphone,/obj/item/device/megaphone,/obj/item/device/megaphone,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "zd" = (/obj/machinery/telecomms/relay/preset/centcom,/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/creed) "ze" = (/obj/structure/closet/crate,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) -"zf" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/weapon/handcuffs,/obj/item/weapon/melee/classic_baton,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/control) +"zf" = (/obj/structure/table/standard,/obj/item/device/assembly/signaler,/obj/item/weapon/handcuffs,/obj/item/weapon/melee/classic_baton,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/control) "zg" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "zh" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "specops_centcom_dock"; name = "docking port controller"; pixel_x = 0; pixel_y = -25; req_one_access = list(103); tag_door = "specops_centcom_dock_door"},/turf/unsimulated/floor{icon_state = "vault"; dir = 8},/area/centcom/specops) "zi" = (/obj/machinery/door/airlock/centcom{name = "Holding Cell"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) @@ -1388,7 +1388,7 @@ "AJ" = (/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/holding) "AK" = (/turf/unsimulated/wall{icon_state = "iron3"},/area/syndicate_mothership{name = "\improper Raider Base"}) "AL" = (/obj/structure/bed/chair/holochair,/turf/simulated/floor/holofloor{icon_state = "dark"},/area/holodeck/source_courtroom) -"AM" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/extinguisher,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge West"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"AM" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/extinguisher,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge West"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) "AN" = (/obj/structure/window/reinforced/holowindow{dir = 1},/obj/structure/window/reinforced/holowindow{dir = 8},/obj/structure/table/woodentable/holotable,/turf/simulated/floor/holofloor{icon_state = "carpet6-2"; dir = 4},/area/holodeck/source_courtroom) "AO" = (/obj/machinery/door/window/holowindoor{name = "Red Team"},/turf/simulated/floor/holofloor{icon_state = "dark"},/area/holodeck/source_emptycourt) "AP" = (/turf/unsimulated/floor{icon_state = "green"; dir = 4},/area/centcom/holding) @@ -1402,13 +1402,13 @@ "AX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{name = "plating"},/area/centcom/ferry) "AY" = (/turf/unsimulated/floor{icon_state = "warnplate"; dir = 8},/area/centcom/ferry) "AZ" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ba" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb2,/obj/effect/decal/cleanable/cobweb2{icon_state = "spiderling"; name = "dead spider"; tag = "icon-spiderling"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ba" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/cobweb2,/obj/effect/decal/cleanable/cobweb2{icon_state = "spiderling"; name = "dead spider"; tag = "icon-spiderling"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Bb" = (/obj/machinery/door/blast/regular{id = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/holding) "Bc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/holding) "Bd" = (/obj/machinery/door/airlock/centcom{name = "Arrivals Processing"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) "Be" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/centcom/holding) "Bf" = (/obj/machinery/door/airlock/glass_security{name = "Holding Cell"; req_access = list(2)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) -"Bg" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Bg" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "Bh" = (/turf/simulated/floor/holofloor/grass,/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/holofloor{dir = 4; icon_state = "wood_siding8"},/area/holodeck/source_picnicarea) "Bi" = (/turf/simulated/floor/holofloor/grass,/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/holofloor{icon_state = "wood_siding6"; dir = 2},/area/holodeck/source_picnicarea) "Bj" = (/turf/simulated/floor/holofloor{icon_state = "asteroid"; dir = 2},/area/holodeck/source_picnicarea) @@ -1442,7 +1442,7 @@ "BL" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor,/area/shuttle/transport1/centcom) "BM" = (/obj/structure/bed,/obj/item/weapon/bedsheet/orange,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) "BN" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_shuttle"; pixel_x = 0; pixel_y = -25; req_one_access = list(13); tag_door = "escape_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"BO" = (/obj/machinery/status_display{pixel_y = 30},/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge East"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"BO" = (/obj/machinery/status_display{pixel_y = 30},/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge East"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) "BP" = (/turf/unsimulated/floor{icon_state = "green"; dir = 10},/area/centcom/holding) "BQ" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) "BR" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) @@ -1512,7 +1512,7 @@ "Dd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/holding) "De" = (/obj/item/weapon/weldingtool,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "Df" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Dg" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 2; pixel_y = 3},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"Dg" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 2; pixel_y = 3},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "Dh" = (/turf/unsimulated/beach/sand{tag = "icon-desert3"; icon_state = "desert3"},/turf/unsimulated/floor{tag = "icon-siding4"; name = "plating"; icon_state = "siding4"},/area/centcom/holding) "Di" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{tag = "icon-siding8"; name = "plating"; icon_state = "siding8"},/area/centcom/holding) "Dj" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/amanita_pie,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) @@ -1610,7 +1610,7 @@ "EX" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "greencorner"; dir = 8},/area/centcom/holding) "EY" = (/obj/machinery/hologram/holopad,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) "EZ" = (/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/holding) -"Fa" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "floor"},/area/tdome) +"Fa" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "floor"},/area/tdome) "Fb" = (/turf/unsimulated/floor{icon_state = "floor"},/area/tdome) "Fc" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/tdome) "Fd" = (/turf/unsimulated/floor{icon_state = "neutral"; dir = 8},/area/tdome) @@ -1625,11 +1625,11 @@ "Fm" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome) "Fn" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "floor"},/area/tdome) "Fo" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome) -"Fp" = (/obj/structure/table,/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-whitecorner"; name = "plating"; icon_state = "whitecorner"},/area/centcom/holding) -"Fq" = (/obj/structure/table,/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/hemostat{pixel_y = 4},/turf/unsimulated/floor{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (SOUTHEAST)"},/area/centcom/holding) -"Fr" = (/obj/structure/table,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/scalpel,/turf/unsimulated/floor{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (SOUTHEAST)"},/area/centcom/holding) -"Fs" = (/obj/structure/table,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/turf/unsimulated/floor{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (SOUTHEAST)"},/area/centcom/holding) -"Ft" = (/obj/structure/table,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/turf/unsimulated/floor{tag = "icon-whitecorner (WEST)"; icon_state = "whitecorner"; dir = 8},/area/centcom/holding) +"Fp" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-whitecorner"; name = "plating"; icon_state = "whitecorner"},/area/centcom/holding) +"Fq" = (/obj/structure/table/standard,/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/hemostat{pixel_y = 4},/turf/unsimulated/floor{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (SOUTHEAST)"},/area/centcom/holding) +"Fr" = (/obj/structure/table/standard,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/scalpel,/turf/unsimulated/floor{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (SOUTHEAST)"},/area/centcom/holding) +"Fs" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/turf/unsimulated/floor{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (SOUTHEAST)"},/area/centcom/holding) +"Ft" = (/obj/structure/table/standard,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/turf/unsimulated/floor{tag = "icon-whitecorner (WEST)"; icon_state = "whitecorner"; dir = 8},/area/centcom/holding) "Fu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/shuttle/plating,/area/centcom/holding) "Fv" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/tdome) "Fw" = (/turf/unsimulated/floor{tag = "icon-whitehall (EAST)"; icon_state = "whitehall"; dir = 4},/area/centcom/holding) @@ -1643,23 +1643,23 @@ "FE" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/holding) "FF" = (/turf/unsimulated/floor{tag = "icon-whitehall (NORTHWEST)"; icon_state = "whitehall"; dir = 9},/area/centcom/holding) "FG" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 0},/turf/unsimulated/wall,/area/centcom/holding) -"FH" = (/obj/structure/table,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/turf/unsimulated/floor{dir = 4; icon_state = "whitegreen"},/area/centcom/holding) +"FH" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/turf/unsimulated/floor{dir = 4; icon_state = "whitegreen"},/area/centcom/holding) "FI" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/shuttle/plating,/area/centcom/holding) "FJ" = (/turf/unsimulated/floor{icon_state = "red"; dir = 10},/area/tdome) "FK" = (/turf/unsimulated/floor{icon_state = "red"; dir = 2},/area/tdome) "FL" = (/turf/unsimulated/floor{icon_state = "green"},/area/tdome) "FM" = (/turf/unsimulated/floor{icon_state = "green"; dir = 6},/area/tdome) -"FN" = (/obj/structure/table,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) +"FN" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) "FO" = (/turf/unsimulated/floor{tag = "icon-escapecorner (EAST)"; icon_state = "escapecorner"; dir = 4},/area/centcom/holding) "FP" = (/obj/machinery/computer/operating,/turf/unsimulated/floor{dir = 1; icon_state = "whitehall"; tag = "icon-whitehall (SOUTHEAST)"},/area/centcom/holding) "FQ" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{tag = "icon-whitecorner (NORTH)"; icon_state = "whitecorner"; dir = 1},/area/centcom/holding) -"FR" = (/obj/structure/table,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) +"FR" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) "FS" = (/obj/machinery/bodyscanner,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/holding) "FT" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{tag = "icon-whitehall (EAST)"; icon_state = "whitehall"; dir = 4},/area/centcom/holding) "FU" = (/obj/structure/bed/roller,/turf/unsimulated/floor{dir = 0; icon_state = "whitegreen"},/area/centcom/holding) -"FV" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/adv{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/turf/unsimulated/floor{dir = 0; icon_state = "whitegreen"},/area/centcom/holding) -"FW" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/turf/unsimulated/floor{dir = 0; icon_state = "whitegreen"},/area/centcom/holding) -"FX" = (/obj/structure/table,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/unsimulated/floor{dir = 6; icon_state = "whitegreen"},/area/centcom/holding) +"FV" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/adv{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/turf/unsimulated/floor{dir = 0; icon_state = "whitegreen"},/area/centcom/holding) +"FW" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/turf/unsimulated/floor{dir = 0; icon_state = "whitegreen"},/area/centcom/holding) +"FX" = (/obj/structure/table/standard,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/unsimulated/floor{dir = 6; icon_state = "whitegreen"},/area/centcom/holding) "FY" = (/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) "FZ" = (/obj/item/tape/engineering{tag = "icon-engineering_v"; icon_state = "engineering_v"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Ga" = (/obj/structure/closet/secure_closet/bar,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) @@ -1667,8 +1667,8 @@ "Gc" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) "Gd" = (/obj/machinery/door/airlock/command{name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) "Ge" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"Gf" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"Gg" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"Gf" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"Gg" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) "Gh" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) "Gi" = (/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) "Gj" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) @@ -1677,8 +1677,8 @@ "Gm" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) "Gn" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) "Go" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"Gp" = (/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/structure/table,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Gq" = (/obj/structure/table,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Gp" = (/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Gq" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) "Gr" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) "Gs" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) "Gt" = (/obj/item/device/camera,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) @@ -1739,22 +1739,22 @@ "Hw" = (/obj/item/weapon/wrench,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) "Hx" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) "Hy" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"Hz" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/unsimulated/beach/sand,/area/beach) -"HA" = (/obj/structure/table,/obj/item/clothing/under/rainbow,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/head/collectable/petehat{pixel_y = 5},/turf/unsimulated/beach/sand,/area/beach) -"HB" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HC" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"Hz" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/unsimulated/beach/sand,/area/beach) +"HA" = (/obj/structure/table/standard,/obj/item/clothing/under/rainbow,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/head/collectable/petehat{pixel_y = 5},/turf/unsimulated/beach/sand,/area/beach) +"HB" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"HC" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) "HD" = (/obj/machinery/computer/pod{id = "thunderdomeaxe"; name = "Thunderdome Axe Supply"},/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) "HE" = (/obj/machinery/computer/pod{id = "thunderdomegen"; name = "Thunderdome General Supply"},/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) "HF" = (/obj/machinery/computer/pod{id = "thunderdomehea"; name = "Thunderdome Heavy Supply"},/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) "HG" = (/obj/machinery/computer/pod{id = "thunderdome"; name = "Thunderdome Blast Door Control"},/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HH" = (/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HI" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HJ" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HK" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HL" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HM" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"HN" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/chips,/turf/unsimulated/beach/sand,/area/beach) -"HO" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/beach/sand,/area/beach) +"HH" = (/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"HI" = (/obj/structure/table/standard,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"HJ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"HK" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"HL" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"HM" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"HN" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/chips,/turf/unsimulated/beach/sand,/area/beach) +"HO" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/beach/sand,/area/beach) "HP" = (/obj/item/weapon/beach_ball,/turf/unsimulated/beach/sand,/area/beach) "HQ" = (/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar Center"},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) "HR" = (/mob/living/simple_animal/crab/Coffee,/turf/unsimulated/beach/sand,/area/beach) @@ -1800,7 +1800,7 @@ "IF" = (/obj/machinery/vending/magivend,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "IG" = (/obj/structure/mineral_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "IH" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) -"II" = (/obj/structure/table,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"II" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) "IJ" = (/obj/structure/table/reinforced,/obj/item/weapon/tray{pixel_y = 5},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) "IK" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals South"; dir = 4},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/holding) "IL" = (/turf/unsimulated/wall{icon_state = "iron14"},/area/syndicate_mothership{name = "\improper Raider Base"}) @@ -1811,7 +1811,7 @@ "IQ" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/shoes/sandal/marisa{desc = "A set of fancy shoes that are as functional as they are comfortable."; name = "Gentlemans Shoes"},/obj/item/clothing/under/gentlesuit,/obj/item/clothing/suit/wizrobe/gentlecoat,/obj/item/clothing/head/wizard/cap,/obj/item/weapon/staff/gentcane,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "IR" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "IS" = (/turf/unsimulated/wall{tag = "icon-iron2"; icon_state = "iron2"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"IT" = (/obj/structure/table,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"IT" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) "IU" = (/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) "IV" = (/obj/machinery/door/airlock/glass_command{name = "Escape Shuttle Cockpit"; req_access = list(19)},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) "IW" = (/obj/structure/bed,/obj/item/weapon/bedsheet/orange,/obj/effect/decal/cleanable/cobweb2{tag = "icon-cobweb1"; icon_state = "cobweb1"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) @@ -1819,7 +1819,7 @@ "IY" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "centcom_shuttle_bay"; name = "shuttle bay controller"; pixel_x = 0; pixel_y = 25; tag_door = "centcom_shuttle_bay_door"},/turf/unsimulated/floor{name = "plating"},/area/centcom/ferry) "IZ" = (/obj/structure/flora/pottedplant{tag = "icon-plant-06"; icon_state = "plant-06"},/turf/simulated/floor/holofloor{icon_state = "wood"; dir = 4},/area/holodeck/source_theatre) "Ja" = (/obj/machinery/computer/shuttle_control{req_access = list(101); shuttle_tag = "Centcom"},/turf/unsimulated/floor{name = "plating"},/area/centcom/ferry) -"Jb" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Jb" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Jc" = (/turf/unsimulated/wall{icon_state = "iron11"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Jd" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "Je" = (/obj/structure/table/woodentable,/obj/item/weapon/dice/d20,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) @@ -1930,7 +1930,7 @@ "Lf" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_west_control"; req_one_access = list(150)},/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/shuttle/skipjack/station) "Lg" = (/turf/simulated/shuttle/wall{dir = 2; icon = 'icons/turf/walls.dmi'; icon_state = "iron6"},/area/shuttle/skipjack/station) "Lh" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) -"Li" = (/obj/structure/table,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) +"Li" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Lj" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Lk" = (/turf/simulated/shuttle/wall{dir = 2; icon = 'icons/turf/walls.dmi'; icon_state = "iron10"},/area/shuttle/skipjack/station) "Ll" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) @@ -1941,7 +1941,7 @@ "Lq" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_y = -32; subspace_transmission = 1; syndie = 1},/obj/machinery/light,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "Lr" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/shuttle/skipjack/station) "Ls" = (/turf/simulated/shuttle/wall{dir = 2; icon = 'icons/turf/walls.dmi'; icon_state = "iron3"},/area/shuttle/skipjack/station) -"Lt" = (/obj/structure/table,/obj/item/weapon/deck,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) +"Lt" = (/obj/structure/table/standard,/obj/item/weapon/deck,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Lu" = (/turf/unsimulated/floor{tag = "icon-ironsand7"; icon_state = "ironsand7"},/turf/unsimulated/floor{tag = "icon-asteroid7"; name = "plating"; icon_state = "asteroid7"},/area/wizard_station) "Lv" = (/turf/unsimulated/floor{tag = "icon-ironsand12"; icon_state = "ironsand12"},/turf/unsimulated/floor{tag = "icon-asteroid2"; name = "plating"; icon_state = "asteroid2"},/area/wizard_station) "Lw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast{id = "skipjack"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) @@ -1993,15 +1993,15 @@ "Mq" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access = list(45)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/holding) "Mr" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Ms" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) -"Mt" = (/obj/structure/table,/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/minihoe,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) -"Mu" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) +"Mt" = (/obj/structure/table/standard,/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/minihoe,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) +"Mu" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mv" = (/obj/machinery/vending/hydroseeds,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mw" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_west_sensor"; pixel_x = 25},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mx" = (/obj/machinery/washing_machine,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "My" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mz" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/sniperrifle,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/obj/item/clothing/head/helmet/space/void/atmos,/obj/item/clothing/suit/space/void/atmos,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "MA" = (/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space/transit/north/shuttlespace_ns12,/area/space) -"MB" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/table/reinforced{icon_state = "table"},/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) +"MB" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/table/reinforced{icon_state = "table"},/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "MC" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 28},/turf/unsimulated/floor{tag = "icon-whitecorner (NORTH)"; icon_state = "whitecorner"; dir = 1},/area/centcom/holding) "MD" = (/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "ME" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "merc_shuttle_sensor"; pixel_x = 8; pixel_y = 25},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) @@ -2047,7 +2047,7 @@ "Ns" = (/obj/machinery/sleeper{icon_state = "sleeper_0-r"; orient = "RIGHT"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "Nt" = (/obj/machinery/sleep_console{icon_state = "sleeperconsole-r"; orient = "RIGHT"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "Nu" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/camera/network/crescent{c_tag = "Shuttle West Storage"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Nv" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/wrench,/turf/unsimulated/floor{dir = 8; icon_state = "whitegreen"},/area/centcom/holding) +"Nv" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/wrench,/turf/unsimulated/floor{dir = 8; icon_state = "whitegreen"},/area/centcom/holding) "Nw" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Medical"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "Nx" = (/obj/machinery/recharge_station,/obj/machinery/camera/network/crescent{c_tag = "Shuttle East Storage"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) "Ny" = (/obj/machinery/hologram/holopad,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) @@ -2062,7 +2062,7 @@ "NH" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "NI" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "NJ" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"NK" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"NK" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "NL" = (/obj/structure/closet/hydrant{pixel_x = -30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) "NM" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "NN" = (/obj/machinery/door/airlock/glass_mining{name = "Shuttle Cargo"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) @@ -2078,8 +2078,8 @@ "NX" = (/turf/unsimulated/beach/sand{tag = "icon-beach (SOUTHEAST)"; icon_state = "beach"; dir = 6},/area/centcom/holding) "NY" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) "NZ" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Oa" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) -"Ob" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/evac) +"Oa" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "redyellowfull"},/area/centcom/living) +"Ob" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/evac) "Oc" = (/obj/structure/table/rack,/obj/item/weapon/rig/light/hacker,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Od" = (/obj/structure/table/rack,/obj/item/weapon/rig/industrial,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Oe" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_locked"; id_tag = "vox_southwest_lock"; locked = 1; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) @@ -2104,20 +2104,20 @@ "Ox" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) "Oy" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/skipjack/station) "Oz" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/shuttle/skipjack/station) -"OA" = (/obj/structure/table,/obj/item/weapon/deck,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/shuttle/skipjack/station) -"OB" = (/obj/structure/table,/obj/item/weapon/legcuffs,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/shuttle/skipjack/station) -"OC" = (/obj/structure/table,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/stack/medical/advanced/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) +"OA" = (/obj/structure/table/standard,/obj/item/weapon/deck,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/shuttle/skipjack/station) +"OB" = (/obj/structure/table/standard,/obj/item/weapon/legcuffs,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/shuttle/skipjack/station) +"OC" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/stack/medical/advanced/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) "OD" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) -"OE" = (/obj/structure/table,/obj/item/weapon/cautery,/obj/item/weapon/retractor,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) +"OE" = (/obj/structure/table/standard,/obj/item/weapon/cautery,/obj/item/weapon/retractor,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) "OF" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/shuttle/skipjack/station) "OG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast{dir = 2; id = "skipjack"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "OH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast{dir = 2; id = "skipjack"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) -"OI" = (/obj/structure/table,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) +"OI" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) "OJ" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) "OK" = (/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) "OL" = (/obj/structure/table/rack,/obj/item/weapon/melee/energy/sword/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "OM" = (/obj/machinery/atmospherics/pipe/tank/air,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) -"ON" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) +"ON" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) "OO" = (/obj/machinery/body_scanconsole,/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) "OP" = (/obj/machinery/atmospherics/pipe/tank/air,/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "OQ" = (/obj/structure/table/rack,/obj/item/clothing/suit/space/vox/stealth,/obj/item/clothing/head/helmet/space/vox/stealth,/obj/item/clothing/shoes/magboots/vox,/obj/item/clothing/gloves/yellow/vox,/obj/item/clothing/glasses/thermal/plain/monocle,/obj/item/clothing/under/vox/vox_robes,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) @@ -2140,7 +2140,7 @@ "Ph" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/shuttle/skipjack/station) "Pi" = (/obj/machinery/light/small,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Pj" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/shuttle/skipjack/station) -"Pk" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) +"Pk" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/skipjack/station) "Pl" = (/obj/structure/bed,/obj/item/weapon/bedsheet/green,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Pm" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_east_vent"; tag_exterior_door = "vox_northeast_lock"; frequency = 1331; id_tag = "vox_east_control"; tag_interior_door = "vox_southeast_lock"; pixel_x = -24; req_access = list(150); tag_chamber_sensor = "vox_east_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1331; id_tag = "vox_east_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Pn" = (/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) diff --git a/maps/exodus-3.dmm b/maps/exodus-3.dmm index 62f0eb6eda..9c37abf823 100644 --- a/maps/exodus-3.dmm +++ b/maps/exodus-3.dmm @@ -12,7 +12,7 @@ "al" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_r"; dir = 8},/turf/space,/area/derelict/ship) "am" = (/turf/simulated/shuttle/wall{icon_state = "swall11"; dir = 2},/area/derelict/ship) "an" = (/obj/machinery/computer/med_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"ao" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"ao" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "ap" = (/turf/simulated/shuttle/wall{icon_state = "swall15"; dir = 2},/area/derelict/ship) "aq" = (/turf/simulated/shuttle/plating,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/derelict/ship) "ar" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/derelict/ship) @@ -27,7 +27,7 @@ "aA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/shuttle/plating,/area/derelict/ship) "aB" = (/obj/machinery/door/airlock/glass{name = "Hibernation Pods"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aC" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"aD" = (/obj/structure/table,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"aD" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aE" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/derelict/ship) "aF" = (/obj/item/device/multitool,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aG" = (/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) @@ -35,7 +35,7 @@ "aI" = (/turf/simulated/shuttle/plating,/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/derelict/ship) "aJ" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 8},/turf/space,/area/derelict/ship) "aK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/shuttle/plating,/area/derelict/ship) -"aL" = (/obj/structure/table,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"aL" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aM" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/derelict/ship) "aN" = (/obj/machinery/door/airlock/glass,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aO" = (/obj/machinery/light_switch{pixel_x = 27},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) @@ -45,17 +45,17 @@ "aS" = (/obj/machinery/door/window,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aT" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aU" = (/obj/structure/lattice,/turf/space,/area/space) -"aV" = (/obj/structure/table,/obj/item/weapon/gun/energy/retro,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"aV" = (/obj/structure/table/standard,/obj/item/weapon/gun/energy/retro,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/shuttle/plating,/area/derelict/ship) "aX" = (/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"aY" = (/obj/structure/table,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"aY" = (/obj/structure/table/standard,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "aZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/shuttle/plating,/area/derelict/ship) "ba" = (/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bb" = (/turf/simulated/shuttle/wall{icon_state = "swall_s6"; dir = 2},/area/space) "bc" = (/turf/simulated/shuttle/wall{icon_state = "swall14"; dir = 2},/area/space) "bd" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/space) "be" = (/turf/simulated/shuttle/wall{icon_state = "swall_s10"; dir = 2},/area/space) -"bf" = (/obj/structure/table,/obj/item/device/analyzer,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"bf" = (/obj/structure/table/standard,/obj/item/device/analyzer,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bg" = (/obj/structure/bed/chair{dir = 8},/obj/effect/decal/remains/human,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bh" = (/obj/machinery/door/airlock/glass{name = "Living Module"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bi" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) @@ -98,13 +98,13 @@ "bT" = (/obj/effect/decal/remains/human,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bU" = (/turf/simulated/shuttle/plating,/turf/simulated/shuttle/wall{icon_state = "swall_f10"; dir = 2},/area/derelict/ship) "bV" = (/obj/machinery/computer/pod{id = "oldship_gun"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"bW" = (/obj/structure/table,/obj/item/weapon/screwdriver,/obj/machinery/light,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"bX" = (/obj/structure/table,/obj/item/device/radio/off,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"bW" = (/obj/structure/table/standard,/obj/item/weapon/screwdriver,/obj/machinery/light,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"bX" = (/obj/structure/table/standard,/obj/item/device/radio/off,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bY" = (/obj/structure/lattice,/obj/structure/grille,/turf/space,/area/space) "bZ" = (/obj/machinery/power/solar/fake,/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/space) "ca" = (/turf/simulated/floor/plating/airless,/area/space) "cb" = (/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh{name = "Cuban Pete-Meat"},/obj/item/weapon/spacecash/c1,/turf/simulated/floor/engine,/area/tcommsat/computer) -"cc" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/folder/yellow,/obj/machinery/light{dir = 1},/obj/machinery/camera/network/telecom{c_tag = "Telecoms Main Computer Room"},/turf/simulated/floor,/area/tcommsat/computer) +"cc" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/weapon/folder/yellow,/obj/machinery/light{dir = 1},/obj/machinery/camera/network/telecom{c_tag = "Telecoms Main Computer Room"},/turf/simulated/floor,/area/tcommsat/computer) "cd" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/space) "ce" = (/turf/simulated/wall/r_wall,/area/space) "cf" = (/turf/simulated/wall/r_wall,/area/turret_protected/tcomsat) @@ -133,9 +133,9 @@ "cC" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/turret_protected/tcomsat) "cD" = (/obj/structure/filingcabinet,/turf/simulated/floor,/area/tcommsat/computer) "cE" = (/obj/machinery/camera/network/telecom{c_tag = "Telecoms West Solars"; dir = 8},/turf/space,/area/space) -"cF" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue{pixel_x = -3; pixel_y = 2},/turf/simulated/floor,/area/tcommsat/computer) -"cG" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/tcommsat/computer) -"cH" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor,/area/tcommsat/computer) +"cF" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue{pixel_x = -3; pixel_y = 2},/turf/simulated/floor,/area/tcommsat/computer) +"cG" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/tcommsat/computer) +"cH" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor,/area/tcommsat/computer) "cI" = (/obj/structure/bed,/obj/item/weapon/bedsheet/orange,/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/tcommsat/computer) "cJ" = (/obj/structure/window/reinforced{dir = 4},/turf/space,/area/turret_protected/tcomsat) "cK" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/turret_protected/tcomsat) @@ -173,7 +173,7 @@ "dq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/airlock/hatch{name = "Telecoms Control Room"; req_access = list(61)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/tcommsat/computer) "dr" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/space,/area/space) "ds" = (/obj/machinery/atmospherics/unary/freezer{dir = 2; icon_state = "freezer_1"; set_temperature = 73; use_power = 1},/turf/simulated/floor,/area/tcommsat/computer) -"dt" = (/obj/machinery/light{dir = 8},/obj/structure/table,/obj/item/device/multitool,/obj/structure/sign/electricshock{pixel_x = -32},/turf/simulated/floor,/area/tcommsat/computer) +"dt" = (/obj/machinery/light{dir = 8},/obj/structure/table/standard,/obj/item/device/multitool,/obj/structure/sign/electricshock{pixel_x = -32},/turf/simulated/floor,/area/tcommsat/computer) "du" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/tcommsat/computer) "dv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/tcommsat/computer) "dw" = (/turf/simulated/wall/r_wall,/area/tcommsat/chamber) @@ -235,7 +235,7 @@ "eA" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/space,/area/turret_protected/tcomsat) "eB" = (/obj/machinery/airlock_sensor/airlock_interior{frequency = 1381; id_tag = "server_access_in_sensor"; name = "interior sensor"; pixel_y = 25},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 32},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "eC" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/turret_protected/tcomsat) -"eD" = (/obj/structure/table,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/simulated/floor,/area/turret_protected/tcomsat) +"eD" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/simulated/floor,/area/turret_protected/tcomsat) "eE" = (/obj/machinery/camera/network/telecom{c_tag = "Telecoms East Solars"; dir = 4},/turf/space,/area/space) "eF" = (/obj/structure/table/rack,/obj/item/weapon/circuitboard/telecomms/processor,/obj/item/weapon/circuitboard/telecomms/processor,/obj/item/weapon/circuitboard/telecomms/receiver,/obj/item/weapon/circuitboard/telecomms/server,/obj/item/weapon/circuitboard/telecomms/server,/obj/item/weapon/circuitboard/telecomms/bus,/obj/item/weapon/circuitboard/telecomms/bus,/obj/item/weapon/circuitboard/telecomms/broadcaster,/turf/simulated/floor,/area/turret_protected/tcomsat) "eG" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 1},/obj/machinery/camera/network/telecom{c_tag = "Telecoms Central Compartment North"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) @@ -246,9 +246,9 @@ "eL" = (/obj/machinery/airlock_sensor/airlock_interior{frequency = 1381; id_tag = "server_access_in_sensor"; master_tag = "server_access_airlock"; name = "interior sensor"; pixel_x = 8; pixel_y = 25},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "eM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/turret_protected/tcomsat) "eN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/turret_protected/tcomsat) -"eO" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/turf/simulated/floor,/area/turret_protected/tcomsat) +"eO" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/turf/simulated/floor,/area/turret_protected/tcomsat) "eP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/turret_protected/tcomsat) -"eQ" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/turf/simulated/floor,/area/turret_protected/tcomsat) +"eQ" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/turf/simulated/floor,/area/turret_protected/tcomsat) "eR" = (/obj/machinery/camera/network/telecom{c_tag = "Telecoms North Solars"; dir = 8},/turf/space,/area/space) "eS" = (/turf/simulated/floor/plating,/area/space) "eT" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/obj/machinery/light{dir = 4},/turf/space,/area/turret_protected/tcomsat) @@ -266,7 +266,7 @@ "ff" = (/obj/machinery/door/airlock/maintenance_hatch{name = "Telecoms Storage"; req_access = list(61)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/turret_protected/tcomsat) "fg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/turret_protected/tcomsat) "fh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/turret_protected/tcomsat) -"fi" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 29; pixel_y = 0},/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/turret_protected/tcomsat) +"fi" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 29; pixel_y = 0},/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/turret_protected/tcomsat) "fj" = (/obj/machinery/telecomms/bus/preset_one,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "fk" = (/obj/machinery/telecomms/processor/preset_one,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "fl" = (/obj/machinery/bluespacerelay,/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Mainframe Floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) @@ -278,10 +278,10 @@ "fr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/turret_protected/tcomsat) "fs" = (/turf/simulated/floor,/area/turret_protected/tcomsat) "ft" = (/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/turret_protected/tcomsat) -"fu" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/turf/simulated/floor,/area/turret_protected/tcomsat) -"fv" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/transmitter,/turf/simulated/floor,/area/turret_protected/tcomsat) -"fw" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/turf/simulated/floor,/area/turret_protected/tcomsat) -"fx" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/turf/simulated/floor,/area/turret_protected/tcomsat) +"fu" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/turf/simulated/floor,/area/turret_protected/tcomsat) +"fv" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/transmitter,/turf/simulated/floor,/area/turret_protected/tcomsat) +"fw" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/turf/simulated/floor,/area/turret_protected/tcomsat) +"fx" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/turf/simulated/floor,/area/turret_protected/tcomsat) "fy" = (/obj/machinery/telecomms/server/presets/science,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "fz" = (/obj/machinery/telecomms/server/presets/medical,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "fA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/turf/simulated/floor/plating,/area/tcommsat/chamber) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 114e31ec87..712411bb11 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -14,8 +14,8 @@ "an" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/hallway) "ao" = (/obj/structure/closet/walllocker/emerglocker/west,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/outpost/research/hallway) "ap" = (/obj/machinery/door/window/westleft{dir = 1; name = "Sample Preparation Loading"; req_access = list(65)},/turf/simulated/floor{dir = 1; icon_state = "whiteblue"},/area/outpost/research/chemistry) -"aq" = (/obj/structure/table,/obj/item/weapon/storage/box/solution_trays,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/outpost/research/chemistry) -"ar" = (/obj/structure/table,/obj/machinery/light{dir = 1},/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) +"aq" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/solution_trays,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/outpost/research/chemistry) +"ar" = (/obj/structure/table/standard,/obj/machinery/light{dir = 1},/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "as" = (/obj/structure/sign/nosmoking_2{pixel_y = 32},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "at" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/outpost/research/chemistry) "au" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/outpost/research/chemistry) @@ -25,7 +25,7 @@ "ay" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) "az" = (/turf/simulated/wall/r_wall,/area/outpost/research/kitchen) "aA" = (/turf/simulated/wall/r_wall,/area/outpost/research/analysis) -"aB" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/turf/simulated/floor{icon_state = "dark"},/area/outpost/research/analysis) +"aB" = (/obj/structure/table/standard,/obj/machinery/light/small{dir = 1},/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/turf/simulated/floor{icon_state = "dark"},/area/outpost/research/analysis) "aC" = (/obj/item/weapon/stool,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/analysis) "aD" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/outpost/research/analysis) "aE" = (/obj/machinery/door/airlock/research{name = "Spectrometry Lab Sample Preparation"; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/analysis) @@ -37,7 +37,7 @@ "aK" = (/turf/simulated/floor,/area/outpost/research/chemistry) "aL" = (/turf/simulated/floor{icon_state = "warning"},/area/outpost/research/chemistry) "aM" = (/obj/structure/sign/botany{pixel_x = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "warningcorner"; dir = 1},/area/outpost/research/chemistry) -"aN" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/analysis) +"aN" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/analysis) "aO" = (/obj/structure/reagent_dispensers/coolanttank,/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/outpost/research/analysis) "aP" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "aQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/outpost/abandoned) @@ -57,13 +57,13 @@ "be" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "bf" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "bg" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) -"bh" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) +"bh" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) "bi" = (/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/plating,/area/outpost/research/chemistry) "bj" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) "bk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "bl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/outpost/abandoned) "bm" = (/turf/simulated/floor,/area/outpost/abandoned) -"bn" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) +"bn" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "bo" = (/turf/simulated/floor{icon_state = "white"},/area/outpost/research/analysis) "bp" = (/obj/machinery/disposal,/obj/structure/sign/deathsposal{pixel_y = 32},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor,/area/outpost/research/chemistry) "bq" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/hallway) @@ -77,13 +77,13 @@ "by" = (/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/outpost/research/chemistry) "bz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/outpost/research/chemistry) "bA" = (/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) -"bB" = (/obj/structure/table,/obj/machinery/bunsen_burner,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) +"bB" = (/obj/structure/table/standard,/obj/machinery/bunsen_burner,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "bC" = (/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) "bD" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "bE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/outpost/abandoned) "bF" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/research{name = "Sample Preparation"; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "bG" = (/obj/machinery/artifact_analyser,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/bluegrid,/area/outpost/research/lab) -"bH" = (/obj/structure/table,/obj/item/weapon/flame/lighter/random,/obj/item/weapon/crowbar,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) +"bH" = (/obj/structure/table/standard,/obj/item/weapon/flame/lighter/random,/obj/item/weapon/crowbar,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) "bI" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -27},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 4; icon_state = "whitepurple"},/area/outpost/research/lab) "bJ" = (/obj/machinery/conveyor{dir = 1; id = "anolaser"},/obj/structure/plasticflaps,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/outpost/research/lab) "bK" = (/obj/machinery/conveyor_switch{id = "anolaser"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) @@ -92,15 +92,15 @@ "bN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/research/hallway) "bO" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 4; icon_state = "whiteyellow"},/area/outpost/research/hallway) "bP" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/hallway) -"bQ" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor/wood,/area/outpost/research/kitchen) -"bR" = (/obj/structure/table,/turf/simulated/floor/wood,/area/outpost/research/kitchen) -"bS" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor/wood,/area/outpost/research/kitchen) +"bQ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor/wood,/area/outpost/research/kitchen) +"bR" = (/obj/structure/table/standard,/turf/simulated/floor/wood,/area/outpost/research/kitchen) +"bS" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor/wood,/area/outpost/research/kitchen) "bT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_x = 32; pixel_y = 0},/obj/structure/lattice,/turf/space,/area/space) "bU" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/research{name = "Spectrometry Lab"; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "bV" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "bW" = (/obj/item/stack/rods,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "bX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Hallway Fore"; dir = 4},/turf/simulated/floor,/area/outpost/research/hallway) -"bY" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/dropper{pixel_y = -4},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) +"bY" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/dropper{pixel_y = -4},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) "bZ" = (/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) "ca" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) "cb" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor{dir = 2; icon_state = "whitepurplecorner"},/area/outpost/research/lab) @@ -141,7 +141,7 @@ "cK" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/research{name = "Anomalous Materials"; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "cL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/outpost/research/lab) "cM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/outpost/research/lab) -"cN" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor/wood,/area/outpost/research/kitchen) +"cN" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/simulated/floor/wood,/area/outpost/research/kitchen) "cO" = (/obj/machinery/vending/snack,/turf/simulated/floor/wood,/area/outpost/research/kitchen) "cP" = (/obj/item/weapon/shard,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "cQ" = (/obj/machinery/alarm{dir = 2; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) @@ -153,11 +153,11 @@ "cW" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = -30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "cX" = (/obj/structure/noticeboard/anomaly{icon_state = "nboard05"; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "cY" = (/obj/structure/disposalpipe/segment,/obj/machinery/light/small{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = -25; pixel_y = 0},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 4; icon_state = "whitepurple"},/area/outpost/research/lab) -"cZ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/dropper{pixel_y = -4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) +"cZ" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/dropper{pixel_y = -4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) "da" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) "db" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/outpost/research/hallway) "dc" = (/obj/structure/closet/walllocker/emerglocker/north,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/outpost/research/hallway) -"dd" = (/obj/structure/table,/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) +"dd" = (/obj/structure/table/standard,/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) "de" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/outpost/research/hallway) "df" = (/turf/simulated/floor{dir = 4; icon_state = "whiteyellow"},/area/outpost/research/hallway) "dg" = (/obj/structure/extinguisher_cabinet{pixel_x = -25; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "whitepurplecorner"},/area/outpost/research/hallway) @@ -183,8 +183,8 @@ "dA" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "dB" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/wood,/area/outpost/research/hallway) "dC" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/wood,/area/outpost/research/hallway) -"dD" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/clipboard,/obj/item/weapon/pen,/obj/item/weapon/tape_roll,/turf/simulated/floor/wood,/area/outpost/research/hallway) -"dE" = (/obj/structure/table,/obj/item/device/camera,/obj/item/weapon/stamp,/obj/item/weapon/folder,/turf/simulated/floor/wood,/area/outpost/research/hallway) +"dD" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/clipboard,/obj/item/weapon/pen,/obj/item/weapon/tape_roll,/turf/simulated/floor/wood,/area/outpost/research/hallway) +"dE" = (/obj/structure/table/standard,/obj/item/device/camera,/obj/item/weapon/stamp,/obj/item/weapon/folder,/turf/simulated/floor/wood,/area/outpost/research/hallway) "dF" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/wood,/area/outpost/research/hallway) "dG" = (/turf/simulated/floor/wood,/area/outpost/research/hallway) "dH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/research/hallway) @@ -194,8 +194,8 @@ "dL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "dM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "dN" = (/obj/machinery/light/small,/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) -"dO" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/item/weapon/melee/baton/loaded,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) -"dP" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker/water,/obj/item/weapon/reagent_containers/glass/beaker/fuel,/obj/item/weapon/reagent_containers/glass/bottle/toxin,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric{name = "beaker 'sulphuric acid'"},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Sample Preparation"; dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) +"dO" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/item/weapon/melee/baton/loaded,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) +"dP" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/water,/obj/item/weapon/reagent_containers/glass/beaker/fuel,/obj/item/weapon/reagent_containers/glass/bottle/toxin,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric{name = "beaker 'sulphuric acid'"},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Sample Preparation"; dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) "dQ" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 4},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/simulated/floor/plating/airless,/area/shuttle/alien/mine) "dR" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/alien/mine) "dS" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/alien/mine) @@ -213,8 +213,8 @@ "ee" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/wall/r_wall,/area/outpost/research/disposal) "ef" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/outpost/research/disposal) "eg" = (/obj/structure/disposaloutlet{dir = 2},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/outpost/research/disposal) -"eh" = (/obj/structure/table,/turf/simulated/floor/wood,/area/outpost/research/hallway) -"ei" = (/obj/structure/table,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/simulated/floor/wood,/area/outpost/research/hallway) +"eh" = (/obj/structure/table/standard,/turf/simulated/floor/wood,/area/outpost/research/hallway) +"ei" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/simulated/floor/wood,/area/outpost/research/hallway) "ej" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/research/hallway) "ek" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) "el" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/outpost/abandoned) @@ -289,8 +289,8 @@ "fC" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/outpost/research/disposal) "fD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/research/disposal) "fE" = (/turf/simulated/floor/plating/airless,/area/outpost/abandoned) -"fF" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) -"fG" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/outpost/abandoned) +"fF" = (/obj/structure/table/standard,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) +"fG" = (/obj/structure/table/standard,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/outpost/abandoned) "fH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "fI" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "fJ" = (/obj/structure/bed/chair{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 25; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) @@ -357,17 +357,17 @@ "gS" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/outpost/research/dock) "gT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'VACUUM'"; icon_state = "space"; layer = 4; name = "VACUUM"; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "warningcorner"; dir = 4},/area/outpost/research/dock) "gU" = (/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/medical) -"gV" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/toxin,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/medical) +"gV" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/toxin,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/medical) "gW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/outpost/research/dock) "gX" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/dock) "gY" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/outpost/research/eva) "gZ" = (/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/outpost/research/eva) -"ha" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/fire,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/medical) +"ha" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/fire,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/medical) "hb" = (/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "hc" = (/obj/effect/alien/weeds{icon_state = "weeds1"},/obj/effect/decal/remains/xeno,/turf/simulated/floor/plating,/area/outpost/abandoned) "hd" = (/obj/effect/gibspawner/human,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/outpost/abandoned) "he" = (/obj/effect/gibspawner/robot,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) -"hf" = (/obj/structure/table,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor{dir = 2; icon_state = "arrival"},/area/outpost/research/dock) +"hf" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor{dir = 2; icon_state = "arrival"},/area/outpost/research/dock) "hg" = (/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Kitchen"; dir = 8},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) "hh" = (/obj/structure/closet/emcloset,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor,/area/outpost/research/dock) "hi" = (/obj/machinery/light,/turf/simulated/floor{icon_state = "bluecorner"},/area/outpost/research/dock) @@ -386,7 +386,7 @@ "hv" = (/obj/machinery/door/airlock/maintenance{name = "Maintenance Storage"; req_one_access = list(12,65)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "hw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/research/isolation_monitoring) "hx" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/research/isolation_monitoring) -"hy" = (/obj/structure/table,/obj/item/weapon/anobattery{pixel_x = -6; pixel_y = 2},/obj/item/weapon/anobattery{pixel_x = -2; pixel_y = -2},/obj/item/weapon/anobattery{pixel_x = 2; pixel_y = 2},/obj/item/weapon/anobattery{pixel_x = 6; pixel_y = 6},/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) +"hy" = (/obj/structure/table/standard,/obj/item/weapon/anobattery{pixel_x = -6; pixel_y = 2},/obj/item/weapon/anobattery{pixel_x = -2; pixel_y = -2},/obj/item/weapon/anobattery{pixel_x = 2; pixel_y = 2},/obj/item/weapon/anobattery{pixel_x = 6; pixel_y = 6},/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) "hz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) "hA" = (/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) "hB" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/research/anomaly_analysis) @@ -402,7 +402,7 @@ "hL" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/outpost/abandoned) "hM" = (/obj/structure/table/rack,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/outpost/abandoned) "hN" = (/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) -"hO" = (/obj/structure/table,/turf/simulated/floor/airless,/area/outpost/abandoned) +"hO" = (/obj/structure/table/standard,/turf/simulated/floor/airless,/area/outpost/abandoned) "hP" = (/obj/effect/decal/remains/human,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) "hQ" = (/obj/effect/alien/weeds,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "hR" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/outpost/abandoned) @@ -436,7 +436,7 @@ "it" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "whitepurplecorner"},/area/outpost/research/hallway) "iu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "iv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) -"iw" = (/obj/structure/table,/obj/item/weapon/anodevice{pixel_x = 3; pixel_y = 3},/obj/item/weapon/anodevice,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) +"iw" = (/obj/structure/table/standard,/obj/item/weapon/anodevice{pixel_x = 3; pixel_y = 3},/obj/item/weapon/anodevice,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) "ix" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/outpost/research/anomaly_analysis) "iy" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/research/anomaly_analysis) "iz" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/external{name = "Access Airlock"; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/research/anomaly_analysis) @@ -455,20 +455,20 @@ "iM" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/research/hallway) "iN" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/plating,/area/outpost/research/chemistry) "iO" = (/obj/structure/closet/hydrant{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plating,/area/outpost/research/chemistry) -"iP" = (/obj/structure/table,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/cell,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/outpost/research/chemistry) +"iP" = (/obj/structure/table/standard,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/cell,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/outpost/research/chemistry) "iQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/outpost/research/hallway) "iR" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/outpost/research/hallway) "iS" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor,/area/outpost/research/chemistry) "iT" = (/turf/simulated/floor/plating,/area/outpost/research/chemistry) "iU" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/outpost/research/chemistry) "iV" = (/turf/simulated/wall,/area/outpost/research/chemistry) -"iW" = (/obj/structure/table,/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/outpost/research/chemistry) +"iW" = (/obj/structure/table/standard,/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor,/area/outpost/research/chemistry) "iX" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) "iY" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "iZ" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/carpet,/area/outpost/research/hallway) "ja" = (/obj/machinery/button/remote/airlock{id = "rdorm2"; name = "Door Bolt Control"; pixel_x = -25; pixel_y = 0; specialfunctions = 4},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet,/area/outpost/research/hallway) "jb" = (/obj/structure/table/rack,/obj/item/stack/sheet/metal{amount = 50; pixel_x = 5; pixel_y = 5},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/belt/utility{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/toolbox/emergency{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/plating,/area/outpost/research/chemistry) -"jc" = (/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet,/area/outpost/research/hallway) +"jc" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet,/area/outpost/research/hallway) "jd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/research/chemistry) "je" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/outpost/research/kitchen) "jf" = (/obj/machinery/button/remote/airlock{id = "rddorm1"; name = "Door Bolt Control"; pixel_x = 25; pixel_y = 0; specialfunctions = 4},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet,/area/outpost/research/hallway) @@ -480,7 +480,7 @@ "jl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/research/hallway) "jm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/outpost/research/hallway) "jn" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock{id_tag = "rddorm1"; name = "Dorm 1"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/outpost/research/hallway) -"jo" = (/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/carpet,/area/outpost/research/hallway) +"jo" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/carpet,/area/outpost/research/hallway) "jp" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/minihoe,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 13; pixel_y = 5},/obj/item/weedkiller/triclopyr,/obj/item/weapon/reagent_containers/glass/fertilizer/ez,/turf/simulated/floor/plating,/area/outpost/research/chemistry) "jq" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) "jr" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/maintenance{name = "Auxiliary Storage"; req_one_access = list(65,12)},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) @@ -521,7 +521,7 @@ "ka" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/research{name = "Anomalous Materials Locker Room"; req_access = list(65)},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "kb" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/plating,/area/outpost/mining_north) "kc" = (/obj/effect/decal/cleanable/cobweb,/obj/item/stack/sheet/metal{amount = 10},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/glasses/meson,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/plating,/area/outpost/mining_north) -"kd" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb2,/obj/machinery/microwave{pixel_y = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) +"kd" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/cobweb2,/obj/machinery/microwave{pixel_y = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "ke" = (/obj/machinery/recharge_station,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "kf" = (/obj/structure/bed/chair,/obj/effect/decal/cleanable/dirt,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "kg" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/outpost/mining_north) @@ -535,7 +535,7 @@ "ko" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Hallway Central"; dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "kp" = (/obj/machinery/atmospherics/pipe/simple/visible/supply{tag = "icon-intact-supply (NORTHEAST)"; icon_state = "intact-supply"; dir = 5},/obj/machinery/atmospherics/pipe/simple/visible/scrubbers{tag = "icon-intact-scrubbers (NORTHEAST)"; icon_state = "intact-scrubbers"; dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/power) "kq" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_north_outpost_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 25; req_one_access = list(13,54)},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"; tag = "icon-intact-f (NORTHWEST)"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) -"kr" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/kitchen) +"kr" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/kitchen) "ks" = (/obj/machinery/atmospherics/pipe/simple/visible/scrubbers{tag = "icon-intact-scrubbers (SOUTHWEST)"; icon_state = "intact-scrubbers"; dir = 10},/turf/simulated/floor,/area/outpost/research/power) "kt" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "ku" = (/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/research/isolation_monitoring) @@ -588,7 +588,7 @@ "lp" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/research/eva) "lq" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/outpost/research/eva) "lr" = (/obj/machinery/conveyor_switch{id = "anotempload"; name = "conveyor switch"; pixel_x = 0; pixel_y = 0; req_access = list(65)},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) -"ls" = (/obj/structure/table,/obj/item/weapon/storage/box/excavation,/obj/item/weapon/pickaxe,/obj/machinery/status_display{layer = 4; pixel_x = 32; pixel_y = 0},/obj/item/weapon/wrench,/obj/item/device/measuring_tape,/obj/item/stack/flag/yellow,/turf/simulated/floor,/area/outpost/research/eva) +"ls" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/excavation,/obj/item/weapon/pickaxe,/obj/machinery/status_display{layer = 4; pixel_x = 32; pixel_y = 0},/obj/item/weapon/wrench,/obj/item/device/measuring_tape,/obj/item/stack/flag/yellow,/turf/simulated/floor,/area/outpost/research/eva) "lt" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/turf/simulated/floor,/area/outpost/research/eva) "lu" = (/turf/simulated/wall/r_wall,/area/outpost/research/anomaly_storage) "lv" = (/obj/structure/table/rack,/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 5},/obj/item/weapon/storage/box/samplebags{pixel_x = 3; pixel_y = -3},/obj/item/weapon/storage/toolbox/emergency{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) @@ -615,7 +615,7 @@ "lQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/outpost/research/hallway) "lR" = (/obj/machinery/suspension_gen,/turf/simulated/floor,/area/outpost/research/eva) "lS" = (/obj/machinery/conveyor{dir = 2; id = "anominerals"},/obj/machinery/mineral/output,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/research/eva) -"lT" = (/obj/structure/table,/obj/item/weapon/storage/box/excavation,/obj/item/weapon/pickaxe,/obj/item/weapon/wrench,/obj/item/device/measuring_tape,/obj/item/stack/flag/green,/turf/simulated/floor,/area/outpost/research/eva) +"lT" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/excavation,/obj/item/weapon/pickaxe,/obj/item/weapon/wrench,/obj/item/device/measuring_tape,/obj/item/stack/flag/green,/turf/simulated/floor,/area/outpost/research/eva) "lU" = (/obj/machinery/door/airlock/external{id_tag = "riso1"; name = "Access Airlock"; req_access = list(65)},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/isolation_a) "lV" = (/obj/machinery/door/airlock/external{id_tag = "riso2"; name = "Access Airlock"; req_access = list(65)},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/isolation_b) "lW" = (/obj/machinery/atmospherics/unary/freezer{dir = 4; icon_state = "freezer"},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) @@ -640,16 +640,16 @@ "mp" = (/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_storage) "mq" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "mr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Hallway Aft"; dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/outpost/research/hallway) -"ms" = (/obj/structure/table,/obj/item/weapon/folder,/obj/item/device/camera,/obj/item/weapon/pen,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"ms" = (/obj/structure/table/standard,/obj/item/weapon/folder,/obj/item/device/camera,/obj/item/weapon/pen,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mt" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_storage) "mu" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "mv" = (/obj/machinery/atmospherics/binary/pump{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mw" = (/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mx" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) -"my" = (/obj/structure/table,/obj/item/clothing/gloves/latex,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"my" = (/obj/structure/table/standard,/obj/item/clothing/gloves/latex,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mz" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/door/window{dir = 4; name = "Air Tank Access"; req_one_access = list(47,10,24)},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/outpost/research/eva) "mA" = (/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/obj/machinery/atmospherics/pipe/manifold/visible/supply,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) -"mB" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"mB" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mC" = (/obj/structure/plasticflaps/mining,/obj/machinery/conveyor{dir = 2; id = "anotempload"},/turf/simulated/floor/plating,/area/outpost/research/eva) "mD" = (/obj/machinery/conveyor{dir = 1; id = "anosample"},/obj/structure/plasticflaps/mining,/turf/simulated/floor/plating,/area/outpost/research/eva) "mE" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) @@ -700,14 +700,14 @@ "nx" = (/obj/machinery/door/airlock/glass{name = "Glass Airlock"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/outpost/abandoned) "ny" = (/obj/machinery/artifact_scanpad,/obj/machinery/light/small,/turf/simulated/floor/bluegrid,/area/outpost/research/anomaly_analysis) "nz" = (/obj/machinery/alarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/outpost/research/anomaly_analysis) -"nA" = (/obj/structure/table,/obj/machinery/computer/atmoscontrol/laptop{monitored_alarm_ids = list("isolation_one","isolation_two","isolation_three"); req_one_access = list(47,24,11)},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"nA" = (/obj/structure/table/standard,/obj/machinery/computer/atmoscontrol/laptop{monitored_alarm_ids = list("isolation_one","isolation_two","isolation_three"); req_one_access = list(47,24,11)},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "nB" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_storage) "nC" = (/obj/structure/bed,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "nD" = (/obj/machinery/light_construct/small{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "nE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "nF" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "nG" = (/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/obj/machinery/atmospherics/pipe/simple/visible/supply,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) -"nH" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/tape_roll,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"nH" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/tape_roll,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "nI" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "nJ" = (/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "nK" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) @@ -728,13 +728,13 @@ "nZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/research/eva) "oa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor,/area/outpost/research/eva) "ob" = (/obj/machinery/atmospherics/omni/filter{tag_east = 1; tag_south = 2; tag_west = 3},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) -"oc" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{dir = 2; icon_state = "cmo"},/area/outpost/research/dock) +"oc" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{dir = 2; icon_state = "cmo"},/area/outpost/research/dock) "od" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{pixel_y = 24},/turf/simulated/floor,/area/outpost/research/eva) "oe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/eva) "of" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/anomaly,/obj/item/clothing/head/helmet/space/anomaly,/obj/item/clothing/mask/breath,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor,/area/outpost/research/eva) "og" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/outpost/research/eva) "oh" = (/obj/structure/closet/excavation,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/outpost/research/eva) -"oi" = (/obj/structure/table,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"oi" = (/obj/structure/table/standard,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "oj" = (/obj/structure/bed/chair/office/light,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "ok" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "ol" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) @@ -756,7 +756,7 @@ "oB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_storage) "oC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/closet/walllocker/emerglocker/west,/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "oD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) -"oE" = (/obj/structure/table,/obj/item/weapon/paper/crumpled,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) +"oE" = (/obj/structure/table/standard,/obj/item/weapon/paper/crumpled,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "oF" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "oG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "oH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) @@ -765,7 +765,7 @@ "oK" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/outpost/research/power) "oL" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille/broken,/obj/item/stack/rods,/obj/item/weapon/shard,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/outpost/abandoned) "oM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille/broken,/obj/item/weapon/shard{icon_state = "small"},/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) -"oN" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_b) +"oN" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_b) "oO" = (/obj/machinery/artifact_scanpad,/obj/machinery/light,/turf/simulated/floor/bluegrid,/area/outpost/research/isolation_a) "oP" = (/obj/machinery/artifact_analyser,/turf/simulated/floor/bluegrid,/area/outpost/research/isolation_a) "oQ" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_c) @@ -774,18 +774,18 @@ "oT" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'MOVING PARTS'."; name = "\improper MOVING PARTS"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"},/area/outpost/research/power) "oU" = (/obj/machinery/atmospherics/pipe/simple/visible/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible/supply{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor,/area/outpost/research/power) "oV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) -"oW" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_a) +"oW" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_a) "oX" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/outpost/research/power) "oY" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "oZ" = (/obj/machinery/atmospherics/pipe/simple/visible/scrubbers{tag = "icon-intact-scrubbers (NORTHWEST)"; icon_state = "intact-scrubbers"; dir = 9},/turf/simulated/floor,/area/outpost/research/power) "pa" = (/obj/structure/bed,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_c) -"pb" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/light,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_c) +"pb" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/obj/machinery/light,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_c) "pc" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "pd" = (/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Medbay"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/medical) "pe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) "pf" = (/turf/simulated/wall/r_wall,/area/outpost/research/isolation_b) "pg" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) -"ph" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) +"ph" = (/obj/structure/table/standard,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) "pi" = (/obj/structure/girder,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/outpost/abandoned) "pj" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/space,/area/mine/explored) "pk" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/outpost/research/eva) @@ -822,7 +822,7 @@ "pP" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Isolation Port"; dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "pQ" = (/obj/structure/table/rack,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "pR" = (/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -27},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_b) -"pS" = (/obj/structure/table,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) +"pS" = (/obj/structure/table/standard,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "pT" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "pU" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "pV" = (/obj/structure/table/rack,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) @@ -1061,7 +1061,7 @@ "uu" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) "uv" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "eoutpost_main_outer"; locked = 1; name = "Engineering Outpost"},/turf/simulated/floor,/area/outpost/engineering/hallway) "uw" = (/turf/simulated/floor,/area/outpost/engineering/storage) -"ux" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/wood{amount = 30},/obj/item/stack/sheet/mineral/plastic{amount = 10},/turf/simulated/floor,/area/outpost/engineering/storage) +"ux" = (/obj/structure/table/standard,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/wood{amount = 30},/obj/item/stack/sheet/mineral/plastic{amount = 10},/turf/simulated/floor,/area/outpost/engineering/storage) "uy" = (/turf/simulated/wall/r_wall,/area/outpost/engineering/storage) "uz" = (/obj/structure/table/rack,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/outpost/engineering/storage) "uA" = (/turf/simulated/floor/wood,/area/outpost/engineering/meeting) @@ -1073,12 +1073,12 @@ "uG" = (/obj/machinery/vending/snack,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "uH" = (/obj/structure/flora/pottedplant{tag = "icon-plant-21"; icon_state = "plant-21"},/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "uI" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) -"uJ" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) -"uK" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) +"uJ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) +"uK" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) "uL" = (/turf/simulated/wall/r_wall,/area/outpost/engineering/power) "uM" = (/obj/structure/bed/chair,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) "uN" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/bed/chair,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) -"uO" = (/obj/structure/table,/obj/random/tech_supply,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) +"uO" = (/obj/structure/table/standard,/obj/random/tech_supply,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "uP" = (/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) "uQ" = (/obj/structure/table/rack,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil,/turf/simulated/floor,/area/outpost/engineering/storage) "uR" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor,/area/outpost/engineering/storage) @@ -1126,16 +1126,16 @@ "vH" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/sign/vacuum{pixel_y = -32},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "vI" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor,/area/outpost/engineering/storage) "vJ" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Storage"; req_access = list(10)},/turf/simulated/floor,/area/outpost/engineering/storage) -"vK" = (/obj/machinery/light{dir = 8},/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) +"vK" = (/obj/machinery/light{dir = 8},/obj/structure/table/standard,/obj/machinery/microwave,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "vL" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "vM" = (/turf/simulated/wall/r_wall,/area/outpost/engineering/telecomms) "vN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 82.1472; oxygen = 21.8366; temperature = 293.15},/area/outpost/engineering/telecomms) "vO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Server Walkway"; nitrogen = 82.1472; oxygen = 21.8366; temperature = 293.15},/area/outpost/engineering/telecomms) "vP" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"; tag = "icon-intact-f (SOUTHEAST)"},/obj/machinery/light{dir = 1},/obj/structure/closet/walllocker/emerglocker/north,/turf/simulated/floor,/area/outpost/engineering/hallway) -"vQ" = (/obj/structure/table,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) +"vQ" = (/obj/structure/table/standard,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "vR" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/storage) -"vS" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) -"vT" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) +"vS" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) +"vT" = (/obj/structure/table/standard,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) "vU" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor,/area/outpost/engineering/storage) "vV" = (/obj/machinery/telecomms/relay/preset/mining,/obj/machinery/light{dir = 1},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Server Walkway"; nitrogen = 82.1472; oxygen = 21.8366; temperature = 293.15},/area/outpost/engineering/telecomms) "vW" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/alarm{frequency = 1439; pixel_y = 22},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 82.1472; oxygen = 21.8366; temperature = 293.15},/area/outpost/engineering/telecomms) @@ -1161,7 +1161,7 @@ "wq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/space) "wr" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless,/area/space) "ws" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/space) -"wt" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) +"wt" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "wu" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/machinery/power/apc/super{dir = 1; pixel_y = 24},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "wv" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/turf/simulated/floor,/area/outpost/engineering/hallway) "ww" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact-f (EAST)"},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) @@ -1172,13 +1172,13 @@ "wB" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/terminal,/turf/simulated/floor,/area/outpost/engineering/power) "wC" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 28},/turf/simulated/floor,/area/outpost/engineering/hallway) "wD" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/machinery/power/sensor{long_range = 1; name_tag = "Asteroid Main Grid"},/turf/simulated/floor,/area/outpost/engineering/power) -"wE" = (/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) -"wF" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) +"wE" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) +"wF" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor/carpet,/area/outpost/engineering/meeting) "wG" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/pipedispenser,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "wH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/storage) "wI" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "wJ" = (/obj/structure/table/rack,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/item/stack/cable_coil/yellow,/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/outpost/engineering/storage) -"wK" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) +"wK" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) "wL" = (/obj/structure/cable/yellow,/turf/simulated/floor/plating/airless,/area/space) "wM" = (/obj/machinery/status_display{layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "wN" = (/turf/simulated/wall,/area/outpost/mining_main/east_hall) @@ -1195,7 +1195,7 @@ "wY" = (/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/outpost/mining_main/medbay) "wZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "white"},/area/outpost/mining_main/medbay) "xa" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/effect/decal/cleanable/dirt,/obj/structure/sign/securearea{desc = "A warning sign which reads 'MOVING PARTS'."; name = "\improper MOVING PARTS"; pixel_y = -32},/turf/simulated/floor{dir = 8; icon_state = "loadingarea"},/area/outpost/mining_north) -"xb" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/table,/obj/random/tech_supply,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) +"xb" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/table/standard,/obj/random/tech_supply,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "xc" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) "xd" = (/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/sensor{long_range = 1; name_tag = "Mining Outpost"},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) "xe" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "eoutpost_solar_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(10)},/turf/simulated/floor/plating/airless,/area/outpost/engineering/hallway) @@ -1217,7 +1217,7 @@ "xu" = (/obj/machinery/sleep_console,/turf/simulated/floor{icon_state = "warnwhite"; dir = 5},/area/outpost/mining_main/medbay) "xv" = (/obj/structure/ore_box,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "xw" = (/obj/machinery/sleeper,/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/outpost/mining_main/medbay) -"xx" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor{icon_state = "white"},/area/outpost/mining_main/medbay) +"xx" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor{icon_state = "white"},/area/outpost/mining_main/medbay) "xy" = (/obj/structure/disposaloutlet{dir = 1},/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "xz" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/obj/machinery/light/small{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) "xA" = (/obj/machinery/atmospherics/valve/digital/open{dir = 4},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) @@ -1305,7 +1305,7 @@ "ze" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -27},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "zf" = (/turf/simulated/wall/r_wall,/area/outpost/mining_main/east_hall) "zg" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor,/area/outpost/engineering/hallway) -"zh" = (/obj/structure/table,/obj/machinery/microwave{pixel_y = 6},/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) +"zh" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_y = 6},/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) "zi" = (/turf/simulated/wall,/area/outpost/mining_main/dorms) "zj" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) "zk" = (/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) @@ -1313,7 +1313,7 @@ "zm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_west) "zn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_west) "zo" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "eoutpost_solar_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "eoutpost_solar_airlock"; pixel_x = 0; pixel_y = -25; req_access = list(10); tag_airpump = "eoutpost_solar_pump"; tag_chamber_sensor = "eoutpost_solar_sensor"; tag_exterior_door = "eoutpost_solar_outer"; tag_interior_door = "eoutpost_solar_inner"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "eoutpost_solar_sensor"; pixel_x = 0; pixel_y = 25},/obj/machinery/light/small{dir = 1},/obj/machinery/camera/network/engineering_outpost{c_tag = "Engineering Outpost Solar Access"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) -"zp" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor,/area/outpost/mining_west) +"zp" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/simulated/floor,/area/outpost/mining_west) "zq" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor,/area/outpost/mining_west) "zr" = (/obj/machinery/recharge_station,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor,/area/outpost/mining_west) "zs" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_west) @@ -1321,7 +1321,7 @@ "zu" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor,/area/outpost/mining_west) "zv" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/outpost/mining_west) "zw" = (/obj/structure/table/rack,/turf/simulated/floor,/area/outpost/mining_west) -"zx" = (/obj/structure/table,/obj/item/weapon/pickaxe,/turf/simulated/floor,/area/outpost/mining_west) +"zx" = (/obj/structure/table/standard,/obj/item/weapon/pickaxe,/turf/simulated/floor,/area/outpost/mining_west) "zy" = (/turf/simulated/wall,/area/outpost/mining_west) "zz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) "zA" = (/turf/simulated/wall,/area/outpost/mining_main/eva) @@ -1336,14 +1336,14 @@ "zJ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/dorms) "zK" = (/obj/machinery/door/airlock{id_tag = "miningdorm3"; name = "Room 3"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/outpost/mining_main/dorms) "zL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/outpost/mining_main/dorms) -"zM" = (/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/carpet,/area/outpost/mining_main/dorms) +"zM" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/carpet,/area/outpost/mining_main/dorms) "zN" = (/obj/structure/closet/secure_closet/miner,/turf/simulated/floor,/area/outpost/mining_main/west_hall) "zO" = (/obj/machinery/recharge_station,/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/west_hall) "zP" = (/obj/structure/ore_box,/turf/simulated/floor,/area/outpost/mining_main/west_hall) "zQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/west_hall) "zR" = (/obj/structure/closet/secure_closet/miner,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor,/area/outpost/mining_main/west_hall) "zS" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) -"zT" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) +"zT" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) "zU" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "mining_outpost_airlock"; name = "exterior access button"; pixel_x = -8; pixel_y = 25; req_one_access = list(13,48)},/turf/space,/area/space) "zV" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining_west_outpost_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25},/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"; pixel_x = 0},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "zW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) @@ -1351,9 +1351,9 @@ "zY" = (/turf/simulated/floor,/area/outpost/mining_west) "zZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_west) "Aa" = (/turf/space,/area/skipjack_station/mining) -"Ab" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor,/area/outpost/mining_west) +"Ab" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor,/area/outpost/mining_west) "Ac" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/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"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_west) -"Ad" = (/obj/structure/table,/obj/item/weapon/shovel,/turf/simulated/floor,/area/outpost/mining_west) +"Ad" = (/obj/structure/table/standard,/obj/item/weapon/shovel,/turf/simulated/floor,/area/outpost/mining_west) "Ae" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "Af" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor,/area/outpost/engineering/storage) "Ag" = (/obj/structure/table/rack,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/void/mining,/obj/item/weapon/mining_scanner,/turf/simulated/floor,/area/outpost/mining_main/eva) @@ -1364,7 +1364,7 @@ "Al" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) "Am" = (/obj/machinery/light,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 9},/area/mine/explored) "An" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) -"Ao" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) +"Ao" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) "Ap" = (/obj/structure/ore_box,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 6},/area/mine/explored) "Aq" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) "Ar" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/outpost/mining_main/dorms) @@ -1377,7 +1377,7 @@ "Ay" = (/obj/structure/table/rack,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/clothing/shoes/magboots,/obj/item/clothing/gloves/yellow,/obj/machinery/firealarm{dir = 4; layer = 3.3; pixel_x = 26},/obj/item/weapon/storage/briefcase/inflatable,/obj/machinery/camera/network/engineering_outpost{c_tag = "Engineering Outpost Storage"; dir = 1},/turf/simulated/floor,/area/outpost/engineering/storage) "Az" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) "AA" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/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"; pixel_x = 0},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/mining_west) -"AB" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) +"AB" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) "AC" = (/obj/machinery/light/small{dir = 4},/obj/machinery/camera/network/engineering_outpost{c_tag = "Engineering Outpost Airlock Entry"; dir = 8},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "AD" = (/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor{icon_state = "bar"},/area/outpost/mining_main/dorms) "AE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/outpost/mining_west) @@ -1386,7 +1386,7 @@ "AH" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/outpost/mining_west) "AI" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_west_outpost_outer"; locked = 1; name = "Mining External Access"; req_access = list(10,13)},/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"; pixel_x = 0},/turf/simulated/floor/plating,/area/outpost/mining_west) "AJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor,/area/outpost/mining_west) -"AK" = (/obj/structure/table,/obj/item/weapon/storage/backpack/satchel,/obj/item/clothing/glasses/meson,/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/outpost/mining_west) +"AK" = (/obj/structure/table/standard,/obj/item/weapon/storage/backpack/satchel,/obj/item/clothing/glasses/meson,/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/outpost/mining_west) "AL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/outpost/mining_main/dorms) "AM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/dorms) "AN" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/dorms) @@ -1411,21 +1411,21 @@ "Bg" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "mining_west_outpost_pump"; tag_exterior_door = "mining_west_outpost_outer"; frequency = 1379; id_tag = "mining_west_outpost_airlock"; tag_interior_door = "mining_west_outpost_inner"; pixel_x = 0; pixel_y = -25; tag_chamber_sensor = "mining_west_outpost_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "mining_west_outpost_pump"},/turf/simulated/floor,/area/outpost/mining_west) "Bh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "Bi" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/outpost/mining_west) -"Bj" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/outpost/mining_west) +"Bj" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/outpost/mining_west) "Bk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/mining_west) "Bl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/dorms) "Bm" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/dorms) "Bn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/outpost/mining_west) "Bo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/west_hall) "Bp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/west_hall) -"Bq" = (/obj/machinery/alarm{pixel_y = 24},/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/stack/flag/yellow,/obj/item/stack/flag/red,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) +"Bq" = (/obj/machinery/alarm{pixel_y = 24},/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/stack/flag/yellow,/obj/item/stack/flag/red,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "Br" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/eva) "Bs" = (/obj/structure/dispenser/oxygen,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/outpost/mining_main/eva) "Bt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/outpost/mining_main/eva) "Bu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/eva) "Bv" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/outpost/mining_main/eva) -"Bw" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/pickaxe,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) -"Bx" = (/obj/structure/table,/obj/item/weapon/storage/backpack/satchel,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/east_hall) +"Bw" = (/obj/structure/table/standard,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/pickaxe,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) +"Bx" = (/obj/structure/table/standard,/obj/item/weapon/storage/backpack/satchel,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "By" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/eva) "Bz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "eoutpost_main_pump"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera/network/engineering_outpost{c_tag = "Engineering Outpost Airlock"; dir = 1},/turf/simulated/floor,/area/outpost/engineering/hallway) "BA" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 2; frequency = 1379; id_tag = "mining_east_pump"},/obj/structure/closet/walllocker/emerglocker/north,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/mining_main/eva) diff --git a/maps/exodus-6.dmm b/maps/exodus-6.dmm index df2be4562e..25a83f2dc9 100644 --- a/maps/exodus-6.dmm +++ b/maps/exodus-6.dmm @@ -1,5 +1,5 @@ "a" = (/turf/space,/area/space) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -257,4 +257,3 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} - diff --git a/maps/overmap/bearcat/bearcat.dmm b/maps/overmap/bearcat/bearcat.dmm index be6541ec91..27ee41d46f 100644 --- a/maps/overmap/bearcat/bearcat.dmm +++ b/maps/overmap/bearcat/bearcat.dmm @@ -8,9 +8,9 @@ "ah" = (/obj/machinery/computer/helm,/turf/simulated/floor/bluegrid,/area/ship/scrap/command) "ai" = (/obj/machinery/computer/station_alert,/turf/simulated/floor/bluegrid,/area/ship/scrap/command) "aj" = (/obj/effect/mapinfo/ship/bearcat,/turf/space,/area) -"ak" = (/obj/structure/table,/obj/machinery/light,/obj/item/device/radio,/obj/item/device/radio/intercom{pixel_y = -32},/turf/simulated/floor{tag = "icon-gcircuit (SOUTHEAST)"; icon_state = "gcircuit"; dir = 6},/area/ship/scrap/command) +"ak" = (/obj/structure/table/standard,/obj/machinery/light,/obj/item/device/radio,/obj/item/device/radio/intercom{pixel_y = -32},/turf/simulated/floor{tag = "icon-gcircuit (SOUTHEAST)"; icon_state = "gcircuit"; dir = 6},/area/ship/scrap/command) "al" = (/obj/structure/stool/bed/chair/comfy/teal{tag = "icon-comfychair_teal (NORTH)"; icon_state = "comfychair_teal"; dir = 1},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/effect/landmark/start{name = "Captain"},/turf/simulated/floor{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"; dir = 2},/area/ship/scrap/command) -"am" = (/obj/structure/table,/obj/machinery/light,/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/door_control{id = "scraplock"; name = "External Lockdown"},/turf/simulated/floor{tag = "icon-gcircuit (SOUTHEAST)"; icon_state = "gcircuit"; dir = 6},/area/ship/scrap/command) +"am" = (/obj/structure/table/standard,/obj/machinery/light,/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/door_control{id = "scraplock"; name = "External Lockdown"},/turf/simulated/floor{tag = "icon-gcircuit (SOUTHEAST)"; icon_state = "gcircuit"; dir = 6},/area/ship/scrap/command) "an" = (/turf/simulated/wall/r_wall,/area/ship/scrap/command) "ao" = (/obj/machinery/door/airlock/hatch,/obj/machinery/atmospherics/pipe/simple{dir = 2; icon_state = "intact"; level = 1; tag = "icon-intact"},/turf/simulated/floor,/area/ship/scrap/command) "ap" = (/turf/simulated/wall/r_wall,/area/ship/scrap/comms) @@ -37,7 +37,7 @@ "aK" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_x = 0; pixel_y = -32; tag = "icon-alarm0 (NORTH)"},/turf/simulated/floor/bluegrid,/area/ship/scrap/comms) "aL" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/window/reinforced{dir = 8},/obj/item/device/radio/intercom{pixel_y = -32},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/ship/scrap/comms) "aM" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple{dir = 2; icon_state = "intact"; level = 1; tag = "icon-intact"},/turf/simulated/floor{tag = "icon-neutralfull (EAST)"; icon_state = "neutralfull"; dir = 4},/area/ship/scrap/command) -"aN" = (/obj/machinery/light{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/obj/item/device/radio/intercom{pixel_x = -32},/obj/structure/table,/obj/item/weapon/gun/projectile/shotgun/pump/combat{desc = "When words don't strike hard enough."; name = "Solid Argument"},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/ship/scrap/command/captain) +"aN" = (/obj/machinery/light{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/obj/item/device/radio/intercom{pixel_x = -32},/obj/structure/table/standard,/obj/item/weapon/gun/projectile/shotgun/pump/combat{desc = "When words don't strike hard enough."; name = "Solid Argument"},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/ship/scrap/command/captain) "aO" = (/obj/structure/cable{tag = "icon-4-9"; icon_state = "4-9"},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/ship/scrap/command/captain) "aP" = (/obj/structure/table/woodentable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "Captain's Quarters APC"},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/ship/scrap/command/captain) "aQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple{dir = 2; icon_state = "intact"; level = 1; tag = "icon-intact"},/turf/simulated/floor{tag = "icon-neutralfull (EAST)"; icon_state = "neutralfull"; dir = 4},/area/ship/scrap/command) @@ -134,7 +134,7 @@ "cD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/maintenance_hatch{name = "Hatch"; normalspeed = 0},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew/saloon) "cE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-orange (WEST)"; icon_state = "orange"; dir = 8},/area/ship/scrap/crew/saloon) "cF" = (/obj/structure/stool,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew/saloon) -"cG" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/manifold{dir = 8; icon_state = "manifold"; level = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark{name = "Observer-Start"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/item/ashtray/glass,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew/saloon) +"cG" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/manifold{dir = 8; icon_state = "manifold"; level = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark{name = "Observer-Start"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/item/ashtray/glass,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew/saloon) "cH" = (/obj/structure/stool,/obj/machinery/atmospherics/unary/vent_pump{dir = 8; level = 2; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/ship/scrap/crew/saloon) "cI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-orange (EAST)"; icon_state = "orange"; dir = 4},/area/ship/scrap/crew/saloon) "cJ" = (/obj/machinery/atmospherics/pipe/manifold{dir = 8; icon_state = "manifold"; level = 2},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew) @@ -164,7 +164,7 @@ "dh" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable,/obj/machinery/power/apc{name = "Dorms APC"},/obj/machinery/light_switch{pixel_x = -25},/turf/simulated/floor,/area/ship/scrap/crew/dorms) "di" = (/obj/structure/stool/bed,/obj/structure/closet/walllocker/emerglocker/south,/obj/item/weapon/bedsheet/green,/turf/simulated/floor,/area/ship/scrap/crew/dorms) "dj" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor,/area/ship/scrap/crew/dorms) -"dk" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) +"dk" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "dl" = (/obj/machinery/processor,/obj/item/device/radio/intercom{pixel_y = 32},/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "dm" = (/obj/structure/closet/walllocker/emerglocker/north,/obj/structure/closet/secure_closet/freezer/fridge,/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor{tag = "icon-stage_bleft (SOUTHEAST)"; icon_state = "stage_bleft"; dir = 6},/area/ship/scrap/crew/kitchen) "dn" = (/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 4; name = "Crew Deck APC"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor,/area/ship/scrap/crew) @@ -179,7 +179,7 @@ "dw" = (/turf/simulated/wall/r_wall,/area/ship/scrap/maintenance/engine) "dx" = (/turf/simulated/floor{tag = "icon-wall_thermite"; icon_state = "wall_thermite"; dir = 2},/area/ship/scrap/maintenance/engine) "dy" = (/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "scraplock"; name = "External Blast Doors"; opacity = 0},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/kitchen) -"dz" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) +"dz" = (/obj/structure/table/standard,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "dA" = (/obj/effect/landmark/start{name = "Chef"},/obj/structure/stool,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "dB" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 4; name = "Galley APC"},/turf/simulated/floor{tag = "icon-stage_bleft (SOUTHEAST)"; icon_state = "stage_bleft"; dir = 6},/area/ship/scrap/crew/kitchen) "dC" = (/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/disposalpipe/segment,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew) @@ -193,7 +193,7 @@ "dK" = (/obj/machinery/sleep_console,/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) "dL" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/medical,/obj/item/device/radio/intercom{pixel_y = 32},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) "dM" = (/turf/simulated/floor{tag = "icon-wall_thermite (SOUTHEAST)"; icon_state = "wall_thermite"; dir = 6},/area/ship/scrap/maintenance/engine) -"dN" = (/obj/structure/table,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) +"dN" = (/obj/structure/table/standard,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "dO" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "dP" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; layer = 2.4; level = 2; on = 1},/obj/structure/disposalpipe/segment{tag = "icon-conpipe-c (EAST)"; icon_state = "conpipe-c"; dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor{tag = "icon-stage_bleft (SOUTHEAST)"; icon_state = "stage_bleft"; dir = 6},/area/ship/scrap/crew/kitchen) "dQ" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; icon_state = "intact"; level = 2; tag = "icon-intact"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/maintenance_hatch{name = "Hatch"; normalspeed = 0},/turf/simulated/floor,/area/ship/scrap/crew/kitchen) @@ -215,15 +215,15 @@ "eg" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (NORTH)"},/area/ship/scrap/maintenance/engine) "eh" = (/obj/machinery/door/airlock/maintenance_hatch{name = "Hatch"; normalspeed = 0},/turf/simulated/floor/plating,/area/ship/scrap/maintenance/engine) "ei" = (/turf/simulated/floor{tag = "icon-platingdmg1"; icon_state = "platingdmg1"; dir = 2},/area) -"ej" = (/obj/structure/table,/obj/machinery/microwave,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -24; tag = "icon-alarm0 (EAST)"},/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) +"ej" = (/obj/structure/table/standard,/obj/machinery/microwave,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -24; tag = "icon-alarm0 (EAST)"},/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "ek" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/simulated/floor{tag = "icon-bar (SOUTHEAST)"; icon_state = "bar"; dir = 6},/area/ship/scrap/crew/kitchen) "el" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{tag = "icon-pipe-t (NORTH)"; icon_state = "pipe-t"; dir = 1},/obj/machinery/light_switch{pixel_x = 28},/turf/simulated/floor{tag = "icon-stage_bleft (SOUTHEAST)"; icon_state = "stage_bleft"; dir = 6},/area/ship/scrap/crew/kitchen) "em" = (/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/disposalpipe/segment,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew) "en" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/obj/machinery/light_switch{pixel_x = -25},/turf/simulated/floor{tag = "icon-bot"; icon_state = "bot"; dir = 2},/area/ship/scrap/cargo) "eo" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable,/obj/machinery/power/apc{dir = 4; name = "Cargo Hold APC"},/turf/simulated/floor{tag = "icon-bot"; icon_state = "bot"; dir = 2},/area/ship/scrap/cargo) -"ep" = (/obj/structure/table,/obj/item/weapon/storage/pill_bottle/kelotane,/obj/item/weapon/storage/box/syringes,/obj/structure/cable,/obj/machinery/power/apc{name = "Medical Bay APC"},/obj/machinery/light_switch{pixel_x = -25},/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) -"eq" = (/obj/structure/table,/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/kelotane,/obj/item/clothing/tie/stethoscope,/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) -"er" = (/obj/structure/table,/obj/item/weapon/storage/firstaid,/obj/item/device/healthanalyzer,/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) +"ep" = (/obj/structure/table/standard,/obj/item/weapon/storage/pill_bottle/kelotane,/obj/item/weapon/storage/box/syringes,/obj/structure/cable,/obj/machinery/power/apc{name = "Medical Bay APC"},/obj/machinery/light_switch{pixel_x = -25},/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) +"eq" = (/obj/structure/table/standard,/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/kelotane,/obj/item/clothing/tie/stethoscope,/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) +"er" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid,/obj/item/device/healthanalyzer,/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/crew/medbay) "es" = (/obj/item/device/radio,/turf/simulated/floor/plating,/area) "et" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/obj/item/weapon/coin/gold,/obj/item/weapon/coin/silver,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (NORTH)"},/area/ship/scrap/maintenance/engine) "eu" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (NORTH)"},/area/ship/scrap/maintenance/engine) @@ -263,25 +263,25 @@ "fc" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1; pressure_checks = 0},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/ship/scrap/crew/wash) "fd" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{tag = "icon-pipe-t (NORTH)"; icon_state = "pipe-t"; dir = 1},/obj/machinery/light_switch{pixel_x = 28},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/ship/scrap/crew/wash) "fe" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-stage_stairs (SOUTHEAST)"; icon_state = "stage_stairs"; dir = 6},/area/ship/scrap/crew) -"ff" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 7; pixel_y = 4},/obj/item/device/t_scanner,/obj/item/weapon/cell/high,/obj/machinery/light_switch{pixel_y = 25},/turf/simulated/floor{tag = "icon-orange (WEST)"; icon_state = "orange"; dir = 8},/area/ship/scrap/maintenance/storage) +"ff" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 7; pixel_y = 4},/obj/item/device/t_scanner,/obj/item/weapon/cell/high,/obj/machinery/light_switch{pixel_y = 25},/turf/simulated/floor{tag = "icon-orange (WEST)"; icon_state = "orange"; dir = 8},/area/ship/scrap/maintenance/storage) "fg" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/obj/item/device/radio/intercom{pixel_y = 32},/obj/machinery/vending/tool,/turf/simulated/floor,/area/ship/scrap/maintenance/storage) "fh" = (/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-stage_stairs (SOUTHEAST)"; icon_state = "stage_stairs"; dir = 6},/area/ship/scrap/maintenance/storage) -"fi" = (/obj/structure/window/reinforced{dir = 8},/obj/item/stack/rods,/obj/item/stack/rods,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/structure/table,/turf/simulated/floor,/area/ship/scrap/maintenance/storage) -"fj" = (/obj/structure/table,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/clothing/suit/space/rig,/obj/item/clothing/shoes/magboots,/obj/item/clothing/head/helmet/space/rig,/obj/item/clothing/mask/breath,/turf/simulated/floor{tag = "icon-orange (EAST)"; icon_state = "orange"; dir = 4},/area/ship/scrap/maintenance/storage) +"fi" = (/obj/structure/window/reinforced{dir = 8},/obj/item/stack/rods,/obj/item/stack/rods,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/structure/table/standard,/turf/simulated/floor,/area/ship/scrap/maintenance/storage) +"fj" = (/obj/structure/table/standard,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/clothing/suit/space/rig,/obj/item/clothing/shoes/magboots,/obj/item/clothing/head/helmet/space/rig,/obj/item/clothing/mask/breath,/turf/simulated/floor{tag = "icon-orange (EAST)"; icon_state = "orange"; dir = 4},/area/ship/scrap/maintenance/storage) "fk" = (/obj/structure/closet/walllocker/emerglocker/west,/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{tag = "icon-stage_stairs (SOUTHEAST)"; icon_state = "stage_stairs"; dir = 6},/area/ship/scrap/crew) "fl" = (/obj/effect/decal/cleanable/generic,/obj/item/device/flashlight,/turf/simulated/floor/plating,/area/ship/scrap/unused2) "fm" = (/turf/simulated/floor/plating,/area/ship/scrap/unused2) "fn" = (/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "scraplock"; name = "External Blast Doors"; opacity = 0},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/unused2) "fo" = (/turf/simulated/floor{tag = "icon-platingdmg3"; icon_state = "platingdmg3"; dir = 2},/area) "fp" = (/obj/machinery/washing_machine,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/ship/scrap/crew/wash) -"fq" = (/obj/structure/table,/obj/machinery/light/small,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/ship/scrap/crew/wash) +"fq" = (/obj/structure/table/standard,/obj/machinery/light/small,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/ship/scrap/crew/wash) "fr" = (/turf/simulated/floor{tag = "icon-wall_thermite"; icon_state = "wall_thermite"; dir = 2},/area/ship/scrap/crew/wash) "fs" = (/obj/structure/closet/walllocker/emerglocker/east,/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/crew) -"ft" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 5; pixel_y = -7},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/head/welding,/obj/item/device/analyzer,/turf/simulated/floor{tag = "icon-orange (WEST)"; icon_state = "orange"; dir = 8},/area/ship/scrap/maintenance/storage) +"ft" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 5; pixel_y = -7},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/head/welding,/obj/item/device/analyzer,/turf/simulated/floor{tag = "icon-orange (WEST)"; icon_state = "orange"; dir = 8},/area/ship/scrap/maintenance/storage) "fu" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/stool,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance/storage) "fv" = (/obj/machinery/atmospherics/pipe/manifold{dir = 8; icon_state = "manifold"; level = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/ship/scrap/maintenance/storage) "fw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; level = 2; on = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance/storage) -"fx" = (/obj/structure/table,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/clothing/suit/space/rig,/obj/item/clothing/shoes/magboots,/obj/item/clothing/head/helmet/space/rig,/obj/item/clothing/mask/breath,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{tag = "icon-orange (EAST)"; icon_state = "orange"; dir = 4},/area/ship/scrap/maintenance/storage) +"fx" = (/obj/structure/table/standard,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/clothing/suit/space/rig,/obj/item/clothing/shoes/magboots,/obj/item/clothing/head/helmet/space/rig,/obj/item/clothing/mask/breath,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{tag = "icon-orange (EAST)"; icon_state = "orange"; dir = 4},/area/ship/scrap/maintenance/storage) "fy" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/ship/scrap/crew) "fz" = (/turf/simulated/floor{tag = "icon-wall_thermite"; icon_state = "wall_thermite"; dir = 2},/area/ship/scrap/unused2) "fA" = (/turf/simulated/wall/r_wall,/area/ship/scrap/unused1) @@ -301,8 +301,8 @@ "fO" = (/obj/machinery/alarm{pixel_y = 25},/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/unused1) "fP" = (/obj/structure/closet/walllocker/emerglocker/east,/obj/structure/reagent_dispensers,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/unused1) "fQ" = (/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/maintenance_hatch{name = "Hatch"; normalspeed = 0},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance) -"fR" = (/obj/structure/table,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/storage/box/lights/bulbs,/obj/item/weapon/storage/box/lights/mixed,/obj/structure/cable,/obj/machinery/power/apc{name = "Tools Storage APC"},/turf/simulated/floor{tag = "icon-orange (WEST)"; icon_state = "orange"; dir = 8},/area/ship/scrap/maintenance/storage) -"fS" = (/obj/structure/table,/obj/item/clothing/head/welding,/obj/item/device/radio,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/ship/scrap/maintenance/storage) +"fR" = (/obj/structure/table/standard,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/storage/box/lights/bulbs,/obj/item/weapon/storage/box/lights/mixed,/obj/structure/cable,/obj/machinery/power/apc{name = "Tools Storage APC"},/turf/simulated/floor{tag = "icon-orange (WEST)"; icon_state = "orange"; dir = 8},/area/ship/scrap/maintenance/storage) +"fS" = (/obj/structure/table/standard,/obj/item/clothing/head/welding,/obj/item/device/radio,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/ship/scrap/maintenance/storage) "fT" = (/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance/storage) "fU" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light/small,/obj/effect/decal/cleanable/dirt,/obj/structure/dispenser/oxygen,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance/storage) "fV" = (/obj/machinery/recharge_station,/turf/simulated/floor{tag = "icon-orange (EAST)"; icon_state = "orange"; dir = 4},/area/ship/scrap/maintenance/storage) @@ -343,11 +343,11 @@ "gE" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/alarm{pixel_y = 32},/obj/structure/closet/secure_closet/engineering_electrical,/turf/simulated/floor{tag = "icon-bot"; icon_state = "bot"; dir = 2},/area/ship/scrap/maintenance) "gF" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/item/device/radio/intercom{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/closet/toolcloset,/turf/simulated/floor{tag = "icon-bot"; icon_state = "bot"; dir = 2},/area/ship/scrap/maintenance) "gG" = (/obj/machinery/atmospherics/pipe/simple{tag = "icon-intact"; icon_state = "intact"; dir = 2; level = 2},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance) -"gH" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light_switch{pixel_y = 25},/obj/structure/table,/obj/item/ashtray/plastic,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance) +"gH" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light_switch{pixel_y = 25},/obj/structure/table/standard,/obj/item/ashtray/plastic,/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance) "gI" = (/obj/structure/stool/bed/chair/comfy/brown,/obj/effect/landmark/start{name = "Chief Engineer"},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance) "gJ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor{tag = "icon-floorgrime (SOUTHEAST)"; icon_state = "floorgrime"; dir = 6},/area/ship/scrap/maintenance) "gK" = (/obj/machinery/power/port_gen/pacman/super,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Power APC"},/turf/simulated/floor/plating,/area/ship/scrap/maintenance/power) -"gL" = (/obj/structure/table,/obj/item/device/flashlight,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 7; pixel_y = 4},/obj/machinery/light_switch{pixel_y = 25},/turf/simulated/floor/plating,/area/ship/scrap/maintenance/power) +"gL" = (/obj/structure/table/standard,/obj/item/device/flashlight,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 7; pixel_y = 4},/obj/machinery/light_switch{pixel_y = 25},/turf/simulated/floor/plating,/area/ship/scrap/maintenance/power) "gM" = (/obj/structure/closet/crate,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/item/stack/sheet/mineral/uranium{amount = 50},/turf/simulated/floor/plating,/area/ship/scrap/maintenance/power) "gN" = (/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "scraplock"; name = "External Blast Doors"; opacity = 0},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor{icon_state = "white"},/area/ship/scrap/maintenance/atmos) "gO" = (/obj/machinery/atmospherics/pipe/simple{dir = 5; icon_state = "intact"; level = 2},/obj/machinery/meter,/turf/simulated/floor/plating,/area/ship/scrap/maintenance/atmos) diff --git a/maps/overmap/example_sector1.dmm b/maps/overmap/example_sector1.dmm index 55e125eaf4..ec4ff9bf07 100644 --- a/maps/overmap/example_sector1.dmm +++ b/maps/overmap/example_sector1.dmm @@ -27,9 +27,9 @@ "aA" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/floor/plating,/area/turret_protected/tcomsat) "aB" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/turret_protected/tcomsat) "aC" = (/obj/structure/filingcabinet,/turf/simulated/floor,/area/tcommsat/computer) -"aD" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 140; on = 1; pressure_checks = 0},/obj/machinery/camera{c_tag = "Main Computer Room"; dir = 2; network = list("Tcomsat")},/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/folder/yellow,/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/tcommsat/computer) -"aE" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue{pixel_x = -3; pixel_y = 2},/turf/simulated/floor,/area/tcommsat/computer) -"aF" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/tcommsat/computer) +"aD" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 140; on = 1; pressure_checks = 0},/obj/machinery/camera{c_tag = "Main Computer Room"; dir = 2; network = list("Tcomsat")},/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/weapon/folder/yellow,/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/tcommsat/computer) +"aE" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue{pixel_x = -3; pixel_y = 2},/turf/simulated/floor,/area/tcommsat/computer) +"aF" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor,/area/tcommsat/computer) "aG" = (/obj/item/weapon/syntiflesh{name = "Cuban Pete-Meat"},/turf/simulated/floor/engine,/area/tcommsat/computer) "aH" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = -29; pixel_y = 0},/turf/simulated/floor,/area/tcommsat/computer) "aI" = (/obj/structure/window/reinforced{dir = 4},/turf/space,/area/turret_protected/tcomsat) @@ -58,7 +58,7 @@ "bf" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; layer = 2.4; on = 1},/turf/simulated/floor,/area/tcommsat/computer) "bg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor,/area/tcommsat/computer) "bh" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor,/area/tcommsat/computer) -"bi" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor,/area/tcommsat/computer) +"bi" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor,/area/tcommsat/computer) "bj" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor,/area/tcommsat/computer) "bk" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/turret_protected/tcomsat) "bl" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/turret_protected/tcomsat) @@ -84,7 +84,7 @@ "bF" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/space,/area/turret_protected/tcomsat) "bG" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/light,/turf/space,/area/turret_protected/tcomsat) "bH" = (/obj/structure/window/reinforced{dir = 1},/turf/space,/area/turret_protected/tcomsat) -"bI" = (/obj/machinery/light{dir = 8},/obj/structure/table,/obj/item/device/multitool,/obj/structure/sign/electricshock{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/tcommsat/computer) +"bI" = (/obj/machinery/light{dir = 8},/obj/structure/table/standard,/obj/item/device/multitool,/obj/structure/sign/electricshock{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/tcommsat/computer) "bJ" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{current_temperature = 80; dir = 1; on = 1},/turf/simulated/floor,/area/tcommsat/computer) "bK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/tcommsat/computer) "bL" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/tcommsat/computer) @@ -128,7 +128,7 @@ "cx" = (/obj/machinery/telecomms/server/presets/common,/turf/simulated/floor{dir = 4; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "cy" = (/obj/machinery/telecomms/server/presets/engineering,/turf/simulated/floor{dir = 4; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "cz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/turret_protected/tcomsat) -"cA" = (/obj/structure/table,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/simulated/floor,/area/turret_protected/tcomsat) +"cA" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/simulated/floor,/area/turret_protected/tcomsat) "cB" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/camera{c_tag = "Telecoms Storage"; network = list("Tcomsat")},/turf/simulated/floor,/area/turret_protected/tcomsat) "cC" = (/obj/structure/rack,/obj/item/weapon/circuitboard/telecomms/processor,/obj/item/weapon/circuitboard/telecomms/processor,/obj/item/weapon/circuitboard/telecomms/receiver,/obj/item/weapon/circuitboard/telecomms/server,/obj/item/weapon/circuitboard/telecomms/server,/obj/item/weapon/circuitboard/telecomms/bus,/obj/item/weapon/circuitboard/telecomms/bus,/obj/item/weapon/circuitboard/telecomms/broadcaster,/turf/simulated/floor,/area/turret_protected/tcomsat) "cD" = (/obj/machinery/camera{c_tag = "West Solars"; dir = 8; network = list("Tcomsat")},/turf/space,/area) @@ -140,9 +140,9 @@ "cJ" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/turret_protected/tcomsat) "cK" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/turret_protected/tcomsat) "cL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/turret_protected/tcomsat) -"cM" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/turf/simulated/floor,/area/turret_protected/tcomsat) +"cM" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/turf/simulated/floor,/area/turret_protected/tcomsat) "cN" = (/turf/simulated/floor,/area/turret_protected/tcomsat) -"cO" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/turf/simulated/floor,/area/turret_protected/tcomsat) +"cO" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/turf/simulated/floor,/area/turret_protected/tcomsat) "cP" = (/turf/simulated/floor/plating,/area) "cQ" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/obj/machinery/light{dir = 4},/turf/space,/area/turret_protected/tcomsat) "cR" = (/obj/structure/sign/nosmoking_2{pixel_x = -32; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) @@ -158,7 +158,7 @@ "db" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/turret_protected/tcomsat) "dc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/turret_protected/tcomsat) "dd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/door/airlock/maintenance_hatch{name = "Telecoms Storage"; req_access_txt = "61"},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/turret_protected/tcomsat) -"de" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 29; pixel_y = 0},/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/turret_protected/tcomsat) +"de" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 29; pixel_y = 0},/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/turret_protected/tcomsat) "df" = (/obj/machinery/telecomms/bus/preset_one,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "dg" = (/obj/machinery/telecomms/processor/preset_one,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "dh" = (/obj/machinery/telecomms/receiver/preset_left,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) @@ -168,11 +168,11 @@ "dl" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/space,/area/turret_protected/tcomsat) "dm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/turret_protected/tcomsat) "dn" = (/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/turret_protected/tcomsat) -"do" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/turf/simulated/floor,/area/turret_protected/tcomsat) +"do" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/turf/simulated/floor,/area/turret_protected/tcomsat) "dp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/turret_protected/tcomsat) -"dq" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/transmitter,/turf/simulated/floor,/area/turret_protected/tcomsat) -"dr" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/turf/simulated/floor,/area/turret_protected/tcomsat) -"ds" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/turf/simulated/floor,/area/turret_protected/tcomsat) +"dq" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/transmitter,/turf/simulated/floor,/area/turret_protected/tcomsat) +"dr" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/turf/simulated/floor,/area/turret_protected/tcomsat) +"ds" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/turf/simulated/floor,/area/turret_protected/tcomsat) "dt" = (/obj/machinery/telecomms/server/presets/science,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "du" = (/obj/machinery/telecomms/server/presets/medical,/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) "dv" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Mainframe Floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) diff --git a/maps/overmap/example_sector2.dmm b/maps/overmap/example_sector2.dmm index 48fa14cd97..9b71bc687d 100644 --- a/maps/overmap/example_sector2.dmm +++ b/maps/overmap/example_sector2.dmm @@ -42,8 +42,8 @@ "aP" = (/obj/item/weapon/shard,/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/mine/abandoned) "aQ" = (/turf/simulated/floor/plating/airless,/area/mine/abandoned) "aR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless,/area/mine/abandoned) -"aS" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) -"aT" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/mine/abandoned) +"aS" = (/obj/structure/table/standard,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) +"aT" = (/obj/structure/table/standard,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/mine/abandoned) "aU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/abandoned) "aV" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor,/area/mine/abandoned) "aW" = (/obj/effect/alien/weeds,/turf/simulated/floor/plating,/area/mine/abandoned) @@ -78,7 +78,7 @@ "bz" = (/turf/simulated/floor/airless,/area/mine/abandoned) "bA" = (/obj/effect/alien/weeds,/turf/simulated/floor,/area/mine/abandoned) "bB" = (/obj/effect/decal/remains/xeno,/turf/simulated/floor/airless{icon_state = "damaged3"},/area/mine/abandoned) -"bC" = (/obj/structure/table,/turf/simulated/floor,/area/mine/abandoned) +"bC" = (/obj/structure/table/standard,/turf/simulated/floor,/area/mine/abandoned) "bD" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/abandoned) "bE" = (/obj/structure/rack,/turf/simulated/floor,/area/mine/abandoned) "bF" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned) @@ -86,13 +86,13 @@ "bH" = (/obj/effect/alien/weeds,/turf/simulated/floor/plating/airless,/area/mine/abandoned) "bI" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/mine/abandoned) "bJ" = (/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/mine/abandoned) -"bK" = (/obj/structure/table,/turf/simulated/floor/airless,/area/mine/abandoned) +"bK" = (/obj/structure/table/standard,/turf/simulated/floor/airless,/area/mine/abandoned) "bL" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "damaged5"},/area/mine/abandoned) "bM" = (/obj/item/weapon/shard,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) "bN" = (/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/airless,/area/mine/abandoned) "bO" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "damaged3"},/area/mine/abandoned) "bP" = (/obj/machinery/hydroponics,/turf/simulated/floor{icon_state = "dark"},/area/mine/abandoned) -"bQ" = (/obj/structure/table,/obj/item/weapon/paper/crumpled,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) +"bQ" = (/obj/structure/table/standard,/obj/item/weapon/paper/crumpled,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) "bR" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/mine/abandoned) "bS" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating,/area/mine/abandoned) "bT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/mine/abandoned) From 5f65565f4565598298b2f7c6b6b0bd66d455764d Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Wed, 13 May 2015 20:40:00 +0100 Subject: [PATCH 049/199] Bugfixes, removing the remnants of table_parts, changelog. --- code/game/gamemodes/cult/cultify/obj.dm | 7 --- .../items/stacks/sheets/sheet_types.dm | 1 - code/modules/materials/materials.dm | 2 + .../artifact/artifact_replicator.dm | 1 - code/modules/tables/flipping.dm | 5 +- code/modules/tables/presets.dm | 55 ++----------------- code/modules/tables/tables.dm | 44 ++++++++++++++- html/changelogs/GinjaNinja32_new_tables.yml | 5 ++ maps/RandomZLevels/stationCollision.dmm | 2 +- maps/RandomZLevels/zresearchlabs.dmm | 4 +- maps/exodus-1.dmm | 4 +- maps/exodus-3.dmm | 4 +- maps/exodus-5.dmm | 4 +- maps/overmap/example_sector2.dmm | 2 +- 14 files changed, 68 insertions(+), 72 deletions(-) create mode 100644 html/changelogs/GinjaNinja32_new_tables.yml diff --git a/code/game/gamemodes/cult/cultify/obj.dm b/code/game/gamemodes/cult/cultify/obj.dm index fd239df50f..90a96f72ab 100644 --- a/code/game/gamemodes/cult/cultify/obj.dm +++ b/code/game/gamemodes/cult/cultify/obj.dm @@ -32,13 +32,6 @@ /obj/item/weapon/storage/backpack/cultpack/cultify() return -/obj/item/weapon/table_parts/cultify() - new /obj/item/weapon/table_parts/wood(loc) - ..() - -/obj/item/weapon/table_parts/wood/cultify() - return - /obj/machinery/cultify() // We keep the number of cultified machines down by only converting those that are dense // The alternative is to keep a separate file of exceptions. diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index bf35253b08..4ba9ae9913 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -147,7 +147,6 @@ var/global/list/datum/stack_recipe/plasteel_recipes = list ( \ var/global/list/datum/stack_recipe/wood_recipes = list ( \ new/datum/stack_recipe("wooden sandals", /obj/item/clothing/shoes/sandal, 1), \ new/datum/stack_recipe("wood floor tile", /obj/item/stack/tile/wood, 1, 4, 20), \ - new/datum/stack_recipe("table parts", /obj/item/weapon/table_parts/wood, 2), \ new/datum/stack_recipe("wooden chair", /obj/structure/bed/chair/wood, 3, time = 10, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/wooden, 5, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("crossbow frame", /obj/item/weapon/crossbowframe, 5, time = 25, one_per_turf = 0, on_floor = 0), \ diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 55d51c772f..5afb1f27e0 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -1,6 +1,7 @@ var/list/name_to_material /proc/populate_material_list() + if(name_to_material) return // Already set up! name_to_material = list() for(var/type in typesof(/material) - /material) var/material/new_mineral = new type @@ -116,6 +117,7 @@ var/list/name_to_material stack_type = /obj/item/stack/sheet/glass icon_colour = "#00E1FF" opacity = 0.3 + integrity = 100 /material/plastic name = "plastic" diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm index 7617468b41..8e6097a39b 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm @@ -59,7 +59,6 @@ /obj/item/weapon/light/tube,\ /obj/item/weapon/pickaxe,\ /obj/item/weapon/shovel,\ - /obj/item/weapon/table_parts,\ /obj/item/weapon/weldingtool,\ /obj/item/weapon/wirecutters,\ /obj/item/weapon/wrench,\ diff --git a/code/modules/tables/flipping.dm b/code/modules/tables/flipping.dm index 1714d390b4..210498f169 100644 --- a/code/modules/tables/flipping.dm +++ b/code/modules/tables/flipping.dm @@ -1,5 +1,7 @@ /obj/structure/table/proc/straight_table_check(var/direction) + if(health > 100) + return 0 var/obj/structure/table/T for(var/angle in list(-90,90)) T = locate() in get_step(src.loc,turn(direction,angle)) @@ -8,8 +10,6 @@ T = locate() in get_step(src.loc,direction) if (!T || T.flipped == 1 || T.material != material) return 1 - if(T.health > 100) - return 0 return T.straight_table_check(direction) /obj/structure/table/verb/do_flip() @@ -92,6 +92,7 @@ var/obj/structure/table/T = locate() in get_step(src,D) if(T && T.flipped == 0 && T.material == material && material) T.flip(direction) + take_damage(rand(5, 20)) update_connections(1) update_icon() diff --git a/code/modules/tables/presets.dm b/code/modules/tables/presets.dm index 481897c48d..91badda696 100644 --- a/code/modules/tables/presets.dm +++ b/code/modules/tables/presets.dm @@ -7,6 +7,7 @@ var/global/material/material_holographic_wood = null icon_state = "plain_preview" color = "#666666" New() + if(!name_to_material) populate_material_list() material = name_to_material[DEFAULT_WALL_MATERIAL] ..() @@ -14,6 +15,7 @@ var/global/material/material_holographic_wood = null icon_state = "reinf_preview" color = "#666666" New() + if(!name_to_material) populate_material_list() material = name_to_material[DEFAULT_WALL_MATERIAL] reinforced = name_to_material[DEFAULT_WALL_MATERIAL] ..() @@ -22,12 +24,14 @@ var/global/material/material_holographic_wood = null icon_state = "plain_preview" color = "#824B28" New() + if(!name_to_material) populate_material_list() material = name_to_material["wood"] ..() gamblingtable icon_state = "gamble_preview" New() + if(!name_to_material) populate_material_list() material = name_to_material["wood"] carpeted = 1 ..() @@ -37,6 +41,7 @@ var/global/material/material_holographic_wood = null color = "#00E1FF" alpha = 77 // 0.3 * 255 New() + if(!name_to_material) populate_material_list() material = name_to_material["glass"] ..() @@ -58,53 +63,3 @@ var/global/material/material_holographic_wood = null material_holographic_wood.stack_type = null // Tables with null-stacktype materials cannot be deconstructed material = material_holographic_wood ..() - -/* - -/obj/structure/table/holotable - name = "table" - desc = "A square piece of metal standing on four metal legs. It can not move." - icon = 'icons/obj/structures.dmi' - icon_state = "table" - density = 1 - anchored = 1.0 - layer = 2.8 - throwpass = 1 //You can throw objects over this, despite it's density. - -/obj/structure/table/holotable/attack_hand(mob/user as mob) - return // HOLOTABLE DOES NOT GIVE A FUCK - - -/obj/structure/table/holotable/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/wrench)) - user << "It's a holotable! There are no bolts!" - return - - if(isrobot(user)) - return - - ..() - -/obj/structure/table/woodentable/holotable - name = "table" - desc = "A square piece of wood standing on four wooden legs. It can not move." - icon = 'icons/obj/structures.dmi' - icon_state = "wood_table" - - -/obj/structure/table/rack/holorack - name = "rack" - desc = "Different from the Middle Ages version." - icon = 'icons/obj/objects.dmi' - icon_state = "rack" - -/obj/structure/table/rack/holorack/attack_hand(mob/user as mob) - return - -/obj/structure/table/rack/holorack/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/wrench)) - user << "It's a holorack! You can't unwrench it!" - return - - -*/ diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index 1b389323f9..0d58e8bd9c 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -37,6 +37,12 @@ health += maxhealth - old_maxhealth +/obj/structure/table/proc/take_damage(amount) + health -= amount + if(health <= 0) + visible_message("\The [src] breaks down!") + break_to_parts() + /obj/structure/table/New() ..() // One table per turf. @@ -55,6 +61,7 @@ update_connections(1) update_icon() update_desc() + update_material() /obj/structure/table/Destroy() material = null @@ -63,6 +70,17 @@ T.update_icon() ..() +/obj/structure/table/examine(mob/user) + . = ..() + if(health < maxhealth) + switch(health / maxhealth) + if(0.0 to 0.5) + user << "It looks severely damaged!" + if(0.25 to 0.5) + user << "It looks damaged!" + if(0.5 to 1.0) + user << "It has a few scrapes and dents." + /obj/structure/table/attackby(obj/item/weapon/W, mob/user) if(reinforced && istype(W, /obj/item/weapon/screwdriver)) @@ -70,6 +88,7 @@ if(!reinforced) update_desc() update_icon() + update_material() return 1 if(!reinforced && material && istype(W, /obj/item/weapon/wrench)) @@ -77,17 +96,34 @@ if(!material) update_connections(1) update_icon() + for(var/obj/structure/table/T in oview(src, 1)) + T.update_icon() + update_desc() + update_material() return 1 if(!reinforced && !material && istype(W, /obj/item/weapon/wrench)) dismantle(W, user) return 1 + if(health < maxhealth && istype(W, /obj/item/weapon/weldingtool)) + var/obj/item/weapon/weldingtool/F = W + if(F.welding) + user << "You begin reparing damage to \the [src]." + if(!do_after(user, 20) || !F.remove_fuel(1, user)) + return + user.visible_message("\The [user] repairs some damage to \the [src].", + "You repair some damage to \the [src].") + health = max(health+(maxhealth/5), maxhealth) // 20% repair per application + return 1 + if(!material && can_plate && istype(W, /obj/item/stack/sheet)) material = common_material_add(W, user, "plat") if(material) update_connections(1) update_icon() + update_desc() + update_material() return 1 return ..() @@ -105,11 +141,17 @@ if(!can_reinforce) user << "\The [src] cannot be reinforced!" + return + + if(!material) + user << "Plate \the [src] before reinforcing it!" + return reinforced = common_material_add(S, user, "reinforc") if(reinforced) update_desc() update_icon() + update_material() /obj/structure/table/proc/update_desc() if(material) @@ -334,4 +376,4 @@ #undef CORNER_NONE #undef CORNER_EASTWEST #undef CORNER_DIAGONAL -#undef CORNER_NORTHSOUTH \ No newline at end of file +#undef CORNER_NORTHSOUTH diff --git a/html/changelogs/GinjaNinja32_new_tables.yml b/html/changelogs/GinjaNinja32_new_tables.yml new file mode 100644 index 0000000000..31126155b1 --- /dev/null +++ b/html/changelogs/GinjaNinja32_new_tables.yml @@ -0,0 +1,5 @@ +author: GinjaNinja32 +delete-after: True + +changes: + - rscadd: "Rewrote tables. To construct a table, use steel to make a table frame, then plate the frame with a material such as steel, gold, wood, etc. Hold a stack in your hand and drag it to the table to reinforce it. To deconstruct a table, use a screwdriver to remove the reinforcements (if present), then a wrench to remove the plating, and a wrench again to dismantle the frame. Use a welder to repair any damage." diff --git a/maps/RandomZLevels/stationCollision.dmm b/maps/RandomZLevels/stationCollision.dmm index 7a6add9b68..a95cf0e32b 100644 --- a/maps/RandomZLevels/stationCollision.dmm +++ b/maps/RandomZLevels/stationCollision.dmm @@ -203,7 +203,7 @@ "dU" = (/obj/structure/sign/atmosplaque{pixel_y = 31},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/awaymission/northblock) "dV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/awaymission/northblock) "dW" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) -"dX" = (/obj/item/weapon/table_parts,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) +"dX" = (/obj/structure/table,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "dY" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{amount = 5},/obj/item/weapon/screwdriver,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "dZ" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) "ea" = (/obj/machinery/light,/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/research) diff --git a/maps/RandomZLevels/zresearchlabs.dmm b/maps/RandomZLevels/zresearchlabs.dmm index a14c5a3558..ab02373084 100644 --- a/maps/RandomZLevels/zresearchlabs.dmm +++ b/maps/RandomZLevels/zresearchlabs.dmm @@ -63,8 +63,8 @@ "bk" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{pixel_x = -1; pixel_y = 7},/obj/item/weapon/circuitboard/autolathe,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bl" = (/obj/effect/decal/cleanable/blood/tracks,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bm" = (/obj/structure/door_assembly/door_assembly_research,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) -"bn" = (/obj/item/weapon/table_parts,/turf/simulated/floor/plating,/area/awaymission/labs/cave) -"bo" = (/obj/item/weapon/table_parts,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) +"bn" = (/obj/structure/table,/turf/simulated/floor/plating,/area/awaymission/labs/cave) +"bo" = (/obj/structure/table,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bp" = (/obj/structure/girder,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) "bq" = (/obj/effect/decal/cleanable/blood/tracks,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaymission/labs/cave) "br" = (/obj/effect/decal/cleanable/dirt,/obj/effect/critter/fleshmonster/fleshslime,/turf/simulated/floor{icon_state = "white"},/area/awaymission/labs/cave) diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 182358213e..68bef42d96 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -4252,7 +4252,7 @@ "bDN" = (/obj/item/apc_frame,/obj/effect/decal/cleanable/dirt,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/medical/genetics) "bDO" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/medical/genetics) "bDP" = (/obj/machinery/door/firedoor,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "acute1"; name = "EMT Storage Privacy Shutters"; opacity = 0},/obj/machinery/light_switch{pixel_x = 22; pixel_y = 0},/turf/simulated/floor{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/sleeper) -"bDQ" = (/obj/item/weapon/table_parts,/turf/simulated/floor/plating,/area/medical/genetics) +"bDQ" = (/obj/structure/table,/turf/simulated/floor/plating,/area/medical/genetics) "bDR" = (/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/medical/genetics) "bDS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "cmooffice"; name = "CMO Office Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay2) "bDT" = (/obj/structure/extinguisher_cabinet{pixel_x = -25},/turf/simulated/floor{icon_state = "white"},/area/medical/genetics_cloning) @@ -4490,7 +4490,7 @@ "bIr" = (/obj/structure/closet/wardrobe/black,/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) "bIs" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/medical/genetics) "bIt" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) -"bIu" = (/obj/item/weapon/table_parts,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) +"bIu" = (/obj/structure/table,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) "bIv" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/airlock/mining{id_tag = "cargodoor"; name = "Mining Dock"; req_access = list(48)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/miningdock) "bIw" = (/turf/simulated/wall/r_wall,/area/maintenance/research_port) "bIx" = (/turf/simulated/wall/r_wall,/area/server) diff --git a/maps/exodus-3.dmm b/maps/exodus-3.dmm index 9c37abf823..caf3272970 100644 --- a/maps/exodus-3.dmm +++ b/maps/exodus-3.dmm @@ -71,7 +71,7 @@ "bs" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/derelict/ship) "bt" = (/turf/simulated/shuttle/wall{icon_state = "swall_s5"; dir = 2},/area/derelict/ship) "bu" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/turf/simulated/shuttle/wall{icon_state = "swall_f10"; dir = 2},/area/space) -"bv" = (/obj/item/weapon/table_parts,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/space) +"bv" = (/obj/structure/table,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/space) "bw" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/space) "bx" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/shuttle/plating,/area/derelict/ship) "by" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) @@ -387,7 +387,7 @@ "hw" = (/obj/item/weapon/cell,/turf/simulated/floor/plating/airless,/area/AIsattele) "hx" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall,/area/tcommsat/entrance) "hy" = (/turf/space,/area/AIsattele) -"hz" = (/obj/item/weapon/table_parts,/turf/simulated/floor/plating/airless,/area/AIsattele) +"hz" = (/obj/structure/table,/turf/simulated/floor/plating/airless,/area/AIsattele) "hA" = (/obj/structure/lattice,/turf/space,/area/AIsattele) "hB" = (/obj/structure/closet,/turf/simulated/floor/plating/airless,/area/AIsattele) "hC" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless,/area/AIsattele) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 712411bb11..162b9c2a0d 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -494,7 +494,7 @@ "jz" = (/obj/machinery/mineral/unloading_machine{icon_state = "unloader-corner"},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "jA" = (/obj/effect/decal/cleanable/dirt,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "jB" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Lobby Port"},/turf/simulated/floor{dir = 4; icon_state = "whitegreencorner"},/area/outpost/research/hallway) -"jC" = (/obj/item/weapon/table_parts,/obj/structure/table/rack,/obj/item/stack/sheet/glass/reinforced{amount = 8},/obj/item/stack/rods{amount = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) +"jC" = (/obj/structure/table,/obj/structure/table/rack,/obj/item/stack/sheet/glass/reinforced{amount = 8},/obj/item/stack/rods{amount = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "jD" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/outpost/mining_north) "jE" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/outpost/mining_north) "jF" = (/turf/simulated/wall,/area/outpost/mining_north) @@ -555,7 +555,7 @@ "kI" = (/obj/machinery/disposal/deliveryChute{dir = 1},/obj/structure/disposalpipe/trunk,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/research/eva) "kJ" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/outpost/abandoned) "kK" = (/obj/structure/table/rack,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/outpost/abandoned) -"kL" = (/obj/item/weapon/table_parts,/turf/simulated/floor/airless,/area/outpost/abandoned) +"kL" = (/obj/structure/table,/turf/simulated/floor/airless,/area/outpost/abandoned) "kM" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/airless{icon_state = "damaged4"},/area/outpost/abandoned) "kN" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "kO" = (/obj/effect/decal/remains/human,/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) diff --git a/maps/overmap/example_sector2.dmm b/maps/overmap/example_sector2.dmm index 9b71bc687d..24f46b33bf 100644 --- a/maps/overmap/example_sector2.dmm +++ b/maps/overmap/example_sector2.dmm @@ -119,7 +119,7 @@ "co" = (/obj/machinery/door/airlock/glass{name = "Glass Airlock"; req_access_txt = "0"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/abandoned) "cp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/mine/abandoned) "cq" = (/obj/effect/decal/remains/human,/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor,/area/mine/abandoned) -"cr" = (/obj/item/weapon/table_parts,/turf/simulated/floor,/area/mine/abandoned) +"cr" = (/obj/structure/table,/turf/simulated/floor,/area/mine/abandoned) "cs" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/abandoned) "ct" = (/obj/structure/rack,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/abandoned) "cu" = (/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored) From a353c90159ed1ee475dcd54b087ebc90b9c7abb7 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Wed, 13 May 2015 20:41:40 +0100 Subject: [PATCH 050/199] Super-small fix. --- code/game/gamemodes/cult/cultify/obj.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/cult/cultify/obj.dm b/code/game/gamemodes/cult/cultify/obj.dm index 90a96f72ab..cbc3571896 100644 --- a/code/game/gamemodes/cult/cultify/obj.dm +++ b/code/game/gamemodes/cult/cultify/obj.dm @@ -150,4 +150,4 @@ update_desc() update_connections(1) update_icon() - + update_material() From a7d0047b27e69dcbc62c6b377c6ba747dd98bf71 Mon Sep 17 00:00:00 2001 From: I HATE GITHUB SO MUCH! Date: Wed, 13 May 2015 20:46:36 +0100 Subject: [PATCH 051/199] Fixes a problem with sql population logging where players and admins are placed on different rows Replaces two procs: proc/sql_poll_admins() proc/sql_poll_players() With the proc: proc/sql_poll_population() Which does the same thing, except fixes and issue with sql logging, where player counts and admin counts would be placed in different rows: Pictures for comparison: Before: https://i.imgur.com/As4hAV8.png After: http://i.imgur.com/ssm20IQ.png --- code/defines/procs/statistics.dm | 30 +++++++----------------------- 1 file changed, 7 insertions(+), 23 deletions(-) diff --git a/code/defines/procs/statistics.dm b/code/defines/procs/statistics.dm index 8a9eb4042d..07856d9251 100644 --- a/code/defines/procs/statistics.dm +++ b/code/defines/procs/statistics.dm @@ -1,34 +1,20 @@ -proc/sql_poll_players() +proc/sql_poll_population() if(!sqllogging) return + var/admincount = admins.len var/playercount = 0 for(var/mob/M in player_list) if(M.client) playercount += 1 establish_db_connection() if(!dbcon.IsConnected()) - log_game("SQL ERROR during player polling. Failed to connect.") + log_game("SQL ERROR during population polling. Failed to connect.") else var/sqltime = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") - var/DBQuery/query = dbcon_old.NewQuery("INSERT INTO population (playercount, time) VALUES ([playercount], '[sqltime]')") + var/DBQuery/query = dbcon_old.NewQuery("INSERT INTO `tgstation`.`population` (`playercount`, `admincount`, `time`) VALUES ([playercount], [admincount], '[sqltime]')") if(!query.Execute()) var/err = query.ErrorMsg() - log_game("SQL ERROR during player polling. Error : \[[err]\]\n") - - -proc/sql_poll_admins() - if(!sqllogging) - return - var/admincount = admins.len - establish_db_connection() - if(!dbcon.IsConnected()) - log_game("SQL ERROR during admin polling. Failed to connect.") - else - var/sqltime = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") - var/DBQuery/query = dbcon_old.NewQuery("INSERT INTO population (admincount, time) VALUES ([admincount], '[sqltime]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during admin polling. Error : \[[err]\]\n") + log_game("SQL ERROR during population polling. Error : \[[err]\]\n") proc/sql_report_round_start() // TODO @@ -111,10 +97,8 @@ proc/statistic_cycle() if(!sqllogging) return while(1) - sql_poll_players() + sql_poll_population() sleep(600) - sql_poll_admins() - sleep(6000) // Poll every ten minutes //This proc is used for feedback. It is executed at round end. proc/sql_commit_feedback() @@ -157,4 +141,4 @@ proc/sql_commit_feedback() var/DBQuery/query = dbcon.NewQuery("INSERT INTO erro_feedback (id, roundid, time, variable, value) VALUES (null, [newroundid], Now(), '[variable]', '[value]')") if(!query.Execute()) var/err = query.ErrorMsg() - log_game("SQL ERROR during death reporting. Error : \[[err]\]\n") \ No newline at end of file + log_game("SQL ERROR during death reporting. Error : \[[err]\]\n") From 5820873dabe7df616ccfb1c46d6ce569e535901b Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Wed, 13 May 2015 21:34:31 +0100 Subject: [PATCH 052/199] Makes gambling tables constructable. --- code/modules/tables/tables.dm | 25 +++++++++++++++++++-- html/changelogs/GinjaNinja32_new_tables.yml | 2 +- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index 0d58e8bd9c..7ad07de1ac 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -91,7 +91,26 @@ update_material() return 1 - if(!reinforced && material && istype(W, /obj/item/weapon/wrench)) + if(carpeted && istype(W, /obj/item/weapon/crowbar)) + user.visible_message("\The [user] removes the carpet from \the [src].", + "You remove the carpet from \the [src].") + new /obj/item/stack/tile/carpet(loc) + carpeted = 0 + update_icon() + return 1 + + if(!carpeted && material && istype(W, /obj/item/stack/tile/carpet)) + var/obj/item/stack/tile/carpet/C = W + if(C.use(1)) + user.visible_message("\The [user] adds \the [C] to \the [src].", + "You add \the [C] to \the [src].") + carpeted = 1 + update_icon() + return 1 + else + user << "You don't have enough carpet!" + + if(!reinforced && !carpeted && material && istype(W, /obj/item/weapon/wrench)) remove_material(W, user) if(!material) update_connections(1) @@ -102,7 +121,7 @@ update_material() return 1 - if(!reinforced && !material && istype(W, /obj/item/weapon/wrench)) + if(!carpeted && !reinforced && !material && istype(W, /obj/item/weapon/wrench)) dismantle(W, user) return 1 @@ -212,6 +231,8 @@ new reinforced.stack_type(src.loc) if(material && material.stack_type && (full_return || prob(50))) new material.stack_type(src.loc) + if(carpeted && (full_return || prob(50))) + new /obj/item/stack/tile/carpet(src.loc) if(full_return || prob(50)) new /obj/item/stack/sheet/metal(src.loc) qdel(src) diff --git a/html/changelogs/GinjaNinja32_new_tables.yml b/html/changelogs/GinjaNinja32_new_tables.yml index 31126155b1..5668126e2e 100644 --- a/html/changelogs/GinjaNinja32_new_tables.yml +++ b/html/changelogs/GinjaNinja32_new_tables.yml @@ -2,4 +2,4 @@ author: GinjaNinja32 delete-after: True changes: - - rscadd: "Rewrote tables. To construct a table, use steel to make a table frame, then plate the frame with a material such as steel, gold, wood, etc. Hold a stack in your hand and drag it to the table to reinforce it. To deconstruct a table, use a screwdriver to remove the reinforcements (if present), then a wrench to remove the plating, and a wrench again to dismantle the frame. Use a welder to repair any damage." + - rscadd: "Rewrote tables. To construct a table, use steel to make a table frame, then plate the frame with a material such as steel, gold, wood, etc. Hold a stack in your hand and drag it to the table to reinforce it. To deconstruct a table, use a screwdriver to remove the reinforcements (if present), then a wrench to remove the plating, and a wrench again to dismantle the frame. Use a welder to repair any damage. Use a carpet tile on a table to add felt, and a crowbar to remove it." From 91f67e5dc5b40d6ab0bf1f5fd5fe88aa649f2990 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 22:26:48 +0200 Subject: [PATCH 053/199] Adjusts rig stealth module costs. Activation and active power costs were previously a tenth of the same costs for a mere energy blade. Now costs matches that of an energy blade. --- code/modules/clothing/spacesuits/rig/modules/ninja.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/clothing/spacesuits/rig/modules/ninja.dm b/code/modules/clothing/spacesuits/rig/modules/ninja.dm index 6d572cdcb3..f2d94d56d0 100644 --- a/code/modules/clothing/spacesuits/rig/modules/ninja.dm +++ b/code/modules/clothing/spacesuits/rig/modules/ninja.dm @@ -16,8 +16,8 @@ disruptable = 1 disruptive = 0 - use_power_cost = 5 - active_power_cost = 1 + use_power_cost = 50 + active_power_cost = 10 passive_power_cost = 0 module_cooldown = 30 From 2fac0b4d6412adb7148e6276c1c2ae249d430669 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 23:02:41 +0200 Subject: [PATCH 054/199] Changelog entry. --- html/changelogs/PsiOmegaDelta-StealthFixes.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/PsiOmegaDelta-StealthFixes.yml diff --git a/html/changelogs/PsiOmegaDelta-StealthFixes.yml b/html/changelogs/PsiOmegaDelta-StealthFixes.yml new file mode 100644 index 0000000000..e13cf9e6f0 --- /dev/null +++ b/html/changelogs/PsiOmegaDelta-StealthFixes.yml @@ -0,0 +1,5 @@ +author: PsiOmegaDelta +delete-after: True + +changes: + - tweak: "The rig stealth module now requires as much power to run as the energy blade module." From 428014c37230ae6369c42f7ed9ea71edfd881c6c Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Wed, 13 May 2015 22:06:27 +0100 Subject: [PATCH 055/199] Layer and throwpass fix. --- code/modules/tables/tables.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index 7ad07de1ac..895938898a 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -8,6 +8,8 @@ density = 1 anchored = 1 climbable = 1 + layer = 2.8 + throwpass = 1 var/flipped = 0 var/maxhealth = 10 var/health = 10 From 3d1b6717035a494e1e1e85a070ff87914770cecf Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 23:04:33 +0200 Subject: [PATCH 056/199] Asking for more energy than a cell has stored now drains the cell. Fixes #9252. --- code/modules/power/cell.dm | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 55c78538d6..553891565c 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -42,10 +42,8 @@ if(rigged && amount > 0) explode() return 0 - - if(charge < amount) return 0 - charge = (charge - amount) - return 1 + charge = max(0, charge - amount) + return charge // recharge the cell /obj/item/weapon/cell/proc/give(var/amount) From 09754dbd1808c101088a9e90d155be31624d92f0 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 23:39:03 +0200 Subject: [PATCH 057/199] Changelog entry. --- html/changelogs/PsiOmegaDelta-BatteryDepletion.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/PsiOmegaDelta-BatteryDepletion.yml diff --git a/html/changelogs/PsiOmegaDelta-BatteryDepletion.yml b/html/changelogs/PsiOmegaDelta-BatteryDepletion.yml new file mode 100644 index 0000000000..e36fc586da --- /dev/null +++ b/html/changelogs/PsiOmegaDelta-BatteryDepletion.yml @@ -0,0 +1,5 @@ +author: PsiOmegaDelta +delete-after: True + +changes: + - bugfix: "Cells now drain when using more charge than what is available." From 3c557b9137d00c0cd94014156b9244e469921d93 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 14 May 2015 00:14:47 -0400 Subject: [PATCH 058/199] Adds tail icon caching, adds frame offset to dmi for looped animations. --- .../living/carbon/human/species/species.dm | 3 +- .../carbon/human/species/station/station.dm | 2 + .../mob/living/carbon/human/update_icons.dm | 54 +++++++++++++----- icons/effects/species.dmi | Bin 39972 -> 22708 bytes icons/mob/species/tajaran/tail.dmi | Bin 0 -> 5960 bytes icons/mob/species/unathi/tail.dmi | Bin 0 -> 19340 bytes 6 files changed, 44 insertions(+), 15 deletions(-) create mode 100644 icons/mob/species/tajaran/tail.dmi create mode 100644 icons/mob/species/unathi/tail.dmi diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 5c01ea38b4..6889529e6c 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -23,7 +23,8 @@ var/blood_color = "#A10808" // Red. var/flesh_color = "#FFC896" // Pink. var/base_color // Used by changelings. Should also be used for icon previes.. - var/tail // Name of tail image in species effects icon file. + var/tail // Name of tail state in species effects icon file. + var/tail_animation // If set, the icon to obtain tail animation states from. var/race_key = 0 // Used for mob icon cache string. var/icon/icon_template // Used for mob icon generation for non-32x32 species. var/is_small diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index ee8a1438d2..6fde25abd5 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -19,6 +19,7 @@ deform = 'icons/mob/human_races/r_def_lizard.dmi' language = "Sinta'unathi" tail = "sogtail" + tail_animation = 'icons/mob/species/unathi/tail.dmi' unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) primitive_form = "Stok" darksight = 3 @@ -66,6 +67,7 @@ deform = 'icons/mob/human_races/r_def_tajaran.dmi' language = "Siik'tajr" tail = "tajtail" + tail_animation = 'icons/mob/species/tajaran/tail.dmi' unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) darksight = 8 slowdown = -1 diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index e1231d97a7..7cb748374f 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -5,6 +5,7 @@ icon_key is [species.race_key][g][husk][fat][hulk][skeleton][s_tone] */ var/global/list/human_icon_cache = list() +var/global/list/tail_icon_cache = list() //key is [species.race_key][r_skin][g_skin][b_skin] var/global/list/light_overlay_cache = list() /////////////////////// @@ -883,14 +884,36 @@ var/global/list/damage_icon_parts = list() overlays_standing[TAIL_LAYER] = null if(species.tail && !(wear_suit && wear_suit.flags_inv & HIDETAIL)) - var/icon/tail_s = new/icon(icon = 'icons/effects/species.dmi') - tail_s.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) - - overlays_standing[TAIL_LAYER] = image(tail_s, icon_state = "[species.tail]_s") + var/icon/tail_s = get_tail_icon() + overlays_standing[TAIL_LAYER] = image(tail_s, icon_state = "[species.tail]_s") + animate_tail_reset(0) if(update_icons) update_icons() +/mob/living/carbon/human/proc/get_tail_icon() + var/icon_key = "[species.race_key][r_skin][g_skin][b_skin]" + + var/icon/tail_icon = tail_icon_cache[icon_key] + if(!tail_icon) + + //generate a new one + tail_icon = new/icon(icon = (species.tail_animation? species.tail_animation : 'icons/effects/species.dmi')) + tail_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) + + tail_icon_cache[icon_key] = tail_icon + + return tail_icon + + +/mob/living/carbon/human/proc/set_tail_state(var/t_state) + var/image/tail_overlay = overlays_standing[TAIL_LAYER] + + if(tail_overlay && species.tail_animation) + tail_overlay.icon_state = t_state + return tail_overlay + return null + //Not really once, since BYOND can't do that. //Update this if the ability to flick() images or make looping animation start at the first frame is ever added. /mob/living/carbon/human/proc/animate_tail_once(var/update_icons=1) @@ -911,30 +934,33 @@ var/global/list/damage_icon_parts = list() update_icons() /mob/living/carbon/human/proc/animate_tail_start(var/update_icons=1) - set_tail_state("[species.tail]_slow") + set_tail_state("[species.tail]_slow[rand(0,9)]") if(update_icons) update_icons() /mob/living/carbon/human/proc/animate_tail_fast(var/update_icons=1) - set_tail_state("[species.tail]_loop") + set_tail_state("[species.tail]_loop[rand(0,9)]") + + if(update_icons) + update_icons() + +/mob/living/carbon/human/proc/animate_tail_reset(var/update_icons=1) + if(stat != DEAD) + set_tail_state("[species.tail]_idle[rand(0,9)]") + else + set_tail_state("[species.tail]_static") + if(update_icons) update_icons() /mob/living/carbon/human/proc/animate_tail_stop(var/update_icons=1) - set_tail_state("[species.tail]_s") + set_tail_state("[species.tail]_static") if(update_icons) update_icons() -/mob/living/carbon/human/proc/set_tail_state(var/t_state) - var/image/tail_overlay = overlays_standing[TAIL_LAYER] - - if(tail_overlay && (t_state in icon_states(tail_overlay.icon))) - tail_overlay.icon_state = t_state - return tail_overlay - return null //Adds a collar overlay above the helmet layer if the suit has one // Suit needs an identically named sprite in icons/mob/collar.dmi diff --git a/icons/effects/species.dmi b/icons/effects/species.dmi index e652652e5e5715fe6dcfe1d729428ddf265355b8..99588092d0852790db10434851a12a953e236a77 100644 GIT binary patch literal 22708 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 F^=|}$pxFQb literal 39972 zcmaHSWmp_r*Jb09;1+@gw?G2H3GNU)xVuAeZy>lk!JR;GcN%v>u;3ot2`=4J-21&V z-^?>JKf0?a`l+t7YoC4AUTd9jB?T!A^w;Ph5C}s?T3iJLf?t1rp&|okW>;>&D7PS^YZe;)iks)I zT+$4U$@Nd`CHhb@(pX>jt|X{NNth71p*w{IKkjACMaCyT3mYtl@xQpQN2$rswH8%I zBb<>#McLa`eDX^*kq(s`lT|Cpvl_KKZc4g?%{{O}3QcEor54l`Fuam<7G7sbjq)uH zjyvc|J&b8-Zy44<8_zUhh8n zCDQKF-fih6eDh4J`7P*_pv&j2#a+5ny~t|Rq7`c3RF`>_B%Lk^0#Slw#6{FRGLJfZ zT}(7QVGk=(wWeCNk5t|)=5%Q?L-KU?uabkpRc}R*u`Y4p7;SikzXff|s86dbx~NzN zz~40>Ts9Uh7wTHt_sX&duopf`9y;ZHae85b+?>P{KtmqJ!S<#qTO@{d;dkVf-}Td0 zrf<6|%Yqm0u5`+cMMa%yN0voS2gRY!gmd*3f-9zm5U0Ol5`Y=3HE{?6d-0KH-7u%i-*pqtg zS`^oZCBHhWqH~8n!BTpZ$LEWC-G|oi4$o&6(XXplgZoJ;d&+hvs8bc-K|gbz8qBEn zO2bWDmQI-AK$xj0M0QIdyM9+Q#W*4r@1Wz2Y>$eR*dM;0E5%_(@zw9f4`&upl@J`c z-_v@8Xl$mcH;RBChtuHMjXbBr&eUIl3y$V818W_j!MNvepls+HmP~Mf`fWtsUO!eH z?4ZieKHQh^&gVo!5l#s)tarP+aYZ9VTw=T)Vs}IGq0L99yn4+x2!;lX4RJgmJXTi? z8T2Qg9a)mBjH=dr$zo~_Q`6pntrM<`q*`Yx1h_3Pgrdfey>2e|w4?XAY4sVfS(>h# zbRNmX8eUKrQ9@IS0G)|*agP7o667;{*M^fATMx9Qy437p~=_-@|QGIQb1Hd*(`1fAcMJ3R-!3& zk{v7X-y7&9z5{;GXO|4p-E)4r&VPD~@r_||%;)!C5GgAbbUjumoCvy2@zOo$`LIXv zcuv3J=(@#`{Qy`0)Nijv%F4~!abf+~aLla910{PtHeZgEaaVxafdgFm?HUlL^d0b$ zn}OCQc&t&Fa-I}lbwqKrb73_>>bmvw^^1eQfhSky>t{0BLf;6`cB$7M%)K|x?0()8 zAMb!Uqc=Zye>H{95}og?qkupfuwx;3&?@O8Xve^J@{&}|+<@&C7=hdohtvKH(}Q
    Y;LL!5PUNhYg2=vhhB;j-~@czx8+`iT; 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 V8RzL3=np8=e(!*Nm7Wpl{{?9GkK6zN diff --git a/icons/mob/species/tajaran/tail.dmi b/icons/mob/species/tajaran/tail.dmi new file mode 100644 index 0000000000000000000000000000000000000000..62a432ae76da0d9f81c9c439ec0431e3b17bb0b6 GIT binary patch literal 5960 zcmZvf3s@6Z_Q0w9yR`LzZFSR@1^nu^YJH^Ic3F!_T6~~oE526TA_-P2RjjE-31*n2 zuC1u3xK>JAHK|e-6)`H05W*x_N>R{8KtLdwkx&SbWQLf>B$-UIcLH?%zWwukoVoYT zf0z&sM*eTkGjqXX(we_*SYB6G zw_w47=;&zBxV39=6&QbN-@4W7!`>TsxE-{Ok`0^oE&D{Yb?=VP_w5kw4hzdZS60YL zu77jtVe>%Brt2GL@A>}zq9o!boB7y0{O5MttI(mA9q~sdE{tz3zq3N6op^rT_OGWnMP_ldxghuc68mt&+|Od5 z{w2p}b^X|0lviGUXXgga&shs2>(d|nrQ+=NSF{bCiGdx>L+0t!bMf<@dj7WXsR?Lf z!&AtzFQ`IG$9t=Jf`#)>a?{rKYp^X#Z!J8txa`!WguT<=Df@KI(mM;^uDGyb@>?AV zD?eI$@z}BAOD`oIe0gX0nt_Uhn6>BHj(xxJ?Zio<6~FCR3jcin%|9lz9(!T!OPQUU zuB|^=aJzopxu*J8&o3`%r+;o1P14WKe&>W@OZJM&%uoHd%IBCC7q33;|M;YR@&0QUz0-fm*r3i9O^Y?2 zJ^sS1p?e2LzIw~_vTOeC$rA)yvsdiNi#mI(BiY}V;IU7?yK!IEOEq-UWPKbD1 z!#QtUJM`zkci9n!58l{3X>V9uSlINZRxNvfL-skFfpdDMx!~~HXWrlXeaE~l=Qhr+ zes12DNq;%?{=|PLlwNx6_`)AQ%zb`Z%H;`b{_*U#*H7IJQfcS5Uiy3WiG-{ha~3Dp zYNA05F@HVY-Ij=IqB->_N!#F{Ti~+E+(Hc-OEbo6m-f-+JnRtFIMMau+j918I*D%D zBc>ZYdjpR>iEyx=E@tyO2`m=Ebbf~l`}`8$lS;;Iwn}q`1EKdktu*lO=6r_$8)j)~ zs=6n*Nf-1-$LM4}hf$Xz2-w_Tbwq8{2x2@*Ft3WBbkZwwNELJ`RmM))Mv@*P9v2FA zRxWL~(er}>x}YccxbX%_!wO!%w>0uv%wV5lza?q`OdNQ`xjIxM)C)auNR2%gNMmq~gb&zDl!0{U>@DVDSoeG5j_GTG4H-nC&B$*R~ChrK5y(Jh1k~-mX=gxAKjz>Fr`#=jk_~w>l^XVsqO)o>|0NM2RS#g z)99H&U)F-7-H3~#^V`@ud3~XlB*|9F7pTJNhmM>Qb_T&r<2on^?)M(7f-E%d?~(pB zh;|zF(%u-PJ5nI#Q7(z|8a*-`ceP4k zJXHhUD$6vAv?OB@Aqn_Pi46U`UHM#-Uhy#xDvudEfL~NSOLbqEcfV9vt~{?xiL7EI z7JEgx)S77~+EdxPG|Wh>uP%wmEFs#9Z2y&gc&6FfJ`;>v+lzp-v`<7kSGSZh=>zLPgCR@zoOD_|RZrF<=ElJ|( z)K}Oc7k+~8dtaF5MmzKtDHe~=NS(<@%gDl zCOa!1(~PPATt9&_v=r3nqiOkW1@y>KCS~^ZwN(_y7QZx z7*{;PXL=4tk!yI!trp*cT>B`)34MM~sjB#)c}mat2H!M%3FB+tm5|_d`4X&-I)!rX zaK%m(p%3N`f3=8ImvAwfO6_!XcFuyBuWmr3@mfGU8+>I&XMm|NLI7 zD1tDu7uiIt7EMOCc|nOd`KCT?Ga=7b#4jhNjM}s=^O=@ZmYA>@DT%osva}N65cwrg zZv^Jdb>m*QdMk-POEMC)4~1m&kTG*PAxcJsEgBZ0=eV@{3BHvpK8+%uSZG@VZimF9 z(|_T84K<&fW9O1DD0qz7;&TZ3XNq_UA>XBlmlFJ>8~SLSSa*60)04hd&lUSo_=~-6 zb!@H7fx<^_y44y?x1Zo{+Cv#8r;@nngByBeU;g;=k3EM2Up<%%QwBRk-h+nZR2__a z5Gt?+KEIVwhf0=qQHH0T_&wn!H&;A=C!?DB;6BPBxZ?XLJw2q$h0^_Qbrc~$#4;C* zw?ksekk8XO(Xp^jf4;#gDx3-IJcnFD8Ez4-!c}gyN)xN7NeQlOwTgseL3a(R0Y4`W zNyz4?bv98WZqyUamHKFnShuoLpO!$#cPKQ!q41e9QVo;|yRIe*d@(xl*kS!vaEmg; z{p7^^2@z%pcjHXJ#0vAeH6=afYu6S+*B~3kzN{U&_r}~%GIpMPE9D;%@#4PiTPBf zA*2T$H6jOqGj7%tzNCbo*h!hFIFV{~VGg1A#hnn2M$`lY%#vK*qtxR2$0cxZ-`l?L`>4S`u{vd1ZwYFUCbmNo)%fU3|B9ZXXnK%pERSXV%DM7D>SOZk1RFrw>tvUWgnBpRQ$$ zmkdm(dqRQ{mEP#_e~vKD{l%PXF}_HMN(PNjjq2Ofa+o7If=b-b!x+vzu#Xrdu*lCP z?Uy0YY>6jbt?MO^FOysKj`P~%SWzQpUfoetSgt?+V`8LEfBtGBZzA% zoc@gS?x>FU)GMqRxl<8V>h^r9lz&??Lv{wmhp}q9adM zE0gnUl`7EszJx_s%3LN_xxO`zbal)EKV8z9$7@RkvpN38MtvW#x%V6j!ENpSp>c&_ z(N5ERiQV`r;<*ddedaP56*>^3k+w3nV7MU`(e*h}*@F!{?dD6YSbv?wo=@gm8gkto z5_@uy#C{8@kWq4i>W9xx-H*p4|uewFP8V%u05^-oFIN&cq}m;g$v-8r;lA zyTOE5PQc0xf5etj-nU4TjSpJ-d5EXd5u7{JK%6aN3E?03IUI9hN8VW0oqCd=^BvXf zGL@1Yu14*4HWw+;%5*uGS;8g3J}?1S#6~-lEDafW10~skWcN8r+$I>Q;MaP+z|v?) zM>Q~XAy`1%6=3LMm&wwSr>EZ>I}CSce#j1_V>R!yQP=Pzer+XVgd9b8p2}TDGCRxe zgm;eZ01Do)I3nC8jaysE_q%DwcyoXT8`5kfuCjD+@Gj!9O)QaxJ54G=P{HESZ6G$V zAW*QJ9dn%jr%}Z-F06y>e?&YLkN|8UeryXFNHzw4%0}D%I{^HfEgYTs0l!uy1{=}J ze&N?HXQOs0lC1|ZH68J!OYG{{Ka5VDo>>N45~c&K?y@MSsSPhv2pGF_Z7Ai)#6egQ zOoFGR(i3nd;_;YyS+LY%PKhVLt6XmII^X}x4)DG9bGFpB!8F|9GJ&9x*w5y-faO4ONOI^h|6>cvR@!q5WtTfZ=^hUhx!6+GrQ9fi3ncS z3XS$aA=oCWJkhP%T^sBN%O<;!UF^Vb@P}&1K8qL&j7cLuaeRxAiWt~NTlJXp3daYq z0%?*~#UQSO&3Fdj^T-M-=)(JmCA)d4`P>SzyhcGk=J@WT2eh=c)7lb2{`wZ4q1%?v ztr1VTsYu(*G*0Ri=P!-}`iy@?AkY!CrkWZ=;Y!-tO00)SUvq)GyblFVDskf{P_?p9 z-uiW-E|#r(KyIbDm13o?S3-5Q;H7T7Fmm&LUc419Kxx0)f@dUZlsy{3)fz>#O}m`X z4oI`AsSbo{rMk8d?@P#UE;Eha87&Nd89>;2FMvL2U;;yxaRjEFC1mm|R?FL*FW;k} zd~~mb;X(kMzsnYgq?!z76vPto#$E-)(url4s$u-_b%c5bq#G69K6Y<>+j0ox{Eyua zib#NSJj(H5b;Qu+5}d&!jkfoK=z!_4%zrZFL=L|DlX7O4q8$;wU_=E%$ zrG;@I0a2s@egbvXf^32TpBE4@k*bJ8(Nb4J z1#Qz(_RAptp&uAH>+3J{Nq1o?!bm{_gQPq*y8=a284CtbV;;a3C^X1lvYC*+AORSR zwlSm0351X|DnKs%GK9F9`U)l}0fy*|VuEN`>Kv!HeGk(W@iprJk7MBYB;M)PKJVa0jwf`q3f}7=4)V`lhS03KH4RRfnUZ;>bVmErR`kCY#usF zokO70;J0I?FTmaWQQSQr!d*_li`B?wZWPgFEZC)h1|3SHhKI!iC1vFPgpjeU_0Vhar&;W4De~h&f zV-T!InUUzo%|5sX<@7Q|DI-JP6JxN2@#6TCEGK7#jufc2pP=8jK32s4`)A6qkO1dW zh2No=^GR`KmQdLciUttiAk2XQLcvZIfZ_(QY39qJbIdG1kuc`21ZCoW<#?HR{B?lR zDS)6sL1W=dz{waZ5rH--f%*=ALWo%RHF3P_|9hB#mR~4vv4C|%5uj4azyMoobR%5x z6V=TQw>od6YA$g8zZSXGFU|o4#fd@6FtiMi>}*hWCfoq!-hJl&$gse8VO1A5&S(|# boUtFRdxM*G^tDJPl2+WS5>W#xOF)G{0*NR{6_vUX zQ6cUqTUdkuVF-dqH7p`R2q6jkmJJ9=2wCQR5^!t#p7)RMeE;b=9_M5xGZ}d1zOVat zUGeOW?atG`nD>Q|kPr`a1)ctJPzvSojk1yZ;dF|0r1#iQK{k{ozR^9&0OUbn= zw@M<=(&+N%9wjuM^!}oHO(zuAc18M2&k0wHH@|=D)$`YV^}3MNKc*FIe$#fpO1bBj zkCl5ed7Gy%WzGX#x-eqS;EKA+?{^@r-8J{(+j4%N5+VQLMnL!J<<^eRvDdyDdGZH8 z#cSzpNHCkTr>J8q5*2V|#dkiuX)tp!B>zHS*YgH>-{ZjE<6%XtM_Z3~esNbYGqPe> zq#Ho|aGN>T9ouVe`u)ZICyy%X4r#x;b+!DEWBK9B6DBS^-1+1(yUl*?(596sN%x;} zresmB{BSeMes#|k?X91WOr$!WO1ia(Gw;-uI{TcPX4c}?cGLY!QrwBJHz&B0NV|KU z;5`pqt6u)#`LsXMFMIDO|1!<1^zWD*8J_kPM`tfT=Kbd6vsAO?$M3vZhS;8c^z$lD zd+ZfA?Pr^8PNg1i`zp=O=*5Pe_n$4ER(kBx)o)2xoE|Q^%RMvy{Kfq(bi2G8XVPy2J(eLYj-5qvI z%<~H6{+)1p=l5JK`g`lYurA;3ikuwen(1(o@L1*Y0Q+Oo`p-$xrzd_t#an94YWJS` z?b@9`S4)q51{Tx%KPM0Np)EtIk+A%cpVJvE7cS7&uI$egRGOZb4CQqG*@s5kbjXkb zSpB)LXQ( zVrb1J@E#>uG2&3F87}3nd(*VR$LhAkK_kZhNf}g85(S@~bI=^KVEo-8OO!anB@uI} zR7<4k$YU|JP|NcRE_!cp3s7uDs46=xc|?ej!AnPEfpfXp zQY2{`-?z(xf1$e8vGfG$ob*f&lCH+5MLqgB%Bh@Y}Me1 zwQQG7G?Y$5pI*@pcP5^_?#=(~`v?aYa4*u37 z+#gFeae7u_vAm*-F*1wGfOviblh@y2$gQ}InvT&_d0fn0E(YA3&MJ9%wi?y3qEb51 zvFm16iMFSPh+XyL@whcNE%|>9dn`I8WX9phg>bu?nV7PMWV$G#DS;MkEs1Hw z{nC6uJDZDH)}Q3M{&Rk~Y(Y|_`r`-4$Z{=Gx^sBw>(?w+9m~N2Dvq_^ij-0sq4eA; zVb=wREl8=;a{S=L;rwI*8cBm2My9T0z|8GPsZ|Ei9W(Y?A~9UaeUnd-ACj$tiq*#Q zp`V~){`z`! z+qDOS%AwH7NMT_&k`OK(9va0+TUZXWp<+BCTuU>3!*aNl5|MigjjlOM2=`xyMB**l zE*;&8yZS@B2r9_Mq28AU{Z{D|$f2orDiL3Zp6i=}M-;dF(?qS1t&D(Al&5T!F!w+? zjnFDtK#yE9in&0|S~>Mx7%e>nR~^9(hZs87J6d|CYd#*A5rUNTf_r1AjXj1XPOC&o zVvdI&FV0~!A`}+#0$LdAmfQGz-|+(}ojPW({#B1B`;S!e_X*K0b>I>!h>N6-*Kl@@-#Vz9{RmYA?(6qoYp4M@slg> zDJOk=f4{PHzUp11&nL(ALE=QWY|XQAAg znd?CldPB=0#)4t~bF7kFNXn;N6Ndyenbb2pR?w7<@KH^4A`h;U=R)cJv?UyqEy|bs zl#Tmpg^--NFB`rmv?jXupzgD#V}; z^P67mlE6Iu`EGIfkOO4nR;&8>Bd=}ZpuYN5deLH;2(n1xThw}cO9TE8qPeg66uyOv zcd#_zE_-%w-UYB;hM>Y2JB+j@B2ZTjK3yZcpCwV&sW@nl!HhvOA4w1^lZN-z9qEQ` z)$ZBaiKJBas(NleI?l{z19E9$2|r2Yn+S)j%B}S!1fP10W_#jv|pb8El^~iJOXJlHFYqe7^?66Wj^;3*TOEpj(m24 zxWXa{&F||Z905PHe1u)!w^q=73cK{#{5MXrK6G|s|exC2<{y8z8rRfq@u4&&V0>^tD^T^SU^1T0_{(eCDBD}QRH5GHb?>aA*;apeQYwXh1Q|%>H{Hh15j~i`y;4ND{DZP6`GZpt`uAL`dBY-ZLI&>5w+o%i_0C4`(?6F1A<|{dai9`k!%)G` z{5HDfeC2T20q65Pw};!P@e>IV*7_xn?yXDpnGZh|*~K2vN@ZEuDUA zI?=t`)E-lBQj7`ONuzlqS(>))Sms}S#yVLg);*~aS}L1-gE`H`9xBC)}u-YYtRu*qg}gH7;Q(CV0<3g38Jxc$o@gmg$0?oTX;PCBmm<4~Fg? zs&u(tm^M|JvzUWspMkQ*`-=+-(>wmeG_z70YZXP8p{x^zMx&{(rBIMgjPT*_NKPy> z33iX5YJ9i9RNpynsettAl06@q+ct7(r?TYSjZIG|dBN|?Y}R<+sfh^F1>9D0MDHIT zm?LRJ@8xkfj}_js4Mgl|J|`KveETu;K^BRvuw!PR2qE{E|;vm{>C13P=%^VzIU+`CZ z;|M*om!`0dKmKi$KDSiPTIdV!maV$lD4pjVm1`(ekG|rb` zEwE0!IHDWPM)rH{9X@XnRNAWZM(49r5Ml7aBE$$CNSu`9T1ES1 zsOSU|$raX{XnG#rCq^+ddz+w)3q-%uszXQ{PTCgb&}GO8Disr=lxNo|^HXt$dSW4Z zlT23h+)UgM(8BVl7YZ?(kU_cV{VqauqmPWzHWiU%HOxN+6+E4asPe^{78KFxcfqxr zn4f_K==@C{J%o~Ewc7hMRB*wiAP7n87sn7I5m4!nVoesJsfd#ID^3{SqQUydRuF>a z7M9|M28eMODgC2lO4dXDiRiw_fy0*d9&uut{^1M>k=it~7+*oq9;ih91l@|QMYp!C zF+8C~h9{I}%?9__`Da;dfNFDC`_9g9am}Nhzm&~yxXWMk`!fzP{NE3%QR~vZ!|l%} zCm@gTHAi|}huez=qYC3^`|8^Fe_%)fd+%v2Q zU5kvw4v+0veR+IiAV2y4NTb$Qcb*|s;%~7bQTs+>FDX@0>Qu~wY zQes5~8olu756C+%6V{}P6uwH-WZBS9*97j0oe{VWWQPpbkvLge$ZxcqlSu{Bn~qw1 zCqrqqt0+jC`VCct#X9|nSB>t{KkfOjx0*btyE!tIab4x|exy^Uu~|3P?C-Wr#%Zta z1vA}lTv{^K-n)AST{OxO3xeQEB9@|n^6IM*_>rz(Y?mt|9;)k@NX+w|luDMNpC)+~ zoS;=q&Ap3A@C0+<3oW((n)Xc*J+w$QG();ElOU2x1WW5DwW(NQ9S`)_-8f;SCJ(h@ zbS6rm-keG0>pFF{!!Mn>@sf-@Nkv{VO)^ls$0YQrXXAdIJeTWmONx0EvC*Dn93o94 zC$17A*hwwA0Ugbt)7}=4Ou6PJlcXVve!G%0*)!xcak8exjCw#3I9Pk6WDf?@;ky;yaFUyI{C*I*coC^IgdGF(-;j&lb4i2WZ#Wj~r&)I%^&?Iw#FIa+Q2UP)qOz=@(pxXYJ!vmNSD$cP=n@FuI_qpN zbH47P1TX9ox&)B>f}mxx7=Pq;%$Ksyz;9l6-Pp3y!)bLpjYQ@JwGpj5Ic9)>y%O}mzPaDfy zQ(~Y@f29A=%6?`6=TP@sitzNLD^Qp?>m|GEt-BhaEmP4NW_-2-S9&FvQ0#FMDWz- z6lG_ux2C%$3|{BYTeDY{bFdiEc;1e9Y*WM3?j+Zbf89n#)oUd4x7O(Hd`XC!h9!pZ zSgiHavF@NR<#1_;F#AHZXTGb_R`-(=Go51hI7AxQr`r<9M7Mrn7QaJXl|l?Q6*gd< z`c}VTm|x?;i~uHj|A`WHqzGr#%zCM4w-q&Pvs`}Mw3e>hCS2G^74l{a=ApcOl;mRo z?+A?-c6$uxsG;;|FF^1rO-9*TH%MO)hh5+%qEnzbTJ= zf@`g`&cj>?RgjpE{npf>z5WlNLqimhNU{88?0w}NQH4QrE+Llg;R+mDdy+@Kl0mlX zROg3&8DwqGgVh1CpyU8(10>oTjrGRN6>t2^Ij#GVf&V9-kx#Hord|_fM0ytK;`Spm zOUmy-MMZf01?mbdm*^3C@hgcs&7k%9R$49Oqdh=&relynLe<>(z6^cqoDr|+@8^3V zPzQ)~I`M*&&ul-zX#52~U2r6*WWUvk*(NP@yGq<`_-RWpwhW)`i5{Jt;ej*v1;1VL zfW0Er@(C_B|3)gKF@o@liJ$We{|l-#-9mpWaz@VlZF`f+t*~gfs$x}xtf$x5vWSk= z4ak66u`C2zBl;~{5jGLk8nF#IKzh0XDmeq>Z0t?&$Uj7k)LK!nA^Vg$RaS>}KdosS zoRO`@^G69fT`CeiLL91n*eAZ>e#p|$pw z(3+1I@RWTD6qh z%*ID&QbTzef7t@%-JQ9xg_U}U=w+@b+bh@Ofhv?X;tp}y_Up5uti#B(eJHMQv!d+v z7+V3_7hN(U>aL3&Q7v^TpzMiU`F1x%)MJqD(=z6@T630fbcgdso_g`o@9WTw&!Nm9 zWO`=ydhn>eQ><+&dKBL`mr}ckX2ullhO%_Nj98+32yRK_f7Afl4QbM!bls1Q)y1~U zS6E50d)_gIm!`5UYPq3O&~7qO{5h!BB4HUB*RMR&IGl41vEnY2S)`mTj%l#=f1>X< zVTOKlOLYQAdnAp{@nU9r1KQ!X=sj^bD}VVDP-7j-hj4eAZc}DUL#`nmo)f*R!*Z=x zdldH_so3eJ=WtoK(1?$J8%E|pz+AtjUAJI(!rYezNqeu}WKEJM(uSMHQVcE3lkk!< z^_no`s_Fz%;tds5Sv$rO@b`u%oL199kiy43xlqA$Vn`YxoP(yKTeb0h=vDz(ILQPj zZrm0{|7)n&pXP!bpx(SJG1e8`J*dpLm1IoszM`)oHaylA#pv(^y3m+!J%h(hExBaq zHnp|Fc`i>}>A^_cHX4om9aLIPh;jrS>1H+NjJ4+p(kr5gqJ5IJ=W^;b$JTy6{~WmX zet439qsceHZ}^Q~p`^~}>7bf9wUt4|sdR)y?lnAt#g&z!_k-Rw3CchnlTorQ<_Ieq z@L^9}U6qo%Q1KSk_oX-VClVw>rT4@kwO74ft zQj#!ral+@5yPfu?htR5vRSB}k=$2W;fbMGgt=i%C(7v&Tp^V7zMh3-?b)e(5zVU)> z#3+Yh!*T*@_VOAMlB=A6T5&9H#+$g6WQodGWK7CwwmL`-zY4}V!#niY?~=&42C4Xq zKTp&F6tE0Idd{D>v~%PiE~SPo%mk zb_w~-ecddFV)MfOY$k)8yVX2;%!D9#fomuS*}7-F>ogJ4CF3?k{Sx(cL7{%CU=vD; z%2BS%nv9RTpH{JJ1EoPF72?YZ_eN3s*OHtVIw8P zBi@%646{hvCKh}&J%bBMOCsYPQ&f8+BlR5%@mV0N=2Dq<@a|hY1rPdEk5g~ zF(+VC!ojC#&cG_k7$MH+K}CFI6-2(X3OxSHDsWhb3^EbuWWK}h-oYxr?yH3{qKwdS>0z`MgmH3A)QKF%r?kX zRH63xLd&))D{nA!*PCq3K;>y4l*{w05IGQN^DUz$`OJL-hd&U!DdPfkAHj)Zcn8cG z6RM;UlMN?GO~g1YX%{6nx6#eoO>yvj6UP;`}x$B zuT84FDks@}KF5KGl!~|?lc3Ts0AMeK*UT_?YtqB@lT?Gw&3aLL_=vV{MOIn`lo=~8 zn?tteJacKPsJe+;4SVOa^SqJ%dkl1^SXDg+PG6wiid-9u=stYSUKumfN1^gGNM13| z1K0>FVQf!j!$crXy$+sLygUQtI*zqQrbH91CkTiJYfsRKddF>tm2gatwLiJ6g7j?q zyG}+8D*2Gf9OR8L8QpoAft{NJFA44b94P$(w|D5}#dmwGujA4G9I1bn6~r%Jt&ZK? zYy8tyaYG0aX}0Pr7An5S(yQ3EPC_sT&Et-+Ml?BS{{2RX@c@{GT0+#4t!sW0ucS&U z9MfGXs{1`Vq=CCbVQD_tRi~0Dvzd{HkxRI7+$>kS@X{*BHG)yQjGJ!2`*V%(GZ+sq zz_3a~T)&R1)9YX$TL07MOmBk64g?aE!f)OW))Q!QML#Y3Qp)2=1WC=hLN1vob~*3# ztX9hG9PI-d&(o3Vj0;Ft&QWV0W)7|=hBSaEHk!(z^@>Y?a596c(oYj96 zNNMepJ@H;)^KI;IO>|AT9_Yh&d`~+2bEj1Gn)(N&c^jl3?6s+zf@Xkur z#t8Z7JOvP}N5o1Xg2u7{f#C5^M7N^Io(T;{cmUnrRK;LR;AI(8smw+ru2#pZqeu^`td$ zy0Ap=fmKVzkqh*)x2bcwyl#bPG1r8f!Io#Co7zpC$M_D?9{lF&E>)>!zd+tqVtM;DUH2}TJtKaTc7|2YbX$`#B3AdCw z>!Q_Mz+xVqT~Bm3R~D5)Sw+vk1QRUr?F1X!BbY>>R->Kn6>rz%?2?y_QpJ`MYy*@r z{2%pzd9(!oJ%2RC%}&-_`YfWDvPYg@24#v}3YvaIRUyS}LzQ6$>U3cqnv=pz6Bv3d zFy99lE&AD?5Zfje)RZ@JmR#wDyUU{#j? z&5Sv48ojrey{AOh~2TmM=3jAp{T;Py^*{;Z-4|jqOP!KEc|A{*MO+W9#Ym;db=38V72IP$XE-Wz; zAX(HyVifr;yS8fPc9cL=%X_B?NG7t$CI^ zGU(Y(q6eO%x@2bC6vrKjHc<|x^3erse4WWsT@Rf;KQ+ z^B8f8A)Br^BR~C#B8iF#@!cz+ye3`h2U56>>(L-&xCo8W3X!p8&ATBrPB}z42JUg~ z#c{9Sa>Iblx3 zyAc@TfXt*2f}KTqiFSfxPW5rz2YSt;hp~BQpi;-TWS8nlvJ)FiUKy4XP_|o!Mj(HI ziRRhg%YNB`tkD$qP_q#uFOHJWYrA$5f&mK#??Bmj!5eZA_ROYr1i!3!poVKOBXfy< zS$}o>a}>H=SQ+{Gv#r}Zze)&T#<$v2B%_h-^XrgTtPU%Rq7{ ze0(_)xl5IVwW=_%7T7j9d>~mEAogwp;1yWwFU*?>@QMc}%FLI8FVK6tuN$C z4Lu_8aNtD*$6_)MP6S%M$V#go!bXq?#cNtq2wwG^m@NhdL-5x3C~6D*7|n6XAo``; zL`nw&J5wul5?%FA0W*`CEudBPhisGQ^D8l9ksFAnZ&of6cq>hGkkm8IIQ#YSn*E3> z?DTF7iUF0YbTKc%uO z-tC%UXj`Y$Os6&g)_xraYXGcLFI#)UKXShJlAA3IEhrW`qFdgTmk4dYB9>0pyY=rU zX>dWc!clRn+e0qbcQ4H61b+pB2XO^s zATBQ%9#}RqQyp6R6-C@QV>(4Jb&jFB{w{oQ5p!n8)@oO6L>2)?T(hm}2(NT)%i z%OcdZ)H>goiY{8>uI@RbN7fX4*GJ#c*+@nRbjRQdB^lUDg%|$a-9T}gHS1g|>DPZ- z9^>9*RbmUNB-L|_)pjas6T_lclB2==4Ipct?u~*ngU$U3^S7SV9v32;bVr}w`#}6s z1INUuUmx(04DawA7p-l`uj*9Z(q(!Bw*%l;8pczp8Pmaf#&cJ8dR%V|Pq+t|Sw znmI>VWZ7uqp=mp0hVn+}?H^6-M=oc#-A$M)@~v1%^zK8u3;8#~WggXV(G5<|afAFF z%hA+mfbr#Ox}NAAa$y1R4;176K_XlvGt<)q%x-EBXhd)0G&LGTGBry(6``JG_pXzX z%TyonnUHZlv$BQ_(GDa1!2%&*^#t(g!S@&@c6ZW#e)vDf>sM7BPGy}UtHpN^fA7e5 zWkbbV-|R?`4_&lj0NEOQMOXm{ufZ&05yG$RQ%Vvf%uWDdGnWre$*YYhLMXG)Ufoxc z*FlV(94(Uzc5Uoo2r6}oJ0L@2@EtopTd5p~5DK0I9?%x@y$r#MP}mv_t^oWVDA}Ob z#CieyVI|2YcPsFEQ|Q3>fk2LW5#D-|!k14r731*?GXAK#ClD5oc|lD0vM@!j_v9K& zC@-7uAyVEnc$9mD_@`ZyWi+Z-+7UJ?a&&@fVhwwEf)wHTM(EcB1Z#n+4S9$V1#5!c_ojpZbQ{$TOdBA2 z*j5zzXtSQ*`k;{mIUA5!`n|t`xuH3NH2A-*u8PC%t`}>3?0obCwRx9z6mh!9cF99 zW6dItKHqb+3`*bp;m8UC35X(gd$fC}Rtd%K&}Y(R_f3uRgVye(jYeH)xxX_ZVi?~Sx2 zj++DxCPH#P5zt{}{_Fp$0jVnf*)SpX0I$k#qM2+Ey|;n;g|a9ggg4*Yi8Y!cmAWHf zaAGFIMx%U4!W{;THf+}XaY*~t`1y0(_;FDx&W&zg#FY!@>7j4TTjo36<+>YfX~zm^ z)r|S@oO9C&?t^I8caG5I+=`pYd%uYRrg^wAt1sjqqjOevWn}aV4r=#r$iMCwB(1|Q zP-*=OdAlLGfcrzp=YdcQ(1gy3z!4>I!5HsND!!$LOszch1C2i8!MdTw8%F^?^!fIg0~$ z*dFKYO$NipriGP8Ahw|eV8IqUnu_$ni-1?$(fM{{LypK(pCcMiBV0vJNbl31NX#)= za|6Ub4ye=k@8$0X9BvOy>Xd;9{bLHwwyWH}% zAVua`BvhV_U(ei1I^+|aO`)8f_hL)$6{GmY3@t}n`?R=tYZpEt@+*OXwQ$3_pAs|a zd9g77yn=YTHSVxbTY1%{g|WC2#4;0IUV4@2uIit5F}X>HDTc?4n|c*f*PuSoKa0?< z>zC&&G`(IJ+v9 z$^!ZGzQLiBR3KM<5jOg)d3tZm0?@$7$KVtK76qK!q`;Ema>k`JOEp7n$9nQ>nC=*8 zParMWz$I9b$6$=IMBkuLh44x!Ctj6gU|bnJX%3p>4X3=8Q&wFk13WyVM~zqv24u{y zJas=tk4HnS>8N5@_)!7zbA-ETR&x9HdP-6nCP*<$6=wP^L00_y3LY=W+w-nvf2{cM+KNt{(S#AQR1 z$ZNkU@_@6k)u>F`KBn8EBCT8(CxP3hnlYFwfh98_Mv*sCXV0N9^}b|p%3$kzUy`Lo z2w-3@_1OMLN8^WYSidNB)cD_)$GA7S-1nGTm3nN9)n4JEeA{Q$Xl8+#8$i}Kqr146 zUp(Ju6PWweX~yx5?*%WpXiR|89`sxpdj~aOO!3AtcdR$Wqoj5r7o3sHi@|sz8`r*o z>%`TVj%$p1lk=IFh}Dd-6V)mjN%L-H0rm0R`WCviYFrUt7QJ(RoxA}V{sUSYIy|NY zs9A(4@5ktG9SAS^H_-dHA62iO54dxPf6%)9*}2N0niB2D4_|tgh@7CV?Z}EUgcPQY z95LwJo0{_pjaC*D8T(p<1UIDrVCb#uz6>C2 zLD_hKwWXX8lITL1A(w2#D&at|>+2*b$x6+QRp>(qz<0bdxvHgHmO-vBIxFuX;4A3Q zU9NMqRDG6-03y0`^g0-j8R3VOq*<596&OsRw+8|V+V|Fz%v@6c{UD#GPdkaJ3@v@k z3)1MefUFbHcnvb*aN~0VE?a=>*L#$%83JR9RTYzz&y0N+G3JxCtaNu~fyAKJse(K7 z(7AnMK^dFtwR#6gp`0;NXzf%HL95;|&e_B;iR%qY4oEnGv27K6_LAQ;dGkhFdjs1M zq851EPa~B*n?b=t+K_(~4Di7&^!RoW-i>7Aa@9*8ZBp!CDOE<79;+yzlG5TJ-dqp!{cd+9I*%MT<>>YYFj30jId1mT|-f&yT z;&($Y_y|`_{vBN+wc*i&Mp1Z4#P9#>!22nTi>n6O_fr`6QyBMC823{c_fr`6QyBMC z823{c_fr`6{dcARzl3qmJ?5V`GMYL||NjDf3g&(a=6(w1z8!);1#>?Ib3X-hKLv9? z1#|zOgSqsio|KQW3Weckd{9el-~I;|RXyEvuS-Kdz_)rUdv zerzZ>Q>_C*9!4=g@H(cMrnf@z!{K`$efWj5>tnv7MP%}-w_l1@Fqq&wBd04DV?xg> q%We$%xXgI`%hO`n7bhpGVC(+rJ}nD!AL@DT?;EzS&-`uwss90@X@U*_ literal 0 HcmV?d00001 From aeb1f5ae689379872b246e5817fcd8fb254bdc30 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 14 May 2015 01:39:49 -0400 Subject: [PATCH 059/199] Updates instances of if(cell.use(...)) --- code/game/machinery/rechargestation.dm | 3 ++- code/game/objects/items/weapons/stunbaton.dm | 3 ++- code/modules/mob/living/silicon/robot/robot.dm | 6 ++++-- code/modules/projectiles/guns/energy.dm | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 22612983a8..db7b9d0e45 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -167,7 +167,8 @@ return if(!R.cell.fully_charged()) var/diff = min(R.cell.maxcharge - R.cell.charge, charge_rate) // Capped at charge_rate charge / tick - if (cell.use(diff)) + if (cell.charge >= diff) + cell.use(diff) R.cell.give(diff) if(weld_rate && R.getBruteLoss()) R.adjustBruteLoss(-1) diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 62890d849c..ca495ee263 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -35,7 +35,8 @@ /obj/item/weapon/melee/baton/proc/deductcharge(var/chrgdeductamt) if(bcell) - if(bcell.use(chrgdeductamt)) + if(bcell.charge >= chrgdeductamt) + bcell.use(chrgdeductamt) return 1 else status = 0 diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index b762ec79c1..71171212a2 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -1233,8 +1233,10 @@ var/list/robot_verbs_default = list( if(cell.charge == 0) return 0 - if(cell.use(amount * CELLRATE * CYBORG_POWER_USAGE_MULTIPLIER)) - used_power_this_tick += amount * CYBORG_POWER_USAGE_MULTIPLIER + var/power_use = amount * CYBORG_POWER_USAGE_MULTIPLIER + if(cell.charge >= CELLRATE * power_use) + cell.use(CELLRATE * power_use) + used_power_this_tick += power_use return 1 return 0 diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 994256b12a..f85f41276f 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -57,7 +57,7 @@ /obj/item/weapon/gun/energy/consume_next_projectile() if(!power_supply) return null if(!ispath(projectile_type)) return null - if(!power_supply.use(charge_cost)) return null + if(power_supply.charge < charge_cost || !power_supply.use(charge_cost)) return null return new projectile_type(src) /obj/item/weapon/gun/energy/proc/get_external_power_supply() From d6f4828f2a881690f5832af1a3e53b7a10162357 Mon Sep 17 00:00:00 2001 From: Mloc Date: Thu, 14 May 2015 10:58:52 +0100 Subject: [PATCH 060/199] fix an issue with destroying light sources that have 0 light_range Signed-off-by: Mloc --- code/modules/lighting/light_source.dm | 4 ++-- code/modules/lighting/lighting_process.dm | 6 ++---- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/code/modules/lighting/light_source.dm b/code/modules/lighting/light_source.dm index 6322446204..1897272118 100644 --- a/code/modules/lighting/light_source.dm +++ b/code/modules/lighting/light_source.dm @@ -69,7 +69,7 @@ lighting_update_lights += src /datum/light_source/proc/check() - if(!source_atom) + if(!source_atom || !light_range || !light_power) destroy() return 1 @@ -97,7 +97,7 @@ light_color = source_atom.light_color parse_light_color() . = 1 - + if(light_range && light_power && !applied) . = 1 diff --git a/code/modules/lighting/lighting_process.dm b/code/modules/lighting/lighting_process.dm index e2e422bd60..28e1f1fa5e 100644 --- a/code/modules/lighting/lighting_process.dm +++ b/code/modules/lighting/lighting_process.dm @@ -7,11 +7,9 @@ /datum/controller/process/lighting/doWork() for(var/datum/light_source/L in lighting_update_lights) if(L.needs_update) - if(L.destroyed) + if(L.destroyed || L.check() || L.force_update) L.remove_lum() - else if(L.check() || L.force_update) - L.remove_lum() - L.apply_lum() + if(!L.destroyed) L.apply_lum() L.force_update = 0 L.needs_update = 0 From e3564a5d80930924cb295ae2a1437dbd048d7628 Mon Sep 17 00:00:00 2001 From: Loganbacca Date: Fri, 15 May 2015 00:03:38 +1200 Subject: [PATCH 061/199] MULE destination update - MULE destination selection is now handled using a list --- code/game/machinery/bots/mulebot.dm | 14 ++++++++------ code/game/machinery/navbeacon.dm | 11 +++++++++++ html/changelogs/Loganbacca-QOLMULE.yml | 4 ++++ 3 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 html/changelogs/Loganbacca-QOLMULE.yml diff --git a/code/game/machinery/bots/mulebot.dm b/code/game/machinery/bots/mulebot.dm index 125345c518..3e6f0d8e33 100644 --- a/code/game/machinery/bots/mulebot.dm +++ b/code/game/machinery/bots/mulebot.dm @@ -305,7 +305,14 @@ if("destination") refresh=0 - var/new_dest = input("Enter new destination tag", "Mulebot [suffix ? "([suffix])" : ""]", destination) as text|null + var/new_dest + var/list/beaconlist = new() + for(var/obj/machinery/navbeacon/N in navbeacons) + beaconlist.Add(N.location) + if(beaconlist.len) + new_dest = input("Select new destination tag", "Mulebot [suffix ? "([suffix])" : ""]", destination) in beaconlist + else + alert("No destination beacons available.") refresh=1 if(new_dest) set_destination(new_dest) @@ -741,11 +748,6 @@ if(!on) return - /* - world << "rec signal: [signal.source]" - for(var/x in signal.data) - world << "* [x] = [signal.data[x]]" - */ var/recv = signal.data["command"] // process all-bot input if(recv=="bot_status" && wires.RemoteRX()) diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm index d7224f2212..c9228000e2 100644 --- a/code/game/machinery/navbeacon.dm +++ b/code/game/machinery/navbeacon.dm @@ -1,6 +1,9 @@ // Navigation beacon for AI robots // Functions as a transponder: looks for incoming signal matching + +var/global/list/navbeacons // no I don't like putting this in, but it will do for now + /obj/machinery/navbeacon icon = 'icons/obj/objects.dmi' @@ -27,6 +30,13 @@ var/turf/T = loc hide(T.intact) + + // add beacon to MULE bot beacon list + if(freq == 1400) + if(!navbeacons) + navbeacons = new() + navbeacons += src + spawn(5) // must wait for map loading to finish if(radio_controller) @@ -241,6 +251,7 @@ Transponder Codes:
      "} updateDialog() /obj/machinery/navbeacon/Destroy() + navbeacons.Remove(src) if(radio_controller) radio_controller.remove_object(src, freq) ..() diff --git a/html/changelogs/Loganbacca-QOLMULE.yml b/html/changelogs/Loganbacca-QOLMULE.yml new file mode 100644 index 0000000000..c5df55e25f --- /dev/null +++ b/html/changelogs/Loganbacca-QOLMULE.yml @@ -0,0 +1,4 @@ +author: Loganbacca +delete-after: True +changes: + - tweak: "Changed MULE destination selection to be list based." From 9006419fcd47e48def0fb5512306196763922cba Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 16:34:24 +0200 Subject: [PATCH 062/199] Creates a default vent for atmospherics tanks. --- code/ATMOSPHERICS/components/unary/vent_pump.dm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/code/ATMOSPHERICS/components/unary/vent_pump.dm b/code/ATMOSPHERICS/components/unary/vent_pump.dm index d9cfb93a18..4674d52251 100644 --- a/code/ATMOSPHERICS/components/unary/vent_pump.dm +++ b/code/ATMOSPHERICS/components/unary/vent_pump.dm @@ -61,6 +61,16 @@ use_power = 1 icon_state = "map_vent_in" +/obj/machinery/atmospherics/unary/vent_pump/siphon/on/atmos + use_power = 1 + icon_state = "map_vent_in" + external_pressure_bound = 0 + external_pressure_bound_default = 0 + internal_pressure_bound = 2000 + internal_pressure_bound_default = 2000 + pressure_checks = 2 + pressure_checks_default = 2 + /obj/machinery/atmospherics/unary/vent_pump/New() ..() air_contents.volume = ATMOS_DEFAULT_VOLUME_PUMP From be02c74508ccc63953874e2e112d1aae6d43d772 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Thu, 14 May 2015 15:32:01 +0200 Subject: [PATCH 063/199] Makes use of the new pre-definer atmospheric tank vents on the engineering outpost. --- maps/exodus-5.dmm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 8dc6ee6d17..8f0fe1ad59 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -1465,13 +1465,13 @@ "Ci" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/turf/simulated/floor,/area/outpost/mining_main/west_hall) "Cj" = (/obj/machinery/alarm{pixel_y = 24},/turf/simulated/floor,/area/outpost/mining_main/west_hall) "Ck" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/outpost/mining_main/west_hall) -"Cl" = (/obj/machinery/atmospherics/unary/vent_pump/siphon/on{dir = 1; frequency = 1441; id_tag = "outpost_o2_out"},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/outpost/engineering/atmospherics) +"Cl" = (/obj/machinery/atmospherics/unary/vent_pump/siphon/on/atmos{dir = 1; frequency = 1441; id_tag = "outpost_o2_out"},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/outpost/engineering/atmospherics) "Cm" = (/obj/machinery/door/airlock{name = "Toilet"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/outpost/mining_main/west_hall) "Cn" = (/obj/structure/sink{pixel_y = 30},/obj/machinery/light/small,/obj/structure/mirror{pixel_y = -32},/turf/simulated/floor{icon_state = "showroomfloor"},/area/outpost/mining_main/west_hall) "Co" = (/obj/structure/toilet{dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/outpost/mining_main/west_hall) "Cp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/outpost/mining_main/west_hall) "Cq" = (/obj/machinery/conveyor{backwards = 2; dir = 2; forwards = 1; id = "mining_west"},/obj/structure/plasticflaps/mining,/turf/simulated/floor,/area/outpost/mining_west) -"Cr" = (/obj/machinery/atmospherics/unary/vent_pump/siphon/on{dir = 1; frequency = 1441; id_tag = "outpost_n2_out"},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/outpost/engineering/atmospherics) +"Cr" = (/obj/machinery/atmospherics/unary/vent_pump/siphon/on/atmos{dir = 1; frequency = 1441; id_tag = "outpost_n2_out"},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/outpost/engineering/atmospherics) "Cs" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/eva) "Ct" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "Cu" = (/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor,/area/outpost/mining_main/eva) From d95701a7b5518fbe9b4d09c30b1efc054b55b3fd Mon Sep 17 00:00:00 2001 From: Mloc Date: Thu, 14 May 2015 18:03:18 +0100 Subject: [PATCH 064/199] fix for "cleaning light" Signed-off-by: Mloc --- code/game/objects/effects/chemsmoke.dm | 2 +- code/modules/reagents/Chemistry-Holder.dm | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/objects/effects/chemsmoke.dm b/code/game/objects/effects/chemsmoke.dm index 37ea4fd096..f641561ba8 100644 --- a/code/game/objects/effects/chemsmoke.dm +++ b/code/game/objects/effects/chemsmoke.dm @@ -149,7 +149,7 @@ if(!dist) dist = 1 R.reaction_mob(A, volume = R.volume / dist) - else if(istype(A, /obj)) + else if(istype(A, /obj) && !A.simulated) R.reaction_obj(A, R.volume) sleep(30) diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index a9562ca861..71b73800b3 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -435,6 +435,8 @@ var/const/INGEST = 2 return 0 /datum/reagents/proc/reaction(var/atom/A, var/method=TOUCH, var/volume_modifier=0) + if(!istype(A) || !A.simulated) + return switch(method) if(TOUCH) From dfd3a679a8149dff249a5fb9bb49f8c374469080 Mon Sep 17 00:00:00 2001 From: Hubblenaut Date: Thu, 14 May 2015 20:02:09 +0200 Subject: [PATCH 065/199] camera rebalance --- code/game/machinery/camera/camera.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 4a7aed5555..ec9c17f241 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -138,8 +138,10 @@ else if(iswelder(W) && (wires.CanDeconstruct() || (stat & BROKEN))) if(weld(W, user)) if (stat & BROKEN) - new /obj/item/weapon/circuitboard/broken(src.loc) - new /obj/item/stack/cable_coil(src.loc, length=2) + stat &= ~BROKEN + cancelCameraAlarm() + update_icon() + update_coverage() else if(assembly) assembly.loc = src.loc assembly.state = 1 From 5ca2e74a470649bcf33948ed6f80747d71c92a45 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Thu, 14 May 2015 22:22:02 +0200 Subject: [PATCH 066/199] Changelog update. --- html/changelog.html | 17 +++++++++++++++++ html/changelogs/.all_changelog.yml | 17 +++++++++++++++++ html/changelogs/PsiOmega-BrigGarbage.yml | 5 ----- .../PsiOmegaDelta-BatteryDepletion.yml | 5 ----- html/changelogs/PsiOmegaDelta-StealthFixes.yml | 5 ----- html/changelogs/Techhead-InternalBoxes.yml | 9 --------- html/changelogs/Techhead-PAPin.yml | 4 ---- 7 files changed, 34 insertions(+), 28 deletions(-) delete mode 100644 html/changelogs/PsiOmega-BrigGarbage.yml delete mode 100644 html/changelogs/PsiOmegaDelta-BatteryDepletion.yml delete mode 100644 html/changelogs/PsiOmegaDelta-StealthFixes.yml delete mode 100644 html/changelogs/Techhead-InternalBoxes.yml delete mode 100644 html/changelogs/Techhead-PAPin.yml diff --git a/html/changelog.html b/html/changelog.html index 8e4e854561..227e839d13 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,23 @@ -->
      +

      14 May 2015

      +

      PsiOmegaDelta updated:

      +
        +
      • Should now be more evident that the brig disposal chute sends its goods to the common brig area.
      • +
      • Cells now drain when using more charge than what is available.
      • +
      • The rig stealth module now requires as much power to run as the energy blade module.
      • +
      +

      Techhead updated:

      +
        +
      • Vox will spawn with emergency nitrogen tanks in their survival boxes.
      • +
      • Diona will spawn with an emergency flare instead of a survival box.
      • +
      • Engineers no longer spawn with extended-capacity oxygen tanks.
      • +
      • Vox spawning without backpacks will have their nitrogen tank equipped to their back.
      • +
      • The Bartender's spare beanbag shells have been moved into bar backroom with the shotgun.
      • +
      • Portable air pumps now fill based on external/airtank pressure when pumping in.
      • +
      +

      12 May 2015

      Dennok updated:

        diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index f6b7d619d1..549c473270 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -1762,3 +1762,20 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. - tweak: Changed the pAI sprite and added several new expressions. PsiOmegaDelta: - rscadd: The space vine event now comes with a station announcement. +2015-05-14: + PsiOmegaDelta: + - maptweak: Should now be more evident that the brig disposal chute sends its goods + to the common brig area. + - bugfix: Cells now drain when using more charge than what is available. + - tweak: The rig stealth module now requires as much power to run as the energy + blade module. + Techhead: + - rscadd: Vox will spawn with emergency nitrogen tanks in their survival boxes. + - rscadd: Diona will spawn with an emergency flare instead of a survival box. + - rscdel: Engineers no longer spawn with extended-capacity oxygen tanks. + - bugfix: Vox spawning without backpacks will have their nitrogen tank equipped + to their back. + - tweak: The Bartender's spare beanbag shells have been moved into bar backroom + with the shotgun. + - bugfix: Portable air pumps now fill based on external/airtank pressure when pumping + in. diff --git a/html/changelogs/PsiOmega-BrigGarbage.yml b/html/changelogs/PsiOmega-BrigGarbage.yml deleted file mode 100644 index c376528d84..0000000000 --- a/html/changelogs/PsiOmega-BrigGarbage.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: PsiOmegaDelta -delete-after: True - -changes: - - maptweak: "Should now be more evident that the brig disposal chute sends its goods to the common brig area." diff --git a/html/changelogs/PsiOmegaDelta-BatteryDepletion.yml b/html/changelogs/PsiOmegaDelta-BatteryDepletion.yml deleted file mode 100644 index e36fc586da..0000000000 --- a/html/changelogs/PsiOmegaDelta-BatteryDepletion.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: PsiOmegaDelta -delete-after: True - -changes: - - bugfix: "Cells now drain when using more charge than what is available." diff --git a/html/changelogs/PsiOmegaDelta-StealthFixes.yml b/html/changelogs/PsiOmegaDelta-StealthFixes.yml deleted file mode 100644 index e13cf9e6f0..0000000000 --- a/html/changelogs/PsiOmegaDelta-StealthFixes.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: PsiOmegaDelta -delete-after: True - -changes: - - tweak: "The rig stealth module now requires as much power to run as the energy blade module." diff --git a/html/changelogs/Techhead-InternalBoxes.yml b/html/changelogs/Techhead-InternalBoxes.yml deleted file mode 100644 index 3cbb8f0114..0000000000 --- a/html/changelogs/Techhead-InternalBoxes.yml +++ /dev/null @@ -1,9 +0,0 @@ -author: Techhead -delete-after: True -changes: - - rscadd: "Vox will spawn with emergency nitrogen tanks in their survival boxes." - - rscadd: "Diona will spawn with an emergency flare instead of a survival box." - - rscdel: "Engineers no longer spawn with extended-capacity oxygen tanks." - - bugfix: "Vox spawning without backpacks will have their nitrogen tank equipped to their back." - - tweak: "The Bartender's spare beanbag shells have been moved into bar backroom with the shotgun." - diff --git a/html/changelogs/Techhead-PAPin.yml b/html/changelogs/Techhead-PAPin.yml deleted file mode 100644 index 3e6eccdf62..0000000000 --- a/html/changelogs/Techhead-PAPin.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Techhead -delete-after: True -changes: - - bugfix: "Portable air pumps now fill based on external/airtank pressure when pumping in." From 63f28ee0e01d7d093481b970e6f57c8130b9adc2 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Thu, 14 May 2015 22:26:19 +0100 Subject: [PATCH 067/199] Fixes - Material comparisons done by name rather than reference equality - get_material_by_name proc that ensures the material list is initialised, initialising it if neccessary - holographic materials moved into main material list - table frames are not a source of infinite metal, and can be deconstructed correctly - gambling table icons are no longer E-W flipped --- code/game/turfs/simulated/walls.dm | 4 +--- code/modules/materials/materials.dm | 20 +++++++++++++++++-- code/modules/tables/flipping.dm | 8 ++++---- code/modules/tables/presets.dm | 30 ++++++++-------------------- code/modules/tables/tables.dm | 6 ++++-- icons/obj/tables.dmi | Bin 22339 -> 22345 bytes 6 files changed, 35 insertions(+), 33 deletions(-) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 4596512fe4..52086c6228 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -25,11 +25,9 @@ var/list/global/wall_cache = list() /turf/simulated/wall/New(var/newloc, var/materialtype, var/rmaterialtype) ..(newloc) icon_state = "blank" - if(!name_to_material) - populate_material_list() if(!materialtype) materialtype = DEFAULT_WALL_MATERIAL - material = name_to_material[materialtype] + material = get_material_by_name(materialtype) if(!isnull(rmaterialtype)) reinf_material = name_to_material[rmaterialtype] update_material() diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 5afb1f27e0..c46ca8e764 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -1,7 +1,7 @@ var/list/name_to_material -/proc/populate_material_list() - if(name_to_material) return // Already set up! +/proc/populate_material_list(force_remake=0) + if(name_to_material && !force_remake) return // Already set up! name_to_material = list() for(var/type in typesof(/material) - /material) var/material/new_mineral = new type @@ -10,6 +10,12 @@ var/list/name_to_material name_to_material[lowertext(new_mineral.name)] = new_mineral return 1 +/proc/get_material_by_name(name) + if(!name_to_material) + populate_material_list() + + return name_to_material[name] + /* Valid sprite masks: stone @@ -102,6 +108,11 @@ var/list/name_to_material icon_reinf = "reinf_over" icon_colour = "#666666" +/material/steel/holographic + name = "holographic [DEFAULT_WALL_MATERIAL]" + display_name = DEFAULT_WALL_MATERIAL + stack_type = null + /material/plasteel name = "plasteel" stack_type = /obj/item/stack/sheet/plasteel @@ -159,6 +170,11 @@ var/list/name_to_material icon_base = "solid" explosion_resistance = 2 +/material/wood/holographic + name = "holographic wood" + display_name = "wood" + stack_type = null + /material/cult name = "cult" display_name = "disturbing stone" diff --git a/code/modules/tables/flipping.dm b/code/modules/tables/flipping.dm index 210498f169..43697a938c 100644 --- a/code/modules/tables/flipping.dm +++ b/code/modules/tables/flipping.dm @@ -5,7 +5,7 @@ var/obj/structure/table/T for(var/angle in list(-90,90)) T = locate() in get_step(src.loc,turn(direction,angle)) - if(T && T.flipped == 0 && T.material == material) + if(T && T.flipped == 0 && T.material.name == material.name) return 0 T = locate() in get_step(src.loc,direction) if (!T || T.flipped == 1 || T.material != material) @@ -50,7 +50,7 @@ L.Add(turn(src.dir,90)) for(var/new_dir in L) var/obj/structure/table/T = locate() in get_step(src.loc,new_dir) - if(T && T.material == material) + if(T && T.material.name == material.name) if(T.flipped == 1 && T.dir == src.dir && !T.unflipping_check(new_dir)) return 0 return 1 @@ -90,7 +90,7 @@ flags |= ON_BORDER for(var/D in list(turn(direction, 90), turn(direction, -90))) var/obj/structure/table/T = locate() in get_step(src,D) - if(T && T.flipped == 0 && T.material == material && material) + if(T && T.flipped == 0 && material && T.material && T.material.name == material.name) T.flip(direction) take_damage(rand(5, 20)) update_connections(1) @@ -108,7 +108,7 @@ flags &= ~ON_BORDER for(var/D in list(turn(dir, 90), turn(dir, -90))) var/obj/structure/table/T = locate() in get_step(src.loc,D) - if(T && T.flipped == 1 && T.dir == src.dir && T.material == material && material) + if(T && T.flipped == 1 && T.dir == src.dir && material && T.material&& T.material.name == material.name) T.unflip() update_connections(1) diff --git a/code/modules/tables/presets.dm b/code/modules/tables/presets.dm index 91badda696..5f009e7e88 100644 --- a/code/modules/tables/presets.dm +++ b/code/modules/tables/presets.dm @@ -1,38 +1,31 @@ -var/global/material/material_holographic_steel = null -var/global/material/material_holographic_wood = null - /obj/structure/table standard icon_state = "plain_preview" color = "#666666" New() - if(!name_to_material) populate_material_list() - material = name_to_material[DEFAULT_WALL_MATERIAL] + material = get_material_by_name(DEFAULT_WALL_MATERIAL) ..() reinforced icon_state = "reinf_preview" color = "#666666" New() - if(!name_to_material) populate_material_list() - material = name_to_material[DEFAULT_WALL_MATERIAL] - reinforced = name_to_material[DEFAULT_WALL_MATERIAL] + material = get_material_by_name(DEFAULT_WALL_MATERIAL) + reinforced = get_material_by_name(DEFAULT_WALL_MATERIAL) ..() woodentable icon_state = "plain_preview" color = "#824B28" New() - if(!name_to_material) populate_material_list() - material = name_to_material["wood"] + material = get_material_by_name("wood") ..() gamblingtable icon_state = "gamble_preview" New() - if(!name_to_material) populate_material_list() - material = name_to_material["wood"] + material = get_material_by_name("wood") carpeted = 1 ..() @@ -41,25 +34,18 @@ var/global/material/material_holographic_wood = null color = "#00E1FF" alpha = 77 // 0.3 * 255 New() - if(!name_to_material) populate_material_list() - material = name_to_material["glass"] + material = get_material_by_name("glass") ..() holotable icon_state = "holo_preview" color = "#666666" New() - if(!material_holographic_steel) - material_holographic_steel = new /material/steel - material_holographic_steel.stack_type = null // Tables with null-stacktype materials cannot be deconstructed - material = material_holographic_steel + material = get_material_by_name("holographic [DEFAULT_WALL_MATERIAL]") ..() woodentable/holotable icon_state = "holo_preview" New() - if(!material_holographic_wood) - material_holographic_wood = new /material/wood - material_holographic_wood.stack_type = null // Tables with null-stacktype materials cannot be deconstructed - material = material_holographic_wood + material = get_material_by_name("holographic wood") ..() diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index 895938898a..0414fe238a 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -227,6 +227,8 @@ user.visible_message("\The [user] dismantles \the [src].", "You dismantle \the [src].") new /obj/item/stack/sheet/metal(src.loc) + qdel(src) + return /obj/structure/table/proc/break_to_parts(full_return = 0) if(reinforced && reinforced.stack_type && (full_return || prob(25))) @@ -274,7 +276,7 @@ var/tabledirs = 0 for(var/direction in list(turn(dir,90), turn(dir,-90)) ) var/obj/structure/table/T = locate(/obj/structure/table ,get_step(src,direction)) - if (T && T.flipped == 1 && T.dir == src.dir && T.material == material) + if (T && T.flipped == 1 && T.dir == src.dir && T.material.name == material.name) type++ tabledirs |= direction @@ -351,7 +353,7 @@ for(var/obj/structure/table/T in oview(src, 1)) var/T_dir = get_dir(src, T) if(T_dir in blocked_dirs) continue - if(material == T.material && flipped == T.flipped) + if(material.name == T.material.name && flipped == T.flipped) connection_dirs |= T_dir if(propagate) spawn(0) diff --git a/icons/obj/tables.dmi b/icons/obj/tables.dmi index 429969fc86234b2db96ea21c7d10196b9d4eead3..36de1b41836914f47faea38c0d258aa7718e727c 100644 GIT binary patch delta 650 zcmX@Sj`8F=#tp45jO#bIx#;mLB{|Kfi8;=kzyLLPTs znSY4;`in8+6PE;of*S)1L&rxTD}kwczjw{Ei_iU*vpC$3WUP7C^ZePF^Uvz5{-#%i z{tt9)sjOh-VGvLTI`{}j1JFt)1qO#61`Z6N$qoz*Y6Z^98 z$_sv+{#&Fw|66g$|M%a23r=sX-^h$<0E(H4X!iW+i8~M&X35oI`Qrc97wQMH%O<}G zQ<&Tk#wxk_p`?5XiTY5b={o8-R?<^%Z87Jq5sen|N?R?{@FyC*-{7j{P sKG~61wf;ZUdc9{?VC{wa1QD=n_xtrsSzopr0D$Wd^8f$< delta 571 zcmV-B0>u5vt^vcY0kDNc0jaZwL@o~?pn)F0@c6`QiSDfLly<2o8{$tBqs;gvaRzRQ zZ&&=OlVK7j5)9M801ajPG#Iv*zY2NF4`6YVVG<^jz&H&!J%O>k`~d9bDeYOwqskrVlYCSoH~+F;Gt~C- z0{|?vC_RAV){!2-e5NV?qL*upyV1ZR}xgg@_i$6}8>jnVh&;ygeIVck#AKRzFu)X|?VBBY9L-_%q ziRhCs5g(JwIS_yT|Mu?aMqwC=q98~VMm1X}rR^^tY_cc>J2^825IfI8SB~`zK+N^> zbD6f0?KhhIYUI03{r%PF&sgR^9xP`k)YJdkF5Xz002ov JPDHLkV1j}<4Q~Jd From cfb51cf19869d7290019e29a713006a29d3c0a94 Mon Sep 17 00:00:00 2001 From: Mloc Date: Thu, 14 May 2015 22:35:50 +0100 Subject: [PATCH 068/199] better nanoui caching + fixes Signed-off-by: Mloc --- code/game/machinery/computer/camera.dm | 18 ++++------- code/game/objects/items/devices/PDA/PDA.dm | 6 ++-- .../living/silicon/pai/software_modules.dm | 7 +---- code/modules/nano/JSON Writer.dm | 29 ++++++++---------- code/modules/nano/_JSON.dm | 9 ++++-- code/modules/nano/nanoui.dm | 19 ++---------- nano/templates/pai_manifest.tmpl | 30 +++++++++---------- nano/templates/pda.tmpl | 28 ++++++++--------- nano/templates/sec_camera.tmpl | 2 +- nano/templates/sec_camera_map_content.tmpl | 2 +- 10 files changed, 61 insertions(+), 89 deletions(-) diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index fd68c4ec62..95235be3e4 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -55,18 +55,11 @@ var/cam = C.nano_structure() cameras[++cameras.len] = cam - if(C == current) - data["current"] = cam + camera_cache=list2json(cameras) - var/list/camera_list = list("cameras" = cameras) - camera_cache=list2json(camera_list) - else - if(current) - data["current"] = current.nano_structure() - - - if(ui) - ui.load_cached_data(camera_cache) + if(current) + data["current"] = current.nano_structure() + data["cameras"] = list("__json_cache" = camera_cache) ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open) if (!ui) @@ -76,8 +69,7 @@ ui.add_template("mapContent", "sec_camera_map_content.tmpl") // adding a template with the key "mapHeader" replaces the map header content ui.add_template("mapHeader", "sec_camera_map_header.tmpl") - - ui.load_cached_data(camera_cache) + ui.set_initial_data(data) ui.open() ui.set_auto_update(1) diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 9979b66ce2..c908267244 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -523,10 +523,10 @@ var/global/list/obj/item/device/pda/PDAs = list() data["feed"] = feed + data["manifest"] = list("__json_cache" = ManifestJSON) + nanoUI = data // update the ui if it exists, returns null if no ui is passed/found - if(ui) - ui.load_cached_data(ManifestJSON) ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open) @@ -536,8 +536,6 @@ var/global/list/obj/item/device/pda/PDAs = list() ui = new(user, src, ui_key, "pda.tmpl", title, 520, 400, state = inventory_state) // when the ui is first opened this is the data it will use - ui.load_cached_data(ManifestJSON) - ui.set_initial_data(data) // open the new ui window ui.open() diff --git a/code/modules/mob/living/silicon/pai/software_modules.dm b/code/modules/mob/living/silicon/pai/software_modules.dm index c2fed82165..f7434ebe91 100644 --- a/code/modules/mob/living/silicon/pai/software_modules.dm +++ b/code/modules/mob/living/silicon/pai/software_modules.dm @@ -125,16 +125,12 @@ var/data[0] // This is dumb, but NanoUI breaks if it has no data to send - data["a"] = "a" - - if(ui) - ui.load_cached_data(ManifestJSON) + data["manifest"] = list("__json_cache" = ManifestJSON) ui = nanomanager.try_update_ui(user, user, id, ui, data, force_open) if(!ui) // Don't copy-paste this unless you're making a pAI software module! ui = new(user, user, id, "pai_manifest.tmpl", "Crew Manifest", 450, 600) - ui.load_cached_data(ManifestJSON) ui.set_initial_data(data) ui.open() ui.set_auto_update(1) @@ -499,7 +495,6 @@ if(!ui) // Don't copy-paste this unless you're making a pAI software module! ui = new(user, user, id, "pai_signaller.tmpl", "Signaller", 320, 150) - ui.load_cached_data(ManifestJSON) ui.set_initial_data(data) ui.open() diff --git a/code/modules/nano/JSON Writer.dm b/code/modules/nano/JSON Writer.dm index 65b9d99eb0..97acc0b2cc 100644 --- a/code/modules/nano/JSON Writer.dm +++ b/code/modules/nano/JSON Writer.dm @@ -1,7 +1,12 @@ - json_writer + var + use_cache = 0 + proc - WriteObject(list/L, cached_data = null) + WriteObject(list/L) + if(use_cache && L["__json_cache"]) + return L["__json_cache"] + . = "{" var/i = 1 for(var/k in L) @@ -9,13 +14,11 @@ json_writer . += {"\"[k]\":[write(val)]"} if(i++ < L.len) . += "," - if(cached_data) - . = copytext(., 1, lentext(.)) + ",\"cached\":[cached_data]}" . += "}" write(val) if(isnum(val)) - return num2text(val, 100) + return num2text(val) else if(isnull(val)) return "null" else if(istype(val, /list)) @@ -35,27 +38,21 @@ json_writer . += "]" write_string(txt) - var/static/list/json_escape = list("\\", "\"", "'", "\n") + var/static/list/json_escape = list("\\" = "\\\\", "\"" = "\\\"", "\n" = "\\n") for(var/targ in json_escape) var/start = 1 while(start <= lentext(txt)) var/i = findtext(txt, targ, start) if(!i) break - if(targ == "\n") - txt = copytext(txt, 1, i) + "\\n" + copytext(txt, i+2) - start = i + 1 // 1 character added - if(targ == "'") - txt = copytext(txt, 1, i) + "`" + copytext(txt, i+1) // apostrophies fuck shit up... - start = i + 1 // 1 character added - else - txt = copytext(txt, 1, i) + "\\" + copytext(txt, i) - start = i + 2 // 2 characters added + var/lrep = length(json_escape[targ]) + txt = copytext(txt, 1, i) + json_escape[targ] + copytext(txt, i + length(targ)) + start = i + lrep return {""[txt]""} is_associative(list/L) for(var/key in L) // if the key is a list that means it's actually an array of lists (stupid Byond...) - if(!isnum(key) && !istype(key, /list)) + if(!isnum(key) && !isnull(L[key]) && !istype(key, /list)) return TRUE diff --git a/code/modules/nano/_JSON.dm b/code/modules/nano/_JSON.dm index 4f70e6e664..9579189981 100644 --- a/code/modules/nano/_JSON.dm +++ b/code/modules/nano/_JSON.dm @@ -7,6 +7,11 @@ proc var/static/json_reader/_jsonr = new() return _jsonr.ReadObject(_jsonr.ScanJson(json)) - list2json(list/L, var/cached_data = null) + list2json(list/L) var/static/json_writer/_jsonw = new() - return _jsonw.WriteObject(L, cached_data) + return _jsonw.write(L) + + list2json_usecache(list/L) + var/static/json_writer/_jsonw = new() + _jsonw.use_cache = 1 + return _jsonw.write(L) diff --git a/code/modules/nano/nanoui.dm b/code/modules/nano/nanoui.dm index ffc6208f39..f53fc98497 100644 --- a/code/modules/nano/nanoui.dm +++ b/code/modules/nano/nanoui.dm @@ -57,8 +57,6 @@ nanoui is used to open and update nano browser uis var/list/datum/nanoui/children = list() var/datum/topic_state/state = null - var/cached_data = null - /** * Create a new nanoui instance. * @@ -349,7 +347,7 @@ nanoui is used to open and update nano browser uis template_data_json = list2json(templates) var/list/send_data = get_send_data(initial_data) - var/initial_data_json = list2json(send_data, cached_data) + var/initial_data_json = replacetext(list2json_usecache(send_data), "'", "'") var/url_parameters_json = list2json(list("src" = "\ref[src]")) @@ -432,19 +430,6 @@ nanoui is used to open and update nano browser uis winset(user, window_id, "on-close=\"nanoclose [params]\"") -/** - * Appends already processed json txt to the list2json proc when setting initial-data and data pushes - * Used for data that is fucking huge like manifests and camera lists that doesn't change often. - * And we only want to process them when they change. - * Fuck javascript - * - * @return nothing - */ -/datum/nanoui/proc/load_cached_data(var/data) - cached_data = data - return - - /** * Push data to an already open UI window * @@ -458,7 +443,7 @@ nanoui is used to open and update nano browser uis var/list/send_data = get_send_data(data) //user << list2json(data) // used for debugging - user << output(list2params(list(list2json(send_data,cached_data))),"[window_id].browser:receiveUpdateData") + user << output(list2params(list(list2json_usecache(send_data))),"[window_id].browser:receiveUpdateData") /** * This Topic() proc is called whenever a user clicks on a link within a Nano UI diff --git a/nano/templates/pai_manifest.tmpl b/nano/templates/pai_manifest.tmpl index 0ab49c02fc..ca4924d70a 100644 --- a/nano/templates/pai_manifest.tmpl +++ b/nano/templates/pai_manifest.tmpl @@ -6,9 +6,9 @@ Copy-pasted from pda.tmpl
        - {{if data.cached.heads.length}} + {{if data.manifest.heads.length}} - {{for data.cached["heads"]}} + {{for data.manifest["heads"]}} {{if value.rank == "Captain"}} {{else}} @@ -16,9 +16,9 @@ Copy-pasted from pda.tmpl {{/if}} {{/for}} {{/if}} - {{if data.cached.sec.length}} + {{if data.manifest.sec.length}} - {{for data.cached["sec"]}} + {{for data.manifest["sec"]}} {{if value.rank == "Head of Security"}} {{else}} @@ -26,9 +26,9 @@ Copy-pasted from pda.tmpl {{/if}} {{/for}} {{/if}} - {{if data.cached.eng.length}} + {{if data.manifest.eng.length}} - {{for data.cached["eng"]}} + {{for data.manifest["eng"]}} {{if value.rank == "Chief Engineer"}} {{else}} @@ -36,9 +36,9 @@ Copy-pasted from pda.tmpl {{/if}} {{/for}} {{/if}} - {{if data.cached.med.length}} + {{if data.manifest.med.length}} - {{for data.cached["med"]}} + {{for data.manifest["med"]}} {{if value.rank == "Chief Medical Officer"}} {{else}} @@ -46,9 +46,9 @@ Copy-pasted from pda.tmpl {{/if}} {{/for}} {{/if}} - {{if data.cached.sci.length}} + {{if data.manifest.sci.length}} - {{for data.cached["sci"]}} + {{for data.manifest["sci"]}} {{if value.rank == "Research Director"}} {{else}} @@ -56,9 +56,9 @@ Copy-pasted from pda.tmpl {{/if}} {{/for}} {{/if}} - {{if data.cached.civ.length}} + {{if data.manifest.civ.length}} - {{for data.cached["civ"]}} + {{for data.manifest["civ"]}} {{if value.rank == "Head of Personnel"}} {{else}} @@ -66,11 +66,11 @@ Copy-pasted from pda.tmpl {{/if}} {{/for}} {{/if}} - {{if data.cached.misc.length}} + {{if data.manifest.misc.length}} - {{for data.cached["misc"]}} + {{for data.manifest["misc"]}} {{/for}} {{/if}}
        Command
        {{:value.name}}{{:value.rank}}{{:value.active}}
        Security
        {{:value.name}}{{:value.rank}}{{:value.active}}
        Engineering
        {{:value.name}}{{:value.rank}}{{:value.active}}
        Medical
        {{:value.name}}{{:value.rank}}{{:value.active}}
        Science
        {{:value.name}}{{:value.rank}}{{:value.active}}
        Civilian
        {{:value.name}}{{:value.rank}}{{:value.active}}
        Misc
        {{:value.name}}{{:value.rank}}{{:value.active}}
        -
        \ No newline at end of file +
      diff --git a/nano/templates/pda.tmpl b/nano/templates/pda.tmpl index 38cc5ef945..3bb864fd01 100644 --- a/nano/templates/pda.tmpl +++ b/nano/templates/pda.tmpl @@ -297,9 +297,9 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm {{else data.mode== 41}}
      - {{if data.cached.heads.length}} + {{if data.manifest.heads.length}} - {{for data.cached["heads"]}} + {{for data.manifest["heads"]}} {{if value.rank == "Captain"}} {{else}} @@ -307,9 +307,9 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm {{/if}} {{/for}} {{/if}} - {{if data.cached.sec.length}} + {{if data.manifest.sec.length}} - {{for data.cached["sec"]}} + {{for data.manifest["sec"]}} {{if value.rank == "Head of Security"}} {{else}} @@ -317,9 +317,9 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm {{/if}} {{/for}} {{/if}} - {{if data.cached.eng.length}} + {{if data.manifest.eng.length}} - {{for data.cached["eng"]}} + {{for data.manifest["eng"]}} {{if value.rank == "Chief Engineer"}} {{else}} @@ -327,9 +327,9 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm {{/if}} {{/for}} {{/if}} - {{if data.cached.med.length}} + {{if data.manifest.med.length}} - {{for data.cached["med"]}} + {{for data.manifest["med"]}} {{if value.rank == "Chief Medical Officer"}} {{else}} @@ -337,9 +337,9 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm {{/if}} {{/for}} {{/if}} - {{if data.cached.sci.length}} + {{if data.manifest.sci.length}} - {{for data.cached["sci"]}} + {{for data.manifest["sci"]}} {{if value.rank == "Research Director"}} {{else}} @@ -347,9 +347,9 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm {{/if}} {{/for}} {{/if}} - {{if data.cached.civ.length}} + {{if data.manifest.civ.length}} - {{for data.cached["civ"]}} + {{for data.manifest["civ"]}} {{if value.rank == "Head of Personnel"}} {{else}} @@ -357,9 +357,9 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm {{/if}} {{/for}} {{/if}} - {{if data.cached.misc.length}} + {{if data.manifest.misc.length}} - {{for data.cached["misc"]}} + {{for data.manifest["misc"]}} {{/for}} {{/if}} diff --git a/nano/templates/sec_camera.tmpl b/nano/templates/sec_camera.tmpl index 886cb0f87c..13ec5ab229 100644 --- a/nano/templates/sec_camera.tmpl +++ b/nano/templates/sec_camera.tmpl @@ -12,7 +12,7 @@ Used In File(s): \code\game\machinery\computer\camera.dm
      None
      {{/if}} -{{for data.cached.cameras}} +{{for data.cameras}} {{if data.current && value.name == data.current.name}} {{:helper.link(value.name, '', {'switchTo' : value.camera}, 'selected')}} {{else value.deact}} diff --git a/nano/templates/sec_camera_map_content.tmpl b/nano/templates/sec_camera_map_content.tmpl index 55d9e05d4d..a2706d8c35 100644 --- a/nano/templates/sec_camera_map_content.tmpl +++ b/nano/templates/sec_camera_map_content.tmpl @@ -2,7 +2,7 @@ Title: Security Camera Console (Map content) Used In File(s): \code\game\machinery\computer\camera.dm --> -{{for data.cached.cameras}} +{{for data.cameras}} {{if value.z == 1}}
      {{if data.current && value.name == data.current.name}} From a3662a908850533cebc636b64f7d12a5e2f40dc2 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Fri, 15 May 2015 00:06:47 +0100 Subject: [PATCH 069/199] Fixes, improvements, suggestions. --- code/modules/materials/materials.dm | 2 +- code/modules/tables/flipping.dm | 2 +- code/modules/tables/interactions.dm | 1 + code/modules/tables/tables.dm | 27 ++++++++++++++++++++++----- 4 files changed, 25 insertions(+), 7 deletions(-) diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index c46ca8e764..c791a8b560 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -109,7 +109,7 @@ var/list/name_to_material icon_colour = "#666666" /material/steel/holographic - name = "holographic [DEFAULT_WALL_MATERIAL]" + name = "holographic " + DEFAULT_WALL_MATERIAL display_name = DEFAULT_WALL_MATERIAL stack_type = null diff --git a/code/modules/tables/flipping.dm b/code/modules/tables/flipping.dm index 43697a938c..670edd01d8 100644 --- a/code/modules/tables/flipping.dm +++ b/code/modules/tables/flipping.dm @@ -92,7 +92,7 @@ var/obj/structure/table/T = locate() in get_step(src,D) if(T && T.flipped == 0 && material && T.material && T.material.name == material.name) T.flip(direction) - take_damage(rand(5, 20)) + take_damage(rand(5, 10)) update_connections(1) update_icon() diff --git a/code/modules/tables/interactions.dm b/code/modules/tables/interactions.dm index 4ada40596e..7eed01c237 100644 --- a/code/modules/tables/interactions.dm +++ b/code/modules/tables/interactions.dm @@ -84,6 +84,7 @@ M.apply_damage(8,def_zone = "head") visible_message("[G.assailant] slams [G.affecting]'s face against \the [src]!") playsound(src.loc, 'sound/weapons/tablehit1.ogg', 50, 1) + take_damage(rand(1,5)) else user << "You need a better grip to do that!" return diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index 0414fe238a..c5a1abc9c9 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -18,6 +18,7 @@ var/can_reinforce = 1 var/can_plate = 1 + var/manipulating = 0 var/material/material = null var/material/reinforced = null @@ -131,6 +132,7 @@ var/obj/item/weapon/weldingtool/F = W if(F.welding) user << "You begin reparing damage to \the [src]." + playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) if(!do_after(user, 20) || !F.remove_fuel(1, user)) return user.visible_message("\The [user] repairs some damage to \the [src].", @@ -192,37 +194,52 @@ if(!istype(M)) user << "You cannot [verb]e \the [src] with \the [S]." return null + + if(manipulating) return M + manipulating = 1 user << "You begin [verb]ing \the [src] with [M.display_name]." if(!do_after(user, 20) || !S.use(1)) + manipulating = 0 return null user.visible_message("\The [user] [verb]es \the [src] with [M.display_name].", "You finish [verb]ing \the [src].") + manipulating = 0 return M // Returns the material to set the table to. -/obj/structure/table/proc/common_material_remove(mob/user, material/M, delay, what, type_holding) +/obj/structure/table/proc/common_material_remove(mob/user, material/M, delay, what, type_holding, sound) if(!M.stack_type) user << "You are unable to remove the [what] from this table!" return M + if(manipulating) return M + manipulating = 1 user.visible_message("\The [user] begins removing the [type_holding] holding \the [src]'s [M.display_name] [what] in place.", "You begin removing the [type_holding] holding \the [src]'s [M.display_name] [what] in place.") + if(sound) + playsound(src.loc, sound, 50, 1) if(!do_after(user, 40)) + manipulating = 0 return M user.visible_message("\The [user] removes the [M.display_name] [what] from \the [src].", "You remove the [M.display_name] [what] from \the [src].") new M.stack_type(src.loc) + manipulating = 0 return null /obj/structure/table/proc/remove_reinforced(obj/item/weapon/screwdriver/S, mob/user) - reinforced = common_material_remove(user, reinforced, 40, "reinforcements", "screws") + reinforced = common_material_remove(user, reinforced, 40, "reinforcements", "screws", 'sound/items/Screwdriver.ogg') /obj/structure/table/proc/remove_material(obj/item/weapon/wrench/W, mob/user) - material = common_material_remove(user, material, 20, "plating", "bolts") + material = common_material_remove(user, material, 20, "plating", "bolts", 'sound/items/Ratchet.ogg') /obj/structure/table/proc/dismantle(obj/item/weapon/wrench/W, mob/user) + if(manipulating) return + manipulating = 1 user.visible_message("\The [user] begins dismantling \the [src].", "You begin dismantling \the [src].") + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) if(!do_after(user, 20)) + manipulating = 0 return user.visible_message("\The [user] dismantles \the [src].", "You dismantle \the [src].") @@ -276,7 +293,7 @@ var/tabledirs = 0 for(var/direction in list(turn(dir,90), turn(dir,-90)) ) var/obj/structure/table/T = locate(/obj/structure/table ,get_step(src,direction)) - if (T && T.flipped == 1 && T.dir == src.dir && T.material.name == material.name) + if (T && T.flipped == 1 && T.dir == src.dir && material && T.material && T.material.name == material.name) type++ tabledirs |= direction @@ -353,7 +370,7 @@ for(var/obj/structure/table/T in oview(src, 1)) var/T_dir = get_dir(src, T) if(T_dir in blocked_dirs) continue - if(material.name == T.material.name && flipped == T.flipped) + if(material && T.material && material.name == T.material.name && flipped == T.flipped) connection_dirs |= T_dir if(propagate) spawn(0) From 363ce0a925312ae4054ac4085fedd48ce4dd294f Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Fri, 15 May 2015 00:07:45 +0100 Subject: [PATCH 070/199] Fixes grabs runtiming on qdel() --- code/modules/mob/mob_grab.dm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm index bc41cb1418..d3b889198c 100644 --- a/code/modules/mob/mob_grab.dm +++ b/code/modules/mob/mob_grab.dm @@ -71,10 +71,13 @@ /obj/item/weapon/grab/process() + if(gcDestroyed) // GC is trying to delete us, we'll kill our processing so we can cleanly GC + return PROCESS_KILL + confirm() if(!assailant) - qdel(src) - return + qdel(src) // Same here, except we're trying to delete ourselves. + return PROCESS_KILL if(assailant.client) assailant.client.screen -= hud @@ -407,7 +410,11 @@ /obj/item/weapon/grab/dropped() loc = null - qdel(src) + if(!destroying) + qdel(src) + +/obj/item/weapon/grab + var/destroying = 0 /obj/item/weapon/grab/Destroy() animate(affecting, pixel_x = 0, pixel_y = 0, 4, 1, LINEAR_EASING) @@ -421,4 +428,5 @@ assailant = null qdel(hud) hud = null - ..() \ No newline at end of file + destroying = 1 // stops us calling qdel(src) on dropped() + ..() From 7c242b2c8c58ddf318fc02bd5add458b2f820158 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 14 May 2015 19:14:22 -0400 Subject: [PATCH 071/199] Tail animation resets when unconscious, changelog --- code/modules/mob/living/carbon/human/life.dm | 2 ++ html/changelogs/HarpyEagle-tailanim.yml | 4 ++++ 2 files changed, 6 insertions(+) create mode 100644 html/changelogs/HarpyEagle-tailanim.yml diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index c16a03d5ca..24bb7d0310 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -987,6 +987,7 @@ AdjustParalysis(-1) blinded = 1 stat = UNCONSCIOUS + animate_tail_reset() if(halloss > 0) adjustHalLoss(-3) else if(sleeping) @@ -1001,6 +1002,7 @@ sleeping = max(sleeping-1, 0) blinded = 1 stat = UNCONSCIOUS + animate_tail_reset() if( prob(2) && health && !hal_crit ) spawn(0) emote("snore") diff --git a/html/changelogs/HarpyEagle-tailanim.yml b/html/changelogs/HarpyEagle-tailanim.yml new file mode 100644 index 0000000000..b3fdf054a3 --- /dev/null +++ b/html/changelogs/HarpyEagle-tailanim.yml @@ -0,0 +1,4 @@ +author: HarpyEagle +delete-after: True +changes: + - rscadd: "Adds tail animations for tajaran and unathi. Animations are controlled using emotes." From 17bfbd911bb572fd7f4f000f195b6fc7e6de1cd1 Mon Sep 17 00:00:00 2001 From: Atlantiscze Date: Fri, 15 May 2015 01:39:24 +0200 Subject: [PATCH 072/199] Fixes missing cable near mining outpost --- maps/exodus-5.dmm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 8f0fe1ad59..4ca285ae1c 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -1595,7 +1595,7 @@ "EI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "EJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) "EK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating/airless,/area/space) -"EL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/mine/explored) +"EL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/mine/explored) "EM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating/airless,/area/space) "EN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plating/airless,/area/space) "EO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/east_hall) From 735202d40902a662d6cb4aaedccb95984a16a428 Mon Sep 17 00:00:00 2001 From: ccomp5950 Date: Thu, 14 May 2015 21:07:36 -0400 Subject: [PATCH 073/199] Admin log fix: Something that really annoys ravensdale. [X] has shot [y] with a the bullet http://i.imgur.com/F54KjJ3.png --- code/modules/projectiles/projectile.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index f477deb25a..c87a5948f7 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -168,15 +168,15 @@ //admin logs if(!no_attack_log) if(istype(firer, /mob)) - target_mob.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with a [src.type]" - firer.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with a [src.type]" - msg_admin_attack("[firer] ([firer.ckey]) shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG + target_mob.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with \a [src.type]" + firer.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with \a [src.type]" + msg_admin_attack("[firer] ([firer.ckey]) shot [target_mob] ([target_mob.ckey]) with \a [src] (JMP)") //BS12 EDIT ALG else if(firer) - target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with a [src]" + target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with \a [src]" msg_admin_attack("UNKNOWN shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG else - target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with a [src]" - msg_admin_attack("UNKNOWN shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG + target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with \a [src]" + msg_admin_attack("UNKNOWN shot [target_mob] ([target_mob.ckey]) with \a [src] (JMP)") //BS12 EDIT ALG //sometimes bullet_act() will want the projectile to continue flying if (target_mob.bullet_act(src, def_zone) == -1) From 354859b8896938af13e9aa9a6af9519da382763f Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Fri, 15 May 2015 04:47:18 +0100 Subject: [PATCH 074/199] Generalises shards, makes tables possibly create shards when falling apart, make tablesmash potentially give someone a faceful of broken glass if the table breaks --- .../game/objects/items/stacks/sheets/glass.dm | 1 + code/game/objects/items/weapons/shards.dm | 101 +++++++++--------- code/game/turfs/simulated/walls.dm | 2 +- code/modules/materials/materials.dm | 42 +++++++- .../human/species/xenomorphs/alien_powers.dm | 2 +- .../xenoarchaeology/finds/finds_misc.dm | 43 +------- code/modules/tables/interactions.dm | 15 ++- code/modules/tables/tables.dm | 46 ++++++-- code/setup.dm | 13 ++- icons/obj/shards.dmi | Bin 2610 -> 4520 bytes 10 files changed, 158 insertions(+), 107 deletions(-) diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index bbb8e32736..cac3fffad7 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -175,6 +175,7 @@ matter = list("glass" = 7500) origin_tech = "materials=3;phorontech=2" created_window = /obj/structure/window/phoronbasic + sheettype = "phoronglass" /obj/item/stack/sheet/glass/phoronglass/attackby(obj/item/W, mob/user) ..() diff --git a/code/game/objects/items/weapons/shards.dm b/code/game/objects/items/weapons/shards.dm index a383d8fb0c..593b3d019d 100644 --- a/code/game/objects/items/weapons/shards.dm +++ b/code/game/objects/items/weapons/shards.dm @@ -1,19 +1,22 @@ // Glass shards /obj/item/weapon/shard - name = "glass shard" + name = "shard" icon = 'icons/obj/shards.dmi' icon_state = "large" sharp = 1 edge = 1 - desc = "Could probably be used as ... a throwing weapon?" + desc = "Made of nothing. How does this even exist?" // set based on material, if this desc is visible it's a bug (shards default to being made of glass) w_class = 2.0 force = 5.0 throwforce = 8.0 item_state = "shard-glass" - matter = list("glass" = 3750) + //matter = list("glass" = 3750) // Weld it into sheets before you use it! attack_verb = list("stabbed", "slashed", "sliced", "cut") + gender = "neuter" + var/material/material = null + /obj/item/weapon/shard/suicide_act(mob/user) viewers(user) << pick("\red [user] is slitting \his wrists with \the [src]! It looks like \he's trying to commit suicide.", \ "\red [user] is slitting \his throat with \the [src]! It looks like \he's trying to commit suicide.") @@ -34,36 +37,54 @@ return return -/obj/item/weapon/shard/New() +/obj/item/weapon/shard/New(loc, material/material) + ..(loc) - src.icon_state = pick("large", "medium", "small") - switch(src.icon_state) - if("small") - src.pixel_x = rand(-12, 12) - src.pixel_y = rand(-12, 12) - if("medium") - src.pixel_x = rand(-8, 8) - src.pixel_y = rand(-8, 8) - if("large") - src.pixel_x = rand(-5, 5) - src.pixel_y = rand(-5, 5) + if(!material || !istype(material)) // We either don't have a material or we've been passed an invalid material. Use glass instead. + material = get_material_by_name("glass") + + set_material(material) + +/obj/item/weapon/shard/proc/set_material(material/material) + if(istype(material)) + src.material = material + icon_state = "[material.shard_icon][pick("large", "medium", "small")]" + pixel_x = rand(-8, 8) + pixel_y = rand(-8, 8) + update_material() + update_icon() + +/obj/item/weapon/shard/proc/update_material() + if(material) + if(material.shard_type) + name = "[material.display_name] [material.shard_type]" + desc = "A small piece of [material.display_name]. It looks sharp, you wouldn't want to step on it barefoot. Could probably be used as ... a throwing weapon?" + switch(material.shard_type) + if(SHARD_SPLINTER, SHARD_SHRAPNEL) + gender = "plural" + else + gender = "neuter" else - return + qdel(src) + return + else + name = initial(name) + desc = initial(desc) + +/obj/item/weapon/shard/update_icon() + if(material) + color = material.icon_colour + // 1-(1-x)^2, so that glass shards with 0.3 opacity end up somewhat visible at 0.51 opacity + alpha = 255 * (1 - (1 - material.opacity)*(1 - material.opacity)) + else + color = "#ffffff" + alpha = 255 /obj/item/weapon/shard/attackby(obj/item/weapon/W as obj, mob/user as mob) - ..() - if ( istype(W, /obj/item/weapon/weldingtool)) + if(istype(W, /obj/item/weapon/weldingtool) && material.shard_can_repair) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0, user)) - var/obj/item/stack/sheet/glass/NG = new (user.loc) - for (var/obj/item/stack/sheet/glass/G in user.loc) - if(G==NG) - continue - if(G.amount>=G.max_amount) - continue - G.attackby(NG, user) - usr << "You add the newly-formed glass to the stack. It now contains [NG.amount] sheets." - //SN src = null + material.place_sheet(loc) qdel(src) return return ..() @@ -90,26 +111,10 @@ H.Weaken(3) ..() -// Shrapnel +// Preset types - left here for the code that uses them -/obj/item/weapon/shard/shrapnel - name = "shrapnel" - icon = 'icons/obj/shards.dmi' - icon_state = "shrapnellarge" - desc = "A bunch of tiny bits of shattered metal." +/obj/item/weapon/shard/shrapnel/New(loc) + ..(loc, get_material_by_name("steel")) -/obj/item/weapon/shard/shrapnel/New() - - src.icon_state = pick("shrapnellarge", "shrapnelmedium", "shrapnelsmall") - switch(src.icon_state) - if("shrapnelsmall") - src.pixel_x = rand(-12, 12) - src.pixel_y = rand(-12, 12) - if("shrapnelmedium") - src.pixel_x = rand(-8, 8) - src.pixel_y = rand(-8, 8) - if("shrapnellarge") - src.pixel_x = rand(-5, 5) - src.pixel_y = rand(-5, 5) - else - return +/obj/item/weapon/shard/phoron/New(loc) + ..(loc, get_material_by_name("phoron glass")) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 52086c6228..928dbaf36a 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -189,7 +189,7 @@ var/list/global/wall_cache = list() new/obj/effect/overlay/wallrot(src) /turf/simulated/wall/proc/can_melt() - if(material.unmeltable) + if(material.flags & MATERIAL_UNMELTABLE) return 0 return 1 diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index c791a8b560..d8309e5d6f 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -27,11 +27,11 @@ var/list/name_to_material /material var/name // Tag for use in overlay generation/list population . var/display_name + var/flags = 0 var/icon_base = "metal" var/icon_colour var/icon_reinf = "reinf_metal" var/stack_type - var/unmeltable var/cut_delay = 0 var/radioactivity var/ignition_point @@ -41,11 +41,17 @@ var/list/name_to_material var/rotting_touch_message = "crumbles under your touch" var/opacity = 1 var/explosion_resistance = 5 + var/shard_type = SHARD_SHRAPNEL + var/shard_icon + var/shard_can_repair = 1 + var/tableslam_noise = 'sound/weapons/tablehit1.ogg' /material/New() ..() if(!display_name) display_name = name + if(!shard_icon) + shard_icon = shard_type /material/proc/place_dismantled_girder(var/turf/target, var/material/reinf_material) var/obj/structure/girder/G = new(target) @@ -59,7 +65,14 @@ var/list/name_to_material /material/proc/place_sheet(var/turf/target) if(stack_type) - new stack_type(target) + return new stack_type(target) + +/material/proc/place_shard(var/turf/target) + if(shard_type) + return new /obj/item/weapon/shard(target, src) + +/material/proc/is_brittle() + return !!(flags & MATERIAL_BRITTLE) /material/uranium name = "uranium" @@ -72,10 +85,12 @@ var/list/name_to_material /material/diamond name = "diamond" stack_type = /obj/item/stack/sheet/mineral/diamond - unmeltable = 1 + flags = MATERIAL_UNMELTABLE cut_delay = 60 icon_colour = "#00FFE1" opacity = 0.4 + shard_type = SHARD_SHARD + tableslam_noise = 'sound/effects/Glasshit.ogg' /material/gold name = "gold" @@ -93,6 +108,7 @@ var/list/name_to_material ignition_point = 300 icon_base = "stone" icon_colour = "#FC2BC5" + shard_type = SHARD_SHARD /material/sandstone name = "sandstone" @@ -100,6 +116,7 @@ var/list/name_to_material icon_base = "stone" icon_reinf = "reinf_stone" icon_colour = "#D9C179" + shard_type = SHARD_STONE_PIECE /material/steel name = DEFAULT_WALL_MATERIAL @@ -112,6 +129,7 @@ var/list/name_to_material name = "holographic " + DEFAULT_WALL_MATERIAL display_name = DEFAULT_WALL_MATERIAL stack_type = null + shard_type = SHARD_NONE /material/plasteel name = "plasteel" @@ -126,13 +144,25 @@ var/list/name_to_material /material/glass name = "glass" stack_type = /obj/item/stack/sheet/glass + flags = MATERIAL_BRITTLE icon_colour = "#00E1FF" opacity = 0.3 integrity = 100 + shard_type = SHARD_SHARD + tableslam_noise = 'sound/effects/Glasshit.ogg' + +/material/glass/phoron + name = "phoron glass" + stack_type = /obj/item/stack/sheet/glass/phoronglass + flags = MATERIAL_BRITTLE + ignition_point = 300 + integrity = 200 // idk why but phoron windows are strong, so. + icon_colour = "#FC2BC5" /material/plastic name = "plastic" stack_type = /obj/item/stack/sheet/mineral/plastic + flags = MATERIAL_BRITTLE icon_base = "solid" icon_reinf = "reinf_over" icon_colour = "#CCCCCC" @@ -169,11 +199,14 @@ var/list/name_to_material integrity = 25 icon_base = "solid" explosion_resistance = 2 + shard_type = SHARD_SPLINTER + shard_can_repair = 0 // you can't weld splinters back into planks /material/wood/holographic name = "holographic wood" display_name = "wood" stack_type = null + shard_type = SHARD_NONE /material/cult name = "cult" @@ -181,6 +214,7 @@ var/list/name_to_material icon_base = "cult" icon_colour = "#402821" icon_reinf = "reinf_cult" + shard_type = SHARD_STONE_PIECE /material/cult/place_dismantled_girder(var/turf/target) new /obj/structure/girder/cult(target) @@ -193,4 +227,4 @@ var/list/name_to_material display_name = "human remains" /material/cult/reinf/place_dismantled_product(var/turf/target) - new /obj/effect/decal/remains/human(target) \ No newline at end of file + new /obj/effect/decal/remains/human(target) diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm index 7bab6d074c..bee6928a23 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm @@ -142,7 +142,7 @@ else if(istype(O, /turf/simulated/wall)) var/turf/simulated/wall/W = O - if(W.material.unmeltable) + if(W.material.flags & MATERIAL_UNMELTABLE) cannot_melt = 1 else if(istype(O, /turf/simulated/floor/engine)) cannot_melt = 1 diff --git a/code/modules/research/xenoarchaeology/finds/finds_misc.dm b/code/modules/research/xenoarchaeology/finds/finds_misc.dm index 8b7dd3fdfa..f494505b63 100644 --- a/code/modules/research/xenoarchaeology/finds/finds_misc.dm +++ b/code/modules/research/xenoarchaeology/finds/finds_misc.dm @@ -1,46 +1,5 @@ -/obj/item/weapon/shard/phoron - name = "phoron shard" - desc = "A shard of phoron glass. Considerably tougher then normal glass shards. Apparently not tough enough to be a window." - force = 8.0 - throwforce = 15.0 - icon_state = "phoronlarge" - sharp = 1 - edge = 1 - -/obj/item/weapon/shard/phoron/New() - - src.icon_state = pick("phoronlarge", "phoronmedium", "phoronsmall") - switch(src.icon_state) - if("phoronsmall") - src.pixel_x = rand(-12, 12) - src.pixel_y = rand(-12, 12) - if("phoronmedium") - src.pixel_x = rand(-8, 8) - src.pixel_y = rand(-8, 8) - if("phoronlarge") - src.pixel_x = rand(-5, 5) - src.pixel_y = rand(-5, 5) - else - return - -/obj/item/weapon/shard/phoron/attackby(obj/item/weapon/W as obj, mob/user as mob) - ..() - if ( istype(W, /obj/item/weapon/weldingtool)) - var/obj/item/weapon/weldingtool/WT = W - if(WT.remove_fuel(0, user)) - var/obj/item/stack/sheet/glass/phoronglass/NG = new (user.loc) - for (var/obj/item/stack/sheet/glass/phoronglass/G in user.loc) - if(G==NG) - continue - if(G.amount>=G.max_amount) - continue - G.attackby(NG, user) - usr << "You add the newly-formed phoron glass to the stack. It now contains [NG.amount] sheets." - //SN src = null - qdel(src) - return - return ..() +// Phoron shards have been moved to code/game/objects/items/weapons/shards.dm //legacy crystal /obj/machinery/crystal diff --git a/code/modules/tables/interactions.dm b/code/modules/tables/interactions.dm index 7eed01c237..09e32deebe 100644 --- a/code/modules/tables/interactions.dm +++ b/code/modules/tables/interactions.dm @@ -83,8 +83,19 @@ if (prob(15)) M.Weaken(5) M.apply_damage(8,def_zone = "head") visible_message("[G.assailant] slams [G.affecting]'s face against \the [src]!") - playsound(src.loc, 'sound/weapons/tablehit1.ogg', 50, 1) - take_damage(rand(1,5)) + if(material) + playsound(loc, material.tableslam_noise, 50, 1) + else + playsound(loc, 'sound/weapons/tablehit1.ogg', 50, 1) + var/list/L = take_damage(rand(1,5)) + // Shards. Extra damage, plus potentially the fact YOU LITERALLY HAVE A PIECE OF GLASS/METAL/WHATEVER IN YOUR FACE + for(var/obj/item/weapon/shard/S in L) + if(prob(50)) + M.visible_message("\The [S] slices [M]'s face messily!", + "\The [S] slices your face messily!") + M.apply_damage(10, def_zone = "head") + if(prob(2)) + M.embed(S, def_zone = "head") else user << "You need a better grip to do that!" return diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index c5a1abc9c9..88042181a1 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -41,10 +41,17 @@ health += maxhealth - old_maxhealth /obj/structure/table/proc/take_damage(amount) + // If the table is made of a brittle material, and is *not* reinforced with a non-brittle material, damage is multiplied by TABLE_BRITTLE_MATERIAL_MULTIPLIER + if(material && material.is_brittle()) + if(reinforced) + if(reinforced.is_brittle()) + amount *= TABLE_BRITTLE_MATERIAL_MULTIPLIER + else + amount *= TABLE_BRITTLE_MATERIAL_MULTIPLIER health -= amount if(health <= 0) visible_message("\The [src] breaks down!") - break_to_parts() + return break_to_parts() // if we break and form shards, return them to the caller to do !FUN! things with /obj/structure/table/New() ..() @@ -68,6 +75,7 @@ /obj/structure/table/Destroy() material = null + reinforced = null update_connections(1) // Update tables around us to ignore us (material=null forces no connections) for(var/obj/structure/table/T in oview(src, 1)) T.update_icon() @@ -247,17 +255,39 @@ qdel(src) return +// Returns a list of /obj/item/weapon/shard objects that were created as a result of this table's breakage. +// Used for !fun! things such as embedding shards in the faces of tableslammed people. + +// The repeated +// S = [x].place_shard(loc) +// if(S) shards += S +// is to avoid filling the list with nulls, as place_shard won't place shards of certain materials (holo-wood, holo-steel) + /obj/structure/table/proc/break_to_parts(full_return = 0) - if(reinforced && reinforced.stack_type && (full_return || prob(25))) - new reinforced.stack_type(src.loc) - if(material && material.stack_type && (full_return || prob(50))) - new material.stack_type(src.loc) - if(carpeted && (full_return || prob(50))) + var/list/shards = list() + var/obj/item/weapon/shard/S = null + if(reinforced) + if(reinforced.stack_type && (full_return || prob(20))) + reinforced.place_sheet(loc) + else + S = reinforced.place_shard(loc) + if(S) shards += S + if(material) + if(material.stack_type && (full_return || prob(20))) + material.place_sheet(loc) + else + S = material.place_shard(loc) + if(S) shards += S + if(carpeted && (full_return || prob(50))) // Higher chance to get the carpet back intact, since there's no non-intact option new /obj/item/stack/tile/carpet(src.loc) - if(full_return || prob(50)) + if(full_return || prob(20)) new /obj/item/stack/sheet/metal(src.loc) + else + var/material/M = get_material_by_name(DEFAULT_WALL_MATERIAL) + S = M.place_shard(loc) + if(S) shards += S qdel(src) - return + return shards /obj/structure/table/update_icon() if(flipped != 1) diff --git a/code/setup.dm b/code/setup.dm index 7cbcf93bdd..2942d7447d 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -969,4 +969,15 @@ var/list/be_special_flags = list( #endif #ifndef CUSTOM_ITEM_MOB #define CUSTOM_ITEM_MOB 'icons/mob/custom_items_mob.dmi' -#endif \ No newline at end of file +#endif + +#define SHARD_SHARD "shard" +#define SHARD_SHRAPNEL "shrapnel" +#define SHARD_STONE_PIECE "piece" +#define SHARD_SPLINTER "splinters" +#define SHARD_NONE "" + +#define MATERIAL_UNMELTABLE 1 +#define MATERIAL_BRITTLE 2 + +#define TABLE_BRITTLE_MATERIAL_MULTIPLIER 4 // Amount table damage is multiplied by if it is made of a brittle material (e.g. glass) \ No newline at end of file diff --git a/icons/obj/shards.dmi b/icons/obj/shards.dmi index 22f5e98314d195ee989a3215b7a3446c2f093cb4..e8bee2d57f7b7b826171221aa19219171426744d 100644 GIT binary patch literal 4520 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�cn|QM#9d)(K$Dl^Vjqf5)$g}X@9gE(_=0wF33Hi8rRj3hs{Knm5Jh7 zNB(qeZAk#zVuUi$U^Ti`_%xg@is<1kGyMGg$y}7d8_!rSOwS+?aWxmCn>lqPU?N=D zGtWl9y6Ph^kJ?zW{rMZNH%z5`*fj0diDafDD!F7(l1Un{S&H}R`P}fwugSpJ_^lbC zLSI#02xM-OUgK3>(?phAx?%3Y$K!xG$e?Ek5h+;{KIKrrbdU!eZjw{_F6}z{$S0ZoWI~*H*{(wFn zqHkjIZsM$ETu)2-U1ZY!-b59md*x+c4FZW|RY3+_`F{WL!(B5CQ8hqybaeFBRFnh@ z{pcZl+SeYKJi5lxSNFJ=l07HiY-R8Br|a1_{}J%B9XablnVE#nu6u7NIhe{RPh9b5 z8}hymB)h9h!z#&*LbNyBPQhfH-c?nF1vP1zM+k^t(K!TgD)UZ=QX!P{+MqTzIDc~T zOMnM1TpUi?(_=`lPjkV&4S8^AEZq^MZkW`nA&E5ZtN7PwUoPq4fhf@LO!tB8?k)0M z_OrbZ0Lhn9?ZHV^Eh}>ylog$2n-P>LdqO(;Q9a#jwZ>tf_NHh_EB*9CVSf7mj|xH< XDi*_-6#*kc4glJkx{yyAc9H)BbP2k} literal 2610 zcmZ`*byU>b7XEQZ>6Y$>3y1?qNQ?v0Inp5^AT13;mjaieR8km9RB~t#>5$eT1XK`^ zp>r7N7 zCzzs86N><~C;pCpZax8S-d+F@j7%BVC-38-z4@!jAHn-0`|9aD!vmj}KUI9#Zpu7v z+&yZm-L3bPqk#mcZQ^8;Lp5aFg6UnlgffDaIaJ!)Z&M4}qIo#Z`ZL-5B;#NX%#?Sg zVrmPdb(CUS8WK&gg$O4+|6V%-0w@;1qISs_?2Y!zT zusGk+aFofp@%0^9om?y?emp9YVE!v;5wReTjq zsq0DOZ>2PzAvj9w>%)A9Zf=)m{a%;CkD2*R<$P2pH@JRp=Vb8YqI2xv=ceb}bfr0O zZR&azSNAv0$I<nGQ|^iO1nD+fJ%O7ECuE9i8US8B0ij?ClS1>UQT2ACX}zaa!{eysHtS`9wf6CGTy}PM&b_&{8_q zY_~lcED@rmTwXGo@hL|QM}J-xp5*RqCnGSAUd_Z_bdnGrc3oq1DXHyxf9(sdu7{u^ zgDOcs0Mz$UB!$M$P|019Ys5_wa|-GTHkNWlxI-d$TsOf($usqf4RyQy|oCO3t+rOD=t(c*6%E9e`7 zrb*3Y!?AHQ*5GY6a2R%x9?;Vt9gv_sZx)Wu=VKaCsLP)onTtKB`}m2B+lFPM zda`t1_e$P|*LTiLAMP2pB#osKQel;ai!?s-U$AOxgWKd!Kj(8J>OAid|Z!#6TtHJBufI_{bJuT8Rvh@ypo25a+AjUquo@D>5p4z zM3&+^R=aZYax@MYGpi76MF3ymNv9O`)`?RD zigkV+x+O^a2GMqy(zEA4>y2pXWR*|Y^oeKFG1-4Mzx^2J?v3J#D4 z(XsUJ&%>l|Nl8!P9oCcQn?W%pR+qtBgq#SMJH%ve)7u=8JQK!0<#GoIkF{l`ebm>mh-&SdA51Du{sD?$tg-m z(6!vmKf`WD{@R%Bam!m+tRwd#h7E0!2d?CMRJcL~W=RyTgQ_h3!#wj|y4o3BOuf%d zjDL8xYjN-%TaF=OTf>QLc4I7L%(rb*<O|%XQdRkE|%UCuNCVmf1^T|zx#}_@VQI*-U*}hZGD)! zxu>a1Fv*KkaRE|JJKZAH@vWM@lj3q^^YLmJ2`yr^@yi}%N5}x_4)x7wtwuxHTsS2w z6k~pJ0saapuL=#kOtZI?=YQt79A?{=d`dvY!vF%b3OjQHIu6DvjD(k5D4^(M?9_Zs zF|ArG0dki4W`ikn;_+%#H^IX|y`;_4u|~scccGqw5}2A^xD+uz-@d&#`?C&T6}bH5 zQz(IwnfFPZryiYZesqW#zbBuNW1c8mR{GwlK_082TFrp_o`gPQ4Ej-GR`arv^x zy51N4y$JLkj7Ltv^-DzjE3oPPPgcw}8nX*csNQ}rk02v6L5o-_u^r@(d34q%t8q^t z&_E0+QE#ykQKwqBJLx1liMrWL%40^6Z#8~tpGBZ8(TEaJb9IODJGD<&au0O@*4XBx z8Ju4mtIG`Ih6XK{1%8BEBywVNgeXpJLB!#8j6&&4rhc^LNkcIM{giJjvR`@#4ch#oZ%x0#}dQUVodyP zX6Z!3PDaO}9U~-Q+nR4?Ix4bBWQ`t2MZ?h*6{6NkT-iTtUGR262tX)qwT(C-TuCh|NWJBN6xzEEEN=M8< zFZfz-Bve<*Rv=ybM-?LRq`hT<;tlMjmVn-^B3glQ4Cc+=coUN|dbIHx$(}a2YLq}N zn)YQU`=otj%Z}OlacEseCQ%+8F66)C$-iCXUsZFiK}6Q?H&x%_?-PbVKwI5Fty Date: Fri, 15 May 2015 13:10:50 +0930 Subject: [PATCH 075/199] Fixes several wall issues. --- code/game/turfs/simulated/wall_icon.dm | 14 +++++++++----- code/game/turfs/simulated/walls.dm | 22 +++++++++++++--------- code/modules/materials/materials.dm | 3 +++ 3 files changed, 25 insertions(+), 14 deletions(-) diff --git a/code/game/turfs/simulated/wall_icon.dm b/code/game/turfs/simulated/wall_icon.dm index b02311ee98..1adaba850f 100644 --- a/code/game/turfs/simulated/wall_icon.dm +++ b/code/game/turfs/simulated/wall_icon.dm @@ -69,6 +69,7 @@ /turf/simulated/wall/proc/set_material(var/material/newmaterial, var/material/newrmaterial) material = newmaterial reinf_material = newrmaterial + update_material() check_relatives() check_relatives(1) @@ -85,7 +86,10 @@ else set_wall_state("[material.icon_base]fwall_open") - var/overlay = round(damage / material.integrity * damage_overlays.len) + 1 + var/dmg_amt = material.integrity + if(reinf_material) + dmg_amt += reinf_material.integrity + var/overlay = round(damage / dmg_amt * damage_overlays.len) + 1 if(overlay > damage_overlays.len) overlay = damage_overlays.len if(density) @@ -115,11 +119,11 @@ var/turf/simulated/wall/T = get_step(src, checkdir) if(!istype(T) || !T.material) continue - if(T.material && can_join_with(T)) - if(update_self) + if(update_self) + if(can_join_with(T)) junction |= get_dir(src,T) //Not too sure why, but using checkdir just breaks walls. - else - T.check_relatives(1) + else + T.check_relatives(1) if(!isnull(junction)) set_wall_state("[material.icon_base][junction]") return diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 4596512fe4..72df25cfbe 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -144,15 +144,15 @@ var/list/global/wall_cache = list() return ..() -/turf/simulated/wall/proc/dismantle_wall(devastated=0, explode=0) +/turf/simulated/wall/proc/dismantle_wall(var/devastated, var/explode, var/no_product) playsound(src, 'sound/items/Welder.ogg', 100, 1) - if(reinf_material) - reinf_material.place_dismantled_girder(src, reinf_material) - reinf_material.place_dismantled_product(src,devastated) - else - material.place_dismantled_girder(src) - material.place_dismantled_product(src,devastated) + if(!no_product) + if(reinf_material) + reinf_material.place_dismantled_girder(src, reinf_material) + else + material.place_dismantled_girder(src) + material.place_dismantled_product(src,devastated) for(var/obj/O in src.contents) //Eject contents! if(istype(O,/obj/structure/sign/poster)) @@ -161,6 +161,11 @@ var/list/global/wall_cache = list() else O.loc = src + clear_plants() + material = name_to_material["placeholder"] + reinf_material = null + check_relatives() + ChangeTurf(/turf/simulated/floor/plating) /turf/simulated/wall/ex_act(severity) @@ -275,6 +280,5 @@ var/list/global/wall_cache = list() ..() /turf/simulated/wall/Destroy() - clear_plants() - check_relatives() + dismantle_wall(null,null,1) ..() \ No newline at end of file diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 04e8d485ba..3c1b3c87c2 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -40,6 +40,9 @@ var/list/name_to_material if(!display_name) display_name = name +/material/placeholder + name = "placeholder" + /material/proc/place_dismantled_girder(var/turf/target, var/material/reinf_material) var/obj/structure/girder/G = new(target) if(reinf_material) From 30cda10bb33b3cb515f912b27130525293284ff3 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 15 May 2015 13:43:28 +0930 Subject: [PATCH 076/199] Fixes #9226 --- code/modules/hydroponics/spreading/spreading_response.dm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/code/modules/hydroponics/spreading/spreading_response.dm b/code/modules/hydroponics/spreading/spreading_response.dm index 6a93ecaeea..9d99a212f6 100644 --- a/code/modules/hydroponics/spreading/spreading_response.dm +++ b/code/modules/hydroponics/spreading/spreading_response.dm @@ -13,8 +13,10 @@ spawn(1) entangle(M) -/obj/effect/plant/attack_hand(mob/user as mob) - // Todo, cause damage. +/obj/effect/plant/attack_hand(var/mob/user) + manual_unbuckle(user) + +/obj/effect/plant/attack_generic(var/mob/user) manual_unbuckle(user) /obj/effect/plant/proc/trodden_on(var/mob/living/victim) @@ -76,7 +78,7 @@ if(can_grab) src.visible_message("Tendrils lash out from \the [src] and drag \the [victim] in!") victim.loc = src.loc - + //entangling people if(victim.loc == src.loc) buckle_mob(victim) From dbaf5dd308c36ded9fa66ab2a578db7c1d45fdcd Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Fri, 15 May 2015 05:15:57 +0100 Subject: [PATCH 077/199] Adds cfg/ to the list of ignored files --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index aa2528a7fe..f2ce0fe4b8 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ *.lk *.backup data/ +cfg/ From fe3f16995997796bd91441b93c588059aaaa45a3 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 15 May 2015 13:53:01 +0930 Subject: [PATCH 078/199] Fixes #9234 --- code/modules/hydroponics/seed_machines.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/hydroponics/seed_machines.dm b/code/modules/hydroponics/seed_machines.dm index 864b56cc28..b1d3134344 100644 --- a/code/modules/hydroponics/seed_machines.dm +++ b/code/modules/hydroponics/seed_machines.dm @@ -88,7 +88,7 @@ if(S.seed && S.seed.get_trait(TRAIT_IMMUTABLE) > 0) user << "That seed is not compatible with our genetics technology." else - user.remove_from_mob(W) + user.drop_from_inventory(W) W.loc = src seed = W user << "You load [W] into [src]." @@ -120,7 +120,7 @@ user << "That disk does not have any gene data loaded." return - user.remove_from_mob(W) + user.drop_from_inventory(W) W.loc = src loaded_disk = W user << "You load [W] into [src]." From cb73d5b6e96eae6e9db03ef6cb362e09f8eacbd0 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 15 May 2015 18:23:00 +0930 Subject: [PATCH 079/199] Fixes #9256 --- code/game/supplyshuttle.dm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/code/game/supplyshuttle.dm b/code/game/supplyshuttle.dm index 0f5d49d223..c8adfebe20 100644 --- a/code/game/supplyshuttle.dm +++ b/code/game/supplyshuttle.dm @@ -231,7 +231,14 @@ var/list/mechtoys = list( var/list/clear_turfs = list() for(var/turf/T in area_shuttle) - if(T.density || T.contents.len) continue + if(T.density) continue + var/contcount + for(var/atom/A in T.contents) + if(A.simulated) + continue + contcount++ + if(contcount) + continue clear_turfs += T for(var/S in shoppinglist) From 624a6b0bca3833b7b1c9afb4e7f3e162d1385de0 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 15 May 2015 18:26:53 +0930 Subject: [PATCH 080/199] Fixes #9250 --- code/modules/clothing/spacesuits/rig/modules/ninja.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/clothing/spacesuits/rig/modules/ninja.dm b/code/modules/clothing/spacesuits/rig/modules/ninja.dm index e3926d7b0b..803b0f63f1 100644 --- a/code/modules/clothing/spacesuits/rig/modules/ninja.dm +++ b/code/modules/clothing/spacesuits/rig/modules/ninja.dm @@ -101,6 +101,10 @@ var/mob/living/carbon/human/H = holder.wearer + if(!istype(H.loc, /turf)) + H << "You cannot teleport out of your current location." + return 0 + var/turf/T if(target) T = get_turf(target) From f3bd251f9563e93d8a4884d83afc9ec95c468c5e Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 15 May 2015 18:29:23 +0930 Subject: [PATCH 081/199] Fixes #9259 --- code/game/machinery/autolathe.dm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index f8f8a9c21e..40db18e42f 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -1,5 +1,5 @@ /obj/machinery/autolathe - name = "\improper autolathe" + name = "autolathe" desc = "It produces items using metal and glass." icon_state = "autolathe" density = 1 @@ -140,6 +140,9 @@ if(O.loc != user && !(istype(O,/obj/item/stack))) return 0 + if(is_robot_module(O)) + return 0 + //Resources are being loaded. var/obj/item/eating = O if(!eating.matter) From 624ffcff4c993ea9fd04ecf879f8c467353537c1 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 15 May 2015 18:36:33 +0930 Subject: [PATCH 082/199] Fixes #9239 --- code/game/objects/items/weapons/tools.dm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 91b5ff6027..0f9aa738a1 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -334,26 +334,27 @@ src.welding = !( src.welding ) if (src.welding) if (remove_fuel(1)) - usr << "\blue You switch the [src] on." + usr << "You switch the [src] on." src.force = 15 src.damtype = "fire" src.icon_state = "welder1" src.w_class = 4 processing_objects.Add(src) else - usr << "\blue Need more fuel!" + usr << "You need more fuel!" src.welding = 0 - return else if(!message) - usr << "\blue You switch the [src] off." + usr << "You switch \the [src] off." else - usr << "\blue The [src] shuts off!" + usr << "\The [src] shuts off!" src.force = 3 src.damtype = "brute" src.icon_state = "welder" src.welding = 0 src.w_class = initial(src.w_class) + usr.update_inv_l_hand() + usr.update_inv_r_hand() //Decides whether or not to damage a player's eyes based on what they're wearing as protection //Note: This should probably be moved to mob From f9cbf1a1fdc510f49d5e43e5198e6ea6fc2c7580 Mon Sep 17 00:00:00 2001 From: Hubblenaut Date: Thu, 14 May 2015 17:11:18 +0200 Subject: [PATCH 083/199] Cleans up access and map artifacts --- code/game/jobs/access.dm | 9 +- code/game/jobs/job/engineering.dm | 4 +- code/game/jobs/job/medical.dm | 22 +- code/game/jobs/job/science.dm | 4 +- code/game/jobs/job/security.dm | 16 +- code/game/machinery/vending.dm | 2 +- .../crates_lockers/closets/secure/medical.dm | 6 +- .../crates_lockers/closets/secure/security.dm | 2 +- maps/exodus-1.dmm | 339 +++++++++--------- 9 files changed, 200 insertions(+), 204 deletions(-) diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm index 4d16b7ae14..33dcee54a2 100644 --- a/code/game/jobs/access.dm +++ b/code/game/jobs/access.dm @@ -9,7 +9,7 @@ /var/const/access_tox = 7 /var/const/access_tox_storage = 8 /var/const/access_genetics = 9 -/var/const/access_engine = 10 +/var/const/access_engine = 10 //engineering hallways /var/const/access_engine_equip = 11 /var/const/access_maint_tunnels = 12 /var/const/access_external_airlocks = 13 @@ -65,6 +65,7 @@ /var/const/access_sec_doors = 63 // Security front doors /var/const/access_psychiatrist = 64 // Psychiatrist's office /var/const/access_xenoarch = 65 +/var/const/access_medical_equip = 66 //BEGIN CENTCOM ACCESS /*Should leave plenty of room if we need to add more access levels. @@ -174,7 +175,7 @@ if(1) //security return list(access_sec_doors, access_security, access_brig, access_armory, access_forensics_lockers, access_court, access_hos) if(2) //medbay - return list(access_medical, access_genetics, access_morgue, access_chemistry, access_psychiatrist, access_virology, access_surgery, access_cmo) + return list(access_medical, access_medical_equip, access_genetics, access_morgue, access_chemistry, access_psychiatrist, access_virology, access_surgery, access_cmo) if(3) //research return list(access_research, access_tox, access_tox_storage, access_robotics, access_xenobiology, access_xenoarch, access_rd) if(4) //engineering and maintenance @@ -213,7 +214,7 @@ if(access_cargo_bot) return "Cargo Bot Delivery" if(access_security) - return "Security" + return "Security Equipment" if(access_brig) return "Holding Cells" if(access_court) @@ -337,7 +338,7 @@ if(access_gateway) return "Gateway" if(access_sec_doors) - return "Brig" + return "Security" /proc/get_centcom_access_desc(A) switch(A) diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 644c2fc1f8..c3368f9aff 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -50,7 +50,7 @@ supervisors = "the chief engineer" selection_color = "#fff5cc" access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics) - minimal_access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction) + minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction) alt_titles = list("Maintenance Technician","Engine Technician","Electrician") @@ -82,7 +82,7 @@ supervisors = "the chief engineer" selection_color = "#fff5cc" access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_external_airlocks) - minimal_access = list(access_atmospherics, access_maint_tunnels, access_emergency_storage, access_construction, access_external_airlocks) + minimal_access = list(access_eva, access_engine, access_atmospherics, access_maint_tunnels, access_emergency_storage, access_construction, access_external_airlocks) equip(var/mob/living/carbon/human/H) diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index 5b6fca11b6..665e37d6ee 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -11,12 +11,12 @@ selection_color = "#ffddf0" idtype = /obj/item/weapon/card/id/silver req_admin_notify = 1 - access = list(access_medical, access_morgue, access_genetics, access_heads, + access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads, access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce, - access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva) - minimal_access = list(access_medical, access_morgue, access_genetics, access_heads, + access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva, access_external_airlocks) + minimal_access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads, access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce, - access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva) + access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva, access_external_airlocks) minimal_player_age = 10 equip(var/mob/living/carbon/human/H) @@ -44,8 +44,8 @@ spawn_positions = 3 supervisors = "the chief medical officer" selection_color = "#ffeef0" - access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) - minimal_access = list(access_medical, access_morgue, access_surgery, access_virology) + access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) + minimal_access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_virology) alt_titles = list("Surgeon","Emergency Physician","Nurse","Virologist") equip(var/mob/living/carbon/human/H) @@ -106,7 +106,7 @@ spawn_positions = 2 supervisors = "the chief medical officer" selection_color = "#ffeef0" - access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) + access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) minimal_access = list(access_medical, access_chemistry) alt_titles = list("Pharmacist") @@ -164,8 +164,8 @@ spawn_positions = 1 supervisors = "the chief medical officer" selection_color = "#ffeef0" - access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_psychiatrist) - minimal_access = list(access_medical, access_psychiatrist) + access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_psychiatrist) + minimal_access = list(access_medical, access_medical_equip, access_psychiatrist) alt_titles = list("Psychologist") equip(var/mob/living/carbon/human/H) @@ -198,8 +198,8 @@ spawn_positions = 2 supervisors = "the chief medical officer" selection_color = "#ffeef0" - access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_eva, access_maint_tunnels, access_external_airlocks, access_psychiatrist) - minimal_access = list(access_medical, access_morgue, access_eva, access_maint_tunnels, access_external_airlocks) + 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) + minimal_access = list(access_medical, access_medical_equip, access_eva, access_maint_tunnels, access_external_airlocks) alt_titles = list("Emergency Medical Technician") equip(var/mob/living/carbon/human/H) diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index dc0252de53..7fa102aeb8 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -13,11 +13,11 @@ req_admin_notify = 1 access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue, access_tox_storage, access_teleporter, access_sec_doors, - access_research, access_robotics, access_xenobiology, access_ai_upload, + access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage, access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch) minimal_access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue, access_tox_storage, access_teleporter, access_sec_doors, - access_research, access_robotics, access_xenobiology, access_ai_upload, + access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage, access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch) minimal_player_age = 14 diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index e16a6af247..cb7a7d23f4 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -11,14 +11,14 @@ selection_color = "#ffdddd" idtype = /obj/item/weapon/card/id/silver req_admin_notify = 1 - access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, + access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_court, 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_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway) - minimal_access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, + access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks) + minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_court, 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_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway) + access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks) minimal_player_age = 14 equip(var/mob/living/carbon/human/H) @@ -54,8 +54,8 @@ spawn_positions = 1 supervisors = "the head of security" selection_color = "#ffeeee" - access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue) - minimal_access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels) + access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue, access_external_airlocks) + minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_external_airlocks) minimal_player_age = 5 equip(var/mob/living/carbon/human/H) @@ -133,8 +133,8 @@ spawn_positions = 3 supervisors = "the head of security" selection_color = "#ffeeee" - access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_morgue) - minimal_access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels) + access = list(access_security, access_eva, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_morgue, access_external_airlocks) + minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_external_airlocks) minimal_player_age = 3 equip(var/mob/living/carbon/human/H) if(!H) return 0 diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 81529cf804..6895124593 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -788,7 +788,7 @@ icon_state = "med" icon_deny = "med-deny" product_ads = "Go save some lives!;The best stuff for your medbay.;Only the finest tools.;Natural chemicals!;This stuff saves lives.;Don't you want some?;Ping!" - req_access = list(access_medical) + req_access = list(access_medical_equip) products = list(/obj/item/weapon/reagent_containers/glass/bottle/antitoxin = 4,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline = 4, /obj/item/weapon/reagent_containers/glass/bottle/stoxin = 4,/obj/item/weapon/reagent_containers/glass/bottle/toxin = 4, /obj/item/weapon/reagent_containers/syringe/antiviral = 4,/obj/item/weapon/reagent_containers/syringe = 12, diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index 9eebafacc7..b798016e6e 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -7,7 +7,7 @@ icon_opened = "medicalopen" icon_broken = "medicalbroken" icon_off = "medicaloff" - req_access = list(access_medical) + req_access = list(access_medical_equip) New() @@ -52,7 +52,7 @@ /obj/structure/closet/secure_closet/medical3 name = "medical doctor's locker" - req_access = list(access_medical) + req_access = list(access_medical_equip) icon_state = "securemed1" icon_closed = "securemed" icon_locked = "securemed1" @@ -187,7 +187,7 @@ anchored = 1 density = 0 wall_mounted = 1 - req_access = list(access_medical) + req_access = list(access_medical_equip) /obj/structure/closet/secure_closet/medical_wall/update_icon() if(broken) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 2480fff6da..17209d32bd 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -166,7 +166,7 @@ /obj/structure/closet/secure_closet/security name = "security officer's locker" - req_access = list(access_security) + req_access = list(access_brig) icon_state = "sec1" icon_closed = "sec" icon_locked = "sec1" diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index c9f0bb127a..a9be4495de 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -98,13 +98,13 @@ "abT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "lawyer_blast"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) "abU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green,/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/prison) "abV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/security/prison) -"abW" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "brig_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access = list(13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/solar/fore) +"abW" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "brig_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/solar/fore) "abX" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "brig_solar_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "brig_solar_airlock"; layer = 3.3; pixel_x = 0; pixel_y = -25; req_access = list(13); tag_airpump = "brig_solar_pump"; tag_chamber_sensor = "brig_solar_sensor"; tag_exterior_door = "brig_solar_outer"; tag_interior_door = "brig_solar_inner"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "brig_solar_sensor"; layer = 3.3; pixel_x = 12; pixel_y = -25},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/decal/warning_stripes,/turf/simulated/floor/plating,/area/maintenance/foresolar) -"abY" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "brig_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = list(10,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/foresolar) -"abZ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "brig_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/foresolar) +"abY" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "brig_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/foresolar) +"abZ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "brig_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/foresolar) "aca" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/foresolar) "acb" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/foresolar) -"acc" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "brig_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/foresolar) +"acc" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "brig_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/foresolar) "acd" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/security_port) "ace" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "dark"},/area/security/tactical) "acf" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/turf/simulated/floor{icon_state = "dark"},/area/security/tactical) @@ -117,7 +117,7 @@ "acm" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/main) "acn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/main) "aco" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/main) -"acp" = (/obj/machinery/door/airlock/engineering{name = "Fore Solar Access"; req_access = list(10)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/foresolar) +"acp" = (/obj/machinery/door/airlock/engineering{name = "Fore Solar Access"; req_access = list(11)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/foresolar) "acq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/main) "acr" = (/turf/simulated/wall,/area/security/main) "acs" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/security_starboard) @@ -211,7 +211,7 @@ "aec" = (/obj/machinery/button/remote/blast_door{id = "Armoury"; name = "Armoury Access"; pixel_x = -1; pixel_y = -28; req_access = list(3)},/turf/simulated/floor{icon_state = "dark"},/area/security/armoury) "aed" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "aee" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'INTERNALS REQUIRED'."; name = "INTERNALS REQUIRED"; pixel_x = 32; pixel_y = 32},/turf/simulated/floor/plating,/area/maintenance/security_starboard) -"aef" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Briefing Room"; req_access = list(63)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/main) +"aef" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Briefing Room"; req_access = list(1)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/main) "aeg" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/security_port) "aeh" = (/obj/machinery/light/small,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/security_starboard) "aei" = (/obj/machinery/light{dir = 8},/obj/structure/window/reinforced,/obj/structure/table,/obj/item/device/megaphone,/obj/item/device/megaphone,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) @@ -249,7 +249,7 @@ "aeO" = (/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"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "aeP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/highsecurity{name = "Secure Armoury Section"; req_access = list(3)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/warden) "aeQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/security_starboard) -"aeR" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Briefing Room"; req_access = list(63)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/main) +"aeR" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/glass_security{name = "Briefing Room"; req_access = list(1)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/main) "aeS" = (/turf/simulated/wall/r_wall,/area/maintenance/security_starboard) "aeT" = (/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1475; listening = 1; name = "Station Intercom (Security)"; pixel_x = 30; pixel_y = 0},/obj/machinery/camera/network/security{c_tag = "Security - Briefing"; dir = 8},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "aeU" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/security_port) @@ -625,7 +625,7 @@ "ama" = (/obj/structure/table,/obj/item/device/t_scanner,/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"},/area/maintenance/security_starboard) "amb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/brig) "amc" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/stool,/turf/simulated/floor/carpet,/area/security/detectives_office) -"amd" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/door/window/eastleft,/turf/simulated/floor,/area/security/lobby) +"amd" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access = list(2,12,24)},/turf/simulated/floor/plating,/area/security/brig) "ame" = (/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/lobby) "amf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/lobby) "amg" = (/turf/simulated/floor,/area/security/lobby) @@ -652,7 +652,7 @@ "amB" = (/obj/machinery/atmospherics/valve{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 6},/area/security/brig) "amC" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"; tag = "icon-intact-f (NORTHWEST)"},/obj/machinery/portable_atmospherics/powered/scrubber,/obj/item/weapon/wrench,/turf/simulated/floor/plating,/area/security/brig) "amD" = (/obj/machinery/door/airlock/engineering{name = "Security Substation"; req_one_access = list(11,24)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/substation/security) -"amE" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access = list(12,24)},/turf/simulated/floor/plating,/area/security/brig) +"amE" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/door/window/eastleft{req_access = list(63)},/turf/simulated/floor,/area/security/lobby) "amF" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/binary/pump{dir = 4},/turf/simulated/floor/plating,/area/security/brig) "amG" = (/obj/structure/flora/pottedplant{tag = "icon-plant-10"; icon_state = "plant-10"},/turf/simulated/floor,/area/security/brig) "amH" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/turf/simulated/floor/plating,/area/security/brig) @@ -664,7 +664,7 @@ "amN" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/brigdoor{base_state = "rightsecure"; dir = 8; icon_state = "rightsecure"; req_access = list(2)},/obj/structure/table/reinforced,/turf/simulated/floor,/area/security/brig) "amO" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/machinery/button/remote/airlock{id = "prisonentry"; name = "Entry Doors"; pixel_x = -6; pixel_y = 24; req_access = list(2)},/obj/machinery/button/remote/blast_door{id = "prisonexit"; name = "Exit Doors"; pixel_x = 6; pixel_y = 24; req_access = list(2)},/obj/machinery/button/flasher{id = "permentryflash"; name = "entry flash"; pixel_x = -26; pixel_y = 6; req_access = list(2)},/turf/simulated/floor,/area/security/brig) "amP" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the brig foyer."; id = "BrigFoyer"; name = "Brig Foyer Doors"; pixel_x = 28; pixel_y = -15},/turf/simulated/floor,/area/security/brig) -"amQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Big Brother is watching."; name = "Brig Monitor"; network = list("Prison"); pixel_x = -3; pixel_y = -33},/turf/simulated/floor,/area/security/brig) +"amQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Big Brother is watching."; layer = 3.4; name = "Brig Monitor"; network = list("Prison"); pixel_x = 3; pixel_y = -33},/obj/machinery/computer/station_alert/security,/turf/simulated/floor,/area/security/brig) "amR" = (/obj/machinery/flasher{id = "Cell 3"; pixel_x = -28; pixel_y = 0},/obj/structure/bed,/turf/simulated/floor{icon_state = "red"},/area/security/prison) "amS" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/prison) "amT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/lobby) @@ -688,8 +688,8 @@ "anl" = (/obj/structure/closet/secure_closet/brig,/obj/machinery/camera/network/security{c_tag = "Security - Prison Processing"; dir = 1},/turf/simulated/floor,/area/security/brig) "anm" = (/obj/structure/closet/secure_closet/brig{id = "Cell 3"; name = "Cell 3 Locker"},/obj/machinery/camera/network/prison{c_tag = "Security - Brig Cell 3"; dir = 8},/turf/simulated/floor{icon_state = "red"},/area/security/prison) "ann" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/brigdoor{dir = 8; req_access = list(2)},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/table/reinforced,/turf/simulated/floor,/area/security/brig) -"ano" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Big Brother is watching."; name = "Brig Monitor"; network = list("Prison"); pixel_x = 3; pixel_y = -33},/obj/machinery/computer/station_alert/security,/turf/simulated/floor,/area/security/brig) -"anp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/button/flasher{id = "permflash"; name = "Brig flashes"; pixel_x = -6; pixel_y = -24; req_access = list(2); tag = "permflash"},/obj/machinery/button/remote/blast_door{id = "brigobs"; name = "observation shutters"; pixel_x = 6; pixel_y = -24},/obj/machinery/button/remote/blast_door{id = "Secure Gate"; name = "Brig Lockdown"; pixel_x = -26; pixel_y = -4; req_access = list(2)},/turf/simulated/floor,/area/security/brig) +"ano" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/button/flasher{id = "permflash"; name = "Brig flashes"; pixel_x = -6; pixel_y = -24; req_access = list(2); tag = "permflash"},/obj/machinery/button/remote/blast_door{id = "brigobs"; name = "observation shutters"; pixel_x = 6; pixel_y = -24; req_access = list(2)},/obj/machinery/button/remote/blast_door{id = "Secure Gate"; name = "Brig Lockdown"; pixel_x = -26; pixel_y = -4; req_access = list(2)},/turf/simulated/floor,/area/security/brig) +"anp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Big Brother is watching."; layer = 3.4; name = "Brig Monitor"; network = list("Prison"); pixel_x = -3; pixel_y = -33},/turf/simulated/floor,/area/security/brig) "anq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) "anr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "ans" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) @@ -1052,7 +1052,7 @@ "aul" = (/obj/structure/closet{name = "Prisoner's Locker"},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor,/area/security/prison) "aum" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/light{dir = 4; icon_state = "tube1"; pixel_x = -6},/turf/simulated/floor/plating,/area/crew_quarters/fitness) "aun" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/computer/cryopod{density = 0; layer = 3.3; pixel_y = 32},/obj/machinery/light_switch{pixel_x = -25; pixel_y = 24},/turf/simulated/floor,/area/security/prison) -"auo" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/brigdoor{name = "Visitation Window"; req_access = list(63)},/turf/simulated/floor,/area/security/prison) +"auo" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/table/reinforced,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/door/window/eastright{req_access = list(63)},/turf/simulated/floor,/area/security/lobby) "aup" = (/obj/structure/closet{name = "Prisoner's Locker"},/obj/random/tech_supply,/obj/item/clothing/head/flatcap,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "auq" = (/obj/machinery/atm{pixel_x = -25},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/hallway/primary/fore) "aur" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/fore) @@ -1286,11 +1286,11 @@ "ayL" = (/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) "ayM" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) "ayN" = (/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/civilian_east{c_tag = "Dormitory Fitness Room West"; dir = 4},/turf/simulated/floor{icon_state = "neutral"; dir = 8},/area/crew_quarters/fitness) -"ayO" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(10,13)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) +"ayO" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/window/brigdoor{name = "Visitation Window"; req_access = list(2)},/turf/simulated/floor,/area/security/prison) "ayP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/hallway/primary/fore) "ayQ" = (/turf/simulated/floor{icon_state = "bluecorner"},/area/hallway/primary/fore) "ayR" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "neutral"; dir = 8},/area/crew_quarters/sleep) -"ayS" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/auxport) +"ayS" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/auxstarboard) "ayT" = (/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,/area/crew_quarters/sleep) "ayU" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor{icon_state = "neutral"; dir = 8},/area/crew_quarters/sleep) "ayV" = (/obj/structure/closet/lasertag/blue,/turf/simulated/floor{icon_state = "neutral"; dir = 4},/area/crew_quarters/fitness) @@ -1325,7 +1325,7 @@ "azy" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry/fore) "azz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry/fore) "azA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "warningcorner"; dir = 1},/area/hallway/secondary/entry/fore) -"azB" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_chapel_outer"; locked = 1; name = "Engineering External Access"; req_access = list(10,13)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) +"azB" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/auxport) "azC" = (/obj/structure/bed,/obj/item/weapon/bedsheet/mime,/obj/machinery/light/small{dir = 4},/obj/machinery/light_switch{pixel_x = 22; pixel_y = 10},/turf/simulated/floor/wood,/area/crew_quarters/sleep/bedrooms) "azD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "azE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) @@ -1367,7 +1367,7 @@ "aAo" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_x = -2; pixel_y = -28},/turf/simulated/floor{dir = 10; icon_state = "neutral"},/area/crew_quarters/fitness) "aAp" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/crew_quarters/fitness) "aAq" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/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"},/turf/simulated/floor,/area/crew_quarters/fitness) -"aAr" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_tool_outer"; locked = 1; name = "Engineering External Access"; req_access = list(10,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) +"aAr" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_chapel_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aAs" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/buildable{charge = 0; RCon_tag = "Solar - Fore Port"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aAt" = (/obj/structure/bed,/obj/item/weapon/bedsheet/mime,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/bedrooms) "aAu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) @@ -1424,7 +1424,7 @@ "aBt" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplatecorner"},/area/maintenance/library) "aBu" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aBv" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) -"aBw" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "E.V.A. Maintenance"; req_one_access = list(1,5,11,18,24)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) +"aBw" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_tool_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aBx" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aBy" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aBz" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/fore) @@ -1444,7 +1444,7 @@ "aBN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/checkpoint2) "aBO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/camera/network/civilian_east{c_tag = "Dormitory Fitness Room East"; dir = 1},/turf/simulated/floor,/area/crew_quarters/fitness) "aBP" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/floor/plating,/area/maintenance/arrivals) -"aBQ" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_chapel_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) +"aBQ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "E.V.A. Maintenance"; req_access = list(15,18); req_one_access = newlist()},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) "aBR" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aBS" = (/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aBT" = (/obj/item/weapon/extinguisher,/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plating,/area/maintenance/evahallway) @@ -1462,7 +1462,7 @@ "aCf" = (/turf/simulated/floor,/area/ai_monitored/storage/eva) "aCg" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aCh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) -"aCi" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_tool_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) +"aCi" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_chapel_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aCj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) "aCk" = (/obj/machinery/suit_cycler/security,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/ai_monitored/storage/eva) "aCl" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "bluecorner"},/area/hallway/primary/fore) @@ -1473,7 +1473,7 @@ "aCq" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 5; pixel_y = 0},/obj/structure/curtain/open/shower,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aCr" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aCs" = (/obj/machinery/shower{dir = 8; icon_state = "shower"; pixel_x = -5; pixel_y = 0},/obj/structure/curtain/open/shower,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) -"aCt" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medical Hardsuits"; req_access = list(5)},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) +"aCt" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_tool_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aCu" = (/turf/simulated/wall,/area/maintenance/substation/civilian_east) "aCv" = (/turf/simulated/wall/r_wall,/area/maintenance/auxsolarstarboard) "aCw" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Starboard Solar Control"; track = 0},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplatecorner"},/area/maintenance/auxsolarstarboard) @@ -1483,13 +1483,13 @@ "aCA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hallway/secondary/entry/fore) "aCB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/fore) "aCC" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/port) -"aCD" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_security{name = "Security Hardsuits"; req_access = list(1)},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) +"aCD" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_security{name = "Security Hardsuits"; req_access = list(2)},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aCE" = (/turf/simulated/wall,/area/security/checkpoint2) "aCF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/obj/machinery/meter,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 10},/area/maintenance/arrivals) "aCG" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/arrivals) -"aCH" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/auxsolarstarboard) +"aCH" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/auxsolarstarboard) "aCI" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) -"aCJ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access = list(13)},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) +"aCJ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aCK" = (/turf/simulated/wall,/area/storage/primary) "aCL" = (/obj/machinery/door/airlock{name = "Unisex Showers"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aCM" = (/turf/simulated/wall/r_wall,/area/storage/primary) @@ -1520,7 +1520,7 @@ "aDl" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aDm" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aDn" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"; tag = "icon-intact-f (SOUTHEAST)"},/mob/living/simple_animal/mouse,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/arrivals) -"aDo" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/beanbags,obj/item/weapon/gun/projectile/shotgun/doublebarrel,/obj/item/weapon/paper{info = "This permit signifies that the Bartender is permitted to posess this firearm in the bar, and ONLY the bar. Failure to adhere to this permit will result in confiscation of the weapon and possibly arrest."; name = "Shotgun permit"},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aDo" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/beanbags,/obj/item/weapon/gun/projectile/shotgun/doublebarrel,/obj/item/weapon/paper{info = "This permit signifies that the Bartender is permitted to posess this firearm in the bar, and ONLY the bar. Failure to adhere to this permit will result in confiscation of the weapon and possibly arrest."; name = "Shotgun permit"},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aDp" = (/turf/simulated/wall,/area/crew_quarters/bar) "aDq" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/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"},/turf/simulated/floor/plating,/area/maintenance/bar) "aDr" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor,/area/storage/primary) @@ -1617,7 +1617,7 @@ "aFe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/library) "aFf" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/library) "aFg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/library) -"aFh" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Starboard Solar Access"; req_access = list(10)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) +"aFh" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Starboard Solar Access"; req_access = list(11)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aFi" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/library) "aFj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "dark"},/area/maintenance/library) "aFk" = (/turf/simulated/shuttle/wall{icon_state = "swall11"; dir = 2},/area/shuttle/arrival/station) @@ -1642,7 +1642,7 @@ "aFD" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/arrivals) "aFE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/exodus{c_tag = "Arrivals East"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry/port) "aFF" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 4; icon_state = "whitecorner"},/area/hallway/secondary/entry/port) -"aFG" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Port Solar Access"; req_access = list(10)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) +"aFG" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Port Solar Access"; req_access = list(11)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aFH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/substation/civilian_west) "aFI" = (/obj/structure/table,/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/civilian_west{c_tag = "Tool Storage - Primary"},/turf/simulated/floor,/area/storage/primary) "aFJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/storage/primary) @@ -1748,7 +1748,7 @@ "aHF" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aHG" = (/obj/machinery/light/small{dir = 8},/obj/machinery/recharge_station,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aHH" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aHI" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A."; req_one_access = list(1,5,11,18,24)},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) +"aHI" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A."; req_one_access = list(18)},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aHJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/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/machinery/camera/network/civilian_east{c_tag = "Dormitories South"; dir = 4},/turf/simulated/floor{icon_state = "neutral"; dir = 8},/area/crew_quarters/sleep) "aHK" = (/obj/structure/disposalpipe/segment{dir = 4},/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"},/turf/simulated/floor/plating,/area/maintenance/bar) "aHL" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/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/plating,/area/maintenance/bar) @@ -1912,7 +1912,7 @@ "aKN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/hallway/primary/central_one) "aKO" = (/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/hallway/primary/central_one) "aKP" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/window/brigdoor{dir = 1; name = "Security Checkpoint"; req_access = list(63)},/turf/simulated/floor{icon_state = "delivery"},/area/hallway/secondary/entry/starboard) -"aKQ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A. Cycler Access"; req_one_access = list(1,5,11,18,24)},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) +"aKQ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A. Cycler Access"; req_one_access = list(18)},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aKR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/primary/central_one) "aKS" = (/obj/machinery/vending/cola,/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_two) "aKT" = (/obj/structure/disposalpipe/segment,/obj/machinery/button/crematorium{pixel_x = 25},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) @@ -2028,7 +2028,7 @@ "aMZ" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aNa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "aNb" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) -"aNc" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/table/reinforced,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/door/window/eastright,/turf/simulated/floor,/area/security/lobby) +"aNc" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A."; req_one_access = list(18)},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_one) "aNd" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aNe" = (/obj/structure/table,/obj/machinery/light/small,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) "aNf" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/chapel/main) @@ -2067,7 +2067,7 @@ "aNM" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hallway/primary/central_one) "aNN" = (/obj/machinery/light{dir = 1},/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/hallway/primary/central_one) "aNO" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/hallway/primary/central_one) -"aNP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A."; req_one_access = list(1,11,18,24)},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_one) +"aNP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A."; req_one_access = list(18)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_one) "aNQ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/hallway/primary/central_one) "aNR" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/hallway/primary/central_one) "aNS" = (/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/hallway/primary/central_one) @@ -2075,7 +2075,7 @@ "aNU" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/turf/simulated/floor{dir = 1; icon_state = "bluecorner"},/area/hallway/primary/central_one) "aNV" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "L1"},/area/hallway/primary/central_one) "aNW" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{icon_state = "L3"},/area/hallway/primary/central_one) -"aNX" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "E.V.A."; req_one_access = list(1,11,18,24)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_one) +"aNX" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/port) "aNY" = (/turf/simulated/floor{icon_state = "L7"},/area/hallway/primary/central_one) "aNZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "L9"},/area/hallway/primary/central_one) "aOa" = (/turf/simulated/floor{icon_state = "L11"},/area/hallway/primary/central_one) @@ -2467,7 +2467,7 @@ "aVw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/hallway/secondary/entry/starboard) "aVx" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -30},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/hallway/secondary/entry/starboard) "aVy" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/firealarm{dir = 2; pixel_y = -24},/turf/simulated/floor,/area/hallway/secondary/entry/starboard) -"aVz" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 25; req_one_access = list(13)},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/port) +"aVz" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port) "aVA" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/locker) "aVB" = (/obj/structure/closet/wardrobe/mixed,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/turf/simulated/floor,/area/crew_quarters/locker) "aVC" = (/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor,/area/crew_quarters/locker) @@ -2663,7 +2663,7 @@ "aZk" = (/obj/structure/bed/chair/office/light{dir = 8},/turf/simulated/floor,/area/security/vacantoffice) "aZl" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/hallway/primary/central_two) "aZm" = (/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/hallway/primary/central_two) -"aZn" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/hallway/secondary/exit) +"aZn" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/hallway/secondary/exit) "aZo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZp" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2; pixel_y = 4},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 6},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) @@ -2730,7 +2730,7 @@ "baz" = (/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/civilian_west) "baA" = (/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/medical) "baB" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_north_inner"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_north_mech"; pixel_y = -19},/turf/simulated/floor/plating,/area/hallway/secondary/exit) -"baC" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_north_outer"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_north_mech"; pixel_y = -19},/turf/simulated/floor/plating,/area/hallway/secondary/exit) +"baC" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_north_outer"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_north_mech"; pixel_y = -19},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "exterior access button"; pixel_x = 4; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/exit) "baD" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/storage/tools) "baE" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor,/area/storage/tools) "baF" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/machinery/light,/obj/random/tech_supply,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor,/area/storage/tools) @@ -2741,7 +2741,7 @@ "baK" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/hallway/primary/central_one) "baL" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/hallway/primary/central_one) "baM" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/hallway/primary/central_one) -"baN" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = 32; req_one_access = list(13)},/turf/space,/area/space) +"baN" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "baO" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/chapel/main) "baP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/button/remote/blast_door{id = "office_shutter"; name = "Office Shutters"; pixel_x = -8; pixel_y = 22},/obj/machinery/light_switch{pixel_x = -8; pixel_y = 32},/turf/simulated/floor,/area/security/vacantoffice) "baQ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/bridge) @@ -2834,7 +2834,7 @@ "bcz" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/bridge) "bcA" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/bridge) "bcB" = (/obj/item/device/radio/intercom{pixel_x = -25},/obj/machinery/camera/network/exodus{c_tag = "Departures West"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/secondary/exit) -"bcC" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "exterior access button"; pixel_x = 5; pixel_y = 25; req_one_access = list(13)},/turf/space,/area/space) +"bcC" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor,/area/hallway/secondary/entry/aft) "bcD" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/bridge) "bcE" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bcF" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "centcom_shuttle_dock_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13); tag_airpump = "centcom_shuttle_dock_pump"; tag_chamber_sensor = "centcom_shuttle_dock_sensor"; tag_exterior_door = "centcom_shuttle_dock_outer"; tag_interior_door = "centcom_shuttle_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "centcom_shuttle_dock_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "centcom_shuttle_dock_pump"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) @@ -2847,11 +2847,11 @@ "bcM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bcN" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bcO" = (/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/bar) -"bcP" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) +"bcP" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_south_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor,/area/hallway/secondary/exit) "bcQ" = (/obj/machinery/light_switch{pixel_x = 16; pixel_y = -23},/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bcR" = (/obj/machinery/light,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bcS" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"bcT" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -30; pixel_y = 25; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor,/area/hallway/secondary/entry/aft) +"bcT" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_south_outer"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_south_mech"; pixel_y = 19},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "escape_dock_south_airlock"; name = "exterior access button"; pixel_x = 4; pixel_y = 26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/exit) "bcU" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bcV" = (/obj/item/weapon/stool,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/quartermaster/office) "bcW" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "green"},/area/hydroponics/garden) @@ -2986,9 +2986,9 @@ "bfv" = (/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "bfw" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/donut,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 2; id = "kitchen"; layer = 3.3; name = "Kitchen Shutters"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/hallway/primary/starboard) "bfx" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light/small,/obj/machinery/camera/network/civilian_east{c_tag = "Library South"; dir = 1},/turf/simulated/floor/wood,/area/library) -"bfy" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "escape_dock_south_airlock"; name = "exterior access button"; pixel_x = 5; pixel_y = -25; req_one_access = list(13)},/turf/space,/area/space) +"bfy" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "specops_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "bfz" = (/obj/machinery/power/terminal{dir = 8},/obj/structure/cable/green,/turf/simulated/floor/bluegrid,/area/turret_protected/ai) -"bfA" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = 25; req_one_access = list(13)},/turf/space,/area/space) +"bfA" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "specops_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor,/area/hallway/secondary/entry/aft) "bfB" = (/obj/structure/bed/chair/comfy/black{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "bfC" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain) "bfD" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/captain) @@ -3113,7 +3113,7 @@ "bhS" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/porta_turret{dir = 8},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "bhT" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donut,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/crew_quarters/captain) "bhU" = (/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Starboard - East"},/turf/simulated/floor,/area/hallway/primary/starboard) -"bhV" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_south_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = -25; req_one_access = list(13)},/turf/simulated/floor,/area/hallway/secondary/exit) +"bhV" = (/obj/machinery/button/remote/blast_door{dir = 2; id = "Skynet_launch"; name = "Mech Bay Door Control"; pixel_x = 6; pixel_y = 24; req_access = list(29)},/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/assembly/chargebay) "bhW" = (/obj/machinery/light/small{dir = 1},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "escape_dock_south_airlock"; master_tag = "escape_dock"; pixel_y = -30; req_one_access = list(13); tag_airlock_mech_sensor = "escape_dock_south_mech"; tag_airpump = "escape_dock_south_pump"; tag_chamber_sensor = "escape_dock_south_sensor"; tag_exterior_door = "escape_dock_south_outer"; tag_interior_door = "escape_dock_south_inner"; tag_shuttle_mech_sensor = "shuttle_dock_south_mech"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1380; id_tag = "escape_dock_south_pump"},/turf/simulated/floor/plating,/area/hallway/secondary/exit) "bhX" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_south_inner"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_south_mech"; pixel_y = 19},/turf/simulated/floor/plating,/area/hallway/secondary/exit) "bhY" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/locker) @@ -3121,7 +3121,7 @@ "bia" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bib" = (/obj/machinery/portable_atmospherics/powered/scrubber,/obj/machinery/light,/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/locker) "bic" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/crew_quarters/locker) -"bid" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_south_outer"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_south_mech"; pixel_y = 19},/turf/simulated/floor/plating,/area/hallway/secondary/exit) +"bid" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -8; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry/aft) "bie" = (/obj/item/weapon/cigbutt,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/locker) "bif" = (/obj/structure/disposalpipe/sortjunction/wildcard,/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"},/turf/simulated/floor/plating,/area/maintenance/locker) "big" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) @@ -3301,8 +3301,8 @@ "bly" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/bridge/meeting_room) "blz" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "blA" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) -"blB" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) -"blC" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "specops_dock_airlock"; name = "interior access button"; pixel_x = -30; pixel_y = 25; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor,/area/hallway/secondary/entry/aft) +"blB" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -28; pixel_y = -6; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) +"blC" = (/obj/machinery/smartfridge/secure/medbay{req_one_access = list(33,66)},/turf/simulated/wall,/area/medical/chemistry) "blD" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "blE" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "blF" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = -30; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/device/megaphone,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/captain) @@ -3500,7 +3500,7 @@ "bpp" = (/turf/simulated/wall,/area/assembly/robotics) "bpq" = (/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bpr" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access = list(7)},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/hallway/primary/starboard) -"bps" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "specops_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = 25; req_one_access = list(13)},/turf/space,/area/space) +"bps" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Examination Room"; req_access = list(66)},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bpt" = (/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/assembly/robotics) "bpu" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bpv" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Roboticist"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/assembly/robotics) @@ -3553,7 +3553,7 @@ "bqq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/extinguisher,/obj/item/weapon/extinguisher,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bqr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/substation/command) "bqs" = (/obj/machinery/door/window/westright{name = "Janitoral Delivery"},/turf/simulated/floor{icon_state = "delivery"},/area/janitor) -"bqt" = (/obj/machinery/button/remote/blast_door{dir = 2; id = "Skynet_launch"; name = "Mech Bay Door Control"; pixel_x = 6; pixel_y = 24},/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/assembly/chargebay) +"bqt" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medbay Reception"; req_access = list(66)},/turf/simulated/floor{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/medbay3) "bqu" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating/airless,/area/rnd/xenobiology) "bqv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating,/area/maintenance/substation/command) "bqw" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet,/area/crew_quarters/captain) @@ -3662,7 +3662,7 @@ "bsv" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "admin_shuttle_dock_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13); tag_airpump = "admin_shuttle_dock_pump"; tag_chamber_sensor = "admin_shuttle_dock_sensor"; tag_exterior_door = "admin_shuttle_dock_outer"; tag_interior_door = "admin_shuttle_dock_inner"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1; icon_state = "map"; tag = "icon-manifold-f (NORTH)"},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/entry/aft) "bsw" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/reception) "bsx" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/cups{pixel_x = 2; pixel_y = 5},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/reception) -"bsy" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -8; pixel_y = 25; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry/aft) +"bsy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_one_access = list(29)},/turf/simulated/floor,/area/assembly/chargebay) "bsz" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/machinery/computer/med_data/laptop,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "bsA" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "bsB" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) @@ -3844,7 +3844,7 @@ "bvV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/chemistry) "bvW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/medical/chemistry) "bvX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/medical/chemistry) -"bvY" = (/obj/machinery/smartfridge/secure/medbay,/turf/simulated/wall,/area/medical/chemistry) +"bvY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medicine Storage"; req_access = newlist(); req_one_access = list(33,66)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bvZ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Central - East Southwest"; dir = 8},/turf/simulated/floor,/area/hallway/primary/central_two) "bwa" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "scanhideside"; name = "Diagnostics Room Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay4) "bwb" = (/obj/structure/table,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/item/weapon/reagent_containers/glass/bottle/stoxin{pixel_x = -6; pixel_y = 10},/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/medical,/turf/simulated/floor{dir = 8; icon_state = "whiteyellow"},/area/medical/chemistry) @@ -3897,7 +3897,7 @@ "bwW" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 1; sortType = "Cargo Bay"; name = "Cargo Bay"},/turf/simulated/floor,/area/quartermaster/office) "bwX" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/office) "bwY" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire{pixel_x = 5; pixel_y = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/random/firstaid,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) -"bwZ" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = 30; pixel_y = -5; req_one_access = list(13)},/turf/space,/area/space) +"bwZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(66)},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bxa" = (/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/office) "bxb" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 5; pixel_y = 5},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/random/firstaid,/turf/simulated/floor{dir = 8; icon_state = "whiteyellowcorner"},/area/medical/chemistry) "bxc" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_three) @@ -3990,7 +3990,7 @@ "byL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) "byM" = (/obj/machinery/door/window/eastright{name = "Medical Reception"; req_access = list(5)},/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/medical/reception) "byN" = (/turf/simulated/wall/r_wall,/area/teleporter) -"byO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Examination Room"; req_access = list(5)},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) +"byO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(66)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "byP" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/central_two) "byQ" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access = list(6,5)},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/medical/medbay2) "byR" = (/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) @@ -4074,7 +4074,7 @@ "bAr" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/hallway/primary/central_two) "bAs" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 5; pixel_y = 5},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/random/firstaid,/turf/simulated/floor{dir = 8; icon_state = "whiteyellowcorner"},/area/medical/chemistry) "bAt" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/multi_tile/glass{id_tag = "MedbayFoyerPort"; req_access = list(5)},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/medical/medbay) -"bAu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medbay Reception"; req_access = list(5)},/turf/simulated/floor{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/medbay3) +"bAu" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{name = "Medbay Substation"; req_access = list(5); req_one_access = newlist()},/turf/simulated/floor/plating,/area/maintenance/substation/medical) "bAv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bAw" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bAx" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/multi_tile/glass{id_tag = "MedbayFoyerStar"; req_access = list(5)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/medical/medbay2) @@ -4125,7 +4125,7 @@ "bBq" = (/obj/machinery/button/remote/airlock{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyerStar"; name = "Medbay Doors Control"; pixel_x = 24; pixel_y = 26},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "bBr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{icon_state = "white"},/area/rnd/docking) "bBs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Medbay Substation"; req_one_access = list(11,24,5)},/turf/simulated/floor/plating,/area/maintenance/substation/medical) -"bBt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock{name = "Starboard Emergency Storage"; req_access = list(29)},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/assembly/chargebay) +"bBt" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(66)},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bBu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora_storage) "bBv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/rnd/docking) "bBw" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_research{name = "Research and Development"; req_access = list(7)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/rnd/research) @@ -4160,8 +4160,8 @@ "bBZ" = (/obj/item/device/radio/beacon,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/teleporter) "bCa" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/teleporter) "bCb" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/teleporter) -"bCc" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medicine Storage"; req_access = list(5)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) -"bCd" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(5)},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) +"bCc" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medicine Storage"; req_access = newlist(); req_one_access = list(33,66)},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) +"bCd" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(66)},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay3) "bCe" = (/turf/simulated/floor{dir = 2; icon_state = "whiteyellow"},/area/medical/chemistry) "bCf" = (/obj/structure/closet/wardrobe/chemistry_white,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor{dir = 2; icon_state = "whiteyellowcorner"},/area/medical/chemistry) "bCg" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) @@ -4171,8 +4171,8 @@ "bCk" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 28},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/medbay3) "bCl" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay2) "bCm" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) -"bCn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(5)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) -"bCo" = (/obj/machinery/door/airlock{name = "Medbay Substation"; req_access = list(5)},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/substation/medical) +"bCn" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/airlock/mining{id_tag = "cargodoor"; name = "Mining Dock"; req_access = list(50)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/miningdock) +"bCo" = (/obj/machinery/door/airlock/highsecurity{name = "Messaging Server"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_three) "bCp" = (/turf/simulated/wall,/area/medical/genetics) "bCq" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/misc_lab) "bCr" = (/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access = list(47)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/docking) @@ -4244,7 +4244,7 @@ "bDF" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bDG" = (/obj/machinery/atmospherics/unary/cryo_cell,/turf/simulated/floor{dir = 9; icon_state = "whitered"},/area/medical/cryo) "bDH" = (/obj/machinery/atmospherics/unary/cryo_cell,/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/medical/cryo) -"bDI" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(5)},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) +"bDI" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(66)},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/cryo) "bDJ" = (/turf/simulated/wall,/area/medical/cryo) "bDK" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Genetics Laboratory"; req_access = list(9)},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bDL" = (/turf/simulated/floor{icon_state = "white"},/area/medical/genetics_cloning) @@ -4313,7 +4313,7 @@ "bEW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_cyborg_station) "bEX" = (/obj/effect/landmark/start{name = "Cyborg"},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{icon_state = "vault"; dir = 1},/area/turret_protected/ai_cyborg_station) "bEY" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{dir = 1; name = "Emergency Kit"; req_access = list(5)},/obj/machinery/door/firedoor,/obj/item/weapon/storage/toolbox/emergency,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag,/obj/item/device/radio{frequency = 1487; name = "Medbay Emergency Radio Link"},/turf/simulated/floor{dir = 1; icon_state = "whiteyellow"},/area/medical/sleeper) -"bEZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medicine Storage"; req_access = list(5)},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) +"bEZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(5,12,47)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port) "bFa" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/machinery/camera/network/medbay{c_tag = "Medbay Equipment Storage"; dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/medbay3) "bFb" = (/obj/structure/table,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/machinery/camera/network/medbay{c_tag = "Medbay Cryogenics"},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/cryo) "bFc" = (/obj/machinery/recharge_station,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_cyborg_station) @@ -4458,7 +4458,7 @@ "bHL" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_three) "bHM" = (/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "medbayquar"; name = "Medbay Emergency Quarantine Shutters"; opacity = 0},/obj/machinery/door/firedoor,/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/medical/sleeper) "bHN" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/camera/network/medbay{c_tag = "Medbay Emergency Entrance"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) -"bHO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(5)},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay3) +"bHO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(7,12)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_shuttle) "bHP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/research{name = "Genetics Research"; req_access = list(9)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/genetics) "bHQ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access = list(47)},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bHR" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/rnd/research) @@ -4491,7 +4491,7 @@ "bIs" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/medical/genetics) "bIt" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) "bIu" = (/obj/item/weapon/table_parts,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) -"bIv" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/airlock/mining{id_tag = "cargodoor"; name = "Mining Dock"; req_access = list(48)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/miningdock) +"bIv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass_research{name = "Toxins Lab"; req_access = list(7)},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bIw" = (/turf/simulated/wall/r_wall,/area/maintenance/research_port) "bIx" = (/turf/simulated/wall/r_wall,/area/server) "bIy" = (/obj/machinery/r_n_d/server/robotics,/turf/simulated/floor/bluegrid{name = "Server Base"; nitrogen = 500; oxygen = 0; temperature = 80},/area/server) @@ -4499,7 +4499,7 @@ "bIA" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Central - Southwest"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/hallway/primary/central_three) "bIB" = (/obj/machinery/door/airlock/command{id_tag = "hopdoor"; name = "Head of Personnel"; req_access = list(57)},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/crew_quarters/heads/hop) "bIC" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "dark"},/area/server) -"bID" = (/obj/machinery/door/airlock/highsecurity{name = "Messaging Server"; req_access = list(30)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_three) +"bID" = (/obj/machinery/door/airlock/glass_research{name = "Toxins Lab"; req_access = list(7)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bIE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "staffroom"; name = "Staff Room Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay2) "bIF" = (/turf/simulated/wall/r_wall,/area/rnd/storage) "bIG" = (/obj/machinery/computer/area_atmos,/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor{icon_state = "bot"},/area/rnd/storage) @@ -4539,7 +4539,7 @@ "bJo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor,/area/hallway/primary/central_three) "bJp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor,/area/hallway/primary/central_three) "bJq" = (/obj/machinery/door/airlock/multi_tile/glass{autoclose = 1; dir = 2; req_access = list(5)},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/medical/sleeper) -"bJr" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(5)},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/cryo) +"bJr" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Toxins Launch Room Access"; req_access = list(7)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) "bJs" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_two) "bJt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_two) "bJu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor,/area/hallway/primary/central_two) @@ -4693,7 +4693,7 @@ "bMm" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/hallway/primary/central_three) "bMn" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_three) "bMo" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/junction,/turf/simulated/floor,/area/hallway/primary/central_three) -"bMp" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(9,12,47)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port) +"bMp" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access = list(7)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/rnd/mixing) "bMq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/server) "bMr" = (/obj/machinery/vending/cigarette,/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_two) "bMs" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/mining/station) @@ -4962,7 +4962,7 @@ "bRv" = (/obj/machinery/atmospherics/omni/filter{tag_east = 1; tag_south = 6; tag_west = 2; use_power = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/rnd/mixing) "bRw" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) "bRx" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/omni/mixer{tag_east = 1; tag_east_con = 0.5; tag_south = 1; tag_south_con = 0.5; tag_west = 2; use_power = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/rnd/mixing) -"bRy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(8,12)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_shuttle) +"bRy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(7,12)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "bRz" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_dock_outer"; locked = 1; name = "Mining Dock Airlock"; req_access = list(13)},/turf/simulated/floor/plating,/area/quartermaster/miningdock) "bRA" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/mining/station) "bRB" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "mining_dock_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 25; req_one_access = list(13,48)},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock) @@ -5020,7 +5020,7 @@ "bSB" = (/obj/machinery/light,/obj/machinery/vending/snack,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bSC" = (/obj/machinery/atmospherics/binary/passive_gate{dir = 8},/turf/simulated/floor{dir = 4; icon_state = "warnwhite"},/area/rnd/mixing) "bSD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/patient_a) -"bSE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass_research{name = "Toxins Lab"; req_access = list(8)},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "white"},/area/rnd/research) +"bSE" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "hazard door east"},/obj/machinery/door/airlock/research{name = "Miscellaneous Reseach Room"; req_access = list(7)},/turf/simulated/floor{icon_state = "white"},/area/rnd/misc_lab) "bSF" = (/obj/machinery/light/small{dir = 4},/obj/machinery/requests_console{department = "Tech storage"; pixel_x = 28; pixel_y = 0},/turf/simulated/floor/plating,/area/storage/tech) "bSG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/patient_b) "bSH" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/hallway/primary/aft) @@ -5110,7 +5110,7 @@ "bUn" = (/turf/simulated/wall,/area/maintenance/research_starboard) "bUo" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Chief Medical Officer"},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for shutters."; id = "cmooffice"; name = "CMO Privacy Shutters"; pixel_x = 38; pixel_y = 21},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the CMO's office."; id = "cmodoor"; name = "CMO Office Door Control"; pixel_x = 28; pixel_y = 21},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for shutters."; id = "virologyquar"; name = "Virology Emergency Lockdown Control"; pixel_x = -15; pixel_y = 38; req_access = list(5)},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for shutters."; id = "medbayquar"; name = "Medbay Emergency Lockdown Control"; pixel_x = -15; pixel_y = 30; req_access = list(5)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bUp" = (/obj/structure/disposaloutlet,/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating/airless,/area/rnd/mixing) -"bUq" = (/obj/machinery/door/airlock/glass_research{name = "Toxins Lab"; req_access = list(8)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "white"},/area/rnd/research) +"bUq" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; glass = 1; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access = list(7)},/turf/simulated/floor/engine,/area/rnd/mixing) "bUr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/rnd/mixing) "bUs" = (/turf/simulated/floor/airless{icon_state = "warning"},/area/rnd/test_area) "bUt" = (/turf/simulated/floor/airless{dir = 6; icon_state = "warning"},/area/rnd/test_area) @@ -5170,8 +5170,8 @@ "bVv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) "bVw" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bVx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/rnd/research) -"bVy" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Toxins Launch Room Access"; req_access = list(8)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) -"bVz" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access = list(8)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/rnd/mixing) +"bVy" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; glass = 1; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access = list(7)},/turf/simulated/floor/engine,/area/rnd/mixing) +"bVz" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "hazard door east"},/obj/machinery/door/airlock/research{name = "Miscellaneous Reseach Room"; req_access = list(7)},/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{icon_state = "white"},/area/rnd/misc_lab) "bVA" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "bot"},/area/rnd/research) "bVB" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/wall/r_wall,/area/rnd/mixing) "bVC" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/engineering_guide{pixel_x = 3; pixel_y = 2},/obj/item/weapon/book/manual/atmospipes,/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet,/area/engineering/break_room) @@ -5353,7 +5353,7 @@ "bYW" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/crew_quarters/sleep/engi_wash) "bYX" = (/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whiteyellowfull"},/area/crew_quarters/sleep/engi_wash) "bYY" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/research{c_tag = "Research - Toxins Lab"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/visible{icon_state = "intact"; dir = 6},/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) -"bYZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(8,12)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/research_starboard) +"bYZ" = (/obj/machinery/door/airlock/engineering{name = "Engineering Supplies"; req_one_access = list(11,24)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/engineering/break_room) "bZa" = (/obj/structure/grille,/obj/structure/window/reinforced/polarized{id = "isoC_window_tint"},/obj/structure/window/reinforced/polarized{dir = 4; id = "isoC_window_tint"},/obj/structure/window/reinforced/polarized{dir = 1; id = "isoC_window_tint"},/obj/structure/window/reinforced/polarized{dir = 8; id = "isoC_window_tint"},/turf/simulated/floor/plating,/area/medical/patient_c) "bZb" = (/obj/machinery/door/window/southright{name = "Toxins Launcher"; req_access = list(8)},/obj/machinery/door/window/southright{dir = 1; name = "Toxins Launcher"; req_access = list(8)},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/rnd/mixing) "bZc" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -5419,7 +5419,7 @@ "cak" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/chips,/turf/simulated/floor/carpet,/area/engineering/break_room) "cal" = (/obj/machinery/newscaster{pixel_x = 28; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/engineering/break_room) "cam" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/iv_drip,/turf/simulated/floor,/area/medical/sleeper) -"can" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "hazard door east"},/obj/machinery/door/airlock/research{name = "Miscellaneous Reseach Room"; req_access = list(47)},/turf/simulated/floor{icon_state = "white"},/area/rnd/misc_lab) +"can" = (/obj/machinery/door/airlock/maintenance{name = "Miscellaneous Reseach Maintenance"; req_access = list(7)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/substation/research) "cao" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/structure/bed/chair/comfy/teal{tag = "icon-comfychair (EAST)"; icon_state = "comfychair"; dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whitered"},/area/medical/ward) "cap" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/bed/roller,/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) "caq" = (/turf/simulated/wall,/area/crew_quarters/sleep/engi_wash) @@ -5441,7 +5441,7 @@ "caG" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/medical/psych) "caH" = (/obj/structure/table/woodentable,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/wood,/area/medical/psych) "caI" = (/turf/simulated/wall,/area/medical/psych) -"caJ" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; glass = 1; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access = list(8)},/turf/simulated/floor/engine,/area/rnd/mixing) +"caJ" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Break Room"; req_one_access = list(10)},/turf/simulated/floor,/area/engineering/break_room) "caK" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "caL" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = 22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "caM" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whitered"},/area/medical/patient_c) @@ -5461,14 +5461,14 @@ "cba" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cbb" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating/airless,/area/maintenance/atmos_control) "cbc" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/research_starboard) -"cbd" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; glass = 1; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access = list(8)},/turf/simulated/floor/engine,/area/rnd/mixing) +"cbd" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Break Room"; req_one_access = list(10)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/break_room) "cbe" = (/obj/item/weapon/wrench,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cbf" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod{frequency = 1380; id_tag = "escape_pod_5"; pixel_x = 0; pixel_y = -25; tag_door = "escape_pod_5_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod5/station) "cbg" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_hatch"; locked = 1; name = "Escape Pod Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod5/station) "cbh" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/machinery/atmospherics/valve,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cbi" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_berth_hatch"; locked = 1; name = "Escape Pod"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/cargo) "cbj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/camera/network/medbay{c_tag = "Medbay Patient Hallway - Starboard"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) -"cbk" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "hazard door east"},/obj/machinery/door/airlock/research{name = "Miscellaneous Reseach Room"; req_access = list(47)},/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{icon_state = "white"},/area/rnd/misc_lab) +"cbk" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/engineering{name = "Engineering Washroom"; req_one_access = list(10)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/break_room) "cbl" = (/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "eng_eva_sensor"; pixel_x = 0; pixel_y = 25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "eng_eva_pump"},/turf/simulated/floor{dir = 9; icon_state = "floorgrimecaution"},/area/maintenance/atmos_control) "cbm" = (/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},/obj/machinery/camera/network/research{c_tag = "Research Division South"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "cbn" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 5},/turf/simulated/floor/engine/vacuum,/area/rnd/mixing) @@ -5500,7 +5500,7 @@ "cbN" = (/turf/simulated/floor{icon_state = "white"},/area/medical/ward) "cbO" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) "cbP" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/medical/psych) -"cbQ" = (/obj/machinery/door/airlock/engineering{name = "Engineering Supplies"; req_one_access = list(10,24,5)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/engineering/break_room) +"cbQ" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxin_test_inner"; locked = 1; name = "Engineering External Access"; req_access = newlist(); req_one_access = list(7,13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cbR" = (/obj/structure/bed/roller,/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) "cbS" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "cbT" = (/obj/structure/closet/crate{icon_state = "crateopen"; name = "Grenade Crate"; opened = 1},/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) @@ -5577,7 +5577,7 @@ "cdm" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{autoclose = 0; name = "Diagnostics Room"; req_access = list(5)},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/medbay4) "cdn" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor{icon_state = "white_halfo"},/area/medical/medbay4) "cdo" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/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{icon_state = "white_halfp"},/area/medical/medbay4) -"cdp" = (/obj/machinery/door/airlock/maintenance{name = "Miscellaneous Reseach Maintenance"; req_access = list(47)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/substation/research) +"cdp" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "toxin_test_airlock"; name = "interior access button"; pixel_x = 20; pixel_y = 20; req_access = newlist(); req_one_access = list(7,13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/research_starboard) "cdq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/ward) "cdr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/ward) "cds" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/medical/ward) @@ -5594,7 +5594,7 @@ "cdD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_port) "cdE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/medical/virologyaccess) "cdF" = (/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/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/engineering/break_room) -"cdG" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/medical/virologyaccess) +"cdG" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "toxin_test_airlock"; name = "exterior access button"; pixel_x = -20; pixel_y = -20; req_access = newlist(); req_one_access = list(7,13)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating/airless,/area/space) "cdH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/medical/virologyaccess) "cdI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_port) "cdJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_port) @@ -5635,7 +5635,7 @@ "ces" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/atmos_control) "cet" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/atmos_control) "ceu" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 4},/obj/structure/window/reinforced/polarized{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) -"cev" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Break Room"; req_one_access = list(10,24,5)},/turf/simulated/floor,/area/engineering/break_room) +"cev" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxin_test_outer"; locked = 1; name = "Engineering External Access"; req_access = newlist(); req_one_access = list(7,13)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cew" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{dir = 8; icon_state = "yellowcorner"},/area/engineering/foyer) "cex" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera/network/engineering{c_tag = "Engineering Break Room"; dir = 8},/turf/simulated/floor/carpet,/area/engineering/break_room) "cey" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{dir = 2; icon_state = "yellowcorner"},/area/engineering/foyer) @@ -5745,8 +5745,8 @@ "cgy" = (/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora_storage) "cgz" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage) "cgA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/rnd/xenobiology) -"cgB" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Break Room"; req_one_access = list(10,24,5)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/break_room) -"cgC" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/engineering{name = "Engineering Washroom"; req_one_access = list(10,24,5)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/break_room) +"cgB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Science Substation"; req_one_access = list(11,24,7)},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/substation/research) +"cgC" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access = list(11)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cgD" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "cgE" = (/obj/structure/grille,/turf/simulated/wall/r_wall,/area/engineering/atmos) "cgF" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/atmos_control) @@ -5768,12 +5768,12 @@ "cgV" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/table,/obj/item/clothing/gloves/black,/obj/item/device/multitool{pixel_x = 5},/obj/random/tech_supply,/turf/simulated/floor,/area/construction) "cgW" = (/obj/machinery/door/airlock/glass_medical{name = "Patient Ward"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay4) "cgX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora) -"cgY" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxin_test_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/research_starboard) -"cgZ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "toxin_test_airlock"; name = "interior access button"; pixel_x = 20; pixel_y = 20; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/research_starboard) +"cgY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Virology Access"; req_access = list(5)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/medical/virologyaccess) +"cgZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_access = newlist(); req_one_access = list(12,5)},/obj/structure/disposalpipe/segment,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/medical/virologyaccess) "cha" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "toxin_test_pump"; tag_exterior_door = "toxin_test_outer"; frequency = 1379; id_tag = "toxin_test_airlock"; tag_interior_door = "toxin_test_inner"; pixel_x = 0; pixel_y = 25; req_access = list(13); tag_chamber_sensor = "toxin_test_sensor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/research_starboard) -"chb" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "toxin_test_airlock"; name = "exterior access button"; pixel_x = -20; pixel_y = -20; req_access = list(13)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating/airless,/area/space) +"chb" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(12,5)},/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/medical/virologyaccess) "chc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/foyer) -"chd" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxin_test_outer"; locked = 1; name = "Engineering External Access"; req_access = list(10,13)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/research_starboard) +"chd" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/starboardsolar) "che" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "yellowcorner"},/area/engineering/foyer) "chf" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 9; icon_state = "intact"; tag = "icon-intact-f (NORTHWEST)"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/foyer) "chg" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/engineering/foyer) @@ -5820,7 +5820,7 @@ "chV" = (/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/table/reinforced{icon_state = "table"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/engineering/engine_eva) "chW" = (/turf/simulated/wall/r_wall,/area/engineering/engine_eva) "chX" = (/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/engineering/engine_eva) -"chY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Science Substation"; req_one_access = list(11,24,47)},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/substation/research) +"chY" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_xeno_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "chZ" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cia" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cib" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Engineering Substation Bypass"},/turf/simulated/floor/plating,/area/maintenance/substation/engineering) @@ -5941,7 +5941,7 @@ "ckm" = (/obj/structure/table,/obj/item/weapon/FixOVein,/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 30},/obj/item/weapon/surgicaldrill,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery2) "ckn" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/closet/crate/hydroponics/prespawned,/obj/machinery/camera/network/research{c_tag = "Xenoflora Storage"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage) "cko" = (/obj/item/weapon/stool,/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) -"ckp" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance,/obj/structure/disposalpipe/segment,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/medical/virologyaccess) +"ckp" = (/obj/machinery/door/window/eastright{name = "Engineering Reception Desk"; req_one_access = list(11,24)},/obj/machinery/light,/turf/simulated/floor,/area/engineering/foyer) "ckq" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor,/area/medical/virologyaccess) "ckr" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 2; external_pressure_bound = 0; external_pressure_bound_default = 0; frequency = 1443; icon_state = "map_vent_in"; id_tag = "air_out"; internal_pressure_bound = 2000; internal_pressure_bound_default = 2000; use_power = 1; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/engineering/atmos) "cks" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 2; frequency = 1443; icon_state = "map_injector"; id = "air_in"; use_power = 1},/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/engineering/atmos) @@ -5954,7 +5954,7 @@ "ckz" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 2; frequency = 1441; icon_state = "map_injector"; id = "o2_in"; use_power = 1},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/engineering/atmos) "ckA" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; external_pressure_bound = 0; external_pressure_bound_default = 0; frequency = 1441; icon_state = "map_vent_in"; id_tag = "o2_out"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; use_power = 1; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/engineering/atmos) "ckB" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "o2_sensor"},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/engineering/atmos) -"ckC" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access = list(10)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) +"ckC" = (/obj/machinery/door/airlock/maintenance{req_one_access = list(11,24)},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/substation/engineering) "ckD" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 2; frequency = 1441; icon_state = "map_injector"; id = "n2_in"; use_power = 1},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/engineering/atmos) "ckE" = (/obj/structure/sign/biohazard,/turf/simulated/wall/r_wall,/area/rnd/xenobiology) "ckF" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/engineering{name = "Engineering EVA Storage"; req_access = list(12); req_one_access = list(11,24)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/engineering/engine_eva) @@ -6045,7 +6045,7 @@ "cmm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/engineering/atmos) "cmn" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "cmo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) -"cmp" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Virology Access"; req_access = list(39)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/medical/virologyaccess) +"cmp" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/engineering) "cmq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cmr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cms" = (/obj/machinery/door/airlock/research{name = "Xenoflora Storage"; req_access = list(55)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) @@ -6158,7 +6158,7 @@ "cov" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/engineering/atmos) "cow" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/engineering/atmos) "cox" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/plating,/area/engineering/atmos) -"coy" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(10,13)},/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/starboardsolar) +"coy" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10)},/turf/simulated/floor,/area/engineering) "coz" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/hallway/secondary/entry/port) "coA" = (/obj/machinery/door/airlock/maintenance{name = "Engineering EVA Storage Maintainance"; req_access = list(12); req_one_access = list(11,24)},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/red,/turf/simulated/floor,/area/engineering/engine_eva) "coB" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Locker Room"; req_one_access = list(11,24)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/locker_room) @@ -6192,7 +6192,7 @@ "cpd" = (/obj/structure/closet/emcloset,/obj/machinery/camera/xray/research{c_tag = "Xenobiology Access"},/turf/simulated/floor{icon_state = "warnwhite"; dir = 5},/area/rnd/xenobiology) "cpe" = (/obj/machinery/light{dir = 8},/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/structure/closet/wardrobe/medic_white,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/surgeryprep) "cpf" = (/obj/machinery/biogenerator,/obj/machinery/camera/network/research{c_tag = "Xenoflora"; dir = 1},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) -"cpg" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_xeno_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) +"cpg" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10)},/turf/simulated/floor,/area/engineering) "cph" = (/obj/machinery/status_display,/turf/simulated/wall,/area/medical/surgery2) "cpi" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/medbay) "cpj" = (/turf/simulated/wall/r_wall,/area/engineering/storage) @@ -6210,10 +6210,10 @@ "cpv" = (/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/engineering/atmos) "cpw" = (/obj/machinery/atmospherics/valve/digital/open{name = "Mixed Air Inlet Valve"},/turf/simulated/floor{icon_state = "arrival"; dir = 5},/area/engineering/atmos) "cpx" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1443; input_tag = "air_in"; name = "Mixed Air Supply Control"; output_tag = "air_out"; pressure_setting = 2000; sensors = list("air_sensor" = "Tank")},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "arrival"},/area/engineering/atmos) -"cpy" = (/obj/machinery/door/window/eastright{name = "Engineering Reception Desk"; req_one_access = list(10,24)},/obj/machinery/light,/turf/simulated/floor,/area/engineering/foyer) +"cpy" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_xeno_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cpz" = (/obj/machinery/atmospherics/valve/digital/open{name = "Oxygen Outlet Valve"},/turf/simulated/floor{dir = 5; icon_state = "blue"},/area/engineering/atmos) "cpA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/engineering{c_tag = "Engineering Locker Room"; dir = 1},/turf/simulated/floor,/area/engineering/locker_room) -"cpB" = (/obj/machinery/door/airlock/maintenance{req_one_access = list(10,24)},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/substation/engineering) +"cpB" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/starboard) "cpC" = (/obj/machinery/button/holosign{pixel_x = 24; pixel_y = 2},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/camera/network/medbay{c_tag = "Medbay Operating Theatre 1"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "whiteredcorner"},/area/medical/surgery) "cpD" = (/obj/machinery/atmospherics/valve/digital/open{name = "Nitrogen Outlet Valve"},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/engineering/atmos) "cpE" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "n2_in"; name = "Nitrogen Supply Control"; output_tag = "n2_out"; sensors = list("n2_sensor" = "Tank")},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/engineering/atmos) @@ -6256,15 +6256,15 @@ "cqp" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery2) "cqq" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery2) "cqr" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Monitoring Room"; req_access = list(11)},/turf/simulated/floor,/area/engineering/engineering_monitoring) -"cqs" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10,24)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/engineering) -"cqt" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10,24)},/turf/simulated/floor,/area/engineering) +"cqs" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(11,24)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) +"cqt" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/engineering) "cqu" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "greencorner"},/area/medical/virologyaccess) "cqv" = (/turf/simulated/wall/r_wall,/area/medical/virology) "cqw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) "cqx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) "cqy" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) "cqz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/plating,/area/engineering/engineering_monitoring) -"cqA" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10,24)},/turf/simulated/floor,/area/engineering) +"cqA" = (/obj/machinery/door/airlock/maintenance{req_access = list(10,12)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/engineering) "cqB" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cqC" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 5},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cqD" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Workshop"; req_one_access = list(11,24)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/engineering/workshop) @@ -6286,7 +6286,7 @@ "cqT" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/security/prison) "cqU" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{tag = "icon-map (EAST)"; icon_state = "map"; dir = 4},/obj/machinery/meter,/turf/simulated/floor,/area/engineering/atmos) "cqV" = (/obj/machinery/atmospherics/binary/pump{dir = 8; name = "Air Tank Bypass Pump"},/turf/simulated/floor,/area/engineering/atmos) -"cqW" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_xeno_outer"; locked = 1; name = "Engineering External Access"; req_access = list(10,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) +"cqW" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/engineering) "cqX" = (/obj/machinery/atmospherics/pipe/simple/visible/green,/turf/simulated/floor,/area/engineering/atmos) "cqY" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/turf/simulated/floor,/area/engineering/atmos) "cqZ" = (/obj/structure/bed/chair{dir = 1},/obj/effect/landmark/start{name = "Atmospheric Technician"},/turf/simulated/floor,/area/engineering/atmos) @@ -6355,7 +6355,7 @@ "csk" = (/obj/structure/table/reinforced,/obj/machinery/light,/obj/item/device/flashlight,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor,/area/engineering/engineering_monitoring) "csl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio2"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/rnd/xenobiology) "csm" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/engineering/engineering_monitoring) -"csn" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access = list(10,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/starboard) +"csn" = (/obj/machinery/door/airlock/maintenance_hatch{icon_state = "door_closed"; locked = 0; name = "Engine Access"; req_one_access = list(11)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/engineering/engine_airlock) "cso" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/engineering) "csp" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/turf/simulated/floor,/area/engineering) "csq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/engineering/workshop) @@ -6517,7 +6517,7 @@ "cvq" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/engineering/atmos) "cvr" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/engineering/atmos) "cvs" = (/obj/machinery/computer/security/engineering,/turf/simulated/floor,/area/engineering/engineering_monitoring) -"cvt" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "Pre-Op Prep Room Maintenance Access"; req_access = list(45)},/turf/simulated/floor/plating,/area/medical/surgeryprep) +"cvt" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "Pre-Op Prep Room Maintenance Access"; req_access = list(5)},/turf/simulated/floor/plating,/area/medical/surgeryprep) "cvu" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/engineering) "cvv" = (/obj/structure/closet/wardrobe/virology_white,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/camera/xray/medbay{c_tag = "Virology Access Aft"},/turf/simulated/floor{icon_state = "warnwhite"; dir = 5},/area/medical/virology) "cvw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/simulated/floor,/area/engineering) @@ -6873,7 +6873,7 @@ "cCi" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "cCj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) "cCk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/status_display,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) -"cCl" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(10,24)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) +"cCl" = (/obj/machinery/door/airlock/maintenance_hatch{frequency = 1379; icon_state = "door_closed"; id_tag = "engine_airlock_exterior"; locked = 0; name = "Engine Airlock Exterior"; req_access = list(11)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/engineering/engine_airlock) "cCm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) "cCn" = (/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "virology_sensor"; pixel_x = 25; pixel_y = 12},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "virology_pump"; tag_exterior_door = "virology_outer"; frequency = 1379; id_tag = "virology_airlock"; tag_interior_door = "virology_inner"; pixel_x = 25; req_access = list(13); tag_chamber_sensor = "virology_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "virology_pump"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/medbay) "cCo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) @@ -6902,7 +6902,7 @@ "cCL" = (/obj/machinery/cryopod/robot/right,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cCM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cCN" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible/red,/turf/simulated/floor,/area/engineering/atmos) -"cCO" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_engineering{name = "Engineering Hallway"; req_one_access = list(10,24)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/engineering) +"cCO" = (/obj/machinery/door/airlock/maintenance_hatch{frequency = 1379; icon_state = "door_closed"; id_tag = "engine_airlock_interior"; locked = 0; name = "Engine Airlock Interior"; req_access = list(11)},/turf/simulated/floor/plating,/area/engineering/engine_room) "cCP" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"},/area/maintenance/engi_shuttle) "cCQ" = (/obj/machinery/embedded_controller/radio/airlock/access_controller{tag_exterior_door = "incinerator_airlock_exterior"; id_tag = "incinerator_access_control"; tag_interior_door = "incinerator_airlock_interior"; name = "Incinerator Access Console"; pixel_x = -6; pixel_y = -26; req_access = list(12)},/obj/machinery/button/ignition{id = "Incinerator"; pixel_x = 6; pixel_y = -24},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor{dir = 2; icon_state = "warningcorner"; tag = "icon-warningcorner (WEST)"},/area/maintenance/incinerator) "cCR" = (/obj/machinery/atmospherics/valve,/turf/simulated/floor/plating,/area/maintenance/engineering) @@ -6993,7 +6993,7 @@ "cEy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Maintenance"; dir = 4},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplatecorner"},/area/engineering/atmos/storage) "cEz" = (/obj/machinery/shower{icon_state = "shower"; dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor,/area/engineering/engine_airlock) "cEA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/engineering/engine_airlock) -"cEB" = (/obj/machinery/door/airlock/maintenance{req_one_access = list(10,24)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/engineering) +"cEB" = (/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine control room blast doors."; id = "EngineEmitterPortWest"; name = "Engine Room Blast Doors"; pixel_x = 0; pixel_y = 25; req_access = list(11)},/obj/machinery/atmospherics/portables_connector{dir = 4},/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_room) "cEC" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/engi_shuttle) "cED" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "cEE" = (/obj/structure/bed,/obj/item/weapon/bedsheet/green,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) @@ -7015,7 +7015,7 @@ "cEU" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "waste_sensor"; output = 63},/turf/simulated/floor/engine{name = "vacuum floor"; nitrogen = 0.01; oxygen = 0.01},/area/engineering/atmos) "cEV" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cEW" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engineering/drone_fabrication) -"cEX" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(10,24)},/turf/simulated/floor/plating,/area/engineering) +"cEX" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_access_hatch"; locked = 1; req_access = list(11)},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plating,/area/engineering/engine_room) "cEY" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cEZ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/lights/mixed,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/engineering/engine_smes) "cFa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/wall/r_wall,/area/engineering/engine_smes) @@ -7241,7 +7241,7 @@ "cJm" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/obj/structure/lattice,/turf/space,/area/space) "cJn" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/machinery/power/smes/buildable{charge = 0; RCon_tag = "Solar - Aft Port"},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cJo" = (/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/engineering/engine_room) -"cJp" = (/obj/machinery/door/airlock/maintenance_hatch{icon_state = "door_closed"; locked = 0; name = "Engine Access"; req_one_access = list(11,24)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/engineering/engine_airlock) +"cJp" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_access_hatch"; locked = 1; req_access = list(11)},/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/simulated/floor/plating,/area/engineering/engine_room) "cJq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{icon_state = "pdoor1"; id = "SupermatterPort"; layer = 3.3; name = "Reactor Blast Door"},/turf/simulated/floor/plating,/area/engineering/engine_room) "cJr" = (/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engineering/engine_room) "cJs" = (/obj/machinery/air_sensor{frequency = 1438; id_tag = "engine_sensor"; output = 63},/turf/simulated/floor/engine/nitrogen{icon_state = "warnplate"; name = "plating"},/area/engineering/engine_room) @@ -7310,7 +7310,7 @@ "cKD" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "engineering_dock_pump"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "engineering_dock_sensor"; pixel_x = -25; pixel_y = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 10},/area/maintenance/engi_shuttle) "cKE" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/electrical,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/camera/network/engineering{c_tag = "Engineering Drone Fabrication"; dir = 8},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cKF" = (/obj/machinery/door/airlock/maintenance_hatch{name = "SMES Access"; req_access = list(11)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/engineering/engine_monitoring) -"cKG" = (/obj/machinery/door/airlock/maintenance_hatch{frequency = 1379; icon_state = "door_closed"; id_tag = "engine_airlock_exterior"; locked = 0; name = "Engine Airlock Exterior"; req_access = list(10)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/engineering/engine_airlock) +"cKG" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "robotics_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cKH" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "engineering_dock_outer"; locked = 1; name = "Engineering Dock Airlock"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "cKI" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "engineering_dock_outer"; locked = 1; name = "Engineering Dock Airlock"; req_access = list(13)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "cKJ" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "engineering_dock_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -8; req_one_access = list(13,11,24)},/turf/space,/area/space) @@ -7338,39 +7338,34 @@ "cLf" = (/turf/simulated/shuttle/wall{icon_state = "swall1"; dir = 2},/area/shuttle/constructionsite/station) "cLg" = (/obj/machinery/door/airlock/maintenance{name = "Drone Fabrication/Engine Waste Handling"; req_one_access = list(10,24)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "cLh" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_electrical_maintenance"; locked = 1; name = "Electrical Maintenance"; req_access = list(10)},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/engineering/engine_room) -"cLi" = (/obj/machinery/door/airlock/maintenance_hatch{frequency = 1379; icon_state = "door_closed"; id_tag = "engine_airlock_interior"; locked = 0; name = "Engine Airlock Interior"; req_access = list(10)},/turf/simulated/floor/plating,/area/engineering/engine_room) +"cLi" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "robotics_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/solar/port) "cLj" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/shuttle/constructionsite/station) "cLk" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/shuttle/constructionsite/station) "cLl" = (/obj/machinery/computer/shuttle_control/engineering,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/station) "cLm" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/station) "cLn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/shuttle/constructionsite/station) "cLo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/camera/network/engine{c_tag = "Engine Waste Handling"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplatecorner"},/area/engineering/engine_waste) -"cLp" = (/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine control room blast doors."; id = "EngineEmitterPortWest"; name = "Engine Room Blast Doors"; pixel_x = 0; pixel_y = 25; req_access = list(10)},/obj/machinery/atmospherics/portables_connector{dir = 4},/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_room) +"cLp" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "robotics_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cLq" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 10},/obj/machinery/alarm/nobreach{dir = 2; pixel_y = 22},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engineering/engine_room) "cLr" = (/obj/machinery/airlock_sensor/airlock_interior{id_tag = "eng_al_int_snsr"; master_tag = "engine_room_airlock"; pixel_y = 22; req_access = list(10)},/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/plating,/area/engineering/engine_room) "cLs" = (/obj/structure/cable,/obj/machinery/power/terminal{dir = 8},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/shuttle/constructionsite/station) "cLt" = (/obj/structure/cable,/obj/machinery/power/smes/buildable/power_shuttle,/turf/simulated/floor/plating,/area/shuttle/constructionsite/station) "cLu" = (/obj/machinery/computer/atmos_alert,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/station) "cLv" = (/turf/simulated/shuttle/wall{tag = "icon-swall2"; icon_state = "swall2"; dir = 2},/area/shuttle/constructionsite/station) -"cLw" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 8; name = "Engine Waste"; req_one_access = list(10,24)},/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_waste) +"cLw" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 8; name = "Engine Waste"; req_access = newlist(); req_one_access = list(11,24)},/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_waste) "cLx" = (/turf/simulated/shuttle/wall{icon_state = "swall_s5"; dir = 2},/area/shuttle/constructionsite/station) "cLy" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/shuttle/constructionsite/station) -"cLz" = (/obj/machinery/door/window/brigdoor{dir = 8; name = "Engine Waste"; req_one_access = list(10,24)},/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 9},/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_waste) -"cLA" = (/obj/machinery/door/window/brigdoor{dir = 8; name = "Engine Waste"; req_one_access = list(10,24)},/obj/structure/window/reinforced,/obj/machinery/atmospherics/binary/pump{dir = 8; name = "waste pump"},/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_waste) +"cLz" = (/obj/machinery/door/window/brigdoor{dir = 8; name = "Engine Waste"; req_access = newlist(); req_one_access = list(11,24)},/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 9},/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_waste) +"cLA" = (/obj/machinery/door/window/brigdoor{dir = 8; name = "Engine Waste"; req_access = newlist(); req_one_access = list(11,24)},/obj/structure/window/reinforced,/obj/machinery/atmospherics/binary/pump{dir = 8; name = "waste pump"},/turf/simulated/floor/plating{icon_state = "platebot"},/area/engineering/engine_waste) "cLB" = (/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine control room blast doors."; id = "EngineBlast"; name = "Engine Monitoring Room Blast Doors"; pixel_x = 5; pixel_y = -25; req_access = list(10)},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine charging port."; id = "SupermatterPort"; name = "Reactor Blast Doors"; pixel_x = -5; pixel_y = -25; req_access = list(10)},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/engineering/engine_room) "cLC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{name = "Engine Waste Handling"; req_one_access = list(10,24)},/turf/simulated/floor/plating,/area/maintenance/engi_engine) "cLD" = (/obj/machinery/camera/network/engine{c_tag = "Engine Core West"; dir = 8},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engineering/engine_room) -"cLE" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_access_hatch"; locked = 1; req_access = list(10)},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plating,/area/engineering/engine_room) -"cLF" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_access_hatch"; locked = 1; req_access = list(10)},/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/simulated/floor/plating,/area/engineering/engine_room) +"cLE" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "robotics_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/portsolar) +"cLF" = (/obj/machinery/door/airlock/engineering{name = "Aft Port Solar Access"; req_access = list(11)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cLG" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{dir = 8},/obj/machinery/meter,/obj/machinery/camera/network/engine{c_tag = "Engine Core East"; dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/engineering/engine_room) "cLH" = (/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine radiator viewport shutters."; id = "EngineRadiatorViewport"; name = "Engine Radiator Viewport Shutters"; pixel_x = 25; pixel_y = 0; req_access = list(10)},/obj/machinery/atmospherics/pipe/manifold/visible/purple{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/engineering/engine_room) "cLI" = (/obj/machinery/button/remote/blast_door{id = "EngineVent"; name = "Reactor Ventillatory Control"; pixel_x = -25; pixel_y = 0; req_access = list(10)},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/engineering/engine_room) -"cLJ" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "robotics_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = list(10,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/portsolar) -"cLK" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "robotics_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access = list(13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/solar/port) -"cLL" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "robotics_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cLM" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "robotics_solar_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "robotics_solar_pump"; tag_exterior_door = "robotics_solar_outer"; frequency = 1379; id_tag = "robotics_solar_airlock"; tag_interior_door = "robotics_solar_inner"; layer = 3.3; pixel_x = 0; pixel_y = -25; req_access = list(13); tag_chamber_sensor = "robotics_solar_sensor"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "robotics_solar_sensor"; layer = 3.3; pixel_x = 12; pixel_y = -25},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/decal/warning_stripes,/turf/simulated/floor/plating,/area/maintenance/portsolar) -"cLN" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "robotics_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/portsolar) -"cLO" = (/obj/machinery/door/airlock/engineering{name = "Aft Port Solar Access"; req_access = list(10)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cLP" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable,/obj/machinery/camera/network/engineering{c_tag = "Solar Maintenance Aft Port"; dir = 1},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cLQ" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/camera/network/engineering{c_tag = "Solar Maintenance Aft Port Access"; dir = 1},/turf/simulated/floor/plating{dir = 4; icon_state = "warnplatecorner"},/area/maintenance/engi_engine) "cLR" = (/obj/machinery/camera/network/engine{c_tag = "Engine Core South"; dir = 1},/turf/simulated/floor/engine/nitrogen{dir = 8; icon_state = "warnplate"; name = "plating"},/area/engineering/engine_room) @@ -7470,8 +7465,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfagBafYajFafYajGajHalfajJajKajLajMajNajOajPajQajRajSajTajUajVajWajXajUajYajWajWajZakaakaakbakcakdahOakeajbakgajzakhakiakjalnaklakmaknakoakpalqakZakqabOaaaaaaaaaaaaaaaaaaaaaaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafabQaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaamaamaaIaamaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWagWagWagWagWagWaksaktakuakvakwakxakyakzalrakBakCakDakXalvakwakGakwakwakHakIakJakKakLakMalxakOakPakJakQalNakSakTakUalbalPalCakYakoalIabbalOamaactaaaaaaaaaaafaaaaaaaaaaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaIaaIaaIaaIaaaaaaaaaabpaaaaaaaaaaaIaaIaamaamaamaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaaaaaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWalcaldalZalQagWalgalhahLalialjagWacTamoacTagWabVamsabUagWalpamuamtalsagDaltaluamxalwamyagWabTabSabSabRagWalBamcalDalEalFalGalHakoamAanQamDanQanQaaaaaaaafaafaaaaaaaaaaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqaaaaaaaafaafaafaaaaaaaoYaafaafaaaaafaafaaaaaaaamaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafabMaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafabfadEamEalMalMamHamFamMamJalRahKalSaljagWalTalUalValWalXalYamNamOahKambahKamPamdameameamfamgamhamiamjamkamlammakoamnamUampamqalDalDamrakoadQanQamvawKamwaaaaaaaaLaaaaaaaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaamaaIaaIaaaaaaaaaaoXaaaaaaaaaaaIaaIaamaamaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWamWamBamCamZagWankalRaljanlamGagWamRamIanmalWamKamLannanpanoanPamQanaaNcamgamgamfamgamTaoWamVanfamXanhakoaoeanWalDamqalDalDanbakoancandaneaocangaafaaLaafaafaaLaafaafaafakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafabMaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafabfadEamdalMalMamHamFamMamJalRahKalSaljagWalTalUalValWalXalYamNamOahKambahKamPamEameameamfamgamhamiamjamkamlammakoamnamUampamqalDalDamrakoadQanQamvawKamwaaaaaaaaLaaaaaaaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaamaaIaaIaaaaaaaaaaoXaaaaaaaaaaaIaaIaamaamaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWamWamBamCamZagWankalRaljanlamGagWamRamIanmalWamKamLannanoamQanPanpanaauoamgamgamfamgamTaoWamVanfamXanhakoaoeanWalDamqalDalDanbakoancandaneaocangaafaaLaafaafaaLaafaafaafakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafaaaaaaaaaaoVaafaafaaaaafaafaaaaaaaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaofagWagWagWagWagWagWaqqaqXagWagWagWagWaoRaoSaoRalWaoTaoUapealWapfapiaplanzanAamgamgamfanBanCamianDanEamXanFanGanHanIanJanKanLanManNanGanOaoPapqanRanSaaaaaaaafaaaaafaaLaafaacakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanXanYanZaoaagDaobaoZagWaoCapdalKaogappaoiapDaokaolaonaonaooaonaopaoqaoGaoMaoOapHamgamgaouaovaowamiaoxaqgamXaoyanGaozaoAaoBaoQaoDaoEaoFanGaqCanQanQanQanQaoIaoJaoHaoLaqJaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalJaaaaaaaaaaafaaaaaaaaaaamaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaaaaaaaacaaaaaaaaaanXanXapaapbagDalMapcaqPaohaodanvanramSaomaosaosaotaojaonapmapnaoraonapoaonaoNapEapramgamfamgamTaraamYanEamXaptanGapuapvapwapxapyapzapAanGapBaoHapCapLapGapFapPaoHaoHarjaoHaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7479,15 +7474,15 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalkaaaaaaaaaaafaaaaaaaaaaaqaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqAaqBagDagWagWagWarvalRagWalWalWalWaqDaqEapkaqFaqGaqHaonaqIarwaqKaqLanyarMaqOaryaqQaqRaqSanxaqUaqVarQamVanGarzaqYaqZarCarbarcardanGarearfapFaqtaqtapFargaoHarhariarFaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaaaaaaaaaabgaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaqzarkaqBagDaobarHagWarmarOalKaogarPaoiaokarparqarrarsartaonarualWarZarSarxalLasnarAasBamzasOarEasRarGasWamjanGanGarIanGanGanGanGanGanGarJarKarLasaasaapFarNaoHaoHasXaoHaoHaaaaaaakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaaaalJaaaaaaaaaaafaaaaaaaaaaamaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLasYaaLaaaaaaaaaaaaaaaaaaaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaqzataaqBagDarRapcatiarTarUatIapharWaloaonaonarYasFasyasMaonascalWasdasealmasgasharAasiasjaskarEaoHaoHaoHaoHaoHaslatQatJasoasoaspaspasqasrassastastasuasvasvaswasxatXaszaqsaaaaafaafaafaaaaaaaafaafaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafasAauiasAaaaaaaaaaaaaaaaaaaaaaaaIaafapJapJapJapJapJaafalkaafapJapJapJapJapJaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasCasbapbagDapUapMagWasDasEalKapOasPaoiasGasGasHasIaonasJaonasKalWasLatgauoathauuarAasQauvasSarEasTasUasUasVauSasVavCavbasZasZasZasZasZasZasZasZasZasmavFatbatcaoKatdateatfaaaaafatPatratjatjatjatjavRatjatjatjatjatUaafaaaaaaaaaaaaaamaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafasAauiasAaaaaaaaaaaaaaaaaaaaaaaaIaafapJapJapJapJapJaafalkaafapJapJapJapJapJaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasCasbapbagDapUapMagWasDasEalKapOasPaoiasGasGasHasIaonasJaonasKalWasLatgayOathauuarAasQauvasSarEasTasUasUasVauSasVavCavbasZasZasZasZasZasZasZasZasZasmavFatbatcaoKatdateatfaaaaafatPatratjatjatjatjavRatjatjatjatjatUaafaaaaaaaaaaaaaamaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatkatlatmaaaatnatoatpaaaaafatqatWatqaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaaaalkaaaaaaaaaaafaaaaaaaaaaamaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaanXatsattagDagDagDagWagWagWagWalWalWalWalWalWatuaonaoratvaqEatwalWalWalWatxatxatxarAatyatzatAarEatBasZasZasZasZatCatDatEatFatGatHavTavUatKatLatMatNatOatPatPatPatPatPatPatPatPatPatPatRatRatRatRatRatRatRatRatRatRaumaafaaaaaaaaaaaaaamaaaapIapIapIapIapIaafalJaafapIapIapIapIapIaaaaaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatSatTaLAatTatSatVaLBatVatSaafatqawvatYaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafatZauaanYaubaucanXaafaafalWaudaueaufaugauhawMaonapnaonasJaqEaujaukaulawRaunauKauparAauqaurausarEatBasZauLaxdauMatCauxauyatFatGauzauAauBauCauDatMatNauEauFauGauHauIauHauJauwauOauPaxsatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaamaaaaafaaaaafaafaaaaaabepaaaaaaaafaaaaaaaafaaaaaIaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNatTavmatTauNatVavyatVauNauQauRaxuauTauUauUauVauQauQaafaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaaaaaaaaaaaaanXanXanXauWanXanXapbaucanXaaaaaaalWauXalWauYauZavaalWaxwavzaonavdaveaveavfavgaveavhaviavjarAavkauravlarEatBasZavAavoavJatCawravqatFatGauzauAavravsavtatMatNavuavvauGauHauHauHauJavwavQawfavVatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaamaamaaIaaaaaaaafaaaaaaabpaaaaafaafaafaafaaIaaIaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNavBaxyavDauNavEaxAavGauNavHavIaxCavKavLavMavNavOauQaaaaaaaaqaaaapJapJapJapJapJaafbeSaafapJapJapJapJapJaaaaaIaaaaaaaaaaaaaaaaaaaaaaaaawkaxGavSayqaxOawoavWavXanXaaaaaaalWalWalWavYavZawaalWawbawcawdaweawpawgaukawhawxautawyawlarAawmaurayzarEatBasZawzawUawYaxaaxbawZatFatFatFawsawtawuatFatFatNayNawwauGauHauHauHauJawAavxawfaykatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaafaafaaaaafaaaaaaayOaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNawGawHawIauNawGawHawIauNawJavHavHavHavHavHavHavHasAaaaaaaaaIaaaaafaaaaafaafaaaaaaaySaaaaaaaafaaaaaaaafaaaaaIaafaaaaaaaafaafaaaaaaaafawPaxGawQazgaxOawSaucawTanXaafaaLcqTatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxarAawVaurawWarEatBasZawBaxjawCatCaxVavnazpaxcaxfaxeaxhaxgaxhaxiaxkaxlaxmaxnaxoaxoaxoaxnaxmavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaaaazoazBazoaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaatSauNazFaxxatSauNazUaxxatSauNaAbauNauNauNauNauNavHatqaaaaaaaaIaaIaaIaaaaaaaafaaaaxBaAraxBaafaafaafaafaaIaaIaaIaafanXanXanXanXaxDaxEaxEaxFanXanXanXanXaAvaucaucanXaxHaxIanXanXaxJaxKaxLaxMaxMaxMaxMaxMaxMaxMaxMaxNaxMaxMaxMaxMaxMaAHaxPaxQaxRaAHavpasZaxSawjcfSatCaxVaxXaxXaxXaxZaxYayaawLaxXavqaydayeayfaygayhayhayhayhawXavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaAuaBaaAuaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaynayoaypayoaBcayoayrayoaysaytayvayvayvayvaywauNawNatqaaaaafaafaaaaaaaaaaaaaafaaaayyaBkayAaafaaaaafaaaaaaaaaaaaaaaanXayBayCayDayCayCayCayCayEayCayCayFayGayDayHayIaxMaxMaxMaxMaxMaxMayJayKayLayLayLayLayMayLayLaBwayLayMayLayLayLarAaBEayPayQarEaAiasZcfSaycaxUatCayUayTayWaxpayYayXayYaxqayTazaazbazcazdazeazdazdazfaxraBOaxtaxTaxvatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaBuaBvaBQaBxaByaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqazrazsaztazuazvazwazxazyazwazzazAazwazwaCeauNavHauRaafaafaaaaaaaaaaaaaaaaafazDazEaCiazGazHaaaaafaaaaaaaaaaaaaaaanXazIanXazJazKazLazLazLazMazLazLazLazNazJazOazPazPazPazPazPazPazPazQazRayLazSazTaCtazVazWazXazYazZaAaaCDazTaAcarAaAdayPayQarEaAiasZaybaAeauMatCaxWaxXaxXaxXaxXayiayjaAlaAmaAnaxkaAoaylaApaApaApaAqayVatPayZatPatPatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCwaCHaCyaCvaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNavBaxyavDauNavEaxAavGauNavHavIaxCavKavLavMavNavOauQaaaaaaaaqaaaapJapJapJapJapJaafbeSaafapJapJapJapJapJaaaaaIaaaaaaaaaaaaaaaaaaaaaaaaawkaxGavSayqaxOawoavWavXanXaaaaaaalWalWalWavYavZawaalWawbawcawdaweawpawgaukawhawxautawyawlarAawmaurayzarEatBasZawzawUawYaxaaxbawZatFatFatFawsawtawuatFatFatNayNawwauGauHauHauHauJawAavxawfaykatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaafaafaaaaafaaaaaaaySaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNawGawHawIauNawGawHawIauNawJavHavHavHavHavHavHavHasAaaaaaaaaIaaaaafaaaaafaafaaaaaaazBaaaaaaaafaaaaaaaafaaaaaIaafaaaaaaaafaafaaaaaaaafawPaxGawQazgaxOawSaucawTanXaafaaLcqTatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxarAawVaurawWarEatBasZawBaxjawCatCaxVavnazpaxcaxfaxeaxhaxgaxhaxiaxkaxlaxmaxnaxoaxoaxoaxnaxmavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaaaazoaArazoaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaatSauNazFaxxatSauNazUaxxatSauNaAbauNauNauNauNauNavHatqaaaaaaaaIaaIaaIaaaaaaaafaaaaxBaBwaxBaafaafaafaafaaIaaIaaIaafanXanXanXanXaxDaxEaxEaxFanXanXanXanXaAvaucaucanXaxHaxIanXanXaxJaxKaxLaxMaxMaxMaxMaxMaxMaxMaxMaxNaxMaxMaxMaxMaxMaAHaxPaxQaxRaAHavpasZaxSawjcfSatCaxVaxXaxXaxXaxZaxYayaawLaxXavqaydayeayfaygayhayhayhayhawXavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaAuaBaaAuaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaynayoaypayoaBcayoayrayoaysaytayvayvayvayvaywauNawNatqaaaaafaafaaaaaaaaaaaaaafaaaayyaBkayAaafaaaaafaaaaaaaaaaaaaaaanXayBayCayDayCayCayCayCayEayCayCayFayGayDayHayIaxMaxMaxMaxMaxMaxMayJayKayLayLayLayLayMayLayLaBQayLayMayLayLayLarAaBEayPayQarEaAiasZcfSaycaxUatCayUayTayWaxpayYayXayYaxqayTazaazbazcazdazeazdazdazfaxraBOaxtaxTaxvatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaBuaBvaCiaBxaByaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqazrazsaztazuazvazwazxazyazwazzazAazwazwaCeauNavHauRaafaafaaaaaaaaaaaaaaaaafazDazEaCtazGazHaaaaafaaaaaaaaaaaaaaaanXazIanXazJazKazLazLazLazMazLazLazLazNazJazOazPazPazPazPazPazPazPazQazRayLazSazTazTazVazWazXazYazZaAaaCDazTaAcarAaAdayPayQarEaAiasZaybaAeauMatCaxWaxXaxXaxXaxXayiayjaAlaAmaAnaxkaAoaylaApaApaApaAqayVatPayZatPatPatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCwaCHaCyaCvaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafauNaAwaAxaAwaAyazsazsaAzaAwaAxaAwaAAaABaACaADauNavHauQauQaAEauUauUauUauUauVauQaAFaAGaCJaAIaAFanXanXaxHaAJaxIanXanXanXazIaAKazJaaaaafaaaaafaaaaafaaaaafaaaazJazOazPaALaAMaANaAOaAPazPazQaucayLaAQaAQaARaASaATaAUaAVaATaAWaAXazTaAcarAaAdayPaDdarEaAiasZawzaAgaAhaBbayRaBdaBeazhaBgaBhaBiaBjaBjaCLaBjatPaBlaBmaBnaBoaBpaBraxvaziazkazjatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaacaaaaaaaafaaaaCvazlaDAaDBaCvaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaBzatSaBAawHaBBaBCaBDaDcaBFaBBawHaBGaBHaBIaBJaBKaBLavHavHavHavHavHavHavHavHaDnaBPaAFazmaBRaBSaAFaBTaBUayCayCayCayCayCaBVaBWaBXazJaafaBYaBYaBYaBYaBYaBYaBYaafazJazOazPaBZaCaaCbaCcaBZazPazQaCdayLayLayLayLaDxaCfaCgaChaCfaDyaCjazTaCkarAaAdayPaClarEaJCasZaznaAYazCatCaxWavqatEaBjaBjaBjaBjaBjaCqaCraCsaBjatPatPatPatPaDQatPatPaAfaAkaAjatRatRatRatRatRatRatRatRatRatRaumaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaEXaEYaDYaCvaaaaaaaaaaafaafaaaaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqaAxaCzaCAaCAaCAaCAaCBaAxazqaaaaBIaCCaxzaBLaCEaCEaCEaCEaCEaCEaCEavHaCFaCGaAFaEeaCIaAsaAFaCKaEvaCKaCKaCKaCKaCKaCKaCKaCKaCMaaaaBYaCNaCOaCPaCQaCRaBYaaaazJazOazPaBZaCSaCTaCUaBZazPazQanXayLaCVaCWaARaCXaCYaCZaDaaDbaECayLayLayLarAaAdayPayQarEaAiasZaAtaEMauMatCaDgavqatEaDhaDiaDjaDkaBjaCqaDlaCsaBjaDmaESaDoaDpaDqaGwaDsatPatPatPaAZatjatjatjatjaEVatjatjatjatjaBfaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCvaFhaGyaCvaDCaDDaDEaDCaDCaDCaDCaDCaDCaDCaDFaDGaDGaDGaDHaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7496,61 +7491,61 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaFraGIaFyaGKaFlaFMaFlaFMaFlaFMaFlaFMaFlaGMaGNaGOaDPayuaBLaInaFAaGRaGSaGTaGUaCEaFBaFDaFCaFCaFCbazaIzaFCaHcaFLaFLaFLaFLaFLaFLaFLaFNaHdaCMaafaBYaHeaHfaHgaHhaHiaBYaafazJazOazPaHjaFPaFUaHlaHmazPaHnaHoayLaHpazTaARaHqaATaHrazTaCfaFYaHsazTaHtarAaHuaHvaHwarEaGuaIDaEUaGvaDwaIIaGzaGjatEaHCaHDaBjaHEaBjaHFaBjaHGaBjaHHaGpaIZaDpaJsaJjaHLaHMaHMaHNaHOaHKaHKaHKaHKaHKaHPaHKaHKaHKaHQaHVaDsaDsaDsaDCaGBaGAaGCaGCaGLaGJaDCaDCaJwaDCaIdaIeaIfaIgaGFaJBaGFaIiaIjaJHaKjbinaKlaIoaIpaIqaKHaIsbjFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaIwaFlaFlaDKaFlaFMaFlaFMaIxaFMaIyaFMaFlaGMaGNaGOaDPaFFaIAaIAaKMaICaKPaICaIAaIAaIEaIFaFCaGQaFHaGWaHkaFCaIKaILaIMaFLaFLaHRaFLaIOaIPaIKaCMaaaaBYaBYaIQaHSaIQaBYaBYaaaazJazOazPaISaITaIUaFTaIVazPaIWaIXayLaIYazTaKQaEwaCfaJaaEyaATaJbaJcazTaJdaJeaJfaJgaJhaMbaKVaCuaCuaCuaCuaCuaHUaHTaJlaJmaJnaBjaJoaBjaJpaBjaJqaBjaJraGpaKXaJtaGsaGsaDqaJvaDsaDsaKYaDsaDsaJxaDsaGsaJyaGsaGsaGsaJzaHZaHXaHWaIaaLcaIraIbaIbaIbaIRaINaIgaJIaJJaLdaJkaJMaJNaIgaJOaJPaGFaJQaJAaJSaJTbinaJUaIoaJVaLeaGGaGGaGGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaFraJXaFyaGKaFlaFMaFlaFMaFlaFMaFlaFMaFlaGMaGNaGOaDPaGYaGXaHaaGZaHbaHbaIBaLiaIHaIGaIJaLkaJZaJYaJGaKaaFCaIKaKmaKnaKoaKpaIKaKqaKraKsaKtaKuaaaaafaaaaKvaKwaKvaaaaafaaaaKuazOazPaKxaKyaKzaKAaKBazPaKCaKDayLaKEazTaARaKFaKGaHrazTaLmaKIaKJaKKaKLaJeaEDaKNaKOaLYaEEaKRaaaaaaaJlaKSaJKaMcaJlaJLaJnaJnaJnaKWaJnaJnaJnaBjaDpaMvaDpaDpaDpaDpaMwaDpaKZaLaaLbaMEaMVaMFaLfaLgaLhaLfaLfaLfaLfaLfaMXaLfaLfaLfaLfaLfaLfaLfaLfaJRaIgaLjaJWaLlaEFaKbaLoaIgaLpaKTaGFaLraLsaLtaJTbkuaJUaIoaJVaIoaKUaLwaLxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaLyaLzaDJaFkawiaFlaFlaFqaFlaFlaFnaFlawnaFraLCaLDaDPaLEaLFaLGaLHaLGaLGaLGaLGaLGaLIaLJaFCaFCaFCaFCaFCaFCaLLaLMaLNaLOaLOaLOaLOaLPaLQaLRaKuaLSaLTaLTaLUaLVaLWaLTaLTaLXaKuaNAaKuaKuaLZaMaaLZaJeaJeaMbaNGaJeaJeaJeaJeaMdaMeaNXaNPaMhaMiaJeaJeaJeaJeaMjaKNaMkaMkaMlaMmaMnaMoaJlaMpaLqaLnaJlaJlaJlaJlaJlaJlaJlaJlaBjaBjaMsaMtaMuaOiaOoaLvaMyaMfaKZaMAaMBaMCaMCaMDaLfaOpaOqaMGaMHaMIaMJaMKaMLaMMaMNaMHaMJaMIaMHaMOaLfaJRaIgaMPaMgaMRaMSaMqaMUaIgaOsaMWaOCaMYaMraNaaNbaGFaGGaOHaJVaIoaMxaNeaNfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaLyaLzaDJaFkawiaFlaFlaFqaFlaFlaFnaFlawnaFraLCaLDaDPaLEaLFaLGaLHaLGaLGaLGaLGaLGaLIaLJaFCaFCaFCaFCaFCaFCaLLaLMaLNaLOaLOaLOaLOaLPaLQaLRaKuaLSaLTaLTaLUaLVaLWaLTaLTaLXaKuaNAaKuaKuaLZaMaaLZaJeaJeaMbaNGaJeaJeaJeaJeaMdaMeaNPaNcaMhaMiaJeaJeaJeaJeaMjaKNaMkaMkaMlaMmaMnaMoaJlaMpaLqaLnaJlaJlaJlaJlaJlaJlaJlaJlaBjaBjaMsaMtaMuaOiaOoaLvaMyaMfaKZaMAaMBaMCaMCaMDaLfaOpaOqaMGaMHaMIaMJaMKaMLaMMaMNaMHaMJaMIaMHaMOaLfaJRaIgaMPaMgaMRaMSaMqaMUaIgaOsaMWaOCaMYaMraNaaNbaGFaGGaOHaJVaIoaMxaNeaNfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaLyaDJaDKaDJaDJaDLaDMaDJaDJaDKaLzaNgaBIaNhaLEaNiaMzaMzaNkaMzaNlaIAaNmaNnaLJaNoaNpaNqaNraNsaNtaNraNuaNraNraNraNvaNraNraNwaNxaNyaNzaNzaNBaOMaNCaNzaNzaNzaNzaNDaNEaNFaQcaNraNHaNIaNJaNKaNLaNMaNLaNNaNOaQdaNQaNQaNRaNSaNTaNSaNUaNVaNWaEGaNYaNZaOaaObaOcaMkaMkaMkaOdaOeaMTaMQaOhaQxaOjaOkaOlaOmaOnaJlaQAaQyaQEaOraOtaOtaOuaMZaOwaNdaKZaOyaOzaOAaOAaOBaLfaQJaODaOEaOEaOEaOEaOFaOGaQTaOIaOJaOKaOKaOLaRbaLfaJRaIgaONaOOaNjaOfaONaONaIgaORaOSaGFaOTaOUaOVaOWaGFaIoaIoaJVaIoaGGaGGaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOXaOYaOZaPaaPaaPaaPaaPbaOYaOXaaaaBIaPcaPdaPeaOvaOgaPhaPhaOxaIAaPjaNnaPkaPlaPmaPnaPoaPpaPqaPqaPraPsaPsaPsaPtaPuaPuaPvaPwaNIaPqaPqaPxaPyaPzaPAaPBaPBaPCaPBaPDaPyaPyaPyaPEaPFaPGaPHaMkaPIaPJaPJaPJaPJaPJaPJaPJaPJaPKaPJaPLaPMaPNaPOaPPaPQaPRaPSaPTaPJaPUaPJaPVaPWaPXaPWaPWaPWaPWaPWaPWaPYaPZaRsaQbaQbaQbaRraQbaQbaRxaQeaQfaQgaKZaQhaMCaQiaQjaQkaLfaQlaQmaQnaQnaQnaQnaQnaQoaQpaOPaQraQnaQnaQsaQtaLfaJRaIgaQuaONaONaQvaONaQwaIgaGFaGFaGFaGFaGFaGFaSoaGFaIoaIoaJVaIoaStaOQaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaafaBIawqaBIaQBaQCaGOaQDaSuaQFaQGaGOaQCaQHaQIaBIaSyaLEaPeaPfaQLaPhaPhaOxaIAaQMaNnaLJaQNaNpaQOaQPaNraNraQQaQRaQSaSEaNraQUaQVaQWaQVaQXaQYaQVaQVaQZaQVaQVaRaaSHaQVaRcaQVaRdaNraNraNraReaPFaPGaPHaMkaRfaMkaRgaRgaRgaRgaRgaRgaRgaRgaRhaRiaRgaRjaRgaRgaRkaRgaRgaRgaRgaRlaRmaRnaRoaRoaRoaRoaRoaRoaRoaRpaRqaRpaJlaImawOawOawOawOawOaItaRuaRvaRwaKZaKZaKZaKZaKZaSIaLfaRyaQmaQnaRzaRAaRBaPgaRDaREaRFaQraRGaRHaRIaRJaLfaJRaIgaRKaRKaRLaRMaRNaRNaROaIgaRPaRQaRRaGGaRSaRTaRUaRVaRVaRWaRXaGGaRYaGGaRZaRZaRZaSaaSbaScaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaSUaGhaSdaOYaLDaDPaHxaHxaSfaLDaOYaLDaHyaHAaHzaLEaSkaPiaPiaNkaPiaNlaIAaSmaNnaSnaIAaLKaLKaSZaLKaLKaLKaLKaLKaLKaSpaSqaLKaLKaLKaLKaLKaLKaSraSsaSraLKaTPaLKaNraQPaUjaSvaSwaSxaNraReaUlaMbaMbaMkaSzaKOaSAaMnaMnaSBaSBaSBaSBaSCaJeasfasNarVarXarXavParXarXarVasNawFaJeaSJaSKaSKaSKaSKaSLaSLaSMaSNaRqaRpaJlaQqaQaaQaaQaaQaaQaaQaaSQaSRaSSaSTaUOaSVaSWaSXaSYaKZaKZaVeaTaaTbaTcaTdaTeaTeaTeaTfaTgaTfaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaTjaQzaTlaGGaIoaTmaTnaToaTpaTqaIoaTraQKaGGaTtaTuaRZaTvaTwaTxaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIaVzaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaVLaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeaUfaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUJaUKaULaUMaUNaWFaUPaUQaURaUSaUTaTfaUUaUVaRCaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeclraVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaVPaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaWkaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaWdaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIaNXaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaVLaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeaUfaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUJaUKaULaUMaUNaWFaUPaUQaURaUSaUTaTfaUUaUVaRCaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVzcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeclraVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaVPaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaWkaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaWdaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaXiaXjaXkaWgaTUaTUaTUaYwaUeaXmaYxaXoaUeaUiaVGaXpaKfaXraXsaUmaXtaVPaXuaXvaXwaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXOaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXWaZhaXYaXZaYaaYbaYcaYdaYeaWjaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaXRaXhaToaYfaYkaZXaWLbaOaYmaWOaZcaVoaYvaZnbaBbanaYzbaCaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDbaNaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaYHaYHaYIaYJaYKaYLbaPaYNaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaXjaYUbbTaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaZraZsaZtaZuaYaaYpaZwaYdaYeaWjaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaYXaYGaToaZeaYGaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaZYaZkbaaaZvbacbadbaebafaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXOaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYabbxbbybbzbbAbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafbcCaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbcPbcFbcZbcTbbUaSFbaabaabaabaabaabbVbaabdtaYObbXbbYbaibbZbbZbbZbbZbdKbbZbcbaTUbccbcdbcebcebcfbcgaTSaXebchbcibcjaKibdQblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbcrbcsbctbeabcvbcwbcxbbgaUpbczbcAbeeaUpaUpaaaaaaaafaafbekaaaaaaaUpaUpbezbcGbczaUpbbgbcxbcHbcIbcJbcKbcLaRpaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSbcObcObcObcObeBbcQbcRbcSaUQaUQaUQbeMbcUaTeaZMbcWbcXaYgaWBaYhaWDbcYaZzaZZbdabdbbdcbddbdebddbddbddbddbddbdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdraVoaYubdsaZNaVobeNbbOaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaYHbabbaaaZvbdzbbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZbdHbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafbfyaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbfAbeObePbeQbfWaRtaYHbeTbeUbgubdzbbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPbfebffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaabgnbgobgpbgqaZUbgrbgrbgrbgrbgrbgrbgsbgtbgraYOaYOaYOaYOaYObhKaYOaYOaYObgvbgvbgwbbZbdDbgxbeZbgybbZbgzbgAbgzaTSbeRbdLbdMbfdaTSaXebdObdPbgBbgCbgDbfgbgDbdPbfibgEbgFbgGbgHbgIbgJaMbbgKbgLbctbhLbivbgObgPbexbexbgRbgSbgTbdYbebbmIbgVbhRbhNbfzbgYbhSbebbedbhabhbbhcbeCbhTbeEbhgbhhaJibhibhjaRpbhkbhlbhmbewbewbhnbewbhobewbewbewbewbhpbewbewbewbewbhqbewbewbewbewbewbewbhmbewbewbhrbhsbhsbhtbhsbhsbhubhvbewbhqbhwbhxbhpbewbhybewbewbewbhzbhAbhBbhUbewbhDbewbhEbewbewbhFbhGbhHaVoaYuaVobhIbhVbhXbhWbhMbidaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaYHaYHaYIaYJaYKaYLbaPaYNaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaXjaYUbbTaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaZraZsaZtaZuaYaaYpaZwaYdaYeaWjaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaYXaYGaToaZeaYGaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaZYaZkbaaaZvbacbadbaebafaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXOaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYabbxbbybbzbbAbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbaNbcFbcZbcCbbUaSFbaabaabaabaabaabbVbaabdtaYObbXbbYbaibbZbbZbbZbbZbdKbbZbcbaTUbccbcdbcebcebcfbcgaTSaXebchbcibcjaKibdQblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbcrbcsbctbeabcvbcwbcxbbgaUpbczbcAbeeaUpaUpaaaaaaaafaafbekaaaaaaaUpaUpbezbcGbczaUpbbgbcxbcHbcIbcJbcKbcLaRpaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSbcObcObcObcObeBbcQbcRbcSaUQaUQaUQbeMbcUaTeaZMbcWbcXaYgaWBaYhaWDbcYaZzaZZbdabdbbdcbddbdebddbddbddbddbddbdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdraVoaYubdsaZNaVobeNbbOaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaYHbabbaaaZvbdzbbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZbdHbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaYHbeTbeUbgubdzbbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPbfebffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaabgnbgobgpbgqaZUbgrbgrbgrbgrbgrbgrbgsbgtbgraYOaYOaYOaYOaYObhKaYOaYOaYObgvbgvbgwbbZbdDbgxbeZbgybbZbgzbgAbgzaTSbeRbdLbdMbfdaTSaXebdObdPbgBbgCbgDbfgbgDbdPbfibgEbgFbgGbgHbgIbgJaMbbgKbgLbctbhLbivbgObgPbexbexbgRbgSbgTbdYbebbmIbgVbhRbhNbfzbgYbhSbebbedbhabhbbhcbeCbhTbeEbhgbhhaJibhibhjaRpbhkbhlbhmbewbewbhnbewbhobewbewbewbewbhpbewbewbewbewbhqbewbewbewbewbewbewbhmbewbewbhrbhsbhsbhtbhsbhsbhubhvbewbhqbhwbhxbhpbewbhybewbewbewbhzbhAbhBbhUbewbhDbewbhEbewbewbhFbhGbhHaVoaYuaVobhIbcPbhXbhWbhMbcTaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaafbhPaYDbhQbitbiqbjubjqbjwbjvbjubjBbjGbjCbjObhYbhZbgwbbZbbZbbZbiabfabbZaTSaTSaTSaTSbeRbibbicbjQaTSbiebifbdPbigbihbiibgDbijbdPbfibikbgFbgGbgGbgGbilaMbbimaSzbctbjVbiobipbfjbirbisbfBbiubjMbdYbebbiwbixbiybjYbiybgYbgebebbedbiAbiBbiCbgQbiEbgZbiGbiHaJibiIbiJbiKbiLbiMbiNbiObiObiPbiQbiRbiSbiSbiSbiTbiSbiSbiSbiSbiSbiUbiVbiVbiVbiWbiObiObiNbiObiObiXbiVbiVbiYbiSbiZbjabjbbiSbjcbiObiObiObiObiObiObiObiObiObiObiObiObiObjdbiTbjebiSbjfbjgbjhbjibjibjjbjkaZNaWRbjlaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZbkZbkZbkZaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbjAbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktcsfbkvbewbkpbkwcLYbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOblBblrblEblCbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbloblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObfyblrblEbfAbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbloblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbmobmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibmWbojbmYbmZbnabolbjRbndbnebjRbopbmCbnhbnibnjbmPboKbnmbnnbnobnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbnAbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbnHbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaabpsbnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpSbpTbnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbcEbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbpcbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbqtbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObpyboqbpAbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpSbpTbnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbcEbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbpcbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbhVbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObpyboqbpAbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdvbpHbpHbpHbpIbpHbpJaZVbpKbqKbgrbqQbjpbrkbrcbpQbpRbrvbrubrwbrwbrwbrxbkWbpUbkWbkWbkWbkWbpVbpWbpWbpXbpYbdPbpZbqabqbbrybqdbqebqfbrCbqhbqibqjbqkbqkbrDbrIbgGbgGbqmbfmaMbblqbqnbqoaJubqqbqrbqrbxqborbrPbxsbotaafbebbebbebbebbshbebbebbebbebaafbedbqzboCbqAbsjbqCbqDbqEaJibqFaRqaRpaJibskbqHbqIbqJaJDbqLboPbqNboUboUboUboUboUboUbqObqPbslboYbqRbqSboNbnnbqUbqVbqWbsnbpgbphbpfbqXbYfaVJbpjbqYbqZbqZbrabrbbsobrdbrdbrdbrebrdbrfboObrhbribrjbsqbnIbrlbpCbrmbrnbrobsrbnIbrqbpFbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBbsybsHbsHbthbrzbrAbgrbtkbtlbtvbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabsebscbotbosbotaafbsibtObtKbtTbsmbtXbtKbubbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNbsxbuxbszbsAbuTbsCbqObsDbnibsEbsFbsGbuUbnnbsIbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNbsObsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtcbtdbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBbidbsHbsHbthbrzbrAbgrbtkbtlbtvbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabsebscbotbosbotaafbsibtObtKbtTbsmbtXbtKbubbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNbsxbuxbszbsAbuTbsCbqObsDbnibsEbsFbsGbuUbnnbsIbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNbsObsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtcbtdbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbuhbwlbwnbukbulbumbnibnnbunbpubupbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbuAbpvbuCbuDbuEbuFbuGbrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbuNbnIbpEbpFbuObnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwZbeObxmbxmbuVbpHbuWbgnbgobuXbuWbgrbxpbjpbxvbvbbjpaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaabvcbvdbrJbvebvfbvfbvfbvfbvfbvgbvhbvfbvibxzbvkbvlbvmbvnbvobfmbvpbgGbxDbpzbvsbvtbvubvvbmGbmGbmGbvxbvybvzbvAbvBbvwaafbpObxHbvHbvJbvKbvMbvNbxIbpOaafbspbqMbvQbxnbedbvRbspbvSaJlbvTbcLbvUaJibvVbvWbvXbvYbxObucbyobxTbyKbwdbwebwebwfbyMcdWcdVbwjbwkbyObwmbwkbwkbwkbwkbyQbwkbwkaXKaXKaXKaXKaVJbpjbsJbsKbsLbwobwpbwqbwrbwsbwsbwsbsSbwtbqTbwvbwwbyUbwybnIbwzbwAbwBbwCbpCbwDbnIbwEbwFbnMbnMaaaaaaaaaaaaaafbuPbuQbuRbuQbuRbuQbuSaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbwMbwNbwObwPbrJbwQbrJbwRbwRbwRbwSbwTbrKbrJbrJbrLbwUbwVbwWbwXbrpbzcbxabgGbgGbugbxcbvtbvubxdbxebxfbzrbzHbxibxjbxkbxlbvwaafbxrbzNbzJbzObyLbxobzPbzVbxraafbspbqwbAebuBbedbAibspbtVaJlbxwbcLaRpaJibxxbxybAobxAbxBbxCbAtbxEbxCbxFbxGbAubxFbwkbAxbxJbwkbwkbxKbxLbxMbxNbAAbxPbxQbxRbxSaXKbaybvraXKaVJbpjbxXbqZbqZbxYbxZbppbyabwsbwsbwsbsSbwtbybbwwbvDbUabTQbwwbyfbygbyhbyibpCbvLbnIbrqbykbnMaaaaaaaaaaaaaaaaafbwGbwHbrgcLebwJbwKbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbAFbypbAFbyqbyrbwQbrJbrJbrJbysbrJbwTbrKbytbdPbdPbyubgGbrNbwXbyvbywbyxbyybyybyzbyAbyBbyCbyDbvsbyEbvPbyGbxkbyHbyIbyJbvwaafbxrbxrbxrbxrbALbxrbxrbxrbxraafbyNbyNbyNbyNbyNbyNbyNbAVaJibyPblMblNaJibwbbyRbyRbySbyTbxCbAXbyVbyWbyXbyYbyZbzabwmbzbbBqbzdbzebzfbzgbzgbzhbzibzgbzjbzkbckbaAbwubclbBsbcnbBtbzsbztbzubzvbzwbppbzxbpqbpqbzybsSbwtbzzbzAbzBbzCbzDbzAbzEbzFbzGbBwbzIbwwbwwbBxbnMbnMbzKbzLbzLbzLbzMbCJbylbymbrgbwJbrgbynbuRaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaacaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbzRbrJbwQbrJbzSbzSbzSbzSbwTbrKbzTbzUbdPbBEbgGbrNbBJbzWbzXbzYbgGblnbgGbzZbAabAbbAcbAdbyEbwIbAfbxkbxkbxkbAgbvwbAhbAhbBKbAhbBRbBQbBSbAjbBUbAjbAjbyNbAkbAlbAmbAnbBXbApbAqaJibAraRqaRpaJibxbbwYbxhbAvbAwbCcbAybAzbCdbABbACbADbAEbCnbAGbAHbAIbAJbAKbAIbxtbAMbANbAObnvblUbsdbCobsgbsfbaAbPObpjbxubxUbAYbAZbAZbppbBabBbbBcbppbBdbBebBfbBgbBhbBibBjbBkbBlbBlbBmbBnbBobTHbCrbBrbCwbCAbTIbBvbCEbCIbCHbCKbwGbwJbrgbwJbwJbCLbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBCbwNbBDbCYbrJbwQbrJbrJbrJbrJbrJbwTbrKbzTbBFbdPbBGbgGbBHbBIbgGbCZbgFbgGbgGbyjbvsbvtbAbbAcbAdbyEbvwbBLbBMbBNbBMbBObvwbDbbDabDdbDcbDfbDebDhbDgbDjbDibBVbyNbBWbzmbBYbBZbCabCabCbbDwbAraRqaRpaJibAsbCebCebySbCfbxCbCgbChbxCbCibCjbCjbCkbwkbClbCmbwkbwkbwkbwkbwkbwkbDIbwkbwkbwmbDKaXKaXKaXKaXKbDYbpjbwwbzAbzAbzAbzAbzAbzAbzAbzAbzAbzIbEibCsbCtbBhbCubCvbEjbCxbCxbCxbCybCzbEkbCBbCCbCDbEpbTGbCGbErbCGbEsbEubBzbuQbuRbEwbuRbuQbBBaafaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbCMbCNbCObrJbrJbrJbCNbrJbwTbrKbzTbCPbdPbCQbgGbrNbwXbgGbqlbCRbgGbgGbECbxcbvtbAbbCTbxcbCUbvwbCVbEKbCXbAWbxlbvwbEMbELbERbAhbEUbEUbEUbAjbEWbEVbEXbyNbDkbDlbDlbDmbDnbDobDpaJibDqbDrbDsaJibDtbEYbDvbEZbDxbDybDzbDAbyWbDBbFabCjbDDbwmbDEbDFbwmbDGbDHbFbbDJbFobDLbDMbCpbDNbDObBTbDQbDRbCpbVLbVMbDUbVAbDWbDXbDXbFrbDZbEabEbbEcbEdbEebEfbEabEgbEhbCvbFVbFFbGfbwwbwwbwwbwwbwwbGhbGgbEnbzKbzMbCJbEobGibCJbzKbzLbzMbGjbCJbGkaafcHOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGubExbGubEybEzbEAbEAbEAbEAbEAbEBbGAbEDbzTbEEbdPbEFbEGbEHbEIbEJbGDbGCbGWbGEbGvbtCbENbAbbEObEPbyEbvwbEQbHabESbBMbETbvwbBPbHibHjbAhaaaaaaaaabAjbHmbHlbFcbyNbFdbFebFfbFgbDnbDobFhaJibxwaRqaRpbHMbFjbFkbFlbFmbFnbHNbFpbFqbxCbxFbxFbHObxFbwkbFsbFtbFubFvbFwbFxbDJbFybDLbFzbFAbFBbDObFCbFDbFEbHPbVlbDXbHQbVAbFJbDXbDXbFKbFLbFMbFLbFLbFNbFObFPbFQbFRbFSbCvbHRbFUbHSbFWbFXbFYbFZbGabGbbGcbGdaafaafbCJbGebHUbHUbHVbIfbHZbIobEvaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGlbGmbGnbdPbdPbGobwNbwNbwNbGpbdPbdPbGqbGrbGsbdPbGtbGtbGtbIvbGtbGvbGwbGxbGybGzbtCbvtbAbbIAbGBbtCbtGbtGbtGbtGbtGbIBbtGbtGbtGbIDbtGbIUbIMbIXbtGbJbbtGbtGbtGbtGbtGbtGbtGaJiaJiaJiaJibxwaRqaRpbHMbJqbFkbCSbGGbCWbGIbGJbGKbGLbGMbGNbCjbGObGPbGQbGRbGSbGTbGUbGVbJrbGXbGYbGZbJDbHbbHcbHdbHecLVbCpbUSbUfbwwbwwbwwbwwbwwbJVbwwbwwbwwbzAbKfbzAbzAbHkbBhbCubCvbHRbKobKzbHnbHobHpbHqbGabGbbGcbHraaaaaabCJbHsbHtbEobCIbBybKBbKUbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaafaaaaaaaaabHuaafaaaaaaaaaaaabGtbHvbHwbHxbHybGvbHzbKVbHBbHCbtCbvtbAbbAcbAabHDbHEbHFbHGbHHbHIbHJbHKbHLbLabLxbLnbLzbAabAabLIbMhbLYbAabHTbAabzZbHHbKJbHWbHXbHYbMibxwaRqbDsaJlbDtbDubDtbDCbDPbxCbIbbIcbIdbIebMlbIgbIhbIibIjbIkbwmbIlbImbInbDJbDTbElbIpbIqcLUbFDbIsbItbIubCpbMpbIwbIxbIybUdbLybMqbICbMCbUcbIFbIGbIHbIIbIJbzAbIKbCubCvbMHbMFbINbIObIPbIQbIRbGabGbbISbEnbEnbEnbCJbCJbCJbMSbMPbCJbCJbBybCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeOblBbxmbuVbpHbuWbgnbgobuXbuWbgrbxpbjpbxvbvbbjpaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaabvcbvdbrJbvebvfbvfbvfbvfbvfbvgbvhbvfbvibxzbvkbvlbvmbvnbvobfmbvpbgGbxDbpzbvsbvtbvubvvbmGbmGbmGbvxbvybvzbvAbvBbvwaafbpObxHbvHbvJbvKbvMbvNbxIbpOaafbspbqMbvQbxnbedbvRbspbvSaJlbvTbcLbvUaJibvVbvWbvXblCbxObucbyobxTbyKbwdbwebwebwfbyMcdWcdVbwjbwkbpsbwmbwkbwkbwkbwkbyQbwkbwkaXKaXKaXKaXKaVJbpjbsJbsKbsLbwobwpbwqbwrbwsbwsbwsbsSbwtbqTbwvbwwbyUbwybnIbwzbwAbwBbwCbpCbwDbnIbwEbwFbnMbnMaaaaaaaaaaaaaafbuPbuQbuRbuQbuRbuQbuSaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbwMbwNbwObwPbrJbwQbrJbwRbwRbwRbwSbwTbrKbrJbrJbrLbwUbwVbwWbwXbrpbzcbxabgGbgGbugbxcbvtbvubxdbxebxfbzrbzHbxibxjbxkbxlbvwaafbxrbzNbzJbzObyLbxobzPbzVbxraafbspbqwbAebuBbedbAibspbtVaJlbxwbcLaRpaJibxxbxybAobxAbxBbxCbAtbxEbxCbxFbxGbqtbxFbwkbAxbxJbwkbwkbxKbxLbxMbxNbAAbxPbxQbxRbxSaXKbaybvraXKaVJbpjbxXbqZbqZbxYbxZbppbyabwsbwsbwsbsSbwtbybbwwbvDbUabTQbwwbyfbygbyhbyibpCbvLbnIbrqbykbnMaaaaaaaaaaaaaaaaafbwGbwHbrgcLebwJbwKbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbAFbypbAFbyqbyrbwQbrJbrJbrJbysbrJbwTbrKbytbdPbdPbyubgGbrNbwXbyvbywbyxbyybyybyzbyAbyBbyCbyDbvsbyEbvPbyGbxkbyHbyIbyJbvwaafbxrbxrbxrbxrbALbxrbxrbxrbxraafbyNbyNbyNbyNbyNbyNbyNbAVaJibyPblMblNaJibwbbyRbyRbySbyTbxCbAXbyVbyWbyXbyYbyZbzabwmbzbbBqbzdbzebzfbzgbzgbzhbzibzgbzjbzkbckbaAbwubclbBsbcnbsybzsbztbzubzvbzwbppbzxbpqbpqbzybsSbwtbzzbzAbzBbzCbzDbzAbzEbzFbzGbBwbzIbwwbwwbBxbnMbnMbzKbzLbzLbzLbzMbCJbylbymbrgbwJbrgbynbuRaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaacaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbzRbrJbwQbrJbzSbzSbzSbzSbwTbrKbzTbzUbdPbBEbgGbrNbBJbzWbzXbzYbgGblnbgGbzZbAabAbbAcbAdbyEbwIbAfbxkbxkbxkbAgbvwbAhbAhbBKbAhbBRbBQbBSbAjbBUbAjbAjbyNbAkbAlbAmbAnbBXbApbAqaJibAraRqaRpaJibxbbwYbxhbAvbAwbvYbAybAzbwZbABbACbADbAEbyObAGbAHbAIbAJbAKbAIbxtbAMbANbAObnvblUbsdbAubsgbsfbaAbPObpjbxubxUbAYbAZbAZbppbBabBbbBcbppbBdbBebBfbBgbBhbBibBjbBkbBlbBlbBmbBnbBobTHbCrbBrbCwbCAbTIbBvbCEbCIbCHbCKbwGbwJbrgbwJbwJbCLbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBCbwNbBDbCYbrJbwQbrJbrJbrJbrJbrJbwTbrKbzTbBFbdPbBGbgGbBHbBIbgGbCZbgFbgGbgGbyjbvsbvtbAbbAcbAdbyEbvwbBLbBMbBNbBMbBObvwbDbbDabDdbDcbDfbDebDhbDgbDjbDibBVbyNbBWbzmbBYbBZbCabCabCbbDwbAraRqaRpaJibAsbCebCebySbCfbxCbCgbChbxCbCibCjbCjbCkbwkbClbCmbwkbwkbwkbwkbwkbwkbBtbwkbwkbwmbDKaXKaXKaXKaXKbDYbpjbwwbzAbzAbzAbzAbzAbzAbzAbzAbzAbzIbEibCsbCtbBhbCubCvbEjbCxbCxbCxbCybCzbEkbCBbCCbCDbEpbTGbCGbErbCGbEsbEubBzbuQbuRbEwbuRbuQbBBaafaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbCMbCNbCObrJbrJbrJbCNbrJbwTbrKbzTbCPbdPbCQbgGbrNbwXbgGbqlbCRbgGbgGbECbxcbvtbAbbCTbxcbCUbvwbCVbEKbCXbAWbxlbvwbEMbELbERbAhbEUbEUbEUbAjbEWbEVbEXbyNbDkbDlbDlbDmbDnbDobDpaJibDqbDrbDsaJibDtbEYbDvbCcbDxbDybDzbDAbyWbDBbFabCjbDDbwmbDEbDFbwmbDGbDHbFbbDJbFobDLbDMbCpbDNbDObBTbDQbDRbCpbVLbVMbDUbVAbDWbDXbDXbFrbDZbEabEbbEcbEdbEebEfbEabEgbEhbCvbFVbFFbGfbwwbwwbwwbwwbwwbGhbGgbEnbzKbzMbCJbEobGibCJbzKbzLbzMbGjbCJbGkaafcHOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGubExbGubEybEzbEAbEAbEAbEAbEAbEBbGAbEDbzTbEEbdPbEFbEGbEHbEIbEJbGDbGCbGWbGEbGvbtCbENbAbbEObEPbyEbvwbEQbHabESbBMbETbvwbBPbHibHjbAhaaaaaaaaabAjbHmbHlbFcbyNbFdbFebFfbFgbDnbDobFhaJibxwaRqaRpbHMbFjbFkbFlbFmbFnbHNbFpbFqbxCbxFbxFbCdbxFbwkbFsbFtbFubFvbFwbFxbDJbFybDLbFzbFAbFBbDObFCbFDbFEbHPbVlbDXbHQbVAbFJbDXbDXbFKbFLbFMbFLbFLbFNbFObFPbFQbFRbFSbCvbHRbFUbHSbFWbFXbFYbFZbGabGbbGcbGdaafaafbCJbGebHUbHUbHVbIfbHZbIobEvaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGlbGmbGnbdPbdPbGobwNbwNbwNbGpbdPbdPbGqbGrbGsbdPbGtbGtbGtbCnbGtbGvbGwbGxbGybGzbtCbvtbAbbIAbGBbtCbtGbtGbtGbtGbtGbIBbtGbtGbtGbCobtGbIUbIMbIXbtGbJbbtGbtGbtGbtGbtGbtGbtGaJiaJiaJiaJibxwaRqaRpbHMbJqbFkbCSbGGbCWbGIbGJbGKbGLbGMbGNbCjbGObGPbGQbGRbGSbGTbGUbGVbDIbGXbGYbGZbJDbHbbHcbHdbHecLVbCpbUSbUfbwwbwwbwwbwwbwwbJVbwwbwwbwwbzAbKfbzAbzAbHkbBhbCubCvbHRbKobKzbHnbHobHpbHqbGabGbbGcbHraaaaaabCJbHsbHtbEobCIbBybKBbKUbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaafaaaaaaaaabHuaafaaaaaaaaaaaabGtbHvbHwbHxbHybGvbHzbKVbHBbHCbtCbvtbAbbAcbAabHDbHEbHFbHGbHHbHIbHJbHKbHLbLabLxbLnbLzbAabAabLIbMhbLYbAabHTbAabzZbHHbKJbHWbHXbHYbMibxwaRqbDsaJlbDtbDubDtbDCbDPbxCbIbbIcbIdbIebMlbIgbIhbIibIjbIkbwmbIlbImbInbDJbDTbElbIpbIqcLUbFDbIsbItbIubCpbEZbIwbIxbIybUdbLybMqbICbMCbUcbIFbIGbIHbIIbIJbzAbIKbCubCvbMHbMFbINbIObIPbIQbIRbGabGbbISbEnbEnbEnbCJbCJbCJbMSbMPbCJbCJbBybCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabMZaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbITbEmbIVbIWbNdbIYbIZbJabNfbtCbvtbJcbJdbJebJebJfbJgbJhbJibJjbJgbJfbJebJebNkbJkbJlbNqbJnbJobNBbJebJebJpbJgbJhbJibJjbJsbJtbJubJtbJvbJwbvUaJlbEtbEqbFHbGFbNLbGHbDzbHAbFibDVbxFbNQbCFbDSbDEbJGbwkbJHbJIbJJbDJbJKbJLbJMbJNbJObFDbJPbItbJObCpbJQbJRbIxbJSbJTbJUbNZbJWbObbJYbIFbJZbKabKbbKbbzAbKcbKdbKebOcbKgbKhbKibKjbKjbKkbGabGbbKlbEnbKmbOdbKnbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKpbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKvbKwbKxbKwbKyaaaaaaaaabGtbGtbOfbKAbIVbKAbOibKCbOnbKDbKEbtCbKFbvtbKGbKHbAabKIbAabzZbHHbKJbAabKKbKLbKMbKNbKObAcbAabKPbKQbHLbKRbHLbHLbKSbKTbODbOtbKWbKXbcLbKYaRpaRpaRpaJlbOEbFlbFnbOFbJmbOGbJybJxbFIbLgbLhbLibLjbHgbDEbIkbIabIzbHhbDJbDJbLobLobLobCpbLpbLqbLrbLsbLtbCpbLubLvbIxbLwbFGbLybOHbLAbLBbLCbIFbJCbLEbKbbKbbzAbRsbLFbCvbwwbLGbLHbOIbLJbLKbLLbGabLMbLNbLObLObLObLPbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbLQbLRbLSbLRbKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbLWbLXbOJbLVbLZbMabMbbGtbMcbMdbMebMfbMgbOLbOKbMjbMjbMkbtCbtCbtCbOMbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMmbMnbMobtCbtCbtCbtCbtCbONbtCbtCbtCaJlaJlbOQaJlaKSaMpbMraJlbKZbJXbORbGFbLdbxCbDzbLDbxCbMybMzbMAbMBbwkbOTbMDbMEbOUbMGbPubMIbMJbMKbMLbItbJObFDbFDbMMbJObCpbMNbMObMObMObMObMObMObMObMObMObMObPvbMQbMRbMRbzAbPAbMTbMUbwwbMVbMVbMVbMWbMXbMYbMVbMVbMVbMVbMVbMVbNabNbaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymbPCbLRbLRbNebKtbKtbLTbLTbPDbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbNsbNtbGvbNubNvbNwbNxaaaaaaaaaaaabNybNzbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPbqsbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbOxbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbRybEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbNgbNgbNgbRAbRzbKAbOSbRDbRBbKAbRFbOVbOWbGvbGvbGvbGvbGvbGvbOXbOYbOZbPaaaabPbbPcbPcbPdbPebPfbPgbPhbPfbPibNFbPjbPkbPlbNFbPmbNXbPobPpbPqbPrbPsbPtbPtbNSbRWbRJbPwbPxbPybDtbNYbLbbScbGFbGFbSgbDzbSibxCbSnbPEbSrbPGbwkbSubPIbwkbOkbPKbPLbOlbPNbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPPbQYbPRbOsbOsbOsbOsbSwbMObPTbLEbPUbPUbzAbBhbPVbPWbSEbPYbPYbSMbSObSNbSQbSPbSSbSRbSSbSVbMVbQfbSWbOObQhbTgbOpbQkaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQlbQmbQmbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbQnbQobTAbQqbQrbKAbKAbQsbQtbTObQvbQvbQvbQvbQvbQvbQwbQxbQyaaabQzbQAbUbbQCbQDbPfbQEbQGbQFbPfbNFbQIbQJbQKbNFbQLbQMbQNbQObQPbQQbQRbPtbQSbPxbQTbNUbPxbPxbQUbDtbPnbGFbQVbUkbGFbPzbDzbLebRCbQZbPBbUobRcbRGbDEbIkbSpbOkbPLbPLbOlbRfbMKbRgbRhbPJbRjbRkbRlbPMbRnbPObMObOsbOsbRobOsbOsbOsbOsbRpbMObRqbLEbRrbRrbzAbRsbRtbRubUqbRwbUGbUwbUPbUObUWbURbVkbVjbVvbVmbVybREbVGbVzbRHbRIbQibRKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbNsbNtbGvbNubNvbNwbNxaaaaaaaaaaaabNybNzbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPbqsbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbOxbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbHObEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbNgbNgbNgbRAbRzbKAbOSbRDbRBbKAbRFbOVbOWbGvbGvbGvbGvbGvbGvbOXbOYbOZbPaaaabPbbPcbPcbPdbPebPfbPgbPhbPfbPibNFbPjbPkbPlbNFbPmbNXbPobPpbPqbPrbPsbPtbPtbNSbRWbRJbPwbPxbPybDtbNYbLbbScbGFbGFbSgbDzbSibxCbSnbPEbSrbPGbwkbSubPIbwkbOkbPKbPLbOlbPNbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPPbQYbPRbOsbOsbOsbOsbSwbMObPTbLEbPUbPUbzAbBhbPVbPWbIvbPYbPYbSMbSObSNbSQbSPbSSbSRbSSbSVbMVbQfbSWbOObQhbTgbOpbQkaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQlbQmbQmbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbQnbQobTAbQqbQrbKAbKAbQsbQtbTObQvbQvbQvbQvbQvbQvbQwbQxbQyaaabQzbQAbUbbQCbQDbPfbQEbQGbQFbPfbNFbQIbQJbQKbNFbQLbQMbQNbQObQPbQQbQRbPtbQSbPxbQTbNUbPxbPxbQUbDtbPnbGFbQVbUkbGFbPzbDzbLebRCbQZbPBbUobRcbRGbDEbIkbSpbOkbPLbPLbOlbRfbMKbRgbRhbPJbRjbRkbRlbPMbRnbPObMObOsbOsbRobOsbOsbOsbOsbRpbMObRqbLEbRrbRrbzAbRsbRtbRubIDbRwbUGbUwbUPbUObUWbURbVkbVjbVvbVmbJrbREbVGbMpbRHbRIbQibRKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaabLVbRMbRNbRObLVbRPbMabMbbGtbGtbRQbRQbRQbGtbGtbNxbRRbRRbRSbRSbRSbRSbNwbQyaaabRTbRUbRVbVObRXbRYbRZbSabSbbSbbWgbSdbSebWibNFbPtbPtbPtbPtbPtbWkbPtbPtbShbWobSjbNUbPxbSkbSlbDtbQHbLbbQVbSmbWMbPzbSobJAbJBbSqbRabSsbStbJzbFsbSvbIEbSxbRibRbbSAbSBbMKbRmbSDbWVbRjbSfbSGbXabRnbPObMObMObMObRobOsbOsbOsbMObMObMObSIbSJbRrbRrbzAbSKbSLbCvbzIbXcbXfbXebSQbXibXqbXpbXvbXubYabXxbMVbQfbYobOObSXbSYbSybTaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbTcbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabTdbKwbTebKwbTfbYtaafaaaaaabGtbThbTibTjbGtaaabNxbTkbTlbTmbTnbTnbTnbTobQyaaabQzbTpbTqbTrbTsbPfbTtbTvbTubTwbNFbSzbTybTzbYwbTBbTBbTBbTCbTCbTDbTEbULbPxbPxbTFbNUbNUbNUbNUbDtbDtbLfbLkbLcbDtbTJbTKbTLbJFbJEbTJbQbbLlbLmbTRbTSbTJbMKbMKbMKbMKbMKbMKbTTbTUbTVbRjbTWbTXbTYbRnbPObMObTZbQWbPQbYHbYzbNWbNcbTZbUgbUhbUibIIbIJbzAbIKbSLbUjbwwbMVbMVbYMbYSbMVbMVbMVbMVbYYbSCbVFbMVbYZbUnbOObUpbZbbUrbOOaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbUsbUsbUsbUsbUsbUsbUtbLTbUubUsbTcbLTbLTbLTbLTbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabTdbKwbTebKwbTfbYtaafaaaaaabGtbThbTibTjbGtaaabNxbTkbTlbTmbTnbTnbTnbTobQyaaabQzbTpbTqbTrbTsbPfbTtbTvbTubTwbNFbSzbTybTzbYwbTBbTBbTBbTCbTCbTDbTEbULbPxbPxbTFbNUbNUbNUbNUbDtbDtbLfbLkbLcbDtbTJbTKbTLbJFbJEbTJbQbbLlbLmbTRbTSbTJbMKbMKbMKbMKbMKbMKbTTbTUbTVbRjbTWbTXbTYbRnbPObMObTZbQWbPQbYHbYzbNWbNcbTZbUgbUhbUibIIbIJbzAbIKbSLbUjbwwbMVbMVbYMbYSbMVbMVbMVbMVbYYbSCbVFbMVbRybUnbOObUpbZbbUrbOOaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbUsbUsbUsbUsbUsbUsbUtbLTbUubUsbTcbLTbLTbLTbLTbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMZaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbUvbNxbNxbNxbNxbRSbZcbNwbUxaaabUybPcbPcbUzbUAbPfbPfbUBbPfbSFbNFbUDbSHbSTbNFbSUbSUbSUbSUbSUbSUbSUbSUbUHbUIbUJbUKbUKbUMbNUbDtbUNbSZbTxbUQbZebwabUTbUUbTMbZibTNbUTbUYbUZbVabVbbUebTPbVdbVebVgbVhbVibUlbZrbUmbRjbUCbZsbUCbRnbPObMObVnbUFbVpbVqbVrbVsbVtbVubUgbzAbZubzAbzAbVwbCxbSLbCxbVxaafbnxbZvbZzblSbVBbZBbZLbZCbZObUVbMVbVHbVIbOObVJbVKbVKbwhaaLaaLaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwibLRbLRbLRbLRbLRbLRbLRbVNbLUbLTbLTbLTbLTbZPbLUbKuaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabVPbVQbVQbVRbVSbNxbVTbRSbVUbNxaaaaaaaaaaaabNybVVbVWbVXbVZbVYbPfbNFbWabWbbNIbNFbSUbUXbVfbVcbVDbVCbVEbSUcaqcaqcaqcaqcaqbTFbWjbZSbWlbWcbWdbZUbWpbxgbWrbWsbWtbWubWtbWvbWtbWwbWxbWybWzbWAbWBbWAbWCbWDbWEbWFbWGbWebWIbWfbWKbWLbZVbxVbMObxWcaabzlbWSbWTbWhbWSbWScanbWWbWXbWYbWZbCxbCxbSLbCxbFTaafbnxcaxcaxbXbcaJbXdcbdcaWbXgbXhbMVbVHcbebOObOObOObOObOOaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbQmbQmbQmbQmbQmbQmbXkbLTbQlbQmbXlbLTbLTbLTbLTbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXmcbfbWmcbgbRScbibXrbRSbXsbNxaaKaaaaaaaaabNybNybNybNybNybNybNybNFbUDbUEbXtbNFbSUbWnbWJbWHbWHbWJbWRbSUbXnbWUbWUbXocaqbXBbDtbDtbXCbXDbXEbXFbXGblRbXIbXJbXKbXLbXMbXNbXObXPbXQbXRbXSbXTbXUbznbzpbzobAPbzqbARbAQbATbAScbjbAUbYfbYgbIwbYhbVobCqbWObWNbWPbYmbYncbkbYpbYqbYrbYscbmbYrbYubYvbILaafbnxcbncbrbrBbVBcbtcbAcbycbDbYAbMVbVHbYBbYCbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbXlbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYDbVQbVQbVRbYEbYFbYGbNxcbJbNxbYIbYJbYKbYIbYIbYLcbLbYNbYObYPcbObXwbXzbXybYebXAbYjbWJbYybYxbYRbYQbYTcbQbYVbYUbYXbYWcaqbZhbNScbWbZjbZkbZlbZlbZmbnEbZobZpbTJbTJbZqcccbTJbTJccncceccrcaIcctbWQbZxbZyccubZybZAbZaccvbZabZAccEbYfbMNbIwbZEbXWbXVbZdccGbZJbZKbMObMObwwbwwbwwbwwbwwboIbnFbofbwwbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVccJbZQbZRbUnaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamccMaamaamaamaamaamaaaaaaaaaaaaaaaaaaaafaafaaabZfbZgbZgbZgbZHbZgbZgbZTbZIbYIbZYbZZbYIccQcabccScadbZWcafccYbZXcaecaccahcagcaibWJbYycajcakbYQcalbSUcaqcaqcaqcaqcaqcarbNSbDtcascatcdjcamcawcdmcaycazbTJcaocaBcaCcaDcaEcaFcaGcaHcaIbZxbWQcapbZycaKcaLbZAcaMcaNcaObZAbXXbYfbPObIwbXYcdpbXZbXYbXYbIwbIwbIwcaRcaScaTcaUcaVbwwbwwcdBbwwbwwcaXcaYcaucaAcavcdNcaZcbacbccdUcdTcdZcdYcbhbUnbUnbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbUubUsbUsbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcbbceccebcblcedceicefcbpcbobYIcelcbsbYIbYIcercbucbvcbwcbxceucbqbXzbXybYecbzcevbWJbWJcbBcbCbWJcexbSUcbFcbGcaqcbHcaqbTFcbIcbIcbIcbIcbIcbIcbIbTJceCcbEbTJcbKcbMcbNceHcaEcbPceIceKcaIbZxbWQcbRbZycbScbTbZAcbUcbVcfebZAccqbYfbYbbYdbYcbYiccsccAbYccfibYkbYlcktbZDbZwbZFcktcfjbZGccCccBcfkccDccPccFcfscfmcfGcfucfmcfIcfMcfLcfRccwccxccycczbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafccRccRcebccTcfZceiccUccWccVbYIcgeccHccIcgfccKccLcgmccNccOcgoccXcdaccZcdecdbcgBcdycdQcdFcekceecemcgCcdccddaJEcdfcaqbTFcbIcdgcdhcdicgOcdkcdlcgRcdncdocgWcdqcdrcdscdtcaEcducdvcdwcaIbZxbWQcenbZycdxceobZAcdzcdAcepbZAcaPbYfbYfcaQbYccbYcbXcbZbYcchBccacjfcdLcdLbyFbBucdLcdOcdPceqcdRcdOcdSbBpbyebydcdScdScdScdScgXbyebydcdScdSbXjcdXcgZcgYceachachdchbbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycchicegcegcehbKtbKtbLTbLTchnbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcejcejcejcejcejcejcetcesbYIbYIbYIbYIbYIchpchuchqchqchqchzcewbXzbXybYeceybYjceEceTceSceWceUceXbSUcezaJFceYaJFcaqbTFcbIceDcfacfacfaceFceGbTJchPchLbTJcbKcbNceJceHcaEchSceLceMcaIbZxbWQceNbZyceOcePbZAbZAbZAbZAbZAccbceRbYfcaQbYcccdchYbYcbYcchBcifcjfcdLceZcfbcfbcfccdOcfdciycffcdOcfgcfhcfhcfhciCciLciKcflciPcfncfocfpcdScfqcfrciQbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaafaafcftcfBcfvbNebKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcejcfwcfxcfycfzcfAcejcfDcfCcfFcfEcfHciVcjacjacfKcfJcfJcjlcjpcbqbXzbXybYecfNcaicfOcfQcfPcfUcjqcggbSUaJFaJFcaqceBcaqbTFcbIcfVcfWcfWcfWcfXcbIcfYcjtcgacfYcgbcgccgdcjvcaEcjCceLcgicaIcghccfcgjbZycgkcglbZycjIbLvbVicgnccgcchbYfccjcciccicckcclcclcclcclccmcdLckncgycgycgzcgActscgrcgpcgucgtcgGcgGcgGcgxcgIcgIcgJckocgLcgDcgMcdScgNckCcgPcgNaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcgQbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaaaaacgScgTcgTcgTcgUcgVcejcgHcgFckFcgKckQckNclgclfcluclpclCchcchfchechhchgchjclGbSUbSUbSUbSUbSUbSUbSUbSUcmgclVcaqcmkcaqbTFcbIcbIctpctqctrcbIcbIchrchschtcfYcaEcaEcaEcaEcaEcaIchkchlcaIchwcmpchwbZychychmbZychAchBbVichCbVichDbYfccobYfbYfccpcdCcdCcdCcdDbYfcdLchIchJchJchKcmschMchochOcmwchQckLckLckLckLcmBchvckLcmGckLchEchFcdSchZciachGcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabVPbVQbVQbVRbVSbNxbVTbRSbVUbNxaaaaaaaaaaaabNybVVbVWbVXbVZbVYbPfbNFbWabWbbNIbNFbSUbUXbVfbVcbVDbVCbVEbSUcaqcaqcaqcaqcaqbTFbWjbZSbWlbWcbWdbZUbWpbxgbWrbWsbWtbWubWtbWvbWtbWwbWxbWybWzbWAbWBbWAbWCbWDbWEbWFbWGbWebWIbWfbWKbWLbZVbxVbMObxWcaabzlbWSbWTbWhbWSbWSbSEbWWbWXbWYbWZbCxbCxbSLbCxbFTaafbnxcaxcaxbXbbUqbXdbVycaWbXgbXhbMVbVHcbebOObOObOObOObOOaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbQmbQmbQmbQmbQmbQmbXkbLTbQlbQmbXlbLTbLTbLTbLTbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXmcbfbWmcbgbRScbibXrbRSbXsbNxaaKaaaaaaaaabNybNybNybNybNybNybNybNFbUDbUEbXtbNFbSUbWnbWJbWHbWHbWJbWRbSUbXnbWUbWUbXocaqbXBbDtbDtbXCbXDbXEbXFbXGblRbXIbXJbXKbXLbXMbXNbXObXPbXQbXRbXSbXTbXUbznbzpbzobAPbzqbARbAQbATbAScbjbAUbYfbYgbIwbYhbVobCqbWObWNbWPbYmbYnbVzbYpbYqbYrbYscbmbYrbYubYvbILaafbnxcbncbrbrBbVBcbtcbAcbycbDbYAbMVbVHbYBbYCbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbXlbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYDbVQbVQbVRbYEbYFbYGbNxcbJbNxbYIbYJbYKbYIbYIbYLcbLbYNbYObYPcbObXwbXzbXybYebXAbYjbWJbYybYxbYRbYQbYTbYZbYVbYUbYXbYWcaqbZhbNScbWbZjbZkbZlbZlbZmbnEbZobZpbTJbTJbZqcccbTJbTJccncceccrcaIcctbWQbZxbZyccubZybZAbZaccvbZabZAccEbYfbMNbIwbZEbXWbXVbZdccGbZJbZKbMObMObwwbwwbwwbwwbwwboIbnFbofbwwbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVccJbZQbZRbUnaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamccMaamaamaamaamaamaaaaaaaaaaaaaaaaaaaafaafaaabZfbZgbZgbZgbZHbZgbZgbZTbZIbYIbZYbZZbYIccQcabccScadbZWcafccYbZXcaecaccahcagcaibWJbYycajcakbYQcalbSUcaqcaqcaqcaqcaqcarbNSbDtcascatcdjcamcawcdmcaycazbTJcaocaBcaCcaDcaEcaFcaGcaHcaIbZxbWQcapbZycaKcaLbZAcaMcaNcaObZAbXXbYfbPObIwbXYcanbXZbXYbXYbIwbIwbIwcaRcaScaTcaUcaVbwwbwwcdBbwwbwwcaXcaYcaucaAcavcdNcaZcbacbccdUcdTcdZcdYcbhbUnbUnbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbUubUsbUsbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcbbceccebcblcedceicefcbpcbobYIcelcbsbYIbYIcercbucbvcbwcbxceucbqbXzbXybYecbzcaJbWJbWJcbBcbCbWJcexbSUcbFcbGcaqcbHcaqbTFcbIcbIcbIcbIcbIcbIcbIbTJceCcbEbTJcbKcbMcbNceHcaEcbPceIceKcaIbZxbWQcbRbZycbScbTbZAcbUcbVcfebZAccqbYfbYbbYdbYcbYiccsccAbYccfibYkbYlcktbZDbZwbZFcktcfjbZGccCccBcfkccDccPccFcfscfmcfGcfucfmcfIcfMcfLcfRccwccxccycczbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafccRccRcebccTcfZceiccUccWccVbYIcgeccHccIcgfccKccLcgmccNccOcgoccXcdaccZcdecdbcbdcdycdQcdFcekceecemcbkcdccddaJEcdfcaqbTFcbIcdgcdhcdicgOcdkcdlcgRcdncdocgWcdqcdrcdscdtcaEcducdvcdwcaIbZxbWQcenbZycdxceobZAcdzcdAcepbZAcaPbYfbYfcaQbYccbYcbXcbZbYcchBccacjfcdLcdLbyFbBucdLcdOcdPceqcdRcdOcdSbBpbyebydcdScdScdScdScgXbyebydcdScdSbXjcdXcdpcbQceachacevcdGbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycchicegcegcehbKtbKtbLTbLTchnbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcejcejcejcejcejcejcetcesbYIbYIbYIbYIbYIchpchuchqchqchqchzcewbXzbXybYeceybYjceEceTceSceWceUceXbSUcezaJFceYaJFcaqbTFcbIceDcfacfacfaceFceGbTJchPchLbTJcbKcbNceJceHcaEchSceLceMcaIbZxbWQceNbZyceOcePbZAbZAbZAbZAbZAccbceRbYfcaQbYcccdcgBbYcbYcchBcifcjfcdLceZcfbcfbcfccdOcfdciycffcdOcfgcfhcfhcfhciCciLciKcflciPcfncfocfpcdScfqcfrciQbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaafaafcftcfBcfvbNebKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcejcfwcfxcfycfzcfAcejcfDcfCcfFcfEcfHciVcjacjacfKcfJcfJcjlcjpcbqbXzbXybYecfNcaicfOcfQcfPcfUcjqcggbSUaJFaJFcaqceBcaqbTFcbIcfVcfWcfWcfWcfXcbIcfYcjtcgacfYcgbcgccgdcjvcaEcjCceLcgicaIcghccfcgjbZycgkcglbZycjIbLvbVicgnccgcchbYfccjcciccicckcclcclcclcclccmcdLckncgycgycgzcgActscgrcgpcgucgtcgGcgGcgGcgxcgIcgIcgJckocgLcgDcgMcdScgNcgCcgPcgNaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcgQbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaaaaacgScgTcgTcgTcgUcgVcejcgHcgFckFcgKckQckNclgclfcluclpclCchcchfchechhchgchjclGbSUbSUbSUbSUbSUbSUbSUbSUcmgclVcaqcmkcaqbTFcbIcbIctpctqctrcbIcbIchrchschtcfYcaEcaEcaEcaEcaEcaIchkchlcaIchwcgYchwbZychychmbZychAchBbVichCbVichDbYfccobYfbYfccpcdCcdCcdCcdDbYfcdLchIchJchJchKcmschMchochOcmwchQckLckLckLckLcmBchvckLcmGckLchEchFcdSchZciachGcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEchHcmPchHcgEchNcmQchNcgEchRcmRchRcgEaaaaaaciicgTcgTcgUcgUcijcejchUchTchWchVcmXchXcidciccnecieciecigciecbqbXzcihbYecikcimcilciocinciocipcirciqciqciAciAciAciAbTFciGciHciIciIciJcnfcngciMciXciOcnucnhciRciSciSciTciUcaIcaIcaIcnwcdEckqbZybZybZybZychBchBbViciYbViciZbYfccobYfaaaaaaaaaaaaaaaaaaaaacdLcjgcisciucitcjjcjkcivcjmcjncjociwcjocjocixcjrcjscgIcnEcgIciWcjucdScnFcjwcjxcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEchHcjbchHcgEchNcjcchNcgEchRcjdchRcgEaaaaaaciicgTcgUcgUcgUcjBcnIcjhcjechWcjicnLcnKcnPcnNcjzcjycjDcjAcjEcbqbXzcjFchjcjGcnQcjHcjJcjJcjJcjKcjMcjLcjNcolcjOceAciAbTFciGckaciIckbckcckdcubckfckgckhctQckjckkcklciSckmciUconcoqckpcjQcjPcdHcdGcdIcdIcdJcdIcdKbVibVibVibVibYfccobYfaaaaaaaaaaaaaaaaaaaaacdLcorcjRcjTcjSckEcdOcotcdOckGckHcjXcjUcjUcjYcgIcgIckecjZcjUckickOcdSckPcoyckRcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEckrckuckscgEckzckBckAcgEckDckJckIcgEaaaaafciiclbcgTcgUcgUcgUcejckMckKchWchWcoAchWchWchWchWckTcieckWckYcbqclackZcldclccoBcleclhclhclhclicljcljclkciAcllcgqclwclxciGclyciIclzclAclBcoCclDclEclFcoFclHclIclJciSclKciUcoJcoLclNclnclmclQclNclRclSclTbYfceQcdIcdIcdIcdIcdIcltbYfaaaaaaaaaaaaaaaaaaaaacdLcmacmbcmccmdcdOcmecmfcpdcdScmhcmicmicmiclvcpfcmlclPclOcmicmicmncdScmocpgcmqcmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafcgEclXcmmcmjcgEcmtcmmcEgcgEcmtcmmcEgcgEaaaaafcmzcgTcgTcgUcgUcmAcejcmvcmucmxcpocprcmycmCcmCcmEcmDcmCcmFcpycbqcmIcmHcmKcmJcimcmLcmLcmMcljcmNcpAcmOcmOciAcibceVcpBcqgciGcnbciIcnccndcpCciGcmSciNcmWcfYcpGcnicnjciScnkciUclLclMclNcnlcpHcnlclNaaaaaaaaabYfbYfbYfcnnclSclSclTbYfbYfaaaaaaaaaaaacdOcdOcdOcdOcdOcdOcdOcdOcdOcnocnpcnqcdScdScnrcnscntcdScdScdScdScpIcnscntcdScdScnvcpNcnvaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaafaafaafaaaaafcnxaafcnxaafcKAaafcpOaafcKAaafcpOaafaafaaacejcnAcnBcgUcgUcnCcnDcpRcpPcnycnmcpUcnzcnzcqecnzcnGcqrcnHcnGcnJcqtcqscqAcnMcnOcnOcnOcnOcqIcqDcnRcnRcnRcgscgscgscgscnSciGcnTcnUcnccnVcnWciGcmSciNcnXciUcnYcnZcnjcoacobciUclLclMclNcoccodcoeclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaacdOcofcogcohcwlcojcokcqLcomcqNcopcoocdOaaLaafaafaafaafaaaaaaaaacqOaaaaaaaaaaafcoscqWcosaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafcoucrvcracoxcovcowcrzcoxcrQcrUcrzcoDcrVcrXcoEcnycnycnycnycnycnycnycnycoHcoGcrZcoIcsacoKcoNcoMcoOcnGcoQcoPcoRcnGcoTcoScoUcnOcoWcoVcoYcoXcpacoZcpjcpbcpbcpkcpncpncpjcsbciGciGcpccscciGciGciGcpeciNcsdciUciUciUcsecphciUciUclLcpiclNcvmcpscvmclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaafcdOcplcpmcplcsgcLZcppcpqcomcomcsicomcdOcdOaaaaaaaaaaafaafaaaaacaaaaaaaaaaaaaafaaacsnaaaaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEchHcjbchHcgEchNcjcchNcgEchRcjdchRcgEaaaaaaciicgTcgUcgUcgUcjBcnIcjhcjechWcjicnLcnKcnPcnNcjzcjycjDcjAcjEcbqbXzcjFchjcjGcnQcjHcjJcjJcjJcjKcjMcjLcjNcolcjOceAciAbTFciGckaciIckbckcckdcubckfckgckhctQckjckkcklciSckmciUconcoqcgZcjQcjPcdHchbcdIcdIcdJcdIcdKbVibVibVibVibYfccobYfaaaaaaaaaaaaaaaaaaaaacdLcorcjRcjTcjSckEcdOcotcdOckGckHcjXcjUcjUcjYcgIcgIckecjZcjUckickOcdSckPchdckRcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEckrckuckscgEckzckBckAcgEckDckJckIcgEaaaaafciiclbcgTcgUcgUcgUcejckMckKchWchWcoAchWchWchWchWckTcieckWckYcbqclackZcldclccoBcleclhclhclhclicljcljclkciAcllcgqclwclxciGclyciIclzclAclBcoCclDclEclFcoFclHclIclJciSclKciUcoJcoLclNclnclmclQclNclRclSclTbYfceQcdIcdIcdIcdIcdIcltbYfaaaaaaaaaaaaaaaaaaaaacdLcmacmbcmccmdcdOcmecmfcpdcdScmhcmicmicmiclvcpfcmlclPclOcmicmicmncdScmochYcmqcmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafcgEclXcmmcmjcgEcmtcmmcEgcgEcmtcmmcEgcgEaaaaafcmzcgTcgTcgUcgUcmAcejcmvcmucmxcpocprcmycmCcmCcmEcmDcmCcmFckpcbqcmIcmHcmKcmJcimcmLcmLcmMcljcmNcpAcmOcmOciAcibceVckCcqgciGcnbciIcnccndcpCciGcmSciNcmWcfYcpGcnicnjciScnkciUclLclMclNcnlcpHcnlclNaaaaaaaaabYfbYfbYfcnnclSclSclTbYfbYfaaaaaaaaaaaacdOcdOcdOcdOcdOcdOcdOcdOcdOcnocnpcnqcdScdScnrcnscntcdScdScdScdScpIcnscntcdScdScnvcpNcnvaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaafaafaafaaaaafcnxaafcnxaafcKAaafcpOaafcKAaafcpOaafaafaaacejcnAcnBcgUcgUcnCcnDcpRcpPcnycnmcpUcnzcnzcqecnzcnGcqrcnHcnGcnJcoycmpcpgcnMcnOcnOcnOcnOcqIcqDcnRcnRcnRcgscgscgscgscnSciGcnTcnUcnccnVcnWciGcmSciNcnXciUcnYcnZcnjcoacobciUclLclMclNcoccodcoeclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaacdOcofcogcohcwlcojcokcqLcomcqNcopcoocdOaaLaafaafaafaafaaaaaaaaacqOaaaaaaaaaaafcoscpycosaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafcoucrvcracoxcovcowcrzcoxcrQcrUcrzcoDcrVcrXcoEcnycnycnycnycnycnycnycnycoHcoGcrZcoIcsacoKcoNcoMcoOcnGcoQcoPcoRcnGcoTcoScoUcnOcoWcoVcoYcoXcpacoZcpjcpbcpbcpkcpncpncpjcsbciGciGcpccscciGciGciGcpeciNcsdciUciUciUcsecphciUciUclLcpiclNcvmcpscvmclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaafcdOcplcpmcplcsgcLZcppcpqcomcomcsicomcdOcdOaaaaaaaaaaafaafaaaaacaaaaaaaaaaaaaafaaacpBaaaaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaaaaaaaaaafcptcsDcpucpxcpwcpFcsLcsMcpzcsWcsQcpEcpDcsXcpFcpLcpJcsYcpMcpQcsZctbcpTcpWcpVcpYcpXcqacpZcqccqbctccqdcticqfctkcqzcoTcqJcqKcnOcpacpacpacpacpacqMcpjcqPcqPcqPcpncpncpjbTFcrYciGcqhcqicqjcqkciGcqlciNcqmciUcqncqocqpcqqciUctmclLcpiclNctxcqQcquclNaaaaaaaaaaaaaaaaaacqvcqwcqxcqycqvaafaaaaaaaaaaaacdOcplcplcplcoictBcqBcqCctIcqEcqFcqGcqHcdOaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaafaaacmZaaaaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafcqRcqYcqScqVcqUcpFcqXcpFcvWcqYcqXcpFcvWcqYcpFcpFcpFcpFcpFcqZcpFcpFcpFcrbctOcrdcrcctScpZcrfcrecrhcrgcrjcricrlcrkcoTcqJcrmcnOcrncpacpacrocpacrpcpjcrIcrKcrJcrKcrLcpjbTFcrqciGcrrcrscrtcructTcrwcrxcryctVcrAcrBcrCcrDciUcrEcrFcrGcrHcqvcuacqvcrHaaaaaaaafaaaaaaaaacqvcrRcrTcrScqvaafaafaaaaaaaaacdOcomcomcomcomcrMcppcrNcrNcrNcnpcrNcrOcdOaaaaaaaaaaaaaaacrPcrPcrPccMaafaafaafaafcnaaafaafaafaafaafaaqcrPcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcptcpFcrccpFcrccpFcqXcpFcuecxacufcxaculcxacxacuycurcpFcpFcuLcuEcuEcuEcuYcuUcvkcvkcvlcpZcvncshcsjcnGcsmcskcvscnGcspcsocsrcsqcstcsscsvcsucpacswcpjcsxcrKcsycrKcsKcpjbTFcizciGcszcsAcsBcsCciGcfYcvtcfYciUcsEcsFcsGcsHciUcsIcrGcrGcqvcsJcsNcvvcqvcqvcqvcqvcqvcqvcqvcqvctMctDctNcqvcqvcqvcrHaaaaaacdOcofcogcohcslcsRcqBcrNcrNcrNcnpcrNcsScdOaaaaaaaaaaaaaaacrPaaaaafaaaaafaaaaaaaaackxaaaaafaafaaaaaaaaaaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7560,25 +7555,25 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaccMaaaaaaaaaaaacptcpFcpFcpFcpFcpFcqXcpFcpFcpFcqXcpFcpFcpFcpFcpFcvWcpFcpFctScpFczncpFcpFczncznczocpFcpFcvZcvYcwgcwgcwgcwgczqcwkcoTcwocwpcsqcwqcpacwscvCcpacwtcpjcwucrKcwvcwxcwwcpjczrcvMcvNcwIcwJcwKcwLcwMcwNcwOcvNcwPcwQcrGaaaaaaaaaaaaaaaaaacqvcwRcwycwAczBcwCcwBcwEcwDcwGcwFcwTcwScwVczFcuWcuQcxecqvaaaaaacdOcofcogcohckXcsRcuZcxgcxhcxhcxicxjcxkczLcxmcxncdOaaaaaacrPaaaaafaaaaafaafaafaaackxaaaaafaaaaafaaaaafaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcpFcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcpFcpFcvWcpFcpFczXczVcAhctdctdcAhcAtcAhcxlcAvcAwctdcAAcAxcAHcADcAJcwkcoTcxucoTcxvcxwcpacpacxAcpacxBcpjcxCcxCcxDcwxcwwcpjbPxcvMcvNcxKcxLcxMcxNcxOcxNcxPcvNcxQcxRcrGaaaaaaaaaaaaaaaaaacqvcxScxTcxUcAUcxWcxXcxYcxZcuTcBkcuScxEcuTcBmcqvcqvcqvcqvaaaaaacdOcplcpmcplcBncLZcppcrNcrNcyecyfcrNcBqcomcomcomcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBsaaaaaacBsaaaaaaaaacBsaaaaaaaaaaaaaaacBsaaaaaaaaacBsaaaaaacBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFczmcrWcrWczpcxGcrWczpcrWcxIcBucuEcuEcBzcuEcBAcuEcuEcuYcBDczncpFcpFcyjcylcykcyncBEcyocpFcBHcyqcyscyscBIcytcoTcxucyvcnOcywcpacyxcpacBKcyycpjcpjcpjcpjcpjcpjcpjbPxcvMcvNcyMcyNcxLcyOcxLcxNcyPcvNcyQcBLcrGaaaaaaaaaaaaaaaaaacqvcuVcBOctFctFcyTcyAcyVcyWctMctDctNcyBctMcvhcyYcqvaaaaaaaaaaaacdOcplcplcplckXcBRczacrNcrNcrNcyfcrNczbcrNczccrNczdaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaacBscBscBscBsaaaaaaaaacBscBscBscBscBscBscBsaaaaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFcqXcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcyCcpFcvWcpFcpFcpFcyDczncpFcpFcBScAtctfcyGcwgcCccwgcwgcyqcCecyIcCfcytcoTcxucoTcnOcyUcyLczecyXczfcpacnOczgczJczJczhcCicClczNczOcvNcxNczPczQcxNczRczSczTcvNczUcCncrGaaaaaaaaaaaaaaaaaacqvczWcuMcCBcuVczYczZcAactFcAbcAccsPcyBczWczjcAecqvaaaaaaaaaaaackEcdOcAfcAgcAgczkcAicAjcAkcAlcAmcAncAocApcAqcokcAraaaaaacrPaafcwjcwjcwjcwjcwjaaackxaafcwjcwjcwjcwjcwjaaacrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaaaczlcpFcqXcpFcCFcxacufcxacCJcxacufcxacCJcxacxccxacxbcCKctectdcCNctfczsczucztczwczvczxcwgczzczycwgcwgcwgcwgcwgczAcqtcCOcqtcnOcnOcnOcnOcnOcnOcnOcnOczDczJczJczEcANcAObPxcAPcvNcAQcARcCQcATcCYcAVcAWcvNcAXcAYcrGaaaaaaaaaaaaaaaaaacqvcuQcAZcAectFcBacBbcBcctFcBdcBeczHczGczIcBeczKcqvaafaafaaaaaaaaaaaabquaaacdOcBlcDmcDacBocBpcDmcDpcBrcBpcDmcDtcdOaaaaaaccMaaaaafaaaaafaaaaafaaackxaaaaafaaaaafaafaafaafcrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaaaaaaaaaaaIaaaaaacAdcpFcqXcpFcDxcylcqXcpFcDNcylcqXcpFcAucylcpFcpFcDOcpFcDUcylcEccAzcAycABcEicErcACcAEcwgcEycAFcEBcAIcAKcumcAMcALcumcAScumcBfcuocBgcBicBhcBhcBjcEXcBVcBWcBWcBXcBYcAObPxcBZcvNcvNcCacCbcFecCbcCacCdcvNcrGcFgcrGaaaaaaaaaaaaaaaaaacqvctFcFrcuVctFcCgcChcFCctFcCjcCkcqycgvcBtcCkcCocrHaaaaaaaaaaaaaaaaaacgwaafcdOcCqcFEclUcomclscFFclqcomclocFKclWcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFcqXcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcyCcpFcvWcpFcpFcpFcyDczncpFcpFcBScAtctfcyGcwgcCccwgcwgcyqcCecyIcCfcytcoTcxucoTcnOcyUcyLczecyXczfcpacnOczgczJczJczhcCicqsczNczOcvNcxNczPczQcxNczRczSczTcvNczUcCncrGaaaaaaaaaaaaaaaaaacqvczWcuMcCBcuVczYczZcAactFcAbcAccsPcyBczWczjcAecqvaaaaaaaaaaaackEcdOcAfcAgcAgczkcAicAjcAkcAlcAmcAncAocApcAqcokcAraaaaaacrPaafcwjcwjcwjcwjcwjaaackxaafcwjcwjcwjcwjcwjaaacrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaaaczlcpFcqXcpFcCFcxacufcxacCJcxacufcxacCJcxacxccxacxbcCKctectdcCNctfczsczucztczwczvczxcwgczzczycwgcwgcwgcwgcwgczAcoycqtcoycnOcnOcnOcnOcnOcnOcnOcnOczDczJczJczEcANcAObPxcAPcvNcAQcARcCQcATcCYcAVcAWcvNcAXcAYcrGaaaaaaaaaaaaaaaaaacqvcuQcAZcAectFcBacBbcBcctFcBdcBeczHczGczIcBeczKcqvaafaafaaaaaaaaaaaabquaaacdOcBlcDmcDacBocBpcDmcDpcBrcBpcDmcDtcdOaaaaaaccMaaaaafaaaaafaaaaafaaackxaaaaafaaaaafaafaafaafcrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaaaaaaaaaaaIaaaaaacAdcpFcqXcpFcDxcylcqXcpFcDNcylcqXcpFcAucylcpFcpFcDOcpFcDUcylcEccAzcAycABcEicErcACcAEcwgcEycAFcqAcAIcAKcumcAMcALcumcAScumcBfcuocBgcBicBhcBhcBjcqWcBVcBWcBWcBXcBYcAObPxcBZcvNcvNcCacCbcFecCbcCacCdcvNcrGcFgcrGaaaaaaaaaaaaaaaaaacqvctFcFrcuVctFcCgcChcFCctFcCjcCkcqycgvcBtcCkcCocrHaaaaaaaaaaaaaaaaaacgwaafcdOcCqcFEclUcomclscFFclqcomclocFKclWcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafaafaafaaIaafaafcAdcpFcFLcBycBxcFVcFUcBCcBBcGgcFWcBGcBFcGhcpFcBvcGocGucBJcBMcGvcnycnycnycnycnycnycnycnycGAcBNczAcBPcBQcoTcGEcoTcoTcxucoTcoTcGMcoTcBQcBTcCpcBUcCrcGOcHjcHacCPcHCcAObPwcCRcCScCTcCacAGcAVcBwcCacCtcCscCucHVcCXaaaaaaaaaaaaaaaaaacqvcCvctDcuQcIAcDbcuQcDccDdcDeaafaaachxcCxcCwcCyaaaaaaaaaaacaaaaaaaaaaaaaaacdOcDhcplcplcomcDicplcplcomcDicplcplcdOaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcCzaaaaaaaaIaaaaaacCAcCCcIMcCEcCDcCGcIRcCHcCDcCGcIRcCHcCDcCGcCIcCIcITcCHcCDcCGcIZcnyaaacCMcCLcCVcCUcCZcCWcDjcDgcDkcDkcJhcDlcDocDncDqcJlcDncDqcDocDrcJpcDscDrczAczAcAOcJAcJzcDPcDQcAObNUcDRcDScDTcCacCbcJBcCbcCacDvcDucDfaafaaaaaaaaaaaaaaaaaaaaacqvcCvcDVcDwcDXcDXcDwcsPcDYcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcDZcplcplcomcEacplcplcomcEacplcplcdOaaaaaacrPaafcwjcwjcwjcwjcwjaaackxaaacwjcwjcwjcwjcwjaaacrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcCzaaaaaaaaIaaaaaacCAcCCcIMcCEcCDcCGcIRcCHcCDcCGcIRcCHcCDcCGcCIcCIcITcCHcCDcCGcIZcnyaaacCMcCLcCVcCUcCZcCWcDjcDgcDkcDkcJhcDlcDocDncDqcJlcDncDqcDocDrcsncDscDrczAczAcAOcJAcJzcDPcDQcAObNUcDRcDScDTcCacCbcJBcCbcCacDvcDucDfaafaaaaaaaaaaaaaaaaaaaaacqvcCvcDVcDwcDXcDXcDwcsPcDYcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcDZcplcplcomcEacplcplcomcEacplcplcdOaaaaaacrPaafcwjcwjcwjcwjcwjaaackxaaacwjcwjcwjcwjcwjaaacrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcJCcJFcJFcJUcJFcJFcJFcJFcJVcJFcKdcJFcJVcJFcKdcJFcJVcJFcKdcJFcJFcJFcKdcJFcKdcJFcKoaafaaacDzcDycDBcDAcDDcDCcDjcDEcDkcDFcDHcDGcDJcDIcDLcDKcDWcDMcDJcEbcEdcKpcDraaaaafcAOcKqcECcEDaafaaabNUbPxbPxbSkcCaclZcEFclYcCaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcEecuXcEfcEJcEJcEfcuQcEKcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcplcplcplcomcELcplcplcomcELcplcplcdOaacaaacrPaaaaaaaafaafaafaaaaaacmTaafaaaaaaaafaafaaaaaacrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaacrPaafaafaaaaaqaaaaaaaafcgEcmtcmmcEgcgEcmtcmmcEgcgEcmtcmmcEhcgEaaacgEcEgcmmcEhcgEaaaaafaaacDzcEjcElcEkcEncEmcEpcEocDkcEqcEscKBcDJcEtcEvcEucExcEwcDJcKCcEAcEzcDraaaaaacAOcKDcFhcFiaaaaaabNUbPxbPxbNUcCacmUcmUcmUcCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcEEcFncuQcuQcuQcuQcuQcFocqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackEcdOcdOcdOcdOcdOcdOcdOcdOcmYcmYcmYckEaaaaaacrPcrPcrPcrPcrPaaaaaaaaacmZaaaaaaaaacrPcrPcrPccMcrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaafaafaaIaaaaaaaafcgEcEGcEIcEHcgEcEMcEOcENcgEcEPcERcEQcgEaafcgEcEScEUcETcgEaaaaafaaacDzcEVcDBcEncEncEWcEYcKEcFacEZcFccFbcKFcFdcFjcFfcFlcFkcFpcFmcKGcFqcDraafaaacFJcKIcKHcAOcKJaaabNUcFMcKKcFNcFOaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrHcqvcqvcFPcFQcEfcEfcEfcFRcFPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqpbqpbqpaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafcfTaafcrPaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaafaafaaIaaaaaaaafcgEcEGcEIcEHcgEcEMcEOcENcgEcEPcERcEQcgEaafcgEcEScEUcETcgEaaaaafaaacDzcEVcDBcEncEncEWcEYcKEcFacEZcFccFbcKFcFdcFjcFfcFlcFkcFpcFmcClcFqcDraafaaacFJcKIcKHcAOcKJaaabNUcFMcKKcFNcFOaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrHcqvcqvcFPcFQcEfcEfcEfcFRcFPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqpbqpbqpaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafcfTaafcrPaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaafaafcgEcFscFtcFscgEcFucFvcFucgEcFwcFxcFwcgEaaacgEcFwcFwcFycgEaaaaafaaacDzcCLcFzcEkcEncDCcFAcDEcDkcFBcFDcKLcDJcKMcFGcKNcFGcFHcDJcFIcFTcFScDraaLcKPcKOcKRcKQcKOcKOcKSbNUciEciDcGjaafaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGlcEJcEJcEJcEJcEJcGlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaafaaacrPaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaIaafaafaaacgEcFscKTcFscgEcFucKUcFucgEcFwcKVcFwcgEaafcgEcFwcKWcFwcgEaafaafaafcFYcFXcGacFZcGccGbcGdcDEcDkcGecKXcGfcDJcGicGmcGkcKYcGncDJcGpcGrcGqcDraaacLacKZcLccLbcLWcLdcLfcGFcGGcGHbNUaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcCmcqxcqxcqxcCocqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcrPcrPcrPcrPaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaaaaaacgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaacGscgEcgEcgEcgEaaaaaaaaaaaacBNcBNcBNcBNcBNcLgcGtcGtcGtcGtcLhcGtcGwcGycGxcGycGzcGtcGtcLicGtcGtcGtcLacKZcLkcLjcLmcLlcLnaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaaaaafaafaaaaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaafaaacGQcGRcGRcGRcGScGBcGDcGCcGIcLocGKcGJcLpcGLcLqcGNcGTcGPcGVcGUcGXcGWcGZcGYcHbcLrcGYcGtcLacKZcLtcLscLXcLucLvaafaaacGQcHccGQcHccGQcHcaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaaaaaacgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaacGscgEcgEcgEcgEaaaaaaaaaaaacBNcBNcBNcBNcBNcLgcGtcGtcGtcGtcLhcGtcGwcGycGxcGycGzcGtcGtcCOcGtcGtcGtcLacKZcLkcLjcLmcLlcLnaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaaaaafaafaaaaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaafaaacGQcGRcGRcGRcGScGBcGDcGCcGIcLocGKcGJcEBcGLcLqcGNcGTcGPcGVcGUcGXcGWcGZcGYcHbcLrcGYcGtcLacKZcLtcLscLXcLucLvaafaaacGQcHccGQcHccGQcHcaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafcHncjVcHpaaacHncjVcHpaaacHncjVcHpaafaafaaaaafaafaafaafaafcHqcGRcGRcGRcGScGBcHfcHecHhcHgcLwcHicHlcHkcHocHmcHscHrcHucHtcHucHucHucHvcHucHwcHxcGtcLxcKOcKOcKOcKOcKOcLyaafaafcHycHycHycHycHycHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaabgaaacBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaacHncjWcHpaaacHncjWcHpaaacHncjWcHpaafaafaaaaafaaaaaacHKaafcGQcGRcGRcGRcGScGBcHfcHzcHBcHAcLzcHicHEcHDcHFcHbcHbcHbcHHcHGcHIcHbcHbcHDcHLcHJcHMcGtcGtcGtcHNaaaaaaaaaaaacHOaaacHPcHPcHPcHPcHPcHPaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafcHncjWcHpaaacHncjWcHpaafcHncjWcHpaafaaaaaaaafaafcIcaaaaafcHqcGRcGRcGRcGScGBcHRcHQcHTcHScLAcHUcHXcHWcHZcHYcHYcHYcIbcIacIdcHYcHYcIecIgcIfcIicIhcIkcIjcImcIlcIlcIlcIlcIlcIlcIncIocIncIocIncHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaacHncjWcHpaafcHncjWcHpaaacHncjWcHpaaaaaaaaaaaaaafaafaaaaafaaaaaaaaaaaaaafcIpcIrcIqcItcIscIucGJcIvcHbcHbcHbcIxcIwcIzcIycIBcLBcIDcICcIFcIEcIHcIGcINcIIcImcIOcIPcIOcIPcIOcIPcIOcIPcIOcIPcIOcHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaaIaafaaacHncjWcHpaafcHncjWcHpaaacHncjWcHpaafaaaaaaaaaaaaaafaafcIJcIKcIKcIKcIKcILcILcILcILcILcLCcILcGtcIQcHbcHbcHbcLDcGtcLEcIScLFcGtcLGcJdcJicIfcJkcJjcLHcGtaaacHPcHPcHPcHPcJmcHPcHPcHPcHPcHPcHPcHPaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaaIaafaaacHncjWcHpaafcHncjWcHpaaacHncjWcHpaafaaaaaaaaaaaaaafaafcIJcIKcIKcIKcIKcILcILcILcILcILcLCcILcGtcIQcHbcHbcHbcLDcGtcEXcIScJpcGtcLGcJdcJicIfcJkcJjcLHcGtaaacHPcHPcHPcHPcJmcHPcHPcHPcHPcHPcHPcHPaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaaaaafaafczCaafaafaafczCaafaaaaafczCaafaaaaaaaaaaaaaaacIUcIVcIWcIXcIYcJncJacJbcJcciFcJecJfcJgcJecGtcLIcJocHbcHbcJrcJqcJtcJscJucJqcJwcJvcIgcIfcJycJxcJLcGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafaanaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafcydcxzcxycxxcxxcxxcxxcxxcxxcxxcxxcxxcxxcxxczicxzcxzcxzcLKcLJcLMcLLcLNcJDcJEcLOcJGcJHcJHcJHcJIcJJcJKcGtcJMcJMcHbcHbcJrcJNcJPcJOcJQcJNcJwcHbcIFcJZcIHcHbcKacGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafcydcxzcxycxxcxxcxxcxxcxxcxxcxxcxxcxxcxxcxxczicxzcxzcxzcLicKGcLMcLpcLEcJDcJEcLFcJGcJHcJHcJHcJIcJJcJKcGtcJMcJMcHbcHbcJrcJNcJPcJOcJQcJNcJwcHbcIFcJZcIHcHbcKacGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaactYctYctYctYctYaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaaaaafaafcxfaafaaaaafcxfaafaaaaafcxfaafaaaaaaaaaaaaaaacIUcIVcJRcJScJTcLPcIKcLQcJWcJecJecJXcJXcJYcGtcJMcJMcHbcHbcJrcKbcJPcKccLRcKbcKkcKecKscKmcKucKtcKvcGtaaacHPcHPcHPcHPcJmcHPcHPcHPcHPcHPcHPcHPaafaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaactYctYctYctYctYaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaaIaafaafcHncwrcHpaaacHncwrcHpaaacHncwrcHpaafaaaaaaaaaaaaaafaafcKfcIKcIKcIKcIKcKgcKhcKicKicKjcKgcKgcGtcGtcGJcGtcGtcGtcGtcGtcKwcGtcGtcGtcGtcGtcGJcGtcGtcGtcGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacHncwrcHpaafcHncwrcHpaaacHncwrcHpaaaaaaaaaaafaaaaafaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaafaaacKxaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaacHqcKycHqcKycKzcKycHqcKycHqcKycHqcKyaafaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacKlcKlcKlcKlcKlcKlcKlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 4e3e5581f3cd1d95c2ba09169774033a2a31cc55 Mon Sep 17 00:00:00 2001 From: Hubblenaut Date: Thu, 14 May 2015 17:43:34 +0200 Subject: [PATCH 084/199] Extends janitor access --- code/game/jobs/job/civilian.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index e5ef21856e..073e663a4b 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -256,8 +256,8 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#dddddd" - access = list(access_janitor, access_maint_tunnels) - minimal_access = list(access_janitor, access_maint_tunnels) + access = list(access_janitor, access_maint_tunnels, access_engine, access_research, access_sec_doors, access_medical) + minimal_access = list(access_janitor, access_maint_tunnels, access_engine, access_research, access_sec_doors, access_medical) equip(var/mob/living/carbon/human/H) From 1e1471a601c9ae04606c8b7783821fbde6cc2043 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 15 May 2015 18:59:22 +0930 Subject: [PATCH 085/199] Removes equip_e effect. Rewrites stripping, refactors cuffing. Fixes #8173. --- baystation12.dme | 1 + code/game/gamemodes/setupgame.dm | 161 ------- code/game/objects/items/stacks/medical.dm | 20 +- .../objects/items/weapons/dna_injector.dm | 114 ++--- code/game/objects/items/weapons/handcuffs.dm | 112 ++--- code/modules/mob/living/carbon/carbon.dm | 19 - code/modules/mob/living/carbon/human/human.dm | 77 ++- .../living/carbon/human/human_attackhand.dm | 35 +- .../mob/living/carbon/human/inventory.dm | 454 ------------------ .../living/carbon/human/species/species.dm | 4 - .../carbon/human/species/species_hud.dm | 54 +-- .../human/species/xenomorphs/alien_species.dm | 8 +- .../human/species/xenomorphs/xenomorphs.dm | 39 -- .../mob/living/carbon/human/stripping.dm | 200 ++++++++ .../mob/living/carbon/metroid/metroid.dm | 3 - .../mob/living/simple_animal/friendly/crab.dm | 237 --------- code/modules/mob/mob.dm | 17 +- .../reagents/reagent_containers/pill.dm | 7 +- 18 files changed, 389 insertions(+), 1173 deletions(-) create mode 100644 code/modules/mob/living/carbon/human/stripping.dm diff --git a/baystation12.dme b/baystation12.dme index 38b5899d66..35314d1fd1 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1174,6 +1174,7 @@ #include "code\modules\mob\living\carbon\human\MedicalSideEffects.dm" #include "code\modules\mob\living\carbon\human\npcs.dm" #include "code\modules\mob\living\carbon\human\say.dm" +#include "code\modules\mob\living\carbon\human\stripping.dm" #include "code\modules\mob\living\carbon\human\unarmed_attack.dm" #include "code\modules\mob\living\carbon\human\update_icons.dm" #include "code\modules\mob\living\carbon\human\whisper.dm" diff --git a/code/game/gamemodes/setupgame.dm b/code/game/gamemodes/setupgame.dm index 2981596645..3c029d5298 100644 --- a/code/game/gamemodes/setupgame.dm +++ b/code/game/gamemodes/setupgame.dm @@ -24,44 +24,6 @@ if (prob(75)) DIFFMUT = rand(0,20) - /* Old, for reference (so I don't accidentally activate something) - N3X - var/list/avnums = new/list() - var/tempnum - - avnums.Add(2) - avnums.Add(12) - avnums.Add(10) - avnums.Add(8) - avnums.Add(4) - avnums.Add(11) - avnums.Add(13) - avnums.Add(6) - - tempnum = pick(avnums) - avnums.Remove(tempnum) - HULKBLOCK = tempnum - tempnum = pick(avnums) - avnums.Remove(tempnum) - TELEBLOCK = tempnum - tempnum = pick(avnums) - avnums.Remove(tempnum) - FIREBLOCK = tempnum - tempnum = pick(avnums) - avnums.Remove(tempnum) - XRAYBLOCK = tempnum - tempnum = pick(avnums) - avnums.Remove(tempnum) - CLUMSYBLOCK = tempnum - tempnum = pick(avnums) - avnums.Remove(tempnum) - FAKEBLOCK = tempnum - tempnum = pick(avnums) - avnums.Remove(tempnum) - DEAFBLOCK = tempnum - tempnum = pick(avnums) - avnums.Remove(tempnum) - BLINDBLOCK = tempnum - */ var/list/numsToAssign=new() for(var/i=1;i
      Command
      {{:value.name}}{{:value.rank}}{{:value.active}}
      Security
      {{:value.name}}{{:value.rank}}{{:value.active}}
      Engineering
      {{:value.name}}{{:value.rank}}{{:value.active}}
      Medical
      {{:value.name}}{{:value.rank}}{{:value.active}}
      Science
      {{:value.name}}{{:value.rank}}{{:value.active}}
      Civilian
      {{:value.name}}{{:value.rank}}{{:value.active}}
      Misc
      {{:value.name}}{{:value.rank}}{{:value.active}}
      " - dat += "" - dat += "" - dat += "" - dat += "" - dat += "" - dat += "" - dat += "" - dat += "" - dat += "" - dat += "" - dat += "" - - //WIP gene sequences - for(var/sequence_num = 1, sequence_num <= discovered_genesequences.len, sequence_num += 1) - var/datum/genesequence/cur_genesequence = discovered_genesequences[sequence_num] - dat += "" - var/num_correct = 0 - for(var/curindex = 1, curindex <= 7, curindex++) - var/bgcolour = "#ffffff"//white ffffff, red ff0000 - - //background colour hints at correct positioning - if(manually_placed_genomes[sequence_num][curindex]) - //green background if slot is correctly filled - if(manually_placed_genomes[sequence_num][curindex] == cur_genesequence.full_genome_sequence[curindex]) - bgcolour = "#008000" - num_correct += 1 - if(num_correct == 7) - discovered_genesequences -= cur_genesequence - completed_genesequences += cur_genesequence - manually_placed_genomes[sequence_num] = new/list(7) - interact(user) - return - //yellow background if adjacent to correct slot - if(curindex > 1 && manually_placed_genomes[sequence_num][curindex] == cur_genesequence.full_genome_sequence[curindex - 1]) - bgcolour = "#ffff00" - else if(curindex < 7 && manually_placed_genomes[sequence_num][curindex] == cur_genesequence.full_genome_sequence[curindex + 1]) - bgcolour = "#ffff00" - - var/this_genome_slot = manually_placed_genomes[sequence_num][curindex] - if(!this_genome_slot) - this_genome_slot = "- - - - -" - dat += "" - dat += "" - //dat += "" - dat += "" - - //completed gene sequences - for(var/sequence_num = 1, sequence_num <= completed_genesequences.len, sequence_num += 1) - var/datum/genesequence/cur_genesequence = completed_genesequences[sequence_num] - dat += "" - for(var/curindex = 1, curindex <= 7, curindex++) - var/this_genome_slot = cur_genesequence.full_genome_sequence[curindex] - dat += "" - dat += "" - dat += "" - dat += "" - - dat += "
      GENE1GENE2GENE3GENE4GENE5GENE6GENE7
      [this_genome_slot]ResetClone
      [this_genome_slot]WipeClone
      " - - dat += "
      " - dat += "
      " - dat += "Close" - user << browse(dat, "window=reconstitutor;size=600x500") - user.set_machine(src) - onclose(user, "reconstitutor") - -/obj/machinery/computer/reconstitutor/animal/Topic(href, href_list) - if(..()) return 1 - if(href_list["clone"]) - var/sequence_num = text2num(href_list["sequence_num"]) - var/datum/genesequence/cloned_genesequence = completed_genesequences[sequence_num] - if(pod1) - if(pod1.occupant) - visible_message("\red \icon[src] The cloning pod is currently occupied.") - else if(pod1.biomass < CLONE_BIOMASS) - visible_message("\red \icon[src] Not enough biomass in the cloning pod.") - else if(pod1.mess) - visible_message("\red \icon[src] Error: clonepod malfunction.") - else - visible_message("\blue \icon[src] [src] clones something from a reconstituted gene sequence!") - playsound(src.loc, 'sound/effects/screech.ogg', 50, 1, -3) - pod1.occupant = new cloned_genesequence.spawned_type(pod1) - pod1.locked = 1 - pod1.icon_state = "pod_1" - //pod1.occupant.name = "[pod1.occupant.name] ([rand(0,999)])" - pod1.biomass -= CLONE_BIOMASS - else - usr << "\red \icon[src] Unable to locate cloning pod!" - -/obj/machinery/computer/reconstitutor/Topic(href, href_list) - if(..()) return 1 - if(href_list["insertpos"]) - //world << "inserting gene for genesequence [href_list["insertgenome"]] at pos [text2num(href_list["insertpos"])]" - var/sequence_num = text2num(href_list["sequence_num"]) - var/insertpos = text2num(href_list["insertpos"]) - - var/old_genome = manually_placed_genomes[sequence_num][insertpos] - discovered_genomes = sortList(discovered_genomes) - var/new_genome = input(usr, "Which genome do you want to insert here?") as null|anything in discovered_genomes - if(new_genome == "! Clear !") - manually_placed_genomes[sequence_num][insertpos] = null - else if(new_genome) - manually_placed_genomes[sequence_num][insertpos] = new_genome - discovered_genomes.Remove(new_genome) - if(old_genome) - discovered_genomes.Add(old_genome) - updateDialog() - - else if(href_list["reset"]) - var/sequence_num = text2num(href_list["sequence_num"]) - for(var/curindex = 1, curindex <= 7, curindex++) - var/old_genome = manually_placed_genomes[sequence_num][curindex] - manually_placed_genomes[sequence_num][curindex] = null - if(old_genome) - discovered_genomes.Add(old_genome) - updateDialog() - - else if(href_list["wipe"]) - var/sequence_num = text2num(href_list["sequence_num"]) - var/datum/genesequence/wiped_genesequence = completed_genesequences[sequence_num] - completed_genesequences.Remove(wiped_genesequence) - discovered_genesequences.Add(wiped_genesequence) - - discovered_genomes.Add(wiped_genesequence.full_genome_sequence) - discovered_genomes = sortList(discovered_genomes) - updateDialog() - - else if(href_list["clone"]) - var/sequence_num = text2num(href_list["sequence_num"]) - var/datum/genesequence/cloned_genesequence = completed_genesequences[sequence_num] - visible_message("\blue \icon[src] [src] clones a packet of seeds from a reconstituted gene sequence!") - playsound(src.loc, 'sound/effects/screech.ogg', 50, 1, -3) - new cloned_genesequence.spawned_type(src.loc) - - else if(href_list["close"]) - usr.unset_machine(src) - usr << browse(null, "window=reconstitutor") - -/obj/machinery/computer/reconstitutor/proc/scan_fossil(var/obj/item/weapon/fossil/scan_fossil) - //see whether we accept these kind of fossils - if(accepted_fossil_types.len && !accepted_fossil_types.Find(scan_fossil.type)) - return SCANFOSSIL_RETVAL_WRONGTYPE - - //see whether we are going to discover a new sequence, new genome for existing sequence or nothing - var/new_genome_prob = discovered_genesequences.len * 50 - - if( (new_genome_prob >= 100 || prob(new_genome_prob)) && undiscovered_genomes.len) - //create a new genome for an existing gene sequence - var/newly_discovered_genome = pick(undiscovered_genomes) - undiscovered_genomes -= newly_discovered_genome - discovered_genomes.Add(newly_discovered_genome) - - //chance to discover a second genome - if(prob(75)) - newly_discovered_genome = pick(undiscovered_genomes) - undiscovered_genomes -= newly_discovered_genome - discovered_genomes.Add(newly_discovered_genome) - //chance to discover a third genome - if(prob(50)) - newly_discovered_genome = pick(undiscovered_genomes) - undiscovered_genomes -= newly_discovered_genome - discovered_genomes.Add(newly_discovered_genome) - - else if(undiscovered_genesequences.len) - //discover new gene sequence - var/datum/genesequence/newly_discovered_genesequence = pick(undiscovered_genesequences) - undiscovered_genesequences -= newly_discovered_genesequence - discovered_genesequences += newly_discovered_genesequence - //add genomes for new gene sequence to pool of discoverable genomes - undiscovered_genomes.Add(newly_discovered_genesequence.full_genome_sequence) - manually_placed_genomes.Add(null) - manually_placed_genomes[manually_placed_genomes.len] = new/list(7) - - else - //there's no point scanning any more fossils, we've already discovered everything - return SCANFOSSIL_RETVAL_NOMOREGENESEQ - - return SCANFOSSIL_RETVAL_SUCCESS - -#undef SCANFOSSIL_RETVAL_WRONGTYPE -#undef SCANFOSSIL_RETVAL_NOMOREGENESEQ -#undef SCANFOSSIL_RETVAL_SUCCESS - - -/obj/item/weapon/circuitboard/reconstitutor - name = "Circuit board (Flora Reconstitution Console)" - build_path = "/obj/machinery/computer/reconstitutor" - origin_tech = "programming=2;biotech=4;materials=6" - req_components = list( - "/obj/item/weapon/stock_parts/scanning_module/adv" = 2, - "/obj/item/weapon/stock_parts/manipulator/nano" = 1, - "/obj/item/weapon/stock_parts/matter_bin" = 1, - "/obj/item/weapon/stock_parts/capacitor/adv" = 1) - -/obj/item/weapon/circuitboard/reconstitutor/animal - name = "Circuit board (Fauna Reconstitution Console)" - build_path = "/obj/machinery/computer/reconstitutor/animal" - origin_tech = "programming=2;biotech=4;materials=6" - req_components = list( - "/obj/item/weapon/stock_parts/scanning_module/adv" = 2, - "/obj/item/weapon/stock_parts/manipulator/nano" = 1, - "/obj/item/weapon/stock_parts/matter_bin" = 1, - "/obj/item/weapon/stock_parts/capacitor/adv" = 1) diff --git a/code/modules/research/xenoarchaeology/master_controller.dm b/code/modules/research/xenoarchaeology/master_controller.dm index fa09ca6470..332b1ce06a 100644 --- a/code/modules/research/xenoarchaeology/master_controller.dm +++ b/code/modules/research/xenoarchaeology/master_controller.dm @@ -1,37 +1,8 @@ /datum/controller/game_controller - var/list/all_animal_genesequences = list() - var/list/all_plant_genesequences = list() - var/list/genome_prefixes = null var/list/artifact_spawning_turfs = list() var/list/digsite_spawning_turfs = list() - var/list/spawn_types_animal = list("/mob/living/carbon/slime",\ - "/mob/living/simple_animal/hostile/alien",\ - "/mob/living/simple_animal/hostile/alien/drone",\ - "/mob/living/simple_animal/hostile/alien/sentinel",\ - "/mob/living/simple_animal/hostile/giant_spider",\ - "/mob/living/simple_animal/hostile/giant_spider/hunter",\ - "/mob/living/simple_animal/hostile/giant_spider/nurse",\ - "/mob/living/simple_animal/hostile/creature",\ - "/mob/living/simple_animal/hostile/samak",\ - "/mob/living/simple_animal/hostile/diyaab",\ - "/mob/living/simple_animal/hostile/shantak",\ - "/mob/living/simple_animal/tindalos",\ - "/mob/living/simple_animal/yithian") - - var/list/spawn_types_plant = list("/obj/item/seeds/walkingmushroommycelium",\ - "/obj/item/seeds/killertomatoseed",\ - "/obj/item/seeds/shandseed", - "/obj/item/seeds/mtearseed", - "/obj/item/seeds/thaadra",\ - "/obj/item/seeds/telriis",\ - "/obj/item/seeds/jurlmah",\ - "/obj/item/seeds/amauri",\ - "/obj/item/seeds/gelthi",\ - "/obj/item/seeds/vale",\ - "/obj/item/seeds/surik") - #define XENOARCH_SPAWN_CHANCE 0.5 #define DIGSITESIZE_LOWER 4 #define DIGSITESIZE_UPPER 12 @@ -104,40 +75,6 @@ datum/controller/game_controller/proc/SetupXenoarch() var/turf/simulated/mineral/artifact_turf = pop(artifacts_spawnturf_temp) artifact_turf.artifact_find = new() - //make sure we have some prefixes for the gene sequences - if(!genome_prefixes) - genome_prefixes = alphabet_uppercase.Copy() - if(!genome_prefixes.len) - qdel(genome_prefixes) - genome_prefixes = alphabet_uppercase.Copy() - - //create animal gene sequences - while(spawn_types_animal.len && genome_prefixes.len) - var/datum/genesequence/new_sequence = new/datum/genesequence() - new_sequence.spawned_type_text = pick(spawn_types_animal) - new_sequence.spawned_type = text2path(new_sequence.spawned_type_text) - spawn_types_animal -= new_sequence.spawned_type_text - - var/prefixletter = pick(genome_prefixes) - genome_prefixes -= prefixletter - while(new_sequence.full_genome_sequence.len < 7) - new_sequence.full_genome_sequence.Add("[prefixletter][pick(alphabet_uppercase)][pick(alphabet_uppercase)][pick(1,2,3,4,5,6,7,8,9,0)][pick(1,2,3,4,5,6,7,8,9,0)]") - - all_animal_genesequences.Add(new_sequence) - - //create plant gene sequences - while(spawn_types_plant.len && genome_prefixes.len) - var/datum/genesequence/new_sequence = new/datum/genesequence() - new_sequence.spawned_type = pick(spawn_types_plant) - spawn_types_plant -= new_sequence.spawned_type_text - - var/prefixletter = pick(genome_prefixes) - genome_prefixes -= prefixletter - while(new_sequence.full_genome_sequence.len < 7) - new_sequence.full_genome_sequence.Add("[prefixletter][pick(1,2,3,4,5,6,7,8,9,0)][pick(1,2,3,4,5,6,7,8,9,0)][pick(alphabet_uppercase)][pick(alphabet_uppercase)]") - - all_plant_genesequences.Add(new_sequence) - #undef XENOARCH_SPAWN_CHANCE #undef DIGSITESIZE_LOWER #undef DIGSITESIZE_UPPER diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 2c87632d48..5d41e5d42d 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -5801,7 +5801,7 @@ "chC" = (/obj/machinery/door/airlock/medical{autoclose = 0; icon_state = "door_open"; id_tag = "cubicle1"; name = "Cubicle 1"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/patient_wing) "chD" = (/obj/machinery/door/airlock/medical{autoclose = 0; icon_state = "door_open"; id_tag = "cubicle2"; name = "Cubicle 2"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/patient_wing) "chE" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) -"chF" = (/obj/machinery/computer/reconstitutor,/obj/machinery/light_switch{pixel_x = 26; pixel_y = -6},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) +"chF" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology) "chG" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/buildable{charge = 0; RCon_tag = "Solar - Aft Starboard"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "chH" = (/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/engineering/atmos) "chI" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage) @@ -6878,7 +6878,7 @@ "cCn" = (/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "virology_sensor"; pixel_x = 25; pixel_y = 12},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "virology_pump"; tag_exterior_door = "virology_outer"; frequency = 1379; id_tag = "virology_airlock"; tag_interior_door = "virology_inner"; pixel_x = 25; req_access = list(13); tag_chamber_sensor = "virology_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "virology_pump"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/medbay) "cCo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/medical/virology) "cCp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/engineering) -"cCq" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/computer/reconstitutor/animal,/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology) +"cCq" = (/obj/machinery/light_switch{pixel_x = 26; pixel_y = -6},/turf/simulated/floor{icon_state = "hydrofloor"},/area/rnd/xenobiology/xenoflora) "cCr" = (/obj/structure/sign/securearea,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/wall/r_wall,/area/engineering) "cCs" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless,/area/space) "cCt" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating/airless,/area/space) @@ -7539,7 +7539,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafccRccRcebccTcfZceiccUccWccVbYIcgeccHccIcgfccKccLcgmccNccOcgoccXcdaccZcdecdbbqTcdycdQcdFcekceecembsccdccddaJEcdfcaqbTFcbIcdgcdhcdicgOcdkcdlcgRcdncdocgWcdqcdrcdsbqtcaEcducdvcdwcaIbZxbWQcenbZycdxbqbbZAcdzcdAbqabZAcaPbYfbYfcaQbYccbYcbXcbZbYcchBccacjfcdLcdLbyFbBucdLcdOcdPceqcdRcdOcdSbBpbyebydcdScdScdScdScgXbyebydcdScdSbXjcdXbpZbpAceachabpybpsbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycchicegcegcehbKtbKtbLTbLTchnbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcejcejcejcejcejcejcetcesbYIbYIbYIbYIbYIchpchuchqchqchqchzcewbXzbXybYeceybYjceEceTceSceWceUceXbSUcezaJFceYaJFcaqbTFcbIceDcfacfacfaceFceGbTJchPchLbTJcbKcbNceJceHcaEchSceLceMcaIbZxbWQceNbZyceOcePbZAbZAbZAbZAbZAccbceRbYfcaQbYcccdbszbYcbYcchBcifcjfcdLbsycfbcfbcfccdOcfdciycffcdOcfgcfhcfhcfhciCciLciKbsxciPcfnbsecfpcdScfqcfrciQbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaafaafcftcfBcfvbNebKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcejcfwcfxcvbcvccwfcejcfDcfCcfFcfEcfHciVcjacjacfKcfJcfJcjlcjpcbqbXzbXybYecfNcaicfOcfQcfPcvtcwecggbSUaJFaJFcaqceBcaqbTFcbIcfVcfWcfWcfWcfXcbIcfYcjtcgacfYcgbcgccgdcjvcaEcjCceLcgicaIcghccfcwEbZycgkcglbZycjIbLvbVicgnccgcchbYfccjcciccicckcclcclcclcclccmcdLckncgycgycgzcgActscgrcgpcgucgtcgGcgGcgGcgxcgIcgIcgJckocgLcgDcgMcdScgNcwDcgPcgNaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcgQbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaaaaacgScgTcgTcgTcgUcsdcejcgHcgFckFcgKckQckNclgclfcluclpclCchcchfchechhchgchjclGbSUbSUbSUbSUbSUbSUbSUbSUcmgclVcaqcmkcaqbTFcbIcbIctpctqctrcbIcbIcsnchschtcfYcaEcaEcaEcaEcaEcaIchkchlcaIchwcsZchwbZyctGctbbZychAchBbVichCbVichDbYfccobYfbYfccpcdCcdCcdCcdDbYfcdLchIchJchJchKcmschMchochOcmwchQckLckLckLckLcuOctUckLcmGckLchEchFcdSchZciachGcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaaaaacgScgTcgTcgTcgUcsdcejcgHcgFckFcgKckQckNclgclfcluclpclCchcchfchechhchgchjclGbSUbSUbSUbSUbSUbSUbSUbSUcmgclVcaqcmkcaqbTFcbIcbIctpctqctrcbIcbIcsnchschtcfYcaEcaEcaEcaEcaEcaIchkchlcaIchwcsZchwbZyctGctbbZychAchBbVichCbVichDbYfccobYfbYfccpcdCcdCcdCcdDbYfcdLchIchJchJchKcmschMchochOcmwchQckLckLckLckLcuOctUckLcmGckLchEcCqcdSchZciachGcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEchHcmPchHcgEchNcmQchNcgEchRcmRchRcgEaaaaaaciicgTcgTcgUcgUcyScejchUchTchWchVcmXchXcidciccnecieciecigciecbqbXzcihbYecikcimcilciocinciocipcirciqciqciAciAciAciAbTFciGciHciIciIciJcnfcngciMciXciOcnucnhciRciSciSciTciUcaIcaIcaIcnwcdEckqbZybZybZybZychBchBbViciYbViciZbYfccobYfaaaaaaaaaaaaaaaaaaaaacdLcjgcisciucitcjjcjkcivcjmcjncjociwcjocjocixcyVcyUcgIcnEcgIciWcyTcdScnFcjwcjxcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEchHcjbchHcgEchNcjcchNcgEchRcjdchRcgEaaaaaaciicgTcgUcgUcgUcjBcnIcjhcjechWcjicnLcnKcnPcnNcjzcjycjDcjAcjEcbqbXzcjFchjcjGcnQcjHcjJcjJcjJcjKcjMcjLcjNcolcjOceAciAbTFciGcxnciIckbckccxecubcxJckgckhctQcxwckkcklciScywciUconcoqcxYcjQcjPcdHcyLcdIcdIcdJcdIcdKbVibVibVibVibYfccobYfaaaaaaaaaaaaaaaaaaaaacdLcorcjRcjTcjSckEcdOcotcdOckGckHcjXcjUcjUcjYcgIcgIckecjZcjUckickOcdSckPcwGckRcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEckrckuckscgEckzckBckAcgEckDckJckIcgEaaaaafciiclbcgTcgUcgUcgUcejckMckKchWchWcoAchWchWchWchWckTcieckWckYcbqclackZcldclccoBcleclhclhclhclicljcljclkciAcllcgqclwclxciGcDdciIclzclAclBcoCclDclEclFcoFclHclIclJciScDcciUcoJcoLclNclnclmclQclNclRclSclTbYfceQcdIcdIcdIcdIcdIcltbYfaaaaaaaaaaaaaaaaaaaaacdLcmacmbcmccmdcdOcmecmfcpdcdScmhcmicmicmiclvcpfcmlclPclOcmicmicmncdScmocDFcmqcmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7557,7 +7557,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFczmcrWcrWczpcxGcrWczpcrWcxIcBucuEcuEcBzcuEcBAcuEcuEcuYcBDczncpFcpFcyjcylcykcyncBEcyocpFcBHcyqcyscyscBIcytcoTcxucyvcnOchbcpacyxcpacBKcyycpjcpjcpjcpjcpjcpjcpjbPxcvMcvNcyMcyNcxLcyOcxLcxNcyPcvNcyQcBLcrGaaaaaaaaaaaaaaaaaacqvcuVcBOctFctFchdcyAchmcyWctMctDctNcyBctMcvhcyYcqvaaaaaaaaaaaacdOcplcplcplckXcBRczacrNcrNcrNcyfcrNczbcrNczccrNczdaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaacBscBscBscBsaaaaaaaaacBscBscBscBscBscBscBsaaaaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFcqXcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcyCcpFcvWcpFcpFcpFcyDczncpFcpFcBScAtctfcyGcwgcCccwgcwgcyqcCecyIcCfcytcoTcxucoTcnOcijchYchychvczfcpacnOczgchrchrczhcCicjqczNczOcvNcxNczPczQcxNczRczSczTcvNczUcCncrGaaaaaaaaaaaaaaaaaacqvczWcuMcCBcuVczYczZcAactFcAbcAccsPcyBczWczjcAecqvaaaaaaaaaaaackEcdOcAfcAgcAgczkcAicAjcAkcAlcAmcAncAocApcAqcokcAraaaaaacrPaafcwjcwjcwjcwjcwjaaackxaafcwjcwjcwjcwjcwjaaacrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaaaczlcpFcqXcpFcCFcxacufcxacCJcxacufcxacCJcxacxccxacxbcCKctectdcCNctfczsczucztczwczvczxcwgczzczycwgcwgcwgcwgcwgczAcjscjrcjscnOcnOcnOcnOcnOcnOcnOcnOczDchrchrczEcANcAObPxcAPcvNcAQcARcCQcATcCYcAVcAWcvNcAXcAYcrGaaaaaaaaaaaaaaaaaacqvcuQcAZcAectFcBacBbcBcctFcBdcBeczHczGczIcBeczKcqvaafaafaaaaaaaaaaaabquaaacdOcBlcDmcDacBocBpcDmcDpcBrcBpcDmcDtcdOaaaaaaccMaaaaafaaaaafaaaaafaaackxaaaaafaaaaafaafaafaafcrPaaacBscBscBscBsaaaaaacBscBscBscBscBscBscBscBscBsaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaaaaaaaaaaaIaaaaaacAdcpFcqXcpFcDxcylcqXcpFcDNcylcqXcpFcAucylcpFcpFcDOcpFcDUcylcEccAzcAycABcEicErcACcAEcwgcEycAFcjucAIcAKcumcAMcALcumcAScumcBfcuocBgcBicBhcBhcBjckacBVcBWcBWcBXcBYcAObPxcBZcvNcvNcCacCbcFecCbcCacCdcvNcrGcFgcrGaaaaaaaaaaaaaaaaaacqvctFcFrcuVctFckdcChcFCctFcCjcCkcqycgvcBtcCkcCocrHaaaaaaaaaaaaaaaaaacgwaafcdOcCqcFEclUcomclscFFclqcomclocFKclWcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaaaaaaaaaaaIaaaaaacAdcpFcqXcpFcDxcylcqXcpFcDNcylcqXcpFcAucylcpFcpFcDOcpFcDUcylcEccAzcAycABcEicErcACcAEcwgcEycAFcjucAIcAKcumcAMcALcumcAScumcBfcuocBgcBicBhcBhcBjckacBVcBWcBWcBXcBYcAObPxcBZcvNcvNcCacCbcFecCbcCacCdcvNcrGcFgcrGaaaaaaaaaaaaaaaaaacqvctFcFrcuVctFckdcChcFCctFcCjcCkcqycgvcBtcCkcCocrHaaaaaaaaaaaaaaaaaacgwaafcdOchFcFEclUcomclscFFclqcomclocFKclWcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafaafaafaaIaafaafcAdcpFcFLcBycBxcFVcFUcBCcBBcGgcFWcBGcBFcGhcpFcBvcGocGucBJcBMcGvcnycnycnycnycnycnycnycnycGAcBNczAcBPcBQcoTcGEcoTcoTcxucoTcoTcGMcoTcBQcBTcCpcBUcCrcGOcHjcHacCPcHCcAObPwcCRcCScCTcCacAGcAVcBwcCacCtcCscCucHVcCXaaaaaaaaaaaaaaaaaacqvcCvctDcuQcIAcDbcuQckfckjcDeaafaaachxcCxcCwcCyaaaaaaaaaaacaaaaaaaaaaaaaaacdOcDhcplcplcomcDicplcplcomcDicplcplcdOaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcCzaaaaaaaaIaaaaaacCAcCCcIMcCEcCDcCGcIRcCHcCDcCGcIRcCHcCDcCGcCIcCIcITcCHcCDcCGcIZcnyaaacCMcCLcCVcCUcCZcCWcDjcDgcDkcDkcJhcDlcDocDncDqcJlcDncDqcDocDrckmcDscDrczAczAcAOcJAcJzcDPcDQcAObNUcDRcDScDTcCacCbcJBcCbcCacDvcDucDfaafaaaaaaaaaaaaaaaaaaaaacqvcCvcDVcDwckpckpcDwcsPcDYcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcDZcplcplcomcEacplcplcomcEacplcplcdOaaaaaacrPaafcwjcwjcwjcwjcwjaaackxaaacwjcwjcwjcwjcwjaaacrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcJCcJFcJFcJUcJFcJFcJFcJFcJVcJFcKdcJFcJVcJFcKdcJFcJVcJFcKdcJFcJFcJFcKdcJFcKdcJFcKoaafaaacDzcDycDBcDAcDDcDCcDjcDEcDkclrcDHcDGcDJclyckCcDKcDWcDMcDJcEbcEdcKpcDraaaaafcAOcKqcECcEDaafaaabNUbPxbPxbSkcCaclZcEFclYcCaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcEecuXcEfcgjcgjcEfcuQcEKcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcplcplcplcomcELcplcplcomcELcplcplcdOaacaaacrPaaaaaaaafaafaafaaaaaacmTaafaaaaaaaafaafaaaaaacrPaaacBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 22cbab0b9a..8aba1343d8 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -266,7 +266,6 @@ "ff" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/outpost/abandoned) "fg" = (/obj/machinery/newscaster{layer = 3.3; pixel_x = 0; pixel_y = -27},/turf/simulated/floor/wood,/area/outpost/research/hallway) "fh" = (/obj/structure/bookcase/manuals/xenoarchaeology,/turf/simulated/floor/wood,/area/outpost/research/hallway) -"fi" = (/obj/machinery/computer/reconstitutor,/turf/simulated/floor/wood,/area/outpost/research/hallway) "fj" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor/wood,/area/outpost/research/hallway) "fk" = (/obj/structure/extinguisher_cabinet{pixel_x = -25; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "fl" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) @@ -1682,7 +1681,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaecocqcpcrabababababababababababababababababababababababababababababababababababababababababababababababababababababalaaaaaaexexexexexexexcscwcxcyctctcucvctcycFcEcDcCcBcAczcMcMcLcKcJcIcHcGcOdDddazazalalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaefxemelekcrababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaexexexexexexexejcwdAdBdCeifFdFdGdYaGeadZaGebedecehdNjQaGdVdUaidWdWdWdWeeefegalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaedLdKdMcrdJdIcrcrcrcrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaexexexexexexexdHcwdAdBdCdOdPdFdGdyaGdxdwaGkaaGaGaGaGcCaGkoduaidtdodpdmdndqdrdqdqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaacacacacacaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegzfefEfHgVfGafbCeYcrfbfacrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaexexexexexexexaifkflfjdCfhfidFfgfvaGfzfwfsfrfuftfoaGeLeKfmeRaifnfAfBfCfDdqalalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaacacacacacaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegzfefEfHgVfGafbCeYcrfbfacrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaexexexexexexexaifkflfjdCfhdGdFfgfvaGfzfwfsfrfuftfoaGeLeKfmeRaifnfAfBfCfDdqalalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaacacacacacaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaefcfdfeffeUeTeWeVeYeXfaeZfbcrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaeAereseyezeresevewepeqeneneneoeoeoeoeoeSeReQePeOeNeMaGfqfpeJeIaieHeFeGeDeEeCaGaGeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaaaaaaaaaaaaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahSfchbfcfEfEdJheeUcrekhdcrfahccrabababababababababababababababababababababababababababababababababababababababababababababababdXaaaaaaaaaagMgPgQgNgOgTgQgRgSgWgXgUhahfeogYgZgweoloeRgBgAgDgCgEaGgGgFgIgHaiaigJaiaiaieReRgKeBeBeBeBgLeBeBeBeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaegugvfEgsgtfEcpgqeTgrgpgocrcrcrcrcrcrababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaagngbgcgcgcgcgdgegfggghgigjgkeoglgmfVfUfTeIfXfWeReRfYfweReReJeIgafZfKfLfIlyeReRfMeBfOfPeBfNfRfSfQeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-6.dmm b/maps/exodus-6.dmm index 25a83f2dc9..df2be4562e 100644 --- a/maps/exodus-6.dmm +++ b/maps/exodus-6.dmm @@ -1,5 +1,5 @@ "a" = (/turf/space,/area/space) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -257,3 +257,4 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} + From 00855d636f8a0b7aeef02f891a8caa6f30c02262 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 17:54:21 +0930 Subject: [PATCH 103/199] Fixes #8389 --- code/game/supplyshuttle.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/game/supplyshuttle.dm b/code/game/supplyshuttle.dm index c8adfebe20..2b39256e5b 100644 --- a/code/game/supplyshuttle.dm +++ b/code/game/supplyshuttle.dm @@ -25,6 +25,7 @@ var/list/mechtoys = list( /obj/item/weapon/paper/manifest name = "supply manifest" + var/is_copy = 1 /area/supply/station name = "Supply Shuttle" @@ -197,8 +198,8 @@ var/list/mechtoys = list( // Sell manifests var/atom/A = atom if(find_slip && istype(A,/obj/item/weapon/paper/manifest)) - var/obj/item/weapon/paper/slip = A - if(slip.stamped && slip.stamped.len) //yes, the clown stamp will work. clown is the highest authority on the station, it makes sense + var/obj/item/weapon/paper/manifest/slip = A + if(!slip.is_copy && slip.stamped && slip.stamped.len) //yes, the clown stamp will work. clown is the highest authority on the station, it makes sense points += points_per_slip find_slip = 0 continue @@ -256,6 +257,7 @@ var/list/mechtoys = list( //supply manifest generation begin var/obj/item/weapon/paper/manifest/slip = new /obj/item/weapon/paper/manifest(A) + slip.is_copy = 0 slip.info = "

      [command_name()] Shipping Manifest



      " slip.info +="Order #[SO.ordernum]
      " slip.info +="Destination: [station_name]
      " From edb1d501d6b96abd8963aa6cc4605dc46fb10e4a Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 17:56:28 +0930 Subject: [PATCH 104/199] Fixes #9217 --- code/game/objects/items/devices/scanners.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index f42a3995dc..a29d39743e 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -192,10 +192,12 @@ REAGENT SCANNER for(var/name in H.organs_by_name) var/obj/item/organ/external/e = H.organs_by_name[name] - if(e.status & ORGAN_BROKEN) + if(e && e.status & ORGAN_BROKEN) user.show_message(text("\red Bone fractures detected. Advanced scanner required for location."), 1) break for(var/obj/item/organ/external/e in H.organs) + if(!e) + continue for(var/datum/wound/W in e.wounds) if(W.internal) user.show_message(text("\red Internal bleeding detected. Advanced scanner required for location."), 1) break From 163aab3753207a7bff95069f9d22fb8db9ece80f Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 10:27:47 +0200 Subject: [PATCH 105/199] Adds turf processing. Currently only used by walls. Radioactive walls now irradiate nearby mobs. --- code/controllers/Processes/machinery.dm | 2 +- code/controllers/Processes/turf.dm | 13 ++++--- .../endgame/supermatter_cascade/blob.dm | 2 +- code/game/turfs/simulated/walls.dm | 36 +++++++------------ code/game/turfs/turf.dm | 3 ++ 5 files changed, 26 insertions(+), 30 deletions(-) diff --git a/code/controllers/Processes/machinery.dm b/code/controllers/Processes/machinery.dm index c796afa1f9..b84dfaf943 100644 --- a/code/controllers/Processes/machinery.dm +++ b/code/controllers/Processes/machinery.dm @@ -59,4 +59,4 @@ /datum/controller/process/machinery/getStatName() - return ..()+"([machines.len])" \ No newline at end of file + return ..()+"([machines.len])" diff --git a/code/controllers/Processes/turf.dm b/code/controllers/Processes/turf.dm index c1efac52f9..c93325012c 100644 --- a/code/controllers/Processes/turf.dm +++ b/code/controllers/Processes/turf.dm @@ -1,9 +1,14 @@ -var/global/list/processing_turfs = list() +var/global/list/turf/processing_turfs = list() /datum/controller/process/turf/setup() name = "turf" - schedule_interval = 20 // every 2 seconds + schedule_interval = 30 // every 3 seconds /datum/controller/process/turf/doWork() - for(var/turf/unsimulated/wall/supermatter/SM in processing_turfs) - SM.process() + for(var/turf/T in processing_turfs) + if(T.process() == PROCESS_KILL) + processing_turfs.Remove(T) + scheck() + +/datum/controller/process/turf/getStatName() + return ..()+"([processing_turfs.len])" diff --git a/code/game/gamemodes/endgame/supermatter_cascade/blob.dm b/code/game/gamemodes/endgame/supermatter_cascade/blob.dm index d71ff249d1..dc315ac510 100644 --- a/code/game/gamemodes/endgame/supermatter_cascade/blob.dm +++ b/code/game/gamemodes/endgame/supermatter_cascade/blob.dm @@ -23,7 +23,7 @@ processing_turfs.Remove(src) ..() -/turf/unsimulated/wall/supermatter/proc/process() +/turf/unsimulated/wall/supermatter/process() // Only check infrequently. if(next_check>world.time) return diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 72df25cfbe..4d14bdac04 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -15,7 +15,6 @@ var/list/global/wall_cache = list() var/damage_overlay var/global/damage_overlays[8] var/active - var/last_event var/can_open = 0 var/material/material var/material/reinf_material @@ -33,10 +32,13 @@ var/list/global/wall_cache = list() if(!isnull(rmaterialtype)) reinf_material = name_to_material[rmaterialtype] update_material() + processing_turfs |= src + +/turf/simulated/wall/process() + // Calling parent will kill processing + radiate() /turf/simulated/wall/bullet_act(var/obj/item/projectile/Proj) - - radiate() if(istype(Proj,/obj/item/projectile/beam)) ignite(2500) else if(istype(Proj,/obj/item/projectile/ion)) @@ -236,20 +238,11 @@ var/list/global/wall_cache = list() return 0 /turf/simulated/wall/proc/radiate() - var/material/M = name_to_material[material] - if(!istype(M) || !M.radioactivity) + if(!material.radioactivity) return - if(!active) - if(world.time > last_event+15) - active = 1 - for(var/mob/living/L in range(3,src)) - L.apply_effect(M.radioactivity,IRRADIATE,0) - for(var/turf/simulated/wall/T in range(3,src)) - T.radiate() - last_event = world.time - active = null - return + for(var/mob/living/L in range(3,src)) + L.apply_effect(material.radioactivity,IRRADIATE,0) return /turf/simulated/wall/proc/burn(temperature) @@ -266,19 +259,14 @@ var/list/global/wall_cache = list() D.ignite(temperature/4) /turf/simulated/wall/proc/ignite(var/exposed_temperature) - - var/material/M = name_to_material[material] - if(!istype(M) || !isnull(M.ignition_point)) + if(isnull(material.ignition_point)) return - if(exposed_temperature > M.ignition_point)//If the temperature of the object is over 300, then ignite + if(exposed_temperature > material.ignition_point)//If the temperature of the object is over 300, then ignite burn(exposed_temperature) return ..() -/turf/simulated/wall/Bumped(AM as mob|obj) - radiate() - ..() - /turf/simulated/wall/Destroy() + processing_turfs -= src dismantle_wall(null,null,1) - ..() \ No newline at end of file + ..() diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 7af228b49c..e5ae4e1bb9 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -378,3 +378,6 @@ if(!LinkBlocked(src, t) && !TurfBlockedNonWindow(t)) L.Add(t) return L + +/turf/proc/process() + return PROCESS_KILL From 180a5732a1d9488bbf62251d1e22f9f26611836a Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 10:29:17 +0200 Subject: [PATCH 106/199] Changelog entry. --- html/changelogs/PsiOmegaDelta-TurfProcessing.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/PsiOmegaDelta-TurfProcessing.yml diff --git a/html/changelogs/PsiOmegaDelta-TurfProcessing.yml b/html/changelogs/PsiOmegaDelta-TurfProcessing.yml new file mode 100644 index 0000000000..a7bb128b14 --- /dev/null +++ b/html/changelogs/PsiOmegaDelta-TurfProcessing.yml @@ -0,0 +1,4 @@ +author: PsiOmegaDelta +delete-after: True +changes: + - rscadd: "Turf are now processed. This, for example, causes radioactive walls to regularly irradiate nearby mobs." From af14ec1855efd18b6e2b9410964f85b94f44a1da Mon Sep 17 00:00:00 2001 From: Kelenius Date: Sat, 16 May 2015 11:43:30 +0300 Subject: [PATCH 107/199] Inflatables now lose deflate verb when it's used --- code/game/objects/structures/inflatable.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index a9b1359b75..0aae020ba1 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -111,6 +111,7 @@ if(isobserver(usr)) //to stop ghosts from deflating return + verbs -= /obj/structure/inflatable/verb/hand_deflate deflate() /obj/structure/inflatable/attack_generic(var/mob/user, var/damage, var/attack_verb) From 729a7a3ec9940b33fe4d047ea9bf7d8e7f39cc85 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 10:59:45 +0200 Subject: [PATCH 108/199] Gamestart cleanup. * setup_economy() was called twice. * Game state is set to playing just before creating characters, this ensures equipment such as headsets initialize properly(). * Removes the sleep in manifest creation. Prevents duplicate manifest entries from occurring if one joins within 4 seconds of round start. --- code/controllers/master_controller.dm | 1 - code/datums/datacore.dm | 4 +--- code/game/gamemodes/gameticker.dm | 2 +- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/code/controllers/master_controller.dm b/code/controllers/master_controller.dm index d698454cab..0152af8b13 100644 --- a/code/controllers/master_controller.dm +++ b/code/controllers/master_controller.dm @@ -39,7 +39,6 @@ datum/controller/game_controller/proc/setup() setup_objects() setupgenetics() - setup_economy() SetupXenoarch() transfer_controller = new diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 97e1f59582..8bc6cc0580 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -2,10 +2,8 @@ data_core = new /obj/effect/datacore() return 1 -/obj/effect/datacore/proc/manifest(var/nosleep = 0) +/obj/effect/datacore/proc/manifest() spawn() - if(!nosleep) - sleep(40) for(var/mob/living/carbon/human/H in player_list) manifest_inject(H) return diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index 08ad7e7253..2d9a4b5f80 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -110,11 +110,11 @@ var/global/datum/controller/gameticker/ticker else src.mode.announce() + current_state = GAME_STATE_PLAYING create_characters() //Create player characters and transfer them collect_minds() equip_characters() data_core.manifest() - current_state = GAME_STATE_PLAYING callHook("roundstart") From 36acf64f18795f0dec3d588ae6411c223d7a7493 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 18:33:03 +0930 Subject: [PATCH 109/199] Partial fix for #8825 --- .../mob/living/carbon/human/update_icons.dm | 2 +- code/modules/organs/organ_external.dm | 21 +++++++++++-------- code/modules/organs/organ_icon.dm | 6 +++++- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 9dfe4b27d9..840ead0ac6 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -330,7 +330,7 @@ var/global/list/damage_icon_parts = list() overlays_standing[HAIR_LAYER] = null var/obj/item/organ/external/head/head_organ = get_organ("head") - if( !head_organ || (head_organ.status & ORGAN_DESTROYED) ) + if(!head_organ || head_organ.is_stump() || (head_organ.status & ORGAN_DESTROYED) ) if(update_icons) update_icons() return diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index 4bf7b9c99e..0e1878c81e 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -226,7 +226,7 @@ var/obj/item/W = used_weapon if(W.w_class >= 3) edge_eligible = 1 - + if(brute >= threshold || (edge_eligible && brute >= threshold/3)) if((sharp || edge)) droplimb(0,DROPLIMB_EDGE) @@ -917,14 +917,15 @@ Note that amputating the affected organ does in fact remove the infection from t /obj/item/organ/external/proc/disfigure(var/type = "brute") if (disfigured) return - if(type == "brute") - owner.visible_message("\red You hear a sickening cracking sound coming from \the [owner]'s [name].", \ - "\red Your [name] becomes a mangled mess!", \ - "\red You hear a sickening crack.") - else - owner.visible_message("\red \The [owner]'s [name] melts away, turning into mangled mess!", \ - "\red Your [name] melts away!", \ - "\red You hear a sickening sizzle.") + if(owner) + if(type == "brute") + owner.visible_message("\red You hear a sickening cracking sound coming from \the [owner]'s [name].", \ + "\red Your [name] becomes a mangled mess!", \ + "\red You hear a sickening crack.") + else + owner.visible_message("\red \The [owner]'s [name] melts away, turning into mangled mess!", \ + "\red Your [name] melts away!", \ + "\red You hear a sickening sizzle.") disfigured = 1 /**************************************************** @@ -1077,6 +1078,8 @@ Note that amputating the affected organ does in fact remove the infection from t owner.u_equip(owner.l_ear) owner.u_equip(owner.r_ear) owner.u_equip(owner.wear_mask) + spawn(1) + owner.update_hair() ..() /obj/item/organ/external/head/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list()) diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index d05a269f28..7036e7e725 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -34,6 +34,7 @@ var/global/list/limb_icon_cache = list() /obj/item/organ/external/head/get_icon() ..() + overlays.Cut() if(owner.species.has_organ["eyes"]) var/obj/item/organ/eyes/eyes = owner.internal_organs_by_name["eyes"] if(owner.species.eyes) @@ -43,9 +44,12 @@ var/global/list/limb_icon_cache = list() else eyes_icon.Blend(rgb(128,0,0), ICON_ADD) mob_icon.Blend(eyes_icon, ICON_OVERLAY) + overlays |= eyes_icon if(owner.lip_style && (owner.species && (owner.species.flags & HAS_LIPS))) - mob_icon.Blend(new/icon('icons/mob/human_face.dmi', "lips_[owner.lip_style]_s"), ICON_OVERLAY) + var/icon/lip_icon = new/icon('icons/mob/human_face.dmi', "lips_[owner.lip_style]_s") + overlays |= lip_icon + mob_icon.Blend(lip_icon, ICON_OVERLAY) if(owner.f_style) var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[owner.f_style] From bc0e87ceaab155c22ccdc2b2508764673d77d58a Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 10:38:50 +0200 Subject: [PATCH 110/199] Destroying a camera now also cuts wires randomly. --- code/datums/wires/wires.dm | 5 +++++ code/game/machinery/camera/camera.dm | 2 ++ 2 files changed, 7 insertions(+) diff --git a/code/datums/wires/wires.dm b/code/datums/wires/wires.dm index 3b0b54942f..0555a140bd 100644 --- a/code/datums/wires/wires.dm +++ b/code/datums/wires/wires.dm @@ -278,6 +278,11 @@ var/const/POWER = 8 var/r = rand(1, wires.len) CutWireIndex(r) +/datum/wires/proc/RandomCutAll(var/probability = 10) + for(var/i = 1; i < MAX_FLAG && i < (1 << wire_count); i += i) + if(prob(probability)) + CutWireIndex(i) + /datum/wires/proc/CutAll() for(var/i = 1; i < MAX_FLAG && i < (1 << wire_count); i += i) CutWireIndex(i) diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index ec9c17f241..43e26a7d46 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -226,6 +226,8 @@ //Used when someone breaks a camera /obj/machinery/camera/proc/destroy() stat |= BROKEN + wires.RandomCutAll() + kick_viewers() triggerCameraAlarm() update_icon() From 26ad3d2b92c24dd92fd68f089547dc278d953087 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 11:04:40 +0200 Subject: [PATCH 111/199] Changelog entry. --- html/changelogs/PsiOmegaDelta-RandomWireBreaking.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/PsiOmegaDelta-RandomWireBreaking.yml diff --git a/html/changelogs/PsiOmegaDelta-RandomWireBreaking.yml b/html/changelogs/PsiOmegaDelta-RandomWireBreaking.yml new file mode 100644 index 0000000000..64d8b00286 --- /dev/null +++ b/html/changelogs/PsiOmegaDelta-RandomWireBreaking.yml @@ -0,0 +1,5 @@ +author: PsiOmegaDelta +delete-after: True + +changes: + - tweak: "Destroying a camera by brute force now has a chance to break the wiring within." From b4bfe917ebc4210387a25a9c88d423927e53108e Mon Sep 17 00:00:00 2001 From: Kelenius Date: Sat, 16 May 2015 12:05:14 +0300 Subject: [PATCH 112/199] Fixes #9294 --- code/modules/reagents/Chemistry-Holder.dm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index 1c7a906927..7782219bd7 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -157,17 +157,18 @@ /* Holder-to-chemical */ /datum/reagents/proc/add_reagent(var/id, var/amount, var/data = null, var/safety = 0) - if(!isnum(amount)) + if(!isnum(amount) || amount <= 0) return 0 + update_total() amount = min(amount, get_free_space()) for(var/datum/reagent/current in reagent_list) if(current.id == id) current.volume += amount - update_total() if(!isnull(data)) // For all we know, it could be zero or empty string and meaningful current.mix_data(data, amount) + update_total() if(!safety) handle_reactions() if(my_atom) @@ -179,8 +180,8 @@ reagent_list += R R.holder = src R.volume = amount - update_total() R.initialize_data(data) + update_total() if(!safety) handle_reactions() if(my_atom) From 1de493c272c72415b03114651412a445b8ab518d Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 18:45:31 +0930 Subject: [PATCH 113/199] Fixes #9021 --- .../carbon/alien/diona/diona_attacks.dm | 17 +++---------- .../living/carbon/alien/diona/diona_powers.dm | 25 +++++++++++-------- 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm b/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm index 58aba691dd..981ab4433f 100644 --- a/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm +++ b/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm @@ -1,16 +1,7 @@ /mob/living/carbon/alien/diona/attack_hand(mob/living/carbon/human/M as mob) - - if(istype(M)) - //Let people pick the little buggers up. - if(M.a_intent == I_HELP) - if(M.species && M.species.name == "Diona") - M << "You feel your being twine with that of [src] as it merges with your biomass." - src << "You feel your being twine with that of [M] as you merge with its biomass." - src.verbs += /mob/living/carbon/alien/diona/proc/split - src.verbs -= /mob/living/carbon/alien/diona/proc/merge - src.loc = M - else - get_scooped(M) + if(istype(M) && M.a_intent == I_HELP) + if(M.species && M.species.name == "Diona" && do_merge(M)) return - + get_scooped(M) + return ..() \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/diona/diona_powers.dm b/code/modules/mob/living/carbon/alien/diona/diona_powers.dm index 65e1f6b1c0..54678e1ea0 100644 --- a/code/modules/mob/living/carbon/alien/diona/diona_powers.dm +++ b/code/modules/mob/living/carbon/alien/diona/diona_powers.dm @@ -24,18 +24,21 @@ var/mob/living/M = input(src,"Who do you wish to merge with?") in null|choices - if(!M || !src || !(src.Adjacent(M))) return + if(!M) + src << "There is nothing nearby to merge with." + else if(!do_merge(M)) + src << "You fail to merge with \the [M]..." - if(istype(M,/mob/living/carbon/human)) - M << "You feel your being twine with that of [src] as it merges with your biomass." - M.status_flags |= PASSEMOTES - - src << "You feel your being twine with that of [M] as you merge with its biomass." - src.loc = M - src.verbs += /mob/living/carbon/alien/diona/proc/split - src.verbs -= /mob/living/carbon/alien/diona/proc/merge - else - return +/mob/living/carbon/alien/diona/proc/do_merge(var/mob/living/carbon/human/H) + if(!istype(H) || !src || !(src.Adjacent(H))) + return 0 + H << "You feel your being twine with that of \the [src] as it merges with your biomass." + H.status_flags |= PASSEMOTES + src << "You feel your being twine with that of \the [H] as you merge with its biomass." + loc = H + verbs += /mob/living/carbon/alien/diona/proc/split + verbs -= /mob/living/carbon/alien/diona/proc/merge + return 1 /mob/living/carbon/alien/diona/proc/split() From 5c646e8365c2ab4bd7ca41dd8a0883326bad1409 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 11:24:21 +0200 Subject: [PATCH 114/199] Limits wall processing. --- code/controllers/Processes/turf.dm | 2 +- code/game/turfs/simulated/walls.dm | 22 +++++++++++++--------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/code/controllers/Processes/turf.dm b/code/controllers/Processes/turf.dm index c93325012c..2ac33f48ba 100644 --- a/code/controllers/Processes/turf.dm +++ b/code/controllers/Processes/turf.dm @@ -2,7 +2,7 @@ var/global/list/turf/processing_turfs = list() /datum/controller/process/turf/setup() name = "turf" - schedule_interval = 30 // every 3 seconds + schedule_interval = 20 // every 2 seconds /datum/controller/process/turf/doWork() for(var/turf/T in processing_turfs) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 4d14bdac04..0ff8136243 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -32,11 +32,19 @@ var/list/global/wall_cache = list() if(!isnull(rmaterialtype)) reinf_material = name_to_material[rmaterialtype] update_material() + processing_turfs |= src +/turf/simulated/wall/Destroy() + processing_turfs -= src + dismantle_wall(null,null,1) + ..() + + /turf/simulated/wall/process() // Calling parent will kill processing - radiate() + if(!radiate()) + return PROCESS_KILL /turf/simulated/wall/bullet_act(var/obj/item/projectile/Proj) if(istype(Proj,/obj/item/projectile/beam)) @@ -238,12 +246,13 @@ var/list/global/wall_cache = list() return 0 /turf/simulated/wall/proc/radiate() - if(!material.radioactivity) + var/total_radiation = material.radioactivity + (reinf_material ? reinf_material.radioactivity / 2 : 0) + if(!total_radiation) return for(var/mob/living/L in range(3,src)) - L.apply_effect(material.radioactivity,IRRADIATE,0) - return + L.apply_effect(total_radiation, IRRADIATE,0) + return total_radiation /turf/simulated/wall/proc/burn(temperature) spawn(2) @@ -265,8 +274,3 @@ var/list/global/wall_cache = list() burn(exposed_temperature) return ..() - -/turf/simulated/wall/Destroy() - processing_turfs -= src - dismantle_wall(null,null,1) - ..() From 137c77c19dc802f912b4a9c8d124bc1c5b357159 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Sat, 16 May 2015 10:48:59 +0100 Subject: [PATCH 115/199] Typo fix --- code/modules/hydroponics/trays/tray_tools.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/hydroponics/trays/tray_tools.dm b/code/modules/hydroponics/trays/tray_tools.dm index da6c996ac9..500ab1c1ff 100644 --- a/code/modules/hydroponics/trays/tray_tools.dm +++ b/code/modules/hydroponics/trays/tray_tools.dm @@ -169,7 +169,7 @@ switch(grown_seed.get_trait(TRAIT_CARNIVOROUS)) if(1) - dat += "
      It is carniovorous and will eat tray pests for sustenance." + dat += "
      It is carnivorous and will eat tray pests for sustenance." if(2) dat += "
      It is carnivorous and poses a significant threat to living things around it." From 966d797e0712eab4db4647051dfc905acf1c1063 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 19:59:21 +0930 Subject: [PATCH 116/199] Converts bat to use the material system. --- baystation12.dme | 1 + code/game/objects/items/weapons/bats.dm | 80 ++++++++++++++++++++ code/game/objects/items/weapons/twohanded.dm | 63 ++++----------- code/game/objects/structures/window.dm | 4 +- code/modules/materials/materials.dm | 50 ++++++++++-- 5 files changed, 142 insertions(+), 56 deletions(-) create mode 100644 code/game/objects/items/weapons/bats.dm diff --git a/baystation12.dme b/baystation12.dme index e79d4b43af..fad46ccc34 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -605,6 +605,7 @@ #include "code\game\objects\items\stacks\tiles\tile_types.dm" #include "code\game\objects\items\weapons\AI_modules.dm" #include "code\game\objects\items\weapons\autopsy.dm" +#include "code\game\objects\items\weapons\bats.dm" #include "code\game\objects\items\weapons\candle.dm" #include "code\game\objects\items\weapons\cards_ids.dm" #include "code\game\objects\items\weapons\cigs_lighters.dm" diff --git a/code/game/objects/items/weapons/bats.dm b/code/game/objects/items/weapons/bats.dm new file mode 100644 index 0000000000..563cc7d161 --- /dev/null +++ b/code/game/objects/items/weapons/bats.dm @@ -0,0 +1,80 @@ +/obj/item/weapon/twohanded/baseballbat + name = "wooden bat" + desc = "HOME RUN!" + icon_state = "metalbat0" + base_icon = "metalbat" + item_state = "metalbat" + sharp = 0 + edge = 0 + w_class = 3 + force = 10 + throw_speed = 3 + throw_range = 7 + throwforce = 7 + attack_verb = list("smashed", "beaten", "slammed", "smacked", "struck", "battered", "bonked") + hitsound = 'sound/weapons/genhit3.ogg' + force_wielded = 20 + health = 10 + var/material/material + +/obj/item/weapon/twohanded/baseballbat/New(var/newloc, var/material_key) + ..(newloc) + if(!material_key) + material_key = "wood" + material = get_material_by_name(material_key) + if(!material) + qdel(src) + else + name = "[material.display_name] bat" + base_name = name + health = round(material.integrity/10) + force = round(material.get_blunt_damage()/2) + force_unwielded = force + force_wielded = material.get_blunt_damage() + color = material.icon_colour + if(material.products_need_process()) + processing_objects |= src + +/obj/item/weapon/twohanded/baseballbat/Destroy() + processing_objects -= src + ..() + +/obj/item/weapon/twohanded/baseballbat/attack() + if(!..()) + return + if(!prob(material.hardness)) + health-- + if(health<=0) + shatter() + +/obj/item/weapon/twohanded/baseballbat/proc/shatter() + var/turf/T = get_turf(src) + T.visible_message("\The [src] shatters!") + if(istype(loc, /mob/living)) + var/mob/living/M = loc + M.drop_from_inventory(src) + playsound(src, "shatter", 70, 1) + new material.shard_type(T) + qdel(src) + +/obj/item/weapon/twohanded/baseballbat/process() + if(!material.radioactivity) + return + for(var/mob/living/L in range(1,src)) + L.apply_effect(round(material.radioactivity/3),IRRADIATE,0) + +//Predefined materials go here. +/obj/item/weapon/twohanded/baseballbat/metal/New(var/newloc) + ..(newloc,"steel") + +/obj/item/weapon/twohanded/baseballbat/uranium/New(var/newloc) + ..(newloc,"uranium") + +/obj/item/weapon/twohanded/baseballbat/gold/New(var/newloc) + ..(newloc,"gold") + +/obj/item/weapon/twohanded/baseballbat/platinum/New(var/newloc) + ..(newloc,"platinum") + +/obj/item/weapon/twohanded/baseballbat/diamond/New(var/newloc) + ..(newloc,"diamond") \ No newline at end of file diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm index edf09f6ea8..e4a42d3f33 100644 --- a/code/game/objects/items/weapons/twohanded.dm +++ b/code/game/objects/items/weapons/twohanded.dm @@ -19,30 +19,34 @@ /obj/item/weapon/twohanded var/wielded = 0 var/force_wielded = 0 + var/force_unwielded var/wieldsound = null var/unwieldsound = null var/base_icon + var/base_name /obj/item/weapon/twohanded/proc/unwield() wielded = 0 - force = initial(force) - name = "[initial(name)]" + force = force_unwielded + name = "[base_name]" update_icon() /obj/item/weapon/twohanded/proc/wield() wielded = 1 force = force_wielded - name = "[initial(name)] (Wielded)" + name = "[base_name] (Wielded)" update_icon() /obj/item/weapon/twohanded/New() ..() update_icon() + force_unwielded = force + base_name = name /obj/item/weapon/twohanded/mob_can_equip(M as mob, slot) //Cannot equip wielded items. if(wielded) - M << "Unwield the [initial(name)] first!" + M << "Unwield the [base_name] first!" return 0 return ..() @@ -89,13 +93,13 @@ user << "You need your other hand to be empty" return wield() - user << "You grab the [initial(name)] with both hands." + user << "You grab the [base_name] with both hands." if (src.wieldsound) playsound(src.loc, wieldsound, 50, 1) var/obj/item/weapon/twohanded/offhand/O = new(user) ////Let's reserve his other hand~ - O.name = "[initial(name)] - offhand" - O.desc = "Your second grip on the [initial(name)]" + O.name = "[base_name] - offhand" + O.desc = "Your second grip on the [base_name]" user.put_in_inactive_hand(O) if(istype(user,/mob/living/carbon/human)) @@ -111,11 +115,11 @@ icon_state = "offhand" name = "offhand" - unwield() - qdel(src) +/obj/item/weapon/twohanded/offhand/unwield() + qdel(src) - wield() - qdel(src) +/obj/item/weapon/twohanded/offhand/wield() + qdel(src) /obj/item/weapon/twohanded/offhand/update_icon() return @@ -142,15 +146,7 @@ if(A && wielded && (istype(A,/obj/structure/window) || istype(A,/obj/structure/grille))) //destroys windows and grilles in one hit if(istype(A,/obj/structure/window)) //should just make a window.Break() proc but couldn't bother with it var/obj/structure/window/W = A - - new /obj/item/weapon/shard( W.loc ) - if(W.reinf) PoolOrNew(/obj/item/stack/rods, W.loc) - - if (W.dir == SOUTHWEST) - new /obj/item/weapon/shard( W.loc ) - if(W.reinf) PoolOrNew(/obj/item/stack/rods, W.loc) - qdel(A) - + W.shatter() /* * Double-Bladed Energy Swords - Cheridan @@ -209,30 +205,3 @@ flags = NOSHIELD hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("attacked", "poked", "jabbed", "torn", "gored") - -/obj/item/weapon/twohanded/baseballbat - name = "wooden bat" - desc = "HOME RUN!" - icon_state = "woodbat0" - base_icon = "woodbat" - item_state = "woodbat" - sharp = 0 - edge = 0 - w_class = 3 - force = 10 - throw_speed = 3 - throw_range = 7 - throwforce = 7 - attack_verb = list("smashed", "beaten", "slammed", "smacked", "struck", "battered", "bonked") - hitsound = 'sound/weapons/genhit3.ogg' - force_wielded = 20 - -/obj/item/weapon/twohanded/baseballbat/metal - name = "metal bat" - desc = "A shiny metal bat." - icon_state = "metalbat0" - base_icon = "metalbat" - item_state = "metalbat" - force = 15 - w_class = 3.0 - force_wielded = 25 \ No newline at end of file diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 387c76eb69..5c51758380 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -87,11 +87,11 @@ var/index = null index = 0 while(index < 2) - new shardtype(loc) + new shardtype(loc) //todo pooling? if(reinf) PoolOrNew(/obj/item/stack/rods, loc) index++ else - new shardtype(loc) + new shardtype(loc) //todo pooling? if(reinf) PoolOrNew(/obj/item/stack/rods, loc) qdel(src) return diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index d2fa4bcab1..1e49ff8742 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -13,7 +13,6 @@ var/list/name_to_material /proc/get_material_by_name(name) if(!name_to_material) populate_material_list() - return name_to_material[name] /* @@ -28,23 +27,30 @@ var/list/name_to_material var/name // Tag for use in overlay generation/list population . var/display_name var/flags = 0 - var/icon_base = "metal" + var/rotting_touch_message = "crumbles under your touch" + + // Shards/tables/structures + var/tableslam_noise = 'sound/weapons/tablehit1.ogg' + var/shard_type = SHARD_SHRAPNEL + var/shard_icon + var/shard_can_repair = 1 + + // Icons var/icon_colour + var/icon_base = "metal" var/icon_reinf = "reinf_metal" var/stack_type + + // Attributes var/cut_delay = 0 var/radioactivity var/ignition_point var/melting_point = 1800 // K, walls will take damage if they're next to a fire hotter than this var/integrity = 150 // Damage before wall falls apart, essentially. var/hardness = 60 // Used to determine if a hulk can punch through this wall. - var/rotting_touch_message = "crumbles under your touch" var/opacity = 1 var/explosion_resistance = 5 - var/shard_type = SHARD_SHRAPNEL - var/shard_icon - var/shard_can_repair = 1 - var/tableslam_noise = 'sound/weapons/tablehit1.ogg' + var/weight = 20 /material/New() ..() @@ -53,6 +59,15 @@ var/list/name_to_material if(!shard_icon) shard_icon = shard_type +/material/proc/get_blunt_damage() + return weight //todo + +/material/proc/get_edge_damage() + return round(hardness/4) //todo + +/material/proc/products_need_process() + return (radioactivity>0) //todo + /material/placeholder name = "placeholder" @@ -84,6 +99,7 @@ var/list/name_to_material icon_base = "stone" icon_reinf = "reinf_stone" icon_colour = "#007A00" + weight = 22 /material/diamond name = "diamond" @@ -94,16 +110,21 @@ var/list/name_to_material opacity = 0.4 shard_type = SHARD_SHARD tableslam_noise = 'sound/effects/Glasshit.ogg' + hardness = 100 /material/gold name = "gold" stack_type = /obj/item/stack/sheet/mineral/gold icon_colour = "#EDD12F" + weight = 24 + hardness = 40 /material/silver name = "silver" stack_type = /obj/item/stack/sheet/mineral/silver icon_colour = "#D1E6E3" + weight = 22 + hardness = 50 /material/phoron name = "phoron" @@ -112,6 +133,7 @@ var/list/name_to_material icon_base = "stone" icon_colour = "#FC2BC5" shard_type = SHARD_SHARD + hardness = 30 /material/sandstone name = "sandstone" @@ -120,6 +142,8 @@ var/list/name_to_material icon_reinf = "reinf_stone" icon_colour = "#D9C179" shard_type = SHARD_STONE_PIECE + weight = 22 + hardness = 55 /material/steel name = DEFAULT_WALL_MATERIAL @@ -143,6 +167,8 @@ var/list/name_to_material icon_reinf = "reinf_over" icon_colour = "#777777" explosion_resistance = 25 + hardness = 80 + weight = 23 /material/glass name = "glass" @@ -153,6 +179,8 @@ var/list/name_to_material integrity = 100 shard_type = SHARD_SHARD tableslam_noise = 'sound/effects/Glasshit.ogg' + hardness = 15 + weight = 15 /material/glass/phoron name = "phoron glass" @@ -161,6 +189,8 @@ var/list/name_to_material ignition_point = 300 integrity = 200 // idk why but phoron windows are strong, so. icon_colour = "#FC2BC5" + hardness = 10 + weight = 10 /material/plastic name = "plastic" @@ -169,6 +199,8 @@ var/list/name_to_material icon_base = "solid" icon_reinf = "reinf_over" icon_colour = "#CCCCCC" + hardness = 10 + weight = 12 /material/osmium name = "osmium" @@ -189,11 +221,13 @@ var/list/name_to_material name = "platinum" stack_type = /obj/item/stack/sheet/mineral/platinum icon_colour = "#9999FF" + weight = 27 /material/iron name = "iron" stack_type = /obj/item/stack/sheet/mineral/iron icon_colour = "#5C5454" + weight = 22 /material/wood name = "wood" @@ -204,6 +238,8 @@ var/list/name_to_material explosion_resistance = 2 shard_type = SHARD_SPLINTER shard_can_repair = 0 // you can't weld splinters back into planks + hardness = 15 + weight = 18 /material/wood/holographic name = "holographic wood" From f27ddd548fd444a876fa61e6692c67e99f4e9c5c Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 20:09:28 +0930 Subject: [PATCH 117/199] Restructuring a bunch of files in prep for widespread path changes. --- baystation12.dme | 12 +- .../items/weapons/improvised_components.dm | 68 +++ code/game/objects/items/weapons/kitchen.dm | 468 ------------------ .../items/weapons/{ => material}/bats.dm | 0 .../objects/items/weapons/material/kitchen.dm | 392 +++++++++++++++ .../objects/items/weapons/material/knives.dm | 106 ++++ .../objects/items/weapons/material/misc.dm | 11 + .../items/weapons/{ => material}/shards.dm | 240 ++++----- .../objects/items/weapons/material/swords.dm | 49 ++ .../objects/items/weapons/material/thrown.dm | 31 ++ .../items/weapons/{ => material}/twohanded.dm | 0 code/game/objects/items/weapons/weaponry.dm | 209 -------- 12 files changed, 786 insertions(+), 800 deletions(-) create mode 100644 code/game/objects/items/weapons/improvised_components.dm rename code/game/objects/items/weapons/{ => material}/bats.dm (100%) create mode 100644 code/game/objects/items/weapons/material/kitchen.dm create mode 100644 code/game/objects/items/weapons/material/knives.dm create mode 100644 code/game/objects/items/weapons/material/misc.dm rename code/game/objects/items/weapons/{ => material}/shards.dm (96%) create mode 100644 code/game/objects/items/weapons/material/swords.dm create mode 100644 code/game/objects/items/weapons/material/thrown.dm rename code/game/objects/items/weapons/{ => material}/twohanded.dm (100%) diff --git a/baystation12.dme b/baystation12.dme index fad46ccc34..7b3e8565e8 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -605,7 +605,6 @@ #include "code\game\objects\items\stacks\tiles\tile_types.dm" #include "code\game\objects\items\weapons\AI_modules.dm" #include "code\game\objects\items\weapons\autopsy.dm" -#include "code\game\objects\items\weapons\bats.dm" #include "code\game\objects\items\weapons\candle.dm" #include "code\game\objects\items\weapons\cards_ids.dm" #include "code\game\objects\items\weapons\cigs_lighters.dm" @@ -618,6 +617,7 @@ #include "code\game\objects\items\weapons\flamethrower.dm" #include "code\game\objects\items\weapons\gift_wrappaper.dm" #include "code\game\objects\items\weapons\handcuffs.dm" +#include "code\game\objects\items\weapons\improvised_components.dm" #include "code\game\objects\items\weapons\kitchen.dm" #include "code\game\objects\items\weapons\manuals.dm" #include "code\game\objects\items\weapons\mop.dm" @@ -628,7 +628,6 @@ #include "code\game\objects\items\weapons\RCD.dm" #include "code\game\objects\items\weapons\RSF.dm" #include "code\game\objects\items\weapons\scrolls.dm" -#include "code\game\objects\items\weapons\shards.dm" #include "code\game\objects\items\weapons\shields.dm" #include "code\game\objects\items\weapons\stunbaton.dm" #include "code\game\objects\items\weapons\surgery_tools.dm" @@ -636,7 +635,6 @@ #include "code\game\objects\items\weapons\tape.dm" #include "code\game\objects\items\weapons\teleportation.dm" #include "code\game\objects\items\weapons\tools.dm" -#include "code\game\objects\items\weapons\twohanded.dm" #include "code\game\objects\items\weapons\weaponry.dm" #include "code\game\objects\items\weapons\weldbackpack.dm" #include "code\game\objects\items\weapons\wires.dm" @@ -674,6 +672,14 @@ #include "code\game\objects\items\weapons\implants\implantfreedom.dm" #include "code\game\objects\items\weapons\implants\implantpad.dm" #include "code\game\objects\items\weapons\implants\implantuplink.dm" +#include "code\game\objects\items\weapons\material\bats.dm" +#include "code\game\objects\items\weapons\material\kitchen.dm" +#include "code\game\objects\items\weapons\material\knives.dm" +#include "code\game\objects\items\weapons\material\misc.dm" +#include "code\game\objects\items\weapons\material\shards.dm" +#include "code\game\objects\items\weapons\material\swords.dm" +#include "code\game\objects\items\weapons\material\thrown.dm" +#include "code\game\objects\items\weapons\material\twohanded.dm" #include "code\game\objects\items\weapons\melee\energy.dm" #include "code\game\objects\items\weapons\melee\misc.dm" #include "code\game\objects\items\weapons\storage\backpack.dm" diff --git a/code/game/objects/items/weapons/improvised_components.dm b/code/game/objects/items/weapons/improvised_components.dm new file mode 100644 index 0000000000..31a6e8d6a9 --- /dev/null +++ b/code/game/objects/items/weapons/improvised_components.dm @@ -0,0 +1,68 @@ +/obj/item/butterflyconstruction + name = "unfinished concealed knife" + desc = "An unfinished concealed knife, it looks like the screws need to be tightened." + icon = 'icons/obj/buildingobject.dmi' + icon_state = "butterflystep1" + +/obj/item/butterflyconstruction/attackby(obj/item/W as obj, mob/user as mob) + if(istype(W,/obj/item/weapon/screwdriver)) + user << "You finish the concealed blade weapon." + new /obj/item/weapon/butterfly(user.loc) + qdel(src) + return + +/obj/item/butterflyblade + name = "knife blade" + desc = "A knife blade. Unusable as a weapon without a grip." + icon = 'icons/obj/buildingobject.dmi' + icon_state = "butterfly2" + matter = list(DEFAULT_WALL_MATERIAL = 5000) + +/obj/item/butterflyhandle + name = "concealed knife grip" + desc = "A plasteel grip with screw fittings for a blade." + icon = 'icons/obj/buildingobject.dmi' + icon_state = "butterfly1" + matter = list(DEFAULT_WALL_MATERIAL = 4000) + +/obj/item/butterflyhandle/attackby(obj/item/W as obj, mob/user as mob) + if(istype(W,/obj/item/butterflyblade)) + user << "You attach the two concealed blade parts." + new /obj/item/butterflyconstruction(user.loc) + qdel(W) + qdel(src) + return + update_icon(user) + +/obj/item/weapon/wirerod + name = "wired rod" + desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit." + icon_state = "wiredrod" + item_state = "rods" + flags = CONDUCT + force = 8 + throwforce = 10 + w_class = 3 + attack_verb = list("hit", "bludgeoned", "whacked", "bonked") + + +/obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob) + ..() + if(istype(I, /obj/item/weapon/shard)) + var/obj/item/weapon/twohanded/spear/S = new /obj/item/weapon/twohanded/spear + + user.put_in_hands(S) + user << "You fasten the glass shard to the top of the rod with the cable." + qdel(I) + qdel(src) + update_icon(user) + + else if(istype(I, /obj/item/weapon/wirecutters)) + var/obj/item/weapon/melee/baton/cattleprod/P = new /obj/item/weapon/melee/baton/cattleprod + + user.put_in_hands(P) + user << "You fasten the wirecutters to the top of the rod with the cable, prongs outward." + qdel(I) + qdel(src) + update_icon(user) + update_icon(user) diff --git a/code/game/objects/items/weapons/kitchen.dm b/code/game/objects/items/weapons/kitchen.dm index 3a1496939e..e69de29bb2 100644 --- a/code/game/objects/items/weapons/kitchen.dm +++ b/code/game/objects/items/weapons/kitchen.dm @@ -1,468 +0,0 @@ -/* Kitchen tools - * Contains: - * Utensils - * Spoons - * Forks - * Knives - * Kitchen knives - * Butcher's cleaver - * Rolling Pins - * Trays - */ - -/obj/item/weapon/kitchen - icon = 'icons/obj/kitchen.dmi' - -/* - * Utensils - */ -/obj/item/weapon/kitchen/utensil - force = 5.0 - w_class = 1.0 - throwforce = 5.0 - throw_speed = 3 - throw_range = 5 - flags = CONDUCT - origin_tech = "materials=1" - attack_verb = list("attacked", "stabbed", "poked") - sharp = 0 - - var/loaded //Descriptive string for currently loaded food object. - -/obj/item/weapon/kitchen/utensil/New() - if (prob(60)) - src.pixel_y = rand(0, 4) - - create_reagents(5) - return - -/obj/item/weapon/kitchen/utensil/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - if(!istype(M)) - return ..() - - if(user.a_intent != I_HELP) - if(user.zone_sel.selecting == "head" || user.zone_sel.selecting == "eyes") - if((CLUMSY in user.mutations) && prob(50)) - M = user - return eyestab(M,user) - else - return ..() - - if (reagents.total_volume > 0) - reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) - if(M == user) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\blue [] eats some [] from \the [].", user, loaded, src), 1) - M.reagents.add_reagent("nutriment", 1) - else - for(var/mob/O in viewers(M, null)) - O.show_message(text("\blue [] feeds [] some [] from \the []", user, M, loaded, src), 1) - M.reagents.add_reagent("nutriment", 1) - playsound(M.loc,'sound/items/eatfood.ogg', rand(10,40), 1) - overlays.Cut() - return - else - ..() - -/obj/item/weapon/kitchen/utensil/fork - name = "fork" - desc = "It's a fork. Sure is pointy." - icon_state = "fork" - -/obj/item/weapon/kitchen/utensil/pfork - name = "plastic fork" - desc = "Yay, no washing up to do." - icon_state = "pfork" - -/obj/item/weapon/kitchen/utensil/spoon - name = "spoon" - desc = "It's a spoon. You can see your own upside-down face in it." - icon_state = "spoon" - attack_verb = list("attacked", "poked") - -/obj/item/weapon/kitchen/utensil/pspoon - name = "plastic spoon" - desc = "It's a plastic spoon. How dull." - icon_state = "pspoon" - attack_verb = list("attacked", "poked") - -/* - * Knives - */ -/obj/item/weapon/kitchen/utensil/knife - name = "knife" - desc = "Can cut through any food." - icon_state = "knife" - force = 10.0 - throwforce = 10.0 - sharp = 1 - edge = 1 - - suicide_act(mob/user) - viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") - return (BRUTELOSS) - -/obj/item/weapon/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) - if ((CLUMSY in user.mutations) && prob(50)) - user << "\red You accidentally cut yourself with the [src]." - user.take_organ_damage(20) - return - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/obj/item/weapon/kitchen/utensil/pknife - name = "plastic knife" - desc = "The bluntest of blades." - icon_state = "pknife" - force = 1 - throwforce = 1 - sharp = 0 - edge = 1 //for cutting pizzas - -/obj/item/weapon/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) - if ((CLUMSY in user.mutations) && prob(50)) - user << "\red You somehow managed to cut yourself with the [src]." - user.take_organ_damage(20) - return - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/* - * Kitchen knives - */ -/obj/item/weapon/kitchenknife - name = "kitchen knife" - icon = 'icons/obj/kitchen.dmi' - icon_state = "knife" - desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." - flags = CONDUCT - sharp = 1 - edge = 1 - force = 10.0 - w_class = 3.0 - throwforce = 6.0 - throw_speed = 3 - throw_range = 6 - matter = list(DEFAULT_WALL_MATERIAL = 12000) - origin_tech = "materials=1" - attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - - suicide_act(mob/user) - viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") - return (BRUTELOSS) - -/obj/item/weapon/kitchenknife/hook - name = "meat hook" - desc = "A sharp, metal hook what sticks into things." - icon_state = "hook_knife" - item_state = "hook_knife" - -/obj/item/weapon/kitchenknife/ritual - name = "ritual knife" - desc = "The unearthly energies that once powered this blade are now dormant." - icon = 'icons/obj/wizard.dmi' - icon_state = "render" - -/* - * Bucher's cleaver - */ -/obj/item/weapon/butch - name = "butcher's cleaver" - icon = 'icons/obj/kitchen.dmi' - icon_state = "butch" - desc = "A huge thing used for chopping and chopping up meat. This includes clowns and clown-by-products." - flags = CONDUCT - force = 15.0 - w_class = 2.0 - throwforce = 8.0 - throw_speed = 3 - throw_range = 6 - matter = list(DEFAULT_WALL_MATERIAL = 12000) - origin_tech = "materials=1" - attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - sharp = 1 - edge = 1 - -/obj/item/weapon/butch/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/* - * Rolling Pins - */ - -/obj/item/weapon/kitchen/rollingpin - name = "rolling pin" - desc = "Used to knock out the Bartender." - icon_state = "rolling_pin" - force = 8.0 - throwforce = 10.0 - throw_speed = 2 - throw_range = 7 - w_class = 3.0 - attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") //I think the rollingpin attackby will end up ignoring this anyway. - -/obj/item/weapon/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob) - if ((CLUMSY in user.mutations) && prob(50)) - user << "\red The [src] slips out of your hand and hits your head." - user.take_organ_damage(10) - user.Paralyse(2) - return - - M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") - msg_admin_attack("[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey]) (JMP)") - - var/t = user:zone_sel.selecting - if (t == "head") - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if (H.stat < 2 && H.health < 50 && prob(90)) - // ******* Check - if (istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80)) - H << "\red The helmet protects you from being hit hard in the head!" - return - var/time = rand(2, 6) - if (prob(75)) - H.Paralyse(time) - else - H.Stun(time) - if(H.stat != 2) H.stat = 1 - user.visible_message("\red [H] has been knocked unconscious!", "\red You knock [H] unconscious!") - return - else - H.visible_message("\red [user] tried to knock [H] unconscious!", "\red [user] tried to knock you unconscious!") - H.eye_blurry += 3 - return ..() - -/* - * Trays - Agouri - */ -/obj/item/weapon/tray - name = "tray" - icon = 'icons/obj/food.dmi' - icon_state = "tray" - desc = "A metal tray to lay food on." - throwforce = 12.0 - throwforce = 10.0 - throw_speed = 1 - throw_range = 5 - w_class = 3.0 - flags = CONDUCT - matter = list(DEFAULT_WALL_MATERIAL = 3000) - /* // NOPE - var/food_total= 0 - var/burger_amt = 0 - var/cheese_amt = 0 - var/fries_amt = 0 - var/classyalcdrink_amt = 0 - var/alcdrink_amt = 0 - var/bottle_amt = 0 - var/soda_amt = 0 - var/carton_amt = 0 - var/pie_amt = 0 - var/meatbreadslice_amt = 0 - var/salad_amt = 0 - var/miscfood_amt = 0 - */ - var/list/carrying = list() // List of things on the tray. - Doohl - var/max_carry = 10 // w_class = 1 -- takes up 1 - // w_class = 2 -- takes up 3 - // w_class = 3 -- takes up 5 - -/obj/item/weapon/tray/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - - // Drop all the things. All of them. - overlays.Cut() - for(var/obj/item/I in carrying) - I.loc = M.loc - carrying.Remove(I) - if(isturf(I.loc)) - spawn() - for(var/i = 1, i <= rand(1,2), i++) - if(I) - step(I, pick(NORTH,SOUTH,EAST,WEST)) - sleep(rand(2,4)) - - - if((CLUMSY in user.mutations) && prob(50)) //What if he's a clown? - M << "\red You accidentally slam yourself with the [src]!" - M.Weaken(1) - user.take_organ_damage(2) - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - return - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' - return //it always returns, but I feel like adding an extra return just for safety's sakes. EDIT; Oh well I won't :3 - - var/mob/living/carbon/human/H = M ///////////////////////////////////// /Let's have this ready for later. - - - if(!(user.zone_sel.selecting == ("eyes" || "head"))) //////////////hitting anything else other than the eyes - if(prob(33)) - src.add_blood(H) - var/turf/location = H.loc - if (istype(location, /turf/simulated)) - location.add_blood(H) ///Plik plik, the sound of blood - - M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") - msg_admin_attack("[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey]) (JMP)") - - if(prob(15)) - M.Weaken(3) - M.take_organ_damage(3) - else - M.take_organ_damage(5) - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - return - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //we applied the damage, we played the sound, we showed the appropriate messages. Time to return and stop the proc - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - return - - - - - if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES))) - M << "\red You get slammed in the face with the tray, against your mask!" - if(prob(33)) - src.add_blood(H) - if (H.wear_mask) - H.wear_mask.add_blood(H) - if (H.head) - H.head.add_blood(H) - if (H.glasses && prob(33)) - H.glasses.add_blood(H) - var/turf/location = H.loc - if (istype(location, /turf/simulated)) //Addin' blood! At least on the floor and item :v - location.add_blood(H) - - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - if(prob(10)) - M.Stun(rand(1,3)) - M.take_organ_damage(3) - return - else - M.take_organ_damage(5) - return - - else //No eye or head protection, tough luck! - M << "\red You get slammed in the face with the tray!" - if(prob(33)) - src.add_blood(M) - var/turf/location = H.loc - if (istype(location, /turf/simulated)) - location.add_blood(H) - - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' again - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) - if(prob(30)) - M.Stun(rand(2,4)) - M.take_organ_damage(4) - return - else - M.take_organ_damage(8) - if(prob(30)) - M.Weaken(2) - return - return - -/obj/item/weapon/tray/var/cooldown = 0 //shield bash cooldown. based on world.time - -/obj/item/weapon/tray/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/kitchen/rollingpin)) - if(cooldown < world.time - 25) - user.visible_message("[user] bashes [src] with [W]!") - playsound(user.loc, 'sound/effects/shieldbash.ogg', 50, 1) - cooldown = world.time - else - ..() - -/* -===============~~~~~================================~~~~~==================== -= = -= Code for trays carrying things. By Doohl for Doohl erryday Doohl Doohl~ = -= = -===============~~~~~================================~~~~~==================== -*/ -/obj/item/weapon/tray/proc/calc_carry() - // calculate the weight of the items on the tray - var/val = 0 // value to return - - for(var/obj/item/I in carrying) - if(I.w_class == 1.0) - val ++ - else if(I.w_class == 2.0) - val += 3 - else - val += 5 - - return val - -/obj/item/weapon/tray/pickup(mob/user) - - if(!isturf(loc)) - return - - for(var/obj/item/I in loc) - if( I != src && !I.anchored && !istype(I, /obj/item/clothing/under) && !istype(I, /obj/item/clothing/suit) && !istype(I, /obj/item/projectile) ) - var/add = 0 - if(I.w_class == 1.0) - add = 1 - else if(I.w_class == 2.0) - add = 3 - else - add = 5 - if(calc_carry() + add >= max_carry) - break - - I.loc = src - carrying.Add(I) - overlays += image("icon" = I.icon, "icon_state" = I.icon_state, "layer" = 30 + I.layer) - -/obj/item/weapon/tray/dropped(mob/user) - - var/mob/living/M - for(M in src.loc) //to handle hand switching - return - - var/foundtable = 0 - for(var/obj/structure/table/T in loc) - foundtable = 1 - break - - overlays.Cut() - - for(var/obj/item/I in carrying) - I.loc = loc - carrying.Remove(I) - if(!foundtable && isturf(loc)) - // if no table, presume that the person just shittily dropped the tray on the ground and made a mess everywhere! - spawn() - for(var/i = 1, i <= rand(1,2), i++) - if(I) - step(I, pick(NORTH,SOUTH,EAST,WEST)) - sleep(rand(2,4)) diff --git a/code/game/objects/items/weapons/bats.dm b/code/game/objects/items/weapons/material/bats.dm similarity index 100% rename from code/game/objects/items/weapons/bats.dm rename to code/game/objects/items/weapons/material/bats.dm diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm new file mode 100644 index 0000000000..f2f383bba9 --- /dev/null +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -0,0 +1,392 @@ +/obj/item/weapon/kitchen + icon = 'icons/obj/kitchen.dmi' + +/* + * Utensils + */ +/obj/item/weapon/kitchen/utensil + force = 5.0 + w_class = 1.0 + throwforce = 5.0 + throw_speed = 3 + throw_range = 5 + flags = CONDUCT + origin_tech = "materials=1" + attack_verb = list("attacked", "stabbed", "poked") + sharp = 0 + + var/loaded //Descriptive string for currently loaded food object. + +/obj/item/weapon/kitchen/utensil/New() + if (prob(60)) + src.pixel_y = rand(0, 4) + + create_reagents(5) + return + +/obj/item/weapon/kitchen/utensil/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + if(!istype(M)) + return ..() + + if(user.a_intent != I_HELP) + if(user.zone_sel.selecting == "head" || user.zone_sel.selecting == "eyes") + if((CLUMSY in user.mutations) && prob(50)) + M = user + return eyestab(M,user) + else + return ..() + + if (reagents.total_volume > 0) + reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) + if(M == user) + for(var/mob/O in viewers(M, null)) + O.show_message(text("\blue [] eats some [] from \the [].", user, loaded, src), 1) + M.reagents.add_reagent("nutriment", 1) + else + for(var/mob/O in viewers(M, null)) + O.show_message(text("\blue [] feeds [] some [] from \the []", user, M, loaded, src), 1) + M.reagents.add_reagent("nutriment", 1) + playsound(M.loc,'sound/items/eatfood.ogg', rand(10,40), 1) + overlays.Cut() + return + else + ..() + +/obj/item/weapon/kitchen/utensil/fork + name = "fork" + desc = "It's a fork. Sure is pointy." + icon_state = "fork" + +/obj/item/weapon/kitchen/utensil/pfork + name = "plastic fork" + desc = "Yay, no washing up to do." + icon_state = "pfork" + +/obj/item/weapon/kitchen/utensil/spoon + name = "spoon" + desc = "It's a spoon. You can see your own upside-down face in it." + icon_state = "spoon" + attack_verb = list("attacked", "poked") + +/obj/item/weapon/kitchen/utensil/pspoon + name = "plastic spoon" + desc = "It's a plastic spoon. How dull." + icon_state = "pspoon" + attack_verb = list("attacked", "poked") + +/* + * Knives + */ +/obj/item/weapon/kitchen/utensil/knife + name = "knife" + desc = "Can cut through any food." + icon_state = "knife" + force = 10.0 + throwforce = 10.0 + sharp = 1 + edge = 1 + + suicide_act(mob/user) + viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") + return (BRUTELOSS) + +/obj/item/weapon/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) + if ((CLUMSY in user.mutations) && prob(50)) + user << "\red You accidentally cut yourself with the [src]." + user.take_organ_damage(20) + return + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) + return ..() + +/obj/item/weapon/kitchen/utensil/pknife + name = "plastic knife" + desc = "The bluntest of blades." + icon_state = "pknife" + force = 1 + throwforce = 1 + sharp = 0 + edge = 1 //for cutting pizzas + +/obj/item/weapon/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) + if ((CLUMSY in user.mutations) && prob(50)) + user << "\red You somehow managed to cut yourself with the [src]." + user.take_organ_damage(20) + return + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) + return ..() + +/* + * Rolling Pins + */ + +/obj/item/weapon/kitchen/rollingpin + name = "rolling pin" + desc = "Used to knock out the Bartender." + icon_state = "rolling_pin" + force = 8.0 + throwforce = 10.0 + throw_speed = 2 + throw_range = 7 + w_class = 3.0 + attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") //I think the rollingpin attackby will end up ignoring this anyway. + +/obj/item/weapon/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob) + if ((CLUMSY in user.mutations) && prob(50)) + user << "\red The [src] slips out of your hand and hits your head." + user.take_organ_damage(10) + user.Paralyse(2) + return + + M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") + user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") + msg_admin_attack("[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey]) (JMP)") + + var/t = user:zone_sel.selecting + if (t == "head") + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if (H.stat < 2 && H.health < 50 && prob(90)) + // ******* Check + if (istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80)) + H << "\red The helmet protects you from being hit hard in the head!" + return + var/time = rand(2, 6) + if (prob(75)) + H.Paralyse(time) + else + H.Stun(time) + if(H.stat != 2) H.stat = 1 + user.visible_message("\red [H] has been knocked unconscious!", "\red You knock [H] unconscious!") + return + else + H.visible_message("\red [user] tried to knock [H] unconscious!", "\red [user] tried to knock you unconscious!") + H.eye_blurry += 3 + return ..() + +/* + * Trays - Agouri + */ +/obj/item/weapon/tray + name = "tray" + icon = 'icons/obj/food.dmi' + icon_state = "tray" + desc = "A metal tray to lay food on." + throwforce = 12.0 + throwforce = 10.0 + throw_speed = 1 + throw_range = 5 + w_class = 3.0 + flags = CONDUCT + matter = list(DEFAULT_WALL_MATERIAL = 3000) + /* // NOPE + var/food_total= 0 + var/burger_amt = 0 + var/cheese_amt = 0 + var/fries_amt = 0 + var/classyalcdrink_amt = 0 + var/alcdrink_amt = 0 + var/bottle_amt = 0 + var/soda_amt = 0 + var/carton_amt = 0 + var/pie_amt = 0 + var/meatbreadslice_amt = 0 + var/salad_amt = 0 + var/miscfood_amt = 0 + */ + var/list/carrying = list() // List of things on the tray. - Doohl + var/max_carry = 10 // w_class = 1 -- takes up 1 + // w_class = 2 -- takes up 3 + // w_class = 3 -- takes up 5 + +/obj/item/weapon/tray/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + + // Drop all the things. All of them. + overlays.Cut() + for(var/obj/item/I in carrying) + I.loc = M.loc + carrying.Remove(I) + if(isturf(I.loc)) + spawn() + for(var/i = 1, i <= rand(1,2), i++) + if(I) + step(I, pick(NORTH,SOUTH,EAST,WEST)) + sleep(rand(2,4)) + + + if((CLUMSY in user.mutations) && prob(50)) //What if he's a clown? + M << "\red You accidentally slam yourself with the [src]!" + M.Weaken(1) + user.take_organ_damage(2) + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + return + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' + return //it always returns, but I feel like adding an extra return just for safety's sakes. EDIT; Oh well I won't :3 + + var/mob/living/carbon/human/H = M ///////////////////////////////////// /Let's have this ready for later. + + + if(!(user.zone_sel.selecting == ("eyes" || "head"))) //////////////hitting anything else other than the eyes + if(prob(33)) + src.add_blood(H) + var/turf/location = H.loc + if (istype(location, /turf/simulated)) + location.add_blood(H) ///Plik plik, the sound of blood + + M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") + user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") + msg_admin_attack("[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey]) (JMP)") + + if(prob(15)) + M.Weaken(3) + M.take_organ_damage(3) + else + M.take_organ_damage(5) + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + return + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //we applied the damage, we played the sound, we showed the appropriate messages. Time to return and stop the proc + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + return + + + if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES))) + M << "\red You get slammed in the face with the tray, against your mask!" + if(prob(33)) + src.add_blood(H) + if (H.wear_mask) + H.wear_mask.add_blood(H) + if (H.head) + H.head.add_blood(H) + if (H.glasses && prob(33)) + H.glasses.add_blood(H) + var/turf/location = H.loc + if (istype(location, /turf/simulated)) //Addin' blood! At least on the floor and item :v + location.add_blood(H) + + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + if(prob(10)) + M.Stun(rand(1,3)) + M.take_organ_damage(3) + return + else + M.take_organ_damage(5) + return + + else //No eye or head protection, tough luck! + M << "\red You get slammed in the face with the tray!" + if(prob(33)) + src.add_blood(M) + var/turf/location = H.loc + if (istype(location, /turf/simulated)) + location.add_blood(H) + + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' again + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) + if(prob(30)) + M.Stun(rand(2,4)) + M.take_organ_damage(4) + return + else + M.take_organ_damage(8) + if(prob(30)) + M.Weaken(2) + return + return + +/obj/item/weapon/tray/var/cooldown = 0 //shield bash cooldown. based on world.time + +/obj/item/weapon/tray/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(istype(W, /obj/item/weapon/kitchen/rollingpin)) + if(cooldown < world.time - 25) + user.visible_message("[user] bashes [src] with [W]!") + playsound(user.loc, 'sound/effects/shieldbash.ogg', 50, 1) + cooldown = world.time + else + ..() + +/* +===============~~~~~================================~~~~~==================== += = += Code for trays carrying things. By Doohl for Doohl erryday Doohl Doohl~ = += = +===============~~~~~================================~~~~~==================== +*/ +/obj/item/weapon/tray/proc/calc_carry() + // calculate the weight of the items on the tray + var/val = 0 // value to return + + for(var/obj/item/I in carrying) + if(I.w_class == 1.0) + val ++ + else if(I.w_class == 2.0) + val += 3 + else + val += 5 + + return val + +/obj/item/weapon/tray/pickup(mob/user) + + if(!isturf(loc)) + return + + for(var/obj/item/I in loc) + if( I != src && !I.anchored && !istype(I, /obj/item/clothing/under) && !istype(I, /obj/item/clothing/suit) && !istype(I, /obj/item/projectile) ) + var/add = 0 + if(I.w_class == 1.0) + add = 1 + else if(I.w_class == 2.0) + add = 3 + else + add = 5 + if(calc_carry() + add >= max_carry) + break + + I.loc = src + carrying.Add(I) + overlays += image("icon" = I.icon, "icon_state" = I.icon_state, "layer" = 30 + I.layer) + +/obj/item/weapon/tray/dropped(mob/user) + + var/mob/living/M + for(M in src.loc) //to handle hand switching + return + + var/foundtable = 0 + for(var/obj/structure/table/T in loc) + foundtable = 1 + break + + overlays.Cut() + + for(var/obj/item/I in carrying) + I.loc = loc + carrying.Remove(I) + if(!foundtable && isturf(loc)) + // if no table, presume that the person just shittily dropped the tray on the ground and made a mess everywhere! + spawn() + for(var/i = 1, i <= rand(1,2), i++) + if(I) + step(I, pick(NORTH,SOUTH,EAST,WEST)) + sleep(rand(2,4)) diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm new file mode 100644 index 0000000000..341ebb36cb --- /dev/null +++ b/code/game/objects/items/weapons/material/knives.dm @@ -0,0 +1,106 @@ +/obj/item/weapon/butterfly + name = "butterfly knife" + desc = "A basic metal blade concealed in a lightweight plasteel grip. Small enough when folded to fit in a pocket." + icon_state = "butterflyknife" + item_state = null + hitsound = null + var/active = 0 + w_class = 2 + force = 2 + sharp = 0 + edge = 0 + throw_speed = 3 + throw_range = 4 + throwforce = 7 + attack_verb = list("patted", "tapped") + +/obj/item/weapon/butterfly/switchblade + name = "switchblade" + desc = "A classic switchblade with gold engraving. Just holding it makes you feel like a gangster." + icon_state = "switchblade" + +/obj/item/weapon/butterfly/attack_self(mob/user) + active = !active + if(active) + user << "You flip out your [src]." + playsound(user, 'sound/weapons/flipblade.ogg', 15, 1) + force = 15 //bay adjustments + throwforce = 12 + edge = 1 + sharp = 1 + hitsound = 'sound/weapons/bladeslice.ogg' + icon_state += "_open" + w_class = 3 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + else + user << "The butterfly knife can now be concealed." + force = initial(force) + edge = 0 + sharp = 0 + hitsound = initial(hitsound) + icon_state = initial(icon_state) + w_class = initial(w_class) + attack_verb = initial(attack_verb) + add_fingerprint(user) + +/* + * Kitchen knives + */ +/obj/item/weapon/kitchenknife + name = "kitchen knife" + icon = 'icons/obj/kitchen.dmi' + icon_state = "knife" + desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." + flags = CONDUCT + sharp = 1 + edge = 1 + force = 10.0 + w_class = 3.0 + throwforce = 6.0 + throw_speed = 3 + throw_range = 6 + matter = list(DEFAULT_WALL_MATERIAL = 12000) + origin_tech = "materials=1" + attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + + suicide_act(mob/user) + viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") + return (BRUTELOSS) + +/obj/item/weapon/kitchenknife/hook + name = "meat hook" + desc = "A sharp, metal hook what sticks into things." + icon_state = "hook_knife" + item_state = "hook_knife" + +/obj/item/weapon/kitchenknife/ritual + name = "ritual knife" + desc = "The unearthly energies that once powered this blade are now dormant." + icon = 'icons/obj/wizard.dmi' + icon_state = "render" + +/* + * Bucher's cleaver + */ +/obj/item/weapon/butch + name = "butcher's cleaver" + icon = 'icons/obj/kitchen.dmi' + icon_state = "butch" + desc = "A huge thing used for chopping and chopping up meat. This includes clowns and clown-by-products." + flags = CONDUCT + force = 15.0 + w_class = 2.0 + throwforce = 8.0 + throw_speed = 3 + throw_range = 6 + matter = list(DEFAULT_WALL_MATERIAL = 12000) + origin_tech = "materials=1" + attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + sharp = 1 + edge = 1 + +/obj/item/weapon/butch/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) + return ..() \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm new file mode 100644 index 0000000000..8099e626db --- /dev/null +++ b/code/game/objects/items/weapons/material/misc.dm @@ -0,0 +1,11 @@ +/obj/item/weapon/harpoon + name = "harpoon" + sharp = 1 + edge = 0 + desc = "Tharr she blows!" + icon_state = "harpoon" + item_state = "harpoon" + force = 20 + throwforce = 15 + w_class = 3 + attack_verb = list("jabbed","stabbed","ripped") \ No newline at end of file diff --git a/code/game/objects/items/weapons/shards.dm b/code/game/objects/items/weapons/material/shards.dm similarity index 96% rename from code/game/objects/items/weapons/shards.dm rename to code/game/objects/items/weapons/material/shards.dm index 593b3d019d..8fea29b4f2 100644 --- a/code/game/objects/items/weapons/shards.dm +++ b/code/game/objects/items/weapons/material/shards.dm @@ -1,120 +1,120 @@ -// Glass shards - -/obj/item/weapon/shard - name = "shard" - icon = 'icons/obj/shards.dmi' - icon_state = "large" - sharp = 1 - edge = 1 - desc = "Made of nothing. How does this even exist?" // set based on material, if this desc is visible it's a bug (shards default to being made of glass) - w_class = 2.0 - force = 5.0 - throwforce = 8.0 - item_state = "shard-glass" - //matter = list("glass" = 3750) // Weld it into sheets before you use it! - attack_verb = list("stabbed", "slashed", "sliced", "cut") - - gender = "neuter" - var/material/material = null - -/obj/item/weapon/shard/suicide_act(mob/user) - viewers(user) << pick("\red [user] is slitting \his wrists with \the [src]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his throat with \the [src]! It looks like \he's trying to commit suicide.") - return (BRUTELOSS) - -/obj/item/weapon/shard/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/obj/item/weapon/shard/Bump() - - spawn( 0 ) - if (prob(20)) - src.force = 15 - else - src.force = 4 - ..() - return - return - -/obj/item/weapon/shard/New(loc, material/material) - ..(loc) - - if(!material || !istype(material)) // We either don't have a material or we've been passed an invalid material. Use glass instead. - material = get_material_by_name("glass") - - set_material(material) - -/obj/item/weapon/shard/proc/set_material(material/material) - if(istype(material)) - src.material = material - icon_state = "[material.shard_icon][pick("large", "medium", "small")]" - pixel_x = rand(-8, 8) - pixel_y = rand(-8, 8) - update_material() - update_icon() - -/obj/item/weapon/shard/proc/update_material() - if(material) - if(material.shard_type) - name = "[material.display_name] [material.shard_type]" - desc = "A small piece of [material.display_name]. It looks sharp, you wouldn't want to step on it barefoot. Could probably be used as ... a throwing weapon?" - switch(material.shard_type) - if(SHARD_SPLINTER, SHARD_SHRAPNEL) - gender = "plural" - else - gender = "neuter" - else - qdel(src) - return - else - name = initial(name) - desc = initial(desc) - -/obj/item/weapon/shard/update_icon() - if(material) - color = material.icon_colour - // 1-(1-x)^2, so that glass shards with 0.3 opacity end up somewhat visible at 0.51 opacity - alpha = 255 * (1 - (1 - material.opacity)*(1 - material.opacity)) - else - color = "#ffffff" - alpha = 255 - -/obj/item/weapon/shard/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/weldingtool) && material.shard_can_repair) - var/obj/item/weapon/weldingtool/WT = W - if(WT.remove_fuel(0, user)) - material.place_sheet(loc) - qdel(src) - return - return ..() - -/obj/item/weapon/shard/Crossed(AM as mob|obj) - if(ismob(AM)) - var/mob/M = AM - M << "\red You step on \the [src]!" - playsound(src.loc, 'sound/effects/glass_step.ogg', 50, 1) // not sure how to handle metal shards with sounds - if(ishuman(M)) - var/mob/living/carbon/human/H = M - - if(H.species.flags & IS_SYNTHETIC || (H.species.siemens_coefficient<0.5)) //Thick skin. - return - - if( !H.shoes && ( !H.wear_suit || !(H.wear_suit.body_parts_covered & FEET) ) ) - var/obj/item/organ/external/affecting = H.get_organ(pick("l_foot", "r_foot")) - if(affecting.status & ORGAN_ROBOT) - return - if(affecting.take_damage(5, 0)) - H.UpdateDamageIcon() - H.updatehealth() - if(!(H.species && (H.species.flags & NO_PAIN))) - H.Weaken(3) - ..() - -// Preset types - left here for the code that uses them - -/obj/item/weapon/shard/shrapnel/New(loc) - ..(loc, get_material_by_name("steel")) - -/obj/item/weapon/shard/phoron/New(loc) - ..(loc, get_material_by_name("phoron glass")) +// Glass shards + +/obj/item/weapon/shard + name = "shard" + icon = 'icons/obj/shards.dmi' + icon_state = "large" + sharp = 1 + edge = 1 + desc = "Made of nothing. How does this even exist?" // set based on material, if this desc is visible it's a bug (shards default to being made of glass) + w_class = 2.0 + force = 5.0 + throwforce = 8.0 + item_state = "shard-glass" + //matter = list("glass" = 3750) // Weld it into sheets before you use it! + attack_verb = list("stabbed", "slashed", "sliced", "cut") + + gender = "neuter" + var/material/material = null + +/obj/item/weapon/shard/suicide_act(mob/user) + viewers(user) << pick("\red [user] is slitting \his wrists with \the [src]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his throat with \the [src]! It looks like \he's trying to commit suicide.") + return (BRUTELOSS) + +/obj/item/weapon/shard/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) + return ..() + +/obj/item/weapon/shard/Bump() + + spawn( 0 ) + if (prob(20)) + src.force = 15 + else + src.force = 4 + ..() + return + return + +/obj/item/weapon/shard/New(loc, material/material) + ..(loc) + + if(!material || !istype(material)) // We either don't have a material or we've been passed an invalid material. Use glass instead. + material = get_material_by_name("glass") + + set_material(material) + +/obj/item/weapon/shard/proc/set_material(material/material) + if(istype(material)) + src.material = material + icon_state = "[material.shard_icon][pick("large", "medium", "small")]" + pixel_x = rand(-8, 8) + pixel_y = rand(-8, 8) + update_material() + update_icon() + +/obj/item/weapon/shard/proc/update_material() + if(material) + if(material.shard_type) + name = "[material.display_name] [material.shard_type]" + desc = "A small piece of [material.display_name]. It looks sharp, you wouldn't want to step on it barefoot. Could probably be used as ... a throwing weapon?" + switch(material.shard_type) + if(SHARD_SPLINTER, SHARD_SHRAPNEL) + gender = "plural" + else + gender = "neuter" + else + qdel(src) + return + else + name = initial(name) + desc = initial(desc) + +/obj/item/weapon/shard/update_icon() + if(material) + color = material.icon_colour + // 1-(1-x)^2, so that glass shards with 0.3 opacity end up somewhat visible at 0.51 opacity + alpha = 255 * (1 - (1 - material.opacity)*(1 - material.opacity)) + else + color = "#ffffff" + alpha = 255 + +/obj/item/weapon/shard/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(istype(W, /obj/item/weapon/weldingtool) && material.shard_can_repair) + var/obj/item/weapon/weldingtool/WT = W + if(WT.remove_fuel(0, user)) + material.place_sheet(loc) + qdel(src) + return + return ..() + +/obj/item/weapon/shard/Crossed(AM as mob|obj) + if(ismob(AM)) + var/mob/M = AM + M << "\red You step on \the [src]!" + playsound(src.loc, 'sound/effects/glass_step.ogg', 50, 1) // not sure how to handle metal shards with sounds + if(ishuman(M)) + var/mob/living/carbon/human/H = M + + if(H.species.flags & IS_SYNTHETIC || (H.species.siemens_coefficient<0.5)) //Thick skin. + return + + if( !H.shoes && ( !H.wear_suit || !(H.wear_suit.body_parts_covered & FEET) ) ) + var/obj/item/organ/external/affecting = H.get_organ(pick("l_foot", "r_foot")) + if(affecting.status & ORGAN_ROBOT) + return + if(affecting.take_damage(5, 0)) + H.UpdateDamageIcon() + H.updatehealth() + if(!(H.species && (H.species.flags & NO_PAIN))) + H.Weaken(3) + ..() + +// Preset types - left here for the code that uses them + +/obj/item/weapon/shard/shrapnel/New(loc) + ..(loc, get_material_by_name("steel")) + +/obj/item/weapon/shard/phoron/New(loc) + ..(loc, get_material_by_name("phoron glass")) diff --git a/code/game/objects/items/weapons/material/swords.dm b/code/game/objects/items/weapons/material/swords.dm new file mode 100644 index 0000000000..ea8c259004 --- /dev/null +++ b/code/game/objects/items/weapons/material/swords.dm @@ -0,0 +1,49 @@ +/obj/item/weapon/claymore + name = "claymore" + desc = "What are you standing around staring at this for? Get to killing!" + icon_state = "claymore" + item_state = "claymore" + flags = CONDUCT + slot_flags = SLOT_BELT + force = 40 + throwforce = 10 + sharp = 1 + edge = 1 + w_class = 3 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + + IsShield() + return 1 + + suicide_act(mob/user) + viewers(user) << "[user] is falling on the [src.name]! It looks like \he's trying to commit suicide." + return(BRUTELOSS) + +/obj/item/weapon/claymore/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) + return ..() + +/obj/item/weapon/katana + name = "katana" + desc = "Woefully underpowered in D20" + icon_state = "katana" + item_state = "katana" + flags = CONDUCT + slot_flags = SLOT_BELT | SLOT_BACK + force = 40 + throwforce = 10 + sharp = 1 + edge = 1 + w_class = 3 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + + suicide_act(mob/user) + viewers(user) << "[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku." + return(BRUTELOSS) + +/obj/item/weapon/katana/IsShield() + return 1 + +/obj/item/weapon/katana/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) + return ..() diff --git a/code/game/objects/items/weapons/material/thrown.dm b/code/game/objects/items/weapons/material/thrown.dm new file mode 100644 index 0000000000..ffba72c4cb --- /dev/null +++ b/code/game/objects/items/weapons/material/thrown.dm @@ -0,0 +1,31 @@ +/obj/item/weapon/star + name = "shuriken" + desc = "A sharp, perfectly weighted piece of metal." + icon_state = "star" + force = 5 + throw_speed = 10 + throwforce = 15 + throw_range = 15 + sharp = 1 + edge = 1 + matter = list(DEFAULT_WALL_MATERIAL = 500) + + var/poisoned = 0 + +/obj/item/weapon/star/New() + ..() + src.pixel_x = rand(-12, 12) + src.pixel_y = rand(-12, 12) + +//TODO: consider making this something done with reagents. +/obj/item/weapon/star/throw_impact(atom/hit_atom) + ..() + if(poisoned && istype(hit_atom,/mob/living)) + var/mob/living/M = hit_atom + M.adjustToxLoss(rand(20,40)) + poisoned = 0 + color = null + +/obj/item/weapon/star/ninja + color = "#007700" + poisoned = 1 \ No newline at end of file diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm similarity index 100% rename from code/game/objects/items/weapons/twohanded.dm rename to code/game/objects/items/weapons/material/twohanded.dm diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm index fbbc731f2a..867c5155e0 100644 --- a/code/game/objects/items/weapons/weaponry.dm +++ b/code/game/objects/items/weapons/weaponry.dm @@ -89,215 +89,6 @@ playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return ..() -/obj/item/weapon/claymore - name = "claymore" - desc = "What are you standing around staring at this for? Get to killing!" - icon_state = "claymore" - item_state = "claymore" - flags = CONDUCT - slot_flags = SLOT_BELT - force = 40 - throwforce = 10 - sharp = 1 - edge = 1 - w_class = 3 - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - - IsShield() - return 1 - - suicide_act(mob/user) - viewers(user) << "[user] is falling on the [src.name]! It looks like \he's trying to commit suicide." - return(BRUTELOSS) - -/obj/item/weapon/claymore/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/obj/item/weapon/katana - name = "katana" - desc = "Woefully underpowered in D20" - icon_state = "katana" - item_state = "katana" - flags = CONDUCT - slot_flags = SLOT_BELT | SLOT_BACK - force = 40 - throwforce = 10 - sharp = 1 - edge = 1 - w_class = 3 - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - - suicide_act(mob/user) - viewers(user) << "[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku." - return(BRUTELOSS) - -/obj/item/weapon/katana/IsShield() - return 1 - -/obj/item/weapon/katana/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/obj/item/weapon/harpoon - name = "harpoon" - sharp = 1 - edge = 0 - desc = "Tharr she blows!" - icon_state = "harpoon" - item_state = "harpoon" - force = 20 - throwforce = 15 - w_class = 3 - attack_verb = list("jabbed","stabbed","ripped") - -/obj/item/weapon/butterfly - name = "butterfly knife" - desc = "A basic metal blade concealed in a lightweight plasteel grip. Small enough when folded to fit in a pocket." - icon_state = "butterflyknife" - item_state = null - hitsound = null - var/active = 0 - w_class = 2 - force = 2 - sharp = 0 - edge = 0 - throw_speed = 3 - throw_range = 4 - throwforce = 7 - attack_verb = list("patted", "tapped") - -/obj/item/butterflyconstruction - name = "unfinished concealed knife" - desc = "An unfinished concealed knife, it looks like the screws need to be tightened." - icon = 'icons/obj/buildingobject.dmi' - icon_state = "butterflystep1" - -/obj/item/butterflyconstruction/attackby(obj/item/W as obj, mob/user as mob) - if(istype(W,/obj/item/weapon/screwdriver)) - user << "You finish the concealed blade weapon." - new /obj/item/weapon/butterfly(user.loc) - qdel(src) - return - -/obj/item/butterflyblade - name = "knife blade" - desc = "A knife blade. Unusable as a weapon without a grip." - icon = 'icons/obj/buildingobject.dmi' - icon_state = "butterfly2" - matter = list(DEFAULT_WALL_MATERIAL = 5000) - -/obj/item/butterflyhandle - name = "concealed knife grip" - desc = "A plasteel grip with screw fittings for a blade." - icon = 'icons/obj/buildingobject.dmi' - icon_state = "butterfly1" - matter = list(DEFAULT_WALL_MATERIAL = 4000) - -/obj/item/butterflyhandle/attackby(obj/item/W as obj, mob/user as mob) - if(istype(W,/obj/item/butterflyblade)) - user << "You attach the two concealed blade parts." - new /obj/item/butterflyconstruction(user.loc) - qdel(W) - qdel(src) - return - update_icon(user) - -/obj/item/weapon/butterfly/switchblade - name = "switchblade" - desc = "A classic switchblade with gold engraving. Just holding it makes you feel like a gangster." - icon_state = "switchblade" - -/obj/item/weapon/butterfly/attack_self(mob/user) - active = !active - if(active) - user << "You flip out your [src]." - playsound(user, 'sound/weapons/flipblade.ogg', 15, 1) - force = 15 //bay adjustments - throwforce = 12 - edge = 1 - sharp = 1 - hitsound = 'sound/weapons/bladeslice.ogg' - icon_state += "_open" - w_class = 3 - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - else - user << "The butterfly knife can now be concealed." - force = initial(force) - edge = 0 - sharp = 0 - hitsound = initial(hitsound) - icon_state = initial(icon_state) - w_class = initial(w_class) - attack_verb = initial(attack_verb) - add_fingerprint(user) - - -obj/item/weapon/wirerod - name = "wired rod" - desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit." - icon_state = "wiredrod" - item_state = "rods" - flags = CONDUCT - force = 8 - throwforce = 10 - w_class = 3 - attack_verb = list("hit", "bludgeoned", "whacked", "bonked") - - -obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob) - ..() - if(istype(I, /obj/item/weapon/shard)) - var/obj/item/weapon/twohanded/spear/S = new /obj/item/weapon/twohanded/spear - - user.put_in_hands(S) - user << "You fasten the glass shard to the top of the rod with the cable." - qdel(I) - qdel(src) - update_icon(user) - - else if(istype(I, /obj/item/weapon/wirecutters)) - var/obj/item/weapon/melee/baton/cattleprod/P = new /obj/item/weapon/melee/baton/cattleprod - - user.put_in_hands(P) - user << "You fasten the wirecutters to the top of the rod with the cable, prongs outward." - qdel(I) - qdel(src) - update_icon(user) - update_icon(user) - -/obj/item/weapon/star - name = "shuriken" - desc = "A sharp, perfectly weighted piece of metal." - icon_state = "star" - force = 5 - throw_speed = 10 - throwforce = 15 - throw_range = 15 - sharp = 1 - edge = 1 - matter = list(DEFAULT_WALL_MATERIAL = 500) - - var/poisoned = 0 - -/obj/item/weapon/star/New() - ..() - src.pixel_x = rand(-12, 12) - src.pixel_y = rand(-12, 12) - -//TODO: consider making this something done with reagents. -/obj/item/weapon/star/throw_impact(atom/hit_atom) - ..() - if(poisoned && istype(hit_atom,/mob/living)) - var/mob/living/M = hit_atom - M.adjustToxLoss(rand(20,40)) - poisoned = 0 - color = null - -/obj/item/weapon/star/ninja - color = "#007700" - poisoned = 1 - /obj/item/weapon/energy_net name = "energy net" desc = "It's a net made of green energy." From 0fb27e83b0ac270b9c5479dcafd40f93548a43f8 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 20:14:35 +0930 Subject: [PATCH 118/199] Preliminary file for material weapon system. --- .../weapons/material/material_weapons.dm | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 code/game/objects/items/weapons/material/material_weapons.dm diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm new file mode 100644 index 0000000000..0d781ee570 --- /dev/null +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -0,0 +1,46 @@ +/obj/item/weapon/material + health = 10 + var/material/material + +/obj/item/weapon/material/New(var/newloc, var/material_key) + ..(newloc) + if(!material_key) + material_key = "wood" + material = get_material_by_name(material_key) + if(!material) + qdel(src) + else + name = "[material.display_name] bat" + health = round(material.integrity/10) + force = round(material.get_blunt_damage()/2) + color = material.icon_colour + if(material.products_need_process()) + processing_objects |= src + +/obj/item/weapon/material/Destroy() + processing_objects -= src + ..() + +/obj/item/weapon/material/attack() + if(!..()) + return + if(!prob(material.hardness)) + health-- + if(health<=0) + shatter() + +/obj/item/weapon/material/proc/shatter() + var/turf/T = get_turf(src) + T.visible_message("\The [src] shatters!") + if(istype(loc, /mob/living)) + var/mob/living/M = loc + M.drop_from_inventory(src) + playsound(src, "shatter", 70, 1) + new material.shard_type(T) + qdel(src) + +/obj/item/weapon/material/process() + if(!material.radioactivity) + return + for(var/mob/living/L in range(1,src)) + L.apply_effect(round(material.radioactivity/3),IRRADIATE,0) \ No newline at end of file From 8aa24b86bb8a0160141b3cbad4c3484f6a5cbe41 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 20:36:33 +0930 Subject: [PATCH 119/199] Renamed shards, katanas, claymores. --- baystation12.dme | 1 + code/game/machinery/computer/computer.dm | 2 +- code/game/machinery/computer/pod.dm | 2 +- code/game/machinery/computer/prisonshuttle.dm | 2 +- code/game/machinery/doors/windowdoor.dm | 2 +- code/game/machinery/telecomms/logbrowser.dm | 2 +- code/game/machinery/telecomms/telemonitor.dm | 2 +- .../machinery/telecomms/traffic_control.dm | 2 +- .../items/weapons/improvised_components.dm | 2 +- .../weapons/material/material_weapons.dm | 24 +++-- .../objects/items/weapons/material/misc.dm | 5 +- .../objects/items/weapons/material/shards.dm | 99 +++++++------------ .../objects/items/weapons/material/swords.dm | 32 +++--- code/game/objects/structures/displaycase.dm | 8 +- code/game/objects/structures/grille.dm | 2 +- code/game/objects/structures/lamarr_cage.dm | 8 +- code/game/objects/structures/window.dm | 6 +- code/modules/materials/materials.dm | 2 +- code/modules/mining/abandonedcrates.dm | 2 +- code/modules/mining/mine_turfs.dm | 4 +- code/modules/mob/living/carbon/human/human.dm | 2 +- .../mob/living/carbon/human/human_defense.dm | 2 +- .../living/silicon/robot/drone/drone_items.dm | 4 +- .../simple_animal/hostile/retaliate/drone.dm | 8 +- code/modules/power/solar.dm | 10 +- code/modules/power/turbine.dm | 2 +- .../projectiles/guns/launcher/crossbow.dm | 2 +- .../reagent_containers/food/drinks/bottle.dm | 2 +- .../reagent_containers/food/sandwich.dm | 6 +- .../artifact/artifact_crystal.dm | 12 +-- .../research/xenoarchaeology/finds/finds.dm | 6 +- code/modules/surgery/eye.dm | 2 +- code/modules/surgery/face.dm | 2 +- code/modules/surgery/generic.dm | 2 +- code/modules/surgery/organs_internal.dm | 4 +- code/modules/surgery/other.dm | 2 +- code/modules/surgery/slimes.dm | 4 +- code/modules/tables/interactions.dm | 2 +- code/modules/tables/tables.dm | 6 +- maps/exodus-1.dmm | 24 ++--- maps/exodus-2.dmm | 2 +- maps/exodus-3.dmm | 6 +- maps/exodus-5.dmm | 42 ++++---- maps/exodus-6.dmm | 3 +- 44 files changed, 171 insertions(+), 195 deletions(-) diff --git a/baystation12.dme b/baystation12.dme index 7b3e8565e8..cd2c4461be 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -675,6 +675,7 @@ #include "code\game\objects\items\weapons\material\bats.dm" #include "code\game\objects\items\weapons\material\kitchen.dm" #include "code\game\objects\items\weapons\material\knives.dm" +#include "code\game\objects\items\weapons\material\material_weapons.dm" #include "code\game\objects\items\weapons\material\misc.dm" #include "code\game\objects\items\weapons\material\shards.dm" #include "code\game\objects\items\weapons\material\swords.dm" diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 37cb62c5cb..baa75fed05 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -125,7 +125,7 @@ C.loc = src.loc if (src.stat & BROKEN) user << "\blue The broken glass falls out." - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) A.state = 3 A.icon_state = "3" else diff --git a/code/game/machinery/computer/pod.dm b/code/game/machinery/computer/pod.dm index 257e76ede8..7e23437e25 100644 --- a/code/game/machinery/computer/pod.dm +++ b/code/game/machinery/computer/pod.dm @@ -58,7 +58,7 @@ if(stat & BROKEN) user << "\blue The broken glass falls out." var/obj/structure/computerframe/A = new /obj/structure/computerframe( loc ) - new /obj/item/weapon/shard( loc ) + new /obj/item/weapon/material/shard( loc ) //generate appropriate circuitboard. Accounts for /pod/old computer types var/obj/item/weapon/circuitboard/pod/M = null diff --git a/code/game/machinery/computer/prisonshuttle.dm b/code/game/machinery/computer/prisonshuttle.dm index 0fd1a2df05..59aa575a5b 100644 --- a/code/game/machinery/computer/prisonshuttle.dm +++ b/code/game/machinery/computer/prisonshuttle.dm @@ -38,7 +38,7 @@ var/prison_shuttle_timeleft = 0 if (src.stat & BROKEN) user << "\blue The broken glass falls out." - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) A.state = 3 A.icon_state = "3" else diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index d693f848eb..692662e6d2 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -25,7 +25,7 @@ return /obj/machinery/door/window/proc/shatter(var/display_message = 1) - new /obj/item/weapon/shard(src.loc) + new /obj/item/weapon/material/shard(src.loc) var/obj/item/stack/cable_coil/CC = new /obj/item/stack/cable_coil(src.loc) CC.amount = 2 var/obj/item/weapon/airlock_electronics/ae diff --git a/code/game/machinery/telecomms/logbrowser.dm b/code/game/machinery/telecomms/logbrowser.dm index 50fa8b185b..cdcd98beba 100644 --- a/code/game/machinery/telecomms/logbrowser.dm +++ b/code/game/machinery/telecomms/logbrowser.dm @@ -192,7 +192,7 @@ if (src.stat & BROKEN) user << "\blue The broken glass falls out." var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) var/obj/item/weapon/circuitboard/comm_server/M = new /obj/item/weapon/circuitboard/comm_server( A ) for (var/obj/C in src) C.loc = src.loc diff --git a/code/game/machinery/telecomms/telemonitor.dm b/code/game/machinery/telecomms/telemonitor.dm index a0f7b351ef..10ebe3dabc 100644 --- a/code/game/machinery/telecomms/telemonitor.dm +++ b/code/game/machinery/telecomms/telemonitor.dm @@ -130,7 +130,7 @@ if (src.stat & BROKEN) user << "\blue The broken glass falls out." var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) var/obj/item/weapon/circuitboard/comm_monitor/M = new /obj/item/weapon/circuitboard/comm_monitor( A ) for (var/obj/C in src) C.loc = src.loc diff --git a/code/game/machinery/telecomms/traffic_control.dm b/code/game/machinery/telecomms/traffic_control.dm index 287577626c..459ae15da0 100644 --- a/code/game/machinery/telecomms/traffic_control.dm +++ b/code/game/machinery/telecomms/traffic_control.dm @@ -213,7 +213,7 @@ if (src.stat & BROKEN) user << "\blue The broken glass falls out." var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) var/obj/item/weapon/circuitboard/comm_traffic/M = new /obj/item/weapon/circuitboard/comm_traffic( A ) for (var/obj/C in src) C.loc = src.loc diff --git a/code/game/objects/items/weapons/improvised_components.dm b/code/game/objects/items/weapons/improvised_components.dm index 31a6e8d6a9..d00ca141f6 100644 --- a/code/game/objects/items/weapons/improvised_components.dm +++ b/code/game/objects/items/weapons/improvised_components.dm @@ -48,7 +48,7 @@ /obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob) ..() - if(istype(I, /obj/item/weapon/shard)) + if(istype(I, /obj/item/weapon/material/shard)) var/obj/item/weapon/twohanded/spear/S = new /obj/item/weapon/twohanded/spear user.put_in_hands(S) diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index 0d781ee570..84aa0799ba 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -1,18 +1,27 @@ /obj/item/weapon/material health = 10 + hitsound = 'sound/weapons/bladeslice.ogg' + gender = NEUTER + + var/unbreakable + var/damage_divisor = 0.5 + var/default_material = DEFAULT_WALL_MATERIAL var/material/material /obj/item/weapon/material/New(var/newloc, var/material_key) ..(newloc) if(!material_key) - material_key = "wood" - material = get_material_by_name(material_key) + material_key = default_material + set_material(material_key) + +/obj/item/weapon/material/proc/set_material(var/new_material) + material = get_material_by_name(new_material) if(!material) qdel(src) else name = "[material.display_name] bat" health = round(material.integrity/10) - force = round(material.get_blunt_damage()/2) + force = round(material.get_blunt_damage()*damage_divisor) color = material.icon_colour if(material.products_need_process()) processing_objects |= src @@ -24,10 +33,11 @@ /obj/item/weapon/material/attack() if(!..()) return - if(!prob(material.hardness)) - health-- - if(health<=0) - shatter() + if(!unbreakable) + if(!prob(material.hardness)) + health-- + if(health<=0) + shatter() /obj/item/weapon/material/proc/shatter() var/turf/T = get_turf(src) diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index 8099e626db..e09e01c0ea 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/harpoon +/obj/item/weapon/material/harpoon name = "harpoon" sharp = 1 edge = 0 @@ -8,4 +8,5 @@ force = 20 throwforce = 15 w_class = 3 - attack_verb = list("jabbed","stabbed","ripped") \ No newline at end of file + attack_verb = list("jabbed","stabbed","ripped") + default_material = "steel" \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/shards.dm b/code/game/objects/items/weapons/material/shards.dm index 8fea29b4f2..3df8181cdd 100644 --- a/code/game/objects/items/weapons/material/shards.dm +++ b/code/game/objects/items/weapons/material/shards.dm @@ -1,77 +1,49 @@ // Glass shards -/obj/item/weapon/shard +/obj/item/weapon/material/shard name = "shard" icon = 'icons/obj/shards.dmi' icon_state = "large" sharp = 1 edge = 1 desc = "Made of nothing. How does this even exist?" // set based on material, if this desc is visible it's a bug (shards default to being made of glass) - w_class = 2.0 - force = 5.0 - throwforce = 8.0 + w_class = 2 + force = 5 + throwforce = 8 item_state = "shard-glass" - //matter = list("glass" = 3750) // Weld it into sheets before you use it! attack_verb = list("stabbed", "slashed", "sliced", "cut") + default_material = "glass" + unbreakable = 1 //It's already broken. + damage_divisor = 0.1 //So tiny. - gender = "neuter" - var/material/material = null +/obj/item/weapon/material/shard/suicide_act(mob/user) + viewers(user) << pick("\red [user] is slitting \his wrists with \the [src]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his throat with \the [src]! It looks like \he's trying to commit suicide.") + return (BRUTELOSS) -/obj/item/weapon/shard/suicide_act(mob/user) - viewers(user) << pick("\red [user] is slitting \his wrists with \the [src]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his throat with \the [src]! It looks like \he's trying to commit suicide.") - return (BRUTELOSS) - -/obj/item/weapon/shard/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/obj/item/weapon/shard/Bump() - - spawn( 0 ) - if (prob(20)) - src.force = 15 - else - src.force = 4 - ..() +/obj/item/weapon/material/shard/set_material(var/new_material) + ..(new_material) + if(!istype(material)) return - return -/obj/item/weapon/shard/New(loc, material/material) - ..(loc) + icon_state = "[material.shard_icon][pick("large", "medium", "small")]" + pixel_x = rand(-8, 8) + pixel_y = rand(-8, 8) + update_icon() - if(!material || !istype(material)) // We either don't have a material or we've been passed an invalid material. Use glass instead. - material = get_material_by_name("glass") - - set_material(material) - -/obj/item/weapon/shard/proc/set_material(material/material) - if(istype(material)) - src.material = material - icon_state = "[material.shard_icon][pick("large", "medium", "small")]" - pixel_x = rand(-8, 8) - pixel_y = rand(-8, 8) - update_material() - update_icon() - -/obj/item/weapon/shard/proc/update_material() - if(material) - if(material.shard_type) - name = "[material.display_name] [material.shard_type]" - desc = "A small piece of [material.display_name]. It looks sharp, you wouldn't want to step on it barefoot. Could probably be used as ... a throwing weapon?" - switch(material.shard_type) - if(SHARD_SPLINTER, SHARD_SHRAPNEL) - gender = "plural" - else - gender = "neuter" - else - qdel(src) - return + if(material.shard_type) + name = "[material.display_name] [material.shard_type]" + desc = "A small piece of [material.display_name]. It looks sharp, you wouldn't want to step on it barefoot. Could probably be used as ... a throwing weapon?" + switch(material.shard_type) + if(SHARD_SPLINTER, SHARD_SHRAPNEL) + gender = PLURAL + else + gender = NEUTER else - name = initial(name) - desc = initial(desc) + qdel(src) -/obj/item/weapon/shard/update_icon() + +/obj/item/weapon/material/shard/update_icon() if(material) color = material.icon_colour // 1-(1-x)^2, so that glass shards with 0.3 opacity end up somewhat visible at 0.51 opacity @@ -80,7 +52,7 @@ color = "#ffffff" alpha = 255 -/obj/item/weapon/shard/attackby(obj/item/weapon/W as obj, mob/user as mob) +/obj/item/weapon/material/shard/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/weldingtool) && material.shard_can_repair) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0, user)) @@ -89,7 +61,7 @@ return return ..() -/obj/item/weapon/shard/Crossed(AM as mob|obj) +/obj/item/weapon/material/shard/Crossed(AM as mob|obj) if(ismob(AM)) var/mob/M = AM M << "\red You step on \the [src]!" @@ -112,9 +84,8 @@ ..() // Preset types - left here for the code that uses them +/obj/item/weapon/material/shard/shrapnel/New(loc) + ..(loc, "steel") -/obj/item/weapon/shard/shrapnel/New(loc) - ..(loc, get_material_by_name("steel")) - -/obj/item/weapon/shard/phoron/New(loc) - ..(loc, get_material_by_name("phoron glass")) +/obj/item/weapon/material/shard/phoron/New(loc) + ..(loc, "phoron glass") diff --git a/code/game/objects/items/weapons/material/swords.dm b/code/game/objects/items/weapons/material/swords.dm index ea8c259004..aaa3d4f9fa 100644 --- a/code/game/objects/items/weapons/material/swords.dm +++ b/code/game/objects/items/weapons/material/swords.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/claymore +/obj/item/weapon/material/claymore name = "claymore" desc = "What are you standing around staring at this for? Get to killing!" icon_state = "claymore" @@ -11,19 +11,16 @@ edge = 1 w_class = 3 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + hitsound = 'sound/weapons/bladeslice.ogg' - IsShield() - return 1 +/obj/item/weapon/material/claymore/IsShield() + return 1 - suicide_act(mob/user) - viewers(user) << "[user] is falling on the [src.name]! It looks like \he's trying to commit suicide." - return(BRUTELOSS) +/obj/item/weapon/material/claymore/suicide_act(mob/user) + viewers(user) << "[user] is falling on the [src.name]! It looks like \he's trying to commit suicide." + return(BRUTELOSS) -/obj/item/weapon/claymore/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -/obj/item/weapon/katana +/obj/item/weapon/material/katana name = "katana" desc = "Woefully underpowered in D20" icon_state = "katana" @@ -36,14 +33,11 @@ edge = 1 w_class = 3 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + hitsound = 'sound/weapons/bladeslice.ogg' - suicide_act(mob/user) - viewers(user) << "[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku." - return(BRUTELOSS) +/obj/item/weapon/material/katana/suicide_act(mob/user) + viewers(user) << "[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku." + return(BRUTELOSS) -/obj/item/weapon/katana/IsShield() +/obj/item/weapon/material/katana/IsShield() return 1 - -/obj/item/weapon/katana/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 5150319f15..d343e41159 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -13,7 +13,7 @@ /obj/structure/displaycase/ex_act(severity) switch(severity) if (1) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) if (occupied) new /obj/item/weapon/gun/energy/captain( src.loc ) occupied = 0 @@ -37,7 +37,7 @@ /obj/structure/displaycase/blob_act() if (prob(75)) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) if (occupied) new /obj/item/weapon/gun/energy/captain( src.loc ) occupied = 0 @@ -45,7 +45,7 @@ /obj/structure/displaycase/meteorhit(obj/O as obj) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) new /obj/item/weapon/gun/energy/captain( src.loc ) qdel(src) @@ -55,7 +55,7 @@ if (!( src.destroyed )) src.density = 0 src.destroyed = 1 - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) playsound(src, "shatter", 70, 1) update_icon() else diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index b18658d4a6..619021c45e 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -153,7 +153,7 @@ return //window placing end - else if(istype(W, /obj/item/weapon/shard)) + else if(istype(W, /obj/item/weapon/material/shard)) health -= W.force * 0.1 else if(!shock(user, 70)) playsound(loc, 'sound/effects/grillehit.ogg', 80, 1) diff --git a/code/game/objects/structures/lamarr_cage.dm b/code/game/objects/structures/lamarr_cage.dm index 3c32052d72..1ab233a3ba 100644 --- a/code/game/objects/structures/lamarr_cage.dm +++ b/code/game/objects/structures/lamarr_cage.dm @@ -13,7 +13,7 @@ /obj/structure/lamarr/ex_act(severity) switch(severity) if (1) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) Break() qdel(src) if (2) @@ -35,13 +35,13 @@ /obj/structure/lamarr/blob_act() if (prob(75)) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) Break() qdel(src) /obj/structure/lamarr/meteorhit(obj/O as obj) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) Break() qdel(src) @@ -51,7 +51,7 @@ if (!( src.destroyed )) src.density = 0 src.destroyed = 1 - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) playsound(src, "shatter", 70, 1) Break() else diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 5c51758380..656ea7e781 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -13,7 +13,7 @@ var/state = 2 var/reinf = 0 var/basestate - var/shardtype = /obj/item/weapon/shard + var/shardtype = /obj/item/weapon/material/shard var/glasstype = null // Set this in subtypes. Null is assumed strange or otherwise impossible to dismantle, such as for shuttle glass. var/silicate = 0 // number of units of silicate @@ -406,7 +406,7 @@ desc = "A phoron-glass alloy window. It looks insanely tough to break. It appears it's also insanely tough to burn through." basestate = "phoronwindow" icon_state = "phoronwindow" - shardtype = /obj/item/weapon/shard/phoron + shardtype = /obj/item/weapon/material/shard/phoron glasstype = /obj/item/stack/sheet/glass/phoronglass maxhealth = 120 @@ -420,7 +420,7 @@ desc = "A phoron-glass alloy window, with rods supporting it. It looks hopelessly tough to break. It also looks completely fireproof, considering how basic phoron windows are insanely fireproof." basestate = "phoronrwindow" icon_state = "phoronrwindow" - shardtype = /obj/item/weapon/shard/phoron + shardtype = /obj/item/weapon/material/shard/phoron glasstype = /obj/item/stack/sheet/glass/phoronrglass reinf = 1 maxhealth = 160 diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 1e49ff8742..15a989f949 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -87,7 +87,7 @@ var/list/name_to_material /material/proc/place_shard(var/turf/target) if(shard_type) - return new /obj/item/weapon/shard(target, src) + return new /obj/item/weapon/material/shard(target, src.name) /material/proc/is_brittle() return !!(flags & MATERIAL_BRITTLE) diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm index 7376ed2851..2bff18cbea 100644 --- a/code/modules/mining/abandonedcrates.dm +++ b/code/modules/mining/abandonedcrates.dm @@ -109,7 +109,7 @@ if(91) new/obj/item/device/soulstone(src) if(92) - new/obj/item/weapon/katana(src) + new/obj/item/weapon/material/katana(src) if(93) new/obj/item/weapon/dnainjector/xraymut(src) // Probably the least OP if(94) // Why the hell not diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 80a19e7b96..98a7a8df9e 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -356,12 +356,12 @@ if(5) var/quantity = rand(1,3) for(var/i=0, i class) && !istype(O,/obj/item/weapon/shard/shrapnel)) + if(!istype(O,/obj/item/weapon/implant) && (O.w_class > class) && !istype(O,/obj/item/weapon/material/shard/shrapnel)) visible_implants += O return(visible_implants) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index f409bee147..994cab11f6 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -43,7 +43,7 @@ emp_act if(P.can_embed()) var/armor = getarmor_organ(organ, "bullet") if(prob(20 + max(P.damage - armor, -10))) - var/obj/item/weapon/shard/shrapnel/SP = new() + var/obj/item/weapon/material/shard/shrapnel/SP = new() SP.name = (P.name != "shrapnel")? "[P.name] shrapnel" : "shrapnel" SP.desc = "[SP.desc] It looks like it was fired from [P.shot_from]." SP.loc = organ diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index 7452514f17..3f10d4f899 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -328,10 +328,10 @@ else if(istype(W,/obj/item/ammo_casing)) if(metal) metal.add_charge(1000) - else if(istype(W,/obj/item/weapon/shard/shrapnel)) + else if(istype(W,/obj/item/weapon/material/shard/shrapnel)) if(metal) metal.add_charge(1000) - else if(istype(W,/obj/item/weapon/shard)) + else if(istype(W,/obj/item/weapon/material/shard)) if(glass) glass.add_charge(1000) else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/grown)) diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm index a2e9e21f75..d99d8ddcf7 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm @@ -170,16 +170,16 @@ var/obj/O //shards - O = new /obj/item/weapon/shard(src.loc) + O = new /obj/item/weapon/material/shard(src.loc) step_to(O, get_turf(pick(view(7, src)))) if(prob(75)) - O = new /obj/item/weapon/shard(src.loc) + O = new /obj/item/weapon/material/shard(src.loc) step_to(O, get_turf(pick(view(7, src)))) if(prob(50)) - O = new /obj/item/weapon/shard(src.loc) + O = new /obj/item/weapon/material/shard(src.loc) step_to(O, get_turf(pick(view(7, src)))) if(prob(25)) - O = new /obj/item/weapon/shard(src.loc) + O = new /obj/item/weapon/material/shard(src.loc) step_to(O, get_turf(pick(view(7, src)))) //rods diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 6bdef2c273..8f3366e7c1 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -91,8 +91,8 @@ var/list/solars_list = list() if(!(stat & BROKEN)) broken() else - new /obj/item/weapon/shard(src.loc) - new /obj/item/weapon/shard(src.loc) + new /obj/item/weapon/material/shard(src.loc) + new /obj/item/weapon/material/shard(src.loc) qdel(src) return return @@ -153,13 +153,13 @@ var/list/solars_list = list() switch(severity) if(1.0) if(prob(15)) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) qdel(src) return if(2.0) if (prob(25)) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) qdel(src) return @@ -420,7 +420,7 @@ var/list/solars_list = list() if (src.stat & BROKEN) user << "\blue The broken glass falls out." var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) var/obj/item/weapon/circuitboard/solar_control/M = new /obj/item/weapon/circuitboard/solar_control( A ) for (var/obj/C in src) C.loc = src.loc diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm index 10d6d8238d..0119de8308 100644 --- a/code/modules/power/turbine.dm +++ b/code/modules/power/turbine.dm @@ -234,7 +234,7 @@ if (src.stat & BROKEN) user << "\blue The broken glass falls out." var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/shard( src.loc ) + new /obj/item/weapon/material/shard( src.loc ) var/obj/item/weapon/circuitboard/turbine_control/M = new /obj/item/weapon/circuitboard/turbine_control( A ) for (var/obj/C in src) C.loc = src.loc diff --git a/code/modules/projectiles/guns/launcher/crossbow.dm b/code/modules/projectiles/guns/launcher/crossbow.dm index 4736fc0c7b..fb453dbb4e 100644 --- a/code/modules/projectiles/guns/launcher/crossbow.dm +++ b/code/modules/projectiles/guns/launcher/crossbow.dm @@ -41,7 +41,7 @@ /obj/item/weapon/arrow/rod/removed(mob/user) if(throwforce == 15) // The rod has been superheated - we don't want it to be useable when removed from the bow. user << "[src] shatters into a scattering of overstressed metal shards as it leaves the crossbow." - var/obj/item/weapon/shard/shrapnel/S = new() + var/obj/item/weapon/material/shard/shrapnel/S = new() S.loc = get_turf(src) qdel(src) diff --git a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm b/code/modules/reagents/reagent_containers/food/drinks/bottle.dm index 8b7de10bcd..e6b1308603 100644 --- a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm +++ b/code/modules/reagents/reagent_containers/food/drinks/bottle.dm @@ -16,7 +16,7 @@ var/obj/item/weapon/broken_bottle/B = new /obj/item/weapon/broken_bottle(user.loc) user.put_in_active_hand(B) if(prob(33)) - new/obj/item/weapon/shard(target.loc) // Create a glass shard at the target's location! + new/obj/item/weapon/material/shard(target.loc) // Create a glass shard at the target's location! B.icon_state = src.icon_state var/icon/I = new('icons/obj/drinks.dmi', src.icon_state) diff --git a/code/modules/reagents/reagent_containers/food/sandwich.dm b/code/modules/reagents/reagent_containers/food/sandwich.dm index b3e3ce9d1f..c853706ad5 100644 --- a/code/modules/reagents/reagent_containers/food/sandwich.dm +++ b/code/modules/reagents/reagent_containers/food/sandwich.dm @@ -1,6 +1,6 @@ /obj/item/weapon/reagent_containers/food/snacks/breadslice/attackby(obj/item/W as obj, mob/user as mob) - if(istype(W,/obj/item/weapon/shard) || istype(W,/obj/item/weapon/reagent_containers/food/snacks)) + if(istype(W,/obj/item/weapon/material/shard) || istype(W,/obj/item/weapon/reagent_containers/food/snacks)) var/obj/item/weapon/reagent_containers/food/snacks/csandwich/S = new(get_turf(src)) S.attackby(W,user) qdel(src) @@ -25,7 +25,7 @@ if(src.contents.len > sandwich_limit) user << "\red If you put anything else on \the [src] it's going to collapse." return - else if(istype(W,/obj/item/weapon/shard)) + else if(istype(W,/obj/item/weapon/material/shard)) user << "\blue You hide [W] in \the [src]." user.drop_item() W.loc = src @@ -87,7 +87,7 @@ var/obj/item/shard for(var/obj/item/O in contents) - if(istype(O,/obj/item/weapon/shard)) + if(istype(O,/obj/item/weapon/material/shard)) shard = O break diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_crystal.dm b/code/modules/research/xenoarchaeology/artifact/artifact_crystal.dm index 44f257060a..081683b044 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_crystal.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_crystal.dm @@ -20,17 +20,17 @@ /obj/structure/crystal/Destroy() src.visible_message("\red[src] shatters!") if(prob(75)) - new /obj/item/weapon/shard/phoron(src.loc) + new /obj/item/weapon/material/shard/phoron(src.loc) if(prob(50)) - new /obj/item/weapon/shard/phoron(src.loc) + new /obj/item/weapon/material/shard/phoron(src.loc) if(prob(25)) - new /obj/item/weapon/shard/phoron(src.loc) + new /obj/item/weapon/material/shard/phoron(src.loc) if(prob(75)) - new /obj/item/weapon/shard(src.loc) + new /obj/item/weapon/material/shard(src.loc) if(prob(50)) - new /obj/item/weapon/shard(src.loc) + new /obj/item/weapon/material/shard(src.loc) if(prob(25)) - new /obj/item/weapon/shard(src.loc) + new /obj/item/weapon/material/shard(src.loc) ..() //todo: laser_act diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index 7de8474aef..fe2bbe7afa 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -315,9 +315,9 @@ apply_material_decorations = 0 if(22) if(prob(50)) - new_item = new /obj/item/weapon/shard(src.loc) + new_item = new /obj/item/weapon/material/shard(src.loc) else - new_item = new /obj/item/weapon/shard/phoron(src.loc) + new_item = new /obj/item/weapon/material/shard/phoron(src.loc) apply_prefix = 0 apply_image_decorations = 0 apply_material_decorations = 0 @@ -337,7 +337,7 @@ apply_material_decorations = 0 if(25) apply_prefix = 0 - new_item = new /obj/item/weapon/katana(src.loc) + new_item = new /obj/item/weapon/material/katana(src.loc) new_item.force = 10 item_type = new_item.name if(26) diff --git a/code/modules/surgery/eye.dm b/code/modules/surgery/eye.dm index edc1c54c67..cb3c5af7b7 100644 --- a/code/modules/surgery/eye.dm +++ b/code/modules/surgery/eye.dm @@ -21,7 +21,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ /obj/item/weapon/kitchenknife = 75, \ - /obj/item/weapon/shard = 50, \ + /obj/item/weapon/material/shard = 50, \ ) min_duration = 90 diff --git a/code/modules/surgery/face.dm b/code/modules/surgery/face.dm index e25291eba5..8517a7b98d 100644 --- a/code/modules/surgery/face.dm +++ b/code/modules/surgery/face.dm @@ -18,7 +18,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ /obj/item/weapon/kitchenknife = 75, \ - /obj/item/weapon/shard = 50, \ + /obj/item/weapon/material/shard = 50, \ ) min_duration = 90 diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index f6352f6b74..7ff50ae15b 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -111,7 +111,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ /obj/item/weapon/kitchenknife = 75, \ - /obj/item/weapon/shard = 50, \ + /obj/item/weapon/material/shard = 50, \ ) min_duration = 90 diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index 182c3eac2a..b8b5d3f2ec 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -212,7 +212,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ /obj/item/weapon/kitchenknife = 75, \ - /obj/item/weapon/shard = 50, \ + /obj/item/weapon/material/shard = 50, \ ) min_duration = 90 @@ -448,7 +448,7 @@ // allowed_tools = list( // /obj/item/weapon/scalpel = 100, \ // /obj/item/weapon/kitchenknife = 75, \ -// /obj/item/weapon/shard = 50, \ +// /obj/item/weapon/material/shard = 50, \ // ) // min_duration = 30 diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index f81baa4468..7625de5893 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -57,7 +57,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ /obj/item/weapon/kitchenknife = 75, \ - /obj/item/weapon/shard = 50, \ + /obj/item/weapon/material/shard = 50, \ ) can_infect = 1 diff --git a/code/modules/surgery/slimes.dm b/code/modules/surgery/slimes.dm index 048c6d3e3c..c62afde296 100644 --- a/code/modules/surgery/slimes.dm +++ b/code/modules/surgery/slimes.dm @@ -13,7 +13,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ /obj/item/weapon/kitchenknife = 75, \ - /obj/item/weapon/shard = 50, \ + /obj/item/weapon/material/shard = 50, \ ) min_duration = 30 @@ -39,7 +39,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ /obj/item/weapon/kitchenknife = 75, \ - /obj/item/weapon/shard = 50, \ + /obj/item/weapon/material/shard = 50, \ ) min_duration = 30 diff --git a/code/modules/tables/interactions.dm b/code/modules/tables/interactions.dm index 09e32deebe..00d75e69a0 100644 --- a/code/modules/tables/interactions.dm +++ b/code/modules/tables/interactions.dm @@ -89,7 +89,7 @@ playsound(loc, 'sound/weapons/tablehit1.ogg', 50, 1) var/list/L = take_damage(rand(1,5)) // Shards. Extra damage, plus potentially the fact YOU LITERALLY HAVE A PIECE OF GLASS/METAL/WHATEVER IN YOUR FACE - for(var/obj/item/weapon/shard/S in L) + for(var/obj/item/weapon/material/shard/S in L) if(prob(50)) M.visible_message("\The [S] slices [M]'s face messily!", "\The [S] slices your face messily!") diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index 88042181a1..61326574ba 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -1,5 +1,3 @@ - - /obj/structure/table name = "table frame" icon = 'icons/obj/tables.dmi' @@ -255,7 +253,7 @@ qdel(src) return -// Returns a list of /obj/item/weapon/shard objects that were created as a result of this table's breakage. +// Returns a list of /obj/item/weapon/material/shard objects that were created as a result of this table's breakage. // Used for !fun! things such as embedding shards in the faces of tableslammed people. // The repeated @@ -265,7 +263,7 @@ /obj/structure/table/proc/break_to_parts(full_return = 0) var/list/shards = list() - var/obj/item/weapon/shard/S = null + var/obj/item/weapon/material/shard/S = null if(reinforced) if(reinforced.stack_type && (full_return || prob(20))) reinforced.place_sheet(loc) diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 2c87632d48..e748ece98b 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -15,7 +15,7 @@ "aao" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/space) "aap" = (/turf/simulated/floor/airless,/area/space) "aaq" = (/obj/structure/grille/broken,/obj/structure/lattice,/turf/space,/area/space) -"aar" = (/obj/structure/grille/broken,/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/airless{icon_state = "circuit"},/area/space) +"aar" = (/obj/structure/grille/broken,/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/airless{icon_state = "circuit"},/area/space) "aas" = (/obj/item/clothing/suit/ianshirt,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/space) "aat" = (/turf/simulated/wall/r_wall,/area/space) "aau" = (/turf/space,/area/skipjack_station/northwest_solars) @@ -262,7 +262,7 @@ "afb" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "red"},/area/security/main) "afc" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 1; name = "Security"; sortType = "Security"},/turf/simulated/floor{icon_state = "red"},/area/security/main) "afd" = (/turf/simulated/floor{icon_state = "red"},/area/security/main) -"afe" = (/obj/structure/grille/broken,/obj/item/weapon/shard,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/security_port) +"afe" = (/obj/structure/grille/broken,/obj/item/weapon/material/shard,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/security_port) "aff" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/main) "afg" = (/obj/machinery/photocopier,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) "afh" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/main) @@ -2479,7 +2479,7 @@ "aVI" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port) "aVJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/research_port) "aVK" = (/turf/simulated/floor/plating,/area/storage/emergency2) -"aVL" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/maintenance/locker) +"aVL" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/maintenance/locker) "aVM" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/storage/tools) "aVN" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/storage/tools) "aVO" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor,/area/storage/tools) @@ -3527,7 +3527,7 @@ "bpQ" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/disposal) "bpR" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/disposal) "bpS" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/locker) -"bpT" = (/obj/effect/decal/cleanable/generic,/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating,/area/maintenance/locker) +"bpT" = (/obj/item/weapon/material/shard,/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/research_port) "bpU" = (/obj/structure/disposalpipe/segment{dir = 4},/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},/obj/machinery/door/firedoor,/turf/simulated/floor/plating,/area/maintenance/locker) "bpV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating,/area/maintenance/locker) "bpW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker) @@ -4641,9 +4641,9 @@ "bLm" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "cmooffice"; name = "CMO Office Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay4) "bLn" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "warningcorner"; dir = 4},/area/hallway/primary/central_three) "bLo" = (/turf/simulated/wall,/area/medical/genetics_cloning) -"bLp" = (/obj/structure/computerframe,/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) +"bLp" = (/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) "bLq" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/constructable_frame/machine_frame,/turf/simulated/floor/plating,/area/medical/genetics) -"bLr" = (/obj/item/weapon/shard,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) +"bLr" = (/obj/item/weapon/material/shard,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) "bLs" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/genetics) "bLt" = (/obj/structure/window/reinforced,/obj/structure/computerframe,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) "bLu" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port) @@ -4716,7 +4716,7 @@ "bMJ" = (/obj/machinery/light{dir = 1},/obj/structure/bookcase/manuals/medical,/obj/item/weapon/book/manual/stasis,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bMK" = (/turf/simulated/wall,/area/crew_quarters/medbreak) "bML" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) -"bMM" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) +"bMM" = (/obj/structure/computerframe,/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) "bMN" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port) "bMO" = (/turf/simulated/wall/r_wall,/area/rnd/misc_lab) "bMP" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/shuttle/plating,/area/rnd/docking) @@ -5674,7 +5674,7 @@ "cff" = (/obj/structure/sign/securearea,/turf/simulated/wall,/area/rnd/xenobiology) "cfg" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/disposalpipe/trunk,/obj/machinery/disposal,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = 32},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora) "cfh" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/hydroponics{closed_system = 1; name = "isolation tray"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora) -"cfi" = (/obj/item/weapon/shard,/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/research_port) +"cfi" = (/obj/effect/decal/cleanable/generic,/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor/plating,/area/maintenance/locker) "cfj" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(12,47)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/rnd/xenobiology) "cfk" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(12,47)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 4},/turf/simulated/floor/plating,/area/rnd/xenobiology) "cfl" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/obj/item/weapon/pen,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) @@ -7509,7 +7509,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZbkZbkZbkZaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbjAbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktcsfbkvbewbkpbkwcLYbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObQDblrblEbQLbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbloblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbmobmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibmWbojbmYbmZbPMbolbjRbndbnebjRbopbmCbnhbnibnjbmPboKbnmbnnbPLbnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbPKbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbPJbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpSbpTbnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObPeboqbPEbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpScfibnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObPeboqbPEbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdvbpHbpHbpHbpIbpHbpJaZVbpKbqKbgrbqQbjpbrkbrcbpQbpRbrvbrubrwbrwbrwbrxbkWbpUbkWbkWbkWbkWbpVbpWbpWbpXbpYbdPcfycfocfzbrybqdbqebqfbrCbqhbqibqjbqkbqkbrDbrIbgGbgGbqmbfmaMbblqbqnbqoaJubqqbqrbqrbxqborbrPbxsbotaafbebbebbebbebbshbebbebbebbebaafbedbqzboCbqAbsjbqCbqDbqEaJibqFaRqaRpaJibskbqHbqIbqJaJDbqLboPbqNboUboUboUboUboUboUbqObqPbslboYbqRbqSboNbnnbqUbqVbqWbsnbpgbphbpfbqXbYfaVJbpjbqYbqZbqZbrabrbbsobrdbrdbrdbrebrdbrfboObrhbribrjbsqbnIbrlbpCbrmbrnbrobsrbnIbrqbpFbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBcaLbsHbsHbthbrzbrAbgrbtkbtlcaMbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabYZcanbotbosbotaafbsibZibtKbtTbsmbtXbtKcaJbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNcbQcdpcbdcbkceobsCbqObsDbnicevbsFcepcdGbnncdtbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNceZbsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtccflbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbWIbXnbwnbukbulbumbnibnnbunbpubVVbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbVzbpvbuCbuDbuEbuFbVybrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbVebnIbpEbpFbUAbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7523,8 +7523,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGlbGmbGnbdPbdPbGobwNbwNbwNbGpbdPbdPbGqbGrbGsbdPbGtbGtbGtbITbGtbGvbGwbGxbGybGzbtCbvtbAbbIAbGBbtCbtGbtGbtGbtGbtGbIBbtGbtGbtGbIRbtGbIUbIMbIXbtGbJbbtGbtGbtGbtGbtGbtGbtGaJiaJiaJiaJibxwaRqaRpbHMbJqbFkbCSbGGbCWbGIbGJbGKbGLbGMbGNbCjbGObGPbGQbGRbGSbGTbGUbGVbIDbGXbGYbGZbJDbHbbHcbHdbHecLVbCpbUSbUfbwwbwwbwwbwwbwwbJVbwwbwwbwwbzAbKfbzAbzAbHkbBhbCubCvbHRbIvbKzbHnbHobHpbHqbGabGbbGcbHraaaaaabCJbHsbHtbEobCIbBybKBbKUbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaafaaaaaaaaabHuaafaaaaaaaaaaaabGtbIubHwbHxbHybGvbHzbKVbHBbHCbtCbvtbAbbAcbAabHDbHEbHFbHGbHHbHIbHJbHKbHLbLabLxbLnbLzbAabAabLIbMhbLYbAabHTbAabzZbHHbKJbHWbHXbHYbMibxwaRqbDsaJlbDtbDubDtbDCbDPbxCbIbbIcbIdbIebMlbIgbIhbIibIjbIkbwmbIlbImbInbDJbDTbElbIpbIqcLUbFDbIsbItbHObCpbHSbIwbIxbIybUdbLybMqbICbMCbUcbIFbIGbIHbIIbIJbzAbIKbCubCvbMHbMFbINbIObIPbIQbHvbGabGbbISbEnbEnbEnbCJbCJbCJbMSbMPbCJbCJbBybCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabMZaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbuObEmbIVbIWbNdbuNbuGbuAbNfbtCbvtbJcbJdbJebJebJfbJgbJhbJibJjbJgbJfbJebJebNkbJkbJlbNqbJnbJobNBbJebJebJpbJgbJhbJibJjbJsbJtbJubJtbJvbJwbvUaJlbEtbEqbFHbGFbNLbGHbDzbHAbFibDVbxFbNQbCFbDSbDEbJGbwkbJHbJIbJJbDJbJKbJLbJMbJNbJObFDbJPbItbJObCpbJQbJRbIxbJSbJTbJUbNZbJWbObbJYbIFbJZbKabKbbKbbzAbKcbKdbKebOcbKgbKhbKibKjbKjbKkbGabGbbKlbEnbKmbOdbKnbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKpbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKvbKwbKxbKwbKyaaaaaaaaabGtbGtbOfbKAbIVbKAbOibKCbOnbKDbKEbtCbKFbvtbKGbKHbAabKIbAabzZbHHbKJbAabKKbKLbKMbKNbKObAcbAabKPbKQbHLbKRbHLbHLbKSbKTbODbOtbKWbKXbcLbKYaRpaRpaRpaJlbOEbFlbFnbOFbJmbOGbJybJxbFIbLgbLhbLibLjbHgbDEbIkbIabIzbHhbDJbDJbLobLobLobCpbLpbLqbLrbLsbLtbCpbLubLvbIxbLwbFGbLybOHbLAbLBbLCbIFbJCbLEbKbbKbbzAbRsbLFbCvbwwbLGbuTbuUbLJbLKbLLbGabLMbLNbLObLObLObLPbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbLQbLRbLSbLRbKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbsObLXbtdbLVbLZbMabMbbGtbMcbMdbMebMfbMgbOLbOKbMjbMjbMkbtCbtCbtCbOMbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMmbMnbMobtCbtCbtCbtCbtCbONbtCbtCbtCaJlaJlbOQaJlaKSaMpbMraJlbKZbJXbORbGFbLdbxCbDzbLDbxCbtvbMzbMAbMBbwkbOTbMDbMEbOUbMGbPubMIbMJbMKbMLbItbJObFDbFDbMMbJObCpbMNbMObMObMObMObMObMObMObMObMObMObPvbMQbMRbMRbzAbPAbMTbMUbwwbMVbMVbMVbMWbMXbMYbMVbMVbMVbMVbMVbMVbNabNbaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymbPCbLRbLRbNebKtbKtbLTbLTbPDbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKvbKwbKxbKwbKyaaaaaaaaabGtbGtbOfbKAbIVbKAbOibKCbOnbKDbKEbtCbKFbvtbKGbKHbAabKIbAabzZbHHbKJbAabKKbKLbKMbKNbKObAcbAabKPbKQbHLbKRbHLbHLbKSbKTbODbOtbKWbKXbcLbKYaRpaRpaRpaJlbOEbFlbFnbOFbJmbOGbJybJxbFIbLgbLhbLibLjbHgbDEbIkbIabIzbHhbDJbDJbLobLobLobCpbMMbLqbLrbLsbLtbCpbLubLvbIxbLwbFGbLybOHbLAbLBbLCbIFbJCbLEbKbbKbbzAbRsbLFbCvbwwbLGbuTbuUbLJbLKbLLbGabLMbLNbLObLObLObLPbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbLQbLRbLSbLRbKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbsObLXbtdbLVbLZbMabMbbGtbMcbMdbMebMfbMgbOLbOKbMjbMjbMkbtCbtCbtCbOMbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMmbMnbMobtCbtCbtCbtCbtCbONbtCbtCbtCaJlaJlbOQaJlaKSaMpbMraJlbKZbJXbORbGFbLdbxCbDzbLDbxCbtvbMzbMAbMBbwkbOTbMDbMEbOUbMGbPubMIbMJbMKbMLbItbJObFDbFDbLpbJObCpbMNbMObMObMObMObMObMObMObMObMObMObPvbMQbMRbMRbzAbPAbMTbMUbwwbMVbMVbMVbMWbMXbMYbMVbMVbMVbMVbMVbMVbNabNbaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymbPCbLRbLRbNebKtbKtbLTbLTbPDbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbubbtObGvbNubNvbNwbNxaaaaaaaaaaaabNybuhbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPbqsbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbupbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbuxbEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbNgbNgbNgbRAbRzbKAbOSbRDbRBbKAbRFbOVbOWbGvbGvbGvbGvbGvbGvbOXbOYbOZbPaaaabPbbPcbPcbPdbvYbPfbPgbPhbPfbPibNFbPjbPkbPlbNFbPmbNXbPobPpbPqbPrbPsbPtbPtbNSbRWbRJbPwbPxbPybDtbNYbLbbScbGFbGFbSgbDzbSibxCbSnbwZbwYbwlbwkbSubPIbwkbOkbwDbwKbOlbPNbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPPbQYbPRbOsbOsbOsbOsbwjbMObPTbLEbPUbPUbzAbBhbPVbPWbwbbPYbPYbSMbSObSNbSQbSPbSSbSRbSSbSVbMVbQfbSWbOObQhbTgbOpbQkaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQlbQmbQmbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbQnbQobTAbQqbQrbKAbKAbQsbQtbTObQvbQvbQvbQvbQvbQvbQwbQxbQyaaabQzbQAbUbbQCbxbbPfbQEbQGbQFbPfbNFbQIbQJbQKbNFbxxbxhbQNbQObQPbQQbQRbPtbQSbPxbQTbNUbPxbPxbQUbDtbPnbGFbQVbUkbGFbPzbDzbLebRCbQZbPBbUobyhbRGbDEbIkbSpbOkbwKbwKbOlbRfbMKbRgbRhbygbRjbRkbRlbybbRnbPObMObOsbOsbRobOsbOsbOsbOsbyabMObRqbLEbRrbRrbzAbRsbRtbRubyfbRwbUGbUwbUPbUObUWbURbVkbVjbVvbVmbxIbREbVGbxHbRHbRIbQibRKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7535,7 +7535,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXmcbfbWmcbgbRScbibXrbRSbXsbNxaaKaaaaaaaaabNybNybNybNybNybNybNybNFbUDbUEbXtbNFbSUbWnbWJbWHbWHbWJbWRbSUbhVbWUbWUbXocaqbXBbDtbDtbXCbXDbXEbXFbXGblRbXIbXJbXKbXLbXMbXNbXObXPbXQbXRbXSbXTbXUbznbzpbzobAPbzqbARbAQbATbAScbjbAUbYfbYgbIwbYhbVobCqbWObWNbWPbYmbYnbgJbYpbYqbYrbYscbmbYrbYubYvbILaafbnxcbncbrbrBbVBcbtcbAcbycbDbYAbMVbVHbYBbYCbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbXlbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYDbVQbVQbVRbYEbYFbYGbNxcbJbNxbYIbYJbYKbYIbYIbYLcbLbYNbYObYPcbObXwbXzbXybYebXAbYjbWJbYybYxbYRbYQbYTbidbYVbYUbYXbYWcaqbZhbNScbWbZjbZkbZlbZlbZmbnEbZobZpbTJbTJbZqcccbTJbTJccncceccrcaIcctbWQbZxbZyccubZybZAbZaccvbZabZAccEbYfbMNbIwbZEbXWbXVbZdccGbZJbZKbMObMObwwbwwbwwbwwbwwboIbnFbofbwwbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVccJbZQbZRbUnaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamccMaamaamaamaamaamaaaaaaaaaaaaaaaaaaaafaafaaabZfbZgbZgbZgbZHbZgbZgbZTbZIbYIbZYbZZbYIccQcabccScadbZWcafccYbZXcaecaccahcagcaibWJbYycajcakbYQcalbSUcaqcaqcaqcaqcaqcarbNSbDtcascatcdjcamcawcdmcaycazbTJcaocaBcaCcaDcaEcaFcaGcaHcaIbZxbWQcapbZycaKbsEbZAbsGcaNcaObZAbXXbYfbPObIwbXYbsAbXZbXYbXYbIwbIwbIwcaRcaScaTcaUcaVbwwbwwcdBbwwbwwcaXcaYcaucaAcavcdNcaZcbacbccdUcdTcdZcdYcbhbUnbUnbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbUubUsbUsbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcbbceccebcblcedceicefcbpcbobYIcelcbsbYIbYIcercbucbvcbwcbxceucbqbXzbXybYecbzbsIbWJbWJcbBcbCbWJcexbSUcbFcbGcaqcbHcaqbTFcbIcbIcbIcbIcbIcbIcbIbTJceCcbEbTJcbKcbMcbNceHcaEcbPceIceKcaIbZxbWQcbRbZycbScbTbZAcbUcbVcfebZAccqbYfbYbbYdbYcbYiccsccAbYccfibYkbYlcktbZDbZwbZFcktcfjbZGccCccBcfkccDccPccFcfscfmcfGcfucfmcfIcfMcfLcfRccwccxccycczbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcbbceccebcblcedceicefcbpcbobYIcelcbsbYIbYIcercbucbvcbwcbxceucbqbXzbXybYecbzbsIbWJbWJcbBcbCbWJcexbSUcbFcbGcaqcbHcaqbTFcbIcbIcbIcbIcbIcbIcbIbTJceCcbEbTJcbKcbMcbNceHcaEcbPceIceKcaIbZxbWQcbRbZycbScbTbZAcbUcbVcfebZAccqbYfbYbbYdbYcbYiccsccAbYcbpTbYkbYlcktbZDbZwbZFcktcfjbZGccCccBcfkccDccPccFcfscfmcfGcfucfmcfIcfMcfLcfRccwccxccycczbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafccRccRcebccTcfZceiccUccWccVbYIcgeccHccIcgfccKccLcgmccNccOcgoccXcdaccZcdecdbbqTcdycdQcdFcekceecembsccdccddaJEcdfcaqbTFcbIcdgcdhcdicgOcdkcdlcgRcdncdocgWcdqcdrcdsbqtcaEcducdvcdwcaIbZxbWQcenbZycdxbqbbZAcdzcdAbqabZAcaPbYfbYfcaQbYccbYcbXcbZbYcchBccacjfcdLcdLbyFbBucdLcdOcdPceqcdRcdOcdSbBpbyebydcdScdScdScdScgXbyebydcdScdSbXjcdXbpZbpAceachabpybpsbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycbycchicegcegcehbKtbKtbLTbLTchnbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcejcejcejcejcejcejcetcesbYIbYIbYIbYIbYIchpchuchqchqchqchzcewbXzbXybYeceybYjceEceTceSceWceUceXbSUcezaJFceYaJFcaqbTFcbIceDcfacfacfaceFceGbTJchPchLbTJcbKcbNceJceHcaEchSceLceMcaIbZxbWQceNbZyceOcePbZAbZAbZAbZAbZAccbceRbYfcaQbYcccdbszbYcbYcchBcifcjfcdLbsycfbcfbcfccdOcfdciycffcdOcfgcfhcfhcfhciCciLciKbsxciPcfnbsecfpcdScfqcfrciQbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaafaafcftcfBcfvbNebKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcejcfwcfxcvbcvccwfcejcfDcfCcfFcfEcfHciVcjacjacfKcfJcfJcjlcjpcbqbXzbXybYecfNcaicfOcfQcfPcvtcwecggbSUaJFaJFcaqceBcaqbTFcbIcfVcfWcfWcfWcfXcbIcfYcjtcgacfYcgbcgccgdcjvcaEcjCceLcgicaIcghccfcwEbZycgkcglbZycjIbLvbVicgnccgcchbYfccjcciccicckcclcclcclcclccmcdLckncgycgycgzcgActscgrcgpcgucgtcgGcgGcgGcgxcgIcgIcgJckocgLcgDcgMcdScgNcwDcgPcgNaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcgQbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index 54f5f95db4..331980dfd8 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -1991,7 +1991,7 @@ "Mo" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/skipjack/station) "Mp" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_west_vent"},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mq" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access = list(45)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/holding) -"Mr" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) +"Mr" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/material/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Ms" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mt" = (/obj/structure/table/standard,/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/minihoe,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mu" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) diff --git a/maps/exodus-3.dmm b/maps/exodus-3.dmm index caf3272970..f747f6627b 100644 --- a/maps/exodus-3.dmm +++ b/maps/exodus-3.dmm @@ -78,8 +78,8 @@ "bz" = (/turf/simulated/shuttle/wall{icon_state = "swall_s5"; dir = 2},/area/space) "bA" = (/turf/simulated/shuttle/wall{icon_state = "swall13"; dir = 2},/area/space) "bB" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/space) -"bC" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"bD" = (/obj/item/weapon/shard,/obj/structure/bed/chair,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"bC" = (/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"bD" = (/obj/item/weapon/material/shard,/obj/structure/bed/chair,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bE" = (/obj/structure/bed/chair,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bF" = (/obj/structure/cable,/obj/structure/computerframe{anchored = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "bG" = (/obj/structure/cable,/obj/structure/computerframe{anchored = 1},/obj/item/stack/cable_coil/cut,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) @@ -380,7 +380,7 @@ "hp" = (/obj/structure/computerframe,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless,/area/AIsattele) "hq" = (/obj/machinery/teleport/station,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless,/area/AIsattele) "hr" = (/turf/simulated/floor/plating/airless,/area/AIsattele) -"hs" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/AIsattele) +"hs" = (/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/AIsattele) "ht" = (/obj/structure/cable,/turf/simulated/floor/plating/airless,/area/AIsattele) "hu" = (/obj/structure/table/rack,/obj/item/clothing/gloves/yellow,/turf/simulated/floor/plating/airless,/area/AIsattele) "hv" = (/obj/structure/girder,/turf/simulated/floor/plating/airless,/area/AIsattele) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 22cbab0b9a..8c16d0792d 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -39,7 +39,7 @@ "aM" = (/obj/structure/sign/botany{pixel_x = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "warningcorner"; dir = 1},/area/outpost/research/chemistry) "aN" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/analysis) "aO" = (/obj/structure/reagent_dispensers/coolanttank,/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/outpost/research/analysis) -"aP" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"aP" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "aQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/outpost/abandoned) "aR" = (/obj/item/stack/rods,/obj/structure/door_assembly/door_assembly_ext{name = "Broken External Airlock"},/turf/simulated/floor,/area/outpost/abandoned) "aS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/outpost/abandoned) @@ -79,7 +79,7 @@ "bA" = (/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "bB" = (/obj/structure/table/standard,/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/kitchen) "bC" = (/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) -"bD" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) +"bD" = (/obj/item/weapon/material/shard{icon_state = "medium"},/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "bE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/outpost/abandoned) "bF" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/research{name = "Sample Preparation"; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "bG" = (/obj/machinery/artifact_analyser,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/bluegrid,/area/outpost/research/lab) @@ -116,7 +116,7 @@ "cl" = (/obj/machinery/chem_master,/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) "cm" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/outpost/research/analysis) "cn" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 6; icon_state = "whitegreen"},/area/outpost/research/analysis) -"co" = (/obj/item/stack/rods,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"co" = (/obj/item/stack/rods,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/material/shard,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "cp" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/outpost/abandoned) "cq" = (/obj/item/stack/rods,/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "cr" = (/turf/simulated/wall,/area/outpost/abandoned) @@ -143,7 +143,7 @@ "cM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/outpost/research/lab) "cN" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/water,/obj/item/weapon/reagent_containers/glass/beaker/fuel,/obj/item/weapon/reagent_containers/glass/bottle/toxin,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric{name = "beaker 'sulphuric acid'"},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Sample Preparation"; dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/outpost/research/chemistry) "cO" = (/obj/machinery/vending/snack,/turf/simulated/floor/wood,/area/outpost/research/kitchen) -"cP" = (/obj/item/weapon/shard,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) +"cP" = (/obj/item/weapon/material/shard,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "cQ" = (/obj/machinery/alarm{dir = 2; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "cR" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "cS" = (/obj/structure/sign/science{desc = "A warning sign which reads 'MASS SPECTROMETRY'"; name = "\improper MASS SPECTROMETRY"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "whitegreencorner"},/area/outpost/research/hallway) @@ -261,8 +261,8 @@ "fa" = (/obj/effect/alien/weeds{icon_state = "weeds1"},/turf/simulated/floor/plating,/area/outpost/abandoned) "fb" = (/obj/effect/alien/weeds,/turf/simulated/floor/plating,/area/outpost/abandoned) "fc" = (/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) -"fd" = (/obj/item/weapon/shard{icon_state = "small"},/obj/item/clothing/suit/space/syndicate,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) -"fe" = (/obj/item/weapon/shard,/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"fd" = (/obj/structure/lattice,/obj/item/weapon/material/shard{icon_state = "medium"},/turf/space,/area/space) +"fe" = (/obj/item/weapon/material/shard{icon_state = "small"},/obj/item/clothing/suit/space/syndicate,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "ff" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/outpost/abandoned) "fg" = (/obj/machinery/newscaster{layer = 3.3; pixel_x = 0; pixel_y = -27},/turf/simulated/floor/wood,/area/outpost/research/hallway) "fh" = (/obj/structure/bookcase/manuals/xenoarchaeology,/turf/simulated/floor/wood,/area/outpost/research/hallway) @@ -281,7 +281,7 @@ "fu" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/washing_machine,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/outpost/research/hallway) "fv" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/outpost/research/hallway) "fw" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) -"fx" = (/obj/structure/lattice,/obj/item/weapon/shard{icon_state = "medium"},/turf/space,/area/space) +"fx" = (/obj/item/weapon/material/shard,/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "fy" = (/turf/simulated/floor/plating/airless,/turf/simulated/shuttle/wall{icon_state = "pwall"; dir = 6},/area/shuttle/alien/mine) "fz" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 5; icon_state = "whitehall"},/area/outpost/research/hallway) "fA" = (/turf/simulated/floor/plating,/area/outpost/research/disposal) @@ -328,10 +328,10 @@ "gp" = (/obj/effect/alien/weeds{icon_state = "weeds1"},/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) "gq" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/outpost/abandoned) "gr" = (/obj/machinery/door/airlock,/turf/simulated/floor,/area/outpost/abandoned) -"gs" = (/obj/structure/lattice,/obj/item/weapon/shard{icon_state = "small"},/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/space,/area/outpost/abandoned) +"gs" = (/obj/structure/lattice,/obj/item/weapon/material/shard{icon_state = "small"},/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/space,/area/outpost/abandoned) "gt" = (/obj/structure/lattice,/turf/space,/area/outpost/abandoned) "gu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) -"gv" = (/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"gv" = (/obj/item/weapon/material/shard,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "gw" = (/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/outpost/research/eva) "gx" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/research{name = "Anomalous Materials Sample Preparation"; req_access = list(65)},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "gy" = (/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) @@ -363,7 +363,7 @@ "gY" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/outpost/research/eva) "gZ" = (/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/outpost/research/eva) "ha" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/toxin,/turf/simulated/floor{icon_state = "white"},/area/outpost/research/medical) -"hb" = (/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"hb" = (/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "hc" = (/obj/effect/alien/weeds{icon_state = "weeds1"},/obj/effect/decal/remains/xeno,/turf/simulated/floor/plating,/area/outpost/abandoned) "hd" = (/obj/effect/gibspawner/human,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/outpost/abandoned) "he" = (/obj/effect/gibspawner/robot,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) @@ -406,7 +406,7 @@ "hP" = (/obj/effect/decal/remains/human,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) "hQ" = (/obj/effect/alien/weeds,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "hR" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/outpost/abandoned) -"hS" = (/obj/item/weapon/shard,/obj/structure/lattice,/turf/space,/area/space) +"hS" = (/obj/item/weapon/material/shard,/obj/structure/lattice,/turf/space,/area/space) "hT" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "hU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/research/dock) "hV" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/obj/structure/sign/deathsposal{pixel_x = 32},/turf/simulated/floor/wood,/area/outpost/research/kitchen) @@ -632,7 +632,7 @@ "mh" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mi" = (/obj/structure/table/rack,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "mj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/outpost/abandoned) -"mk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"mk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/material/shard,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "ml" = (/obj/machinery/light/small{dir = 8},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "research_pump"; tag_exterior_door = "research_outer"; frequency = 1379; id_tag = "research_airlock"; tag_interior_door = "research_inner"; pixel_x = -25; pixel_y = 0; tag_chamber_sensor = "research_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "research_pump"},/turf/simulated/floor,/area/outpost/research/eva) "mm" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "damaged4"},/area/outpost/abandoned) "mn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) @@ -720,9 +720,9 @@ "nR" = (/obj/machinery/disposal/deliveryChute{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plating,/area/outpost/research/eva) "nS" = (/obj/machinery/conveyor{dir = 2; id = "anotempload"},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/outpost/research/eva) "nT" = (/obj/machinery/conveyor{dir = 5; id = "anosample"},/obj/machinery/light/small{dir = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'MOVING PARTS'."; name = "\improper MOVING PARTS"; pixel_y = 32},/turf/simulated/floor/plating,/area/outpost/research/eva) -"nU" = (/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/airless,/area/outpost/abandoned) +"nU" = (/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/airless,/area/outpost/abandoned) "nV" = (/obj/structure/table/rack,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/outpost/abandoned) -"nW" = (/obj/item/weapon/shard,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/outpost/abandoned) +"nW" = (/obj/item/weapon/material/shard,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/outpost/abandoned) "nX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/meter,/turf/simulated/floor/plating,/area/outpost/research/power) "nY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/outpost/research/eva) "nZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/research/eva) @@ -755,16 +755,16 @@ "oA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_storage) "oB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_storage) "oC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/closet/walllocker/emerglocker/west,/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) -"oD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"oD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "oE" = (/obj/structure/table/standard,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "oF" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "oG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "oH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/outpost/abandoned) -"oI" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/outpost/abandoned) +"oI" = (/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/outpost/abandoned) "oJ" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/outpost/abandoned) "oK" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/outpost/research/power) -"oL" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille/broken,/obj/item/stack/rods,/obj/item/weapon/shard,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/outpost/abandoned) -"oM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille/broken,/obj/item/weapon/shard{icon_state = "small"},/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"oL" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille/broken,/obj/item/stack/rods,/obj/item/weapon/material/shard,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/outpost/abandoned) +"oM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille/broken,/obj/item/weapon/material/shard{icon_state = "small"},/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "oN" = (/obj/structure/table/standard,/obj/item/weapon/paper/crumpled,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "oO" = (/obj/machinery/artifact_scanpad,/obj/machinery/light,/turf/simulated/floor/bluegrid,/area/outpost/research/isolation_a) "oP" = (/obj/machinery/artifact_analyser,/turf/simulated/floor/bluegrid,/area/outpost/research/isolation_a) @@ -1680,10 +1680,10 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadQdRdSdTbDbCbEaeaeababababababababababababababababababababababababababababababababababababababababababababababababababalalalaeaeaeaeaeaeaeaebTaGaGaGaGaGaGbUaGaGaGaGbFaGaGbIbQbGbLbKbJaGbPbObNbMbSbYbRhVjeiYalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaetdldlfycPbVcrabababababababababababababababababababababababababababababababababababababababababababababababababababalalalaaaaaaexexexexexexexaicWcXcUjBcScTcQcRdcdbdejIaGcYdadEdidhdjaGdgdfbNbMbMbMbMbMazalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaecocqcpcrabababababababababababababababababababababababababababababababababababababababababababababababababababababalaaaaaaexexexexexexexcscwcxcyctctcucvctcycFcEcDcCcBcAczcMcMcLcKcJcIcHcGcOdDddazazalalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaefxemelekcrababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaexexexexexexexejcwdAdBdCeifFdFdGdYaGeadZaGebedecehdNjQaGdVdUaidWdWdWdWeeefegalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaefdemelekcrababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaexexexexexexexejcwdAdBdCeifFdFdGdYaGeadZaGebedecehdNjQaGdVdUaidWdWdWdWeeefegalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaedLdKdMcrdJdIcrcrcrcrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaexexexexexexexdHcwdAdBdCdOdPdFdGdyaGdxdwaGkaaGaGaGaGcCaGkoduaidtdodpdmdndqdrdqdqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaacacacacacaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegzfefEfHgVfGafbCeYcrfbfacrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaexexexexexexexaifkflfjdCfhfidFfgfvaGfzfwfsfrfuftfoaGeLeKfmeRaifnfAfBfCfDdqalalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaacacacacacaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaefcfdfeffeUeTeWeVeYeXfaeZfbcrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaeAereseyezeresevewepeqeneneneoeoeoeoeoeSeReQePeOeNeMaGfqfpeJeIaieHeFeGeDeEeCaGaGeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaaaaaaaaaaaaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegzfxfEfHgVfGafbCeYcrfbfacrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaexexexexexexexaifkflfjdCfhfidFfgfvaGfzfwfsfrfuftfoaGeLeKfmeRaifnfAfBfCfDdqalalalaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaacacacacacaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaefcfefxffeUeTeWeVeYeXfaeZfbcrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaeAereseyezeresevewepeqeneneneoeoeoeoeoeSeReQePeOeNeMaGfqfpeJeIaieHeFeGeDeEeCaGaGeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacaaaaaaaaaaaaaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahSfchbfcfEfEdJheeUcrekhdcrfahccrabababababababababababababababababababababababababababababababababababababababababababababababdXaaaaaaaaaagMgPgQgNgOgTgQgRgSgWgXgUhahfeogYgZgweoloeRgBgAgDgCgEaGgGgFgIgHaiaigJaiaiaieReRgKeBeBeBeBgLeBeBeBeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaegugvfEgsgtfEcpgqeTgrgpgocrcrcrcrcrcrababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaagngbgcgcgcgcgdgegfggghgigjgkeoglgmfVfUfTeIfXfWeReRfYfweReReJeIgafZfKfLfIlyeReRfMeBfOfPeBfNfRfSfQeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeiCiBhRfEgtiDffiGeUiFcriIiHcriWhKbCiEcrabababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaagngQgQgQhWgQlzhUgQibgXhZiahYeogmhXihigijiiidicifieillQimmrikieieieirisitiuinioipiqixiyiziAivmFjceBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-6.dmm b/maps/exodus-6.dmm index 25a83f2dc9..df2be4562e 100644 --- a/maps/exodus-6.dmm +++ b/maps/exodus-6.dmm @@ -1,5 +1,5 @@ "a" = (/turf/space,/area/space) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -257,3 +257,4 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} + From a32179a0626a1d82860102fa2d5f4af141cf4250 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 20:54:34 +0930 Subject: [PATCH 120/199] Renamed knives. --- code/defines/obj/weapon.dm | 4 +- code/game/machinery/autolathe_datums.dm | 6 +- code/game/machinery/vending.dm | 4 +- .../objects/items/stacks/sheets/leather.dm | 2 +- .../items/weapons/improvised_components.dm | 2 +- .../objects/items/weapons/material/knives.dm | 83 +++++++++---------- .../weapons/material/material_weapons.dm | 5 +- code/game/objects/random/random.dm | 4 +- code/modules/admin/verbs/debug.dm | 10 +-- code/modules/clothing/suits/jobs.dm | 4 +- .../clothing/under/accessories/storage.dm | 4 +- code/modules/hydroponics/grown_inedible.dm | 2 +- code/modules/library/lib_items.dm | 2 +- .../living/simple_animal/hostile/russian.dm | 2 +- .../mob/living/simple_animal/simple_animal.dm | 2 +- .../reagent_containers/food/snacks/meat.dm | 2 +- .../artifact/artifact_replicator.dm | 4 +- .../research/xenoarchaeology/finds/finds.dm | 2 +- code/modules/surgery/eye.dm | 2 +- code/modules/surgery/face.dm | 2 +- code/modules/surgery/generic.dm | 2 +- code/modules/surgery/organs_internal.dm | 4 +- code/modules/surgery/other.dm | 2 +- code/modules/surgery/slimes.dm | 4 +- maps/exodus-2.dmm | 10 +-- 25 files changed, 82 insertions(+), 88 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 99ff26c89a..dfecfcb914 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -91,7 +91,7 @@ /obj/item/weapon/cane/concealed/New() ..() - var/obj/item/weapon/butterfly/switchblade/temp_blade = new(src) + var/obj/item/weapon/material/butterfly/switchblade/temp_blade = new(src) concealed_blade = temp_blade temp_blade.attack_self() @@ -109,7 +109,7 @@ else ..() -/obj/item/weapon/cane/concealed/attackby(var/obj/item/weapon/butterfly/W, var/mob/user) +/obj/item/weapon/cane/concealed/attackby(var/obj/item/weapon/material/butterfly/W, var/mob/user) if(!src.concealed_blade && istype(W)) user.visible_message("[user] has sheathed \a [W] into \his [src]!", "You sheathe \the [W] into \the [src].") user.drop_from_inventory(W) diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 3b323cd69f..90486e64eb 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -81,12 +81,12 @@ name = "wrench" path = /obj/item/weapon/wrench category = "Tools" - + /datum/autolathe/recipe/hatchet name = "hatchet" path = /obj/item/weapon/hatchet category = "Tools" - + /datum/autolathe/recipe/minihoe name = "mini hoe" path = /obj/item/weapon/minihoe @@ -133,7 +133,7 @@ /datum/autolathe/recipe/knife name = "kitchen knife" - path = /obj/item/weapon/kitchenknife + path = /obj/item/weapon/material/knife category = "General" /datum/autolathe/recipe/taperecorder diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 6895124593..ff604d0b2c 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -910,8 +910,8 @@ desc = "A kitchen and restaurant equipment vendor." product_ads = "Mm, food stuffs!;Food and food accessories.;Get your plates!;You like forks?;I like forks.;Woo, utensils.;You don't really need these..." icon_state = "dinnerware" - products = list(/obj/item/weapon/tray = 8,/obj/item/weapon/kitchen/utensil/fork = 6,/obj/item/weapon/kitchenknife = 3,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8,/obj/item/clothing/suit/chef/classic = 2) - contraband = list(/obj/item/weapon/kitchen/utensil/spoon = 2,/obj/item/weapon/kitchen/utensil/knife = 2,/obj/item/weapon/kitchen/rollingpin = 2, /obj/item/weapon/butch = 2) + products = list(/obj/item/weapon/tray = 8,/obj/item/weapon/kitchen/utensil/fork = 6,/obj/item/weapon/material/knife = 3,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8,/obj/item/clothing/suit/chef/classic = 2) + contraband = list(/obj/item/weapon/kitchen/utensil/spoon = 2,/obj/item/weapon/kitchen/utensil/knife = 2,/obj/item/weapon/kitchen/rollingpin = 2, /obj/item/weapon/material/knife/butch = 2) /obj/machinery/vending/sovietsoda name = "BODA" diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index a3e7ed53e2..344a991935 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -91,7 +91,7 @@ //Step one - dehairing. /obj/item/stack/sheet/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob) - if( istype(W, /obj/item/weapon/kitchenknife) || \ + if( istype(W, /obj/item/weapon/material/knife) || \ istype(W, /obj/item/weapon/kitchen/utensil/knife) || \ istype(W, /obj/item/weapon/twohanded/fireaxe) || \ istype(W, /obj/item/weapon/hatchet) ) diff --git a/code/game/objects/items/weapons/improvised_components.dm b/code/game/objects/items/weapons/improvised_components.dm index d00ca141f6..7222ae87b4 100644 --- a/code/game/objects/items/weapons/improvised_components.dm +++ b/code/game/objects/items/weapons/improvised_components.dm @@ -7,7 +7,7 @@ /obj/item/butterflyconstruction/attackby(obj/item/W as obj, mob/user as mob) if(istype(W,/obj/item/weapon/screwdriver)) user << "You finish the concealed blade weapon." - new /obj/item/weapon/butterfly(user.loc) + new /obj/item/weapon/material/butterfly(user.loc) qdel(src) return diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm index 341ebb36cb..0aab729ad2 100644 --- a/code/game/objects/items/weapons/material/knives.dm +++ b/code/game/objects/items/weapons/material/knives.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/butterfly +/obj/item/weapon/material/butterfly name = "butterfly knife" desc = "A basic metal blade concealed in a lightweight plasteel grip. Small enough when folded to fit in a pocket." icon_state = "butterflyknife" @@ -14,39 +14,45 @@ throwforce = 7 attack_verb = list("patted", "tapped") -/obj/item/weapon/butterfly/switchblade - name = "switchblade" - desc = "A classic switchblade with gold engraving. Just holding it makes you feel like a gangster." - icon_state = "switchblade" - -/obj/item/weapon/butterfly/attack_self(mob/user) - active = !active +/obj/item/weapon/material/butterfly/update_force() if(active) - user << "You flip out your [src]." - playsound(user, 'sound/weapons/flipblade.ogg', 15, 1) - force = 15 //bay adjustments - throwforce = 12 + ..() //Updates force. + throwforce = max(3,force-3) edge = 1 sharp = 1 - hitsound = 'sound/weapons/bladeslice.ogg' + hitsound = initial(hitsound) icon_state += "_open" w_class = 3 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") else - user << "The butterfly knife can now be concealed." - force = initial(force) + force = 3 edge = 0 sharp = 0 - hitsound = initial(hitsound) + hitsound = null icon_state = initial(icon_state) w_class = initial(w_class) attack_verb = initial(attack_verb) - add_fingerprint(user) + +/obj/item/weapon/material/butterfly/switchblade + name = "switchblade" + desc = "A classic switchblade with gold engraving. Just holding it makes you feel like a gangster." + icon_state = "switchblade" + unbreakable = 1 + +/obj/item/weapon/material/butterfly/attack_self(mob/user) + active = !active + if(active) + user << "You flip out your [src]." + playsound(user, 'sound/weapons/flipblade.ogg', 15, 1) + else + user << "The butterfly knife can now be concealed." + update_force() + add_fingerprint(user) /* * Kitchen knives */ -/obj/item/weapon/kitchenknife +/obj/item/weapon/material/knife name = "kitchen knife" icon = 'icons/obj/kitchen.dmi' icon_state = "knife" @@ -54,53 +60,38 @@ flags = CONDUCT sharp = 1 edge = 1 - force = 10.0 - w_class = 3.0 - throwforce = 6.0 + force = 10 + w_class = 3 + throwforce = 8 throw_speed = 3 throw_range = 6 matter = list(DEFAULT_WALL_MATERIAL = 12000) origin_tech = "materials=1" attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + unbreakable = 1 - suicide_act(mob/user) - viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") - return (BRUTELOSS) +/obj/item/weapon/material/knife/suicide_act(mob/user) + viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ + "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") + return (BRUTELOSS) -/obj/item/weapon/kitchenknife/hook +/obj/item/weapon/material/knife/hook name = "meat hook" desc = "A sharp, metal hook what sticks into things." icon_state = "hook_knife" item_state = "hook_knife" -/obj/item/weapon/kitchenknife/ritual +/obj/item/weapon/material/knife/ritual name = "ritual knife" desc = "The unearthly energies that once powered this blade are now dormant." icon = 'icons/obj/wizard.dmi' icon_state = "render" -/* - * Bucher's cleaver - */ -/obj/item/weapon/butch +/obj/item/weapon/material/knife/butch name = "butcher's cleaver" icon = 'icons/obj/kitchen.dmi' icon_state = "butch" desc = "A huge thing used for chopping and chopping up meat. This includes clowns and clown-by-products." - flags = CONDUCT - force = 15.0 - w_class = 2.0 - throwforce = 8.0 - throw_speed = 3 - throw_range = 6 - matter = list(DEFAULT_WALL_MATERIAL = 12000) - origin_tech = "materials=1" + force = 15 attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - sharp = 1 - edge = 1 - -/obj/item/weapon/butch/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index 84aa0799ba..9cc9455a9c 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -14,6 +14,9 @@ material_key = default_material set_material(material_key) +/obj/item/weapon/material/proc/update_force() + force = round(material.get_blunt_damage()*damage_divisor) + /obj/item/weapon/material/proc/set_material(var/new_material) material = get_material_by_name(new_material) if(!material) @@ -21,10 +24,10 @@ else name = "[material.display_name] bat" health = round(material.integrity/10) - force = round(material.get_blunt_damage()*damage_divisor) color = material.icon_colour if(material.products_need_process()) processing_objects |= src + update_force() /obj/item/weapon/material/Destroy() processing_objects -= src diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm index 18e0c75e1a..34e646a1cf 100644 --- a/code/game/objects/random/random.dm +++ b/code/game/objects/random/random.dm @@ -162,11 +162,11 @@ prob(2);/obj/item/weapon/storage/pill_bottle/happy,\ prob(2);/obj/item/weapon/storage/pill_bottle/zoom,\ prob(5);/obj/item/weapon/contraband/poster,\ - prob(2);/obj/item/weapon/butterfly,\ + prob(2);/obj/item/weapon/material/butterfly,\ prob(3);/obj/item/butterflyblade,\ prob(3);/obj/item/butterflyhandle,\ prob(3);/obj/item/weapon/wirerod,\ - prob(1);/obj/item/weapon/butterfly/switchblade,\ + prob(1);/obj/item/weapon/material/butterfly/switchblade,\ prob(1);/obj/item/weapon/reagent_containers/syringe/drugs) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 1012883781..c85fa2eac1 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -597,7 +597,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/thunderdome(M), slot_head) M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/pulse_rifle/destroyer(M), slot_r_hand) - M.equip_to_slot_or_del(new /obj/item/weapon/kitchenknife(M), slot_l_hand) + M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_hand) M.equip_to_slot_or_del(new /obj/item/weapon/grenade/smokebomb(M), slot_r_store) @@ -621,9 +621,9 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.equip_to_slot_or_del(new /obj/item/clothing/head/chefhat(M), slot_head) M.equip_to_slot_or_del(new /obj/item/weapon/kitchen/rollingpin(M), slot_r_hand) - M.equip_to_slot_or_del(new /obj/item/weapon/kitchenknife(M), slot_l_hand) - M.equip_to_slot_or_del(new /obj/item/weapon/kitchenknife(M), slot_r_store) - M.equip_to_slot_or_del(new /obj/item/weapon/kitchenknife(M), slot_s_store) + M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_hand) + M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_r_store) + M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_s_store) if ("tournament janitor") M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/janitor(M), slot_w_uniform) @@ -699,7 +699,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear) M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/plain/monocle(M), slot_glasses) M.equip_to_slot_or_del(new /obj/item/clothing/suit/apron(M), slot_wear_suit) - M.equip_to_slot_or_del(new /obj/item/weapon/kitchenknife(M), slot_l_store) + M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_store) M.equip_to_slot_or_del(new /obj/item/weapon/scalpel(M), slot_r_store) var/obj/item/weapon/twohanded/fireaxe/fire_axe = new(M) diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index e0fa47f64f..c4584e7416 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -51,14 +51,14 @@ //Chef /obj/item/clothing/suit/chef - name = "Chef's apron" + name = "chef's apron" desc = "An apron used by a high class chef." icon_state = "chef" item_state = "chef" gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS - allowed = list (/obj/item/weapon/kitchenknife,/obj/item/weapon/butch) + allowed = list (/obj/item/weapon/material/knife) sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') //Chef diff --git a/code/modules/clothing/under/accessories/storage.dm b/code/modules/clothing/under/accessories/storage.dm index 7f13449d16..adae7aac8c 100644 --- a/code/modules/clothing/under/accessories/storage.dm +++ b/code/modules/clothing/under/accessories/storage.dm @@ -75,8 +75,8 @@ hold.can_hold = list(/obj/item/weapon/hatchet/unathiknife,\ /obj/item/weapon/kitchen/utensil/knife,\ /obj/item/weapon/kitchen/utensil/pknife,\ - /obj/item/weapon/kitchenknife,\ - /obj/item/weapon/kitchenknife/ritual) + /obj/item/weapon/material/knife,\ + /obj/item/weapon/material/knife/ritual) new /obj/item/weapon/hatchet/unathiknife(hold) new /obj/item/weapon/hatchet/unathiknife(hold) diff --git a/code/modules/hydroponics/grown_inedible.dm b/code/modules/hydroponics/grown_inedible.dm index 680a7a5ec8..e69d8a67fc 100644 --- a/code/modules/hydroponics/grown_inedible.dm +++ b/code/modules/hydroponics/grown_inedible.dm @@ -45,7 +45,7 @@ /obj/item/weapon/corncob/attackby(obj/item/weapon/W as obj, mob/user as mob) ..() - if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/hatchet) || istype(W, /obj/item/weapon/kitchen/utensil/knife) || istype(W, /obj/item/weapon/kitchenknife) || istype(W, /obj/item/weapon/kitchenknife/ritual)) + if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/hatchet) || istype(W, /obj/item/weapon/kitchen/utensil/knife) || istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/material/knife/ritual)) user << "You use [W] to fashion a pipe out of the corn cob!" new /obj/item/clothing/mask/smokable/pipe/cobpipe (user.loc) qdel(src) diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 354d674215..f9292dc1b1 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -226,7 +226,7 @@ return scanner.computer.inventory.Add(src) user << "[W]'s screen flashes: 'Book stored in buffer. Title added to general inventory.'" - else if(istype(W, /obj/item/weapon/kitchenknife) || istype(W, /obj/item/weapon/wirecutters)) + else if(istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/wirecutters)) if(carved) return user << "You begin to carve out [title]." if(do_after(user, 30)) diff --git a/code/modules/mob/living/simple_animal/hostile/russian.dm b/code/modules/mob/living/simple_animal/hostile/russian.dm index ab044a02f0..da2599aeb7 100644 --- a/code/modules/mob/living/simple_animal/hostile/russian.dm +++ b/code/modules/mob/living/simple_animal/hostile/russian.dm @@ -20,7 +20,7 @@ attacktext = "punched" a_intent = I_HURT var/corpse = /obj/effect/landmark/mobcorpse/russian - var/weapon1 = /obj/item/weapon/kitchenknife + var/weapon1 = /obj/item/weapon/material/knife min_oxy = 5 max_oxy = 0 min_tox = 0 diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index aec9fd1894..0b35ae45ea 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -281,7 +281,7 @@ else user << "\The [src] is dead, medical items won't bring it back to life." if(meat_type && (stat == DEAD)) //if the animal has a meat, and if it is dead. - if(istype(O, /obj/item/weapon/kitchenknife) || istype(O, /obj/item/weapon/butch)) + if(istype(O, /obj/item/weapon/material/knife) || istype(O, /obj/item/weapon/material/knife/butch)) harvest(user) else user.changeNext_move(8) diff --git a/code/modules/reagents/reagent_containers/food/snacks/meat.dm b/code/modules/reagents/reagent_containers/food/snacks/meat.dm index 797f605b08..46bf9e4baf 100644 --- a/code/modules/reagents/reagent_containers/food/snacks/meat.dm +++ b/code/modules/reagents/reagent_containers/food/snacks/meat.dm @@ -10,7 +10,7 @@ src.bitesize = 3 /obj/item/weapon/reagent_containers/food/snacks/meat/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W,/obj/item/weapon/kitchenknife)) + if(istype(W,/obj/item/weapon/material/knife)) new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src) new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src) new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src) diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm index 8e6097a39b..8cfd141c28 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm @@ -43,7 +43,7 @@ /obj/item/weapon/autopsy_scanner,\ /obj/item/weapon/bikehorn,\ /obj/item/weapon/bonesetter,\ - /obj/item/weapon/butch,\ + /obj/item/weapon/material/knife/butch,\ /obj/item/weapon/caution,\ /obj/item/weapon/caution/cone,\ /obj/item/weapon/crowbar,\ @@ -53,7 +53,7 @@ /obj/item/weapon/hatchet,\ /obj/item/weapon/handcuffs,\ /obj/item/weapon/hemostat,\ - /obj/item/weapon/kitchenknife,\ + /obj/item/weapon/material/knife,\ /obj/item/weapon/flame/lighter,\ /obj/item/weapon/light/bulb,\ /obj/item/weapon/light/tube,\ diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index fe2bbe7afa..1a09521e1a 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -167,7 +167,7 @@ "You wonder what kind of music was made with it")]." if(6) item_type = "[pick("bladed knife","serrated blade","sharp cutting implement")]" - new_item = new /obj/item/weapon/kitchenknife(src.loc) + new_item = new /obj/item/weapon/material/knife(src.loc) additional_desc = "[pick("It doesn't look safe.",\ "It looks wickedly jagged",\ "There appear to be [pick("dark red","dark purple","dark green","dark blue")] stains along the edges")]." diff --git a/code/modules/surgery/eye.dm b/code/modules/surgery/eye.dm index cb3c5af7b7..250aea6693 100644 --- a/code/modules/surgery/eye.dm +++ b/code/modules/surgery/eye.dm @@ -20,7 +20,7 @@ /datum/surgery_step/eye/cut_open allowed_tools = list( /obj/item/weapon/scalpel = 100, \ - /obj/item/weapon/kitchenknife = 75, \ + /obj/item/weapon/material/knife = 75, \ /obj/item/weapon/material/shard = 50, \ ) diff --git a/code/modules/surgery/face.dm b/code/modules/surgery/face.dm index 8517a7b98d..4b983eb247 100644 --- a/code/modules/surgery/face.dm +++ b/code/modules/surgery/face.dm @@ -17,7 +17,7 @@ /datum/surgery_step/generic/cut_face allowed_tools = list( /obj/item/weapon/scalpel = 100, \ - /obj/item/weapon/kitchenknife = 75, \ + /obj/item/weapon/material/knife = 75, \ /obj/item/weapon/material/shard = 50, \ ) diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index 7ff50ae15b..0552ee800c 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -110,7 +110,7 @@ /datum/surgery_step/generic/cut_open allowed_tools = list( /obj/item/weapon/scalpel = 100, \ - /obj/item/weapon/kitchenknife = 75, \ + /obj/item/weapon/material/knife = 75, \ /obj/item/weapon/material/shard = 50, \ ) diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index b8b5d3f2ec..d25d9fc5f2 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -211,7 +211,7 @@ allowed_tools = list( /obj/item/weapon/scalpel = 100, \ - /obj/item/weapon/kitchenknife = 75, \ + /obj/item/weapon/material/knife = 75, \ /obj/item/weapon/material/shard = 50, \ ) @@ -447,7 +447,7 @@ // /datum/surgery_step/ribcage/heart/cut // allowed_tools = list( // /obj/item/weapon/scalpel = 100, \ -// /obj/item/weapon/kitchenknife = 75, \ +// /obj/item/weapon/material/knife = 75, \ // /obj/item/weapon/material/shard = 50, \ // ) diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index 7625de5893..50e6c3bcfb 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -56,7 +56,7 @@ priority = 2 allowed_tools = list( /obj/item/weapon/scalpel = 100, \ - /obj/item/weapon/kitchenknife = 75, \ + /obj/item/weapon/material/knife = 75, \ /obj/item/weapon/material/shard = 50, \ ) diff --git a/code/modules/surgery/slimes.dm b/code/modules/surgery/slimes.dm index c62afde296..2f9629bade 100644 --- a/code/modules/surgery/slimes.dm +++ b/code/modules/surgery/slimes.dm @@ -12,7 +12,7 @@ /datum/surgery_step/slime/cut_flesh allowed_tools = list( /obj/item/weapon/scalpel = 100, \ - /obj/item/weapon/kitchenknife = 75, \ + /obj/item/weapon/material/knife = 75, \ /obj/item/weapon/material/shard = 50, \ ) @@ -38,7 +38,7 @@ /datum/surgery_step/slime/cut_innards allowed_tools = list( /obj/item/weapon/scalpel = 100, \ - /obj/item/weapon/kitchenknife = 75, \ + /obj/item/weapon/material/knife = 75, \ /obj/item/weapon/material/shard = 50, \ ) diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index 331980dfd8..3d78230a67 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -1699,7 +1699,7 @@ "GI" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/tdome) "GJ" = (/turf/simulated/floor{icon_state = "green"; dir = 4},/area/tdome) "GK" = (/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) -"GL" = (/obj/structure/table/rack,/obj/item/weapon/kitchenknife/ritual,/turf/unsimulated/floor{dir = 1; icon_state = "chapel"},/area/wizard_station) +"GL" = (/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) "GM" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome2) "GN" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) "GO" = (/obj/machinery/porta_turret{anchored = 0; check_records = 0; enabled = 0; req_one_access = list(103); use_power = 0},/turf/unsimulated/floor{icon_state = "bot"},/area/centcom/holding) @@ -1723,7 +1723,7 @@ "Hg" = (/obj/machinery/door/blast/regular{id = "thunderdomeaxe"; name = "Axe Supply"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) "Hh" = (/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) "Hi" = (/turf/unsimulated/floor{icon_state = "redcorner"; dir = 8},/area/tdome) -"Hj" = (/obj/structure/table/rack,/obj/item/weapon/kitchenknife/ritual,/turf/unsimulated/floor{dir = 4; icon_state = "chapel"},/area/wizard_station) +"Hj" = (/obj/structure/table/rack,/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{dir = 1; icon_state = "chapel"},/area/wizard_station) "Hk" = (/obj/item/tape/engineering{tag = "icon-engineering_v"; icon_state = "engineering_v"},/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Hl" = (/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor,/area/tdome) "Hm" = (/turf/unsimulated/wall{tag = "icon-iron1"; icon_state = "iron1"},/area/syndicate_mothership{name = "\improper Raider Base"}) @@ -1906,7 +1906,7 @@ "KH" = (/obj/structure/flora/ausbushes/grassybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/wizard_station) "KI" = (/mob/living/simple_animal/hostile/retaliate/goat{name = "Experiment 97d"},/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/wizard_station) "KJ" = (/obj/item/weapon/caution,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"KK" = (/obj/item/weapon/kitchenknife/ritual,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"KK" = (/obj/structure/table/rack,/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{dir = 4; icon_state = "chapel"},/area/wizard_station) "KL" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) "KM" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) "KN" = (/obj/item/clothing/head/philosopher_wig,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) @@ -2397,14 +2397,14 @@ aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcIcIcIcIcIxHYIyIyIzHYIAIBICIDHYaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIEIEIcIcIcIFHYIyIyIyIGIyIyIyIHHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcIcIcIcIcOUHYIMINIOHYIPIQIRIDHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVaMaMaMOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcIcIcIcIcItHYHYHYHYHYHYHYHYHYHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM -aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcJdJeJfJgIcJhJiJjJhJkGLJmJnHjHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVaMaMOVaMaMOVOVOVOVOVOVOVaMaMOVaMaMOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM +aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcJdJeJfJgIcJhJiJjJhJkHjJmJnKKHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVaMaMOVaMaMOVOVOVOVOVOVOVaMaMOVaMaMOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcJdJsJtJgIcJuJuJuJuJvJwJxJwJxHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVaMOVOVOVOVOVOVOVOVOVaMOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcJdJGOWJgIcJuJuJuJuJuJuJuJuJuHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVaMOVOVOVOVOVOVOVOVOVaMOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcJdJPJQJgIcJuJuJuJuJuJuJRJSJTHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVaMOVOVOVOVOVOVOVOVOVaMOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYIcIcIcIcIcIcJuJuJuJuJuJuJuJuJuHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYKeKfKfKgKfKfKfKgKfKfKfKgKfKfKhHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYKkKlKlJkKmKoKnJkKpKpKqJkKrOXKtHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM -aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYKlKEKkJvKGLvLuJvKHKIKpJvKJKtKKHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM +aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYKlKEKkJvKGLvLuJvKHKIKpJvKJKtGLHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMHYHYHYHYHYHYHYHYHYHYHYHYHYHYHYHYHYaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMOVOVOVOVaMaMOVOVOVOVOVOVOVaMaMOVOVOVOVaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM From f4923e2a20f9090b54b3c11f7f729f0a702abf9c Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 21:12:54 +0930 Subject: [PATCH 121/199] Renamed twohanded weapons, collapsed bats. --- code/game/machinery/doors/airlock.dm | 6 +- code/game/machinery/doors/blast_door.dm | 2 +- code/game/machinery/doors/firedoor.dm | 6 +- .../objects/items/stacks/sheets/leather.dm | 2 +- .../items/stacks/sheets/sheet_types.dm | 4 +- .../items/weapons/improvised_components.dm | 2 +- .../objects/items/weapons/material/bats.dm | 62 +++---------------- .../objects/items/weapons/material/knives.dm | 2 + .../weapons/material/material_weapons.dm | 4 +- .../objects/items/weapons/material/misc.dm | 1 - .../items/weapons/material/twohanded.dm | 53 +++++++++------- .../crates_lockers/closets/fireaxe.dm | 6 +- code/modules/admin/verbs/debug.dm | 4 +- code/modules/mob/living/carbon/carbon.dm | 10 +-- 14 files changed, 63 insertions(+), 101 deletions(-) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 2211fced44..4418ceff30 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -805,18 +805,18 @@ About the new airlock wires panel: else spawn(0) close(1) - else if(istype(C, /obj/item/weapon/twohanded/fireaxe) && !arePowerSystemsOn()) + else if(istype(C, /obj/item/weapon/material/twohanded/fireaxe) && !arePowerSystemsOn()) if(locked) user << "\blue The airlock's bolts prevent it from being forced." else if( !welded && !operating ) if(density) - var/obj/item/weapon/twohanded/fireaxe/F = C + var/obj/item/weapon/material/twohanded/fireaxe/F = C if(F.wielded) spawn(0) open(1) else user << "\red You need to be wielding \the [C] to do that." else - var/obj/item/weapon/twohanded/fireaxe/F = C + var/obj/item/weapon/material/twohanded/fireaxe/F = C if(F.wielded) spawn(0) close(1) else diff --git a/code/game/machinery/doors/blast_door.dm b/code/game/machinery/doors/blast_door.dm index 374f0426ad..5f6a16cc58 100644 --- a/code/game/machinery/doors/blast_door.dm +++ b/code/game/machinery/doors/blast_door.dm @@ -90,7 +90,7 @@ // This only works on broken doors or doors without power. Also allows repair with Plasteel. /obj/machinery/door/blast/attackby(obj/item/weapon/C as obj, mob/user as mob) src.add_fingerprint(user) - if(istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/twohanded/fireaxe) && C:wielded == 1)) + if(istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/material/twohanded/fireaxe) && C:wielded == 1)) if(((stat & NOPOWER) || (stat & BROKEN)) && !( src.operating )) force_toggle() else diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index a3fca76a44..0c0d23b52a 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -238,7 +238,7 @@ user << "\The [src] is welded shut!" return - if(istype(C, /obj/item/weapon/crowbar) || istype(C,/obj/item/weapon/twohanded/fireaxe)) + if(istype(C, /obj/item/weapon/crowbar) || istype(C,/obj/item/weapon/material/twohanded/fireaxe)) if(operating) return @@ -248,8 +248,8 @@ "You hear someone struggle and metal straining.") return - if(istype(C,/obj/item/weapon/twohanded/fireaxe)) - var/obj/item/weapon/twohanded/fireaxe/F = C + if(istype(C,/obj/item/weapon/material/twohanded/fireaxe)) + var/obj/item/weapon/material/twohanded/fireaxe/F = C if(!F.wielded) return diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index 344a991935..61ab2f0ca4 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -93,7 +93,7 @@ /obj/item/stack/sheet/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob) if( istype(W, /obj/item/weapon/material/knife) || \ istype(W, /obj/item/weapon/kitchen/utensil/knife) || \ - istype(W, /obj/item/weapon/twohanded/fireaxe) || \ + istype(W, /obj/item/weapon/material/twohanded/fireaxe) || \ istype(W, /obj/item/weapon/hatchet) ) //visible message on mobs is defined as visible_message(var/message, var/self_message, var/blind_message) diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 4ba9ae9913..a1240042ba 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -33,7 +33,7 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \ null, \ new/datum/stack_recipe("table frame", /obj/structure/table, 1, time = 10, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("rack", /obj/structure/table/rack, 1, time = 5, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("metal baseball bat", /obj/item/weapon/twohanded/baseballbat/metal, 10, time = 20, one_per_turf = 0, on_floor = 1), \ + new/datum/stack_recipe("metal baseball bat", /obj/item/weapon/material/twohanded/baseballbat/metal, 10, time = 20, one_per_turf = 0, on_floor = 1), \ new/datum/stack_recipe("closet", /obj/structure/closet, 2, time = 15, one_per_turf = 1, on_floor = 1), \ null, \ new/datum/stack_recipe("canister", /obj/machinery/portable_atmospherics/canister, 10, time = 15, one_per_turf = 1, on_floor = 1), \ @@ -152,7 +152,7 @@ var/global/list/datum/stack_recipe/wood_recipes = list ( \ new/datum/stack_recipe("crossbow frame", /obj/item/weapon/crossbowframe, 5, time = 25, one_per_turf = 0, on_floor = 0), \ new/datum/stack_recipe("wooden door", /obj/structure/mineral_door/wood, 10, time = 20, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("coffin", /obj/structure/closet/coffin, 5, time = 15, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("baseball bat", /obj/item/weapon/twohanded/baseballbat, 10, time = 20, one_per_turf = 0, on_floor = 1) \ + new/datum/stack_recipe("baseball bat", /obj/item/weapon/material/twohanded/baseballbat, 10, time = 20, one_per_turf = 0, on_floor = 1) \ // new/datum/stack_recipe("apiary", /obj/item/apiary, 10, time = 25, one_per_turf = 0, on_floor = 0) ) diff --git a/code/game/objects/items/weapons/improvised_components.dm b/code/game/objects/items/weapons/improvised_components.dm index 7222ae87b4..6296fa99fc 100644 --- a/code/game/objects/items/weapons/improvised_components.dm +++ b/code/game/objects/items/weapons/improvised_components.dm @@ -49,7 +49,7 @@ /obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob) ..() if(istype(I, /obj/item/weapon/material/shard)) - var/obj/item/weapon/twohanded/spear/S = new /obj/item/weapon/twohanded/spear + var/obj/item/weapon/material/twohanded/spear/S = new /obj/item/weapon/material/twohanded/spear user.put_in_hands(S) user << "You fasten the glass shard to the top of the rod with the cable." diff --git a/code/game/objects/items/weapons/material/bats.dm b/code/game/objects/items/weapons/material/bats.dm index 563cc7d161..5de3ba46c3 100644 --- a/code/game/objects/items/weapons/material/bats.dm +++ b/code/game/objects/items/weapons/material/bats.dm @@ -1,5 +1,5 @@ -/obj/item/weapon/twohanded/baseballbat - name = "wooden bat" +/obj/item/weapon/material/twohanded/baseballbat + name = "bat" desc = "HOME RUN!" icon_state = "metalbat0" base_icon = "metalbat" @@ -15,66 +15,20 @@ hitsound = 'sound/weapons/genhit3.ogg' force_wielded = 20 health = 10 - var/material/material - -/obj/item/weapon/twohanded/baseballbat/New(var/newloc, var/material_key) - ..(newloc) - if(!material_key) - material_key = "wood" - material = get_material_by_name(material_key) - if(!material) - qdel(src) - else - name = "[material.display_name] bat" - base_name = name - health = round(material.integrity/10) - force = round(material.get_blunt_damage()/2) - force_unwielded = force - force_wielded = material.get_blunt_damage() - color = material.icon_colour - if(material.products_need_process()) - processing_objects |= src - -/obj/item/weapon/twohanded/baseballbat/Destroy() - processing_objects -= src - ..() - -/obj/item/weapon/twohanded/baseballbat/attack() - if(!..()) - return - if(!prob(material.hardness)) - health-- - if(health<=0) - shatter() - -/obj/item/weapon/twohanded/baseballbat/proc/shatter() - var/turf/T = get_turf(src) - T.visible_message("\The [src] shatters!") - if(istype(loc, /mob/living)) - var/mob/living/M = loc - M.drop_from_inventory(src) - playsound(src, "shatter", 70, 1) - new material.shard_type(T) - qdel(src) - -/obj/item/weapon/twohanded/baseballbat/process() - if(!material.radioactivity) - return - for(var/mob/living/L in range(1,src)) - L.apply_effect(round(material.radioactivity/3),IRRADIATE,0) + default_material = "wood" //Predefined materials go here. -/obj/item/weapon/twohanded/baseballbat/metal/New(var/newloc) +/obj/item/weapon/material/twohanded/baseballbat/metal/New(var/newloc) ..(newloc,"steel") -/obj/item/weapon/twohanded/baseballbat/uranium/New(var/newloc) +/obj/item/weapon/material/twohanded/baseballbat/uranium/New(var/newloc) ..(newloc,"uranium") -/obj/item/weapon/twohanded/baseballbat/gold/New(var/newloc) +/obj/item/weapon/material/twohanded/baseballbat/gold/New(var/newloc) ..(newloc,"gold") -/obj/item/weapon/twohanded/baseballbat/platinum/New(var/newloc) +/obj/item/weapon/material/twohanded/baseballbat/platinum/New(var/newloc) ..(newloc,"platinum") -/obj/item/weapon/twohanded/baseballbat/diamond/New(var/newloc) +/obj/item/weapon/material/twohanded/baseballbat/diamond/New(var/newloc) ..(newloc,"diamond") \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm index 0aab729ad2..2c37ec6c5a 100644 --- a/code/game/objects/items/weapons/material/knives.dm +++ b/code/game/objects/items/weapons/material/knives.dm @@ -13,6 +13,7 @@ throw_range = 4 throwforce = 7 attack_verb = list("patted", "tapped") + applies_material_colour = 1 /obj/item/weapon/material/butterfly/update_force() if(active) @@ -69,6 +70,7 @@ origin_tech = "materials=1" attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") unbreakable = 1 + applies_material_colour = 1 /obj/item/weapon/material/knife/suicide_act(mob/user) viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index 9cc9455a9c..980f4fb02f 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -3,6 +3,7 @@ hitsound = 'sound/weapons/bladeslice.ogg' gender = NEUTER + var/applies_material_colour var/unbreakable var/damage_divisor = 0.5 var/default_material = DEFAULT_WALL_MATERIAL @@ -24,7 +25,8 @@ else name = "[material.display_name] bat" health = round(material.integrity/10) - color = material.icon_colour + if(applies_material_colour) + color = material.icon_colour if(material.products_need_process()) processing_objects |= src update_force() diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index e09e01c0ea..697410626d 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -9,4 +9,3 @@ throwforce = 15 w_class = 3 attack_verb = list("jabbed","stabbed","ripped") - default_material = "steel" \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index e4a42d3f33..fdddd16425 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -16,7 +16,7 @@ /* * Twohanded */ -/obj/item/weapon/twohanded +/obj/item/weapon/material/twohanded var/wielded = 0 var/force_wielded = 0 var/force_unwielded @@ -25,25 +25,28 @@ var/base_icon var/base_name -/obj/item/weapon/twohanded/proc/unwield() +/obj/item/weapon/material/twohanded/proc/unwield() wielded = 0 force = force_unwielded name = "[base_name]" update_icon() -/obj/item/weapon/twohanded/proc/wield() +/obj/item/weapon/material/twohanded/proc/wield() wielded = 1 force = force_wielded name = "[base_name] (Wielded)" update_icon() -/obj/item/weapon/twohanded/New() +/obj/item/weapon/material/twohanded/update_force() + base_name = name + force_unwielded = force + force_wielded = material.get_blunt_damage() + +/obj/item/weapon/material/twohanded/New() ..() update_icon() - force_unwielded = force - base_name = name -/obj/item/weapon/twohanded/mob_can_equip(M as mob, slot) +/obj/item/weapon/material/twohanded/mob_can_equip(M as mob, slot) //Cannot equip wielded items. if(wielded) M << "Unwield the [base_name] first!" @@ -51,22 +54,22 @@ return ..() -/obj/item/weapon/twohanded/dropped(mob/user as mob) +/obj/item/weapon/material/twohanded/dropped(mob/user as mob) //handles unwielding a twohanded weapon when dropped as well as clearing up the offhand if(user) - var/obj/item/weapon/twohanded/O = user.get_inactive_hand() + var/obj/item/weapon/material/twohanded/O = user.get_inactive_hand() if(istype(O)) O.unwield() return unwield() -/obj/item/weapon/twohanded/update_icon() +/obj/item/weapon/material/twohanded/update_icon() icon_state = "[base_icon][wielded]" item_state = icon_state -/obj/item/weapon/twohanded/pickup(mob/user) +/obj/item/weapon/material/twohanded/pickup(mob/user) unwield() -/obj/item/weapon/twohanded/attack_self(mob/user as mob) +/obj/item/weapon/material/twohanded/attack_self(mob/user as mob) ..() @@ -84,7 +87,7 @@ if (src.unwieldsound) playsound(src.loc, unwieldsound, 50, 1) - var/obj/item/weapon/twohanded/offhand/O = user.get_inactive_hand() + var/obj/item/weapon/material/twohanded/offhand/O = user.get_inactive_hand() if(O && istype(O)) O.unwield() @@ -97,7 +100,7 @@ if (src.wieldsound) playsound(src.loc, wieldsound, 50, 1) - var/obj/item/weapon/twohanded/offhand/O = new(user) ////Let's reserve his other hand~ + var/obj/item/weapon/material/twohanded/offhand/O = new(user) ////Let's reserve his other hand~ O.name = "[base_name] - offhand" O.desc = "Your second grip on the [base_name]" user.put_in_inactive_hand(O) @@ -110,24 +113,25 @@ return ///////////OFFHAND/////////////// -/obj/item/weapon/twohanded/offhand +/obj/item/weapon/material/twohanded/offhand w_class = 5.0 icon_state = "offhand" name = "offhand" + default_material = "placeholder" -/obj/item/weapon/twohanded/offhand/unwield() +/obj/item/weapon/material/twohanded/offhand/unwield() qdel(src) -/obj/item/weapon/twohanded/offhand/wield() +/obj/item/weapon/material/twohanded/offhand/wield() qdel(src) -/obj/item/weapon/twohanded/offhand/update_icon() +/obj/item/weapon/material/twohanded/offhand/update_icon() return /* * Fireaxe */ -/obj/item/weapon/twohanded/fireaxe // DEM AXES MAN, marker -Agouri +/obj/item/weapon/material/twohanded/fireaxe // DEM AXES MAN, marker -Agouri icon_state = "fireaxe0" base_icon = "fireaxe" name = "fire axe" @@ -140,7 +144,7 @@ force_wielded = 30 attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") -/obj/item/weapon/twohanded/fireaxe/afterattack(atom/A as mob|obj|turf|area, mob/user as mob, proximity) +/obj/item/weapon/material/twohanded/fireaxe/afterattack(atom/A as mob|obj|turf|area, mob/user as mob, proximity) if(!proximity) return ..() if(A && wielded && (istype(A,/obj/structure/window) || istype(A,/obj/structure/grille))) //destroys windows and grilles in one hit @@ -151,7 +155,7 @@ /* * Double-Bladed Energy Swords - Cheridan */ -/obj/item/weapon/twohanded/dualsaber +/obj/item/weapon/material/twohanded/dualsaber icon_state = "dualsaber0" base_icon = "dualsaber" name = "double-bladed energy sword" @@ -170,7 +174,7 @@ sharp = 1 edge = 1 -/obj/item/weapon/twohanded/dualsaber/attack(target as mob, mob/living/user as mob) +/obj/item/weapon/material/twohanded/dualsaber/attack(target as mob, mob/living/user as mob) ..() if((CLUMSY in user.mutations) && (wielded) &&prob(40)) user << "\red You twirl around a bit before losing your balance and impaling yourself on the [src]." @@ -182,14 +186,14 @@ user.set_dir(i) sleep(1) -/obj/item/weapon/twohanded/dualsaber/IsShield() +/obj/item/weapon/material/twohanded/dualsaber/IsShield() if(wielded) return 1 else return 0 //spears, bay edition -/obj/item/weapon/twohanded/spear +/obj/item/weapon/material/twohanded/spear icon_state = "spearglass0" base_icon = "spearglass" name = "spear" @@ -205,3 +209,4 @@ flags = NOSHIELD hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("attacked", "poked", "jabbed", "torn", "gored") + default_material = "glass" diff --git a/code/game/objects/structures/crates_lockers/closets/fireaxe.dm b/code/game/objects/structures/crates_lockers/closets/fireaxe.dm index 8dacfa4c40..481371b424 100644 --- a/code/game/objects/structures/crates_lockers/closets/fireaxe.dm +++ b/code/game/objects/structures/crates_lockers/closets/fireaxe.dm @@ -2,7 +2,7 @@ /obj/structure/closet/fireaxecabinet name = "fire axe cabinet" desc = "There is small label that reads \"For Emergency use only\" along with details for safe use of the axe. As if." - var/obj/item/weapon/twohanded/fireaxe/fireaxe + var/obj/item/weapon/material/twohanded/fireaxe/fireaxe icon_state = "fireaxe1000" icon_closed = "fireaxe1000" icon_opened = "fireaxe1100" @@ -16,7 +16,7 @@ New() ..() - fireaxe = new /obj/item/weapon/twohanded/fireaxe(src) + fireaxe = new /obj/item/weapon/material/twohanded/fireaxe(src) attackby(var/obj/item/O as obj, var/mob/user as mob) //Marker -Agouri //..() //That's very useful, Erro @@ -55,7 +55,7 @@ src.localopened = 1 update_icon() return - if (istype(O, /obj/item/weapon/twohanded/fireaxe) && src.localopened) + if (istype(O, /obj/item/weapon/material/twohanded/fireaxe) && src.localopened) if(!fireaxe) if(O:wielded) user << "\red Unwield the axe first." diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index c85fa2eac1..af350efec4 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -687,7 +687,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that W.registered_name = M.real_name M.equip_to_slot_or_del(W, slot_wear_id) - var/obj/item/weapon/twohanded/fireaxe/fire_axe = new(M) + var/obj/item/weapon/material/twohanded/fireaxe/fire_axe = new(M) M.equip_to_slot_or_del(fire_axe, slot_r_hand) if("masked killer") @@ -702,7 +702,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_store) M.equip_to_slot_or_del(new /obj/item/weapon/scalpel(M), slot_r_store) - var/obj/item/weapon/twohanded/fireaxe/fire_axe = new(M) + var/obj/item/weapon/material/twohanded/fireaxe/fire_axe = new(M) M.equip_to_slot_or_del(fire_axe, slot_r_hand) for(var/obj/item/carried_item in M.contents) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 56d0a1718f..eb559a0231 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -132,7 +132,7 @@ /mob/living/carbon/proc/swap_hand() var/obj/item/item_in_hand = src.get_active_hand() if(item_in_hand) //this segment checks if the item in your hand is twohanded. - if(istype(item_in_hand,/obj/item/weapon/twohanded)) + if(istype(item_in_hand,/obj/item/weapon/material/twohanded)) if(item_in_hand:wielded == 1) usr << "Your other hand is too busy holding the [item_in_hand.name]" return @@ -452,17 +452,17 @@ Stun(stun_duration) Weaken(Floor(stun_duration/2)) return 1 - + /mob/living/carbon/proc/add_chemical_effect(var/effect, var/magnitude = 1) if(effect in chem_effects) chem_effects[effect] += magnitude else - chem_effects[effect] = magnitude - + chem_effects[effect] = magnitude + /mob/living/carbon/get_default_language() if(default_language) return default_language if(!species) return null - return species.default_language ? all_languages[species.default_language] : null + return species.default_language ? all_languages[species.default_language] : null From 150b24023e427cbd6f8c6968bbfb945c3d11a8d5 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 21:24:36 +0930 Subject: [PATCH 122/199] Renamed kitchen utensils. --- baystation12.dme | 1 + code/game/machinery/vending.dm | 4 +- .../objects/items/stacks/sheets/leather.dm | 2 +- .../objects/items/stacks/sheets/mineral.dm | 6 +- .../objects/items/weapons/material/kitchen.dm | 273 ++---------------- .../objects/items/weapons/material/thrown.dm | 18 +- code/game/objects/items/weapons/tools.dm | 4 +- code/game/objects/items/weapons/trays.dm | 208 +++++++++++++ code/modules/admin/verbs/debug.dm | 2 +- .../clothing/spacesuits/rig/modules/combat.dm | 2 +- .../clothing/under/accessories/storage.dm | 4 +- code/modules/hydroponics/grown_inedible.dm | 2 +- .../reagent_containers/food/snacks.dm | 18 +- .../research/xenoarchaeology/finds/finds.dm | 6 +- code/modules/surgery/brainrepair.dm | 2 +- code/modules/surgery/eye.dm | 2 +- code/modules/surgery/face.dm | 2 +- code/modules/surgery/generic.dm | 2 +- code/modules/surgery/implant.dm | 2 +- code/modules/surgery/organs_internal.dm | 4 +- maps/exodus-1.dmm | 10 +- maps/exodus-2.dmm | 4 +- 22 files changed, 272 insertions(+), 306 deletions(-) create mode 100644 code/game/objects/items/weapons/trays.dm diff --git a/baystation12.dme b/baystation12.dme index cd2c4461be..fc7fe2da8e 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -635,6 +635,7 @@ #include "code\game\objects\items\weapons\tape.dm" #include "code\game\objects\items\weapons\teleportation.dm" #include "code\game\objects\items\weapons\tools.dm" +#include "code\game\objects\items\weapons\trays.dm" #include "code\game\objects\items\weapons\weaponry.dm" #include "code\game\objects\items\weapons\weldbackpack.dm" #include "code\game\objects\items\weapons\wires.dm" diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index ff604d0b2c..5d290a6aa4 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -910,8 +910,8 @@ desc = "A kitchen and restaurant equipment vendor." product_ads = "Mm, food stuffs!;Food and food accessories.;Get your plates!;You like forks?;I like forks.;Woo, utensils.;You don't really need these..." icon_state = "dinnerware" - products = list(/obj/item/weapon/tray = 8,/obj/item/weapon/kitchen/utensil/fork = 6,/obj/item/weapon/material/knife = 3,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8,/obj/item/clothing/suit/chef/classic = 2) - contraband = list(/obj/item/weapon/kitchen/utensil/spoon = 2,/obj/item/weapon/kitchen/utensil/knife = 2,/obj/item/weapon/kitchen/rollingpin = 2, /obj/item/weapon/material/knife/butch = 2) + products = list(/obj/item/weapon/tray = 8,/obj/item/weapon/material/kitchen/utensil/fork = 6,/obj/item/weapon/material/knife = 3,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8,/obj/item/clothing/suit/chef/classic = 2) + contraband = list(/obj/item/weapon/material/kitchen/utensil/spoon = 2,/obj/item/weapon/material/kitchen/utensil/knife = 2,/obj/item/weapon/material/kitchen/rollingpin = 2, /obj/item/weapon/material/knife/butch = 2) /obj/machinery/vending/sovietsoda name = "BODA" diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index 61ab2f0ca4..56ce1dba67 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -92,7 +92,7 @@ /obj/item/stack/sheet/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob) if( istype(W, /obj/item/weapon/material/knife) || \ - istype(W, /obj/item/weapon/kitchen/utensil/knife) || \ + istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || \ istype(W, /obj/item/weapon/material/twohanded/fireaxe) || \ istype(W, /obj/item/weapon/hatchet) ) diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index 1e6fd887f5..70ab7722f9 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -42,9 +42,9 @@ var/global/list/datum/stack_recipe/phoron_recipes = list ( \ var/global/list/datum/stack_recipe/plastic_recipes = list ( \ new/datum/stack_recipe("plastic crate", /obj/structure/closet/crate/plastic, 10, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("plastic ashtray", /obj/item/ashtray/plastic, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("plastic fork", /obj/item/weapon/kitchen/utensil/pfork, 1, on_floor = 1), \ - new/datum/stack_recipe("plastic spoon", /obj/item/weapon/kitchen/utensil/pspoon, 1, on_floor = 1), \ - new/datum/stack_recipe("plastic knife", /obj/item/weapon/kitchen/utensil/pknife, 1, on_floor = 1), \ + new/datum/stack_recipe("plastic fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1), \ + new/datum/stack_recipe("plastic spoon", /obj/item/weapon/material/kitchen/utensil/spoon/plastic, 1, on_floor = 1), \ + new/datum/stack_recipe("plastic knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1), \ new/datum/stack_recipe("plastic bag", /obj/item/weapon/storage/bag/plasticbag, 3, on_floor = 1), \ new/datum/stack_recipe("blood pack", /obj/item/weapon/reagent_containers/blood/empty, 4, on_floor = 0), \ new/datum/stack_recipe("reagent dispenser cartridge (large)", /obj/item/weapon/reagent_containers/chem_disp_cartridge, 5, on_floor=0), // 500u diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm index f2f383bba9..30ecd4a2b3 100644 --- a/code/game/objects/items/weapons/material/kitchen.dm +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -1,10 +1,10 @@ -/obj/item/weapon/kitchen +/obj/item/weapon/material/kitchen icon = 'icons/obj/kitchen.dmi' /* * Utensils */ -/obj/item/weapon/kitchen/utensil +/obj/item/weapon/material/kitchen/utensil force = 5.0 w_class = 1.0 throwforce = 5.0 @@ -14,17 +14,16 @@ origin_tech = "materials=1" attack_verb = list("attacked", "stabbed", "poked") sharp = 0 - var/loaded //Descriptive string for currently loaded food object. -/obj/item/weapon/kitchen/utensil/New() +/obj/item/weapon/material/kitchen/utensil/New() if (prob(60)) src.pixel_y = rand(0, 4) create_reagents(5) return -/obj/item/weapon/kitchen/utensil/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) +/obj/item/weapon/material/kitchen/utensil/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) if(!istype(M)) return ..() @@ -52,32 +51,27 @@ else ..() -/obj/item/weapon/kitchen/utensil/fork +/obj/item/weapon/material/kitchen/utensil/fork name = "fork" desc = "It's a fork. Sure is pointy." icon_state = "fork" -/obj/item/weapon/kitchen/utensil/pfork - name = "plastic fork" - desc = "Yay, no washing up to do." - icon_state = "pfork" +/obj/item/weapon/material/kitchen/utensil/fork/plastic + default_material = "plastic" -/obj/item/weapon/kitchen/utensil/spoon +/obj/item/weapon/material/kitchen/utensil/spoon name = "spoon" desc = "It's a spoon. You can see your own upside-down face in it." icon_state = "spoon" attack_verb = list("attacked", "poked") -/obj/item/weapon/kitchen/utensil/pspoon - name = "plastic spoon" - desc = "It's a plastic spoon. How dull." - icon_state = "pspoon" - attack_verb = list("attacked", "poked") +/obj/item/weapon/material/kitchen/utensil/spoon/plastic + default_material = "plastic" /* * Knives */ -/obj/item/weapon/kitchen/utensil/knife +/obj/item/weapon/material/kitchen/utensil/knife name = "knife" desc = "Can cut through any food." icon_state = "knife" @@ -92,7 +86,7 @@ "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") return (BRUTELOSS) -/obj/item/weapon/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) +/obj/item/weapon/material/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) if ((CLUMSY in user.mutations) && prob(50)) user << "\red You accidentally cut yourself with the [src]." user.take_organ_damage(20) @@ -100,16 +94,7 @@ playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return ..() -/obj/item/weapon/kitchen/utensil/pknife - name = "plastic knife" - desc = "The bluntest of blades." - icon_state = "pknife" - force = 1 - throwforce = 1 - sharp = 0 - edge = 1 //for cutting pizzas - -/obj/item/weapon/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) +/obj/item/weapon/material/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) if ((CLUMSY in user.mutations) && prob(50)) user << "\red You somehow managed to cut yourself with the [src]." user.take_organ_damage(20) @@ -117,11 +102,14 @@ playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return ..() +/obj/item/weapon/material/kitchen/utensil/knife/plastic + default_material = "plastic" + /* * Rolling Pins */ -/obj/item/weapon/kitchen/rollingpin +/obj/item/weapon/material/kitchen/rollingpin name = "rolling pin" desc = "Used to knock out the Bartender." icon_state = "rolling_pin" @@ -132,7 +120,7 @@ w_class = 3.0 attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") //I think the rollingpin attackby will end up ignoring this anyway. -/obj/item/weapon/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob) +/obj/item/weapon/material/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob) if ((CLUMSY in user.mutations) && prob(50)) user << "\red The [src] slips out of your hand and hits your head." user.take_organ_damage(10) @@ -165,228 +153,3 @@ H.eye_blurry += 3 return ..() -/* - * Trays - Agouri - */ -/obj/item/weapon/tray - name = "tray" - icon = 'icons/obj/food.dmi' - icon_state = "tray" - desc = "A metal tray to lay food on." - throwforce = 12.0 - throwforce = 10.0 - throw_speed = 1 - throw_range = 5 - w_class = 3.0 - flags = CONDUCT - matter = list(DEFAULT_WALL_MATERIAL = 3000) - /* // NOPE - var/food_total= 0 - var/burger_amt = 0 - var/cheese_amt = 0 - var/fries_amt = 0 - var/classyalcdrink_amt = 0 - var/alcdrink_amt = 0 - var/bottle_amt = 0 - var/soda_amt = 0 - var/carton_amt = 0 - var/pie_amt = 0 - var/meatbreadslice_amt = 0 - var/salad_amt = 0 - var/miscfood_amt = 0 - */ - var/list/carrying = list() // List of things on the tray. - Doohl - var/max_carry = 10 // w_class = 1 -- takes up 1 - // w_class = 2 -- takes up 3 - // w_class = 3 -- takes up 5 - -/obj/item/weapon/tray/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - - // Drop all the things. All of them. - overlays.Cut() - for(var/obj/item/I in carrying) - I.loc = M.loc - carrying.Remove(I) - if(isturf(I.loc)) - spawn() - for(var/i = 1, i <= rand(1,2), i++) - if(I) - step(I, pick(NORTH,SOUTH,EAST,WEST)) - sleep(rand(2,4)) - - - if((CLUMSY in user.mutations) && prob(50)) //What if he's a clown? - M << "\red You accidentally slam yourself with the [src]!" - M.Weaken(1) - user.take_organ_damage(2) - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - return - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' - return //it always returns, but I feel like adding an extra return just for safety's sakes. EDIT; Oh well I won't :3 - - var/mob/living/carbon/human/H = M ///////////////////////////////////// /Let's have this ready for later. - - - if(!(user.zone_sel.selecting == ("eyes" || "head"))) //////////////hitting anything else other than the eyes - if(prob(33)) - src.add_blood(H) - var/turf/location = H.loc - if (istype(location, /turf/simulated)) - location.add_blood(H) ///Plik plik, the sound of blood - - M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") - msg_admin_attack("[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey]) (JMP)") - - if(prob(15)) - M.Weaken(3) - M.take_organ_damage(3) - else - M.take_organ_damage(5) - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - return - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //we applied the damage, we played the sound, we showed the appropriate messages. Time to return and stop the proc - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - return - - - if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES))) - M << "\red You get slammed in the face with the tray, against your mask!" - if(prob(33)) - src.add_blood(H) - if (H.wear_mask) - H.wear_mask.add_blood(H) - if (H.head) - H.head.add_blood(H) - if (H.glasses && prob(33)) - H.glasses.add_blood(H) - var/turf/location = H.loc - if (istype(location, /turf/simulated)) //Addin' blood! At least on the floor and item :v - location.add_blood(H) - - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] with the tray!", user, M), 1) - if(prob(10)) - M.Stun(rand(1,3)) - M.take_organ_damage(3) - return - else - M.take_organ_damage(5) - return - - else //No eye or head protection, tough luck! - M << "\red You get slammed in the face with the tray!" - if(prob(33)) - src.add_blood(M) - var/turf/location = H.loc - if (istype(location, /turf/simulated)) - location.add_blood(H) - - if(prob(50)) - playsound(M, 'sound/items/trayhit1.ogg', 50, 1) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) - else - playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' again - for(var/mob/O in viewers(M, null)) - O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) - if(prob(30)) - M.Stun(rand(2,4)) - M.take_organ_damage(4) - return - else - M.take_organ_damage(8) - if(prob(30)) - M.Weaken(2) - return - return - -/obj/item/weapon/tray/var/cooldown = 0 //shield bash cooldown. based on world.time - -/obj/item/weapon/tray/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/kitchen/rollingpin)) - if(cooldown < world.time - 25) - user.visible_message("[user] bashes [src] with [W]!") - playsound(user.loc, 'sound/effects/shieldbash.ogg', 50, 1) - cooldown = world.time - else - ..() - -/* -===============~~~~~================================~~~~~==================== -= = -= Code for trays carrying things. By Doohl for Doohl erryday Doohl Doohl~ = -= = -===============~~~~~================================~~~~~==================== -*/ -/obj/item/weapon/tray/proc/calc_carry() - // calculate the weight of the items on the tray - var/val = 0 // value to return - - for(var/obj/item/I in carrying) - if(I.w_class == 1.0) - val ++ - else if(I.w_class == 2.0) - val += 3 - else - val += 5 - - return val - -/obj/item/weapon/tray/pickup(mob/user) - - if(!isturf(loc)) - return - - for(var/obj/item/I in loc) - if( I != src && !I.anchored && !istype(I, /obj/item/clothing/under) && !istype(I, /obj/item/clothing/suit) && !istype(I, /obj/item/projectile) ) - var/add = 0 - if(I.w_class == 1.0) - add = 1 - else if(I.w_class == 2.0) - add = 3 - else - add = 5 - if(calc_carry() + add >= max_carry) - break - - I.loc = src - carrying.Add(I) - overlays += image("icon" = I.icon, "icon_state" = I.icon_state, "layer" = 30 + I.layer) - -/obj/item/weapon/tray/dropped(mob/user) - - var/mob/living/M - for(M in src.loc) //to handle hand switching - return - - var/foundtable = 0 - for(var/obj/structure/table/T in loc) - foundtable = 1 - break - - overlays.Cut() - - for(var/obj/item/I in carrying) - I.loc = loc - carrying.Remove(I) - if(!foundtable && isturf(loc)) - // if no table, presume that the person just shittily dropped the tray on the ground and made a mess everywhere! - spawn() - for(var/i = 1, i <= rand(1,2), i++) - if(I) - step(I, pick(NORTH,SOUTH,EAST,WEST)) - sleep(rand(2,4)) diff --git a/code/game/objects/items/weapons/material/thrown.dm b/code/game/objects/items/weapons/material/thrown.dm index ffba72c4cb..6ffac637c4 100644 --- a/code/game/objects/items/weapons/material/thrown.dm +++ b/code/game/objects/items/weapons/material/thrown.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/star +/obj/item/weapon/material/star name = "shuriken" desc = "A sharp, perfectly weighted piece of metal." icon_state = "star" @@ -10,22 +10,16 @@ edge = 1 matter = list(DEFAULT_WALL_MATERIAL = 500) - var/poisoned = 0 - -/obj/item/weapon/star/New() +/obj/item/weapon/material/star/New() ..() src.pixel_x = rand(-12, 12) src.pixel_y = rand(-12, 12) -//TODO: consider making this something done with reagents. -/obj/item/weapon/star/throw_impact(atom/hit_atom) +/obj/item/weapon/material/star/throw_impact(atom/hit_atom) ..() - if(poisoned && istype(hit_atom,/mob/living)) + if(material.radioactivity>0 && istype(hit_atom,/mob/living)) var/mob/living/M = hit_atom M.adjustToxLoss(rand(20,40)) - poisoned = 0 - color = null -/obj/item/weapon/star/ninja - color = "#007700" - poisoned = 1 \ No newline at end of file +/obj/item/weapon/material/star/ninja + default_material = "uranium" \ No newline at end of file diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 1066c4e8db..59be97631e 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -492,8 +492,8 @@ /obj/item/weapon/screwdriver, /obj/item/weapon/wrench, /obj/item/weapon/wirecutters, - /obj/item/weapon/kitchen/utensil/knife, - /obj/item/weapon/kitchen/utensil/fork, + /obj/item/weapon/material/kitchen/utensil/knife, + /obj/item/weapon/material/kitchen/utensil/fork, /obj/item/weapon/hatchet ) var/list/tools = list() diff --git a/code/game/objects/items/weapons/trays.dm b/code/game/objects/items/weapons/trays.dm new file mode 100644 index 0000000000..c52961eda5 --- /dev/null +++ b/code/game/objects/items/weapons/trays.dm @@ -0,0 +1,208 @@ +/* + * Trays - Agouri + */ +/obj/item/weapon/tray + name = "tray" + icon = 'icons/obj/food.dmi' + icon_state = "tray" + desc = "A metal tray to lay food on." + throwforce = 12.0 + throwforce = 10.0 + throw_speed = 1 + throw_range = 5 + w_class = 3.0 + flags = CONDUCT + matter = list(DEFAULT_WALL_MATERIAL = 3000) + var/list/carrying = list() // List of things on the tray. - Doohl + var/max_carry = 10 + +/obj/item/weapon/tray/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + + // Drop all the things. All of them. + overlays.Cut() + for(var/obj/item/I in carrying) + I.loc = M.loc + carrying.Remove(I) + if(isturf(I.loc)) + spawn() + for(var/i = 1, i <= rand(1,2), i++) + if(I) + step(I, pick(NORTH,SOUTH,EAST,WEST)) + sleep(rand(2,4)) + + + if((CLUMSY in user.mutations) && prob(50)) //What if he's a clown? + M << "\red You accidentally slam yourself with the [src]!" + M.Weaken(1) + user.take_organ_damage(2) + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + return + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' + return //it always returns, but I feel like adding an extra return just for safety's sakes. EDIT; Oh well I won't :3 + + var/mob/living/carbon/human/H = M ///////////////////////////////////// /Let's have this ready for later. + + + if(!(user.zone_sel.selecting == ("eyes" || "head"))) //////////////hitting anything else other than the eyes + if(prob(33)) + src.add_blood(H) + var/turf/location = H.loc + if (istype(location, /turf/simulated)) + location.add_blood(H) ///Plik plik, the sound of blood + + M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") + user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") + msg_admin_attack("[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey]) (JMP)") + + if(prob(15)) + M.Weaken(3) + M.take_organ_damage(3) + else + M.take_organ_damage(5) + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + return + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //we applied the damage, we played the sound, we showed the appropriate messages. Time to return and stop the proc + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + return + + + if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES))) + M << "\red You get slammed in the face with the tray, against your mask!" + if(prob(33)) + src.add_blood(H) + if (H.wear_mask) + H.wear_mask.add_blood(H) + if (H.head) + H.head.add_blood(H) + if (H.glasses && prob(33)) + H.glasses.add_blood(H) + var/turf/location = H.loc + if (istype(location, /turf/simulated)) //Addin' blood! At least on the floor and item :v + location.add_blood(H) + + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] with the tray!", user, M), 1) + if(prob(10)) + M.Stun(rand(1,3)) + M.take_organ_damage(3) + return + else + M.take_organ_damage(5) + return + + else //No eye or head protection, tough luck! + M << "\red You get slammed in the face with the tray!" + if(prob(33)) + src.add_blood(M) + var/turf/location = H.loc + if (istype(location, /turf/simulated)) + location.add_blood(H) + + if(prob(50)) + playsound(M, 'sound/items/trayhit1.ogg', 50, 1) + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) + else + playsound(M, 'sound/items/trayhit2.ogg', 50, 1) //sound playin' again + for(var/mob/O in viewers(M, null)) + O.show_message(text("\red [] slams [] in the face with the tray!", user, M), 1) + if(prob(30)) + M.Stun(rand(2,4)) + M.take_organ_damage(4) + return + else + M.take_organ_damage(8) + if(prob(30)) + M.Weaken(2) + return + return + +/obj/item/weapon/tray/var/cooldown = 0 //shield bash cooldown. based on world.time + +/obj/item/weapon/tray/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(istype(W, /obj/item/weapon/material/kitchen/rollingpin)) + if(cooldown < world.time - 25) + user.visible_message("[user] bashes [src] with [W]!") + playsound(user.loc, 'sound/effects/shieldbash.ogg', 50, 1) + cooldown = world.time + else + ..() + +/* +===============~~~~~================================~~~~~==================== += = += Code for trays carrying things. By Doohl for Doohl erryday Doohl Doohl~ = += = +===============~~~~~================================~~~~~==================== +*/ +/obj/item/weapon/tray/proc/calc_carry() + // calculate the weight of the items on the tray + var/val = 0 // value to return + + for(var/obj/item/I in carrying) + if(I.w_class == 1.0) + val ++ + else if(I.w_class == 2.0) + val += 3 + else + val += 5 + + return val + +/obj/item/weapon/tray/pickup(mob/user) + + if(!isturf(loc)) + return + + for(var/obj/item/I in loc) + if( I != src && !I.anchored && !istype(I, /obj/item/clothing/under) && !istype(I, /obj/item/clothing/suit) && !istype(I, /obj/item/projectile) ) + var/add = 0 + if(I.w_class == 1.0) + add = 1 + else if(I.w_class == 2.0) + add = 3 + else + add = 5 + if(calc_carry() + add >= max_carry) + break + + I.loc = src + carrying.Add(I) + overlays += image("icon" = I.icon, "icon_state" = I.icon_state, "layer" = 30 + I.layer) + +/obj/item/weapon/tray/dropped(mob/user) + + var/mob/living/M + for(M in src.loc) //to handle hand switching + return + + var/foundtable = 0 + for(var/obj/structure/table/T in loc) + foundtable = 1 + break + + overlays.Cut() + + for(var/obj/item/I in carrying) + I.loc = loc + carrying.Remove(I) + if(!foundtable && isturf(loc)) + // if no table, presume that the person just shittily dropped the tray on the ground and made a mess everywhere! + spawn() + for(var/i = 1, i <= rand(1,2), i++) + if(I) + step(I, pick(NORTH,SOUTH,EAST,WEST)) + sleep(rand(2,4)) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index af350efec4..9ab952de64 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -620,7 +620,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes) M.equip_to_slot_or_del(new /obj/item/clothing/head/chefhat(M), slot_head) - M.equip_to_slot_or_del(new /obj/item/weapon/kitchen/rollingpin(M), slot_r_hand) + M.equip_to_slot_or_del(new /obj/item/weapon/material/kitchen/rollingpin(M), slot_r_hand) M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_hand) M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_r_store) M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_s_store) diff --git a/code/modules/clothing/spacesuits/rig/modules/combat.dm b/code/modules/clothing/spacesuits/rig/modules/combat.dm index d40f74202e..b367a5369f 100644 --- a/code/modules/clothing/spacesuits/rig/modules/combat.dm +++ b/code/modules/clothing/spacesuits/rig/modules/combat.dm @@ -212,7 +212,7 @@ interface_name = "death blossom launcher" interface_desc = "An integrated microfactory that produces poisoned throwing stars from thin air and electricity." - var/fabrication_type = /obj/item/weapon/star/ninja + var/fabrication_type = /obj/item/weapon/material/star/ninja var/fire_force = 30 var/fire_distance = 10 diff --git a/code/modules/clothing/under/accessories/storage.dm b/code/modules/clothing/under/accessories/storage.dm index adae7aac8c..53cc648eb5 100644 --- a/code/modules/clothing/under/accessories/storage.dm +++ b/code/modules/clothing/under/accessories/storage.dm @@ -73,8 +73,8 @@ ..() hold.max_storage_space = 4 hold.can_hold = list(/obj/item/weapon/hatchet/unathiknife,\ - /obj/item/weapon/kitchen/utensil/knife,\ - /obj/item/weapon/kitchen/utensil/pknife,\ + /obj/item/weapon/material/kitchen/utensil/knife,\ + /obj/item/weapon/material/kitchen/utensil/knife/plastic,\ /obj/item/weapon/material/knife,\ /obj/item/weapon/material/knife/ritual) diff --git a/code/modules/hydroponics/grown_inedible.dm b/code/modules/hydroponics/grown_inedible.dm index e69d8a67fc..94e8e5a0e1 100644 --- a/code/modules/hydroponics/grown_inedible.dm +++ b/code/modules/hydroponics/grown_inedible.dm @@ -45,7 +45,7 @@ /obj/item/weapon/corncob/attackby(obj/item/weapon/W as obj, mob/user as mob) ..() - if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/hatchet) || istype(W, /obj/item/weapon/kitchen/utensil/knife) || istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/material/knife/ritual)) + if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/hatchet) || istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/material/knife/ritual)) user << "You use [W] to fashion a pipe out of the corn cob!" new /obj/item/clothing/mask/smokable/pipe/cobpipe (user.loc) qdel(src) diff --git a/code/modules/reagents/reagent_containers/food/snacks.dm b/code/modules/reagents/reagent_containers/food/snacks.dm index faca2e1fb0..a63fbdd46b 100644 --- a/code/modules/reagents/reagent_containers/food/snacks.dm +++ b/code/modules/reagents/reagent_containers/food/snacks.dm @@ -48,12 +48,12 @@ if(H.species.flags & IS_SYNTHETIC) H << "You have a monitor for a head, where do you think you're going to put that?" return - + var/obj/item/blocked = H.check_mouth_coverage() if(blocked) user << "\The [blocked] is in the way!" return - + if (fullness <= 50) M << "You hungrily chew out a piece of [src] and gobble it!" if (fullness > 50 && fullness <= 150) @@ -71,7 +71,7 @@ if(H.species.flags & IS_SYNTHETIC) user << "They have a monitor for a head, where do you think you're going to put that?" return - + var/obj/item/blocked = H.check_mouth_coverage() if(blocked) user << "\The [blocked] is in the way!" @@ -128,8 +128,8 @@ return // Eating with forks - if(istype(W,/obj/item/weapon/kitchen/utensil)) - var/obj/item/weapon/kitchen/utensil/U = W + if(istype(W,/obj/item/weapon/material/kitchen/utensil)) + var/obj/item/weapon/material/kitchen/utensil/U = W if(!U.reagents) U.create_reagents(5) @@ -186,9 +186,9 @@ var/reagents_per_slice = reagents.total_volume/slices_num for(var/i=1 to (slices_num-slices_lost)) - var/obj/slice = new slice_path (src.loc) + var/obj/slice = new slice_path (src.loc) reagents.trans_to_obj(slice, reagents_per_slice) - qdel(src) + qdel(src) return /obj/item/weapon/reagent_containers/food/snacks/proc/is_sliceable() @@ -2819,7 +2819,7 @@ // Dough + rolling pin = flat dough /obj/item/weapon/reagent_containers/food/snacks/dough/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W,/obj/item/weapon/kitchen/rollingpin)) + if(istype(W,/obj/item/weapon/material/kitchen/rollingpin)) new /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough(src) user << "You flatten the dough." qdel(src) @@ -2964,7 +2964,7 @@ // potato + knife = raw sticks /obj/item/weapon/reagent_containers/food/snacks/grown/potato/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W,/obj/item/weapon/kitchen/utensil/knife)) + if(istype(W,/obj/item/weapon/material/kitchen/utensil/knife)) new /obj/item/weapon/reagent_containers/food/snacks/rawsticks(src) user << "You cut the potato." qdel(src) diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index 1a09521e1a..d8cac01219 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -136,11 +136,11 @@ if(3) item_type = "[pick("fork","spoon","knife")]" if(prob(25)) - new_item = new /obj/item/weapon/kitchen/utensil/fork(src.loc) + new_item = new /obj/item/weapon/material/kitchen/utensil/fork(src.loc) else if(prob(50)) - new_item = new /obj/item/weapon/kitchen/utensil/knife(src.loc) + new_item = new /obj/item/weapon/material/kitchen/utensil/knife(src.loc) else - new_item = new /obj/item/weapon/kitchen/utensil/spoon(src.loc) + new_item = new /obj/item/weapon/material/kitchen/utensil/spoon(src.loc) additional_desc = "[pick("It's like no [item_type] you've ever seen before",\ "It's a mystery how anyone is supposed to eat with this",\ "You wonder what the creator's mouth was shaped like")]." diff --git a/code/modules/surgery/brainrepair.dm b/code/modules/surgery/brainrepair.dm index 60fdffe31d..6935b09d24 100644 --- a/code/modules/surgery/brainrepair.dm +++ b/code/modules/surgery/brainrepair.dm @@ -6,7 +6,7 @@ allowed_tools = list( /obj/item/weapon/hemostat = 100, \ /obj/item/weapon/wirecutters = 75, \ - /obj/item/weapon/kitchen/utensil/fork = 20 + /obj/item/weapon/material/kitchen/utensil/fork = 20 ) priority = 3 diff --git a/code/modules/surgery/eye.dm b/code/modules/surgery/eye.dm index 250aea6693..7b69fea7ff 100644 --- a/code/modules/surgery/eye.dm +++ b/code/modules/surgery/eye.dm @@ -52,7 +52,7 @@ /datum/surgery_step/eye/lift_eyes allowed_tools = list( /obj/item/weapon/retractor = 100, \ - /obj/item/weapon/kitchen/utensil/fork = 50 + /obj/item/weapon/material/kitchen/utensil/fork = 50 ) min_duration = 30 diff --git a/code/modules/surgery/face.dm b/code/modules/surgery/face.dm index 4b983eb247..0a42f7c137 100644 --- a/code/modules/surgery/face.dm +++ b/code/modules/surgery/face.dm @@ -76,7 +76,7 @@ allowed_tools = list( /obj/item/weapon/retractor = 100, \ /obj/item/weapon/crowbar = 55, \ - /obj/item/weapon/kitchen/utensil/fork = 75) + /obj/item/weapon/material/kitchen/utensil/fork = 75) min_duration = 80 max_duration = 100 diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index 0552ee800c..31c7cbb78f 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -185,7 +185,7 @@ allowed_tools = list( /obj/item/weapon/retractor = 100, \ /obj/item/weapon/crowbar = 75, \ - /obj/item/weapon/kitchen/utensil/fork = 50 + /obj/item/weapon/material/kitchen/utensil/fork = 50 ) min_duration = 30 diff --git a/code/modules/surgery/implant.dm b/code/modules/surgery/implant.dm index df394fcd43..9397a2e26a 100644 --- a/code/modules/surgery/implant.dm +++ b/code/modules/surgery/implant.dm @@ -150,7 +150,7 @@ allowed_tools = list( /obj/item/weapon/hemostat = 100, \ /obj/item/weapon/wirecutters = 75, \ - /obj/item/weapon/kitchen/utensil/fork = 20 + /obj/item/weapon/material/kitchen/utensil/fork = 20 ) min_duration = 80 diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index d25d9fc5f2..a97184f35c 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -19,7 +19,7 @@ allowed_tools = list( /obj/item/weapon/hemostat = 100, \ /obj/item/weapon/wirecutters = 75, \ - /obj/item/weapon/kitchen/utensil/fork = 20 + /obj/item/weapon/material/kitchen/utensil/fork = 20 ) blood_level = 2 @@ -267,7 +267,7 @@ allowed_tools = list( /obj/item/weapon/hemostat = 100, \ /obj/item/weapon/wirecutters = 75, \ - /obj/item/weapon/kitchen/utensil/fork = 20 + /obj/item/weapon/material/kitchen/utensil/fork = 20 ) min_duration = 60 diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index e748ece98b..26b71475eb 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -2504,7 +2504,7 @@ "aWh" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aWi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aWj" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Gardener"},/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics/garden) -"aWk" = (/obj/structure/table/woodentable,/obj/item/weapon/kitchen/utensil/fork,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aWk" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aWl" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/wood,/area/library) "aWm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aWn" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) @@ -2555,7 +2555,7 @@ "aXg" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/closet/wardrobe/white,/turf/simulated/floor,/area/crew_quarters/locker) "aXh" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) "aXi" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"aXj" = (/obj/structure/table/standard,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"aXj" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXk" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aXl" = (/obj/machinery/door/morgue{dir = 2; name = "Private Study"; req_access = list(37)},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/library) "aXm" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor,/area/hallway/secondary/entry/aft) @@ -2586,7 +2586,7 @@ "aXL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/primary/central_two) "aXM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/primary/central_two) "aXN" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access = list(28)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"aXO" = (/obj/structure/table/woodentable,/obj/item/weapon/kitchen/utensil/fork,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aXO" = (/obj/structure/table/standard,/obj/item/weapon/material/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aXP" = (/obj/structure/disposalpipe/segment,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/woodentable,/obj/item/weapon/deck{pixel_y = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXR" = (/obj/item/weapon/stool,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) @@ -7498,9 +7498,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaSUaGhaSdaOYaLDaDPaHxaHxaSfaLDaOYaLDaHyaHAaHzaLEaSkaPiaPiaNkaPiaNlaIAaSmaNnaSnaIAaLKaLKaSZaLKaLKaLKaLKaLKaLKaSpaSqaLKaLKaLKaLKaLKaLKaSraSsaSraLKaTPaLKaNraQPawbauoaSwaSxaNraReaUlaMbaMbaMkaSzaKOaSAaMnaMnaSBaSBaSBaSBaSCaJeasfasNarVarXarXavParXarXarVasNawFaJeaSJaSKaSKaSKaSKaSLaSLaSMaSNaRqaRpaJlaQqaQaaQaaQaaQaaQaaQaaSQaSRaSSaSTaUOaSVaSWaSXaSYaKZaKZaVeaTaaTbaTcaTdaTeaTeaTeaTfaTgaTfaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaTjaQzaTlaGGaIoaTmaTnaToaTpaTqaIoaTraQKaGGaTtaTuaRZaTvaTwaTxaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIazkaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaVLaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeazBaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUJaUKaULaUMaUNaWFaUPaUQayOaySaUTaTfaUUaUVaRCaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDawdcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeawgaVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaxwaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaWkaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaWdaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaNXaHIaQlaWgaTUaTUaTUaYwaUeaRyaUfaSvaUeaUiaVGaXpaKfaXraXsaUmaXtaxwaURaXvaUjaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXOaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXkaXiaXjaVPaYaaYbaYcaYdaYeaWjaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaXRaXhaToaYfaYkaZXaWLbaOaYmaWOaZcaVoaYvaUSbaBbanaYzaVzaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaNXaHIaQlaWgaTUaTUaTUaYwaUeaRyaUfaSvaUeaUiaVGaXpaKfaXraXsaUmaXtaxwaURaXvaUjaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXjaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXkaXiaXOaVPaYaaYbaYcaYdaYeaWjaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaXRaXhaToaYfaYkaZXaWLbaOaYmaWOaZcaVoaYvaUSbaBbanaYzaVzaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaEfaEfaYIaKpaKQaYLbaPaKxaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaHIaIKaISaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaNcaNeaNPaLwaYaaYpaZwaYdaYeaWjaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaYXaYGaToaZeaYGaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXOaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzbbAbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzbbAbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaXubcFbcZaXmbbUaSFbaabaabaabaabaabbVbaaaXoaYObbXbbYbaibbZbbZbbZbbZbdKbbZbcbaTUbccbcdbcebcebcfbcgaTSaXebchbcibcjaKibdQblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbcrbcsbctbeabcvbcwbcxbbgaUpbczbcAbeeaUpaUpaaaaaaaafaafbekaaaaaaaUpaUpbezbcGbczaUpbbgbcxbcHbcIbcJbcKbcLaRpaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSbcObcObcObcObeBbcQbcRbcSaUQaUQaUQbeMbcUaTeaZMbcWbcXaYgaWBaYhaWDbcYaZzaZZbdabdbbdcbddbdebddbddbddbddbddbdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdraVoaYubdsaZNaVobeNbbOaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaEfbabbaaaZvaDobbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZaEgbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaEfaEdbeUaEcaDobbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPbfebffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index 3d78230a67..c3f06346e7 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -802,7 +802,7 @@ "pv" = (/obj/item/device/multitool,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/reinforced{icon_state = "table"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pw" = (/obj/item/weapon/storage/toolbox/mechanical,/obj/structure/table/reinforced{icon_state = "table"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "px" = (/obj/machinery/vending/cigarette{name = "hacked cigarette machine"; prices = list(); products = list(/obj/item/weapon/storage/fancy/cigarettes = 10, /obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/flame/lighter/zippo = 4, /obj/item/clothing/mask/smokable/cigarette/cigar/havana = 2)},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) -"py" = (/obj/structure/table/standard,/obj/item/weapon/kitchen/utensil/knife{pixel_x = -6},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = -1},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 9},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"py" = (/obj/structure/table/standard,/obj/item/weapon/material/kitchen/utensil/knife{pixel_x = -6},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = -1},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/syringe/drugs{pixel_x = 3; pixel_y = 9},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "pz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "pA" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/floor/plating,/area/shuttle/administration/centcom) "pB" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) @@ -963,7 +963,7 @@ "sA" = (/obj/structure/mirror{pixel_y = 28},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) "sB" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) "sC" = (/obj/machinery/computer/card/centcom,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/living) -"sD" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/kitchen/rollingpin,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) +"sD" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/material/kitchen/rollingpin,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) "sE" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/turf/simulated/shuttle/floor,/area/supply/dock) "sF" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "supply_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/shuttle/plating,/area/supply/dock) "sG" = (/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) From aad28d63ce46c6fc6af96ed9fd36026767d15dbe Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 13:31:37 +0200 Subject: [PATCH 123/199] Cleans up welder code. Icon and inhand states should now update properly. --- code/game/objects/items/weapons/tools.dm | 127 +++++++++-------------- 1 file changed, 47 insertions(+), 80 deletions(-) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 1066c4e8db..2754068d46 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -162,6 +162,10 @@ R.add_reagent("fuel", max_fuel) return +/obj/item/weapon/weldingtool/Destroy() + if(welding) + processing_objects -= src + ..() /obj/item/weapon/weldingtool/examine(mob/user) if(..(user, 0)) @@ -171,13 +175,13 @@ /obj/item/weapon/weldingtool/attackby(obj/item/W as obj, mob/user as mob) if(istype(W,/obj/item/weapon/screwdriver)) if(welding) - user << "\red Stop welding first!" + user << "Stop welding first!" return status = !status if(status) - user << "\blue You resecure the welder." + user << "You secure the welder." else - user << "\blue The welder can now be attached and modified." + user << "The welder can now be attached and modified." src.add_fingerprint(user) return @@ -207,31 +211,8 @@ /obj/item/weapon/weldingtool/process() - switch(welding) - //If off - if(0) - if(src.icon_state != "welder") //Check that the sprite is correct, if it isnt, it means toggle() was not called - src.force = 3 - src.damtype = "brute" - src.icon_state = "welder" - src.welding = 0 - processing_objects.Remove(src) - return - //Welders left on now use up fuel, but lets not have them run out quite that fast - if(1) - if(src.icon_state != "welder1") //Check that the sprite is correct, if it isnt, it means toggle() was not called - src.force = 15 - src.damtype = "fire" - src.icon_state = "welder1" - if(prob(5)) - remove_fuel(1) - - //If you're actually actively welding, use fuel faster. - //Is this actually used or set anywhere? - Nodrak - if(2) - if(prob(75)) - remove_fuel(1) - + if(welding && prob(5) && !remove_fuel(1)) + setWelding(0) //I'm not sure what this does. I assume it has to do with starting fires... //...but it doesnt check to see if the welder is on or not. @@ -248,7 +229,7 @@ if(!proximity) return if (istype(O, /obj/structure/reagent_dispensers/fueltank) && get_dist(src,O) <= 1 && !src.welding) O.reagents.trans_to_obj(src, max_fuel) - user << "\blue Welder refueled" + user << "Welder refueled" playsound(src.loc, 'sound/effects/refill.ogg', 50, 1, -6) return else if (istype(O, /obj/structure/reagent_dispensers/fueltank) && get_dist(src,O) <= 1 && src.welding) @@ -270,7 +251,7 @@ /obj/item/weapon/weldingtool/attack_self(mob/user as mob) - toggle() + setWelding(!welding, usr) return //Returns the amount of fuel in the welder @@ -280,81 +261,67 @@ //Removes fuel from the welding tool. If a mob is passed, it will perform an eyecheck on the mob. This should probably be renamed to use() /obj/item/weapon/weldingtool/proc/remove_fuel(var/amount = 1, var/mob/M = null) - if(!welding || !check_fuel()) - return 0 if(get_fuel() >= amount) reagents.remove_reagent("fuel", amount) - check_fuel() if(M) eyecheck(M) return 1 else if(M) - M << "\blue You need more welding fuel to complete this task." + M << "You need more welding fuel to complete this task." + else + visible_message("\The [src] sputters and switches off.") return 0 //Returns whether or not the welding tool is currently on. /obj/item/weapon/weldingtool/proc/isOn() return src.welding +/obj/item/weapon/weldingtool/update_icon() + ..() + icon_state = welding ? "welder1" : "welder" + var/mob/M = loc + if(M) + M.update_inv_l_hand() + M.update_inv_r_hand() + //Sets the welding state of the welding tool. If you see W.welding = 1 anywhere, please change it to W.setWelding(1) //so that the welding tool updates accordingly -/obj/item/weapon/weldingtool/proc/setWelding(var/temp_welding) +/obj/item/weapon/weldingtool/proc/setWelding(var/set_welding, var/mob/M) + if(!status) return + + var/turf/T = get_turf(src) //If we're turning it on - if(temp_welding > 0) + if(set_welding && !welding) if (remove_fuel(1)) - usr << "\blue The [src] switches on." + if(M) + M.visible_message("[M] has ignited \the [src] on.", "You ignite \the [src].", "You hear the sound of \a [src] being ignited.") + else if(T) + T.visible_message("\The [src] has been ignited.","You hear the sound of \a [src] being ignited.") src.force = 15 src.damtype = "fire" - src.icon_state = "welder1" - processing_objects.Add(src) + src.w_class = 4 + welding = 1 + update_icon() + processing_objects |= src else - usr << "\blue Need more fuel!" - src.welding = 0 + if(M) + M.visible_message("\The [src] sputters as [M] fail to ignite it.", "You fail to ignite \the [src] on.", "You hear the sputtering sound of \a [src] failing to ignite.") + else if(T) + T.visible_message("\The [src] sputters as it fails to ignite.", "You hear the sputtering sound of \a [src] failing to ignite.") return //Otherwise - else - usr << "\blue The [src] switches off." + else if(!set_welding && welding) + processing_objects -= src + if(M) + M.visible_message("[M] has turned off \the [src].", "You turn off \the [src].", "You hear the sound of a gas fire suddenly stopping.") + else if(T) + T.visible_message("\The [src] turns off.", "You hear the sound of a gas fire suddenly stopping.") src.force = 3 src.damtype = "brute" - src.icon_state = "welder" - src.welding = 0 - -//Turns off the welder if there is no more fuel (does this really need to be its own proc?) -/obj/item/weapon/weldingtool/proc/check_fuel() - if((get_fuel() <= 0) && welding) - toggle(1) - return 0 - return 1 - - -//Toggles the welder off and on -/obj/item/weapon/weldingtool/proc/toggle(var/message = 0) - if(!status) return - src.welding = !( src.welding ) - if (src.welding) - if (remove_fuel(1)) - usr << "You switch the [src] on." - src.force = 15 - src.damtype = "fire" - src.icon_state = "welder1" - src.w_class = 4 - processing_objects.Add(src) - else - usr << "You need more fuel!" - src.welding = 0 - else - if(!message) - usr << "You switch \the [src] off." - else - usr << "\The [src] shuts off!" - src.force = 3 - src.damtype = "brute" - src.icon_state = "welder" - src.welding = 0 src.w_class = initial(src.w_class) - usr.update_inv_l_hand() - usr.update_inv_r_hand() + src.welding = 0 + update_icon() //Decides whether or not to damage a player's eyes based on what they're wearing as protection //Note: This should probably be moved to mob From 534e5fafc445f9cb678c06e4a0ac28c9aece63ab Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 14:13:32 +0200 Subject: [PATCH 124/199] Changelog entry. --- html/changelogs/PsiOmegaDelta-WelderIcon-150516.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/PsiOmegaDelta-WelderIcon-150516.yml diff --git a/html/changelogs/PsiOmegaDelta-WelderIcon-150516.yml b/html/changelogs/PsiOmegaDelta-WelderIcon-150516.yml new file mode 100644 index 0000000000..a7c90fbd7a --- /dev/null +++ b/html/changelogs/PsiOmegaDelta-WelderIcon-150516.yml @@ -0,0 +1,5 @@ +author: PsiOmegaDelta +delete-after: True + +changes: + - bugfix: "Welders should now always update their icon and inhand states properly." From 21dad8bdc079e9b82c29d0d4fceba33af1c31c64 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 14:42:23 +0200 Subject: [PATCH 125/199] Teleport anomaly fix. It should no longer teleport mobs inside other atoms. Making the dangerous assumption that touch-teleportation actually works. --- .../xenoarchaeology/artifact/effects/unknown_effect_teleport.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_teleport.dm b/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_teleport.dm index b8d1c9a87c..6f6d7f88f3 100644 --- a/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_teleport.dm +++ b/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_teleport.dm @@ -34,7 +34,7 @@ sparks.set_up(3, 0, get_turf(M)) sparks.start() // - M.loc = pick(orange(get_turf(T), 50)) + M.Move(pick(trange(50, get_turf(holder)))) sparks = new /datum/effect/effect/system/spark_spread() sparks.set_up(3, 0, get_turf(M)) sparks.start() From 76b828ab7d6ec8e7976569a571fd8ec29679a301 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 14:47:04 +0200 Subject: [PATCH 126/199] Changelog entry. --- html/changelogs/PsiOmegaDelta-ArtifactTele-150516.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/PsiOmegaDelta-ArtifactTele-150516.yml diff --git a/html/changelogs/PsiOmegaDelta-ArtifactTele-150516.yml b/html/changelogs/PsiOmegaDelta-ArtifactTele-150516.yml new file mode 100644 index 0000000000..3e259687ba --- /dev/null +++ b/html/changelogs/PsiOmegaDelta-ArtifactTele-150516.yml @@ -0,0 +1,5 @@ +author: PsiOmegaDelta +delete-after: True + +changes: + - bugfix: "Teleporter artifacts should no longer teleport mobs inside objects." From 0999f1ab788888d1a227490b8925afd1bc6ccb46 Mon Sep 17 00:00:00 2001 From: Karolis2011 Date: Sat, 16 May 2015 17:27:39 +0300 Subject: [PATCH 127/199] Made sorting pipes dispesible also fixes #9305 --- code/game/machinery/pipe/pipe_dispenser.dm | 12 +++++++ .../recycling/disposal-construction.dm | 31 ++++++++++++++++--- code/modules/recycling/disposal.dm | 11 ++++--- 3 files changed, 45 insertions(+), 9 deletions(-) diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm index 6b8793eac7..9f9d79841b 100644 --- a/code/game/machinery/pipe/pipe_dispenser.dm +++ b/code/game/machinery/pipe/pipe_dispenser.dm @@ -179,6 +179,9 @@ Nah Chute
      Upwards
      Downwards
      +Sorting
      +Sorting (Wildcard)
      +Sorting (Untagged)
      "} ///// Z-Level stuff @@ -220,6 +223,15 @@ Nah if(7) C.ptype = 8 C.density = 1 + if(8) + C.ptype = 9 + C.subtype = 0 + if(9) + C.ptype = 9 + C.subtype = 1 + if(10) + C.ptype = 9 + C.subtype = 2 ///// Z-Level stuff if(21) C.ptype = 11 diff --git a/code/modules/recycling/disposal-construction.dm b/code/modules/recycling/disposal-construction.dm index 4032d00a89..c6c00a3dbb 100644 --- a/code/modules/recycling/disposal-construction.dm +++ b/code/modules/recycling/disposal-construction.dm @@ -12,9 +12,10 @@ pressure_resistance = 5*ONE_ATMOSPHERE matter = list(DEFAULT_WALL_MATERIAL = 1850) level = 2 + var/sortType = "" var/ptype = 0 - // 0=straight, 1=bent, 2=junction-j1, 3=junction-j2, 4=junction-y, 5=trunk, 6=disposal bin, 7=outlet, 8=inlet - + // 0=straight, 1=bent, 2=junction-j1, 3=junction-j2, 4=junction-y, 5=trunk, 6=disposal bin, 7=outlet, 8=inlet 9=pipe-j1s 10=pipe-j2s + var/subtype = 0 var/dpdir = 0 // directions as disposalpipe var/base_state = "pipe-s" @@ -154,9 +155,21 @@ if(8) return /obj/machinery/disposal/deliveryChute if(9) - return /obj/structure/disposalpipe/sortjunction + switch(subtype) + if(0) + return /obj/structure/disposalpipe/sortjunction + if(1) + return /obj/structure/disposalpipe/sortjunction/wildcard + if(2) + return /obj/structure/disposalpipe/sortjunction/untagged if(10) - return /obj/structure/disposalpipe/sortjunction/flipped + switch(subtype) + if(0) + return /obj/structure/disposalpipe/sortjunction/flipped + if(1) + return /obj/structure/disposalpipe/sortjunction/wildcard/flipped + if(2) + return /obj/structure/disposalpipe/sortjunction/untagged/flipped ///// Z-Level stuff if(11) return /obj/structure/disposalpipe/up @@ -187,7 +200,13 @@ if(8) nicetype = "delivery chute" if(9, 10) - nicetype = "sorting pipe" + switch(subtype) + if(0) + nicetype = "sorting pipe" + if(1) + nicetype = "wildcard sorting pipe" + if(2) + nicetype = "untagged sorting pipe" ispipe = 1 if(13) nicetype = "tagging pipe" @@ -267,7 +286,9 @@ //Needs some special treatment ;) if(ptype==9 || ptype==10) var/obj/structure/disposalpipe/sortjunction/SortP = P + SortP.sortType = sortType SortP.updatedir() + SortP.updatedesc() else if(ptype==6) // Disposal bin var/obj/machinery/disposal/P = new /obj/machinery/disposal(src.loc) diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index ead3ba3d91..525a79d9d1 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -663,7 +663,8 @@ var/health = 10 // health points 0-10 layer = 2.3 // slightly lower than wires and other pipes var/base_icon_state // initial icon state on map - + var/sortType = "" + var/subtype = 0 // new pipe, set the icon_state as on map New() ..() @@ -910,8 +911,10 @@ C.ptype = 5 if("pipe-j1s") C.ptype = 9 + C.sortType = sortType if("pipe-j2s") C.ptype = 10 + C.sortType = sortType ///// Z-Level stuff if("pipe-u") C.ptype = 11 @@ -922,6 +925,7 @@ C.ptype = 13 if("pipe-tagger-partial") C.ptype = 14 + C.subtype = src.subtype src.transfer_fingerprints_to(C) C.set_dir(dir) C.density = 0 @@ -1187,7 +1191,6 @@ icon_state = "pipe-j1s" desc = "An underfloor disposal pipe with a package sorting mechanism." - var/sortType = "" var/posdir = 0 var/negdir = 0 var/sortdir = 0 @@ -1278,7 +1281,7 @@ /obj/structure/disposalpipe/sortjunction/wildcard name = "wildcard sorting junction" desc = "An underfloor disposal pipe which filters all wrapped and tagged items." - + subtype = 1 divert_check(var/checkTag) return checkTag != "" @@ -1286,7 +1289,7 @@ /obj/structure/disposalpipe/sortjunction/untagged name = "untagged sorting junction" desc = "An underfloor disposal pipe which filters all untagged items." - + subtype = 2 divert_check(var/checkTag) return checkTag == "" From b8ca15f54107b368eb2e08e2db9db8e54514b8d9 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 16 May 2015 23:55:18 +0930 Subject: [PATCH 128/199] Tweaks/fixes and greyscale icons. --- code/game/antagonist/station/highlander.dm | 2 +- code/game/gamemodes/cult/cultify/obj.dm | 2 +- .../objects/items/weapons/material/kitchen.dm | 19 ++++++++---------- .../objects/items/weapons/material/knives.dm | 3 +-- .../weapons/material/material_weapons.dm | 4 ++-- .../items/weapons/material/twohanded.dm | 4 +++- .../research/xenoarchaeology/finds/finds.dm | 2 +- icons/obj/kitchen.dmi | Bin 13154 -> 12341 bytes 8 files changed, 17 insertions(+), 19 deletions(-) diff --git a/code/game/antagonist/station/highlander.dm b/code/game/antagonist/station/highlander.dm index 9b82b15852..a33af1b5a3 100644 --- a/code/game/antagonist/station/highlander.dm +++ b/code/game/antagonist/station/highlander.dm @@ -37,7 +37,7 @@ var/datum/antagonist/highlander/highlanders player.equip_to_slot_or_del(new /obj/item/clothing/under/kilt(player), slot_w_uniform) player.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(player), slot_l_ear) player.equip_to_slot_or_del(new /obj/item/clothing/head/beret(player), slot_head) - player.equip_to_slot_or_del(new /obj/item/weapon/claymore(player), slot_l_hand) + player.equip_to_slot_or_del(new /obj/item/weapon/material/claymore(player), slot_l_hand) player.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(player), slot_shoes) player.equip_to_slot_or_del(new /obj/item/weapon/pinpointer(get_turf(player)), slot_l_store) diff --git a/code/game/gamemodes/cult/cultify/obj.dm b/code/game/gamemodes/cult/cultify/obj.dm index cbc3571896..d019300314 100644 --- a/code/game/gamemodes/cult/cultify/obj.dm +++ b/code/game/gamemodes/cult/cultify/obj.dm @@ -21,7 +21,7 @@ new /obj/item/weapon/book/tome(loc) ..() -/obj/item/weapon/claymore/cultify() +/obj/item/weapon/material/claymore/cultify() new /obj/item/weapon/melee/cultblade(loc) ..() diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm index 30ecd4a2b3..e640664c74 100644 --- a/code/game/objects/items/weapons/material/kitchen.dm +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -5,9 +5,9 @@ * Utensils */ /obj/item/weapon/material/kitchen/utensil - force = 5.0 - w_class = 1.0 - throwforce = 5.0 + force = 5 + w_class = 1 + throwforce = 5 throw_speed = 3 throw_range = 5 flags = CONDUCT @@ -17,9 +17,9 @@ var/loaded //Descriptive string for currently loaded food object. /obj/item/weapon/material/kitchen/utensil/New() + ..() if (prob(60)) src.pixel_y = rand(0, 4) - create_reagents(5) return @@ -38,13 +38,9 @@ if (reagents.total_volume > 0) reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) if(M == user) - for(var/mob/O in viewers(M, null)) - O.show_message(text("\blue [] eats some [] from \the [].", user, loaded, src), 1) - M.reagents.add_reagent("nutriment", 1) + M.visible_message("\The [user] eats some [loaded] from \the [src].") else - for(var/mob/O in viewers(M, null)) - O.show_message(text("\blue [] feeds [] some [] from \the []", user, M, loaded, src), 1) - M.reagents.add_reagent("nutriment", 1) + M.visible_message("\The [user] feeds some [loaded] to \the [M] with \the [src].") playsound(M.loc,'sound/items/eatfood.ogg', rand(10,40), 1) overlays.Cut() return @@ -80,7 +76,7 @@ sharp = 1 edge = 1 - suicide_act(mob/user) +/obj/item/weapon/material/kitchen/utensil/knife/suicide_act(mob/user) viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") @@ -119,6 +115,7 @@ throw_range = 7 w_class = 3.0 attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") //I think the rollingpin attackby will end up ignoring this anyway. + default_material = "wood" /obj/item/weapon/material/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob) if ((CLUMSY in user.mutations) && prob(50)) diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm index 2c37ec6c5a..1eb5640157 100644 --- a/code/game/objects/items/weapons/material/knives.dm +++ b/code/game/objects/items/weapons/material/knives.dm @@ -13,7 +13,6 @@ throw_range = 4 throwforce = 7 attack_verb = list("patted", "tapped") - applies_material_colour = 1 /obj/item/weapon/material/butterfly/update_force() if(active) @@ -70,7 +69,6 @@ origin_tech = "materials=1" attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") unbreakable = 1 - applies_material_colour = 1 /obj/item/weapon/material/knife/suicide_act(mob/user) viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ @@ -89,6 +87,7 @@ desc = "The unearthly energies that once powered this blade are now dormant." icon = 'icons/obj/wizard.dmi' icon_state = "render" + applies_material_colour = 0 /obj/item/weapon/material/knife/butch name = "butcher's cleaver" diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index 980f4fb02f..3f8732cd2b 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -3,7 +3,7 @@ hitsound = 'sound/weapons/bladeslice.ogg' gender = NEUTER - var/applies_material_colour + var/applies_material_colour = 1 var/unbreakable var/damage_divisor = 0.5 var/default_material = DEFAULT_WALL_MATERIAL @@ -23,7 +23,7 @@ if(!material) qdel(src) else - name = "[material.display_name] bat" + name = "[material.display_name] [initial(name)]" health = round(material.integrity/10) if(applies_material_colour) color = material.icon_colour diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index fdddd16425..759712416b 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -102,7 +102,7 @@ var/obj/item/weapon/material/twohanded/offhand/O = new(user) ////Let's reserve his other hand~ O.name = "[base_name] - offhand" - O.desc = "Your second grip on the [base_name]" + O.desc = "Your second grip on the [base_name]." user.put_in_inactive_hand(O) if(istype(user,/mob/living/carbon/human)) @@ -143,6 +143,7 @@ slot_flags = SLOT_BACK force_wielded = 30 attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") + applies_material_colour = 0 /obj/item/weapon/material/twohanded/fireaxe/afterattack(atom/A as mob|obj|turf|area, mob/user as mob, proximity) if(!proximity) return @@ -173,6 +174,7 @@ attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") sharp = 1 edge = 1 + applies_material_colour = 0 /obj/item/weapon/material/twohanded/dualsaber/attack(target as mob, mob/living/user as mob) ..() diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index d8cac01219..fcf060165f 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -294,7 +294,7 @@ new_item.desc = "" if(19) apply_prefix = 0 - new_item = new /obj/item/weapon/claymore(src.loc) + new_item = new /obj/item/weapon/material/claymore(src.loc) new_item.force = 10 item_type = new_item.name if(20) diff --git a/icons/obj/kitchen.dmi b/icons/obj/kitchen.dmi index 6d39c35541ecd476a41c2098b54e75461a2a8c78..1a9d80bb13e4c8d6455b2671dc6c9b83ccdd40a6 100644 GIT binary patch literal 12341 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 F{Vyk@Scw1t literal 13154 zcmZ9zcU)6X@Gg8pkX}SUI-#hbNRuiZK|l}?kRrWFQ+h8cO8wFiQKT58h|*PhS9

    cok`xhVr4^e(>%wRzG31GJ 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%0DM3&F%1thS$c7zw;x*aA9mE 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 V>{a9Kjv(Ndu9lHzsrtj0{|Ar?q=^6k From d646e060e64a19c068ef5f25ad33f4d97c9b5022 Mon Sep 17 00:00:00 2001 From: ccomp5950 Date: Tue, 12 May 2015 22:34:52 -0400 Subject: [PATCH 035/199] Re-adds Clowns. Changed the alarm_monitor.tmpl so that folks won't have to clear their cache to get the updated file if they have the old atmosphere_monitir.tmpl file in their cache. --- nano/templates/alarm_monitor.tmpl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nano/templates/alarm_monitor.tmpl b/nano/templates/alarm_monitor.tmpl index 0089467e43..2591763fc0 100644 --- a/nano/templates/alarm_monitor.tmpl +++ b/nano/templates/alarm_monitor.tmpl @@ -1,6 +1,7 @@ {{for data.categories}} @@ -34,4 +35,4 @@ Used In File(s): \code\modules\nano\modules\alarm_monitor.dm {{empty}} --All Systems Nominal {{/for}} -{{/for}} \ No newline at end of file +{{/for}} From 616e9c773fd6004c34c71cfa335640adf2e2073d Mon Sep 17 00:00:00 2001 From: Atlantiscze Date: Wed, 13 May 2015 06:06:08 +0200 Subject: [PATCH 036/199] Changes order of processing - Machinery is now processed before powernets, using data from previous tick. This fixes various UI issues with power related machinery, such as, SMES always showing output load of 100%. Otherwise has no changing effect on gameplay. --- code/controllers/Processes/machinery.dm | 28 ++++++++++++------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/code/controllers/Processes/machinery.dm b/code/controllers/Processes/machinery.dm index c95e8667d6..dcc1bb207c 100644 --- a/code/controllers/Processes/machinery.dm +++ b/code/controllers/Processes/machinery.dm @@ -14,20 +14,6 @@ machines = dd_sortedObjectList(machines) /datum/controller/process/machinery/proc/internal_process() - for(var/datum/powernet/powerNetwork in powernets) - if(istype(powerNetwork) && !powerNetwork.disposed) - powerNetwork.reset() - scheck() - continue - - powernets.Remove(powerNetwork) - - // Currently only used by powersinks. These items get priority processed before machinery - for(var/obj/item/I in processing_power_items) - if(!I.pwr_drain()) // 0 = Process Kill, remove from processing list. - processing_power_items.Remove(I) - scheck() - for(var/obj/machinery/M in machines) if(M && !M.gcDestroyed) #ifdef PROFILE_MACHINES @@ -53,6 +39,20 @@ scheck() + for(var/datum/powernet/powerNetwork in powernets) + if(istype(powerNetwork) && !powerNetwork.disposed) + powerNetwork.reset() + scheck() + continue + + powernets.Remove(powerNetwork) + + // Currently only used by powersinks. These items get priority processed before machinery + for(var/obj/item/I in processing_power_items) + if(!I.pwr_drain()) // 0 = Process Kill, remove from processing list. + processing_power_items.Remove(I) + scheck() + /datum/controller/process/machinery/getStatName() return ..()+"([machines.len])" \ No newline at end of file From fe46049b17980d5293e27f0711dc9c2fac988133 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Mon, 11 May 2015 20:45:11 -0400 Subject: [PATCH 037/199] Adds tail animations Adds a selection of emotes to control tail animations, and animated sprites for tajaran by 'Full of Skittles' --- code/modules/mob/living/carbon/human/death.dm | 3 +- code/modules/mob/living/carbon/human/emote.dm | 18 +++++- .../mob/living/carbon/human/update_icons.dm | 53 ++++++++++++++++-- icons/effects/species.dmi | Bin 22708 -> 33137 bytes 4 files changed, 67 insertions(+), 7 deletions(-) diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index 63b781e183..1eb0b53f04 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -34,7 +34,8 @@ handle_hud_list() //Handle species-specific deaths. - if(species) species.handle_death(src) + species.handle_death(src) + animate_tail_stop() //Handle brain slugs. var/obj/item/organ/external/head = get_organ("head") diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 8d7c655730..78a47fc541 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -541,8 +541,24 @@ message = "[src] makes a very loud noise." m_type = 2 + if("swish") + src.animate_tail_once() + + if("wag", "sway") + src.animate_tail_start() + + if("qwag", "fastsway") + src.animate_tail_fast() + + if("swag", "stopsway") + src.animate_tail_stop() + if ("help") - src << "blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough,\ncry, custom, deathgasp, drool, eyebrow, frown, gasp, giggle, groan, grumble, handshake, hug-(none)/mob, glare-(none)/mob,\ngrin, laugh, look-(none)/mob, moan, mumble, nod, pale, point-atom, raise, salute, shake, shiver, shrug,\nsigh, signal-#1-10, smile, sneeze, sniff, snore, stare-(none)/mob, tremble, twitch, twitch_s, whimper,\nwink, yawn" + src << {"blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough, +cry, custom, deathgasp, drool, eyebrow, frown, gasp, giggle, groan, grumble, handshake, hug-(none)/mob, glare-(none)/mob, +grin, laugh, look-(none)/mob, moan, mumble, nod, pale, point-atom, raise, salute, shake, shiver, shrug, +sigh, signal-#1-10, smile, sneeze, sniff, snore, stare-(none)/mob, tremble, twitch, twitch_s, whimper, +wink, yawn, swish, sway/wag, fastsway/qwag, stopsway/swag"} else src << "\blue Unusable emote '[act]'. Say *help for a list." diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index d7776fa18d..e1231d97a7 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -882,16 +882,59 @@ var/global/list/damage_icon_parts = list() /mob/living/carbon/human/proc/update_tail_showing(var/update_icons=1) overlays_standing[TAIL_LAYER] = null - if(species.tail) - if(!wear_suit || !(wear_suit.flags_inv & HIDETAIL) && !istype(wear_suit, /obj/item/clothing/suit/space)) - var/icon/tail_s = new/icon("icon" = 'icons/effects/species.dmi', "icon_state" = "[species.tail]_s") - tail_s.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) + if(species.tail && !(wear_suit && wear_suit.flags_inv & HIDETAIL)) + var/icon/tail_s = new/icon(icon = 'icons/effects/species.dmi') + tail_s.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) - overlays_standing[TAIL_LAYER] = image(tail_s) + overlays_standing[TAIL_LAYER] = image(tail_s, icon_state = "[species.tail]_s") if(update_icons) update_icons() +//Not really once, since BYOND can't do that. +//Update this if the ability to flick() images or make looping animation start at the first frame is ever added. +/mob/living/carbon/human/proc/animate_tail_once(var/update_icons=1) + var/t_state = "[species.tail]_once" + + var/image/tail_overlay = overlays_standing[TAIL_LAYER] + if(tail_overlay && tail_overlay.icon_state == t_state) + return //let the existing animation finish + + tail_overlay = set_tail_state(t_state) + if(tail_overlay) + spawn(15) + //check that the animation hasn't changed in the meantime + if(overlays_standing[TAIL_LAYER] == tail_overlay && tail_overlay.icon_state == t_state) + animate_tail_stop() + + if(update_icons) + update_icons() + +/mob/living/carbon/human/proc/animate_tail_start(var/update_icons=1) + set_tail_state("[species.tail]_slow") + + if(update_icons) + update_icons() + +/mob/living/carbon/human/proc/animate_tail_fast(var/update_icons=1) + set_tail_state("[species.tail]_loop") + + if(update_icons) + update_icons() + +/mob/living/carbon/human/proc/animate_tail_stop(var/update_icons=1) + set_tail_state("[species.tail]_s") + + if(update_icons) + update_icons() + +/mob/living/carbon/human/proc/set_tail_state(var/t_state) + var/image/tail_overlay = overlays_standing[TAIL_LAYER] + + if(tail_overlay && (t_state in icon_states(tail_overlay.icon))) + tail_overlay.icon_state = t_state + return tail_overlay + return null //Adds a collar overlay above the helmet layer if the suit has one // Suit needs an identically named sprite in icons/mob/collar.dmi diff --git a/icons/effects/species.dmi b/icons/effects/species.dmi index 99588092d0852790db10434851a12a953e236a77..cdbd68e258d104734fc348997c50aaec0021a883 100644 GIT binary patch literal 33137 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 M(f+GY$^7|$0~rWszyJUM literal 22708 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 F^=|}$pxFQb From 4d2d8a936d1326b6b6ac320ea66ebef1f5291c48 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Wed, 13 May 2015 01:58:58 -0400 Subject: [PATCH 038/199] Adds animated unathi tail sprites Sprites credit to 'Full of Skittles' --- icons/effects/species.dmi | Bin 33137 -> 39972 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/effects/species.dmi b/icons/effects/species.dmi index cdbd68e258d104734fc348997c50aaec0021a883..e652652e5e5715fe6dcfe1d729428ddf265355b8 100644 GIT binary patch literal 39972 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 V8RzL3=np8=e(!*Nm7Wpl{{?9GkK6zN literal 33137 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 M(f+GY$^7|$0~rWszyJUM From e38ef1c7ef3c3b4a6a1e09c9f5221dc756093926 Mon Sep 17 00:00:00 2001 From: Techhead0 Date: Wed, 13 May 2015 00:27:15 -0400 Subject: [PATCH 039/199] Moves survival boxes to species datums. Surivival gear is now assigned based on species. Most species get standard gear, but Vox receive a nitrogen tank instead, and Diona obtain an emergency flare instead of a survival box. As a side effect, engineers no longer spawn with larger emergency tanks. Fixes #9237 --- code/game/jobs/job/assistant.dm | 5 +- code/game/jobs/job/captain.dm | 7 ++- code/game/jobs/job/civilian.dm | 55 ++++-------------- code/game/jobs/job/civilian_chaplain.dm | 5 +- code/game/jobs/job/engineering.dm | 15 +---- code/game/jobs/job/medical.dm | 26 ++------- code/game/jobs/job/science.dm | 14 ++--- code/game/jobs/job/security.dm | 12 ++-- code/game/jobs/job_controller.dm | 5 +- .../objects/items/weapons/storage/boxes.dm | 11 +--- .../objects/items/weapons/tanks/tank_types.dm | 23 ++++++++ .../carbon/human/species/outsider/vox.dm | 6 ++ .../living/carbon/human/species/species.dm | 6 ++ .../carbon/human/species/station/station.dm | 8 +++ html/changelogs/Techhead-InternalBoxes.yml | 9 +++ icons/obj/tank.dmi | Bin 2361 -> 2445 bytes maps/exodus-1.dmm | 2 +- 17 files changed, 92 insertions(+), 117 deletions(-) create mode 100644 html/changelogs/Techhead-InternalBoxes.yml diff --git a/code/game/jobs/job/assistant.dm b/code/game/jobs/job/assistant.dm index d876118a34..a5a4a4db0d 100644 --- a/code/game/jobs/job/assistant.dm +++ b/code/game/jobs/job/assistant.dm @@ -16,10 +16,7 @@ if(!H) return 0 H.equip_to_slot_or_del(new /obj/item/clothing/under/color/grey(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 /datum/job/assistant/get_access() diff --git a/code/game/jobs/job/captain.dm b/code/game/jobs/job/captain.dm index f9cd48c6de..cc9f3fb4d3 100644 --- a/code/game/jobs/job/captain.dm +++ b/code/game/jobs/job/captain.dm @@ -32,8 +32,9 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/head/caphat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses) + H.species.equip_survival_gear(H) if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_r_hand) + H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_l_hand) else H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H.back), slot_in_backpack) @@ -84,12 +85,12 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/head_of_personnel(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/heads/hop(H), slot_belt) + H.species.equip_survival_gear(H) if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_r_hand) + H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_l_hand) else H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H.back), slot_in_backpack) return 1 diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index 088e3841fd..284b753c54 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -23,21 +23,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/bartender(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/device/pda/bar(H), slot_belt) - - if(H.backbag == 1) - var/obj/item/weapon/storage/box/survival/Barpack = new /obj/item/weapon/storage/box/survival(H) - H.equip_to_slot_or_del(Barpack, slot_r_hand) - new /obj/item/ammo_casing/shotgun/beanbag(Barpack) - new /obj/item/ammo_casing/shotgun/beanbag(Barpack) - new /obj/item/ammo_casing/shotgun/beanbag(Barpack) - new /obj/item/ammo_casing/shotgun/beanbag(Barpack) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_in_backpack) - H.equip_to_slot_or_del(new /obj/item/ammo_casing/shotgun/beanbag(H), slot_in_backpack) - H.equip_to_slot_or_del(new /obj/item/ammo_casing/shotgun/beanbag(H), slot_in_backpack) - H.equip_to_slot_or_del(new /obj/item/ammo_casing/shotgun/beanbag(H), slot_in_backpack) - H.equip_to_slot_or_del(new /obj/item/ammo_casing/shotgun/beanbag(H), slot_in_backpack) - + H.species.equip_survival_gear() return 1 @@ -65,10 +51,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/head/chefhat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/device/pda/chef(H), slot_belt) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear() return 1 @@ -98,11 +81,10 @@ H.equip_to_slot_or_del(new /obj/item/device/analyzer/plant_analyzer(H), slot_s_store) H.equip_to_slot_or_del(new /obj/item/device/pda/botanist(H), slot_belt) switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/hydroponics(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_hyd(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 @@ -131,10 +113,7 @@ // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/weapon/clipboard(H), slot_l_hand) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 @@ -160,10 +139,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/cargo(H), slot_belt) // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 @@ -193,12 +169,11 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/shaftminer(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) + H.species.equip_survival_gear(H) if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/crowbar(H), slot_l_hand) H.equip_to_slot_or_del(new /obj/item/weapon/storage/bag/ore(H), slot_l_store) else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/crowbar(H), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/storage/bag/ore(H), slot_in_backpack) return 1 @@ -263,12 +238,11 @@ H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/mime(H), slot_wear_mask) H.equip_to_slot_or_del(new /obj/item/clothing/head/beret(H), slot_head) H.equip_to_slot_or_del(new /obj/item/clothing/suit/suspenders(H), slot_wear_suit) + H.species.equip_survival_gear(H) if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/pen/crayon/mime(H), slot_l_store) H.equip_to_slot_or_del(new /obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing(H), slot_l_hand) else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/pen/crayon/mime(H), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing(H), slot_in_backpack) H.verbs += /client/proc/mimespeak @@ -300,10 +274,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/janitor(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/janitor(H), slot_belt) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 @@ -330,10 +301,7 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/librarian(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/weapon/barcodescanner(H), slot_l_hand) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 @@ -366,10 +334,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/big(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/device/pda/lawyer(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/briefcase(H), slot_l_hand) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.implant_loyalty(H) diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm index 9b08e0d47c..d85d1d5e40 100644 --- a/code/game/jobs/job/civilian_chaplain.dm +++ b/code/game/jobs/job/civilian_chaplain.dm @@ -22,10 +22,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chaplain(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/device/pda/chaplain(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) spawn(0) var/religion_name = "Christianity" var/new_religion = sanitize(input(H, "You are the crew services officer. Would you like to change your religion? Default is Christianity, in SPACE.", "Name change", religion_name), MAX_NAME_LEN) diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 249c103c87..2d47694b03 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -35,10 +35,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat/white(H), slot_head) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/full(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 @@ -71,10 +68,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/device/t_scanner(H), slot_r_store) H.equip_to_slot_or_del(new /obj/item/device/pda/engineering(H), slot_l_store) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 @@ -104,8 +98,5 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/atmos(H), slot_l_store) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/atmostech/(H), slot_belt) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index 8454ced144..f96494d5e7 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -30,10 +30,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/heads/cmo(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/cmo(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) @@ -93,10 +90,7 @@ else H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) return 1 @@ -126,11 +120,10 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/chemist(H), slot_belt) switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/chemistry(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_chem(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/chemist(H), slot_wear_suit) return 1 @@ -157,11 +150,10 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/geneticist(H), slot_belt) switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/genetics(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_gen(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/genetics(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) return 1 @@ -197,10 +189,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_belt) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) @@ -239,8 +228,5 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/medical/emt(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_l_store) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) return 1 diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 6142296d72..1f662c1ad0 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -29,11 +29,10 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/heads/rd(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/clipboard(H), slot_l_hand) switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) return 1 @@ -62,11 +61,10 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/science(H), slot_belt) switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/science(H), slot_wear_suit) return 1 @@ -95,11 +93,10 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/science(H), slot_belt) switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/science(H), slot_wear_suit) return 1 @@ -128,9 +125,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/roboticist(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/toolbox/mechanical(H), slot_l_hand) - if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) return 1 \ No newline at end of file diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index 1a0e3bdf3a..f3881ebb6d 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -35,11 +35,10 @@ // H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(H), slot_wear_mask) //Grab one from the armory you donk H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/gun(H), slot_s_store) + H.species.equip_survival_gear(H) if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_store) else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_in_backpack) H.implant_loyalty(H) return 1 @@ -74,11 +73,10 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), slot_glasses) // H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(H), slot_wear_mask) //Grab one from the armory you donk H.equip_to_slot_or_del(new /obj/item/device/flash(H), slot_l_store) + H.species.equip_survival_gear(H) if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_hand) else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_in_backpack) return 1 @@ -112,12 +110,11 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/detective(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) H.equip_to_slot_or_del(new /obj/item/weapon/flame/lighter/zippo(H), slot_l_store) + H.species.equip_survival_gear(H) if(H.backbag == 1)//Why cant some of these things spawn in his office? - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/evidence(H), slot_l_hand) H.equip_to_slot_or_del(new /obj/item/device/detective_scanner(H), slot_r_store) else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/evidence(H), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/device/detective_scanner(H), slot_in_backpack) if(H.mind.role_alt_title && H.mind.role_alt_title == "Forensic Technician") @@ -154,10 +151,9 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/security(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_s_store) H.equip_to_slot_or_del(new /obj/item/device/flash(H), slot_l_store) + H.species.equip_survival_gear(H) if(H.backbag == 1) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_hand) else - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_in_backpack) return 1 diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index 360245ccf1..e2b87c6dc0 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -505,7 +505,10 @@ var/global/datum/controller/occupations/job_master H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H),slot_shoes,1) else if(H.species.name == "Vox") H.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(H), slot_wear_mask) - if(!H.r_hand) + if(!H.back) + H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_back) + H.internal = H.back + else if(!H.r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_r_hand) H.internal = H.r_hand else if (!H.l_hand) diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index f8be15d3e4..0ebd126b9d 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -53,21 +53,14 @@ /obj/item/weapon/storage/box/survival/ New() ..() - contents = list() - sleep(1) new /obj/item/clothing/mask/breath( src ) new /obj/item/weapon/tank/emergency_oxygen( src ) - return -/obj/item/weapon/storage/box/engineer/ +/obj/item/weapon/storage/box/survival/vox/ New() ..() - contents = list() - sleep(1) new /obj/item/clothing/mask/breath( src ) - new /obj/item/weapon/tank/emergency_oxygen/engi( src ) - return - + new /obj/item/weapon/tank/emergency_nitrogen( src ) /obj/item/weapon/storage/box/gloves name = "box of latex gloves" diff --git a/code/game/objects/items/weapons/tanks/tank_types.dm b/code/game/objects/items/weapons/tanks/tank_types.dm index 3f2bbb1826..a43d49a39c 100644 --- a/code/game/objects/items/weapons/tanks/tank_types.dm +++ b/code/game/objects/items/weapons/tanks/tank_types.dm @@ -144,6 +144,29 @@ icon_state = "emergency_double" volume = 10 +/obj/item/weapon/tank/emergency_nitrogen + name = "emergency nitrogen tank" + desc = "An emergency air tank hastily painted red and issued to Vox crewmembers." + icon_state = "emergency_nitro" + flags = CONDUCT + slot_flags = SLOT_BELT + w_class = 2.0 + force = 4.0 + distribute_pressure = ONE_ATMOSPHERE*O2STANDARD + volume = 2 + + New() + ..() + src.air_contents.adjust_gas("nitrogen", (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)) + + return + + + examine(mob/user) + if(..(user, 0) && air_contents.gas["nitrogen"] < 0.2 && loc==user) + user << text("\red The meter on the [src.name] indicates you are almost out of air!") + user << sound('sound/effects/alert.ogg') + /* * Nitrogen */ diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm index a37e4c41b1..07b52e6759 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -54,6 +54,12 @@ var/datum/language/species_language = all_languages[default_language] return species_language.get_random_name(gender) +/datum/species/vox/equip_survival_gear(var/mob/living/carbon/human/H) + if(H.backbag == 1) + H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival/vox(H), slot_r_hand) + else + H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival/vox(H.back), slot_in_backpack) + /datum/species/vox/can_shred(var/mob/living/carbon/human/H, var/ignore_intent) if(!H.mind || !H.mind.special_role) // Pariah check. return 0 diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 5c01ea38b4..b49a634aab 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -174,6 +174,12 @@ return "unknown" return species_language.get_random_name(gender) +/datum/species/proc/equip_survival_gear(var/mob/living/carbon/human/H) + if(H.backbag == 1) + H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) + else + H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + /datum/species/proc/create_organs(var/mob/living/carbon/human/H) //Handles creation of mob organs. for(var/obj/item/organ/organ in H.contents) diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index ee8a1438d2..3f4d462191 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -198,6 +198,12 @@ return 1 return 0 +/datum/species/diona/equip_survival_gear(var/mob/living/carbon/human/H) + if(H.backbag == 1) + H.equip_to_slot_or_del(new /obj/item/device/flashlight/flare(H), slot_r_hand) + else + H.equip_to_slot_or_del(new /obj/item/device/flashlight/flare(H.back), slot_in_backpack) + /datum/species/diona/handle_post_spawn(var/mob/living/carbon/human/H) H.gender = NEUTER return ..() @@ -251,6 +257,8 @@ has_organ = list() //TODO: Positronic brain. +/datum/species/machine/equip_survival_gear(var/mob/living/carbon/human/H) + /datum/species/machine/handle_death(var/mob/living/carbon/human/H) ..() if(flags & IS_SYNTHETIC) diff --git a/html/changelogs/Techhead-InternalBoxes.yml b/html/changelogs/Techhead-InternalBoxes.yml new file mode 100644 index 0000000000..3cbb8f0114 --- /dev/null +++ b/html/changelogs/Techhead-InternalBoxes.yml @@ -0,0 +1,9 @@ +author: Techhead +delete-after: True +changes: + - rscadd: "Vox will spawn with emergency nitrogen tanks in their survival boxes." + - rscadd: "Diona will spawn with an emergency flare instead of a survival box." + - rscdel: "Engineers no longer spawn with extended-capacity oxygen tanks." + - bugfix: "Vox spawning without backpacks will have their nitrogen tank equipped to their back." + - tweak: "The Bartender's spare beanbag shells have been moved into bar backroom with the shotgun." + diff --git a/icons/obj/tank.dmi b/icons/obj/tank.dmi index 3b71827609e136757ddcf0d6ad294b761a35a2ff..9f39eb1bee56918e1625714a9a8f80d156620631 100644 GIT binary patch delta 1998 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 delta 1896 zcmV-u2bcJb6S)$Q7Y=|30{{R3ySBeY`3;PQVl(C>K7#JV@d(kGwL=AK|GdY)=flEqP zo9!;A>-~;g!8&C$UDEkzOp==tD19@Vl0<^4BzBEMhTzMAxwjSQ0ZD|i&JQLeIat;} zSHCf)!J!0HWe`0}V@>!(Xux{svW+JT(3R?e3x9LrHS`dm!yw&VSaFC3ZICRPRt_Ny z9s$p+JjHUuf6w5DuXG36_dx!3BayWLroRhPM@38Yb zcjnGcJ|3E;q;w>8>=^AgG}MO!({WuV2^u7RO%*tC@?!%Pu3_7iY>Pl5r;F(C| z*~Xx*A%Nj12naP7fKYcP*S^iy)ZEGnj!ely)687-*C*gacD_ko0fZ+WQDT z258tlQVYNnG#>!M^DP#|`7A(2)_=ucegif}nu-0{0)*#VEQ<0~0ilAdo&5%EX(sB& zD=2=x?FBTf3J%nwfMMs$cdFBx9uYmS7`ZM>+Yq@<*zr1Vtl^qU8- z{PewQ;l_;x=arwncfPhZxUXqeu6*{H-gNGaK@Y!Q-&lWi z69uIG&Bw9W<9|)PRMz>G-#*h18|xcCqI?qHuE3V0LNXt%Fw=dg&_e={^z8wl0wjQI z-vapQ=U;xM014mjJ-u8R!1UL*34Z&X;3NIAbAYnHzIQnX@Z0wZ(A0Hv;SXXXcJ2E> z2#2In*)+=~{5a*s_pY*8;scaS;R5pN`#=cI2zR$GYJcH-msw)(CE*U?hp(ihq@<*z z^uN|o&kwglp>5}tpFUH8`k}l==X2X3(}eq)X64Ffpa11AO}KPxdFA#hlFx0kTxidm z-+p2}{I)FrqX69dg~U#HM>54^K3D50 zF2E%3NPn7y%;)%RS^h@>xcBqCgrvxP&K}^w8Vw-x*B&6gme2E5NQuhl>X0AGOGxE& zb_KR16_WXDTUZ6HMwa{+1S+4i2Y?EY0Iq$u!$1jTglIlz_Z~~H>{j&G*I1jd5*7+H zBBru)0B1hv(YFYpgqsQSm*faJ2k_hHlKv|W88slw|F-`nHe%Plcdbkkvl`0000 Date: Wed, 13 May 2015 03:16:43 -0400 Subject: [PATCH 040/199] Adds beanbag shells to bar backroom. Also, fixes. --- code/game/jobs/job/civilian.dm | 4 ++-- code/game/objects/items/weapons/storage/boxes.dm | 6 ++++++ maps/exodus-1.dmm | 4 ++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index 284b753c54..f42e27dbde 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -23,7 +23,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/bartender(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/device/pda/bar(H), slot_belt) - H.species.equip_survival_gear() + H.species.equip_survival_gear(H) return 1 @@ -51,7 +51,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/head/chefhat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/device/pda/chef(H), slot_belt) - H.species.equip_survival_gear() + H.species.equip_survival_gear(H) return 1 diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 0ebd126b9d..d5af4b2bc7 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -62,6 +62,12 @@ new /obj/item/clothing/mask/breath( src ) new /obj/item/weapon/tank/emergency_nitrogen( src ) +/obj/item/weapon/storage/box/engineer/ + New() + ..() + new /obj/item/clothing/mask/breath( src ) + new /obj/item/weapon/tank/emergency_oxygen/engi( src ) + /obj/item/weapon/storage/box/gloves name = "box of latex gloves" desc = "Contains white gloves." diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 837031cf89..6f18a9237a 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -1520,7 +1520,7 @@ "aDl" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aDm" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aDn" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"; tag = "icon-intact-f (SOUTHEAST)"},/mob/living/simple_animal/mouse,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/arrivals) -"aDo" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/gun/projectile/shotgun/doublebarrel,/obj/item/weapon/paper{info = "This permit signifies that the Bartender is permitted to posess this firearm in the bar, and ONLY the bar. Failure to adhere to this permit will result in confiscation of the weapon and possibly arrest."; name = "Shotgun permit"},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aDo" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/beanbags,obj/item/weapon/gun/projectile/shotgun/doublebarrel,/obj/item/weapon/paper{info = "This permit signifies that the Bartender is permitted to posess this firearm in the bar, and ONLY the bar. Failure to adhere to this permit will result in confiscation of the weapon and possibly arrest."; name = "Shotgun permit"},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aDp" = (/turf/simulated/wall,/area/crew_quarters/bar) "aDq" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/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"},/turf/simulated/floor/plating,/area/maintenance/bar) "aDr" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor,/area/storage/primary) @@ -1602,7 +1602,7 @@ "aEP" = (/obj/item/weapon/storage/secure/safe{pixel_x = -22; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aEQ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aER" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aES" = (/obj/structure/table/woodentable,/obj/machinery/reagentgrinder,/obj/item/weapon/packageWrap,/obj/machinery/camera/network/civilian_east{c_tag = "Bar Backroom"},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aES" = (/obj/structure/table/woodentable,/obj/machinery/reagentgrinder,/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/packageWrap,/obj/machinery/camera/network/civilian_east{c_tag = "Bar Backroom"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aET" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j1s"; sortType = "Bar"; name = "Bar"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/bar) "aEU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east) "aEV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/camera/network/civilian_east{c_tag = "Dormitory Holodeck South"; dir = 1; pixel_y = 6},/turf/simulated/floor/plating,/area/crew_quarters/fitness) From 38e7cb877453a3de0807e4cc8799f5421ddd1fce Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Wed, 13 May 2015 17:04:52 +0930 Subject: [PATCH 041/199] Minor amendments to mech kits and icons. --- code/game/objects/items/paintkit.dm | 2 +- icons/mecha/mecha.dmi | Bin 168092 -> 168091 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/paintkit.dm b/code/game/objects/items/paintkit.dm index f626af6ff3..34802577d6 100644 --- a/code/game/objects/items/paintkit.dm +++ b/code/game/objects/items/paintkit.dm @@ -168,7 +168,7 @@ /obj/item/device/kit/paint/gygax/darkgygax name = "\"Silhouette\" Gygax customisation kit" new_name = "Gygax \"Silhouette\"" - new_desc = "An ominous Gygax exosuit modelled after the fictional corporate 'death squads' that were popular back in 2554." + new_desc = "An ominous Gygax exosuit modelled after the fictional corporate 'death squads' that were popular in pulp action-thrillers back in 2554." new_icon = "darkgygax" /obj/item/device/kit/paint/gygax/recitence diff --git a/icons/mecha/mecha.dmi b/icons/mecha/mecha.dmi index c5d882a5032dddc7cc18f7435119b8a473a75dd7..25ef7f5151e46b4d96484f51ede6911cfa6cee02 100644 GIT binary patch delta 533 zcmV+w0_y#op$eO!3Xmj!?|M{NbVOxyV{&P5bZKvH004NLotDpTqc9N0&+rtZ_Uf*H zgzkyUD%C27_7x(ho?t6rBOBVXPrnD!VE%Kw!aJ z$RLhb9F1L1rb69YW6v5-v`1^s1hrLFf$cocL`DO+Xo&!MoAa;L_4798U$o^rDRK3Z zTi%GJ4Ve+%VA%BAm$H~8GiD-{L(40<%GAkzM0Bwdc`C{O8NJHW$!NQD(N>Z>oG+Yu zr-5CbiT|!Ce=>!CpiX*Mc<5N1p{7`zpy!#dn199vZ}jo^a9@{85Zhx!>l`+2wK?BH z+8$rkM2wTNcv88n3Fpz%(qMc8kw+k}B{3j9?M(H- delta 533 zcmV+w0_y#np$eR#3Xmj!@Oo5ObVOxyV{&P5bZKvH004NLotDjRqc9YO*YFfq?baOu z37r+2QL0fE?JFR+zQI<&Mz)zL^YpVI4L{-MHe!Wz&h>}y^)Zj|>*e?H4Gyoz@DEz2 zjD`&MKcX=BtAv-3!7d2{iK>vkdvTt7gbW^}(Py*|VIY)skikBG3{I9;=pch63w8|}L_XM)!wT|^fvk*AjYpV6BaES^*$J>fhKv^1EZfyg6}dr1t)fp(QAkjA^(c*tNEvE-R8)Sx1Ad!{Am zRY}{fUQQ%IT_}xcl`ityES$5!4VR?DJes&CjCYloaxVpcyQ&rfXd#2=sdDOw&L%A%@W#v6#gy9fu?VYd=cbh^3?7 zvhJ+rr;=Cba*Ny0N|czd*jDeaFUNb?&}Zz%c@N{*M_S6_R>L3R Date: Wed, 13 May 2015 04:07:01 -0400 Subject: [PATCH 042/199] Moves equip_survival_gear into job controller, species gear into datums. --- code/game/jobs/job/assistant.dm | 1 - code/game/jobs/job/captain.dm | 2 -- code/game/jobs/job/civilian.dm | 11 ----------- code/game/jobs/job/civilian_chaplain.dm | 1 - code/game/jobs/job/engineering.dm | 3 --- code/game/jobs/job/medical.dm | 6 ------ code/game/jobs/job/science.dm | 4 ---- code/game/jobs/job/security.dm | 4 ---- code/game/jobs/job_controller.dm | 19 ++----------------- .../carbon/human/species/outsider/vox.dm | 13 +++++++++++++ .../carbon/human/species/station/station.dm | 8 ++++++++ 11 files changed, 23 insertions(+), 49 deletions(-) diff --git a/code/game/jobs/job/assistant.dm b/code/game/jobs/job/assistant.dm index a5a4a4db0d..def0a007f7 100644 --- a/code/game/jobs/job/assistant.dm +++ b/code/game/jobs/job/assistant.dm @@ -16,7 +16,6 @@ if(!H) return 0 H.equip_to_slot_or_del(new /obj/item/clothing/under/color/grey(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) - H.species.equip_survival_gear(H) return 1 /datum/job/assistant/get_access() diff --git a/code/game/jobs/job/captain.dm b/code/game/jobs/job/captain.dm index cc9f3fb4d3..28240dbb5b 100644 --- a/code/game/jobs/job/captain.dm +++ b/code/game/jobs/job/captain.dm @@ -32,7 +32,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/head/caphat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_l_hand) else @@ -88,7 +87,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/head_of_personnel(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/heads/hop(H), slot_belt) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_l_hand) else diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index f42e27dbde..e5ef21856e 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -23,7 +23,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/bartender(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/device/pda/bar(H), slot_belt) - H.species.equip_survival_gear(H) return 1 @@ -51,7 +50,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/head/chefhat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/device/pda/chef(H), slot_belt) - H.species.equip_survival_gear(H) return 1 @@ -84,7 +82,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/hydroponics(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_hyd(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) return 1 @@ -113,7 +110,6 @@ // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/weapon/clipboard(H), slot_l_hand) - H.species.equip_survival_gear(H) return 1 @@ -139,7 +135,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/cargo(H), slot_belt) // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - H.species.equip_survival_gear(H) return 1 @@ -169,7 +164,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/shaftminer(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/crowbar(H), slot_l_hand) H.equip_to_slot_or_del(new /obj/item/weapon/storage/bag/ore(H), slot_l_store) @@ -198,7 +192,6 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/clown(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/clown(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/clown(H), slot_belt) @@ -238,7 +231,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/mime(H), slot_wear_mask) H.equip_to_slot_or_del(new /obj/item/clothing/head/beret(H), slot_head) H.equip_to_slot_or_del(new /obj/item/clothing/suit/suspenders(H), slot_wear_suit) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/pen/crayon/mime(H), slot_l_store) H.equip_to_slot_or_del(new /obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing(H), slot_l_hand) @@ -274,7 +266,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/janitor(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/janitor(H), slot_belt) - H.species.equip_survival_gear(H) return 1 @@ -301,7 +292,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/librarian(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/weapon/barcodescanner(H), slot_l_hand) - H.species.equip_survival_gear(H) return 1 @@ -334,7 +324,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/big(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/device/pda/lawyer(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/briefcase(H), slot_l_hand) - H.species.equip_survival_gear(H) H.implant_loyalty(H) diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm index d85d1d5e40..a9f441dd22 100644 --- a/code/game/jobs/job/civilian_chaplain.dm +++ b/code/game/jobs/job/civilian_chaplain.dm @@ -22,7 +22,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chaplain(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/device/pda/chaplain(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) - H.species.equip_survival_gear(H) spawn(0) var/religion_name = "Christianity" var/new_religion = sanitize(input(H, "You are the crew services officer. Would you like to change your religion? Default is Christianity, in SPACE.", "Name change", religion_name), MAX_NAME_LEN) diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 2d47694b03..644c2fc1f8 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -35,7 +35,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat/white(H), slot_head) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/full(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - H.species.equip_survival_gear(H) return 1 @@ -68,7 +67,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/device/t_scanner(H), slot_r_store) H.equip_to_slot_or_del(new /obj/item/device/pda/engineering(H), slot_l_store) - H.species.equip_survival_gear(H) return 1 @@ -98,5 +96,4 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/atmos(H), slot_l_store) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/atmostech/(H), slot_belt) - H.species.equip_survival_gear(H) return 1 diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index f96494d5e7..5b6fca11b6 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -30,7 +30,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/heads/cmo(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) - H.species.equip_survival_gear(H) return 1 H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/cmo(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) @@ -90,7 +89,6 @@ else H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) return 1 @@ -123,7 +121,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/chemistry(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_chem(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/chemist(H), slot_wear_suit) return 1 @@ -153,7 +150,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/genetics(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_gen(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/genetics(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) return 1 @@ -189,7 +185,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_belt) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) @@ -228,5 +223,4 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/medical/emt(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_l_store) - H.species.equip_survival_gear(H) return 1 diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 1f662c1ad0..dc0252de53 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -32,7 +32,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) return 1 @@ -64,7 +63,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/science(H), slot_wear_suit) return 1 @@ -96,7 +94,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/science(H), slot_wear_suit) return 1 @@ -125,6 +122,5 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/roboticist(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/toolbox/mechanical(H), slot_l_hand) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) return 1 \ No newline at end of file diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index f3881ebb6d..e16a6af247 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -35,7 +35,6 @@ // H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(H), slot_wear_mask) //Grab one from the armory you donk H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/gun(H), slot_s_store) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_store) else @@ -73,7 +72,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), slot_glasses) // H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(H), slot_wear_mask) //Grab one from the armory you donk H.equip_to_slot_or_del(new /obj/item/device/flash(H), slot_l_store) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_hand) else @@ -110,7 +108,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/detective(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) H.equip_to_slot_or_del(new /obj/item/weapon/flame/lighter/zippo(H), slot_l_store) - H.species.equip_survival_gear(H) if(H.backbag == 1)//Why cant some of these things spawn in his office? H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/evidence(H), slot_l_hand) H.equip_to_slot_or_del(new /obj/item/device/detective_scanner(H), slot_r_store) @@ -151,7 +148,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/security(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_s_store) H.equip_to_slot_or_del(new /obj/item/device/flash(H), slot_l_store) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_hand) else diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index e2b87c6dc0..deab7e2e61 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -394,6 +394,8 @@ var/global/datum/controller/occupations/job_master //Equip job items. job.equip(H) job.apply_fingerprints(H) + H.species.equip_survival_gear(H) + //If some custom items could not be equipped before, try again now. for(var/thing in custom_equip_leftovers) var/datum/gear/G = gear_datums[thing] @@ -499,23 +501,6 @@ var/global/datum/controller/occupations/job_master else H << "\red Failed to locate a storage object on your mob, either you spawned with no arms and no backpack or this is a bug." - //TODO: Generalize this by-species - if(H.species) - if(H.species.name == "Tajara" || H.species.name == "Unathi") - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H),slot_shoes,1) - else if(H.species.name == "Vox") - H.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(H), slot_wear_mask) - if(!H.back) - H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_back) - H.internal = H.back - else if(!H.r_hand) - H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_r_hand) - H.internal = H.r_hand - else if (!H.l_hand) - H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_l_hand) - H.internal = H.l_hand - H.internals.icon_state = "internal1" - if(istype(H)) //give humans wheelchairs, if they need them. var/obj/item/organ/external/l_foot = H.get_organ("l_foot") var/obj/item/organ/external/r_foot = H.get_organ("r_foot") diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm index 07b52e6759..53e8dc0b15 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -55,11 +55,24 @@ return species_language.get_random_name(gender) /datum/species/vox/equip_survival_gear(var/mob/living/carbon/human/H) + H.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(H), slot_wear_mask) + if(!H.back) + H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_back) + H.internal = H.back + else if(!H.r_hand) + H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_r_hand) + H.internal = H.r_hand + else if (!H.l_hand) + H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_l_hand) + H.internal = H.l_hand + H.internals.icon_state = "internal1" + if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival/vox(H), slot_r_hand) else H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival/vox(H.back), slot_in_backpack) + /datum/species/vox/can_shred(var/mob/living/carbon/human/H, var/ignore_intent) if(!H.mind || !H.mind.special_role) // Pariah check. return 0 diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index 3f4d462191..c49bdd5a5d 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -59,6 +59,10 @@ "Your scales bristle against the cold." ) +/datum/species/unathi/equip_survival_gear(var/mob/living/carbon/human/H) + ..() + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H),slot_shoes,1) + /datum/species/tajaran name = "Tajara" name_plural = "Tajaran" @@ -100,6 +104,10 @@ ) cold_discomfort_level = 275 +/datum/species/tajaran/equip_survival_gear(var/mob/living/carbon/human/H) + ..() + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H),slot_shoes,1) + /datum/species/skrell name = "Skrell" name_plural = "Skrell" From cb5535a64bc70b6d9c6108f20568b3e8a405f5fe Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 12:37:18 +0200 Subject: [PATCH 043/199] Fixes #9221. Removes premature loc = null change. Also fixes an issue occuring when the impact of an ion bullet would wreck a mech before triggering the EMP. This would cause null runtimes as a now removed object would be accessed. --- code/game/mecha/mecha.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index b0423340e7..2afb089d68 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -106,7 +106,6 @@ if(loc) loc.Exited(src) - loc = null if(prob(30)) explosion(get_turf(loc), 0, 0, 1, 3) @@ -460,6 +459,8 @@ /obj/mecha/proc/setInternalDamage(int_dam_flag) + if(!pr_internal_damage) return + internal_damage |= int_dam_flag pr_internal_damage.start() log_append_to_last("Internal damage of type [int_dam_flag].",1) From e92196c903fa486cd1d44f53292096b9503ae78a Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 12:59:20 +0200 Subject: [PATCH 044/199] Fixes pipes on the asteroid disappearing into limbo. --- maps/exodus-5.dmm | 94 ++++++++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 46 deletions(-) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 114e31ec87..8dc6ee6d17 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -507,7 +507,7 @@ "jM" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/outpost/mining_north) "jN" = (/obj/structure/closet/walllocker/emerglocker/south,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "jO" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_north_outpost_outer"; locked = 1; name = "Mining External Access"; req_access = list(10,13)},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) -"jP" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_north_outpost_inner"; locked = 1; name = "Mining External Access"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) +"jP" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/outpost/research/eva) "jQ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Anomalous Materials Lab"; dir = 8},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/lab) "jR" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating,/area/outpost/mining_north) "jS" = (/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"; pixel_x = 0},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) @@ -586,7 +586,7 @@ "ln" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/research/eva) "lo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Hallway Port"; dir = 4},/turf/simulated/floor{dir = 5; icon_state = "whitehall"},/area/outpost/research/hallway) "lp" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/research/eva) -"lq" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/outpost/research/eva) +"lq" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "lr" = (/obj/machinery/conveyor_switch{id = "anotempload"; name = "conveyor switch"; pixel_x = 0; pixel_y = 0; req_access = list(65)},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "ls" = (/obj/structure/table,/obj/item/weapon/storage/box/excavation,/obj/item/weapon/pickaxe,/obj/machinery/status_display{layer = 4; pixel_x = 32; pixel_y = 0},/obj/item/weapon/wrench,/obj/item/device/measuring_tape,/obj/item/stack/flag/yellow,/turf/simulated/floor,/area/outpost/research/eva) "lt" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/turf/simulated/floor,/area/outpost/research/eva) @@ -601,7 +601,7 @@ "lC" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/outpost/research/isolation_monitoring) "lD" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "lE" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/research/isolation_monitoring) -"lF" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"lF" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/research/isolation_monitoring) "lG" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{tag = "icon-map (EAST)"; icon_state = "map"; dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "lH" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless,/area/outpost/abandoned) "lI" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless,/area/outpost/abandoned) @@ -621,12 +621,12 @@ "lW" = (/obj/machinery/atmospherics/unary/freezer{dir = 4; icon_state = "freezer"},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "lX" = (/obj/machinery/door/airlock/external{id_tag = "riso3"; name = "Access Airlock"; req_access = list(65)},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/isolation_c) "lY" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{tag = "icon-map (NORTH)"; icon_state = "map"; dir = 1},/turf/simulated/floor{icon_state = "delivery"},/area/outpost/research/isolation_monitoring) -"lZ" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/outpost/research/isolation_monitoring) -"ma" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"lZ" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) +"ma" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/outpost/research/isolation_monitoring) "mb" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{tag = "icon-map (NORTH)"; icon_state = "map"; dir = 1},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mc" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow,/turf/simulated/floor,/area/outpost/research/isolation_monitoring) -"md" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) -"me" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/research/isolation_monitoring) +"md" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/turf/unsimulated/mask,/area/mine/unexplored) +"me" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_north_outpost_inner"; locked = 1; name = "Mining External Access"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "mf" = (/obj/structure/table/rack,/obj/item/weapon/storage/box/lights/bulbs{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/box/lights/tubes{pixel_x = -5; pixel_y = 5},/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/outpost/research/emergency_storage) "mg" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) "mh" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/turf/simulated/floor,/area/outpost/research/isolation_monitoring) @@ -862,8 +862,8 @@ "qD" = (/turf/simulated/wall/r_wall,/area/outpost/engineering/atmospherics) "qE" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating/airless,/area/space) "qF" = (/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) -"qG" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6},/turf/simulated/floor,/area/outpost/engineering/atmospherics) -"qH" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/turf/simulated/floor,/area/outpost/engineering/atmospherics) +"qG" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/turf/simulated/floor,/area/outpost/engineering/hallway) +"qH" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/outpost/engineering/hallway) "qI" = (/obj/machinery/atmospherics/omni/filter{power_rating = 15000; tag_east = 5; tag_north = 1; tag_south = 2; tag_west = 6},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "qJ" = (/obj/machinery/atmospherics/pipe/simple/visible/purple,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/atmospherics) "qK" = (/obj/machinery/atmospherics/pipe/simple/visible/blue,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/atmospherics) @@ -949,7 +949,7 @@ "sm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor,/area/outpost/engineering/hallway) "sn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Atmospherics"; req_access = list(10)},/turf/simulated/floor,/area/outpost/engineering/hallway) "so" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor,/area/outpost/engineering/hallway) -"sp" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/cyan{tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1},/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "edock_inner"; locked = 1; name = "Engineering Dock Airlock"},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) +"sp" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/turf/simulated/floor,/area/outpost/engineering/hallway) "sq" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/outpost/engineering/hallway) "sr" = (/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"; pixel_x = 0},/turf/simulated/floor,/area/outpost/engineering/hallway) "ss" = (/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"; pixel_x = 0},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor,/area/outpost/engineering/hallway) @@ -976,7 +976,7 @@ "sN" = (/turf/simulated/floor/plating/airless,/area/space) "sO" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/explored) "sP" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/explored) -"sQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/cyan{tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "edock_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(10)},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/outpost/engineering/hallway) +"sQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "edock_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(10)},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/outpost/engineering/hallway) "sR" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/space,/area/mine/explored) "sS" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/airless,/area/mine/explored) "sT" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/obj/machinery/light{dir = 1},/turf/space,/area/mine/explored) @@ -1008,7 +1008,7 @@ "tt" = (/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosiavulgaris,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "tu" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/outpost/engineering/hallway) "tv" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/outpost/engineering/hallway) -"tw" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/cyan{tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1},/turf/simulated/floor,/area/outpost/engineering/hallway) +"tw" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "edock_inner"; locked = 1; name = "Engineering Dock Airlock"},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) "tx" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/obj/machinery/light,/turf/space,/area/mine/explored) "ty" = (/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Isolation Cell A"; dir = 8},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_a) "tz" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 25; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/outpost/engineering/meeting) @@ -1027,14 +1027,14 @@ "tM" = (/obj/machinery/atmospherics/pipe/simple/visible/red{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "outpost_n2_in"; name = "N2 Tank Monitor"; output_tag = "outpost_n2_out"; sensors = list("outpost_n2_sensor" = "Tank")},/obj/structure/sign/securearea{desc = "A warning sign which reads 'COMPRESSED GAS'."; name = "COMPRESSED GAS"; pixel_y = -32},/obj/machinery/light,/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tN" = (/obj/machinery/atmospherics/pipe/simple/visible/purple,/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tO" = (/obj/machinery/atmospherics/pipe/simple/visible/red{tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) -"tP" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/structure/table/reinforced,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver,/obj/item/weapon/crowbar,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 9},/area/mine/explored) +"tP" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 6},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tQ" = (/obj/machinery/mining/drill,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 1},/area/mine/explored) -"tR" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 5},/area/mine/explored) +"tR" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 10},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tS" = (/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tT" = (/obj/machinery/atmospherics/pipe/simple/visible/blue,/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) -"tU" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) +"tU" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 6},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tV" = (/obj/machinery/atmospherics/omni/filter{power_rating = 15000; tag_east = 4; tag_north = 1; tag_south = 2; tag_west = 3},/turf/simulated/floor,/area/outpost/engineering/atmospherics) -"tW" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) +"tW" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 10},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tX" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "tY" = (/obj/machinery/light,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_x = -6; pixel_y = -28},/turf/simulated/floor,/area/outpost/engineering/hallway) "tZ" = (/obj/machinery/camera/network/research_outpost{c_tag = "Research Outpost Isolation Cell B"; dir = 8},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/isolation_b) @@ -1103,7 +1103,7 @@ "vk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/outpost/engineering/hallway) "vl" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/outpost/engineering/hallway) "vm" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "edock_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = 0; req_access = list(10)},/turf/space,/area/space) -"vn" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1},/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/outpost/engineering/hallway) +"vn" = (/obj/machinery/light{dir = 1},/obj/structure/table/reinforced,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver,/obj/item/weapon/crowbar,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 9},/area/mine/explored) "vo" = (/obj/machinery/power/solar_control,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor,/area/outpost/engineering/hallway) "vp" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/outpost/engineering/hallway) "vq" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1380; id_tag = "eoutpost_dock_pump"},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "edock_airlock"; pixel_x = 30; pixel_y = 0; req_access = list(10); tag_airpump = "edock_pump"; tag_chamber_sensor = "edock_sensor"; tag_exterior_door = "edock_outer"; tag_interior_door = "edock_inner"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) @@ -1116,7 +1116,7 @@ "vx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/outpost/engineering/hallway) "vy" = (/obj/machinery/computer/shuttle_control/engineering,/turf/simulated/floor,/area/outpost/engineering/hallway) "vz" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor,/area/outpost/engineering/hallway) -"vA" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1},/turf/simulated/floor,/area/outpost/engineering/hallway) +"vA" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 5},/area/mine/explored) "vB" = (/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "vC" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) "vD" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/wood,/area/outpost/engineering/meeting) @@ -1269,7 +1269,7 @@ "yu" = (/obj/machinery/door/window/westright{name = "Production Area"; req_access = list(48)},/turf/simulated/floor,/area/outpost/mining_main/refinery) "yv" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "yw" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_outpost_outer"; locked = 1; name = "Mining Dock Airlock"; req_access = list(13)},/turf/simulated/floor/plating,/area/outpost/mining_main/east_hall) -"yx" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_outpost_inner"; locked = 1; name = "Mining Dock Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; icon_state = "intact"; tag = "icon-intact-f (EAST)"},/turf/simulated/floor,/area/outpost/mining_main/east_hall) +"yx" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_west_outpost_inner"; locked = 1; name = "Mining External Access"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/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"; pixel_x = 0},/turf/simulated/floor,/area/outpost/mining_west) "yy" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/refinery) "yz" = (/obj/machinery/mineral/input,/turf/simulated/floor{icon_state = "loadingarea"},/area/outpost/mining_main/refinery) "yA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 8},/area/mine/explored) @@ -1278,7 +1278,7 @@ "yD" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "yE" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "mining_outpost_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13,48); tag_airpump = "mining_outpost_pump"; tag_chamber_sensor = "mining_outpost_sensor"; tag_exterior_door = "mining_outpost_outer"; tag_interior_door = "mining_outpost_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "mining_outpost_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "mining_outpost_pump"},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "yF" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/outpost/mining_main/east_hall) -"yG" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor,/area/outpost/mining_main/refinery) +"yG" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "yH" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/outpost/mining_main/refinery) "yI" = (/turf/space,/area/shuttle/mining/outpost) "yJ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "mining_outpost_airlock"; name = "interior access button"; pixel_x = -30; pixel_y = -25; req_one_access = list(13,48)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/turf/simulated/floor,/area/outpost/mining_main/east_hall) @@ -1347,7 +1347,7 @@ "zU" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "mining_outpost_airlock"; name = "exterior access button"; pixel_x = -8; pixel_y = 25; req_one_access = list(13,48)},/turf/space,/area/space) "zV" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining_west_outpost_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25},/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"; pixel_x = 0},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "zW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) -"zX" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_west_outpost_inner"; locked = 1; name = "Mining External Access"},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/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"; pixel_x = 0},/turf/simulated/floor,/area/outpost/mining_west) +"zX" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/outpost/mining_main/eva) "zY" = (/turf/simulated/floor,/area/outpost/mining_west) "zZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_west) "Aa" = (/turf/space,/area/skipjack_station/mining) @@ -1446,11 +1446,11 @@ "BP" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/mining_main/eva) "BQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "BR" = (/obj/machinery/conveyor{dir = 8; id = "mining_west"},/obj/machinery/mineral/output,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_west) -"BS" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/outpost/mining_main/east_hall) +"BS" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_mining{name = "Mining Station EVA"; req_access = list(54)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/outpost/mining_main/eva) "BT" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/outpost/mining_main/east_hall) -"BU" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/outpost/mining_main/eva) +"BU" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/eva) "BV" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal/deliveryChute{dir = 8},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_west) -"BW" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/outpost/mining_main/eva) +"BW" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_east_inner"; locked = 1; name = "Mining External Access"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/eva) "BX" = (/obj/machinery/mineral/input,/obj/machinery/conveyor{backwards = 2; dir = 2; forwards = 1; id = "mining_west"},/turf/simulated/floor,/area/outpost/mining_west) "BY" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_west) "BZ" = (/obj/machinery/atmospherics/pipe/simple/visible/red{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "outpost_o2_in"; name = "O2 Tank Monitor"; output_tag = "outpost_o2_out"; sensors = list("outpost_o2_sensor" = "Tank")},/obj/machinery/camera/network/engineering_outpost{c_tag = "Engineering Outpost Atmospherics"; dir = 1},/turf/simulated/floor,/area/outpost/engineering/atmospherics) @@ -1495,11 +1495,11 @@ "CM" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor,/area/outpost/mining_main/west_hall) "CN" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/outpost/mining_main/west_hall) "CO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/outpost/mining_main/west_hall) -"CP" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_mining{name = "Mining Station EVA"; req_access = list(54)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/outpost/mining_main/eva) +"CP" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_east_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/eva) "CQ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/outpost/engineering/hallway) "CR" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "outpost_n2_sensor"},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/outpost/engineering/atmospherics) "CS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/west_hall) -"CT" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_east_inner"; locked = 1; name = "Mining External Access"},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/outpost/mining_main/eva) +"CT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/west_hall) "CU" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/west_hall) "CV" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/west_hall) "CW" = (/obj/machinery/light,/turf/simulated/floor,/area/outpost/mining_main/west_hall) @@ -1511,7 +1511,7 @@ "Dc" = (/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/outpost/mining_main/east_hall) "Dd" = (/obj/machinery/atmospherics/pipe/simple/visible/blue{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/firealarm{dir = 4; layer = 3.3; pixel_x = 26},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "De" = (/obj/structure/ore_box,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) -"Df" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_east_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/outpost/mining_main/eva) +"Df" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light,/turf/simulated/floor,/area/outpost/mining_main/east_hall) "Dg" = (/obj/machinery/door/airlock/glass_mining{name = "Mining Station Bridge"; req_access = list(48)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "Dh" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall,/area/outpost/mining_main/maintenance) "Di" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/outpost/mining_main/medbay) @@ -1590,9 +1590,9 @@ "ED" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/wall,/area/space) "EE" = (/obj/machinery/light_switch{pixel_x = 25; pixel_y = -9},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/status_display{layer = 4; pixel_x = 32; pixel_y = 10},/turf/simulated/floor,/area/outpost/mining_main/eva) "EF" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/space,/area/space) -"EG" = (/obj/structure/window/reinforced,/obj/structure/lattice,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/space,/area/space) +"EG" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "EH" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/turf/space,/area/space) -"EI" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/light{dir = 4},/turf/space,/area/space) +"EI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "EJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) "EK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating/airless,/area/space) "EL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/mine/explored) @@ -1621,6 +1621,8 @@ "Fi" = (/obj/machinery/conveyor_switch/oneway{id = "mining_internal"; name = "mining conveyor"},/obj/machinery/light{dir = 4},/obj/machinery/camera/network/mining{c_tag = "Mining Outpost - Shuttle Airlock"; dir = 8},/turf/simulated/floor,/area/outpost/mining_main/east_hall) "Fj" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/mining{c_tag = "Mining Outpost Production Room"; dir = 8},/turf/simulated/floor,/area/outpost/mining_main/refinery) "Fk" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) +"Fl" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_outpost_inner"; locked = 1; name = "Mining Dock Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/east_hall) +"Fm" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/outpost/mining_main/refinery) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1690,11 +1692,11 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaecrmPeUhRoEcriCoDiBcrgrcroGoHoFcrbClLiFmOcpeleUcrabababababababababababababababababababababababababababababababalalgygygygygygygygyalalabgygyaaaaaaaaaaaaaaaeaekBohogoflnoeodpLqOoanZnYqhoqorosrIrfrvhuopokollDkmnGoiojkmkmmghuoCozhtoBoAovoulueBeBeBeBeBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcrmPcphRcpmUlLhLmShLmTbCbCmNeYbCcpcpcreUmOeUeUcrababababababababababababababababababababababababababababababalalgygygygygygygygygygymQmRgygyaaaaaaaaaaaaaaaaaekBmLllmMlOmImHmJkBkBllmKeomCmDhGhGnPnXhumEmxmbmvmwmAmBmynAmsnfhumqmuhtmtmpmpmoluabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababcrlMhReUcpnscpnrdJcpnqmTnrhKntcpkNekcrlIcpgobCcrabababababababababababababababababababababababababababababalmRgygygygygygygygygygygynDnjgyaeaaaaaaaaaaaaaaaaaekBmLllnppGnmnlllnkkBnneoeonNnOhGoXotoKhupPmVmWmXnQonoomEobmGquhungnhhtnineneneluabababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababcrlMlNeUfFcrkPcrlJlKcrcpcrlJlKcreUlLcrdIlHiFlIcrabababababababababababababababababababababababababababababalomgygygygygygygygygygygygygygyaeaaaaaaaaaaaaaaaaaekBlmllqWlnmzlqltlskBlpeoowoxoyhGnamYmZhulxlFlGlDlElBlCkmnbkmkmhulwlvhtlululululuabababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababcrcrcrcrcrcrkPcrgokNcphTmmeUhTeUgoffcrmnmknxmjcrabababababababababababababababababababababababababababababalmQgygygygygygygygygygygygygygyaeaaaaaaaaaaaaaaaeaekBqZlRlPlOnolqndlTkBlSeooYoxoyhGnvhGnchulWmbmcmdmelYlZmamamhmghumimfhtababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababcrlMlNeUfFcrkPcrlJlKcrcpcrlJlKcreUlLcrdIlHiFlIcrabababababababababababababababababababababababababababababalomgygygygygygygygygygygygygygyaeaaaaaaaaaaaaaaaaaekBlmllqWlnmzjPltlskBlpeoowoxoyhGnamYmZhulxlqlGlDlElBlCkmnbkmkmhulwlvhtlululululuabababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababcrcrcrcrcrcrkPcrgokNcphTmmeUhTeUgoffcrmnmknxmjcrabababababababababababababababababababababababababababababalmQgygygygygygygygygygygygygygyaeaaaaaaaaaaaaaaaeaekBqZlRlPlOnojPndlTkBlSeooYoxoyhGnvhGnchulWmbmclZlFlYmalqlqmhmghumimfhtababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababcrkPcrkNekkOhTkMcphKcreUekcrkLkJkJkKcradababababababababababababababababababababababababababababalalgygygyprgygygygygygygygygygyaeaaaaaaaaaaaaaeaeaekBkBkCkFkBkBkGlhkGkBkIeoowpBrVhGkpsekshukVkvkwkYkukzkAlckyknkmhuhththtababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababcrkPcrhTcpbVljeUekgocrkPcrcrhOeUkJkKlkadababababababababababababababababababababababababababababalpSpTgypUpSpQgygygygygygygygygytjaaaaaaaaaaaetjtjtjgygyqdqeqfkBmllglfkBlieogylrlAhGkSkTkTkUlUkWkXkUlVkZlalblXleldlbababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababcrkPcrcrcrcrcrcrcrcrcrkPcrphbCeUbCkKpiadababababababababababababababababababababababababababababalpSgygygypSpQgygygygygygygyqwqCpjsWsWsWsWsWsWpoqwqCgygygygygykBplpnsIkBpkgygygygyhGpApxpykUpwpupvkUptpqpslbpppEpDlbababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababcrkPcrcrcrcrcrcrcrcrcrkPcrphbCeUbCkKpiadababababababababababababababababababababababababababababalpSgygygypSpQgygygygygygygyqwqCpjsWsWsWsWsWsWpoqwqCgygygygygykBplpnsIkBpkgygygygyhGpApxpykUpwpupvkUptpqpslbpppEpDlbababmdabababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLaaaaaaaaaaqLababababababababababababababcrkPkPkPkPkPkPkPkPkPkPkPcrhOeUiFeUiEcradababababababababababababababababababababababababababababalgygygygyqMqNgygygygygygygygyrWqPqPqPqPqPqPqPqPrWgygygygygygykBtlrUkGkBpFrigygygypmpXkTkTkUpWpOtykUpRuStZlbpNpKuWlbababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababcrcrcrcrcrcrcrcrcrcrcrcrcrcrmjrOoMcrcradababababababababababababababababababababababababababababalgygygygygygygygygygygygygyqwqCrdrerererererereqwqCgygygygygyuXpBrSpCvcpcpeoVoVoVxVoUsyoZkUoWoOoPkUoNoRoSlboQpbpalbabababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababadadadcrkJkJeUcradadababababababababababababababababababababababababababababalpSpTgygygygygygygygygygyaaaaaaaaaaaaaaaaalalalalalalalalgygygygygygypBpgpCgygyalhGhGhGhGkUkUkUkUkUpfpfpflblblblblbabababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1707,7 +1709,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLababababababqL aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaababaaaaaaababababababababababalalalgyjHgyalalalalalababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaabababababababababalalalgyjHgygygygyrHjFjFjFjFjFjFjFjFjFjFjFjFabababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaabababababababababalalalgyjHgygygygyrJvtkQjYjXkgkfkekdjFkckbjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaabababababababababalalalgykHjSjSjSoVjVjOjNvHjPkqjZkxktjWjRjTjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaabababababababababalalalgykHjSjSjSoVjVjOjNvHmekqjZkxktjWjRjTjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaabaaaaaaaaababababababababababalalgykigygygygyjFjFjFjFjFjFjKjJwOjFjMjLjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaabababaaaaababababababababababalalgyqqjsjujtjtjvjxjwjzjyxajAjUjCjEjDjGjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLabqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaabababaaaaaaabababababababababalalgygygykigygyjFjFjFjFkljFjFjFjFjFjFjFjFabababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1756,17 +1758,17 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLababababqLqLqLqLqLababababqLqLqLqLqLqLqLqL aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababalaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaealalabababababalalgygygygyqqjsjsqngygyalabalalalgygygyalababababababababababababababuyuzuwuxuFuGuAuBuKuJuIuHqjuLuLuLuLuLrMrLrLrNrtrMrNrtaaaaaaaaqgqcqbaaqgqcqbaaqgqcqbaaqaqaqaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLabqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababalalalalgysMgygykigygyalalalgygygygygypzpzpzpzabababababababvMvMvMvMuywJuwwKwHwIEBuPwFwEuIwGvewBwDyqwywxwAwzshwawwwvECrMrLrNaaaaaewLaeaaaewLaeaaaewLaeaaaeaaqaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaababababababababababalalmRgygykigygygygygygygygygygyAwwuwtpzabababababababvMvXvVvWuyvUuwvTvRvSuAuPwjwiuPwhvewgwfwewdwcwbtEshwavZvYxlxmzoxqxewlsNsNsNsNsNsNsNsNsNsNwrwqwsaeqaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababqLqLabqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaababababababababababababalalgyqqjsqngygygygygygygygyAwAevQpzababrtrtrtrtabvMvNvOztuyAfvIAyuTvKuAvLvCvBuAvDvevEvGvFvwvvvgvxvzvysvvAEvrMrLrNaaaaaevuaeaaaevuaeaaaevuaeaaaeaaqaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaababababababababaaaaaaaaaaaaaaabababababababababababababalgygygyqygygygygygygygygyAwAeACrtrtrtrtviAWrtrtrtrtwnrtrtrGrGrGrGvhrNrGwRrGvhrNrGvsvrrGwpEtvlvkvpvorGvnEsrtaaaaaaaaqgrgqbaaqgrgqbaaqgrgqbaaqaqaqaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaaaabababababababababababababalalalrJqzrigygygygygygygypBAzuDuvvPsxulwosJBawCwmsDsFsGtdtetctfsYtctctctrtqtctcxCtktntmtAzgtDtCtvtuBbtwtEtFaaaeaaaaqgrgqbaaqgrgqbaaqgrgqbaaaeaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababqLqLabqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaababababababababababababalalgyqqjsqngygygygygygygygyAwAevQpzababrtrtrtrtabvMvNvOztuyAfvIAyuTvKuAvLvCvBuAvDvevEvGvFvwvvvgvxvzvysvqGEvrMrLrNaaaaaevuaeaaaevuaeaaaevuaeaaaeaaqaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaababababababababaaaaaaaaaaaaaaabababababababababababababalgygygyqygygygygygygygygyAwAeACrtrtrtrtviAWrtrtrtrtwnrtrtrGrGrGrGvhrNrGwRrGvhrNrGvsvrrGwpEtvlvkvpvorGqHEsrtaaaaaaaaqgrgqbaaqgrgqbaaqgrgqbaaqaqaqaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaaaabababababababababababababalalalrJqzrigygygygygygygypBAzuDuvvPsxulwosJBawCwmsDsFsGtdtetctfsYtctctctrtqtctcxCtktntmtAzgtDtCtvtuBbsptEtFaaaeaaaaqgrgqbaaqgrgqbaaqgrgqbaaaeaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaabababababababababababababababalalAwrQrPrRrRrRrRrRrRrRrRrTswszBzsKsBuksdsdsdBLsoslsmstsdsdsssqsrsdsdvauYBMsdscsbsarZskvdrZsishshtYsQsusvaeaeaeaeqgrgqbaeqgrgqbaeqgrgqbaeqaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababaaaaaaaaaaaaabababababababababababababababababalalpBqApCgygygygygygygyrJsCrurtrtrtrtrtrtrtrtrtrwrzrArErzrFrGsnrGrKrtrtrtrtrtrtrtrtrtrtrtrMrLrLrNrtspsgrtaaaaaeaaqgrgqbaaqgrgqbaaqgrgqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababaaaaaaaaaaaaabababababababababababababababababalalpBqApCgygygygygygygyrJsCrurtrtrtrtrtrtrtrtrtrwrzrArErzrFrGsnrGrKrtrtrtrtrtrtrtrtrtrtrtrMrLrLrNrttwsgrtaaaaaeaaqgrgqbaaqgrgqbaaqgrgqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLababababababababqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababalalalalgyqygygygygygygygygyAwowowalabababababababqDrlrjrkrorprmrnrrrsrqqDababababababababababaaaaaaaarcrhrbrcaaaaaeaaqgrgqbaaqgrgqbaaqgrgqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLabqLababababqLqLabababqLqLqLqLqLababababababababqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababalalalalalalgyqygygygygygygygygyAwumalalabababababababqDrlurusuqqQqQqQunuoupqDababababababababababaaaaaaaauuutvquuaeaeaeaeqgrgqbaeqgrgqbaeqgrgqbaeqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababalgygygygygygyqygygygygygygygygyAwumalababababababababqDrlujuhuhuiucuguaubDdqDababababababababababaaaaaaaaCQvfvjrtvmaaEfaaqgrgqbaaqgrgqbaaqgrgqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababalgypZjsjsjsjsragyalalgygygygyalalalalababababababababqDrltXqQqQqQtTtUtVtWCgqDabababababababababaaaaaaaaqBqBqBqBqBqBqBaaaaqgrgqbaaqgrgqbaaqgrgqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababalgypZjsjsjsjsragyalalgygygygyalalalalababababababababqDrltXqQqQqQtTtPtVtRCgqDabababababababababaaaaaaaaqBqBqBqBqBqBqBaaaaqgrgqbaaqgrgqbaaqgrgqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLabababababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaabababababababababababababababalgykigygygygysLgyalalalalalalalabababababababababababqDtStOtJtJBZtHtItMtNtLqDababababababababaaaaaaaaaaqBqBqBqBqBqBqBaaaaqgrgqbaeqgrgqbaeqgrgqbaeqaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLababababababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaabababababababababababababababalgykigyalalalmRalalabababababababababababababababababqDqGqIqHqQqDqSqRqDqJqKqDabababababababaaaaaaaaaaaaqBqBqBqBqBqBqBaaaaqgqEqbaaqgqEqbaaqgqEqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLababababababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaabababababababababababababababalgykigyalalalmRalalabababababababababababababababababqDtUqItWqQqDqSqRqDqJqKqDabababababababaaaaaaaaaaaaqBqBqBqBqBqBqBaaaaqgqEqbaaqgqEqbaaqgqEqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLababababababababqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaababababababababababababababalgykigyalalalalabababababababababababababababababababqDqVqUqTqQqDClqYqDqXCrqDababababababaaaaaaaaaaaaaaqBqBqBqBqBqBqBaaaaaaaeaaaaaaaeaaaaaaaeaaaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLababababababababqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLabababababqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaabababababababababababababalgykigyalalalababababababababababababababababababababqDqDqDqDqDqDCBrYqDsfCRqDababababaaaaaaaaaaaaaaaaaaqBqBqBqBqBqBqBaatKqaqaqaqaqaqaqaqaqaqaqaqaqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLababababababqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaababababababababababalalgykigyalalababababababababababababababababababababababababababqDqDqDqDqDqDqDababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1796,22 +1798,22 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqL aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLsOEnsOgygyalalalalalalalababababababababababababababababababababababababababababababababababababababababababababababababababababababababtBababziziziziDzzialalalalmRalalaaaaaaaaaaaaaaaaaaaaaaababababababababababababalalgyqygygygyalalalalalababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLgygysPgysPgygygygygygyalalalababababababababababababababababababababababababababababababababababababababababababababababababababababababababpIababziDwEyziArDFgygygygytGgyalalaaaaaaaaaaaaaaaaaaaaababababababababababababalalgyqygygygygyalalalalalalababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLababababababqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLgygygygygygygygyDEDEDEgyalalalababababababababababababababababababababababababababababababababababababababababababababababababababababababababpIababzizMzLDDzJDCgygygygygygygygygyaaaaaaaaaaaaaaaaaaaaababababababkDmRmRmRmRmRgygyqygygygygygygygyalabalalabababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLababababababababqLqLqLqLqLqLqLababababababqLqLqLqLqLqLqLqLqLgygygygygygygygyDVDUDTgyalalalababababababababababababababababababababababababababababababalalalalalalalababababababababababababababababababziDSziziziziziziArDRgygygygygygygygygygygyaaaaaaaaaaaaaaaaaaabababababmRtPsCtQtQtRgyrJqzrigygygygygygygyadabalababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLababababababababqLqLqLqLqLqLqLababababababqLqLqLqLqLqLqLqLqLgygygygygygygygyDVDUDTgyalalalababababababababababababababababababababababababababababababalalalalalalalababababababababababababababababababziDSziziziziziziArDRgygygygygygygygygygygyaaaaaaaaaaaaaaaaaaabababababmRvnsCtQtQvAgyrJqzrigygygygygygygyadabalababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLababababababqLqLqLqLqLqLqLababababababqLqLqLqLalgyzyzyzyzyzyzyDPDQDOzyzyzyzyzygygygyalabababababababababababababababababababababababababababababalalalalalalalalalalalalabababababababababababziziziziDLDMDNziDwEzziDzzixhxhDJCcCdxhgygygygygygyaaaaaaaaaaaaaaaaaaabababalmRudowueueufgyAwDIrPDHAjAjAjAkgygygygygyalabababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLababababababqLqLqLqLqLqLqLabababababqLqLalalalgyzyzxzqzpzszrzuDazwzvznErzlzmsCsCrialalalalabababababababababababababababababababababababababalalalalalalalalalalalalalalalalalabababababababzizhzkzjzIzHzGzizMzLzKzJzizPzOzNzRzNzQgygygygygygygyaaaaaaaaaaaaaaaaaaalalalmRuCuDuEuEpCgyAwzBzAzFzEzAzAzzgygygygygyalababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLabababqLqLqLqLqLqLqLqLabababqLqLabalalalgyzyAdzYAbzZAJBfBeBeBdzXAcAAAIzVzWufalalalalalalabababababababababababababababababababababalalalalalalalalalalalalalalalalalalalalababababababzizTzkzSAoAnAqziziziziArzizPAsAsAuAtAvgygygygygygygyaaaaaaaaaaaaaaaaaagygygygygygygygygygypBzBAgAgAgAizAAlAmAjAkgynDmRalabababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLabababqLqLqLqLqLqLqLqLabababqLqLabalalalgyzyAdzYAbzZAJBfBeBeBdyxAcAAAIzVzWufalalalalalalabababababababababababababababababababababalalalalalalalalalalalalalalalalalalalalababababababzizTzkzSAoAnAqziziziziArzizPAsAsAuAtAvgygygygygygygyaaaaaaaaaaaaaaaaaagygygygygygygygygygypBzBAgAgAgAizAAlAmAjAkgynDmRalabababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLabalalalgyzyAKAHBnBFBEBkAEAGAFznBgAxEuxvBhufalalalalalalalalalabababababababababababababababababalalalmRalalalalalalalalalalalalalalalalalalalalabababziABADEwASARAQAPAOANAMALzizPAsExAVAUATgygygygygygyaaaaaaaaaaaaaaaaaaaaaaaagygygygygywNwNyKxQzBEAAZAYEEzAzAzAzAAXgygygyalalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababalalalgyzyBjBiBIzsBHBGzYBczyzyzyzyzyzyBhufgygygygygygygyalalalalabababababababababababababababalalgytGgygygygygygygygyrJrigygygygygygyalalalalalababziziziziziziziBmBlBJBmBlzixhxhxhBKxhxhxhBoBpgygyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagygyxOxQBqBxBwBvBuBuBtBsBrEQBAByAXgygygymQalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLabababalalgyzyBBBDBCzZzYERzYzYESBXBYBRBVBNBQqpjsjsjsjsjsqngyalalalalalalababababababababababababalalalgypZjsjsjsjsjsjsjsjsqoqpjsjsjsjsqngyalalalalalabababababxhCoCnCmAsAsCpAsAsCjCiAsChAVETCkCkCeCfCcCdEGEFEFEFEFEFEFEFEFEFEFEFEFEFEFyKycCaCbxPBTBSCPBUBWBWDfCTBOBPCxCDgygygymQalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLabababalalgyzyzyzyzyzyzyzyzyzyzyCqzyzyzyzyowufgygygygygykigygygygyalalalalababababababababababalalgygygykigygygygygygygygypBpCgygygygykigyalalalalalalalalalabxhxhxhxhCLCNCMCGCGCGCFCGCGCICHCKCJCODlCGDlCyCyCyCyCyCyCyCyCyCyCyCyCyCyCyDgCzDgCACzCtxPCsEUCwCvCuBrDjCEEVCCsCsCrigyalalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLabababalalgygygygygygygygygygygyAwEWAhowowowufgysMgygygyqqjsjsqngyalalalalababababababababababalgygypZjspYgygygygyalgygysMgygygygygygykigyalalalalalalalalalalalalalxhCZCYAsAsAsAsCXAsCWCVCUDmAsEXCSCcCdEHEHEHEHEHEHEHEHEHEHEHEHEHEHEIyKycyMDcxPDbxPzBzAzAzAzAzAzAzAzAxXuDxJpCqFmQalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLabababalalgyzyBBBDBCzZzYERzYzYESBXBYBRBVBNBQqpjsjsjsjsjsqngyalalalalalalababababababababababababalalalgypZjsjsjsjsjsjsjsjsqoqpjsjsjsjsqngyalalalalalabababababxhCoCnCmAsAsCpAsAsCjCiAsChAVETCkCkCeCfCcCdEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFyKycCaCbxPBTyGBSzXBUBUCPBWBOBPCxCDgygygymQalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLabababalalgyzyzyzyzyzyzyzyzyzyzyCqzyzyzyzyowufgygygygygykigygygygyalalalalababababababababababalalgygygykigygygygygygygygypBpCgygygygykigyalalalalalalalalalabxhxhxhxhCLCNCMCGCGCGCFCGCGCICHCKCJCODlCTDlCyCyCyDfCyCyCyEGCyCyCyDfCyCyCyDgEIDgCACzCtxPCsEUCwCvCuBrDjCEEVCCsCsCrigyalalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLabababalalgygygygygygygygygygygyAwEWAhowowowufgysMgygygyqqjsjsqngyalalalalababababababababababalgygypZjspYgygygygyalgygysMgygygygygygykigyalalalalalalalalalalalalalxhCZCYAsAsAsAsCXAsCWCVCUDmAsEXCSCcCdEHEHEHEHEHEHEHEHEHEHEHEHEHEHEHyKycyMDcxPDbxPzBzAzAzAzAzAzAzAzAxXuDxJpCqFmQalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababalalalalalalalalalgygygypBuDuDuDuDDeApalmRalalgygygygykigyalalalalalabababababalalalalalgypZpYgygygyalalalalalalmRalalalalalgykigyalalalalalalmRalalalalalwVwVDiDuDiwXwXDhDtwXwXwXxIDsxIxhDkgygygyaaaaaaaaaeaaaaaaaeaaaaaaaaaaaeaayTxQxPDqDpDoDnxixixjDvDKEgDxDGDrDrDrqFgyalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababalalalalalalalalalalalalabalalalalalgykigygygygygyalalalalalalalalalalalgykigygyalalalabababababalalalalalalgykigygygyrJrigygytGgygyalalalwVwUwTwZwYwXwWxdxcFaEZwXxgxfxtxhgygygygygygyaaaaaeaaaaaaEDaeaeaeaeaeEDaeaewNwMwPFbwQwQwQwQxrwQwSwQwQxsqFqFqFqFgyalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababalalalalgyqqjsjsjsqngygygygygygygygygygygygygykigyalalabababababababalalalalalalgyqqjsjsjsqoqpjsjsjsqngyalalalwVxwxuFcxxwXxzxBxAFeFdwXxExGxFxhgygygygygygyaeaeaeaeaeaeaeyIyIyIyIyIaeaaaawNxkxoxPxWxRykxixixpxixjwQxKgygygygyalalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababalalalgygygygygyqqqngygyrJrigygypZjsjsjsjsjspYgyalabababababababababalalalalalgygygygygypBpCgygygykigygygygywVwVwVwVwVwXxHxNxAFgFfwXFhymxIxhgygygygygygyaaaaaeaaaaaaaeyIyIyIyIyIaeaaxOxQxPxSFiwQwQwQwQwQwQxTxUwQxKgygygyalalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababalalalgysMgygyqqjsjsqoqpjsjspYgygygygygygygyalabababababababababababalalalalalalalgygygygyalgyqqjsjsqngygygygygygywXEYFkDhwXwXwXowysufyZgygygygygyaaaaaaaeaaaaaaaeyIyIyIyIyIydycybyaxZylytyjyiyhygyfyexYxUwQxKgygygyalalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababalalmRalgygygygypBpCgygygygysMgyalalalalalababababababababababababababalalalalalalalalalgygygygykigygygygygygygygyyAowowowowowowufgygygygygygyaeaeaeaeaeaeaeaeyIyIyIyIyIywyEyxyJyvynxPxPxPyuyoyrFjyyyzwQxKgygygyalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababalalalalalalalalalalalmRalalabababababababababababababababababababababababababalalalalalgykigygygygygygygygyyNuDuDuDuDuDuDpCgygygygygygygyaaaaaaaaaaaaaeyIyIyIyIyIyKycyMyLxPyFyDyDyDzDyHyHyGyByCwQxKgygyzCmRabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababalalmRalgygygygypBpCgygygygysMgyalalalalalababababababababababababababalalalalalalalalalgygygygykigygygygygygygygyyAowowowowowowufgygygygygygyaeaeaeaeaeaeaeaeyIyIyIyIyIywyEFlyJyvynxPxPxPyuyoyrFjyyyzwQxKgygygyalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababalalalalalalalalalalalmRalalabababababababababababababababababababababababababalalalalalgykigygygygygygygygyyNuDuDuDuDuDuDpCgygygygygygygyaaaaaaaaaaaaaeyIyIyIyIyIyKycyMyLxPyFyDyDyDzDyHyHFmyByCwQxKgygyzCmRabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababalalalalalalalalalalalababababababababababababababababababababababababababababalalalalgyqqjsjsjsjsjsjsjsjsyOjsjsjsjsjsjsjsjsyPgygygygygygyaaaaaaaaaaaeyIyIyIyIyIzUaayTxQyUySxPxPxPyRyQyryrxTyVwQxKgygygyalabababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababalalalalalababababababababababababababababababababababababababababababababalalalalgygygygygygygygygygygygygygygygygygygyqygyrJrigygygypzyWaaaaaaEDyIyIyIyIyIEDaaaaaazfzeytzdzczbzayYyXyyxUwQxKgygygyalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababalalalalalalalalalalalalalalalalalalalmRsEDYDWDZDXDWDWDWEcEbEaEaEaEaEaEaEaEaEaEaEaEaENEOEPxPElxPEjEkEhEiEeEdwQxKgyalalalababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 7b67b44e380381e1b2815e56b4c4a97551e35432 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 13 May 2015 17:38:23 +0200 Subject: [PATCH 045/199] Minor proc division. Attempts to discourage the creation of large procs. --- code/controllers/Processes/machinery.dm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/code/controllers/Processes/machinery.dm b/code/controllers/Processes/machinery.dm index dcc1bb207c..c796afa1f9 100644 --- a/code/controllers/Processes/machinery.dm +++ b/code/controllers/Processes/machinery.dm @@ -6,14 +6,16 @@ /datum/controller/process/machinery/doWork() internal_sort() - internal_process() + internal_process_machinery() + internal_process_power() + internal_process_power_drain() /datum/controller/process/machinery/proc/internal_sort() if(machinery_sort_required) machinery_sort_required = 0 machines = dd_sortedObjectList(machines) -/datum/controller/process/machinery/proc/internal_process() +/datum/controller/process/machinery/proc/internal_process_machinery() for(var/obj/machinery/M in machines) if(M && !M.gcDestroyed) #ifdef PROFILE_MACHINES @@ -39,6 +41,7 @@ scheck() +/datum/controller/process/machinery/proc/internal_process_power() for(var/datum/powernet/powerNetwork in powernets) if(istype(powerNetwork) && !powerNetwork.disposed) powerNetwork.reset() @@ -47,6 +50,7 @@ powernets.Remove(powerNetwork) +/datum/controller/process/machinery/proc/internal_process_power_drain() // Currently only used by powersinks. These items get priority processed before machinery for(var/obj/item/I in processing_power_items) if(!I.pwr_drain()) // 0 = Process Kill, remove from processing list. From b95692e484c45134ecfe724b74a786aef1c1b772 Mon Sep 17 00:00:00 2001 From: Daranz Date: Wed, 13 May 2015 13:58:37 -0400 Subject: [PATCH 046/199] Fix a problem in human/has_eyes() --- code/modules/mob/living/carbon/human/human.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index ccbf129293..1cd30fe9ba 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1300,7 +1300,7 @@ /mob/living/carbon/human/has_eyes() if(internal_organs_by_name["eyes"]) var/datum/organ/internal/eyes = internal_organs_by_name["eyes"] - if(eyes && istype(eyes) && !eyes.status & ORGAN_CUT_AWAY) + if(eyes && istype(eyes) && !(eyes.status & ORGAN_CUT_AWAY)) return 1 return 0 From 4b877990725631c3d768e7a3dc9ccd9e93389695 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Wed, 13 May 2015 19:08:39 +0100 Subject: [PATCH 047/199] New tables, code section. Changelog entry soon. --- baystation12.dme | 8 +- code/game/gamemodes/cult/cultify/obj.dm | 12 +- .../game/objects/items/stacks/sheets/glass.dm | 1 + .../objects/items/stacks/sheets/mineral.dm | 1 + .../items/stacks/sheets/sheet_types.dm | 5 +- .../objects/items/weapons/table_rack_parts.dm | 101 ---- code/game/objects/structures/tables_racks.dm | 558 ------------------ code/modules/holodeck/HolodeckObjects.dm | 49 +- code/modules/materials/materials.dm | 10 +- .../living/silicon/robot/drone/drone_items.dm | 2 - .../living/simple_animal/hostile/hostile.dm | 2 +- code/modules/tables/flipping.dm | 116 ++++ code/modules/tables/interactions.dm | 122 ++++ code/modules/tables/presets.dm | 110 ++++ code/modules/tables/rack.dm | 26 + code/modules/tables/tables.dm | 337 +++++++++++ code/modules/tables/update_triggers.dm | 22 + icons/obj/tables.dmi | Bin 0 -> 22339 bytes 18 files changed, 765 insertions(+), 717 deletions(-) delete mode 100644 code/game/objects/items/weapons/table_rack_parts.dm delete mode 100644 code/game/objects/structures/tables_racks.dm create mode 100644 code/modules/tables/flipping.dm create mode 100644 code/modules/tables/interactions.dm create mode 100644 code/modules/tables/presets.dm create mode 100644 code/modules/tables/rack.dm create mode 100644 code/modules/tables/tables.dm create mode 100644 code/modules/tables/update_triggers.dm create mode 100644 icons/obj/tables.dmi diff --git a/baystation12.dme b/baystation12.dme index a1074dc190..42f98251f3 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -629,7 +629,6 @@ #include "code\game\objects\items\weapons\stunbaton.dm" #include "code\game\objects\items\weapons\surgery_tools.dm" #include "code\game\objects\items\weapons\swords_axes_etc.dm" -#include "code\game\objects\items\weapons\table_rack_parts.dm" #include "code\game\objects\items\weapons\tape.dm" #include "code\game\objects\items\weapons\teleportation.dm" #include "code\game\objects\items\weapons\tools.dm" @@ -718,7 +717,6 @@ #include "code\game\objects\structures\noticeboard.dm" #include "code\game\objects\structures\safe.dm" #include "code\game\objects\structures\signs.dm" -#include "code\game\objects\structures\tables_racks.dm" #include "code\game\objects\structures\tank_dispenser.dm" #include "code\game\objects\structures\target_stake.dm" #include "code\game\objects\structures\transit_tubes.dm" @@ -1646,6 +1644,12 @@ #include "code\modules\surgery\robolimbs.dm" #include "code\modules\surgery\slimes.dm" #include "code\modules\surgery\surgery.dm" +#include "code\modules\tables\flipping.dm" +#include "code\modules\tables\interactions.dm" +#include "code\modules\tables\presets.dm" +#include "code\modules\tables\rack.dm" +#include "code\modules\tables\tables.dm" +#include "code\modules\tables\update_triggers.dm" #include "code\modules\vehicles\cargo_train.dm" #include "code\modules\vehicles\train.dm" #include "code\modules\vehicles\vehicle.dm" diff --git a/code/game/gamemodes/cult/cultify/obj.dm b/code/game/gamemodes/cult/cultify/obj.dm index 630877eb11..fd239df50f 100644 --- a/code/game/gamemodes/cult/cultify/obj.dm +++ b/code/game/gamemodes/cult/cultify/obj.dm @@ -149,8 +149,12 @@ ..() /obj/structure/table/cultify() - new /obj/structure/table/woodentable(loc) - ..() + // Make it a wood-reinforced wooden table. + // There are cult materials available, but it'd make the table non-deconstructable with how holotables work. + // Could possibly use a new material var for holographic-ness? + material = name_to_material["wood"] + reinforced = name_to_material["wood"] + update_desc() + update_connections(1) + update_icon() -/obj/structure/table/woodentable/cultify() - return diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index a4d9e631e8..bbb8e32736 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -20,6 +20,7 @@ var/created_window = /obj/structure/window/basic var/is_reinforced = 0 var/list/construction_options = list("One Direction", "Full Window") + sheettype = "glass" /obj/item/stack/sheet/glass/cyborg name = "glass synthesizer" diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index 46415bb8af..1e6fd887f5 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -134,6 +134,7 @@ obj/item/stack/sheet/mineral/iron/New() icon_state = "sheet-plastic" origin_tech = "materials=3" perunit = 2000 + sheettype = "plastic" /obj/item/stack/sheet/mineral/plastic/New() ..() diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 1fefeca1ab..bf35253b08 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -31,8 +31,8 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \ new/datum/stack_recipe("green comfy chair", /obj/structure/bed/chair/comfy/green, 2, one_per_turf = 1, on_floor = 1), \ ), 2), \ null, \ - new/datum/stack_recipe("table parts", /obj/item/weapon/table_parts, 2), \ - new/datum/stack_recipe("rack parts", /obj/item/weapon/table_parts/rack), \ + new/datum/stack_recipe("table frame", /obj/structure/table, 1, time = 10, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("rack", /obj/structure/table/rack, 1, time = 5, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("metal baseball bat", /obj/item/weapon/twohanded/baseballbat/metal, 10, time = 20, one_per_turf = 0, on_floor = 1), \ new/datum/stack_recipe("closet", /obj/structure/closet, 2, time = 15, one_per_turf = 1, on_floor = 1), \ null, \ @@ -163,6 +163,7 @@ var/global/list/datum/stack_recipe/wood_recipes = list ( \ singular_name = "wood plank" icon_state = "sheet-wood" origin_tech = "materials=1;biotech=1" + sheettype = "wood" /obj/item/stack/sheet/wood/cyborg name = "wood synthesizer" diff --git a/code/game/objects/items/weapons/table_rack_parts.dm b/code/game/objects/items/weapons/table_rack_parts.dm deleted file mode 100644 index 8437a5e29f..0000000000 --- a/code/game/objects/items/weapons/table_rack_parts.dm +++ /dev/null @@ -1,101 +0,0 @@ -// Table parts and rack parts - -/obj/item/weapon/table_parts - name = "table parts" - desc = "Parts of a table. Poor table." - gender = PLURAL - icon = 'icons/obj/items.dmi' - icon_state = "table_parts" - matter = list(DEFAULT_WALL_MATERIAL = 3750) - flags = CONDUCT - attack_verb = list("slammed", "bashed", "battered", "bludgeoned", "thrashed", "whacked") - - var/build_type = /obj/structure/table - var/alter_type = /obj/item/weapon/table_parts/reinforced - var/alter_with = /obj/item/stack/rods - var/alter_cost = 4 - var/list/stack_types = list(/obj/item/stack/sheet/metal) - -/obj/item/weapon/table_parts/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/wrench)) - for(var/material_type in stack_types) - new material_type(get_turf(user)) - qdel(src) - return - else - if(alter_type && alter_with && istype(W,alter_with)) - var/obj/item/stack/R = W - if (R.use(alter_cost)) - var/obj/item/new_parts = new alter_type (get_turf(loc)) - user << "You modify \the [name] into \a [new_parts]." - qdel(src) - else - user << "You need at least [alter_cost] sheets to reinforce the [name]." - return - ..() - -/obj/item/weapon/table_parts/attack_self(mob/user as mob) - if(locate(/obj/structure/table) in user.loc) - user << "There is already a table here." - return - - new build_type( user.loc ) - user.drop_item() - qdel(src) - return - -/obj/item/weapon/table_parts/reinforced - name = "reinforced table parts" - desc = "Hard table parts. Well... harder." - icon = 'icons/obj/items.dmi' - icon_state = "reinf_tableparts" - matter = list(DEFAULT_WALL_MATERIAL = 7500) - flags = CONDUCT - - stack_types = list(/obj/item/stack/sheet/metal, /obj/item/stack/rods) - build_type = /obj/structure/table/reinforced - alter_type = null - alter_with = null - alter_cost = null - -/obj/item/weapon/table_parts/wood - name = "wooden table parts" - desc = "Keep away from fire." - icon_state = "wood_tableparts" - flags = null - - stack_types = list(/obj/item/stack/sheet/wood) - build_type = /obj/structure/table/woodentable - alter_type = /obj/item/weapon/table_parts/gambling - alter_with = /obj/item/stack/tile/carpet - alter_cost = 1 - -/obj/item/weapon/table_parts/gambling - name = "gambling table parts" - desc = "Keep away from security." - icon_state = "gamble_tableparts" - flags = null - - stack_types = list(/obj/item/stack/tile/carpet,/obj/item/stack/sheet/wood) - build_type = /obj/structure/table/gamblingtable - alter_type = null - alter_with = null - alter_cost = null - -/obj/item/weapon/table_parts/gambling/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/crowbar)) - new /obj/item/stack/tile/carpet( get_turf(loc) ) - new /obj/item/weapon/table_parts/wood( get_turf(loc) ) - user << "You pry the carpet out of the table." - qdel(src) - ..() - -/obj/item/weapon/table_parts/rack - name = "rack parts" - desc = "Parts of a rack." - icon_state = "rack_parts" - stack_types = list(/obj/item/stack/sheet/metal) - build_type = /obj/structure/table/rack - alter_type = null - alter_with = null - alter_cost = null \ No newline at end of file diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm deleted file mode 100644 index f206bfc11f..0000000000 --- a/code/game/objects/structures/tables_racks.dm +++ /dev/null @@ -1,558 +0,0 @@ -// Tables and racks. - -/obj/structure/table - name = "table" - desc = "A square piece of metal standing on four metal legs. It can not move." - icon = 'icons/obj/structures.dmi' - icon_state = "table" - density = 1 - anchored = 1 - layer = 2.8 - throwpass = 1 - climbable = 1 - breakable = 1 - parts = /obj/item/weapon/table_parts - - var/flipped = 0 - var/health = 100 - -/obj/structure/table/woodentable - name = "wooden table" - desc = "Do not apply fire to this. Rumour says it burns easily." - icon_state = "wood_table" - parts = /obj/item/weapon/table_parts/wood - health = 50 - -/obj/structure/table/gamblingtable - name = "gambling table" - desc = "A curved wooden table with a thin carpet of green fabric." - icon_state = "gamble_table" - parts = /obj/item/weapon/table_parts/gambling - health = 50 - -/obj/structure/table/reinforced - icon_state = "reinf_table" - health = 200 - parts = /obj/item/weapon/table_parts/reinforced - -/obj/structure/table/rack - name = "rack" - desc = "Different from the Middle Ages version." - icon = 'icons/obj/objects.dmi' - icon_state = "rack" - health = 100 - parts = /obj/item/weapon/table_parts/rack - flipped = -1 //Cannot flip. - -/obj/structure/table/examine() - ..() - if(health > 100) - usr << "This one looks like it has been reinforced." - -/obj/structure/table/proc/update_adjacent() - for(var/direction in list(1,2,4,8,5,6,9,10)) - if(locate(/obj/structure/table,get_step(src,direction))) - var/obj/structure/table/T = locate(/obj/structure/table,get_step(src,direction)) - T.update_icon() - -/obj/structure/table/New() - ..() - for(var/obj/structure/table/T in src.loc) - if(T != src) - qdel(T) - update_icon() - update_adjacent() - -/obj/structure/table/Destroy() - update_adjacent() - ..() - -/obj/structure/table/update_icon() - - if(health > 100) - name = "reinforced [initial(name)]" - - spawn(2) //So it properly updates when deleting - - if(flipped == 1) - var/type = 0 - var/tabledirs = 0 - for(var/direction in list(turn(dir,90), turn(dir,-90)) ) - var/obj/structure/table/T = locate(/obj/structure/table,get_step(src,direction)) - if (T && T.flipped == 1 && T.dir == src.dir) - type++ - tabledirs |= direction - var/base = "table" - if (istype(src, /obj/structure/table/woodentable)) - base = "wood" - if (istype(src, /obj/structure/table/reinforced)) - base = "rtable" - - icon_state = "[base]flip[type]" - if (type==1) - if (tabledirs & turn(dir,90)) - icon_state = icon_state+"-" - if (tabledirs & turn(dir,-90)) - icon_state = icon_state+"+" - return 1 - - var/dir_sum = 0 - for(var/direction in list(1,2,4,8,5,6,9,10)) - var/skip_sum = 0 - for(var/obj/structure/window/W in src.loc) - if(W.dir == direction) //So smooth tables don't go smooth through windows - skip_sum = 1 - continue - var/inv_direction //inverse direction - switch(direction) - if(1) - inv_direction = 2 - if(2) - inv_direction = 1 - if(4) - inv_direction = 8 - if(8) - inv_direction = 4 - if(5) - inv_direction = 10 - if(6) - inv_direction = 9 - if(9) - inv_direction = 6 - if(10) - inv_direction = 5 - for(var/obj/structure/window/W in get_step(src,direction)) - if(W.dir == inv_direction) //So smooth tables don't go smooth through windows when the window is on the other table's tile - skip_sum = 1 - continue - if(!skip_sum) //means there is a window between the two tiles in this direction - var/obj/structure/table/T = locate(/obj/structure/table,get_step(src,direction)) - if(T && T.flipped == 0) // This should let us ignore racks for table icons/flipping. Should. - if(direction <5) - dir_sum += direction - else - if(direction == 5) //This permits the use of all table directions. (Set up so clockwise around the central table is a higher value, from north) - dir_sum += 16 - if(direction == 6) - dir_sum += 32 - if(direction == 8) //Aherp and Aderp. Jezes I am stupid. -- SkyMarshal - dir_sum += 8 - if(direction == 10) - dir_sum += 64 - if(direction == 9) - dir_sum += 128 - - var/table_type = 0 //stand_alone table - if(dir_sum%16 in cardinal) - table_type = 1 //endtable - dir_sum %= 16 - if(dir_sum%16 in list(3,12)) - table_type = 2 //1 tile thick, streight table - if(dir_sum%16 == 3) //3 doesn't exist as a dir - dir_sum = 2 - if(dir_sum%16 == 12) //12 doesn't exist as a dir. - dir_sum = 4 - if(dir_sum%16 in list(5,6,9,10)) - if(locate(/obj/structure/table,get_step(src.loc,dir_sum%16))) - table_type = 3 //full table (not the 1 tile thick one, but one of the 'tabledir' tables) - else - table_type = 2 //1 tile thick, corner table (treated the same as streight tables in code later on) - dir_sum %= 16 - if(dir_sum%16 in list(13,14,7,11)) //Three-way intersection - table_type = 5 //full table as three-way intersections are not sprited, would require 64 sprites to handle all combinations. TOO BAD -- SkyMarshal - switch(dir_sum%16) //Begin computation of the special type tables. --SkyMarshal - if(7) - if(dir_sum == 23) - table_type = 6 - dir_sum = 8 - else if(dir_sum == 39) - dir_sum = 4 - table_type = 6 - else if(dir_sum == 55 || dir_sum == 119 || dir_sum == 247 || dir_sum == 183) - dir_sum = 4 - table_type = 3 - else - dir_sum = 4 - if(11) - if(dir_sum == 75) - dir_sum = 5 - table_type = 6 - else if(dir_sum == 139) - dir_sum = 9 - table_type = 6 - else if(dir_sum == 203 || dir_sum == 219 || dir_sum == 251 || dir_sum == 235) - dir_sum = 8 - table_type = 3 - else - dir_sum = 8 - if(13) - if(dir_sum == 29) - dir_sum = 10 - table_type = 6 - else if(dir_sum == 141) - dir_sum = 6 - table_type = 6 - else if(dir_sum == 189 || dir_sum == 221 || dir_sum == 253 || dir_sum == 157) - dir_sum = 1 - table_type = 3 - else - dir_sum = 1 - if(14) - if(dir_sum == 46) - dir_sum = 1 - table_type = 6 - else if(dir_sum == 78) - dir_sum = 2 - table_type = 6 - else if(dir_sum == 110 || dir_sum == 254 || dir_sum == 238 || dir_sum == 126) - dir_sum = 2 - table_type = 3 - else - dir_sum = 2 //These translate the dir_sum to the correct dirs from the 'tabledir' icon_state. - if(dir_sum%16 == 15) - table_type = 4 //4-way intersection, the 'middle' table sprites will be used. - - if(istype(src,/obj/structure/table/reinforced)) - switch(table_type) - if(0) - icon_state = "reinf_table" - if(1) - icon_state = "reinf_1tileendtable" - if(2) - icon_state = "reinf_1tilethick" - if(3) - icon_state = "reinf_tabledir" - if(4) - icon_state = "reinf_middle" - if(5) - icon_state = "reinf_tabledir2" - if(6) - icon_state = "reinf_tabledir3" - else if(istype(src,/obj/structure/table/woodentable)) - switch(table_type) - if(0) - icon_state = "wood_table" - if(1) - icon_state = "wood_1tileendtable" - if(2) - icon_state = "wood_1tilethick" - if(3) - icon_state = "wood_tabledir" - if(4) - icon_state = "wood_middle" - if(5) - icon_state = "wood_tabledir2" - if(6) - icon_state = "wood_tabledir3" - else if(istype(src,/obj/structure/table/gamblingtable)) - switch(table_type) - if(0) - icon_state = "gamble_table" - if(1) - icon_state = "gamble_1tileendtable" - if(2) - icon_state = "gamble_1tilethick" - if(3) - icon_state = "gamble_tabledir" - if(4) - icon_state = "gamble_middle" - if(5) - icon_state = "gamble_tabledir2" - if(6) - icon_state = "gamble_tabledir3" - else - switch(table_type) - if(0) - icon_state = "table" - if(1) - icon_state = "table_1tileendtable" - if(2) - icon_state = "table_1tilethick" - if(3) - icon_state = "tabledir" - if(4) - icon_state = "table_middle" - if(5) - icon_state = "tabledir2" - if(6) - icon_state = "tabledir3" - if (dir_sum in list(1,2,4,8,5,6,9,10)) - set_dir(dir_sum) - else - set_dir(2) - -/obj/structure/table/attack_tk() // no telehulk sorry - return - -/obj/structure/table/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) - if(air_group || (height==0)) return 1 - if(istype(mover,/obj/item/projectile)) - return (check_cover(mover,target)) - if(istype(mover) && mover.checkpass(PASSTABLE)) - return 1 - if(locate(/obj/structure/table) in get_turf(mover)) - return 1 - if (flipped == 1) - if (get_dir(loc, target) == dir) - return !density - else - return 1 - return 0 - -//checks if projectile 'P' from turf 'from' can hit whatever is behind the table. Returns 1 if it can, 0 if bullet stops. -/obj/structure/table/proc/check_cover(obj/item/projectile/P, turf/from) - var/turf/cover - if(flipped==1) - cover = get_turf(src) - else if(flipped==0) - cover = get_step(loc, get_dir(from, loc)) - if(!cover) - return 1 - if (get_dist(P.starting, loc) <= 1) //Tables won't help you if people are THIS close - return 1 - if (get_turf(P.original) == cover) - var/chance = 20 - if (ismob(P.original)) - var/mob/M = P.original - if (M.lying) - chance += 20 //Lying down lets you catch less bullets - if(flipped==1) - if(get_dir(loc, from) == dir) //Flipped tables catch mroe bullets - chance += 20 - else - return 1 //But only from one side - if(prob(chance)) - health -= P.damage/2 - if (health > 0) - visible_message("[P] hits \the [src]!") - return 0 - else - visible_message("[src] breaks down!") - qdel(src) - return 1 - return 1 - -/obj/structure/table/CheckExit(atom/movable/O as mob|obj, target as turf) - if(istype(O) && O.checkpass(PASSTABLE)) - return 1 - if (flipped==1) - if (get_dir(loc, target) == dir) - return !density - else - return 1 - return 1 - -/obj/structure/table/MouseDrop_T(obj/O as obj, mob/user as mob) - - if ((!( istype(O, /obj/item/weapon) ) || user.get_active_hand() != O)) - return ..() - if(isrobot(user)) - return - user.drop_item() - if (O.loc != src.loc) - step(O, get_dir(O, src)) - return - - -/obj/structure/table/attackby(obj/item/W as obj, mob/user as mob) - if (!W) return - - // Handle harm intent grabbing/tabling. - if (istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2) - var/obj/item/weapon/grab/G = W - if (istype(G.affecting, /mob/living)) - var/mob/living/M = G.affecting - if (G.state < 2) - if(user.a_intent == I_HURT) - if (prob(15)) M.Weaken(5) - M.apply_damage(8,def_zone = "head") - visible_message("[G.assailant] slams [G.affecting]'s face against \the [src]!") - playsound(src.loc, 'sound/weapons/tablehit1.ogg', 50, 1) - else - user << "You need a better grip to do that!" - return - else - G.affecting.loc = src.loc - G.affecting.Weaken(5) - visible_message("[G.assailant] puts [G.affecting] on \the [src].") - qdel(W) - return - - // Handle dissembly. - if (istype(W, /obj/item/weapon/wrench)) - if(health > 100) - user << "\The [src] is too well constructed to be collapsed. Weaken it first." - return - user << "You locate the bolts and begin disassembling \the [src]..." - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user,50)) - qdel(src) - return - - // Handle weakening. - if (istype(W, /obj/item/weapon/weldingtool)) - var/obj/item/weapon/weldingtool/WT = W - if(WT.isOn()) - if(initial(health)>100) - if(WT.remove_fuel(0, user)) - if(src.health>100) - user << "You start weakening \the [src]..." - playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) - if(!do_after(user, 50) || !src || health<100 || !WT.isOn()) - return - user << "You have weakened \the [src]." - health -= 100 - else if(src.health <= 100) - user << "You start strengthening \the [src]..." - playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) - if(!do_after(user, 50) || !src || health > 100 || !WT.isOn()) - return - user << "You have strengthened \the [src]." - health += 100 - update_icon() - else - user << "\The [src] is too flimsy to be reinforced or weakened." - return - - - // Handle dismantling or placing things on the table from here on. - if(isrobot(user)) - return - - if(W.loc != user) // This should stop mounted modules ending up outside the module. - return - - if(istype(W, /obj/item/weapon/melee/energy/blade)) - var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() - spark_system.set_up(5, 0, src.loc) - spark_system.start() - playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1) - playsound(src.loc, "sparks", 50, 1) - user.visible_message("The [src] was sliced apart by [user]!") - qdel(src) - - user.drop_item(src.loc) - return - -/obj/structure/table/proc/straight_table_check(var/direction) - var/obj/structure/table/T - for(var/angle in list(-90,90)) - T = locate() in get_step(src.loc,turn(direction,angle)) - if(T && T.flipped == 0) - return 0 - T = locate() in get_step(src.loc,direction) - if (!T || T.flipped == 1) - return 1 - if (istype(T,/obj/structure/table/reinforced/)) - var/obj/structure/table/reinforced/R = T - if (R.health > 100) - return 0 - return T.straight_table_check(direction) - -/obj/structure/table/verb/do_flip() - set name = "Flip table" - set desc = "Flips a non-reinforced table" - set category = "Object" - set src in oview(1) - - if (!can_touch(usr) || ismouse(usr)) - return - - if(flipped < 0 || !flip(get_cardinal_dir(usr,src))) - usr << "It won't budge." - return - - usr.visible_message("[usr] flips \the [src]!") - - if(climbable) - structure_shaken() - - return - -/obj/structure/table/proc/unflipping_check(var/direction) - - for(var/mob/M in oview(src,0)) - return 0 - - var/obj/occupied = turf_is_crowded() - if(occupied) - usr << "There's \a [occupied] in the way." - return 0 - - var/list/L = list() - if(direction) - L.Add(direction) - else - L.Add(turn(src.dir,-90)) - L.Add(turn(src.dir,90)) - for(var/new_dir in L) - var/obj/structure/table/T = locate() in get_step(src.loc,new_dir) - if(T) - if(T.flipped == 1 && T.dir == src.dir && !T.unflipping_check(new_dir)) - return 0 - return 1 - -/obj/structure/table/proc/do_put() - set name = "Put table back" - set desc = "Puts flipped table back" - set category = "Object" - set src in oview(1) - - if (!can_touch(usr)) - return - - if (!unflipping_check()) - usr << "It won't budge." - return - unflip() - -/obj/structure/table/proc/flip(var/direction) - if( !straight_table_check(turn(direction,90)) || !straight_table_check(turn(direction,-90)) ) - return 0 - - verbs -=/obj/structure/table/verb/do_flip - verbs +=/obj/structure/table/proc/do_put - - var/list/targets = list(get_step(src,dir),get_step(src,turn(dir, 45)),get_step(src,turn(dir, -45))) - for (var/atom/movable/A in get_turf(src)) - if (!A.anchored) - spawn(0) - A.throw_at(pick(targets),1,1) - - set_dir(direction) - if(dir != NORTH) - layer = 5 - climbable = 0 //flipping tables allows them to be used as makeshift barriers - flipped = 1 - flags |= ON_BORDER - for(var/D in list(turn(direction, 90), turn(direction, -90))) - var/obj/structure/table/T = locate() in get_step(src,D) - if(T && T.flipped == 0) - T.flip(direction) - update_icon() - update_adjacent() - - return 1 - -/obj/structure/table/proc/unflip() - verbs -=/obj/structure/table/proc/do_put - verbs +=/obj/structure/table/verb/do_flip - - layer = initial(layer) - flipped = 0 - climbable = initial(climbable) - flags &= ~ON_BORDER - for(var/D in list(turn(dir, 90), turn(dir, -90))) - var/obj/structure/table/T = locate() in get_step(src.loc,D) - if(T && T.flipped == 1 && T.dir == src.dir) - T.unflip() - update_icon() - update_adjacent() - - return 1 - -// No need to handle any of this, racks are not contiguous.. -/obj/structure/table/rack/update_icon() - return -/obj/structure/table/rack/update_adjacent() - return \ No newline at end of file diff --git a/code/modules/holodeck/HolodeckObjects.dm b/code/modules/holodeck/HolodeckObjects.dm index b463ec4209..6e5c4c4c5a 100644 --- a/code/modules/holodeck/HolodeckObjects.dm +++ b/code/modules/holodeck/HolodeckObjects.dm @@ -1,5 +1,8 @@ // Holographic Items! +// Holographic tables are in code/modules/tables/presets.dm +// Holographic racks are in code/modules/tables/rack.dm + /turf/simulated/floor/holofloor/ thermal_conductivity = 0 @@ -40,36 +43,6 @@ return // HOLOFLOOR DOES NOT GIVE A FUCK -/obj/structure/table/holotable - name = "table" - desc = "A square piece of metal standing on four metal legs. It can not move." - icon = 'icons/obj/structures.dmi' - icon_state = "table" - density = 1 - anchored = 1.0 - layer = 2.8 - throwpass = 1 //You can throw objects over this, despite it's density. - -/obj/structure/table/holotable/attack_hand(mob/user as mob) - return // HOLOTABLE DOES NOT GIVE A FUCK - - -/obj/structure/table/holotable/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/wrench)) - user << "It's a holotable! There are no bolts!" - return - - if(isrobot(user)) - return - - ..() - -/obj/structure/table/woodentable/holotable - name = "table" - desc = "A square piece of wood standing on four wooden legs. It can not move." - icon = 'icons/obj/structures.dmi' - icon_state = "wood_table" - /obj/structure/holostool name = "stool" desc = "Apply butt." @@ -371,22 +344,6 @@ for(var/mob/M in currentarea) M << "FIGHT!" -//Holorack - -/obj/structure/table/rack/holorack - name = "rack" - desc = "Different from the Middle Ages version." - icon = 'icons/obj/objects.dmi' - icon_state = "rack" - -/obj/structure/table/rack/holorack/attack_hand(mob/user as mob) - return - -/obj/structure/table/rack/holorack/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/wrench)) - user << "It's a holorack! You can't unwrench it!" - return - //Holocarp /mob/living/simple_animal/hostile/carp/holodeck diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 04e8d485ba..55d51c772f 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -149,6 +149,14 @@ var/list/name_to_material stack_type = /obj/item/stack/sheet/mineral/iron icon_colour = "#5C5454" +/material/wood + name = "wood" + stack_type = /obj/item/stack/sheet/wood + icon_colour = "#824B28" + integrity = 25 + icon_base = "solid" + explosion_resistance = 2 + /material/cult name = "cult" display_name = "disturbing stone" @@ -167,4 +175,4 @@ var/list/name_to_material display_name = "human remains" /material/cult/reinf/place_dismantled_product(var/turf/target) - new /obj/effect/decal/remains/human(target) + new /obj/effect/decal/remains/human(target) \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index 5634cda9b6..7452514f17 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -17,8 +17,6 @@ /obj/item/weapon/module/power_control, /obj/item/weapon/stock_parts, /obj/item/frame, - /obj/item/weapon/table_parts, - /obj/item/weapon/table_parts/rack, /obj/item/weapon/camera_assembly, /obj/item/weapon/tank, /obj/item/weapon/circuitboard, diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index cc58a7ce1c..c04857e972 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -238,7 +238,7 @@ D.Open() else if(istype(A,/obj/structure/cult/pylon)) A.attack_generic(src, rand(melee_damage_lower, melee_damage_upper)) - else if(istype(A, /obj/structure/window) || istype(A, /obj/structure/closet) || istype(A, /obj/structure/table) || istype(A, /obj/structure/grille) || istype(A, /obj/structure/table/rack)) + else if(istype(A, /obj/structure/window) || istype(A, /obj/structure/closet) || istype(A, /obj/structure/table) || istype(A, /obj/structure/grille)) A.attack_generic(src, rand(melee_damage_lower, melee_damage_upper)) Move(T) FindTarget() diff --git a/code/modules/tables/flipping.dm b/code/modules/tables/flipping.dm new file mode 100644 index 0000000000..1714d390b4 --- /dev/null +++ b/code/modules/tables/flipping.dm @@ -0,0 +1,116 @@ + +/obj/structure/table/proc/straight_table_check(var/direction) + var/obj/structure/table/T + for(var/angle in list(-90,90)) + T = locate() in get_step(src.loc,turn(direction,angle)) + if(T && T.flipped == 0 && T.material == material) + return 0 + T = locate() in get_step(src.loc,direction) + if (!T || T.flipped == 1 || T.material != material) + return 1 + if(T.health > 100) + return 0 + return T.straight_table_check(direction) + +/obj/structure/table/verb/do_flip() + set name = "Flip table" + set desc = "Flips a non-reinforced table" + set category = "Object" + set src in oview(1) + + if (!can_touch(usr) || ismouse(usr)) + return + + if(flipped < 0 || !flip(get_cardinal_dir(usr,src))) + usr << "It won't budge." + return + + usr.visible_message("[usr] flips \the [src]!") + + if(climbable) + structure_shaken() + + return + +/obj/structure/table/proc/unflipping_check(var/direction) + + for(var/mob/M in oview(src,0)) + return 0 + + var/obj/occupied = turf_is_crowded() + if(occupied) + usr << "There's \a [occupied] in the way." + return 0 + + var/list/L = list() + if(direction) + L.Add(direction) + else + L.Add(turn(src.dir,-90)) + L.Add(turn(src.dir,90)) + for(var/new_dir in L) + var/obj/structure/table/T = locate() in get_step(src.loc,new_dir) + if(T && T.material == material) + if(T.flipped == 1 && T.dir == src.dir && !T.unflipping_check(new_dir)) + return 0 + return 1 + +/obj/structure/table/proc/do_put() + set name = "Put table back" + set desc = "Puts flipped table back" + set category = "Object" + set src in oview(1) + + if (!can_touch(usr)) + return + + if (!unflipping_check()) + usr << "It won't budge." + return + unflip() + +/obj/structure/table/proc/flip(var/direction) + if( !straight_table_check(turn(direction,90)) || !straight_table_check(turn(direction,-90)) ) + return 0 + + verbs -=/obj/structure/table/verb/do_flip + verbs +=/obj/structure/table/proc/do_put + + var/list/targets = list(get_step(src,dir),get_step(src,turn(dir, 45)),get_step(src,turn(dir, -45))) + for (var/atom/movable/A in get_turf(src)) + if (!A.anchored) + spawn(0) + A.throw_at(pick(targets),1,1) + + set_dir(direction) + if(dir != NORTH) + layer = 5 + climbable = 0 //flipping tables allows them to be used as makeshift barriers + flipped = 1 + flags |= ON_BORDER + for(var/D in list(turn(direction, 90), turn(direction, -90))) + var/obj/structure/table/T = locate() in get_step(src,D) + if(T && T.flipped == 0 && T.material == material && material) + T.flip(direction) + update_connections(1) + update_icon() + + return 1 + +/obj/structure/table/proc/unflip() + verbs -=/obj/structure/table/proc/do_put + verbs +=/obj/structure/table/verb/do_flip + + layer = initial(layer) + flipped = 0 + climbable = initial(climbable) + flags &= ~ON_BORDER + for(var/D in list(turn(dir, 90), turn(dir, -90))) + var/obj/structure/table/T = locate() in get_step(src.loc,D) + if(T && T.flipped == 1 && T.dir == src.dir && T.material == material && material) + T.unflip() + + update_connections(1) + update_icon() + + return 1 \ No newline at end of file diff --git a/code/modules/tables/interactions.dm b/code/modules/tables/interactions.dm new file mode 100644 index 0000000000..4ada40596e --- /dev/null +++ b/code/modules/tables/interactions.dm @@ -0,0 +1,122 @@ + +/obj/structure/table/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) + if(air_group || (height==0)) return 1 + if(istype(mover,/obj/item/projectile)) + return (check_cover(mover,target)) + if(istype(mover) && mover.checkpass(PASSTABLE)) + return 1 + if(locate(/obj/structure/table) in get_turf(mover)) + return 1 + if (flipped == 1) + if (get_dir(loc, target) == dir) + return !density + else + return 1 + return 0 + +//checks if projectile 'P' from turf 'from' can hit whatever is behind the table. Returns 1 if it can, 0 if bullet stops. +/obj/structure/table/proc/check_cover(obj/item/projectile/P, turf/from) + var/turf/cover + if(flipped==1) + cover = get_turf(src) + else if(flipped==0) + cover = get_step(loc, get_dir(from, loc)) + if(!cover) + return 1 + if (get_dist(P.starting, loc) <= 1) //Tables won't help you if people are THIS close + return 1 + if (get_turf(P.original) == cover) + var/chance = 20 + if (ismob(P.original)) + var/mob/M = P.original + if (M.lying) + chance += 20 //Lying down lets you catch less bullets + if(flipped==1) + if(get_dir(loc, from) == dir) //Flipped tables catch mroe bullets + chance += 20 + else + return 1 //But only from one side + if(prob(chance)) + health -= P.damage/2 + if (health > 0) + visible_message("[P] hits \the [src]!") + return 0 + else + visible_message("[src] breaks down!") + break_to_parts() + return 1 + return 1 + +/obj/structure/table/CheckExit(atom/movable/O as mob|obj, target as turf) + if(istype(O) && O.checkpass(PASSTABLE)) + return 1 + if (flipped==1) + if (get_dir(loc, target) == dir) + return !density + else + return 1 + return 1 + + +/obj/structure/table/MouseDrop_T(obj/O as obj, mob/user as mob) + + if ((!( istype(O, /obj/item/weapon) ) || user.get_active_hand() != O)) + return ..() + if(isrobot(user)) + return + user.drop_item() + if (O.loc != src.loc) + step(O, get_dir(O, src)) + return + + +/obj/structure/table/attackby(obj/item/W as obj, mob/user as mob) + if (!W) return + + // Handle harm intent grabbing/tabling. + if(istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2) + var/obj/item/weapon/grab/G = W + if (istype(G.affecting, /mob/living)) + var/mob/living/M = G.affecting + if (G.state < 2) + if(user.a_intent == I_HURT) + if (prob(15)) M.Weaken(5) + M.apply_damage(8,def_zone = "head") + visible_message("[G.assailant] slams [G.affecting]'s face against \the [src]!") + playsound(src.loc, 'sound/weapons/tablehit1.ogg', 50, 1) + else + user << "You need a better grip to do that!" + return + else + G.affecting.loc = src.loc + G.affecting.Weaken(5) + visible_message("[G.assailant] puts [G.affecting] on \the [src].") + qdel(W) + return + + // Handle dismantling or placing things on the table from here on. + if(isrobot(user)) + return + + if(W.loc != user) // This should stop mounted modules ending up outside the module. + return + + if(istype(W, /obj/item/weapon/melee/energy/blade)) + var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() + spark_system.set_up(5, 0, src.loc) + spark_system.start() + playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1) + playsound(src.loc, "sparks", 50, 1) + user.visible_message("\The [src] was sliced apart by [user]!") + break_to_parts() + return + + if(!material) + user << "There's nothing to put \the [W] on! Try adding plating to \the [src] first." + return + + user.drop_item(src.loc) + return + +/obj/structure/table/attack_tk() // no telehulk sorry + return diff --git a/code/modules/tables/presets.dm b/code/modules/tables/presets.dm new file mode 100644 index 0000000000..481897c48d --- /dev/null +++ b/code/modules/tables/presets.dm @@ -0,0 +1,110 @@ +var/global/material/material_holographic_steel = null +var/global/material/material_holographic_wood = null + +/obj/structure/table + + standard + icon_state = "plain_preview" + color = "#666666" + New() + material = name_to_material[DEFAULT_WALL_MATERIAL] + ..() + + reinforced + icon_state = "reinf_preview" + color = "#666666" + New() + material = name_to_material[DEFAULT_WALL_MATERIAL] + reinforced = name_to_material[DEFAULT_WALL_MATERIAL] + ..() + + woodentable + icon_state = "plain_preview" + color = "#824B28" + New() + material = name_to_material["wood"] + ..() + + gamblingtable + icon_state = "gamble_preview" + New() + material = name_to_material["wood"] + carpeted = 1 + ..() + + glass + icon_state = "plain_preview" + color = "#00E1FF" + alpha = 77 // 0.3 * 255 + New() + material = name_to_material["glass"] + ..() + + holotable + icon_state = "holo_preview" + color = "#666666" + New() + if(!material_holographic_steel) + material_holographic_steel = new /material/steel + material_holographic_steel.stack_type = null // Tables with null-stacktype materials cannot be deconstructed + material = material_holographic_steel + ..() + + woodentable/holotable + icon_state = "holo_preview" + New() + if(!material_holographic_wood) + material_holographic_wood = new /material/wood + material_holographic_wood.stack_type = null // Tables with null-stacktype materials cannot be deconstructed + material = material_holographic_wood + ..() + +/* + +/obj/structure/table/holotable + name = "table" + desc = "A square piece of metal standing on four metal legs. It can not move." + icon = 'icons/obj/structures.dmi' + icon_state = "table" + density = 1 + anchored = 1.0 + layer = 2.8 + throwpass = 1 //You can throw objects over this, despite it's density. + +/obj/structure/table/holotable/attack_hand(mob/user as mob) + return // HOLOTABLE DOES NOT GIVE A FUCK + + +/obj/structure/table/holotable/attackby(obj/item/weapon/W as obj, mob/user as mob) + if (istype(W, /obj/item/weapon/wrench)) + user << "It's a holotable! There are no bolts!" + return + + if(isrobot(user)) + return + + ..() + +/obj/structure/table/woodentable/holotable + name = "table" + desc = "A square piece of wood standing on four wooden legs. It can not move." + icon = 'icons/obj/structures.dmi' + icon_state = "wood_table" + + +/obj/structure/table/rack/holorack + name = "rack" + desc = "Different from the Middle Ages version." + icon = 'icons/obj/objects.dmi' + icon_state = "rack" + +/obj/structure/table/rack/holorack/attack_hand(mob/user as mob) + return + +/obj/structure/table/rack/holorack/attackby(obj/item/weapon/W as obj, mob/user as mob) + if (istype(W, /obj/item/weapon/wrench)) + user << "It's a holorack! You can't unwrench it!" + return + + +*/ diff --git a/code/modules/tables/rack.dm b/code/modules/tables/rack.dm new file mode 100644 index 0000000000..bd3ee6ce55 --- /dev/null +++ b/code/modules/tables/rack.dm @@ -0,0 +1,26 @@ +/obj/structure/table/rack + name = "rack" + desc = "Different from the Middle Ages version." + icon = 'icons/obj/objects.dmi' + icon_state = "rack" + can_plate = 0 + can_reinforce = 0 + flipped = -1 + +/obj/structure/table/rack/New() + ..() + verbs -= /obj/structure/table/verb/do_flip + verbs -= /obj/structure/table/proc/do_put + +/obj/structure/table/rack/update_connections() + return + +/obj/structure/table/rack/update_desc() + return + +/obj/structure/table/rack/update_icon() + return + +/obj/structure/table/rack/holorack/dismantle(obj/item/weapon/wrench/W, mob/user) + user << "You cannot dismantle \the [src]." + return diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm new file mode 100644 index 0000000000..1b389323f9 --- /dev/null +++ b/code/modules/tables/tables.dm @@ -0,0 +1,337 @@ + + +/obj/structure/table + name = "table frame" + icon = 'icons/obj/tables.dmi' + icon_state = "frame" + desc = "It's a table, for putting things on. Or standing on, if you really want to." + density = 1 + anchored = 1 + climbable = 1 + var/flipped = 0 + var/maxhealth = 10 + var/health = 10 + + // For racks. + var/can_reinforce = 1 + var/can_plate = 1 + + var/material/material = null + var/material/reinforced = null + + // Gambling tables. I'd prefer reinforced with carpet/felt/cloth/whatever, but AFAIK it's either harder or impossible to get /obj/item/stack/sheet of those. + // Convert if/when you can easily get stacks of these. + var/carpeted = 0 + + var/list/connections = list("nw0", "ne0", "sw0", "se0") + +/obj/structure/table/proc/update_material() + var/old_maxhealth = maxhealth + if(!material) + maxhealth = 10 + else + maxhealth = material.integrity / 2 + + if(reinforced) + maxhealth += reinforced.integrity / 2 + + health += maxhealth - old_maxhealth + +/obj/structure/table/New() + ..() + // One table per turf. + for(var/obj/structure/table/T in loc) + if(T != src) + // There's another table here that's not us, break to metal. + // break_to_parts calls qdel(src) + break_to_parts(full_return = 1) + return + +/obj/structure/table/initialize() + ..() + // reset color/alpha, since they're set for nice map previews + color = "#ffffff" + alpha = 255 + update_connections(1) + update_icon() + update_desc() + +/obj/structure/table/Destroy() + material = null + update_connections(1) // Update tables around us to ignore us (material=null forces no connections) + for(var/obj/structure/table/T in oview(src, 1)) + T.update_icon() + ..() + +/obj/structure/table/attackby(obj/item/weapon/W, mob/user) + + if(reinforced && istype(W, /obj/item/weapon/screwdriver)) + remove_reinforced(W, user) + if(!reinforced) + update_desc() + update_icon() + return 1 + + if(!reinforced && material && istype(W, /obj/item/weapon/wrench)) + remove_material(W, user) + if(!material) + update_connections(1) + update_icon() + return 1 + + if(!reinforced && !material && istype(W, /obj/item/weapon/wrench)) + dismantle(W, user) + return 1 + + if(!material && can_plate && istype(W, /obj/item/stack/sheet)) + material = common_material_add(W, user, "plat") + if(material) + update_connections(1) + update_icon() + return 1 + + return ..() + +/obj/structure/table/MouseDrop_T(obj/item/stack/sheet/what) + if(can_reinforce && isliving(usr) && (!usr.stat) && istype(what) && usr.get_active_hand() == what && Adjacent(usr)) + reinforce_table(what, usr) + else + return ..() + +/obj/structure/table/proc/reinforce_table(obj/item/stack/sheet/S, mob/user) + if(reinforced) + user << "\The [src] is already reinforced!" + return + + if(!can_reinforce) + user << "\The [src] cannot be reinforced!" + + reinforced = common_material_add(S, user, "reinforc") + if(reinforced) + update_desc() + update_icon() + +/obj/structure/table/proc/update_desc() + if(material) + name = "[material.display_name] table" + else + name = "table frame" + + if(reinforced) + name = "reinforced [name]" + desc = "[initial(desc)] This one seems to be reinforced with [reinforced.display_name]." + else + desc = initial(desc) + +// Returns the material to set the table to. +/obj/structure/table/proc/common_material_add(obj/item/stack/sheet/S, mob/user, verb) // Verb is actually verb without 'e' or 'ing', which is added. Works for 'plate'/'plating' and 'reinforce'/'reinforcing'. + var/material/M = name_to_material[S.sheettype] + if(!istype(M)) + user << "You cannot [verb]e \the [src] with \the [S]." + return null + user << "You begin [verb]ing \the [src] with [M.display_name]." + if(!do_after(user, 20) || !S.use(1)) + return null + user.visible_message("\The [user] [verb]es \the [src] with [M.display_name].", "You finish [verb]ing \the [src].") + return M + +// Returns the material to set the table to. +/obj/structure/table/proc/common_material_remove(mob/user, material/M, delay, what, type_holding) + if(!M.stack_type) + user << "You are unable to remove the [what] from this table!" + return M + + user.visible_message("\The [user] begins removing the [type_holding] holding \the [src]'s [M.display_name] [what] in place.", + "You begin removing the [type_holding] holding \the [src]'s [M.display_name] [what] in place.") + if(!do_after(user, 40)) + return M + user.visible_message("\The [user] removes the [M.display_name] [what] from \the [src].", + "You remove the [M.display_name] [what] from \the [src].") + new M.stack_type(src.loc) + return null + +/obj/structure/table/proc/remove_reinforced(obj/item/weapon/screwdriver/S, mob/user) + reinforced = common_material_remove(user, reinforced, 40, "reinforcements", "screws") + +/obj/structure/table/proc/remove_material(obj/item/weapon/wrench/W, mob/user) + material = common_material_remove(user, material, 20, "plating", "bolts") + +/obj/structure/table/proc/dismantle(obj/item/weapon/wrench/W, mob/user) + user.visible_message("\The [user] begins dismantling \the [src].", + "You begin dismantling \the [src].") + if(!do_after(user, 20)) + return + user.visible_message("\The [user] dismantles \the [src].", + "You dismantle \the [src].") + new /obj/item/stack/sheet/metal(src.loc) + +/obj/structure/table/proc/break_to_parts(full_return = 0) + if(reinforced && reinforced.stack_type && (full_return || prob(25))) + new reinforced.stack_type(src.loc) + if(material && material.stack_type && (full_return || prob(50))) + new material.stack_type(src.loc) + if(full_return || prob(50)) + new /obj/item/stack/sheet/metal(src.loc) + qdel(src) + return + +/obj/structure/table/update_icon() + if(flipped != 1) + icon_state = "blank" + overlays.Cut() + + // Base frame shape. Mostly done for glass/diamond tables, where this is visible. + for(var/n in connections) + overlays += n + + // Standard table image + if(material) + for(var/n in connections) + var/image/I = image(icon, "[material.icon_base]_[n]") + I.color = material.icon_colour + I.alpha = 255 * material.opacity + overlays += I + + // Reinforcements + if(reinforced) + for(var/n in connections) + var/image/I = image(icon, "[reinforced.icon_reinf]_[n]") + I.color = reinforced.icon_colour + I.alpha = 255 * reinforced.opacity + overlays += I + + if(carpeted) + for(var/n in connections) + overlays += "carpet_[n]" + else + overlays.Cut() + var/type = 0 + var/tabledirs = 0 + for(var/direction in list(turn(dir,90), turn(dir,-90)) ) + var/obj/structure/table/T = locate(/obj/structure/table ,get_step(src,direction)) + if (T && T.flipped == 1 && T.dir == src.dir && T.material == material) + type++ + tabledirs |= direction + + type = "[type]" + if (type=="1") + if (tabledirs & turn(dir,90)) + type += "-" + if (tabledirs & turn(dir,-90)) + type += "+" + + icon_state = "flip[type]" + if(material) + var/image/I = image(icon, "[material.icon_base]_flip[type]") + I.color = material.icon_colour + I.alpha = 255 * material.opacity + overlays += I + name = "[material.display_name] table" + else + name = "table frame" + + if(reinforced) + var/image/I = image(icon, "[reinforced.icon_reinf]_flip[type]") + I.color = reinforced.icon_colour + I.alpha = 255 * reinforced.opacity + overlays += I + + if(carpeted) + for(var/n in connections) + overlays += "carpet_flip[type]" + +// set propagate if you're updating a table that should update tables around it too, for example if it's a new table or something important has changed (like material). +/obj/structure/table/proc/update_connections(propagate=0) + if(!material) + connections = list("nw0", "ne0", "sw0", "se0") + + if(propagate) + for(var/obj/structure/table/T in oview(src, 1)) + T.update_connections() + return + + var/list/blocked_dirs = list() + for(var/obj/structure/window/W in get_turf(src)) + if(W.is_fulltile()) + connections = list("nw0", "ne0", "sw0", "se0") + return + blocked_dirs |= W.dir + + for(var/D in list(NORTH, SOUTH, EAST, WEST) - blocked_dirs) + var/turf/T = get_step(src, D) + for(var/obj/structure/window/W in T) + if(W.is_fulltile() || W.dir == reverse_dir[D]) + blocked_dirs |= D + break + else + if(W.dir != D) // it's off to the side + blocked_dirs |= W.dir|D // blocks the diagonal + + for(var/D in list(NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST) - blocked_dirs) + var/turf/T = get_step(src, D) + + for(var/obj/structure/window/W in T) + if(W.is_fulltile() || W.dir & reverse_dir[D]) + blocked_dirs |= D + break + + // Blocked cardinals block the adjacent diagonals too. Prevents weirdness with tables. + for(var/x in list(NORTH, SOUTH)) + for(var/y in list(EAST, WEST)) + if((x in blocked_dirs) || (y in blocked_dirs)) + blocked_dirs |= x|y + + var/list/connection_dirs = list() + + for(var/obj/structure/table/T in oview(src, 1)) + var/T_dir = get_dir(src, T) + if(T_dir in blocked_dirs) continue + if(material == T.material && flipped == T.flipped) + connection_dirs |= T_dir + if(propagate) + spawn(0) + T.update_connections() + T.update_icon() + + connections = dirs_to_corner_states(connection_dirs) + +#define CORNER_NONE 0 +#define CORNER_EASTWEST 1 +#define CORNER_DIAGONAL 2 +#define CORNER_NORTHSOUTH 4 + +/proc/dirs_to_corner_states(list/dirs) + if(!istype(dirs)) return + + var/NE = CORNER_NONE + var/NW = CORNER_NONE + var/SE = CORNER_NONE + var/SW = CORNER_NONE + + if(NORTH in dirs) + NE |= CORNER_NORTHSOUTH + NW |= CORNER_NORTHSOUTH + if(SOUTH in dirs) + SW |= CORNER_NORTHSOUTH + SE |= CORNER_NORTHSOUTH + if(EAST in dirs) + SE |= CORNER_EASTWEST + NE |= CORNER_EASTWEST + if(WEST in dirs) + NW |= CORNER_EASTWEST + SW |= CORNER_EASTWEST + if(NORTHWEST in dirs) + NW |= CORNER_DIAGONAL + if(NORTHEAST in dirs) + NE |= CORNER_DIAGONAL + if(SOUTHEAST in dirs) + SE |= CORNER_DIAGONAL + if(SOUTHWEST in dirs) + SW |= CORNER_DIAGONAL + + return list("ne[NE]", "se[SE]", "sw[SW]", "nw[NW]") + +#undef CORNER_NONE +#undef CORNER_EASTWEST +#undef CORNER_DIAGONAL +#undef CORNER_NORTHSOUTH \ No newline at end of file diff --git a/code/modules/tables/update_triggers.dm b/code/modules/tables/update_triggers.dm new file mode 100644 index 0000000000..a90e3eeb8a --- /dev/null +++ b/code/modules/tables/update_triggers.dm @@ -0,0 +1,22 @@ +/obj/structure/window/New() + ..() + for(var/obj/structure/table/T in view(src, 1)) + T.update_connections() + T.update_icon() + +/obj/structure/window/Destroy() + var/oldloc = loc + loc=null + for(var/obj/structure/table/T in view(oldloc, 1)) + T.update_connections() + T.update_icon() + loc=oldloc + ..() + +/obj/structure/window/Move() + var/oldloc = loc + . = ..() + if(loc != oldloc) + for(var/obj/structure/table/T in view(oldloc, 1) | view(loc, 1)) + T.update_connections() + T.update_icon() \ No newline at end of file diff --git a/icons/obj/tables.dmi b/icons/obj/tables.dmi new file mode 100644 index 0000000000000000000000000000000000000000..429969fc86234b2db96ea21c7d10196b9d4eead3 GIT binary patch literal 22339 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 AT>t<8 From a101855343baa6fdfd77af554de8742146225b89 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 00:15:46 +0930 Subject: [PATCH 129/199] Converted over hatchets and scythes. --- code/datums/supplypacks.dm | 10 +-- code/game/machinery/autolathe_datums.dm | 6 +- .../objects/items/stacks/sheets/leather.dm | 2 +- .../objects/items/weapons/material/misc.dm | 62 +++++++++++++++++ .../objects/items/weapons/storage/belt.dm | 4 +- code/game/objects/items/weapons/tools.dm | 2 +- .../closets/secure/hydroponics.dm | 4 +- .../structures/crates_lockers/crates.dm | 2 +- code/modules/clothing/suits/jobs.dm | 2 +- .../clothing/under/accessories/storage.dm | 6 +- code/modules/hydroponics/grown.dm | 2 +- code/modules/hydroponics/grown_inedible.dm | 2 +- code/modules/hydroponics/trays/tray.dm | 2 +- code/modules/hydroponics/trays/tray_apiary.dm | 2 +- .../hydroponics/trays/tray_reagents.dm | 2 +- code/modules/hydroponics/trays/tray_tools.dm | 66 ------------------- code/modules/mob/living/bot/farmbot.dm | 4 +- .../mob/living/silicon/robot/robot_modules.dm | 4 +- .../artifact/artifact_replicator.dm | 2 +- code/modules/surgery/encased.dm | 2 +- code/modules/surgery/generic.dm | 2 +- code/modules/surgery/slimes.dm | 2 +- maps/exodus-1.dmm | 10 +-- maps/exodus-2.dmm | 2 +- maps/exodus-5.dmm | 2 +- 25 files changed, 101 insertions(+), 105 deletions(-) diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 1a7a9b8ae0..288f318b1c 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -271,12 +271,12 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/weapon/reagent_containers/spray/plantbgone, /obj/item/weapon/reagent_containers/glass/bottle/ammonia, /obj/item/weapon/reagent_containers/glass/bottle/ammonia, - /obj/item/weapon/hatchet, - /obj/item/weapon/minihoe, + /obj/item/weapon/material/hatchet, + /obj/item/weapon/material/minihoe, /obj/item/device/analyzer/plant_analyzer, /obj/item/clothing/gloves/botanic_leather, /obj/item/clothing/suit/apron, - /obj/item/weapon/minihoe, + /obj/item/weapon/material/minihoe, /obj/item/weapon/storage/box/botanydisk ) // Updated with new things cost = 15 @@ -337,8 +337,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/weedcontrol name = "Weed control crate" - contains = list(/obj/item/weapon/hatchet, - /obj/item/weapon/hatchet, + contains = list(/obj/item/weapon/material/hatchet, + /obj/item/weapon/material/hatchet, /obj/item/weapon/reagent_containers/spray/plantbgone, /obj/item/weapon/reagent_containers/spray/plantbgone, /obj/item/weapon/reagent_containers/spray/plantbgone, diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 90486e64eb..d1f8ccf892 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -84,12 +84,12 @@ /datum/autolathe/recipe/hatchet name = "hatchet" - path = /obj/item/weapon/hatchet + path = /obj/item/weapon/material/hatchet category = "Tools" /datum/autolathe/recipe/minihoe name = "mini hoe" - path = /obj/item/weapon/minihoe + path = /obj/item/weapon/material/minihoe category = "Tools" /datum/autolathe/recipe/radio_headset @@ -369,7 +369,7 @@ /datum/autolathe/recipe/tacknife name = "tactical knife" - path = /obj/item/weapon/hatchet/tacknife + path = /obj/item/weapon/material/hatchet/tacknife hidden = 1 category = "Arms and Ammunition" diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index 56ce1dba67..4090b9d2f2 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -94,7 +94,7 @@ if( istype(W, /obj/item/weapon/material/knife) || \ istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || \ istype(W, /obj/item/weapon/material/twohanded/fireaxe) || \ - istype(W, /obj/item/weapon/hatchet) ) + istype(W, /obj/item/weapon/material/hatchet) ) //visible message on mobs is defined as visible_message(var/message, var/self_message, var/blind_message) usr.visible_message("\blue \the [usr] starts cutting hair off \the [src]", "\blue You start cutting the hair off \the [src]", "You hear the sound of a knife rubbing against flesh") diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index 697410626d..61570ef0fa 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -9,3 +9,65 @@ throwforce = 15 w_class = 3 attack_verb = list("jabbed","stabbed","ripped") + +/obj/item/weapon/material/hatchet + name = "hatchet" + desc = "A very sharp axe blade upon a short fibremetal handle. It has a long history of chopping things, but now it is used for chopping wood." + icon = 'icons/obj/weapons.dmi' + icon_state = "hatchet" + flags = CONDUCT + force = 12.0 + w_class = 2 + throwforce = 15 + throw_speed = 4 + throw_range = 4 + sharp = 1 + edge = 1 + matter = list(DEFAULT_WALL_MATERIAL = 15000) + origin_tech = "materials=2;combat=1" + attack_verb = list("chopped", "torn", "cut") + applies_material_colour = 0 + +/obj/item/weapon/material/hatchet/unathiknife + name = "duelling knife" + desc = "A length of leather-bound wood studded with razor-sharp teeth. How crude." + icon = 'icons/obj/weapons.dmi' + icon_state = "unathiknife" + attack_verb = list("ripped", "torn", "cut") + default_material = "bone" + +/obj/item/weapon/material/hatchet/tacknife + name = "tactical knife" + desc = "You'd be killing loads of people if this was Medal of Valor: Heroes of Nyx." + icon = 'icons/obj/weapons.dmi' + icon_state = "tacknife" + item_state = "knife" + attack_verb = list("stabbed", "chopped", "cut") + applies_material_colour = 1 + +/obj/item/weapon/material/minihoe // -- Numbers + name = "mini hoe" + desc = "It's used for removing weeds or scratching your back." + icon = 'icons/obj/weapons.dmi' + icon_state = "hoe" + item_state = "hoe" + flags = CONDUCT | NOBLUDGEON + force = 5 + throwforce = 7 + w_class = 2 + matter = list(DEFAULT_WALL_MATERIAL = 50) + attack_verb = list("slashed", "sliced", "cut", "clawed") + +/obj/item/weapon/material/scythe + icon_state = "scythe0" + name = "scythe" + desc = "A sharp and curved blade on a long fibremetal handle, this tool makes it easy to reap what you sow." + force = 13 + throwforce = 5 + throw_speed = 1 + throw_range = 3 + w_class = 4 + flags = NOSHIELD + slot_flags = SLOT_BACK + origin_tech = "materials=2;combat=2" + attack_verb = list("chopped", "sliced", "cut", "reaped") diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 79b1852e7b..7080cd1931 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -33,8 +33,8 @@ /obj/item/device/analyzer, /obj/item/taperoll/engineering, /obj/item/device/robotanalyzer, - /obj/item/weapon/minihoe, - /obj/item/weapon/hatchet, + /obj/item/weapon/material/minihoe, + /obj/item/weapon/material/hatchet, /obj/item/device/analyzer/plant_analyzer, /obj/item/weapon/extinguisher/mini ) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 59be97631e..41d1f8d63f 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -494,7 +494,7 @@ /obj/item/weapon/wirecutters, /obj/item/weapon/material/kitchen/utensil/knife, /obj/item/weapon/material/kitchen/utensil/fork, - /obj/item/weapon/hatchet + /obj/item/weapon/material/hatchet ) var/list/tools = list() var/current_tool = 1 diff --git a/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm b/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm index 019d4873bc..bf7aa92fa6 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm @@ -21,8 +21,8 @@ new /obj/item/device/analyzer/plant_analyzer(src) new /obj/item/device/radio/headset/headset_service(src) new /obj/item/clothing/head/greenbandana(src) - new /obj/item/weapon/minihoe(src) - new /obj/item/weapon/hatchet(src) + new /obj/item/weapon/material/minihoe(src) + new /obj/item/weapon/material/hatchet(src) new /obj/item/weapon/wirecutters/clippers(src) new /obj/item/weapon/reagent_containers/spray/plantbgone(src) // new /obj/item/weapon/bee_net(src) //No more bees, March 2014 diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 95e8c06e85..96bdae2336 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -486,7 +486,7 @@ ..() new /obj/item/weapon/reagent_containers/spray/plantbgone(src) new /obj/item/weapon/reagent_containers/spray/plantbgone(src) - new /obj/item/weapon/minihoe(src) + new /obj/item/weapon/material/minihoe(src) // new /obj/item/weapon/weedspray(src) // new /obj/item/weapon/weedspray(src) // new /obj/item/weapon/pestspray(src) diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index c4584e7416..e4188212c7 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -10,7 +10,7 @@ item_state = "apron" blood_overlay_type = "armor" body_parts_covered = 0 - allowed = list (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/device/analyzer/plant_analyzer,/obj/item/seeds,/obj/item/weapon/reagent_containers/glass/fertilizer,/obj/item/weapon/minihoe) + allowed = list (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/device/analyzer/plant_analyzer,/obj/item/seeds,/obj/item/weapon/reagent_containers/glass/fertilizer,/obj/item/weapon/material/minihoe) sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') //Captain /obj/item/clothing/suit/captunic diff --git a/code/modules/clothing/under/accessories/storage.dm b/code/modules/clothing/under/accessories/storage.dm index 53cc648eb5..8ef17ca0b1 100644 --- a/code/modules/clothing/under/accessories/storage.dm +++ b/code/modules/clothing/under/accessories/storage.dm @@ -72,11 +72,11 @@ /obj/item/clothing/accessory/storage/knifeharness/New() ..() hold.max_storage_space = 4 - hold.can_hold = list(/obj/item/weapon/hatchet/unathiknife,\ + hold.can_hold = list(/obj/item/weapon/material/hatchet/unathiknife,\ /obj/item/weapon/material/kitchen/utensil/knife,\ /obj/item/weapon/material/kitchen/utensil/knife/plastic,\ /obj/item/weapon/material/knife,\ /obj/item/weapon/material/knife/ritual) - new /obj/item/weapon/hatchet/unathiknife(hold) - new /obj/item/weapon/hatchet/unathiknife(hold) + new /obj/item/weapon/material/hatchet/unathiknife(hold) + new /obj/item/weapon/material/hatchet/unathiknife(hold) diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 2f6dc0ad73..0f8d214c8e 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -192,7 +192,7 @@ qdel(src) return else if(seed.chems) - if(istype(W,/obj/item/weapon/hatchet) && !isnull(seed.chems["woodpulp"])) + if(istype(W,/obj/item/weapon/material/hatchet) && !isnull(seed.chems["woodpulp"])) user.show_message("You make planks out of \the [src]!", 1) for(var/i=0,i<2,i++) var/obj/item/stack/sheet/wood/NG = new (user.loc) diff --git a/code/modules/hydroponics/grown_inedible.dm b/code/modules/hydroponics/grown_inedible.dm index 94e8e5a0e1..01fd8764d8 100644 --- a/code/modules/hydroponics/grown_inedible.dm +++ b/code/modules/hydroponics/grown_inedible.dm @@ -45,7 +45,7 @@ /obj/item/weapon/corncob/attackby(obj/item/weapon/W as obj, mob/user as mob) ..() - if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/hatchet) || istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/material/knife/ritual)) + if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/material/hatchet) || istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/material/knife/ritual)) user << "You use [W] to fashion a pipe out of the corn cob!" new /obj/item/clothing/mask/smokable/pipe/cobpipe (user.loc) qdel(src) diff --git a/code/modules/hydroponics/trays/tray.dm b/code/modules/hydroponics/trays/tray.dm index ea20f2c0e3..7726775a1d 100644 --- a/code/modules/hydroponics/trays/tray.dm +++ b/code/modules/hydroponics/trays/tray.dm @@ -475,7 +475,7 @@ else user << "\The [src] already has seeds in it!" - else if (istype(O, /obj/item/weapon/minihoe)) // The minihoe + else if (istype(O, /obj/item/weapon/material/minihoe)) // The minihoe if(weedlevel > 0) user.visible_message("[user] starts uprooting the weeds.", "You remove the weeds from the [src].") diff --git a/code/modules/hydroponics/trays/tray_apiary.dm b/code/modules/hydroponics/trays/tray_apiary.dm index 4ac67613a6..80280fecde 100644 --- a/code/modules/hydroponics/trays/tray_apiary.dm +++ b/code/modules/hydroponics/trays/tray_apiary.dm @@ -63,7 +63,7 @@ else user << "\blue You insert [O] into [src]. Now it just needs some bees." qdel(O) - else if(istype(O, /obj/item/weapon/minihoe)) + else if(istype(O, /obj/item/weapon/material/minihoe)) if(health > 0) user << "\red You begin to dislodge the apiary from the tray, the bees don't like that." angry_swarm(user) diff --git a/code/modules/hydroponics/trays/tray_reagents.dm b/code/modules/hydroponics/trays/tray_reagents.dm index 8dac48ca8a..7583deae41 100644 --- a/code/modules/hydroponics/trays/tray_reagents.dm +++ b/code/modules/hydroponics/trays/tray_reagents.dm @@ -48,7 +48,7 @@ toxicity = 8 pest_kill_str = 7 -/obj/item/weapon/minihoe // -- Numbers +/obj/item/weapon/material/minihoe // -- Numbers name = "mini hoe" desc = "It's used for removing weeds or scratching your back." icon = 'icons/obj/weapons.dmi' diff --git a/code/modules/hydroponics/trays/tray_tools.dm b/code/modules/hydroponics/trays/tray_tools.dm index 912d06b3d1..42fa0fb626 100644 --- a/code/modules/hydroponics/trays/tray_tools.dm +++ b/code/modules/hydroponics/trays/tray_tools.dm @@ -204,69 +204,3 @@ user << browse(dat,"window=plant_analyzer") return - -/obj/item/weapon/minihoe // -- Numbers - name = "mini hoe" - desc = "It's used for removing weeds or scratching your back." - icon = 'icons/obj/weapons.dmi' - icon_state = "hoe" - item_state = "hoe" - flags = CONDUCT | NOBLUDGEON - force = 5.0 - throwforce = 7.0 - w_class = 2.0 - matter = list(DEFAULT_WALL_MATERIAL = 50) - attack_verb = list("slashed", "sliced", "cut", "clawed") - -//Hatchets and things to kill kudzu -/obj/item/weapon/hatchet - name = "hatchet" - desc = "A very sharp axe blade upon a short fibremetal handle. It has a long history of chopping things, but now it is used for chopping wood." - icon = 'icons/obj/weapons.dmi' - icon_state = "hatchet" - flags = CONDUCT - force = 12.0 - w_class = 2 - throwforce = 15.0 - throw_speed = 4 - throw_range = 4 - sharp = 1 - edge = 1 - matter = list(DEFAULT_WALL_MATERIAL = 15000) - origin_tech = "materials=2;combat=1" - attack_verb = list("chopped", "torn", "cut") - -/obj/item/weapon/hatchet/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) - return ..() - -//If it's a hatchet it goes here. I guess -/obj/item/weapon/hatchet/unathiknife - name = "duelling knife" - desc = "A length of leather-bound wood studded with razor-sharp teeth. How crude." - icon = 'icons/obj/weapons.dmi' - icon_state = "unathiknife" - attack_verb = list("ripped", "torn", "cut") - -/obj/item/weapon/hatchet/tacknife - name = "tactical knife" - desc = "You'd be killing loads of people if this was Medal of Valor: Heroes of Nyx." - icon = 'icons/obj/weapons.dmi' - icon_state = "tacknife" - item_state = "knife" - attack_verb = list("stabbed", "chopped", "cut") - - -/obj/item/weapon/scythe - icon_state = "scythe0" - name = "scythe" - desc = "A sharp and curved blade on a long fibremetal handle, this tool makes it easy to reap what you sow." - force = 13.0 - throwforce = 5.0 - throw_speed = 1 - throw_range = 3 - w_class = 4.0 - flags = NOSHIELD - slot_flags = SLOT_BACK - origin_tech = "materials=2;combat=2" - attack_verb = list("chopped", "sliced", "cut", "reaped") diff --git a/code/modules/mob/living/bot/farmbot.dm b/code/modules/mob/living/bot/farmbot.dm index f1c84f3866..489a856eb8 100644 --- a/code/modules/mob/living/bot/farmbot.dm +++ b/code/modules/mob/living/bot/farmbot.dm @@ -241,7 +241,7 @@ visible_message("[src] blows apart!") var/turf/Tsec = get_turf(src) - new /obj/item/weapon/minihoe(Tsec) + new /obj/item/weapon/material/minihoe(Tsec) new /obj/item/weapon/reagent_containers/glass/bucket(Tsec) new /obj/item/device/assembly/prox_sensor(Tsec) new /obj/item/device/analyzer/plant_analyzer(Tsec) @@ -326,7 +326,7 @@ user.remove_from_mob(W) qdel(W) - else if((istype(W, /obj/item/weapon/minihoe)) && (build_step == 2)) + else if((istype(W, /obj/item/weapon/material/minihoe)) && (build_step == 2)) build_step++ user << "You add a minihoe to [src]." name = "farmbot assembly with bucket and minihoe" diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 1b15a3681f..decf9304a0 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -484,8 +484,8 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/device/flash(src) src.modules += new /obj/item/weapon/gripper/service(src) src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src) - src.modules += new /obj/item/weapon/minihoe(src) - src.modules += new /obj/item/weapon/hatchet(src) + src.modules += new /obj/item/weapon/material/minihoe(src) + src.modules += new /obj/item/weapon/material/hatchet(src) src.modules += new /obj/item/device/analyzer/plant_analyzer(src) src.modules += new /obj/item/weapon/storage/bag/plants(src) src.modules += new /obj/item/weapon/robot_harvester(src) diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm index 8cfd141c28..66b5f7dc7d 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm @@ -50,7 +50,7 @@ /obj/item/weapon/clipboard,\ /obj/item/weapon/cell,\ /obj/item/weapon/circular_saw,\ - /obj/item/weapon/hatchet,\ + /obj/item/weapon/material/hatchet,\ /obj/item/weapon/handcuffs,\ /obj/item/weapon/hemostat,\ /obj/item/weapon/material/knife,\ diff --git a/code/modules/surgery/encased.dm b/code/modules/surgery/encased.dm index fedf5bbc1c..8e1a516384 100644 --- a/code/modules/surgery/encased.dm +++ b/code/modules/surgery/encased.dm @@ -18,7 +18,7 @@ /datum/surgery_step/open_encased/saw allowed_tools = list( /obj/item/weapon/circular_saw = 100, \ - /obj/item/weapon/hatchet = 75 + /obj/item/weapon/material/hatchet = 75 ) min_duration = 50 diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index 31c7cbb78f..c1e51d9c4d 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -276,7 +276,7 @@ /datum/surgery_step/generic/amputate allowed_tools = list( /obj/item/weapon/circular_saw = 100, \ - /obj/item/weapon/hatchet = 75 + /obj/item/weapon/material/hatchet = 75 ) min_duration = 110 diff --git a/code/modules/surgery/slimes.dm b/code/modules/surgery/slimes.dm index 2f9629bade..3d9865c511 100644 --- a/code/modules/surgery/slimes.dm +++ b/code/modules/surgery/slimes.dm @@ -64,7 +64,7 @@ /datum/surgery_step/slime/saw_core allowed_tools = list( /obj/item/weapon/circular_saw = 100, \ - /obj/item/weapon/hatchet = 75 + /obj/item/weapon/material/hatchet = 75 ) min_duration = 50 diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index a8fb728b9c..96ee3f159e 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -1144,7 +1144,7 @@ "avZ" = (/obj/machinery/light/small,/obj/structure/mopbucket,/obj/item/weapon/mop,/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) "awa" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/obj/item/weapon/soap/nanotrasen,/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) "awb" = (/obj/structure/table/standard,/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Port - East"; dir = 1},/turf/simulated/floor,/area/hallway/primary/port) -"awc" = (/obj/structure/table/standard,/obj/item/weapon/hatchet,/obj/item/weapon/minihoe,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) +"awc" = (/obj/structure/table/standard,/obj/item/weapon/material/hatchet,/obj/item/weapon/material/minihoe,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) "awd" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port) "awe" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor,/area/security/prison) "awf" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/crew_quarters/fitness) @@ -2634,7 +2634,7 @@ "aYH" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/simulated/floor,/area/security/prison) "aYI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) "aYJ" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/machinery/microwave,/turf/simulated/floor,/area/security/prison) -"aYK" = (/obj/structure/table/standard,/obj/item/weapon/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/item/clothing/head/greenbandana,/turf/simulated/floor,/area/security/prison) +"aYK" = (/obj/structure/table/reinforced,/obj/item/weapon/material/hatchet,/obj/item/weapon/material/minihoe,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) "aYL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/security/vacantoffice) "aYM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/bridge) "aYN" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets{pixel_x = -3; pixel_y = -3},/turf/simulated/floor,/area/security/prison) @@ -2780,7 +2780,7 @@ "bbx" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/civilian_west{c_tag = "Tool Storage - Primary"},/turf/simulated/floor,/area/storage/primary) "bby" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hydroponics/garden) "bbz" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) -"bbA" = (/obj/structure/table/reinforced,/obj/item/weapon/hatchet,/obj/item/weapon/minihoe,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) +"bbA" = (/obj/structure/table/standard,/obj/item/weapon/material/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/item/clothing/head/greenbandana,/turf/simulated/floor,/area/security/prison) "bbB" = (/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics/garden) "bbC" = (/obj/structure/flora/ausbushes/fernybush,/turf/simulated/floor/grass,/area/hydroponics/garden) "bbD" = (/obj/machinery/door/airlock/glass_command{name = "Bridge"; req_access = list(19)},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-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,/area/bridge) @@ -7478,7 +7478,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatkatlatmaaaatnatoatpaaaaafatqatWatqaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaaaalkaaaaaaaaaaafaaaaaaaaaaamaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaanXatsattagDagDagDagWagWagWagWalWalWalWalWalWatuaonaoratvaqEatwalWalWalWatxatxatxarAatyatzatAarEatBasZasZasZasZatCatDatEatFatGatHavTavUatKatLatMatNatOatPatPatPatPatPatPatPatPatPatPatRatRatRatRatRatRatRatRatRatRaumaafaaaaaaaaaaaaaamaaaapIapIapIapIapIaafalJaafapIapIapIapIapIaaaaaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatSatTaLAatTatSatVaLBatVatSaafatqawvatYaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafatZauaanYaubaucanXaafaafalWaudaueaufaugauhawMaonapnaonasJaqEaujaukaulawRaunauKauparAauqaurausarEatBasZauLaxdauMatCauxauyatFatGauzauAauBauCauDatMatNauEauFauGauHauIauHauJauwauOauPaxsatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaamaaaaafaaaaafaafaaaaaabepaaaaaaaafaaaaaaaafaaaaaIaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNatTavmatTauNatVavyatVauNauQauRaxuauTauUauUauVauQauQaafaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaaaaaaaaaaaaanXanXanXauWanXanXapbaucanXaaaaaaalWauXalWauYauZavaalWaZYavzaonavdaveaveavfavgaveavhaviavjarAavkauravlarEatBasZavAavoavJatCawravqatFatGauzauAavravsavtatMatNavuavvauGauHauHauHauJavwavQawfavVatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaamaamaaIaaaaaaaafaaaaaaabpaaaaafaafaafaafaaIaaIaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNavBaxyavDauNavEaxAavGauNavHavIaxCavKavLavMavNavOauQaaaaaaaaqaaaapJapJapJapJapJaafbeSaafapJapJapJapJapJaaaaaIaaaaaaaaaaaaaaaaaaaaaaaaawkaxGavSayqaxOawoavWavXanXaaaaaaalWalWalWavYavZawaalWaYJaYNaYKaweawpaYHaukawhawxautawyawlarAawmaurayzarEatBasZawzawUawYaxaaxbawZatFatFatFawsawtawuatFatFatNayNawwauGauHauHauHauJawAavxawfaykatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaafaafaaaaafaaaaaaaYxaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNavBaxyavDauNavEaxAavGauNavHavIaxCavKavLavMavNavOauQaaaaaaaaqaaaapJapJapJapJapJaafbeSaafapJapJapJapJapJaaaaaIaaaaaaaaaaaaaaaaaaaaaaaaawkaxGavSayqaxOawoavWavXanXaaaaaaalWalWalWavYavZawaalWaYJaYNbbAaweawpaYHaukawhawxautawyawlarAawmaurayzarEatBasZawzawUawYaxaaxbawZatFatFatFawsawtawuatFatFatNayNawwauGauHauHauHauJawAavxawfaykatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaafaafaaaaafaaaaaaaYxaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauNawGawHawIauNawGawHawIauNawJavHavHavHavHavHavHavHasAaaaaaaaaIaaaaafaaaaafaafaaaaaaaZhaaaaaaaafaaaaaaaafaaaaaIaafaaaaaaaafaafaaaaaaaafawPaxGawQazgaxOawSaucawTanXaafaaLcqTatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxatxarAawVaurawWarEatBasZawBaxjawCatCaxVavnazpaxcaxfaxeaxhaxgaxhaxiaxkaxlaxmaxnaxoaxoaxoaxnaxmavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaaaazoaYUazoaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaatSauNazFaxxatSauNazUaxxatSauNaAbauNauNauNauNauNavHatqaaaaaaaaIaaIaaIaaaaaaaafaaaaxBaZnaxBaafaafaafaafaaIaaIaaIaafanXanXanXanXaxDaxEaxEaxFanXanXanXanXaAvaucaucanXaxHaxIanXanXaxJaxKaxLaxMaxMaxMaxMaxMaxMaxMaxMaxNaxMaxMaxMaxMaxMaAHaxPaxQaxRaAHavpasZaxSawjcfSatCaxVaxXaxXaxXaxZaxYayaawLaxXavqaydayeayfaygayhayhayhayhawXavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaAuaBaaAuaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaynayoaypayoaBcayoayrayoaysaytayvayvayvayvaywauNawNatqaaaaafaafaaaaaaaaaaaaaafaaaayyaBkayAaafaaaaafaaaaaaaaaaaaaaaanXayBayCayDayCayCayCayCayEayCayCayFayGayDayHayIaxMaxMaxMaxMaxMaxMayJayKayLayLayLayLayMayLayLaZsayLayMayLayLayLarAaBEayPayQarEaAiasZcfSaycaxUatCayUayTayWaxpayYayXayYaxqayTazaazbazcazdazeazdazdazfaxraBOaxtaxTaxvatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaBuaBvaZraBxaByaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7500,7 +7500,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDawdcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeawgaVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaxwaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaVLaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaWdaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaNXaHIaQlaWgaTUaTUaTUaYwaUeaRyaUfaSvaUeaUiaVGaXpaKfaXraXsaUmaXtaxwaURaXvaUjaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXjaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXkaXiaXOaVPaYaaYbaYcaYdaYeaWjaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaXRaXhaToaYfaYkaZXaWLbaOaYmaWOaZcaVoaYvaUSbaBbanaYzaVzaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaEfaEfaYIaKpaKQaYLbaPaKxaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaHIaIKaISaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaNcaNeaNPaLwaYaaYpaZwaYdaYeaWjaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaYXaYGaToaZeaYGaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzbbAbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzaYKbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaXubcFbcZaXmbbUaSFbaabaabaabaabaabbVbaaaXoaYObbXbbYbaibbZbbZbbZbbZbdKbbZbcbaTUbccbcdbcebcebcfbcgaTSaXebchbcibcjaKibdQblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbcrbcsbctbeabcvbcwbcxbbgaUpbczbcAbeeaUpaUpaaaaaaaafaafbekaaaaaaaUpaUpbezbcGbczaUpbbgbcxbcHbcIbcJbcKbcLaRpaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSbcObcObcObcObeBbcQbcRbcSaUQaUQaUQbeMbcUaTeaZMbcWbcXaYgaWBaYhaWDbcYaZzaZZbdabdbbdcbddbdebddbddbddbddbddbdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdraVoaYubdsaZNaVobeNbbOaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaEfbabbaaaZvaDobbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZaEgbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaEfaEdbeUaEcaDobbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPbfebffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index c3f06346e7..efa20f88d2 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -1993,7 +1993,7 @@ "Mq" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access = list(45)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/holding) "Mr" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/material/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Ms" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) -"Mt" = (/obj/structure/table/standard,/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/minihoe,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) +"Mt" = (/obj/structure/table/standard,/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/material/minihoe,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mu" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mv" = (/obj/machinery/vending/hydroseeds,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mw" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_west_sensor"; pixel_x = 25},/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 82aaceacae..700ab1b105 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -481,7 +481,7 @@ "jm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/outpost/research/hallway) "jn" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock{id_tag = "rddorm1"; name = "Dorm 1"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/outpost/research/hallway) "jo" = (/obj/structure/table/standard,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/cell,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/outpost/research/chemistry) -"jp" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/minihoe,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 13; pixel_y = 5},/obj/item/weedkiller/triclopyr,/obj/item/weapon/reagent_containers/glass/fertilizer/ez,/turf/simulated/floor/plating,/area/outpost/research/chemistry) +"jp" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/material/minihoe,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 13; pixel_y = 5},/obj/item/weedkiller/triclopyr,/obj/item/weapon/reagent_containers/glass/fertilizer/ez,/turf/simulated/floor/plating,/area/outpost/research/chemistry) "jq" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) "jr" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/maintenance{name = "Auxiliary Storage"; req_one_access = list(65,12)},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/chemistry) "js" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) From 645ad1a17780aac0f4bdc962d0828c4e7c826367 Mon Sep 17 00:00:00 2001 From: Karolis2011 Date: Sat, 16 May 2015 18:05:47 +0300 Subject: [PATCH 130/199] Made tagger pipe dispensible. --- code/game/machinery/pipe/pipe_dispenser.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm index 9f9d79841b..eb0ec51962 100644 --- a/code/game/machinery/pipe/pipe_dispenser.dm +++ b/code/game/machinery/pipe/pipe_dispenser.dm @@ -182,6 +182,8 @@ Nah Sorting
    Sorting (Wildcard)
    Sorting (Untagged)
    +Tagger
    +Tagger (Partial)
    "} ///// Z-Level stuff @@ -232,6 +234,10 @@ Nah if(10) C.ptype = 9 C.subtype = 2 + if(11) + C.ptype = 13 + if(12) + C.ptype = 14 ///// Z-Level stuff if(21) C.ptype = 11 From 358867f3b5d2696ace17bf1b3b186055c86a7527 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 01:30:46 +0930 Subject: [PATCH 131/199] Major sheet and material refactor. --- baystation12.dme | 5 +- code/TriDimension/Structures.dm | 2 +- code/datums/supplypacks.dm | 10 +- code/game/gamemodes/cult/cultify/obj.dm | 2 +- code/game/gamemodes/objective.dm | 16 +- code/game/machinery/autolathe.dm | 2 +- code/game/machinery/autolathe_datums.dm | 6 +- code/game/machinery/bioprinter.dm | 4 +- code/game/machinery/camera/camera_assembly.dm | 2 +- code/game/machinery/camera/presets.dm | 4 +- code/game/machinery/computer/ai_core.dm | 8 +- .../game/machinery/computer/buildandrepair.dm | 8 +- .../machinery/computer3/buildandrepair.dm | 6 +- code/game/machinery/constructable_frame.dm | 2 +- code/game/machinery/deployable.dm | 22 +- code/game/machinery/doors/blast_door.dm | 4 +- code/game/machinery/doors/door.dm | 8 +- .../game/machinery/doors/firedoor_assembly.dm | 2 +- code/game/machinery/pipe/pipelayer.dm | 6 +- code/game/machinery/portable_turret.dm | 16 +- code/game/machinery/robot_fabricator.dm | 4 +- code/game/machinery/wall_frames.dm | 4 +- code/game/machinery/washing_machine.dm | 8 +- code/game/mecha/equipment/tools/tools.dm | 16 +- code/game/mecha/mech_fabricator.dm | 46 ++-- code/game/mecha/mecha_construction_paths.dm | 36 +-- code/game/mecha/mecha_wreckage.dm | 2 +- code/game/objects/items/apc_frame.dm | 2 +- .../objects/items/devices/lightreplacer.dm | 4 +- code/game/objects/items/robot/robot_parts.dm | 4 +- code/game/objects/items/stacks/rods.dm | 2 +- .../game/objects/items/stacks/sheets/glass.dm | 67 ++---- .../objects/items/stacks/sheets/leather.dm | 32 +-- .../game/objects/items/stacks/sheets/light.dm | 6 +- .../objects/items/stacks/sheets/mineral.dm | 209 ---------------- .../items/stacks/sheets/sheet_types.dm | 223 ------------------ .../objects/items/stacks/sheets/sheets.dm | 25 -- code/game/objects/items/stacks/stack.dm | 11 +- code/game/objects/items/stacks/tiles/light.dm | 2 +- .../objects/items/weapons/storage/bags.dm | 20 +- .../objects/items/weapons/storage/boxes.dm | 2 +- .../objects/items/weapons/storage/misc.dm | 2 +- .../structures/crates_lockers/closets.dm | 10 +- .../crates_lockers/closets/syndicate.dm | 34 +-- .../structures/crates_lockers/largecrate.dm | 2 +- code/game/objects/structures/door_assembly.dm | 16 +- code/game/objects/structures/girders.dm | 12 +- code/game/objects/structures/grille.dm | 4 +- code/game/objects/structures/mineral_doors.dm | 2 +- .../structures/stool_bed_chair_nest/bed.dm | 4 +- .../structures/stool_bed_chair_nest/chairs.dm | 2 +- .../structures/stool_bed_chair_nest/stools.dm | 8 +- .../objects/structures/windoor_assembly.dm | 4 +- code/game/objects/structures/window.dm | 10 +- code/game/supplyshuttle.dm | 8 +- code/game/turfs/simulated/floor.dm | 4 +- code/modules/clothing/spacesuits/breaches.dm | 8 +- .../clothing/spacesuits/rig/rig_attackby.dm | 2 +- code/modules/examine/descriptions/stacks.dm | 12 +- code/modules/hydroponics/grown.dm | 4 +- code/modules/materials/material_recipes.dm | 146 ++++++++++++ code/modules/materials/material_sheets.dm | 172 ++++++++++++++ code/modules/materials/materials.dm | 92 ++++++-- code/modules/mining/alloys.dm | 4 +- code/modules/mining/machine_stacking.dm | 12 +- code/modules/mining/mine_turfs.dm | 6 +- code/modules/mining/mint.dm | 16 +- code/modules/mob/living/bot/floorbot.dm | 6 +- .../living/silicon/robot/drone/drone_items.dm | 2 +- .../mob/living/silicon/robot/robot_items.dm | 4 +- .../mob/living/silicon/robot/robot_modules.dm | 22 +- .../simple_animal/hostile/retaliate/drone.dm | 8 +- .../mob/living/simple_animal/hostile/tree.dm | 2 +- code/modules/mob/living/simple_animal/worm.dm | 8 +- code/modules/power/apc.dm | 4 +- code/modules/power/lighting.dm | 2 +- code/modules/power/port_gen.dm | 8 +- code/modules/power/solar.dm | 10 +- code/modules/power/tracker.dm | 2 +- .../projectiles/guns/launcher/crossbow.dm | 4 +- .../projectiles/guns/launcher/pneumatic.dm | 6 +- code/modules/reagents/Chemistry-Machinery.dm | 14 +- code/modules/reagents/Chemistry-Recipes.dm | 64 ++--- code/modules/research/circuitprinter.dm | 22 +- code/modules/research/protolathe.dm | 34 +-- code/modules/research/rdconsole.dm | 16 +- .../research/xenoarchaeology/finds/finds.dm | 20 +- .../xenoarchaeology/tools/tools_pickaxe.dm | 2 +- code/modules/tables/tables.dm | 16 +- maps/exodus-1.dmm | 66 +++--- maps/exodus-2.dmm | 16 +- maps/exodus-4.dmm | 10 +- maps/exodus-5.dmm | 26 +- 93 files changed, 868 insertions(+), 982 deletions(-) delete mode 100644 code/game/objects/items/stacks/sheets/mineral.dm delete mode 100644 code/game/objects/items/stacks/sheets/sheet_types.dm delete mode 100644 code/game/objects/items/stacks/sheets/sheets.dm create mode 100644 code/modules/materials/material_recipes.dm create mode 100644 code/modules/materials/material_sheets.dm diff --git a/baystation12.dme b/baystation12.dme index 99d8019516..3c8de428d3 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -597,9 +597,6 @@ #include "code\game\objects\items\stacks\sheets\glass.dm" #include "code\game\objects\items\stacks\sheets\leather.dm" #include "code\game\objects\items\stacks\sheets\light.dm" -#include "code\game\objects\items\stacks\sheets\mineral.dm" -#include "code\game\objects\items\stacks\sheets\sheet_types.dm" -#include "code\game\objects\items\stacks\sheets\sheets.dm" #include "code\game\objects\items\stacks\tiles\light.dm" #include "code\game\objects\items\stacks\tiles\plasteel.dm" #include "code\game\objects\items\stacks\tiles\tile_types.dm" @@ -1049,6 +1046,8 @@ #include "code\modules\maps\reader.dm" #include "code\modules\maps\swapmaps.dm" #include "code\modules\maps\writer.dm" +#include "code\modules\materials\material_recipes.dm" +#include "code\modules\materials\material_sheets.dm" #include "code\modules\materials\materials.dm" #include "code\modules\mining\abandonedcrates.dm" #include "code\modules\mining\alloys.dm" diff --git a/code/TriDimension/Structures.dm b/code/TriDimension/Structures.dm index 9224facba2..cf216274bb 100644 --- a/code/TriDimension/Structures.dm +++ b/code/TriDimension/Structures.dm @@ -114,7 +114,7 @@ sleep(60) if(!user || !WT || !WT.isOn()) return - var/obj/item/stack/sheet/metal/S = new /obj/item/stack/sheet/metal( src ) + var/obj/item/stack/material/steel/S = new /obj/item/stack/material/steel( src ) S.amount = 2 user << "You remove the ladder and close the hole." qdel(src) diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 288f318b1c..fa408d1b8f 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -445,7 +445,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/metal50 name = "50 metal sheets" - contains = list(/obj/item/stack/sheet/metal) + contains = list(/obj/item/stack/material/steel) amount = 50 cost = 10 containertype = /obj/structure/closet/crate @@ -454,7 +454,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/glass50 name = "50 glass sheets" - contains = list(/obj/item/stack/sheet/glass) + contains = list(/obj/item/stack/material/glass) amount = 50 cost = 10 containertype = /obj/structure/closet/crate @@ -463,7 +463,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/wood50 name = "50 wooden planks" - contains = list(/obj/item/stack/sheet/wood) + contains = list(/obj/item/stack/material/wood) amount = 50 cost = 10 containertype = /obj/structure/closet/crate @@ -472,7 +472,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/plastic50 name = "50 plastic sheets" - contains = list(/obj/item/stack/sheet/mineral/plastic) + contains = list(/obj/item/stack/material/plastic) amount = 50 cost = 10 containertype = /obj/structure/closet/crate @@ -1255,7 +1255,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee group = "Hydroponics" /datum/supply_packs/cardboard_sheets - contains = list(/obj/item/stack/sheet/cardboard) + contains = list(/obj/item/stack/material/cardboard) name = "50 cardboard sheets" amount = 50 cost = 10 diff --git a/code/game/gamemodes/cult/cultify/obj.dm b/code/game/gamemodes/cult/cultify/obj.dm index d019300314..c29c4044cb 100644 --- a/code/game/gamemodes/cult/cultify/obj.dm +++ b/code/game/gamemodes/cult/cultify/obj.dm @@ -14,7 +14,7 @@ new /obj/structure/cult/pylon(loc) ..() -/obj/item/stack/sheet/wood/cultify() +/obj/item/stack/material/wood/cultify() return /obj/item/weapon/book/cultify() diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index d13f90d2be..0ad6e7fc5f 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -513,9 +513,9 @@ datum/objective/steal "diamond drill" = /obj/item/weapon/pickaxe/diamonddrill, "bag of holding" = /obj/item/weapon/storage/backpack/holding, "hyper-capacity cell" = /obj/item/weapon/cell/hyper, - "10 diamonds" = /obj/item/stack/sheet/mineral/diamond, - "50 gold bars" = /obj/item/stack/sheet/mineral/gold, - "25 refined uranium bars" = /obj/item/stack/sheet/mineral/uranium, + "10 diamonds" = /obj/item/stack/material/diamond, + "50 gold bars" = /obj/item/stack/material/gold, + "25 refined uranium bars" = /obj/item/stack/material/uranium, ) @@ -830,13 +830,13 @@ datum/objective/heist/salvage for(var/obj/item/O in locate(/area/shuttle/skipjack/station)) - var/obj/item/stack/sheet/S - if(istype(O,/obj/item/stack/sheet)) + var/obj/item/stack/material/S + if(istype(O,/obj/item/stack/material)) if(O.name == target) S = O total_amount += S.get_amount() for(var/obj/I in O.contents) - if(istype(I,/obj/item/stack/sheet)) + if(istype(I,/obj/item/stack/material)) if(I.name == target) S = I total_amount += S.get_amount() @@ -844,9 +844,9 @@ datum/objective/heist/salvage for(var/datum/mind/raider in raiders.current_antagonists) if(raider.current) for(var/obj/item/O in raider.current.get_contents()) - if(istype(O,/obj/item/stack/sheet)) + if(istype(O,/obj/item/stack/material)) if(O.name == target) - var/obj/item/stack/sheet/S = O + var/obj/item/stack/material/S = O total_amount += S.get_amount() if(total_amount >= target_amount) return 1 diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 40db18e42f..e3b161b6fb 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -293,7 +293,7 @@ var/material/M = name_to_material[mat] if(!istype(M)) continue - var/obj/item/stack/sheet/S = new M.stack_type(get_turf(src)) + var/obj/item/stack/material/S = new M.stack_type(get_turf(src)) if(stored_material[mat] > S.perunit) S.amount = round(stored_material[mat] / S.perunit) else diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index d1f8ccf892..56442b3e1c 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -109,19 +109,19 @@ /datum/autolathe/recipe/metal name = "steel sheets" - path = /obj/item/stack/sheet/metal + path = /obj/item/stack/material/steel category = "General" is_stack = 1 /datum/autolathe/recipe/glass name = "glass sheets" - path = /obj/item/stack/sheet/glass + path = /obj/item/stack/material/glass category = "General" is_stack = 1 /datum/autolathe/recipe/rglass name = "reinforced glass sheets" - path = /obj/item/stack/sheet/glass/reinforced + path = /obj/item/stack/material/glass/reinforced category = "General" is_stack = 1 diff --git a/code/game/machinery/bioprinter.dm b/code/game/machinery/bioprinter.dm index 5a8b25bb84..9f144c23b1 100644 --- a/code/game/machinery/bioprinter.dm +++ b/code/game/machinery/bioprinter.dm @@ -73,8 +73,8 @@ qdel(W) return // Steel for matter. - else if(prints_prosthetics && istype(W, /obj/item/stack/sheet/metal)) - var/obj/item/stack/sheet/metal/M = W + else if(prints_prosthetics && istype(W, /obj/item/stack/material/steel)) + var/obj/item/stack/material/steel/M = W stored_matter += M.amount * 10 user.drop_item() user << "\The [src] processes \the [W]. Levels of stored matter now: [stored_matter]" diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index 28691004f3..75397278c0 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -9,7 +9,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 700,"glass" = 300) // Motion, EMP-Proof, X-Ray - var/list/obj/item/possible_upgrades = list(/obj/item/device/assembly/prox_sensor, /obj/item/stack/sheet/mineral/osmium, /obj/item/weapon/stock_parts/scanning_module) + var/list/obj/item/possible_upgrades = list(/obj/item/device/assembly/prox_sensor, /obj/item/stack/material/osmium, /obj/item/weapon/stock_parts/scanning_module) var/list/upgrades = list() var/state = 0 var/busy = 0 diff --git a/code/game/machinery/camera/presets.dm b/code/game/machinery/camera/presets.dm index d4b795730f..24588582e5 100644 --- a/code/game/machinery/camera/presets.dm +++ b/code/game/machinery/camera/presets.dm @@ -144,7 +144,7 @@ var/global/list/engineering_networks = list( // CHECKS /obj/machinery/camera/proc/isEmpProof() - var/O = locate(/obj/item/stack/sheet/mineral/osmium) in assembly.upgrades + var/O = locate(/obj/item/stack/material/osmium) in assembly.upgrades return O /obj/machinery/camera/proc/isXRay() @@ -160,7 +160,7 @@ var/global/list/engineering_networks = list( // UPGRADE PROCS /obj/machinery/camera/proc/upgradeEmpProof() - assembly.upgrades.Add(new /obj/item/stack/sheet/mineral/osmium(assembly)) + assembly.upgrades.Add(new /obj/item/stack/material/osmium(assembly)) setPowerUsage() /obj/machinery/camera/proc/upgradeXRay() diff --git a/code/game/machinery/computer/ai_core.dm b/code/game/machinery/computer/ai_core.dm index 028f1ba307..53416cd2b3 100644 --- a/code/game/machinery/computer/ai_core.dm +++ b/code/game/machinery/computer/ai_core.dm @@ -29,7 +29,7 @@ if(do_after(user, 20)) if(!src || !WT.remove_fuel(0, user)) return user << "\blue You deconstruct the frame." - new /obj/item/stack/sheet/plasteel( loc, 4) + new /obj/item/stack/material/plasteel( loc, 4) qdel(src) if(1) if(istype(P, /obj/item/weapon/wrench)) @@ -88,8 +88,8 @@ var/obj/item/stack/cable_coil/A = new /obj/item/stack/cable_coil( loc ) A.amount = 5 - if(istype(P, /obj/item/stack/sheet/glass/reinforced)) - var/obj/item/stack/sheet/glass/reinforced/RG = P + if(istype(P, /obj/item/stack/material/glass/reinforced)) + var/obj/item/stack/material/glass/reinforced/RG = P if (RG.get_amount() < 2) user << "You need two sheets of glass to put in the glass panel." return @@ -162,7 +162,7 @@ icon_state = "3b" else icon_state = "3" - new /obj/item/stack/sheet/glass/reinforced( loc, 2 ) + new /obj/item/stack/material/glass/reinforced( loc, 2 ) return if(istype(P, /obj/item/weapon/screwdriver)) diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index a325ab90f3..7cae6c6d93 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -28,7 +28,7 @@ if(do_after(user, 20)) if(!src || !WT.isOn()) return user << "\blue You deconstruct the frame." - new /obj/item/stack/sheet/metal( src.loc, 5 ) + new /obj/item/stack/material/steel( src.loc, 5 ) qdel(src) if(1) if(istype(P, /obj/item/weapon/wrench)) @@ -87,8 +87,8 @@ var/obj/item/stack/cable_coil/A = new /obj/item/stack/cable_coil( src.loc ) A.amount = 5 - if(istype(P, /obj/item/stack/sheet/glass)) - var/obj/item/stack/sheet/glass/G = P + if(istype(P, /obj/item/stack/material/glass)) + var/obj/item/stack/material/glass/G = P if (G.get_amount() < 2) user << "You need two sheets of glass to put in the glass panel." return @@ -105,7 +105,7 @@ user << "\blue You remove the glass panel." src.state = 3 src.icon_state = "3" - new /obj/item/stack/sheet/glass( src.loc, 2 ) + new /obj/item/stack/material/glass( src.loc, 2 ) if(istype(P, /obj/item/weapon/screwdriver)) playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) user << "\blue You connect the monitor." diff --git a/code/game/machinery/computer3/buildandrepair.dm b/code/game/machinery/computer3/buildandrepair.dm index eef7503f97..5e5c8af856 100644 --- a/code/game/machinery/computer3/buildandrepair.dm +++ b/code/game/machinery/computer3/buildandrepair.dm @@ -93,7 +93,7 @@ if(do_after(user, 20)) if(!src || !WT.isOn()) return user << "\blue You deconstruct the frame." - new /obj/item/stack/sheet/metal( src.loc, 5 ) + new /obj/item/stack/material/steel( src.loc, 5 ) qdel(src) if(1) if(istype(P, /obj/item/weapon/wrench)) @@ -178,7 +178,7 @@ if(istype(P, /obj/item/weapon/crowbar)) // complicated check remove_peripheral() - if(istype(P, /obj/item/stack/sheet/glass)) + if(istype(P, /obj/item/stack/material/glass)) if(P:amount >= 2) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) if(do_after(user, 20)) @@ -193,7 +193,7 @@ user << "\blue You remove the glass panel." src.state = 3 src.icon_state = "3" - new /obj/item/stack/sheet/glass( src.loc, 2 ) + new /obj/item/stack/material/glass( src.loc, 2 ) if(istype(P, /obj/item/weapon/screwdriver)) playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) user << "\blue You connect the monitor." diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index e01c3e4b8e..9ebe4a6ec2 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -48,7 +48,7 @@ if(istype(P, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) user << "\blue You dismantle the frame" - new /obj/item/stack/sheet/metal(src.loc, 5) + new /obj/item/stack/material/steel(src.loc, 5) qdel(src) if(2) if(istype(P, /obj/item/weapon/circuitboard)) diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index e49fb26283..df3abac14d 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -66,8 +66,8 @@ for reference: var/maxhealth = 100.0 attackby(obj/item/W as obj, mob/user as mob) - if (istype(W, /obj/item/stack/sheet/wood)) - var/obj/item/stack/sheet/wood/D = W + if (istype(W, /obj/item/stack/material/wood)) + var/obj/item/stack/material/wood/D = W if (health < maxhealth) if (D.get_amount() < 1) user << "You need one plank of wood to repair \the [src]." @@ -88,9 +88,9 @@ for reference: else if (src.health <= 0) visible_message("\red The barricade is smashed apart!") - new /obj/item/stack/sheet/wood(get_turf(src)) - new /obj/item/stack/sheet/wood(get_turf(src)) - new /obj/item/stack/sheet/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) qdel(src) ..() @@ -104,17 +104,17 @@ for reference: src.health -= 25 if (src.health <= 0) visible_message("\red The barricade is blown apart!") - new /obj/item/stack/sheet/wood(get_turf(src)) - new /obj/item/stack/sheet/wood(get_turf(src)) - new /obj/item/stack/sheet/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) qdel(src) return meteorhit() visible_message("\red The barricade is smashed apart!") - new /obj/item/stack/sheet/wood(get_turf(src)) - new /obj/item/stack/sheet/wood(get_turf(src)) - new /obj/item/stack/sheet/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) + new /obj/item/stack/material/wood(get_turf(src)) qdel(src) return diff --git a/code/game/machinery/doors/blast_door.dm b/code/game/machinery/doors/blast_door.dm index 5f6a16cc58..2c5c00caaa 100644 --- a/code/game/machinery/doors/blast_door.dm +++ b/code/game/machinery/doors/blast_door.dm @@ -96,12 +96,12 @@ else usr << "[src]'s motors resist your effort." return - if(istype(C, /obj/item/stack/sheet/plasteel)) + if(istype(C, /obj/item/stack/material/plasteel)) var/amt = repair_price() if(!amt) usr << "\The [src] is already fully repaired." return - var/obj/item/stack/sheet/plasteel/P = C + var/obj/item/stack/material/plasteel/P = C if(P.amount < amt) usr << "You don't have enough sheets to repair this! You need at least [amt] sheets." return diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 0f3760009d..7c14b0ff99 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -26,7 +26,7 @@ var/destroy_hits = 10 //How many strong hits it takes to destroy the door var/min_force = 10 //minimum amount of force needed to damage the door with a melee weapon var/hitsound = 'sound/weapons/smash.ogg' //sound door makes when hit with a weapon - var/obj/item/stack/sheet/metal/repairing + var/obj/item/stack/material/steel/repairing var/block_air_zones = 1 //If set, air zones cannot merge across the door even when it is opened. var/close_door_at = 0 //When to automatically close the door, if possible @@ -163,7 +163,7 @@ visible_message("\red \The [src.name] disintegrates!") switch (Proj.damage_type) if(BRUTE) - new /obj/item/stack/sheet/metal(src.loc, 2) + new /obj/item/stack/material/steel(src.loc, 2) PoolOrNew(/obj/item/stack/rods, list(src.loc, 3)) if(BURN) new /obj/effect/decal/cleanable/ash(src.loc) // Turn it to ashes! @@ -205,7 +205,7 @@ if(src.operating > 0 || isrobot(user)) return //borgs can't attack doors open because it conflicts with their AI-like interaction with them. src.add_fingerprint(user) - if(istype(I, /obj/item/stack/sheet/metal)) + if(istype(I, /obj/item/stack/material/steel)) if(stat & BROKEN) user << "It looks like \the [src] is pretty busted. It's going to need more than just patching up now." return @@ -220,7 +220,7 @@ var/amount_needed = (maxhealth - health) / DOOR_REPAIR_AMOUNT amount_needed = (round(amount_needed) == amount_needed)? amount_needed : round(amount_needed) + 1 //Why does BYOND not have a ceiling proc? - var/obj/item/stack/sheet/metal/metalstack = I + var/obj/item/stack/material/steel/metalstack = I var/transfer if (repairing) transfer = metalstack.transfer_to(repairing, amount_needed - repairing.amount) diff --git a/code/game/machinery/doors/firedoor_assembly.dm b/code/game/machinery/doors/firedoor_assembly.dm index d3a70fe85e..c01fff5bed 100644 --- a/code/game/machinery/doors/firedoor_assembly.dm +++ b/code/game/machinery/doors/firedoor_assembly.dm @@ -61,7 +61,7 @@ obj/structure/firedoor_assembly/attackby(C as obj, mob/user as mob) if(!src || !WT.isOn()) return user.visible_message("[user] has dissassembled \the [src].", "You have dissassembled \the [src].") - new /obj/item/stack/sheet/metal(src.loc, 2) + new /obj/item/stack/material/steel(src.loc, 2) qdel(src) else user << "You need more welding fuel." diff --git a/code/game/machinery/pipe/pipelayer.dm b/code/game/machinery/pipe/pipelayer.dm index 32aafb21cd..0f2dc3c855 100644 --- a/code/game/machinery/pipe/pipelayer.dm +++ b/code/game/machinery/pipe/pipelayer.dm @@ -50,7 +50,7 @@ user.visible_message("[user] has [!a_dis?"de":""]activated auto-dismantling.", "You [!a_dis?"de":""]activate auto-dismantling.") return - if(istype(W, /obj/item/stack/sheet/metal)) + if(istype(W, /obj/item/stack/material/steel)) var/result = load_metal(W) if(isnull(result)) @@ -70,7 +70,7 @@ m = round(m) if(m) use_metal(m) - var/obj/item/stack/sheet/metal/MM = new (get_turf(src)) + var/obj/item/stack/material/steel/MM = new (get_turf(src)) MM.amount = m user.visible_message("[user] removes [m] sheet\s of metal from the \the [src].", "You remove [m] sheet\s of metal from \the [src]") else @@ -86,7 +86,7 @@ on=0 return -/obj/machinery/pipelayer/proc/load_metal(var/obj/item/stack/sheet/metal/MM) +/obj/machinery/pipelayer/proc/load_metal(var/obj/item/stack/material/steel/MM) if(istype(MM) && MM.get_amount()) var/cur_amount = metal var/to_load = max(max_metal - round(cur_amount),0) diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 3709f2dac6..5476d9f6fa 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -267,7 +267,7 @@ Gun.power_supply.charge = gun_charge Gun.update_icon() if(prob(50)) - new /obj/item/stack/sheet/metal(loc, rand(1,4)) + new /obj/item/stack/material/steel(loc, rand(1,4)) if(prob(50)) new /obj/item/device/assembly/prox_sensor(loc) else @@ -671,13 +671,13 @@ else if(istype(I, /obj/item/weapon/crowbar) && !anchored) playsound(loc, 'sound/items/Crowbar.ogg', 75, 1) user << "You dismantle the turret construction." - new /obj/item/stack/sheet/metal( loc, 5) + new /obj/item/stack/material/steel( loc, 5) qdel(src) // qdel return if(1) - if(istype(I, /obj/item/stack/sheet/metal)) - var/obj/item/stack/sheet/metal/M = I + if(istype(I, /obj/item/stack/material/steel)) + var/obj/item/stack/material/steel/M = I if(M.use(2)) user << "You add some metal armor to the interior frame." build_step = 2 @@ -714,7 +714,7 @@ if(!src || !WT.remove_fuel(5, user)) return build_step = 1 user << "You remove the turret's interior metal armor." - new /obj/item/stack/sheet/metal( loc, 2) + new /obj/item/stack/material/steel( loc, 2) return @@ -768,8 +768,8 @@ //attack_hand() removes the prox sensor if(6) - if(istype(I, /obj/item/stack/sheet/metal)) - var/obj/item/stack/sheet/metal/M = I + if(istype(I, /obj/item/stack/material/steel)) + var/obj/item/stack/material/steel/M = I if(M.use(2)) user << "You add some metal armor to the exterior frame." build_step = 7 @@ -813,7 +813,7 @@ else if(istype(I, /obj/item/weapon/crowbar)) playsound(loc, 'sound/items/Crowbar.ogg', 75, 1) user << "You pry off the turret's exterior armor." - new /obj/item/stack/sheet/metal(loc, 2) + new /obj/item/stack/material/steel(loc, 2) build_step = 6 return diff --git a/code/game/machinery/robot_fabricator.dm b/code/game/machinery/robot_fabricator.dm index 6b0cb71fbd..b2461f1d7f 100644 --- a/code/game/machinery/robot_fabricator.dm +++ b/code/game/machinery/robot_fabricator.dm @@ -12,8 +12,8 @@ active_power_usage = 10000 /obj/machinery/robotic_fabricator/attackby(var/obj/item/O as obj, var/mob/user as mob) - if (istype(O, /obj/item/stack/sheet/metal)) - var/obj/item/stack/sheet/metal/M = O + if (istype(O, /obj/item/stack/material/steel)) + var/obj/item/stack/material/steel/M = O if (src.metal_amount < 150000.0) var/count = 0 src.overlays += "fab-load-metal" diff --git a/code/game/machinery/wall_frames.dm b/code/game/machinery/wall_frames.dm index 36e37cb9c6..7f9bedbd9d 100644 --- a/code/game/machinery/wall_frames.dm +++ b/code/game/machinery/wall_frames.dm @@ -6,7 +6,7 @@ flags = CONDUCT var/build_machine_type var/refund_amt = 2 - var/refund_type = /obj/item/stack/sheet/metal + var/refund_type = /obj/item/stack/material/steel /obj/item/frame/attackby(obj/item/weapon/W as obj, mob/user as mob) if (istype(W, /obj/item/weapon/wrench)) @@ -73,7 +73,7 @@ icon = 'icons/rust.dmi' icon_state = "fuel_compressor0" w_class = 4 - refund_type = /obj/item/stack/sheet/plasteel + refund_type = /obj/item/stack/material/plasteel refund_amt = 12 build_machine_type = /obj/machinery/rust_fuel_compressor diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index 8f2e6aaee2..be0a0e6d3a 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -47,11 +47,11 @@ I.decontaminate() //Tanning! - for(var/obj/item/stack/sheet/hairlesshide/HH in contents) - var/obj/item/stack/sheet/wetleather/WL = new(src) + for(var/obj/item/stack/material/hairlesshide/HH in contents) + var/obj/item/stack/material/wetleather/WL = new(src) WL.amount = HH.amount qdel(HH) - + if( locate(/mob,contents) ) state = 7 gibs_ready = 1 @@ -95,7 +95,7 @@ state = 3 else ..() - else if(istype(W,/obj/item/stack/sheet/hairlesshide) || \ + else if(istype(W,/obj/item/stack/material/hairlesshide) || \ istype(W,/obj/item/clothing/under) || \ istype(W,/obj/item/clothing/mask) || \ istype(W,/obj/item/clothing/head) || \ diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index b765a32e68..073c807be9 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -200,9 +200,9 @@ set_ready_state(0) if(do_after_cooldown(target)) if( istype(target, /obj/structure/reagent_dispensers/watertank) && get_dist(chassis,target) <= 1) - var/obj/o = target + var/obj/o = target var/amount = o.reagents.trans_to_obj(src, 200) - occupant_message("[amount] units transferred into internal tank.") + occupant_message("[amount] units transferred into internal tank.") playsound(chassis, 'sound/effects/refill.ogg', 50, 1, -6) return @@ -221,7 +221,7 @@ var/list/the_targets = list(T,T1,T2) for(var/a = 1 to 5) - spawn(0) + spawn(0) var/obj/effect/effect/water/W = PoolOrNew(/obj/effect/effect/water, get_turf(chassis)) var/turf/my_target if(a == 1) @@ -237,7 +237,7 @@ return reagents.trans_to_obj(W, spray_amount) W.set_color() - W.set_up(my_target) + W.set_up(my_target) return 1 get_equip_info() @@ -842,7 +842,7 @@ construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"silver"=500,"glass"=1000) var/datum/global_iterator/pr_mech_generator var/coeff = 100 - var/obj/item/stack/sheet/fuel + var/obj/item/stack/material/fuel var/max_fuel = 150000 var/fuel_per_cycle_idle = 100 var/fuel_per_cycle_active = 500 @@ -860,7 +860,7 @@ ..() proc/init() - fuel = new /obj/item/stack/sheet/mineral/phoron(src) + fuel = new /obj/item/stack/material/phoron(src) fuel.amount = 0 pr_mech_generator = new /datum/global_iterator/mecha_generator(list(src),0) pr_mech_generator.set_delay(equip_cooldown) @@ -903,7 +903,7 @@ occupant_message(message) return - proc/load_fuel(var/obj/item/stack/sheet/P) + proc/load_fuel(var/obj/item/stack/material/P) if(P.type == fuel.type && P.amount) var/to_load = max(max_fuel - fuel.amount*fuel.perunit,0) if(to_load) @@ -988,7 +988,7 @@ reliability = 1000 init() - fuel = new /obj/item/stack/sheet/mineral/uranium(src) + fuel = new /obj/item/stack/material/uranium(src) fuel.amount = 0 pr_mech_generator = new /datum/global_iterator/mecha_generator/nuclear(list(src),0) pr_mech_generator.set_delay(equip_cooldown) diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 9dadd13554..9013e0b8a6 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -720,23 +720,23 @@ var/type switch(mat_string) if(DEFAULT_WALL_MATERIAL) - type = /obj/item/stack/sheet/metal + type = /obj/item/stack/material/steel if("glass") - type = /obj/item/stack/sheet/glass + type = /obj/item/stack/material/glass if("gold") - type = /obj/item/stack/sheet/mineral/gold + type = /obj/item/stack/material/gold if("silver") - type = /obj/item/stack/sheet/mineral/silver + type = /obj/item/stack/material/silver if("diamond") - type = /obj/item/stack/sheet/mineral/diamond + type = /obj/item/stack/material/diamond if("phoron") - type = /obj/item/stack/sheet/mineral/phoron + type = /obj/item/stack/material/phoron if("uranium") - type = /obj/item/stack/sheet/mineral/uranium + type = /obj/item/stack/material/uranium else return 0 var/result = 0 - var/obj/item/stack/sheet/res = new type(src) + var/obj/item/stack/material/res = new type(src) // amount available to take out var/total_amount = round(resources[mat_string]/res.perunit) @@ -775,25 +775,25 @@ I.crit_fail = 1 I.loc = src.loc if(src.resources[DEFAULT_WALL_MATERIAL] >= 3750) - var/obj/item/stack/sheet/metal/G = new /obj/item/stack/sheet/metal(src.loc) + var/obj/item/stack/material/steel/G = new /obj/item/stack/material/steel(src.loc) G.amount = round(src.resources[DEFAULT_WALL_MATERIAL] / G.perunit) if(src.resources["glass"] >= 3750) - var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(src.loc) + var/obj/item/stack/material/glass/G = new /obj/item/stack/material/glass(src.loc) G.amount = round(src.resources["glass"] / G.perunit) if(src.resources["phoron"] >= 2000) - var/obj/item/stack/sheet/mineral/phoron/G = new /obj/item/stack/sheet/mineral/phoron(src.loc) + var/obj/item/stack/material/phoron/G = new /obj/item/stack/material/phoron(src.loc) G.amount = round(src.resources["phoron"] / G.perunit) if(src.resources["silver"] >= 2000) - var/obj/item/stack/sheet/mineral/silver/G = new /obj/item/stack/sheet/mineral/silver(src.loc) + var/obj/item/stack/material/silver/G = new /obj/item/stack/material/silver(src.loc) G.amount = round(src.resources["silver"] / G.perunit) if(src.resources["gold"] >= 2000) - var/obj/item/stack/sheet/mineral/gold/G = new /obj/item/stack/sheet/mineral/gold(src.loc) + var/obj/item/stack/material/gold/G = new /obj/item/stack/material/gold(src.loc) G.amount = round(src.resources["gold"] / G.perunit) if(src.resources["uranium"] >= 2000) - var/obj/item/stack/sheet/mineral/uranium/G = new /obj/item/stack/sheet/mineral/uranium(src.loc) + var/obj/item/stack/material/uranium/G = new /obj/item/stack/material/uranium(src.loc) G.amount = round(src.resources["uranium"] / G.perunit) if(src.resources["diamond"] >= 2000) - var/obj/item/stack/sheet/mineral/diamond/G = new /obj/item/stack/sheet/mineral/diamond(src.loc) + var/obj/item/stack/material/diamond/G = new /obj/item/stack/material/diamond(src.loc) G.amount = round(src.resources["diamond"] / G.perunit) qdel(src) return 1 @@ -807,19 +807,19 @@ var/material switch(W.type) - if(/obj/item/stack/sheet/mineral/gold) + if(/obj/item/stack/material/gold) material = "gold" - if(/obj/item/stack/sheet/mineral/silver) + if(/obj/item/stack/material/silver) material = "silver" - if(/obj/item/stack/sheet/mineral/diamond) + if(/obj/item/stack/material/diamond) material = "diamond" - if(/obj/item/stack/sheet/mineral/phoron) + if(/obj/item/stack/material/phoron) material = "phoron" - if(/obj/item/stack/sheet/metal) + if(/obj/item/stack/material/steel) material = DEFAULT_WALL_MATERIAL - if(/obj/item/stack/sheet/glass) + if(/obj/item/stack/material/glass) material = "glass" - if(/obj/item/stack/sheet/mineral/uranium) + if(/obj/item/stack/material/uranium) material = "uranium" else return ..() @@ -828,7 +828,7 @@ user << "The fabricator is currently processing. Please wait until completion." return - var/obj/item/stack/sheet/stack = W + var/obj/item/stack/material/stack = W var/sname = "[stack.name]" var/amnt = stack.perunit diff --git a/code/game/mecha/mecha_construction_paths.dm b/code/game/mecha/mecha_construction_paths.dm index 167b9f63d0..98e81cb83f 100644 --- a/code/game/mecha/mecha_construction_paths.dm +++ b/code/game/mecha/mecha_construction_paths.dm @@ -108,7 +108,7 @@ "backkey"=/obj/item/weapon/crowbar, "desc"="External armor is installed."), //3 - list("key"=/obj/item/stack/sheet/plasteel, + list("key"=/obj/item/stack/material/plasteel, "backkey"=/obj/item/weapon/weldingtool, "desc"="Internal armor is welded."), //4 @@ -120,7 +120,7 @@ "backkey"=/obj/item/weapon/crowbar, "desc"="Internal armor is installed"), //6 - list("key"=/obj/item/stack/sheet/metal, + list("key"=/obj/item/stack/material/steel, "backkey"=/obj/item/weapon/screwdriver, "desc"="Peripherals control module is secured"), //7 @@ -236,7 +236,7 @@ holder.icon_state = "ripley10" else user.visible_message("[user] pries internal armor layer from [holder].", "You prie internal armor layer from [holder].") - var/obj/item/stack/sheet/metal/MS = new /obj/item/stack/sheet/metal(get_turf(holder)) + var/obj/item/stack/material/steel/MS = new /obj/item/stack/material/steel(get_turf(holder)) MS.amount = 5 holder.icon_state = "ripley8" if(4) @@ -259,7 +259,7 @@ holder.icon_state = "ripley13" else user.visible_message("[user] pries external armor layer from [holder].", "You prie external armor layer from [holder].") - var/obj/item/stack/sheet/plasteel/MS = new /obj/item/stack/sheet/plasteel(get_turf(holder)) + var/obj/item/stack/material/plasteel/MS = new /obj/item/stack/material/plasteel(get_turf(holder)) MS.amount = 5 holder.icon_state = "ripley11" if(1) @@ -330,7 +330,7 @@ "backkey"=/obj/item/weapon/crowbar, "desc"="Internal armor is installed"), //6 - list("key"=/obj/item/stack/sheet/metal, + list("key"=/obj/item/stack/material/steel, "backkey"=/obj/item/weapon/screwdriver, "desc"="Advanced capacitor is secured"), //7 @@ -518,7 +518,7 @@ holder.icon_state = "gygax16" else user.visible_message("[user] pries internal armor layer from [holder].", "You prie internal armor layer from [holder].") - var/obj/item/stack/sheet/metal/MS = new /obj/item/stack/sheet/metal(get_turf(holder)) + var/obj/item/stack/material/steel/MS = new /obj/item/stack/material/steel(get_turf(holder)) MS.amount = 5 holder.icon_state = "gygax14" if(4) @@ -599,11 +599,11 @@ "backkey"=/obj/item/weapon/crowbar, "desc"="External armor is installed."), //3 - list("key"=/obj/item/stack/sheet/plasteel, + list("key"=/obj/item/stack/material/plasteel, "backkey"=/obj/item/weapon/crowbar, "desc"="External armor is being installed."), //4 - list("key"=/obj/item/stack/sheet/plasteel, + list("key"=/obj/item/stack/material/plasteel, "backkey"=/obj/item/weapon/weldingtool, "desc"="Internal armor is welded."), //5 @@ -616,7 +616,7 @@ "desc"="Internal armor is installed"), //7 - list("key"=/obj/item/stack/sheet/plasteel, + list("key"=/obj/item/stack/material/plasteel, "backkey"=/obj/item/weapon/screwdriver, "desc"="Peripherals control module is secured"), //8 @@ -733,7 +733,7 @@ holder.icon_state = "fireripley10" else user.visible_message("[user] pries internal armor layer from [holder].", "You prie internal armor layer from [holder].") - var/obj/item/stack/sheet/plasteel/MS = new /obj/item/stack/sheet/plasteel(get_turf(holder)) + var/obj/item/stack/material/plasteel/MS = new /obj/item/stack/material/plasteel(get_turf(holder)) MS.amount = 5 holder.icon_state = "fireripley8" if(5) @@ -756,7 +756,7 @@ holder.icon_state = "fireripley13" else user.visible_message("[user] removes the external armor from [holder].", "You remove the external armor from [holder].") - var/obj/item/stack/sheet/plasteel/MS = new /obj/item/stack/sheet/plasteel(get_turf(holder)) + var/obj/item/stack/material/plasteel/MS = new /obj/item/stack/material/plasteel(get_turf(holder)) MS.amount = 5 holder.icon_state = "fireripley11" if(2) @@ -765,7 +765,7 @@ holder.icon_state = "fireripley14" else user.visible_message("[user] pries external armor layer from [holder].", "You prie external armor layer from [holder].") - var/obj/item/stack/sheet/plasteel/MS = new /obj/item/stack/sheet/plasteel(get_turf(holder)) + var/obj/item/stack/material/plasteel/MS = new /obj/item/stack/material/plasteel(get_turf(holder)) MS.amount = 5 holder.icon_state = "fireripley12" if(1) @@ -833,7 +833,7 @@ "backkey"=/obj/item/weapon/crowbar, "desc"="Internal armor is installed"), //6 - list("key"=/obj/item/stack/sheet/metal, + list("key"=/obj/item/stack/material/steel, "backkey"=/obj/item/weapon/screwdriver, "desc"="Advanced capacitor is secured"), //7 @@ -1022,7 +1022,7 @@ holder.icon_state = "durand16" else user.visible_message("[user] pries internal armor layer from [holder].", "You prie internal armor layer from [holder].") - var/obj/item/stack/sheet/metal/MS = new /obj/item/stack/sheet/metal(get_turf(holder)) + var/obj/item/stack/material/steel/MS = new /obj/item/stack/material/steel(get_turf(holder)) MS.amount = 5 holder.icon_state = "durand14" if(4) @@ -1125,7 +1125,7 @@ "backkey"=/obj/item/weapon/crowbar, "desc"="External armor is installed."), //3 - list("key"=/obj/item/stack/sheet/plasteel, + list("key"=/obj/item/stack/material/plasteel, "backkey"=/obj/item/weapon/weldingtool, "desc"="Internal armor is welded."), //4 @@ -1137,7 +1137,7 @@ "backkey"=/obj/item/weapon/crowbar, "desc"="Internal armor is installed"), //6 - list("key"=/obj/item/stack/sheet/metal, + list("key"=/obj/item/stack/material/steel, "backkey"=/obj/item/weapon/screwdriver, "desc"="Peripherals control module is secured"), //7 @@ -1253,7 +1253,7 @@ holder.icon_state = "odysseus10" else user.visible_message("[user] pries internal armor layer from [holder].", "You prie internal armor layer from [holder].") - var/obj/item/stack/sheet/metal/MS = new /obj/item/stack/sheet/metal(get_turf(holder)) + var/obj/item/stack/material/steel/MS = new /obj/item/stack/material/steel(get_turf(holder)) MS.amount = 5 holder.icon_state = "odysseus8" if(4) @@ -1276,7 +1276,7 @@ user.visible_message("[user] secures external armor layer.", "You secure external reinforced armor layer.") holder.icon_state = "odysseus13" else - var/obj/item/stack/sheet/plasteel/MS = new /obj/item/stack/sheet/plasteel(get_turf(holder)) + var/obj/item/stack/material/plasteel/MS = new /obj/item/stack/material/plasteel(get_turf(holder)) MS.amount = 5 user.visible_message("[user] pries [MS] from [holder].", "You prie [MS] from [holder].") holder.icon_state = "odysseus11" diff --git a/code/game/mecha/mecha_wreckage.dm b/code/game/mecha/mecha_wreckage.dm index 8bbeb03fd7..d9e96bca19 100644 --- a/code/game/mecha/mecha_wreckage.dm +++ b/code/game/mecha/mecha_wreckage.dm @@ -10,7 +10,7 @@ density = 1 anchored = 0 opacity = 0 - var/list/welder_salvage = list(/obj/item/stack/sheet/plasteel,/obj/item/stack/sheet/metal,/obj/item/stack/rods) + var/list/welder_salvage = list(/obj/item/stack/material/plasteel,/obj/item/stack/material/steel,/obj/item/stack/rods) var/list/wirecutters_salvage = list(/obj/item/stack/cable_coil) var/list/crowbar_salvage var/salvage_num = 5 diff --git a/code/game/objects/items/apc_frame.dm b/code/game/objects/items/apc_frame.dm index 208a2111da..0f3fdde0d8 100644 --- a/code/game/objects/items/apc_frame.dm +++ b/code/game/objects/items/apc_frame.dm @@ -10,7 +10,7 @@ /obj/item/apc_frame/attackby(obj/item/weapon/W as obj, mob/user as mob) ..() if (istype(W, /obj/item/weapon/wrench)) - new /obj/item/stack/sheet/metal( get_turf(src.loc), 2 ) + new /obj/item/stack/material/steel( get_turf(src.loc), 2 ) qdel(src) /obj/item/apc_frame/proc/try_build(turf/on_wall) diff --git a/code/game/objects/items/devices/lightreplacer.dm b/code/game/objects/items/devices/lightreplacer.dm index e9c3687fe4..cd930cc577 100644 --- a/code/game/objects/items/devices/lightreplacer.dm +++ b/code/game/objects/items/devices/lightreplacer.dm @@ -71,8 +71,8 @@ Emag() return - if(istype(W, /obj/item/stack/sheet/glass)) - var/obj/item/stack/sheet/glass/G = W + if(istype(W, /obj/item/stack/material/glass)) + var/obj/item/stack/material/glass/G = W if(uses >= max_uses) user << "[src.name] is full." return diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index e1ebc9fdc1..563df642ef 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -125,8 +125,8 @@ /obj/item/robot_parts/robot_suit/attackby(obj/item/W as obj, mob/user as mob) ..() - if(istype(W, /obj/item/stack/sheet/metal) && !l_arm && !r_arm && !l_leg && !r_leg && !chest && !head) - var/obj/item/stack/sheet/metal/M = W + if(istype(W, /obj/item/stack/material/steel) && !l_arm && !r_arm && !l_leg && !r_leg && !chest && !head) + var/obj/item/stack/material/steel/M = W if (M.use(1)) var/obj/item/weapon/secbot_assembly/ed209_assembly/B = new /obj/item/weapon/secbot_assembly/ed209_assembly B.loc = get_turf(src) diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm index e3bbce8386..ff5514a3db 100644 --- a/code/game/objects/items/stacks/rods.dm +++ b/code/game/objects/items/stacks/rods.dm @@ -32,7 +32,7 @@ return if(WT.remove_fuel(0,user)) - var/obj/item/stack/sheet/metal/new_item = new(usr.loc) + var/obj/item/stack/material/steel/new_item = new(usr.loc) new_item.add_to_stacks(usr) for (var/mob/M in viewers(src)) M.show_message("\red [src] is shaped into metal by [user.name] with the weldingtool.", 3, "\red You hear welding.", 2) diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index cac3fffad7..8fb7493b8c 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -10,32 +10,19 @@ /* * Glass sheets */ -/obj/item/stack/sheet/glass +/obj/item/stack/material/glass name = "glass" - desc = "HOLY SHEET! That is a lot of glass." singular_name = "glass sheet" icon_state = "sheet-glass" - matter = list("glass" = 3750) - origin_tech = "materials=1" var/created_window = /obj/structure/window/basic var/is_reinforced = 0 var/list/construction_options = list("One Direction", "Full Window") - sheettype = "glass" + default_type = "glass" -/obj/item/stack/sheet/glass/cyborg - name = "glass synthesizer" - desc = "A device that makes glass." - gender = NEUTER - singular_name = "glass" - matter = null - uses_charge = 1 - charge_costs = list(1000) - stacktype = /obj/item/stack/sheet/glass - -/obj/item/stack/sheet/glass/attack_self(mob/user as mob) +/obj/item/stack/material/glass/attack_self(mob/user as mob) construct_window(user) -/obj/item/stack/sheet/glass/attackby(obj/item/W, mob/user) +/obj/item/stack/material/glass/attackby(obj/item/W, mob/user) ..() if(!is_reinforced) if(istype(W,/obj/item/stack/cable_coil)) @@ -54,10 +41,10 @@ user << "You need one rod and one sheet of glass to make reinforced glass." return - var/obj/item/stack/sheet/glass/reinforced/RG = new (user.loc) + var/obj/item/stack/material/glass/reinforced/RG = new (user.loc) RG.add_fingerprint(user) RG.add_to_stacks(user) - var/obj/item/stack/sheet/glass/G = src + var/obj/item/stack/material/glass/G = src src = null var/replace = (user.get_inactive_hand()==G) V.use(1) @@ -65,7 +52,7 @@ if (!G && replace) user.put_in_hands(RG) -/obj/item/stack/sheet/glass/proc/construct_window(mob/user as mob) +/obj/item/stack/material/glass/proc/construct_window(mob/user as mob) if(!user || !src) return 0 if(!istype(user.loc,/turf)) return 0 if(!user.IsAdvancedToolUser()) @@ -139,53 +126,34 @@ /* * Reinforced glass sheets */ -/obj/item/stack/sheet/glass/reinforced +/obj/item/stack/material/glass/reinforced name = "reinforced glass" - desc = "Glass which has been reinforced with metal rods." singular_name = "reinforced glass sheet" icon_state = "sheet-rglass" - - matter = list(DEFAULT_WALL_MATERIAL = 1875,"glass" = 3750) - origin_tech = "materials=2" - + default_type = "reinforced glass" created_window = /obj/structure/window/reinforced is_reinforced = 1 construction_options = list("One Direction", "Full Window", "Windoor") -/obj/item/stack/sheet/glass/reinforced/cyborg - name = "reinforced glass synthesizer" - desc = "A device that makes reinforced glass." - gender = NEUTER - matter = null - uses_charge = 2 - charge_costs = list(1000) - singular_name = "reinforced glass sheet" - icon_state = "sheet-rglass" - charge_costs = list(500, 1000) - stacktype = /obj/item/stack/sheet/glass/reinforced - /* * Phoron Glass sheets */ -/obj/item/stack/sheet/glass/phoronglass +/obj/item/stack/material/glass/phoronglass name = "phoron glass" - desc = "A very strong and very resistant sheet of a phoron-glass alloy." singular_name = "phoron glass sheet" icon_state = "sheet-phoronglass" - matter = list("glass" = 7500) - origin_tech = "materials=3;phorontech=2" created_window = /obj/structure/window/phoronbasic - sheettype = "phoronglass" + default_type = "phoronglass" -/obj/item/stack/sheet/glass/phoronglass/attackby(obj/item/W, mob/user) +/obj/item/stack/material/glass/phoronglass/attackby(obj/item/W, mob/user) ..() if( istype(W, /obj/item/stack/rods) ) var/obj/item/stack/rods/V = W - var/obj/item/stack/sheet/glass/phoronrglass/RG = new (user.loc) + var/obj/item/stack/material/glass/phoronrglass/RG = new (user.loc) RG.add_fingerprint(user) RG.add_to_stacks(user) V.use(1) - var/obj/item/stack/sheet/glass/G = src + var/obj/item/stack/material/glass/G = src src = null var/replace = (user.get_inactive_hand()==G) G.use(1) @@ -197,13 +165,10 @@ /* * Reinforced phoron glass sheets */ -/obj/item/stack/sheet/glass/phoronrglass +/obj/item/stack/material/glass/phoronrglass name = "reinforced phoron glass" - desc = "Phoron glass which has been reinforced with metal rods." singular_name = "reinforced phoron glass sheet" icon_state = "sheet-phoronrglass" - matter = list("glass" = 7500,DEFAULT_WALL_MATERIAL = 1875) - - origin_tech = "materials=4;phorontech=2" + default_type = "reinforced phoron glass" created_window = /obj/structure/window/phoronreinforced is_reinforced = 1 diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index 4090b9d2f2..b0de81ff55 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -1,39 +1,39 @@ -/obj/item/stack/sheet/animalhide/human +/obj/item/stack/material/animalhide/human name = "human skin" desc = "The by-product of human farming." singular_name = "human skin piece" icon_state = "sheet-hide" origin_tech = "" -/obj/item/stack/sheet/animalhide/corgi +/obj/item/stack/material/animalhide/corgi name = "corgi hide" desc = "The by-product of corgi farming." singular_name = "corgi hide piece" icon_state = "sheet-corgi" origin_tech = "" -/obj/item/stack/sheet/animalhide/cat +/obj/item/stack/material/animalhide/cat name = "cat hide" desc = "The by-product of cat farming." singular_name = "cat hide piece" icon_state = "sheet-cat" origin_tech = "" -/obj/item/stack/sheet/animalhide/monkey +/obj/item/stack/material/animalhide/monkey name = "monkey hide" desc = "The by-product of monkey farming." singular_name = "monkey hide piece" icon_state = "sheet-monkey" origin_tech = "" -/obj/item/stack/sheet/animalhide/lizard +/obj/item/stack/material/animalhide/lizard name = "lizard skin" desc = "Sssssss..." singular_name = "lizard skin piece" icon_state = "sheet-lizard" origin_tech = "" -/obj/item/stack/sheet/animalhide/xeno +/obj/item/stack/material/animalhide/xeno name = "alien hide" desc = "The skin of a terrible creature." singular_name = "alien hide piece" @@ -41,7 +41,7 @@ origin_tech = "" //don't see anywhere else to put these, maybe together they could be used to make the xenos suit? -/obj/item/stack/sheet/xenochitin +/obj/item/stack/material/xenochitin name = "alien chitin" desc = "A piece of the hide of a terrible creature." singular_name = "alien hide piece" @@ -63,14 +63,14 @@ icon_state = "weed_extract" origin_tech = "" -/obj/item/stack/sheet/hairlesshide +/obj/item/stack/material/hairlesshide name = "hairless hide" desc = "This hide was stripped of it's hair, but still needs tanning." singular_name = "hairless hide piece" icon_state = "sheet-hairlesshide" origin_tech = "" -/obj/item/stack/sheet/wetleather +/obj/item/stack/material/wetleather name = "wet leather" desc = "This leather has been cleaned but still needs to be dried." singular_name = "wet leather piece" @@ -79,7 +79,7 @@ var/wetness = 30 //Reduced when exposed to high temperautres var/drying_threshold_temperature = 500 //Kelvin to start drying -/obj/item/stack/sheet/leather +/obj/item/stack/material/leather name = "leather" desc = "The by-product of mob grinding." singular_name = "leather piece" @@ -90,7 +90,7 @@ //Step one - dehairing. -/obj/item/stack/sheet/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob) +/obj/item/stack/material/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob) if( istype(W, /obj/item/weapon/material/knife) || \ istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || \ istype(W, /obj/item/weapon/material/twohanded/fireaxe) || \ @@ -101,13 +101,13 @@ if(do_after(user,50)) usr << "\blue You cut the hair from this [src.singular_name]" //Try locating an exisitng stack on the tile and add to there if possible - for(var/obj/item/stack/sheet/hairlesshide/HS in usr.loc) + for(var/obj/item/stack/material/hairlesshide/HS in usr.loc) if(HS.amount < 50) HS.amount++ src.use(1) break //If it gets to here it means it did not find a suitable stack on the tile. - var/obj/item/stack/sheet/hairlesshide/HS = new(usr.loc) + var/obj/item/stack/material/hairlesshide/HS = new(usr.loc) HS.amount = 1 src.use(1) else @@ -117,20 +117,20 @@ //Step two - washing..... it's actually in washing machine code. //Step three - drying -/obj/item/stack/sheet/wetleather/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) +/obj/item/stack/material/wetleather/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) ..() if(exposed_temperature >= drying_threshold_temperature) wetness-- if(wetness == 0) //Try locating an exisitng stack on the tile and add to there if possible - for(var/obj/item/stack/sheet/leather/HS in src.loc) + for(var/obj/item/stack/material/leather/HS in src.loc) if(HS.amount < 50) HS.amount++ src.use(1) wetness = initial(wetness) break //If it gets to here it means it did not find a suitable stack on the tile. - var/obj/item/stack/sheet/leather/HS = new(src.loc) + var/obj/item/stack/material/leather/HS = new(src.loc) HS.amount = 1 wetness = initial(wetness) src.use(1) diff --git a/code/game/objects/items/stacks/sheets/light.dm b/code/game/objects/items/stacks/sheets/light.dm index f43d7ae320..b32cb54def 100644 --- a/code/game/objects/items/stacks/sheets/light.dm +++ b/code/game/objects/items/stacks/sheets/light.dm @@ -17,13 +17,13 @@ var/obj/item/stack/cable_coil/CC = new/obj/item/stack/cable_coil(user.loc) CC.amount = 5 amount-- - new/obj/item/stack/sheet/glass(user.loc) + new/obj/item/stack/material/glass(user.loc) if(amount <= 0) user.drop_from_inventory(src) qdel(src) - if(istype(O,/obj/item/stack/sheet/metal)) - var/obj/item/stack/sheet/metal/M = O + if(istype(O,/obj/item/stack/material/steel)) + var/obj/item/stack/material/steel/M = O if (M.use(1)) use(1) new/obj/item/stack/tile/light(get_turf(user)) diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm deleted file mode 100644 index 70ab7722f9..0000000000 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ /dev/null @@ -1,209 +0,0 @@ -/* -Mineral Sheets - Contains: - - Sandstone - - Diamond - - Uranium - - Phoron - - Gold - - Silver - - Enriched Uranium - - Platinum - - Metallic Hydrogen - - Tritium - - Osmium -*/ - -var/global/list/datum/stack_recipe/sandstone_recipes = list ( \ - new/datum/stack_recipe("pile of dirt", /obj/machinery/portable_atmospherics/hydroponics/soil, 3, time = 10, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("sandstone door", /obj/structure/mineral_door/sandstone, 10, one_per_turf = 1, on_floor = 1), \ - ) - -var/global/list/datum/stack_recipe/silver_recipes = list ( \ - new/datum/stack_recipe("silver door", /obj/structure/mineral_door/silver, 10, one_per_turf = 1, on_floor = 1), \ - ) - -var/global/list/datum/stack_recipe/diamond_recipes = list ( \ - new/datum/stack_recipe("diamond door", /obj/structure/mineral_door/transparent/diamond, 10, one_per_turf = 1, on_floor = 1), \ - ) - -var/global/list/datum/stack_recipe/uranium_recipes = list ( \ - new/datum/stack_recipe("uranium door", /obj/structure/mineral_door/uranium, 10, one_per_turf = 1, on_floor = 1), \ - ) - -var/global/list/datum/stack_recipe/gold_recipes = list ( \ - new/datum/stack_recipe("golden door", /obj/structure/mineral_door/gold, 10, one_per_turf = 1, on_floor = 1), \ - ) - -var/global/list/datum/stack_recipe/phoron_recipes = list ( \ - new/datum/stack_recipe("phoron door", /obj/structure/mineral_door/transparent/phoron, 10, one_per_turf = 1, on_floor = 1), \ - ) - -var/global/list/datum/stack_recipe/plastic_recipes = list ( \ - new/datum/stack_recipe("plastic crate", /obj/structure/closet/crate/plastic, 10, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("plastic ashtray", /obj/item/ashtray/plastic, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("plastic fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1), \ - new/datum/stack_recipe("plastic spoon", /obj/item/weapon/material/kitchen/utensil/spoon/plastic, 1, on_floor = 1), \ - new/datum/stack_recipe("plastic knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1), \ - new/datum/stack_recipe("plastic bag", /obj/item/weapon/storage/bag/plasticbag, 3, on_floor = 1), \ - new/datum/stack_recipe("blood pack", /obj/item/weapon/reagent_containers/blood/empty, 4, on_floor = 0), \ - new/datum/stack_recipe("reagent dispenser cartridge (large)", /obj/item/weapon/reagent_containers/chem_disp_cartridge, 5, on_floor=0), // 500u - new/datum/stack_recipe("reagent dispenser cartridge (med)", /obj/item/weapon/reagent_containers/chem_disp_cartridge/medium, 3, on_floor=0), // 250u - new/datum/stack_recipe("reagent dispenser cartridge (small)", /obj/item/weapon/reagent_containers/chem_disp_cartridge/small, 1, on_floor=0) // 100u - ) - -var/global/list/datum/stack_recipe/iron_recipes = list ( \ - new/datum/stack_recipe("iron door", /obj/structure/mineral_door/iron, 20, one_per_turf = 1, on_floor = 1), \ - null, \ -) - -/obj/item/stack/sheet/mineral - force = 5.0 - throwforce = 5 - w_class = 3.0 - throw_speed = 3 - throw_range = 3 - -/obj/item/stack/sheet/mineral/New() - ..() - pixel_x = rand(0,4)-4 - pixel_y = rand(0,4)-4 - -obj/item/stack/sheet/mineral/iron - name = "iron" - icon_state = "sheet-silver" - origin_tech = "materials=1" - sheettype = "iron" - color = "#333333" - perunit = 3750 - -obj/item/stack/sheet/mineral/iron/New() - ..() - recipes = iron_recipes - -/obj/item/stack/sheet/mineral/sandstone - name = "sandstone brick" - desc = "This appears to be a combination of both sand and stone." - singular_name = "sandstone brick" - icon_state = "sheet-sandstone" - throw_speed = 4 - throw_range = 5 - origin_tech = "materials=1" - sheettype = "sandstone" - -/obj/item/stack/sheet/mineral/sandstone/New() - ..() - recipes = sandstone_recipes - -/obj/item/stack/sheet/mineral/diamond - name = "diamond" - icon_state = "sheet-diamond" - origin_tech = "materials=6" - perunit = 3750 - sheettype = "diamond" - - -/obj/item/stack/sheet/mineral/diamond/New() - ..() - recipes = diamond_recipes - -/obj/item/stack/sheet/mineral/uranium - name = "uranium" - icon_state = "sheet-uranium" - origin_tech = "materials=5" - perunit = 2000 - sheettype = "uranium" - -/obj/item/stack/sheet/mineral/uranium/New() - ..() - recipes = uranium_recipes - -/obj/item/stack/sheet/mineral/phoron - name = "solid phoron" - icon_state = "sheet-phoron" - origin_tech = "phorontech=2;materials=2" - perunit = 2000 - sheettype = "phoron" - -/obj/item/stack/sheet/mineral/phoron/New() - ..() - recipes = phoron_recipes - -/obj/item/stack/sheet/mineral/plastic - name = "Plastic" - icon_state = "sheet-plastic" - origin_tech = "materials=3" - perunit = 2000 - sheettype = "plastic" - -/obj/item/stack/sheet/mineral/plastic/New() - ..() - recipes = plastic_recipes - -/obj/item/stack/sheet/mineral/plastic/cyborg - name = "plastic sheets synthesizer" - gender = NEUTER - uses_charge = 1 - charge_costs = list(1000) - stacktype = /obj/item/stack/sheet/mineral/plastic - -/obj/item/stack/sheet/mineral/gold - name = "gold" - icon_state = "sheet-gold" - origin_tech = "materials=4" - perunit = 2000 - sheettype = "gold" - -/obj/item/stack/sheet/mineral/gold/New() - ..() - recipes = gold_recipes - -/obj/item/stack/sheet/mineral/silver - name = "silver" - icon_state = "sheet-silver" - origin_tech = "materials=3" - perunit = 2000 - sheettype = "silver" - -/obj/item/stack/sheet/mineral/silver/New() - ..() - recipes = silver_recipes - -/obj/item/stack/sheet/mineral/enruranium - name = "enriched uranium" - icon_state = "sheet-enruranium" - origin_tech = "materials=5" - perunit = 1000 - -//Valuable resource, cargo can sell it. -/obj/item/stack/sheet/mineral/platinum - name = "platinum" - icon_state = "sheet-adamantine" - origin_tech = "materials=2" - sheettype = "platinum" - perunit = 2000 - -//Extremely valuable to Research. -/obj/item/stack/sheet/mineral/mhydrogen - name = "metallic hydrogen" - icon_state = "sheet-mythril" - origin_tech = "materials=6;powerstorage=5;magnets=5" - sheettype = "mhydrogen" - perunit = 2000 - -//Fuel for MRSPACMAN generator. -/obj/item/stack/sheet/mineral/tritium - name = "tritium" - icon_state = "sheet-silver" - sheettype = "tritium" - origin_tech = "materials=5" - color = "#777777" - perunit = 2000 - -/obj/item/stack/sheet/mineral/osmium - name = "osmium" - icon_state = "sheet-silver" - sheettype = "osmium" - origin_tech = "materials=5" - color = "#9999FF" - perunit = 2000 diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm deleted file mode 100644 index a1240042ba..0000000000 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ /dev/null @@ -1,223 +0,0 @@ -/* Diffrent misc types of sheets - * Contains: - * Metal - * Plasteel - * Wood - * Cloth - * Cardboard - */ - -/* - * Metal - */ -var/global/list/datum/stack_recipe/metal_recipes = list ( \ - new/datum/stack_recipe("stool", /obj/item/weapon/stool, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("chair", /obj/structure/bed/chair, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("bed", /obj/structure/bed, 2, one_per_turf = 1, on_floor = 1), \ - null, \ - new/datum/stack_recipe_list("office chairs",list( \ - new/datum/stack_recipe("dark office chair", /obj/structure/bed/chair/office/dark, 5, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("light office chair", /obj/structure/bed/chair/office/light, 5, one_per_turf = 1, on_floor = 1), \ - ), 5), \ - new/datum/stack_recipe_list("comfy chairs", list( \ - new/datum/stack_recipe("beige comfy chair", /obj/structure/bed/chair/comfy/beige, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("black comfy chair", /obj/structure/bed/chair/comfy/black, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("brown comfy chair", /obj/structure/bed/chair/comfy/brown, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("lime comfy chair", /obj/structure/bed/chair/comfy/lime, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("teal comfy chair", /obj/structure/bed/chair/comfy/teal, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("red comfy chair", /obj/structure/bed/chair/comfy/red, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("blue comfy chair", /obj/structure/bed/chair/comfy/blue, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("purple comfy chair", /obj/structure/bed/chair/comfy/purp, 2, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("green comfy chair", /obj/structure/bed/chair/comfy/green, 2, one_per_turf = 1, on_floor = 1), \ - ), 2), \ - null, \ - new/datum/stack_recipe("table frame", /obj/structure/table, 1, time = 10, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("rack", /obj/structure/table/rack, 1, time = 5, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("metal baseball bat", /obj/item/weapon/material/twohanded/baseballbat/metal, 10, time = 20, one_per_turf = 0, on_floor = 1), \ - new/datum/stack_recipe("closet", /obj/structure/closet, 2, time = 15, one_per_turf = 1, on_floor = 1), \ - null, \ - new/datum/stack_recipe("canister", /obj/machinery/portable_atmospherics/canister, 10, time = 15, one_per_turf = 1, on_floor = 1), \ - null, \ - new/datum/stack_recipe("cannon frame", /obj/item/weapon/cannonframe, 10, time = 15, one_per_turf = 0, on_floor = 0), \ - null, \ - new/datum/stack_recipe("floor tile", /obj/item/stack/tile/plasteel, 1, 4, 20), \ - new/datum/stack_recipe("metal rod", /obj/item/stack/rods, 1, 2, 60), \ - null, \ - new/datum/stack_recipe("computer frame", /obj/structure/computerframe, 5, time = 25, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("wall girders", /obj/structure/girder, 2, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("machine frame", /obj/machinery/constructable_frame/machine_frame, 5, time = 25, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("turret frame", /obj/machinery/porta_turret_construct, 5, time = 25, one_per_turf = 1, on_floor = 1), \ - null, \ - new/datum/stack_recipe_list("airlock assemblies", list( \ - new/datum/stack_recipe("standard airlock assembly", /obj/structure/door_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("command airlock assembly", /obj/structure/door_assembly/door_assembly_com, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("security airlock assembly", /obj/structure/door_assembly/door_assembly_sec, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("engineering airlock assembly", /obj/structure/door_assembly/door_assembly_eng, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("mining airlock assembly", /obj/structure/door_assembly/door_assembly_min, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("atmospherics airlock assembly", /obj/structure/door_assembly/door_assembly_atmo, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("research airlock assembly", /obj/structure/door_assembly/door_assembly_research, 4, time = 50, one_per_turf = 1, on_floor = 1), \ -/* new/datum/stack_recipe("science airlock assembly", /obj/structure/door_assembly/door_assembly_science, 4, time = 50, one_per_turf = 1, on_floor = 1), \ */ - new/datum/stack_recipe("medical airlock assembly", /obj/structure/door_assembly/door_assembly_med, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("maintenance airlock assembly", /obj/structure/door_assembly/door_assembly_mai, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("external airlock assembly", /obj/structure/door_assembly/door_assembly_ext, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("freezer airlock assembly", /obj/structure/door_assembly/door_assembly_fre, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("airtight hatch assembly", /obj/structure/door_assembly/door_assembly_hatch, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("maintenance hatch assembly", /obj/structure/door_assembly/door_assembly_mhatch, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("high security airlock assembly", /obj/structure/door_assembly/door_assembly_highsecurity, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("emergency shutter", /obj/structure/firedoor_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("multi-tile airlock assembly", /obj/structure/door_assembly/multi_tile, 4, time = 50, one_per_turf = 1, on_floor = 1), \ - ), 4), \ - null, \ - new/datum/stack_recipe("grenade casing", /obj/item/weapon/grenade/chem_grenade), \ - new/datum/stack_recipe("light fixture frame", /obj/item/frame/light, 2), \ - new/datum/stack_recipe("small light fixture frame", /obj/item/frame/light/small, 1), \ - null, \ - new/datum/stack_recipe("apc frame", /obj/item/apc_frame, 2), \ - new/datum/stack_recipe("air alarm frame", /obj/item/frame/air_alarm, 2), \ - new/datum/stack_recipe("fire alarm frame", /obj/item/frame/fire_alarm, 2), \ - null, \ - new/datum/stack_recipe("knife blade", /obj/item/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1) \ -) - -/obj/item/stack/sheet/metal - name = DEFAULT_WALL_MATERIAL - desc = "Sheets made out off steel." - singular_name = "metal sheet" - icon_state = "sheet-metal" - matter = list(DEFAULT_WALL_MATERIAL = 3750) - throwforce = 14.0 - flags = CONDUCT - origin_tech = "materials=1" - sheettype = DEFAULT_WALL_MATERIAL - -/obj/item/stack/sheet/metal/cyborg - name = "steel synthesizer" - desc = "A device that makes steel sheets." - gender = NEUTER - matter = null - uses_charge = 1 - charge_costs = list(1000) - stacktype = /obj/item/stack/sheet/metal - -/obj/item/stack/sheet/metal/New(var/loc, var/amount=null) - recipes = metal_recipes - return ..() - - -/* - * Plasteel - */ -var/global/list/datum/stack_recipe/plasteel_recipes = list ( \ - new/datum/stack_recipe("AI core", /obj/structure/AIcore, 4, time = 50, one_per_turf = 1), \ - new/datum/stack_recipe("Metal crate", /obj/structure/closet/crate, 10, time = 50, one_per_turf = 1), \ - new/datum/stack_recipe("RUST fuel assembly port frame", /obj/item/frame/rust/assembly, 12, time = 50, one_per_turf = 1), \ - new/datum/stack_recipe("RUST fuel compressor frame", /obj/item/frame/rust, 12, time = 50, one_per_turf = 1), \ - new/datum/stack_recipe("knife grip", /obj/item/butterflyhandle, 4, time = 20, one_per_turf = 0, on_floor = 1), - ) - -/obj/item/stack/sheet/plasteel - name = "plasteel" - singular_name = "plasteel sheet" - desc = "This sheet is an alloy of iron and platinum." - icon_state = "sheet-plasteel" - item_state = "sheet-metal" - matter = list(DEFAULT_WALL_MATERIAL = 7500) - throwforce = 15.0 - flags = CONDUCT - origin_tech = "materials=2" - sheettype = "plasteel" - -/obj/item/stack/sheet/plasteel/cyborg - name = "plasteel synthesizer" - desc = "A device that makes plasteel sheets." - gender = NEUTER - singular_name = "plasteel sheet" - matter = null - uses_charge = 1 - charge_costs = list(1000) - stacktype = /obj/item/stack/sheet/plasteel - -/obj/item/stack/sheet/plasteel/New(var/loc, var/amount=null) - recipes = plasteel_recipes - return ..() - -/* - * Wood - */ -var/global/list/datum/stack_recipe/wood_recipes = list ( \ - new/datum/stack_recipe("wooden sandals", /obj/item/clothing/shoes/sandal, 1), \ - new/datum/stack_recipe("wood floor tile", /obj/item/stack/tile/wood, 1, 4, 20), \ - new/datum/stack_recipe("wooden chair", /obj/structure/bed/chair/wood, 3, time = 10, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/wooden, 5, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("crossbow frame", /obj/item/weapon/crossbowframe, 5, time = 25, one_per_turf = 0, on_floor = 0), \ - new/datum/stack_recipe("wooden door", /obj/structure/mineral_door/wood, 10, time = 20, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("coffin", /obj/structure/closet/coffin, 5, time = 15, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("baseball bat", /obj/item/weapon/material/twohanded/baseballbat, 10, time = 20, one_per_turf = 0, on_floor = 1) \ -// new/datum/stack_recipe("apiary", /obj/item/apiary, 10, time = 25, one_per_turf = 0, on_floor = 0) - ) - -/obj/item/stack/sheet/wood - name = "wooden plank" - desc = "One can only guess that this is a bunch of wood." - singular_name = "wood plank" - icon_state = "sheet-wood" - origin_tech = "materials=1;biotech=1" - sheettype = "wood" - -/obj/item/stack/sheet/wood/cyborg - name = "wood synthesizer" - desc = "A device that makes wooden planks." - gender = NEUTER - singular_name = "wood plank" - icon_state = "sheet-wood" - uses_charge = 1 - charge_costs = list(1000) - stacktype = /obj/item/stack/sheet/wood - -/obj/item/stack/sheet/wood/New(var/loc, var/amount=null) - recipes = wood_recipes - return ..() - -/* - * Cloth - */ -/obj/item/stack/sheet/cloth - name = "cloth" - desc = "This roll of cloth is made from only the finest chemicals and bunny rabbits." - singular_name = "cloth roll" - icon_state = "sheet-cloth" - origin_tech = "materials=2" - -/* - * Cardboard - */ -var/global/list/datum/stack_recipe/cardboard_recipes = list ( \ - new/datum/stack_recipe("box", /obj/item/weapon/storage/box), \ - new/datum/stack_recipe("donut box", /obj/item/weapon/storage/box/donut/empty), \ - new/datum/stack_recipe("egg box", /obj/item/weapon/storage/fancy/egg_box), \ - new/datum/stack_recipe("light tubes", /obj/item/weapon/storage/box/lights/tubes), \ - new/datum/stack_recipe("light bulbs", /obj/item/weapon/storage/box/lights/bulbs), \ - new/datum/stack_recipe("mouse traps", /obj/item/weapon/storage/box/mousetraps), \ - new/datum/stack_recipe("cardborg suit", /obj/item/clothing/suit/cardborg, 3), \ - new/datum/stack_recipe("cardborg helmet", /obj/item/clothing/head/cardborg), \ - new/datum/stack_recipe("pizza box", /obj/item/pizzabox), \ - null, \ - new/datum/stack_recipe_list("folders",list( \ - new/datum/stack_recipe("blue folder", /obj/item/weapon/folder/blue), \ - new/datum/stack_recipe("grey folder", /obj/item/weapon/folder), \ - new/datum/stack_recipe("red folder", /obj/item/weapon/folder/red), \ - new/datum/stack_recipe("white folder", /obj/item/weapon/folder/white), \ - new/datum/stack_recipe("yellow folder", /obj/item/weapon/folder/yellow), \ - )) \ -) - -/obj/item/stack/sheet/cardboard //BubbleWrap - name = "cardboard" - desc = "Large sheets of card, like boxes folded flat." - singular_name = "cardboard sheet" - icon_state = "sheet-card" - origin_tech = "materials=1" - -/obj/item/stack/sheet/cardboard/New(var/loc, var/amount=null) - recipes = cardboard_recipes - return ..() diff --git a/code/game/objects/items/stacks/sheets/sheets.dm b/code/game/objects/items/stacks/sheets/sheets.dm deleted file mode 100644 index ed0a9d2a31..0000000000 --- a/code/game/objects/items/stacks/sheets/sheets.dm +++ /dev/null @@ -1,25 +0,0 @@ -/obj/item/stack/sheet - name = "sheet" - w_class = 3.0 - force = 5 - throwforce = 5 - max_amount = 50 - throw_speed = 3 - throw_range = 3 - attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "smashed") - var/perunit = 3750 - var/sheettype = null //this is used for girders in the creation of walls/false walls - - -// Since the sheetsnatcher was consolidated into weapon/storage/bag we now use -// item/attackby() properly, making this unnecessary - -/*/obj/item/stack/sheet/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/storage/bag/sheetsnatcher)) - var/obj/item/weapon/storage/bag/sheetsnatcher/S = W - if(!S.mode) - S.add(src,user) - else - for (var/obj/item/stack/sheet/stack in locate(src.x,src.y,src.z)) - S.add(stack,user) - ..()*/ diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index a34e39ab9a..e7dc25fae5 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -129,7 +129,11 @@ return if (use(required)) - var/atom/O = new recipe.result_type(user.loc) + var/atom/O + if(recipe.use_material) + O = new recipe.result_type(user.loc, recipe.use_material) + else + O = new recipe.result_type(user.loc) O.set_dir(user.dir) O.add_fingerprint(user) @@ -338,7 +342,9 @@ var/time = 0 var/one_per_turf = 0 var/on_floor = 0 - New(title, result_type, req_amount = 1, res_amount = 1, max_res_amount = 1, time = 0, one_per_turf = 0, on_floor = 0) + var/use_material + + New(title, result_type, req_amount = 1, res_amount = 1, max_res_amount = 1, time = 0, one_per_turf = 0, on_floor = 0, supplied_material = null) src.title = title src.result_type = result_type src.req_amount = req_amount @@ -347,6 +353,7 @@ src.time = time src.one_per_turf = one_per_turf src.on_floor = on_floor + src.use_material = supplied_material /* * Recipe list datum diff --git a/code/game/objects/items/stacks/tiles/light.dm b/code/game/objects/items/stacks/tiles/light.dm index dc57abc513..9785d04bb7 100644 --- a/code/game/objects/items/stacks/tiles/light.dm +++ b/code/game/objects/items/stacks/tiles/light.dm @@ -28,7 +28,7 @@ /obj/item/stack/tile/light/attackby(var/obj/item/O as obj, var/mob/user as mob) ..() if(istype(O,/obj/item/weapon/crowbar)) - new/obj/item/stack/sheet/metal(user.loc) + new/obj/item/stack/material/steel(user.loc) amount-- new/obj/item/stack/light_w(user.loc) if(amount <= 0) diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm index 52eaa4510d..d91ecb463c 100644 --- a/code/game/objects/items/weapons/storage/bags.dm +++ b/code/game/objects/items/weapons/storage/bags.dm @@ -119,12 +119,12 @@ //verbs += /obj/item/weapon/storage/bag/sheetsnatcher/quick_empty can_be_inserted(obj/item/W as obj, stop_messages = 0) - if(!istype(W,/obj/item/stack/sheet) || istype(W,/obj/item/stack/sheet/mineral/sandstone) || istype(W,/obj/item/stack/sheet/wood)) + if(!istype(W,/obj/item/stack/material) || istype(W,/obj/item/stack/material/sandstone) || istype(W,/obj/item/stack/material/wood)) if(!stop_messages) usr << "The snatcher does not accept [W]." return 0 //I don't care, but the existing code rejects them for not being "sheets" *shrug* -Sayu var/current = 0 - for(var/obj/item/stack/sheet/S in contents) + for(var/obj/item/stack/material/S in contents) current += S.amount if(capacity == current)//If it's full, you're done if(!stop_messages) @@ -135,20 +135,20 @@ // Modified handle_item_insertion. Would prefer not to, but... handle_item_insertion(obj/item/W as obj, prevent_warning = 0) - var/obj/item/stack/sheet/S = W + var/obj/item/stack/material/S = W if(!istype(S)) return 0 var/amount var/inserted = 0 var/current = 0 - for(var/obj/item/stack/sheet/S2 in contents) + for(var/obj/item/stack/material/S2 in contents) current += S2.amount if(capacity < current + S.amount)//If the stack will fill it up amount = capacity - current else amount = S.amount - for(var/obj/item/stack/sheet/sheet in contents) + for(var/obj/item/stack/material/sheet in contents) if(S.type == sheet.type) // we are violating the amount limitation because these are not sane objects sheet.amount += amount // they should only be removed through procs in this file, which split them up. S.amount -= amount @@ -183,7 +183,7 @@ if(display_contents_with_number) numbered_contents = list() adjusted_contents = 0 - for(var/obj/item/stack/sheet/I in contents) + for(var/obj/item/stack/material/I in contents) adjusted_contents++ var/datum/numbered_display/D = new/datum/numbered_display(I) D.number = I.amount @@ -200,9 +200,9 @@ // Modified quick_empty verb drops appropriate sized stacks quick_empty() var/location = get_turf(src) - for(var/obj/item/stack/sheet/S in contents) + for(var/obj/item/stack/material/S in contents) while(S.amount) - var/obj/item/stack/sheet/N = new S.type(location) + var/obj/item/stack/material/N = new S.type(location) var/stacksize = min(S.amount,N.max_amount) N.amount = stacksize S.amount -= stacksize @@ -215,7 +215,7 @@ // Instead of removing remove_from_storage(obj/item/W as obj, atom/new_location) - var/obj/item/stack/sheet/S = W + var/obj/item/stack/material/S = W if(!istype(S)) return 0 //I would prefer to drop a new stack, but the item/attack_hand code @@ -224,7 +224,7 @@ // -Sayu if(S.amount > S.max_amount) - var/obj/item/stack/sheet/temp = new S.type(src) + var/obj/item/stack/material/temp = new S.type(src) temp.amount = S.amount - S.max_amount S.amount = S.max_amount diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index d5af4b2bc7..0f8cbcc10f 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -598,7 +598,7 @@ icon_state = "light" desc = "This box is shaped on the inside so that only light tubes and bulbs fit." item_state = "syringe_kit" - foldable = /obj/item/stack/sheet/cardboard //BubbleWrap + foldable = /obj/item/stack/material/cardboard //BubbleWrap storage_slots=21 can_hold = list(/obj/item/weapon/light/tube, /obj/item/weapon/light/bulb) max_storage_space = 42 //holds 21 items of w_class 2 diff --git a/code/game/objects/items/weapons/storage/misc.dm b/code/game/objects/items/weapons/storage/misc.dm index 65e1bfea37..6bd9495714 100644 --- a/code/game/objects/items/weapons/storage/misc.dm +++ b/code/game/objects/items/weapons/storage/misc.dm @@ -18,7 +18,7 @@ storage_slots = 6 var/startswith = 6 can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/donut) - foldable = /obj/item/stack/sheet/cardboard + foldable = /obj/item/stack/material/cardboard /obj/item/weapon/storage/box/donut/New() ..() diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 5e1a551cec..71c8dd4c4d 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -202,7 +202,7 @@ if(!WT.remove_fuel(0,user)) user << "You need more welding fuel to complete this task." return - new /obj/item/stack/sheet/metal(src.loc) + new /obj/item/stack/material/steel(src.loc) for(var/mob/M in viewers(src)) M.show_message("\The [src] has been cut apart by [user] with \the [WT].", 3, "You hear welding.", 2) qdel(src) @@ -329,25 +329,25 @@ escapee.next_move = world.time + 100 escapee.last_special = world.time + 100 escapee << "You lean on the back of \the [src] and start pushing the door open. (this will take about [breakout_time] minutes)" - + visible_message("The [src] begins to shake violently!") breakout = 1 //can't think of a better way to do this right now. for(var/i in 1 to (6*breakout_time * 2)) //minutes * 6 * 5seconds * 2 playsound(src.loc, 'sound/effects/grillehit.ogg', 100, 1) animate_shake() - + if(!do_after(escapee, 50)) //5 seconds breakout = 0 return - if(!escapee || escapee.stat || escapee.loc != src) + if(!escapee || escapee.stat || escapee.loc != src) breakout = 0 return //closet/user destroyed OR user dead/unconcious OR user no longer in closet OR closet opened //Perform the same set of checks as above for weld and lock status to determine if there is even still a point in 'resisting'... if(!req_breakout()) breakout = 0 return - + //Well then break it! breakout = 0 escapee << "You successfully break out!" diff --git a/code/game/objects/structures/crates_lockers/closets/syndicate.dm b/code/game/objects/structures/crates_lockers/closets/syndicate.dm index 2f6b66e5ce..2214a17f8e 100644 --- a/code/game/objects/structures/crates_lockers/closets/syndicate.dm +++ b/code/game/objects/structures/crates_lockers/closets/syndicate.dm @@ -41,7 +41,7 @@ /obj/structure/closet/syndicate/nuclear/New() ..() - + new /obj/item/ammo_magazine/a12mm(src) new /obj/item/ammo_magazine/a12mm(src) new /obj/item/ammo_magazine/a12mm(src) @@ -86,35 +86,35 @@ //Metal (common ore) if(pickednum >= 2) - new /obj/item/stack/sheet/metal(src, rand(common_min, common_max)) + new /obj/item/stack/material/steel(src, rand(common_min, common_max)) //Glass (common ore) if(pickednum >= 5) - new /obj/item/stack/sheet/glass(src, rand(common_min, common_max)) + new /obj/item/stack/material/glass(src, rand(common_min, common_max)) //Plasteel (common ore) Because it has a million more uses then phoron if(pickednum >= 10) - new /obj/item/stack/sheet/plasteel(src, rand(common_min, common_max)) + new /obj/item/stack/material/plasteel(src, rand(common_min, common_max)) //Phoron (rare ore) if(pickednum >= 15) - new /obj/item/stack/sheet/mineral/phoron(src, rand(rare_min, rare_max)) + new /obj/item/stack/material/phoron(src, rand(rare_min, rare_max)) //Silver (rare ore) if(pickednum >= 20) - new /obj/item/stack/sheet/mineral/silver(src, rand(rare_min, rare_max)) + new /obj/item/stack/material/silver(src, rand(rare_min, rare_max)) //Gold (rare ore) if(pickednum >= 30) - new /obj/item/stack/sheet/mineral/gold(src, rand(rare_min, rare_max)) + new /obj/item/stack/material/gold(src, rand(rare_min, rare_max)) //Uranium (rare ore) if(pickednum >= 40) - new /obj/item/stack/sheet/mineral/uranium(src, rand(rare_min, rare_max)) + new /obj/item/stack/material/uranium(src, rand(rare_min, rare_max)) //Diamond (rare HONK) if(pickednum >= 45) - new /obj/item/stack/sheet/mineral/diamond(src, rand(rare_min, rare_max)) + new /obj/item/stack/material/diamond(src, rand(rare_min, rare_max)) //Jetpack (You hit the jackpot!) if(pickednum == 50) @@ -127,14 +127,14 @@ New() var/list/resources = list( - /obj/item/stack/sheet/metal, - /obj/item/stack/sheet/glass, - /obj/item/stack/sheet/mineral/gold, - /obj/item/stack/sheet/mineral/silver, - /obj/item/stack/sheet/mineral/phoron, - /obj/item/stack/sheet/mineral/uranium, - /obj/item/stack/sheet/mineral/diamond, - /obj/item/stack/sheet/plasteel, + /obj/item/stack/material/steel, + /obj/item/stack/material/glass, + /obj/item/stack/material/gold, + /obj/item/stack/material/silver, + /obj/item/stack/material/phoron, + /obj/item/stack/material/uranium, + /obj/item/stack/material/diamond, + /obj/item/stack/material/plasteel, /obj/item/stack/rods ) diff --git a/code/game/objects/structures/crates_lockers/largecrate.dm b/code/game/objects/structures/crates_lockers/largecrate.dm index a0ef655579..54a9fc8092 100644 --- a/code/game/objects/structures/crates_lockers/largecrate.dm +++ b/code/game/objects/structures/crates_lockers/largecrate.dm @@ -11,7 +11,7 @@ /obj/structure/largecrate/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/crowbar)) - new /obj/item/stack/sheet/wood(src) + new /obj/item/stack/material/wood(src) var/turf/T = get_turf(src) for(var/obj/O in contents) O.loc = T diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index a15650405e..169b1deebd 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -150,7 +150,7 @@ if(do_after(user, 40)) if(!src || !WT.isOn()) return user << "\blue You welded the [glass] plating off!" - var/M = text2path("/obj/item/stack/sheet/mineral/[glass]") + var/M = text2path("/obj/item/stack/material/[glass]") new M(src.loc, 2) glass = 0 else if(glass == 1) @@ -158,14 +158,14 @@ if(do_after(user, 40)) if(!src || !WT.isOn()) return user << "\blue You welded the glass panel out!" - new /obj/item/stack/sheet/glass/reinforced(src.loc) + new /obj/item/stack/material/glass/reinforced(src.loc) glass = 0 else if(!anchored) user.visible_message("[user] dissassembles the airlock assembly.", "You start to dissassemble the airlock assembly.") if(do_after(user, 40)) if(!src || !WT.isOn()) return user << "\blue You dissasembled the airlock assembly!" - new /obj/item/stack/sheet/metal(src.loc, 4) + new /obj/item/stack/material/steel(src.loc, 4) qdel (src) else user << "\blue You need more welding fuel." @@ -235,19 +235,19 @@ electronics.loc = src.loc electronics = null - else if(istype(W, /obj/item/stack/sheet) && !glass) - var/obj/item/stack/sheet/S = W + else if(istype(W, /obj/item/stack/material) && !glass) + var/obj/item/stack/material/S = W if (S) if (S.get_amount() >= 1) - if(istype(S, /obj/item/stack/sheet/glass/reinforced)) + if(istype(S, /obj/item/stack/material/glass/reinforced)) playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) user.visible_message("[user] adds [S.name] to the airlock assembly.", "You start to install [S.name] into the airlock assembly.") if(do_after(user, 40) && !glass) if (S.use(1)) user << "You installed reinforced glass windows into the airlock assembly." glass = 1 - else if(istype(S, /obj/item/stack/sheet/mineral) && S.sheettype) - var/M = S.sheettype + else if(istype(S, /obj/item/stack/material) && S.default_type) + var/M = S.default_type // Ugly hack, will suffice for now. Need to fix it upstream as well, may rewrite mineral walls. ~Z if(M in list("mhydrogen","osmium","tritium","platinum","iron")) user << "You cannot make an airlock out of that material." diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index e8cb65a33d..dc894a6474 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -105,13 +105,13 @@ health = 50 cover = 25 - else if(istype(W, /obj/item/stack/sheet)) + else if(istype(W, /obj/item/stack/material)) - var/obj/item/stack/sheet/S = W + var/obj/item/stack/material/S = W if(S.get_amount() < 2) return ..() - var/material/M = name_to_material[S.sheettype] + var/material/M = name_to_material[S.default_type] if(!istype(M)) return ..() @@ -171,7 +171,7 @@ user << "\The [src] is already reinforced." return - var/obj/item/stack/sheet/S = user.l_hand + var/obj/item/stack/material/S = user.l_hand if(!istype(S)) S = user.r_hand if(!istype(S)) @@ -182,7 +182,7 @@ user << "There is not enough material here to reinforce the girder." return - var/material/M = name_to_material[S.sheettype] + var/material/M = name_to_material[S.default_type] if(!istype(M) || M.integrity < 50) user << "You cannot reinforce \the [src] with that; it is too soft." return @@ -197,7 +197,7 @@ /obj/structure/girder/proc/dismantle() - new /obj/item/stack/sheet/metal(get_turf(src)) + new /obj/item/stack/material/steel(get_turf(src)) qdel(src) /obj/structure/girder/attack_hand(mob/user as mob) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index 619021c45e..12090ee077 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -114,8 +114,8 @@ return //window placing begin - else if(istype(W,/obj/item/stack/sheet/glass)) - var/obj/item/stack/sheet/glass/ST = W + else if(istype(W,/obj/item/stack/material/glass)) + var/obj/item/stack/material/glass/ST = W var/dir_to_set = 1 if(loc == user.loc) dir_to_set = user.dir diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index 695b11db95..63ef8fe31f 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -224,7 +224,7 @@ Dismantle(devastated = 0) if(!devastated) for(var/i = 1, i <= oreAmount, i++) - new/obj/item/stack/sheet/wood(get_turf(src)) + new/obj/item/stack/material/wood(get_turf(src)) qdel(src) /obj/structure/mineral_door/resin diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm index 586a11d181..fb13813970 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm @@ -33,13 +33,13 @@ /obj/structure/bed/blob_act() if(prob(75)) - new /obj/item/stack/sheet/metal(src.loc) + new /obj/item/stack/material/steel(src.loc) qdel(src) /obj/structure/bed/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - new /obj/item/stack/sheet/metal(src.loc) + new /obj/item/stack/material/steel(src.loc) qdel(src) else if(istype(W, /obj/item/weapon/grab)) user.visible_message("[user] attempts to buckle [W:affecting] into \the [src]!") diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm index b811294a07..c49e6f8b86 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm @@ -78,7 +78,7 @@ /obj/structure/bed/chair/wood/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - new /obj/item/stack/sheet/wood(src.loc) + new /obj/item/stack/material/wood(src.loc) qdel(src) else ..() diff --git a/code/game/objects/structures/stool_bed_chair_nest/stools.dm b/code/game/objects/structures/stool_bed_chair_nest/stools.dm index 8de3bcf0a5..77d20c1f7a 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/stools.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/stools.dm @@ -11,7 +11,7 @@ if (prob(5) && istype(M,/mob/living)) user.visible_message("\red [user] breaks [src] over [M]'s back!") user.remove_from_mob(src) - var/obj/item/stack/sheet/metal/m = new/obj/item/stack/sheet/metal + var/obj/item/stack/material/steel/m = new/obj/item/stack/material/steel m.loc = get_turf(src) qdel(src) var/mob/living/T = M @@ -36,12 +36,12 @@ /obj/item/weapon/stool/blob_act() if(prob(75)) - new /obj/item/stack/sheet/metal(src.loc) + new /obj/item/stack/material/steel(src.loc) qdel(src) /obj/item/weapon/stool/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - new /obj/item/stack/sheet/metal(src.loc) - qdel(src) + new /obj/item/stack/material/steel(src.loc) + qdel(src) ..() diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 36135a775e..7d49acba97 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -34,7 +34,7 @@ obj/structure/windoor_assembly/New(Loc, start_dir=NORTH, constructed=0) set_dir(start_dir) else //If the user is facing northeast. northwest, southeast, southwest or north, default to north set_dir(NORTH) - + update_nearby_tiles(need_rebuild=1) obj/structure/windoor_assembly/Destroy() @@ -76,7 +76,7 @@ obj/structure/windoor_assembly/Destroy() if(do_after(user, 40)) if(!src || !WT.isOn()) return user << "\blue You dissasembled the windoor assembly!" - new /obj/item/stack/sheet/glass/reinforced(get_turf(src), 5) + new /obj/item/stack/material/glass/reinforced(get_turf(src), 5) if(secure) PoolOrNew(/obj/item/stack/rods, list(get_turf(src), 4)) qdel(src) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 656ea7e781..ffb4f641b6 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -262,7 +262,7 @@ else visible_message("[user] dismantles \the [src].") if(dir == SOUTHWEST) - var/obj/item/stack/sheet/mats = new glasstype(loc) + var/obj/item/stack/material/mats = new glasstype(loc) mats.amount = is_fulltile() ? 4 : 2 else new glasstype(loc) @@ -398,7 +398,7 @@ desc = "It looks thin and flimsy. A few knocks with... anything, really should shatter it." icon_state = "window" basestate = "window" - glasstype = /obj/item/stack/sheet/glass + glasstype = /obj/item/stack/material/glass /obj/structure/window/phoronbasic @@ -407,7 +407,7 @@ basestate = "phoronwindow" icon_state = "phoronwindow" shardtype = /obj/item/weapon/material/shard/phoron - glasstype = /obj/item/stack/sheet/glass/phoronglass + glasstype = /obj/item/stack/material/glass/phoronglass maxhealth = 120 /obj/structure/window/phoronbasic/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) @@ -421,7 +421,7 @@ basestate = "phoronrwindow" icon_state = "phoronrwindow" shardtype = /obj/item/weapon/material/shard/phoron - glasstype = /obj/item/stack/sheet/glass/phoronrglass + glasstype = /obj/item/stack/material/glass/phoronrglass reinf = 1 maxhealth = 160 @@ -435,7 +435,7 @@ basestate = "rwindow" maxhealth = 40 reinf = 1 - glasstype = /obj/item/stack/sheet/glass/reinforced + glasstype = /obj/item/stack/material/glass/reinforced /obj/structure/window/New(Loc, constructed=0) ..() diff --git a/code/game/supplyshuttle.dm b/code/game/supplyshuttle.dm index 2b39256e5b..dbf52d81b2 100644 --- a/code/game/supplyshuttle.dm +++ b/code/game/supplyshuttle.dm @@ -205,13 +205,13 @@ var/list/mechtoys = list( continue // Sell phoron - if(istype(A, /obj/item/stack/sheet/mineral/phoron)) - var/obj/item/stack/sheet/mineral/phoron/P = A + if(istype(A, /obj/item/stack/material/phoron)) + var/obj/item/stack/material/phoron/P = A phoron_count += P.get_amount() // Sell platinum - if(istype(A, /obj/item/stack/sheet/mineral/platinum)) - var/obj/item/stack/sheet/mineral/platinum/P = A + if(istype(A, /obj/item/stack/material/platinum)) + var/obj/item/stack/material/platinum/P = A plat_count += P.get_amount() qdel(MA) diff --git a/code/game/turfs/simulated/floor.dm b/code/game/turfs/simulated/floor.dm index bb7d93fbf1..b34144fc39 100644 --- a/code/game/turfs/simulated/floor.dm +++ b/code/game/turfs/simulated/floor.dm @@ -84,12 +84,12 @@ var/list/wood_icons = list("wood","wood-broken") if(2.0) switch(pick(40;1,40;2,3)) if (1) - if(prob(33)) new /obj/item/stack/sheet/metal(src) + if(prob(33)) new /obj/item/stack/material/steel(src) src.ReplaceWithLattice() if(2) src.ChangeTurf(/turf/space) if(3) - if(prob(33)) new /obj/item/stack/sheet/metal(src) + if(prob(33)) new /obj/item/stack/material/steel(src) if(prob(80)) src.break_tile_to_plating() else diff --git a/code/modules/clothing/spacesuits/breaches.dm b/code/modules/clothing/spacesuits/breaches.dm index 495f7b9f24..6789a50dfc 100644 --- a/code/modules/clothing/spacesuits/breaches.dm +++ b/code/modules/clothing/spacesuits/breaches.dm @@ -178,7 +178,7 @@ var/global/list/breach_burn_descriptors = list( //Handles repairs (and also upgrades). /obj/item/clothing/suit/space/attackby(obj/item/W as obj, mob/user as mob) - if(istype(W,/obj/item/stack/sheet/mineral/plastic) || istype(W,/obj/item/stack/sheet/metal)) + if(istype(W,/obj/item/stack/material/plastic) || istype(W,/obj/item/stack/material/steel)) if(istype(src.loc,/mob/living)) user << "\red How do you intend to patch a hardsuit while someone is wearing it?" @@ -188,13 +188,13 @@ var/global/list/breach_burn_descriptors = list( user << "There is no surface damage on \the [src] to repair." return - var/obj/item/stack/sheet/P = W + var/obj/item/stack/material/P = W if(P.get_amount() < 3) P.use(P.get_amount()) - repair_breaches(BURN, ( istype(P,/obj/item/stack/sheet/mineral/plastic) ? P.get_amount() : (P.get_amount()*2) ), user) + repair_breaches(BURN, ( istype(P,/obj/item/stack/material/plastic) ? P.get_amount() : (P.get_amount()*2) ), user) else P.use(3) - repair_breaches(BURN, ( istype(P,/obj/item/stack/sheet/mineral/plastic) ? 3 : 5), user) + repair_breaches(BURN, ( istype(P,/obj/item/stack/material/plastic) ? 3 : 5), user) return else if(istype(W, /obj/item/weapon/weldingtool)) diff --git a/code/modules/clothing/spacesuits/rig/rig_attackby.dm b/code/modules/clothing/spacesuits/rig/rig_attackby.dm index e7a59ea305..effa64087e 100644 --- a/code/modules/clothing/spacesuits/rig/rig_attackby.dm +++ b/code/modules/clothing/spacesuits/rig/rig_attackby.dm @@ -9,7 +9,7 @@ return // Pass repair items on to the chestpiece. - if(chest && (istype(W,/obj/item/stack/sheet/mineral/plastic) || istype(W,/obj/item/stack/sheet/metal) || istype(W, /obj/item/weapon/weldingtool))) + if(chest && (istype(W,/obj/item/stack/material/plastic) || istype(W,/obj/item/stack/material/steel) || istype(W, /obj/item/weapon/weldingtool))) return chest.attackby(W,user) // Lock or unlock the access panel. diff --git a/code/modules/examine/descriptions/stacks.dm b/code/modules/examine/descriptions/stacks.dm index 431e5c37b9..e1e5b66616 100644 --- a/code/modules/examine/descriptions/stacks.dm +++ b/code/modules/examine/descriptions/stacks.dm @@ -2,23 +2,23 @@ description_info = "Made from metal sheets. You can build a grille by using it in your hand. \ Clicking on a floor without any tiles will reinforce the floor. You can make reinforced glass by combining rods and normal glass sheets." -/obj/item/stack/sheet/glass +/obj/item/stack/material/glass description_info = "Use in your hand to build a window. Can be upgraded to reinforced glass by adding metal rods, which are made from metal sheets." -/obj/item/stack/sheet/glass/cyborg +/obj/item/stack/material/glass/cyborg description_info = "Use in your hand to build a window. Can be upgraded to reinforced glass by adding metal rods, which are made from metal sheets.
    \ As a synthetic, you can acquire more sheets of glass by recharging." -/obj/item/stack/sheet/glass/reinforced +/obj/item/stack/material/glass/reinforced description_info = "Use in your hand to build a window. Reinforced glass is much stronger against damage." -/obj/item/stack/sheet/glass/reinforced/cyborg +/obj/item/stack/material/glass/reinforced/cyborg description_info = "Use in your hand to build a window. Reinforced glass is much stronger against damage.
    \ As a synthetic, you can gain more reinforced glass by recharging." -/obj/item/stack/sheet/metal/cyborg +/obj/item/stack/material/steel/cyborg description_info = "Use in your hand to bring up the recipe menu. If you have enough sheets, click on something on the list to build it.
    \ You can replenish your supply of metal as a synthetic by recharging." -/obj/item/stack/sheet +/obj/item/stack/material description_info = "Use in your hand to bring up the recipe menu. If you have enough sheets, click on something on the list to build it." \ No newline at end of file diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 0f8d214c8e..8b7678f19f 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -195,9 +195,9 @@ if(istype(W,/obj/item/weapon/material/hatchet) && !isnull(seed.chems["woodpulp"])) user.show_message("You make planks out of \the [src]!", 1) for(var/i=0,i<2,i++) - var/obj/item/stack/sheet/wood/NG = new (user.loc) + var/obj/item/stack/material/wood/NG = new (user.loc) NG.color = seed.get_trait(TRAIT_PRODUCT_COLOUR) - for (var/obj/item/stack/sheet/wood/G in user.loc) + for (var/obj/item/stack/material/wood/G in user.loc) if(G==NG) continue if(G.amount>=G.max_amount) diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm new file mode 100644 index 0000000000..480bed617f --- /dev/null +++ b/code/modules/materials/material_recipes.dm @@ -0,0 +1,146 @@ +/material/proc/get_recipes() + if(!recipes) + generate_recipes() + return recipes + +/material/proc/generate_recipes() + recipes = list() + recipes += new/datum/stack_recipe("[display_name] ashtray", /obj/item/ashtray/plastic, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] spoon", /obj/item/weapon/material/kitchen/utensil/spoon/plastic, 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] baseball bat", /obj/item/weapon/material/twohanded/baseballbat/metal, 10, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("stool", /obj/item/weapon/stool, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("chair", /obj/structure/bed/chair, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("bed", /obj/structure/bed, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + +/material/steel/generate_recipes() + ..() + recipes += new/datum/stack_recipe_list("office chairs",list( \ + new/datum/stack_recipe("dark office chair", /obj/structure/bed/chair/office/dark, 5, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("light office chair", /obj/structure/bed/chair/office/light, 5, one_per_turf = 1, on_floor = 1) \ + ), 5) + recipes += new/datum/stack_recipe_list("comfy chairs", list( \ + new/datum/stack_recipe("beige comfy chair", /obj/structure/bed/chair/comfy/beige, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("black comfy chair", /obj/structure/bed/chair/comfy/black, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("brown comfy chair", /obj/structure/bed/chair/comfy/brown, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("lime comfy chair", /obj/structure/bed/chair/comfy/lime, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("teal comfy chair", /obj/structure/bed/chair/comfy/teal, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("red comfy chair", /obj/structure/bed/chair/comfy/red, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("blue comfy chair", /obj/structure/bed/chair/comfy/blue, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("purple comfy chair", /obj/structure/bed/chair/comfy/purp, 2, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("green comfy chair", /obj/structure/bed/chair/comfy/green, 2, one_per_turf = 1, on_floor = 1), \ + ), 2) + + recipes += new/datum/stack_recipe("table frame", /obj/structure/table, 1, time = 10, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("rack", /obj/structure/table/rack, 1, time = 5, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("closet", /obj/structure/closet, 2, time = 15, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("canister", /obj/machinery/portable_atmospherics/canister, 10, time = 15, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("cannon frame", /obj/item/weapon/cannonframe, 10, time = 15, one_per_turf = 0, on_floor = 0) + recipes += new/datum/stack_recipe("floor tile", /obj/item/stack/tile/plasteel, 1, 4, 20) + recipes += new/datum/stack_recipe("metal rod", /obj/item/stack/rods, 1, 2, 60) + recipes += new/datum/stack_recipe("computer frame", /obj/structure/computerframe, 5, time = 25, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("wall girders", /obj/structure/girder, 2, time = 50, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("machine frame", /obj/machinery/constructable_frame/machine_frame, 5, time = 25, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("turret frame", /obj/machinery/porta_turret_construct, 5, time = 25, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe_list("airlock assemblies", list( \ + new/datum/stack_recipe("standard airlock assembly", /obj/structure/door_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("command airlock assembly", /obj/structure/door_assembly/door_assembly_com, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("security airlock assembly", /obj/structure/door_assembly/door_assembly_sec, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("engineering airlock assembly", /obj/structure/door_assembly/door_assembly_eng, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("mining airlock assembly", /obj/structure/door_assembly/door_assembly_min, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("atmospherics airlock assembly", /obj/structure/door_assembly/door_assembly_atmo, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("research airlock assembly", /obj/structure/door_assembly/door_assembly_research, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("medical airlock assembly", /obj/structure/door_assembly/door_assembly_med, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("maintenance airlock assembly", /obj/structure/door_assembly/door_assembly_mai, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("external airlock assembly", /obj/structure/door_assembly/door_assembly_ext, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("freezer airlock assembly", /obj/structure/door_assembly/door_assembly_fre, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("airtight hatch assembly", /obj/structure/door_assembly/door_assembly_hatch, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("maintenance hatch assembly", /obj/structure/door_assembly/door_assembly_mhatch, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("high security airlock assembly", /obj/structure/door_assembly/door_assembly_highsecurity, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("emergency shutter", /obj/structure/firedoor_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("multi-tile airlock assembly", /obj/structure/door_assembly/multi_tile, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + ), 4) + + new/datum/stack_recipe("grenade casing", /obj/item/weapon/grenade/chem_grenade) + new/datum/stack_recipe("light fixture frame", /obj/item/frame/light, 2) + new/datum/stack_recipe("small light fixture frame", /obj/item/frame/light/small, 1) + new/datum/stack_recipe("apc frame", /obj/item/apc_frame, 2) + new/datum/stack_recipe("air alarm frame", /obj/item/frame/air_alarm, 2) + new/datum/stack_recipe("fire alarm frame", /obj/item/frame/fire_alarm, 2) + new/datum/stack_recipe("knife blade", /obj/item/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1) + +/material/plasteel/generate_recipes() + ..() + recipes += new/datum/stack_recipe("AI core", /obj/structure/AIcore, 4, time = 50, one_per_turf = 1) + recipes += new/datum/stack_recipe("Metal crate", /obj/structure/closet/crate, 10, time = 50, one_per_turf = 1) + recipes += new/datum/stack_recipe("RUST fuel assembly port frame", /obj/item/frame/rust/assembly, 12, time = 50, one_per_turf = 1) + recipes += new/datum/stack_recipe("RUST fuel compressor frame", /obj/item/frame/rust, 12, time = 50, one_per_turf = 1) + recipes += new/datum/stack_recipe("knife grip", /obj/item/butterflyhandle, 4, time = 20, one_per_turf = 0, on_floor = 1) + +/material/sandstone/generate_recipes() + ..() + recipes += new/datum/stack_recipe("pile of dirt", /obj/machinery/portable_atmospherics/hydroponics/soil, 3, time = 10, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("sandstone door", /obj/structure/mineral_door/sandstone, 10, one_per_turf = 1, on_floor = 1) + +/material/silver/generate_recipes() + ..() + recipes += new/datum/stack_recipe("silver door", /obj/structure/mineral_door/silver, 10, one_per_turf = 1, on_floor = 1) + +/material/diamond/generate_recipes() + ..() + recipes += new/datum/stack_recipe("diamond door", /obj/structure/mineral_door/transparent/diamond, 10, one_per_turf = 1, on_floor = 1) + +/material/uranium/generate_recipes() + ..() + recipes += new/datum/stack_recipe("uranium door", /obj/structure/mineral_door/uranium, 10, one_per_turf = 1, on_floor = 1) + +/material/gold/generate_recipes() + ..() + recipes += new/datum/stack_recipe("golden door", /obj/structure/mineral_door/gold, 10, one_per_turf = 1, on_floor = 1) + +/material/phoron/generate_recipes() + ..() + recipes += new/datum/stack_recipe("phoron door", /obj/structure/mineral_door/transparent/phoron, 10, one_per_turf = 1, on_floor = 1) + +/material/plastic/generate_recipes() + ..() + recipes += new/datum/stack_recipe("plastic crate", /obj/structure/closet/crate/plastic, 10, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("plastic bag", /obj/item/weapon/storage/bag/plasticbag, 3, on_floor = 1) + recipes += new/datum/stack_recipe("blood pack", /obj/item/weapon/reagent_containers/blood/empty, 4, on_floor = 0) + recipes += new/datum/stack_recipe("reagent dispenser cartridge (large)", /obj/item/weapon/reagent_containers/chem_disp_cartridge, 5, on_floor=0) // 500u + recipes += new/datum/stack_recipe("reagent dispenser cartridge (med)", /obj/item/weapon/reagent_containers/chem_disp_cartridge/medium, 3, on_floor=0) // 250u + recipes += new/datum/stack_recipe("reagent dispenser cartridge (small)", /obj/item/weapon/reagent_containers/chem_disp_cartridge/small, 1, on_floor=0) // 100u + +/material/iron/generate_recipes() + ..() + recipes += new/datum/stack_recipe("iron door", /obj/structure/mineral_door/iron, 20, one_per_turf = 1, on_floor = 1) + +/material/wood/generate_recipes() + ..() + recipes += new/datum/stack_recipe("wooden sandals", /obj/item/clothing/shoes/sandal, 1) + recipes += new/datum/stack_recipe("wood floor tile", /obj/item/stack/tile/wood, 1, 4, 20) + recipes += new/datum/stack_recipe("wooden chair", /obj/structure/bed/chair/wood, 3, time = 10, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/wooden, 5, time = 50, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("crossbow frame", /obj/item/weapon/crossbowframe, 5, time = 25, one_per_turf = 0, on_floor = 0) + recipes += new/datum/stack_recipe("wooden door", /obj/structure/mineral_door/wood, 10, time = 20, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("coffin", /obj/structure/closet/coffin, 5, time = 15, one_per_turf = 1, on_floor = 1) + +/material/cardboard/generate_recipes() + ..() + recipes += new/datum/stack_recipe("box", /obj/item/weapon/storage/box) + recipes += new/datum/stack_recipe("donut box", /obj/item/weapon/storage/box/donut/empty) + recipes += new/datum/stack_recipe("egg box", /obj/item/weapon/storage/fancy/egg_box) + recipes += new/datum/stack_recipe("light tubes box", /obj/item/weapon/storage/box/lights/tubes) + recipes += new/datum/stack_recipe("light bulbs box", /obj/item/weapon/storage/box/lights/bulbs) + recipes += new/datum/stack_recipe("mouse traps box", /obj/item/weapon/storage/box/mousetraps) + recipes += new/datum/stack_recipe("cardborg suit", /obj/item/clothing/suit/cardborg, 3) + recipes += new/datum/stack_recipe("cardborg helmet", /obj/item/clothing/head/cardborg) + recipes += new/datum/stack_recipe("pizza box", /obj/item/pizzabox) + recipes += new/datum/stack_recipe_list("folders",list( \ + new/datum/stack_recipe("blue folder", /obj/item/weapon/folder/blue), \ + new/datum/stack_recipe("grey folder", /obj/item/weapon/folder), \ + new/datum/stack_recipe("red folder", /obj/item/weapon/folder/red), \ + new/datum/stack_recipe("white folder", /obj/item/weapon/folder/white), \ + new/datum/stack_recipe("yellow folder", /obj/item/weapon/folder/yellow), \ + ), 3) \ No newline at end of file diff --git a/code/modules/materials/material_sheets.dm b/code/modules/materials/material_sheets.dm new file mode 100644 index 0000000000..b3688322c2 --- /dev/null +++ b/code/modules/materials/material_sheets.dm @@ -0,0 +1,172 @@ +// Stacked resources. +/obj/item/stack/material + force = 5.0 + throwforce = 5 + w_class = 3.0 + throw_speed = 3 + throw_range = 3 + var/default_type = DEFAULT_WALL_MATERIAL + var/material/material + var/perunit + var/apply_colour //temp pending icon rewrite + +/obj/item/stack/material/New() + ..() + pixel_x = rand(0,4)-4 + pixel_y = rand(0,4)-4 + + if(!default_type) + default_type = DEFAULT_WALL_MATERIAL + material = get_material_by_name("[default_type]") + if(!material) + qdel(src) + return 0 + + // Update from material datum. + name = "[material.display_name] sheets" + desc = "A stack of sheets of [material.display_name]." + recipes = material.get_recipes() + stacktype = material.stack_type + origin_tech = material.stack_origin_tech + perunit = material.stack_per_sheet + + if(apply_colour) + color = material.icon_colour + + if(material.conductive) + flags |= CONDUCT + + if(!islist(matter)) + matter = list() + if(material.composite_material) + for(var/material_string in material.composite_material) + matter[material_string] = material.composite_material[material_string] + else + matter[material.name] = material.stack_per_sheet + return 1 + +/obj/item/stack/material/cyborg + uses_charge = 1 + charge_costs = list(1000) + gender = NEUTER + matter = null + +/obj/item/stack/material/cyborg/New() + if(..()) + name = "[material.display_name] synthesiser" + desc = "A device that synthesises [material.display_name]." + +/obj/item/stack/material/cyborg/plastic + default_type = "plastic" + +/obj/item/stack/material/cyborg/steel + default_type = "steel" + +/obj/item/stack/material/cyborg/plasteel + default_type = "plasteel" + +/obj/item/stack/material/cyborg/wood + default_type = "wood" + +/obj/item/stack/material/cyborg/glass + default_type = "glass" + +/obj/item/stack/material/cyborg/glass/reinforced + default_type = "reinforced glass" + charge_costs = list(500, 1000) + +obj/item/stack/material/iron + name = "iron" + icon_state = "sheet-silver" + default_type = "iron" + +/obj/item/stack/material/sandstone + name = "sandstone brick" + singular_name = "sandstone brick" + icon_state = "sheet-sandstone" + default_type = "sandstone" + +/obj/item/stack/material/diamond + name = "diamond" + icon_state = "sheet-diamond" + default_type = "diamond" + +/obj/item/stack/material/uranium + name = "uranium" + icon_state = "sheet-uranium" + default_type = "uranium" + +/obj/item/stack/material/phoron + name = "solid phoron" + icon_state = "sheet-phoron" + default_type = "phoron" + +/obj/item/stack/material/plastic + name = "Plastic" + icon_state = "sheet-plastic" + default_type = "plastic" + +/obj/item/stack/material/gold + name = "gold" + icon_state = "sheet-gold" + default_type = "gold" + +/obj/item/stack/material/silver + name = "silver" + icon_state = "sheet-silver" + default_type = "silver" + +//Valuable resource, cargo can sell it. +/obj/item/stack/material/platinum + name = "platinum" + icon_state = "sheet-adamantine" + default_type = "platinum" + +//Extremely valuable to Research. +/obj/item/stack/material/mhydrogen + name = "metallic hydrogen" + icon_state = "sheet-mythril" + default_type = "mhydrogen" + +//Fuel for MRSPACMAN generator. +/obj/item/stack/material/tritium + name = "tritium" + icon_state = "sheet-silver" + default_type = "tritium" + apply_colour = 1 + +/obj/item/stack/material/osmium + name = "osmium" + icon_state = "sheet-silver" + default_type = "osmium" + apply_colour = 1 + +/obj/item/stack/material/steel + name = DEFAULT_WALL_MATERIAL + singular_name = "steel sheet" + icon_state = "sheet-metal" + default_type = DEFAULT_WALL_MATERIAL + +/obj/item/stack/material/plasteel + name = "plasteel" + singular_name = "plasteel sheet" + icon_state = "sheet-plasteel" + item_state = "sheet-metal" + default_type = "plasteel" + +/obj/item/stack/material/wood + name = "wooden plank" + singular_name = "wood plank" + icon_state = "sheet-wood" + default_type = "wood" + +/obj/item/stack/material/cloth + name = "cloth" + singular_name = "cloth roll" + icon_state = "sheet-cloth" + +/obj/item/stack/material/cardboard + name = "cardboard" + singular_name = "cardboard sheet" + icon_state = "sheet-card" + default_type = "cardboard" diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 15a989f949..99700dbcc1 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -34,12 +34,15 @@ var/list/name_to_material var/shard_type = SHARD_SHRAPNEL var/shard_icon var/shard_can_repair = 1 + var/list/recipes // Icons var/icon_colour var/icon_base = "metal" var/icon_reinf = "reinf_metal" - var/stack_type + var/stack_type = /obj/item/stack/material/steel + var/stack_origin_tech = "materials=1" + var/stack_per_sheet = 2000 // Attributes var/cut_delay = 0 @@ -51,6 +54,8 @@ var/list/name_to_material var/opacity = 1 var/explosion_resistance = 5 var/weight = 20 + var/conductive = 1 + var/list/composite_material /material/New() ..() @@ -94,16 +99,17 @@ var/list/name_to_material /material/uranium name = "uranium" - stack_type = /obj/item/stack/sheet/mineral/uranium + stack_type = /obj/item/stack/material/uranium radioactivity = 12 icon_base = "stone" icon_reinf = "reinf_stone" icon_colour = "#007A00" weight = 22 + stack_origin_tech = "materials=5" /material/diamond name = "diamond" - stack_type = /obj/item/stack/sheet/mineral/diamond + stack_type = /obj/item/stack/material/diamond flags = MATERIAL_UNMELTABLE cut_delay = 60 icon_colour = "#00FFE1" @@ -111,33 +117,38 @@ var/list/name_to_material shard_type = SHARD_SHARD tableslam_noise = 'sound/effects/Glasshit.ogg' hardness = 100 + stack_origin_tech = "materials=6" + stack_per_sheet = 3750 /material/gold name = "gold" - stack_type = /obj/item/stack/sheet/mineral/gold + stack_type = /obj/item/stack/material/gold icon_colour = "#EDD12F" weight = 24 hardness = 40 + stack_origin_tech = "materials=4" /material/silver name = "silver" - stack_type = /obj/item/stack/sheet/mineral/silver + stack_type = /obj/item/stack/material/silver icon_colour = "#D1E6E3" weight = 22 hardness = 50 + stack_origin_tech = "materials=3" /material/phoron name = "phoron" - stack_type = /obj/item/stack/sheet/mineral/phoron + stack_type = /obj/item/stack/material/phoron ignition_point = 300 icon_base = "stone" icon_colour = "#FC2BC5" shard_type = SHARD_SHARD hardness = 30 + stack_origin_tech = "phorontech=2;materials=2" /material/sandstone name = "sandstone" - stack_type = /obj/item/stack/sheet/mineral/sandstone + stack_type = /obj/item/stack/material/sandstone icon_base = "stone" icon_reinf = "reinf_stone" icon_colour = "#D9C179" @@ -147,7 +158,7 @@ var/list/name_to_material /material/steel name = DEFAULT_WALL_MATERIAL - stack_type = /obj/item/stack/sheet/metal + stack_type = /obj/item/stack/material/steel icon_base = "solid" icon_reinf = "reinf_over" icon_colour = "#666666" @@ -160,7 +171,7 @@ var/list/name_to_material /material/plasteel name = "plasteel" - stack_type = /obj/item/stack/sheet/plasteel + stack_type = /obj/item/stack/material/plasteel integrity = 800 melting_point = 6000 icon_base = "solid" @@ -169,10 +180,12 @@ var/list/name_to_material explosion_resistance = 25 hardness = 80 weight = 23 + stack_origin_tech = "materials=2" + composite_material = list() //todo /material/glass name = "glass" - stack_type = /obj/item/stack/sheet/glass + stack_type = /obj/item/stack/material/glass flags = MATERIAL_BRITTLE icon_colour = "#00E1FF" opacity = 0.3 @@ -184,54 +197,81 @@ var/list/name_to_material /material/glass/phoron name = "phoron glass" - stack_type = /obj/item/stack/sheet/glass/phoronglass + stack_type = /obj/item/stack/material/glass/phoronglass flags = MATERIAL_BRITTLE ignition_point = 300 integrity = 200 // idk why but phoron windows are strong, so. icon_colour = "#FC2BC5" hardness = 10 weight = 10 + stack_origin_tech = "materials=3;phorontech=2" + +/material/glass/phoron/reinforced + name = "reinforced phoron glass" + stack_type = /obj/item/stack/material/glass/phoronrglass + stack_origin_tech = "materials=4;phorontech=2" + composite_material = list() //todo + +/material/glass/reinforced + name = "reinforced glass" + stack_type = /obj/item/stack/material/glass/reinforced + flags = MATERIAL_BRITTLE + icon_colour = "#00E1FF" + opacity = 0.3 + integrity = 100 + shard_type = SHARD_SHARD + tableslam_noise = 'sound/effects/Glasshit.ogg' + hardness = 15 + weight = 15 + stack_origin_tech = "materials=2" + composite_material = list() //todo /material/plastic name = "plastic" - stack_type = /obj/item/stack/sheet/mineral/plastic + stack_type = /obj/item/stack/material/plastic flags = MATERIAL_BRITTLE icon_base = "solid" icon_reinf = "reinf_over" icon_colour = "#CCCCCC" hardness = 10 weight = 12 + stack_origin_tech = "materials=3" /material/osmium name = "osmium" - stack_type = /obj/item/stack/sheet/mineral/osmium + stack_type = /obj/item/stack/material/osmium icon_colour = "#9999FF" + stack_origin_tech = "materials=5" /material/tritium name = "tritium" - stack_type = /obj/item/stack/sheet/mineral/tritium + stack_type = /obj/item/stack/material/tritium icon_colour = "#777777" + stack_origin_tech = "materials=5" /material/mhydrogen name = "mhydrogen" - stack_type = /obj/item/stack/sheet/mineral/mhydrogen + stack_type = /obj/item/stack/material/mhydrogen icon_colour = "#E6C5DE" + stack_origin_tech = "materials=6;powerstorage=5;magnets=5" /material/platinum name = "platinum" - stack_type = /obj/item/stack/sheet/mineral/platinum + stack_type = /obj/item/stack/material/platinum icon_colour = "#9999FF" weight = 27 + stack_origin_tech = "materials=2" /material/iron name = "iron" - stack_type = /obj/item/stack/sheet/mineral/iron + stack_type = /obj/item/stack/material/iron icon_colour = "#5C5454" weight = 22 + stack_per_sheet = 3750 /material/wood name = "wood" - stack_type = /obj/item/stack/sheet/wood + stack_type = /obj/item/stack/material/wood icon_colour = "#824B28" integrity = 25 icon_base = "solid" @@ -240,6 +280,7 @@ var/list/name_to_material shard_can_repair = 0 // you can't weld splinters back into planks hardness = 15 weight = 18 + stack_origin_tech = "materials=1;biotech=1" /material/wood/holographic name = "holographic wood" @@ -247,6 +288,21 @@ var/list/name_to_material stack_type = null shard_type = SHARD_NONE +/material/cardboard + name = "cardboard" + stack_type = /obj/item/stack/material/cardboard + flags = MATERIAL_BRITTLE + icon_base = "solid" + icon_reinf = "reinf_over" + icon_colour = "#AAAAAA" + hardness = 1 + weight = 1 + stack_origin_tech = "materials=1" + +/material/cloth //todo + name = "cloth" + stack_origin_tech = "materials=2" + /material/cult name = "cult" display_name = "disturbing stone" diff --git a/code/modules/mining/alloys.dm b/code/modules/mining/alloys.dm index 6495d706b4..9461c1e6b9 100644 --- a/code/modules/mining/alloys.dm +++ b/code/modules/mining/alloys.dm @@ -16,7 +16,7 @@ "hematite" = 2 ) product_mod = 0.3 - product = /obj/item/stack/sheet/plasteel + product = /obj/item/stack/material/plasteel /datum/alloy/steel metaltag = DEFAULT_WALL_MATERIAL @@ -24,4 +24,4 @@ "coal" = 1, "hematite" = 1 ) - product = /obj/item/stack/sheet/metal \ No newline at end of file + product = /obj/item/stack/material/steel \ No newline at end of file diff --git a/code/modules/mining/machine_stacking.dm b/code/modules/mining/machine_stacking.dm index e9f193cd73..6e548c6aa5 100644 --- a/code/modules/mining/machine_stacking.dm +++ b/code/modules/mining/machine_stacking.dm @@ -53,7 +53,7 @@ if(href_list["release_stack"]) if(machine.stack_storage[href_list["release_stack"]] > 0) var/stacktype = machine.stack_paths[href_list["release_stack"]] - var/obj/item/stack/sheet/S = new stacktype (get_turf(machine.output)) + var/obj/item/stack/material/S = new stacktype (get_turf(machine.output)) S.amount = machine.stack_storage[href_list["release_stack"]] machine.stack_storage[href_list["release_stack"]] = 0 @@ -81,18 +81,18 @@ /obj/machinery/mineral/stacking_machine/New() ..() - for(var/stacktype in typesof(/obj/item/stack/sheet/mineral)-/obj/item/stack/sheet/mineral) + for(var/stacktype in typesof(/obj/item/stack/material)-/obj/item/stack/material) var/obj/item/stack/S = new stacktype(src) stack_storage[S.name] = 0 stack_paths[S.name] = stacktype qdel(S) stack_storage["glass"] = 0 - stack_paths["glass"] = /obj/item/stack/sheet/glass + stack_paths["glass"] = /obj/item/stack/material/glass stack_storage[DEFAULT_WALL_MATERIAL] = 0 - stack_paths[DEFAULT_WALL_MATERIAL] = /obj/item/stack/sheet/metal + stack_paths[DEFAULT_WALL_MATERIAL] = /obj/item/stack/material/steel stack_storage["plasteel"] = 0 - stack_paths["plasteel"] = /obj/item/stack/sheet/plasteel + stack_paths["plasteel"] = /obj/item/stack/material/plasteel spawn( 5 ) for (var/dir in cardinal) @@ -122,7 +122,7 @@ for(var/sheet in stack_storage) if(stack_storage[sheet] >= stack_amt) var/stacktype = stack_paths[sheet] - var/obj/item/stack/sheet/S = new stacktype (get_turf(output)) + var/obj/item/stack/material/S = new stacktype (get_turf(output)) S.amount = stack_amt stack_storage[sheet] -= stack_amt diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 98a7a8df9e..0ca011ee63 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -346,11 +346,11 @@ R.amount = rand(1,5) if(3) - var/obj/item/stack/sheet/metal/R = new(src) + var/obj/item/stack/material/steel/R = new(src) R.amount = rand(5,25) if(4) - var/obj/item/stack/sheet/plasteel/R = new(src) + var/obj/item/stack/material/plasteel/R = new(src) R.amount = rand(5,25) if(5) @@ -364,7 +364,7 @@ new /obj/item/weapon/material/shard/phoron(src) if(7) - var/obj/item/stack/sheet/mineral/uranium/R = new(src) + var/obj/item/stack/material/uranium/R = new(src) R.amount = rand(5,25) /turf/simulated/mineral/random diff --git a/code/modules/mining/mint.dm b/code/modules/mining/mint.dm index 5d989d1ce1..96f6fb480c 100644 --- a/code/modules/mining/mint.dm +++ b/code/modules/mining/mint.dm @@ -37,25 +37,25 @@ /obj/machinery/mineral/mint/process() if ( src.input) - var/obj/item/stack/sheet/O - O = locate(/obj/item/stack/sheet, input.loc) + var/obj/item/stack/material/O + O = locate(/obj/item/stack/material, input.loc) if(O) - if (istype(O,/obj/item/stack/sheet/mineral/gold)) + if (istype(O,/obj/item/stack/material/gold)) amt_gold += 100 * O.get_amount() qdel(O) - if (istype(O,/obj/item/stack/sheet/mineral/silver)) + if (istype(O,/obj/item/stack/material/silver)) amt_silver += 100 * O.get_amount() qdel(O) - if (istype(O,/obj/item/stack/sheet/mineral/diamond)) + if (istype(O,/obj/item/stack/material/diamond)) amt_diamond += 100 * O.get_amount() qdel(O) - if (istype(O,/obj/item/stack/sheet/mineral/phoron)) + if (istype(O,/obj/item/stack/material/phoron)) amt_phoron += 100 * O.get_amount() qdel(O) - if (istype(O,/obj/item/stack/sheet/mineral/uranium)) + if (istype(O,/obj/item/stack/material/uranium)) amt_uranium += 100 * O.get_amount() qdel(O) - if (istype(O,/obj/item/stack/sheet/metal)) + if (istype(O,/obj/item/stack/material/steel)) amt_iron += 100 * O.get_amount() qdel(O) diff --git a/code/modules/mob/living/bot/floorbot.dm b/code/modules/mob/living/bot/floorbot.dm index 08c5ac1c4b..8d61d0bb03 100644 --- a/code/modules/mob/living/bot/floorbot.dm +++ b/code/modules/mob/living/bot/floorbot.dm @@ -154,7 +154,7 @@ target = T break if(maketiles && !target) - for(var/obj/item/stack/sheet/metal/T in view(src)) + for(var/obj/item/stack/material/steel/T in view(src)) if(T in ignorelist) continue target = T @@ -249,8 +249,8 @@ target = null repairing = 0 update_icons() - else if(istype(A, /obj/item/stack/sheet/metal) && amount + 3 < maxAmount) - var/obj/item/stack/sheet/metal/M = A + else if(istype(A, /obj/item/stack/material/steel) && amount + 3 < maxAmount) + var/obj/item/stack/material/steel/M = A visible_message("[src] begins to make tiles.") repairing = 1 update_icons() diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index 3f10d4f899..d859810ea1 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -92,7 +92,7 @@ icon_state = "gripper-sheet" can_hold = list( - /obj/item/stack/sheet + /obj/item/stack/material ) /obj/item/weapon/gripper/attack_self(mob/user as mob) diff --git a/code/modules/mob/living/silicon/robot/robot_items.dm b/code/modules/mob/living/silicon/robot/robot_items.dm index 3bc0dd9a15..4ef063d98a 100644 --- a/code/modules/mob/living/silicon/robot/robot_items.dm +++ b/code/modules/mob/living/silicon/robot/robot_items.dm @@ -37,8 +37,8 @@ for(var/obj/I in contents) for(var/mob/M in I.contents) M.death() - if(istype(I,/obj/item/stack/sheet))//Only deconsturcts one sheet at a time instead of the entire stack - var/obj/item/stack/sheet/S = I + if(istype(I,/obj/item/stack/material))//Only deconsturcts one sheet at a time instead of the entire stack + var/obj/item/stack/material/S = I if(S.get_amount() > 1) S.use(1) loaded_item = S diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index decf9304a0..6515bcdc0e 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -310,7 +310,7 @@ var/global/list/robot_modules = list( synths += plasteel synths += glass - var/obj/item/stack/sheet/metal/cyborg/M = new /obj/item/stack/sheet/metal/cyborg(src) + var/obj/item/stack/material/steel/cyborg/M = new /obj/item/stack/material/steel/cyborg(src) M.synths = list(metal) src.modules += M @@ -318,11 +318,11 @@ var/global/list/robot_modules = list( R.synths = list(metal) src.modules += R - var/obj/item/stack/sheet/plasteel/cyborg/S = new /obj/item/stack/sheet/plasteel/cyborg(src) + var/obj/item/stack/material/cyborg/plasteel/S = new (src) S.synths = list(plasteel) src.modules += S - var/obj/item/stack/sheet/glass/reinforced/cyborg/RG = new /obj/item/stack/sheet/glass/reinforced/cyborg(src) + var/obj/item/stack/material/glass/reinforced/cyborg/RG = new /obj/item/stack/material/glass/reinforced/cyborg(src) RG.synths = list(metal, glass) src.modules += RG @@ -356,11 +356,11 @@ var/global/list/robot_modules = list( MD.glass = glass src.modules += MD - var/obj/item/stack/sheet/metal/cyborg/M = new /obj/item/stack/sheet/metal/cyborg(src) + var/obj/item/stack/material/steel/cyborg/M = new /obj/item/stack/material/steel/cyborg(src) M.synths = list(metal) src.modules += M - var/obj/item/stack/sheet/glass/cyborg/G = new /obj/item/stack/sheet/glass/cyborg(src) + var/obj/item/stack/material/glass/cyborg/G = new /obj/item/stack/material/glass/cyborg(src) G.synths = list(glass) src.modules += G @@ -376,7 +376,7 @@ var/global/list/robot_modules = list( S.synths = list(metal) src.modules += S - var/obj/item/stack/sheet/glass/reinforced/cyborg/RG = new /obj/item/stack/sheet/glass/reinforced/cyborg(src) + var/obj/item/stack/material/glass/reinforced/cyborg/RG = new /obj/item/stack/material/glass/reinforced/cyborg(src) RG.synths = list(metal, glass) src.modules += RG @@ -676,11 +676,11 @@ var/global/list/robot_modules = list( MD.plastic = plastic src.modules += MD - var/obj/item/stack/sheet/metal/cyborg/M = new /obj/item/stack/sheet/metal/cyborg(src) + var/obj/item/stack/material/steel/cyborg/M = new /obj/item/stack/material/steel/cyborg(src) M.synths = list(metal) src.modules += M - var/obj/item/stack/sheet/glass/cyborg/G = new /obj/item/stack/sheet/glass/cyborg(src) + var/obj/item/stack/material/glass/cyborg/G = new /obj/item/stack/material/glass/cyborg(src) G.synths = list(glass) src.modules += G @@ -696,7 +696,7 @@ var/global/list/robot_modules = list( S.synths = list(metal) src.modules += S - var/obj/item/stack/sheet/glass/reinforced/cyborg/RG = new /obj/item/stack/sheet/glass/reinforced/cyborg(src) + var/obj/item/stack/material/glass/reinforced/cyborg/RG = new /obj/item/stack/material/glass/reinforced/cyborg(src) RG.synths = list(metal, glass) src.modules += RG @@ -704,11 +704,11 @@ var/global/list/robot_modules = list( WT.synths = list(wood) src.modules += WT - var/obj/item/stack/sheet/wood/cyborg/W = new /obj/item/stack/sheet/wood/cyborg(src) + var/obj/item/stack/material/cyborg/wood/W = new (src) W.synths = list(wood) src.modules += W - var/obj/item/stack/sheet/mineral/plastic/cyborg/P = new /obj/item/stack/sheet/mineral/plastic/cyborg(src) + var/obj/item/stack/material/cyborg/plastic/P = new (src) P.synths = list(plastic) src.modules += P diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm index d99d8ddcf7..869bf93b8e 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/drone.dm @@ -196,16 +196,16 @@ step_to(O, get_turf(pick(view(7, src)))) //plasteel - O = new /obj/item/stack/sheet/plasteel(src.loc) + O = new /obj/item/stack/material/plasteel(src.loc) step_to(O, get_turf(pick(view(7, src)))) if(prob(75)) - O = new /obj/item/stack/sheet/plasteel(src.loc) + O = new /obj/item/stack/material/plasteel(src.loc) step_to(O, get_turf(pick(view(7, src)))) if(prob(50)) - O = new /obj/item/stack/sheet/plasteel(src.loc) + O = new /obj/item/stack/material/plasteel(src.loc) step_to(O, get_turf(pick(view(7, src)))) if(prob(25)) - O = new /obj/item/stack/sheet/plasteel(src.loc) + O = new /obj/item/stack/material/plasteel(src.loc) step_to(O, get_turf(pick(view(7, src)))) //also drop dummy circuit boards deconstructable for research (loot) diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/hostile/tree.dm index 56bcafd6f5..1c438d2bc8 100644 --- a/code/modules/mob/living/simple_animal/hostile/tree.dm +++ b/code/modules/mob/living/simple_animal/hostile/tree.dm @@ -52,5 +52,5 @@ /mob/living/simple_animal/hostile/tree/death() ..(null,"is hacked into pieces!") - new /obj/item/stack/sheet/wood(loc) + new /obj/item/stack/material/wood(loc) qdel(src) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/worm.dm b/code/modules/mob/living/simple_animal/worm.dm index 20a8ee499c..9775a68c9c 100644 --- a/code/modules/mob/living/simple_animal/worm.dm +++ b/code/modules/mob/living/simple_animal/worm.dm @@ -175,18 +175,18 @@ for(var/atom/movable/stomachContent in contents) if(prob(digestionProbability)) if(istype(stomachContent,/obj/item/stack)) //converts to plasma, keeping the stack value - if(!istype(stomachContent,/obj/item/stack/sheet/mineral/phoron)) + if(!istype(stomachContent,/obj/item/stack/material/phoron)) var/obj/item/stack/oldStack = stomachContent - new /obj/item/stack/sheet/mineral/phoron(src, oldStack.get_amount()) + new /obj/item/stack/material/phoron(src, oldStack.get_amount()) qdel(oldStack) continue else if(istype(stomachContent,/obj/item)) //converts to plasma, keeping the w_class var/obj/item/oldItem = stomachContent - new /obj/item/stack/sheet/mineral/phoron(src, oldItem.w_class) + new /obj/item/stack/material/phoron(src, oldItem.w_class) qdel(oldItem) continue else - new /obj/item/stack/sheet/mineral/phoron(src, flatPlasmaValue) //just flat amount + new /obj/item/stack/material/phoron(src, flatPlasmaValue) //just flat amount qdel(stomachContent) continue diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 34f3525191..f21db9327d 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -452,7 +452,7 @@ if(W.w_class != 3) user << "\The [W] is too [W.w_class < 3? "small" : "large"] to fit here." return - + user.drop_item() W.loc = src cell = W @@ -590,7 +590,7 @@ if(do_after(user, 50)) if(!src || !WT.remove_fuel(3, user)) return if (emagged || malfhack || (stat & BROKEN) || opened==2) - new /obj/item/stack/sheet/metal(loc) + new /obj/item/stack/material/steel(loc) user.visible_message(\ "[src] has been cut apart by [user.name] with the weldingtool.",\ "You disassembled the broken APC frame.",\ diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index ba3c539c77..4a23d9f01a 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -50,7 +50,7 @@ usr << "You begin deconstructing [src]." if (!do_after(usr, 30)) return - new /obj/item/stack/sheet/metal( get_turf(src.loc), sheets_refunded ) + new /obj/item/stack/material/steel( get_turf(src.loc), sheets_refunded ) user.visible_message("[user.name] deconstructs [src].", \ "You deconstruct [src].", "You hear a noise.") playsound(src.loc, 'sound/items/Deconstruct.ogg', 75, 1) diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index bd113ff268..a631c8279c 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -87,7 +87,7 @@ desc = "A power generator that runs on solid phoron sheets. Rated for 80 kW max safe output." var/sheet_name = "Phoron Sheets" - var/sheet_path = /obj/item/stack/sheet/mineral/phoron + var/sheet_path = /obj/item/stack/material/phoron var/board_path = "/obj/item/weapon/circuitboard/pacman" /* @@ -162,7 +162,7 @@ //Removes one stack's worth of material from the generator. /obj/machinery/power/port_gen/pacman/DropFuel() if(sheets) - var/obj/item/stack/sheet/S = new sheet_path(loc) + var/obj/item/stack/material/S = new sheet_path(loc) var/amount = min(sheets, S.max_amount) S.amount = amount sheets -= amount @@ -403,7 +403,7 @@ name = "S.U.P.E.R.P.A.C.M.A.N.-type Portable Generator" desc = "A power generator that utilizes uranium sheets as fuel. Can run for much longer than the standard PACMAN type generators. Rated for 80 kW max safe output." icon_state = "portgen1" - sheet_path = /obj/item/stack/sheet/mineral/uranium + sheet_path = /obj/item/stack/material/uranium sheet_name = "Uranium Sheets" time_per_sheet = 576 //same power output, but a 50 sheet stack will last 2 hours at max safe power board_path = "/obj/item/weapon/circuitboard/pacman/super" @@ -430,7 +430,7 @@ name = "M.R.S.P.A.C.M.A.N.-type Portable Generator" desc = "An advanced power generator that runs on tritium. Rated for 200 kW maximum safe output!" icon_state = "portgen2" - sheet_path = /obj/item/stack/sheet/mineral/tritium + sheet_path = /obj/item/stack/material/tritium sheet_name = "Tritium Fuel Sheets" //I don't think tritium has any other use, so we might as well make this rewarding for players diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 8f3366e7c1..eb8bb66b72 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -50,10 +50,10 @@ var/list/solars_list = list() /obj/machinery/power/solar/proc/Make(var/obj/item/solar_assembly/S) if(!S) S = new /obj/item/solar_assembly(src) - S.glass_type = /obj/item/stack/sheet/glass + S.glass_type = /obj/item/stack/material/glass S.anchored = 1 S.loc = src - if(S.glass_type == /obj/item/stack/sheet/glass/reinforced) //if the panel is in reinforced glass + if(S.glass_type == /obj/item/stack/material/glass/reinforced) //if the panel is in reinforced glass health *= 2 //this need to be placed here, because panels already on the map don't have an assembly linked to update_icon() @@ -231,7 +231,7 @@ var/list/solars_list = list() // Give back the glass type we were supplied with /obj/item/solar_assembly/proc/give_glass() if(glass_type) - var/obj/item/stack/sheet/S = new glass_type(src.loc) + var/obj/item/stack/material/S = new glass_type(src.loc) S.amount = 2 glass_type = null @@ -251,8 +251,8 @@ var/list/solars_list = list() playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) return 1 - if(istype(W, /obj/item/stack/sheet/glass)) - var/obj/item/stack/sheet/S = W + if(istype(W, /obj/item/stack/material/glass)) + var/obj/item/stack/material/S = W if(S.use(2)) glass_type = W.type playsound(src.loc, 'sound/machines/click.ogg', 50, 1) diff --git a/code/modules/power/tracker.dm b/code/modules/power/tracker.dm index ea572a2b97..34e20d499c 100644 --- a/code/modules/power/tracker.dm +++ b/code/modules/power/tracker.dm @@ -41,7 +41,7 @@ /obj/machinery/power/tracker/proc/Make(var/obj/item/solar_assembly/S) if(!S) S = new /obj/item/solar_assembly(src) - S.glass_type = /obj/item/stack/sheet/glass + S.glass_type = /obj/item/stack/material/glass S.tracker = 1 S.anchored = 1 S.loc = src diff --git a/code/modules/projectiles/guns/launcher/crossbow.dm b/code/modules/projectiles/guns/launcher/crossbow.dm index fb453dbb4e..bffd0ff48c 100644 --- a/code/modules/projectiles/guns/launcher/crossbow.dm +++ b/code/modules/projectiles/guns/launcher/crossbow.dm @@ -243,9 +243,9 @@ else user << "\blue You need at least five segments of cable coil to complete this task." return - else if(istype(W,/obj/item/stack/sheet/mineral/plastic)) + else if(istype(W,/obj/item/stack/material/plastic)) if(buildstate == 3) - var/obj/item/stack/sheet/mineral/plastic/P = W + var/obj/item/stack/material/plastic/P = W if(P.use(3)) user << "\blue You assemble and install a heavy plastic lath onto the crossbow." buildstate++ diff --git a/code/modules/projectiles/guns/launcher/pneumatic.dm b/code/modules/projectiles/guns/launcher/pneumatic.dm index 863d3348e5..53996c4a09 100644 --- a/code/modules/projectiles/guns/launcher/pneumatic.dm +++ b/code/modules/projectiles/guns/launcher/pneumatic.dm @@ -119,7 +119,7 @@ if(tank) var/lost_gas_amount = tank.air_contents.total_moles*(pressure_setting/100) var/datum/gas_mixture/removed = tank.air_contents.remove(lost_gas_amount) - + var/turf/T = get_turf(src.loc) if(T) T.assume_air(removed) ..() @@ -155,9 +155,9 @@ buildstate++ update_icon() return - else if(istype(W,/obj/item/stack/sheet/metal)) + else if(istype(W,/obj/item/stack/material/steel)) if(buildstate == 2) - var/obj/item/stack/sheet/metal/M = W + var/obj/item/stack/material/steel/M = W if(M.use(5)) user << "\blue You assemble a chassis around the cannon frame." buildstate++ diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index 83aaf915fb..7f6da07d67 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -587,12 +587,12 @@ var/limit = 10 var/list/holdingitems = list() var/list/sheet_reagents = list( - /obj/item/stack/sheet/mineral/iron = "iron", - /obj/item/stack/sheet/mineral/uranium = "uranium", - /obj/item/stack/sheet/mineral/phoron = "phoron", - /obj/item/stack/sheet/mineral/gold = "gold", - /obj/item/stack/sheet/mineral/silver = "silver", - /obj/item/stack/sheet/mineral/mhydrogen = "hydrogen" + /obj/item/stack/material/iron = "iron", + /obj/item/stack/material/uranium = "uranium", + /obj/item/stack/material/phoron = "phoron", + /obj/item/stack/material/gold = "gold", + /obj/item/stack/material/silver = "silver", + /obj/item/stack/material/mhydrogen = "hydrogen" ) /obj/machinery/reagentgrinder/New() @@ -798,4 +798,4 @@ if (beaker.reagents.total_volume >= beaker.reagents.maximum_volume) break -#undef REAGENTS_PER_SHEET +#undef REAGENTS_PER_SHEET diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index 2912a392cb..72ce607065 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -439,7 +439,7 @@ result_amount = 1 /datum/chemical_reaction/phoronsolidification/on_reaction(var/datum/reagents/holder, var/created_volume) - new /obj/item/stack/sheet/mineral/phoron(get_turf(holder.my_atom), created_volume) + new /obj/item/stack/material/phoron(get_turf(holder.my_atom), created_volume) return /datum/chemical_reaction/plastication @@ -450,7 +450,7 @@ result_amount = 1 /datum/chemical_reaction/plastication/on_reaction(var/datum/reagents/holder, var/created_volume) - new /obj/item/stack/sheet/mineral/plastic(get_turf(holder.my_atom), created_volume) + new /obj/item/stack/material/plastic(get_turf(holder.my_atom), created_volume) return /* Grenade reactions */ @@ -884,7 +884,7 @@ if(T.Uses <= 0) T.visible_message("\icon[T]\The [T]'s power is consumed in the reaction.") T.name = "used slime extract" - T.desc = "This extract has been used up." + T.desc = "This extract has been used up." //Grey /datum/chemical_reaction/slime/spawn @@ -934,10 +934,10 @@ required = /obj/item/slime_extract/metal /datum/chemical_reaction/slime/metal/on_reaction(var/datum/reagents/holder) - var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/metal + var/obj/item/stack/material/steel/M = new /obj/item/stack/material/steel M.amount = 15 M.loc = get_turf(holder.my_atom) - var/obj/item/stack/sheet/plasteel/P = new /obj/item/stack/sheet/plasteel + var/obj/item/stack/material/plasteel/P = new /obj/item/stack/material/plasteel P.amount = 5 P.loc = get_turf(holder.my_atom) ..() @@ -1104,7 +1104,7 @@ /datum/chemical_reaction/slime/plasma/on_reaction(var/datum/reagents/holder) ..() - var/obj/item/stack/sheet/mineral/phoron/P = new /obj/item/stack/sheet/mineral/phoron + var/obj/item/stack/material/phoron/P = new /obj/item/stack/material/phoron P.amount = 10 P.loc = get_turf(holder.my_atom) @@ -1145,7 +1145,7 @@ var/obj/item/weapon/slimepotion/P = new /obj/item/weapon/slimepotion P.loc = get_turf(holder.my_atom) -//Black +//Black /datum/chemical_reaction/slime/mutate2 name = "Advanced Mutation Toxin" id = "mutationtoxin2" @@ -1154,7 +1154,7 @@ result_amount = 1 required = /obj/item/slime_extract/black -//Oil +//Oil /datum/chemical_reaction/slime/explosion name = "Slime Explosion" id = "m_explosion" @@ -1167,7 +1167,7 @@ /datum/chemical_reaction/slime/explosion/on_reaction(var/datum/reagents/holder) ..() sleep(50) - explosion(get_turf(holder.my_atom), 1, 3, 6) + explosion(get_turf(holder.my_atom), 1, 3, 6) //Light Pink /datum/chemical_reaction/slime/potion2 @@ -1266,32 +1266,32 @@ var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesewheel(location) - return - -/datum/chemical_reaction/meatball - name = "Meatball" - id = "meatball" - result = null - required_reagents = list("protein" = 3, "flour" = 5) - result_amount = 3 - + return + +/datum/chemical_reaction/meatball + name = "Meatball" + id = "meatball" + result = null + required_reagents = list("protein" = 3, "flour" = 5) + result_amount = 3 + /datum/chemical_reaction/meatball/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/meatball(location) - return - -/datum/chemical_reaction/dough - name = "Dough" - id = "dough" - result = null - required_reagents = list("egg" = 3, "flour" = 10) - result_amount = 1 - + for(var/i = 1, i <= created_volume, i++) + new /obj/item/weapon/reagent_containers/food/snacks/meatball(location) + return + +/datum/chemical_reaction/dough + name = "Dough" + id = "dough" + result = null + required_reagents = list("egg" = 3, "flour" = 10) + result_amount = 1 + /datum/chemical_reaction/dough/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/dough(location) + for(var/i = 1, i <= created_volume, i++) + new /obj/item/weapon/reagent_containers/food/snacks/dough(location) return /datum/chemical_reaction/syntiflesh @@ -1941,4 +1941,4 @@ datum required_reagents = list("density_separated_sample" = 5) result_amount = 4 requires_heating = 1 -*/ +*/ diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index 986f3a6291..d0cfe226f6 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -68,16 +68,16 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). if(istype(I, /obj/item/weapon/reagent_containers/glass/beaker)) reagents.trans_to_obj(I, reagents.total_volume) if(g_amount >= 3750) - var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(loc) + var/obj/item/stack/material/glass/G = new /obj/item/stack/material/glass(loc) G.amount = round(g_amount / 3750) if(gold_amount >= 2000) - var/obj/item/stack/sheet/mineral/gold/G = new /obj/item/stack/sheet/mineral/gold(loc) + var/obj/item/stack/material/gold/G = new /obj/item/stack/material/gold(loc) G.amount = round(gold_amount / 2000) if(diamond_amount >= 2000) - var/obj/item/stack/sheet/mineral/diamond/G = new /obj/item/stack/sheet/mineral/diamond(loc) + var/obj/item/stack/material/diamond/G = new /obj/item/stack/material/diamond(loc) G.amount = round(diamond_amount / 2000) if(uranium_amount >= 2000) - var/obj/item/stack/sheet/mineral/uranium/G = new /obj/item/stack/sheet/mineral/uranium(loc) + var/obj/item/stack/material/uranium/G = new /obj/item/stack/material/uranium(loc) G.amount = round(uranium_amount / 2000) ..() @@ -104,7 +104,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). return 1 if(O.is_open_container()) return 0 -// if(!istype(O, /obj/item/stack/sheet/glass) && !istype(O, /obj/item/stack/sheet/mineral/gold) && !istype(O, /obj/item/stack/sheet/mineral/diamond) && !istype(O, /obj/item/stack/sheet/mineral/uranium)) +// if(!istype(O, /obj/item/stack/material/glass) && !istype(O, /obj/item/stack/material/gold) && !istype(O, /obj/item/stack/material/diamond) && !istype(O, /obj/item/stack/material/uranium)) // user << "You cannot insert this item into \the [src]!" // return 1 if(stat) @@ -113,9 +113,9 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). user << "\The [src] is busy. Please wait for completion of previous operation." return 1 - if(istype(O, /obj/item/stack/sheet/glass) || istype(O, /obj/item/stack/sheet/mineral/gold) || istype(O, /obj/item/stack/sheet/mineral/diamond) || istype(O, /obj/item/stack/sheet/mineral/uranium)) + if(istype(O, /obj/item/stack/material/glass) || istype(O, /obj/item/stack/material/gold) || istype(O, /obj/item/stack/material/diamond) || istype(O, /obj/item/stack/material/uranium)) - var/obj/item/stack/sheet/stack = O + var/obj/item/stack/material/stack = O if((TotalMaterials() + stack.perunit) > max_material_amount) user << "\The [src] is full. Please remove glass from \the [src] in order to insert more." return 1 @@ -135,13 +135,13 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). if(do_after(usr, 16)) user << "You add [amount] sheets to \the [src]." switch(stacktype) - if(/obj/item/stack/sheet/glass) + if(/obj/item/stack/material/glass) g_amount += amount * 3750 - if(/obj/item/stack/sheet/mineral/gold) + if(/obj/item/stack/material/gold) gold_amount += amount * 2000 - if(/obj/item/stack/sheet/mineral/diamond) + if(/obj/item/stack/material/diamond) diamond_amount += amount * 2000 - if(/obj/item/stack/sheet/mineral/uranium) + if(/obj/item/stack/material/uranium) uranium_amount += amount * 2000 else new stacktype(loc, amount) diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index 086cd80c9b..c35d820372 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -63,25 +63,25 @@ Note: Must be placed west/left of and R&D console to function. if(istype(I, /obj/item/weapon/reagent_containers/glass/beaker)) reagents.trans_to_obj(I, reagents.total_volume) if(m_amount >= 3750) - var/obj/item/stack/sheet/metal/G = new /obj/item/stack/sheet/metal(loc) + var/obj/item/stack/material/steel/G = new /obj/item/stack/material/steel(loc) G.amount = round(m_amount / G.perunit) if(g_amount >= 3750) - var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(loc) + var/obj/item/stack/material/glass/G = new /obj/item/stack/material/glass(loc) G.amount = round(g_amount / G.perunit) if(phoron_amount >= 2000) - var/obj/item/stack/sheet/mineral/phoron/G = new /obj/item/stack/sheet/mineral/phoron(loc) + var/obj/item/stack/material/phoron/G = new /obj/item/stack/material/phoron(loc) G.amount = round(phoron_amount / G.perunit) if(silver_amount >= 2000) - var/obj/item/stack/sheet/mineral/silver/G = new /obj/item/stack/sheet/mineral/silver(loc) + var/obj/item/stack/material/silver/G = new /obj/item/stack/material/silver(loc) G.amount = round(silver_amount / G.perunit) if(gold_amount >= 2000) - var/obj/item/stack/sheet/mineral/gold/G = new /obj/item/stack/sheet/mineral/gold(loc) + var/obj/item/stack/material/gold/G = new /obj/item/stack/material/gold(loc) G.amount = round(gold_amount / G.perunit) if(uranium_amount >= 2000) - var/obj/item/stack/sheet/mineral/uranium/G = new /obj/item/stack/sheet/mineral/uranium(loc) + var/obj/item/stack/material/uranium/G = new /obj/item/stack/material/uranium(loc) G.amount = round(uranium_amount / G.perunit) if(diamond_amount >= 2000) - var/obj/item/stack/sheet/mineral/diamond/G = new /obj/item/stack/sheet/mineral/diamond(loc) + var/obj/item/stack/material/diamond/G = new /obj/item/stack/material/diamond(loc) G.amount = round(diamond_amount / G.perunit) ..() @@ -118,13 +118,13 @@ Note: Must be placed west/left of and R&D console to function. return 1 if(stat) return 1 - if(istype(O,/obj/item/stack/sheet)) - var/obj/item/stack/sheet/S = O + if(istype(O,/obj/item/stack/material)) + var/obj/item/stack/material/S = O if(TotalMaterials() + S.perunit > max_material_storage) user << "\The [src]'s material bin is full. Please remove material before adding more." return 1 - var/obj/item/stack/sheet/stack = O + var/obj/item/stack/material/stack = O var/amount = round(input("How many sheets do you want to add?") as num)//No decimals if(!O) return @@ -150,19 +150,19 @@ Note: Must be placed west/left of and R&D console to function. user << "You add [amount] sheets to \the [src]." icon_state = "protolathe" switch(stacktype) - if(/obj/item/stack/sheet/metal) + if(/obj/item/stack/material/steel) m_amount += amount * 3750 - if(/obj/item/stack/sheet/glass) + if(/obj/item/stack/material/glass) g_amount += amount * 3750 - if(/obj/item/stack/sheet/mineral/gold) + if(/obj/item/stack/material/gold) gold_amount += amount * 2000 - if(/obj/item/stack/sheet/mineral/silver) + if(/obj/item/stack/material/silver) silver_amount += amount * 2000 - if(/obj/item/stack/sheet/mineral/phoron) + if(/obj/item/stack/material/phoron) phoron_amount += amount * 2000 - if(/obj/item/stack/sheet/mineral/uranium) + if(/obj/item/stack/material/uranium) uranium_amount += amount * 2000 - if(/obj/item/stack/sheet/mineral/diamond) + if(/obj/item/stack/material/diamond) diamond_amount += amount * 2000 else new stacktype(loc, amount) diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index 8f1113043d..4f0178ed3d 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -269,8 +269,8 @@ won't update every console in existence) but it's more of a hassle to do. Also, for(var/obj/I in linked_destroy.contents) for(var/mob/M in I.contents) M.death() - if(istype(I,/obj/item/stack/sheet))//Only deconsturcts one sheet at a time instead of the entire stack - var/obj/item/stack/sheet/S = I + if(istype(I,/obj/item/stack/material))//Only deconsturcts one sheet at a time instead of the entire stack + var/obj/item/stack/material/S = I if(S.get_amount() > 1) S.use(1) linked_destroy.loaded_item = S @@ -460,7 +460,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, res_amount = "diamond_amount" if(ispath(type) && hasvar(linked_lathe, res_amount)) - var/obj/item/stack/sheet/sheet = new type(linked_lathe.loc) + var/obj/item/stack/material/sheet = new type(linked_lathe.loc) var/available_num_sheets = round(linked_lathe.vars[res_amount]/sheet.perunit) if(available_num_sheets>0) sheet.amount = min(available_num_sheets, desired_num_sheets) @@ -472,19 +472,19 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/res_amount, type switch(href_list["imprinter_ejectsheet"]) if("glass") - type = /obj/item/stack/sheet/glass + type = /obj/item/stack/material/glass res_amount = "g_amount" if("gold") - type = /obj/item/stack/sheet/mineral/gold + type = /obj/item/stack/material/gold res_amount = "gold_amount" if("diamond") - type = /obj/item/stack/sheet/mineral/diamond + type = /obj/item/stack/material/diamond res_amount = "diamond_amount" if("uranium") - type = /obj/item/stack/sheet/mineral/uranium + type = /obj/item/stack/material/uranium res_amount = "uranium_amount" if(ispath(type) && hasvar(linked_imprinter, res_amount)) - var/obj/item/stack/sheet/sheet = new type(linked_imprinter.loc) + var/obj/item/stack/material/sheet = new type(linked_imprinter.loc) var/available_num_sheets = round(linked_imprinter.vars[res_amount]/sheet.perunit) if(available_num_sheets>0) sheet.amount = min(available_num_sheets, desired_num_sheets) diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index fcf060165f..cb77346ac6 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -236,16 +236,16 @@ if(14) apply_material_decorations = 0 var/list/possible_spawns = list() - possible_spawns += /obj/item/stack/sheet/metal - possible_spawns += /obj/item/stack/sheet/plasteel - possible_spawns += /obj/item/stack/sheet/glass - possible_spawns += /obj/item/stack/sheet/glass/reinforced - possible_spawns += /obj/item/stack/sheet/mineral/phoron - possible_spawns += /obj/item/stack/sheet/mineral/gold - possible_spawns += /obj/item/stack/sheet/mineral/silver - possible_spawns += /obj/item/stack/sheet/mineral/enruranium - possible_spawns += /obj/item/stack/sheet/mineral/sandstone - possible_spawns += /obj/item/stack/sheet/mineral/silver + possible_spawns += /obj/item/stack/material/steel + possible_spawns += /obj/item/stack/material/plasteel + possible_spawns += /obj/item/stack/material/glass + possible_spawns += /obj/item/stack/material/glass/reinforced + possible_spawns += /obj/item/stack/material/phoron + possible_spawns += /obj/item/stack/material/gold + possible_spawns += /obj/item/stack/material/silver + possible_spawns += /obj/item/stack/material/uranium + possible_spawns += /obj/item/stack/material/sandstone + possible_spawns += /obj/item/stack/material/silver var/new_type = pick(possible_spawns) new_item = new new_type(src.loc) diff --git a/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm b/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm index 1762cfbb0d..e8bedc0987 100644 --- a/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm +++ b/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm @@ -107,7 +107,7 @@ icon_state = "excavation" desc = "A set of picks for excavation." item_state = "syringe_kit" - foldable = /obj/item/stack/sheet/cardboard //BubbleWrap + foldable = /obj/item/stack/material/cardboard //BubbleWrap storage_slots = 7 w_class = 2 can_hold = list(/obj/item/weapon/pickaxe/brush,\ diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index 61326574ba..1ee34e9d80 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -20,7 +20,7 @@ var/material/material = null var/material/reinforced = null - // Gambling tables. I'd prefer reinforced with carpet/felt/cloth/whatever, but AFAIK it's either harder or impossible to get /obj/item/stack/sheet of those. + // Gambling tables. I'd prefer reinforced with carpet/felt/cloth/whatever, but AFAIK it's either harder or impossible to get /obj/item/stack/material of those. // Convert if/when you can easily get stacks of these. var/carpeted = 0 @@ -146,7 +146,7 @@ health = max(health+(maxhealth/5), maxhealth) // 20% repair per application return 1 - if(!material && can_plate && istype(W, /obj/item/stack/sheet)) + if(!material && can_plate && istype(W, /obj/item/stack/material)) material = common_material_add(W, user, "plat") if(material) update_connections(1) @@ -157,13 +157,13 @@ return ..() -/obj/structure/table/MouseDrop_T(obj/item/stack/sheet/what) +/obj/structure/table/MouseDrop_T(obj/item/stack/material/what) if(can_reinforce && isliving(usr) && (!usr.stat) && istype(what) && usr.get_active_hand() == what && Adjacent(usr)) reinforce_table(what, usr) else return ..() -/obj/structure/table/proc/reinforce_table(obj/item/stack/sheet/S, mob/user) +/obj/structure/table/proc/reinforce_table(obj/item/stack/material/S, mob/user) if(reinforced) user << "\The [src] is already reinforced!" return @@ -195,8 +195,8 @@ desc = initial(desc) // Returns the material to set the table to. -/obj/structure/table/proc/common_material_add(obj/item/stack/sheet/S, mob/user, verb) // Verb is actually verb without 'e' or 'ing', which is added. Works for 'plate'/'plating' and 'reinforce'/'reinforcing'. - var/material/M = name_to_material[S.sheettype] +/obj/structure/table/proc/common_material_add(obj/item/stack/material/S, mob/user, verb) // Verb is actually verb without 'e' or 'ing', which is added. Works for 'plate'/'plating' and 'reinforce'/'reinforcing'. + var/material/M = name_to_material[S.default_type] if(!istype(M)) user << "You cannot [verb]e \the [src] with \the [S]." return null @@ -249,7 +249,7 @@ return user.visible_message("\The [user] dismantles \the [src].", "You dismantle \the [src].") - new /obj/item/stack/sheet/metal(src.loc) + new /obj/item/stack/material/steel(src.loc) qdel(src) return @@ -279,7 +279,7 @@ if(carpeted && (full_return || prob(50))) // Higher chance to get the carpet back intact, since there's no non-intact option new /obj/item/stack/tile/carpet(src.loc) if(full_return || prob(20)) - new /obj/item/stack/sheet/metal(src.loc) + new /obj/item/stack/material/steel(src.loc) else var/material/M = get_material_by_name(DEFAULT_WALL_MATERIAL) S = M.place_shard(loc) diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 96ee3f159e..b61cf138c2 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -1398,7 +1398,7 @@ "aAT" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/ai_monitored/storage/eva) "aAU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aAV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) -"aAW" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aAW" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/stack/rods{amount = 50},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "aAX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) "aAY" = (/turf/simulated/floor/carpet{tag = "icon-carpet3-0"; icon_state = "carpet3-0"},/area/crew_quarters/sleep/bedrooms) "aAZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/fitness) @@ -1525,12 +1525,12 @@ "aDq" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/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"},/turf/simulated/floor/plating,/area/maintenance/bar) "aDr" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor,/area/storage/primary) "aDs" = (/turf/simulated/wall,/area/maintenance/bar) -"aDt" = (/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/gold,/obj/item/weapon/storage/belt/champion,/turf/simulated/floor{icon_state = "vault"; dir = 1},/area/security/nuke_storage) +"aDt" = (/obj/structure/closet/crate,/obj/item/stack/material/gold,/obj/item/weapon/storage/belt/champion,/turf/simulated/floor{icon_state = "vault"; dir = 1},/area/security/nuke_storage) "aDu" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/buildable{charge = 0; RCon_tag = "Substation - Civilian East"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east) "aDv" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Civilian East Substation Bypass"},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east) "aDw" = (/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east) "aDx" = (/obj/machinery/requests_console{department = "EVA"; pixel_x = -32; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/device/multitool,/obj/machinery/camera/network/security{c_tag = "EVA Northwest"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/ai_monitored/storage/eva) -"aDy" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/table/reinforced,/obj/item/stack/sheet/glass/reinforced{amount = 50},/obj/item/stack/rods{amount = 50},/obj/machinery/camera/network/security{c_tag = "EVA Northeast"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aDy" = (/obj/structure/table/reinforced,/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aDz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "neutral"; dir = 4},/area/crew_quarters/sleep) "aDA" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aDB" = (/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) @@ -1586,7 +1586,7 @@ "aEz" = (/obj/structure/table/reinforced{icon_state = "table"},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 6},/obj/item/weapon/storage/briefcase/inflatable{pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = -3},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aEA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) "aEB" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/item/clothing/shoes/magboots,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/ai_monitored/storage/eva) -"aEC" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 25; pixel_y = 0},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aEC" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/table/reinforced,/obj/item/stack/rods{amount = 50},/obj/machinery/camera/network/security{c_tag = "EVA Northeast"; dir = 8},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aED" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{dir = 1; icon_state = "bluecorner"},/area/hallway/primary/central_one) "aEE" = (/turf/simulated/floor{dir = 5; icon_state = "blue"},/area/hallway/primary/central_one) "aEF" = (/obj/structure/table/woodentable,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/weapon/tape_roll,/turf/simulated/floor/wood,/area/library) @@ -2966,7 +2966,7 @@ "bfb" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bfc" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bfd" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/crew_quarters/locker) -"bfe" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/stack/sheet/cardboard,/obj/item/stack/rods{amount = 50},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) +"bfe" = (/obj/structure/table/reinforced,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 25; pixel_y = 0},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "bff" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bfg" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bfh" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/module/power_control,/obj/item/weapon/cell{maxcharge = 2000},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) @@ -3196,7 +3196,7 @@ "bjx" = (/obj/structure/disposalpipe/tagger/partial{name = "Sorting Office"; sort_tag = "Sorting Office"},/turf/simulated/floor/plating,/area/maintenance/locker) "bjy" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bjz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) -"bjA" = (/obj/item/stack/sheet/cardboard,/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) +"bjA" = (/obj/structure/table/standard,/turf/simulated/floor/engine,/area/rnd/misc_lab) "bjB" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/locker) "bjC" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bjD" = (/obj/structure/filingcabinet/filingcabinet,/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) @@ -3340,7 +3340,7 @@ "bml" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmm" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bmn" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) -"bmo" = (/obj/item/stack/sheet/glass/reinforced,/obj/effect/decal/cleanable/cobweb,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/maintenance/locker) +"bmo" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/device/multitool,/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Office"; dir = 4},/turf/simulated/floor,/area/quartermaster/office) "bmp" = (/obj/item/weapon/screwdriver,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmq" = (/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) @@ -3374,7 +3374,7 @@ "bmT" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/dropper,/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bmU" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/light/small{dir = 1},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc/super/equipment{dir = 1; name = "north bump"; pixel_y = 24},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "bmV" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access = list(6)},/turf/simulated/floor,/area/hallway/primary/starboard) -"bmW" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/mineral/phoron,/obj/item/stack/sheet/mineral/phoron,/obj/item/stack/sheet/mineral/phoron,/obj/item/stack/sheet/mineral/phoron,/obj/item/stack/sheet/mineral/phoron,/obj/item/stack/sheet/mineral/phoron,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) +"bmW" = (/obj/structure/table/standard,/obj/item/clothing/glasses/welding,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) "bmX" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_one_access = list(5,12,47)},/turf/simulated/floor/plating,/area/hallway/primary/starboard) "bmY" = (/obj/structure/sign/chemistry,/turf/simulated/wall/r_wall,/area/medical/chemistry) "bmZ" = (/obj/structure/reagent_dispensers/water_cooler,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/turf/simulated/floor{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/reception) @@ -3757,7 +3757,7 @@ "bum" = (/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 32},/turf/simulated/floor{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/medical/reception) "bun" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "buo" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/item/weapon/screwdriver,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) -"bup" = (/obj/structure/table/standard,/obj/item/stack/sheet/metal{amount = 10},/turf/simulated/floor/engine,/area/rnd/misc_lab) +"bup" = (/obj/effect/decal/cleanable/cobweb,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/maintenance/locker) "buq" = (/obj/structure/morgue,/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/medical/morgue) "bur" = (/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/medical/morgue) "bus" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor,/area/medical/morgue) @@ -4168,7 +4168,7 @@ "bCh" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/medbay) "bCi" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay3) "bCj" = (/turf/simulated/floor{icon_state = "white"},/area/medical/medbay3) -"bCk" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/device/multitool,/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Office"; dir = 4},/turf/simulated/floor,/area/quartermaster/office) +"bCk" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bCl" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay2) "bCm" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bCn" = (/obj/structure/table/standard,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/item/weapon/reagent_containers/glass/bottle/stoxin{pixel_x = -6; pixel_y = 10},/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/medical,/turf/simulated/floor{dir = 8; icon_state = "whiteyellow"},/area/medical/chemistry) @@ -4838,7 +4838,7 @@ "bPb" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/storage/tech) "bPc" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/tech) "bPd" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/tech) -"bPe" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) +"bPe" = (/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/assembly/robotics) "bPf" = (/turf/simulated/floor/plating,/area/storage/tech) "bPg" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/tech) "bPh" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/plating,/area/storage/tech) @@ -5171,7 +5171,7 @@ "bVw" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bVx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/rnd/research) "bVy" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"bVz" = (/obj/structure/table/standard,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/cable_coil,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/assembly/robotics) +"bVz" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) "bVA" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "bot"},/area/rnd/research) "bVB" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/wall/r_wall,/area/rnd/mixing) "bVC" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/engineering_guide{pixel_x = 3; pixel_y = 2},/obj/item/weapon/book/manual/atmospipes,/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet,/area/engineering/break_room) @@ -5665,7 +5665,7 @@ "ceW" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) "ceX" = (/obj/structure/noticeboard{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/engineering/break_room) "ceY" = (/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/sleep/engi_wash) -"ceZ" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) +"ceZ" = (/obj/structure/table/standard,/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/item/clothing/glasses/welding,/obj/structure/closet/fireaxecabinet{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/engineering/atmos) "cfa" = (/obj/structure/bed/chair,/turf/simulated/floor,/area/medical/surgeryobs) "cfb" = (/obj/structure/closet/secure_closet/hydroponics{req_access = list(47)},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage) "cfc" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/smartfridge/drying_rack,/turf/simulated/floor{tag = "icon-whitegreen_v (NORTHEAST)"; icon_state = "whitegreen_v"; dir = 5},/area/rnd/xenobiology/xenoflora_storage) @@ -6083,7 +6083,7 @@ "cmY" = (/obj/machinery/door/blast/regular{desc = "By gods, release the hounds!"; id = "xenobioout6"; name = "Containment Release"},/turf/simulated/floor/engine,/area/rnd/xenobiology) "cmZ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/starboard) "cna" = (/obj/structure/cable/yellow,/turf/simulated/floor/plating/airless,/area/solar/starboard) -"cnb" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/item/clothing/glasses/welding,/obj/structure/closet/fireaxecabinet{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/engineering/atmos) +"cnb" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_y = 30},/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/storage/belt/utility/atmostech,/obj/item/weapon/storage/belt/utility/atmostech,/turf/simulated/floor,/area/engineering/atmos) "cnc" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "cnd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "cne" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering EVA Storage"; req_one_access = list(11,24)},/turf/simulated/floor,/area/engineering/engine_eva) @@ -6128,7 +6128,7 @@ "cnR" = (/turf/simulated/wall/r_wall,/area/engineering/locker_room) "cnS" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating{dir = 4; icon_state = "warnplatecorner"},/area/maintenance/engineering) "cnT" = (/obj/structure/table/standard,/obj/item/device/t_scanner,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/radio/headset/headset_eng,/obj/item/weapon/cartridge/atmos,/obj/item/weapon/cartridge/atmos,/obj/item/device/pipe_painter,/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 0; pixel_y = 28},/turf/simulated/floor,/area/engineering/atmos) -"cnU" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_y = 30},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/storage/belt/utility/atmostech,/obj/item/weapon/storage/belt/utility/atmostech,/turf/simulated/floor,/area/engineering/atmos) +"cnU" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/reinforced,/turf/simulated/floor,/area/engineering/workshop) "cnV" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/syringes,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "cnW" = (/obj/machinery/computer/med_data,/obj/machinery/light,/turf/simulated/floor{icon_state = "white"},/area/medical/surgery) "cnX" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/glass_jar,/obj/item/glass_jar,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) @@ -6158,7 +6158,7 @@ "cov" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/engineering/atmos) "cow" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/engineering/atmos) "cox" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/plating,/area/engineering/atmos) -"coy" = (/obj/structure/table/standard,/obj/item/stack/sheet/mineral/phoron{amount = 5; layer = 2.9},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) +"coy" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/reinforced,/turf/simulated/floor,/area/engineering/workshop) "coz" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/hallway/secondary/entry/port) "coA" = (/obj/machinery/door/airlock/maintenance{name = "Engineering EVA Storage Maintainance"; req_access = list(12); req_one_access = list(11,24)},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/red,/turf/simulated/floor,/area/engineering/engine_eva) "coB" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Engineering Firelock"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Locker Room"; req_one_access = list(11,24)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/engineering/locker_room) @@ -6378,7 +6378,7 @@ "csH" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/surgery2) "csI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/medbay) "csJ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "warnwhite"},/area/medical/virology) -"csK" = (/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/phoron{amount = 25},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = 28},/turf/simulated/floor/plating,/area/engineering/storage) +"csK" = (/obj/structure/closet/crate,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = 28},/turf/simulated/floor/plating,/area/engineering/storage) "csL" = (/obj/machinery/atmospherics/pipe/simple/visible/green,/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/engineering/atmos) "csM" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "o2_in"; name = "Oxygen Supply Control"; output_tag = "o2_out"; sensors = list("o2_sensor" = "Tank")},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light{dir = 1},/obj/machinery/camera/network/engineering{c_tag = "Atmospherics Northwest"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/engineering/atmos) "csN" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/purple,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/medical/virology) @@ -6408,17 +6408,15 @@ "ctl" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor,/area/engineering) "ctm" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/plating,/area/maintenance/medbay) "ctn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/engineering/workshop) -"cto" = (/obj/structure/window/reinforced{dir = 1},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/structure/table/reinforced,/turf/simulated/floor,/area/engineering/workshop) +"cto" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "ctp" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "surgeryobs"; name = "Operating Theatre Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/surgeryobs) "ctq" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "surgeryobs"; name = "Operating Theatre Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/surgeryobs) "ctr" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "surgeryobs"; name = "Operating Theatre Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/surgeryobs) "cts" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology) "ctt" = (/obj/structure/window/reinforced{dir = 1},/obj/item/stack/rods{amount = 50},/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/cell/high,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/reinforced,/turf/simulated/floor,/area/engineering/workshop) -"ctu" = (/obj/structure/window/reinforced{dir = 1},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/reinforced,/turf/simulated/floor,/area/engineering/workshop) "ctv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/engineering) "ctw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/engineering) "ctx" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light,/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for shutters."; id = "virologyquar"; name = "Virology Emergency Lockdown Control"; pixel_x = 0; pixel_y = -28; req_access = list(5)},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "greencorner"},/area/medical/virologyaccess) -"cty" = (/obj/structure/window/reinforced{dir = 1},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/mineral/plastic{amount = 10},/obj/structure/table/reinforced,/turf/simulated/floor,/area/engineering/workshop) "ctz" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/medbay) "ctA" = (/obj/machinery/light/small{dir = 1},/obj/item/weapon/cigbutt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/medbay) "ctB" = (/obj/structure/table/reinforced,/obj/machinery/button/remote/blast_door{id = "xenobio3"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access = list(55)},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/rnd/xenobiology) @@ -7483,9 +7481,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaatSauNazFaxxatSauNazUaxxatSauNaAbauNauNauNauNauNavHatqaaaaaaaaIaaIaaIaaaaaaaafaaaaxBaZnaxBaafaafaafaafaaIaaIaaIaafanXanXanXanXaxDaxEaxEaxFanXanXanXanXaAvaucaucanXaxHaxIanXanXaxJaxKaxLaxMaxMaxMaxMaxMaxMaxMaxMaxNaxMaxMaxMaxMaxMaAHaxPaxQaxRaAHavpasZaxSawjcfSatCaxVaxXaxXaxXaxZaxYayaawLaxXavqaydayeayfaygayhayhayhayhawXavxawEawDatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaAuaBaaAuaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaynayoaypayoaBcayoayrayoaysaytayvayvayvayvaywauNawNatqaaaaafaafaaaaaaaaaaaaaafaaaayyaBkayAaafaaaaafaaaaaaaaaaaaaaaanXayBayCayDayCayCayCayCayEayCayCayFayGayDayHayIaxMaxMaxMaxMaxMaxMayJayKayLayLayLayLayMayLayLaZsayLayMayLayLayLarAaBEayPayQarEaAiasZcfSaycaxUatCayUayTayWaxpayYayXayYaxqayTazaazbazcazdazeazdazdazfaxraBOaxtaxTaxvatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaBuaBvaZraBxaByaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqazrazsaztazuazvazwazxazyazwazzazAazwazwaCeauNavHauRaafaafaaaaaaaaaaaaaaaaafazDazEbdHazGazHaaaaafaaaaaaaaaaaaaaaanXazIanXazJazKazLazLazLazMazLazLazLazNazJazOazPazPazPazPazPazPazPazQazRayLazSazTazTazVazWazXazYazZaAabeTazTaAcarAaAdayPayQarEaAiasZaybaAeauMatCaxWaxXaxXaxXaxXayiayjaAlaAmaAnaxkaAoaylaApaApaApaAqayVatPayZatPatPatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCwbfyaCyaCvaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafauNaAwaAxaAwaAyazsazsaAzaAwaAxaAwaAAaABaACaADauNavHauQauQaAEauUauUauUauUauVauQaAFaAGbfAaAIaAFanXanXaxHaAJaxIanXanXanXazIaAKazJaaaaafaaaaafaaaaafaaaaafaaaazJazOazPaALaAMaANaAOaAPazPazQaucayLaAQaAQaARaASaATaAUaAVaATaAWaAXazTaAcarAaAdayPaDdarEaAiasZawzaAgaAhaBbayRaBdaBeazhaBgaBhaBiaBjaBjaCLaBjatPaBlaBmaBnaBoaBpaBraxvazibguazjatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaacaaaaaaaafaaaaCvazlaDAaDBaCvaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaBzatSaBAawHaBBaBCaBDaDcaBFaBBawHaBGaBHaBIaBJaBKaBLavHavHavHavHavHavHavHavHaDnaBPaAFazmaBRaBSaAFaBTaBUayCayCayCayCayCaBVaBWaBXazJaafaBYaBYaBYaBYaBYaBYaBYaafazJazOazPaBZaCaaCbaCcaBZazPazQaCdayLayLayLayLaDxaCfaCgaChaCfaDyaCjazTaCkarAaAdayPaClarEaJCasZaznaAYazCatCaxWavqatEaBjaBjaBjaBjaBjaCqaCraCsaBjatPatPatPatPaDQatPatPaAfaAkaAjatRatRatRatRatRatRatRatRatRatRaumaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaEXaEYaDYaCvaaaaaaaaaaafaafaaaaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqaAxaCzaCAaCAaCAaCAaCBaAxazqaaaaBIaCCaxzaBLaCEaCEaCEaCEaCEaCEaCEavHaCFaCGaAFaEeaCIaAsaAFaCKaEvaCKaCKaCKaCKaCKaCKaCKaCKaCMaaaaBYaCNaCOaCPaCQaCRaBYaaaazJazOazPaBZaCSaCTaCUaBZazPazQanXayLaCVaCWaARaCXaCYaCZaDaaDbaECayLayLayLarAaAdayPayQarEaAiasZaAtaEMauMatCaDgavqatEaDhaDiaDjaDkaBjaCqaDlaCsaBjaDmaESbgIaDpaDqaGwaDsatPatPatPaAZatjatjatjatjaEVatjatjatjatjaBfaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCvbgHaGyaCvaDCaDDaDEaDCaDCaDCaDCaDCaDCaDCaDFaDGaDGaDGaDHaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafauNaAwaAxaAwaAyazsazsaAzaAwaAxaAwaAAaABaACaADauNavHauQauQaAEauUauUauUauUauVauQaAFaAGbfAaAIaAFanXanXaxHaAJaxIanXanXanXazIaAKazJaaaaafaaaaafaaaaafaaaaafaaaazJazOazPaALaAMaANaAOaAPazPazQaucayLaAQaAQaARaASaATaAUaAVaATaDyaAXazTaAcarAaAdayPaDdarEaAiasZawzaAgaAhaBbayRaBdaBeazhaBgaBhaBiaBjaBjaCLaBjatPaBlaBmaBnaBoaBpaBraxvazibguazjatRatRatRatRatRatRatRatRatRatRavcaafaaaaaaaaaaaaaaaaacaaaaaaaafaaaaCvazlaDAaDBaCvaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaBzatSaBAawHaBBaBCaBDaDcaBFaBBawHaBGaBHaBIaBJaBKaBLavHavHavHavHavHavHavHavHaDnaBPaAFazmaBRaBSaAFaBTaBUayCayCayCayCayCaBVaBWaBXazJaafaBYaBYaBYaBYaBYaBYaBYaafazJazOazPaBZaCaaCbaCcaBZazPazQaCdayLayLayLayLaDxaCfaCgaChaCfaECaCjazTaCkarAaAdayPaClarEaJCasZaznaAYazCatCaxWavqatEaBjaBjaBjaBjaBjaCqaCraCsaBjatPatPatPatPaDQatPatPaAfaAkaAjatRatRatRatRatRatRatRatRatRatRaumaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaEXaEYaDYaCvaaaaaaaaaaafaafaaaaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazqaAxaCzaCAaCAaCAaCAaCBaAxazqaaaaBIaCCaxzaBLaCEaCEaCEaCEaCEaCEaCEavHaCFaCGaAFaEeaCIaAsaAFaCKaEvaCKaCKaCKaCKaCKaCKaCKaCKaCMaaaaBYaCNaCOaCPaCQaCRaBYaaaazJazOazPaBZaCSaCTaCUaBZazPazQanXayLaCVaCWaARaCXaCYaCZaDaaDbbfeayLayLayLarAaAdayPayQarEaAiasZaAtaEMauMatCaDgavqatEaDhaDiaDjaDkaBjaCqaDlaCsaBjaDmaESbgIaDpaDqaGwaDsatPatPatPaAZatjatjatjatjaEVatjatjatjatjaBfaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaCvaCvbgHaGyaCvaDCaDDaDEaDCaDCaDCaDCaDCaDCaDCaDFaDGaDGaDGaDHaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaDIaDJaDKaDJaDJaDLaDMaDJaDJaDKaDNaDOaBIaDPaFEaBLaDRaDSaDTaDUaDVaDWaCEavHaDXauQaAFaAFbaNaDZaCMaEaaEbbcCbbTbbxbaCbafbacaEiaEjaCMaafaBYaEkaElaEmaEnaEoaBYaafazJazOazPaEpaEqaEraEsaEtazPazQaEuayLazSazTaFSaEwaCfaExaEyaATaEzaEAaEBaEBarAaAdayPayQarEaAiaCmaCmaCmaCmaCmaEHaEIatEaEJaEKaEKaELaFZaEKaENaEOaBjaEPaEQaERaGfaETaCnaDsaaaaafaafaafaaaaaaaafaafaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaDCaBsaBqaDCaBtaCpaGkaFdaFdaFdaFdaFeaFfaFgaFgaFgaFgaFgaFgaFgaGqaFiaFjaafaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaDIaDNaDJaFkawiaFlaFmbIraFoaFpbHfaFlawnaFraFsaFtaDPayuaBLaFvayxaBMaCxaBMaBNaGravHaFuaGxaFxaGHaFzaDfaGPaFJaFKaFLaFLaFLaDraFLaFLaFNaFOaCMaaaaBYaDtaElaFQaEnaFRaBYaaaazJazOazPaGVaFTaFUaFTaFVazPazQaFWayLayLayLayLaFXaCfaCgazTaCfaFYbcEazTaGaarAaGbaGcaGdarEaAiaDeaDvaDuaCoaDeaHJaDzaHYaGlaGmaBjaBjaBjaBjaBjaBjaGnaGoaGpaIcaDpaIkaIhaDsaDsaDsaDsaDsaDsaDsaDsaDsaFaaFbaDsaDsaFaaGtaDsaDsaaaaaaaDCaDCaDCaDCaDCaEZaEWaFdaFcaFwaDCaDCaDCaDCaDCaGDaGEaGFaGFaGFaGFaGFaGFaGGaGGaIlaGGaGGaGGaGGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaFraGIaFyaGKaFlaFMaFlaFMaFlaFMaFlaFMaFlaGMaGNaGOaDPayuaBLaInaFAaGRaGSaGTaGUaCEaFBaFDaFCaFCaFCbazaIzaFCbcTaFLaFLaFLaFLaFLaFLaFLaFNbcPaCMaafaBYaHeaHfaHgaHhaHiaBYaafazJazOazPaHjaFPaFUaHlaHmazPaHnaHoayLaHpazTaARaHqaATaHrazTaCfaFYaHsazTaHtarAaHuaHvaHwarEaGuaIDaEUaGvaDwaIIaGzaGjatEaHCaHDaBjaHEaBjaHFaBjaHGaBjaHHaGpaIZaDpaJsaJjaHLaHMaHMaHNaHOaHKaHKaHKaHKaHKaHPaHKaHKaHKaHQaHVaDsaDsaDsaDCaGBaGAaGCaGCaGLaGJaDCaDCaJwaDCaIdaIeaIfaIgaGFaJBaGFaIiaIjaJHaKjbinaKlaIoaIpaIqaKHaIsbjFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa @@ -7503,20 +7501,20 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzaYKbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaXRaXhaToaYfaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaXubcFbcZaXmbbUaSFbaabaabaabaabaabbVbaaaXoaYObbXbbYbaibbZbbZbbZbbZbdKbbZbcbaTUbccbcdbcebcebcfbcgaTSaXebchbcibcjaKibdQblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbcrbcsbctbeabcvbcwbcxbbgaUpbczbcAbeeaUpaUpaaaaaaaafaafbekaaaaaaaUpaUpbezbcGbczaUpbbgbcxbcHbcIbcJbcKbcLaRpaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSbcObcObcObcObeBbcQbcRbcSaUQaUQaUQbeMbcUaTeaZMbcWbcXaYgaWBaYhaWDbcYaZzaZZbdabdbbdcbddbdebddbddbddbddbddbdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdraVoaYubdsaZNaVobeNbbOaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaEfbabbaaaZvaDobbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZaEgbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaEfaEdbeUaEcaDobbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPbfebffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaEfaEdbeUaEcaDobbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPaAWbffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaabgnbgobgpbgqaZUbgrbgrbgrbgrbgrbgrbgsbgtbgraYOaYOaYOaYOaYObhKaYOaYOaYObgvbgvbgwbbZbdDbgxbeZbgybbZbgzbgAbgzaTSbeRbdLbdMbfdaTSaXebdObdPbgBbgCbgDbfgbgDbdPbfibgEbgFbgGaFIaFGaFhaMbbgKbgLbctbhLbivbgObgPbexbexbgRbgSbgTbdYbebbmIbgVbhRbhNbfzbgYbhSbebbedbhabhbbhcbeCbhTbeEbhgbhhaJibhibhjaRpbhkbhlbhmbewbewbhnbewbhobewbewbewbewbhpbewbewbewbewbhqbewbewbewbewbewbewbhmbewbewbhrbhsbhsbhtbhsbhsbhubhvbewbhqbhwbhxbhpbewbhybewbewbewbhzbhAbhBbhUbewbhDbewbhEbewbewbhFbhGbhHaVoaYuaVobhIaHdbhXbhWbhMaHcaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaafbhPaYDbhQbitbiqbjubjqbjwbjvbjubjBbjGbjCbjObhYbhZbgwbbZbbZbbZbiabfabbZaTSaTSaTSaTSbeRbibbicbjQaTSbiebifbdPbigbihbiibgDbijbdPbfibikbgFbgGbgGbgGaEhaMbbimaSzbctbjVbiobipbfjbirbisbfBbiubjMbdYbebbiwbixbiybjYbiybgYbgebebbedbiAbiBbiCbgQbiEbgZbiGbiHaJibiIbiJbiKbiLbiMbiNbiObiObiPbiQbiRbiSbiSbiSbiTbiSbiSbiSbiSbiSbiUbiVbiVbiVbiWbiObiObiNbiObiObiXbiVbiVbiYbiSbiZbjabjbbiSbjcbiObiObiObiObiObiObiObiObiObiObiObiObiObjdbiTbjebiSbjfbjgbjhbjibjibjjbjkaZNaWRbjlaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZbkZbkZbkZaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbjAbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktcsfbkvbewbkpbkwcLYbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZbkZbkZbkZaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbfgbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktcsfbkvbewbkpbkwcLYbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObQDblrblEbQLbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbloblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbmobmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibmWbojbmYbmZbPMbolbjRbndbnebjRbopbmCbnhbnibnjbmPboKbnmbnnbPLbnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbPKbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbPJbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpScfibnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObPeboqbPEbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbupbmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibCkbojbmYbmZbPMbolbjRbndbnebjRbopbmCbnhbnibnjbmPboKbnmbnnbPLbnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbPKbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbPJbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpScfibnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbnlboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObmWboqbPEbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdvbpHbpHbpHbpIbpHbpJaZVbpKbqKbgrbqQbjpbrkbrcbpQbpRbrvbrubrwbrwbrwbrxbkWbpUbkWbkWbkWbkWbpVbpWbpWbpXbpYbdPcfycfocfzbrybqdbqebqfbrCbqhbqibqjbqkbqkbrDbrIbgGbgGbqmbfmaMbblqbqnbqoaJubqqbqrbqrbxqborbrPbxsbotaafbebbebbebbebbshbebbebbebbebaafbedbqzboCbqAbsjbqCbqDbqEaJibqFaRqaRpaJibskbqHbqIbqJaJDbqLboPbqNboUboUboUboUboUboUbqObqPbslboYbqRbqSboNbnnbqUbqVbqWbsnbpgbphbpfbqXbYfaVJbpjbqYbqZbqZbrabrbbsobrdbrdbrdbrebrdbrfboObrhbribrjbsqbnIbrlbpCbrmbrnbrobsrbnIbrqbpFbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBcaLbsHbsHbthbrzbrAbgrbtkbtlcaMbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabYZcanbotbosbotaafbsibZibtKbtTbsmbtXbtKcaJbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNcbQcdpcbdcbkceobsCbqObsDbnicevbsFcepcdGbnncdtbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNceZbsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtccflbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbWIbXnbwnbukbulbumbnibnnbunbpubVVbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbVzbpvbuCbuDbuEbuFbVybrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbVebnIbpEbpFbUAbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBcaLbsHbsHbthbrzbrAbgrbtkbtlcaMbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabYZcanbotbosbotaafbsibZibtKbtTbsmbtXbtKcaJbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNcbQcdpcbdcbkceobsCbqObsDbnicevbsFcepcdGbnncdtbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNbVzbsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtccflbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbWIbXnbwnbukbulbumbnibnnbunbpubVVbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbPebpvbuCbuDbuEbuFbVybrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbVebnIbpEbpFbUAbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeObSwbxmbuVbpHbuWbgnbgobuXbuWbgrbxpbjpbxvbvbbjpaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaabvcbvdbrJbvebvfbvfbvfbvfbvfbvgbvhbvfbvibxzbvkbvlbvmbSlbSrbfmbvpbgGbxDbpzbvsbvtbvubvvbmGbmGbmGbRcbQMbvzbvAbvBbvwaafbpObRpbvHbvJbvKbvMbvNbRybpOaafbspbqMbvQbxnbedbvRbspbvSaJlbvTbcLbvUaJibvVbvWbvXbTTbxObucbyobxTbyKbwdbwebwebwfbyMcdWcdVbUqbwkbTWbwmbwkbwkbwkbwkbyQbwkbwkaXKaXKaXKaXKaVJbpjbsJbsKbsLbwobwpbwqbwrbwsbwsbwsbsSbwtbTsbwvbwwbyUbwybnIbwzbwAbwBbwCbpCbSEbnIbwEbwFbnMbnMaaaaaaaaaaaaaafbuPbuQbuRbuQbuRbuQbuSaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbwMbwNbwObwPbrJbwQbrJbwRbwRbwRbwSbwTbrKbrJbrJbrLbwUbwVbwWbwXbrpbzcbxabgGbgGbugbxcbvtbvubxdbxebxfbzrbzHbxibxjbxkbxlbvwaafbxrbzNbzJbzObyLbxobzPbzVbxraafbspbqwbAebuBbedbAibspbtVaJlbxwbcLaRpaJibDDbxybAobxAbxBbxCbAtbxEbxCbxFbxGbDIbxFbwkbAxbxJbwkbwkbxKbxLbxMbxNbAAbxPbxQbxRbxSaXKbaybvraXKaVJbpjbxXbqZbqZbxYbxZbppbDQbwsbwsbwsbsSbwtbEFbwwbvDbUabTQbwwbESbFbbEZbyibpCbFybnIbrqbykbnMaaaaaaaaaaaaaaaaafbwGbwHbrgcLebwJbFUbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbAFbypbAFbyqbyrbwQbrJbrJbrJbysbrJbwTbrKbytbdPbdPbyubgGbrNbwXbyvbywbyxbyybyybyzbyAbyBbyCbyDbvsbyEbvPbyGbxkbyHbyIbyJbvwaafbxrbxrbxrbxrbALbxrbxrbxrbxraafbyNbyNbyNbyNbyNbyNbyNbAVaJibyPblMblNaJibCnbyRbyRbySbyTbxCbAXbyVbyWbCobyYbyZbzabwmbzbbBqbzdbzebzfbzgbzgbzhbzibzgbzjbzkbckbaAbwubclbBsbcnbCQbzsbztbzubzvbzwbppbCXbpqbpqbDBbsSbwtbCLbzAbzBbzCbzDbzAbzEbzFbzGbBwbzIbwwbwwbBxbnMbnMbzKbzLbzLbzLbzMbCJbylbymbrgbwJbrgbynbuRaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaacaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbzRbrJbwQbrJbzSbzSbzSbzSbwTbrKbzTbzUbdPbCkbgGbrNbBJbzWbzXbzYbgGblnbgGbzZbAabAbbAcbAdbyEbwIbAfbxkbxkbxkbAgbvwbAhbAhbBKbAhbBRbBQbBSbAjbBUbAjbAjbyNbCcbCdbAmbAnbBXbApbAqaJibAraRqaRpaJibAlbAsbAubAvbAwbBtbAybAzbBabABbACbADbAEbBEbAGbAHbAIbAJbAKbAIbxtbAMbANbAObnvblUbsdbBGbsgbsfbaAbPObpjbxubxUbAYbAZbAZbppbAkbBbbBcbppbBdbBebBfbBgbBhbBibBjbBkbBlbBlbBmbBnbBobTHbCrbBrbCwbCAbTIbBvbCEbCIbCHbCKbwGbwJbrgbwJbwJbBNbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaacaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbzRbrJbwQbrJbzSbzSbzSbzSbwTbrKbzTbzUbdPbmobgGbrNbBJbzWbzXbzYbgGblnbgGbzZbAabAbbAcbAdbyEbwIbAfbxkbxkbxkbAgbvwbAhbAhbBKbAhbBRbBQbBSbAjbBUbAjbAjbyNbCcbCdbAmbAnbBXbApbAqaJibAraRqaRpaJibAlbAsbAubAvbAwbBtbAybAzbBabABbACbADbAEbBEbAGbAHbAIbAJbAKbAIbxtbAMbANbAObnvblUbsdbBGbsgbsfbaAbPObpjbxubxUbAYbAZbAZbppbAkbBbbBcbppbBdbBebBfbBgbBhbBibBjbBkbBlbBlbBmbBnbBobTHbCrbBrbCwbCAbTIbBvbCEbCIbCHbCKbwGbwJbrgbwJbwJbBNbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBCbwNbBDbCYbrJbwQbrJbrJbrJbrJbrJbwTbrKbzTbBFbdPbzzbgGbBHbBIbgGbCZbgFbgGbgGbyjbvsbvtbAbbAcbAdbyEbvwbBLbBMbzybBMbBObvwbDbbDabDdbDcbDfbDebDhbDgbDjbDibBVbyNbBWbzmbBYbBZbCabCabCbbDwbAraRqaRpaJibzxbCebCebySbCfbxCbCgbChbxCbCibCjbCjbyObwkbClbCmbwkbwkbwkbwkbwkbwkbyXbwkbwkbwmbDKaXKaXKaXKaXKbDYbpjbwwbzAbzAbzAbzAbzAbzAbzAbzAbzAbzIbEibCsbCtbBhbCubCvbEjbCxbCxbCxbCybCzbEkbCBbCCbCDbEpbTGbCGbErbCGbEsbEubBzbuQbuRbEwbuRbuQbBBaafaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbCMbCNbCObrJbrJbrJbCNbrJbwTbrKbzTbCPbdPbNzbgGbrNbwXbgGbqlbCRbgGbgGbECbxcbvtbAbbCTbxcbCUbvwbCVbEKbOxbAWbxlbvwbEMbELbERbAhbEUbEUbEUbAjbEWbEVbEXbyNbDkbDlbDlbDmbDnbDobDpaJibDqbDrbDsaJibDtbEYbDvbMpbDxbDybDzbDAbyWbLWbFabCjbMybwmbDEbDFbwmbDGbDHbNsbDJbFobDLbDMbCpbDNbDObBTbNtbDRbCpbVLbVMbDUbVAbDWbDXbDXbFrbDZbEabEbbEcbEdbEebEfbEabEgbEhbCvbFVbFFbGfbwwbwwbwwbwwbwwbGhbGgbEnbzKbzMbCJbEobGibCJbzKbzLbzMbGjbCJbGkaafcHOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGubExbGubEybEzbEAbEAbEAbEAbEAbEBbGAbEDbzTbEEbdPbKobEGbEHbEIbEJbGDbGCbGWbGEbGvbtCbENbAbbEObEPbyEbvwbEQbHabLHbBMbETbvwbBPbHibHjbAhaaaaaaaaabAjbHmbHlbFcbyNbFdbFebFfbFgbDnbDobFhaJibxwaRqaRpbHMbFjbFkbFlbFmbFnbHNbFpbFqbxCbxFbxFbIZbxFbwkbFsbFtbFubFvbFwbFxbDJbIYbDLbFzbFAbFBbDObFCbFDbFEbHPbVlbDXbHQbVAbFJbDXbDXbFKbFLbFMbFLbFLbFNbFObFPbFQbFRbFSbCvbHRbJrbJabFWbFXbFYbFZbGabGbbGcbGdaafaafbCJbGebHUbHUbHVbIfbHZbIobEvaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7525,7 +7523,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabMZaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbuObEmbIVbIWbNdbuNbuGbuAbNfbtCbvtbJcbJdbJebJebJfbJgbJhbJibJjbJgbJfbJebJebNkbJkbJlbNqbJnbJobNBbJebJebJpbJgbJhbJibJjbJsbJtbJubJtbJvbJwbvUaJlbEtbEqbFHbGFbNLbGHbDzbHAbFibDVbxFbNQbCFbDSbDEbJGbwkbJHbJIbJJbDJbJKbJLbJMbJNbJObFDbJPbItbJObCpbJQbJRbIxbJSbJTbJUbNZbJWbObbJYbIFbJZbKabKbbKbbzAbKcbKdbKebOcbKgbKhbKibKjbKjbKkbGabGbbKlbEnbKmbOdbKnbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKpbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKvbKwbKxbKwbKyaaaaaaaaabGtbGtbOfbKAbIVbKAbOibKCbOnbKDbKEbtCbKFbvtbKGbKHbAabKIbAabzZbHHbKJbAabKKbKLbKMbKNbKObAcbAabKPbKQbHLbKRbHLbHLbKSbKTbODbOtbKWbKXbcLbKYaRpaRpaRpaJlbOEbFlbFnbOFbJmbOGbJybJxbFIbLgbLhbLibLjbHgbDEbIkbIabIzbHhbDJbDJbLobLobLobCpbMMbLqbLrbLsbLtbCpbLubLvbIxbLwbFGbLybOHbLAbLBbLCbIFbJCbLEbKbbKbbzAbRsbLFbCvbwwbLGbuTbuUbLJbLKbLLbGabLMbLNbLObLObLObLPbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbLQbLRbLSbLRbKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbsObLXbtdbLVbLZbMabMbbGtbMcbMdbMebMfbMgbOLbOKbMjbMjbMkbtCbtCbtCbOMbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMmbMnbMobtCbtCbtCbtCbtCbONbtCbtCbtCaJlaJlbOQaJlaKSaMpbMraJlbKZbJXbORbGFbLdbxCbDzbLDbxCbtvbMzbMAbMBbwkbOTbMDbMEbOUbMGbPubMIbMJbMKbMLbItbJObFDbFDbLpbJObCpbMNbMObMObMObMObMObMObMObMObMObMObPvbMQbMRbMRbzAbPAbMTbMUbwwbMVbMVbMVbMWbMXbMYbMVbMVbMVbMVbMVbMVbNabNbaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymbPCbLRbLRbNebKtbKtbLTbLTbPDbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbubbtObGvbNubNvbNwbNxaaaaaaaaaaaabNybuhbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPbqsbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbupbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbuxbEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbubbtObGvbNubNvbNwbNxaaaaaaaaaaaabNybuhbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPbqsbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbjAbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbuxbEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbNgbNgbNgbRAbRzbKAbOSbRDbRBbKAbRFbOVbOWbGvbGvbGvbGvbGvbGvbOXbOYbOZbPaaaabPbbPcbPcbPdbvYbPfbPgbPhbPfbPibNFbPjbPkbPlbNFbPmbNXbPobPpbPqbPrbPsbPtbPtbNSbRWbRJbPwbPxbPybDtbNYbLbbScbGFbGFbSgbDzbSibxCbSnbwZbwYbwlbwkbSubPIbwkbOkbwDbwKbOlbPNbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPPbQYbPRbOsbOsbOsbOsbwjbMObPTbLEbPUbPUbzAbBhbPVbPWbwbbPYbPYbSMbSObSNbSQbSPbSSbSRbSSbSVbMVbQfbSWbOObQhbTgbOpbQkaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQlbQmbQmbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbQnbQobTAbQqbQrbKAbKAbQsbQtbTObQvbQvbQvbQvbQvbQvbQwbQxbQyaaabQzbQAbUbbQCbxbbPfbQEbQGbQFbPfbNFbQIbQJbQKbNFbxxbxhbQNbQObQPbQQbQRbPtbQSbPxbQTbNUbPxbPxbQUbDtbPnbGFbQVbUkbGFbPzbDzbLebRCbQZbPBbUobyhbRGbDEbIkbSpbOkbwKbwKbOlbRfbMKbRgbRhbygbRjbRkbRlbybbRnbPObMObOsbOsbRobOsbOsbOsbOsbyabMObRqbLEbRrbRrbzAbRsbRtbRubyfbRwbUGbUwbUPbUObUWbURbVkbVjbVvbVmbxIbREbVGbxHbRHbRIbQibRKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaabLVbRMbRNbRObLVbRPbMabMbbGtbGtbRQbRQbRQbGtbGtbNxbRRbRRbRSbRSbRSbRSbNwbQyaaabRTbRUbRVbVObRXbRYbRZbSabSbbSbbWgbSdbSebWibNFbPtbPtbPtbPtbPtbWkbPtbPtbShbWobSjbNUbPxbSkbvnbDtbQHbLbbQVbSmbWMbPzbSobJAbJBbSqbRabSsbStbJzbFsbSvbIEbSxbRibRbbSAbSBbMKbRmbSDbWVbRjbSfbSGbXabRnbPObMObMObMObRobOsbOsbOsbMObMObMObSIbSJbRrbRrbzAbSKbSLbCvbzIbXcbXfbXebSQbXibXqbXpbXvbXubYabXxbMVbQfbYobOObSXbSYbSybTaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbTcbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7546,12 +7544,12 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafcgEclXcmmcmjcgEcmtcmmcEgcgEcmtcmmcEgcgEaaaaafcmzcgTcgTcgUcgUcmAcejcmvcmucmxcpocprcmycmCcmCcmEcmDcmCcmFcyXcbqcmIcmHcmKcmJcimcmLcmLcmMcljcmNczJczeczeciAcibceVcCgcqgciGcClciIcnccndcpCciGcmSciNcmWcfYcpGcnicnjciScCOciUclLclMclNcnlcpHcnlclNaaaaaaaaabYfbYfbYfcnnclSclSclTbYfbYfaaaaaaaaaaaacdOcdOcdOcdOcdOcdOcdOcdOcdOcnocnpcnqcdScdScnrcnscntcdScdScdScdScpIcnscntcdScdScnvcpNcnvaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccMaafaafaafaaaaafcnxaafcnxaafcKAaafcpOaafcKAaafcpOaafaafaaacejcnAcnBcgUcgUcnCcnDcpRcpPcnycnmcpUcnzcnzcqecnzcnGcqrcnHcnGcnJcjscDXcEjcnMcnOcnOcnOcnOcqIcqDcnRcnRcnRcgscgscgscgscnSciGcKCcJpcnccEZcnWciGcmSciNcEXciUcnYcEJcnjcEBcEqciUclLclMclNcoccodcoeclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaacdOcofcogcohcwlcojcokcqLcomcqNcopcoocdOaaLaafaafaafaafaaaaaaaaacqOaaaaaaaaaaafcoscKGcosaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafcoucrvcracoxcovcowcrzcoxcrQcrUcrzcoDcrVcrXcoEcnycnycnycnycnycnycnycnycoHcoGcrZcoIcsacoKcoNcoMcoOcnGcoQcoPcoRcnGcoTcoScoUcnOcoWcoVcoYcoXcpacoZcpjcpbcpbcpkcpncpncpjcsbciGciGcpccscciGciGciGcpeciNcDIciUciUciUcsecphciUciUclLcpiclNcvmcpscvmclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaafcdOcplcpmcplcsgcLZcppcpqcomcomcsicomcdOcdOaaaaaaaaaaafaafaaaaacaaaaaaaaaaaaaafaaacDLaaaaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaaaaaaaaaafcptcsDcpucpxcpwcpFcsLcsMcpzcsWcsQcpEcpDcsXcpFcpLcpJcsYcnTcnbcnkcnUcpTcpWcpVcpYcpXcqacpZcqccqbctccqdcticqfctkcqzcoTcqJcqKcnOcpacpacpacpacpacqMcpjcqPcqPcqPcpncpncpjbTFcrYciGcqhcqicqjcqkciGcqlciNcmOciUcqncqocqpcqqciUctmclLcpiclNctxcqQcquclNaaaaaaaaaaaaaaaaaacqvcqwcqxcqycqvaafaaaaaaaaaaaacdOcplcplcplcoictBcqBcqCctIcqEcqFcqGcqHcdOaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaafaaacmZaaaaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaaaaaaaaaafcptcsDcpucpxcpwcpFcsLcsMcpzcsWcsQcpEcpDcsXcpFcpLcpJcsYcnTceZcnkcnbcpTcpWcpVcpYcpXcqacpZcqccqbctccqdcticqfctkcqzcoTcqJcqKcnOcpacpacpacpacpacqMcpjcqPcqPcqPcpncpncpjbTFcrYciGcqhcqicqjcqkciGcqlciNcmOciUcqncqocqpcqqciUctmclLcpiclNctxcqQcquclNaaaaaaaaaaaaaaaaaacqvcqwcqxcqycqvaafaaaaaaaaaaaacdOcplcplcplcoictBcqBcqCctIcqEcqFcqGcqHcdOaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaafaaacmZaaaaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafcqRcqYcqScqVcqUcpFcqXcpFcvWcqYcqXcpFcvWcqYcpFcpFcpFcpFcpFcqZcpFcpFcpFcrbctOcrdcrcctScpZcrfcrecrhcrgcrjcricrlcrkcoTcqJcrmcnOcrncpacpacrocpacrpcpjcrIcrKcrJcrKcrLcpjbTFcrqciGcrrcrscrtcructTcrwcrxcryctVcrAcrBcrCcrDciUcrEcrFcrGcrHcqvcuacqvcrHaaaaaaaafaaaaaaaaacqvcrRcrTcrScqvaafaafaaaaaaaaacdOcomcomcomcomcrMcppcrNcrNcrNcnpcrNcrOcdOaaaaaaaaaaaaaaacrPcrPcrPccMaafaafaafaafcnaaafaafaafaafaafaaqcrPcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcptcpFcrccpFcrccpFcqXcpFcuecxacufcxaculcxacxacuycurcpFcpFcuLcuEcuEcuEcuYcuUcvkcvkcvlcpZcvncshcsjcnGcsmcskcvscnGcspcsocsrcsqcstcsscsvcsucpacswcpjcsxcrKcsycrKcsKcpjbTFcizciGcszcsAcsBcsCciGcfYcoacfYciUcsEcsFcsGcsHciUcsIcrGcrGcqvcsJcsNcvvcqvcqvcqvcqvcqvcqvcqvcqvctMctDctNcqvcqvcqvcrHaaaaaacdOcofcogcohcslcsRcqBcrNcrNcrNcnpcrNcsScdOaaaaaaaaaaaaaaacrPaaaaafaaaaafaaaaaaaaackxaaaaafaafaaaaaaaaaaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaacptcpFcrccpFcsOcsTcvEcsVcsUcvGcufcxacvOcxacxacvXcvRcwmcwacwzctacwUcwHcwHcwWcrccrccthctgctjcwXcnzcnGcwYcnGcnGcnGcwZctlcsrctncttctoctyctucpacxdcpjcxocrKcsycrKcxpcpjctvctwciGciGcxqciGciGciGciBctzctAciUciUciUcxrciUciUcsIcrGaaacqvctCctZctEctFcnZctHcxsctJctKctLcqvcuVcxtcuVcqvcxFctPcqvaafaafcdOcplcplcplcxHcLZctRcuccnXcnVcudcrNctWcdOcdOcdOcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaacptcpFcrccpFcsOcsTcvEcsVcsUcvGcufcxacvOcxacxacvXcvRcwmcwacwzctacwUcwHcwHcwWcrccrccthctgctjcwXcnzcnGcwYcnGcnGcnGcwZctlcsrctncttcnUcnUcoycpacxdcpjcxocrKcsycrKcxpcpjctvctwciGciGcxqciGciGciGciBctzctAciUciUciUcxrciUciUcsIcrGaaacqvctCctZctEctFcnZctHcxsctJctKctLcqvcuVcxtcuVcqvcxFctPcqvaafaafcdOcplcplcplcxHcLZctRcuccnXcnVcudcrNctWcdOcdOcdOcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcsOcsTcsTcsTcvEcsTcsTcsTcvEcsTcsTcsTcsTcsTcxVcyacsTcybcsTcyccsTcsTcsTcuhcugcuicpvcpFcujcygcukcuncumcupcuocumcuqcuscyhcuucutcutcuvcutcuwcyicuxcuAcuzcuBcuBcpjcuCcuDcymcuFcuFcuGcuHcuIcuJcuJcuJcuJcuJcuJcuJcuJcuKcrFcrGaaactFcypcuPcuNctFcpycuRcuQcuQcvdcvacuQcuQcvhcuQcuVcuXcuQcqvaaaaaacdOcplcplcplcslcyrcuZcvicpBcpAcvjcrNcrNcvecvfcvgcdOaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcpFcpFcpFcpFcqXcpFcpFcpFcqXcpFcpFcpFcpFcpFcvWcpFcpFctScpFcyucpFcyEcyzcvpcvocvrcvqcyFcvqcyHcvucvxcvwcvycvucvucvzcvAcqIcvBcpacvDcvCcpacpacyJcrKcrKcvFcuBcuBcpjbPxcAscvNcvNcvNcvNcyKcvNcvNcvNcvNclMcvPcrGcrGcrGcrGcrGcrGaaactFctFcyRctFctFcobcvScvTcvUcvVcvHcvJcvIcvLcvKcyZcwbcwccqvaaaaaacdOcomcomcomcomcwdcppcvicpgcoycvQcrNcrNcwhcrNcwicdOaaaaaacrPaafcwjcwjcwjcwjcwjaaackxaaacwjcwjcwjcwjcwjaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcpFcpFcpFcpFcqXcpFcpFcpFcqXcpFcpFcpFcpFcpFcvWcpFcpFctScpFcyucpFcyEcyzcvpcvocvrcvqcyFcvqcyHcvucvxcvwcvycvucvucvzcvAcqIcvBcpacvDcvCcpacpacyJcrKcrKcvFcuBcuBcpjbPxcAscvNcvNcvNcvNcyKcvNcvNcvNcvNclMcvPcrGcrGcrGcrGcrGcrGaaactFctFcyRctFctFcobcvScvTcvUcvVcvHcvJcvIcvLcvKcyZcwbcwccqvaaaaaacdOcomcomcomcomcwdcppcvicpgctocvQcrNcrNcwhcrNcwicdOaaaaaacrPaafcwjcwjcwjcwjcwjaaackxaaacwjcwjcwjcwjcwjaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaccMaaaaaaaaaaaacptcpFcpFcpFcpFcpFcqXcpFcpFcpFcqXcpFcpFcpFcpFcpFcvWcpFcpFctScpFczncpFcpFczncznczocpFcpFcvZcvYcwgcwgcwgcwgczqcwkcoTcwocwpcsqcwqcpacwscvCcpacwtcpjcwucrKcwvcwxcwwcpjczrcvMcvNcwIcwJcwKcwLcwMcwNcwOcvNcwPcwQcrGaaaaaaaaaaaaaaaaaacqvcwRcwycwAczBcwCcwBcqWcqAcqtcwFcwTcwScwVczFcuWcuQcqmcqvaaaaaacdOcofcogcohckXcsRcuZcxgcxhcxhcxicxjcxkczLcxmcqscdOaaaaaacrPaaaaafaaaaafaafaafaaackxaaaaafaaaaafaaaaafaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacptcpFcpFcpFcpFcpFczMcpFcpFcpFczMcpFcpFcpFcpFcpFcvWcpFcpFczXczVcAhctdctdcAhcAtcAhcxlcAvcAwctdcAAcAxcAHcADcAJcwkcoTcxucoTcxvcpQcpacpacxAcpacxBcpjcxCcxCcxDcwxcwwcpjbPxcvMcvNcxKcxLcxMcxNcxOcxNcxPcvNcxQcxRcrGaaaaaaaaaaaaaaaaaacqvcxScxTcxUcAUcxWcxXcpMcxZcuTcBkcuScxEcuTcBmcqvcqvcqvcqvaaaaaacdOcplcpmcplcBncLZcppcrNcrNcyecyfcrNcBqcomcomcomcdOaaaaaacrPaaactXctXctXctXctXaafckxaafctXctXctXctXctXaafcrPaaacBsaaaaaacBsaaaaaaaaacBsaaaaaaaaaaaaaaacBsaaaaaaaaacBsaaaaaacBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacptcpFczmcrWcrWczpcxGcrWczpcrWcxIcBucuEcuEcBzcuEcBAcuEcuEcuYcBDczncpFcpFcyjcylcykcyncBEcyocpFcBHcyqcyscyscBIcytcoTcxucyvcnOchbcpacyxcpacBKcyycpjcpjcpjcpjcpjcpjcpjbPxcvMcvNcyMcyNcxLcyOcxLcxNcyPcvNcyQcBLcrGaaaaaaaaaaaaaaaaaacqvcuVcBOctFctFchdcyAchmcyWctMctDctNcyBctMcvhcyYcqvaaaaaaaaaaaacdOcplcplcplckXcBRczacrNcrNcrNcyfcrNczbcrNczccrNczdaafaafcrPaafckVckSckSckSckSckyckxckwckvckvckvckvckUaafcrPaaacBscBscBscBsaaaaaaaaacBscBscBscBscBscBscBsaaaaaaaaacBscBscBscBsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index efa20f88d2..8154a2b9a2 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -517,7 +517,7 @@ "jW" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) "jX" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) "jY" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"jZ" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) +"jZ" = (/obj/structure/table/standard,/obj/item/stack/material/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "ka" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_y = -32; subspace_transmission = 1; syndie = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "kb" = (/obj/structure/closet/syndicate/personal,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_mothership) "kc" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows2"; dir = 1},/area/syndicate_mothership) @@ -731,7 +731,7 @@ "oc" = (/obj/machinery/door/airlock/centcom{name = "Bathroom"; opacity = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "od" = (/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "oe" = (/obj/structure/table/rack,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/obj/item/weapon/tank/emergency_oxygen/double,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) -"of" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) +"of" = (/obj/item/stack/material/steel{amount = 50},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "og" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/supply/dock) "oh" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 8},/obj/item/weapon/pen{pixel_y = 4},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "oi" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/window/reinforced,/turf/unsimulated/floor{icon_state = "floor5"},/area/syndicate_mothership) @@ -821,8 +821,8 @@ "pO" = (/obj/item/weapon/flame/lighter/zippo,/obj/structure/table/reinforced{icon_state = "table"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pP" = (/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/table/reinforced{icon_state = "table"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "pQ" = (/obj/machinery/door/airlock/glass,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) -"pR" = (/obj/item/stack/sheet/glass{amount = 50},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) -"pS" = (/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) +"pR" = (/obj/item/stack/material/glass{amount = 50},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) +"pS" = (/obj/structure/table/standard,/obj/item/stack/material/glass{amount = 15},/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) "pT" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/living) "pU" = (/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/living) "pV" = (/obj/structure/closet/secure_closet/personal,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/living) @@ -1135,7 +1135,7 @@ "vQ" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/handcuffs,/obj/item/clothing/glasses/night{pixel_x = -1; pixel_y = -3},/obj/item/clothing/glasses/night{pixel_x = -1; pixel_y = -3},/obj/item/clothing/glasses/night{pixel_x = -1; pixel_y = -3},/obj/item/clothing/glasses/night,/obj/item/weapon/storage/box/handcuffs,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "vR" = (/obj/structure/table/rack,/obj/item/weapon/rig/ert/security,/obj/item/clothing/accessory/storage/black_vest,/obj/item/weapon/rig/ert/security,/obj/item/clothing/accessory/storage/black_vest,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "vS" = (/obj/structure/table/rack,/obj/item/rig_module/mounted,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/accessory/storage/black_vest,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) -"vT" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/plasteel{amount = 50},/obj/item/stack/sheet/glass/reinforced{amount = 50},/obj/item/stack/sheet/glass/reinforced{amount = 50},/obj/item/stack/sheet/glass/reinforced{amount = 50},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) +"vT" = (/obj/structure/table/reinforced,/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/steel{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/material/steel{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/material/steel{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/material/steel{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/material/plasteel{amount = 50},/obj/item/stack/material/plasteel{amount = 50},/obj/item/stack/material/plasteel{amount = 50},/obj/item/stack/material/plasteel{amount = 50},/obj/item/stack/material/glass/reinforced{amount = 50},/obj/item/stack/material/glass/reinforced{amount = 50},/obj/item/stack/material/glass/reinforced{amount = 50},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "vU" = (/obj/structure/table/standard,/obj/item/weapon/scalpel,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "vV" = (/turf/unsimulated/floor{icon_state = "green"; dir = 4},/area/centcom/control) "vW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/control) @@ -2001,7 +2001,7 @@ "My" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "Mz" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/sniperrifle,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/obj/item/clothing/head/helmet/space/void/atmos,/obj/item/clothing/suit/space/void/atmos,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "MA" = (/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space/transit/north/shuttlespace_ns12,/area/space) -"MB" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/table/reinforced{icon_state = "table"},/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) +"MB" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/table/reinforced{icon_state = "table"},/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/material/steel{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "MC" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 28},/turf/unsimulated/floor{tag = "icon-whitecorner (NORTH)"; icon_state = "whitecorner"; dir = 1},/area/centcom/holding) "MD" = (/turf/simulated/shuttle/plating,/area/shuttle/skipjack/station) "ME" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "merc_shuttle_sensor"; pixel_x = 8; pixel_y = 25},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start) @@ -2261,7 +2261,7 @@ aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMmumumumumuaMaMaMaMaMaMaMaMaMnvnHnInJninLnnnHnzaMndnenmnmnenenenenCnonononpihihihihihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMmumumumuaMaMaMaMaMaMaMaMaMnHnQnRnRnSnRnRnLnHaMndnqnrnsntneneneihnonononuihbOkQbTihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMmumuaMaMaMaMaMaMaMaMaMaMnHDgnRnRnRnRoaDqnHaMndnenAnAnenenepaihnKnonDnEihbLkQmkihmumumumumumumumumumu -aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMnHofnRnRLqnRnRohnHaMndnenenenenenenMihihihihihihbPkQnGihmumumumumumumumumumu +aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMnHpSnRnRLqnRnRohnHaMndnenenenenenenMihihihihihihbPkQnGihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMomnHonnHnHnHnHnHooaMnTnananUihkdkdkdihkTkTnVnWihcikQrcihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMnHoCoyNpounFnHaMaMaMaMaMaMobkdkdkdoclalaododihcikQrcihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMnHoBoAoanRornHaMaMaMaMaMaMoikdkdkdihojlaihihihokolokihihihihmumumumumumumu @@ -2274,7 +2274,7 @@ aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUoVoVoVpdpepepepepApApepepepepgoVoVoVoVoNaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMmumumumuaMaMaMaMnHpynRnRnRpCnRnRnRpJnRnRnRoXnHmKmKmKmKaMaMaMaMmumumuihoEkQoEihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUoVoVpdpppqprpspeqbpupepvpwpepepepgoVoVoNaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMmumumumumuaMaMaMaMnHqCnRnRnRqcnRnRnRqpnRnRnRqFnHaMaMaMaMaMaMaMaMaMmumuihoEkQoEihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUoVpdpepBpBpBpBpeqDqDpepBpBpDpEpepepgoVpFpFpFpFpFaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMmumumumuaMaMaMaMnvnHnHnHnHnHnHnRnRnRnHnHnHnHnHnHnzaMaMaMaMaMmAaMmBmumuihoEkQoEihmumumumumumumumumumu -aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUpdpepepMpNpOpPpepBpBpQpBpBpBpBpRpSpeoVpFpTpUpVpFpFpFpFpFpWpXpXpYpFpFaMaMaMaMaMaMaMaMpZpZpZpZpZpZpZpZpZpZpZaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMmumumumuaMaMaMaMnHqZrasesrqEnHqanRqdnHsurfrfrgscnHaMaMaMaMaMmAmBmumumuihoEkQoEihmumumumumumumumumumu +aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUpdpepepMpNpOpPpepBpBpQpBpBpBpBpRofpeoVpFpTpUpVpFpFpFpFpFpWpXpXpYpFpFaMaMaMaMaMaMaMaMpZpZpZpZpZpZpZpZpZpZpZaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMmumumumuaMaMaMaMnHqZrasesrqEnHqanRqdnHsurfrfrgscnHaMaMaMaMaMmAmBmumumuihoEkQoEihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUqeqfqgpBqhqhqhpepBpBpeqiqjqkqlqmqnpeoVpFqopUpUqIqqqrqsqtquqsqvqwqxpFpFpFpFpFpFpFpFpFpFqyqzqzqzqzqzqzqzqAqBaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMmumumuaMaMaMaMaMnxrjrjrjrjrjnHnRnRnRnHrenRnRnRrknwaMaMaMaMaMmPaMmumumuihihyxihihmumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUqGqfpBpBpBpBpBpQpBpBpepepepepepepeqHrdpFpFpFpFpFqqqvqsqJOaqsqvqvqvqLqMqMqMqMqMqMqMqMqNqyqOqPqPqPqPqPqQqAqBaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMmumuaMaMaMaMaMaMnhrCrDrjrjrjrinRnRnRrqnRnRnRrGrHmiaMaMaMaMaMmAmBmBmumumuihihihmumumumumumumumumumumu aMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMoToUqRpeqSpBqSpBqSpepBpBpBqTqUoVoVoVoVoVqVqWqMqMqMqLqvqvqvqvqvqvqvqvqvqLqMqMqMqMqMqMqMqMqNqyqXqYqYqYqYqYqXqAqBaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMnyrjrjrjrjrjrtnRnRnRrAnRnRnRnRrSnBaMaMaMaMaMmAaMaMmBmumumumumumumumumumumumumumumumu diff --git a/maps/exodus-4.dmm b/maps/exodus-4.dmm index 3819e505cb..9a4353df6b 100644 --- a/maps/exodus-4.dmm +++ b/maps/exodus-4.dmm @@ -27,9 +27,9 @@ "aA" = (/obj/machinery/shieldgen,/obj/structure/window/basic{tag = "icon-window (EAST)"; icon_state = "window"; dir = 4},/obj/structure/window/basic{tag = "icon-window (NORTH)"; icon_state = "window"; dir = 1},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/constructionsite/teleporter) "aB" = (/obj/machinery/portable_atmospherics/canister/air,/obj/structure/window/basic{tag = "icon-window (WEST)"; icon_state = "window"; dir = 8},/obj/structure/window/basic{tag = "icon-window (NORTH)"; icon_state = "window"; dir = 1},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/constructionsite/teleporter) "aC" = (/obj/machinery/portable_atmospherics/canister/air,/obj/structure/window/basic{tag = "icon-window (EAST)"; icon_state = "window"; dir = 4},/obj/structure/window/basic{tag = "icon-window (NORTH)"; icon_state = "window"; dir = 1},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/constructionsite/teleporter) -"aD" = (/obj/structure/table/reinforced,/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 0; pixel_y = 0},/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) -"aE" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/random/tech_supply,/obj/machinery/camera/motion/engineering_outpost,/turf/simulated/floor,/area/constructionsite/teleporter) -"aF" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/plasteel{amount = 50},/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) +"aD" = (/obj/structure/table/reinforced,/obj/item/stack/material/plasteel{amount = 50},/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) +"aE" = (/obj/structure/table/reinforced,/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/item/stack/material/steel{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/material/steel{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/material/steel{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/material/steel{amount = 50; pixel_x = 0; pixel_y = 0},/obj/item/stack/material/steel{amount = 50; pixel_x = 0; pixel_y = 0},/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) +"aF" = (/obj/structure/table/reinforced,/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/random/tech_supply,/obj/machinery/camera/motion/engineering_outpost,/turf/simulated/floor,/area/constructionsite/teleporter) "aG" = (/obj/structure/table/reinforced,/obj/random/powercell,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) "aH" = (/obj/machinery/shieldgen,/obj/structure/window/basic{tag = "icon-window (WEST)"; icon_state = "window"; dir = 8},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/constructionsite/teleporter) "aI" = (/obj/machinery/shieldgen,/obj/structure/window/basic{tag = "icon-window (EAST)"; icon_state = "window"; dir = 4},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/constructionsite/teleporter) @@ -37,7 +37,7 @@ "aK" = (/obj/machinery/portable_atmospherics/canister/air,/obj/structure/window/basic{tag = "icon-window (EAST)"; icon_state = "window"; dir = 4},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/constructionsite/teleporter) "aL" = (/turf/simulated/floor,/area/constructionsite/teleporter) "aM" = (/obj/structure/table/reinforced,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/engineering,/obj/item/clothing/glasses/meson,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) -"aN" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/mineral/phoron{amount = 10},/obj/random/powercell,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) +"aN" = (/obj/structure/table/reinforced,/obj/item/stack/material/phoron{amount = 10},/obj/random/powercell,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/constructionsite/teleporter) "aO" = (/obj/machinery/access_button/airlock_exterior{master_tag = "constructionsite_airlock"; pixel_x = 20; pixel_y = 0; req_access = list(10)},/turf/simulated/floor/airless,/area/constructionsite/hallway/fore) "aP" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'VACUUM'"; icon_state = "space"; layer = 4; name = "VACUUM"; pixel_x = -32; pixel_y = 0},/obj/machinery/access_button/airlock_interior{master_tag = "constructionsite_airlock"; pixel_x = -20; pixel_y = 0; req_access = list(10)},/turf/simulated/floor,/area/constructionsite/teleporter) "aQ" = (/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/port_gen/pacman,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/constructionsite/teleporter) @@ -243,7 +243,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaavababaaaaaaabanaoaoaoaoapapapapaqapapapapapapapapapapaoaoaoapapapapapapapapapapaqapapapapauauauauanabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababaaaaabapapaoaoapapaeaeaeaeaeaeaeaeaeaeaeaeaeapaoaoaoapaeaeaeaeaeaeaeaeaeaeaeaeaeapapauauapapabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababaaaaabababanaoaoapaeaeawawawawawawawawawawaeaeapaoaoaoapaeaeaxaxaxaxaxaxaxaxaxaxaeaeapauaoanabababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabavabababaaaaaaabanaoaoapaeawawayayayayayayayayawaeaeapaoaoaoapaeaeaxazaAaBaCaDaEaFaGaxaxaeapauaoanabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabavabababaaaaaaabanaoaoapaeawawayayayayayayayayawaeaeapaoaoaoapaeaeaxazaAaBaCaEaFaDaGaxaxaeapauaoanabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababaaaaaaaaabanaoaoapaeawayayayayayayayayayawaeaeapaoaoaoapaeaeaxaHaIaJaKaLaLaLaMaNaxaeapauaoanabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabavabababaaabababanaoaoapaeawayayayayayayayayayawawawapaoaoaOaxaxaxaxaPaLaLaLaLaLaLaLaQaxaeapaoaoanabababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaavababavaaaaaaabanaoaoapaeawayayayayayayayayayaRayayaSaoaoaoaTaUaVaWaLaLaLaLaLaLaLaLaXaxaeapaoaoanabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 700ab1b105..9ba2de46e1 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -467,7 +467,7 @@ "iY" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "iZ" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/carpet,/area/outpost/research/hallway) "ja" = (/obj/machinery/button/remote/airlock{id = "rdorm2"; name = "Door Bolt Control"; pixel_x = -25; pixel_y = 0; specialfunctions = 4},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet,/area/outpost/research/hallway) -"jb" = (/obj/structure/table/rack,/obj/item/stack/sheet/metal{amount = 50; pixel_x = 5; pixel_y = 5},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/belt/utility{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/toolbox/emergency{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/plating,/area/outpost/research/chemistry) +"jb" = (/obj/structure/table/rack,/obj/item/stack/material/steel{amount = 50; pixel_x = 5; pixel_y = 5},/obj/item/stack/material/glass{amount = 50},/obj/item/weapon/storage/belt/utility{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/toolbox/emergency{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/plating,/area/outpost/research/chemistry) "jc" = (/obj/structure/table/standard,/obj/item/weapon/anodevice{pixel_x = 3; pixel_y = 3},/obj/item/weapon/anodevice,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/outpost/research/anomaly_analysis) "jd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/outpost/research/chemistry) "je" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/outpost/research/kitchen) @@ -520,7 +520,7 @@ "jZ" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "ka" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/research{name = "Anomalous Materials Locker Room"; req_access = list(65)},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "kb" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/plating,/area/outpost/mining_north) -"kc" = (/obj/effect/decal/cleanable/cobweb,/obj/item/stack/sheet/metal{amount = 10},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/glasses/meson,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/plating,/area/outpost/mining_north) +"kc" = (/obj/structure/table,/obj/structure/table/rack,/obj/item/stack/material/glass/reinforced{amount = 8},/obj/item/stack/rods{amount = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "kd" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet,/area/outpost/research/hallway) "ke" = (/obj/machinery/recharge_station,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "kf" = (/obj/structure/bed/chair,/obj/effect/decal/cleanable/dirt,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) @@ -555,7 +555,7 @@ "kI" = (/obj/machinery/disposal/deliveryChute{dir = 1},/obj/structure/disposalpipe/trunk,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/research/eva) "kJ" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/outpost/abandoned) "kK" = (/obj/structure/table/rack,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/outpost/abandoned) -"kL" = (/obj/structure/table,/obj/structure/table/rack,/obj/item/stack/sheet/glass/reinforced{amount = 8},/obj/item/stack/rods{amount = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) +"kL" = (/obj/effect/decal/cleanable/cobweb,/obj/item/stack/material/steel{amount = 10},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/glasses/meson,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/plating,/area/outpost/mining_north) "kM" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/airless{icon_state = "damaged4"},/area/outpost/abandoned) "kN" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "kO" = (/obj/effect/decal/remains/human,/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) @@ -764,6 +764,7 @@ "oJ" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/outpost/abandoned) "oK" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/outpost/research/power) "oL" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille/broken,/obj/item/weapon/material/shard{icon_state = "small"},/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) +"oM" = (/obj/machinery/light_construct/small,/obj/structure/table/rack,/obj/item/stack/material/steel{amount = 10},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "oN" = (/obj/structure/table/standard,/obj/item/weapon/paper/crumpled,/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/outpost/abandoned) "oO" = (/obj/machinery/artifact_scanpad,/obj/machinery/light,/turf/simulated/floor/bluegrid,/area/outpost/research/isolation_a) "oP" = (/obj/machinery/artifact_analyser,/turf/simulated/floor/bluegrid,/area/outpost/research/isolation_a) @@ -904,7 +905,7 @@ "ru" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 1},/area/mine/explored) "rv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/outpost/research/power) "rw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) -"rx" = (/obj/machinery/light_construct/small,/obj/structure/table/rack,/obj/item/stack/sheet/metal{amount = 10},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) +"rx" = (/obj/structure/table/standard,/obj/item/stack/material/plasteel{amount = 10},/obj/item/stack/material/wood{amount = 30},/obj/item/stack/material/plastic{amount = 10},/turf/simulated/floor,/area/outpost/engineering/storage) "ry" = (/obj/structure/table/rack,/obj/item/weapon/pickaxe,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "rz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) "rA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) @@ -1060,7 +1061,7 @@ "uu" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) "uv" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "eoutpost_main_outer"; locked = 1; name = "Engineering Outpost"},/turf/simulated/floor,/area/outpost/engineering/hallway) "uw" = (/turf/simulated/floor,/area/outpost/engineering/storage) -"ux" = (/obj/structure/table/standard,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/wood{amount = 30},/obj/item/stack/sheet/mineral/plastic{amount = 10},/turf/simulated/floor,/area/outpost/engineering/storage) +"ux" = (/obj/structure/table/standard,/obj/item/stack/material/steel{amount = 50},/obj/item/stack/material/steel{amount = 50},/obj/item/stack/material/steel{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) "uy" = (/turf/simulated/wall/r_wall,/area/outpost/engineering/storage) "uz" = (/obj/structure/table/rack,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor,/area/outpost/engineering/storage) "uA" = (/turf/simulated/floor/wood,/area/outpost/engineering/meeting) @@ -1160,7 +1161,7 @@ "wq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/space) "wr" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless,/area/space) "ws" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/space) -"wt" = (/obj/structure/table/standard,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) +"wt" = (/obj/structure/table/standard,/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/stack/material/glass{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) "wu" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/machinery/power/apc/super{dir = 1; pixel_y = 24},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "wv" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/turf/simulated/floor,/area/outpost/engineering/hallway) "ww" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact-f (EAST)"},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) @@ -1194,7 +1195,6 @@ "wY" = (/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/outpost/mining_main/medbay) "wZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "white"},/area/outpost/mining_main/medbay) "xa" = (/obj/machinery/door/firedoor/border_only{dir = 2},/obj/effect/decal/cleanable/dirt,/obj/structure/sign/securearea{desc = "A warning sign which reads 'MOVING PARTS'."; name = "\improper MOVING PARTS"; pixel_y = -32},/turf/simulated/floor{dir = 8; icon_state = "loadingarea"},/area/outpost/mining_north) -"xb" = (/obj/structure/table/standard,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/simulated/floor,/area/outpost/engineering/storage) "xc" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) "xd" = (/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/sensor{long_range = 1; name_tag = "Mining Outpost"},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) "xe" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "eoutpost_solar_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(10)},/turf/simulated/floor/plating/airless,/area/outpost/engineering/hallway) @@ -1700,17 +1700,17 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqL aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababcrcrcrcrcrcrcrcrcrcrcrcrcrcrmjrOoLcrcradababababababababababababababababababababababababababababalgygygygygygygygygygygygygyqwqCrdrerererererereqwqCgygygygygyuXpBrSpCvcpcpeoVoVoVxVoUsyoZkUpboOoPkUoWoRoSlboQphpalbabababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababadadadcrkJkJeUcradadababababababababababababababababababababababababababababallTpTgygygygygygygygygygyaaaaaaaaaaaaaaaaalalalalalalalalgygygygygygypBpgpCgygyalhGhGhGhGkUkUkUkUkUpfpfpflblblblblbabababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababadadadcroJoDoJcradabababababababababababababababababababababababababababababallTgygygygygygygygygygygyaaaaaaaaaaaaaaaaalalalababababalalalalalalalgyjHgygyalalababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababadadcroIrOmjcradabababababababababababababababababababababababababababababalalpVryrxgygygygygyalalalaaaaaaaaaaaaaaaaaaababababababababalalalalalgyjHgygyalabababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababadadcroIrOmjcradabababababababababababababababababababababababababababababalalpVryoMgygygygygyalalalaaaaaaaaaaaaaaaaaaababababababababalalalalalgyjHgygyalabababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababadadadrBrCrDadadababababababababababababababababababababababababababababababalalalmRalgygymQmQalababaaaaaaaaaaaaaaaaaaababababababababababalalalgyjHgygyalababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababalalalalalalababaaaaaaaaaaaaaaaaaaabababababababababababalalgyjHgygyalababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLababababababqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaababaaaaaaaaababababababababababalalgyjqkhgyalababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLababababababqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaabababaaaaaaababababababababababalalgygyjHgyalabababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaababaaaaaaababababababababababalalalgyjHgyalalalalalababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaabababababababababalalalgyjHgygygygyrHjFjFjFjFjFjFjFjFjFjFjFjFabababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaabababababababababalalalgyjHgygygygyrJvtkQjYjXkgkfkelsjFkckbjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaabababababababababalalalgyjHgygygygyrJvtkQjYjXkgkfkelsjFkLkbjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLababqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaabababababababababalalalgykHjSjSjSoVjVjOjNvHmekqjZkxktjWjRjTjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaabaaaaaaaaababababababababababalalgykigygygygyjFjFjFjFjFjFjKjJwOjFjMjLjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaabababaaaaababababababababababalalgyqqjsjujtjtjvjxjwjzjyxajAjUkLjEjDjGjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaabababaaaaababababababababababalalgyqqjsjujtjtjvjxjwjzjyxajAjUkcjEjDjGjFababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLabqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaabababaaaaaaabababababababababalalgygygykigygyjFjFjFjFkljFjFjFjFjFjFjFjFabababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaabababababababababalalalalgykigygygygysAkRsCsCalababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaabababababababababalalalrJkkrigygygygygygygyalababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1754,9 +1754,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqL aaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLababababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaababababababababalalgygygykigygygygygyalalababababababababababababababababababababababababuyuyuyuyuyvewkveveveqjqjqjabalaaaeaaaeaeaaaaaeaaaaaaaaaaaaaaqgqcqbaaqgqcqbaaqgqcqbaaqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLababababqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababalalalaeaeaeaeaeaeaeaeaeaeaealalalalabababababalalgygyqqjsjsqngygygyalalababababababalalalababababababababababababababuyvbuZEqvJEpuVEoxnvKuOuOqjalalxyaeaaaeaaaaaaaeaeaeaeaeaeaeaeqgqcqbaeqgqcqbaeqgqcqbaeqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLababababqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababalalalalsHsHsHsHsHsHsHsHsHsHsHsHsHsHalalalalababababalgygygygygykigygygygyalalabababalalalgyalababababababababababababababuyuQuRxDuTuUuAuPuNuMuPxLypxMxMiYaeaaaaaaaaaaaeaaaaaeaaaaaaaaqgqcqbaaqgqcqbaaqgqcqbaaaeaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababalaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaealalabababababalalgygygygyqqjsjsqngygyalabalalalgygygyalababababababababababababababuyuzuwuxuFuGuAuBuKuJuIuHqjuLuLuLuLuLrMrLrLrNrtrMrNrtaaaaaaaaqgqcqbaaqgqcqbaaqgqcqbaaqaqaqaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLabqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababalalalalgysMgygykigygyalalalgygygygygypzpzpzpzabababababababvMvMvMvMuywJuwxbwHwIEBuPwKwFuIwGvewBwDyqwywxwAwzshwawwwvECrMrLrNaaaaaewLaeaaaewLaeaaaewLaeaaaeaaqaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaababababababababababalalmRgygykigygygygygygygygygygyAwwuwEpzabababababababvMvXvVvWuyvUuwwtvRvTuAuPwjwiuPwhvewgwfwewdwcwbtEshwavZvYxlxmzoxqxewlsNsNsNsNsNsNsNsNsNsNwrwqwsaeqaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababalaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaealalabababababalalgygygygyqqjsjsqngygyalabalalalgygygyalababababababababababababababuyuzuwrxuFuGuAuBuKuJuIuHqjuLuLuLuLuLrMrLrLrNrtrMrNrtaaaaaaaaqgqcqbaaqgqcqbaaqgqcqbaaqaqaqaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLabqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababalalalalgysMgygykigygyalalalgygygygygypzpzpzpzabababababababvMvMvMvMuywJuwwtwHwIEBuPwKwFuIwGvewBwDyqwywxwAwzshwawwwvECrMrLrNaaaaaewLaeaaaewLaeaaaewLaeaaaeaaqaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLqLabababqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLababababababababqLqLqLqLqLqLababqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaababababababababababalalmRgygykigygygygygygygygygygyAwwuwEpzabababababababvMvXvVvWuyvUuwuxvRvTuAuPwjwiuPwhvewgwfwewdwcwbtEshwavZvYxlxmzoxqxewlsNsNsNsNsNsNsNsNsNsNwrwqwsaeqaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLababababababqLqLabqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaababababababababababababalalgyqqjsqngygygygygygygygyAwAevSpzababrtrtrtrtabvMvNvOztuyAfvIAyuTvQuAvLvCvBuAvDvevEvGvFvwvvvgvxvzvysvqGEvrMrLrNaaaaaevuaeaaaevuaeaaaevuaeaaaeaaqaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaababababababababaaaaaaaaaaaaaaabababababababababababababalgygygyqygygygygygygygygyAwAeACrtrtrtrtviAWrtrtrtrtwnrtrtrGrGrGrGvhrNrGwRrGvhrNrGvsvrrGwpEtvlvkvpvorGqHEsrtaaaaaaaaqgrgqbaaqgrgqbaaqgrgqbaaqaqaqaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaqLqLqLqLabababababqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLqLabababqLqLqLqLqLqLqLqLqLqLqLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaaaabababababababababababababalalalrJqzrigygygygygygygypBAzuDuvvPsxulwosJBawCwmsDsFsGtdtetctfsYtctctctrtqtctcxCtktntmtAzgtDtCtvtuBbsptEtFaaaeaaaaqgrgqbaaqgrgqbaaqgrgqbaaaeaaaaaaaaaaaaaaaaaaaaaaaaaa From 8f6666a32e86dfc98f13b9b5a8d27c7020f7f748 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 01:57:39 +0930 Subject: [PATCH 132/199] Converted barricades to material system. --- code/game/machinery/deployable.dm | 154 +++++++++++---------- code/modules/materials/material_recipes.dm | 2 +- icons/obj/structures.dmi | Bin 173929 -> 173898 bytes maps/exodus-1.dmm | 2 +- 4 files changed, 85 insertions(+), 73 deletions(-) diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index df3abac14d..d198e81989 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -53,89 +53,101 @@ for reference: */ - -//Barricades, maybe there will be a metal one later... -/obj/structure/barricade/wooden - name = "wooden barricade" - desc = "This space is blocked off by a wooden barricade." +//Barricades! +/obj/structure/barricade + name = "barricade" + desc = "This space is blocked off by a barricade." icon = 'icons/obj/structures.dmi' - icon_state = "woodenbarricade" + icon_state = "barricade" anchored = 1.0 density = 1.0 - var/health = 100.0 - var/maxhealth = 100.0 + var/health = 100 + var/maxhealth = 100 + var/material/material - attackby(obj/item/W as obj, mob/user as mob) - if (istype(W, /obj/item/stack/material/wood)) - var/obj/item/stack/material/wood/D = W - if (health < maxhealth) - if (D.get_amount() < 1) - user << "You need one plank of wood to repair \the [src]." - return - visible_message("[user] begins to repair \the [src].") - if(do_after(user,20) && health < maxhealth) - if (D.use(1)) - health = maxhealth - visible_message("[user] repairs \the [src].") - return - return - else - switch(W.damtype) - if("fire") - src.health -= W.force * 1 - if("brute") - src.health -= W.force * 0.75 - else - if (src.health <= 0) - visible_message("\red The barricade is smashed apart!") - new /obj/item/stack/material/wood(get_turf(src)) - new /obj/item/stack/material/wood(get_turf(src)) - new /obj/item/stack/material/wood(get_turf(src)) - qdel(src) - ..() - - ex_act(severity) - switch(severity) - if(1.0) - visible_message("\red The barricade is blown apart!") - qdel(src) - return - if(2.0) - src.health -= 25 - if (src.health <= 0) - visible_message("\red The barricade is blown apart!") - new /obj/item/stack/material/wood(get_turf(src)) - new /obj/item/stack/material/wood(get_turf(src)) - new /obj/item/stack/material/wood(get_turf(src)) - qdel(src) - return - - meteorhit() - visible_message("\red The barricade is smashed apart!") - new /obj/item/stack/material/wood(get_turf(src)) - new /obj/item/stack/material/wood(get_turf(src)) - new /obj/item/stack/material/wood(get_turf(src)) +/obj/structure/barricade/New(var/newloc, var/material_name) + ..(newloc) + if(!material_name) + material_name = "wood" + material = get_material_by_name("[material_name]") + if(!material) qdel(src) return + name = "[material.display_name] barricade" + desc = "This space is blocked off by a barricade made of [material.display_name]." + color = material.icon_colour + maxhealth = material.integrity + health = maxhealth - blob_act() - src.health -= 25 - if (src.health <= 0) - visible_message("\red The blob eats through the barricade!") - qdel(src) +/obj/structure/barricade/attackby(obj/item/W as obj, mob/user as mob) + if (istype(W, /obj/item/stack/material)) + var/obj/item/stack/material/D = W + if(D.material != material) + user << "That is the wrong material needed to repair \the [src]." + return + if (health < maxhealth) + if (D.get_amount() < 1) + user << "You need one sheet of [material.display_name] to repair \the [src]." + return + visible_message("[user] begins to repair \the [src].") + if(do_after(user,20) && health < maxhealth) + if (D.use(1)) + health = maxhealth + visible_message("[user] repairs \the [src].") + return return + else + switch(W.damtype) + if("fire") + src.health -= W.force * 1 + if("brute") + src.health -= W.force * 0.75 + else + if (src.health <= 0) + visible_message("The barricade is smashed apart!") + dismantle() + qdel(src) + return + ..() +/obj/structure/barricade/proc/dismantle() + material.place_dismantled_product(get_turf(src)) + qdel(src) + return - CanPass(atom/movable/mover, turf/target, height=0, air_group=0)//So bullets will fly over and stuff. - if(air_group || (height==0)) - return 1 - if(istype(mover) && mover.checkpass(PASSTABLE)) - return 1 - else - return 0 +/obj/structure/barricade/ex_act(severity) + switch(severity) + if(1.0) + visible_message("\The [src] is blown apart!") + qdel(src) + return + if(2.0) + src.health -= 25 + if (src.health <= 0) + visible_message("\The [src] is blown apart!") + dismantle() + return +/obj/structure/barricade/meteorhit() + visible_message("\The [src] is smashed apart!") + dismantle() + return + +/obj/structure/barricade/blob_act() + src.health -= 25 + if (src.health <= 0) + visible_message("The blob eats through \the [src]!") + qdel(src) + return + +/obj/structure/barricade/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)//So bullets will fly over and stuff. + if(air_group || (height==0)) + return 1 + if(istype(mover) && mover.checkpass(PASSTABLE)) + return 1 + else + return 0 //Actual Deployable machinery stuff - /obj/machinery/deployable name = "deployable" desc = "deployable" diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index 480bed617f..c5d5c39d5c 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -5,6 +5,7 @@ /material/proc/generate_recipes() recipes = list() + recipes += new/datum/stack_recipe("[display_name] barricade", /obj/structure/barricade, 5, time = 50, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] ashtray", /obj/item/ashtray/plastic, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] spoon", /obj/item/weapon/material/kitchen/utensil/spoon/plastic, 1, on_floor = 1, supplied_material = "[name]") @@ -121,7 +122,6 @@ recipes += new/datum/stack_recipe("wooden sandals", /obj/item/clothing/shoes/sandal, 1) recipes += new/datum/stack_recipe("wood floor tile", /obj/item/stack/tile/wood, 1, 4, 20) recipes += new/datum/stack_recipe("wooden chair", /obj/structure/bed/chair/wood, 3, time = 10, one_per_turf = 1, on_floor = 1) - recipes += new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/wooden, 5, time = 50, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("crossbow frame", /obj/item/weapon/crossbowframe, 5, time = 25, one_per_turf = 0, on_floor = 0) recipes += new/datum/stack_recipe("wooden door", /obj/structure/mineral_door/wood, 10, time = 20, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("coffin", /obj/structure/closet/coffin, 5, time = 15, one_per_turf = 1, on_floor = 1) diff --git a/icons/obj/structures.dmi b/icons/obj/structures.dmi index c3fdbcdb3333f4b2e576bb151b57f7ef7157901b..d947725e034f941981dbe5f78fb4865963685a83 100644 GIT binary patch delta 137437 zcmb5VWmr`0zxcZb1_Y!-N*X~xQW}&_38gzk+M%Rt4J9Bg-BKdmAzcCjlF}_D(jX0kO-Ve4Cl3^stRFpDeb<5fzL-b_5zvmeav?m(y$h{e##)Gos^orQSDu)w@$~n> zV`2Nr=nTO+wlCEx{0DWvh}UgRm<9}iM+5gUhhE(Kz-@5PTDajEIr7<)MV!*xWwLPW zuAR%*SjgeTJctJl_K0cz_kvZMM0yMuHKn>Lq2z9wmfM=x04-;(8$y2TacpiOqC2q= z!<9g2gm!s;?nk|pO(0}7kr|VnN}qS@!4StYvMCp9xEsx>lTa#MZ(gf!ccLXGEu=Ov z08B8kt-2i5}2G|sry#MJ?0n}}{83`Zb$G@_w7VCHABXcPqINvbM>Bj@t zK5&^nRl|?$*KGOPiygj}8u2sV>w18u;Sp2LE8GYA9jaaM9(D3J6o^V!(%r9c;z5=$ z`G=Ez@wj|!(YAb4ufne-ms=g$rAqa550+bR_LtkGT5k4p13tDof}qZUk!}On;83B9 z`JnNFsIN2d7De0k3j}W>3McVc1HFIj-Bf{#pr~_b+n*K!j!x8U98nHxf(QZxAeXl~ zU3ZmG)PPgR^){B#3lGF`_{IEKwnVsNRePg*1ZzK0;4x+u_x${P`raQ(bN`xpJ>EDe zM6Xn#C`y1|cCQaK8|zeR`e}p=K%Q@+enjzVW#)~avL3YTRT`JNT8ZADytoivx$L;S zu5YG4^$^&*blTaTdWW{andqDCk-pFZ3Jio_Co0^$?ZU(P{_W;x+uJ|= z=bi40qhn)83!tm*Pro@mC7s`IZPXZQ!hIe&b_ZFdWajg%w`%RnPPx(^SCt<(_8r3Y zEy@le(K|>vk&c8w-#?4#re~F{TZCtm^GELl1|Sjo^np*z5VMI)ab=ZXhIf$j$iuUv zN2onBpJS=Sr#cGY?lW`F*T9onD#Gvz-z`t>xOEq02E^JOnYBh`z6A?Gnr^BP_pFy$ zM#bORa}l|~>vYX*afLW3r1#F2Ie8h+5&H83v2?u&EJ{$R;bpH*N`Oz9lr;pZrOJ9J zvDRpUbv$PkSJ8&}r8sqvS9P={yLc-Vr?4oughI<*NhkMu#P&GnvW*t_pcBmcf>`Ti zJU(O5ZxA@X9s}ut;~*k`0I z)5<&aXl(P7*?N>tM0U`C%_v2{rL1dcGNZ?v|oeB8F# z#BosdpbgGcCd6zd6s#6%Df;bJtjE!w52#|Y3Etm-7rOR1h2D$)$vaz(tS)w`Yn3h% zKdWd{8aI!;hPV9K{dSJO)&m_Y@{)pQXhOOzm}8`_ovEu+)ft~6)`=u;M1?>m7SH?C zaRX%bLy6ClJp@QdWf!a!7qPIOB2VHrMhldT{XVWhU-G-4I*&ST1YjYk6jS7rA(mCt z@Q_~d0(htA1|nVJC7-y_nF~DI&6QILV@)8Ag$_I)ilt;_#U}|R8HHl-iOa_rD3LqB zJ%aj+9iDFp?4HyZ8e`w1;{{c7Q`kZu`hRSB9)9bb)nROu=x0S+z+~~79VoXMr=n6q z3My=hoKbS;(IR1D)e!%M+Ku&ahKtn$U@PYf71d0HlKdQ%z7(>_)Fvn89s^6=eTw(f z0APgk(6Ah0AQI0+WxwcWrYLJrmy<8}l!5P}sqr?QRfhD)4azs|4{rD2O1}9a&ow5f zj+yijiwUUd=dD*Dxdf$BB45)QdR|{XjPpnFav8(wQBFrzt3+LewS_pHy1}Cs-KL;%Cs9WJH7SK`2&3&%Lgb60m$i>WfwLN6*l4rYYH9VyS za}`31VeAI-v1hEJAWBV_Pg6cZT(DbV*Lv`f87ekSLyAF63V-YuA1}K9$*njmuf#$j?c%XCV{-eDalcLJlTlJK~Z>bT+6ru%q36AuDB(F6NONam4D<@ z$7ChL!i6yT-5v?{-Abuz$JaUYe z(!q@N@FYBVP!cKBZLGax17v~-Cp5a7of@ZHX-Eji?BAo~k_+CjOnHGgxJ(V(}9$1`h9Ja5~ zYSScG2gmlNxrgh~_=&*fg%RCH;sraLjkmC%ky9yZOxU2;t6tW$=;>F~!bX?&Jnz{LV|6`&3#WR)s)abTiEJfo`TLXirZUWKUQ_D%gQa1(Ug{H##wokM5ww^>X3_yjRGTNK7jG5QpPK zs2i=7GOH>^0=B_dC^3|v>9m-8m!gm{^y1Q3iJZ(rz2W`p@(5POArBUJ{?`e!@-=%W1=gvQcI zq!82}6*wPbl;3XursR35k8X0tBv+I`r)4{P@01b^LpdMU{Tjm07ocoXZH15o#(PLLr`Ws%TiKY zW{4Y&1#>N#b!}^KBS}Ch*9iC>c$~r5SvOkoY>&41+p~^eZZ2iR*v+pO+G6zf1Vw)8 zdSTpsyjp&+@01wM);;X6D@YOd^pD*eEVncf{Lzz*0fjdAuZtEKX$BtW9ikeEOhp*^ z7bK1Vl)CHFs334QXiwsQ0{Yj)yf*rxLl9q^v(H%!d9MnQbZQ|cNgo2^0$n5)J9gQC zna^b!hC&ZeK8H7bWSZX%Lycb8qQ-{JH;*Rr5sQkmx1EuEX~<>XP?qjC3|2<6NSXW} zheXM&Gn;Z`h4C}szK6@{Ig#sP6naS0qfD!)}KoP zyB-;`b`{HWRH@TqpcrWU$pXW&-Lg)8ZocEaQ24Qt#pOKK+g_$+pWhEx0%uK&Que&L zbXG1-Hoqn&Z!pk{yW7n=64Ht5?B@9N@pk`BTL(?6PDCz3XYaGXkc6l~%UY=DB!B~x z%k{{EtXVHt1)P^v@RX$_Oi7;F`k1sgO#jkrMk`fyF5XTHERDvFh;}6`2M{epv?3S@ zwN#y=AU(TgP9MJ#{1;oN`e0`na91TfsA}nJb5hk=0+HNI740yVaABR&_?J~H*()b z9Rq#1E)Ezy!vRneq_--_@U8SFKQZGFNF47MRU*Z}t3QSvh+d6Ek|j3@Z)JPvdBhj5 zeTBg3#O#<^Ey^K$7|#{mOCf76FJSdCY}UhD&VK3M8Q98f7jHh)(l9c_CC%}(Bfhjg zX$)iATvb3FsUo9mZ>4y_8wUp^r0J1pYpInV2`HI&!6hBkg=ahadH`c9#tL9eh&;RG z>xRmP?vYdg!U_wmvNhOgJHZ5rtB9IfqgDIeI%Pg7ZNu;OsA21Q?sh`hvE)u)bx2;# z%F*HK&k>2xq<9v^PM>t zZchyR3>)mOXlwwUQmaiMoe9fVnfGisn-wI8cjN7B!&WX{xI8GYV_&=c?3%dx?jDF@ zz6E8GZx;cYRB*P|sTP$gW4a*)ECt>ii29tqiZ4GvQj_8{C9oPU6qC|oC+dS6j;Gtt z1CuS)`KF=y<>|dnJKrraO}>y+{>+)dt!%+==DArl-1UF0M?Lg$))FtlA@MO&)W#pJ z&7b$ORtN2a8ob`UISFRr=BL&c#RbLOHkG+(nnjj9jd%AJmKZul+t+-!)Z|~7AU40K z>j0MQoD&{3*nmY{_@Ut6vhZrOZp>HRBGD*=Ez*R(X~oyE;Br+La}!ld^Wl4;CkDB? z4W{c*(adeW)np$57JmsRdoJfj^M z*c(SjzO(+N%v9)`j@F{tqVtMnT*8P(F-5)*KEs&Grb{7gMMtS|w=}_LNy{IM_;9a> zrZlGnja!@A4`5-t*2Ifzx(b;$y&~(-?r%}-+?y#<4K+3C)|_q{#4?x`2VI5i8VWRU zbXg3ub213*U5~$)0HQ=XPGWj~mo+sSEoYah#H_i97A^})6Q=+>LefT#II`6{>?=c( z#GiPcry|PoOOUH6ip>t_P_laDFcXZB`ZE!y*K#9yaaDIXE%fU?YW|h&0v;enfGVc| zhD^2VFGLq0)u-|Sq1$V+uNAW?p=2*kUBYySjhBZ43?MioXH zVj=h~q4nSxRXZ-!i)WIA$ud<}D7V zh&$o>J{Ft8U$!}A4KiWsG+K!<5LyyrrU%kcT-#f99M_lWQeq|tlAF{XN{-&gEJSZ5 zZ+~IBHI{4zk5D$SFxs^&EWFED)YWF{g=ZBc4+g$X>%<^^eV2;N0yDx}h+Q7W&rP}p zqOIWw5qA`-`ueKT+r(fCxtfG1&T~NJCV?xd1!C8$en;(QIRKk*!Pnv~k&lsalrTxb zgB<@A@s|sDa1mX#^Y0Wu>_t63mo&^`J$vocAe8vcpEg$SnfB6th#Bj5L&L-f#0lp> z#w7Nh&a9&JRqG57sr<80E0S`76KgOO>8SpE5XY|8Z!EEzHmi@8Da~$pr#j3d^yi&L ztsE~KE_6TBGASX`5XSanq4pywj+@VRUu4#CGpgs@(h-wp%%NUIhL~>@s+j2cQG+Lc zn0}$_V~OXI4eHYZiha|$9){`n9JvR#=K>apUpesIo6-krPY{cykY5n*${h>Oj4$LEgt^|&6n3Fv#pu2= zVkQhtV$umGVz|hCJ!Mc#cL4SyW3JU*nBUMkJ-+sY0zJx96--|oI_Fl=+44(XJEBi0 zr6{=qs&3ce;SiZH@p_m+qWZnFCXA7q)v%(9mhunMoId#m)Ics=7Hn@xDPx;eN_&2B zUf}#doPX>splnl#?6Y6$pCy^n0|xEvNaGdN%prWs6@W)j2^+C4sLrtMk+kt!K*RYg z-U4abPy?Ps?KR2iP*=-+FT@QUNt0Gqrn0mMg|Bt}IxN~S7Y#-b!Em(Hw{6Y6JwHDd z4vL>xd$7D#lvKYc)&gJYt}~U!v2F_Z)&>nSm}=-)7QH*feTIv}P-VD@UB5997j=i; z`-A&5`TWnBlI4Xta83jyC$*Oza%gG(wz)_GD6@PB3r+B4M(K7x@|!mtMkrh=d*Crf z-&{{;DZKooAEs)8(wle9J3?)}C_-UMn;}~iuGvHShA9R)CEq16sxH8?qGFv{BN^^| zG##^-)F@~9Sb;tj;ARRTVt9`{|*9oa_wns+70yR ztRqwx*@zJsiCVIsEbb^yxSsBCRMGt~h0XD(HPclUMp+K89Kqocf|h;|eNRuI%Sk?8 zTe&3u7kR-66)6TYrLSB12qmetxl7~qJlM{1XWuPn+71V2F17V7+)aJ}I9&RHR`mOC zPsUg7je+VPcs|#N-K8#jKp&?_6*s`AXeFu2uQA~9N*j;V@a6D^EV{QY_#2IKqZKn8 z_V-QfO^`Jv5cx8=j4^4k;pfbr4OvbpLbcYM?v1{Gobnzv28Uo(v}hj}Fn{TNgLce< zIcWaN;ZMUaVyAYdPxUx91dlzlc-xLKI>592y7U9SpsmZ`S48s%2QZ*ZeR0uy3f8oK zyxv>%T4>lIZd>6gidE%ReK#&*J-Ong-!G&9tjLK3@)R;1N z@#mwua<%w%E*|RtsxHc-cZ339f(uFBl3u`W2 zT(7-%!=@BE{F3I{oRx5A+SphdRB66kN|AZY6b4lp@+Z0oG+dNINz~rmq-5#@3^SWY z8`b#z>oM)sAvkbV0ai(4~@wYDT?JY>~t9W4udG#GO?0JTb2j`$}!F@W<^=wX}J{*pl@ zf>ywPd+LWUpR37RSBr)7tnC228Dg~CzL)nQ%cnZQ>k_5wrJ9<@d%pP48iSv=R6g_* z*J-byPQXXurd}9^2h`L&2{9nSuO33&vv90}yY5x}e&tzm=Ut}unB1nDjR!Bj2nXT4 zOO>_ajyEPX=Ya44FmNB=oC?=I)WhHH{0M$CLB1)u;PQU;s?Gld!vsy&VrL0)&8C8jlUZt_8c*oCP@f>z;TzbWD<>JyCq9 zdxHu^M3z7KG(mP+<;Rj`Pzirf!+4sDo}Ut^(NhNAPxE}DTzn#06PwnE0oRdM0XP@Q zeoz37kV6NoPcSvt;5RXa*f8h$jWgmEPNTI_M8mfOmqqDhnCKoe%38Tu=VI%l_wx`B zqqWAKMAvjGP!4!yG4qFlYVD46MP68i6vu9gmO9(QPg<6nW}v7Oyix3E%gm)eK#tyob45_MLa$Le6@hfyqA6$8S@JMiqFO4ZPA0S zNG&rE)6SxyRZrXTHbn)3t`}@MAB655Y2i_k##b-4xn*)VXg5|+KXT@-kBSMPO@H9R z@w$@B%KnLUH^%#MMb&Wx6o=#_E_I}B0#I+2?YD4?L$Xf2Bl}8 z{?Q~LE9IGcEyyHGJIF8=jj3IEX+P)$-f1VCgJHp;ChTLdP_hbu50cY}A$WB0WBA=m zGMt4c_zREf51>uPhM~mc6mmZ0e>|I`eHzzaze7+axCADs=>6$F)OnEAb|rCiRd{*< zzt5#JPq`}1@u|-t@;&Rx`uk|Z)oKx+@><-!{{E-D&j_7UK5|4)#Fqfdem54UAPIAM zaqW9-RxGFjjBPd+kfyQKZY%T{7fu<5Vo(SF6HM#U8c6UQWg19`Y52%JzhXWjiSB;3 z=9$MUDs7*=u-yG{u=6m+<>hCL8K|NPdiredDI`tKkUANMIaRqMNY9QQA?N`gzE=8^ zsGCB@jc&$x^xzAMHP{CFk3nk#RtNbPS9PV09YsH|j!xC0J?05h`NxE_JQ7ictdetn zHVvdx9XH=duBdQ38;Xgcq%IP4HH~o%ce!|nCJn5~aPE?PjlneRw)e~~f76Zd>5cwL zm_9b*b%_`@y>nohuEt0;)gRV@x}&y;qtI%{E=y&{!btET8}mM6{49vI`&|LT2rxE5 zD+44gIvB>+6h&WW_toqaAhT57?4Sp%9=E>S7_VH;XYRpw(ZwvZq}*`6o&tEvOK6*6 z4l!UKS;9+yQGC%X>Z;bPtlE2gM0NV%p1QKzY$CLAcQ&YNX`P2}x6a7;V}b&DR7{JyP%qDK|C zGdCbvReOoi)wto@{CvqHRLkP3WSOYxMQ6(mO3-@Om!|vo&xr!1xMam@;{(E|@<8Dj zj~J^(mJi_Y#jFR)kp-0lT>kTkqA$$6J#6OrtzqY{nd5{{_iJeE%DCN^Q5hqhxuMn*MRSNHX7c+50^7)@--B+_>25Q#Uk~R3bNfYOaUzXsggqXP%(_ z-Q>rworFpDpvl?XmNk}?{`CW#>|pG$p*FxTg`EIqQ5%(_p9JP3iYn9QOjH%&#NpNGn}0b z6R&rz!zu3%vGK^ha>E;eY zwZ5~HL!#RtN4RZrfjZ13@n;LlBOBC&`~5ZdJMeAu5ue50tGZ~qwR*n;Pbb=+FR42Z zcMfEc!%0#A6%20*j5>Vr+i&H!0{>A!>mg{mz51^z<~HnlwyS@gdQESQDGZudk&NbZ zUF#?NBp!?v>$?OSD^wf_qMf2;u#>&(ujXo$Y8HoW5>hYPhF8^LvEzv=D(>8<$}`?z z88P-|59UsOw4K5J>-3-N6aAzIZQDd1pabAXUZ8%>YlT$IoU|cq&92)IZQeu9dLW-b z4*$9=eX{vb)ZE%uuSK#cvOMwo1yn4GXKPg#slfNf&R0JH(f{|-$^W^u6;Z*c_0Q7S zM|Go)!4Cyhd~LCQJ9Bo5k2fG%N2TJ#v({R0!u6DH_F7O4e+32pm6TOnJ~y}S{MHUt z)FV*un`2eJ)Eb|Vm5=hV1mzceH+{BHt z9%lH|NVZgu?ulnuJ)@cyby0ib|Hn=S+ITOQpL_1M?iP(n4n6vk62LM0d4Fm83E1); zq`>(8>SnkwbDoWOsxo(0uNeo{DAhq!5QUu8MP`$&vFG~N?lHT+LoZ6JlKo3(&X&Da zm!GQ)SynYgRZe)^dS#=`y6b%d$NW|>ElyHN%u(O9HM!k$Kk|)TNf3#Z{6QS~&bHzm z={NdY=QZ%CrD|dP)IfSPb#h+vgEp5BiPh0#{BgybMXsM&K(5%Ek9*Af)JYY42L}gl zp9#=b0_tIBGd?(BHalt&f|wx%gYSm!)>&zpT3K zWJX6V$XZdV*{?@Oa^Zv?8DOUOZc*xSrB?^p-{CIca=NJkSa!AB`+>A$S)vn$*HlDL zeiNH{uVeY|%-gaLwd~i5yZ8bv8Njc<3i zrh>QVqI{=emWu{VG0lk?gfh8C$+fq!CJ1Pye!zda*8vp3AyJR$kx%0$m|XwdK#g`5I`>7 zSgtjczH;1}H`pN}h4kNKVd!p{HEY#!8Btl^OjAv{oq+_mq3%wHg;d;P2GH`^MA@g5!Z2mm|8~ z82$jkhX378qq{jWYg39okCt}^^+?J9q#5#HO}EN-`a9BmHcGrhQxXX*4|~j98K)TN z$RMwSew=ujX&IllFrN;i<3iW(OHH!tRF$zz>F?>z$+iv!w;pJZRosDI`K{iV%_{sP zSBeGi+Y5E-mK^DF*cvYR?p2sl=8^uYM3s)M4tLVkn~n{$&9e2cN{U6Q>`IPF4O<0H zSHC{x#dy;rUf-@8I~#^hwBiMCFc4Q8abBjO8m@?|6TLIzGwBumY-78D|P!<#Rc6wq(JSDBnlupi<(_PcHhX$~wtM=1#EE6i55 zs8OGhzUSOB4%^x++Anl(<-6XGRPu z48xmfL@e5Y*3vB*9KHE3SZwmXp--Op{I^JuoT*5xTsZq~x>9;+-0)|CpzKQ0KI7g; zk@HhC3i5gVnS)Q{=2Cl?ZQxFd%(rrnR$Nlq9f*$#4ZA*BOuyucebt+5d)`oZKFP44uE9 ziEIp;2jVgO84q{qB@ik9b|pm5rSu&B!U(3-tVmE#$F zdG13#a%@#MAD$%LlMzT|*)?R>vGezXe{r0@z)YVSxr`OJbjmd;fJ61nBS4(mO6s-& z`Yb%s$Hm=?WUzYm9xd{+5-O@GV4EwAe zkV00)?6{%_|8olq4w4Mm!>XKEMddR}DmTI5F1%fZO;0ni4^iN0F=#Y=yO09Lo!S+k z#$>ZMq`;$UVGoRQ*3doF2~<=M-ZlS3QycC=?-&wMO)B7WWhOqF7(V*AJdbzog8ieSVKY|I+A)H3ets{W%!~`Zo$F%QH6QkIGKGq0GVG_1;(xUb#kDuUL_)H$+-5N5A4N*o&b?FPVIz)=S7NN+jbV z*}Dv}A|R2wc=3tsnm=;<4ofOVOcyOstEjC`>0s$sF#%z&HiYsiBffs-cZWe^EM;PY zuUyd(u|yn4jP=;(OJ~ma1;#`w6Lj=yv1&ncde9lGjRD3#xs+h*=aU*nYUWi&9?Z*O} zAN#hRr80$fT{xOY>CT^5e*-O++i~Ta?6hZK_L;t95nsl2G7Xeq8>Rob*ZiHX#cT0Q zbB+hEnCX~oYH97^%a`&h#2i%iAEHAcAJq7Y*Cc=Su|GYDG&<6!;O#^RD2rNGG@N4H z4?kNiIOAYz%Gw?cxyiccl|EN4+9K-n&CzT_GehBirhrFUqcvzw@5Ak4dQEBhf>bgF zp)vKRzu9FSBZ+41N6|AXR$TW|rlM(Raft^8ZL!8)na6LjegoR)r80cPs$F)N4<0BM zkc4VoHKm%Heb8ILbPhiLsu@TsY5cgKL{5OOU)qtt3O{;cTpTfDB*%eOA%q>$El&fU zt_oQ2W=i{C^)i5-7p@Mniu**bx*f_y~9y}6vI9)DS}r7aV0yh5?Bxh5&fDNmXr z{e%;w9Bsu^d(rzXlGD4u9m4$qw2EDiyPg&rS)n?h#JHjH&m-T?VB+T!-bWP~^%m;g z&1xY;r z8sn{p2~bUH3jurB0#Fu$P!ci$QXXuL7c{vfCC1;fcj&SD z6!1XRhat`Y^E(UUA?h`e3iG1kf8+CL4-#FBh{4sSu|WE{xNZyJ0ma3^>YZfPm33~< zq0OUA<4md;PYZm@ogu>diRTVkpKX^Tt}BbvgLgmT?C`0i^pL0%%Giuq+!#B??eSs& zRqG9H!rNAPxujUN_>5@+@lnT&%(C?9@&KEhKL_)eSrg4_(y-+tYK@fn$O?5nncKO6 zr=YM1?n(?I1=mjzm^`6ET}0iTn^TTw^)$?q_!n^Nzgl*SW^%M044tS|bkxj<<)=Sd zTk8(-(9tbG!)`I2iacGo*E_8ABZ#h#c`*=bE8A-}ERqlEc~C_H z@r!tmk|_fdH=YkUnyyTYWVb#XTgA%MXJqczA;!ullx_Q@(pT?jn=bPx1KpO-lT>oz z^2h})dpsWIU!b;9a%?*-g;bi%ccX`)v!BoEW(`;zBCBf}F&L>FpW*GrC$i#tdMZ-k z3v*7Z%qq8I&n5WEkAa!gn+6*^gG-wt>}fs(++19{a?AkJ|B`e6Z*cB@$@;8hCj*e= zr}Uikx?~6u!t59cEwY2IbEktiV;XoM$ z1YIN>mlITTS(X3ul4c5Uk4a=Sr2*mbbkEK2uD{YNg#557KmS{A?`ncH@EDBu4l#Fk zc-Kz1o+&qU+tr6mP|))Km_S|F<+03ih6-ohN#!wpC#(E5^3T2&(&O)rLa6{pcs@Qh)K>l<1RH$kiq0^Fz8CH0gAAGFb%&mx(--{JHGs82&j)PB$<(Q3kU-DR{gm zo#r7<-s8)1T1sBi;0VJ#=u1D7bv38#M&YzoqnBSjd&^^Dlz*{45?g5k85rdYxd{u! zihpjE^#m;Y^iwiF_wd3P#L@H(=@(t9KUJjigXpTb7@iKl^3hunpH|l1TN0+3Keqky zKWM(TWaF3b4Khm*^gB=P_5KIw`w!2@3(rL%b{&e+Du0K-wD{@b^pa`5d%f8C&Sy8o1W z^od=lPAi|Sk-q0YNS>+A3-9>GuK#Z&?>OM-Ev-{me?K;9k;~ee%xjowjJ%5fM&@d0 zbUU1d0M3ZHRgVp`15VSFG@{m`P#aOOS5urH9pFj72VN2oH-&*sw+mHF)7U#>D2!BI zQ@4dKlF@95okjAdx`Rw742$g6UrD;!r@1@mX8c4xTj3Lh^&fDX-LWXF+B1hFFTv>! z-yW3B_K|`JFRF3E1Le$&|B<~+R+MyvOB&;SGF=$0<=jb7Vco5VG1BJH(9iI;>C>_` zeoz8<_G+;Dh8;|M5)t8R^sN?W#m>L${fj*?2cB#uGZ1^0uN zv=TxmXjB9~wZ{%wpqssHrMMqxB3{?wb8M6B7K}kNM-ns?L$2q^g?qMdkLSrHAEqlI zNd3{k^M-~>(FslA%R<(ver8@po5Ut}_Y6RMXZA8@a|CQz;KrL2rlvuuv< zQc|U^n*z>Gk9^syb?FwP)^HolA$Xp{J@Z0uP@4G^jL5?Psfac*TdHTTgyUM)ra$w~ zCkJ)eG=K8D$M#hqjm?{)oY>P=L|ETtQ@5op;!%)|!HNT};FfYZkgw|qiSXvM=e5b8 z^&*=A5vM-okPG1-{^k>8Yg%baWRgc0UrQE$%=Mp6kD>_$a%eB6Jvke}M;G>HG;YXk zCL{EBZiPk;t3k^Q?566(TKbIz16p|(UZH=1L(iUmm<9{ReMi7TC>&-Fyc@U4w9{%d zJwOPlV-^;=TgIZ{$!rIPLaDudToAs-)_w0U42lMAzm#Yf)08z;4urP+0W(j>F2QDA z1vKG4WtTTMlsn)_taN^&S{|)#y?lCPG^2ij68PkZxC38w?xaJX5FNqF%X(qI?%_W9Q{t9jIworYx{$xX$&(VK;~#yf-{z_9epSZie*!1D$E;m|P&lVn1uK{>;sq zUDS=`rHlLBQRmIk*%gk_FL!Ou?pTE=IA$zeZx1H0RM@SpxG%zrsvO^dSK^n!I~9EE zSp@AfIcsbWEq&O9N;*NF8334plq9a`jVTx4{9s)uSVdt#1+VPSGlu*BuZI-xto=6BE zQ(qK+LVFdz@Miifo+BmR2sS}DIp2mmb7z(0t)O~cgWuxfie8!-b`61_ZK^!7U|uDS4Q_MjUX z{^ytsp%RKY@V*dIub=+DhJCa8Oyd6lcq`vz94Up_`TM&Hu{XWrGM>9_1zA-pCDC_e~@ zcR_YMXY|cEPaxQSN^o-5JNb^{Vd(2h=Fo=unL?(9Cm*M(%Q*_s2m&@Mu)$p_tF$sV zcWgB|Jt~*;!mIx69jQ|bDgvtmxv&^zZ)UykvG5PO4vt(7pp(9O7(S+3te#l%8o3`m)i(d5QYCDMiqFj*1SK%t9!%Wu#ti z*=bx{uJ}3k3$k}ot3T!L*2O(S6Aa z!ZB=0#j#-EaHF$Ya(5ml5cC5b#x8x5%pV8Vh*l=3&575D_|8 zgu8x!b$?Wru}9PFYF9q6SQBND^Q(uuX{mNk><&nHe-IIPUS`(5Csd~9Pu=eb;717l z%YN4BH^mA9{RHsUt8J0u)$ix#jYX12BYKCDzV)7@S*v{;r(46VW^exd-u-;)dzOhx z{aji0?!OVCxV&ZP;jnu9N*}LuFO3B(bx1`*o1Jz73kT+~JfVYfeq#d8SD;$;tEJ2{ z$)W3P(!%vcYzJGbh5M-8Tx3a&Uurk)%JEx`GiMAm;8D*sn1qfLR}58v^~SYGCk87< zZ`kaVD(zRMjP5(C8M)Jn#X;q`^4n%eop-XAc*?b#?vLw8l$2=J#FY=3FMo=IU8IXt zx{V^0iBR)^^XX>qU65J0Nw}u2F68#+(n^xv$|_!374NaV099PS=Vz!3jnKi%U39`{ zVWo{k|Iu*1o6GF_T_hs5Z9U?@uv01Rt)q7hPgSvD@fNUnIPoO!iSG{gI!$r)D+?=B zzkiP*fBc)*!WvO5Yiin)~@_RSXRLc@Bm1nU$1Y!Gq!aJ6By(IV9V_z3AzM1&1X{z;B= zPnhf*z3!F!J*&hiv*PNH_-A7U>tZ9`N|QmUAS_F)6GhZyuz+V@P!?5&4e9#U7z29`Nxwi&O4#6WWV zF2o)RNejfIfe#37P!whTA{9%R3ITpJQMSAh%lWe@8ZBj3&Y(GxajOt6eVz?JsjH`f zTLhf~3Aq95^IM~HP+7&0RQHfntx2bypBTP(#ylZRNy`^PXQa>{PIWak&Q9s&An71g z*3$r*D)dyYT#=qx{(`Y*cdFPGjb8xO86|(g*xx_(UKJP@dq!E;*K{XRa599+)5O(p*mqOKnj7Do1K-#@2uEq;K8lNnV!*m9AMwD;CkSL96l)#P)_J zj%+Uiov0>pq$RMF>oKURfZaL#(lCk-#20E;4{drB3V6yDh9R6^rLOK`DSyh19M9J+L755g5tUQZ||Y9Gr_p+&4RUr~gB}^HkBK zh3|9HH(oxDqSYc*)m?KvglP-a$MSzM-H{_Rw&mE%j;YXWYtrda&koa#cXbVo7vK^{ zp^mc0y9san#^_gM*cP8ho*F1dYOQE+#mW&_Whu%@cXccYK}9vfAWNUW9N@qSk~E-d zuWLUWeR}4!bdM*i6Ts~87VPnse9KR>kq{te#!wAJPLn92-O^jwmsTiqm^O`kmaTVNgjdPAe@vx^6;Lu!Fv(?wntrZ z1Zotj6z}qiKBdA(i1MBLruP3uo44`c8!YALah;1#8T4je&WkkR5zn8W7A8YOqYqx6 z{V^@>#xfB#vnB3UeYrbAmxY@RJ8COYd^Hf|`6FXYmK5}}8SQz*{5j&|Rrei+zJj=g z2fdj#c7e9(Qr}BTa>CKlieEEC|A`+z@LV6H(62NpS>Co??Ffk1(hz;(JqDu|B-2uE zH6aQ3e{jN|Ym*jeWt3#=F&*)w0Ud{Uyo1HknMD5dRLCQiG6;4WK+D7!y$E`l{!0oI z&mTxIg;el0{e@}Ezojw0aO^a-b}?3NFvSoliIjbbmHAb8Z6J85x!Mj@Jb317+P&WG zk4pV=YaaiV7_UOxG0%=z%_57g+H>{H=X==y!VW89ePrAVw&#MYb{x8M*0BtU|@LvVLkxDyEO8Z5ZG6I?=qySuwI-M7EJ@2Oj->i(jtsaoAN zWvnsBc;0tqkRn^HC|5*1j{H$K>Gh1$u{7R*(R9ab|bN1IxYAy3C4wugv#qtSA zW!G=@HdN{jqk#fM7w+oARl z_VO3C5!qZH z&mp9*?zJ4z9q$Oy1nkJ_?mjs{}bG`#KS9O9E6$+uCA| zs;!UqOomGuo$ zVl52Y+kU(Wo&QP97pvvEJl6J!=fCE8B(J;Pb02XRpz;lA|M=>DWdiRE@_7C5?BIt1 z7hKc;>tZJ-Cr0pnxj-5V0&P#jyKv|CoS&2F7h0W>5%*iW9ZV5L3V*z~&O$GZiW{D<&fSPYnh5w5bu9sat4fvG+2wipI`w7k=BSI$% z37Q?8GS6jD?7JiX+iMZOtagnH<$Oa-bP997FTJJhfwR@dv0Vg%vck1@XLAGNv%0Ri zYBtIN;HbV0ZINfs#?t>KkI`Nh{Pz9}WXDJj?M=xOZKnX(GTr{mV-19Wy=$p6rDUm@$7P;ti& zsO8i%&F3I2&|}6B^{dE#NQh3%405xQE+uY?YPd6s))08(gLW zkEyQbo%d1VkBQ>>bRWKNP{A&#F82hwNyTB0QbnpeKZL1+70rB0la2n1P_jGc|NDcM+M7!fi zy}EC)-m*3^I2)hP=d@AK=Z+0@jC7w|?Q2fk-Q0CsnOL693#?s!_mE)O4Z5;9P^053 zd(M$68MOOn7vCoN++^5^#W*XUoz?oEq-vv2y6ElS_kZ8G_j9L9aCK~c`K)^=@L}_s znavN~_Jg^#f41lQdkrS=qd849Q(DdZz&C6K7=lCPnz1ysms?Fz(qe^y=v6PLgJ90oo z$D*d_-K9rWq7s{9_AH6Z8@E1wMZD8eqI8*vQqJe=(Dm`q3CfOdNIrc+iKrg3f`iR< z3PyUZ&PDP2YzdQ)@HjZvecR%^t6=P1B-o?gQ0*2E{F80yR==t}lUyK#dfrM`KcEoV@laTdj{lrPi z>q`t=w0E7+1_8IrAQUxqiSf)2iT4f||BiksP&(_Y2?07e=2e`1C1ST_UYwQ4$1|{X zc$uvgAOvM=gCpn+350u#<~Dy|(#)1E8x4mJyWH;(2DEK>g)&vz7VtzXM_M^kjFTea zrZ>i8#qBB4`lj*jYk#sgd6|MirWT!Blyfeo5+}du%|k|fxjz#d!k*@NaD@L~R?BOu z9sIh*^Ae${scI13P^{Utpt41!FNlf;JfI`v%rZ?XcS*Q9!LwU38a|-@YZQF=PU3+0ME$l`4Jtz8a=`>_;Unmr_C*7 zxRyQ=gP6m_X6$r%;wsJ}oZA{d0Ax1v(L_WgB#c}@jq?Msd-T6vXScCnHd7!`JXdO2 z5P%}^3sm=UP8#;WzXXJt<9$@EIFg$SYli&;5I~~99h-sAcC6t2Hr006d`GbwCG;Vb z_#&e}oM+y5vm17wJls9BHVDW3{|gf@=RQ=Rjq%0(TEA@@r@IxQ70-UGqO)GR6!E~{ z%Ybk7YLEGD9bykWn*}Q-uIEuAwjDAi!t#iKDgV3rzmLkZpyw7l+m~@8b|F;fvC`ps zMg1JKcGF(pfiQX67XAE{;00lNVy4O6u`uQzkxiHUtY@O=l4&EFxRwmuitg{-hkAoi zCD-EL<9-Rl^4s-~h~Mk~snt&vAc96db^Xy6QRb5JF=N<%I9IwW?o-Hj`emYPi~*=H z;1L&$y1yJkr&D`~^l5*+VbEdmot=b1vv+#xLxeAtKJMv^O$UVt)e(nf`>i~n= zsxTL1ruuPh(myq(Hdm>of{ex6Fm=iyL-c4P*ZeA1A)xb6Ba78U-7ATu?$Gy5d21z6 z{Guv#yDbUjRm?rQGv<2PnD+I4OZ9arfZ4?2zy9rNb=@X?e*CdTR>cCeCpRL}(Q^)> z>#&VzS$jJyFH=k^rIkK-8p_u)oZ%QhH3S#vl*KkeJ36F%GpQZ%K4tAygEdb=&+0lJ zfi3)8tAok%!0aH1_az--rCAJBdNJ{n_ZB$H8rc4Mhfg1CU zI;vTmuaz<%P3DoZ04*$LHD8&W1YP9A;<;H|Yqu9=QOgT^n`Q6$%i6iRFl;Ln!)1S0 zGk&ilXV;KvsRAaO3xk)jAF|gUvxTY+K0_9BUr0Y^3(vZ}OTqp(2rGc@3u#enr}Oid zcYZpC$!>Gj2*TJhVM^piFbUuhv-j?eMxuz<=Z92`!FSt&!@}Y}C*(b)7<^a1wB*BB zoRi1bLJ5Xz<^{j*@0b^DK2!?u=Ecj4ol!x)L_GK6DMMtC`}E02elK?^-4w`QseZsn z%w5<)7NY|Qr{rELcrzzN54@Y}imwertSS%_B>6iQ;H!4s8|IJ_(Dm})ISD;x^JQDS#cq=4Z504r?%hgu3y{2DdH2No630@!u;8-lW}!kR95Gds(dZX zyJ*g}ijO@P@{lIFO>Z1s^H6s_uY&m zbSn2fMmKjNd2fiJe@6A;06TrRXo}n12?s3Gq04Iv(4myodq_P8*6p^8sXNZ42ysnWfa-MR@U1or;%8`lGTYtK(2K&v5*rt)$<_?bIOg@Qq*~`j4dZ zUZ)eIHlImH49A8~OThBCfv@=yNYN@OzbI=A5s<$woq$e~n|osBZAjLZXAz>Jh10JFe#+w5JC!0=QrR2~QlQ{>h(a=8Q>T(GXWZpg>SvL805` z59fRZp)I<&px;tzy5!@6F2g(H62sS)Q#rq51=d;|pS__c+CcSH#8BAp-pB4qA@FHf z!BZ~r^(??M)y-o1+t;p`+|@3qDHBETYbwEIrF?TzdPDnE=<+xMq+S8qUQzxEmdgp? z0)&f{c1WQJSKq1b>M*g~JCa6}|3Dth-5eCjB6yc&(P%*ZGciV5iLZaL=(?lNryz3% zo{2kB_isI>+hu)5WJlu?{>y85%BQU?dCey-O=A}T4c*zpd{jvZbdeHy5tn%?@p!(rv1X(F;J(wW z#ZY}&q_?<_I$;`wJL0Lzn+;o}f(fF37CW_26}iRFq3&*hU71DHr4j}Bk{@uxG7SVi zT5qMb%b?8bxnQC79Pa0gr8`7&4ZeCP73kWbEpJ3qb?!q$6GJ&W-x(5X*E9eoYeRCA z3&ilU`%U}!=JgV3Ix&Xusup6?d}s2(RZ3>owEm9}z;$nY<+hva*Y*06ibje%YJV2v zzzc2ltI0ckV6s6hD-fO{$aGdAJR%4DhmYAH_z?zn$5UN*R40mamh6K2+KEI{T0ESp zI2O$asP#HLo#wfn^|`0bfhK%N0M`%YMSh-7h~rcIIIxNY7>6pgRw5G2jFu}mf;uWP zcMZ}*wVR5ZOVt%B95c+he3xN#jyFuOzdIb?9?9@~nx}<(hdtaQn19fQOIEaf!*ckC z$@3RF3Hb+e4@1;pIMBeS9Yjkzr#$>6RpJCB|4I_2mnIf6CN|duPf|9TDvE?sBt}+o zv>#o9QguCj!uM&P<5Eoz8YNvQlxfnTLl&6R7!2{}@hJ|8`1HNGtj?&cCOJ08zF@vA zSS*8d`66d-tS=iP=7?>O|b^Lb+mqH5#pC(ML^R-ln3&WKk1t(Ey=TGxxK&&O94Yk%+)_Z#* zyjOSC#xw;&5k3G$j#1C+g@`FVk5#wU5nnZyrc=VexJ3}k^v<#CPCHBeqs>Yv33}VeC6i1tDmJ*7pJB0BW z(MP>rjg_zv8zmI#Lq-l`;3Dq<%T)|Jfzp~IGuPpSpeS^Wuwe^nA#b|xmLcj4AI}Q< zo@viXsvMBMZfAQumnG5X4Aenkdr~S_qbpaNt2+pT^7~8`*C?2GI$qL>R--RTfkf~2 zUn|mf7^f2wE`OyG+~^Ay7H9L1j>4pJg2jVgZJ)MNKC0ivqJ~?12Qu+r`gzTj(Re-sPX+juThC4(eclHFHb5UB2T7nc98W>&hxuHgK8$IS$fD6u{5H6;D} z&JJ*t;>HL!{~+7>1MUp-{XC$o4b6D^;|BG?BgMKvS7zL*n<@ua^?&b#8>HM-F&0FN zN>lzP3(>ZoW zFcXvNA>;8<>TlKq6(cdVn5KvQ7-rn0Rv?2imHw-pyAnQsK`>`IwFCJPh9C_);9Q!g zl`W)Nl)fZqe@f~9MDQw>HbKjcgxd^cJiA+qwedTeSaT9ZMHo-b51im&xHyhwvb;Vl zHjnm%#EK!W~eOgqW%VhE+K-K4&OtpZdLb$RV#yQZP_uwLB7r0iCF8 z{v;A<4OJ>dM4uo$Q);^gUZxX-QrYI!v@kD1&d__E4bme|xawwN3(neRKS`V{cTcgN z^&OSbt>koARH5IS*MBvPkeKZ>8AY4Y85S1}%Y=LbklsL5CfBT^F+9$nRbmJl0UOFF8D;mCxY#fAi4Ev*yn|OYZ07N9IyH><4 z$K8Jy+;vBIOMXBqJ%-%V4iE76Ky{hS({V28SA+IkgW&FM<>oW0cSrxG9MviH-G5k? zZa?0)K{5yD_83L&#+hdknEN@lnubqfk}U!U<%mB}O?OvpI_j0LUqKWfne}+s znhk3rO)I59a5B$~&%fvj9$#b$X{PIyujp z&TQC@C9e8!mG1n;qA9@Jj3(!24c+M`2~;2(ZFJpu`D$ON51Lfi8)YX`UD6$N_&l&FZMudz{C-8$uF*YfBQv=~LT2OI3_)0-#Qk2$`T$J+kVu}<=kd~k}-sFj0 z`Ztp9{E8AIPo`5ns2NKx;`mr$AK16Vfv{E`7;VJY#yOGovHij_lp|NpOKMwJ z#_5KPkE%=7ZiaUf6x``zA2n1tUG#CDxEY8j$*7$5Y0q^OGa&5P zLv_Y6I(ZVn$)5)i8xtNN6?WB4T0U`W!=ejEdH86`JKw^JX{ec60-A3K@m`sg@CF(| zHy%j?BeO56fh8>-hK;u&;69-x_I_g3H717Hl6XlI%Xfp-m|~zN2%%6$c*kcck-Yy ztVJ6T$f3;h_PF50pz&>O=Cbpz`>Uo#X>$5?wUU;${ zh!rlb=mQjy<_QNtq@Wo*v040~11QH&1;@DWI*5VwdFsAYzAG}n=GO}=rSyOqN=}v1=RZG%fLFbzz`5if_N}4N^GXCXen~s zgy2!I$oz!F6@Rb4#?}})S%6*p*;1OEMGC**jqaU}Ll|!I`ZBf87TcaDcu&5RDW&7* zYqOpAA9!LDAFB#4R&rmZubMqnt%y`+Ne@Z2$htV~;}(CBXpf2`BYMIg+xL78y_ z;9Kg_`eQcsr%DQdn#4FwYE4`+E*pF`g$w9P zT}Gh4)9rJs)38T%P!iLU>Z2dEkwKMYO*81QVx68k@V{ghCcMly*jsO)oW!#~fvchj zaS;Z8&rO;gMZ$h0<0k5Y`c~xtrRHe9T6ZbaonCTMPO`sa*3oLP(`ZYCSmhrwnD~($ zu^1F{eqqVTk(cNbYr7!eb>l8hE+h{%>wPD*#Yl7W$A9NHnH1e0`Z&P`vRpZ{FreqA z7vh~c`TWkv`DE;GDt08{t*nr@u#>a6~(zO`HPjP)yeFt>LgRv!u*gx|=Pi_0JeHEzED>~jod zd;Ml?W9p$(+Tz0M<>WZf)hDvKs)f%(9&DG!kB=lp&+k%@{4@VeR=smvN!sDe~a^I0o832Bj5(t>FH zs%MC{<;xogj*nFi4?Uu{E5-OYNa7(bN|!?S5iLf-Y>Xg-c4J_W83%loGI$+vFZ}n- z<`jqV9|A#)vKj=pzEyzlXI}uJfJJ&wh6zD{79*Ni6<)V@?pK7L2obBAr9oQ znit=GiPxOhFp9yEXr>E>fxexL4mXQH48?#q@sU~9Jyqo8PhU%}WRU5Io*xWUYz=aW zir=vq?m|V_pr@akS+oLtk_<(T+#wbT^nb2KH|V&}v6^tnkq$yuioSol`755&n{&7h2UeOV_T4Y`AFubHQ@Y0_Ns0~-Km$RfwsFR9 zDULoy0e>-A=ww{nxVjZTI3jCdx-yOmb94?BLR368(Zl4!MOfcfg86<-R9-boT9IU~ zkcpNbI0t}|wtbLTAa}nF|Dp}Ndk5}yGGQc|(dzrcFN<4QF}9VniN8Jx^4#o`r4aKa z+1}o^BcKlKtEk9Ch~b$&L;s`Q84S1(BM$sy&<@3o3~97JzV5B)9=ar=A$mQ(*Ho}H-j5A32D+g2 z0vDI*HulVGGdX5buCv8J)SiQunDl-g0E9O;=WF>E3w>vdMsN+)ra6cApw1Wx$DcEr zZ6ry6Lq5CRnwU7ErLf_m!XuDt&}i=hb2tQjMGVX5l~?LRZntAE@Ri4gFa00%OYpxv z2Ck35_3H)42PzSF+kd*JpM%JGQ4zGp<~DcFDDp))*>|T!?x(i%JSWor z=kC#IC+H%Hy;4PqwRF}!eu`z3ssyACbh3e%*SsQ9Uagj`;jdYZyucp(Xt4psWc10W z*fEtKbxnOV6yT|6J%mz!eTTU;H~O+LT_`9Z(oRQY^wCD;uh+UYNkb+8Um$;d#MuZ2 zlL9~dsBEVE)XxDUcW5y#g#Zg>sZjPipz#V*(m#SEEgJ*rPdBtxhrQ=YZL?AAa-aIj z1GPsFqCm6luWcBpw+*%t4AG`%M0~G#x$usjWX~6j$C}^iIQPZV9^Z;coG5J6*p@<# z=qHYIaHzD~&j6jQMQ4ocPsi}DiqCYd)C zT0FM(BN>s0;t(N}xs*=|HP4yY*;P6`Vh~iEy)@_B^_-T+!B~O#8|#r8EZ8zl_PwM= zK+}q5mC4dCCGP|=X1m7I6S+s6guTY6ZsCu?h5|DQ0zZ9Rf5s@k;G+irBwwP0)&y}v z_`-W3muOxN*T~40VqYllXGB1di-jHit#9OgeH>3n}bIR z=gn4+=WjJBC(H$AVXT1O@)W@q_Yke|X|7*l zg|bOXN;H$dLSFsmM@Y!)`m^s-nAAZ~yDPYE#1AG&y%sCQ7?8$!&->?EyraR7b#itb zHU-yP>VJY+m&C!n8ZxVPmqpQ}`PUBwp4j*6EvL2~F1LY)TO7YqM?Wr`g88bWWZxbr zOu>Ozsz3_$I5cw%P$6@F#L0xQhK}y8G{P|K<82}gc`sJKLlNMA)%L!-L`^k)-35XnEZrO zl~_D6g1|pqE^->tw_|qT3!7-J0e)RyB>}B3^~_8fBkw^@Ie9;^c=EOU-#i2>c4)^RDC8ljVWx*&ORczQ9{aQ!GMKbsj9LnbuGLMqy z%w+|Nz~@4c*F%tB4Y*H?tV3BRh)7P6DoXkncP~g0$~L#Bm4p<3E3t0)g8|(u$SV;6 z8@PQ(t!?weoHS#?LU$ihp3aht{%e-yFYl^>U>3XaB4xwU88>V!mD3@#7l*IWg?Ooq z>{NXX6`R6p%p>074@b4`CAe!2R$COcUe;8XeYO7Tv3eGE_Enq8^%#b{T@ZkHWacL>QGPcfuUGt#JJXX}=2!y0ZU~A-q*?LP|`)XS^g}$G&=CQERYHb_c zCR;X!YF%l8JWh*c5QET~h;}>UkdG^`F3_k`c}3v|WrDA`RuzG@@c{<4M2d(wMyW+H zNw-xmBKS z7u|598V>%%LQiJ^BGW&=BqC`df%Ht9omibjsZLeAtR6T$fndq#-u=q%v^Hu|s zM}o2KJPQrtzVOthx*J2+Y-W)0eUaewmpKD;b~SX#iP=84 zuccWvF_PFn6}-X#lVmMllUsESKA(hXF`bkFi8Y*67`;#9 zW@?*dumpf2V`rxX!DhjekTS zMFM5FXcWL$L(bS7oXkkWtV5bCu$=l#N6OY$C;c%lQoY&AwFq}zcca8b2gkz5LHv$z z;j=)UWWZy{1kC`%=?~3KrajuYtkB1YXA@E*5K_SIuDS2_vEhfpX^Bd>3fh*JjHGO~ zuTic(Qm2uu`gz^CJNFnA_03hmMw=ckU;(FI3ZG#Dg?J)b(~d2@NMj^G~!WymL1KByilZxGfP(bxO`sa z?|45Ku{aYnMqE-{(g8#cDemcQ1iWE|;5e#Nb-T@9sC~iM0XSk0)cj;v6j>R4hn6|L za)p6BmXk&u216%`oW}4!D=QR($8K4GkP8ZVtlR_p{d23BfWZ8_Q~xRth36Zdsf~>p z0{8<&A2xy!N2`i)vSvSj)NBN4asn>@8Gd@~) zLf=7`I$~O;9dj_h)>D;79EI#rpn9iU1Lh-*cniF<4xRGkkmQ}4Zn~KQ;0q^vW4R|6 zad>?dIp~JdZ56;FQn*K)w3>jnm?Aao$Mjx`edF=-YBda~drFc)bCQjk^^ih?>4JKD z-}&~KvrU>4NoJx*{I${u7r}`8%Xp#N!ibO9Y0lHa!|dNRPI4vq_zL%VO9j<1VwSQB zkASeIyigLQC;W{!+IS2AADG2OZ3w3T4NPI5>aex?FT*4LZ*TXz zAwK^&PTARdQEv;^D0k?GZC(tgv6ErcGnEhke9{J)KLXCJ;-OS`w<-gwmuTSX5>KC} zed|BnJ$D!XWqIy_Di2B`6a)CnTas8$6?-7z_oaLW37{R{C0V0iDUXfk2(-WEFR4|Y z%&6NyR*Lm`JK)>+Qs_<^7-zaERNgFzLv2cSH- z<6Dgqbsb*Pvoo#uq2rusRIotlIr!o~6N_wNwo}DM-@}Y z*?-UW+a^B<**$XX1Hg$X75M^V;Wp1bY;tni{u;O%VFKG$o`~q5YcQQw8Dc^B2tUUz zB_P-EB#()-`L(WJR(KOs;YjTQb>JuQSI7V52%q7Rc%~c@`>vhk|9iO@l1~@xrqY}x zn7FKbhqjX4R1-U8KGcgp9%2|iNNonf&4OyhB4u)A-@ku<%5(a?_aDu$AV>us`M8g^ z-Po$xOgqG|wKh1#UWnm1)QS2cS~X+B6)@kv_KM5c%?%mA$A7M=YYU2udJI{bvi^LHe6D3f^&is=)bG1Lj zDN|&^5CvGaX%LuEeqJx{0KF40`JBB4{C8oJEM7*TvgfsWyZ?2%3?Q zH($%0qSN(%u1Ym&!)*C9KDC^cS@>Z7{68$g7xL!H!CxOg406w_nP^+-Tp9sD^N!&M zI}?J~Jz?uv)(JE7${&2yxk4>he?vosL1yc)nO;|w(EUOA@IF5QaM0~^p<}2HGxeD6eC*2NO%oB8c@HMp4t&V15nezokUs1wkP^@mR6y;7XMCR{W1ezs zTltJxj(n0TMzYG7e7Zvw(V`4M^U(xv;x7ClpfuFUsn7S~LUNhZ)4Dq|vbjd3sB45! z7-XA@N(MruP&bD%_NG3xk!Y?CHa_ctQV%`NHN|Km;%~0m^n08<%Yk_u&AdIE*@s_- z_L~aQgK88L_zuMkGlqtQdozOuG4a7?=X~tFG_}GEU(mbAr?WfJhzekk#I|Aa0g?JH zUkbPq`00lZGW}KpHU82jRauNB)4wN<6!j2;0ZLIfbl*xKBO(cSE9XNS7di81Ghw*` z^++3KFUuv<$p2fT>N`C|$JY`r(I(@@JZMNDUR{5i&WWD!kMGAM*arvRpKI&r)N+L> zS=TkBaD&n`cs{V2a@7Oo3T$|Mn6?a+B)qGw)ItG_c)M={vflCx@?wFLbwZu@cIg=s zHGY{@@@a=fjw5)n?nlCHGUEK*!y>EDA5%4je)y*sZzxDHPPqiHwCUWi4ihmV_N~3s z1^0{#ffCKr%`L_xc#yf%X7-X)W*1(Zr^b?df4axK=AQC>I%bMF_iTy*EBXQ@eyR9}hf7ea^0wRbf;-jpo=X}-O6znPBn zZ#cdE+&kGkmMihji0`f9TiKc-={>OjAZ3~Y=C}1KbR%xwI;nq0bK}Az>yb;1K&|85 z)>MijB2vfi1sFYmZTvZG6?U^%wc%2=mio^v=tN{3_Ip({#|7VW(R9fannXg+Wo2W3 zc~gGwXQ+$o3!h`??0pwbVo_r05*{M9TE8$_4VJL)gX0HAV_M88eEVKaf9DgOnpcmn zDaZ=0BE)Do8g6rVZK2Y6jwU*was^^UJc7hF#V;tT^B;hsvt(J$y7YWK^l3GP*k55* z$f6-@8a+)LIH2J@Exko6*-f@IO!jK$FV+1EF+Fo%3U~EC4d*2kSo{4Z?ISTFAu1&j zCgs#lvp}Fvu|qe#(n!gq|ETf9l)G>o)RM3dXSnVd)NSVK{IqTS7Jr&PpTzGD{f(0C z#5QH8YYqcg!;E;Mkz`D_`Pix(`+hPy+4XSOgN-mPLA_ciOvwXgMC0RO5!|0&XOaYs zEV{PMBe*w0=T*x`?|DD54wW$djlNdIg?<|fY|;l8oEUCyp9gIlk+AuT%e$~rM*WSN@&FP4kMeYv6~ao8RliTr`9A z1ep2uLpQ^^E749<%SFeZ1gbu#O`jfq61tL*J3l;l=-83vL`=GR!xZv&E=WS3`%9YY z(7+ZjNfnXYSO}JI8x16;4ex_sJ)U_tE zV>aJ&^(ssjqFP9qH1&GbL4`Xrhd$cXkBiq@eMYTs`DliV*Lm5Lxwre+7;AwIvgBm1 zepY-2#UQkRj0S--#2Q|0sxnVUA;gWo%R?Yi74!_gSdb@#!sQ6f*7X=;v3yOXF`wld z=JQ9C$GO5{CeUPL9K3IT)L=L?=zIkKx7TYsrbj_WPUeMt@JE4ql3B}f5s#rS+kftv z=Ey4h_t9r`a zxLEx`3SqFVY|OWaSxuENJQNGaCPGIfvNbrguF1Pt2qJz1`j-{Wtj>?<-9SiQv7o zZjvX5g%@Q#0<#b7h{o4HwY}#i7)F*`eM#q_2u5&R2jBSk5jqSdR zwhZmm%+XGDW-8hLSYCM{5=ayMFo`+IUMGs^lUhD$?=X!lHE(7$LEk3Qq>iT)L*8bK zj_~!+Z@TU;b(S@fkR#owx%p5!|JSP9Z`WO^(vRmW^{@05w*1c6{B{-(3 zA;3Jw9bj8-KEjwpap>yMyleQOQaDNue^%#3fk#_gdo}IpEEymSus!bmkZQ-086rI0 zx~L7$c(+PLi5v2cS1Ndc-u3C=yi%#^l0sz^=kD;KBYY5&lA$@1ShTu*K#nlJ@F`huXz+{jQGI4(h3vHY6RUE$? ziy!fyk86CtwVfJuUn492DyN(8`kCvbG_)TrQKK(WvTHRmBdFQ0eTf&xtiQ`(R)pr? z_$J;VbL^Ll0&MuFNEQ15FZkUjbj|nR9|=s^Km4uY9-{%6o1^59w)saq4@@h{Ut`<` z|IW~NV7j`7{YOXEA8;vr1Cqt&dSio-7fK@kK%)~G{&uSixxdbhP_mXty!|oSm)!WX z0jUaA9?ZWgp~6HA3Ih|R%fcpx>yuGG{JeA%3w!O3#D6| z|M;G}y*04zIbjh^nl4JcVLWE2NQ$-pFNV;D_4f8R9s-$LaIIXhW8Pm9jBf;GqTZf5 zOlp0%`vE6LB|iIsBdbXOL9E3?#oSSkcUCdzU<`pRm=mw{>x!>tvvE46l_tNWs{33k z+^Qh!hNM&s^Q|tr!VK%og`R498`}UldKP3b83eE`hLub2a1Kc}F`>hdLn#I+qVoP) zeqfa>tFP1vXzmxs?sNL{XTDHfW^|OvX!8R(pQA*e!NDC->L~+aTh?=OH&sGIR6vIa zkT2zEZ*G#*0Dqls_z{}Qlctz_Uz#YXC5Mb53XIwz{zV};h?f*++(0!RI7aVHMm7B* zR0ojK!VuUlR1`a+v~I$?-*~FN%1?lGw}=H_us3Km2i7CjHYyxP;{Nibk0XN|bv!6* zdKcH!;iA`aS-1zus3vnGskB455O+N6QOf<8iO6PtiUl1UincnhRLGF8qnobhu;=MMz{OJNcLRmTSms20*i{cD%|d( zq6eIhl0@iQVe$uwOYDnc%KV(2jbA#;Ha;AgSr}LFX9vfshPQvuN9&o})T2hZlul;G z+_%k92ltTllUnAhgt5R5klNW=n*{j&wp2}1|L6{Ov!@mgn)2D{J;Q3Nmf3paWWbmD>QoMR zQ5GV}&3u3?fo`q`BB`?_NAcMN;<);_w!Y8@;!4?rLAGGiclh5agkJxPS90mt=<|D< zN6f8HaYU(dNn{<><=^=*R*e9(_Q*mtrD4$|2C0z`tRH~$)eR~|y)Sfj&KL`?a21)Q zVApyGsQbYu*R)#WS_ciCnK1dTUDzTH+Bm zTz^iEk9*~0BFPlaDzvrD)wl(}`|a|F!E-P1ylgsbV`MiZFGjQxvJet z2)u8uYl{Mj(dt}%i+G}va0>14My7C9$NZtLSN!G;?C|ig>6{gU9*9Si%QCfuP}C(Q zcSKS@&no3*Xj4sdHBYU&L@g7EZWS-CWK@@LR%9Hye5sl5pMGocX4O7?N<3*b{%O7D zkr+hXflM|%MD`PK#)FH4K&)wVeR85$in}Q~pDn=qPI**BFfHteLo`svX8G5Dvk8TzR}6+sB&+YH_4>A(tLqEICt>!2)WELtY)m4Fl@ zfAwXgr2MDdC{b|1nQ_fhV6HI5pKl+?0*HK##*BMb)TM{nV`JMtl*r8wk;Q)JW7zmb z4*GY`3o{*l*9;$Wn~x^Cu|$ZP!4L^nQ?)N@s`Pg6?FC4g5&wO@U-HA5XX9!^y+Vbu z@aiCfz8q8mQf>LdyKgGrIK}_lktmQA%n%S&xsg7Sx%H+DiyGT|=aifRD!rPXNl<_|ipHYA(Np=F zq!v;~V?CCXngq!ssWoGyF^w3mK$>eRdl)%C&|Cm)QHNanJH_@7n}skpNPpQ#WZ2}| zQ|#g+h)k9VMUUQaU4ZDjxR?`So}37L31y@er%yI{mX^@3{iMhtHGphL4Bly=v2m&F zkXi$&U)y-@ATuS>-Tv$j@2 zteG3n_?9C=8qU!TPFvJLDYGILhGqNT`vBFe_l|ZrI}WKsj_=jm)C=qX#v72FMq^R^ zx-RSGWIHbK={D5YJ)Rbd4vx^W*e{12x^UiF0m6MonqF{J-F8_c;*z4(Y{Fd{*P>ZKnN>YQxuG1bh4_S~@W1qm$KJp{;v zPXG%q4hs;lOf${HMBJNrg-nb_x;c9Bnz8k*1$Y6;e}_nb9Bhu<8$Mx}pBaFG?5G-` zeq|6}`cWlI_SeiHy9ay%*dyF-_EDECNw``!w;UBptKaaVf&R&8 z?@`3oTcq^q3c^PlnTJ8=?afyd5jmf?fJhXoayWSP#b`D%qVj0x@{;QSz{Aag4aeOW zY~o9e!hk3WOtH z*(N0`r1U2#BYH))>muF7i;LivQAfh?s%5%uWX6PkyOWLzfjBE0Of$x#!aGE5p;u7c zr}aONiMmRT&mCE>Vq+Wt)^UGl!sSmVnNaQI?-v-2jM@pG6hR%@Y)@&XEfC6xqKkw} z9N}2{xo=4YjBhdAr`Kt$SW+FpLwG359LdIh1Hk-EEXGyn6 z*Y*TUVKZ?Cea=B;L6Kcu(-8#vGB>OVW+He06|UODd;e;5sNSrFXxvZP7JnhB;rRLJ zuuC20&Vh#6bO=9S9dnhYuYA`EfGYvgBgoF;aZaR@^ecLoW;bxRfP}BY!Y0HUkW;$CFYG-f z_+x$?rEh%)9XeQVX!=bA#xHpE*M%PK_U}-APfq^Asg4xhuq~6&;ovv(;fyeqm;-WG z5oB<*iy$e}i$$+RBR$u8p?fTKbxNO`rYokHalJcgH;XMmk^6&=pn!*p{N5_07o98~ zI~TCr()w=Ai*3tSM{QnBCnu9fTd0sYQ(&Kp_0DH#-8*YW`pTd<+MwHA2(AebB)A0k1PBhnT>}Ba0>Pc& zIs^*|?iM^~aQDR_xVyW%%kJIxyYS4a zt4%BIJ>uD>USs%oX;MV!>SxV(!d-8N(3u#%DSAX~dr5?Qlw(O#8AW}gu|mUn%WOPp zPa^VpEHwaMM^-5GwA09y9%sW8S&RPwUA&Jaa`;Y;9qj+y1Wf>vv^mWPAW~LiRP3=F;Jf6$AEBkJnETt;h7<+dsGgnQaK-td-A? zmxq@u>yW*$m7IKD!sG@qtp->KoaBx&k{w`c7<&nw~ zLq`bTiZ`hqjQl-(C2ff7q1i9v6R~)EE?Ha=65WvN%CA2EYhiT$+%A_|*CX={GRaq4 zGnb`b-@ck}iVYqpG>eC#G!Ua3en%cOBM$wg#G3M%t?*+KbRG#P9yt+2c8``V=n_WF z^Sfwzb8)NO>pG>o+mV{PP;vrDlEWJ6a{_WVoc%lt30~r}7x?q!ByUV)032KFOIM1H z9kF2^5o@Jy2dwFkU!)jKQ@n+rpyUF!Wr1sfd0^&+jZw+qYv*^zhUXS2wA=L;>~p5y zYfVb0Pf*EEd7XjK6Ju?!q4i&qIl?ZmkEg)L9nRB3sMGsi2sftJfrMe}$!mv=7m5$n zF;|$UEH)<<_i-b#N+o00OgqeFEMPK!>lGS=OTg8lxCuv6ms=1JDXd1i!zZFgd9@I# z+mYM+V?+8{Y7{ zpaD7zc-av$XoeMX!LczK8+4-SaPu{^jOif2B)do})QjC4i$cCWh4{IYv2(Ue5Vu;FD>sr;YR5HXF))m8~M*^0_bb|m*Rp$-w&~q z4Oo0!t~@Az_@rRza!}f~1nfO@0TU~90^8c(#lBb{MYk%yxrGctGE>niG^SR_ijJF^D;^P<06^SMiJybrpfTYupQqs^OJ*}ylY2qc zsJU)ZVT6|g9SnS=fDo%OA8TCnM(3tpgW1XUl(FLI2P_+UTD&y zxJhQ@QFSZ*5M4{fODI{V2+hhk^R51)IZ&(SL(G#9_N6&#K@ZOgm!%VOyx7PV#*~8Cz9vp-9?GN&XLsF%m*0LO~+Q zc*>yPIT5XKU!8lufO3zPRjfyqlKhQf6ZTYh-C%4kj}5FUUz{o~dN z+0lm+q)%G?q;G~|U=Quu5aZ@vZ&M_~KsV__Mr!}LJWFu`be+Iy&NMNIVmO_Bt1|q% zEVW~+_}aL=ZSo@3aT=N~eR*nhGPCZaal^#0M$UT*zteTT?9U(~B{2~@ANypIAbYP^ zwkvC)mXz5NhBCK23Bshoxd80wKQ($Y#eelEjkidq7V~UWNX=uf$$TmA|3iSo420TJd=gR6 zP2aA=0!oy~Be5LnE%*aeo;V22!b4Wzc|KU9>QD4V6p^D6#WD;fsGE|$g}YcjE>3tc zfG)8*?>IX56un?eE~vpKbY0}Frz~_$bi2qnB1A^#=7h_fyc85PrpnkTDZ_6FBs zPl|js;hDr3Dd$neXUVFqF00mm^dXn#j2OfwC`D`2E%Rq!)|oJi^5%Di^{Y1A<>*QM zJLNu8McsOT*Ug4k*OWF)`|w^qmf_H%DSHL_abinnnL*=<2e6n)@HCnPet!)i)D=#S z%$3+d>7M{hvSfP9924?n*P*GC{3Nmh+mu?BmXlTb<0|@5h2Xr-|9~hlupJdW^G|>- zPAzdKFNwR4yIiwA{jJ^4&ZX=oOmeH$b4_e1%+>BYUD~0EvQGKP7y?z{nd@aHL#ZHz zhp2Mw+%Fy3s;|An8I40_^X+#q4Ov73ern`~NJ9a^KN6-(wp#B1X`a=}mYi~vSm81gb_$Ufcw*DT|*m* z(je2%=5Y!W|B#kWm{#nk#*vz5s^tE*AIQ+5`77A{{=p99@n!5PeMX|sfUoHJqa^_- zt&B9!Qv@LDR(tdOLu3S3-RWpg9r2;K3Uw-`$IVN!WtDUl2Ca;I5%R0Rt;qZw2>J+! ziaTksNuUtM<0W~M%sIHk3!es|=uRA@K@%B-^~e$9*&U~1bf1HD%%$1i;0zGP6MRHr z#=D)y8~=)8*5>^59X1G0um?vLz3yNT_BZ)E;7N=~@gAXuxi}|W=kn?Ldhx!q27g+deij}7f5`+v2j&UkpV57}IgSUL+t_?WtTHXetGPuE22QNk zsBV#*nDo_t2mRoaiToJav|0L>ZNz>-eABl=c`^N;bd_yP{{gi;M?3(g#&+lNAT)DP zb@u*To9T#<>PX{xqckJSf~7MvAg-lv^oa9uW*jAJ8EeRv7t0V)ktH1wd_*UjJe3ms z^zT<(?9x@vm z1D7Ha+cQNFn8|cv;Y%66z^5|DhIvQMi2k1P9HWi543HIUXv-g2i6AfqcYS4QQ+Dj} z1yv}?*_%PrMyeV10wF`}_D(%K)az`*S6Ur#i_+0I$hL^Q96(wSsF(uTB|m*!Rf8?A zb7Ezw^QEVs0LWwZ*YLYmLQ?7_f=8Qk-n|#GT!AqAY<=~0-Ye8!R@ezZgRX-9YAl@T zphI#6nJLy*^E`1PjPDfDSe?X#k4X5-*{{{}x_!d1rMRJX+vubRDwJOvMYrCf*>`R{ zqRAS)m9IPn!X}U~xP{k2C(w_ZRBY|*=_ZTnyw*ugE*<{ijY~_NFtc=f#)-IGu5oZc z+mDKKY?lRES07nqQ|{}l(jP8XR#>)TvP*8iI>o8uC^9ohTo0CPK}M$mW2QSkRiYa5 ztlG;>-)Tb)WC5D71+h4bG7#H<@IZ~l1+r+NqRBUaFjqYOdmC!v;lZQjzTf>VjV)@y zMJs`8EJP0EK#}&nLP>n)xq181`9NsmKROU5bEb&*>%J(ezH(siV-Ik0fe^U3c0IyXAa^rmG}{z`s!R4nFfW9?*8TmiY=fD;@@)+njEr%jlTS%+bk%6-1uXK163Ki z9MN~wZxnKNGZAU0Ofb4g0#1s26$zf3ZG5tMY9QV@SgfVV zL#4>CQqg5WY^-$To{|qCb18JJm}2jotp*pq6|Kdgm9nvS8Um>p>8V^huNvy#1!R(=Wr4G72xkE9 z2ljCBHIB43fqEKMq@|DY@lSb}C&bahjTT+k(dEgvXELg62ZoWwAuS8roo>%ueoPcv z#lyP6BA&QOz!f->`JYsGURRzV23{W{`VSL(wk*S*b_|*V8-ef6-Fe z(W}Hc?4)@Ho;}ox-6J^x8LcgB4k=ClAQjJUn+`1#Uj@w8yGVcXyz-q;r0JRLzFH&D z=Bb9Xp^vgEIym*oKe326tdX}=KQ*hDUjTVA@pdk0?0Rm$R^8j+IL+`ru=b9I33Isb z&~x~wqA@bFS7Z+WAqriZVwealYm68Fe+N=xoPYH<}gE^)oH>S_0P}Gm~pS`d^fd)|dNTVC7jGTc`*2@=H3p3@Ol= ziXmBg;6~u*vSCg7bGr!gZC)hJFtvHu1hb(m*=#7iP@|AA-Pt2|o#(f6T z2y=Efe*R6wtX?9U|1OC9^3)2%_X7s9Tx7zZ{&m{;7G<8zA`8i8o<|P>yF+mr;UY!f$-td-=8Dt83M`U9N#lwN(Syqv?V=9 zdOw{s!}2I=dg^B_vY!^uRS{BsE1k<0nZ9*rLY)*IK(B{vNLxVgkA;>c=|z;hmxMS0 zNKO>}QX+ajys*4E9B-?Xsur_@x4`&MC>8(?@N)!SU?krL4(O$r*U&awpq`DU+6SpzqF@WiD3aAks3MrLIM~REq`1Ae?$?$mKvJ{1YL%ml- z0R9dqB}SPZlGiN_!!JNjQ0|@)M;R<>E9VRY?6cScO9fBoK+L$*n-A1Oz_>gffB;3`FVxMHBO8Pp7A8lm~|m_o?!S| zH=%{~BQ9N~;e<<6@Avw`tfw{HUY4?v^R~y!auLL*m#M~h5Zpx^MTb^1Q$ED*H|7*O4hf|kwic&BMt1kqRZK)_L|9>4E z{Ltbma$AB4U~C$ln9n61a<~oO^|sYz`?VV$)HX z>iLG-V*j^WgreDSXLA1m(Rq|6dyDqTbt?bKEf@IDF#;EHz{)l3{le#ioy+H~I8_r@ zS64h|%b%Pr&hi#BeR#rtN-yW-HPNX5Jh0mPAsFHfx@5N z+lVxgeMx|@iWbk4g7dcN9FCaUCi5Ss8RC2T=tG7*h+X&EmYt2aWH?42%Vyc#hW&zi zsp+&)+TQs#jlHC{!ZY$W>2G~gPgL_>gplPqVyt9I9N}5U3%b=i)VR8{Tk!AdvU5l9 zi~9qeA91vo0wjnDxsf%QL(zg4@{z2dM*39B0ZxK}tnU9Zoc|xInRtYsPez&5uYyA8yt=xU zWqQSFSKbde8=p+rx2_ZT74oiK!op}9RaalO)GIHgq~v|o&NVNZj$u=U8k+ynW2WF- zvVf5<9io@W(;hs)H=_|Fzxw)fSAsHH7AYw4dPF7V#YEAQ=v-9+Y9E|wfsK)z7q=fz?r3D^RA%-AOQCg**-ZEtPunoJ8 z0IiZ5o@Xw2ujvjgz8-{mH|VbbsNz)f{GB{(TJ~i1HVSsNKJC(C=(|`t zI}U;OL3LLUPc`3k{297#mhgxslrVj``c#*vatz$O!4s*5_uDo6+1jOsU#h@z%QqB9 zleVDyDj7nTt*NY;i+qFb7aZRAc?E^DzDN~|*Q=%QQNPXg$v9wk6)|yHY^L)0rU}^V z6(T!c=<8HeB>)`>`BZtHH_AE}1~UJ7rtS(&%EY_=tAl*JK3_dgc~A#XB;Z*L$zyWPYYUMZK; z(>qYu@M9ma3#d{V>J5H*RJA$8QChmp$lKOd3Fk(TJ(W8Wf|N3LQ5#+B#Hn`rJ59yW zr7c-O$sf>+s@STBY)LKi#ZluHe!nUvYlfV3fS<76)_#qT_S~72O>rKv3%Jjlmg#ZC zX_vPZq5M*QSw*qH%N#2t>S2YgYcWE~#|zQ`Y18sp0ja6^?{z|*RqV`39k`^U5GmiS4fYR`(fI!G}~eTr<)^q++yfCyBWI!?(1x#nJRpmJl3JN$w|Y zYFo8?2E(lUTJymsE=E3NUNOzls@c@IQ%kN(-cUtkB`H;%?>gW$1%#e*kY&!aWuO-6nWD)p2L&9a@*>E;OPC$B0PE>r!m1x zKp#^4jsqgF^e$A)#RgvMhqzq~N9DX~i6yDdI&tWK_ z{&km?iB*{P^ZV0hIV{ixW1Dv4wFs4cI2jK}Pb!{M}6hX9x7-E*ygl}LwqWry*V64gn}N-@X%yZugh(}lNkPO0|$V+^MAvS8;%Pu_icNa z0nVcI2j8%d=zl={a7;`4IXd_4_94m<1GWPIxhcDlU^>(RXS9|QI51W#dJJ5@yTAkL%k2s))i|ZdY=_i>m zyi5TucmlM9!uxR40^nq4dyoCu;C@G^xZzqy4`fZzULM`H%EvY%=X+ts73FRXe~elR z+2mgdnuR6C0pT&9W|L$%d~dl0_qHKV{}~}hvJI*B%<$c{p)2=<|7U_er`Qv5E76&U z7B}vbkG?Jy|M*z;;?UDqNO{|RAe@=M?`HdN7B(mmb`bX-Byhiz`Pkee3)M=2jn@P4 zD}Jb;^F~{y=KvQ$bS}jmiof2oxP;%1=mMM$Qgq@y9MydTN0@?Z0IQ)j35||vUog|0^rlInS@!NWkU${H47_x!GP8a@4z-A7}?eBZ=Y9<^2 z<0LO6Fd3L6DFF#=1;$E(BY{bg7j|Qk-XMdWz~M;|$Y4@%XHo$&*oU(;`k$}UUd95y zq4)a6Mvuy^=%X)4d|+t*LWb2@G?d*=g=#7CsQrJz)+7X5N(8Ku6#W8h2Hr}#d4afv z$0Q{busYuPd-vtm)9&?3x=~8Or|F~;6fm#4=bf|9pxATk(emlt(2KM`KfPB&2I`?c zmqKD!ZG+`Pe7<`j|0Vqqj>`0-bnKH|Dz}~A`kZ?+ z>f^zN>5{lm!DO!+XG+q=+&R89Zf5j)&0(B|+I#z6ZYCL_f++|o?~VlQ8%l#)NKRb0 zPU^Qy8L2)b#h`)>k>IbA&QZanf?MJlyLaV&yZn3N!Fx@C*O;KWp&h&xx5DeOkB|&g z^M_Kr)&kdyroc^5`_R=;PtQ#7{pM3UawbKR6dIWN#aX+>-y};kFcbJ&QVbfHkQ8wl z=EbUu=>W5^&HmMr$>B!c*QX*hQU0VhH1Jzw;j{UqT{JKq(#H2BY;-U$_%KNv9ZU%x zN`jz+8D2~kAWjTL2fF}XXX9pAAfm4K6-9rnew9pb1tYYT_@iPs1x{Z8PFw0a?%J6G zWR^?faSak6VR6h2n$I;#KVw%s=s%BMSo(&$ugp=F@0MDuq%C_k+jtA#EPVAg8@!;2 zQdXbp&%q6&l~zNN(4a@hXO#bKi!Zgg_qVBeq=nW5-al|qa?}Kn?Y-Uid|3Ib^ZD9r zi}>6(h7{s=-ot6GfDPgZ4^Mh?-udoxg>>}po8EK%*qWh#-%8>`-^Alf8h`%UJd0or+lpX`qjXKAx1xRj%UiF~LG35}hP&SV5H@uSi zMVdDSBB26Hs~Y429^PB1g5gHK0MR$8!G}sSoVMz}9jghl$kBy9Uf{DqohmC3m#fhP zk3BuJt9vKsbRu-nsXB^?rm~wx81V-W~1&0=>)G3&9Occm8s{%rCng_k&Yy^z!Z3 zRGDmgf=C?En@D*yegV+g@~P+`ZX360@b=b7#>7M2$rW3lCUBkLa5mM%zOqX0(+UDb z`?C_|%4n1v9vbf|qR@s1g^fMSGc$x3xBJub(EyZxO_SKA9@oX%(#t#Z*Tp#p0IjXl|Bv`cU)a4yd~+lKw-z89A<2N zKLPle-Ij9#$3F|gkKK>QN2pqlklOdI<-H$d6yxg15?bcKyeX8Ukx|#Ek(-DI zjh1!|u$b9j6|VaIb#T77fm|*EC$-;dfoEO|m5Pz<6NQV#cJnn9NgfXt8L|SKZ9C)GIR_@&l2D;oRwDBa(yO! zT+q7>x*9_}g#C3siyQ@e=-1t1qFouD&NWNWnnjR5PD+E*#Y%Wg_W2x!#k*9w2e_?B4-@;_}~OLrkwZNQUvlK}0+>>A2rxL6ce--3 zM2JwlXyxXKTRZS7C^HYG<&}ydSEtv%&*~@$WBQhN;rWA!hup_DO+bEwE!gS?>@V|k zV+r`TKi*mv9Z8VgqdJa$M!v{r>3#P*b^oQjfFh%Egl6eqN6DNLjxU}Var`Wpu`Ryswug1cHlL7->KyLv&5ZWVeX#!$`h!yH0I8x`8& zQja|XMdz?TjnaY*U(J)1V=Lq|Uf0C4kcF`If!ZrYWIP!t`dFebgou+H{pd(?Rbrg$ zr(&2B*f<9d`eZ z*bXt9*N!FGIlaZtAbDk8iLd7#=bif`q~scy;VfL%Ws4=f5V1~!flx)#6aiPQu;se0 zL2t}5`-&C2=B@6c+*Gx2^d59{hE63l&-3`36jfh2k6o3Q?&ig0Oj+@R^M*`r^b)oX!S-{W4z4Hn<~3lna{e7 z@uNjWWfHFYTTTX~qniUBlwbQG%Gak&vhF1OrY&6tUbASf+-~oQ6fI25Ed&h(+-YmC zGJd?vkUJ2LnYtgNcn9Cvr&pzS9T2eT#XI2k+QGTm%cXKU!eaE4r8RUPw-vI($!|m6 zO(K{Bh97{@wNK%c4-x}&4TJYOnfJPlzeoQTm1$ew{m=UA10J}WeRu^A?klB2@uV!{ z`}M$;^?*{rSDF9T2L4+c&x$Q(>@#ilW%ieMw>w4jiu6x6{Oiy+Hx4s?2&?Y-RT=*? zt73G*n{onkSLF}WW(n!)ky77RU|&fo{EISs>tSG1xO+10rVPBy`>JxYJU;;DjCcS_ zt~kXSq6KYd^HB-I5kl$XA4mUqq19(u3R!QhX*Ml1OwYV8!&LCP`88b^tKgV#+wLBa zRtt@}e3L&S6);b%a;ECDQSkeXg<<(kIp{JJ6`yT6zqPyW=NHC{Z`JSofnKZyR8Tua zYv#3-vQSvoz}YQU`TS3Yrb6bcX6}QaIQ-qr!=v98lMc##1{clE^nh2SxLcAcl+zzMKWeb)Bo}&R;COOqt5id84-F`KF zx9hy5+WbPk+kk&L+j8R4*- z{Q#F_S3iuep<(CX74MxWko)(U5AK7=Nlz!jG@LkeY`jl=9r(O6$OEuc}%VyX}u3Fj8v+wjmEm z5r;>Xf(As7q6>`nFs7doo&Os4E^e*^SUP?4XK@gQXLn%EnH;UBjYy--FX$TA9&DWY z+hhNS&)N!FE5knUr_TIV#dGZxYT^RGs&6D~sX$e-c;_dj-hnuMO z$%caDNm)QhFKV(g;}S#zi>%^WJ@%Mpf7F?D#d0Jc@_hw1@(RxVEa6krye_w#Pa)F6 zi`8~Q9ZbxxwsS0|SyC$o+BDDBzECnmUTp+*zj~39jQaJA<9!BaSXrdNzgyqJSX|Rj z+v>o}H_VG1@9iPx?>90Hsx?Q*{YLiu)?SuFn>9~Ynr4S7MF_iO#kAZdZ2#7UxV$%d zJGq%*y#hzT&+sQ4=l@wbcym57&WKQ&2@RpGGWkb4W!QI(BkGk-6NaRT6E(r4aY>7! zGNA&_qAH(X@r2)x)cRpNpk1uid^cwi`uQ=b)IhTGJg)5O_nGrBVy&(DfU)H47?~$6 zTAAv`*aP1^4(mm}`~i-E-}tz)WnO0-cxSV&K+l7YXHq$_oyZRGq?7mMpjk6h# zb>sDJKeiN@8zTMb2^j`oCL-e_x?H0I`8jD7&}An`KQi_fx4CR|_Ir@FUq?UPZ>*sN z0uUUOKnT}atKx`kvJ4xVjY1;bpLoY$XtA(fxnLlCxJC?P^(8u;M7Ib=3F+RiOmA;3 zklK>c3Z~@W<*hmK(n}nWOr!qR#t5BnDE#^#b@L<>f zMsCK-V8T6TsC$F74}YG6uhdUT@`n`zKu(b3K%}&bNw-S`RuQ4OlQ_eZG(Dl8i3gp5 zR!%(6M<@}9Hjh3*SdRiklc6kI5LWl<7iK+ELyFd}N+$NJqH?`pE33DY?|J!&JPMqQ zMh^DDnjTAvOBQVK4v zyr*M$848NUvq#}3i*62VF$1X3!Jfe{wb0Ay)d^>XPsU#R2%L0qsXH(;Uc)0tY%)d8 z)%4fRj8NDlr*AzLX#OSzK3(-E2tQz6vj4g!?|U(c-Rj*3brJ@|+4mK!ccTp5%DWS3j1%?;Wg}l7Dv8Y&cCjdNww}9b z{;=Kug`=O(D|GrT$*lmLZeZ=aVbb|jb$u#qb$s>k23ZYBN?me)0cM}B_9-W8$Y=A}RCahc(V_eEJ5QkI={8+C(VOk8R~xEb{2ORc{Y0o& zzD?!v>Jd!L{eeDU({qkvz(LOs4tvJH93V6^wFBxoFxVBTmi5vf&Z7jwO?Muq?)KUd zQDgzgpV!R06HTt-LKFBR!^0a(ad};+#V$5xp*yNBT7BthbN?W3{n^$I2uWa5WCQj# zckWl=?*X#8YeLKSmz5mz$rM2c6#SdhLS-;Uuw=ZNWHAUeqVtEu$1NWtw=3|K1G0r&1r;k76^KJ*K zKki3bGi!sWzESIcQ;nFyHX4kVNw0^MSBaumB$INKD`^NfhluQpOn^(Q5Hd8z^nTd-MQs)Ay@K-= zr`F?Q%;;guQqUD~qJF7j_kH02jwo1cjv?%&GaPL zCt43qpWPn=_{^PuEk2j&-@ZYaOdTRR_W4(83w+}BUXp`%oVw8g5u-obvphc)t<1zl zT!}^AL^E}|+7+nQ`j)@@V1L_^w!az14*lZUPP+tG&JaTm!dGC9P*=!JUZ4(24vKaJ zrijZ94;*K$Oy;6F(N0aXAj(n-Q`Ji& z+%U7IAgX20!C!6F6P>)w3oEkN@k_!DphLIW$REWGA{k6D!k2t&D4b=Mh}XJ%JjzC; zF|XrSX!C0D=0m}7g(oshTxff8kgw=pQU*7O$}Z~{vO)Ii`*Im6 z;s}>%tSR??#NrzBNx+}OSIv%utWeb^-OaXe6ev?}NKw@%Ak3{`Kg$;uNj`cy#d zpd^q=`|fc7?|SGWo6O?fQMVo}p#DhmoDt%)0P>%ewVwlVU0>i`mzljG3J%f;Ldoc7 zvhLW^mww}r!Xorb+GxyrrMJr!J;$e%$??;QgVuB@t&-%(KSuI$XL6W5KMM6xbjVLg zN`F%J9~V2FU^jQH5sD~sx=uXc_oCCCirk(1T}y~oaJG`2i(rSO`yWf-*=xEo&AOS zIX?4jBzpa+ZtuPRn!k!p4yUtWRhMTp&VY^?Ul&b;lyL6F-w~rA+rM1EavEpi>VR3_ z12_u>_jGt8t8N))e!;jRD#4@g*36GfwKYl!T~o>YfEe;}DG~Kb?-s1>kout$&tb^O z8A+c-UeJD#`K_Utgb0QbrC3R+-x=M?+*##q%k$T+zP&XVUURUbMG-3@sfcT`>r$Pj z$EzB{%y0vE;yt^gf0q!@DqT(_wT{NpR5(i#{Be6!l7=@HOk za}2S4R3$3RG zwodohP(jh$--El+^R5m~N2QzbovZhQ`F}87iQEQ|dO~u&*7t!EnUT+QE5A1fJ{8w; zSzaH4?nb74I?mDt90IAxf4Gi?>O`I)8=gUt#w320I}g?Iws^1#;HvJ|A2Olr&W81( zPT|p{l(@DAhUy74C6UtME<`myKqL}Nm>2^gmRZ4_{P67^o93dyE8RKg^ zJ^(~ZuTHhBM5x5Pt9HRx*%?OR^Dd8%=Q{l%3~J2g6>0P)nH;zJ*Q0AVK--pei9GgIrWw!q3a?Qhp_ z@AEjtj6bcFf~HR6#$nEXpVXF-$c;F^+2<0*GXasxl8tT3=`}6Kg;NL07o2TRLG!Jy zs>+Y70zj2ECZDk`liwM<*#s{50Fl$@+e8+>ooPKuLY$Uj&?+zU2ow(G2y9{hs_LLQ zU32CnJD+}&T}XA6mqlGumCJk}glBBQqHFwxbAmW>B%~lWmneO6tkz#5Or!Z_R^7Jj zz?2aG5lQ4%dt8$_32X=>6LHw@zf7i}KP#4w0PbKKUNA*MVMG;3h8Y~Eaezo2|4~Vl ziXyW}MItjc7-PPmk@`eF214fcA*h)En%x}au8qbj&K?}J$_oi7+?oPU9jSiR{=?fd zKZV}v`H4r2*mc{;TsFZMJz?(@Jsru>RG4*K-SXlW$ajg=vS4pXiAXv>Ad9>Fq9}9% z0&+d0T?eO95*-Hcn8H6Qpua5PVYM9D!LEz@F%MyTy&9dRU65qcLXuD`9GARlz!wX} zKX#B6U2`~y9wXgX%ClsPp}lm0+5C=9&ThTctE>p{w>2O`CQXQ!WY8T-L z^QIZI*2(aNA$erbDAB+eb3@s%72pqWfQ&|v>VwzNYLagpWZ_s&rEaE9>8zT$=yim6 znpfM@2i+@dnb8B!yMh54p9oy@qd~L9@Cc*^q%2k!6@ge1H$B=0agwJbKw0A$RQ;_7mBl zT$t-I76U}EyYdGUw=Rb?lsNar4Vs zXAUqmGZ@2xlRRfnGWotAg09EpDIw`5rj~mdoWF)bLk=zz446b2%sb14x_&cqNXSuf zk3c5d5@*SKJ$N4uELe}2{7p%rEriQ3jg!nA0I$93PZMs_p4^z8p7ztaY&V|tf+gP{ zODGgcr$frpminG<$7DRCLldpyAPMt29W=)aZGHN& zDkj4x=@-4#t2|AcG7Ua|t@`qMOwPmetv+7gi4*;pIXpc9=ywj3SBBPi!`t2qnIR&F zX~f^h`;(o{%0C^YMxT#P!?7G0lnWe~yO7-wW3HOrCmrIa>A1z|MgEOO%B_8!do;>> zD+gB~#N~AEP^HB~+*_;$>M*R5BIFjzsN)d(anSpHovB*%#O_Ln&95=^dJsc%NuT>rw=gP|E zUsn6Rjthpm9YA978WbNu;X`)beg((F{ z5Q!uoCExKtT#EzTF3I^J>?PbDaXfeQIS9sBfa=>Jo=!|Z>*{JuWK4uvrcnm1{tB4= z=xe{RWd)x^iveNEk`q+ zkw7!odGA5G7wxixnmVJ=C_waT)${OH6hzeS%+5We-u3N2oU|T~wxgV?tn#0iFL(G| zL*QdP$ezr$D)PEL7@VX4b0kNcIJ4pII9B zdZOkDf#{h2L#AT?aX3?L0hMDgsgZ}-*^*QCh}?Asc+=5 zrRcAP+}|XdX0F;PB~zI+0XX|09)v=BfBCVs7MZlk{&N&A=-=_(|(*X(8{n>eUTjrTY_n@NxCRh4Gg%LE7EJztI?;h2TrQ3hdu7!AJ2Q z8F|6Q&qEe0@wiI~9s&1jyR?xIN*#2)T&uthd`BDt1gnBAA5jp1J<0K@^jDI1DB@ZV zBx?K4V%eGa=9yw&lYL=Kd4!rqiAdGLvj>jOnkrNGC?J|3w0ACkU7VkJ(l{H};d)Ay zoS4C8=81SkKZ)@yL28aqEQ6Ef7bynn4vD)-gOS&=>8t)oj19Se9SA{Qn%t$1FxQYV z=Vc+_{@1)vLr>f1dz$p&f0t2vQYM>2QG8Vpw?4vlc`?g_e`<(J2F0tGKw1ytXUW_bVOjb?z4lsb2`Ob|Dt6 zMady3auQZ1ykbzd`M25v=O(q!4iQTK_UX{>Q@5Z0sE^p|A9Jc)*X#QsP#7h@H+C3Y zKmHF*R~Z&X_x1-+T0jBmdgvCA?vQR!x}>{1h6ZU#X%G;R?q+Eefu*~M`J9Zi4Fgo@+7C&~5 zW2QN_Ss;S7Bqp12?VWJErujayTTYd}P7Li^G$I1aXJrcb!KhZ!&gq;k2r|%N_T>oKrzZx)_Y0v9&fmeQz)m2iOV&zl{=thek5SaPe3`E2kJJ<2J(%yZeJQHS6)f*| zH)FsIA@^^dOU}8xS~juAJ7GvdIyKds`SA-qGI3)h6EDqF+6H}(n^#CkM5G-}s6+2& zA#2ivaA;*^v(UbkenGFK#h?z?o^uvGJaqy`qn&Ep)P2k=kfPw<@-(rdlAe>0a=r2~HB=S8m?h&7u3-b9 z@3NFn@1Tl1_j=}+AuGYH71{^hNw9VY+rpAVI`dR7m4Nbn^U<-(-TGb=GhRABIId{l z+9<^17bERHVbx_!9U!^udmE1H;LG+^|FVE`i3LrlD%gvJbEuA2 zNF~yA6ZQF#R{*kal|u!1olT@CoJ2@_&B(ZB@q9oRG_fd zbac>kl94Bljo4ZXqC0YNpb%8AjC9p!cHkrW6~~;#!@?A-+z%GI%xv@c=nSmfrNnWu z@1((#(PSCro!88yMA;g@2V=PB--DHgDLV(iG^1XUB__apvbghfmqtNfdVSQ0JDFQj z79mN@2NAPxkrZ3|?Kt|Qq-JGtYr*3WJM1YbqxJKKTX0Rr-l)e`L~+ zR|Yl<22#dlz|WAdSe*F=ur~Hx zFz1aTq(?on9qDFUT9k*k(n*7Ny_XbI~|g92iw=A3~n>1t~9 zi;V+^#^<#!#qVqU42quKz}d{==drA1y{&)h+YgupG}p=O>C`)bF6x^sAwS0GM+f9!zLMOjc;nIJHrgp#3X4E_~vf0_tQ zRFzrLh*YUn-LkgeX1(T5lU3!d!8M@1(-ht&no7ph_9 z(_0ofq5^;ve2tC7A+<`l7W1C{n))hkM|IYuib+)&V-1l0v2`Gw64g*@6{xOejiq`J z8V-MYe+zsJzpK{VmT&&1#dX)lBJe$9#~b(Dkr<_(>`tpV%JsRDD{lo4t4cMPsp#9Q z?{*8)tB>J(?aS~a(}l_E*1D&kRhNDi>A;#l2E<~as(q08neJzp8twfNnyO^Cgo)CW zpY&-VfGU3v6G;BG^6aCk*VtXz;Q#t)rQ*2&nrj8>_OPBlX`(2Zst<-kJ1sEK34*bK zoP#$D@XM<%2!s#;THsOYY0L^?Qa~d}aun+&lK-p;D%=)Uf$O2z?fC8@g~G2f5l&T9 z8etEK{tD6F&2q`UIGFOri;2>4Dr_JNt}>m8Bv^7n`st2{7MP_;DbHAN-b!|Nq@EWM zXakzLD$(Q9O9D<3(W4oAqC<`!)aZGlB*uOYNgP0U&#n98r-hx83!Z+w7Ja)W12+1? zxRXS418~?TDjqGaD?L?)8_9Vu9;xIRS@$22qnA-9_KSsa*562Ejmmtgl>6EEogP0V zG&%3>ej)I|b^mQQf?Y~+8YefW_hZ%d0tCFn_~x_W#m!0FPnAvD-ogSe1aJ7RoayT= zS2U?AV^7`$+@FF%v1qA69?)Td;2?OOIR*KsE5UpR1bU7n%1}H-hIo#AvbULLt7)+& zHKu(``*mJIeGlH=Knf@4l3X_-X(T2%v{u%)EZ3q<(9|@jONouqr0!L&-WF0PxVg4- z^}pib43~PixOd29)29Y3v-(arZn6f%3iFB-cB)`O{tZoj;TQ>??N8CxFpo`k551z` z6N4m0VJvbi1Vdf=|GTC(S5#=I5)}3LSQNa(9WaU|J9o)R(?nnOD&b7ts80w=d25n;Ok|7h&xN(Itn zjicrRq4!EzQ0dI}Y3fS(?N8TZzhemeV)0Vg?u7}}F~n!azLC5UJb$c4NN}2$oV|M$ z>5?6hy+V1fAjZ;NS2B8~S+#~d(;R^u{jPSyv_0jw(uo9rU`h@3+*vih{fS5g^1S{@opa~pKm9kZuiLh+ub z{$wJsBzqG?&EvDWkcDl}p4;k%Z#KbWxxckj2mkluk@iYY?7REv!{oVwh&S`UVzs9y z#CKQe9M6j^F=L?uLBsdZ^8Z20f0Zj-AK#GAR~v!~*!BckhWD@2{@$KT-4} zRODABO*dK;XZak3g^D!2{_87*lXXzFf+B*wvXlID|pqZYcBIcVW4r z7=1H*CCjFNeFP#KY^dQHHtoN*L_fKhz_s2i#&q8e!h@9-Evu|w|2VMoF3UOqg-`-4 z5i+%_QK#F-D`H;Zn3QXZQ+;pQ7fCvk%-$pWQVg%8NxDVwO@Cq`{>z;BLA#mP`}VXD zgb&c@RF3_}l@SirF;-JMb%qq9&I2C7%I!sb;Sy3>)zE}pWxLo-xJt$^{wH+@XAd#( zvtqEzpJA`|KDw)a0|YO{VB(rq?k{+FEK3Nl1W1U)uF<}C?1QA#43F5;+KSBBX~BY? zkOWyapLlbvE`^R^snA@T5%!`MBKLr>Dpup^JKE6O5~UavE~+krZLe{PQMU@;m}>q5 zvhNFxY{^L4^cng^K*Z!H`78Hc1c0pZsBF8_f_@;iwZa$KN_2%CM2F0Zzj!mOWYC0bE^;_2vW)QPVFv5k?l>AxJl zLGIoWMLID>dHDqE`O2#Y-U;yAcWCavcNULj(4A{$Ye_jgW(`!eKV}IkK`p+1|^x&c}_gF8E?|cDp&Ec`|TKP zLHK&*7HvF6OERI+XX(?42wr@UI@fKltihVY$(bv-gezBD{JHbIs*u!~FD3 zqW{65GO(+AS-l%0l51?MpcAm9^Cy!|2b4!A?q&3hG$5v6HceD=EKWTo{F7E)p-$66 zOu;uiB8cb09oWwg z!7pyi%GD*0hx-4yB35*i*^0Oz3yCMvbtYfediXj=iCvfCSE3plCI9!0`9ezm`PEyK z4&ZX%kixHqwqg3;)C9i&ngnK6?ipwFY z4sy#5z66}0OgLnej2fmrGqtqY-*Ls511S7D$AAOmiy?Y2x zerr6_gMfwHW&BmER{WjNlg`GA=_HDf_E{43&_7=?1(1qYvt}gqbrp%Lh97YDKbTj-0yxC7dCoeJ|0n_yjw+CXp6HP81QNJd5}JC-ElA-ba^Gw`RUsI z7{bSS)~3#cAmOs3++m{Jc3L;)KH!fNwYvWM)dasQdgF>`MB~+%49E&FBXnNPqT3Nt6Mh-h;?GTC%L)Q!gFv$FE zNon;9@*l56vnywXm>|7*>OIt^cgW|iSrSO^?BAtUg;B)4oLSW1O(s{6t3gZ+l@bBF7%im8P`1W5+FH`e?wC7^y?j0SkyQ8T&XTTaHv!H8yRpARQEB_f@C4t%3{+=UhbV$E3CcDQwYiQl4# zd^*$A0+_5v%v}4-R5A2rRFi$xWs)h0s!_NM z-Syh?2u-SWhp|KNR9$G_Wc5l4@B)ej9?tUAzes4&ksCNM{rgSE&e4p!oC8BLr=&sJ zUz4gGhOs{3j82^g-alijY~>2Gg0YM6grra;+;hLGs~6!7zLN&ZN?c!cQrMB4?f-cN zBcLM*7qvT`>-jOxQWU_ph<$?us;gVCt) z0;x6(cru_~VJEg^fd!8poQu0cgSUKuEF)S;S+KDG{nbY#L4lR^<}4X)J3AY@I&FD3 zV|T4Kd@L)_?G)q8_AR244x6&FH|2|8ze(LabbnUwK%lKBcL~A)ckex(A3=!ZUaXe$ zbH7ET!cN)cwqP4YhxhOVmjU7_hbjEIDy2V%3Z`qD@uulZ6qlWpl~1dAB@Kt}>Si8- z?TeWM+V74SsQwP>TMV^5GR@VUo3K^3m;3OZbSkVoCjzI2e~S;u??C&5@wwaGO>}O! zecs3iDv1$>6oZacrPhT2@;EFuyzfNtFcLidw%qCyk>#_cQ}B=zu}DlhtKz56lKg}~ zfx_p$@RmLbzD<0sCIAz5+b$5E2F;cc)+|;M&G-8xWxOqR4A_7a-wQ&F;v&4FK%pn5 z-1(Xa@!(ST&f)Yf<$}+&DZ-xU8WrmFh5=KV z`^1|6%y{S&*pAz=Gj&yuZR+Iw{@TTjCv}v3{!b(;Yk%xL36MH86U1{7fQ|k5*4E>u zO5|mS?Og@k9kLs~f1>+*{L@#1fCoiCyU$`uIRRnp?K_gMj#f~Md4Bm)eu-sb9nGe6Vbp16g!tS?nnm=P9 zuI}LXL=p}qFr*HEg-~3G0e2(b5^ypM@m8V}0%PK#W+(Sazp?KKS?HdsP~0X{i7uuy zdJIZ6tieKo8fbCJ7>)~iLVu9C)4gHwy~HUlJawKB^nxH-mF68tx@r-!nk6)8agMMrP@yS>4ySYp>GQ*K2~TZ-fDPozHng||2e>4oD=#AIrg;#!^TGP9n^8=qcJ9&h*cW z@bAPsq&Wu+a(qZYzLcb4sMP9Wn8{`;4XbMnDKmV#qYc%T`|EDze zV>&d&cgC`SL|a8`H9yISFYis6y!(TVTgjDlfuuO}GpAM^Bg#cGWYBlvsL^>j9ncfW zTNd!9p&(gY)zzeyXB@XehpY#_{F)Q!7!KHz}pahZh3${{VE>;b0&F3Zmosx zhAmD130TNg#@E99fttR4|y6I0wy7LWrXaDjw1_o0nc#ARqT1?_rc=0 z-M`0RA!cBi!MI#3NaqJw(=SsAd~!VPxGWmLGiqGAKIiXasKz%BMS9;JP%C^tj{y%l zG9&;J;X<*UmF4R<+QJE4@2>T>qKk3ioSvaIaZ(zT7>UAbR??h~uEW{)`Cb9)V*13h zQtiLPqO#Obw2F`Mv7MD@o~7e%bHds5>3UtUdUo{LBx?@zQFfYoHhsQqgN{Qpi&UY$bM~%*YMkOSL;MqV7?^`_Ox~%tsz=zjQ>X zn&El(pZ}?AZdwD*A^fOP^O^!UI*8P;^TUIJJHFfF{txy5oaf;qX*v->3q=2*>1@S( zPM~tp3-;SDQ-Eg_iu-b9PrvD>7QkCQDZFUq0ed~NlOfxzvc*mK@eG&!?3mRv6(jW} zp72H4n`5piU*kn+U6kODnG5xa{)&vsHM!-qQ$B55YVp{5^6X5Cr( zV@cg9U)oRtjUb_LBTdqO+3)KQ6-&smoKzz`vh()wth{h4=|!{O7YFI?2*U9hRvHMhb)}&wU6(-DCV1&vxo5Qf#0BB z1+PKXqOnZJNB=!3>g6HDt1#YK31X9g!AUPqnQo}R+u~|$DtWV0d$g*gPYwkCOj2-$ zKpAu8^wVYGA~WvY>}A~qzOw}4Qe$Q?P8b!2!w?hZ{BCcIn0Y~v`IEuR+g-xPK`HXE z?^9%E9GZ3n`o&~-YCFaK2=HNE%LURJ>LAFz)q@?wVV}k0v%XqhqKljPe@4iUBFL(4 zMeDjn?A)7{7e&9En?)8-5WpF6fUqNnm3zH>U*V#!4lI3uxEKmvqr6>vh6H?ZglM03`+}xLFD}f(I@8l60uw)s;afyP;opxhVO_hg+QuHX3$rL9Xo9M!UMU z&paIu74?sh4j(I9Eldy*){ z7NM4p)0Hqp{+sLi+noFxQ5d^&(U4214@Z8ioR5wOI*Zh%8~Wz>B5 z0ahT~BoY#ExWLgzD5VAFGklfm6Zfv%LK4Apn%w##(0p~yD(NR!_CPsPQ`+cQ7>uL{ z*XO1QQD$Win+6&}wL*}5ORr_#O&x6j^i?iN7;7k!#RJj_?n0p5Q%QvL(hwTT=7p;~x8N6eP|>9Kyq%2N+y>rLY0fzflF?o#epVhi}7oW`=)WY74#8Eq71 zzi^8Udrq5dR?yn;bTmYw3jG{2CjBT3!N3!5Gt&ZtVj)Q!((JtfSG5$(3k}(DD|k6` z(PkeBZrnrH0{9zlvyw_Y(0?k0J6VM5+IZjQ5gN4dtTo-Nu#x+&`(~@lH^WS^=it27 zZ7ROPs}FeIwrJTcg_SMu(ThRgtv{5dm^gH=7*{D3g`IEEz5EDy%7g&QK^<{kw3RTAEJ$_F<9QmnjFuKk>T$bPHrT=w zyI1}C@ecvHtp4Ba!@o1U36235doKXLd)Hi-dmn+z`X{1S0P)$(jm3La(W&+EtA#em z;{!dnbmToj?rqi6Xq-F8;8Vh-RYRmw2=)c!HX1a3J2MK|30g0tAp<%Qbmro9>;b1Q zIGl)-S%?UA5TpfC6dKY$XF}M_ppW|2%!t9!wGj4CF`SwFPkfz60^%Mlnr%6cV`!M4Xh5Lorm7?loMy;G+sPFLp^G5!AEkE$E&3N<*6TvNb~@5zJ=%Sd5_I z9GlF7O{uA>oWhK6qRBW&6Z#TOVloJ~=SKp%X%c^n?Z)}|teNuO5X7U;``gKXb<$Y7 zq=fH*CY}r>#02;ghx1K-=a-5IKbx#yqm+@+1T#E-j72i6?EHKnYUGkMe2X~mKH%E4 z<3(DhuC-QxWmb$a>B2D;17g!|{OIDRQLVG%*w#jWBgI%GJs>8=ul}Q-_>9f)uQKb8 zC%q*Y{wKj}Y$LGi7(^74N0Y}dl$lzqO=~GS&HqxEoQK|`iE3A&Dtbkemd(ZoP~yKJ z#K-lH=Ip0q6ekwBpNlzQ!jTX_ef>f`L~mrGQs}I_docS(IXmF+0X)>|IAza)l~z6l z4$Rn7@+)x#63Z~Pw3oc9OG)#2TK_F|Jo$A(+V8^QMpU@w0v@Iu0twOg&AhnO;{uFT zhWz0#Dk_EvAKh;LE2UN&Os@JKLuc(x&1vAqNQNLO>8 zh<48CJN|OG$$a!&!@s3kLaL4SLwwHiJHo*_#RKqH0oYisaD{14Y6elkQxZbu8@1+8qw6FZ$^B(y5*YY=gz_n#oWx!J|U$_UtPrl~9 zgeQ&kUr#B)20c&}_Yc(FLAZW!e&9|+MwzI3*mn`O@in^=HbUX|(q-vrgv&9ztO4XW zf;i;utbvaMJBD%&D+kXzG9Dezx!_6V>v4Ge=W59b+4zRw&0Mnjxe@Hrx!m@F9GX~z zKBFCveVdsEbZ(yY%nu5lxJNgXK2MxH#r}Iuwpwt+ss5*mtt0N(-n092i_aB_5$*O8 zHZyR01qon70oKonl#wGAx6)tS-8bf#SAUdr=&B*zN1@(7N8lR-=|T*Ib5D^$9wmfM z(Z?HDzNoJQq#SiCSPZ`wH@wY5$Gt*VrR|tDY~5D$b9<|(?8FnZ81s=JO6N*pV2yP2 zDx%ZlC%jl-WSij4o?-fLTYSQ@x!SjHQM^XPmNYvqL)Fpc8UHH^y`(8j<}_kz9ro%= zwD)}zM^AGVx+%e=)r8oM?-b?&4w@5$B^C)mHFC})zoX}Tui2Dk45ibMRzm_7)Eb<^ zw!Cv_L#u?KaNgBR;`Ln2j{Le$)F8Szs(2Vq;N@d{;%@?bREC%6vlXgwtSR=mIxKJI zz7|r-cX{C9SLEgFtPM&nW2h+cYNK*fJWN)s#&_m@gcXxUad?~mSNU=WoYbTF2yM71 zH^M{ls=iu@GGfsArSGwZzV+fsMs~|b!bL@PKI%k{58nD61#>NVMrMCJdB*R_h=ueS zXUnf18rxtCji8|Wx0xrEWc894ufq`a7t|!=e__Tl#4@VVuK9GI2~{4Ve{_5CLx?Im zk3j(OgAC;ks$x@Oa+qc}_!AIadK>2u`5HLfmF2!Zz#XKB0-(Z``DUx2CF%#@=^A}4yC=+ zb2S$7L~XPDR3+qYuj>vscw~5Q@yGV5BgghB5l3fo(HkDWo3Xb5gNdZxg%FZ>&TSMM z#_5IPMmuqOJPr^W)#@nuCO5T+`!+0zOUJjHNpLlr38*cu&cu^VUm4u&(7#afIBFLC z`p`8K3zxr^vClKt0Ftqn_OH<|4)&j);*b_weNaXom%xHEe~J`uMol8cKF5`i!!gN( zLF{+~{!5mV72kMJFI8SCnT%+qVW8P%SI00_UI*P}GYpBP;|go$LWs5~biS%D-EU7v z30;;k(Bhv?m+-I33gH`ix))0Ot;bL!Q4ejc#nr^U7a4zK;4QtjYYl-nyjWQNHe=Z4 z@HW1_^Z8%rNZ_3mhyCmHzs{rHLr+~-sKCBu{GzolS@sxfvwvq6sG*{Le{*o!Z9RVf zA;{&KT}|L^dS5U*2v-BYrn!CJOHSCn#=aogdSU7FAVWhlly6^=AklumI3ZurKAi2f z6_H_i*R%0?0hV2z9uo9yBz&qlDdGZG0J-Z;qN(9GQF+7D&|rDOJE(}BN3^1z0GgLf zrbt51ZySV1q~^YwmuSM4eHWP{a<;@_f5?SHZ;yOcku~6N&u>L$D;@ISSm$|#l^lwr zl>;MhMB$lD#Tn7VyZ_q=;l#sn8-+%( zQ8WUeLAkupvpe5}|KAccTAj8XBzrJ*6uxqgrT6K?$SMd)aPJDtv&9RHk`4@-WA)fU zk~L!7-C1o;{C#AbdWu9JzV;gVY^k)FtP*3HK97Uuk$PSNULM-hyxFTZ0rT#`J-7C>);| zA!gA2#Y;*$hDbr%vtJzst+L$IR4*PA!U*O!!*SM)nCo6yk&7*lf;b9SwClD!=4oc? zZd2niKv@Oyp2Q6a2IPfJ51WuF#wKbiqYM3p6>po|CJGteI#n+2tD%sP~BLNIO(`hyUcF z;Cc!QA+@!(ZXfr0$6ip>av99Qh+*_}tp-nCh4yFForCXUm?z}3(NLb9&wJ3cc(@zQ zdSi1tSmirjo5O%lKMDJMYhUgCXVQeYT0vO()$Zs3yc9eTz_EBTyIq(00Kh|5XV!%%p<@AU_Of*_U5cgiEM zRbi^@>Y~p^_bbClc1kg^(^eX_h5Nx!JaXgyZ^>c7mT4X~klW-jzGfI#?0CmOKy$|g zinYW%-yOKwp;EbVmwk3SsecDAdj5D7P(4d4zDsRk0wUv8h+;2%MW-dUU_FAoZiA|F zvLy7pCwIvVUIxn%W6QT+{PkY)R`6f+Lj~-=$Eggb{M8aIEe6I3z=sxC7vCaD1!@tF z;4t7@?@!;hZCePWsG!;NjVP(DuQ?PCfXH#4p+54z-ct(o=X_$Esl9ZaxSu)T=*7D z%aF|UaF_(dG$nrd!=@XvLnSag=QZ?o*>o#Yf(y-J?iCc(>B=G6y;#YHF=YO5Ug+IpucVZsFV&miY3QqVf96{GVPS}s?B*GY z)K?rwcC`&$Wriw8`ZD&F)~cdAPlK0wVc5$s)o-xhrsoA35g6?L&g#GB8>7oxyxtB^ znfHE6{&2t?)gmN@AC+P3YE0fidhQcOG6inh9awV0kLoriV!#RY7&1UCe0X%Tyi z%OK#Gs=uXC5ME^e_vxe+hF^+ZA^v0*J#KV-*@OQ;YkT2Nc8r1(nAsgr5Bq38YWlFD z;kuQ&Kkl%WXhrLqqce5hcrr2tyEVE?{Z}NcZX4-LOGSvuYXS5sfFO0&(f+kZX(*c- zx!V$*f5Unupr9Ysbk%%99P@)uo8@ijJgm#9@A>23ZK)?K`=G7TnNQM8BCTph4@?uO zERAF%3wgr6_f3z3BV6kKlC6a`x!2csBts$_fo|W)A3Cp|D`yVI#wP>&;GkJ&MU`=K zf1~^*JB(8PEFEOmbG-B{V)wq`@PwV5wMuqvXh=uDN{bToCmnb-oUb&sg9=E|7S0_E z#tS+>sWRtY4-9-bhkO%Fq~Ne2<#Jx@F*v+wD2?w2W$!&b2Ox%(^g)j+*c+n8FiY<) z2l>Igjz>KsZ+Wy+n5ZpG)DYYv3axg+{q&e$;tWfZ0Pojl1Yc&BN1TUM#|!l#h+Xiu za+|_-9*&Ytgt-W}*PmKAutlt21~zOwG{JxE3EX5`$`$5OrTBWBZje6(8CdYqD=?M_ zHOUCxpBdHt#l*#jzTW=440-{C9t%tKdRRwqVv;O#8SgA^I+IH-MmR7PP?2&6UfhI+ z7v}eXbeLJ5jb3Y3UsbvOLmU1OroTAJKYo^dz^wsZ`~A>CH)`4}bxD~MRWRr9}CwpWd@KDb4g&9bV zcHMmwrlQ{z!zmRmA(_l?64YFh&xQ!dk#pjG@cl>uq&GL*4{GQ(K~f`rSblNe8W3!c zQID|HgO7*<1WH!hP|f0+kJXJ8k4-!I{0!VlZ%^h9@3PHx2$O0Y&>#G>QAKF{U+goh zyaoufQkCHU^6W+_HupWe2rI_?3rhKaP*WA6vdUdv_>d~Ay?+k2Zw84ob?du-g8rma1-QTgOoxd+*&++wA#Ro1#bB7Z%t0= zmRZ-mGaZL%@ChZ-?9u4m^=)SK%lJ6vrKtAez=ah*Y1>c^*yMn8i>_#`~qI!;X>`f2J#qmp=H{y3Lcl?tn6qbt4XsP#6Bk$wSz90$i z55|)Kl!PKezVClQ$&N4mNO^qPl$Kj2+ zrKdBv0qOW2x%cPxxb$oV{7+Z-8lDE~=YS~i<~JnK3V*UgbMW+VtYP0Z;>&}sf`RwW zgOW2E*%khWaN}DgV^AA|psU8NH|7JDrTG^z^_smrLg5ld{^9;%ox|PTs(FCY=MXRR zXq`x^&;k()Td8aJWq|&#{-X#m5 z#N?V0#Gk||X7LRy`k7&qaKi!&dMe4^5QcO9C~>7terrqjbnZKQrSqDDfZ&|*W+*-2 z&F_l}ClxDMyciWCx=J5gVNCuc+CNlqPrfrt>FA-c>{~Lt0{VJd%h_3ePyV4#nc-AU z_dN(!RDbbEqjLsvK%%$KNtOyjVO$wsphD6f{vKJ{Dij;(Xr{d#+QH7b0uw^UBcCHS z6sy@T;s&bx7Yt*a&+UAVM&h{=i=oWcY)qT4_>*Xg4+|Msr@#FesYgmih|Ci5&zYd8 zFeQ{=l+CjZ{`0evK>|L^HnSdbt%?hZKMKYj%Wc=vPbvIq~-z zYC$3F!hcVK&9EG+?&6b^`dY-{2`gn|c*eqRzWlU6d0axQrZB zPLE~fB_8onP(|*`^p9Pn9ou1WIl+?8sbjkB-$o{}2Sbg+h$Luh8P_&KkQ^UY6*E|6?cMQ^HMgC?8_`Rt|_Ezot@hiQ!&^=e-Os5|tN|9uOXq=__R}Z2$m#}}k zp7*~A9&}M}kyOvY(Ij(C{#ept82gXl^lim%^5^X7wzM z3~US4{(1={hW|*PIzhI#d8?G^s^uFoyp0*!(=J~%YqnX`mCg!`YBy<_67!EZ&+NJ< zBIS`Oz3R5V5jKyOAEum4wrU_->3Qqd)^DXKdu#^j$XD0C>+JqrX*AQ7`y{-F3kLPW z$lwhmwDOBi9#@S6S$kx=9w`RT93328U!1eAdEw0MeKRv;>Ql}zK>?oS)78k6O(3q9 zQnVjYkln%d*`dbt#_s4|>sy+KAf2t6Wg#DC#MPL3?OxLe=T zW$AMR?u&lp6W`|gI%rujX#W?I16KTcT{%rZA^h^;Ww=TDiSS)sZ*@#Wc=+!;+K<$5 zvhYFEN%qZM*9}G08L8w1O0P9)r~Xgd8VurCR|7qKM`ppd)G@hJhfZ8wZFPKFuJ9d> zbBC?3($LQp4_c+vIFxPP;#BYKXf&4ad-9Li4=I|M%<%1d#m!&lY!B>Hm>|7ggWb&g zY2b#vxhIE^q?{;~@F;)nG_07O&|3mEg(@j$Ffw-33SEIYf&V7p@fsUO*vDZv(Ue~M zIlRA$s1GGG8qfDdd-Wjvrh|opg95Q?@HX#OkhXlcF7ro{mZ4GU-G(FR)$&dhTLp6c z9gn2zg1Zr`=U3yjtv(*N3OHI5RhnU4puU!1KFEQ&fz7+`{sPct`E;q-KSHqR-O@OO zcf0=7bL@Bdysh@f`AjnAHL^q`J?H|PvvckN&-ublzUf?83b=5gTu8=LXu8wW-rl=q z)Y+cA&QXslQei0)2%3qZ;E_cF-j*`twy3io5gbY=eZ;pU7dGsr2eVOvGs2N!1_iV% zU;SU%U7alT34c(M-27O#VIfd7PR$X5OgFyexxBtBfwV~~KKZRv?z2ZCDum{=4a!++T*w2YX-KL{l zua%xl-8GT%$w_4VS71`VWKW$j&GY3v#EZ-9JgJ!cd&w7$4CVKV6A^2Uj`pKJty14> z$P{%E=FJc&KpYzj)EBL;Ax?4SQ_Y2w}2FE_%95a%1P59K~wzUxiefBn-rGYa3Qb}*eBAO1CXHVGmsVNweq zLcnp{7$MsC;O+woFlZ|+@O;;mN+^Nqe<^qqec=*ei%ZZY9!Mg0ss^3lv+1i13CaYkUW1I)TE4ewlA;=7 z{)?bf-VUaeZfnuigV`_7%!~0eZ?y@3I~j@$yuRr zmtDFthgSkmc*McN->()>--iacDA6i}Tj+QL;PZkn+kY;d$3V)On|d*(c-p(g{U%ks zF7W*{;eRn-NP$NiSNQt!cr#(pQm1D*pE)nsJ5K$fzC?%7Ut03Nzih}^F zSUUZdFxJr`rB)?78{8xFfvEl8voSVZIN-#dc^Q_A|CX37wP^)Kh_)6t-rzh*(e*>c$L{5(9gOTH>=800GqI%4Zj6zU8(l}`{C|4fmL0$CfKFDU9 zo{T97_&wjTc|g+mTe{nEOX0b-v-7Bum zs7M4Y)VYAigMuR=LCOy=0w={eKs)b`Np|f{Ou;nRj&K@2pu?SD=lh-W7!V|oMVXbV zLS}C*pk?=tX2Fs8Ar|eARY__0ANGs9HNrvjP3>hrU+RG$7B&+}D3N6khqvJqeM1Q) zjr<74R~hl4M4qgPfY=_mB@@SW|9Zn5E41Tr-j|q7aNyosPFNa~(>cfq{K-SaiP?iA zr=H{eV%HxBRX-QOI)>P6%#eXc=(bnAWQnIioS^u->9bRT^zcQ*XC zMWcsqJr&YX+3)xb;zZlC^B4E?KgCm1E@Te0j)csg;EfyA<|6SGB(6ipD zu^2i7$Hr0YpKYNB|H@9Zx|*ffKZDJ%tIQ+7Hd=qpv7mJO3O=tG@@NqJhUJsP;vwx^ zc`#g*ejA%g?kHB;zA_HMf$uX_n<-$KWy~D^_wh;~@63#f9+ScrAuyiDe}sdP2rHcv zD@2(D2Yx}rpSydfdGL0%i|wgE6k}ljig-%Rl^7u8vlm%#yR^-=A3c=@tQKKKIKBr* z{~fr!GbTh1;bKvWxY=cK`+-CnT;aPKKwy&I&5Cq!r;jNcZ;*axvmD*{V3+l z<$v3$jf3(eavl{z9^_M1ib9TmT7B8N&5IhBLspcFyIYfH&SG9G-FWiRCeLRZp!2;w z`M=hZB?H=$A_|8FMHH782Q zW+6(a{)BHg)vIE}kgCZoaB#Eb{CpZ*Q(BRvgWho8PWKJ7XxY5gV|5N@;P5c<3p>Wh z(N7~V>Z55lS$vdC131cvBLCF*1;prJC0jmoB+u>PD&TSMYW%ZC20QMx;M@tKn578V z=GbvG^l4Q9tk^_`U?=h9{qRBTP0>4kKucK^xufEQ?f)S1FrepAl4Pg{5H2u{j9CVp z6VAa8u(S6!JKjwrA5j2Bh-a7^-^q&5`SVe;b^rR-b-Uh-4M1sm?cV^dFJ*EApYerU zyAf+^hP?iI228kIKBZkwoEVrqtR-Qu4L9<7)Ke*5U$hWz4rM8BnV1&lvJ5(Rv|PQL zyZK{tH2LB0>2ay(Sj$o4$%7d;w*F1!lEc7EZutg+)`*MT+O;zO>fFrnKRB|35xhEh zLPnr$nml5HiFJUzyFDR>#@Kq43|LCw zkTx#WE8gGNy1&R=xn4aMDL@D;iB4TxZE&CGhnCd{T})CpprI4T?iWt7?Oc5nPHM+e$+3isIgnRXC zy70r_y&d*)TA*s30PGBhh(e*h7AZ$1MbYKp^W#sU&mC#-$U#!mGCx^Vo(@U=XPL*3 z5n|8SSGQ?WwyH1{-8y}ZCVP8&zqJiWf%i$97+^g8#O!oh>z=)zpGt&Eac1Fl1fFE` zz8;Zyu7_O417ftkX=a$8>~7w-&@{(6(Y}zP!6cO5IxkHVwnQKT74Y@vXZ00{QUh1) zW?2Q;QZ^P#dahA&{JJMNBIx^|6+i8l(E#Vyx_-Vat|qiY$8DJ4l?w+>{k-ps8j#_*_vP0jUv;)MPDER0`{ zN@A28pCoOg6!IEH9toRIQuD`8cmh~?a~OJ)8JqpCe~%>=^>lyX8Jlw`kg~Hj6STWN zNaL_VAOv$Ey3n`wcab#82CH7r`FelYmltUN5h=VWt4X6_ENP4BR= zatJO&z2bH5XVuSmnaMeTb|XZevnSSuC8NVhVouk22(M-G_EPY~^?5K<*8iv;6-Zqx zptrhBHt}-aV_D0LzWT|h7TT0ANrw1WK&m(i&ezDJKadSAv#U0nckQRs#3jY({+1P75o3^`T#-n74(VbT@u& zVZ<=c99vo2TUl7f%W~?Mq)}TV(3&qpShhcL;B;6I6D#RXqslyfV?R2s+WLw+=CAYz>nbqg;z3;&nB;u3Y9Thye{7YE+pze!qBXG-IM8w%x zW4LHNN$q2mbb(g^Fd3U~gOE`R7JGH&rL|8mN zfNtn3kV@e8t?ASR;x4#a|6-90&iO)o4_2$%$&2&JbSHYJ!`GK4d@zc zp#7RM+cB*WC8Ij4;IiKZS|nF~u~r@4GQ2qmLW4_5O7~OmPqK7kjwiV;Li^y(K_23m zEt?kWVuCEAh6v>)weoY5A3rpxgC}&{HuSaaWg@%oSl5|tg6>|f7TdX5T5_ufkxLXY`d~f-Nvy>Rd#9`sMYw|Pu5Q@9zUYt z`m(S@Og6-S*R+7=72BFsj>rO(~cX~#pl(;4QtsR?oUk(m5 z(0-V8^R03JQ`kuz&NFh|^P9Y1rvaIz{k|4bQNFKjyQV3snkp>2Lwha+FHHTV!SaekJ)p=#-WGz^chhtcEyL*wY@rE2HaOIS|EC4tx5!-U8RZ9e*?a#QW%`iqiSn!uVd zDg>L66;bfV4lqGjJN%^sjFdPOaT|BuVReY%PiMeNjf;WFc&ZGybAU0x;^AK%VD!{{ z@n^i5!S26t7wSgJ+!%zGcBK2BqhN5yX(Sm*!Ur8-QsPrViY2>&=sAj|W8M}Szs~it zSVS$DGt0Bq*9aC~ycarae*1WmIBjA5kyn7MARhOeSc|esgzPfRecX^8uILEk5YgX| zU_rebmbO#w`?);n2&GaUNC89n7`>>4^?sF{^XSiY3FFZwuS*q(VNe4*Ga_{Oueyc} zpTo->VVr`Lt?|5f3nYYq!Ec+=lQ?doP00_MyLg`mcX(|^Tz0&W{i@xkK01Gu6)5PZ z7U!?88mbXH9t?0&Cm0>`?1-Mmz`^r+x(U*QzPZGh5jx|dwH*H;<`pFwpAHgOT=dvz*prH~G8d?si-j8eU zLzFr#7MTmG_&@v98p>|wB*dCkJI(5~;de2=G*hE-;EnHv{JPy!RWd$Yiudf#*S@Zo zSVPk#bpF2n-|E1~ZB(RN9?rxQ`zbF^>U@I}{6~-B&=x;50+iHB;;q!YiGCS{8+K}> z<+0xhU1eEaJvSc}nSsCk+VJH#=c*Gbp>Uw#%aGE;>7gSh;o8nH0rbaZL{@*{G0re0 z$;bvz7Jl;B3Cj?+xodOg!P3pmLo$fSs{&4!x`aCYhrR6_Ru;u4Y9)8rWp&@{2aZB! z{Ymgj+9|O=#yIi8pSr-FGQFe%%(|6hAJm%3m}JJAdQL5gH`lRHXpoeFFjmKP+v2(t zB!ug^z^G9SjNx7`u$M4?c!LW}no4tK(U4}rVP=lw)@qdY719G6ujU?q#ox=*kqQ3P z754lc`*~=V8%5-f+aqJ)l$|J*9Tjawll-Vi8x4%2K>7{6$RQHPw;5tXV)t8w;Rrpe zy_huBCGQ{mY`P3+uYTOVQ zY&(1Ea3ji@I?3s0@=c~-$Ri@OMpVE91M%)O6v|;rsJ7)GB#%_Z8u8d;q0GcVhYP;y z-9k={IS0O~?enYk#X6l2oI)Pen%-(GAKtF=h)n&eDPWG~Sp?m}JB(TR&U5djJWK6v z>~4KlcWz!yGdl>to!nq_1kQwMY33@_=zr2*qH2cP0lg1;h|4utIYvy3@?DRA}EeZbK z9VYg?DwwL@co>jkrkUBXW&R_mWP*jq2z(ADv~HfZdf%+~s;vmo{4cK5!wx>=4x^zn zzuHYoX}#YlU|dsQ2z?4TogDFYHVE4F7wpul|CkSh<9NU*1Ru=yppMe(+OwNj^wWKp zll2{@P#0S|@+r|;r*7}2n)~L;cTrO{`ivKOmNb4oHN_K?I_ZRP0}q%1%G5Bt-UG%7 zlY?)2z=WQooudNJiv>g>DZrDk52HD7QRZ5D11aTMdv<|w@T@r1qqAm*(BV!{1g_)> z6UFYKAq9q}1eE}%BKS8?7%2nEhjrjb=ZXkgt|=%1na=E&`yS|};Z4iSPo6RSZGxsr zGQ7_dM#=9AuNN?wHl#dqY_LljpRqdj>cewdRboH>CgKm>-CbhOLEXkV(hOd`MvBv~ zspUO50ND=wsTb@iIB0^*Mpxnhfa%Y}&@mFvdOOa#HV#$N1uh6VMZ-Nofi%na0fq_>#{Xwpw z^Z9T+h#s)(_hBtgcH@4O78B3i9-KIo3v5+COLF>4d%)Vp!dG2=Zbjte$45zzfBgl6 z98j*A+juYbF|5Gueb%HBqrvG~o!NXRe9j9d4boaiLzeVu1lHA;8LRq>3j4W-AW=Ad z_utuXVoSP@WMr}F6_O)8d4v+30uu-ZV=Ta3_R0-)B zx!Ks4&&9oJ`Q5{cD?=E%lafjKlE2`&V&NSPnt;pEXWo$U)pV&ca+%aBfB3CIZWFNz z%S;@If86~~-gfT#2GzPn=;0L3&@qfUyNnMXsWoqEMtBCGZX-s@#);-0w-FyM6jm7t zkE&NevC8JPi?!vhoa}zk#|{-on5f|h2%WvJjU@Otb0JBv6%fby z@qdi})*&7eqpiINA?YMSC#!dJ&-}`u3o|3sH&_}O6`hm51P1yr^D59RH2aSUNc`s) zSA_WRmdx~0w>yDjmOp%&L9_|kK5rdpNVyZBd9~dSX6_K#&bRK&Wb7|4=3wKMihKsP zC}~U_b97QTBwT?8hJq5jHgz(OfE~ek2J!_W3fqB(JHMP1v@tM?*L!ARzUfy3B^$?2 z847M&g!&IhFd?xp!5s@AZTSAYu2?X|-`MV$%qs`z7?Cn7gT&WIP(`;UqO=&#kPd%D> zn%mjxOY(*D3$(+cNT;0(GOC;Q23HksgDW5NH}uGYTtvhMpRA#<_h6I0+43A$0K^&G z59ahcyV{xzZ)qLwY7G<<*z4M(`*Ucb7n;2<-{ck`_0?!bZm&1LLP^Y(Ulof6Z~DZJ z??8+XQOww0>yDY8OFpZD5%=oX|2t7Xqe?+gx(`2;G~v^U^Iq^-o;)=47M(;{cClm? zbUi3CllQX8-IcaK8} z30?2oF&QAUE)+!yO^fQDptX9N$F~XZ78E;Bo=#y^yYyBZmM3T%L`l7kZdx~K9uDG8 z-q~GIIeskh(H#TvhQgK!?T72lO`{;De->}!8OBMd#}UE{*UM}VG@uA(bw=IU`ATGJ=kP4p)*h_c2yU$QU{ z6FyKUwNzy3{^(~774Qha82dlRIOHlblv>&{kZmCxyYf@W|2>mK(#;Rwx?3v9FD5U) z80h%i&+ktJjNbSdGe9q3?z}giw&j5#Dn0ur9)Y5ky?{~S3!@sWUEi`=tyZtAARXHq+e_OUMsK1L>0qy2Heg12| z@n3Jx$t#|e>~<9N3}|4JUd|+8&3XKW00@9M>G=SDKE{{p-Li&S4Xm0X#&A?~^bm91 zzS6k|Vw{pc{LN|CF^`kcQr?{$pz9@O?1^h#Zv5Dx-z-_z>Xh>!^ubJae!l=(AhN8i z^wH+;z9Zz+aS!Kyfbp2|V;HqU8W(=$$rr5IUuR^ZLiNGlceFSV%T!-geB+xeL8r<< z@SJv`?&U14SWD~agEzl(saRPZ3Bte%u)Dn=!{Y|1prpNp_uZW_lsC`Jsjpl-g{JH- z;{JCA7xHttnp7Emc)c-~F_`?Gw<*X{yi7sgW0dJaYIPe!JDdugECZ3KK zzi0IaM+$~A&p)$?wR|exj*e7KTnqkQ?;=AH@{JjaE{`udvD_S|o$rJCmkg==J>R$I zNrJBmEFUv+Zy8t7eI#lOOv>clPQm{5^=GGwExdT7-}XQ4 zwj9YgE{_)ed$fccUcVJu-PbQ&efB!n2H|x;878i&@4%LWqpdCjDob5QQklOB)K314u$YO znOzEF(A$Waz@k7_*6&u)6j>O+BOJH{i$G0zW>I|K`1a%>AM)=ZPjkLVy;s04D>`9T zROLN_7OU>77?Ueb`}=nx1tPT({EU{Pb2b$-z!vNUQNosPTOSbo7ZX;+QG|xGNyb%D z?B1tZ$I2@bvYQu~EKq@AP7eMwpVKu6Cao&s2+lt^>*9K=Bbvu9NbxhuK+W=n+g~a2 zwqG5xgN;zhKncz}Jnq+D1caJrY7k%WJymy6=?gvjl$3qVw7HSPi2~a1%cn`i>&S`) zs(WK#+;hD_7(Fqk1Ws;ln5v3SnfY>}A4hm`qQ8zrzANvjw&*1U0@lDEihtx}UbO`F zt!sZASMcP8I9r}g0T5tbjKTYJthea0lQ!ll5&ig!q>+(vI%WOaV9)z;0@06(uY}G} zmsW`|^a2h}O7lT?jEip6LJ_R#s^y{#uYh5A>MOr>Rt|t$D}ifLU?$HeD1Xb%#hghc zzDqe73oyZC5CwjY$%C=v)OauP|6aQnSbX_Hw@+#Z*J84KY|K@P87zs|lTZ;lE4kix ztW&=MXJXf@A5!HHl{JlEy5yVe$GP{PFXmT8JUdMfN9DeGQ=2;vr(CwD%!s`A&5nlH z+w_Ncld4Kh+#kI0;48(0c(uv{6r3nt$luQjklHoV)uoE9J4B#Jzf0O0zoJ9xhnB>ll!=faGtr z(EZIPdUK93OmkPi^oPUMnkk-!HNOg1m4v^sX!v%~qGHt|0@_1mrd6>rdqTnP!eMhI zcaUtCO)azeA2C#TB&5TKHS~pdw$*;O^1Sxh$;gEMRc3h=Ok1fsL( z1{h?X(bsP9?Tg}=MtC{x{m6;NWX$JO1HW*Zzx8t1Em(AO*Gcs*E zShC*bzR^GN<6nOw=^L;s)?)L{JUf{Hm4wD*_@6nXxyi`L9g}EkK(AepYM|pqF7qGk zVX}h_*hcPRLm)>9MIPitE1pKly}%ui@wF-*+=$^1q!UWxB>{dck1{%(u??dDOdNWu z*fmA_l?L@k$BQG49!B_pPRquip{VmRZ$A4vMjKQi9IA~dxRc&RJ^<8fm@8rhojRMt zuBuNB9WVDDRe#dm7CYznEIawZxomFPuk-0I#&b~E%o9*Ym z{U3yRTBw3qdj`#mvNHBPI#jmF2}zuk(Bs0E?#br{uK@lsp0danKG~Yfutx!q3Z(bj z_vfwF>CH)AJz6`A4DV>XA;GyyI0za!HPCoHcF5D(rSrSnm>U_QfvBJNyIR!IUwEIP z-UZSEN6=Y-;$1DIB+fM=_a-w97L+l6zl&{4k%BeJT$G6X&en&#dAeBT(Y^G7Uh_Xb znwzWW%rR0bOY#JvVX8@Txdk&p&1oK{5C-P2RNH`o(&n#VnZrRf!{2{y(O>eBvHv;b zaD1j3(aEW0{HHsLYSy_dQ{{G}L^4Vx19V;7GP$1U%;2=N(#XpyAHfFXz9M8<9GvOC zn0odnnFm^(S~RT1yuZg@B-;?XsYVB=7&}Gg6Cb<7;)I@aaX;kGe~z&l7uv+%EeGsw z{S{}_K2Prx@~Ijj=|~sP9E(meAq!KciYH4lty$|6$kpU5`M9`?da=dzarf{O7|B)R z%S&&$)5sv!O>~nd{q(Nq*er!zNmvdSY7Zc}X+xSbDTlF$J4cUYXKQN4aW~zzd~&QU zEPESmTDpp-wgX!_AX^B!TBCQO5Vq>&BvcQ55`4lQ-y5Gp1+hcA*tKl!O@@!#S)!w{ zDv_I8Gs%i?m!0gz-t{m?C#|7@2K~`m?i#tupP|ydm0ESGmyfa)jc?bP)0#2ci;&;o z3;co!sbQs0Uf1}Z&Ghw!l@pD)LzCXf`t!+Tb}AsV8~k?(u6 z88;5O0e;(TyE!xFHE;aKTj7wT!2WJULniaQ@nEM)Pa$bO z`Rp|R+-XM=Y?kqN*>^a3D2_C!uoAC&(#H+nUGu#mB7@eiNdL6Et?Ro?i*&y|z*yYa zDE6%y`C~+6A3_&!VJ`149iARNTcxh%|;&>_p=8ua$oZm8Y}lo0Uw z&>f1nN{4|!^TpRevmeLtLfmhO`i?Q^et^C9H@ z3{#|gnz6n+>-=_J10NOuAluJHdz3{l*>E>ShI?>hbyS(8Spu|lrO`5p3n9PRR^gm2 zdPmUyb#*!#-_|U?J?oeJLSqHndH0q;ogjxr81 zh@Fqzgn7v%LL~36sEefWk5+SOx_~U0YObc$yM)X3D1zdlCX;cx;#^*-F@6kH9Xb%I zF@}oIN=8J`U~CzBUtn_LRORfhIMTPva!o^7h+JOM4Y7H>e}e~~zHe}Ll&DgXTYiZw z#rwnkV&Yk8Zon`!e^{O0)VcW{)M@%4Y#kEP+J|RT%H-BJqoKOIQuZWLH zdp0weDH(VFl}2=M2*QYMNjhKHwlH=0llc0YW_AaaNVix4GbiOyX2TfwSuxGit^ zsKi47g^$^XN+$8v9!>BS0j5sE*#FhzkwTrv5>AIG&PE4L)a^X%0L03^@mtW>Koxlj z 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

    !;vn(3 z1~i)GUof>-M@soV9uO<*>YTJ7F=J_)K+(0q%4@B>zqQ_#y9OdY%KR~pTn1;uzZ?V3 z^LK|)B7Ky7M`}!>_fy%Zpj!b++wX%tAx_iZZgAG&<{qgWA#gRuk{n+8L2lYLJ){q-F_wX(MOc_CGsl`X z&ZtMyb1czOD64mwiM+rqgoPZ89yrNnnb{5STJB#{XV2C@CBrcclh!OkP%=_6@W@oVC^gHDQXUaG3?xOmEsACJWFBslb z+Ov6SMGg)uXgoy- zFyoAD+A*Y-T9S2HPts@GayWYRk~FfMIx zPp@xUbK4pCE;hB8{y){BCM_o?AGOZQ(=8?0(Q=^)?be24UTJD+b4OI6aw8A+&feHP zjRsxZzgNWj$?)(^DM*z@GlCeJG;K~CDJt>y_;rzzOVWQ)Sp$R49CoPFvFV_lps=uF zlh>qIE;3VeTB`-V!CS~3>a%QQ0Q}bxpWDEvzS%zzG_CFQ)fHUDdvI;Tt+2lkgLlzH~I>fN> z&3wcJpS&*2Nb2WZ^JQ`8@3(k-@FBdrVLLlJ648vZMllk3C~_vLPf|`|Z>Dt8v?~8S zQV;n1=(;@6{i1@J%~#!cvnTNyeZje4?bcn3FK#u7{eu0J!XQkA0uCe1KSwi!^OQG_^wptC{dgAs z-Y`MgHUbpYezL!34^!tOl_>eX-2v?5t9O4_a0t0Z#?Q<8o(d9{y6B)$>tKg>b#>Vb zD-5mRJd76>RfHR9YHBVnwq-5NHn@FQ_VDsriPv~A&M{q&*)A*QX>6bWzRQj6{2&Gi zs9LuXl$J$AVkUtGMxI7rr9pZ=aQP2E`Bg?Z=IemW>h`W7sbSxK!`&8HU`DxR^Flxe zTZ~J!Qf_3X**9tV^13vndRv=WbqBvR)zo>+EE)S<_}PWjaKb8I6uNzJ(E{A}Mjdx$ z^~-Q;Ux$qjywtkKsO3(Z-3J!{kSAk2SGzB6rEh+9Ey_;Jxxmh(S8f*NHSgX1euu#c zO#CBbszix=%K9u@m6Rn4eAi1LPcFrN{)YP5M=FoC zBVtn*M7b!yL_Zs8&z)?a)op7v4#3K4l?_4;J6~R0TnttdZ56WPYR%PC93Svk7H8)!ME06$O4gTTuH`B~f^)AFC zb*!jiC~pV7C@m)J`Qb_-fQbDp!2jmnXQA)!*>{(uArz~$kQTxxL8G6aNdUh}qidA* zVGu@Hcze$s3q?3*N)=M5`)YWV)opjEsjr&ZuscY z{Zup!<6E$P@EVXhOc?`YQF+3n$4K5)?p}?&HGxEg%$k0`#yrZQSL5chjpA5&%o6#R zYg0vgvz7LwpeJSt*UX7o@r2>3&XiPyAAGb}fBlLsUPx$U8(k>~1w9^*Whv2*kjFQh z)+Q~`8cre)9>Q}=e|}u!p4W49L*Gt$Mxz2Bkr7pFi3ajfBd^g?%c%G-7>VR0bN5yC z0DZDD4J-V(P@<4Aj5>Q!8U?j!ixVs-O>pcLEbfsUWXWgebr0$7r+X2a;^MJRJ;!IG z?bR63ciYEAkUzBnnmsWI-dnG}xXjrGd?(cb&tC9J4v+j5*7tw(g>we~8jj2ZwV zA)0^**Ul)43>Y)Up7c!~LGSDXhP~SH2$g>G`vTs5?K^f^(oqXrtpm=&sj&|sGeiY7HH8PQXqmb!0 zf-9#;2`8B+4B+=7Do^BI=z4acOegt(iAN~pHycuBIqS0P?ZonR1$H$6+ph>;ZWetC z*YfUFyVmjUeGcdIzIUHqJ-|c!^$3AWyppS7D(h#~tgf}kTC4%b`pn#M*gt8HA&`Ce znGK}%{2WwolDU}zc(=7FhhF=rfz5UeF6gfld@tkwkiS#YHY$mQyK4Ba4635ltc=l9 z;-Fb3IvP4yLOwDB?Vkce0_`Zj3mD0lqNG~`0UDVjG36Bid3 z?zumIHPq9idY_zvJt|ccsr&=$y(bCj73~JFXH8Sz&!UIoIBIU5@>*U*PKIFYg$bS< zTQW|~64rkjXlRh+HD~txn3a!F7xu8?L(-%~#b>?noIn99LvK)7MxzAj!ur^g9_@ti zk~Qw18XRkr@rdTte=}h+6~Ufs1501MZ-q7+BTc=&T<|}MB-d3}@{#`9jjK=)7lyf| zEEhn)iPo}*J&W;UdOo`8=(F{K__GM2hrKLhli^LOG5kv3jte0loRV@|=4e2~qrc1) zer{6+_^s--U}hBi>7jT1-qnBY3Um;^myzuTJLH1Lr@Do$(-RMkVnK!kfNlJ;QmDfB22xOjZ8)KP?9h zJ_8d|6zMsLbU%YCs>t|Z=T2MvLeL6mgjMCMYdyC0FsIJg2LbuBv3SX;%LU}vV{L2* z4gpyRS(~+Gs>Q#oDlqGSyvROayP?Yp0Qn!cZC*Bo>F{J_Je>q*2&t4diepA*RQ?lX%A=JO?F2D|EYvq#cx-b3r%~0jb zoLrX0<^yryNZkGEWOAjCr#xi;(&A&zi~HbDpb$QL(EcSWJH<`9R|hiW(JQTI{_dWh z?PvbyEipfSC<}IF==WrmZ5JUw5SFb3Ns?Ti?RRSkd=JTKW80ZQlAq1GY2P((+3#>o ze`-Ye2>6^S()F#r{ws=gsga-V)%`4CzLY`k%y%$-GjC2QDJey}zPBn_o0f_5QNHEV zZcLTDDD&B>jU#pBw+&*|=rzFzmR*UFapM4{Q)aPx*;@3s5Mxc)mg>DR{Io|w! z;^Jk?R<|%qz7A2@_Hr+GR%aL~!_dM4%Zypg^=P+B>C%PB_cF%rdk*{cwrcH&3vp3V z+ypuXhK_ zR29&KIk}X9kO9rX#e=vG37_M;^T3?PxncBKi*T3AT+QUNt?${((E=?;+3PI$#pdjm zEE%{rfY$o%RX6I7581JF<}&Xj@#g7yR@799M8LpXG`$?SUig6&Zj}Kp^2d zIszO%mhS|+4hnf3!_*Na?nfc_&eVet_29t+GIo~kXr>NQ@mUDPq67vfvuh-9ohg<>}JMPsGdD zKUvM2Z{xhj(lIgp2#aFyz9b`k$dAT-LZouG)7C}G@D6BA_8mbmU>pqsAHV1ec(9z9$a>-8g+9-ggsZVE3fyZ zaCqBI8uu0ZFfbAh{0oJfbP}!-ywYjmS)zho5ZnrwnlfyLZ^Uk4rE8rDgoXzh!y~x^ zB%^))NRg3K<&Vi1^>9<*_EOy1r3&<8c_jB9vT*dmEE70XPDFY#V;_a&hy^F7Npt(& zy|YQ`6}%|)n>rI#Ancz!joklxt-a{-iJP;R|{SL4g!D<`QUm4Od%FZ`Q zTBCPoD%L}3A%{&f!%*1Mw;CIJW?`dWp5&YXxn>y5x_meIiDz3oxKI}+g1P>rrQ^-f zjqhJ+1&|nF&o>KXUtYlIg174p=9xnF=bC86ofo3x)favY43PNv_`JB}~GY0U39-#RV zc!C_GP8#oJZOFQ}fr-hBtGu&Zvw@!(9jRgtiISO86{jGERAb4?tI2vUEJir<=DOB<5LUl_0{=7 zxctYmGX7h85+q+9VN+8x+d(jh@Uw;8#}SlxUsq@gOMv1Q=@z#m9@@bqa5v1q)7Sag z!H)58=H{5{+?-+iI85V3k%IC_3aN*8k4gl7J-UFIr?D(bXvyIS3J%2}05_N<(3TVU zjm2Ua{fc^Ku9N4*4_pP`#GnVmS`_%<_@7u7&6(t*jhz}ezg^mB)*w+he6wDM*Nb;! z?m$A2woW=fX40BCp2M^AxaeA9o-Gj=@aPyv1CbY&ADn%_EW>ygJt=FJdfzznJROFc z=pbv81P<-E?M`L+pXIewVxy53fCksak3Pja24Cr+AvKLYnVfASy|rUxD&z`yD7?dX zCl5w~vIiPHF6eQ_i)EWOFZmb&uHC2aVp|9VsLlJH6U)23+zuvkR9=+U*Dxj~-;z~b zuwL5?pS%vBL)HGl64ky(2THK!X3#nolO#mEe@4k-;azq6^Pn7 z^weLlJGA5Y0?+AUG3q?$0B82sin&w2d9w}aDx2sgLGmQxlN=JUNf zn@y@8Lz*Ng3T$o0B<3ovZ1&dm3ia0*JFQR=ox%{gBd8-iQSUggohT$Yx#q9%;C*bx z%Ad4D46y*XxX03x0!+?b_pU!*j&$7`D~z?#p8SpK{di9&$HBv0gitcmO3L+4iV%KQ zJox4^ww{_qz=j($8Kl%*+(`B

      xHUe% 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 delta 137814 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

      wsUfd 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 ->7BA$Yz=7 zU6{oUH3aItS}jFs-we9^sSl$1rP7cr#d|)a7fBY;&ae}6A3k{CgilVR$ck5+-c0#V z&&wSd+NGH?(x()WW{w~pP~~S7ka`n~SUZ>y3FrSgPkf)SJ9N5eqWTn{BslCMxAaR{ zALKxu3CKRibE4!cec79{^rCmVX8UN56!2^RiZRKeCq6M|%qhqcUrW1%Q5{?wNM7Ny zQG$!+wUmVV1BGtElbp|Y7T;6ZYWr-eZ0hE>e1VlJM)MJB*S|MoFmlh)N_fZ(lNWRg z`nzW7r6z~TQ;Btmm5jbFtD+8f)lYZ$toI6G0dZ%apFTq{g>nVz z9YL`~dxC^L96aLZL~+dy)2RHdT7MPeB4*I9AkIX{gr?Zx>LJP~!|)i|H605~jd;Yk zq$*^{fBL13E%yg_h}$5wvYj8SX+#m(z5YtU#o>pi1R)o*E2=Sh`WNO3>%`VXU-Ir+ zfaH~m`Os6;GAwdzy|PpkeY4%nc$<%(f&ue1k@((PNi+_c?1uB+l36pqhf$P97?@u% zHb6m=c#Qv;A2WofRJ8Dduc7BWog9nr(LMhjB<3=-WXxHeC?Y)@L}i+sPM-==Al*<- zT=?B>Lk}7yBuT->$aSjD3+_~zlq=!~F1cje&X({ZC)N`&ONu*5_Vmrk=SmU=l#ICU z^mi>*Kj5j*C>qnRJXW0(WiJGkCUU;h6DpeQ1+n_eHP0smHvUd4UhOq^IAX;FH+GU5 zgM_0Hke=vAN1V9-%T33t0Qy7C}QOaO#acbH|i+J@d9h4^Z+3cI;mW%rbNn!^eBkxOHz3R}r568cTaI4N7qjQ*`#w6Ej z^h%deJ>nj4`%n%L?_km$@j4apsl4PwF9q>(NO6BIRkK8-vMEa5<=dT>Hr+ZS{rqNU z0{0z<;ug@yIdx7s<*D}DB+?VNOPTXDgQaeZffp|u(k>PL0*H9M?2r!lt)*-jPF$Z%7TUi01jm-)|X zH$letWCYJ&m=+U)%YQrmJ+r8(CvhY05Xql?7RW9mMyMHry3t2(eP#h4L9Lz?K@yBcf_o?>Ivs# zHm|To3qgRf#xOc$r)APg_G@atyU=(&Gh_HJ$rUK&7Yxu=QlH?P`s4egKpY8f9fuG^0$?&2TE3#B^>%cas#@zZ-!Cc~kx)J)lJzU(+24Lw6|A zo9Ah+H8Ds6V|U;GC~FRN9rV{;UGEB~QyA}O> z`e}b%(I^l*y1$|-z6Tj%BaxyCVSOXeY;3NbV*JT3$fNN2z{cRD5!r1rGLi#=Kmq)G z{iO@=C+^3wL8MfeEn#uVncZkIHqB-skl=!ZRL#XgFt~NNXNUMeKPK(_d5D1)y8^Vz zbN_5%LoZz~WNnSTWM&GLxCb7Cg3`|f^`T&`J{cK2N{gCM)WY8V^-R&U0?K$Kqj)aG z#p7rKg3_VVzf29K%QkYOYnM&5^beb1+in0t0wT++MC&H2oC0iJaGA6QLJ|IPQQ-QQ z9$cikL?~Vh3?~QjkIkdhjp6KzLqjA1^?^@jP$eL68K3hXnWF z9wZRl-CYC0-JQiHxQF2G?s^b{TOhbQ!QBt;z0bGmSM^q1)&8@4)7!J%Gu`uaKT>ty zpQBd_XUKQFen4+TzJI+`=(kZN6VI;}D?)k}W$QgKY(RS)g*6-KlUII65TT2m6Nw|3 zWIU(elNgbA4OJykxdVoanjM8X#djz|^Lor?203J|k`gyss(BpQmFdz+KfQYSsDdPl z2R%ictbNUiARD=YV`$oDh()z_Bszt%P@pfpBoZtmyU<7^sf6EHO#XXz3S+B-O`Aj} zn0FC08^ee2r|!Ecr=Y4FD0fzy#^E&=h@3XlEze&pH^t8i%nCgJy3|E$V?HNnhFa0o zLO>f#`kAH)4eOIB-1A2U*_e%emo|L!QNSB%m)N&IhehW?(0rN-%V6A^1 z)nglN-}-gNGgMMgpIWXes5j@|y14r;)1l(8?GM0{&UyqSE%_@y7VjtP+oxHuOu(l| zL0TI<&Wiw2KILCob9}VJKf4ai0p$%H6Fnq5QwMBuB4s(9r(saPBqtKCIj`EiQtpbU z9ISAm)2h;q()&y!(nIlA;-mDr(R9VFjr%!hUT8eeIQq3al!jEE6_NEzLm-il+HT>) z5TD+EWEn@~_r_Mj-<$6nl)pX`D|BcTG3?%PF=n*l2JVB|sbj6CM zNWmoi9m7al8^5)Y%;H`)MEWj_Kl z#>foll6^Zu$N!52YEeSy5UZ0v8LO5huO$o+a-Wn!rB2mbKQJwb?VVk2_z%t_smpdG zce3x4n)?YyA@d~?&FdExNMxCJXb0HYr+km%_78z3O9y7fTO6RU|Am)k?upUZc%o32 z()zA59V9z57YhO`b;o9xN&qOI3a3dAv@8^aX@K zGyq*GiiIXp(+@Fjl#o4?lwjWUuS-Yd=88+pRu*QqCr7m(xkWzVCbNk#^1q+_#6T+G zn?8hx(;b5aK32RE0$u=LsW$Hv2%9U@jvR4Mu;|UE-wKF$9j!-mfC;9l15R5$tG!o} zmv22&l|TquxCj6_n%udCKdsk30jN-QQHh;V{hUhL4L04B!pazju{GT?Q+34ZQ{No) zlUZ6i|AfA+$siYBcI%A@$5-_h63Af-N?#gNw0Bir5|19H2!NSg+A|Zd``xDiQR!e` zqDYNX(l@&w3>kL`J`O1vRwtTU$sI=tzb-rdFiRHo^E-AFgpERFTT18?`pYKWH`RAo zOS1Q6_n{$vhV+M+m)m%GHJ8XB2Xgf|*+*H{!|{M3-+|#QSus~#k6UEW?HSo1RF+B# zJ0P{s_~x?j#1p`J1?s5noD0gBLIDkpeJ-_3IT3zFP+okcxnacqjRQp0^vS@$W`~XL zo*YxopK=6jh*0|~H;wGt{*U5_5LS^?bw~9P;=Z{BJ3oIEoDz>|RowO~48 zzG+?MPg`A5>3ez7Z1yA{d9P& z$`VZ(;Wjx+zVj{yB~E3SK9puj5Bgp}>3zOb)@KMK^obSt{Q5lQO@Ns)Ju+d#1^t0h z<@zH2Cw(~~1f>8!P# z_rFpU_WmM+D$Oh!)^v&B|qx_lDuTwP`R#=M#j?}wsKg1Q6e(hazQfa4%Ja%nlgoPZd@YaPFdUvusf6A3Y>;842mjBsd;TdAdI*I}Q(reEsm1 z?WiYl05y1QN|zqa5hGI2IL;=-PB~cn06dWq>&n*tl>5LXaD-~du|XO52O&UR?=9vq zy$21WQ6y7`f+Ny+;WQRofme{azu%g&cQtuZp^g0AfXId2qB<&AlO~{y%HucfD$i8c zv(576MOs1pXs*@~Rh#xFrQc2*d&@?cANcIYPQb$NpBZW@tVqv0dJ*b8Mdkc|U zV^4Jx(=!?v#%>HM!R8ZtTqy>MYch^YdOh#Jh<`qb~CL{gev8N3V zVd3}2gB!|f?78axw`MFfx+69QAg{$`K9;N!@z`RHyeA%0nfRTYG8k#MZwefMU#_V+*J_?)wp4g3A6WC1AQ5lsC=0Mv0tt>Lq=XWD^tu2y%MhxV_E`cJw z0Ml{_$Jdy-3+2vhp)WkwFE#U)!Tj>jsV^dju9-3i9C-h>hkL4ymsl%e6yvC**tLm-s zjbURJ=fcWs*P$`R7d48Od%CP=Gs(!N;TB%!^6b#>zkS zJYtAy$l(6tNoEWDb+>R%VA7+m=aWuEGXtUaWucQw5Ul=PG1NSv)yG-xDIP;kx=9%M zmD0q4HH*LC-xu%Z3bwpM;9MRHdauQ;8`dx(DB6F`pAh>_zp+ObMVOVF=Z7iQF+ALk zw$g2;*T+L8mkj)4l_C`QA=Oqw0Al#aJQ>~Wb%%wVMz#Q;2aS6Dxy(5lfRI7bghdX* zj4(clvr&w&1c_B)Ea9|0)EzCba|ByzTi7`nT^nO(C$uJC`YI{6xgDlKw3}$GLlV}> zA&kWK+$(Za&KDJQKU!sm(|Gz=Sr1gOz6wi?*;N+XmwxMjqEI432RL+2!`(&?V&5ay z*3Jcs_|XBOuQbkKI!9Lnpk;Vq9>9&k#3fAh5%z~C8RmXJieQA6 zKt{d${h|v+=L@7B%Z2Fu(^S7l?+P>_6x$_ZNu8c+*%A8gT^oM~`cA#9-dS{=Ki(l8 zI7IU%WQ*d=M$S*2o_(DXQDw|Q@3UxFd(xnGH73wD9GFpi|I&;7Lq_%ZDZf!z6kUlo z;OXqoJqntmXUT&5O!QI_ivb(CDGN_aEud4f9C^J%C+`}Ndq!dV1u?5xnq++nq$4lj zcSK>JyM(YjiQSTw&xSShZLow^GK-Ig2(-{a{we))PGy|>w5&#peJ(2H{FD)D6))BmA0X5Jcm$zD@hVK>1?QT0_ru5{N~<2tFoSo`>n&6Vs|bx~-Me4is6>Z( zYo#_emdN|*UL#;!2gsjpZdngF-iQAM1t+z9nP6bnDE2O3985u?mjpINsJpnTRoU1t zS?p2Tj^7*C@lh7%@gR!wfSm~P$fXvrj+et35mY5|1NBiH7E!8#FqCDwQ4IP2s*b^!*p+ zxc*YT`}{w0NXs{+Xmw!v789?O49$|?bvyizr5vWD?b_-&vcreTJWyd+!|wts$+R;&G9a%IJ5m9X0s9Jf<0u z^;O21g|)+{F?PBk^yvT&^zu2s_PWkmP~xM&C#_QAIkPz@DFQmKeAL6J-yk}9mE1cX z!;8D#Bo-)4+8k=lDLxeXKlpfr^ZN49v@QabE^R~n7eRz;Z<3Bs>j?rj^QWf^s2C-P zk@pQYS?@fmp@3&3SGIaTu?T{X9L||2jL02!7gC8`YjxP)qZH-M1`l;&EnvX1H% z+h4x7g{fL+ zpQ(TvSy7u2t(r%rW^LVNodJEPFel-Zwq$MKjVYOnP=N+RqhxwWn4m=O(B8C3oDki0 zzc2;IsN+Kmqeam5l*!`o{IqOaNU_Q+Ro)$g)~>B~3i-sHi|cjK~Zs zGGY|#TyJpPX{SLdPaD}{K_d&&Tvj`u)kM2X0$gP2*h9+vwwqFE&^A7U2BAKL0poc> zpe61%;!RsV)iNU7qXeZry3NsZm%5|C7k_VeH-EEl+rmZc#nX%(pzDUV3KAGYeN3J0Ext+t*h0!9FN@kdRkXm0MGU(5SSNxe7WSbQ7R1K7&*j=35=+MF3p?~4^0xgbr zixxS|&{#*5wH)@fguEK#%{*>ak12N%t5*`ixx)G=94c}6>(Kzcd!M0hF%#gB-ac&P zx^?!;C?J;%ZaRC<8AwP|*$9;zLt=O`=xauq#NwbLN^{|4<8SyWPW#^%NnsQJn@~Jx zEOr#{E$s!%?Yc)E97_W0pm7mefRmSUL_F0Xe54sqBvK@<$6i4a_3n;C{zLc!Jq>J7MTLdMyde+N=h0>hqW_%K0&Qh`Oe#1M|BXzbS%6^#iNB8%)#;Z;++r75 z(;)Y@SN^jLZ_j%DYAr22VRXwmxAL{37J*UtR2L1??p@t$+XW~Z3)W?;2fb5*&~JKC zGu%2ZK_26V)sOc`{2p1VZ3Jf=3hWVDFb=N%DLf-wO=u?CfH zMwP8^rFm^#o`?|v$e!yB0uCi%m8PoATRjeO@!#JP%j=#LCieaV^We(Hf)+)7_fa4t zPe$nxjo<)HXkizL#Pl!?(zP>&?k-jTpbIh*$iv5^JE0;z1Iu2C zZxB}xYK^F;w#cvUV2(g&f$7(!UsQaH(vUQ1&PL+PVN`goi$Mt^Nc0&R{jR(|mHE;$OfXRxVMXg|H;59W_XmL6-)N zB&V*qd2N;?G`+65JFKp5YPth#Lca>9vcfBr5ASu*1Vcf`!N&qv=>bmLO}b#Nr{P!m zoTDFC(b8@I%q?w@UcG-GaT$-jLMo~=5Lk=VCHe7v`QcL}j1ezZ6q)!O!}*M3zJQI+x=*Z<|5ECmTgA_l^LeY}GOdTn$w^adYwN-4vO0BPw;)7@8G|vrm*Z$1Wl)SqNwvew(0DLHD~H4k2S>Z? zp=6#LV7~v*%!fYf`+tqK&1;*CZJ58Nf3=HU(bYcc*0V|2pYxmiAK=RNYgOpD%g)%w z3gsv#8|MVPVhM%RGdJn{`?M{-4Jo%2!8c4q7{||z2yBMa5)s)h-l>@ zsq1Bqx{m@sNzF8yCAb-V#i14tHZ!IpMEAw7>d0M|)PH^>Wd zu7!MMoU=p>ZLzg4i*OLL6$mW73lMtRrvL=qJE z)1s(VT(P)CM>q{a$qGy%GPWaWI!rOIub&(GIX_9P?{)A?lmt|N23#7OZUx-LIO1aO zw;|CjYs*P|^wazHR*Rb?z#ODK$IowuBR;nBp(>DNQq6e~g>|<4+q%>Ka7=i&Tf3ma zI7V##6bt%j>JCbP+suT4)$|MQV08y@IfM2-w$J=wIx43I9FVk*z(y_Q*F2X-Pf`|M zo@7N1Y9y?X5wTDB%&qRR*8t=n+l-0Jk6}Ihorhi`fTUNWXQvNetPStXYO{DFkRDjM z{toA~KWS8jL!ODbey(WyY&J;QjHZp-rvWXuS_E0bEib#xVP}T03X61tk1$~A(u`C1 z`RpsK#n@afW1`@#xJi%7*JiJ)hL8W$_b3r`Wz>|-%>A~fS5%8M7h&*%jKC!^qnCky zYDziwYkrdglSW@$_z23By7ea(2S&CM5*~Mc!LNA2Vy>EKaG?a`JCEd3b}9mJNe=BQl}ljvljT!0E9R4{Q|Lh zJ=-lp(+3CLNQ;$LtZMW<=dcn!JML)QZlSHSgW|b(7~o{vJFB;s$GCaNA8R_0Tr9eY zyjEP_?@fM*EmYlZc}{}4^-;3{_op4@u<;zgu4>Bq!XVuGz|`mkIP&ACfGq=?S-3gC z;TMYv#&Os#&lwqP5H?RGcchao1Sbk?K>`2SxoOF3;tTJO+7E(8?dQC{@q!EMd(r0b z&X=>vx9c3&d1+A;FmdGUk&QzFw*7(AM7S@kA)z5$?7 zyD=&Krn2~}Fd{?EHlS8br|V_hLGN(p#RBqj&iNF#5+*0>k8vq&m!<31@q2tYj3=aI`f*u zU4Ix^KdzX?v`vK6IX?^y{SFL;3oO>;L@T7?^I)@`w7>Qeb(VP#RbzGOZeN1VL%d-3 zX8`noO3tRu24-c~6&UHW*3j5F63LD{r&~zhnixNPwL;!9f&Z_MSmy^iY96W`5{Ppj zB%f-Qn$CB4$UsA9X8VQ-3?Qsl9XcPf(Kss(K z7QIXp!Z&6#w7({MgiiJmL+Yxc{U;)|G12jhpGKLNBiq5<4;$UkSWH8N{eba8d+*_9 z4L%+APG0z14l&1J?dwl+oS!BG>nAm-&LjqpX%y=1tLyf#iXvY)L>C;5p$vQeBfM(_ z?5Uw7X+6(`GL=~bBysJ=0J2rObza$s-!3cDdvzJRq3@fx9vFUHK(fbUgQ%E0cZ1txJ9 z$)H2$Ylnw_XS-KNG4DXR4$tFwz`ci3gN)?xUQATZi^rhhvmDF>407hpYPoI!G=Om* zp=pEwXrzOtz29UwQ9&4b06zAvoRVKj^Vz)MPsD)GaaR9>nnQ;NDad5hkpgnS&IN16 zpn?0tr50Ja!s;EMR#oGB_8HUzeJ`Ze#|l$jvp-)?go3Jlw?}6q=U1kDt-h9lL03jE zqf2lXzz*Vb?|Z#+83mbdUuc}GHE2H%g=Bj6t;1Ghh<|^(`nFk-Q_+1x2Hl>!l#II4 zoB-8cSFsk>05As&P%ZTSy_6B`WgUaPJHn;mJcczI0=&!%E;&Lzcib022q6#q{-N)G zR!0h5z@UtraMRR^fz~{rz}yf)1HD#mc2?g`ed4BO3}6ztAQs?mYNQJ|BSSW5wZ8h| z1FfKH0pKUaJ?2$calY2qsUFWx6qx@LykhM+4;iHYute3Qc&7vlk0bkU9_C`ZZuWtO zH2hS;FsA?BS7YUokr~v4v7sfs?m&cZQz-br@nev`3HB^y-*-Xe@XH1m9Tpmpt~ipT zO6z|5KyrP_>i?e*WYL#3i(e+YuVxeGJ7I7U_Nvmz9-^i))}Mvm?>Q+m)cKXXy3jn+3>E>|R>dx^RVZ)6t zAh|~h(0vvb@!u0%f)yB5pZbi){l0}2P0nHH1B^r;e@%byzvs=+ZQz0(fnOKo$f^Ef z=ze%egL9f{fS=O<_yx@fwsPodqV;nfx{|gI2IG@%$TobXRU2J&Sug1G=xXEoMG)sW z5bnRDU=vf)t&@g}0H)yc4fNl6lv%nTDH*qcy__voh`h`l65BuYV>V7Z0RCO}wI=wi z=4eWOC@Dk^l6%Y>C`LYakD(C1S84VLU@MZVqwO%w#D28JUux?j-dohpXX73lZg-VN z(8K-sv}**g6H!obO_vV|h$DcJXDvFkq#Loplf8ndvT*$cnihZv_GP7H_OblGTy0hS zu%FYvY&eqHXLD<-U-3@x$`2$wGInq&$><^&!EC2Umd5xBEC5zYvw8(K17D|2zJjaZ zDvbsStb)18<+0jz_ItCAYLb)>nvxcZ1m^tUx6|M|D)iiSyn1$j{VJm{(q}zvqy^%d z_6G@!r*ZwfOawc{%~6bD-#Za{Za%Koi_^0I;aa!r^3iwGhgJ{sdA#7A`9RI{ZOw&c zm1@`iUV#Qk+rVMrEIZ4_uWYU|OUQ%8plv&QzVgN zlmnWy{=h~e{dSy~IPP-Y`+tw1U#`1;8=?PVb8x+4a<@CKzq}6QNWyFn=}GcFezNAyr^KBS39)u8^5B0U4ci~qR$oG=h!R7^Y>DuZf;sP zkp+PRZ$Cv6z3M?MBqvRj7)_=-h>=RXVTzd>^xTgT*uLq^O20GrSUX)JjqAEyFkGzn z9WqtJ z4%*Q=RZ4qhQPfbgm=i;xcmdyARi2V$UQm$l@4DekO#n~mnC?NZr6#wG zSI(sIh{*FIR6TumBulnsvFOc{RS}JSU*QQj#cTm52}J+cf^MEQhOn8B22;82C#sPF zEz-Bb`IiSsJ*-B<#o(TqK$+3jgu`lG{!8SaRMo|F9Oa9! z22Pr9S2UK5W>_XAj?< zLwPOhqPL(t5jMUm3&bWwU5X=Kl9fQOaJ~O-P4@qFqpNM=S zK6Lj9x7oWj;uIy)ZefARjA$#u&_sD&?)wG)k0dJ_pq{(#J0|}7f%tc+N&G&tN6YPh z8;F&jceNnHYDdkUfZzEI0!SF4T0NRjrmngsJd5>R1RD;E=pAiQ@`o@m;`fCRPoOf< zpc(5V9422reJLM=uC!AQ!Bx)uHkc@iy6}873W4n~epgYYPEPUc&n_szXgIC%DFJOb zkir57Qqh+{wccJ~Z{xn1J!~ED5@-t*e2VcqhJ2%QqrWI~2t6EbX%N9zI z$KVy0I$^ssY|ddw?{K=8D%+KN0#a5X-OwA_Y>wvjCMka4x*iQwFi(4Oz)7p^ZRx|F z$9ZY=0vWXQw(N-cgEqEP*0-V!sX_(C30(*%qVRaCs$hZ=*&7Ii-pyEDO2)`4*DxzA zS*u@~pp1R<{=zRfN5mToS2VHh9IPz4ZK}Zksj7Q?w+2{sfVIt!%-#Z%nV)<4!kgdY z64JnS<%|ll#Fp*yMd9x14bPkdD?-nF_eET0)yjs(bbtJ(adYU5$ueZ|8RGlYO-X}u zdFf^7_0XdQd*boBo9nXAv;7R8y0|~yO>p@aF6}xp^QmTVVdv;Rd*f5iuxWcl5cjvO zfygwYoBQ^YW_E81!2RYt4(GA@$pz#Mt2yh^ye$0f0eRN9JrTHDT+BSl^f|fzu-Lpw z2>RyzBvm{hh0^}`_Ad47!-Ww_{0d=zlOCiJm(+;^lG@7#s?)6j{N;t zXRe*7E3^FZQ^DfJ2yN<~CgpgQxMV|8FR-ap!jkw}RngrVu+LA5a*aDx;MoR)C_sU!%yY}APt^v}lYo&b~EI|{&m5x$`)Fg;743lB9QpEHBCO&nVk z_4C=N8o=50+PRCie`+}|>r4UbdSFOCsNyKA{U@BU4okvWJi&H17&(U}e<)>SpCo_C z@x0D%i#oCauXqs!L`d`91x8aMb=NM+rx=1SBtg~VV!NDsvgu-7EJeM^l=X>AQG`K{ zg(dZ+Vx}C{)DFRadhw~*ZTSk5m=ywH(WA2Q18RTAN7@RRT-~u4S4Fb2G4{-+R}Q7I z`4a-N$Q9YEqg0uyK1Y6P*~(L58fQ-2!#~)FP5;U*^NUhO=Z|W+<%fD=M9|>vhusuc z;tJuBGkxQ|#~9;iK8cA{RjFe2`c5X=Qode=OY$R0$ge`Y5Y_loeuo6+yOYUeL!n}9 z8X!{R2R$etiM7^cQZN{HpJCMaFTKF(cTy$|&PT5CS26wD{b(ho-yEgs*~)uL+w2<% zfoD_~dMXyPZ(B1e%3UotQM3do!!Cp)o8O^a_-C&mr< zYW#P#1m$pW)81zPV=J{Hl;<&#<%vE(tD*JrSglY~P*PSk3Z0ilB6#QGxXb)1VW{Q|I&FD3gY~K z*Rf{qkVJZ}N;I4_a{YM3$TU(k<^hgi0>OIh-v7esO}AP0jePe^cbx@mirY2IHvcz% zIOF!`XfmP9!*#EgQ)Tl~@sjnIsS0||tXP8o#)kekwqRkMxTr;B$V9mN)JjH4B2&Wo z@_Go&egUHM)$5t-v;pXt@L1VI?1A{4H5&A7!` z{^*`HG&(*FA_Q11i9jGgMMn>d>x3zYp>LhF)0{T-Uw-kQGtHZh#eUBOSpxSKD^{>$ zimI$KSpH~6g2UGkcOSDg^cIn>pKIv=B>e+zGofgo0FH1gn$drq19 zNG)SjF1dirC&`HLMfyYJ=GUW`Qq4pv9}tS^;gNQ@2cQIFUTXa@Qx35H7Vu}h)LRsi zkIDlk-YQn0N{k=|a5W~AAlHUX97+X~u|)`$=65hUfk-o$OAsBub;_~Ij)Rp~|Mf8M z4~M;Ae1BQxAeg^C#TZwR#z0V@;X+pG1sRKLx=l`rG@xREzRAB`<^Ub&o>d)h5v{E1 zWoyZr0MCPD0#`9a^W$|EkU+njhc8aVQW?WcDM={Z3a9NhQYQayneFS;zuh9>|*I>^ikD30V5M%D)>3c`BcJewbWBn}wg$kqZ3o zXgOuR^YA#_J5)Gr+V8fxu3DrA*IvxW;o3Pea}ZK2pDh&_@OcpnRA{OMvrpm&86OB9 z4F8O0PLjK8@TfLZ7|?e+DeDbQGP&zp(Tcg7A7sHccZ?K0~GVgR0E{+`5Hxt6> z-i{g1Zl-p=E$a2VJXyYYofN5O3EM*3j+s`!^w|i&d0g?c%l+qqr$DLBms7a$|LB06J1{X2Pr7HmDxeen{72>o3$&Zuw_A?d+crU&^@n-><%mFF|Z~alXgo zxEAe)Fb5gw z@a?kXl(k)M#{F0_SKe_qiZ%(ubg^lfxESgS3QBY%i202~E6d=T&i6$GT~xOPqVtM3 z_jpRI(`Phmw>uj{pxJt;>vqK>y1R*=T1&Rq?G<$%ola~maR7*_)r+{(3tL5$H*w+v zAG_vF5$=1*fl*L(_|D{e6xI(=z?$v@G$`=Qz*+FuCzH?GYW2hvMInq(jom5lSpuj- z@w3c*tni1|l&3Prn!?=&4)f4MMd(y?SUil>&F z6!__}rd)nqhKJ%DX!src?zdS?+@{N*$Byc~{Z;>78g@4La@Spi->#$n4B*m)sJS!c z<5Csd=t~!|MIkb5vQp-qV+*IpFv}avU;mT?|31f z$K$tnX}?(pc{$GX>h!j<9{w0a7fl`%sH39s>X#ug*5|^XVt3YGA6wJqQ8-Qxh~CGX z)WO#-9->d7Yc9~n?EjRm^Myhk)8?YFjmOp3JyrgEU z)xY^GcLzXo_CJzB3zL80KBrHJms6=Vwyf!7`XBfhfQFhUp*5*AG$B}H_@eIXPuL!= z-eFAYPj({3{|?8CL>GT8y(m^GH)l?CVJ_^$j)gw{F#os8|B|u|2CQYYRR7y{`p`6^ zzpjus5_E3Vws>rlB+>lpeGt=uoU{r*`0jDy`c?=Dlu5sgD<~Y4l5+@fB&H`E|EQ5FvVI5@?DLMj zOwXFs8=Y5D9W}9e;;j6pWAY$I#xn_9t9km{Q(YolksjwZJa9~|e%4A*v*vUo^cpKa z1Vy?}i(%v2+&Ardi};-!v-Vnt zW>SWxG8#+e^6i`UuqU(2e$dTl` z4%1y;&~F6{GQ+sU+7-TLkIg$~$Mz$Ul7=xV!N&Fv<-O z$@ABjbS9Q> zE$-GEZgJ^-;V%vB8EPx19;@x^bU)_4Ra@@M*_%Bz z{9N3Ye8lu`A$qX!ReXg!-XMF^oNZeOb7~A1$F8>F_bWf~DH?X_*k6?=GqQa+89~I~ zd~vvh5|D=|%UVUN686s^Q~ah52`K=&9SyX?ZLD^o>gOHJ(Rir6SO}$Lv#&1*cRw4p zy!rc_*ULImGaPLDnmoo1mUCq8h7|Tb_~6c46a0=O|0` zIfl(L3fD*jkfq(nvSd)FAE0@=NzihCRd}lhm>V z+F=Hhywqzd;&@{J^J`9F6cK3P>+&@HHHDYAsO4X1k%~FXTkw^3?(%)7+57K84_kkc zL7jrmeaHc2X+WU|^KvO2buuN>xwxbXn&djelIN)Uq6!m2u;vvvX|)*Eu8l-s!=-;g zx&6DZIL?ZKo1R(Q=N=vOps(SdQCs;$#PY@1DpdlV%==&`aHH!!+uI)H}=~sy)6T!C1-3$!` z7*^C<1Sv*t$W-6-LJxp7-#Vx!3;!G@h}qH80UxF5yNjPd3DSG${FvWtPRxUT&Z zG9p1qlsjO7S)WhNAaCejSzqOLbJnk<+?&U5JC7}64uOcoYX<}EFuI`BA zdu`?JYBADAA>e??P2ivfcANDJcgMg622VPqLql!lsJdxI`0bbJC6!3btCb5K512?+ zU|)IK`AIh*t_%GG7_7GfYp&kHg9#GUJpI{dBbh(vtm*HqKD-G!b?G2)6o){xi&JaFK$W zbmjg+LQ?gQIJ_DOT{n3t2GqnXq*}bz_I1#a*u@2_55wf1PozzIM_+;hk^Dw7*agsD z^QAj36}L-9Vv~LSBUv>rb6xrc)%u1&nZlWvxA(0YIVwf{Rsiych|P@Ll$YfuAF*tF3(65sGAC{&s(9g z3A^pKhB$_DaJ{L%O7(N@ey&)3(VF~t)v4JBoi|q`1bJ2~hbi{D*(p9Dx&mO33w|r} zE1}%}Mu7j(D8itrMdr2|l7&u_JPuh(T8QkFvX;X0<69xKpS{m~GS;HpmNM?O8r zTQyJJYk0q-y}#i<{nn44?+iyBG}0b!1I_2leX=zD^6W>%h92HhLQ-Hhln~KzzV?d| z7w)fw=pg+LZI3^g$Z?^+z;^u(A!51|R3GFChidk|;z#v!e%r=JLk%NvkpS1XI^yG;*ymtc^)8s)vc<(+w8~I=0a(7+CrfP9niT5oeXMLVtCoBak&2v)1t zelL0Br3mgxH>j90dcc5~y-N6PuC^Len&t8uB=cI@(`OS);{C5NsTa{dqQhu7^-qC> zS*)LsSW!1o9cQsKS+rR~$)2l{5Pd4}+}dr3|B$1o(l=>OSj+&LF8F%mV|XIZJfe{U zwVJSoKOKHGo$EU-Vw?L)>%````|}KV(7M~P| z$_G)(c^eG@4_bg-%i+=-L&)O42p_(4D21;+>kZZ&mx|pcBfCW3ZBkt?uK&2J@WS|b z(1Y^?_95*XHQ6iGYu(tBH{?o?5ux*;N$-j$&O)C-LyxU~#3gt%?`PvavQj7ZrOi8u zSa+?WjwU!LQ?OD_dT!_O?UQZ9dZj zZlH#Lm{Srzdt;q+AkVDlGlvS!mbpp=a>z)EkbJoa>!&{622d{E@y6c>vTC)4%d@a& zy@i?-W^4u*PCqbCV#42Wx8`rk=*(xc|9MBaES(PHidMxOIvu}w*Ir*D;Q+Z~;)}&d5=HBjn0HS&EUOO> z+lDVKzCL_b42(ruT6s3j#*6(u7ff>m`h(rW#>^I~hLZ368iemXtP_3jvHWaG>UUal zE%cc>z`ySQjzYQqp&=i3lDAb?0B9Ac70Qk&&d*sSjQn4aCs^kdCfr;m$WLW~-4ZjO zY)bhM{9eMI75du|z{OFxZ{C)jnT!dce2@oZe0WGO-Eb!I9yIN=K7R(Bo35QV+2kuc z7(AFf*uDPw-$IjDm%=4GvoNAgDd}^2{2o+W%~}QSNkkFU&2ERsr~v>p^#mRTLocm@ z9XdEWt2kxs7nlaF%-*LU`6*<^u|e{#rWO+%|D_7NG`F^|Gkf0({OcxL5^}piKUna} zA-lL%yA*aq72t9DbwtT2yL0c=WxDUy}*i zJ60Wj@K5sV_21W>D`+{pKCAm4%kRFnuV5e`rrV{z99mXnPRR*pA9m33zdtOMJzG1g zA{qMQHtOvPlD1#hnlR+o8V^RVRVrY!6eePPatIBgE2QSymH-Nd^gU&-a~P2L43A^5 z2p5?bUUd_kUX81AqBI^JYq>9rT4FDWsx-W?6Gc{BH%UYUz>;4gRXQfgkj#-LYV=sB zj-fadt*+4J&&T%+s{ASPcq#^Et;nKsrJW#Mo;XBX@sU@b+h)H=S0E`?ywjy2-J!m7 z`%Mp$rqJ7rUjhQJh`QlUj{8${eL;o8rwqojjmH!Rq!AnELI+X*bBX1VyxIF5{ zK7xnaZ<&5COAl;KF=FG9Qcyshz6|obRLI)j+i=U9OY~rn*@(tXaecva$!lO@0QF`B zQMibO%WZ5=mLY_5S@Df5C-DYDsBPE=zr0Oq3BebMGQe5AFLMnm)`7}@=D|)~@E%}4 zS(k^|EjZJgPjTB9vogW|5-YbN&0_BrVRVQCB2@xuS&K2-!lyzCNX%v8zgL+HnqdQkrKV1R7S6a8~C+Y^+a@AyiJzUT)+1Ky9_HqG#i z4Cnj_R(Oc^B{%Pi$bUF-(RcVQY~JL%p9&olXM?Y_LZ_!NVnEQgmQJ>R%H+;>?}jfB zefLVCLntyHZ!d{~UjgV(#&@gGs~XOb?4z||Kx=HRm-%*l1oOaFF&hy7e>7cXSX5mX zy)+0?f^>tlAl)D;-5?+x64H(29YPSKyO9=$M{r}q<{fsx(AZU`cx2yF~=a{2s5g&Bcl*MrNRX!m?ZHL?iC8;GM@uG zr%*9T3KVyS zk(3^Rwx1PLXoUM_I8K-&T|5?SK<5(Z()oWZ%=v<~B1Cxc9|BWVknJ*P%KHBcm90Ks z=cln12G76gj>3ZyV!g4^gXFvz{6)7gk}Mm2H~3$qfJ>MRo`+}%yq1^ymPjQ~BnM5Q z9g&!3Lg0FjaJY}Xu{ zUSw^!gQJp}i6w`Iwz8+YOBBN*@|NgZpjO+?i#x;L$!*!=58u zVaFP<3gn-`8nXJO)jQ99~o&mY*RhHJ8^$>3^tOL{bS^HbF8vC`vBRMqMRYI!GJYsuGSxvv@-e>J>LYqosQm(clWC2h-!>{mTkO^D)CE@Ck&5m5(Th#X zO&!YA_PLDs9h%gab^84$iw_WcLy~0?73hkDFRw)E*x`?WJrGbBOQC*J#n^K-#myg z;&7%G&bJm_uj!BIIM}gyB3EaGImGdE>wocNmoCeZdiwx0xwlvv0KGuzw3Xd0NUDt3 zp0Xssfy?0Ewea$4#^8CxW)|Fz2?DnZ7q7+{wEas;309Oo%Pg?MU(Z2vVCmu@x9E>I z^T8|CEkI7cy=U?uiE1wb;{Cgex3pPk-KttM=POB!V1XOO1Ua zh`@D6vtAW~*VE1l{0wx#^dL3FBsrJmn=6DQ%a=q=AeN?(2Nos^2@-hrL2O9wecsPj z_cm;InCi4J*Wn|wD@ncu(r+myhyfAI>TZF()6Z2>b~66G4d zqWc9FR?1b?`!q8xR!SzSv#N^g;Ed!K1Q}Fj#;hoP_iI_1) zrOI5Im^q;9wIgvd(snNNsm>9a`4gsOAx=5oeuri=L52KG);~x*?<6vtlhRpg6}J3ex!qmUp4lEW+LnDb%6neAK+3E?JaBMHsUSFKHo?UvG~An77!WO?KqaX8qwGEKJZU$<}P`E!&uu= zdX{V=b0IdEbRf@CP@>;aHxBn@AxA3r64h21Q=r)(ipvu~+tj{Vp}3EdcBosQIp8%l z6xd*9*!cir?C_1dik>?r&Bv}pJvr9BMpTg=L!w3OvG0RdrGjcP2D+kZ?VQ9yJ8^?P z2Ds>9VsP_t8Vi-mh zp8&}n0#1rVtjXgw1bop2^wk>ieSuSh1il+XSXg^;dc);UL4fVmQx4>t7&4-4T8;RkKXX zZU}``*$X*fGap%9fh=+5sLwGOSsYc10Zg|QDHb9_hP==Vo>qdJ`m=|NRH+k%%UHbB zgSW=2^7_{v2jo#62}a&lVM^XNFFjPGKHgmhIi-4R3D$tEJ~nMvjj20$>Iz@fcLa4W zWm2>yj{@+M@z;YTs=bw^TZzSsNg4A|>(rRhSkg2b@NrE_#aa`JWBWHk>p*xqXxu(Y z(OVij#*MqTxjSWnXym8$u;a(DzuBKQAqr&ZnG&vn;@Z2GvSbr5b~GK_4s%hO;sl;H`_8K`d_-yR53< z9e(vKzDbH7A9ANl;EQZDz$*|>vO@B|<`E265)aM*MSgExwL5Jo8m`lnJPJUM#%U-L z`h<5_)4j!O0BJcmGFEzMU;wKY*ogBHO`U*F*@om2*tw`>lTB-bZ-oN=OMQV9v8$5n zQt0J{Hf;P;8jsrw(yNF!L!+3O1?=7$Z-BAKqEi(ob&Nb}{vROshiJbNh1Mz3m!zIZ2Gf6;*jTQer7P(Yht^AP?t*I3Q zo4!|8XhQMXK>O}ge}F?i+=J?8l3(6@Z{LIEbAwia(1u5cZrM!N9anfA1Jv+IHX9Gy z89vqQ(0tXH2<}8bhXhYhcMdyBB^-z$7R8t`vKc|4^0)G$z~_RE!{U6p!KqX<2W9Ua zyh#R-ekV}%M@0{P@mWdBJRc9BIX$NGF;of28d|V89x{(0lq4U-Iz%`;#(_pQf;$bl zKlX*_6Z3V9?%$~5*^}TM=~i&gHLs*2c;SOjb%y-$AXH80*U;uo`7#}|v3JkUp!AlH zisRw94yTq;ZTXtz6X6aNdlG#U)K$+W_GJFxQC5witgQK3``j%Sl+vcx3u|&o7G0Gu zuQ~SKQ#%BYHCPt?qZUsX)wcgzorNonA?Ov)C2nr*JB?*G4LT(L2QB|2rS+>lp*N#Z zS9%~qSk-tw9^Ir>ef%^wFrBjp=f-t<{w=e%jbC(Y(w2+yvLjM=c|m@5HAWCY2Zt0+ z)vw6q%T}A`Jzwx-f9$RY*&l*gA0I!lwDrheQR`1nysiC65i9P^^50kt4wJEYQ>k~9 z`WGpBb>Y*k(i>X;abU@K5_xDs?f3|gMP?qK$fI7wVt5yoqtfXfoGZ*Ov)NeaOD4kx zocd~6Hb<#Bvfn*t@iwZBP~U-jLHLy4t%v7bP)7868plmq6bh;TAmkGWHK$? z_|Bq3EDWhaw1_f27dL_j1;_k=EB^Vvbo$SLr5pdh=#XZ?3MAn3v2R~in@3X1427u@ z0-Eu7iX&u#NyLiJ0nAH+DKLojPJi91B9l3lv)S+iSy4tci0D|x`$hsIB^_m9VA@o+ zF9QSDX}kP^3YZnE{ObsB%TBci{Y&)VN{;Zp$y;mtOo!P2lr5>SE+WJReubC=KULBE zI9z8?R78c^=c>kx7{+GT9E!vMx8=4$G>E&Rw_B*R$I{hXW}hR<90knAZ;vuXTJs4F z23%G;U}m66d*zxeI0$U7Zhz?OSq!KaIZZI#1#ni*z7Yf+NhvT9FZ%WqGjkbmF0-VJ zq3&77-S|?{HK#tJXA57IcSXZij;r83sxg)=tM7N=&}|Vw z2K4A_hUMJx$cvBPa>nZA7Vx0xvDFwTS|n-mE*CKIDAv8VWQ{J;apG+XCkuPN2r8AE zr&Z|-Zrl(`Yn)z$$+pvO6b{?b{aSglqRKyARS$ba#rAvIiB#J)mT!U|k!9PQ`^TNP zKubGg88cO)}$z)c4BZvvNB`>JG{2mrv zK4Us(^;WKZC9JN9cwFd2ofW((vvC7gBPk^lJu z>2vx0m!QeP=_Qh*E6aY!)==&Wg#pkW=+Ued?aHELd&DMiw8B6p`>2Pc=&y*sMf`@+^Dkx4kg z5RquAwbDr5_xzB?C}#S5;Nz6j9Hd03JsyqXmKE12ahd5s@DF@vlHvR&cNrdx&)vhw zsODk7MIgw+F^JBs7Pc+(FzU4RmDU%|Hh@Fl&Hea^8y(O92L=;YL;!ASIi;D#1TA@K zEV|&&NzY4^R>q_F(;c#nT3f7C`#l_q299;5&G%OWikkN~FQBiC0~xWc<*!*&uiu<+wVJ@HyY^ZS^}Q^h9!MvO&R^>>-^~IP4g{g_EkkX9l)-T+D;1hxsuLu8)YE1HlalAwY)B-EZG1Uix&QSs6 zEi5aWaAoCmyY3Lq35@~7^*T&JABq_#pl&^`t&{B~A3qJS7$Z1@bdEW6wNIzalSB|y z2ql3{zMq%p^0H)u*% zBji=?g^Q1A0c{BYE180O?z(8OhR}Ids#5R+I^;c5_Xo+Vb5r-LIY%E`np;vITQ|MG z%JKad%;RPcHtZRi`&ec`+eF&l5lxu1J%}YQf?3RAbaX(2h&H2GvhkJ^od)#KD3S3YrAL-qFNC5J?V1-=TJ@8uFb4WlOd+aJB^>`DK33=TQO>*@m z7Ip5*MAKbf+#gA*0Cp4#<>GGvHc-7F! zL_!=}fm+BLWE15~TL5OV@LfmM;TFn02SgxJ0@}z=b?A5{$2CUi!i4AoP+TUiD`b&y z^r(CoQS?9V6L|RRsq>-b^&tIN1st#+-4|zex-;HbVtp{A3T?SC-)IMzgs+o|E z6o;cAa%Dpg&jyRCE=b@Yr-EZk_=TXrI|C7`0>PEFr`;jjtgJmkNHp03;&=86md51R z%pl?5A?zmxy4O)ChH{-nMLd1Y!rs=hSWn;=S*%am+dSsmTRQ!PiFmGFNA^?AUKmFA z!^von8$Aibn?AU$e)4dSEVIt9e$CK3gj80Kh0;XJ2@?4Xw-R*Ts4qamt$dgd=)GK? z65X6+A0c155!;+zZTDZ_Fv~f_yA^6LUZ@vRM;sH;5v{jf?{_lsc6DA|;9?3sBynhR zQHu=lik`S2{aQ@#)fM6_U_sm5)47{W62~Dt+^Uf1Nfx_wrucR2QY3@t8;bFT=D%fb z{TC4)e{~GI1i4BNn>15g5=G9=OP94~e*Qs-@icG0e&uy+L0k*ClX%{@*Co>GSA^EF zcd+vKTGgSsne?wIHS4au)-XcwS_QD&Um3!am&dSd){>v(mSaqdE2kN>0zpT{jX`5^9Xm)LyO#s1Myr|4C+>jBP^2RIzpap%mpFzb z7OJ~~xHOZZ57R*?5Dl9kdIk4__4(OGeofh(wWZZGb+>PIYb51VzLZE?URhAxVETZ& z4M30rb!Rh2ARbR`#<_rALyEPaT?h$no%|cf{FeNT@s~?M+~4f#c)A!LENSs!;VVWv zZtDnqX)>Ckf1rPJIkLIjTLs~@(^{D+KB6h1ol^r@`A#wblZpJCo)LNHH4Z}q~)G3VFd8 zvQT2=yI9+XjYm|1)ewD8S!W1|K0GlYtLIU}B}0=mYe$}?pWuCA;v}Hv#Jdnt@tvNW zDM30ej{Qkg{%bhCG?B$9zk<*=o4>9dE{M0ceUq(fKTD$<{E&@&DuzG6rs12pnt7>1w*4;cj*neI}P&T_ILR^OhKcx8 z*Qh-4dj!($|6&yl^qaJW%V{?kznI@)fc5{rbYt%rxH~Q=ww-VF#?Ce_)lh-yZr7ht zzeD9b5heV5&d)yu;X0guKX}IPLYKJQ3az!IeaB^(Nk}^XiHLzD)qqDA6@pmAb+9rY zG)f9;+C(CSKAv##pv^&J{|NWr%TgI%F)&QpxHj{`Q794g8~b)R6S>*cgx@=6p;14R z=6j)bAH$Iggx`Wlbf2+vzXtQ$&N@^#`W?k74iEt>0SH`6^uzC5nVTePi4~hQg9$!3t@zojU%e1>eZWNm9HC!F zZ`+HguYglTfW+Z$acAo^)*PM2fY~1ZqlEi=V-Glk1@QSOPQ``~Ttkr)J;NQV@(#M$ z;*u=;n=iXKN(b$ZU$&&ufA0Vd1`IGrO(H}AG`vEv1RV!@9VwwMO zdI}RMExyyFx9wfjY`kyIA{Q=ZjJ=a64jS&Fjzq1z_Uk#(Ds+GC+xL%Jo|Q3YM-72HOd7h!~jKvorQ& z90YYKQck-cxgjG5*G1S6b<=aEYj=RS2z9(=kYq0?`=O=wn+d{IiH*Dktc_(e%r^4A z!kSkElaCi1QU2q3=Gy&kj}Hm0=xd806OIFzMmXWPGu`8JHn3e(_lLoo2qN&B^RGq#>7i%P6(4x3DO){QC>S-L@s7U>2ND zPUhOCqcY5vsB9F^ISx+P+GTrJ5qd)wqOxP!A30{tt0G5z(IS%kxL+YC8JVo$*}yZY z>e+iw1nd*oxY-FuPE5#Se{sjNdh-U7%T7GQ=2uK7na=ewa`0+S0`s;R7rFiP%C4Be z@uP7XSK*WX57^)&c{T*Owq~Vqa9Tm5g~pCv5f}*4eZUug_(7q5bcdUIE52t!drJY zclVf7#iAGRg^H)Zx?Iu3knHLr72_rc<8<8|TjBfq4wWza4TbHoulosD$p^mwU44rN)~#N zR7|#Bk#ypPs6BJXHMzX!WVr=h8nc@;FY?yM zAA=?EYkxTmnF3@sk1+cFG>=H3skaxcs)y?9DD?jjd_{Q^)DR0Ilv`npGfnp-&|7&Q zYcEF*sW*SV+IKpiKn=wZp$O4}1Q&QOb#?NU+bJh|5_vew`SflCX^zvE%KwWAmfEDn z?>6xWfz#a)ct(wld>YrmKDPiI_WLO>XYyCPKAx383zg&6&3BEOrnb~&SZv2~)RWCj z)J0J?96Xz>CF*f}y5H$<8brKC!LlA+_{jP~Hh$bfqmK@}I7o6}7*iF#0$%)J9F<%> zk!msuxKAsbIBEsv@7@16Ij6Q z<&MPG<(1nmLIq9^@U2&z3|as5FX=8gXz&8hJXLKX@UKQB&P*S2s1D2$9_aSQ>emcJ`=f-JZP9_s!=Y%X~(IMDWx{NIN{qzOLAb@I(NHOPKopk^_d%Sz6C zouC$Gf)VB9QOMXdES`Cg#TgtI$HvN(Ly5rA%HL@_&jbU7oXk=%i4l$7$qD$hx4sQ$b)JNgFc{<8f zR)DP?3Dza)XV4qM$aP>B*5yziUeRkB?CBq1@J*ZWlKaT{2{bHv0R0C>OU(-JCuz+ zgnj|kl1E}xA0J1AjURd>T@bovHD?z@G4Udvj}Po<%^}&@`{6RdD9pF(eVZ3WQ5igD z={Jq=UItNP_|XcSZS&7Urq!~@CwsWrJh&t^(gi=o8)=POY@2x+i9Ymwl7t@{)8&I8 z(5|^6ncwSqT*F$h35E4<=pnRgSxgqh`FYR@n5S4&z|9ea` z<^NK=3gS!+eW{ifj)S}1uJ#3?GXI)sw1HC!@X7!e_`AiMfrHyL$cuFz=_om9RvNMx zXdyg_Co{Q);*yqNL z?iv4o-kxAg;e!rDd)^Zl0+mOyhqE}Xt z*cQPDVzCbv{jnOD%7qcR=sSE;j6- z33yuyQxzsMKOcB+ggsmgHprD^+3)B>S#VFy4xq$PwQ8-V!%pG>to!Jgfve!nte9Hj zm3Sw_=!cUB$`drS?^zIrv7*VT@@=$ITswNf8yw*t``i@|*(?PbSoF`(8te0d6ST<4 z)yXw~Ds)~2Z+IEa5tr;@DtSr2e5>w;8XhGzOpxNl#EM-U%mA7wjuJB3Me-`XmFHG+ z9WG)iFo`HY076Q(b+O($T?OwfmIT=f0)fUJQCD{j5vsk;+v2=})Ik0wHKCshtSRsG z4e1I*&KD;X%BftKjqj?q=WxAsPTDEJi_poI2UD;8`P%(I8xs5%1Fqyh3UJ7Or1QNL zv{GqVG%a8FhYIq3H$i_Ra9rK1+Dh4g$^3Hd^Wm*3Uz=r3+BJ)_d(gFAb5I1ePk*qb zOTSxgV@Cyz=46HP(eny7 z<8A>iv+*FocA@c$CnbEP4FiF@X%lIvn_YH4Ekkdp8$gc4G!{{wHv4GTtKxB z%|2`lUEc$$@*OV)1*|&LAG~+tHEBdK8oeq#t9;f41)bxJ;b%g(CgiU!#%Fg#hD&U@xCCZ0>ezOsYP(dmm!RU$=8Dg)Qv`w3RMp(C1Y!2v8p z8dtQOT*|uz1G;bCS4~BU20rPcX9LlEBj=&L-Su!$b6yOTC#d&o@h`v4O~nx#o359# z3Roi-S_s3A5eB9ZN%6K7&<=tc#q6P3TW9t@8DZ57gBr!K)|*BhT=BsmSiHD5=Gnr{ zPn^PYjbFEI(F45T!;1CEJ{1cVUAY+C&jHV_l9Mi@;gyR=m8ZpC*-qO#4!R7>N5cG% zuikH~(oAEcP+Ua3$$V3Iv*aaNr~-Y70u)NMG=z@TIkUh2lTA{f;4KPX_bz+yQ;@4( zLP&&UG3X8gk>1X*0K}01N{#;EFh)$9#^^|gD^u*k496OV3QiXT&ias}+m|Y$)eR^5 z_O;q0y?mTW5sjnwkiZKY7yN^Mu0kHRJ+ITC#)Oyw>hBK1s*R}`FOJj^YG}DyU1^zm zLKPX6QnRJ^B-c$_V#Huo!aoY~)9Z;rzq`6kBol?dj8bBye-YZ8phyNb>SsuhQ3sp1 zVw{XWkYm_5jI}hVE)-ZrEg>2HEukydVRqldchK^AzEPRH9PxY?$o;%IE+2)IFPd9p zld>m$W#3F+LcD{eBQc}bBoL>Lv*X$8%BO{G@ONY%>+y9*I zFI3x_VpI&$l0ye3?JNGBu^V{ZpTApDKvwWvbzl}gvYg&4`!N%~apIcX#G5M5lWK>L zOh@Uc7iR-^LY;|0EsPf9mrjv2(Rf9CyB;^%Y*QEnP*$gQ=c(USyn81tgL3pKkXBqu&4~ zN^nVsH%+M_+%|d(LQ7{XV_!1VZx{C^OFMl0tE6bW9*?_oZEL?Gw z$%aZ$BU%9g2=@VVSF+eEWJJztJFXxecK~}?hYz~0;bbE;V>JMnU!;iYn^gZY>s*Za zCVuA!^Nr&Kn^2u%tU}qN?#tBwcG}nuVakvAuiLIGktxS3v(?=5D!c%~^ zC!d2ztogU*Lw8X`PccgNmxOC^*x>U_3Aq>JJ^f(OHRz2pauU&7v_0@&(;gTYkZ?(O zgky0jGUWC)VXU$8#GF$LCRuH3UWAhvT-W=g5M5mb8*wWf~R9Y5zbi18vKA9 z1gVC~bkcE;`sCy&JS8S!MMT4KT!N9)S62S!aU4`SA0pWqG23wYf&3l#dAtfto-~O) z+xX%)HSoAz0n@?*&RFyQhP2>`FcpK{1>2*AhUt6&eqxM`WaW`PbIxdI<~31r(vRtb z0$NtGJQ!tsg8Ts&@tfsmX(fZ0KuR3X7eg*5WQE)pA$d9HL_m9r5NU=4ZrO}ttk@Tr zlfI@V6A8ha&CD621pmuL+c5!G#a=)7mC4!OMsJI-)YGe+7wbj}XZsup(ixz*`JdB{ z2byQt)P4s3cKc3i1zalfA0IqxJ|++6H2sMnjjy)$`=FkT@k?6$1Q7+kTJ7rfQaw|3wMZTH6Gsx^x^VCb|3$D4hCBDaFimQwbTwt=H3rkE`3 zD?I;u>1=+}jTHwJBfJFr4Q!AT0ZQ%v-7tyI=CUr+MOC(Lgl0 zK{Mk|3)}DSMRf!z9IrirlzO*sN2}BB^G(o4AN||{Bdah)f(G#$!=N!Dj33>BY7dg6 z<+D)lyTxBL#-tXz#3*5ZFva#K{I)NTcLLu_(}Jc?RM`eu z?yDL*+KDx4lD2JfWgc;H;E$j9Prf7Dz@~ZXyD2jfTArUiJ}i#-TkM%-FI<%!ozC~L z_-!MUP_ytgi#ZDuPCEZ|B}jm$dgy+PhrmmysTmXsHI%yoJ~t(iw}*I8V1cJ zYX_?*c+;m`z9O!Dox`&SM%@~vPD6Q*yTr(GH!s8!on5-pNi*WY@5AXwa7MmogiZS; z7P)(*v%l#5%u_d+C@Sh_+QWpi`>WN>0DxfC$c9brM4#G-@p{IYgLhaXzq?{;BUF%1 zXV2oD#;=UicsSyb%ZC6UMtpA=0@^VmiYvFBhW$v=4Czy|{?5b9!6(Q+`2nEqe;1N# zoxP7j%R8fO?4^f&Gjl$A$x&7Q_`WDvegD+X7BM5lfqaX|n0>8!w(IG{>{Bs5i~`H? z^;Uf`XblIpxyCf7DYW86M`(Vul;74DWFTmw`itRRn9A*HtzEQV8$#y-rv9p6c^1x` z9~mE-Z=nVV`Ca`fa&WSuFSS3jaOI{1a(h*3%nwA4O3?D|8rnD63eo=- zZPQP}@Phw4ISLz5u~+BqI`PR~kZ|5aOk~~8CqIoN7F5yn(Hkzxc=AMo7j!JwD736y zJjFK{G4s%lQeVCWjnGyD9qYGGTP z(U?^-`p@}`2-epf8pdO(+ixVCO=J=FqX4K~p;pl{S9c7VSi1ye<1m(?eOsRvE$>64$&KNvK2pm7^wfgwAbGlhIe&~A%%RW zLs%9#pR7QZB|fk12g7tWwk>8q@rAO!&dF=b?Zd}`q8;MduF>lzMW!^(uKng9kW&z# zBFbatXR?}YY*M78qSB@S-bZJe)fkHW_&%uwNcDEt%-_C=7hR#s#r z%!jeJ2a2jZVc3@dv~-3(t6Hk3Vv|thMQ_YVG&E z4o)kc12@VIG*_Y8#JhjYtFNcmz^v}eFR0-mj;37tr-J2-r(kIPE*@_`bE7eS)ZjKir z>H-1(qQdGZG-^I`j{IDE6z+*hV_HcRt@{w`+$wWpM-x_z@kqEV(llOJRn6 z2P4kyI-6W>0g`ml{x`SRcUj6p1hMLWV|dl$EK%tcKz3i^1P%H3(rbW#bHqj&2)q!2NZ9n2S zgRcOWbuy4@S)KaWbN`GqE~GG(YX*ne1>EvFmRt6AnF;dj7e8~SebDijaq@Y z-m3S3n?IH2#xg_lbG~fvhjeKDF$h7p(4;`h!@vEPfE;<6r8bnJw)hjD{qfQfl|VW# zKJE=$2Vs0{GP+egAZ5NL5&30PsCOxEMiCd{!N-r;umZ2;WaAG~)6AXoFyqocJ=4p3 zL)R4lbRVK%Iu-PT9_nw10bbwatAeQHa8KBAw%N}!P7Q^3!mv6V2DA&1r5D=NIz-S1 z4c>VBxyU@uE0sv}OCc3-TWTTWr55s3KK3F}i;A(pLia_DtVjjFK1+E5;VY)WSTR?1 z#bE70^v>t8>IOnbI#l7LNu8}#W)2BIEa@|S@As0^LTpx{$F1*ja!kT-yurc}nHKGA zrJI+O_@p5gZ8wwe2zz;`$;s)1lC&aYmi9Q9#~6!z4f{tKfe#}=rx&9 zQVCa7cS= zLo>>h6l_$lU;swVs&b2XJX%+WCtB^3+DT|gJ!Z`D_@Wh}e$bdjaN|ph-Nj=JTl}Da zXZF6q>H25HJs6uVoI+#fR!}0!+A(7_p1<@Eb)KNX;p0L!h1FvDSoxM5sMP&%cRA&~ z2QeYBDJc=U*gd0{0Qbc3C;9kpNAx&N!wzjtO2L!Y$E-Hw^cA^Of`hDy)RAO-+_B}2 z2LiGruXb#Wnis$5Xjf7C=Hp1DYA;(-pcElae6)h(-8US=8wMC#TMAf_}D zag)QcNS86!qUwLEziJ~-MbT!h9$bHl9zFQ>Ag`%Op~VL(k>fp|=#0JHu!V09#q>vK z`==DX>ai9X;~pXnfwtAD=jDDHSE5QpHxEwwZvz-Ekfi6t_PM~rR8mN~L0>h(2pGVz zwp-wDWpZx(xT3~t@|AvlgI>J!WzHo?>$_P>y)s&+?`h4=IM{VE^TPO{GY@g1GdSjH zuX#-gYJtyuIF6pbvemq-S!qodbt|Myy`b))fn7$?Vj{zKLZeL}W9<|Swbpx;V^Tt^ zxuzv4aSAh!8w^=U?~HG^T%2%jDfpC7cWh-kl)K))T83jj^(?`OX?7{t&=d{AN%ei+ za)oJU^R~AhVIu}??g$IO{5FJ)`3RF&I)#!LBWRTV8Uye^h(uBuu6+H*5|-lOlR}Ck|WrYMuLP z^tLc~TrCRj+2&m4jdqS$!|)TD6nw-YCV!4HM~yXw|4?F2snp=GM3D0>bURX+=L1$SA!_H!ZHd;iq9;g&IrDvmlcb)Gi79QD*Or*< zA|CWcVz#q8DvN{FI2-aKBv85k81mV(+{?-}|Fxf6Z{;Sb>|NbUW}uHhk%KJFVhibU zui~WXdmmCWidM*kd?pX7VW(5+hM77lIH7C)o%@vwa9YawjS4u;R`om>FC3{Btn>U{ zAo~N6SD|qq5%NCCkdLokQ*0 zeB7K(4GKh(^7x6zvUKQ#zvJ^PtGm!=vh1fKsbqm8kE&wj+GHxO5(abL60~=qQc-f1 zNZ(Z=N?Bw?lQWK)p?!->l*b3vXs5kGvmv%_|!uq!Os3kb7q zpsc0t6nVo*h}>Ol1Tye@;&ost*qm#j!E*?l-t9EcwOZBK@7I4}7w=|{Als>&qq05}AYFEH!()u9RiOMORnG+g|s}TrVRwv-KK^?EgDMXUdn_(=aSj zyxx***`n8y_;u8g$i!tt_{eCm1}sYghXKo+YDY76tgMz8kyMTivzcxe%%XFdJ2quu zDCTHD-}f;5a1biIzKXb$D(5=zSZ|G5HM?S}SD)DU@3hfqI-+f+vHdE^$qhJ{aaJ`7 ztk?5n%_rR88;?h5t8dcl7&v0-XMgq4k%BYhModi_ITGnBgnu&ki26`r+RqNIw3F7j zzArFFlG-SiRw0#`Mh0l?VHxHcJd`{Zl<1iPw6I}N6Z>+l7T%Zh&hTCqd>J)$z+aNL z%?EHh%_GRn~yX(BCn2GV%g_*pS|a z562#ix4;V0M7oJ`d+YdHBT&S>J5kv&a9P)aUy#`bWi$pDHRhV_VH#;#(9?G2ME)dv zo%HU`_p#C-b%KJgtQXg2Q556{Owt6h?M1HZqU5QjI;`t{ONu$Hb1>5d&!>1;sanXf z&TWSTH3tW$dWMr{^@T=u-M5=hN z8wb2pW+??LZfJ45>Y(c;BjH#Rd(LxEn5NFZlT) zpKJfKhc^2IJ|Kp7$6p^j%i<&ls-9&Do92A_WZ7~g3Uv^^hAG~Y-IUcn-Du)%3^fS4 z*U>3mU;H86{FkP*Won*J!!_*O_U8z54&G0GG}%3Pc3dhs{pYCR1pfIs-r{M+l0)xI zcG(V+&ajL8T9k_L>fFr9WCGFgDt6%NzzG$}h_#N`UFGGq=<9kOq}Uj0=xM971$zE} zjL=yiZZqr&mvM}of8Cu5-waNI+L5?ot2kVZ$I&_gTZY!7CjYZQq6SCwMj~uIihHf3 z@hKZtS`F^+YpziBm#PR;-2Y4@koY){@sC)TF;%%W$p!@JgEN=Ta;zoTF>UPp1XA^w|uWM zl0O#+sgN*2X-|}-zyysi|2pm=(t`1?N~ZI>*>`ui${2vka}sE84^(_)1hlL>+Otsn z4c{w?*~br|QvV_G zN3Mkl0{;)<6kSP~F&ZkwN5j z@&=;j%QZ%}_xQw{Q0DHD;$Qa5Xn-?;o^Kr-GHYO*Zl@r3nTnpXIf9eW!?{`^CU;MNX5}qgG zG;Y)$d1?Rjol(Vb_bY5|ZFNH31&;09Pw0?R0sXCT#C4E3^cKb=k&hH&NG7O;JhgNzi~S zhOD;f#qnY4+k4WYeriM!B3=?n_^B-))dRWC>#TQ;M~-dUopQOvuHd!a#y&B2Wa;#g z-4}an%bf^09)mK+`oZc$a?$em8l+^5FG%Fz7?fjM`wf1Z*O8vG-ZZA{V+t!3`*!4H zOY=iS>;A6M(bCPzP|N9ML(ukH4~*>p(exEyQFY(fGaw+1poEel-5{M3(jZ+D(jnb> zQ3;WfZcyp&?rxBl?(WW+`7ZDO`#ldZ!*K8A#y)4Sv-Vo&fDA8-*TGxw{r+z+k28pr z2xWg?AZ7=2pL7@ko30{{eA3)PWB%GJXC23lRC|^(*p{ID{Tmd@pRjdW<%Fk47&9|9v_s>S>_LY4JR1CZ#^e)#zaoP~~ z-LD%A3c(zD8YN)xT*{(SKc8Ayaxy&tLS;$wf#lNb{vWIH$ zdEGNopK92-TV4J8X3q;GGKn4J<0vdS{dT5oyhZ-j^eVJ&Kfv&c(Ke@tA@HeOTCBLb zHhc2EO-$>HMIZK~YTSzK!*)NNUcvskFMYJM^mmHj2&$md~1sr8;}xX7E_dfvx4((Ug7 z4Os}s*j-;9F)*m*4KLQPtONPRpBp6Ssd7r6K-Q_nr~LrO-cwiyiIW)X`{aHi*lm7m z^lK*EMSoB34?EzU$8P$S$;@VnV<$+(?B(Y>4~h9A3KXe&UB_7jS{MKcgoNbdM{`w6 zxoJoEu{qXjWY^K3GJEuJYz;?!?cubqzPMM4t)mQ0`YTw7=g^vSDQWxokf64`2~QS6L)~M!C3MMtm1x#K*Q{3G%EGVB45~vFvks`jXkx0eyn#HlzJO zw9e91pYq;kpoQd~cFB>Aq|zn-@ZUWf$>OV#yuASamw9%JQOjgaO$8Bz$FqN$eRrGP zuEA|rn{c_o>mOy+D>{vz>RfKT!GsVBRguKGxnJqx1g#5dvQ{8YqiBZ`-N+Iq`I zhm?S23$A6-Vv)dM3*|ss>Ps-Sg;L?1KVccnMLWe11I5^6F_N{Zh45k>M}n@ z^P~L8K!$_%l;+}df}|ak8akC=X$PeutBkwk{2kzyhqF{aTkgWex3VWOz=(v#9;=$P z#Fvm`2Ne_M{VG?w{}m-$u57}~r8VcuE0bQ(lE~%no3x(( zQec&LL8whZF;r?5>Ncs*m_Th0Wf6EJx{+a{5;h70e^#gMa|npzxQ zzIPm7dm&;t-t2iZTxXw62HBevpu`jJ8P%gr_+bxaRaO`>Hq!=0; zT+#C9J9;fVXt3K9L1$CN9q3)ZC`FVNA8lOYa4*n-*F*QtSee|8Gp-*54VEv#ff5dh zB{SnjB30;XzjL@f;5oJz>rPO3sr)CNJDh#+eAq zC|b2qeo+w}gYPWG;A}eczStPZ^X42VUG#yr}ri^CgF!<5TShSyG5`uR`=R z+@x|Eq>AqwSk*;T?xHyady_H%u@5*dJ8Ups0t(Z+2A)Z1?%6~FLVT94;nmM;i~DQ$ z-3ye1v=PXHc7m!C^c~bSA=U{hK`KADtWUmVH@Cp@pgB$r~gz#S~blNex@m{y#IB`q)q)q{MUmf_YoURJRfoS z)s~dkxTv~l?d8un6MO!q-~=~kC@s)|*x8j{$!j83C7;WdKdzdIPd%(4U|zVpEi~&n z7Ohcla698ehHwb9C{y@B9B$hTK5br8~vhdw7VB%O&??Rb|{xDWOWG*t`+2Q zM{Cu%2%bZHVjg8S_cjmS>wEX$EwkfJkadAls-xqlrI{#_ z5f{4R43zOHkxlnxZ+*b^)iG5N&bDJ@bM>91YrkECwm9Oa8V>M4Y>y;}`l?j&A5|1R z{pa0lu=%RC4W+x-wn=G!#=G`Lhs&j~gk~2gsL1^hUe{ifizhMD^Aj;j=>h@34I@ro6@aP|C%Arc;lO-Ns#^sHMQFKub5H5n#il`ywp)%j$Bmc>_z z*1eCFuX81fnV`eS8oP5xjjN0I#O)C`f9{~Pn1jS%~2@J-!Xq~mQ zY|#|&C~j>zt17eCOUQKt2O{gYuM+jz;afH|8xBjsFCh-+C!F2hHI{>gdkr6cErty* zc0ab42a2a)^upU-kS|r460C2nc0Zx>o_?^TSLd>J?@*3^vO-ZVIckLd&9gJ5n;f)9Q z$af3~A*_?U@(_pS73VYth6z`mT)|(L@l#r8pRnZRj7y0=uS0%yuL(TKT@@1nd*-Zn zhwdn4A$o&&fJ=km-Tyz>Je(joBNWB6l52Vn-MZqtj4$kd8|SP-Ip-8XG-t>1}_G}%k)qaJ8N(DS}I~eQ> zt}Le`S3;2k2X39Okku-uJa7s@8wV;)^65NuosjyIoLh^V3S?Wf7md)g{rf}7tFO^; z%Vs~nZ|r6q^)sUJf93mmBer`BJ`O%OH(Oxp*!*kzhsz{~e-uX@^jtMHSLOr`CS0$m z@a}$~5knMe7mqB3d=m?8EHkGEX+BDju-S5Ff+1$ZL61STlZ1H4h8lYVr3e!PSxSXRj2AyxmlPujKZFE+-~1Xs)91< z5|atJl7B=x{C5k0)e&qjFa@YN6&pBBt5-b62fL9_rP*&ReDF}euK-G+g}ZxXi#EQ; z|KJF2LNl{R^SDQy^S72((0{Yr$~#*=Nw9$4@f^e_)doUjRQwE9!hotb-?4-uc*Bs} zv?xm7f$UL9O?liLqg;LE@@L+Q1b9lqvKRCN;L@86_(%pRWo#ztUvbM!A?G)GR5GPK z`_>bYfH-Z}Gr}W477BJ38eD_l6N}Vf;uf>rf|umTuzO~>Joi*$q>ELkZM8;} z)g++l2&Vi*fHGTtQJn0}0><5aC*sSA!~QXDDvnIlbTc9ZFM*?Dn~Gxf?|+Z64p>fa`+y$Zi)7z~!4;>|KJL=op|HeMqP4??f@%m}dwPeuCb34Frm$v<4xhO2X z#@)Si_ozoMlwJijY>w^uP6|LnTbP}OmzzEYGldl3JpKt@$5;Nc(Vy&I=`wB&tU zHZg#INn6F*u1%*8^S}$Lg$cKNGf}7B!BBePCr2L%u(aSy+Uk9XJ&R?j^VvToq|IAP zEaeVIL}K!?9D?>sF6HG8hD3;9J<*cb=*J|uE|(viSzAi(H@UlqnEwCVJ3WiA=isb; z3B6hR1048P)1wyHbXNO8=%o2nPYR%i{a+{70sRF=FJj}GqAH0=PWZUlVgH)7nat*k zLw!YT3b%d3KNW+y-MbI73n;Cs1NHaBDu&DUcfKp_C5N@A$AN{%m}VJuQwPV#5*dMGALU=p~mfBcs_G0Gse`p}~ z_?$8<=dQs+&F8Cf+9J4~dQdVtbY}rBa*X|Txd_W1*8Z?cCWO{VOI&gS>D^KS9;-if zD*R`UppvA+C5h(g+wb7YgZV=Wx=mkSRywDiI|uK(C5+%(5dZm{phOYex%#s+-!S^k z?DK@b?OCS$K{)Ic3UWavAjcHD`qnp|0u3@7a}*0QrEyh2R=nh{J7|69-(qO$#{eF=(Df)@VQY)mLeL7;3( zDl*Vt8Ni)o-v5Y*8-2>vCn$v4+Aj)Aj}Nua1J6mLxIobj7lTejRvmo=MRLgh6esY$ zZ{~d1T#jQ-16ihg;K@3HB`j*^4smBS34KXlKuV=`;}cp3vi>~9-BdS-=*H+8^k!OW zN^=DyGz45lF2hQB+RCd3av1F+bh16RSCPan0<7Ffu%Z=IkRV-3trDM0SgG5=o@kRo z4MRnr2yjJ#T)!huqPW4Y9)?(Njn-S*8PDz1aO8NE=|>+H8wj7X3&L=1O2iTI_M3Lxx8q$Rg{<@(0a zsHn{WOP(Zt9waYq)h<23GzjWYvkrEYkRfl9{ya(IRrh1HN`*K;t+_&_m_JyY79Ll)j?G&f*#~`x&)7C;4Ru;j#va) zJuLZ~LOXGBZTT*x0n2LU-%n7}_7#wt+phXMu^}KM^$hYJi_@{^Da#nA!VL9aa5@$I zXi^g+h*<6>S^L304i4nm7%d6Jx|Da0CPa15;WS!+W{kj+AOejlz!Aa;dCDyBTdi-{ zif8u%_WP`rO}|C1?jrbX6Q`~xqpjjOgw$W*>8Gde>-V$^z@2Y(;N5i!i4FXuGOilp zAH{HrMH4IOpik)MJDpiNCwVNOj)$5?7=SNnS*<@_^soqCtSzkJ`~fT5&-L`uoBl4K zborYw#a%^!L~d(Gc#=RRwtqTwB2|RmO~p)N-hff9{r~vOKOM-V^!9K6jx}(chG^)b zdeyHf00C6gxiD4RO4GmADtcv#>@;TMLmVa-kT(C-akTC&O`fW1)g*z%JKrsed*L1} z4QXCn2jOfn#I^+0^;oYNSn_8XbkGQPtIWw#NEWnpdj%2pH}AkFlh-Ek$9qNf zt0p_nfAwK)b81RymVsC5eXoOXoXUjxl@XQ%;1c#K6r@vYsslevH80&{gLpM=lUAZC zYCk_L2 zqtAVpd8+-P9%MKK(3OMUB=K?EzJNFkg^Rs+5vY%Ay%AP5c^!~U%O#NfGQdhc{W)8z zh;^=#?9*I7h>y>j80KGJa?Q)pqZPP^zlJnbBTv&M7w$=5^h92%P%#Q5Xy7b+?!BO^ z{f8H6N_In8`QwSQYETH)CsQ;rmpd5%KXaYxDU#l@U7Ui-v#dqq!{~u5=GA=^!Y?P= z3CpGEx$vphTWlh0gtA^k2cfWAa`WZJyYTB#OuEpwtCOueaBqFIQoaNIIeOJn6XqjN z0>A^Lvcn@MPyf&hq!i;9#k&na)pIJgsg+#>_#wY4VhjpwtGFgBpM^budR@Sq?-I>A z<(uA&mAzZhZ3o7>V9x*QNU&2#0ytm+2R<(v3lZi%B|YFLGcyK}H&?hBZV-5{mb484 z!PDcz8#PdEuBl)A`uAi;?WP+4hkNhk?ZvIdcH~PA$kSZ7`!Vb$lX=ndUdKiyx6U|= zRg0Nu&;uevz?ltvSY05}t2MV6ZfzaXbc)`-sLfy#^h_r}%N6J))~^h}p*u|pE{r`o zgBXg|g%%FVYI^t!j=(nQg2e8;{|ttr5rcC1_F-h^$uJpJ5C3d}Mjp!_ds5Qta5C|= zCK{ZT9@@)f!2X%B#R3D8Qme<~XLxO6m?Y&~N6%kf0o&-vTMg`H)PBRg6c~u^f)zj_ye}ZZ+lMpGN-BPU`{qe*F zwL{{o1gs8Q$UZ()p%{ZgO;APMgO!Q?D5}s=F&C`zZJs7iFcksIQtu&ssbznQm{%ES zEJgrW&6==YmH++<(x^(t(IfX0eXV*$E$U-1@Ur52Od;FExA|#ns5Ue}PgG3{M?zIM zsJh0H-Bw7WkL>QV@RpCwm(rZ3-C$e?uy1Cu2~+1X{?&nepyOA>B>LrhAAO6lTtNr2 z0{Kn<@d5neiP!3F2k23F0MmWNCO7p9fZRwkbL@N1m!$8bL)EjS74Pw$!iiY6A7Q{C0~zVBCTNjYpS=QW7SoP%YG08)y_L*d+ybMC5!?L zP~qd-O_io!->O{GG;i})Rwn_6{RSo5-_KoBP&yY|cHT};is;>jE+a!yIbQ%z-Z{*X zR+x8vwV&S`{89BtD1tHnsK%B{p#&8!_{D9Y1XXIZ)V>pZO(C;s0a=?eS{~Z?sI4#; zMxizcD5ev~j8l%y_~8eLXe1c%t*k-Qy{?@~zy%;cgpBO31)K@f{=31ryusXB{;;Q2 z+sKBvw;oJ6BpA2>kRc-WnS|gRqkD+pcZh2jgsnx}O0N6Eu~c=~Fv_cFP1c)JjZK7a z`0-M$vqSPvhNz@SgwOV0E6hj^EcsN6NJ}hg`^uF317d>CC^hLwH%Ljgvzqvy>#bZ? zbxZiyUpkmXd)INi__^K2L+d5D>n8uw`kg0abmfc!&43F#Y;R3Dfs-qLQe}1r z1(MmjO#8f+53ifOY4gDG9hX;yzLU&bMBp)|bB6Cc66BG;vm1KS2$3U=BTA}5UpF1w zjb)pv8h|^rxw;%IMKgLUo252R?_d~@rcGM)DwJVL(nbu(50%Y3nWaoHB+N7%Uw-kv zNNBjc76aFA))P(o32M4k($_;^7oWoYHayA|Q%S97ZvZ+kN)f>%vGYO^ML+I#D}3;|DedR3l{jo$zFx z#tSf`8ZO4jtomttoLy`cX$l?cc+wd+2znKqkbn|1X-2_(wH$Ft)8~#KnIkBXRkPXP z59>;X0jtx99r@$rSMo~l|Dk5-wRqWTY=j=$S3g#D8ioA5&cq-3ZT5#s5uXD;_1hz; zbVtaDZpLB`1k>;Ba{Ya0nO54NRu>FMdJeW#wS*yo9OTW&QT$m|ZQVzfHW+-!@4D1yVauWre}7MtioMA}9&T zYhI$S0ZGc91JYcB&ge&~3w%qbE?w|=Swf^WT5|lfG@VpxJ(XD?*SJ@$5%oB#zXKk9 z29G`MHvH_^w%m5+B3y;~8*?FH*p}9@0LzP}hi`cfdkHjXpT1+&p9uw1>EJ-{zy(JW zszX46@3qdF>VFc8xl3Kyq{U=d<N&OY6+v&9rlbyj>5Q8Gfcu{2$#CDQlSByeMo4O1V=V zW#1B3Im7>sK9?MN_wS&bi~@e=jS5a>y|i5W{Y#J5TAQ{aeJ_Q-KODOn?w+pu3wHwn zS|y+}H-gc%D&F_X2DTFhg7zL~{br_@MAGxi1{}Q*2$-vk+i-&)E+P=k9+n8+Z@I(C zUN0a#hj;9|zfmGJ3(fKn(|QjpOA_C5M-rVb*$m-SY2Jsk6xD`&ZkBCbfT#OU!wk52 zEQ1^#+6k#*$Z9_WrE**_raQS^E@dy#Xdy4oFGYP4Zd@ZunDp?l)Z$e30D8%vi}!FV z1s~(M6tu+eUERn-1s?v0o3^a)5*7nd^*fFatIEfgWMBO$gkeuXE0%*m8s}g|7lmDz zgX>XXCaR-w95lIv-y;VJNOBj65Ph&Jo~C-LeR;u&#lE-t(=5q^cnz0#&y^e|99K@i zZBhK_kl?dgdi}7s(XNuy_w*iuEup4}BDp2IS|q9XqWDg*wa z9qZ9Q$_!2Tf>8WHfL0O2yfzIAnpESvAFp8GVEWO66s(3|Y8;Wn?9F;_3rb4BCG(6w zAEGqB(R~KyszqE6Vy#JMLI!&Xj;{B?}#%%1R)C-EPJ31H$G7Uf%(G!1%eKdco z${Yh0_}wHP!~?#ftOu1WG!sHBD6^z&ZC#^_*iKI}O_CuwiTc9L?EVdTTb~>HMj~zt zdaq%gmuRu(5zlUM;-9QRHJyNOC=y|zdqcv=`|!r#`u6aBC@<~_;5*pjc)tClp9JDB zb_Z@DRkiRlJ3K5uSkU3*^NH%omAM*(e8n81z6$kQAI5%Z8di?nW?%DS7D{P33 zaY8ESQ(p$+>Y4pO(oR`_1+rZZmSNqXop`a5md%x9(9~`$)TsB$7x-`6_)q;Ah?=O# z{Tlmwm&Qhmx%XQJwN*P+FL2Y8sJO9wl;) z=(Y*B&5cOMugavA8(kDW8lo`p#dW%qxgU|I`+ZXhZ`(F~)Yaaxou8at8OO&6=uUE# zjc;;FW|_G{fVSmnzpU^PVkV?Arn>q+u_1%RR<*L6OS%XK6Od1!5tr&XHOgb2C#~pl zYu0?pZWYn(qaVRC-1gtTx zoyud(Yanf4Kw8J5nQ1S)ehT>qQjA?-uQ`*#Ysp0toduS_i zR~S(Us967{_hT11u_e?FDq%-R(uv(q#EVHF6iTqdX(B$z3xxP=tT59%W za8Qwe2dfHH1AHYKV?hItHkd_xC9*%f;_mCfY@p8`Zj!g}`SVd{U|5&a@L?2$N`TtE zIH*Auy4c{X*k3;O@R^>lh)@O|p@GX6wMSv=w^Qv$*1b&1x{pG9I znRQ0+aD0Nzw)2;myDu7S-<4h2-yt`5L2l>{#UH?m%Sv)w8jsE13y6o`oZ-Xp z$`yLa5Cj=AGq&JW{riN86*RJV>zGvs4ZgG~o=eG%IyTtA>Ow9W0MK7F%|2=38AAW^ z$okTOH8BaY$vXV+o(V=mZ50Gg=c|k2L$UR4jDuje{64H+v0yG^G>LZ95duH0+dY5t z;m11WG`MS!YVl zNM!;jZGRNU0*^|$_lw@j8MlT(ShiQ%vhisbGVla-avpJOzNTQ_h!m>s+^w%>IzE-_ z)Q{gtkVmmr=(Syl#>OJgG1aX$JVz;oke1CWR^{v;Ez3u9hK2ffr9E`49$ju=4RjQ1 z;5*84P1>Wgn6ofi(3zp2C<;X>_u6`Ox_1tXr|QuC{%9t| zsK=MdHc*h)vfTL_S_W7kGGFG=(u)8q5Jel$8Ku%{$(}|k4`bKDf8J5laUfUTg=QXN z<|>3CwILp&q#$^1uqE5<=k6)4n2$T#F4wp+Lq-$RK7Fq^M3{yXI^2$@Ipfv=qIGen zTA=aLgzwVc`=~L<76Py07%l4^Un;Y1xAbivY_ahFk{;eICe&sPBToN5Wk_lpBWV*W z3Tqp_4go*S5N;LX1Y!8*%{jbPb@CBC{1-4rC|NM(BzQzaGO7L3YCH^gn?)u!qWVLwOh7y ze9r>v{Vvu1&*zM{fNpWpq58NULKXFlZ~2%f`73E6aFtW@Nt{a)3Z zw4XdmBGm{r7RZw}`ytcI4?X>`3~Q5U&fW4wirYH(LP7}A$|E}XO_7>voGOHPE|z4K zsd_49mDZ88kO1F)G*VCQWMXw@z*O#&w+$l>E$y1;Tr8#E%e(GMnW)BZ8<>c5mS_O6 z&)mO?p!hRwZZ~WEYPulp#T3ARydaWuS-RN_&3=i3CI*h5gm9g~t--i?FJHYcnFZR? zLEBc)MpCHmf>2Qe$kFvjn_WY9V4czoG=YLQS)iXXH$tv6LSE{T8dTZS((?QIW+-tc z1ns6hqs3Bf5Y4ORNkMGK;XcrJO}IE4f~IZ5{zEArGn@}n^^wmvcIxHFn9N67_W6MLjr-5o?fX2A+XC*fM=MoS} zN%;dpW?PhB=iJB(DdpO3F1b{mTYm_Na8GoCIpI@x>+7#?Yqf?r!aP8e5Z7O8VcrS4 zh>c>p%1SNoC4`x@`%8~^($%P$#FjqgO-8tzH)`w(C2!14#Ozdwv^@@}v+{?tl5=OTd(@w24G0%S8jR_=$tZR=jc!)W@*yxxCS zm+={kW>}K_VO}p@=qp|Vu-IB08vbRES2cktURT+s<$4zxH@LwLXx`2k%|=h6FMr_; zkIyIjc3#8vm*d%UNDxLRnc4J2nmKW$tH~zQl@lrih@mwdpqY*-5mL6^gc=2~YOxXt zqxt@Pt|&0@IoEEXbogEV;q$kWmIzVU>I7n_CO7>Z@nDoR6a2im_xOZ=f@1G%^B$#t zT|}mZZqh44NcWT?;zZvml1%+I=_-_>X$XfAoCi23sL76~)db!}K`RmOXp$N3{!59N z{U_Bo0GequIa+2c6$iv+LfS>x|AnRZe^c$V{f*?q1^PWT}gO zTwy)P3*$U1*QXWJ&FcB`UZf^p$~uhqtbCwS;=}4G_`5-SFpQ72LZmfKuDHVY0qxr* zU5j(|FoWv$D>}osP|Eydtg6A{yb3LkgVHKctXid&{8M&RM=*mpw}uV$a@$AE3ky_K z^XHXip!w@{_*EmIRbhWOD>SYKUv{_P@AoVDGV1Zh$ImID!w*KMxB6aOo%_v8ha)@= z?31;>l&vpOkh(sU7ZQpjk9CcPzDZcJw6u?U8KY5?M@K1DTa00MHlx{jtYB675swTg z`a(6!hW(u$rWn3xmC5I~_ph&XuGUatEX%zd$Z{j~RxG&q2lRL~#lSLM)`hQftvPpe z^tK7GrLB8C4=@8_5>T6ABFL!c7OYJLEn-PLS8%{^wek9plv$$Z0$XSK)UK+96)ir_ ztz2ac7XmMX=gkx0l6$er3!<(QZ2^4Qgt;V;0_DkW98xmiOW9u)x~^}%IB%3mMY=H{ z>TYDOoz})xI=jkaOd)x!`I|8n1T-D^sF0_~7M;7AR3db`t2wUeB5u>{@R4$LYu94r zx8$}KXY(S+{#S?z3K7`yoDg>r^dzLWphk&AxVV35!}376xk8d4bT2|OT=kyP(<;xE zX2YUo)+MiV=isOCC}ns^C=57g_VoBT<4SiU2rdY(`TQyzBJ2O;o&SAHUk$T-ycu28 zT7>Ov`RCsL8Lo0~k>0eStX^3mJ36>fLS7>D4REiScWHY)LUG)@CILkeUsF~1-dQU0 zXK&KG)%(cTb=h+}{a!F+@i!?XOf=yKS6t6GTN@91A?{P{WrR!Z{8bO#IAS?yPH|n* zv~##O4x&!}NjwpW(kXy}(%uOt52Buf|83v$*@7@Crdu|$5wn71su)Y7%2#itP> zA)O0L->vDR@oYk67}}QkIPzSD8`>+jfWYUT?#Rb&w>EP3HLg716f^9k2DQ~RL4)iW>1XL5#S6=4~ohOARZtOHKb3kBm(V zQ6SAw+rQQ#JTnWVN*k+;`JF@N>S@*KbvRjma)f&v z{@t+j3@mQj!a@1f+2xwQE$hhAzy<6uSpObPc_;hg!1$;NeiXdS<+70xQG-v1N9VI2 zX#War&gejYwO60 zmQ&S^{`UQyT;O*;hLtQa6F^{BfevR2PK|vY%wY^QQH7o^0`LMtP0?y53ID#_f;A`{4VN*A`xCBRL}x zo^&i{O1c||RqQpN=Z(Xg_#{GXsl3+zXe&SKFAK#UEDgNNERI~PyXXR{+{zwz8E4aVbdef8~zl1})z}-;@`u!Kdkou$DNtFYC&cy3JeoT{&nlRa1 zyk}IAwGyT4j1c0Oi0m0hjZ$};qcdW)*hKk$v#?p+hUGB-7k?7KPP6Fdy89vK9|?!y z-HvCot8xq#7J5#!<@5|rB=L-1@?~}4PWtvkIFeYlE*GhX{gaE%cfucpaUmg>9F2%U zf-#`$E|I1v@cLg+a6xK4!E8Z6yxi<18g@+@;h1)Ci7bOu!zg>8hGMR$uW(jD!NRSf zZrG1vs<=Mi?=t!WDYlx`2e1VX1p!qT*z`;4@f=lSY3=LJSqB;uLYL?gWB{vT%F-CC zl*($Y)2!%coDL<-u?v}MF89}ZG`2>Fo7-y6V>Cn*M$6P*{N6RskAn;Flb;h)r~sa*=rGueb`D z#H|lm6fD#CzFOtn7b4`eB(|m5S{b`D6!72@Oi{k;BA+|nB^v;dZ{I$GF?Qh)2XMJ_ zYSA$3l!;dLR2veH=fmz3T`vnK;_!ai0@I(n1@!N;sTt0LtTszf4(`PZN%om5S_4`f zOqhtUy9*#)AyU)%J`Wmd5uyqBod8!asf5xwJI7N8I=W9`dcU=E?U35CMVs3T0re={ zbdxOikG6{wrh+;bRBP+!0P=^?iNMb;pJYa;heBL;7UTrF-kP`Tb^I53Fv{`w zfycx-UgvFp?VMj5e87c-=G$m?xYMIG6YDckk$+mmX z8#M-GN=&B-fs!Z6>hAGQJ+q6tJ3!sk(4bK24QUEYYDAk|s& zO6WfbB?_tW)9yxzq*(xSSKC9s-JMm2|1h}i;cw{rDHwqyb{fvU87Y5LL=!($YAIqu zIAK8?p0xe@ZnT_213UldO3E72(2>8OCH|f;ku&l3MTLxjJxTuO$XV68t3vdeRFR`v z22pD&dimLku;PXUqD9sGX@v;lnSIc-b78igI}26gOnV-u4iq1UuA8S+8~PnzCg?%L z1f2YKa%28G2Ww3yUxb~wy`R8ubF`256A9QRd!M6cj$}+d0>*4InmVlA-(da0zXBX( zWQ$t);h_h(JG1d8tn0mOh`h^_d0cE+X>oxHG3wRUYX+L5SP>bCFW&UaKJfiv3cuCz z4c-id*Ex_fwrE?PLk92ReeZZ9`0BiWqF#>t(+}NtaiNYsLOrjkJE>Q-b6HneJf~c= z`u2r8Q;EM5Tb`_OyAH>r>TRGT$~E1Jr4cuID0UB%avM|iY_Xb7jj+AtBS^^YPc5Hi zgu}iV+O0mD#$wpcrg2m@h)5-j|4biT+@9xB9-s@TtH`!B0TKBKi{Q! zIbUf5Jbm0E+ol2B-uyJRh+1>bp3nNlYXX=YX@S~_yIIPH3O#dfwblxm^b_#kjD7#lJTyXq9{Mv!&fN~G8|feLF@a9mAw9W zDKP)h*6y~mCzbn9rZ{4-e_O2&D-ryv^YWrMrzw>ApBP~2BEmZSX+yHZ;plSNnr<5Y zv~_$9a5Hdrb?;@?Mo)p=oxK3A8}cu#kwveg5lfVfL~N}yQk3g#c)NA!KyU@jm^Cgz zHS2x#8LNvF9z-Fj>QjuY5zT;K7|wwJUa<&i`GIG9 zH?bH&*o`yDVyk~>;x^(l_91GrxYhK=@Q>-OCmonBWrv3~F)#AI({{!E9&F;OB7;1l zGef2FY^kYWYG(+c%H@KY>?~kKV+X4iWGZJ}WO%U{;cBVWpLePM9H1E>xwUaT8gOY8 zW}I3(tKSBcK7JG! zD|Kltp1|Q|u!Ws%9k&x zAZNb~7v)t4>WHS|ASdU?z8^hIf*$g^*@V3{tadHMrQDx#FTU8}_d~z_219;Naol z+t01`(p?QTOyp865^#Gr&^;09=hEf=SAO?M>b@k&zAqP7G-fpN--p6FgY&Dr=HmrF zx`l!{tyTej*|1^M){M$Z*D(i|9zc{UF(0R8bi=L%Ac`Lv(V0*b6lr#ZAI2O%?}%3N z2!A=XA2-xfpqK;*-4|O!z+6ZNpO0@8I%+sTc+ImZ{VEmu7g@dNtRPx?>-P-0sx3=5 z+L^_qk|X23-V5<3tQ(1Yhd~U%%y#aPoqI~i@)Ob*`58Y7)jx|SiNpL=M>JNvi*b>7 z$yx$Hgb+zY>>>w?L=y!CxU>aQb;FOoX~Kh~AS+{fpejDo`yE{wJ)K*>&|g>0sm~hH zLN+ug#$*lFG=cTrog(XTm7-zRSvD-k*6dW2oyFFlW|!sAc|cp@5dJROJC3cQ-JAjE zK><@m7QN)H>0<*EskygE-%7gb>o-@-A3A|ZxF%CAY^nNnNE>)mR7yo*S(!2g)3eKXezYjGUu3eQK(FcULqoJR%uM~g2w7s$4!csMod3DF9 zDta=yZ=1^HbD#N&JN)^KUrvnh-KFVPkY}@5xLYN*tVIn&d*S;K4t2$Rf*QAZ>gsj5SCQBTQ1ZrxMm3&kOk1?{4K{ zOD~PTHN?aOVrmEkexGCX^E}1002-FJTJiad1BX9Ijl`B3#-cU6_Nlp9eZAw)Qi(q3 z-iJ{K^>qcoE2FLC?|NJs1-2wlO`iK~2od3DhU^pP^lX~^f6&Vj(U&Vr`bw>q$jhp| zovw96RUy*fnN*YpH$>4!H?O5!&7Qr`6%$>bcuE+)OYd*Z&=$yGTZfy90^EnDX+dO8 z3dXXy=2iQxX=6q{%ldxR!Y7t;!T(9Keo1W zw6op~%4q%}6y6%nUJ)$S`~xS3OObzDSHk{ioyfYn(2E*D+E((Z!ij&ra+0@Ct8-Gf zpWx{SN0V!8Un&{hRpL#mz{vx7X_v-dDGWu159HN>5p zVK}dHbeOS=8Ib@lTALnIY<#C7?WnWMNU|Nh8yx8l#q-zTYVCfS)7nic26Vn(mTtnH z7`eC9#y`co@rfNl8Q(Zb*X4z4oV6kqr-&!*ZiPeGJOuf&Wx5oo*-yI;gxRMOPeRIE zGCm=-ZRGP$Rko^+IQF}Q`L~$S^wwIXY=kgLySCZB;;1c#yW2-0iij?y@>>d!38gck z*LTOFj#9`f?eJ5sN=8Ukz;vtGJ$M%f7&RW<=olkYDjTc zQ@QoS+q$;oPXKh65Ve=i(=Pf0vIa@)?_WVy2!+B5Z_K(3*KRZzV&007@Y=(Q1(}`^ z5Z7PMDPmpxNF*0m>K832k=%gz+F;hj(h_AKgrJByAa z{%EuDC}LrOVmoj5gvA&^eYbmWr(B(x%vVLG%JJy(z=@!7Mkqk z08H`~qwLx>XA+0fYQj=Bxibjc_D{p14CBQ}7j0)@D_Shs8CIceVp z2FdLfkSQwrT&-#myfIztR9QWX)wB@yxGvS01yxVJ?z^fO0W?U^kp5_>&zG;=>r|8Y z`zE2UBMWafyA9*e)GA&NLoBoWUlG*MC{UFvcrIoCiEtYT!I0Ng8qx2r0v8(hN7lpk zOQ>s<|Ni_rJD8Y5kLByPGqO)$G$;5sesAW0-fOZy;-(EUt<3NqU)!xI(Tp(=Ws}+% zJY`7myQvF2H*~OjaPxjO3xR;?e5Cvu_s{N!aI;at+5?2QSt~c2=^w$@O2D0$<>GXF z$3SI9PsJ1XM%p;q+}1f{UTPV8u43g&kxZ+l0#bd;pg@+JZr{LBq6cgli?u>@cL-qR zvlvg({|ld=68(U40%MjE3cyLce{!&W(6$&px5l!+1244H$)h^VVwL;ekws+uTWXWE zvv}`Mzu9ABC_IB;B2&LU!=PhM3o0LqZj6a3Q&ajmEzjcC0+CT&c#Vxmx#n_C+w{ZG zz$X@fGXzpNAcdYjvs`wvLJxgi4P zxDmMV>1#njC^?p<6MTLw!Foc~wzaz+0~Eep{Q0;XjpO;(FKs`RVrU_Ck=E!GwN~&q z@QZZiJ`Sz!Iqq+|I~FGc3{O5Qx~W&G4__;=aMv0Al1{ZY+X-{V&(2TqW$Uyz#*{B!ITav#5&H2X}eXs^{MF26HH8E_&tg5jF#@^ zC50mEKeP{a_fVrP(;!>e1T8hMY5r1B*^3NtY3?@tZK#2Z(2Bqqe0zdU?elyFH=9-K zaTlRrsk=BrjIT{fsO{!teKZW@_yGI2_UOl)@e_-oHLk(#A@X#0aXAv)Zh5lr9${6v znzT#t))sf&*VOo&s+hegnPbMl^;5jLRn54y#RlKK0rY0UCi$YrrZ;)5wfW^45~U1u zv-jXmYR)W`&AEq_xlwRjB{YpK+@+hT3u5$}>pj-%9>%W66fh`^UP8$)&j|jvD!RNPMjEC7%TEGXY;?V4w|X#dp8!z+IRT)5`jhRyXVy4J;}2t zP}YwGsh(>-!Z{N8oXh$Wr|d26r;{6gn+Ac+H>Gmlfjlbb8CQ%_>^<;@Mj@Y#U(p=Y zAEaN9+P*BJIfHQWv0I}ktYDO9Yuwj1CWvRxGPfX20x zbBKXW1bXS#@cg-h%^*N%S8DVQl+Jtt-J z_47r!sTJ~T+sQ<3#NGO8`*_+ag?xInhw8}yXp?=NhRc|!Lt zt;1&jGRM)RBR(*dYwMXklXh$-cx{>w8lI4D6Ds=nZ1S+PmUFXQQpyz{^rzjic7LgN zJf8jQ_(OrD3esrA6(@{|kM~fN63m`U%q!@3%f&5zwJQ!oYiap50UX`3f!DIAtW;feD8-&KghVUhJ7)`I2`3 zDP*Nu%F7nnF}f#!rFk+kF6S5XpZ`bHTSryZMcu=PPC=0FMj9TFE(N6ol$LG;q&p8v z2uevyqjV!JaVhEU?vU=j-1{Bh_x+9UFYXwOd+yom?6cQgbI!H*7S|ffy#*!`iE-sb z=wjP+#TP#T*+=PCj^pmkcj_lk2}98QWzGR8Z-c+CYXiOh8)|@!P?L8jz*EY2k|&_; zLxoAy16yz6Olm|3 zl+a;$9pU<4H+PRRu58dj!sG3l4dCd;1kzA2gC_Hu#Xw#@U*3zSqy}>CC6WtPu5s); zNjuv-G%&H6B?>8t#_TU^i+waRpgk$67XyaXcL6~l8Edv4Z0)Hvz?)W8311n~doYghu{TbxpeJG5 zOFNlc_eesE%lQb(58E}t!A*qJ8!PHn@WLqQUi-HL(hf2gZ9S<&`E}p`kiZ)<7B4Y0 z?cf0RsT!seK*+*<#NTq_Zb*!S^}Ji1&-d1rGE~tW=ix><`gkZK4|;2F2eT=M422K+ z1eJ^%**{2#?XD8!W_!PduM2S1?3g38+5>kRuDt3zwtz|q(8@>dwkNM3&?~4itMf~e z$6_E=H4Cc`5*6ePeCjqu5(tWze1Bda)n3=;Lq@O50>^i z5@fc6?h+L!eRr>R2CTTon>r|Hw_dw#*u6Ygy?@ed_xAp)o3E2DQdX?(x?1o2EA}jF zr86z8k38AIMG!%Fmt1-4uN-CmqW(T}E z@V{kZATizTWgbJtQc1Y+BSj+Gu-+hUZ7^<}zGHc@-ZV1WkL|FYDXd5mR;FnV6I71>d&gXal^X4~7k_JfPnsN3#9ZT<`FrI=(_!<5lDD@S>F3&_neAz@j8nMX zY$GhUcP16W&GQ>2H`h3b;!@>rkAXOi;y=U5u-z{od3OB;nDFGS*E}Y6nanGh5A`WD za5=2#@<6W4vh@|Yf0=@-9rki~>z6GK*LP%`?nKS5*WS?PlzWc)SK)UpR&=IjjfBrE z3i4|dTB}sqMl8wKk{cgmr|qhmJs|Zg1|Q{;l1M!*b44qS*{{5(y8k?XxEfWUC}ir@!;6`V`D@C zy;xi-VwSDUo(Gded96+2B3|O3yN1K({C=q);vSO7`rw(l|HD*}nw)qjAV05F3|))8 zoM!5~8V395h%KE!IheeMtS>#rJ&t|Svojfu=HU5nP)oxh6UcS#m;HGGolx8cc{Wju z8J>T3S9xFG;9f41sz)zZWAqc!Zvy;Rdzt=CbZ=3xHaEaY`yaeRa(f41oo^A2K4-C=m^%A~7n_CL=XIaZ?jJeN%OAWuQifEo$O8Nz{dx)(oeP;NTXq zP5j(vz4yuLP8uf1;O;7En?}AkCuHibH3*g7|XCNDExm(;JT?p3Tp%QCr*IFMmNq zzYQquKm5v%zRL6U8|s>B-~;fltj;<}Z<~jQw`qu(RCiyba<*)DLlI(YFCkl*#9*1# zU^#{=t}ZBDXt21%T{SZRm2qlGMI>na_}NAg=TW$yO2%m#8r_|2&Hf+_*7K`bfuPTN ziWK8A-a#aV%8@Q+eQC|P&?UP06rt+N98RoqhbR2Z=gw3)$Yjgj73^v_;tSPX#Ff#z z9q3c;85S*l8spy3AoY^q9g0YHMY)#!D@H49z&t}de)yA1N6?r8z39caW`34jG+um; zD=+$*GZAjwbc=R0S)y*H0{+?Ve^^hv#ICNGIkPqn6`H!WaUF{-W?85GbM$1%WyYiI z?QY*t<>p5N*o7Ow#skj_KqFLuBd*Phyh@*Bfx0)KTjP!?Eo|-OF$zh#C8xRRsYt03 zqiiIl2KJJd`OJI!&&MH%kIq2>lsQ=UXli1sGD?Oi@ncDIAPd*3j4J zL-Dn230sT}g@>1^FQvTtTDR<;`?F#_nGks+7z`rMVP{=TFHZazkvGXQALfvkbtc?c zR}W9WbG;JVmNVzX;b1+8tgPi6KB(abYGSEX@p&1Q0kq{6JSNKAI9?vH)qr8>X3kQt zjnNkKj3E*lq85nR%}xIY7~K0HRuH4zBtd!t2&(VB#BZC|Up%cPK~S-5e^<8S;@nZp zE39Ej?7+&-{6A*)wTUqIvvz(DPiYOLJh#agtOl+A=cCUbi5KTQEB4==)4k}qmSPGI z7RX4*eDct2be!-}Tl5u8!jYiAxMW}fNCzZ5jXB5url^bsgflkazIJ3 zEqiOl5isC2ZO~Z}WnXJ=7fbz1&$1=o2J3a9i*?0=rFP9!aXMOdc@^=w-i^U3SY#|$ z(w3_AXZp=z6C3dfT{fH~thP}3lpllUVb2G6%lGG{{e1_U&%uqr{piPF$$&ZMN%Rd( zn;ovSi!c7pov9>0-rVy1UBsN%d>&~woLX*=QF-y8^C>2ujZ!gYdOv5mZ@@rG?7d^7=A9kbpk$ z#v(=X+2`9#szGC=trF)85$m#sonSv`nqb=%0eQG$1dj4JS|d z=Ar{6m6gWcwQVsJ@TIZt?u@s*dRMp`!iqsi{(~Mrs9cL5&5`6+!j1S!`+r3Fo{R3I zWC1ZQsptU5)+f^e&cNFf-5s!!T?FifpdnEfmNz6Cc|qHI&=FQ1odWxp#}W6EZPWFE z7bdmkqiSOigLu3Q!sc+#0GaXA%4+=Xzl%dJp0K(Z1{1&`?y#)ZBI?~B8aKmVcoE(h z&qCe%xsrS({G7k9RE>SFihl)OQ{hoHV&TEsgsy*Bf6WGK_E>-k`’fR(`ce z7*t7hZI4i^Z6y7Eee}BzBHb~8aw7_z83%ih5JnUZ41j|hr{!&qTNcflHm%G0+k5~U z!Z+kM8(l@1_!C}8JG9&=Tz0Nkfcqj|^S#m;*s0SOKsX@Q;C9VW(g_y|_h7wI|MN>`7~(&WgU*zl4}{7E zdjADJ>OR4D4jWF>>mBq)cz(l77@GV^?}O=gFE4#%O=humil*_Q$pgK1$j)EOK5kpu*B{wUupotl*;x!sWpitp@9awH}}I%9PG2;@%?9F#WU!l4{f@i9jTeS7I&#w8)Tae_X= zHkMdV&h~T*n7bklAC%MnXpOI@$)$pDcxbc7n#il4NmgSLu;0uhTI6bDL4>-FVb;I-H37@@yTk5k+mYdRk<&Yxub@_=3%M$x#qVFG@()~Nt@UVbiXx3^GJTMcnIwj5E zP#UH~{aK_zL{*1}wVF6le*D_32>sbVq-t_>Td;To%G%PcTDb;(%`jz-HK7_bp}q1B z>f1pnuUpUa4!WF{QVrwZM5SBJequNoW}4~X;u8L8+2HEhC+H{S<5BV6CP)je)F2Q> z*r9c2sZ1P%x_>yd0_b}`);}?K^OGRz0C2VYenp-$JEdT-sj{b?j6-VX1{>_C+ml} zw7%^&iTru2^2CtBbr?j&3Tpf)RNS=w4)8wIOqRPeu*3JB`T{V_#am7J{Q&dhCtS8C zI=RPai2(e3RE-yqY*pRqrnBEf^&jMAJh=-_{8v#)1Al9kdsBXW2HN&KV)uslM#*6? z+A;gYH-VGC-PqwfOsLOv`YHAM16y=(@*w9Iw9EkK*ER2w&|?4%S+$n*qHjs)E=*3W z%JFqgVqqjCVu#B-1{zUmvm^V3D5*IXWx2|_CQU3lh^fWRac}eWx ztI&jBp}Bjh{^&=36RL80lZkouKe}Zihf1Z)^kTjOmLo)4e5x)B@cX*!+ls%j&^B=K zIop`2g-Rc>OASl_eM0Hos|vKXo0970-EVtyIpjS*Te56E?Iy6lP-}>B=Y~R`xK!ms z#|HX?E|C6?HEY_$J4I}AzI<8Bu5E8)NfOrAl+LuY4r1sQ#mxjzf?Kr(Qk!w~FDKJr! zp%8ixc_Sj}Vep^RolY`BEVL2-{#8MPIgmX5kN*z!Twjnu7}TAv`hJtlN`{hM z68VUURwBiOPh_ZfWa!;JudbHYA2G>KS9eEt8}qk0*tslT~DdU^{nGt zQo?JCxP~-lPJCNjmF*B#!Hzgc9j1J2)qH*45vMu+iU2j*-L~$RMw_YlR$js`r8^ya_&BF zbh(?W>Ad;D#f>#=r2TLT^9+2dv0`+1ZmsE|n|^(5RDM#C^|OMOxy-oF8uPWB-uVCT z|Hy^mf@6u?APhAr(ZWxZ!uS2QqNzi&BaT!teXAVd2AR#2b4_+|KJ15gNST! z@KYZE2y>pT$&mPc*m#oV?VgCS&f9+q+F&AEyTW9C<%Q7&`SMCu1qM;`{lVbhd{wG`&dGtgf{Xcy42*S7( zI{(-m8Q`p1LRzNNW4#GBt?zPXAxHVFz27+BBBn_ldlLJWtlb}w@wJ&9m^g17A%r2e?6-A5Kn`>sW3(kyxX{~Xz5zMFH(rg zfu#zrLPDo`(#dH+ow}~VJ!0a0A(ZorA4KeGKgwkM7t`t)8CKTb8#LDQ>ET$# z=Dh@D6=~i=97F6#ur*ToViL@Ec%jT9@PPoc>Z61ZqTX)BramArY`5zgemQhn5g_zR z7vcS1tvotK5H+;d(H2u%W^2(#MD4lE?Xrpyjxnj*Xmur{>k{o3im)Wti3_ z7jnl5cD}Ns#5(=3g?ZTF6m1>KXjLPp%PZqm_G9wp7VAfHPXqH^mJ{%|a;stuVi*~yFdN6FXqt@o}4)7iXbcwxaZwesyj$E#lu!;Hf2JDF1X|vpxuILH+j_G0SXz$X;^Mx{_7t3kFX2j996gLL|)sEi%!+ zAR#cL&PCH14!e#>-cYg;ewfvaxln_PCN?t5w6&o(Z^fiCK?zT!A;_<0n@z6QpM^vFBAas z4j6;8&i5bYhN8R%0y(VG!(VgcZCk#a?^6^U&(8;|gLUwM;h`2|qq509u;|L~2cHcX zsU6Nbi~>A` zDfpHAZfTKj1<~Ik2&~3DiizuH=H9-1UPX9feV=U#%OFb}Iw2d$6x; zpjh~{FTr2WR|H$yH?f6mCH0DE>+x#jXJ)8(p<>h;>z2nj0W0Nb+neg+u>_-DIVKr( z>|xSP8|Q-m$j7WbU*C2yH6yVcnZ{dC4x>Ld?*it&$_y3C(U80(<#S`Qm7<0r#~wXW z1iR_w`wsBK=Nqot>jUJ^p1S2apKA;^yQ*OYNf}%lAMEeyHhFqn!7VQu!)TkXuiKll zl|!c>Lh|E7tDx3+V1v+89%{$&Y#MseAOGAWni=XNbkJv+sdttut2hr}u+zO22H>lH zWlJx5@{I&lq|%-|tn=Sz8UQ~XmhZpXrm*Om&iG0>^6iL9@)V&I{O!aBP43qo-cZEl z2-5e9sP zB<~{Zx=X;-U1P4f0PMU=+d&%MLzSp#K+}ekn#8byRL`eVdcSfr159t4mQTOv(VOnS{1A1Sc{IU(SY^M!e1DQtkNmYuRC6zW8T=U(BLo6$c=z)z za*5G`AVGbq-j~3vuS7f9&fDDK!|-oM?H=)(i_8eL|0at`QWHh&G*sr?*+HcJq{k4o zok-M^%jS$4#^*rIii#3`is?kXpz45RRY5gOvhZ2r0j>_14zoNVe* zybPwV_F6Qd8TAaQamdGrcYqapeqiB@=Vohan)%SDAwJ@Xq$52bWIe$lV(-%;?udJl z@(C_I%}H8t9hHf@avLwq?3Bah4(+T#%F?rKT1?*E_niUY1(pHA0q( zfMFhoyESn(zx21t`PqD}JFvXy>puR;JMlkdk_7{8+g`ryFh$1>LSZ^sYF)`}O~Kba z#ABYae{a+zen^$qnz-LZ=t*CvDe|AVrqb6s``=<_3Iw#GProbApZSJ_x21Ybf1fL{ zHk{|rdvty__I&cVY|zJu#eQbebnifNP^pJaZ8yTgt+C~J!8T8xSn|c+`6=5x-$$1_ zp3+KS*YhVkHrl{b-n1R4TPX8ix6qf274!SN$B^mcJw&FkRpci^Ug5qHTPyJ1Y~#fd zi-q`Uuo2;0(OBfL`}hy)XG`g>ht)eTmov$4qobp5zb_{+b902UZpn{CwnFVeWb(xF zzXI-k?aM{vBs+5Xb5m{#au*v~r1;J{lEAuzjyTVqY1Qq&r$wSO98zcNudR0^>Zqj} zCm0B(Tc9?frr4?F`g@K_{;}Ebw$FaQ^|RqvfM9i3?OR>QKz|po^F$Ag_tB6&%o9WP z-kxWLvgyeND6yl*kB}hyA0YlaiCpoGNwEw(P_$t`R%%+1w0!YN_rYB0bZrSZ@uhNh z{vVdGu*uh+d4~ph)oYJhGRR!`*V|lu^PdQ0%pRsQFXvT<$!T}=;pRP%Qr{6)EOBuSeL=CK-#Olr8I9HS{};u8_UjYvflwBU>7CmcsM zxxTHH&R(}@40LS6LfzisE?_=ZglT&&_u~ihWLZLS{(+@grw3XT@7E~pibCJrgms@7 zZZUQ%u@dK>h?sud%@s)Oc%AoDv*=3^Noc~`;{XiJq9l@#_BJI}TGz3Lyg&eT4nzSnL#mXyHA2-=8*~%r~Ka%h`VIWca zuLu2#018bd#z&kKFLD{Xv~W-Pck4%&wD0p0QjsFIZe1!2tv(y?U} zkuW`CtZ?AeR6=P>n)rtL%oMi3&bf5Jj_DnsprL%iPZYxs+5aceZMF^DW}XBk#J!w< zHc&6K3U4L7?{ucU&z1)nV(|@;t(^lAn(QudT}3gw=;nX5o)}`ZMTFzXg@w02IF#fD ze~kacuURymhW5$rMdCG>vb*`qU35I}PBQ`u;j?yax8ZH)9r<=G;#`#FS(0uUQBSAw zK$9=@2(9DhLBGQGvhw4mfCq9th9kB|y0h&ePv$QMEp_pZP+tk-OgJe;c9lTV}izT)&TYQkGMXE$jq^bClV)#1YbpMNtaNlQr&#^;Wn?_I|be! zgN_4&8J4A*GeG4ab$*|_>%j`y-eRAjb|)yOU5$8Dw+}i^vSq1TY#mqDOj=#1n{opjv5;CL+tlzL`xKIF;W z?y4SSomRR0Twy{&d3{(hOLvDs$5s#!AlP#E8g@0j^Doqs*C+PKBeW#_&Z$d~dCL26 zru@Cw_x7gNDmlnbV(Ssp!{DH((WbmxOBD*VrPrP6jC`Zze|h$rt_)(!rflx&L-qb9 z-t};C{y5avJRg~+Yg~XKj|0}Nh{G%;Ul0e4-?TPZ*n~U+q#q^5li@Kv=?-zAj92^U z+HZ0_w%>pYbmv;^dKgYYGCBx&M{-D$CJI>F?*9{f}~(q3lS^0_G}WIQZ(N$onyk-&-HB7FYbC@1wM3sRO2Wi63f7VvTc?nH=n>f@p1L z5)OhWt@l(XTAn(C&ZGyP<;cGfd^+=)8ct@y0Zm>nddY@Y|wt4#M<{AM06H7 zK%EGd5I{i)pLTPmw1+olGv2(*HA=%G8$Y?dy7v^8(*BkumRbuf5?ga7e}jHt-;^=k zV_!rerO-q&OwBplmGBJa->kmevtJ=n<@E}fktB&&9@+g{OqKqKI4RJP+NUR;;1BSBvAmi-!5ovBYuB zr#YMxeb_#yGWh2a^lYwUs=o<Z`!C9dO+WpOI!VjB0 zVgCiG5ExY+<6+$6`N(8SbK&ncBZ}I+RlQ!;nfvu-$|QRM3?i1NdIgzZpZBQCc<30_ z*Zw)ZQ&6PV5Z54l#?^SsAz`jID^MH81vsD9gRiOq=c5>`P6u_NwCw~3sE7EOae%1n z&U?j!vT9)S@0`-1(aJ2Ny8l6{PUBSGTd~`!oCP|Ni$ghZM`tIN-~$MsX{iWozhU>* zuJh(j9{5;pDKcP6uv0O8OQ^PMym31ighR)c_;EM6mEW;^gf#g`y+|$dybF(*KQ-_a9$>XB6AdU8YcEIsdF_7qn{K9gPGC(*FWmWRE#=J9g`;i7cd!i`OM}-LQlwLKw zwIN*qu;>^-8NK5dL z??`c9Wqr1?Ig`P;h)-*;7TZ&8r=);u{+=_hY2oT#WmmET;(v0>#NGk|N_-;RgB zYTu*q9lo&Qe4g@x>WMH`&}O55c>?d#?S#X&jofE!2QSo$bV@=>bK|FqMbX;QBhw3g z6fCXxwq8fcINjX#Hc}_;iGg4oS0F+@hvX`)c167m*BD8(zNuTVuvrl_Y|_h~o{o+l zr_oQgF7z7L&L`Xq@q$iyGS4pTJ{yl4Uba)|%p2}oAr2_-HNV9HxL;T9{Grh7J3FYj z@CjFFm7r%<8%!B2%GBh3fSWiStj@tSdSssB^@say*nC6fRjrr2xd2P%?zYO0cXg|C zntUF(09+x4&jy;~F5Le~V~6?_wxMTcS$|TG~&O*zFvkwptA# zSas?p%v;-57o1K7Vrltvrd({*=3M`^!1>CI$p34JgGib5(pYvs^}l}gM}`Fd5q?EauC{o#~Ngv#B2HM|w}P|3)B zi>$uhe(q{`{eAV?*jh(NTXzL(l!1Vl0RGV52`rWl2MK`FVV_ zSKQw}c)cL=pUG6oL38o%;*yv{^O|K)SN2()Fx>Z^zNq(KUs@ z5cKsCm++bJPPA#3s;_7YAS`bdtvD1FKJe-L&-wfC&>m^>(jECsWr2*qON(2SG=Vy9 z?(v5kEtLTQ*8$7>hl+a-ys{?43*qp!bG)mAXmrZBR(2Eb7qI&}zka-t#PiPj?UI5_ zDF>RNCC2$NWYA$tWe? zPH>Zmr&|-?WsH{p6Sqwmv$j~1B=0f>iROox`tGTLY3HwJgOPBkI z#3Ph$Asv(EjX(aVK#jEU^OyamCXwFqA$T)&KG{(e(?*#kf_Mji!kW z6PdUs)#kfF%7@-2La{lerPE2VySgJTn*~sUQ0%mMRy#l)X zj)!O#A3j#m2Vo!I|M4@SYyic2dcdP_p5hl};ckEPl@w;XE~TSh=23T2)t8G4`P)P{ zS$&c^mfhco6bMg~_6*?BoBz8rydLr8&m(KGmt#GuI%4qX;Pr3F)0JxIS1z&|5k|Z~ z(n^*YOB(}Vp@)WJ_TTW6{j3@(dcY8lNN?S#%h+0!W}X1MYO=idK&A8dM+5>_t*F#~ zD`p0IkC>OlyuHVX$Vh?J&Kn=>uXYv0;n)_}wB!SP2AF{7-*`WdsVA5~aE~XBx3M5G znN^Zn!leeFj-{&PK|&rTAS0q3W%;b^2GXo<`}M1K4^mvsI#vySOr z2H&>cJR#&;h^)0%aN(Y>WBt+m`O%-BNY@oVUE>OA#7C)XSPJFTn~cjvGkN*Vpq2XT z7G8i>{s?R3T$+osMSMea)mi3d_qwrc8-;1ndBZq|(2mj#d{K`QB=AZ<(?V(+DF~jg zo3*HK)Jkzg0F@8Jaj_!ZR1u*fS;6GZt3SUGj2Li^3;>0DXp(Zg&kRSCyHKfD zr=LGw%${E(I@hGVk6d*c+6Vc!D3irnQ`ADNW86`~b|P9dS(k+4_5F~L5xe<&Qa_2%==nORSxcJ8J5Y7< zq0jaiA&loW)Q5QRPQWr!n0xu}1)ThGdCOm&8XCb%>GFHyc@A%K-WdG7Rp5hAH=D3f z4hZ|zFimf-MMZzqipu6X`I=pkGm^e0^h4E0QEQ%% zzKkFg3n3#Da&`3I=ksPqf~%ZK&I;N1Yjis7bD)Z8&sA|eq&nIF{?Wezr)%|X~ty$VEf$cs3<+iTAXr1*OC(}_Unzm4r7 zL3-Ndk1s##?3u_um}xVq^DT$WYn{Z0cT2rTd>I<)3Xi-xi%b#T6aNM)0V#}XU zOd&{c@Goh5FL*La6Bhq_hsso#P<8Ys3obg*_N9Oa6vLcA#WUpgULedgskBiD0>jd> zIFL$A=xz9MgxS0~n^`b}2f7QozMIa53!$C(!zJu?3U(&O4?!X1GE6w1B6Ts|oWqOJ z&C7O)NxTcH{th1}Wtp9Jem#P-Y%C@q;VBDZ&oV+PH)WJ&m9SNKG|@<$TnuluT?^*V z2bziE!!BMpoveQoAKNiK(4{MH7rv^B}a~Z051KHGCkFB$`*BrqH9~evb&jz zmi%jbn@F?65P{N+(KEPq{ziJsX7eF;lMUmW&|?(r__Z%pd_?P1oW(Ktg7!jV6x3-oM4{FlqxurBGXS#RFj^Y$xi$^Vn{ z^Fjl3L4%mPnFFq`#dffllO}(3%0a`qaesAjUOg#h9lZ0>SC8}{ zOu^r+@X1>|-~yC>r2lchJNv3wx=sE5uG#D`8{zn){OPwV!O0TN3Z6UQGhaoIR+E{9 zW|7l4Q^Sj10XwlP!6+9K%t!AhZPX-mezw+2A{r;59I1^(QFv(4f{Rf7@Y(eoFJGN+ zwtAyI&4fRomm(wDuND_Ttfw{HbatJinBLuDpaEYB%0Ny4aVO|xeUXdGJmL$6_k8P&6@iAvZNQ71xc;z>IK?6s2`A}$&-|NIE1a)}*rLf&tKq=fb7XD5=J!4paY*|PFHc%@(iHltZfV5vd|3kwI^ z6Mc{QlIF|6qLYK)Xk8FY^Y8B4j==1IjR#(Rw(E)(L6z#G}1J?U+!td|r0W za+Y3WUl1xzWQ3jT(=;|K)Gstmuc+C#|LH6(^mnQL{K)7pU7K{}tuGdH=Z-`7)UF@2 z?(;6;J+u=H!8*`rx{Nh^I$8^)953Mp!2~Ctj@#co>zx$s4L`RR2t^qhowYDfB^N$D z1ucS)=8}hPJJ{;Hi@OM6$3e77%-TmRYi!}IU;3}e@kkNZ>s%w+^&9~uaiHabG+vH zLS^P9p@f{GBr}e2yilL=OpJBTRp~s`b-q( zmQr6=_~fM*XzkSO1aYI-XWydyV0^)I|1Z#rfzX5t8d`{<)OlbaqV8?2bk(3Tpz zlL0qzxn8lG)mn_5gPrZcoP9hnNCtiC3`;5RZeD!YnwSHlEuB?2a!LGe>*Y@M_Q!>a zs7RQ`0R14}Yb-qud&`^93baz3G=JLFyOL4Qi(~z>aC@+EO-bWU|4eV++rXaA#i5$+ zd}XEo*Yhx(H7-A?5buBtt9tcW%O?2K_O!fyXC-QmgOW{9`m-gfez-W> zU?BRZ|FnpQy4Q+!h;fjZgA_KARw$K^-hk%f+{k*At?OS%C#onB(@PI060rzngUc4Q zOG2h;=^y(Q^ExfQX*q~J0i{cI<>Zwq;c#UxtZ}PUcm{yazhv(=xzBN~u@il#EW`6X zx#zQw1*>N)8jq}Oo`Mm0Sxyc=X4?x9C66=KYQ-AkM_Tl!Pa=MOP@+&^M$zq23&y7k zij=vE+xAk}0iysc_aGy%MD&vF{awYkoot~}q_{h=UQ63kRbRoLy3Qmsirg&k3;sjBx&%hKD^;W+g83Qiu6pdC;jH_FRi0V$mJIW>tyEiPeMna;M?MawtUVtkWm zMtJ`}Bq=2ugFoI;Lo8PPYv&{*4=iS8#lR~4uo7wH#B2rgu63cW6P2SZ(G^Y*S~typ zu|;rIwyu0jL<0D27>$PR(`duC+(WJX<<2VpB~PW>NB_wbo2e$@sHsfeDT$)i=tp%k zb}uHD?@D^UD_vRaRm7Pn<>z+DrW80aPnobr_gzts;7I7OhCSzF9u;Mq^xyPpcXjw1W9?su?P>(QQZDIl2zcD^GeSI@Sffe<8ecamc zzTog$^!;{-BY!uA_o04*5KKZGDaC#-H#6L_9=_)En}`?LI9{ErweSeA)pWMOJ%Hd^GrqI$*0 zvb6cckn&$mUD3R{3t+`K_2}uV&?&94*a~GC3^9M9QOGM0W8;w06Rvfbwnwn{^M{5= z7H;bL2BPp?JZFVz+>@VJHUR2j*nsknr(WjZ*XoM6hRQUj$KTL}23z?=hfrjXoJoRf zh~JxKva9Rb&)4?lVM;8O!zL|5$x)pNG93$)F~|KealUffPo6%jX+&_c_(asuYl1ja z@rA@0QO3wzgtDKS9&N{7>IH{~YX#7HZy++-O?*J#uwvehO)HxE3^Qi)&!mdYC3E9K2uozE4PNn& zPrnxCq6;BJh4#2$#h+Eg*D||H=+zSuFiK}QQ!+~;wMnk92Q_L9-|TB<(EQ%RDWiqE zzORLLVQ!*}qusl59!Z1o9!FYtyw9(tKnLrsag~X=pN$evi{LI5BU2YoM}EMUW>C6s z?pyYE))olfIq8fPmb_UQL#pl&%^=!;hvi`{l*~zf+PQnEvKU=4mS76Fjuj9W0WBkk z|Ioy9#x&F!6x@yg*!jWQyb@1J)S?+-Q(^^VSF3UM=zUIM-^C{qDNIB01qt4+qA{7u zl-@k&vs*-Eh~OuDpAaB3W)f1Pe``F%9EGLFW3j>Y24zZx*D1lM0+xUhT%XAGxaGS- zwW8*<+9Zrae$u2a=dIMEi)dx#((0+tP@Z1`Gut0Mrm85fNo2$y zqfxUgMJ>u28|>lHEkv1`VDu1hCez-`So$0uvJm$WWc^aB?mQO#dsrs2UNp86a4(Uu zmCQqqJ%gex_(n>?Or-tm^gDYJnk$DauIFR_=bnv8YzT8e}4c{(vJfDhy zNQaHMqj*^KYSlq3x#}(`t=Xsf%x){>yB5MT8!C4fE$44WNdNo(Hsh4WrgUt-avI?z zM##|mFcFqkld4cz=I?Zu2%uZO7qY>Fgn6jF5uHvWYqk}hpL5)elH4|6L+d9 z48F6KH%3@mzG0iHi}JEq?(LaI@dTC1rsm@l>FO+PSdPNF&+f9JUYxfhSUABfT#;^q zY*MHGK;-UY6?RTu5H)-vHfjPTNud3?`sSx!j~(7nOM^LgSB`E4#$O*;lPN4rSxnid zkS{I|p~i;)5TdJnk`=xkXjYedBQ1FTTfctV#k{yO_=5O)h^*cGmjCdes{CWz!XqgD z3_HQf6}sASO#P_0V=ZjG+j3rVecn-O8w??585Df;ZFA-wl_yFl92dJqdAZh@wH3d4 zERR)oyTLl>XUMB$+7lEyJ~~7#Y~k{nk$el&s!cqaU=l{!H6`O>h19Qnz6Z;Uby(bu z68&-K(1(ni2yi4#wmX5&e^p2>`N6a}n9|xGJkDEK@pr@g^@By;_IoYg^;VwHX z%{vHQ>jl-;iXJI4lcw{Q`#XX_i*~XGjgrME43M4!CsN$Go7TX=is@oY#O4OJd6t?5aK#h9*tem)|yFy&o~NQDfi)T07}>v2fHN zxjHoYIFm~zu2S2XZoA{pHH4*C_!w5%aoFz@aOKh;vzgP2=%TrM_m!>h8ma^-wD}>wVZ6q%MoG^c>_Uw~75H zCJ2PigT^E7Vwm+Yqkskk1=D!%SeteX>tnD*mV;Aj=r*!5quI7uU)shV znrc@aMNBK;xpdDA3f;HmDbqlQ2^7rAeH(>zH$KDZ0UHN>X{+6O6R!e~UvR^{yMkKQ z`#}D!R}_bT|3z^WG5$4xmD6b6=~+zWDap)od-Km|r8EV@g|Z%aMFz_hA^b5b>6DmF zw)l<~_)^>QF$2sc((>4Q(t~-e%`>*5u2giUrSimWJxBsGrExx%*^deNp|7-Z8g*G znP$F@F=nuf5x&%)UKcZ%vWA0B)E+@^GdvbE?%C5PkO({LnF=W6q8YssTv%STTJmccF`vQ0EJ^*epEW>9S ztofs+4!ULu<@70kRqAHtT%pL$l6c9zS>UrJ=k9Q z(8+C*JNk+i0`~G_7Sl%8tcK5oG!_SejL2PnDv}PI(wOX@0jxz zLq~>t2xS({iipnS5dBd#z3-!FS?7`q?HTKc5PP+faEi>Kk?w{8K|)fxySrpQ2BhBLdnLR^K)YE!9&Ub#@)WH5QzEU?UDJ^G z{)CLn8RGQK(tFa)yU8_Jfv*`m+2)f~1lelD!Z`~h_2?>{6!8i{5< z9(Mhv;<0k!sbuh9$@qxXK(X%B02B-@R{h-Ir!U??FR8O@&TxILr$jF~d_ecKqBMcnH0Q(^}f|)^7fcCr8+jtdU-ju)qFkcLFu09cGRF zH8#k>f8XI>Ngy#ZCVLGh$EtI{)!Hh%vD#&1*++Fai#kbpDgS`hYHg(Er-%BBW#GLB z>PNoBA~=hv8q)lDXp9+l(Uu0xnPYVe4ZQCE`97M6iJtqr8bgDtl1C zu|FDT9LA1Y-BJS~w2Plbg;PCtqS%IW;ZN9r%@n!I!H`&(Im0$p|bGgeG zG)tO+3ff{-afzs?z1kNE^i|+*Mb_{NPg=1 zO!%9!#*x+$0Qn>TWiutFO?R8+%x_xt3l3xQ(8_r5KHN-{J-PT6jUK4za$WDp2w(Ui zboZm~7hkoPj|J2D={NY>=A!Ml7$)LSsf3`W_lap*ZjP&o7;92UxbkXOt4Ps`s1BMb_Yw$b8GmUywQuQrVa*iK^+tj$Lzi z^>cSYR1JL~XILpv)vsTv9Av$}`LK}aw;SLsUKph3%nG9J+*B2eB6J{0m3Ni|9f=6p zqAGR9rlQ4(cK_?4H<-?JK z)ZT~wKXkAO!-iVf#FyWfaq>eOZU7EX%)`<~;B2YjO7j9Ii-%5ss~J}z8U9R|b#f;c zL2H}tnt>c9pV4*;vp4U%(x3tlq=2KW=IQTUZJW?vZOvXj1X?x7nO`uJvD@-kY7e~$ zqarXSal8qt0?rfcF%Lf5UN5P_JPjSX7_@zjKj~8!wNw1*$WoX8VlwY($5yfy)ntQG z2q&vlDqGDYmOj6UTO*yI{&L+H%yvcP(9iahK4~S->lj$7Ldo}oABbM>$|iytMVh`H zs>s48%&A~>CC`iMkLl{krpFFeMR9&wN@n)IZw}@IE zq%vb}$cuiDQM5ix5!o!V-)@q)Hb?;?L!6pr)!X5etdWy(B@^whtI~q}#fy^2`=739 zG@@=nESydQA;hHNZP8118r*aEmNCSVAcbqz!SozDI+52g3Bq8cw!#RcV*e>6H*XNG zXmfmdvdjaj`NGrnq)$;?Z^BPY>|@`0ngrss8uPNOeE;LRb&PWq@=@3@qlqylc><6Dzr{IZTZfyG93y zOv>pD#m_y9-tRrB#7%Ghi5XEt7rLgIZLGTZ@p$zU?9AnN+;VO@f->aww)k}(jZYz2 zXbCZAJ|n)R+I8pLO7k3)W&M5Q&@qp826TYRl?g)0i>NQ)rFEM zH@=4bOi|u~B)of76@p|Y(ZzrJfve|53v;a);F91esf~5IU?Q{s92zslS8|g;%n9z9 z`!y<(I8T?XdE_}8V);ElS*$qyt-EexK6o`wzI#$>f_Zx=%jhg9ys{jd-2oVv-GGUkfHOFwvz@8e#2t9h6a_p&)& zlK7(;Kf_RE#jd~bYWR%V{YZaCC0Xqb;7YGz+NYgLrNKiIXUk&VcL{_FX28nc4nfA! z`nfsn)eW}kNW+HkXM~XpsFBYEY;V{k+2K2hpHC(1xTXdPI0De}7{9f>J3EdlEi#5R z${xxytthf3W<6_)Z8qG1qk?xazMEk?aQ7v)6v9zweW~mG$pzFuU3#!@<$xQ=0^(M% zOz*GB^U|XaM%yglhld3R2Eht|GAn@K|ZqF ztSVx=vRyfD=KZgubo*`Q1F$jmNo)ssqC%K@lV^ke9~^lboz3|OlJ(szuf7@<-X#}K zp=T7~_&tbkv-J8YUYGrjr}Oj!$-!22z#M;2s_EoUWE&RfcU~Q0m7)vpdIHw0Oo-CO z`zreUBLz%c>4~UU6L`;!!JAlA%-BBLQ3o1*Z*U|1?IC!a;^^B#K?C_ zbz}x=FBHnVunU+;YQ%_2aaCRYJI=)Vx|}1s(P#0f_a3pH zykowW8u#FDAn6ni$z_RBf&1;^MKiYYV)zKwb^agb$R;T~|s)xMnZ(}TgJqor#o?1|E zCkmJ1Z5g3}#-VP(FQgJ5<`Usm+&Gbe_@`=P6=p}JtTx$-|-b@t2Ii;74~+eH}JQ_(qpCWGk-ZIM-9Tvc zE*faYEFHK)i-O+V={>mi-+JwSFCBC-kLT!8+IbqmS0(N)%Ac0q>rUr+bcQOgH@08K zGeQN!cF#(^_fs1?9%=T4@lPmdFV=9dDhnqPo>8qzRH5y%DKpSf@L>S;^$Cr;_b8(T?I0 zwF@Bg?mDWTj1tJ-0%eO32BP$%p3@FkNAZf!)mWa z;3j3c1oW2VNYAAmw*wiA?s*nloHSC{37Xha%pnEjQdb%!~ z(OU2C7A>l)(Ok4U-z}OxlH)sl=RC;iMaH z=KttB4CaI}&i97nAVe1F;<48Z6!Ip1AC*FXRfAGS zV1pWY1b_4fbxKW5%)(wy;BiQMjjLxv{f_mDA5u@eeX*&GEaAY-z!!%n3I0`y_} zKO*qC{XFB$+$@i_0oS*}fM0j#ex@)tun&<;mXP#OK?9+va<ac!F47(5!XFx$h`&RCzm>gQ+6x>5^39xpew26Prx$WbO1zM7#2iqI~T6 z8fOsMelBk>Qh)++6v1O|xoP=phmSR@u;-yiBGoX80(1u_T45Wg%%(~r^tW(7@Ofza zGhh;b;jsagN@gPy@SIJ7?<7}_DpAvs*w3d|*&PCe6_0KjJk)&h+P&tZoGI?KZDqp( zebL8~l@{)Myo84WmmZES4kj~LUGxhg$bXi=$u!F)FuJ&+X5K2?C#%6*7v9zDh0D>Uxr!BTs9 zMGR>aHtQHj>s#>M85qd)LaXTd6h zvBf3!jTg6?QrZ@dC_>gWLVY$PzDQ$rqK+)AZS9rzTFRrR+0b1joCW2qMr6LmWg z%?VNj=3l+c_bj+cfqjzPL^Q|j?EnjDDy#HXy#Lwzg99S1Kt~bro|fvtZ=(1`Z~6p< zMtpv}=0u)thwvFv?djG2Q^XiBK*Uczc@U=u-tT$tmdO zG0)iOys5Uh?~b~abl{_}YA2{jTj%P96MNFS#t07cAW zGCW^?8Gz_v?Kq>_tp)9!RDrRJ-lT}R;3$C5wM8`sJI`WPKdhP(dP|8YM(}7jbUv`2 z-2Kk#ym-6Fp4B+F4*(5Bpp%EATxkShBw#YCfPBnDBNV-; za??wI3dC-*PJ(irx<4R~ix88@>%cyOP>EaR@@7&3P!~ov6ms8|jIiGgi-t3{J+9B^ zqmVnt1T{Y(6zwjFBup=2-ZoYU@1G|@5iFNV5T$R9Hz?*E*~G$^Z-HY8#0__o|J{;c zqFst}XRiL(Ho#2`qJQvF7Y6iW<9U^N5;O3_X?Tud(2Ggi=<9VFB0B#T1?;!Pir5jK z$0EIM*d*twn$r5WcvhP3_U56fk0FavfeLgPZ__9y%XFjFR?)uptZt;Ef|wYyF{^ze z2!4p~_CY&dzt1dqWq>q`W4C{GHVhAJSpI^e@Uasc2)({s&F(bwaW_t-D34!F|8>H5 zE4dtf53GgOEH)30X21@P+LapbE1{wTJK3*y`%!uH$&wBvOGZYNCUsJrQIQBmKSEmE z_O%xwcp#K_F%L-4hX3x4%w6e%zq|&4I#j{O2AOV`OQuPOQ#3eMN3bx$uD0gIGfijk zIRNPKvAIkm63vf#65eg17IO}d@s-+)El%je)7EZ`=dte+VnwUZ4!ba-NfP~q^D(F? z(Vw{mHW6TAl}=Xbh?pkTin%-oWxQO!^HoJh)gD%A6RHK;qvEa}+o zo0Yvt3{{xR&O>6Wo*ouGta3eNGeRn%>T>2mfEUTiIOya6IGzF(eIehdyN6T!EGi`g z(MbKl5uHP_hvU^jl=twYneK0BWBpMaNgs7e&?zmnP7-U_u?h%sRyn==iTxifMf7+F z4gbzYt@H zd^Ypv2=Fq>5xJEe96TMHLoMTIEBgm@W_8~?J5+_n_JBA(%fh-wJgKQyK&D!7arA$D zifXdn67l&{u~ZdGSa(=<-~H(!NKcDqP;CB8%&F#b@pLG91o_Z693|Qn9XYQ0$-%+< zE1u;~=^x)IIt3gAV0diEo<$YqPLrw5^Sb8%TlQUu@EZ?KaHgkiq1zG_(n_=rrOy#m zkrL-bV1Cw93fEvc!Iq3_m-%v#!+yAq$tfxi=O#Xf4lz;Iw0BA;WF-* z=rN+q-$k5i&0o8N6+mZ8LAyyH6(;wyg}}^3lWKk_pm8YmZQ&-b#*U&^KCG! z(QlW=-N5sq&LYYkz8xiXH&~UKTNCs?Nsok68C$y#Yv_p*pODMw(f-Fo(EWBLJdczh? zG#@5em)|W3!b#8BMkC2dr7Mq&S3+s%mRD6jv$2UN4vz12gL=!+-TDWIRKnRbx3|J` zoFbvk-5?`1ZA_2g5Hz4GUV9D0r{pCJqtoC%_3Ke`YIG;-5gw-LxIpGFSA1?+D>FeM ze+@oM#e03%k_!n%Y@uVN>UAtmSO1DKmUprmR$%of=lHv*J8n|-C%x)HrO$q zO^U50PiZ1OXK9m}ao33lY&>JuM20H$I_U>adDt_rNu8*I(nx_stO8o#eZ>_N6>lJ~ z2C%x`{pmb93<9l~MrMAL(3fF6CbTWX`F=3?T!;ZG^)(9)OH>;>C8G$NZ$uCUKa|&k zMQw(NaazcK(sy0?DW#)`njZ?${Pjqbw`;!!UKznm2U>MW#CvGC`l*ed$8Dm*G2H_8 ze0VD<&r#wW2e5n~td;E@3>bB>L`j^ml#1qOHLHu`mmr>^X(9%-0h&nTsJ9B}YYr{l zpXPc~`o24MfsZ~X)9U<<$N0%J=W`|DTX^v#y?I?QO+`B0AedB6n#y#%Ecv}ov42o`#lW+0CfA}mwY=a19o4$xF>*_m(&7`XUHRO!T=Hv9Iv zaRhc=KMM0YI9GZd>}wI!%Eu~gOifl%VhHb+Zjmhg$f0S9nJe~l(Pc`HjpZI-6-BxB z52Kq*(+A}o1FQ@1y3LzkbeS`QEU^k6*S!>xtCE;Fu_aGi*9~UFt9+3Pj}ABF!Ez@F zRgc=Is0y5Q!E)26AcUs5B985RYFW=Zbhw{? zd;0okkUjPwzct#}F;3SX zU+ugjIFPbksA_jua8L+-niw&Ztf{?@HK`-2^XwrJoNacD!`WV5Q67MK5_9H;^67wrLF5 zW;o4TgSLsEx;9wLh~w5M_10L^Emq7i;Gj?HAww>ElJ`fAzRUwTPjEkxV89tNz;?ql;WlmgTs(eShm2V|@=dcDV-xcy z^f!wU-|$dAno-)G^l5&OG>Y^JOrZFa1iN&oyrBYR zyDtw>^Lph8+q>HInFVm0NZ;vXjn<2oURoSo!<|hxxg1jEYhTE z`R#rl2w||k*sl9{@1aK zWj}JByI6O0)N`5i>N&?!%KGH0p3Xa}9poMC;i2<3s-KAHEcf?EN#x2l4|1XDT4(p5 zMa}oyn79yP~f%7Ns@r|`J7U%Cl{BlxtJFmII8OJVVxcoFBbg)sRd}4$-u0sha+p|=A`8gDw0x~A`bp@j< zQ&+?U-DvhyM13&QnjDte`3Ds*W<_NS{n(Y~dQVA|qZ{pY_vG0UpAr$2X_pjSqwoE% z5EbB>FMbpCEbf4yilJJAlXzWjW3BvEl1COmCPUWu;tvT*s;qU7y+hOYOp$oswPB!Y zU@zy1G*u_RyZyeYnd;ExpYI6lG&+o0B)_uS@G|hyYF-bfw)xwRAL8$TRvrK9z|)X8Ac~0`^a^PE zHR$oMMjqugBtv2UZ8X)q37;k#qun8RBHiuXp-HMVb#|J5zrGP(}QdTrmIoTt6vh(SzKiLBu{@}if^GUyH>l9VNqxKcU0+g$CV zg0u(l_^hw1x4t2gyd$O&aRA+}z|h1W&j2Ogl@C2`ReEEq`(|cXove?@$66G|qC*gq`A@xAiID21lt`;L}1>Z$Ojv^QK7Z>~&TS z5PisGX;nX_NaUOg5jTh%uq8p5c)v8HuJbRx6d_Nw}SJkBCS+rDTE}21LQU967;O)w@-00D}oCm7mNrXB3HBgwa=x z1uj^X8u>K_e>fdLw^G`|2X zI^c_uX)jd{k@#7-2J}fTN#}F6tY~q2e&db<mr>DSF%+xiNkzw1@>^;iF7r zA5-#M2x7OGmSo(HNR^0+=)$;A7}+G*DuHyRh|%pdqLRF4Qo5xs`>Rv?a}+u6%1 zj@dtQD^wfX&>+SucY_69Ol)H+t)6`;8m=4S11{Qy1-^oFaZ~ z-e#8Wdhz7eu)oKP3BMf`&>i=2Vi=8Fxs-%L9!|uKtq$y^#$8ra&0U%i$2g)V0xLjD znzhxlIZcMH%u49C7hXtsjVKzc{{So zb!M}nS(XPguT6Wb^ThLoFt(^5s}~%4UY&I*h2P3-MuK)hCQJDev&GD$M_IO8&ecZS zbe7YtXZ4zyy&}BUwGh$$M{7||LmH@XuX8mVYB31ntWi;KDgKSYi~g*u+o$&M>jLGa zQf1bVb|x;wftt$1&H!_=r|*x~RgFI8bkB}-+b%NSV#jMXp5TZ5Z3MS`3bQFgFDE&A z+zSkjK`=(3+f4Xlk&Mi|kStu|ZKc2*dx6djtQ(syPt$Bbh$!WwW4JXlIS7z8{M0MQBgsp_iQ5V@0=bs_b+$4^R24!lCH(S z>KW$_49}7-!le}}hV|fLcM?ZUYq!ny1>!clFcjI-cHn_*?b$M~z)=WoIrw{&`uBv* zAB>^LtN|l`{TrzCmODvH^SOZkXc&X=6o{D7NR`p{b@Y@5zZ0p6M9Jh_!RLp%Q4aPPHkugr4fdXnDBZ?2}LCpl_A zIHFS;6e4cmx2rLozvtK&jT<$8@Ozk8mvXr^CHnRqs1f+nosAb!p?Lytx~MXc_Uz>v zy&c6L7cj=DKBm7sK4>yTx)Z%aFOL^aJQ`e0y9SkIKk-Oc4xXPIu++q+u=LTk#M>xn zruEv(p6Ya$iD-IBQQfw39^E*YV@C$V&#D%DBS5?^7}UPhAY|UM{H!4;oxL@iHAeYo zMc7D?xjQ<(SYuO5&qF?tc?q3GE(bAp#eXj?Xz-t=9TV76k&$4FRxk66?$MJ?dXMU9 zPBJllF({rtvC%%~*pD@o8eA=;P)ipf^13p{?+Q>uSXYsrE-g_jXZetBJGK0}bZVh? zJ6_24F&guu**XsF{>JF1_vGuvX|9BWJ@OSTY+~0MuiT4IL82VME^wKO;17mLB3`cz z@3!jajpi(p=va;8uiLRLbm*V5#kN9SK{oMl+$VIfo+_8f z;{hs}x?pRL-U<6BpNMqXIs}eeJX z&p0E(azFYDqs5yx7vSr%xj1P3;D2q_bu-;5Pf=Z*?Nw?4#r4oapQ+ZP($YRIZ8q9L z{wAl7mv@-scF4TaEx(@L_F6MJH2)R@{9ss+ePUZqq0L7`hzWvaZLC3*y$j&bqv z$Fa^{y1MI*jl!`%3c(L{Mt)RF9&C~CZ&Bfd*Xy<|(j5CmtxB7w&xPs&lAr3mpBWOB z{X2HkiMgi>qeqKQpvJSej$>Av8MYvL_KB(Ix*vGV)-tGHC=9{_@$>U54f&&4hJ!G= zTAU#uRMo+^<3?aa7N%!bJ>4)Qf5F0tIFhoX8FQ>h&l$xBWF#I0IVzwW>{?eMc{((TdoQCj-tI88uNuKZ2n`?n1Drmt}I zA@`zNRhnMSjMEWmmM&vcflprf(H!}m@^W*m#Pa*bz1m8Umsak%c(6+Q-Wtukl?!eU zc@j&|SvvF{Dp=6)75i2!M)GM+ONblz?sw18f2WY}%BPRy-X*~M*nanSiVW?Bl+UG) ziO^ql{gl|op?J#BrqCzHi*u0|D$M64T;hQ#7!^~MHXG!fql#Ul)uq1`Pc3-Net=Ez|FtXO{WMe&-6qP+xXhu``g_Y%P=#)_e(&?ac`?@f<+>b`WY+mr0 z_eAMbq6fYBe{ZW-H#&>oa-Zun{;mE{=$9xhw28`vGb*`CsRzVCH?mVR;=%|Go4<_C?@UeSrVxKn^?EM5eR4 z&%dYt*s7_@dtm%isih0yeHpq6UtX>9^wr>7QYKi63WOpKq4xXjot>RZ#>n+5-voF< z4DhIe`Lmtw@ft!&j(O=O%ZkMtGEz$PLq@~!TvglU zKL6(l`ohEUs!-}>LTJirknn7?i%PFNLogaiX(&DD98*M~Q}g-+RjZ`Ts(jm%VGUPP zqDvmddS*A*1`V4ZVLvPUebxqrE#{g6r@RFH+b4h!TttofM#pqJPo0-g~)Wv|iE%Hlmy#pqb6cwNEOu%~9i-dF0ex0|#o{nM>R-njb%`S(f{9^)r8dMC->WoT90GBG;@BaZ{ zFJ7Yn*x#BerWE8$M#Eg;dG&PhfNCFCDL#R$_^97fd_jH0qB>u@Cc#Qnu=DPUHh;L1 zf^M4~)X2KoRf|^2@1C6&G2_1A<(eS-kPG&Z>NqUIZGW?8YRrhl2#lU$Ox7b;A{~jYcHYoKOG> zD#VvoSNS6jgq!GoD1bK}xKH}*T7hqfKZD}E4~kG3go?nulfdjnK}maszu1qSykS?- z{1$IUG2!7)B}1=HLT3(*kJYK0E2V57A)ZG~!Lsce@V@vsy)`;lA1i1x=q>@c;lKpJ z!WK7wWv1O`U1RlQzxg@THI?rkdidXx?=eu62KIaXU0((q3W_9_CqZDUD}@-&H%_rE zjLL*AMeob>UC2S4sHy~c6Dfv7CMBaHpi9$-iZW%c$~p3x6p2$(l8NL2w7+Dwk`Gy( zU+#fGr6r@zA}KR+lLN+P=5k$7v6oYb(!lB1PYa}<+0S-xA%-R@&Q9*DvU>FR)y%S0 zt09*7y8yF3SI{(Z8O1l~^E`DudD7$F@aJ5fj$dKwlXh-k<|IUM8hGUBXmya39`xvMfbdofPE={}!aw%nepCKYl9;3j7jehNb zLr9FR3XbXtI4H-%`QGeee9!O<{gsjiP3iB@0DP}Dw$uN|9H?d|CATzuT0t6gh_pk2 zbXX>e#B7Ef1lZ&zc>)@OARYmR52$|B*v)9+H{RcSb>EWyk zOokvH&jRrjG!(1mM4I&fWc!{U(s-sJ|C5)3LwvHNgE7~`hsY0ZY!ulB*{0-;~(t@%gpjrSU{VJnro*mIjPQb1=B{#Kd4H*h#+lj&?5 zS-9|3U&t@5xMaV@6B0(_L4&xX^GlZdpCmZ3N+AzV zq)!q#++i0)zti*Ta3nhwL2k2no&9`$;)vQXL!Q+}5SGtGEYG-Sb?h9fpk?u8{!~cR5qW)(ee%$> zJibWQuxKQiZAR^?d&qV-p^;Tort)Jjf{6jE>QC~i-{~cOXPs)DI7v&wwgqXGa?*n4Hv1J33ws(Xf9Hf= z+R-%v6Yt-1xc(EdNypIN97)buyz!n}nfuIS&OcL_X|@u14d$`+Mt}UX`nX+Lo8Ph7 zLw^#di^d9Xpugyxee52_1II#%LEj%po77GES4!nRF>*D%OrUsn&xUK8{p+8;1oUnZ zsvN2p+9B8OfQ4<#6^80?xjQM0`EQ1TwgWo{_~Zh6n6>k{h=JBx|GeFiS`bBUgWB4) zyEl>R!jyefL`UB|J!{Y-&EC5&S$BX&wr5Tdr*1I!HpKD=eHg?Wz1^fb)v~58ZZ7|KneJt zh!Pa7PY%^%UBCA|9h_Gp!^^#;;N~EjM#CH7-fIX(t}v1XmDz;L1c%>k z)%Z0h_9=M;{@BVE7cvwp_BGo>TtnNASK$xtRBFf2W87+E^LU~I=1-o(jOZr#k#BJJ zkrg3A9+)~^OiliD4_&^2OR;RIT1Ws~+eqH4Il;>0;G+}f`^gI9Vquk(TTvO1) z_L607LI~1M#lMXZz?$BbxD@X~$i)vuuw1fH-}^*cb8H=WJ~8O%{HTNIDb{Iy_h{i^%P>_C}eM+vtO=1&Iy@h}39XB@OyKQs!-G zV;4KYLV~mtt;uB`k2kP&R-Cl z^jbP;wq0Nel8JeLy*KlCdj!)etVVo*H$~SgJ$H?Rk4=wtNDfd$vT2@%s<1&&*97Gz?b`E7o6u zrh0_>Z)o{Z9or1*>)=f>Wo4eWeHQr@Pbx+B$-A0KNct(|Ip44t{&s%CfgHaR!|cMO zTmlTMbtNK{Jd7=IxysF_8wZBhA{#W5xxN6Pis`~kz&Ss$z10p#Hz^xNCeI{D?8GAz#+kYR zgRqZwZ&P*&ShK4i3P$t<@rf@pyo5ZTB!Vhc!{53tQgFP z!k>Ms1D6NqFsj07dXD{it~ZB!)xXUS`1*}wB)vjCIjP1sNVn0VV)DN=h)i?-z%G85 zW!OT1H5D61=>vT;9TNt4;Uuhp4P)YsKvmm4Bo==(<3HIHa`)CFvpd|0YV$=;<$yBp zF@>~uY5yXFW9>S=d*}`rITK>#c5^!&XDCqPZ(va~CbKm!%up{?{ALTSNXHok)FM7%04B%OkJ#gI0`Z%^oIeFrm^NJ|HK8f;?0X-Z9w_Qs*`2! zv6Gb!R96RYxa}MM4zCJG$7~h!x&l%tMEB}NiVd6eB=2&R;t)ipe)ulzmBM0vltnk` zet(odOIK*_00r(BsypfD>v8E(R~WWUH(cmm=;%O9vJ)@*JD~eS7S0%Pqw?HPNuDNo zX7TIpCYYPp6s|Ish5dQHQVOEXErI-X1LXyuXL9zJ%5L@x{%M4w-g`bg)_0dHfXVHD z*&D_YI-s|wi}sp2z@h|=??*6LtS$SI5C)-xL2*-TRNYb@UPE3@0+6i=v$kxw{Uz|v z6o2wEhH2q#r^6*UbTb>II6VAqRb+kmu0<6f>OHsM!1k`Ti#5LPl6G5N#oh5YdStuT zR*ZishA3kwL2m8sC)>P1|L|flyzW`l^a&f@f(nPx*65;4h~Y}|pEu}lOw4fqt|}ix zaI57Gnf{EA#QUcNSBd|aite;0TjbV>CL`*MLY@Lrv+B>YgEOj8ew5yRQ5jEPT)63C zcB|g8SDd-na{Z&*$0QB&1tPnN+PQNGsm>HKKktzVdY$gFsZr*btiy-S2K>z;EZ6TK z0k@n!#{{K6q<;)T2YqB~!7|xCNYtL64B!@?x7y>(#4M8M;JGi_rJF1fK&t)7O!z!5 zoMT;edZaiWPa9abxyo5v0_Y%KzUQc}Eq-pm!lQLxq-F!tL$@X0C0+D_zvk3-Wph*t zDKIT_=H$i@jT#`0#N0FS?ksC-?B?s%dLqdjg#T zgBnX@czp%)&!d-0-*(L_QXfVUT-Qh0;CMZBW63G0^k<90d#k+EEVCKn;pAZXDK)iKpT z;&&;%{=Zvg>~nlxT!Aao6E{I*j<@Ik_WqM5B4P59T&&Gs*kUKW6Y$&aR8jra>)_N{ ztCuZex{oacMA6N(ZwY(Dgs3_Zy>)^#f&92)h!Mu22bHe~H)}w_pKIga)UsrtCcA=6 zERhJV$~*YA$*OfKB`l!|&V=C~!xq{9N{mV|OVfD};%@5cz-w@9F^?ErY5H$Z%8>%w zkm4H)B4qMVl%M0uV=)qv%MJ^O%dEGHU61cZ1E%bS3~9Li!7(aEC;?VzD|6?54P38D zyV=vDwP&g#{sdv9?n~iz?Ne?yiT#*B==>EXn1n+q^De>^^Gpf>fjuE6(@C%FmmiN#5F2Ou$9UW#cRHvT# z*;LM<#&@B)0SK1GdYoem!LFCm6uQQRqRQ{eT_4HRzK*Gx8@0lfhMEQli~6&z?v>Ex zS()b-g)9#%rsFGif0 zqS)Q+;)&ZBSi-m!i^SM6hi;MBQk)71&m>4TQX}xJuVIFgZu2Vp*QISuY{UzeIVB1| zNFi)W+Ix_2pigC#Ks4xOVm4kWr&Q76ssKCp=-UQh1wJMad4*&jV38`?2g}?)WK^5W zK@9R#ltxOg(!z0w2(C6~&?Z}|Ed}hCzfsLIM?PQkVr%wV&m>xny~vI71>w~i@RR!o zbQ=1UR3#HBqEi4r`lX-|qSPyfpz(jpFAo!vfoxp&=-!`Y%O%3~f*ZTN!<@9pNAA{L z9y$(jT-x*$fy^fn8L<|6dRz`~QSTqkIyu|=gR_MlJwV}H8hTjb`sM0RTO^Kh$ny!E zw)G<+A2Lr1tzxzNMAWKwr|8_j^#{4UsE1$57{h>fmw*{Mll#gCy7{Fb)Tn-nD)?h$ zq@)L|Vh*exrs9m33 zSYTfCjy>f|z3J2n-!>PKdwBimZyqjleE$LU*>~rs+pMd3>#v+7$lgLcH~y1HzZ`6k z>cJ~ueT$-!0=PQZbS;FX1|6b-4mDj+$wfq0FA((OC_(YvG;Qi%1bNnzQIt+UcY}ay;A%an(G8R|PBX<~~mj=US6Lq8ek~4_!kE zVNspYzrZsN(+!+@jO#dt-13K2$OR-q0XE zLeC`E?8rsfWKU7OAQ~}TV;4J56GE;{P#yB$qh?EG+U#NZ5@+5Da25Bub`*a+zeB=a9uW!qcR1&PsTA(zt&aOmt)QS{_hblsiD+O zSVaTAET+nSP3#Y7UjKRCSr5}wOtP}fkxIgpx;mNV=mYjfhQ55Z=bWhjDp4Iq`_}rH zqc(l5E6Is^B7?di)da!do%o89EhEbu=r8*d6!?Ly z!(piu-~*Fo6094U0<8aZI{r>}lN$H{{XcYl2UHX7vv)}7ASfukOA)C8QbY(Mh*A}i z-m8E#r3)+_=|~GjKsrd3j`Si`K)NUpdX*MxASB=NzW;l_d(U^iJ)E;7C%ez?JUcVL z`OQ4Dm>JdcG_HS#T6+}SBVx)5d=_q;L9g;K^tf}ft11`$4X84gvwO~HONl9iH}TcS zhH8rh^^qn+Xm3RgaBmk7*pqyhYZacu{`=T1S3E&u%6g6)B|Y9mPv{p+a;|OWdfGU~ zS9O5Tu8`kBWKFI#tDf9;gS~y;6VIc;EH1AQ577>){}LJi8AKbpXa1S1wR3j@E$KRi z+OJ3sa<=klh8ZP>Mi~2xl8QO^V6JvW#dp3>Un%h=aS5fAi;klNs)9D_N*`gtn-f8;#{yx8nrh27br2NzSTN`UT+9O=V zF0U0u1D*iKd`6=4rPk8P5CdIsqYG-4yHJ35&5*IfEuk;80`(?*?lWXbHMG86h*+2| z8d)^(I~7e$SkP9OIzDXgQ~$Q=0S{uuR45Jl94b%zF5osJab|4)*c8F3Dm^K9J7_Om zn^I3#HzhDP`8(=(bOgQj0hfaB|EyFGgsmFR!1}3)r;Zg7x>l|L261W=<+a2wTJwk7 z-#kWzaV*5&s%1P@7T76+L5%%G4x3kIc%HmVNR&|)g44gh|5YJg{64`UenThcHe^3n z)?TxdUB24L|5@Uq%XJ}5zkJi;=5{MRT!E9h+BjA(8GcQ~0q8<86JBJ$B9S`!YPT!| zyhiM+#3UHC+R@_*3r2#78*qz7`k>!V+Gx7x zK3Uhcp>y?{b{Gr46v)=*eWZ<|HkG=kI667`G2=QRzu^bOZFZhbl4qh zcSOp7@zE+-2Yoa8R$2Z=&aEe`{_Y74V_*Z6(nkLi#CpEBh$fd!muP z%fX_{>xrct3thJ|MSDbKnya+XjC!~qpSfRkTB66lR%FN z%b}CNGT>!Hv?j=J+8UJoE?|FRL_G+v;qtPiq{m<@cX_j=Fp0L#>yaN~Ce{Gd^_%_> z+)g#}nwpU&*RaTh?1ru4>MdGwy?b$-t4?6kskt9Q^59@iSA$9Qn#g)$E3m?0Ps$Bf zy?(USM&afKX{QaV$l*T6Vt^q39u&fF0?C|_CZsym5su#3%KLrVMX0_=$sc+s->+^X zw9r$cz1$~FyCwKBBt-GBOA@a6m!QS%8sQ!6VgUq1jHmj}Ds^@%=x@<>6S2op+0A8u30P!}%*89hG+aY6oNGGOM`9gAPb&-xGOdok*3?zx`JG$=Y$8OE zEYuuN8L=h{4P=DTVXG@j`rrLw>-s4NO!D1l1uov^O>#o>I6{HB-0p@2&~GVgTi%u;O!w{NqX z!*?Dq`S{YbdutchjJu)UHqL|+_)Qiv22l}Vr@gQ{Rpsdb-S|yjFH=jNnMco=EGK(F z!5&m5WGI$3ERg&Gcvzo2h_OY}?1aeQFlGKjsAv7>@ zQ0z;Y{de`;v7y}D5;nhB0R|%FUOZM1!fiSG2gtVWyB+OE@)A=pEw#qv_ga{f2k+I5W2t*Zs+wNcM%%{#VEb+a|9=3X=Q?KW2ARJb%*cO) zb~ij#FKX6{amNoOU7)A?G9V%G&6lYBpX+N}xRr?zRZECo{!4Q7jtG`a$)C~f&cKlw zA6X>F(r8I+`f#9PP=~Gv#{uX#^x^GJMSO0F&M0yd!}R=$zVzm)GGGG=DP`UGIuG!h zkMjF|d-0(uye^{$SR}68B@|G3D)Bm*81z#$w=`e-S8Rl#LjLfRWd;A(Gx^l4nrKFK z(KEEx-=D!4ny1h5PG1|9m!57;F^GJOJv_qKT+z<)nSc&9bizX#u&|C z(JAhGtEDAEhQ98ah~dK;QiX}5e=c%)Df`v0P{6~y7sw`Y7H#NLmiMeyn5tg|ohQEY z&j(~Sq-4aA;$g7l86`HAdvPFv;(^aXlg2tJ7G#C5YsXbRb*JE2eV@r+li!yD1x~cx zACJT4jnFLUu=!^G$)*=lAS8TkM@>8~KGXFi-{2-q-o*{Ox4+UC`0W%BfBa>$7RY|o z06t`RcG*ou#VFe6A0UGcmtVvCRqH2NK}e^mqObDp3eko7Z{%}zp5N+={`qr@(-SGV z>b_bfSd!W=WLi;N2b$PBq=KH;&h}M42izAx%6|@N#g!CSS*WpbE|#7;Yl{u#(Z1;O z$>Vx<+~Y)KIn!hN^DqAV6(-FQ=>zsDg29k4Tw6b>B#{e5T^;4FAh6p_|AT5q3)oSO z-ucVO<70bT|EnI$pWf7{R)4&KfZMyeGk|uje(ZUDAF-a)q7YQSn4dUX3N`@(;u>KDIn9ktr6{9-CjcyZ2MO%120lO zF#lV7ZHlSDJR0{lQ}e_vVvv>>t9^ z-&-Rbtf=dmic)~;^x&`%+>EgY6o>FH35qveoKqCn7P3uDV!{NyhFp_17s3B2!a#JF z+DbAa2EO954gFL3zIGYEl`$KG+J`T;9&XUg)x|qWyPofw$nEh<^*)3sNo6{VPS8 z2>hRj4gU8Eu$k;A2L2F&d}7GDX;pkJdcP}u<#4dZhb%_?tN)!7HD{V=rCKscRD02j zO&Xe8a-~)@kQ#ph`%KCEzAOsuw=QLLQ%vNPY=|H?Gl{pmX(2Rgv=B%y4=_AgitiB2 zIv@WMebaAr#lX2CYN56de?waeU+*KtMlC8wA`8?AT?N{moX;UQ*|cHF&?vmziXps| zu3mU0gMyrmP6{#YtwUOxcDnru4GkDXw{Rv?HB{~Tmwq8{gEZ*9NNlVfufRnoYf?dHS=EI1%aj@e9|uR zXx?5aIZMrUY(UAc<&g5lere{3r~o{o^kJ`z59+P(6WxZ&xI4xkIz%k8UQ(@<mSD&*2;h~jPv*FtcH}Mq_3}qop@!}4}QOo;P0X|k%4oB--Bo8q}{FtXU`+j6@LjN1V+&&abx0vlJ7xD;W z!H~2D_ahce|1t_vlx2JT5@mnc8wejwcdun%PFh8)seXB=%i2pb6!9+7p#`gZ^Lopi z;CU1Me4Asc_tcw9R|k`4mw)%HH+JgE+Yt#*p=@{&h?=KRXMjuDkwjsgnmZ-?cDtAY zHxK$8Lmd(Lca1}d@5vQsi0$GOLVNuHzGduWcG+Ctvy6u`{@vDcK{W(@<-lvTRP>-& zN(b$8+p{fUTi<`kA@aoGx(or;CHq*ok(l6UVCAb%_&kN{_uSp_oQ8iam#EFd+rYam z(lVEn0%Wr87$^Igj-TNTtF&eSsPEHRo^{W|7Uc1D+lX3TyiVFVS9Z(K6mnUu_Mt6m z87=8A_tVq1CGUipvO{iLc+lmjD1BC)1*B4z+p3s^$-4}uTqtkwzR3MUP(#LvQ{ z`tm}rPPewIa&&a`XAsD&jnzFe-Pw91a3(vs^WhA1pk3^p279We$g?p^wSJTPkgTt7 zR;0K7Rq()EiJSK@Q~{lB@C)aSB1 zSrYj)JpJp6+whdTt+r^doGM1KoWB%i5m`|FVI+K+@dC-<2H9+j_TvhPaUjp&;V$chg(pFw(ms0k@pbR`4LqG8l2TKv*T^G^6?SpTX0s_6IVX?;_NY30H*zh zl!f}FGjo-a2odC~^TTVco`@SA#m<0y8nL8H0rtSd9K|$WUBx(OWbHWi;GP%7-tOKb zn~2u*Im}D?faLeI&pj>K|nK69&2S4>Cm-6xTAn?bNH!A%j%KE=?j}F}o8~N7`t!WDWz$w9u$ck*T#=L61l@&UEqs8s- zRfE(%_x0mMq!^fZA*(hOa3$vbel&jaf0-yJUi2|l%Xxo^9(uB}v>yJdxju%uJ0d%O z$L5Q@zriXr3IF%RzMB2<40~3}!!Q-?qu{Y}J+f4*OCD#QPgZEP-12j98S~ZFhiCi2 zxQw%cChvIW{pdNRd825^<}&90z}Z%jhc?LXo$ZO^1t=hR^P8H`|NE~-gtI{2BLSB1gLUIHrxIogcS|s?Zk2W^RWw*dzVi)Qe*fH zLnecoSEu!bDY1c=xdeMi#`T=0nM)A^u z=VcSYAoN|ejXVzZn+b+~4v{v+yoD|s}i2DT56$FpV^ErZ8B8D|Xq2{X;H;;;KK&I-A$n?>_aT@=m6WQ1IibDo2PwOOc7I)Oc9) zt?uY9lNGD$uR{&mMapnDSL=72UJ%!e0jJ9Uo8VMsH?b3&c5G&_moR4bF35dhOE2I5f*Zism4;%XolG2^_>eBP9+X~_@)VzHhJaZqGY66kGFUvbHW>{2+t-jOd z0Q@Vlce-}=ZD}P!mj!i}BKFgm%wrwXM$sf?b(x~?E7<^z#Ots4XA?(W*YR|YPOr#6 z<_u=Yb5D*uYE}pcSs@UnEXgoyksvh#oL&;L?myH1^{e~xE6?p;B~~Ldvj1Y{xa%ZrGlfHBJ3v*Ddq=ZiTJa@cG#62Omd#Q26^6C{X22X? z)zr?VhORCJ#!vTC1OW!i8IYXDeFtZ2FMU2th#U31K#LK$wQdr&I3na#wuoZH6Zc@M zc_S0|^OatUc$?z4r3P(q!dEkxft037e>6qtFhS=_xb!u`g_F|?iWa5dIBPX=S1t#G z+nu>y5D)EFB?tF!9HVALR@Y0?i0w5MXPiAtM^}C zs0g^-G%{lLJX={k>-=`ky?Dhb33qmecuG;})!E9}T1M*+vMOqWG#YTlqb&?TzeoQyd~79QanwomulgEaEbquN<`tAKfTnu zZS?kDj~vIfOAqCX#%{?`Gm3@4#nJ_7*Au8?v)%oe=6CEy-v}!$FLf%v*rW{Q0T|oW z5}!VL^`aMaE^}|n1O~g|^CO?Ff8?JN!tB4D=;+(sBh;oiF$MXv-{o&KFzWwZ2mrPb zjHcA_9HtvQ+8@wdb+Wvq?YNfRk1BjLwd17k_o6q;<&9nQ2as}(Mb{@Ew1N6|`F1U4 z`J)nx*(nl$e{EdW%>)+Gsw1ZW;o8}1EU6VK`|9@M6&Bhe5svgO4%LOuzPf8>rNN_3 zUe;~`pPJ=a$9Ybx>(7jbm&e;Y;JbhODvj*-2a8^G0_zrv{I0@w2+yJ3BMrX06%BDF zaJ@XO_h?42%dx~^Oy4rhPl19ZGt4)-*d0njq7S@R^dY`wJs zV`sy35}9;CQK%Ldni zip33fRVNkL;Fpa=jHpFZ{nl=z?{Q?K&mF;M{#O|H3enS!hgMO=sB>3)@!cJp0<;0p z5Fm9QUWRCBSK64(WMuxVTljBsmgk$;>PQtJ3JRvnB>Humju`NE5&a#>D=ZXljXSHl76zfM0EHy)0Y}6@YXk5-@Ld18myJ0hdslB3qz@1 zKF0@zkv(qIi+rcPfy!K=U_C-XwWjDll>zlTS*%x82VcX4QSmyu-7Yocm0)^66GxyA zi3YEMVFCaxhs4m?AW0)rUdN|twr$5Mt zzp>Yu1|27b{fPOys`3I3P=x`D4@Bp1{2~ewbwA!=SiM#ikKa>KlG-lcQfqy76=WC^ z42%bPWuU5G8_&MqBaV*3NJPb8$zqtKfWS7~#oYbl)c1SL*+c0P7M^Fff3;jV*~i$J z{j-g-^i5v-T?jvA6WBHiZ=4Z5J6dPqR0$MF?(FUkKEIrQuSDfLuru zC3F7jH0LEJCx<{B+b(yjY+h^xpSA~NY59!&kACH1&xl$4ogYpRwvnrZtXzSDDkR4b^E3 zal2s(Ns-0oPS7{Jz9f3t3rybN@{MoaR4AW9mSK*bZiVvOudw4l8)aJ*b+OmhwxtxD z20~!*4y_wu`BFOw|A` zrS#s+N32*t{ky^_r!g1#2xI+vj26l3O|e{`aAfnbHvb+oK2TZ1SXEuUEcy26waik~ z0Ni!s`BuYZrIm_h0R{xdW(26d>QhVQAjr(D^%{Ml+7;e!C%FjdVTx6e+*?+FrQ z)R1tblOl}0c_~W?`TVmZ3ruT~`&o5t`mWdBTZrOWO?!ONv#~mh-k9!g0cG#gzcXEI zHJ#5^2eYmO&d6BOkN+r^67p=|Co$Ug-o1MPL12%zck9Dk5!2)2VBP+VR_yC#R7F#H z`3C9x)4D7SHO~|TGMt&-@%PA35M=`3Rz>*tHpyh{YcSJ5Bma>H3o2LSFs`EB=DsCw z+iA|($s1a9!FJoz%L*#hs5U#Vd%PxL;plp*v2wT<+gHXKJNK3s@6E8M5el2z3L5eC zVryjJrLj{P^4*9^$a(_fqfCE>u1#jQN5|tAa&^LBFiGbHo?=iMzQ-5izz6|Y_lrOIq3<_#q^~AxT8B;O9FX8+6_&<{Q!{K4ot3h3 zw>@(TNU)}i@8d=r$=msjr^x-CZ%NS| zJRNc5buWZtHJ?VT=KED(=fwQ}z8hw_H?|OKBp=_}P?;asbHou*6SfDDi!*_ofu&&T z2~QR=QuPm}%Kc~|3mXU2Pq^`@QGETME~BM(W4Vb^?RDBpRJVbTwHV3N2Mp{0Z)$XW zoBMIo!0+m`zoo0aHzKSPfRQ667BwE(g!2j|KP~GtEFuKM>1A7k$w$Q(V(h&74g3VW zcsWRYZ=u5An8k@Um8V1YhQBm__S=skb5Sp;7O!urnM2uMRFHJf%(xuC*OajIo~;oU zK<20$hK1f(xC5BiV;J~>euo~yKCmHD>Q_wnAF!(c{I=*oXP-t|*pt5LuUf_o0wzj^ z#;8PAqH$DYj3LQ>M7CS_54I}dfVec1X9{lAfjNWIYHY65q28)&@qI*WhOx}o8rfk3 zMjtoV2*<9aV*T_}lCub%GGy`EXKCU{&@LhxzJG6)UjXEl^^fj;C{m?7bRL~~4u0<@ zCXdw=VdTP0%WSCi)r%OYSl_TTxS5NMj3XjRM|l2f&QsdO_x%3zTUv$u@Naw$UbLtHYZ{4y zCbEs{8;ODdYWW9w=KEc#s8}9R9y%tbZqWYTRjJn2pwJr_pUS7PSM%da zwa+vPYLQGzSFP{DqY1Rp8?3nVQmF@J9}j@7_ciP0!@dj*>$YxxTOCPzilv<@?dU4} zF$uJwjvqed+ywOcG(I5+2P$}lr20+n3V97wa0w|YJ|+P(RBGoC^|yBfRj7k+u8cQe zib(L|umj7SD5TFJF=SzGZ=M`N$I9CK@wU>$VLsdPGbn?a5N{ra)A6S(nuhRWAwby| zlCoJkidwc5*T0fGFFgDWAN*oXLI7^Y!XS%5^r@5!zP3P_|0XE6MJp++lEzU%3Z6O@+i@Kf8h=+)m0wY7K!Oob2>O}D6c`>D{(;U?=PzeLW z`hHAlYS@?d=K(L*w%S4JT1GuIN zzk_UL+ow)M$0=-mVqdf=3B55VP9A|#q_8S%7 zhH*CjF)(drj&+coQ1HKUMtXZ=E3^wb>?1>&9jLq3;9JZmg|s<&3Tl&f1lt(K(uBos zt0IjYue=&?<<<<)J9pqh;K2y#m+iA!L*Y;Q_dpF(zA%W!=-;Gm^V%+hd^U`H_4YBh z?;eYkw^;A2RiuDHo$kM0@m~+sX_}jx`xP$>I~!C3#)fWWA5vs=Q3lRefM+vos?KpP z0*T#05>_TMRzY6AoIP61!fs{(&I|1UKiM1jRjL1V()|2ek6vAKmYJs8uI#RFJQ#BF z6MfaZI*73OME!3-OBQ+l;v>Xh%#NMCg_qMUsLpMBDs;8~Uu4tCA&|WP#bI=~C~05( z!L|Q7g5L}*G*){mZz-@@`yX&3^0tk1CI@Kz%xbOz1@Y9s!$**UiIJiR?+>M19U#`f z+7yE)AqI)r8G_CK9$EPsu5|?aM2lT>!iJW&VZ9B#R+IL9S)=YHDszEm4pkXRWcr!|G?Pl*rSs4GqLS4Tq%YaW|u5i5ne&o1t)+84i2t34(=6@7MQF zc93E3cN=*Ug^;I&4Yj=DoQ-Is?j>oYCjVHc)_54eSJ6zx%*>oE zW+jz7a#X3j*VCf2(@3F5gBIG=JMzj$<~lszG=l6uWSuswzIAc3!&kDr(d2S0w5?Tf z@!I&P#u5O&oo|)6>@PfGl6EHtn?8J3f}g*btau%QCGCovTR3@lPiDG$UG}ja7Hoa&gHGeTc*X1^C9GSH< z7paymUVD57oNpGsD>;>niir`=s4tP;Z3qet3v*eHmRMScU-pc@%0-q%+jGo zP3{5V9(|{a)OeARcVkB%l?btvZ{N*X5%AVM3iSLo%Z7wJ@0@FUFG0~daLI2{XGKOB z7JBoed;9)aTU#)Q@w;3M$tfuOr36920&=nec%GX`lg@&n^hIH!$B#?eQ*JL&xBDaf zj&8sCT|*KjMaRIf(ygX~`_6iK9TXitgh|GoTw;Fz(b%lB(IG~so~ny{;@tG^HB@-p?lFQt-VgKC@BT{9ox4S5CY z1AHf!8=3VV$_$WvTUqth>u7VC+rnWTquWSYG8UNOT06DFn!sBQQbNh74mal7Gbsv~ z1%(eXX#E0wATq($__8NoV~b;jX6iE6L(Wr|CHEgzME%_AZqmBjarp2fpwW^G1V59i zNBT*h?EDE+kuZsvv=2R78lnT_FufZacf{Y!_WkiVW?PBZSV%N=9btJhTNzNlxAn;3 zV0~}L%a3x(=@*1Bv?KeGBJI<>wsrLS0d~6_2KnoYwwi7BZ6Xbd6O|RGfG+Cv##;2A zq`!Jke2-3g=%SbL>hq99Npt^ck9uquC=sM5tV`N`zs^*Ix_$mV@I~mq^5dH?EmAU5 zdkUf%T}BmYi|@&MKT){Z<0+=6x+W~y85l_yfH74a@Zj>{ki&h33QJ2zPE#^#UIM)* zJ8azGO*>+3NPh`Sxap0NUlGulM{|%E)&G)_SJR)n7{%is- zM9LoXtjc{pAb5O-@`Zqi1%)93PZ0mn?W2>ErOpttjqUBOob>>_hRuTXeGHk4>j_fP*Au;p_zE5>nNQVDXW09_DwEA;Z@#6$>%u)z>s-*<+WP08KPA7N zTt;6W7mL+V!1~WmNmlSJA6ICYV0Hju!UhV+eEC+RVIDCX3U8kvDq-cbL!PyEy!niV zrO!+cDoAOK>&r1>HSV|NOg-1bk*=ksoGn&g+G8`vU8bp0Js6VbQ8ID8&&K1kY2Z@F z@ZHe;lyvE^$m!C6!Z1q8Wu)Ie?9JS_q+XL2{Sa7t%%T}aE;vh?7Hr)kgoN+MFrNkd zx@@%aq%)eE%V{-ipy=Wq^&_HSY6p8F1v=gsPRZ?jf8p)2(2nP`k!alJE#+dt|qtdrr(>y4p7!OBfnn+T&}4v0xJJ(GPB!fIOf z)Ika>uocGDx@qEk z=$xhbxeu>~0Om({86|hkt$;m40SAGHMW<}Oh@?VR;|rL1-=8!b&o7QOq9y+i?#4A` z543tZSv8_aE)?G42T%yMT^HgF1WKKji;oPIZtz`dwNB^<)VN!CSLNWO9^npYWF!UQ z`1q0^TY1j8`UUJ94~uT!q>%q*^r=*$U@7eW{3Fckj6r13Hz6mutqGrem+gS_qJ>`1 zbjJmANayhxq-){JD^thtiyp#6fiJs6x_gH)Yg>`_$ARZsc{;b@t(f&gYT$5OG=T6d zl+jVHxSF~d2(#+1Lts0Cx{SzG^LS}Jo-p8XE)xAZ?O>v%7~iIC*bI_b3hShFmW~A) z1wb@=KQ8QN9;>Ob$?veZc^gIedN_Vlkce7iLf#(7J*wR$IncDdSatk0jQRD+PSA4D~_oSZs9g-%bqA>x!^hE2XFCf%v$P^j6o7bN>1frcY$cnL)PoK!I`o)U4#QnBS6`JFh zr{bP=y8;s{TYC!Oz9uGF92Uv}WkZ|lyg%7g81FHc7nnsw1AAKsTnDkS6*$50LPv@1 z56=v##@RIP9k4GG0n+(rXH@Cp4&94gN&{l;`SCDrOwkugiW^D~FqAh;-If{Pk$V^C zZ*TfQq+)`Ox2G+Tt-kyHy-S@?>ygY=o?jN{S;m4rDX7&F_%r~`p^S)B_of~ zXQ9T|b5rPnX?C|aFvmF<|tsh4Hsnc)T5=AA>>k0W=I-!l8K zQtIy~%s3hvZcyo9?QNLBwuO4X?fTB&q`fcx^tVg42X<*gChVTnLid%V^ z#@6?z6(DYh1AFfy{;H~}CE13%sl~T)Rs6Zw`m-a_T5c94jp5ExQ&S6hs?|4NuK92W zTx;h#uybq|TfvG=APb_%XMaxS&e!ECztoV)r)e$Tv{i2nm+QQr!BOdl?f{f~7pFPiM|LRkI`aBFB7`XV(9$$I z+&jHLI4CAynH=CUWM1R@YHq+idNi}oxu81Xsiz^%TtDsWAQc%6PI+;1X|N1@i)??a zK^!I0#*Rqo6!v4qUCd&iz${y_EGnn9OIa#Vl7j82#xKgs`SKWN_8#2@qJ})9fsXnP zm;eCBTa?XC`tHFbDLYLsLhBsv6fNW(z-l^wt;-_M2%MK<1=-Ws$V#u!Qc);bBi{IU z!j4ewC92}7xM!QZDK*oNkv!R&+gR%wzmW+dLY@Wn6#-2z1itM4AX~R+0S3ZX=5*6R z94o-D+9`?WZbbY3bobS7?Tqf=I?)^CTA&}!?dDXcrggL7dN!Z|oWJy0fU)|od!?kL z5Zl@xm%&Nq%0(Xps6>Ajd>p!o9wYhskU#%+jcyPrwxf* z{oL2jq^wpKv+w8gGu>JyGWci)1|ieN@72abU%rvv0uTb972;H^Tua0lz`h3O+dzfI zVLqbMi~{tRS`Ui}l5t1a+vEC%hQWITBl+$EzX3ec(Pi=7nB{giqr_RwB8}}GYJ`o< zryAkLTShFy@ga|qC)VeJmFM5hD3B**ROMTe+|5hcJVAES<-F5Rc`ZK0#lbe$CwR)u zLfAS!FUW^I&wzp+hqIZCnm15@I6MvGxx2X=T7TUedWr{|smiP;^?};p!JJH-5U#$^ zdsj}bzQ`Bqg$Jv9LyzDDpdW#zCY6Tm@+Pf|BxNoKGn8EST;aVk){PzhWvLh#GRZH( zD4TrI;Hzft?fPZBh4Q9d%_fRG^;n`E)-mnv-&`~BqjQ_Q+Ilwhs58EUVRGwh)+e&< zl4zdVSLKCVHU3&G!^;U{3Y(yp!N3v~mrhSB+Ch}#LpE!Mfif8d0R&v)mPGXR2Hjoq zb0+9zt2A@R*RO9;T*eo^`@8Yt@2^%PBYN_l%l5a5cV9ZT8y>t&yS~8yKJ9`YG;(=E zCbG!n)1Z`_7bz(CXqv2$t^l28sqTqvSto{W6SuQ*H|$cD zfLq+#V8B7vC^T`%$R;4cSlcf(fIl~?a4YV4K}URK3=0bfv!9P73C>{Dnb#yFtc|2w z!-0t^ap$wL3eaQKMvEb*Q;Vs~?QJr|S|HT*3ZG5Z8wWu}@W>yUwQKxW z5Q2ychO!nm1w*0Gsjm8#P$(4)AB394i1Bc!HpTadTLbetN=iyZ+NHYL2#E-2J8*=n z_wZ|TV47yZ4QpDO$tPLJIX=%-e1q;STUH2O)ol#7Q&CJ`%NHWZ()RxBaMR_w903l$ z^|Y1X>5FXt4v6?i4h7(|+6%gdq*BJFWG4>ZP~${>bz}0`o}$}2`TCmD?^xY!+})qu zt>WK(E43cf&EX;0RQ=xCX84oTJ8qysR|GL==H*47s>;B}$9Dzm>*^SO{eC;447~c$ zzN@ESn4biaAXcdZmLh4le$5F#jx`bpZU>Vqv3ox2(#owU+h5tA$V7xH>=Jkxv zBUaV-;cvX`zU0P9?8%bR6a5m%3W}9IFZ!P07Gt3lOW2xzjvc%s(ACw2CCPGzEXm|E zUz6j+d15F5hwz1f6CP499hXx&!rg`o)+1(rUNV_Bd(FO9|78;u!B@U^O&T`%p5p_L@y4j>&1Fv*QTEcq2LfXu1A7_&X{g>mOSi`<3hA`_PLH1`?F-zDyc)+1~?jjDS${exP@dh;zaw}H1frK zSSeXTLPEp)({k@8eqpzh#H5_m5r%^Dt)tt+t^iLI{7vvJ|)1!cltCrUjGQLg^7 z{TMIFM9BOO{N=jR0tS#LW|G_|-*OY85Dv2cK0)~4o0V4dGya05AEew+FmrHGSel_9 zHV9#QDEVPhL#KnT>-TSl;VkKOwF=Sup4R*G9zAj9G^Mgab@kJe+l*^PlI^>&1H)T^ zJ9HkOl3n~)Ma2#-Y2{7#7udulBz$S{7yr=1{Kf{RNu*<7On(8b5DaAy5z)c)dw{@# zJPSCXZ^d2i@y%=t(%A|4OEg^TB_{mIw5?+x)M?OY>Kuc^9%d!IniMMZ+Jl=>3=R%{ z0j8p(P=}qJ@++{>U$;!3dFpHIwRg7Go$sx}Cd)$03R;Z5e3xU$WjxY zJ9r=tZ^Qm=c|z)_)Zcul!WH}uFS7C4LULEfdBb#{eEuMPhd@|RevSS1NO0o|+B$rl zRm9t$Wq(mk<$vqEPs}`sS_J#r%p#o=RD!rG+J_x~1i}D7jwUV}(d+Wb|CPy9YULQS zC!xIlk>_(l??QnrULQ08=Jcql{u$*8<)~J#JaZaW+H+kqyLrLm1IGk=j@pCu&a4Nt z&zZA>JLYJ{QH14CxrjzlDH;po2?FHW`rx?GjT*6Itk-HhX@uhprgypb?g$?aO?p0N z3vp!n-44`#{*E`5=-iW{`FgcFK@k7xz3KH=`m(E#h6+kvC%L>{JaP0TqKBBCNYZq} z=6AD7QS@;>b!$8>lQ+`xb9vLd58g}*;Rh~0JN72_vel(X2oteCS*1S?IGpU-W31+% z-r*8+%%aO`pN*Ch$ZFgJH2c>Nx1Qwu{w7hJI0#s2-?`bHA?*Q?`wmIYI<5g*=+0C} z8R5~$FZ@Ab#iw?WluWR+Bo^OsQu=t+*on`4Qr}kVZNCOMUk2#^kZQoH5ZcUDyvPj8^NrK4qB$6;IB)siv)Dv zuM3#4m4}h8>09$J-g;ax$ScxQgZZKJb`@QV@h-~E&SsxIU8!h_+dz>!X)v?gto6ov zvlwZAddCF!V~UK7v|~Ho7`+X6G{(JUsXH1diwkj{(?35ypYUi$s;LWE{32LNg^j!( zyH3pb)fL_ETHZ>uiWHGaG#RMlZNq$0<^}SfxLpVgbI}EH$!~gNwKwJ4L}ze~I`QKb z1{6x9ow2YtdJC#1hFc+g7MYR3CB@zu6&L#$V)EA!YIkqR4Kq7ah}B58&vQ?jE|``| zQB;hHLvIJPkwrDHf%ZPDv%|g%qWlEB;2aZ-fMeU9|ikS`>WBeAm(2EgAiaD zvaOs|urL2KM5HvOalq*%lPSAZejYyoxyGAan;rDyi&+s0VOa2|JsWxHl8TM<%k=-u zp}DuWzOT?t(wy;#KiQANswi0=7P+AqGAx_csq@E5#&41CI{_C4m<=U3s*tp$NA<4Y z;;;5k@A8BD?ofOap`Q=c_4o+HHC0?~kG29r9HN z54WeDNU3cTF1cK)9XmfM?;N>wT?@Ubxj9=)Vf#@9b}df})ol8-vWN3GR_80D2_)8F#NPcQ^iiFxvFxA~}Yddu`RURZ~r#sFRyOO__ zDDVRXUnW~+3#~eu2rNSiU9E;mchA;a6?fm~-MqJ#`gZW`V_&cQMA?e5^DmZ=Hi~o% zR;4TWQ^q^mMD$|{qtTOF&k1{e_rXh#?2fO4&lG>~$-GGW+?!sofJfW=Skb9U_^wEl z@$rNyn1W!>%Kj-bfO#8dx_^RUsIC|QcOYyNoN{%cdpN_i0$ddofkgI6J# z8*B^z{{4HqmlQ3w4#?BI7q>Y~!_@20PZziugBWfx#o%p6^Jgu$yQGcm$=sBnq;;Nz z5mBsHiXot>Vei^IX_$sT#)}*ba5j(!x2+2K5NBjPc6__Q7iDj6e+DL;sOf6@a9txW z5Y>Vs`zA&=t{M2_Nl@%Bc7@?Vt|roJMe680f6#!1vS}OG7|<%I3hCM?w(r;@wCpWK zmZ&0<`4-(&hjsEKlt^9=3k@zf$J9*IzN3Jv^VU?=JVn$DQp&(F?=4i@Y_hEt8gH{r z*BhvwCwfQPrxez>l=FxC=hAdKG7{+$4?VCBc+`ON-t_hLwNsuo9~*na`8LaxcDF4RG_xOfoxrBW z5PubfAl`=_D%HQtZ^W1OMa|}cw!6s)1TbF`Fa_vQr9 zjG%znpYAQsmRJnvvr9)Q#kK}tXS({PsUoIdA-@mqT|*%#IW;vUd@{i2oUS+dX?akH zHRv7DX|t=*rq|g%JLn^Nx3=zrKdDR7({(qauYc)hFv;37%p~hW_gE=(|2V)8bGcVe z#ZOz`r>ItrD{R_OoWgq*k~sQI+j#oz^0?h<6@Njg8Xgx(Ie(V#iJs5$OpxEm2G_{& z&=UCEfVU8Yqze}EI?ZZid?$&SeP=3SbY?>^`|Hby%qbHc9U&!!9gW24UNo9fa#>GU z_8ife49&s+Q||;rm>{5!V3>VwL@ol#N8@?G0m}X$(ged%$LqV)|G@|kJNX{5f`GEY z-mOz0h*F^Juy1Z;2)-0(84xRrZ75dFSjiW)*>7X@4F>%Yle9Ov3G11+Y1{%po=iK> z9%`D-k!Q`PT1DHc!^WB5`nuJFWm)XqRU1H@)z8_(KCf>!94s4~MqD8S5>C79N zP1gseI~Gyw8S1ywhcrKAF*_e`O(JsBp%|%XiFpX5w5$w|cpz)T_bC?t(e;DJq|W3& ze*6$apXY1x8h&%-EugxQQJ`N|Ydyy@&5K+i;`)S_U)_kLdh( zyTN@&ACa61eFJNJn~xyKg4V*o8A7yVLB;Ts_;gMX$5~Kbz-6(MfL}mhF~eg%J46W| z;^8vT-HqSV(^J{d@Bw_;jKB74M*M!{8*UyR#mLrx6({06#=n{Kn(OcB*zw0U#U$5V zXhSwcL{iD0C@CFa4o8+(`V)-mlekCqo?@*Z`v%R#VLT{#+y75XS02~I5rvmSE*s>C zM;iqa!l{L5A@D<~%|V1%0iz-!mq9@hAwUG>+66_>a7Zu(OoLd2YE?8vB8U+@pd@N5 z!6OtxXpNHCB6NY)Ad(KX``7IJX6DVl+4?v))w1{_N7~2cT1!O~ z)D6CvM#Aw8Z=DwT8!06*#>n8{VExoxe0_aJ$D@(FsV#Y^%x#5(Lod*7ZgMA+of|y= znmr_eK)t03OnpVnra~nqL}lp`nlj`iokJf&2zWIc!`(-(-W)mAvAq){&uGT3S1Pg& zJotHGkS8ZO!#z&yB2C&d$sw3WoWVRbOne?PfVm|$RHpQWgEiY=Yf`!%-S=%^ZbW&s z(LX`Y2l{es_r}LVkezf%_W5x4Voef0Xy1PdbT)P5_Q`B@{&K+mxUO#4 zb9(ME(Iekv#vsB|&CARdfdcFduO*R? zXs;5s_#*WQ5yOYM!_r*8w*;HDRCFTWQ((23rT%K%Fv9myHQ-)3b_`e~d@`6qzRs@7 ztVkgbWpsy{4dkLgF;$>3p^|-%xFTX$i-*`tIy(z-Q%* zZBdQ=-SF&e&d$pC-@jvBI@8?T%uKI&c>u4^UeLYAu*tdwm)^ z%}JkqA{9=>;c!Z&5w`=R` zdqHUE?Cfx25{F|0k$ikiA>e}Do1XUZpafdT&YiyfS1%4i+S+^}ir!ut<|pe~oriq> zkQyM0=)&jNqp*=H6rY&be4wG4*~HN)nrfMJx}{9L;fH6Q2mMSYCx4?I{&W1M+6+^W zQ<>ZrB_Eq=S|#to?&#<IX{7qx6WnJ>7Xy zsNKw1lu599dle+uLavftu#;=$A_xmiOx;l=IlxWh(3aN`I^!|@? z%_Y$dj}T3m4c*VSZqbp11QVf9$XU6mSlU2xfBl3p?}BL3>@>y+WFlPTbgQ@zj&UNY z?97gpn)5^M_A4OBxFUp3+1^!mBO|lw3#e@EStD)w0uXW+i`~0bSWwb|zwtb6+h`)_ zlm)?>unqC}jDGzzpVR-Nl7ogXfG0mvUF`PV($Y+ z3~Fz@15Om7NiN2ksiXToobUPevG%!mG71@2@Qr0~ZqC+uSaOI*&Zn{87AgZl2ZT!U zyyKwv2n0)&l5(&-Zs*asw#8HmmKOw< zm6iFdQeUnJ)XBrV!A!-0=Q*J{7aeR=V64d!ncDWIubiHl*^`)P2L3IoaDhZ(Q#%zv zrIi0H2fPly=$&Qo_X9T6Cs`u8{g0vk702}YqoiKWU%v

      7qH>?Z4%x=7El}t%qDubI z?)r8Vz6MQrWipLQ6SgXp2ojFdSV+#ybn!`G*0MBsO;)^4-)zc;?+PR;tF`q9${vNP z;3?!T__3ut5XwyTSnzRhhs@&s4`C;4rDhadM+k`@50D8u?G3yucbcF81rM;J-H{E+ zDU0;z@Wb0x+EMgx_#~Q6HjMeJVn+wq@@8B5OFcclO}Sth1TU4jXQi&;?g z?QNyI0Oa^0yVw>*Gfo#{M+353y?UMHqvbm9WbNyRPEnWfWC71)q*4g>m zum1r~x9I$sWJJY8QuWk6?+4pG*%U23op)&fGVhjfDYD{klj%6VAOIZDCLnvjs>h>` zHnI_ ziu7IHS=df`;`+xbn%6eOS2wV@b$K!Mg!aHYweU0`Qf`b~szZi|u{DXCw%sg|{aDr= zL)`T~`|RIOLl7kB=+4tWyEJ<*5(6M@;rpj6fdyoxrwD>Z-wT4$ky(v5z^Ii8XnB;$(ciLUz3jRCnx{_i=N0{bE^db`xQnU%_*4qB&3}m57~?tt@e)$hdzw^&NUGvf;{H&r%!Z)KJOc; z(>D+7=bT2I+|C^(^;%6=?3X1XuJ&P}@?oIGc8Zgx%6Hzx0rc)<-WE1Gv?J~CSdp;9 z0^jmx)T2vmU%+It&znCG5DJYcZfcNxUdhhuHB_?NjUd`-MBXhIrc;om<)&QmN`Cu5CLN)t%2aXg=?tL^ulMGzJWr&siWI;JTQ; z|Fm(a6v&)*VZb^9z>HzJW-HxOKyos;)`$!Iy$4{5pVteZ#xSBPMD83d#G0_|5Nrlr zAs!V6vD(0{gPCx@d+mW{v)enzuGuW^nVOQ_RVN=f6IllxqjGt+SdBmx)>Z}6G*pVv z*><~tx$VlSt($4j5074*gvJ~RvOS|9B_?-k@WxeA#U6S$E~GlF0`Pp=#Sl_uhVL`j zKC3d?+pm@4$;%E948t!7(c$MN*uh+3m>(PXfUMtBH7N*#`BjL~1$U|Z;I zp`ALh)8q>j zs=u>uKB_&(#%4ix%P3#hkms%$sQB)OMK6%_tkOeq!`Z*!$FN1+rwvj;%pNUp@{F1|t{_kJJ*r%DcJBZ+mAy>FzWr`xRwj z9Fyepc}ClRCe%rSdAm-2t|`Rn6W)wC+r2`A1qW0$|2{Ca(PlnAnMUM^Ruk#L`<^Wf z17K&W>6k|J)?*9(Sl755+Dnw&PnArI{ly#(BbBv<9o?(+=c+QB77#>F@M|JAkRaJl zH!?5dhel<-?2CqqVRK-c)RiChna9>VQ9tkhR!rF?90qy~MAG7EiAZML3K2Pq~VS?*iAt zcFyM=Pa@ha5Ez5oC*T85JWvCd61_g*Jqf$>6&-rYr&YA4FI#Z5VEHFQ-vg16C3W5I zMmL&I;7)C@ukH5XBzvqK4_nqDHy(L6JqjP{Vafu38i}q|xiQY@I(X-i@=|-AnWl4( zPHAf+*No=Fo}5{w{QKBmP3w=j9o5-)^5xntMkdF#&PH&Zw8gCF_2Ev@&Fan+xi43# zxlYkz!KVt1oZZGIwysi&JvxdoCH(F2c5*N9yL5h2oJc+w>gLIX z;<(w$x;v+=%#y@bbgj^2?aLeej1p1LBv5+suB@1i9C68sXmo4ayYy>8OXc0`f#x^% z$BuRDjQtn3bn8<#=nNG}pEgbv__D2Yu;^747ZK6w)AjAsh)@Nk%gDQpGtXhOg=Q6t z7%fq%+uy36*kRi)&(58*yORI(Q<~akZLfuw3$xRWGqdaTLY?gBd0RVJr<2W;ZR0$J zlO!eQQQakH$B{3CqFG4f?iaWSrT-1iY)7%?Habh_?yE-RuP=9(V))*MVR}FgW9+M>*6f5Z7Tdv(VM3!1ywT`E{#x z>j})A4U(#A@-b?eb}r>z9J8wQ%WeP zcEaIIwai^#-PA>*@qUD=1q#!*p)+4M>P};9vf~tBiEhMI()TE9KI(bzBQW|MjLfO` z>KCIe!1WLK7t#^{mDbEG-cU8)X z&EI5`N_P7%gMeXuT0!8Kr;g}|b%4#@e-WKz3u_OCVriyDFz1m%4oeh>n z(O^$#NN9A|)TGZw;T5@T?wsra8}Z!#-%|z*jA%VC!!owmo)*bW=ZNi(X6`#p|2^ag z3_SQLZSbM%=EYixSNBR{gUkwQY~drweCeN6$%Rbc!^*YYO9pUHeVm+VH$j1(E7bC= zwco;)>#>FARkA$WW$vj1J618$7d6tLW`-PgaTh+3w=&w-F1QuwQ6|rwHd5Y7(z)4G z^z(qKr9tI&3Ertywi93C)cYf8{@9PNO66(U2O@-ISVVeUW~@_7{!Sb_Z%zo`f(TnyiYgHiu>@yQ!>5xnT_ z3|^^4+U*~#s^n2gP)^y4+^|JRtL`Fn_%UuU0x&UN{E2aQ^$gNPyPLXh)ISzD@wg-x zaAMs+r%z!_ABb`=aR6Kd$N0SO7ji(LwTrg~>sOe>E#)ZgIgQ^OXvM|5mepp_DF&O| zOuI?`bKA_L_{M=eS#nVh=3Cs?zhxDG-v8c(lxj6f z-Q8vntbgY=^5Rw)e#NPmmhm3A(KfKiKwP|Tzxl@T_(_?k2sSU6D?=fqzG%%X0KM#2 z6=A~B+Px8mnmxqf`%eDl&Sfx}w;Q5H7UymnN7US<)Jv5SEPHt*$H6ZVq?CrBd$EYG zuCY7=4Nw4S%-5yZjC zo_MegYROl4`IMUZf;Rk>^f$lSE{JPm*v=TIIJl+f$J3Ap6smHPXD+@sM|;m@DP(iU zk{dLeqwu8~vgOYyue@d-Lq*+|B9pKy95&`fdS^V2cBMHOp ztY^IaMY0fU_`?9^X@Y%ap^MB5K5t!)?hh6gtB>=*iP;J#j7p|V{Ko@&ehh~8>2s&l zXhm(MPw#4<2AA~2GY@?C-lpD!>4_;f_8OJ82F^G1P3goNgoQ+IohmcSjwfAMddi@v zbqmwNa+Zah#%4PmUjAB8eeJH&^!?TyKiI)JuqE0p)<41{o(UF-yw+m-<^Kn z>FFCJI{5Lph~N6q_?r)=8RU9Tu&ipi@y&{3j)~}}_hrdrcd}6`s)wf$CIzi1o8t{{{Fr9#VKRGhN5`+BQLT6H)JZ;9wT+F#Eu zM2dgjg$KwJ&368C*5Xk~VGrXQRjdEBta!uex`zO2?DS=II`uDQct8N|&<2MHT1Rez zT!j#)6vPPV%fE`~mxp5gjyhXzYQ-Z0Kkt1{_dT3G@l$zB7iOD;{yvVz?!&`lxK2yO zy*%N4*=XYJJmO<3RZ_{UZ&#ow)c{e->*6*9v`^?pZ^l{mOB`rSM@Ed zHq10>^*|lZL~m^HE{-wsHN_UAUZEr=(Y;crVaMZgVR7$mK%MqWg6Yv*_Q40;efblk zKOZZ|YMbcH9Omxj&|rxd7xdshtFcGQ=dzJRQHGoY)Qz zTf+sd?_LT5Wz1bfJz(j99t}YBQO}`0^k~lfWK$@YZ%M_Ls_-lZJgMOpmis(I{~n%K zWYhFv>@h`_CoY`q3qOY!v}V-TFS5a9u~_&+M)e{3invbwOOo`RMWP${m6LRZQmc>G z9<@T&__(gwiq8_2cQSjO&E=lUEz+!4CE&c)?@`Z0uC6XixfOeOs(%{$?(n4cG2c{ZhIX`0F7rO#OXbF-7t2v46s zC0A??AYcHCxu?IJ&5o28FFNRlbbDXMEYHjPxly&9)x?PeeD zZ29jm?zy?tjG7kom&hH7qB>^KWEvBSZ?~nqZ-QRS%&+fP`L|*=#arBg)^=DTw^vq` z!(jA9%z2;ri=I?h_DvUO6R6qi)uOM3u~b873mbFxM;P*8KR89*v(Ldy(h_f$Lv61@ zby64`cp49WF)NfGqAsPq4iza%_LMLxM}4Q#BeHK&JsGpqq4j z)Ytjy5KO6Av&l!sdww4~D``14-fGADu=Z+Ns9sN?e+IMXXO2J+R1xyPF1+B!hgzeb zzfZq_KMNxXT#zb!s?O8YF!M5j3bM7iy8zoeD$@cyvq9Ka(P%ciQ~{z3>X)r^wH|GA zt7{+6f7SS9@Y>l(W|mLAr`3YVJa_gi7()=eFQ~}7kNyL`lef#C-SS1<)VfGp-(|JI zrPgov-i;-{7@h=P*4@3_?OYP(y8V=RQwIJ`-HX7sueODlLHZ5KlGH>}2U_R2qMyNCbo|7`Re$#IKJo>kAr9D(yZ6jQ_! zMj@yJ)KnT>db3)J*!F^N@HhWB_hIq6GnL0n?DQTA4y(SGHkkFmHfk4AiP2RH^k?Wn z!Bs9PxU7!PmAT(Vg>g98y~3?z%Jqz$8Y{31Jkc9imb)_i0*fO28Q|Tv%f^M5==sr+ z;zgYS#(MCcV!KaY^k}6){BEIZw-F2>fkNh9a$E+>!P?OG!KV`7uKgDOLUMlR$wqJ6 zRFeHY-E{wH!TQF}^^XOjW}TYbmj)PHku8=hqo~vPq}M(0mctt4iH`GUcWe2%n9?ch z=?|I84?1qgd#!Xgp7xoWQ_&Z>pKmg0?b4b+<2wR;wuS*LJInGxyRT)z#MmP_6CD_VrS?DLm9iZ_?Oz;=&{Fqf8xKiZBg0yc7?*)9;If9qN5 zIpR-E+b}b_ZKe^~3%u9Ndqvca`|-#dmrUi4iPxq=lx{$Y@W|nj&XvF%wPkT#K<&b# ztz`=&ANc&Z&~bFkv`xKjjX0j`bh;a@7SG2h@IU3p2T-GmKj{wvi+WI@onRN_eRbRb>Y%Q8# z9%H1m5$Kw;%Uqv!-Ly(pS7}C+5z;s|wZUGN=~=&c@XqhnNL`xoxO39!HlR(=L}HqD zErg_Fcop!h;kU^53S3Hev=Y6TrJg$$g~K;f^e2s;oVoDlO8k{013rXrA*k|M%5O4Y-i)I#jd;1pI>rDB`_Wu z8ONr>Z2#})56;fHmK5YZ*nx^RpJoFHoC9y_k1pFDzmc#xS~R zXQH0I@bjj3z>T|nrb0731Ulso&8L|SPh!lrP?P;&hXN1ZTT7JT^MaWQctzIlyQE(& z%}dJw1X}D4V~mKTo$3XE4++)gkZwzE1=nSv(C3oO5YGL>`zD6rpq_uG2$oG>r@{8K zDAv~5^jus!qRxgIJ6$F(1t;CCq5>l)(zf?EIb6GYwv0+EXsiXawj9Og@dvjYnlWd@ ztlm~tH=^BhHf)nORI}U8W-ttVcJ%yJ(>`Yfe1&@vMH?w~&w|tBYDYwwpKosZ`K|Z9 z$SQEb`;Qza4kGOyewBsaeR|JzoTV&vm+44`%l;d)6cZ;8o40)233J@r_{%=~t1(N0 zdm}Xi{$g!Y9*+mJpY>G&a6XhFT^8r#+Ba4E8vW_GZTqamNO0QNaVml>)LP!(&>ihW zNVw3_5?>mqezR^WU2J>-lNarpGs2=2l|J2+GW9N*BT_QC`fx?3TI46ehta9Vh6c5Q zX`9P;BS)G8bF=sBzON4HGdABE`gv{KOgTp+r$EMf?p-#rsqv}E35T<9G&h`&9rg}L z-2mPpCN+!MR=+HTCe_a!McK< z-M{a7l7|>?NV*)_@<(JGNF)Q^0alvaEb@#>d>)vj*n}o`_`Otq9U(CQg@b_ zee!+hPsP1{eRb03{r3*4!3dmdTr6j5gf) z|M6>NNckHd^z&9zeEM?M8!RpCeY_k$Hs3UyXV5CmumSZbls$oy_^!_~wPepPTrM+K z4r8Yt%YOd<%sff7GxTB!Pqx+likNMZ-*T_)2|@A8 z4ECFkml0!0)@Y4_z+vg|EqvO;v$Qr``NY%2PR6+QXoYh!4A=0#xE3xum>>82XI1fA zKzy!U?DkHIJ}y*(X10X@aHYy18gbt$8$ChZ%7l>!DYOiUe) zf=TxEb=al_`47jVcX6429tCB0JUrX?+#$X*X%%ZhY%C)r;}`a>LY1y>p}C<;RH(tk zQ7Hf0=H`e+^HZ=2l16Ww!^D)!xn9`h zk)rw4!4~a8+u+w-p&J|7kIL%g)hqpegR8*azK{MeAAO<8aVHj~VNsSJP`k<%gX$(? z4Y$|TZNgak-4}1P@oehlWec`%Ch}KdNnTv#ya_k#QNtJteBPu5IHCF~Nw%Vaq`!C1 ze#1|__faOzBv~dVt9Wo&p+&Uu8!_M`x~m0U$@pnMmp??dRq(kER#W5sfvZe(Sh$7ZPGjQlJ4lfnOu%lD0{tvD!*=$-xlmWhoa03 z`zishlTPhr&KSKZB!#tJ<|seFF=u;U#56&acKpHFa0AD_6EF8K5=8ginqjb8H(7Dz zj{f*$o%8#n_)k@b{49THJ)KZ4`&4_+ebj@-!_D{7tJYuV{JAP9sMkSp_p#=AHjakq z>e&`-BNo=|YGr;@=8j1KRBB@TNS(xiPo8VB3eAZ;Zq$gtyEjX!Dx@=}g~Oc9^J;9M zVA(q@&N&(Z4%35$&qct{3<@P1eGxB2hi-g&`iWk9e44=3 zyx^y_haBR)&edNSEAnJiu3mgc0<)rnM^!?3CHpihVej0>9EH9*?~{UyF($i(A0AyX zmLu+ZHlNaC3cq0NFukxfGt54-;lOdBI4^ki3==|nGms@}E%@V2a%%#Q!rH{H7u%

      rR&pGw0PUt-qEaQv`m-ExIg;Pd-)Rl9;|OOxosF1rc^<5 zp?DBmMkDV2@VVU^(VHaB1ue+(4jB>j#*CosiP`LTw}<>m;K>)RI!d*TIst-=*Xh6Fv0RF@<%uS4NyhQ?K)9R(M8-S|0VCE^9#P}r21Kw_)M5!Ko?O|^57r*h*OR9dygst#I(+`J{r0U9~AfAKb zg^LLv2@>=!5VcV*NA3vvWi^0xI*#JYhTPK6mk&}&Z@X`K-8n}VSt5#Rh+O1vSfcPO zQMD`Dz)j_ce#Kr6^SLvp^iM4F9{vp}=x{5{QupRl`7wF+C89ieMBx7QvUvFl4KNV)VNU?hJJ~3vmZPx*!E5%A}sw8 zOkMODp3FCsqrN><{AOP1M+&5VN!5{7v!^;Edow3|PtT=h%vjoNI_@owooJ!7zi;uN zsFR#LgG^5LJ?O&mlL--?bK&QPZMPT=kd79QMw92bvqRob5)@Ht+NXTT!<9-}_le^n z$P(dZ?Y~1i;*<3im-e${(CDu>?_+RhYj=JqYQDv>N+^fGw_{6$H%_E^x)%^wgb<`S zRYvN@L71PQlD9}6nqz}93fPBSNZ$z8!BKl?9qwe!Y^aW&lHvPG%% zX8vtWoJfq(!Hw0s0s5%iVz~mT|7G(IdRS1@P5eT+8*Fgd`T1dUts< zNGzLfj4+Md^j+WddT~dKVf^D!0qK3Z+k?VCc8yH6Wp2U%h!gX4cW5O_u8lXXTvJ1s zf}p}The2#CAsq0%!!cI_((x~E`s^8#cZfk9iC*W-vF?f}*HLNhzQTo<&E)|~j1!0g zkAETUTT&RWMR>$aCM^SoQti@e7H9Ikmolc?Zt(48GSyF?($&?}SrZjrE(V|H1N9-) z&DM(_enKw5b|+X4q)=(C2$FR0tkb_zp1ow>h{Yu9fyJjb!EM86(fhLD;{mB#2n_9_+5esI{+ zvx?1j^i{67CZ{o){F?8(2->EM;JLwZb!Fkv+--j-%J<*yQ+{#R^YNPHn+QFD>s8ik z_DvVW8eyZ{clI-;!%VACtc-$Y?+_1e5lr}+CnAU~{e2`61LbEasSB@Oav5WO1;3PO zTxyUYfR8>p;y-PN!CCRoN4gW;H>4Q^C9xI3&~iuw4j4%ms+0Un6b4^dS;-s)uv&pK z=rM`yfQwk)?)z|`vFEIH8Tf5W61~m}wb|OSdnSmh=1wY+Y3&XD*4jcv-|<5qUDwZ5QyiunCA>1yCHq8U9;H$LWK3v%@*1>XVNyK1AH zvlG7A4ubbK-6!kIMzi2FF7K8;GoFl}Jx1g>-0B3<7ChZ=jhv(MAKy4WnG`4_SGKI6iu=eO+&3ob-5dOstF`Ch^>prI{4j^_>EIF)8p(}gn zYO1Cg32q#`ZN@^f)HF43m+ya%>`7aIg2^WJ+;6K~S8Tss^LViU!HFjDndeML)l|&1{@yPyu+xX zo^L-996(ZriyKIs(Mie8bD)@VoL$suV)PN5_3~38#0nyWitOq0y_8ivaNlS+**s06Ly@CwM=ctSgfa98i`@vn;)owDuUEq zmi=;L;~#ghQ4ND9KPVwX}wfJVji1+bvVHC)A>>7A*(z{(wfYKxoL)z zcYs9CzDl)aX&GVg_POPK4TBGJ0x9F^x;HjXjA*sksMv2f3h?S9mh}=jK<%Mr$oAxo z17^G9%|YcjhAR^19F(gw6RO|&9g4Re;DapW)`zD9?ztVN2KzK?ghv74 zsl#cBrh1nD*Zz;3Ke~b?0q*tLC%!H%fYK#OZB@t;_4_4+k&}HiQ@O9uJip*e@O{#t zs>%W>qoC=@8NsJmt)XeR)v6>J8O5%g@T%XqEI~bG49}2LK_!Z9^Z?zl4K+RvCuJd< z{NU(urj688S8w*BEM{pu!eb@fHm2ZsT~yoRR{oj_trR+%!-7%vQ-s`+(Rbe(TSXob z`dv8os~nTiT?`>rL}vMBO^yf+oUKz_k>B0d{BZ4NcSuTWsy`V%hGOJ+qjX)P_#Qk1 ztl@rr!h9WA#!yp`O#!pHqKLt__V7?MQ5E~_pgVySjDdKjAorBB@HJxKd)wG|?LQ1e&rd`USiL;OhhxK0|ejEu_s)K1!P!}p{hA>wkT zUR=KR4=MxY2k~=QjiTmyqKw2sK*3iiwmlo$xpt1G)+B^yALya6zhGv!6>z15UYnb3 zMkN2PL?+MiBPV`KLTH7uU+r{iiG3JNoHjDP9E%?_mg_s}RkP3WxpzZIY*z@f`nDv$ z&qVk(wcG`}dg}YJtp7u1XUxK>GhPrh*QEj=-)o;qs`#&P9Lf?B6?bTg$iG!4_VTc$ zsFbZr-not4Z%HdPyF7?jRNY{(T_fu0h*f3Xky0wD>(2XiU(-=?ZNPWEcg6qFmx@lI zJ3Z{F64V`FQ{)j=1!5zR-q{+E2z`lFWxskX|LKjv8VhpXXYOri)?@EWx<4POq57Ge zmffq}niX8LfB?o9LJc7_*l9EU7kXFE<-DV-zj~Yv#D>%JIVbs2wE0Ibnl-#%VQ%A= zjyK@n-4os3XDeLYuR*WfV*LO?Xs$m&YT8J~n9q4{|5 zKOZmAryj|a#g6Y>>9FEbDkMbH7@kCAb>XXVa})~Pq_h5E?DttR6fb^V&FH2JutF0| zf_LpE9UhWXkv)pV4`dYcd{t`_M_Rs+G-ArO{uIS7^&IxvrS&@qeQ4M|n}yV4kk$8k z-AK}oU6qv*-~fiynSk+%ysowm2E>vVR@`Tav)dvry3D`^a#^kLcGtUKS1ERDtFJij z_V7R!A)9MADqAPp*JVEyDr`;D7w)-dIo6le30WO6&E^pvofQ3cZHXPn*Bh5->b_&F z&D4FqdUtixqZSWhD-{n?0Ty=U<(Gr6eL2NPuHXxHX zbYz@7nn8Nxq20H&Vds%4s)L}vU3~9ru#~?m_64NfPp9yf>r#O=@IsN?+K^?96xHxx zdj|(zbOqkunQ#mi@cqY8Yc;95&bn}do{piOnu-a0ShRY?BX7^uM zo5K0o`J-dhR%sDk8p)H;{iOwKds+5fxX5oIwfgvIp=O%h<_V9-1B|^DelGU4M-!?3+2Cjeap*+}5c%Yg zWvTJWipt3}%kOF&h5uDC2P?`PNv#8bqr4y8bgVY3BoXrHkgL|@$U@vlO@=QZaVyp3 zW&vWHNQ&Fy*?0Ol`Qs&~uC?GNsv_G7cfU7^6kGcMyGCzygMh$df5gQU!Z*ESpjRFeup_ZpXl1-YVD z!{tC)_|I>za^tNjfDL;)% z#5YyVz_k6heHBMjddxLe&1c&zZ&#N!dbbKSE_6M0iw3l-i*(mJgZP>A2@RHmdQ5ac zfdM62lM%&R6(a~J&S_8;Kpvtt+&X=F}YM$rYZD#pXd{;a&R(x z)b^lXX07}@|AipQH8KSBK8N#!u?h3PWb}^nUK<(go@~NPfXO~bn394^M$?GHic4Tt zo&5GWsZiY^^8GR%4K6PzLyto15g3AH@yeWyH|j|_5*3XV^30jyg&dPW`4Qx?LJO71 z8no-GBl0!)8{qjF4%+NP*1L3W^ySKL_J>alvO8Hc(aqIS9XSab$j$EmZfnA_TVDO| zC)Az5o+HAv=d{ajAefBX+nPntGW6u#8`15*v9}4BK=li;I5fRrsUyZ-xO6bECPuF7 zVfbu&Z-MDwFba0@?m~8{$Jl_SvRcEWnvwktPWm zfdqy8(Dv_mJ>RpAw>jAKMdVUMRiBc2!(B(%-@gzD{Ic24Oojf;f1JF&w!rR4dc&h| zbL1Qm{v5-QeKX_!Y10v&^>p9i&yUA_LRu0|@zEPDKxB&d2K?XaEblJ0oRd(qJ$yE; zr`I`ei6+-CS@7BFICK>#BW(5rF?$09J+bgt`(}2Rq@rr`)rJs`u8seP5xKtqY&IDH zjxAqkLG2fG1gsF~we(sQl)-{Mc?LY!ZielFCD~5;i(82I9r-Qte6b>TiXO^}RcGo+ z&?;#BiM=D9TDp+vh1XT3dF#Dr*ceI3&wQJwA2Q!D?J|%bFctD^y;iPmCyFvTG~s|6 zXIy9;eQk03e4zVM2Cvw1C>u5`9rMNKxNnhe<|AYiQq*gfQU|Qf(%t(eA4XF~aUGSh z>TFz+VHNz_iV%g_)vc?2t|I zsfHpXe_x~C>YBJ-PCxv&>y)Jl5ce$xTVd~R7k!|*6mbhvfbaXqDSWOR--Fb}Is(s$ zg#bbuNQm>XurY6}8WJO*W#@Nv#gMk)4QHCGFvQgW;Ut??zFjv7J0{+_ed-(Rlt6LN zZ68DV$$S&Th0;VN|J67Qjli-6tT%X3dyc^cTLuU?%hXdW0UxRt{B%B3ixYAaIlHTF zqW$46)8LF$lt{3gqJ!_{{I+DM!mLTpDQ6T~uI`N1sV17|PRSC))BF~$riyVg>pHK> z2eOj7F2uWpl`2+e0p=Vd$Lc3V09xzyDr|hemgO$w8)cKPfHF9ofdMt^Gx@w!yUefhaBuVGlUUnef`E^zkjRxTc$ooR>yiSmo( zEB3?TW#S(*OFrApf28iO5wFD_(OarL+|O%>jX=w&oImdYG(Xoa|CT#pmZ&5g-#diD zn|aK1rHF-~)m-CF`lt4Ac|Dp+5gOKrG$yBX=PDJRSkJIG(?v|cOPM`axjD7TA*(zw z3S~#KC3R;y2!jLW@0a`$&=dOZL*%cxjtYY;zFiuR|jfSWtfCT#aCxF+tZv|r4k*RmA}}$IzISy=e{}0@Ku8$Y z9qD1sRyINQMPUJ2mVN&=*TUc9k-XR`Kws6s)>?fAvbe=FjK|h z-C^Ho>Ohv8dJJSdw{dZGL&0UC978c+`z_ILCI=;T%%0^ z>&Caw8g~%asTn9^O+QdevW!=AS(HNk7|j%lk*byH#$Ha1jPapytH%=KUrK{&2$ce< zVmqGMlLmr(h|b1MQ=V~d&ZxCWsbH)O$$xh5A-O`z4?bG8gB%T{VtgCHL8JEIdATo_ zHxN!IM=?3Hq)pUw>#}PIIE2R*cEMRaMs2Lk+a%1|7i+b}b+n2*M)l&EIaP>fL z-PPyo@$<3cw*h7tuTzrTH~DmYSd+#~SI|?3Vie1*k2DxnNs`tcG6?ZicH#nda=QzV zQu<^aenBbQl8W31omRwh43c^;ih87s>|I9Io<-a&qSDuD7T7h2=^=S@pHbehHC-XF zer1!$Q;#{*GQ{crjQ?cH2e24$77Al;4<*E0Jqqt*4KB|LH}0bhkO~maJF%e)gPs?^ z83}>2D^T9&Bj5^Fw0|htn!>bkQ_`=TIGB@oClVr%(oUyVXkGXL7tRyqcI>#t|B+wf zzPjViQ}BCiwG3#!1>tPTx-zU(%BEUQB)1$xvid(8%gGbSUPs^4_$KN|4@d|=W{@0XApMW>GuBfd%aQdl25_{@RBa`l!b zFDQlYmwCHy{M5$6t7y)+a`2gK3T}Ra=F7^S_1l`ma00IA^LpC$Wyi!Qw%&ry&Yz;tDT=C7xwzO4 z{?H=)rbi|3Az>y3=i$z0ir;M99t^`Fu+oP=&BgCg4-D*@j^=f%sFKiNE)27v!$~vl?^;;VyJ&AR2{TTx%k!p93g$RhABsCCAd2c)zvg zzd4JGq9wE8WA$ap-#&dj^5a#@P6`5Yb?aGeRdOvNLz0C}xVjw_J;B6Bm3SH=si0{# zLZ98~_R*Tun{1#s#XCip<`r2`B81WKcYt%qT^n&Sa1Nw+w(LW+6@P2i)p8~_@q98C zcXVX`w_Y;Cz<)#T5(`C_Ap{$6JCvc(78YDoR<;oMO~u?etQTuD!a|`7yi|Slu!bEQ zuF4sv!Ao$^bzL(9y?~>uU2k?+M@JLZ zWc`p`X_Oz@Yh~;0m?BV3D?7=er%U}w?dOwH>nL{+0iAaQICQ$g-3wxePBE<+kv0CE z0TsStL2d10(uC2^J5lp#@cq)%7KD-MLE}{yv_(7(F^jDz&4W7JDaOHi-z3J<@&!IrSn3)^a=hX3tO^UV+ zah6*!8y(7VGIbN_`5&7_$H?562lqOmL`l*BqC*Q0OjOlN8C+SU&zFy-+CQ*c&^3=XqEow%&L1s8zBjgw$G1cG(NO#~IOkBC)orJ?1IKE=<6U<0u}vwiFkxC~ z>5tfcr31r|_VYd)j{WYLQXK6-QhLSLky3WkL!?F-Dqm+fBxR+^dS>}y$+qqe)dkF+ z)#&v87}__% zvw$cg$;SE-@rN%mGF)ueQCDd}`RmyThs_A-*-$OhuzdXs%^lH=2L*dSTJT=_9qOPt zl7ihHo>1bEB<9n>)^v(2kOr;zxjEVDVDtU%T+gmad;m3A6l&Y# zPXA=|i486LF&)q8;o;W!s#ETjZ`VlCSeO_stezoWf^cjSWlpdmZKnu)0eObJ*VM~k zmmVWS1q*e_=mil2PG6g8{*QIXSExQ0jquU+=8k4k!wBL(fSNPdKKZMBud6Q`8Eq@F zqXgP%*lci>I&;3_{@#ry3IQuM25ILFJO&%dngjYHY!pz$KL<;#z^H!hMgDOwJ$A* zhP9gV+YS|SlIBUic~SI*3JeG1>x@1rw4WG(2v9KH>3jnDev9!Z`o93tjZ!M}U#uWG z+mL>;_;)&N;wuHMjDf69rxCt7RiTsDeOK;)lZc;PJFLL8>uVNGUa(lsn*^69jU%>( z{U>NBXKEAPPQE9aXYO8@O4n}4*A^W}*tsOGQ6)-rMjGshpm^%|z$rhX<=_R(k(h-m z40$h1D;=uGri3{->r(pCalUCJF!|;@l>2FROg#SVyGsH|TaDv!jyIFkG3awkrH7t*siPt=38{H{WcC zw>buUj_|`juCXeG+lE8TibioG{f-~*E#X}i7ewyaK+gB(K0nXCl-k7W=|6L$`1&YO{HdXN;;eK`~#QGQrv|;s7;aX?ix%Ez;?SELp)746dfkg z^FDL7F%O_g0%Z}G4lPn%fdn7$FGO)OQ;xB~SvB>T>XGsv1ejgTCHAE><~~#AmYBeKl1&McS^_K`Sft zZe@N7?A3E~4I1Wrwr17@q4XmNa7v5cKc9F0nL9wz|6h~>4~JT$tpan=a$HNiCwkym zg-bnD90~3T8~%V+4`T{}nYDUd+5zpwx*WyB7n>ZR_i>f;_jUQ+0ijl4n%P3TA@wXhcRunJ**v|)%ER{M zA&kkSL_A%N9^11~tY6aw&R5|T%-R2`A@@=6FUOK$f%!2n#wO|LP~YrW}|A>L_*^HLTqWQUtJuEa*!ITzbOzpC6B}GP)A;uQr~0 zP~)v^B{iY8rm~%Z>XH2*VtvkouxwZi$kyD+;nHT&yFa}E(Sds z{1hzxr<7U2RI6xOQ!w=9_D(p{0uF0h%v5LQJBUB(cMhmM)ms4Ai^C$>Rq{YNjHe=1Cg!D6 zv|&TK4=#_=_M|Tm4X^g^<}y5|!fXMz-qE)+Gea@wN(YSdKjijU*K(azyS}_ZQ~c#!w;{%t}h-jx-4CVv|Pbq{5P?% zJx}mw4bGL%y&4qtqG{Fkafi;akh34q7rHYPtC9VP<5_U4Ic`oMv<0+{9obnEoofW$ zzd8T|6SA-w+>7a9`}_)}#(0`h)R zY}eH}+Q~ZvF4wFN8=`TPG~F%WF2RTp$q#JN8atOcGDMSE_@6v7<4j{s39FyvuTE3! zZazsa2EMcQ#n}6>_iM)DVOeE$pB`keFh-HcpK`5vHT+4#vb6e@SwuVHAm=@}?)g(} z5K&YH>W#G3noi{8?S%<7BqQZSlmaQHBD^^rNqG+PDgx{+y30$>K?yfA`ZUjj?}pHf z0Z+9MKHKEd@wi&tRDVDp&B~mS8<^4N++}c#K_D(&pk6ZS3-Ms@hV!#gi8aN@66)Cw!4sFzVKBvgioq5T^%9l%@S$TNqh z(gW{h{-W-VDb|?OXByTK$^W#zg6@*3lTYb7n(Asv4ay0|9A8=nI2Yz?s%W3DYKbo1 z8;e~arpGuP2Rg5T|CG*DrdN@2vaoSzLj==29$6P9DB3&=Ww`re33wpCGL_hX7c&Z| z`au>CSEUHDnm8ja^}LK<&QeT+I!vWc%V(tLYXLYVE^sbalLo=QCL4sw$U)vTtUW?B zz|f9@)?q75s76q7+tsboU4_-QtFt!e>y<$z!c};Kc&eBGn^l+!*D|G0clr8iH;w%g zM-s=;tyYKxUcMYd= z&OO6(_4U4<+hU~U@av<+c^#-l2Y;Z>aZmE0i{%xh9N_{+ozCfWSBMHPSNk1i{$~EW z*CuquaR>`Qz$va{R-scPUzbWK(k;*vONd(0j&{gDyInD2$mBiP@ZkoKS1;;C#K&Rb zrSS*>g^GLpDGZf|f9(NX)qum$gpFi@WXE$$M_WlE(yF^_JwHb-|b|1jjBBIR?t3CLQ zHm7`c_gY-Srg;5fFKtUf*8-EGF6cX{tl~RGMgx?R?pV7Z>Rfy)7V4;hWnCL3gIp^Z z_JG}3=BK&*=o%!?!{lRZ_DuiyIf z+{H`wnUDy&AkKF9p6kTx2QIROo?a}k8`48ZebMtxk@H2bFyEN#K=;3wkV_VP+5AyNy6*O15IJPYl z(`|M9vIdQdX+B`yeGK7>pDTIbi zQjC@C;d1%kPOrq>@-yfzpjt?M9t1$u6t=SllaCy$EEiB8lc4I_w3xk2uwTzLQqFaQ zKuxx8xwIEUfV$*+@#J(sSCm xevKwljS~r4eN|_iPHKyiHB~_aG~`y^G(=DtR&Y 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

      >@JA=CZbB;zduq0A1LT6 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

      V&n!oUasM_sK{J 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 HJotYB4P*HP delta 7980 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 diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 30da385706..27100e829e 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -1144,7 +1144,7 @@ "avZ" = (/obj/machinery/light/small,/obj/structure/mopbucket,/obj/item/weapon/mop,/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) "awa" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/obj/item/weapon/soap/nanotrasen,/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) "awb" = (/obj/structure/table/standard,/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Port - East"; dir = 1},/turf/simulated/floor,/area/hallway/primary/port) -"awc" = (/obj/structure/table/standard,/obj/item/weapon/material/hatchet,/obj/item/weapon/material/minihoe,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) +"awc" = (/obj/machinery/light/small{dir = 1},/obj/item/clothing/head/cakehat,/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "awd" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port) "awe" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor,/area/security/prison) "awf" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/crew_quarters/fitness) @@ -1489,7 +1489,7 @@ "aCG" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/arrivals) "aCH" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor,/area/storage/primary) "aCI" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) -"aCJ" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) +"aCJ" = (/obj/item/weapon/material/hatchet,/obj/item/weapon/material/minihoe,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) "aCK" = (/turf/simulated/wall,/area/storage/primary) "aCL" = (/obj/machinery/door/airlock{name = "Unisex Showers"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aCM" = (/turf/simulated/wall/r_wall,/area/storage/primary) @@ -1520,7 +1520,7 @@ "aDl" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aDm" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aDn" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"; tag = "icon-intact-f (SOUTHEAST)"},/mob/living/simple_animal/mouse,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/arrivals) -"aDo" = (/obj/structure/table/standard,/obj/structure/window/basic{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) +"aDo" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aDp" = (/turf/simulated/wall,/area/crew_quarters/bar) "aDq" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/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"},/turf/simulated/floor/plating,/area/maintenance/bar) "aDr" = (/obj/item/weapon/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor,/area/storage/primary) @@ -1560,10 +1560,10 @@ "aDZ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/maintenance/auxsolarport) "aEa" = (/obj/machinery/vending/assist,/turf/simulated/floor,/area/storage/primary) "aEb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/storage/primary) -"aEc" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_y = -32},/turf/simulated/floor,/area/security/vacantoffice) -"aEd" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/turf/simulated/floor,/area/security/vacantoffice) +"aEc" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) +"aEd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aEe" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera/network/engineering{c_tag = "Solar Maintenance Fore Port"; dir = 1},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) -"aEf" = (/obj/structure/table/standard,/turf/simulated/floor,/area/security/vacantoffice) +"aEf" = (/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) "aEg" = (/obj/structure/table/standard,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "aEh" = (/obj/structure/table/standard,/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) "aEi" = (/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,/area/storage/primary) @@ -1748,7 +1748,7 @@ "aHF" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aHG" = (/obj/machinery/light/small{dir = 8},/obj/machinery/recharge_station,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aHH" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aHI" = (/obj/structure/table/standard,/turf/simulated/floor,/area/crew_quarters/locker) +"aHI" = (/obj/item/weapon/reagent_containers/glass/bucket,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics) "aHJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/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/machinery/camera/network/civilian_east{c_tag = "Dormitories South"; dir = 4},/turf/simulated/floor{icon_state = "neutral"; dir = 8},/area/crew_quarters/sleep) "aHK" = (/obj/structure/disposalpipe/segment{dir = 4},/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"},/turf/simulated/floor/plating,/area/maintenance/bar) "aHL" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/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/plating,/area/maintenance/bar) @@ -1802,7 +1802,7 @@ "aIH" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/hallway/secondary/entry/starboard) "aII" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east) "aIJ" = (/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/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/hallway/secondary/entry/starboard) -"aIK" = (/obj/structure/table/standard,/obj/item/clothing/head/soft/grey{pixel_x = -2; pixel_y = 3},/turf/simulated/floor,/area/crew_quarters/locker) +"aIK" = (/obj/structure/window/basic{dir = 4},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/security/vacantoffice) "aIL" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor,/area/storage/primary) "aIM" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/storage/primary) "aIN" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/library) @@ -1810,7 +1810,7 @@ "aIP" = (/obj/effect/landmark/start{name = "Assistant"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor,/area/storage/primary) "aIQ" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/security/nuke_storage) "aIR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/meter,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/library) -"aIS" = (/obj/structure/table/standard,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/tape_roll,/turf/simulated/floor,/area/crew_quarters/locker) +"aIS" = (/obj/machinery/newscaster{pixel_y = -32},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/security/vacantoffice) "aIT" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/gateway) "aIU" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/gateway) "aIV" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/gateway) @@ -1885,7 +1885,7 @@ "aKm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/storage/primary) "aKn" = (/turf/simulated/floor,/area/storage/primary) "aKo" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/storage/primary) -"aKp" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) +"aKp" = (/obj/item/weapon/folder/yellow,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/security/vacantoffice) "aKq" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor,/area/storage/primary) "aKr" = (/turf/simulated/floor{icon_state = "delivery"},/area/storage/primary) "aKs" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "Tool Storage"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "bot"},/area/storage/primary) @@ -1912,7 +1912,7 @@ "aKN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/hallway/primary/central_one) "aKO" = (/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/hallway/primary/central_one) "aKP" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/window/brigdoor{dir = 1; name = "Security Checkpoint"; req_access = list(63)},/turf/simulated/floor{icon_state = "delivery"},/area/hallway/secondary/entry/starboard) -"aKQ" = (/obj/structure/table/standard,/obj/structure/window/basic{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) +"aKQ" = (/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/security/vacantoffice) "aKR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/primary/central_one) "aKS" = (/obj/machinery/vending/cola,/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/central_two) "aKT" = (/obj/structure/disposalpipe/segment,/obj/machinery/button/crematorium{pixel_x = 25},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) @@ -1944,7 +1944,7 @@ "aLt" = (/obj/structure/table/woodentable,/obj/item/weapon/nullrod,/obj/item/device/eftpos{eftpos_name = "Chapel EFTPOS scanner"},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "aLu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/hallway/secondary/exit) "aLv" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/carpet,/area/crew_quarters/bar) -"aLw" = (/obj/structure/table/standard,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"aLw" = (/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/locker) "aLx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/chapel/main) "aLy" = (/turf/simulated/shuttle/wall{icon_state = "swall_s5"; dir = 2},/area/shuttle/arrival/station) "aLz" = (/turf/simulated/shuttle/wall{icon_state = "swall13"; dir = 2},/area/shuttle/arrival/station) @@ -2028,9 +2028,9 @@ "aMZ" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aNa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "aNb" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) -"aNc" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/enzyme{layer = 5},/obj/item/weapon/packageWrap,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aNc" = (/obj/item/clothing/head/soft/grey{pixel_x = -2; pixel_y = 3},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/locker) "aNd" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/bar) -"aNe" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aNe" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/tape_roll,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/locker) "aNf" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/chapel/main) "aNg" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/shuttle/arrival/station) "aNh" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry/port) @@ -2067,7 +2067,7 @@ "aNM" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hallway/primary/central_one) "aNN" = (/obj/machinery/light{dir = 1},/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/hallway/primary/central_one) "aNO" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/hallway/primary/central_one) -"aNP" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aNP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/security/vacantoffice) "aNQ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/hallway/primary/central_one) "aNR" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/hallway/primary/central_one) "aNS" = (/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/hallway/primary/central_one) @@ -2075,7 +2075,7 @@ "aNU" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/turf/simulated/floor{dir = 1; icon_state = "bluecorner"},/area/hallway/primary/central_one) "aNV" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "L1"},/area/hallway/primary/central_one) "aNW" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{icon_state = "L3"},/area/hallway/primary/central_one) -"aNX" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor,/area/crew_quarters/locker) +"aNX" = (/obj/structure/window/basic{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/security/vacantoffice) "aNY" = (/turf/simulated/floor{icon_state = "L7"},/area/hallway/primary/central_one) "aNZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "L9"},/area/hallway/primary/central_one) "aOa" = (/turf/simulated/floor{icon_state = "L11"},/area/hallway/primary/central_one) @@ -2193,7 +2193,7 @@ "aQi" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "aQj" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "aQk" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) -"aQl" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/crew_quarters/locker) +"aQl" = (/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aQm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "hydrofloor"},/area/hydroponics) "aQn" = (/turf/simulated/floor,/area/hydroponics) "aQo" = (/obj/structure/disposalpipe/segment,/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "green"; dir = 4},/area/hydroponics) @@ -2333,7 +2333,7 @@ "aSS" = (/turf/simulated/floor/wood,/area/crew_quarters/bar) "aST" = (/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aSU" = (/obj/machinery/camera/network/exodus{c_tag = "Arrivals Southwest"},/turf/simulated/floor,/area/hallway/secondary/entry/port) -"aSV" = (/obj/structure/table/reinforced,/obj/machinery/light/small{dir = 1},/obj/item/clothing/head/cakehat,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) +"aSV" = (/obj/item/weapon/reagent_containers/food/condiment/enzyme{layer = 5},/obj/item/weapon/packageWrap,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aSW" = (/obj/machinery/disposal,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aSX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) "aSY" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) @@ -2425,7 +2425,7 @@ "aUG" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aUH" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aUI" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aUJ" = (/obj/structure/table/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) +"aUJ" = (/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aUK" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aUL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/kitchen) "aUM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) @@ -2437,7 +2437,7 @@ "aUS" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/hallway/secondary/exit) "aUT" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aUU" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) -"aUV" = (/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) +"aUV" = (/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aUW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/bed/chair/wood/wings,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aUX" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor{dir = 1; icon_state = "green"},/area/hydroponics/garden) "aUY" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor{dir = 5; icon_state = "green"},/area/hydroponics/garden) @@ -2483,7 +2483,7 @@ "aVM" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor,/area/storage/tools) "aVN" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/storage/tools) "aVO" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor,/area/storage/tools) -"aVP" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/chef_recipes,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"aVP" = (/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aVQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_one) "aVR" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/bridge) "aVS" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/bar) @@ -2507,7 +2507,7 @@ "aWk" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/maintenance/locker) "aWl" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/wood,/area/library) "aWm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aWn" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) +"aWn" = (/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/locker) "aWo" = (/obj/machinery/door/airlock{name = "Port Emergency Storage"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/hallway/primary/port) "aWp" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aWq" = (/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{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) @@ -2518,7 +2518,7 @@ "aWv" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aWw" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Auxiliary Tool Storage"; req_access = list(12)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hallway/primary/port) "aWx" = (/obj/item/device/radio/intercom{pixel_x = 28},/obj/machinery/libraryscanner,/turf/simulated/floor/wood,/area/library) -"aWy" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) +"aWy" = (/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/locker) "aWz" = (/obj/effect/landmark/start{name = "Librarian"},/obj/structure/bed/chair/office/dark,/turf/simulated/floor/wood,/area/library) "aWA" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hydroponics/garden) "aWB" = (/turf/simulated/floor{icon_state = "green"; dir = 4},/area/hydroponics/garden) @@ -2554,9 +2554,9 @@ "aXf" = (/obj/effect/decal/cleanable/generic,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/locker) "aXg" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/closet/wardrobe/white,/turf/simulated/floor,/area/crew_quarters/locker) "aXh" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) -"aXi" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aXi" = (/obj/item/weapon/book/manual/chef_recipes,/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aXj" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aXk" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"aXk" = (/obj/machinery/chemical_dispenser/bar_soft/full,/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aXl" = (/obj/machinery/door/morgue{dir = 2; name = "Private Study"; req_access = list(37)},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/library) "aXm" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor,/area/hallway/secondary/entry/aft) "aXn" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/camera/network/civilian_east{c_tag = "Chapel South"; dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) @@ -2568,7 +2568,7 @@ "aXt" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor,/area/storage/tools) "aXu" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) "aXv" = (/turf/simulated/floor,/area/storage/tools) -"aXw" = (/obj/structure/table/standard,/obj/item/ashtray/plastic{pixel_x = 4; pixel_y = 6},/turf/simulated/floor,/area/security/vacantoffice) +"aXw" = (/obj/item/weapon/material/kitchen/rollingpin,/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aXx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_one) "aXy" = (/turf/simulated/wall,/area/bridge) "aXz" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1331; id_tag = "nuke_shuttle_dock_pump"},/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "nuke_shuttle_dock_sensor"; pixel_x = 0; pixel_y = -25},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/hallway/secondary/entry/port) @@ -2586,15 +2586,15 @@ "aXL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/primary/central_two) "aXM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/hallway/primary/central_two) "aXN" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access = list(28)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"aXO" = (/obj/structure/table/standard,/obj/item/weapon/material/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"aXO" = (/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "aXP" = (/obj/structure/disposalpipe/segment,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/woodentable,/obj/item/weapon/deck{pixel_y = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aXR" = (/obj/item/weapon/stool/padded,/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) "aXS" = (/obj/structure/table/woodentable,/obj/item/device/camera,/turf/simulated/floor/wood,/area/crew_quarters/bar) -"aXT" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) +"aXT" = (/obj/structure/window/basic{dir = 4},/obj/item/weapon/folder/blue{pixel_x = 5},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/security/vacantoffice) "aXU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) "aXV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"aXW" = (/obj/structure/table/standard,/obj/structure/window/basic{dir = 4},/obj/item/weapon/folder/blue{pixel_x = 5},/turf/simulated/floor,/area/security/vacantoffice) +"aXW" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) "aXX" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access = list(28)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/hydroponics/garden) "aXY" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/table/standard,/obj/item/weapon/stamp,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/item/weapon/pen,/turf/simulated/floor,/area/security/vacantoffice) "aXZ" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) @@ -2602,7 +2602,7 @@ "aYb" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "aYc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hydroponics/garden) "aYd" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) -"aYe" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) +"aYe" = (/obj/item/weapon/material/hatchet,/obj/item/weapon/material/minihoe,/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) "aYf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/stool/padded,/turf/simulated/floor,/area/crew_quarters/sleep) "aYg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/hydroponics/garden) "aYh" = (/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hydroponics/garden) @@ -2634,7 +2634,7 @@ "aYH" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/simulated/floor,/area/security/prison) "aYI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/security/vacantoffice) "aYJ" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/machinery/microwave,/turf/simulated/floor,/area/security/prison) -"aYK" = (/obj/structure/table/reinforced,/obj/item/weapon/material/hatchet,/obj/item/weapon/material/minihoe,/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) +"aYK" = (/obj/item/weapon/reagent_containers/food/snacks/pie,/obj/structure/table/marble,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) "aYL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/security/vacantoffice) "aYM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/bridge) "aYN" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets{pixel_x = -3; pixel_y = -3},/turf/simulated/floor,/area/security/prison) @@ -2773,13 +2773,13 @@ "bbq" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor,/area/hallway/primary/starboard) "bbr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bbs" = (/obj/structure/bed/chair/comfy/black{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/library) -"bbt" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/snacks/pie,/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/bar) +"bbt" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/medbay{c_tag = "Medbay Lounge"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay4) "bbu" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bbv" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bbw" = (/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bbx" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/civilian_west{c_tag = "Tool Storage - Primary"},/turf/simulated/floor,/area/storage/primary) "bby" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hydroponics/garden) -"bbz" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "grimy"},/area/hydroponics/garden) +"bbz" = (/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/patient_wing) "bbA" = (/obj/structure/table/standard,/obj/item/weapon/material/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/item/clothing/head/greenbandana,/turf/simulated/floor,/area/security/prison) "bbB" = (/turf/simulated/floor{icon_state = "green"; dir = 8},/area/hydroponics/garden) "bbC" = (/obj/structure/flora/ausbushes/fernybush,/turf/simulated/floor/grass,/area/hydroponics/garden) @@ -3129,7 +3129,7 @@ "bii" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bij" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "bik" = (/obj/machinery/conveyor_switch/oneway{id = "packageSort1"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/office) -"bil" = (/obj/structure/table/standard,/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/medbay{c_tag = "Medbay Lounge"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay4) +"bil" = (/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bim" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/hallway/primary/central_one) "bin" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "chapel"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) "bio" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/item/device/eftpos{eftpos_name = "Bridge EFTPOS scanner"},/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/bridge/meeting_room) @@ -3288,7 +3288,7 @@ "bll" = (/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Starboard - Central East"; dir = 1},/turf/simulated/floor,/area/hallway/primary/starboard) "blm" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/embedded_controller/radio/docking_port_multi{child_names_txt = "Airlock One;Airlock Two"; child_tags_txt = "escape_dock_north_airlock;escape_dock_south_airlock"; frequency = 1380; id_tag = "escape_dock"; pixel_x = 0; pixel_y = -25; req_one_access = list(13)},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/hallway/secondary/exit) "bln" = (/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/quartermaster/office) -"blo" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) +"blo" = (/obj/item/weapon/clipboard,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = 0; pixel_y = 0},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/qm) "blp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/primary/central_one) "blq" = (/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/hallway/primary/central_one) "blr" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "specops_dock_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13); tag_airpump = "specops_dock_pump"; tag_chamber_sensor = "specops_dock_sensor"; tag_exterior_door = "specops_dock_outer"; tag_interior_door = "specops_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "specops_dock_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "specops_dock_pump"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) @@ -3301,7 +3301,7 @@ "bly" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/bridge/meeting_room) "blz" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "blA" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) -"blB" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/patient_wing) +"blB" = (/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/qm) "blC" = (/obj/structure/table/standard,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/storage/tech) "blD" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "blE" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft) @@ -3340,7 +3340,7 @@ "bml" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmm" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bmn" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) -"bmo" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/device/multitool,/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Office"; dir = 4},/turf/simulated/floor,/area/quartermaster/office) +"bmo" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/device/megaphone,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/qm) "bmp" = (/obj/item/weapon/screwdriver,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmq" = (/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) @@ -3355,7 +3355,7 @@ "bmA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/decal/cleanable/blood/oil/streak{amount = 0},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker) "bmB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera/network/civilian_west{c_tag = "Locker Room Toilets"; dir = 8},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bmC" = (/obj/machinery/camera/network/mining{c_tag = "Medbay Lobby Starboard"},/obj/item/weapon/stool/padded,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) -"bmD" = (/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) +"bmD" = (/obj/machinery/recharger{pixel_y = 0},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bmE" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/quartermaster/office) "bmF" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "warningcorner"; dir = 1},/area/quartermaster/office) "bmG" = (/turf/simulated/wall/r_wall,/area/maintenance/substation/command) @@ -3374,7 +3374,7 @@ "bmT" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/dropper,/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bmU" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/light/small{dir = 1},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc/super/equipment{dir = 1; name = "north bump"; pixel_y = 24},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "bmV" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access = list(6)},/turf/simulated/floor,/area/hallway/primary/starboard) -"bmW" = (/obj/structure/table/standard,/obj/item/clothing/glasses/welding,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) +"bmW" = (/obj/item/weapon/reagent_containers/food/drinks/britcup,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bmX" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_one_access = list(5,12,47)},/turf/simulated/floor/plating,/area/hallway/primary/starboard) "bmY" = (/obj/structure/sign/chemistry,/turf/simulated/wall/r_wall,/area/medical/chemistry) "bmZ" = (/obj/structure/reagent_dispensers/water_cooler,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/turf/simulated/floor{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/reception) @@ -3440,7 +3440,7 @@ "boh" = (/obj/machinery/chemical_dispenser/full,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "boi" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 30},/obj/machinery/chem_master,/obj/machinery/camera/network/medbay{c_tag = "Medbay - Chemistry"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "boj" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/table/reinforced,/obj/machinery/button/remote/blast_door{id = "chemcounter"; name = "Pharmacy Counter Lockdown Control"; pixel_y = 25},/obj/machinery/reagentgrinder,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) -"bok" = (/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) +"bok" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/janitor) "bol" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/item/weapon/stool/padded,/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "bom" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/substation/command) "bon" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal{dir = 4},/turf/simulated/floor/plating,/area/maintenance/substation/command) @@ -3499,7 +3499,7 @@ "bpo" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/folder/white,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/window/eastright{base_state = "left"; dir = 2; icon_state = "left"; name = "Robotics Desk"; req_access = list(29)},/turf/simulated/floor/plating,/area/hallway/primary/starboard) "bpp" = (/turf/simulated/wall,/area/assembly/robotics) "bpq" = (/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"bpr" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access = list(7)},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/hallway/primary/starboard) +"bpr" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/janitor) "bps" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "toxin_test_airlock"; name = "exterior access button"; pixel_x = -20; pixel_y = -20; req_access = newlist(); req_one_access = list(7,13)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating/airless,/area/space) "bpt" = (/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/assembly/robotics) "bpu" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) @@ -3768,20 +3768,20 @@ "bux" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(7,12)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_shuttle) "buy" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/assembly/chargebay) "buz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/assembly/robotics) -"buA" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = 0; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/qm) +"buA" = (/obj/item/weapon/pen,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/device/megaphone,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "buB" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/item/weapon/storage/box/matches,/obj/item/clothing/mask/smokable/cigarette/cigar,/obj/item/weapon/reagent_containers/food/drinks/flask{pixel_x = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/captain) "buC" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bot"},/area/assembly/robotics) "buD" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "bot"},/area/assembly/robotics) "buE" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/hologram/holopad,/turf/simulated/floor{dir = 8; icon_state = "warnwhite"},/area/assembly/robotics) "buF" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"buG" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/turf/simulated/floor,/area/quartermaster/qm) +"buG" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/yellow,/obj/item/device/eftpos{eftpos_name = "Cargo Bay EFTPOS scanner"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/office) "buH" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "warnwhite"},/area/rnd/research) "buI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "buJ" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warnwhite"},/area/rnd/research) "buK" = (/obj/machinery/computer/rdconsole/core,/turf/simulated/floor,/area/rnd/lab) "buL" = (/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor,/area/rnd/lab) "buM" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor,/area/rnd/lab) -"buN" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/device/megaphone,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/quartermaster/qm) +"buN" = (/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/device/multitool,/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Office"; dir = 4},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/office) "buO" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/miningdock) "buP" = (/turf/simulated/shuttle/wall{icon_state = "swall_s6"; dir = 2},/area/shuttle/research/station) "buQ" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/research/station) @@ -3875,14 +3875,14 @@ "bwA" = (/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/rnd/lab) "bwB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/rnd/lab) "bwC" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{dir = 4; icon_state = "warnwhitecorner"},/area/rnd/lab) -"bwD" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) +"bwD" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/window/westleft{name = "Cargo Desk"; req_access = list(50)},/obj/structure/noticeboard{pixel_y = 27},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/office) "bwE" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/emergency) "bwF" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/storage/emergency) "bwG" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/shuttle/research/station) "bwH" = (/obj/structure/closet/crate,/turf/simulated/shuttle/floor,/area/shuttle/research/station) "bwI" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable/green,/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/obj/structure/window/reinforced/polarized{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/heads/hop) "bwJ" = (/turf/simulated/shuttle/floor,/area/shuttle/research/station) -"bwK" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/britcup,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) +"bwK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/noticeboard{pixel_y = 27},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "hop_office_desk"; name = "HoP Office Privacy Shutters"; opacity = 0},/obj/machinery/door/window/northleft{dir = 8; icon_state = "left"; name = "Reception Window"},/obj/machinery/door/window/brigdoor{base_state = "rightsecure"; dir = 4; icon_state = "rightsecure"; name = "Head of Personnel's Desk"; req_access = list(57)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bwL" = (/turf/space,/area/shuttle/administration/station) "bwM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) "bwN" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) @@ -3905,7 +3905,7 @@ "bxe" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "loadingarea"},/area/hallway/primary/central_three) "bxf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{icon_state = "delivery"},/area/hallway/primary/central_three) "bxg" = (/obj/machinery/door/firedoor,/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "scanhideside"; name = "Diagnostics Room Privacy Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/medbay4) -"bxh" = (/obj/structure/table/standard,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor,/area/janitor) +"bxh" = (/obj/machinery/newscaster{pixel_x = -27; pixel_y = 1},/obj/item/weapon/tape_roll,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/office) "bxi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) "bxj" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) "bxk" = (/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) @@ -3921,7 +3921,7 @@ "bxu" = (/obj/machinery/cryopod/robot/right,/turf/simulated/floor,/area/assembly/chargebay) "bxv" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/disposal) "bxw" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/central_two) -"bxx" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor,/area/janitor) +"bxx" = (/obj/machinery/photocopier/faxmachine{department = "Head of Personnel's Office"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bxy" = (/obj/structure/closet/secure_closet/medical1,/turf/simulated/floor{dir = 1; icon_state = "whiteyellow"},/area/medical/chemistry) "bxz" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access = list(31)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/quartermaster/storage) "bxA" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) @@ -4004,7 +4004,7 @@ "byZ" = (/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay3) "bza" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/alarm{pixel_y = 25},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/medical/medbay3) "bzb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/medbay2) -"bzc" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/window/westleft{name = "Cargo Desk"; req_access = list(50)},/obj/structure/noticeboard{pixel_y = 27},/turf/simulated/floor,/area/quartermaster/office) +"bzc" = (/obj/machinery/door/window/eastright{dir = 1; name = "Emergency Kit"; req_access = list(5)},/obj/machinery/door/firedoor,/obj/item/weapon/storage/toolbox/emergency,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag,/obj/item/device/radio{frequency = 1487; name = "Medbay Emergency Radio Link"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "whiteyellow"},/area/medical/sleeper) "bzd" = (/turf/simulated/floor{dir = 1; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay2) "bze" = (/obj/machinery/door/firedoor,/obj/structure/sign/examroom{pixel_y = 32},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bzf" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) @@ -4019,15 +4019,15 @@ "bzo" = (/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 2; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/patient_wing) "bzp" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) "bzq" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{tag = "icon-whitebluecorner (WEST)"; icon_state = "whitebluecorner"; dir = 8},/area/medical/patient_wing) -"bzr" = (/obj/structure/table/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/noticeboard{pixel_y = 27},/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "hop_office_desk"; name = "HoP Office Privacy Shutters"; opacity = 0},/obj/machinery/door/window/northleft{dir = 8; icon_state = "left"; name = "Reception Window"},/obj/machinery/door/window/brigdoor{base_state = "rightsecure"; dir = 4; icon_state = "rightsecure"; name = "Head of Personnel's Desk"; req_access = list(57)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/crew_quarters/heads/hop) +"bzr" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/machinery/camera/network/medbay{c_tag = "Medbay Cryogenics"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/cryo) "bzs" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/assembly/chargebay) "bzt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor,/area/assembly/chargebay) "bzu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/assembly/chargebay) "bzv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/assembly/chargebay) "bzw" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/turf/simulated/floor,/area/assembly/chargebay) "bzx" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 5; pixel_y = 5},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/random/firstaid,/turf/simulated/floor{dir = 8; icon_state = "whiteyellowcorner"},/area/medical/chemistry) -"bzy" = (/obj/structure/table/standard,/obj/item/weapon/pen,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/device/megaphone,/turf/simulated/floor,/area/crew_quarters/heads/hop) -"bzz" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/yellow,/obj/item/device/eftpos{eftpos_name = "Cargo Bay EFTPOS scanner"},/turf/simulated/floor,/area/quartermaster/office) +"bzy" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/belt/utility,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/quartermaster/office) +"bzz" = (/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/obj/item/device/eftpos{eftpos_name = "HoP EFTPOS scanner"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/crew_quarters/heads/hop) "bzA" = (/turf/simulated/wall,/area/rnd/research) "bzB" = (/obj/machinery/light{dir = 8},/obj/machinery/computer/guestpass{pixel_x = -28},/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/rnd/research) "bzC" = (/obj/effect/landmark{name = "lightsout"},/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/rnd/research) @@ -4312,7 +4312,7 @@ "bEV" = (/obj/effect/landmark/start{name = "Cyborg"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_cyborg_station) "bEW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_cyborg_station) "bEX" = (/obj/effect/landmark/start{name = "Cyborg"},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{icon_state = "vault"; dir = 1},/area/turret_protected/ai_cyborg_station) -"bEY" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{dir = 1; name = "Emergency Kit"; req_access = list(5)},/obj/machinery/door/firedoor,/obj/item/weapon/storage/toolbox/emergency,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/bodybag/cryobag,/obj/item/device/radio{frequency = 1487; name = "Medbay Emergency Radio Link"},/turf/simulated/floor{dir = 1; icon_state = "whiteyellow"},/area/medical/sleeper) +"bEY" = (/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) "bEZ" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) "bFa" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/accessory/stethoscope,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/machinery/camera/network/medbay{c_tag = "Medbay Equipment Storage"; dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/medbay3) "bFb" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) @@ -4588,7 +4588,7 @@ "bKl" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/research_shuttle) "bKm" = (/obj/structure/closet/crate,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/device/assembly/prox_sensor,/obj/item/device/flashlight,/obj/item/weapon/storage/backpack,/turf/simulated/floor/plating,/area/maintenance/research_shuttle) "bKn" = (/obj/structure/table/rack,/obj/item/weapon/extinguisher,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/mask/gas,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/research_shuttle) -"bKo" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_x = -27; pixel_y = 1},/obj/item/weapon/tape_roll,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/simulated/floor,/area/quartermaster/office) +"bKo" = (/obj/item/clothing/glasses/welding,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) "bKp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/rnd/test_area) "bKq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/rnd/test_area) "bKr" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless,/area/rnd/test_area) @@ -4659,7 +4659,7 @@ "bLE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/storage) "bLF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bLG" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) -"bLH" = (/obj/structure/table/standard,/obj/machinery/photocopier/faxmachine{department = "Head of Personnel's Office"},/turf/simulated/floor,/area/crew_quarters/heads/hop) +"bLH" = (/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) "bLI" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor{icon_state = "warningcorner"; dir = 8},/area/hallway/primary/central_three) "bLJ" = (/obj/structure/closet/secure_closet/RD,/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bLK" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) @@ -4712,7 +4712,7 @@ "bMF" = (/obj/structure/table/rack,/obj/item/weapon/rig/hazmat/equipped,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/crew_quarters/heads/hor) "bMG" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bMH" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/rnd/research) -"bMI" = (/obj/structure/noticeboard{pixel_y = 28},/obj/structure/table/woodentable,/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) +"bMI" = (/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) "bMJ" = (/obj/machinery/light{dir = 1},/obj/structure/bookcase/manuals/medical,/obj/item/weapon/book/manual/stasis,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bMK" = (/turf/simulated/wall,/area/crew_quarters/medbreak) "bML" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/genetics) @@ -4748,14 +4748,14 @@ "bNp" = (/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/quartermaster/miningdock) "bNq" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/hallway/primary/central_three) "bNr" = (/obj/structure/closet/secure_closet/quartermaster,/turf/simulated/floor,/area/quartermaster/qm) -"bNs" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/machinery/camera/network/medbay{c_tag = "Medbay Cryogenics"},/turf/simulated/floor{dir = 5; icon_state = "whitered"},/area/medical/cryo) +"bNs" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access = list(7)},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor/plating,/area/hallway/primary/starboard) "bNt" = (/obj/structure/table,/turf/simulated/floor/plating,/area/medical/genetics) "bNu" = (/obj/structure/closet/crate,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/cargo) "bNv" = (/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/maintenance/cargo) "bNw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/cargo) "bNx" = (/turf/simulated/wall,/area/maintenance/cargo) "bNy" = (/turf/simulated/wall,/area/storage/tech) -"bNz" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/belt/utility,/turf/simulated/floor,/area/quartermaster/office) +"bNz" = (/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bNA" = (/obj/machinery/light/small{dir = 1},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plating,/area/storage/tech) "bNB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor,/area/hallway/primary/central_three) "bNC" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/turf/simulated/floor/plating,/area/storage/tech) @@ -4805,7 +4805,7 @@ "bOu" = (/obj/item/device/radio/intercom{pixel_y = 25},/turf/simulated/floor/engine,/area/rnd/misc_lab) "bOv" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/engine,/area/rnd/misc_lab) "bOw" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/light{dir = 1},/turf/simulated/floor/engine,/area/rnd/misc_lab) -"bOx" = (/obj/structure/table/standard,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/obj/item/device/eftpos{eftpos_name = "HoP EFTPOS scanner"},/turf/simulated/floor,/area/crew_quarters/heads/hop) +"bOx" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/weapon/storage/box/cups{pixel_x = 0; pixel_y = 0},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "bOy" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/rnd/storage) "bOz" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/rnd/storage) "bOA" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/rnd/storage) @@ -4838,7 +4838,7 @@ "bPb" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/storage/tech) "bPc" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/tech) "bPd" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/storage/tech) -"bPe" = (/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/assembly/robotics) +"bPe" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{icon_state = "arrival"; dir = 4},/area/quartermaster/office) "bPf" = (/turf/simulated/floor/plating,/area/storage/tech) "bPg" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/tech) "bPh" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/plating,/area/storage/tech) @@ -4864,15 +4864,15 @@ "bPB" = (/mob/living/simple_animal/cat/fluff/Runtime,/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/heads/cmo) "bPC" = (/obj/machinery/door/airlock/external{name = "Toxins Test Chamber"},/turf/simulated/floor/plating/airless,/area/rnd/test_area) "bPD" = (/obj/machinery/light{dir = 1},/obj/machinery/camera/network/research{c_tag = "Research - Toxins Test Chamber North"; network = list("Research","Toxins Test Area")},/turf/simulated/floor/airless,/area/rnd/test_area) -"bPE" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/rnd/lab) +"bPE" = (/obj/item/stack/cable_coil,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/assembly/robotics) "bPF" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "mining_dock_airlock"; pixel_x = 25; pixel_y = -5; req_one_access = list(13,48); tag_airpump = "mining_dock_pump"; tag_chamber_sensor = "mining_dock_sensor"; tag_exterior_door = "mining_dock_outer"; tag_interior_door = "mining_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "mining_dock_sensor"; pixel_x = 25; pixel_y = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1; icon_state = "map"; tag = "icon-manifold-f (NORTH)"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/miningdock) "bPG" = (/obj/structure/table/standard,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/morgue) "bPH" = (/obj/structure/closet,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor,/area/quartermaster/qm) "bPI" = (/obj/structure/disposalpipe/segment,/obj/machinery/newscaster{pixel_x = 30},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2) "bPJ" = (/obj/structure/table/standard,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/gloves/latex,/turf/simulated/floor{icon_state = "white"},/area/rnd/lab) -"bPK" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"bPK" = (/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -28},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "bPL" = (/obj/structure/table/standard,/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = 7},/obj/item/weapon/paper_bin{pixel_y = -6},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = -9},/obj/item/weapon/pen/blue{pixel_x = 3; pixel_y = -5},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/morgue) -"bPM" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/weapon/storage/box/cups{pixel_x = 0; pixel_y = 0},/turf/simulated/floor{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) +"bPM" = (/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/medical/reception) "bPN" = (/obj/machinery/computer/med_data,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/medbreak) "bPO" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port) "bPP" = (/obj/machinery/sparker{id = "Xenobio"; pixel_x = -25},/turf/simulated/floor/engine,/area/rnd/misc_lab) @@ -5171,7 +5171,7 @@ "bVw" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "bVx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/rnd/research) "bVy" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"bVz" = (/obj/structure/table/standard,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) +"bVz" = (/obj/machinery/button/remote/blast_door{id = "medbayrecquar"; name = "Medbay Entrance Lockdown Shutters Control"; pixel_x = 6; pixel_y = 8; req_access = list(5)},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"; pixel_x = -5},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor,/area/medical/reception) "bVA" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "bot"},/area/rnd/research) "bVB" = (/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/wall/r_wall,/area/rnd/mixing) "bVC" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/engineering_guide{pixel_x = 3; pixel_y = 2},/obj/item/weapon/book/manual/atmospipes,/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet,/area/engineering/break_room) @@ -5193,7 +5193,7 @@ "bVS" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/cargo) "bVT" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/cargo) "bVU" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/cargo) -"bVV" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -28},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) +"bVV" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/computer/med_data/laptop,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "bVW" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/storage/tech) "bVX" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/yellow,/obj/item/device/t_scanner,/obj/item/clothing/glasses/meson,/obj/item/device/multitool,/turf/simulated/floor/plating,/area/storage/tech) "bVY" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/device/analyzer/plant_analyzer,/obj/item/device/healthanalyzer,/obj/item/device/analyzer,/obj/item/device/analyzer,/turf/simulated/floor/plating,/area/storage/tech) @@ -5232,7 +5232,7 @@ "bWF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whiteredcorner"},/area/medical/patient_wing) "bWG" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor{dir = 1; icon_state = "whitered_a"; tag = "icon-whitered_a (WEST)"},/area/medical/patient_wing) "bWH" = (/obj/structure/bed/chair/comfy/beige,/obj/effect/landmark/start{name = "Station Engineer"},/turf/simulated/floor/carpet,/area/engineering/break_room) -"bWI" = (/obj/structure/table/standard,/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"},/turf/simulated/floor,/area/medical/reception) +"bWI" = (/obj/structure/window/reinforced{dir = 1},/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "bWJ" = (/turf/simulated/floor/carpet,/area/engineering/break_room) "bWK" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor{dir = 1; icon_state = "whitered_b"; tag = "icon-whitered_b (WEST)"},/area/medical/patient_wing) "bWL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "whiteredcorner"},/area/medical/patient_wing) @@ -5263,7 +5263,7 @@ "bXk" = (/turf/simulated/floor/airless{dir = 5; icon_state = "warning"},/area/rnd/test_area) "bXl" = (/turf/simulated/floor/airless{icon_state = "warningcorner"; dir = 4},/area/rnd/test_area) "bXm" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape_pod5/station) -"bXn" = (/obj/structure/table/standard,/obj/machinery/button/remote/blast_door{id = "medbayrecquar"; name = "Medbay Entrance Lockdown Shutters Control"; pixel_x = 6; pixel_y = 8; req_access = list(5)},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Reception Emergency Phone"; pixel_x = -5},/turf/simulated/floor,/area/medical/reception) +"bXn" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/cups{pixel_x = 2; pixel_y = 5},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/reception) "bXo" = (/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/simulated/floor{icon_state = "yellowfull"; dir = 8},/area/crew_quarters/sleep/engi_wash) "bXp" = (/obj/machinery/atmospherics/pipe/manifold/visible,/obj/machinery/meter,/turf/simulated/floor{icon_state = "white"},/area/rnd/mixing) "bXq" = (/obj/machinery/atmospherics/unary/heat_exchanger{dir = 4},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/rnd/mixing) @@ -5461,14 +5461,14 @@ "cba" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cbb" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating/airless,/area/maintenance/atmos_control) "cbc" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/research_starboard) -"cbd" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) +"cbd" = (/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = -5},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "cbe" = (/obj/item/weapon/wrench,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cbf" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod{frequency = 1380; id_tag = "escape_pod_5"; pixel_x = 0; pixel_y = -25; tag_door = "escape_pod_5_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod5/station) "cbg" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_hatch"; locked = 1; name = "Escape Pod Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod5/station) "cbh" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/machinery/atmospherics/valve,/turf/simulated/floor/plating,/area/maintenance/research_starboard) "cbi" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_berth_hatch"; locked = 1; name = "Escape Pod"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/cargo) "cbj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/camera/network/medbay{c_tag = "Medbay Patient Hallway - Starboard"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) -"cbk" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) +"cbk" = (/obj/item/weapon/paper_bin{pixel_y = -10},/obj/item/weapon/folder/white{pixel_y = 0},/obj/item/weapon/pen,/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25; pixel_y = 16},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "cbl" = (/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "eng_eva_sensor"; pixel_x = 0; pixel_y = 25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "eng_eva_pump"},/turf/simulated/floor{dir = 9; icon_state = "floorgrimecaution"},/area/maintenance/atmos_control) "cbm" = (/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},/obj/machinery/camera/network/research{c_tag = "Research Division South"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/rnd/research) "cbn" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 5},/turf/simulated/floor/engine/vacuum,/area/rnd/mixing) @@ -5500,7 +5500,7 @@ "cbN" = (/turf/simulated/floor{icon_state = "white"},/area/medical/ward) "cbO" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) "cbP" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/medical/psych) -"cbQ" = (/obj/structure/table/standard,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/cups{pixel_x = 2; pixel_y = 5},/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/medical/reception) +"cbQ" = (/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/device/radio/intercom{broadcasting = 0; canhear_range = 5; freerange = 0; frequency = 1485; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = 3},/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) "cbR" = (/obj/structure/bed/roller,/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) "cbS" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) "cbT" = (/obj/structure/closet/crate{icon_state = "crateopen"; name = "Grenade Crate"; opened = 1},/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/turf/simulated/floor{icon_state = "dark"},/area/medical/biostorage) @@ -5577,7 +5577,7 @@ "cdm" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{autoclose = 0; name = "Diagnostics Room"; req_access = list(5)},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/medbay4) "cdn" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor{icon_state = "white_halfo"},/area/medical/medbay4) "cdo" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/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{icon_state = "white_halfp"},/area/medical/medbay4) -"cdp" = (/obj/structure/table/standard,/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = -5},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) +"cdp" = (/obj/item/weapon/cane,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cane{pixel_x = -6; pixel_y = 4},/obj/item/weapon/storage/box/rxglasses,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "cdq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/ward) "cdr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/ward) "cds" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/medical/ward) @@ -5594,7 +5594,7 @@ "cdD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_port) "cdE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/medical/virologyaccess) "cdF" = (/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/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/engineering/break_room) -"cdG" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_y = -10},/obj/item/weapon/folder/white{pixel_y = 0},/obj/item/weapon/pen,/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25; pixel_y = 16},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) +"cdG" = (/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"; pixel_y = -32},/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "cdH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/medical/virologyaccess) "cdI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_port) "cdJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_port) @@ -5628,14 +5628,12 @@ "cel" = (/obj/structure/closet/secure_closet/engineering_chief,/obj/item/weapon/tank/emergency_oxygen/engi,/turf/simulated/floor,/area/crew_quarters/heads/chief) "cem" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/carpet,/area/engineering/break_room) "cen" = (/obj/machinery/iv_drip,/turf/simulated/floor{icon_state = "white"},/area/medical/patient_wing) -"ceo" = (/obj/structure/table/standard,/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access = list(5)},/obj/item/device/radio/intercom{broadcasting = 0; canhear_range = 5; freerange = 0; frequency = 1485; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = 3},/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/medical/reception) -"cep" = (/obj/structure/table/standard,/obj/item/weapon/cane,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cane{pixel_x = -6; pixel_y = 4},/obj/item/weapon/storage/box/rxglasses,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) +"ceo" = (/obj/structure/table/plastic{name = "plastic table frame"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/robotics) "ceq" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/purple,/turf/simulated/floor{dir = 2; icon_state = "whitegreen"},/area/rnd/xenobiology) "cer" = (/obj/machinery/keycard_auth{pixel_x = -24; pixel_y = 0},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for engine core."; id = "EngineVent"; name = "Engine Ventillatory Control"; pixel_x = -24; pixel_y = 10; req_access = list(10)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/button/remote/airlock{desc = "A remote control-switch for the engine core airlock hatch bolts."; id = "engine_access_hatch"; name = "Engine Hatch Bolt Control"; pixel_x = -24; pixel_y = -10; req_access = list(10); specialfunctions = 4},/turf/simulated/floor,/area/crew_quarters/heads/chief) "ces" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/atmos_control) "cet" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/atmos_control) "ceu" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 2},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 4},/obj/structure/window/reinforced/polarized{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief) -"cev" = (/obj/structure/table/standard,/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"; pixel_y = -32},/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/exam_room) "cew" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{dir = 8; icon_state = "yellowcorner"},/area/engineering/foyer) "cex" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera/network/engineering{c_tag = "Engineering Break Room"; dir = 8},/turf/simulated/floor/carpet,/area/engineering/break_room) "cey" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{dir = 2; icon_state = "yellowcorner"},/area/engineering/foyer) @@ -7491,44 +7489,44 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaFraJXaFyaGKaFlaFMaFlaFMaFlaFMaFlaFMaFlaGMaGNaGOaDPaGYaGXaHaaGZaHbaHbaIBaLiaIHaIGaIJaLkaJZaJYaJGaKaaFCaCDaKmaKnaKoaCHaCDaKqaKraKsaKtaKuaaaaafaaaaKvaKwaKvaaaaafaaaaKuazOazPaCtaKyaKzaKAaKBazPaKCaKDayLaKEazTaARaKFaKGaHrazTaLmaKIaKJaKKaKLaJeaEDaKNaKOaLYaEEaKRaaaaaaaJlaKSaJKaMcaJlaJLaJnaJnaJnaKWaJnaJnaJnaBjaDpaMvaDpaDpaDpaDpaMwaDpaKZaLaaLbaMEaMVaMFaLfaLgaLhaLfaLfaLfaLfaLfaMXaLfaLfaLfaLfaLfaLfaLfaLfaJRaIgaLjaJWaLlaEFaKbaLoaIgaLpaKTaGFaLraLsaLtaJTbkuaJUaIoaJVaIoaKUaCiaLxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaLyaLzaDJaFkawiaFlaFlaFqaFlaFlaFnaFlawnaFraLCaLDaDPaLEaLFaLGaLHaLGaLGaLGaLGaLGaLIaLJaFCaFCaFCaFCaFCaFCaLLaLMaLNaLOaLOaLOaLOaLPaLQaLRaKuaLSaLTaLTaLUaLVaLWaLTaLTaLXaKuaNAaKuaKuaLZaMaaLZaJeaJeaMbaNGaJeaJeaJeaJeaMdaMeaBwaBQaMhaMiaJeaJeaJeaJeaMjaKNaMkaMkaMlaMmaMnaMoaJlaMpaLqaLnaJlaJlaJlaJlaJlaJlaJlaJlaBjaBjaMsaMtaMuaOiaOoaLvaMyaMfaKZaMAaMBaMCaMCaMDaLfaOpaOqaMGaMHaMIaMJaMKaMLaMMaMNaMHaMJaMIaMHaMOaLfaJRaIgaMPaMgaMRaMSaMqaMUaIgaOsaMWaOCaMYaMraNaaNbaGFaGGaOHaJVaIoaMxaAraNfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaLyaDJaDKaDJaDJaDLaDMaDJaDJaDKaLzaNgaBIaNhaLEaNiaMzaMzaNkaMzaNlaIAaNmaNnaLJaNoaNpaNqaNraNsaNtaNraNuaNraNraNraNvaNraNraNwaNxaNyaNzaNzaNBaOMaNCaNzaNzaNzaNzaNDaNEaNFaQcaNraNHaNIaNJaNKaNLaNMaNLaNNaNOaQdaNQaNQaNRaNSaNTaNSaNUaNVaNWaEGaNYaNZaOaaObaOcaMkaMkaMkaOdaOeaMTaMQaOhaQxaOjaOkaOlaOmaOnaJlaQAaQyaQEaOraOtaOtaOuaMZaOwaNdaKZaOyaOzaOAaOAaOBaLfaQJaODaOEaOEaOEaOEaOFaOGaQTaOIaOJaOKaOKaOLaRbaLfaJRaIgaONaOOaNjaOfaONaONaIgaORaOSaGFaOTaOUaOVaOWaGFaIoaIoaJVaIoaGGaGGaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOXaOYaOZaPaaPaaPaaPaaPbaOYaOXaaaaBIaPcaPdaPeaOvaOgaPhaPhaOxaIAaPjaNnaPkaPlaPmaPnaPoaPpaPqaPqaPraPsaPsaPsaPtaPuaPuaPvaPwaNIaPqaPqaPxaPyaPzaPAaPBaPBaPCaPBaPDaPyaPyaPyaPEaPFaPGaPHaMkaPIaPJaPJaPJaPJaPJaPJaPJaPJaPKaPJaPLaPMaPNaPOaPPaPQaPRaPSaPTaPJaPUaPJaPVaPWaPXaPWaPWaPWaPWaPWaPWaPYaPZaRsaQbaQbaQbaRraQbaQbaRxaQeaQfaQgaKZaQhaMCaQiaQjaQkaLfaCJaQmaQnaQnaQnaQnaQnaQoaQpaOPaQraQnaQnaQsaQtaLfaJRaIgaQuaONaONaQvaONaQwaIgaGFaGFaGFaGFaGFaGFaSoaGFaIoaIoaJVaIoaStaOQaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaafaBIawqaBIaQBaQCaGOaQDaSuaQFaQGaGOaQCaQHaQIaBIaSyaLEaPeaPfaQLaPhaPhaOxaIAaQMaNnaLJaQNaNpaQOaQPaNraNraQQaQRaQSaSEaNraQUaQVaQWaQVaQXaQYaQVaQVaQZaQVaQVaRaaSHaQVaRcaQVaRdaNraNraNraReaPFaPGaPHaMkaRfaMkaRgaRgaRgaRgaRgaRgaRgaRgaRhaRiaRgaRjaRgaRgaRkaRgaRgaRgaRgaRlaRmaRnaRoaRoaRoaRoaRoaRoaRoaRpaRqaRpaJlaImawOawOawOawOawOaItaRuaRvaRwaKZaKZaKZaKZaKZaSIaLfawcaQmaQnaRzaRAaRBaPgaRDaREaRFaQraRGaRHaRIaRJaLfaJRaIgaRKaRKaRLaRMaRNaRNaROaIgaRPaRQaRRaGGaRSaRTaRUaRVaRVaRWaRXaGGaRYaGGaRZaRZaRZaSaaSbaScaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaSUaGhaSdaOYaLDaDPaHxaHxaSfaLDaOYaLDaHyaHAaHzaLEaSkaPiaPiaNkaPiaNlaIAaSmaNnaSnaIAaLKaLKaSZaLKaLKaLKaLKaLKaLKaSpaSqaLKaLKaLKaLKaLKaLKaSraSsaSraLKaTPaLKaNraQPawbauoaSwaSxaNraReaUlaMbaMbaMkaSzaKOaSAaMnaMnaSBaSBaSBaSBaSCaJeasfasNarVarXarXavParXarXarVasNawFaJeaSJaSKaSKaSKaSKaSLaSLaSMaSNaRqaRpaJlaxpawLawLawLawLawLawLaSQaSRaSSaSTaUOaSVaSWaSXaSYaKZaKZaVeaTaaTbaTcaTdaTeaTeaTeaTfaTgaTfaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaTjaQzaTlaGGaIoaTmaTnaToaTpaTqaIoaTraQKaGGaTtaTuaRZaTvaTwaTxaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIazkaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaWkaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeazBaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUJaUKaULaUMaUNaWFaUPaUQayOaySaUTaTfaUUaUVayiaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDawdcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeawgaVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaxwaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaVLaVWaWmaWnaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaWyaxqaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaNXaHIaQlaWgaTUaTUaTUaYwaUeaRyaUfaSvaUeaUiaVGaXpaKfaXraXsaUmaXtaxwaURaXvaUjaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXjaTkaSSaXPaXQaSSaWhaXSaTkaSSaXTaOtaXUaXVaUQaXkaXiaXOaVPaYaaYbaYcaYdaYeaRCaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaWjaXhaToaXRaWdaZXaWLbaOaYmaWOaZcaVoaYvaUSbaBbanaYzaVzaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaEfaEfaYIaKpaKQaYLbaPaKxaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaHIaIKaISaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXTaOtaZqaXVaUQaNcaNeaNPaLwaYaaYpaZwaYdaYeaRCaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaQqayjaToaQaayjaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaXwaZkbaaaZvaXWbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaXTbbtaULaXVbbubbvbbwaUQaUQaYaaXZbbybbzaYKbbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaWjaXhaToaXRaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOXaOYaOZaPaaPaaPaaPaaPbaOYaOXaaaaBIaPcaPdaPeaOvaOgaPhaPhaOxaIAaPjaNnaPkaPlaPmaPnaPoaPpaPqaPqaPraPsaPsaPsaPtaPuaPuaPvaPwaNIaPqaPqaPxaPyaPzaPAaPBaPBaPCaPBaPDaPyaPyaPyaPEaPFaPGaPHaMkaPIaPJaPJaPJaPJaPJaPJaPJaPJaPKaPJaPLaPMaPNaPOaPPaPQaPRaPSaPTaPJaPUaPJaPVaPWaPXaPWaPWaPWaPWaPWaPWaPYaPZaRsaQbaQbaQbaRraQbaQbaRxaQeaQfaQgaKZaQhaMCaQiaQjaQkaLfaHIaQmaQnaQnaQnaQnaQnaQoaQpaOPaQraQnaQnaQsaQtaLfaJRaIgaQuaONaONaQvaONaQwaIgaGFaGFaGFaGFaGFaGFaSoaGFaIoaIoaJVaIoaStaOQaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaafaBIawqaBIaQBaQCaGOaQDaSuaQFaQGaGOaQCaQHaQIaBIaSyaLEaPeaPfaQLaPhaPhaOxaIAaQMaNnaLJaQNaNpaQOaQPaNraNraQQaQRaQSaSEaNraQUaQVaQWaQVaQXaQYaQVaQVaQZaQVaQVaRaaSHaQVaRcaQVaRdaNraNraNraReaPFaPGaPHaMkaRfaMkaRgaRgaRgaRgaRgaRgaRgaRgaRhaRiaRgaRjaRgaRgaRkaRgaRgaRgaRgaRlaRmaRnaRoaRoaRoaRoaRoaRoaRoaRpaRqaRpaJlaImawOawOawOawOawOaItaRuaRvaRwaKZaKZaKZaKZaKZaSIaLfaCJaQmaQnaRzaRAaRBaPgaRDaREaRFaQraRGaRHaRIaRJaLfaJRaIgaRKaRKaRLaRMaRNaRNaROaIgaRPaRQaRRaGGaRSaRTaRUaRVaRVaRWaRXaGGaRYaGGaRZaRZaRZaSaaSbaScaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaSUaGhaSdaOYaLDaDPaHxaHxaSfaLDaOYaLDaHyaHAaHzaLEaSkaPiaPiaNkaPiaNlaIAaSmaNnaSnaIAaLKaLKaSZaLKaLKaLKaLKaLKaLKaSpaSqaLKaLKaLKaLKaLKaLKaSraSsaSraLKaTPaLKaNraQPawbauoaSwaSxaNraReaUlaMbaMbaMkaSzaKOaSAaMnaMnaSBaSBaSBaSBaSCaJeasfasNarVarXarXavParXarXarVasNawFaJeaSJaSKaSKaSKaSKaSLaSLaSMaSNaRqaRpaJlaxpawLawLawLawLawLawLaSQaSRaSSaSTaUOawcaSWaSXaSYaKZaKZaVeaTaaTbaTcaTdaTeaTeaTeaTfaTgaTfaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaTjaQzaTlaGGaIoaTmaTnaToaTpaTqaIoaTraQKaGGaTtaTuaRZaTvaTwaTxaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVfaVraVkaVIazkaSgaSeaSiaShaSjaSiaTzaTyaTBaTAaTEaTCaTAaTFcozaTIaTJaTKaTLaTLaTLaTMaTLaTNaTOaIAaWkaTQaTRaTSaTTaTUaTVaTWaTXaTUaTYaTZaUaaUbaUcaUdaUeazBaUgaUhaUeaUiaLKaLKaWoaLKaLKaLKaLKaUkaWwaLKaUmaMbaUnaSzaKOaUoaaaaaaaaaaaaaaaaaaaaaaUpaUqaUraUsaUtaUvaUuaUxaUwaUzaUyaVUaUpaaaaaaaaaaaaaaaaaaaaaaUAaSNaRqaUBaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaEdaUKaULaUMaUNaWFaUPaUQayOaySaUTaTfaUUaEfayiaUXaUYaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWKaIgaIgaXlaIgaGGaVgaVhaViaViaViaVjaXnaGGaGGaGGaVlaVmaVnaVoaVpaVqaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDawdcmVaXzaXCaDPaVsaVsaVtaVsaVsaVsaVDaVsaVsaVtaVsaVsaYEaWYaVuaVvaKdaKdaKdaKdaKdaVwaVxaVyaXGaIAaTQaTQaVAaTSaVBaTUaTUaTUaTUaTUaTYaVCaTUaTUaTUaUdaUeawgaVEaVFaUeaUiaVGaVHaKeaKcaVKaUmaXIaVMaVNaVOaxwaVQaMkaSzaKOaUoaaaaaaaaaaaaaUpaUpaUpaUpaVRaSlaVTaXEaVVaSDaVXaXFaVZaSOaWbaUpaUpaUpaUpaaaaaaaaaaaaaUAaSNaRqaRpaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaVLaVWaWmaDoaQbaXNaWpaWqaWraWsaWtaWtaWuaWvaXXaWaaEcaxqaWAaWBaWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaYqaWGaONaWHaGGaWIaWJaToaToaToaTqaIoaYsaGGaWfaVoaLuaWQaVoaWRaWSaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWVaWWaWWaWWaWWaWWaWWaWWaWXaBIaBLcpSaWZaIAaXcaXbaXbaXbaYraXdaIAaIAaIAaIAaTQaXeaXfaTSaXgaTUaTUaWgaWnaLwaWyaWgaTUaTUaTUaYwaUeaRyaUfaSvaUeaUiaVGaXpaKfaXraXsaUmaXtaxwaURaXvaUjaXxaMkaSzaKOaMmaSCaMbaXyaUpaUpaVYaXAaYyaYAaXDaXDaXEaXFaYMaXEaXFaXDaXDaXHaYVaXJaXBaUpaUpaXyaJlaXLaXMaSNaRqaRpaJlaZgaSPaXjaTkaSSaXPaXQaSSaWhaXSaTkaSSaVPaOtaXUaXVaUQaXOaXkaXwaXiaYaaYbaYcaYdaEfaRCaYgaWBaYhaWDaYiaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaWxaGGaIoaWjaXhaToaXRaWdaZXaWLbaOaYmaWOaZcaVoaYvaUSbaBbanaYzaVzaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaYCaYDcpKaYFaWPaKQaKQaYIaNPaNXaYLbaPaKxaYOaYPaYQaYRaYSaTSaYTaTUaTUaWgaLwaNcaNeaWgaTUaTUaYWaUdaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYYaXvaYZaXvaXvaXxaMkaSzaKOaNSaNSaZaaZbaWNaUpaZdaYnaZfbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaZfaYoaZjaUpaWMaZbaZlaZmbbeaSNaRqaRpaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaVPaOtaZqaXVaUQaSVaUJaUVaQlaYaaYpaZwaYdaEfaRCaYgaWBaYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZJaQqayjaToaQaayjaIoaIoaXaaZiaVoaYuaVoaZNaZOaZPaZQaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaZSaZTaZUbjnaZWaSFaKQaZkbaaaZvaXTbadbaeaXYaYObagbahbaibajaTSbakbalbambbhbaobapbaqbarbarbarbasbataTSbaubavbawbaxaKgbajbnZaKhbajbkZaUmbaDbaEbaFbaGbaHbaIaMkbaJbaKaMkbaLbaMbbDbcybbPbbLbaRbaQbbQaUpaUpaUpaUpaUpbcDaUpaUpaUpbbRbaQbbdbbSbbWbeobcabbibbjbbkbblbbmbbnaJlaUDaSPbboaTkaSSaZAaZEbbraZKaXjaTkaSSaVPaYKaULaXVbbubbvbbwaUQaUQaYaaXZbbyaXWaYebbBaYgaWBbbCaWDbcuaZzaZLbbFbbFbbGbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbJaWjaXhaToaXRaXhaIobbKaGGbcBaVoaYuaVoaZNbbMbbNbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaXubcFbcZaXmbbUaSFbaabaabaabaabaabbVbaaaXoaYObbXbbYbaibbZbbZbbZbbZbdKbbZbcbaTUbccbcdbcebcebcfbcgaTSaXebchbcibcjaKibdQblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbcrbcsbctbeabcvbcwbcxbbgaUpbczbcAbeeaUpaUpaaaaaaaafaafbekaaaaaaaUpaUpbezbcGbczaUpbbgbcxbcHbcIbcJbcKbcLaRpaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSbcObcObcObcObeBbcQbcRbcSaUQaUQaUQbeMbcUaTeaZMbcWbcXaYgaWBaYhaWDbcYaZzaZZbdabdbbdcbddbdebddbddbddbddbddbdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdraVoaYubdsaZNaVobeNbbOaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaEfbabbaaaZvaDobbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZaEgbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaEfaEdbeUaEcaDobbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPaAWbffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdubdvaZUbdwbdxaSFaKQbabbaaaZvaIKbbVbaabdAaYObbpbdCbaibbZbdDbdEbdFbdGbbZaEgbdIbdJaTSbeRbdLbdMbdNaTSaXebdObdPbdPbeVbdPbdPbdPbdPbdRbdSbdSbdSbdTbdSbdUaMbbdVbdWbdXbdYbdYbdYbdYbdYbdYbdZbeWbdZbdYbebbebbebbebbebbecbebbebbebbedbedbfobedaUpaUpaUpaJiaJiaJibcKbcLaRpaJlbefbegaDmbehaSSbeibcMbejbfqbelbcObcObembenaZzaZzaZzbfwaSGaSGaSGaZzaZzaZzbeqberbesbetaWBaYhaYhbeuaZzbevbewbbqaZzbeybbsbeAaYtbfxbbEbeDbcmaONaGGaIobeFbeGbeHbeFbeIaIoaIoaGGbeJaVoaYuaVoaZNbeKbeLbbOaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObePbeQbfWaRtaKQaKpbeUaISaIKbbVbgNbgMaYObeXbeYbaibbZbbZbbZbeZbfabbZbfbbdIbfcaTSbeRbdLbdMbfdaTSaXebdObdPaAWbffbfgbfgbfhbdPbfibcVbfkbflbfmbfmbfmaMbaMkbcsbctbdYbfnbgUbfpbgWbfrbfsbftbfubdYbebbfvbgXbfvbhebhCbfvbdybebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibfKbfLbfMaJlaZzaZzaZzaZzbfNbfObfPbfQaZzaZzbfRaZzaZzaZzaZzbfSbfTbfUbfVbfVbfVbhJbfXaZzbfYbfZbgabgbbgcbgcbgcbgdaZzbevbewbdBaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbghbgibgjbgfbggaZzaRZbgkaVoaYuaVoaZNaZObglbgmaWTaZRaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaabgnbgobgpbgqaZUbgrbgrbgrbgrbgrbgrbgsbgtbgraYOaYOaYOaYOaYObhKaYOaYOaYObgvbgvbgwbbZbdDbgxbeZbgybbZbgzbgAbgzaTSbeRbdLbdMbfdaTSaXebdObdPbgBbgCbgDbfgbgDbdPbfibgEbgFbgGaFIaFGaFhaMbbgKbgLbctbhLbivbgObgPbexbexbgRbgSbgTbdYbebbmIbgVbhRbhNbfzbgYbhSbebbedbhabhbbhcbeCbhTbeEbhgbhhaJibhibhjaRpbhkbhlbhmbewbewbhnbewbhobewbewbewbewbhpbewbewbewbewbhqbewbewbewbewbewbewbhmbewbewbhrbhsbhsbhtbhsbhsbhubhvbewbhqbhwbhxbhpbewbhybewbewbewbhzbhAbhBbhUbewbhDbewbhEbewbewbhFbhGbhHaVoaYuaVobhIaHdbhXbhWbhMaHcaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaafbhPaYDbhQbitbiqbjubjqbjwbjvbjubjBbjGbjCbjObhYbhZbgwbbZbbZbbZbiabfabbZaTSaTSaTSaTSbeRbibbicbjQaTSbiebifbdPbigbihbiibgDbijbdPbfibikbgFbgGbgGbgGaEhaMbbimaSzbctbjVbiobipbfjbirbisbfBbiubjMbdYbebbiwbixbiybjYbiybgYbgebebbedbiAbiBbiCbgQbiEbgZbiGbiHaJibiIbiJbiKbiLbiMbiNbiObiObiPbiQbiRbiSbiSbiSbiTbiSbiSbiSbiSbiSbiUbiVbiVbiVbiWbiObiObiNbiObiObiXbiVbiVbiYbiSbiZbjabjbbiSbjcbiObiObiObiObiObiObiObiObiObiObiObiObiObjdbiTbjebiSbjfbjgbjhbjibjibjjbjkaZNaWRbjlaWTaWTaWUaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhOaZSaZTbjmbjnbjobgrbjpbjpbjZbjpbjpbjpbjrbajbajbajbajbaibbZbdDbjsbjtbgybbZbkZbkZbkZaTSaTSaTSaTSbkkaTSbjxbdObdPbjybjzbgDbfgbkxbdPbkAbfmbkHbgGbgGbgGbjDaMbbjEaSzbctbkKbkLbgObhdbjIbjJbhfbjLblybdYbjNbkMbjPbiybkNbiybgVbkPbjSbedbjTbjUbizbjWbjWbjWbjXbkVaJibkXbkabkbbkcbkdbkebbFbkfbkgbkhbkibkjbkYbklbkmbknbknbkobewbewbewbewbewbkpbkqbkrbewbksbktcsfbkvbewbkpbkwcLYbkybhFbewbewbkzbewbewbllbkBbewbkpbewbewbewbewbewbewbewbewbewbhqbewbewbhFbkCbkDbkEbkFbkGblmbkIbkJaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObQDblrblEbQLbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbloblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbupbmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbmDbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibCkbojbmYbmZbPMbopbnlbndbnebnlbmCbolbnhbnibnjbmPboKbnmbnnbPLbnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbPKbnBblObZtbpobZtblOblXblYbmbblObZnbprbZnblObnGbPJbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpScfibnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbokblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbjRboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObmWboqbPEbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObQDblrblEbQLbkObgrblTbkQbkRbkRbkSbkTbkUbmdbmlbmlbmAbmxbbZbbZbbZbeZbmBbbZbajbajbajbajblaaXeaXeblbblcbldbleblfblgblhblibljblkbdPbmEbfmbmFbgGblnbgGbPeblpblqaSzbctbdYbmHblsbltblublvblwblxbdYbdYbebblzblAbmUbmNblDblAbiDbebbedbedblFblGblHblIbiCblJblKaJiblLblMblNaJiblOblOblOblOblOblOaZzaZzblPblQbZNcdMblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbmVaZzaZzaZzaZzaZzaZzbmXaZzbewbewblVblWbiFblOblOblOblOblOblXblYblYblZblYbewblYblZbmablYbmbblObmcbmcbmcbnbaRZbmeaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdubdvbjmbjnbmfbgrbmgbjpbmhbmibjpbjpbjpbnsbmjbmkbmkbnwbbZbdDbmmbeZbmnbbZbupbmpbmqbmrbmsbmtbmtbmubmtbmtbmvbdPbmwbnNbfgbmybmzblfbnRbnPbnSbgGbgGbjHbMIbnUblqaSzbnVbmGbmGbmGbmGbmGbmGbmGbnWbmGaafbebbmIbmJbmKbmLbmKbmMbjKbebaafbedbmObnXbmQbmRbiCbiGbmSaJibcKaRqaRpaJibmTbohboibCkbojbmYbmZbOxbopbnlbndbnebnlbmCbolbnhbnibnjbmPboKbnmbnnbPLbnpbnqbnrboWbntbntbnubYfaVJblOblObpmblObZMbZMblObnzbNzbnBblObZtbpobZtblOblXblYbmbblObZnbNsbZnblObnGbPJbnIbnJbnKbnLbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaabnObpwbeQbnQbgrbpLbpBbpMbnTbpPbpNbjpbpScfibnYbnZbnwbbZbbZbbZbbZbbZbbZboabobbocbodboebdPbdPbdPbdPbdPbdPbdPbWqbdPbdPbdPbogbdPbfmbqcbnSbgGbgGbgGbEYblpblqaSzbqgbmGbombonbncbOIbvGbotbosbotaafbebboubovbowboxboybozbnfbebaafbedboBboCboDboEbiCbiGboFaJiboGboHaRpbXHboJbngboLboMbnkbPZboPboQboRboRboSboTboUboUboVbjRboXboYboZbpabpbbnnbPGbpdbpebpfbpgbphbpfbpibYfaVJbpjbpkbplbOJbpnbnybppbnCbnDbpqbqxbptboobqyblOaZzbqBbpxblObKoboqbLHbqGbpCbpDbnIbpEbpFbpGbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdvbpHbpHbpHbpIbpHbpJaZVbpKbqKbgrbqQbjpbrkbrcbpQbpRbrvbrubrwbrwbrwbrxbkWbpUbkWbkWbkWbkWbpVbpWbpWbpXbpYbdPcfycfocfzbrybqdbqebqfbrCbqhbqibqjbqkbqkbrDbrIbgGbgGbqmbfmaMbblqbqnbqoaJubqqbqrbqrbxqborbrPbxsbotaafbebbebbebbebbshbebbebbebbebaafbedbqzboCbqAbsjbqCbqDbqEaJibqFaRqaRpaJibskbqHbqIbqJaJDbqLboPbqNboUboUboUboUboUboUbqObqPbslboYbqRbqSboNbnnbqUbqVbqWbsnbpgbphbpfbqXbYfaVJbpjbqYbqZbqZbrabrbbsobrdbrdbrdbrebrdbrfboObrhbribrjbsqbnIbrlbpCbrmbrnbrobsrbnIbrqbpFbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBcaLbsHbsHbthbrzbrAbgrbtkbtlcaMbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabYZcanbotbosbotaafbsibZibtKbtTbsmbtXbtKcaJbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNcbQcdpcbdcbkceobsCbqObsDbnicevbsFcepcdGbnncdtbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNbVzbsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtccflbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbWIbXnbwnbukbulbumbnibnnbunbpubVVbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbPebpvbuCbuDbuEbuFbVybrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbVebnIbpEbpFbUAbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabrsbrtbsvbsBcaLbsHbsHbthbrzbrAbgrbtkbtlcaMbtmbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbtBbdPbrJbrJbrJbrJbrJbrJbqfbrKbrLbrMbrNbrObtIbrQbrRbrSbrTbrUbrVbrWbrXbrYbrZaHBbsbbqvbsabYZcanbotbosbotaafbsibZibtKbtTbsmbtXbtKcaJbsiaafbedbspbuibspbedbedbedbujaJibssaRqaRpbXHboJbngbstbsubuobqLbswbqNbXncbdbVVbWIcbQbsCbqObsDbnicdGbsFcdpcbkbnncdtbqVbpebpfbpgbphbpfbpibYfaVJbpjbsJbsKbsLbsMbplbsNceobsPbsQbsRbsSbsTbsUbrhbsVbsWbsXbnIbsYbsZbtabtbbtccflbnIbrqbpFbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabrsbtfbtgbuYbtibtibtibtjbtibtibgrbvabuZboAbvjbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtobtpbtqbtrbtsbrJbrJbrJbrJbrJbrJbttbtubvqbtwbtxbtybtzbtAbfmbfmbvCbfmbfmbtCbtDbtEbtFbmGbtHbmGbmGbmGbmGbmGbvEbmGaafbtJbvFbtLbtMbtNbtMbtLbvIbtPaafbspbtQbtRbtSbvObtUbspbtVaJlbtWbbmbvZaJibtYbohbtZbuabwcbucbudbuebufbwgbPMbVzbwnbukbulbumbnibnnbunbpubPKbnnbuqburbusbutbuubuubuvbuwbYfaXqbpjbwxbplbplbsMbuybuzbPEbpvbuCbuDbuEbuFbVybrhbuHbuIbuJbnIbuKbuLbuMbtbbpCbVebnIbpEbpFbUAbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeObSwbxmbuVbpHbuWbgnbgobuXbuWbgrbxpbjpbxvbvbbjpaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaabvcbvdbrJbvebvfbvfbvfbvfbvfbvgbvhbvfbvibxzbvkbvlbvmbSlbSrbfmbvpbgGbxDbpzbvsbvtbvubvvbmGbmGbmGbRcbQMbvzbvAbvBbvwaafbpObRpbvHbvJbvKbvMbvNbRybpOaafbspbqMbvQbxnbedbvRbspbvSaJlbvTbcLbvUaJibvVbvWbvXbTTbxObucbyobxTbyKbwdbwebwebwfbyMcdWcdVbUqbwkbTWbwmbwkbwkbwkbwkbyQbwkbwkaXKaXKaXKaXKaVJbpjbsJbsKbsLbwobwpbwqbwrbwsbwsbwsbsSbwtbTsbwvbwwbyUbwybnIbwzbwAbwBbwCbpCbSEbnIbwEbwFbnMbnMaaaaaaaaaaaaaafbuPbuQbuRbuQbuRbuQbuSaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbwMbwNbwObwPbrJbwQbrJbwRbwRbwRbwSbwTbrKbrJbrJbrLbwUbwVbwWbwXbrpbzcbxabgGbgGbugbxcbvtbvubxdbxebxfbzrbzHbxibxjbxkbxlbvwaafbxrbzNbzJbzObyLbxobzPbzVbxraafbspbqwbAebuBbedbAibspbtVaJlbxwbcLaRpaJibDDbxybAobxAbxBbxCbAtbxEbxCbxFbxGbDIbxFbwkbAxbxJbwkbwkbxKbxLbxMbxNbAAbxPbxQbxRbxSaXKbaybvraXKaVJbpjbxXbqZbqZbxYbxZbppbDQbwsbwsbwsbsSbwtbEFbwwbvDbUabTQbwwbESbFbbEZbyibpCbFybnIbrqbykbnMaaaaaaaaaaaaaaaaafbwGbwHbrgcLebwJbFUbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbwMbwNbwObwPbrJbwQbrJbwRbwRbwRbwSbwTbrKbrJbrJbrLbwUbwVbwWbwXbrpbwDbxabgGbgGbugbxcbvtbvubxdbxebxfbwKbzHbxibxjbxkbxlbvwaafbxrbzNbzJbzObyLbxobzPbzVbxraafbspbqwbAebuBbedbAibspbtVaJlbxwbcLaRpaJibDDbxybAobxAbxBbxCbAtbxEbxCbxFbxGbDIbxFbwkbAxbxJbwkbwkbxKbxLbxMbxNbAAbxPbxQbxRbxSaXKbaybvraXKaVJbpjbxXbqZbqZbxYbxZbppbDQbwsbwsbwsbsSbwtbEFbwwbvDbUabTQbwwbESbFbbEZbyibpCbFybnIbrqbykbnMaaaaaaaaaaaaaaaaafbwGbwHbrgcLebwJbFUbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbAFbypbAFbyqbyrbwQbrJbrJbrJbysbrJbwTbrKbytbdPbdPbyubgGbrNbwXbyvbywbyxbyybyybyzbyAbyBbyCbyDbvsbyEbvPbyGbxkbyHbyIbyJbvwaafbxrbxrbxrbxrbALbxrbxrbxrbxraafbyNbyNbyNbyNbyNbyNbyNbAVaJibyPblMblNaJibCnbyRbyRbySbyTbxCbAXbyVbyWbCobyYbyZbzabwmbzbbBqbzdbzebzfbzgbzgbzhbzibzgbzjbzkbckbaAbwubclbBsbcnbCQbzsbztbzubzvbzwbppbCXbpqbpqbDBbsSbwtbCLbzAbzBbzCbzDbzAbzEbzFbzGbBwbzIbwwbwwbBxbnMbnMbzKbzLbzLbzLbzMbCJbylbymbrgbwJbrgbynbuRaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaacaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbzRbrJbwQbrJbzSbzSbzSbzSbwTbrKbzTbzUbdPbmobgGbrNbBJbzWbzXbzYbgGblnbgGbzZbAabAbbAcbAdbyEbwIbAfbxkbxkbxkbAgbvwbAhbAhbBKbAhbBRbBQbBSbAjbBUbAjbAjbyNbCcbCdbAmbAnbBXbApbAqaJibAraRqaRpaJibAlbAsbAubAvbAwbBtbAybAzbBabABbACbADbAEbBEbAGbAHbAIbAJbAKbAIbxtbAMbANbAObnvblUbsdbBGbsgbsfbaAbPObpjbxubxUbAYbAZbAZbppbAkbBbbBcbppbBdbBebBfbBgbBhbBibBjbBkbBlbBlbBmbBnbBobTHbCrbBrbCwbCAbTIbBvbCEbCIbCHbCKbwGbwJbrgbwJbwJbBNbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBCbwNbBDbCYbrJbwQbrJbrJbrJbrJbrJbwTbrKbzTbBFbdPbzzbgGbBHbBIbgGbCZbgFbgGbgGbyjbvsbvtbAbbAcbAdbyEbvwbBLbBMbzybBMbBObvwbDbbDabDdbDcbDfbDebDhbDgbDjbDibBVbyNbBWbzmbBYbBZbCabCabCbbDwbAraRqaRpaJibzxbCebCebySbCfbxCbCgbChbxCbCibCjbCjbyObwkbClbCmbwkbwkbwkbwkbwkbwkbyXbwkbwkbwmbDKaXKaXKaXKaXKbDYbpjbwwbzAbzAbzAbzAbzAbzAbzAbzAbzAbzIbEibCsbCtbBhbCubCvbEjbCxbCxbCxbCybCzbEkbCBbCCbCDbEpbTGbCGbErbCGbEsbEubBzbuQbuRbEwbuRbuQbBBaafaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbCMbCNbCObrJbrJbrJbCNbrJbwTbrKbzTbCPbdPbNzbgGbrNbwXbgGbqlbCRbgGbgGbECbxcbvtbAbbCTbxcbCUbvwbCVbEKbOxbAWbxlbvwbEMbELbERbAhbEUbEUbEUbAjbEWbEVbEXbyNbDkbDlbDlbDmbDnbDobDpaJibDqbDrbDsaJibDtbEYbDvbMpbDxbDybDzbDAbyWbLWbFabCjbMybwmbDEbDFbwmbDGbDHbNsbDJbFobDLbDMbCpbDNbDObBTbNtbDRbCpbVLbVMbDUbVAbDWbDXbDXbFrbDZbEabEbbEcbEdbEebEfbEabEgbEhbCvbFVbFFbGfbwwbwwbwwbwwbwwbGhbGgbEnbzKbzMbCJbEobGibCJbzKbzLbzMbGjbCJbGkaafcHOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGubExbGubEybEzbEAbEAbEAbEAbEAbEBbGAbEDbzTbEEbdPbKobEGbEHbEIbEJbGDbGCbGWbGEbGvbtCbENbAbbEObEPbyEbvwbEQbHabLHbBMbETbvwbBPbHibHjbAhaaaaaaaaabAjbHmbHlbFcbyNbFdbFebFfbFgbDnbDobFhaJibxwaRqaRpbHMbFjbFkbFlbFmbFnbHNbFpbFqbxCbxFbxFbIZbxFbwkbFsbFtbFubFvbFwbFxbDJbIYbDLbFzbFAbFBbDObFCbFDbFEbHPbVlbDXbHQbVAbFJbDXbDXbFKbFLbFMbFLbFLbFNbFObFPbFQbFRbFSbCvbHRbJrbJabFWbFXbFYbFZbGabGbbGcbGdaafaafbCJbGebHUbHUbHVbIfbHZbIobEvaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaacaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbzRbrJbwQbrJbzSbzSbzSbzSbwTbrKbzTbzUbdPbuNbgGbrNbBJbzWbzXbzYbgGblnbgGbzZbAabAbbAcbAdbyEbwIbAfbxkbxkbxkbAgbvwbAhbAhbBKbAhbBRbBQbBSbAjbBUbAjbAjbyNbCcbCdbAmbAnbBXbApbAqaJibAraRqaRpaJibAlbAsbAubAvbAwbBtbAybAzbBabABbACbADbAEbBEbAGbAHbAIbAJbAKbAIbxtbAMbANbAObnvblUbsdbBGbsgbsfbaAbPObpjbxubxUbAYbAZbAZbppbAkbBbbBcbppbBdbBebBfbBgbBhbBibBjbBkbBlbBlbBmbBnbBobTHbCrbBrbCwbCAbTIbBvbCEbCIbCHbCKbwGbwJbrgbwJbwJbBNbwGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBCbwNbBDbCYbrJbwQbrJbrJbrJbrJbrJbwTbrKbzTbBFbdPbuGbgGbBHbBIbgGbCZbgFbgGbgGbyjbvsbvtbAbbAcbAdbyEbvwbBLbBMbuAbBMbBObvwbDbbDabDdbDcbDfbDebDhbDgbDjbDibBVbyNbBWbzmbBYbBZbCabCabCbbDwbAraRqaRpaJibzxbCebCebySbCfbxCbCgbChbxCbCibCjbCjbyObwkbClbCmbwkbwkbwkbwkbwkbwkbyXbwkbwkbwmbDKaXKaXKaXKaXKbDYbpjbwwbzAbzAbzAbzAbzAbzAbzAbzAbzAbzIbEibCsbCtbBhbCubCvbEjbCxbCxbCxbCybCzbEkbCBbCCbCDbEpbTGbCGbErbCGbEsbEubBzbuQbuRbEwbuRbuQbBBaafaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBAbzQbBAbCMbCNbCObrJbrJbrJbCNbrJbwTbrKbzTbCPbdPbzybgGbrNbwXbgGbqlbCRbgGbgGbECbxcbvtbAbbCTbxcbCUbvwbCVbEKbzzbAWbxlbvwbEMbELbERbAhbEUbEUbEUbAjbEWbEVbEXbyNbDkbDlbDlbDmbDnbDobDpaJibDqbDrbDsaJibDtbzcbDvbMpbDxbDybDzbDAbyWbLWbFabCjbMybwmbDEbDFbwmbDGbDHbzrbDJbFobDLbDMbCpbDNbDObBTbNtbDRbCpbVLbVMbDUbVAbDWbDXbDXbFrbDZbEabEbbEcbEdbEebEfbEabEgbEhbCvbFVbFFbGfbwwbwwbwwbwwbwwbGhbGgbEnbzKbzMbCJbEobGibCJbzKbzLbzMbGjbCJbGkaafcHOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGubExbGubEybEzbEAbEAbEAbEAbEAbEBbGAbEDbzTbEEbdPbxhbEGbEHbEIbEJbGDbGCbGWbGEbGvbtCbENbAbbEObEPbyEbvwbEQbHabxxbBMbETbvwbBPbHibHjbAhaaaaaaaaabAjbHmbHlbFcbyNbFdbFebFfbFgbDnbDobFhaJibxwaRqaRpbHMbFjbFkbFlbFmbFnbHNbFpbFqbxCbxFbxFbIZbxFbwkbFsbFtbFubFvbFwbFxbDJbIYbDLbFzbFAbFBbDObFCbFDbFEbHPbVlbDXbHQbVAbFJbDXbDXbFKbFLbFMbFLbFLbFNbFObFPbFQbFRbFSbCvbHRbJrbJabFWbFXbFYbFZbGabGbbGcbGdaafaafbCJbGebHUbHUbHVbIfbHZbIobEvaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbGlbGmbGnbdPbdPbGobwNbwNbwNbGpbdPbdPbGqbGrbGsbdPbGtbGtbGtbITbGtbGvbGwbGxbGybGzbtCbvtbAbbIAbGBbtCbtGbtGbtGbtGbtGbIBbtGbtGbtGbIRbtGbIUbIMbIXbtGbJbbtGbtGbtGbtGbtGbtGbtGaJiaJiaJiaJibxwaRqaRpbHMbJqbFkbCSbGGbCWbGIbGJbGKbGLbGMbGNbCjbGObGPbGQbGRbGSbGTbGUbGVbIDbGXbGYbGZbJDbHbbHcbHdbHecLVbCpbUSbUfbwwbwwbwwbwwbwwbJVbwwbwwbwwbzAbKfbzAbzAbHkbBhbCubCvbHRbIvbKzbHnbHobHpbHqbGabGbbGcbHraaaaaabCJbHsbHtbEobCIbBybKBbKUbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaafaaaaaaaaabHuaafaaaaaaaaaaaabGtbIubHwbHxbHybGvbHzbKVbHBbHCbtCbvtbAbbAcbAabHDbHEbHFbHGbHHbHIbHJbHKbHLbLabLxbLnbLzbAabAabLIbMhbLYbAabHTbAabzZbHHbKJbHWbHXbHYbMibxwaRqbDsaJlbDtbDubDtbDCbDPbxCbIbbIcbIdbIebMlbIgbIhbIibIjbIkbwmbIlbImbInbDJbDTbElbIpbIqcLUbFDbIsbItbHObCpbHSbIwbIxbIybUdbLybMqbICbMCbUcbIFbIGbIHbIIbIJbzAbIKbCubCvbMHbMFbINbIObIPbIQbHvbGabGbbISbEnbEnbEnbCJbCJbCJbMSbMPbCJbCJbBybCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabMZaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbuObEmbIVbIWbNdbuNbuGbuAbNfbtCbvtbJcbJdbJebJebJfbJgbJhbJibJjbJgbJfbJebJebNkbJkbJlbNqbJnbJobNBbJebJebJpbJgbJhbJibJjbJsbJtbJubJtbJvbJwbvUaJlbEtbEqbFHbGFbNLbGHbDzbHAbFibDVbxFbNQbCFbDSbDEbJGbwkbJHbJIbJJbDJbJKbJLbJMbJNbJObFDbJPbItbJObCpbJQbJRbIxbJSbJTbJUbNZbJWbObbJYbIFbJZbKabKbbKbbzAbKcbKdbKebOcbKgbKhbKibKjbKjbKkbGabGbbKlbEnbKmbOdbKnbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKpbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabMZaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbuObEmbIVbIWbNdbmoblBblobNfbtCbvtbJcbJdbJebJebJfbJgbJhbJibJjbJgbJfbJebJebNkbJkbJlbNqbJnbJobNBbJebJebJpbJgbJhbJibJjbJsbJtbJubJtbJvbJwbvUaJlbEtbEqbFHbGFbNLbGHbDzbHAbFibDVbxFbNQbCFbDSbDEbJGbwkbJHbJIbJJbDJbJKbJLbJMbJNbJObFDbJPbItbJObCpbJQbJRbIxbJSbJTbJUbNZbJWbObbJYbIFbJZbKabKbbKbbzAbKcbKdbKebOcbKgbKhbKibKjbKjbKkbGabGbbKlbEnbKmbOdbKnbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKpbKqbKqbKrbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKvbKwbKxbKwbKyaaaaaaaaabGtbGtbOfbKAbIVbKAbOibKCbOnbKDbKEbtCbKFbvtbKGbKHbAabKIbAabzZbHHbKJbAabKKbKLbKMbKNbKObAcbAabKPbKQbHLbKRbHLbHLbKSbKTbODbOtbKWbKXbcLbKYaRpaRpaRpaJlbOEbFlbFnbOFbJmbOGbJybJxbFIbLgbLhbLibLjbHgbDEbIkbIabIzbHhbDJbDJbLobLobLobCpbMMbLqbLrbLsbLtbCpbLubLvbIxbLwbFGbLybOHbLAbLBbLCbIFbJCbLEbKbbKbbzAbRsbLFbCvbwwbLGbuTbuUbLJbLKbLLbGabLMbLNbLObLObLObLPbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbLQbLRbLSbLRbKsbKtbKtbLTbLUbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbsObLXbtdbLVbLZbMabMbbGtbMcbMdbMebMfbMgbOLbOKbMjbMjbMkbtCbtCbtCbOMbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMmbMnbMobtCbtCbtCbtCbtCbONbtCbtCbtCaJlaJlbOQaJlaKSaMpbMraJlbKZbJXbORbGFbLdbxCbDzbLDbxCbtvbMzbMAbMBbwkbOTbMDbMEbOUbMGbPubMIbMJbMKbMLbItbJObFDbFDbLpbJObCpbMNbMObMObMObMObMObMObMObMObMObMObPvbMQbMRbMRbzAbPAbMTbMUbwwbMVbMVbMVbMWbMXbMYbMVbMVbMVbMVbMVbMVbNabNbaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymbPCbLRbLRbNebKtbKtbLTbLTbPDbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbsObLXbtdbLVbLZbMabMbbGtbMcbMdbMebMfbMgbOLbOKbMjbMjbMkbtCbtCbtCbOMbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMmbMnbMobtCbtCbtCbtCbtCbONbtCbtCbtCaJlaJlbOQaJlaKSaMpbMraJlbKZbJXbORbGFbLdbxCbDzbLDbxCbtvbMzbMAbMBbwkbOTbMDbMEbOUbMGbPubilbMJbMKbMLbItbJObFDbFDbLpbJObCpbMNbMObMObMObMObMObMObMObMObMObMObPvbMQbMRbMRbzAbPAbMTbMUbwwbMVbMVbMVbMWbMXbMYbMVbMVbMVbMVbMVbMVbNabNbaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymaymbPCbLRbLRbNebKtbKtbLTbLTbPDbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbNibNjbPFbNlbNmbNnbKAbNobNpbGvbPHbNrbubbtObGvbNubNvbNwbNxaaaaaaaaaaaabNybuhbNAbPSbNDbNCbNEbNFbNGbNHbNIbNFbNJbNKbPXbNMbNNbNObNPbqsbNRbNSbNTbNUbNUbNUbNUbDtbDtbDtbDtbMtbMtbxCbQabOabQbbMzbMvbMubOebQcbOgbOhbQdbOjbMxbMwbOmbNhbMKbOobFDbFDbNVbJObJObOobCpbMNbMObOqbOrbOsbQebOubOvbOwbjAbMObOybOzbOAbOAbzAbOBbOCbCvbzIbQgbQpbQjbQBbQubRdbQXbRvbRebRxbVFbMVbuxbEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbPCbKtbKtbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbNgbNgbNgbRAbRzbKAbOSbRDbRBbKAbRFbOVbOWbGvbGvbGvbGvbGvbGvbOXbOYbOZbPaaaabPbbPcbPcbPdbvYbPfbPgbPhbPfbPibNFbPjbPkbPlbNFbPmbNXbPobPpbPqbPrbPsbPtbPtbNSbRWbRJbPwbPxbPybDtbNYbLbbScbGFbGFbSgbDzbSibxCbSnbwZbwYbwlbwkbSubPIbwkbOkbwDbwKbOlbPNbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPPbQYbPRbOsbOsbOsbOsbwjbMObPTbLEbPUbPUbzAbBhbPVbPWbwbbPYbPYbSMbSObSNbSQbSPbSSbSRbSSbSVbMVbQfbSWbOObQhbTgbOpbQkaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQlbQmbQmbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbQnbQobTAbQqbQrbKAbKAbQsbQtbTObQvbQvbQvbQvbQvbQvbQwbQxbQyaaabQzbQAbUbbQCbxbbPfbQEbQGbQFbPfbNFbQIbQJbQKbNFbxxbxhbQNbQObQPbQQbQRbPtbQSbPxbQTbNUbPxbPxbQUbDtbPnbGFbQVbUkbGFbPzbDzbLebRCbQZbPBbUobyhbRGbDEbIkbSpbOkbwKbwKbOlbRfbMKbRgbRhbygbRjbRkbRlbybbRnbPObMObOsbOsbRobOsbOsbOsbOsbyabMObRqbLEbRrbRrbzAbRsbRtbRubyfbRwbUGbUwbUPbUObUWbURbVkbVjbVvbVmbxIbREbVGbxHbRHbRIbQibRKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLVbNgbNgbNgbRAbRzbKAbOSbRDbRBbKAbRFbOVbOWbGvbGvbGvbGvbGvbGvbOXbOYbOZbPaaaabPbbPcbPcbPdbvYbPfbPgbPhbPfbPibNFbPjbPkbPlbNFbPmbNXbPobPpbPqbPrbPsbPtbPtbNSbRWbRJbPwbPxbPybDtbNYbLbbScbGFbGFbSgbDzbSibxCbSnbwZbwYbwlbwkbSubPIbwkbOkbmDbmWbOlbPNbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPPbQYbPRbOsbOsbOsbOsbwjbMObPTbLEbPUbPUbzAbBhbPVbPWbwbbPYbPYbSMbSObSNbSQbSPbSSbSRbSSbSVbMVbQfbSWbOObQhbTgbOpbQkaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQlbQmbQmbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbQnbQobTAbQqbQrbKAbKAbQsbQtbTObQvbQvbQvbQvbQvbQvbQwbQxbQyaaabQzbQAbUbbQCbxbbPfbQEbQGbQFbPfbNFbQIbQJbQKbNFbprbokbQNbQObQPbQQbQRbPtbQSbPxbQTbNUbPxbPxbQUbDtbPnbGFbQVbUkbGFbPzbDzbLebRCbQZbPBbUobyhbRGbDEbIkbSpbOkbmWbmWbOlbRfbMKbRgbRhbygbRjbRkbRlbybbRnbPObMObOsbOsbRobOsbOsbOsbOsbyabMObRqbLEbRrbRrbzAbRsbRtbRubyfbRwbUGbUwbUPbUObUWbURbVkbVjbVvbVmbxIbREbVGbxHbRHbRIbQibRKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaabLVbRMbRNbRObLVbRPbMabMbbGtbGtbRQbRQbRQbGtbGtbNxbRRbRRbRSbRSbRSbRSbNwbQyaaabRTbRUbRVbVObRXbRYbRZbSabSbbSbbWgbSdbSebWibNFbPtbPtbPtbPtbPtbWkbPtbPtbShbWobSjbNUbPxbSkbvnbDtbQHbLbbQVbSmbWMbPzbSobJAbJBbSqbRabSsbStbJzbFsbSvbIEbSxbRibRbbSAbSBbMKbRmbSDbWVbRjbSfbSGbXabRnbPObMObMObMObRobOsbOsbOsbMObMObMObSIbSJbRrbRrbzAbSKbSLbCvbzIbXcbXfbXebSQbXibXqbXpbXvbXubYabXxbMVbQfbYobOObSXbSYbSybTaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbTcbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabTdbKwbTebKwbTfbYtaafaaaaaabGtbThbTibTjbGtaaabNxbTkbTlbTmbTnbTnbTnbTobQyaaabQzbTpbTqbTrbvobPfbTtbTvbTubTwbNFbSzbTybTzbYwbTBbTBbTBbTCbTCbTDbTEbULbPxbPxbTFbNUbNUbNUbNUbDtbDtbLfbLkbLcbDtbTJbTKbTLbJFbJEbTJbQbbLlbLmbTRbTSbTJbMKbMKbMKbMKbMKbMKbvLbTUbTVbRjbvybTXbTYbRnbPObMObTZbQWbPQbYHbYzbNWbNcbTZbUgbUhbUibIIbIJbzAbIKbSLbUjbwwbMVbMVbYMbYSbMVbMVbMVbMVbYYbSCbVFbMVbvxbUnbOObUpbZbbUrbOOaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbUsbUsbUsbUsbUsbUsbUtbLTbUubUsbTcbLTbLTbLTbLTbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMZaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbUvbNxbNxbNxbNxbRSbZcbNwbUxaaabUybPcbPcbUzblCbPfbPfbUBbPfbSFbNFbUDbSHbSTbNFbSUbSUbSUbSUbSUbSUbSUbSUbUHbUIbUJbUKbUKbUMbNUbDtbUNbSZbTxbUQbZebwabUTbUUbTMbilbTNbUTbUYbUZbVabVbbUebTPbVdblBbVgbVhbVibUlbZrbUmbRjbUCbZsbUCbRnbPObMObVnbUFbVpbVqbVrbVsbVtbVubUgbzAbZubzAbzAbVwbCxbSLbCxbVxaafbnxbZvbZzblSbVBbZBbZLbZCbZObUVbMVbVHbVIbOObVJbVKbVKbwhaaLaaLaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwibLRbLRbLRbLRbLRbLRbLRbVNbLUbLTbLTbLTbLTbZPbLUbKuaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMZaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbUvbNxbNxbNxbNxbRSbZcbNwbUxaaabUybPcbPcbUzblCbPfbPfbUBbPfbSFbNFbUDbSHbSTbNFbSUbSUbSUbSUbSUbSUbSUbSUbUHbUIbUJbUKbUKbUMbNUbDtbUNbSZbTxbUQbZebwabUTbUUbTMbbtbTNbUTbUYbUZbVabVbbUebTPbVdbbzbVgbVhbVibUlbZrbUmbRjbUCbZsbUCbRnbPObMObVnbUFbVpbVqbVrbVsbVtbVubUgbzAbZubzAbzAbVwbCxbSLbCxbVxaafbnxbZvbZzblSbVBbZBbZLbZCbZObUVbMVbVHbVIbOObVJbVKbVKbwhaaLaaLaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwibLRbLRbLRbLRbLRbLRbLRbVNbLUbLTbLTbLTbLTbZPbLUbKuaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabVPbVQbVQbVRbVSbNxbVTbRSbVUbNxaaaaaaaaaaaabNybpcbVWbVXbVZbVYbPfbNFbWabWbbNIbNFbSUbUXbVfbVcbVDbVCbVEbSUcaqcaqcaqcaqcaqbTFbWjbZSbWlbWcbWdbZUbWpbxgbWrbWsbWtbWubWtbWvbWtbWwbWxbWybWzbWAbWBbWAbWCbWDbWEbWFbWGbWebnHbWfbWKbWLbZVbxVbMObxWcaabzlbWSbWTbWhbWSbWSbnAbWWbWXbWYbWZbCxbCxbSLbCxbFTaafbnxcaxcaxbXbbnabXdbnocaWbXgbXhbMVbVHcbebOObOObOObOObOOaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbQmbQmbQmbQmbQmbQmbXkbLTbQlbQmbXlbLTbLTbLTbLTbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXmcbfbWmcbgbRScbibXrbRSbXsbNxaaKaaaaaaaaabNybNybNybNybNybNybNybNFbUDbUEbXtbNFbSUbWnbWJbWHbWHbWJbWRbSUbhVbWUbWUbXocaqbXBbDtbDtbXCbXDbXEbXFbXGblRbXIbXJbXKbXLbXMbXNbXObXPbXQbXRbXSbXTbXUbznbzpbzobAPbzqbARbAQbATbAScbjbAUbYfbYgbIwbYhbVobCqbWObWNbWPbYmbYnbgJbYpbYqbYrbYscbmbYrbYubYvbILaafbnxcbncbrbrBbVBcbtcbAcbycbDbYAbMVbVHbYBbYCbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbLTbLTbLTbLTbLTbLTbTbbLTbXlbLTbLTbLTbLTbLTbKtbKtaafaaaaaaaaaaaaabgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYDbVQbVQbVRbYEbYFbYGbNxcbJbNxbYIbYJbYKbYIbYIbYLcbLbYNbYObYPcbObXwbXzbXybYebXAbYjbWJbYybYxbYRbYQbYTbidbYVbYUbYXbYWcaqbZhbNScbWbZjbZkbZlbZlbZmbnEbZobZpbTJbTJbZqcccbTJbTJccncceccrcaIcctbWQbZxbZyccubZybZAbZaccvbZabZAccEbYfbMNbIwbZEbXWbXVbZdccGbZJbZKbMObMObwwbwwbwwbwwbwwboIbnFbofbwwbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVccJbZQbZRbUnaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRLbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbLTbKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 7433e6b7d2eb2391ed97c09ff574e92cd93712f9 Mon Sep 17 00:00:00 2001 From: ccomp5950 Date: Sun, 17 May 2015 01:40:41 -0400 Subject: [PATCH 141/199] Travis.yml change to check for duplicate nanoUI templates. The way nanoUI works having two templates with same MD5 hash means that one won't be sent to the clients as the resource sending function in byond uses MD5hash and MD5hash only to determine if someone has a file. This bug doesn't show up in Windows for some reason but is something we'd want to watch out for. --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 9d86d85229..02174a8297 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,4 +19,5 @@ install: script: - shopt -s globstar - (! grep 'step_[xy]' maps/**/*.dmm) + - (! find nano/templates/ -type f -exec md5sum {} + | sort | uniq -D -w 32 | grep nano) - DreamMaker baystation12.dme From ed34aa2466b3010eb3b8f137a28aaa2d2a5a04a6 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 16:28:03 +0930 Subject: [PATCH 142/199] Rebalancing and adjusting divisors for all weapon damage values. --- code/game/antagonist/station/highlander.dm | 2 +- code/game/gamemodes/cult/cultify/obj.dm | 2 +- .../objects/items/weapons/material/bats.dm | 10 +-- .../objects/items/weapons/material/kitchen.dm | 62 ++++--------------- .../objects/items/weapons/material/knives.dm | 20 ++---- .../weapons/material/material_weapons.dm | 17 ++++- .../objects/items/weapons/material/misc.dm | 26 +++----- .../objects/items/weapons/material/shards.dm | 8 +-- .../objects/items/weapons/material/swords.dm | 27 +++----- .../objects/items/weapons/material/thrown.dm | 5 +- .../items/weapons/material/twohanded.dm | 34 ++++++---- .../structures/stool_bed_chair_nest/bed.dm | 10 +-- .../structures/stool_bed_chair_nest/chairs.dm | 6 +- code/modules/materials/materials.dm | 14 ++--- code/modules/mining/abandonedcrates.dm | 2 +- .../research/xenoarchaeology/finds/finds.dm | 4 +- 16 files changed, 98 insertions(+), 151 deletions(-) diff --git a/code/game/antagonist/station/highlander.dm b/code/game/antagonist/station/highlander.dm index a33af1b5a3..3ee73f4a95 100644 --- a/code/game/antagonist/station/highlander.dm +++ b/code/game/antagonist/station/highlander.dm @@ -37,7 +37,7 @@ var/datum/antagonist/highlander/highlanders player.equip_to_slot_or_del(new /obj/item/clothing/under/kilt(player), slot_w_uniform) player.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(player), slot_l_ear) player.equip_to_slot_or_del(new /obj/item/clothing/head/beret(player), slot_head) - player.equip_to_slot_or_del(new /obj/item/weapon/material/claymore(player), slot_l_hand) + player.equip_to_slot_or_del(new /obj/item/weapon/material/sword(player), slot_l_hand) player.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(player), slot_shoes) player.equip_to_slot_or_del(new /obj/item/weapon/pinpointer(get_turf(player)), slot_l_store) diff --git a/code/game/gamemodes/cult/cultify/obj.dm b/code/game/gamemodes/cult/cultify/obj.dm index a45c46a6ce..4306182eaf 100644 --- a/code/game/gamemodes/cult/cultify/obj.dm +++ b/code/game/gamemodes/cult/cultify/obj.dm @@ -21,7 +21,7 @@ new /obj/item/weapon/book/tome(loc) ..() -/obj/item/weapon/material/claymore/cultify() +/obj/item/weapon/material/sword/cultify() new /obj/item/weapon/melee/cultblade(loc) ..() diff --git a/code/game/objects/items/weapons/material/bats.dm b/code/game/objects/items/weapons/material/bats.dm index 5de3ba46c3..e507b2a4d9 100644 --- a/code/game/objects/items/weapons/material/bats.dm +++ b/code/game/objects/items/weapons/material/bats.dm @@ -4,18 +4,12 @@ icon_state = "metalbat0" base_icon = "metalbat" item_state = "metalbat" - sharp = 0 - edge = 0 - w_class = 3 - force = 10 - throw_speed = 3 - throw_range = 7 throwforce = 7 attack_verb = list("smashed", "beaten", "slammed", "smacked", "struck", "battered", "bonked") hitsound = 'sound/weapons/genhit3.ogg' - force_wielded = 20 - health = 10 default_material = "wood" + force_divisor = 1.35 // 27 when wielded with weight 20 (steel) + unwielded_force_divisor = 0.7 // 18 when unwielded based on above. //Predefined materials go here. /obj/item/weapon/material/twohanded/baseballbat/metal/New(var/newloc) diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm index e640664c74..597affcd35 100644 --- a/code/game/objects/items/weapons/material/kitchen.dm +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -5,15 +5,14 @@ * Utensils */ /obj/item/weapon/material/kitchen/utensil - force = 5 w_class = 1 - throwforce = 5 - throw_speed = 3 - throw_range = 5 - flags = CONDUCT + thrown_force_divisor = 1 origin_tech = "materials=1" attack_verb = list("attacked", "stabbed", "poked") - sharp = 0 + sharp = 1 + edge = 1 + force_divisor = 0.1 // 6 when wielded with hardness 60 (steel) + thrown_force_divisor = 0.25 // 5 when thrown with weight 20 (steel) var/loaded //Descriptive string for currently loaded food object. /obj/item/weapon/material/kitchen/utensil/New() @@ -60,6 +59,9 @@ desc = "It's a spoon. You can see your own upside-down face in it." icon_state = "spoon" attack_verb = list("attacked", "poked") + edge = 0 + sharp = 0 + force_divisor = 0.25 //5 when wielded with weight 20 (steel) /obj/item/weapon/material/kitchen/utensil/spoon/plastic default_material = "plastic" @@ -71,23 +73,13 @@ name = "knife" desc = "Can cut through any food." icon_state = "knife" - force = 10.0 - throwforce = 10.0 - sharp = 1 - edge = 1 - -/obj/item/weapon/material/kitchen/utensil/knife/suicide_act(mob/user) - viewers(user) << pick("\red [user] is slitting \his wrists with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his throat with the [src.name]! It looks like \he's trying to commit suicide.", \ - "\red [user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.") - return (BRUTELOSS) + force_divisor = 0.2 // 12 when wielded with hardness 60 (steel) /obj/item/weapon/material/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) if ((CLUMSY in user.mutations) && prob(50)) user << "\red You accidentally cut yourself with the [src]." user.take_organ_damage(20) return - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return ..() /obj/item/weapon/material/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob) @@ -95,7 +87,6 @@ user << "\red You somehow managed to cut yourself with the [src]." user.take_organ_damage(20) return - playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return ..() /obj/item/weapon/material/kitchen/utensil/knife/plastic @@ -109,13 +100,10 @@ name = "rolling pin" desc = "Used to knock out the Bartender." icon_state = "rolling_pin" - force = 8.0 - throwforce = 10.0 - throw_speed = 2 - throw_range = 7 - w_class = 3.0 attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") //I think the rollingpin attackby will end up ignoring this anyway. default_material = "wood" + force_divisor = 0.7 // 10 when wielded with weight 15 (wood) + thrown_force_divisor = 1 // as above /obj/item/weapon/material/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob) if ((CLUMSY in user.mutations) && prob(50)) @@ -123,30 +111,4 @@ user.take_organ_damage(10) user.Paralyse(2) return - - M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") - msg_admin_attack("[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey]) (JMP)") - - var/t = user:zone_sel.selecting - if (t == "head") - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if (H.stat < 2 && H.health < 50 && prob(90)) - // ******* Check - if (istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80)) - H << "\red The helmet protects you from being hit hard in the head!" - return - var/time = rand(2, 6) - if (prob(75)) - H.Paralyse(time) - else - H.Stun(time) - if(H.stat != 2) H.stat = 1 - user.visible_message("\red [H] has been knocked unconscious!", "\red You knock [H] unconscious!") - return - else - H.visible_message("\red [user] tried to knock [H] unconscious!", "\red [user] tried to knock you unconscious!") - H.eye_blurry += 3 - return ..() - + return ..() \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm index 1eb5640157..3271650d31 100644 --- a/code/game/objects/items/weapons/material/knives.dm +++ b/code/game/objects/items/weapons/material/knives.dm @@ -6,20 +6,16 @@ hitsound = null var/active = 0 w_class = 2 - force = 2 - sharp = 0 - edge = 0 - throw_speed = 3 - throw_range = 4 - throwforce = 7 attack_verb = list("patted", "tapped") + force_divisor = 0.25 // 15 when wielded with hardness 60 (steel) + thrown_force_divisor = 0.25 // 5 when thrown with weight 20 (steel) /obj/item/weapon/material/butterfly/update_force() if(active) - ..() //Updates force. - throwforce = max(3,force-3) edge = 1 sharp = 1 + ..() //Updates force. + throwforce = max(3,force-3) hitsound = initial(hitsound) icon_state += "_open" w_class = 3 @@ -60,11 +56,7 @@ flags = CONDUCT sharp = 1 edge = 1 - force = 10 - w_class = 3 - throwforce = 8 - throw_speed = 3 - throw_range = 6 + force_divisor = 0.15 // 9 when wielded with hardness 60 (steel) matter = list(DEFAULT_WALL_MATERIAL = 12000) origin_tech = "materials=1" attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") @@ -94,5 +86,5 @@ icon = 'icons/obj/kitchen.dmi' icon_state = "butch" desc = "A huge thing used for chopping and chopping up meat. This includes clowns and clown-by-products." - force = 15 + force_divisor = 0.25 // 15 when wielded with hardness 60 (steel) attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index 3f8732cd2b..b623df897b 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -2,10 +2,16 @@ health = 10 hitsound = 'sound/weapons/bladeslice.ogg' gender = NEUTER + throw_speed = 3 + throw_range = 7 + w_class = 3 + sharp = 0 + edge = 0 var/applies_material_colour = 1 var/unbreakable - var/damage_divisor = 0.5 + var/force_divisor = 0.5 + var/thrown_force_divisor = 0.5 var/default_material = DEFAULT_WALL_MATERIAL var/material/material @@ -16,7 +22,14 @@ set_material(material_key) /obj/item/weapon/material/proc/update_force() - force = round(material.get_blunt_damage()*damage_divisor) + if(edge || sharp) + force = material.get_edge_damage() + else + force = material.get_blunt_damage() + force = round(force*force_divisor) + throwforce = round(material.get_blunt_damage()*thrown_force_divisor) + //spawn(1) + // world << "[src] has force [force] and throwforce [throwforce] when made from default material [material.name]" /obj/item/weapon/material/proc/set_material(var/new_material) material = get_material_by_name(new_material) diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index 61570ef0fa..4e7ab42fd3 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -1,13 +1,11 @@ /obj/item/weapon/material/harpoon name = "harpoon" sharp = 1 - edge = 0 + edge = 1 desc = "Tharr she blows!" icon_state = "harpoon" item_state = "harpoon" - force = 20 - throwforce = 15 - w_class = 3 + force_divisor = 0.3 // 18 with hardness 60 (steel) attack_verb = list("jabbed","stabbed","ripped") /obj/item/weapon/material/hatchet @@ -15,15 +13,11 @@ desc = "A very sharp axe blade upon a short fibremetal handle. It has a long history of chopping things, but now it is used for chopping wood." icon = 'icons/obj/weapons.dmi' icon_state = "hatchet" - flags = CONDUCT - force = 12.0 + force_divisor = 0.2 // 12 with hardness 60 (steel) + thrown_force_divisor = 0.75 // 15 with weight 20 (steel) w_class = 2 - throwforce = 15 - throw_speed = 4 - throw_range = 4 sharp = 1 edge = 1 - matter = list(DEFAULT_WALL_MATERIAL = 15000) origin_tech = "materials=2;combat=1" attack_verb = list("chopped", "torn", "cut") applies_material_colour = 0 @@ -34,7 +28,6 @@ icon = 'icons/obj/weapons.dmi' icon_state = "unathiknife" attack_verb = list("ripped", "torn", "cut") - default_material = "bone" /obj/item/weapon/material/hatchet/tacknife name = "tactical knife" @@ -52,18 +45,19 @@ icon_state = "hoe" item_state = "hoe" flags = CONDUCT | NOBLUDGEON - force = 5 - throwforce = 7 + force_divisor = 0.25 // 5 with weight 20 (steel) + thrown_force_divisor = 0.25 // as above w_class = 2 - matter = list(DEFAULT_WALL_MATERIAL = 50) attack_verb = list("slashed", "sliced", "cut", "clawed") /obj/item/weapon/material/scythe icon_state = "scythe0" name = "scythe" desc = "A sharp and curved blade on a long fibremetal handle, this tool makes it easy to reap what you sow." - force = 13 - throwforce = 5 + force_divisor = 0.275 // 16 with hardness 60 (steel) + thrown_force_divisor = 0.25 // 5 with weight 20 (steel) + sharp = 1 + edge = 1 throw_speed = 1 throw_range = 3 w_class = 4 diff --git a/code/game/objects/items/weapons/material/shards.dm b/code/game/objects/items/weapons/material/shards.dm index 3df8181cdd..6c2eb7ced3 100644 --- a/code/game/objects/items/weapons/material/shards.dm +++ b/code/game/objects/items/weapons/material/shards.dm @@ -3,18 +3,17 @@ /obj/item/weapon/material/shard name = "shard" icon = 'icons/obj/shards.dmi' + desc = "Made of nothing. How does this even exist?" // set based on material, if this desc is visible it's a bug (shards default to being made of glass) icon_state = "large" sharp = 1 edge = 1 - desc = "Made of nothing. How does this even exist?" // set based on material, if this desc is visible it's a bug (shards default to being made of glass) w_class = 2 - force = 5 - throwforce = 8 + force_divisor = 0.2 // 6 with hardness 30 (glass) + thrown_force_divisor = 0.4 // 4 with weight 15 (glass) item_state = "shard-glass" attack_verb = list("stabbed", "slashed", "sliced", "cut") default_material = "glass" unbreakable = 1 //It's already broken. - damage_divisor = 0.1 //So tiny. /obj/item/weapon/material/shard/suicide_act(mob/user) viewers(user) << pick("\red [user] is slitting \his wrists with \the [src]! It looks like \he's trying to commit suicide.", \ @@ -42,7 +41,6 @@ else qdel(src) - /obj/item/weapon/material/shard/update_icon() if(material) color = material.icon_colour diff --git a/code/game/objects/items/weapons/material/swords.dm b/code/game/objects/items/weapons/material/swords.dm index aaa3d4f9fa..f50cebd93d 100644 --- a/code/game/objects/items/weapons/material/swords.dm +++ b/code/game/objects/items/weapons/material/swords.dm @@ -1,43 +1,30 @@ -/obj/item/weapon/material/claymore +/obj/item/weapon/material/sword name = "claymore" desc = "What are you standing around staring at this for? Get to killing!" icon_state = "claymore" item_state = "claymore" - flags = CONDUCT slot_flags = SLOT_BELT - force = 40 - throwforce = 10 + force_divisor = 0.7 // 42 when wielded with hardnes 60 (steel) + thrown_force_divisor = 0.5 // 10 when thrown with weight 20 (steel) sharp = 1 edge = 1 - w_class = 3 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") hitsound = 'sound/weapons/bladeslice.ogg' -/obj/item/weapon/material/claymore/IsShield() +/obj/item/weapon/material/sword/IsShield() return 1 -/obj/item/weapon/material/claymore/suicide_act(mob/user) +/obj/item/weapon/material/sword/suicide_act(mob/user) viewers(user) << "[user] is falling on the [src.name]! It looks like \he's trying to commit suicide." return(BRUTELOSS) -/obj/item/weapon/material/katana +/obj/item/weapon/material/sword/katana name = "katana" desc = "Woefully underpowered in D20" icon_state = "katana" item_state = "katana" - flags = CONDUCT slot_flags = SLOT_BELT | SLOT_BACK - force = 40 - throwforce = 10 - sharp = 1 - edge = 1 - w_class = 3 - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - hitsound = 'sound/weapons/bladeslice.ogg' -/obj/item/weapon/material/katana/suicide_act(mob/user) +/obj/item/weapon/material/sword/katana/suicide_act(mob/user) viewers(user) << "[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku." return(BRUTELOSS) - -/obj/item/weapon/material/katana/IsShield() - return 1 diff --git a/code/game/objects/items/weapons/material/thrown.dm b/code/game/objects/items/weapons/material/thrown.dm index 6ffac637c4..0e632de06b 100644 --- a/code/game/objects/items/weapons/material/thrown.dm +++ b/code/game/objects/items/weapons/material/thrown.dm @@ -2,13 +2,12 @@ name = "shuriken" desc = "A sharp, perfectly weighted piece of metal." icon_state = "star" - force = 5 + force_divisor = 0.1 // 6 with hardness 60 (steel) + thrown_force_divisor = 0.75 // 15 with weight 20 (steel) throw_speed = 10 - throwforce = 15 throw_range = 15 sharp = 1 edge = 1 - matter = list(DEFAULT_WALL_MATERIAL = 500) /obj/item/weapon/material/star/New() ..() diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index 759712416b..bdde1b03fc 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -17,6 +17,7 @@ * Twohanded */ /obj/item/weapon/material/twohanded + w_class = 4 var/wielded = 0 var/force_wielded = 0 var/force_unwielded @@ -24,6 +25,7 @@ var/unwieldsound = null var/base_icon var/base_name + var/unwielded_force_divisor = 0.25 /obj/item/weapon/material/twohanded/proc/unwield() wielded = 0 @@ -39,8 +41,15 @@ /obj/item/weapon/material/twohanded/update_force() base_name = name - force_unwielded = force - force_wielded = material.get_blunt_damage() + if(sharp || edge) + force_wielded = material.get_edge_damage() + else + force_wielded = material.get_blunt_damage() + force_wielded = round(force_wielded*force_divisor) + force_unwielded = round(force_wielded*unwielded_force_divisor) + force = force_unwielded + throwforce = round(force*thrown_force_divisor) + //world << "[src] has unwielded force [force_unwielded], wielded force [force_wielded] and throwforce [throwforce] when made from default material [material.name]" /obj/item/weapon/material/twohanded/New() ..() @@ -51,7 +60,6 @@ if(wielded) M << "Unwield the [base_name] first!" return 0 - return ..() /obj/item/weapon/material/twohanded/dropped(mob/user as mob) @@ -114,7 +122,7 @@ ///////////OFFHAND/////////////// /obj/item/weapon/material/twohanded/offhand - w_class = 5.0 + w_class = 5 icon_state = "offhand" name = "offhand" default_material = "placeholder" @@ -136,12 +144,11 @@ base_icon = "fireaxe" name = "fire axe" desc = "Truly, the weapon of a madman. Who would think to fight fire with an axe?" - force = 15 + unwielded_force_divisor = 0.25 + force_divisor = 0.7 // 10/42 with hardness 60 (steel) and 0.25 unwielded divisor sharp = 1 edge = 1 - w_class = 4.0 slot_flags = SLOT_BACK - force_wielded = 30 attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") applies_material_colour = 0 @@ -153,9 +160,12 @@ var/obj/structure/window/W = A W.shatter() +/* /* * Double-Bladed Energy Swords - Cheridan */ + // Not sure what to do with this one, it won't work nicely with the material system, + // but I don't want to copypaste all the twohanded procs.. /obj/item/weapon/material/twohanded/dualsaber icon_state = "dualsaber0" base_icon = "dualsaber" @@ -193,6 +203,7 @@ return 1 else return 0 +*/ //spears, bay edition /obj/item/weapon/material/twohanded/spear @@ -200,13 +211,12 @@ base_icon = "spearglass" name = "spear" desc = "A haphazardly-constructed yet still deadly weapon of ancient design." - force = 10 - w_class = 4.0 slot_flags = SLOT_BACK - force_wielded = 22 // Was 13, Buffed - RR - throwforce = 20 + force_wielded = 0.75 // 22 when wielded with hardness 15 (glass) + unwielded_force_divisor = 0.65 // 14 when unwielded based on above + thrown_force_divisor = 1.5 // 20 when thrown with weight 15 (glass) throw_speed = 3 - edge = 0 + edge = 1 sharp = 1 flags = NOSHIELD hitsound = 'sound/weapons/bladeslice.ogg' diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm index a172775778..fb2ef2b525 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm @@ -17,7 +17,7 @@ can_buckle = 1 buckle_lying = 1 var/material/material - var/apply_cosmentics = 1 + var/apply_cosmetics = 1 /obj/structure/bed/New(var/newloc, var/new_material) ..(newloc) @@ -28,7 +28,7 @@ if(!istype(material)) qdel(src) return - if(apply_cosmentics) + if(apply_cosmetics) color = material.icon_colour name = "[material.display_name] [initial(name)]" desc = "[initial(desc)] It's made of [material.display_name]." @@ -73,7 +73,7 @@ name = "psychiatrist's couch" desc = "For prime comfort during psychiatric evaluations." icon_state = "psychbed" - apply_cosmentics = 0 + apply_cosmetics = 0 /obj/structure/bed/psych/New(var/newloc) ..(newloc,"leather") @@ -82,7 +82,7 @@ name = "resting contraption" desc = "This looks similar to contraptions from earth. Could aliens be stealing our technology?" icon_state = "abed" - apply_cosmentics = 0 + apply_cosmetics = 0 /obj/structure/bed/alien/New(var/newloc) @@ -96,7 +96,7 @@ icon = 'icons/obj/rollerbed.dmi' icon_state = "down" anchored = 0 - apply_cosmentics = 0 + apply_cosmetics = 0 /obj/structure/bed/roller/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W,/obj/item/roller_holder)) diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm index bcce35a220..271dfde063 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm @@ -70,7 +70,7 @@ icon_state = "wooden_chair" name = "wooden chair" desc = "Old is never too old to not be in fashion." - apply_cosmentics = 0 + apply_cosmetics = 0 /obj/structure/bed/chair/wood/New(var/newloc) ..(newloc, "wood") @@ -84,7 +84,7 @@ icon_state = "comfychair" color = rgb(255,255,255) var/image/armrest = null - apply_cosmentics = 0 + apply_cosmetics = 0 /obj/structure/bed/chair/comfy/New() armrest = image("icons/obj/objects.dmi", "comfychair_armrest") @@ -125,7 +125,7 @@ /obj/structure/bed/chair/office anchored = 0 buckle_movable = 1 - apply_cosmentics = 0 + apply_cosmetics = 0 /obj/structure/bed/chair/comfy/lime color = rgb(255,251,0) diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index fb296a6c12..2e308460de 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -75,12 +75,12 @@ var/list/name_to_material /material/proc/get_blunt_damage() return weight //todo +/material/proc/get_edge_damage() + return hardness //todo + /material/proc/can_open_material_door(var/mob/living/user) return 1 -/material/proc/get_edge_damage() - return round(hardness/4) //todo - /material/proc/products_need_process() return (radioactivity>0) //todo @@ -213,7 +213,7 @@ var/list/name_to_material integrity = 100 shard_type = SHARD_SHARD tableslam_noise = 'sound/effects/Glasshit.ogg' - hardness = 15 + hardness = 30 weight = 15 door_icon_base = "stone" @@ -224,8 +224,6 @@ var/list/name_to_material ignition_point = 300 integrity = 200 // idk why but phoron windows are strong, so. icon_colour = "#FC2BC5" - hardness = 10 - weight = 10 stack_origin_tech = "materials=3;phorontech=2" /material/glass/phoron/reinforced @@ -243,8 +241,8 @@ var/list/name_to_material integrity = 100 shard_type = SHARD_SHARD tableslam_noise = 'sound/effects/Glasshit.ogg' - hardness = 15 - weight = 15 + hardness = 40 + weight = 30 stack_origin_tech = "materials=2" composite_material = list() //todo diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm index 2bff18cbea..1f8a75bf71 100644 --- a/code/modules/mining/abandonedcrates.dm +++ b/code/modules/mining/abandonedcrates.dm @@ -109,7 +109,7 @@ if(91) new/obj/item/device/soulstone(src) if(92) - new/obj/item/weapon/material/katana(src) + new/obj/item/weapon/material/sword/katana(src) if(93) new/obj/item/weapon/dnainjector/xraymut(src) // Probably the least OP if(94) // Why the hell not diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm index cb77346ac6..f8ada4112e 100644 --- a/code/modules/research/xenoarchaeology/finds/finds.dm +++ b/code/modules/research/xenoarchaeology/finds/finds.dm @@ -294,7 +294,7 @@ new_item.desc = "" if(19) apply_prefix = 0 - new_item = new /obj/item/weapon/material/claymore(src.loc) + new_item = new /obj/item/weapon/material/sword(src.loc) new_item.force = 10 item_type = new_item.name if(20) @@ -337,7 +337,7 @@ apply_material_decorations = 0 if(25) apply_prefix = 0 - new_item = new /obj/item/weapon/material/katana(src.loc) + new_item = new /obj/item/weapon/material/sword/katana(src.loc) new_item.force = 10 item_type = new_item.name if(26) From bd3d26f5bf71a66fd3ce28e1aba856fe04b06805 Mon Sep 17 00:00:00 2001 From: Dennok Date: Sun, 17 May 2015 10:26:59 +0300 Subject: [PATCH 143/199] Fix connector updates --- code/game/machinery/atmoalter/portable_atmospherics.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/machinery/atmoalter/portable_atmospherics.dm b/code/game/machinery/atmoalter/portable_atmospherics.dm index 5e8817359f..9ba8c2de49 100644 --- a/code/game/machinery/atmoalter/portable_atmospherics.dm +++ b/code/game/machinery/atmoalter/portable_atmospherics.dm @@ -68,6 +68,7 @@ //Perform the connection connected_port = new_port connected_port.connected_device = src + connected_port.on = 1 //Activate port updates anchored = 1 //Prevent movement From 2c60619273c5ce927850bd71c849738a97048e2d Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sat, 16 May 2015 17:02:02 +0200 Subject: [PATCH 144/199] Restores the original messages. --- code/game/objects/items/weapons/tools.dm | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 2754068d46..9307fabff7 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -269,8 +269,6 @@ else if(M) M << "You need more welding fuel to complete this task." - else - visible_message("\The [src] sputters and switches off.") return 0 //Returns whether or not the welding tool is currently on. @@ -281,7 +279,7 @@ ..() icon_state = welding ? "welder1" : "welder" var/mob/M = loc - if(M) + if(istype(M)) M.update_inv_l_hand() M.update_inv_r_hand() @@ -295,9 +293,9 @@ if(set_welding && !welding) if (remove_fuel(1)) if(M) - M.visible_message("[M] has ignited \the [src] on.", "You ignite \the [src].", "You hear the sound of \a [src] being ignited.") + M << "You switch the [src] on." else if(T) - T.visible_message("\The [src] has been ignited.","You hear the sound of \a [src] being ignited.") + T.visible_message("\The [src] turns on.") src.force = 15 src.damtype = "fire" src.w_class = 4 @@ -306,17 +304,15 @@ processing_objects |= src else if(M) - M.visible_message("\The [src] sputters as [M] fail to ignite it.", "You fail to ignite \the [src] on.", "You hear the sputtering sound of \a [src] failing to ignite.") - else if(T) - T.visible_message("\The [src] sputters as it fails to ignite.", "You hear the sputtering sound of \a [src] failing to ignite.") + M << "You need more welding fuel to complete this task." return //Otherwise else if(!set_welding && welding) processing_objects -= src if(M) - M.visible_message("[M] has turned off \the [src].", "You turn off \the [src].", "You hear the sound of a gas fire suddenly stopping.") + M << "You switch \the [src] off." else if(T) - T.visible_message("\The [src] turns off.", "You hear the sound of a gas fire suddenly stopping.") + T.visible_message("\The [src] turns off.") src.force = 3 src.damtype = "brute" src.w_class = initial(src.w_class) From 8ce787ef683dee66e35dd53260233b059362c273 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 17:22:33 +0930 Subject: [PATCH 145/199] Final tweaks to recipe availability and material inheritance. --- code/game/machinery/autolathe_datums.dm | 2 +- code/game/objects/items/ashtray.dm | 71 +++++++++---------- code/game/objects/items/weapons/handcuffs.dm | 4 +- .../items/weapons/improvised_components.dm | 54 +++++++------- .../weapons/material/material_weapons.dm | 37 ++++++++-- code/game/objects/random/random.dm | 6 +- code/game/objects/structures/simple_doors.dm | 11 ++- code/modules/client/preferences_gear.dm | 2 +- code/modules/materials/material_recipes.dm | 40 ++++++----- code/modules/materials/materials.dm | 6 +- maps/exodus-1.dmm | 22 +++--- maps/exodus-2.dmm | 4 +- 12 files changed, 151 insertions(+), 108 deletions(-) diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 56442b3e1c..172a92852a 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -293,7 +293,7 @@ /datum/autolathe/recipe/ashtray_glass name = "glass ashtray" - path = /obj/item/ashtray/glass + path = /obj/item/weapon/material/ashtray/glass category = "General" /datum/autolathe/recipe/camera_assembly diff --git a/code/game/objects/items/ashtray.dm b/code/game/objects/items/ashtray.dm index 9311428942..63059fef8e 100644 --- a/code/game/objects/items/ashtray.dm +++ b/code/game/objects/items/ashtray.dm @@ -1,39 +1,49 @@ -/obj/item/ashtray +var/global/list/ashtray_cache = list() + +/obj/item/weapon/material/ashtray + name = "ashtray" icon = 'icons/obj/objects.dmi' icon_state = "blank" - var/max_butts = 0 - var/material/material + force_divisor = 0.1 + thrown_force_divisor = 0.1 + var/image/base_image + var/max_butts = 10 -/obj/item/ashtray/New(var/newloc, var/material_name) - ..(newloc) - if(!material_name) - material_name = "plastic" - material = get_material_by_name(material_name) +/obj/item/weapon/material/ashtray/New(var/newloc, var/material_name) + ..(newloc, material_name) if(!material) qdel(src) return - name = "[material.display_name] ashtray" + max_butts = round(material.hardness/10) //This is arbitrary but whatever. src.pixel_y = rand(-5, 5) src.pixel_x = rand(-6, 6) update_icon() return -/obj/item/ashtray/update_icon() +/obj/item/weapon/material/ashtray/update_icon() + color = null overlays.Cut() - var/image/I = image('icons/obj/objects.dmi',"ashtray") - I.color = material.icon_colour - overlays |= I + var/cache_key = "base-[material.name]" + if(!ashtray_cache[cache_key]) + var/image/I = image('icons/obj/objects.dmi',"ashtray") + I.color = material.icon_colour + ashtray_cache[cache_key] = I + overlays |= ashtray_cache[cache_key] if (contents.len == max_butts) - overlays |= image('icons/obj/objects.dmi',"ashtray_full") + if(!ashtray_cache["full"]) + ashtray_cache["full"] = image('icons/obj/objects.dmi',"ashtray_full") + overlays |= ashtray_cache["full"] desc = "It's stuffed full." else if (contents.len > max_butts/2) - overlays |= image('icons/obj/objects.dmi',"ashtray_half") + if(!ashtray_cache["half"]) + ashtray_cache["half"] = image('icons/obj/objects.dmi',"ashtray_half") + overlays |= ashtray_cache["half"] desc = "It's half-filled." else desc = "An ashtray made of [material.display_name]." -/obj/item/ashtray/attackby(obj/item/weapon/W as obj, mob/user as mob) +/obj/item/weapon/material/ashtray/attackby(obj/item/weapon/W as obj, mob/user as mob) if (health <= 0) return if (istype(W,/obj/item/weapon/cigbutt) || istype(W,/obj/item/clothing/mask/smokable/cigarette) || istype(W, /obj/item/weapon/flame/match)) @@ -52,6 +62,8 @@ cig.transfer_fingerprints_to(butt) qdel(cig) W = butt + spawn(1) + TemperatureAct(150) else if (cig.lit == 0) user << "You place [cig] in [src] without even smoking it. Why would you do that?" @@ -67,44 +79,29 @@ die() return -/obj/item/ashtray/throw_impact(atom/hit_atom) +/obj/item/weapon/material/ashtray/throw_impact(atom/hit_atom) if (health > 0) health = max(0,health - 3) if (health < 1) die() return if (contents.len) - src.visible_message("\red [src] slams into [hit_atom] spilling its contents!") + src.visible_message("\The [src] slams into [hit_atom], spilling its contents!") for (var/obj/item/clothing/mask/smokable/cigarette/O in contents) O.loc = src.loc update_icon() return ..() -/obj/item/ashtray/proc/die() +/obj/item/weapon/material/ashtray/proc/die() material.place_shard(get_turf(src)) qdel(src) return -/obj/item/ashtray/plastic - max_butts = 14 - health = 24 - throwforce = 3 - -/obj/item/ashtray/plastic/New(var/newloc) +/obj/item/weapon/material/ashtray/plastic/New(var/newloc) ..(newloc, "plastic") -/obj/item/ashtray/bronze - max_butts = 10 - health = 72 - throwforce = 10 - -/obj/item/ashtray/bronze/New(var/newloc) +/obj/item/weapon/material/ashtray/bronze/New(var/newloc) ..(newloc, "gold") //placeholder -/obj/item/ashtray/glass - max_butts = 12 - health = 12 - throwforce = 6 - -/obj/item/ashtray/glass/New(var/newloc) +/obj/item/weapon/material/ashtray/glass/New(var/newloc) ..(newloc, "glass") diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index f5559b5778..69dde080c3 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -147,13 +147,11 @@ var/last_chew = 0 if(istype(I, /obj/item/stack/rods)) var/obj/item/stack/rods/R = I if (R.use(1)) - var/obj/item/weapon/wirerod/W = new /obj/item/weapon/wirerod - + var/obj/item/weapon/material/wirerod/W = new(get_turf(user)) user.put_in_hands(W) user << "You wrap the cable restraint around the top of the rod." qdel(src) update_icon(user) - /obj/item/weapon/handcuffs/cyborg dispenser = 1 diff --git a/code/game/objects/items/weapons/improvised_components.dm b/code/game/objects/items/weapons/improvised_components.dm index 6296fa99fc..af4e528b70 100644 --- a/code/game/objects/items/weapons/improvised_components.dm +++ b/code/game/objects/items/weapons/improvised_components.dm @@ -1,40 +1,44 @@ -/obj/item/butterflyconstruction +/obj/item/weapon/material/butterflyconstruction name = "unfinished concealed knife" desc = "An unfinished concealed knife, it looks like the screws need to be tightened." icon = 'icons/obj/buildingobject.dmi' icon_state = "butterflystep1" + force_divisor = 0.1 + thrown_force_divisor = 0.1 -/obj/item/butterflyconstruction/attackby(obj/item/W as obj, mob/user as mob) +/obj/item/weapon/material/butterflyconstruction/attackby(obj/item/W as obj, mob/user as mob) if(istype(W,/obj/item/weapon/screwdriver)) user << "You finish the concealed blade weapon." - new /obj/item/weapon/material/butterfly(user.loc) + new /obj/item/weapon/material/butterfly(user.loc, material.name) qdel(src) return -/obj/item/butterflyblade +/obj/item/weapon/material/butterflyblade name = "knife blade" desc = "A knife blade. Unusable as a weapon without a grip." icon = 'icons/obj/buildingobject.dmi' icon_state = "butterfly2" - matter = list(DEFAULT_WALL_MATERIAL = 5000) + force_divisor = 0.1 + thrown_force_divisor = 0.1 -/obj/item/butterflyhandle +/obj/item/weapon/material/butterflyhandle name = "concealed knife grip" desc = "A plasteel grip with screw fittings for a blade." icon = 'icons/obj/buildingobject.dmi' icon_state = "butterfly1" - matter = list(DEFAULT_WALL_MATERIAL = 4000) + force_divisor = 0.1 + thrown_force_divisor = 0.1 -/obj/item/butterflyhandle/attackby(obj/item/W as obj, mob/user as mob) - if(istype(W,/obj/item/butterflyblade)) +/obj/item/weapon/material/butterflyhandle/attackby(obj/item/W as obj, mob/user as mob) + if(istype(W,/obj/item/weapon/material/butterflyblade)) + var/obj/item/weapon/material/butterflyblade/B = W user << "You attach the two concealed blade parts." - new /obj/item/butterflyconstruction(user.loc) + new /obj/item/weapon/material/butterflyconstruction(user.loc, B.material.name) qdel(W) qdel(src) return - update_icon(user) -/obj/item/weapon/wirerod +/obj/item/weapon/material/wirerod name = "wired rod" desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit." icon_state = "wiredrod" @@ -44,25 +48,23 @@ throwforce = 10 w_class = 3 attack_verb = list("hit", "bludgeoned", "whacked", "bonked") + force_divisor = 0.1 + thrown_force_divisor = 0.1 - -/obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob) +/obj/item/weapon/material/wirerod/attackby(var/obj/item/I, mob/user as mob) ..() + var/obj/item/finished if(istype(I, /obj/item/weapon/material/shard)) - var/obj/item/weapon/material/twohanded/spear/S = new /obj/item/weapon/material/twohanded/spear - - user.put_in_hands(S) - user << "You fasten the glass shard to the top of the rod with the cable." - qdel(I) - qdel(src) - update_icon(user) - + var/obj/item/weapon/material/tmp_shard = I + finished = new /obj/item/weapon/material/twohanded/spear(get_turf(user), tmp_shard.material.name) + user << "You fasten \the [I] to the top of the rod with the cable." else if(istype(I, /obj/item/weapon/wirecutters)) - var/obj/item/weapon/melee/baton/cattleprod/P = new /obj/item/weapon/melee/baton/cattleprod - - user.put_in_hands(P) + finished = new /obj/item/weapon/melee/baton/cattleprod(get_turf(user)) user << "You fasten the wirecutters to the top of the rod with the cable, prongs outward." + if(finished) + user.drop_from_inventory(src) + user.drop_from_inventory(I) qdel(I) qdel(src) - update_icon(user) + user.put_in_hands(finished) update_icon(user) diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index b623df897b..0a1039a6c4 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -52,14 +52,19 @@ if(!..()) return if(!unbreakable) - if(!prob(material.hardness)) + if(material.is_brittle()) + health = 0 + else if(!prob(material.hardness)) health-- - if(health<=0) - shatter() + check_health() + +/obj/item/weapon/material/proc/check_health() + if(health<=0) + shatter() /obj/item/weapon/material/proc/shatter() var/turf/T = get_turf(src) - T.visible_message("\The [src] shatters!") + T.visible_message("\The [src] [material.destruction_desc]!") if(istype(loc, /mob/living)) var/mob/living/M = loc M.drop_from_inventory(src) @@ -71,4 +76,26 @@ if(!material.radioactivity) return for(var/mob/living/L in range(1,src)) - L.apply_effect(round(material.radioactivity/3),IRRADIATE,0) \ No newline at end of file + L.apply_effect(round(material.radioactivity/3),IRRADIATE,0) + +/obj/item/weapon/material/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) + if(exposed_temperature > material.ignition_point) + TemperatureAct(exposed_temperature) + +// This might need adjustment. Will work that out later. +/obj/item/weapon/material/proc/TemperatureAct(temperature) + if(temperature > material.ignition_point) + for(var/turf/simulated/floor/target_tile in range(2,loc)) + var/phoronToDeduce = temperature/30 + target_tile.assume_gas("phoron", phoronToDeduce, 200+T0C) + spawn (0) target_tile.hotspot_expose(temperature, 400) + health -= phoronToDeduce/100 + check_health() + +/obj/item/weapon/material/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(istype(W,/obj/item/weapon/weldingtool)) + var/obj/item/weapon/weldingtool/WT = W + if(material.ignition_point && WT.remove_fuel(0, user)) + TemperatureAct(150) + else + return ..() \ No newline at end of file diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm index 34e646a1cf..e64d422a20 100644 --- a/code/game/objects/random/random.dm +++ b/code/game/objects/random/random.dm @@ -163,9 +163,9 @@ prob(2);/obj/item/weapon/storage/pill_bottle/zoom,\ prob(5);/obj/item/weapon/contraband/poster,\ prob(2);/obj/item/weapon/material/butterfly,\ - prob(3);/obj/item/butterflyblade,\ - prob(3);/obj/item/butterflyhandle,\ - prob(3);/obj/item/weapon/wirerod,\ + prob(3);/obj/item/weapon/material/butterflyblade,\ + prob(3);/obj/item/weapon/material/butterflyhandle,\ + prob(3);/obj/item/weapon/material/wirerod,\ prob(1);/obj/item/weapon/material/butterfly/switchblade,\ prob(1);/obj/item/weapon/reagent_containers/syringe/drugs) diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm index d18a62ddf6..313ba17f45 100644 --- a/code/game/objects/structures/simple_doors.dm +++ b/code/game/objects/structures/simple_doors.dm @@ -41,9 +41,12 @@ opacity = 0 else opacity = 1 + if(material.products_need_process()) + processing_objects |= src update_nearby_tiles(need_rebuild=1) /obj/structure/simple_door/Destroy() + processing_objects -= src update_nearby_tiles() ..() @@ -137,7 +140,7 @@ else if(istype(W,/obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(material.ignition_point && WT.remove_fuel(0, user)) - TemperatureAct(100) + TemperatureAct(150) else attack_hand(user) return @@ -165,6 +168,12 @@ CheckHardness() return +/obj/structure/simple_door/process() + if(!material.radioactivity) + return + for(var/mob/living/L in range(1,src)) + L.apply_effect(round(material.radioactivity/3),IRRADIATE,0) + /obj/structure/simple_door/iron/New(var/newloc,var/material_name) ..(newloc, "iron") diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm index b63869bccb..a3c9f3560d 100644 --- a/code/modules/client/preferences_gear.dm +++ b/code/modules/client/preferences_gear.dm @@ -1035,7 +1035,7 @@ var/global/list/gear_datums = list() /datum/gear/ashtray display_name = "ashtray, plastic" - path = /obj/item/ashtray/plastic + path = /obj/item/weapon/material/ashtray/plastic sort_category = "misc" cost = 1 diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index 6cfa22fb5c..dd325942a0 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -5,16 +5,23 @@ /material/proc/generate_recipes() recipes = list() - recipes += new/datum/stack_recipe("[display_name] door", /obj/structure/simple_door, 10, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] barricade", /obj/structure/barricade, 5, time = 50, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] ashtray", /obj/item/ashtray, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]") + + // If is_brittle() returns true, these are only good for a single strike. + recipes += new/datum/stack_recipe("[display_name] baseball bat", /obj/item/weapon/material/twohanded/baseballbat, 10, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] ashtray", /obj/item/weapon/material/ashtray, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] spoon", /obj/item/weapon/material/kitchen/utensil/spoon/plastic, 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] baseball bat", /obj/item/weapon/material/twohanded/baseballbat/metal, 10, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] stool", /obj/item/weapon/stool, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] chair", /obj/structure/bed/chair, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] bed", /obj/structure/bed, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + + if(integrity>=100) + recipes += new/datum/stack_recipe("[display_name] door", /obj/structure/simple_door, 10, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] barricade", /obj/structure/barricade, 5, time = 50, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] stool", /obj/item/weapon/stool, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] chair", /obj/structure/bed/chair, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] bed", /obj/structure/bed, 2, one_per_turf = 1, on_floor = 1, supplied_material = "[name]") + + if(hardness>50) + recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1, supplied_material = "[name]") + recipes += new/datum/stack_recipe("[display_name] blade", /obj/item/weapon/material/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") /material/steel/generate_recipes() ..() @@ -64,13 +71,12 @@ new/datum/stack_recipe("multi-tile airlock assembly", /obj/structure/door_assembly/multi_tile, 4, time = 50, one_per_turf = 1, on_floor = 1), \ ), 4) - new/datum/stack_recipe("grenade casing", /obj/item/weapon/grenade/chem_grenade) - new/datum/stack_recipe("light fixture frame", /obj/item/frame/light, 2) - new/datum/stack_recipe("small light fixture frame", /obj/item/frame/light/small, 1) - new/datum/stack_recipe("apc frame", /obj/item/apc_frame, 2) - new/datum/stack_recipe("air alarm frame", /obj/item/frame/air_alarm, 2) - new/datum/stack_recipe("fire alarm frame", /obj/item/frame/fire_alarm, 2) - new/datum/stack_recipe("knife blade", /obj/item/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1) + recipes += new/datum/stack_recipe("grenade casing", /obj/item/weapon/grenade/chem_grenade) + recipes += new/datum/stack_recipe("light fixture frame", /obj/item/frame/light, 2) + recipes += new/datum/stack_recipe("small light fixture frame", /obj/item/frame/light/small, 1) + recipes += new/datum/stack_recipe("apc frame", /obj/item/apc_frame, 2) + recipes += new/datum/stack_recipe("air alarm frame", /obj/item/frame/air_alarm, 2) + recipes += new/datum/stack_recipe("fire alarm frame", /obj/item/frame/fire_alarm, 2) /material/plasteel/generate_recipes() ..() @@ -78,7 +84,7 @@ recipes += new/datum/stack_recipe("Metal crate", /obj/structure/closet/crate, 10, time = 50, one_per_turf = 1) recipes += new/datum/stack_recipe("RUST fuel assembly port frame", /obj/item/frame/rust/assembly, 12, time = 50, one_per_turf = 1) recipes += new/datum/stack_recipe("RUST fuel compressor frame", /obj/item/frame/rust, 12, time = 50, one_per_turf = 1) - recipes += new/datum/stack_recipe("knife grip", /obj/item/butterflyhandle, 4, time = 20, one_per_turf = 0, on_floor = 1) + recipes += new/datum/stack_recipe("knife grip", /obj/item/weapon/material/butterflyhandle, 4, time = 20, one_per_turf = 0, on_floor = 1) /material/sandstone/generate_recipes() ..() diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 2e308460de..3870f2a87c 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -42,6 +42,7 @@ var/list/name_to_material var/shard_icon var/shard_can_repair = 1 var/list/recipes + var/destruction_desc = "breaks apart" // Icons var/icon_colour @@ -151,7 +152,7 @@ var/list/name_to_material /material/phoron name = "phoron" stack_type = /obj/item/stack/material/phoron - ignition_point = 300 + ignition_point = 100 icon_base = "stone" icon_colour = "#FC2BC5" shard_type = SHARD_SHARD @@ -216,6 +217,7 @@ var/list/name_to_material hardness = 30 weight = 15 door_icon_base = "stone" + destruction_desc = "shatters" /material/glass/phoron name = "phoron glass" @@ -303,6 +305,7 @@ var/list/name_to_material stack_origin_tech = "materials=1;biotech=1" dooropen_noise = 'sound/effects/doorcreaky.ogg' door_icon_base = "wood" + destruction_desc = "splinters" /material/wood/holographic name = "holographic wood" @@ -321,6 +324,7 @@ var/list/name_to_material weight = 1 stack_origin_tech = "materials=1" door_icon_base = "wood" + destruction_desc = "crumples" /material/cloth //todo name = "cloth" diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 27100e829e..922a5f5a91 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -400,7 +400,7 @@ "ahJ" = (/obj/structure/grille,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/heads/hos) "ahK" = (/turf/simulated/floor,/area/security/brig) "ahL" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) -"ahM" = (/obj/structure/table/standard,/obj/item/ashtray/plastic,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) +"ahM" = (/obj/structure/table/woodentable,/obj/item/weapon/material/ashtray/bronze,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/device/flash,/obj/item/weapon/handcuffs,/turf/simulated/floor/carpet,/area/security/detectives_office) "ahN" = (/obj/structure/closet/wardrobe/red,/obj/structure/window/reinforced,/obj/item/clothing/accessory/holster/waist,/obj/item/clothing/accessory/holster/waist,/obj/item/clothing/accessory/holster/waist,/obj/item/clothing/accessory/armband,/obj/item/clothing/accessory/armband,/obj/item/clothing/accessory/armband,/turf/simulated/floor,/area/security/main) "ahO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/brig) "ahP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/decal/cleanable/blood/oil,/obj/item/trash/tastybread,/turf/simulated/floor/plating,/area/maintenance/security_starboard) @@ -601,7 +601,7 @@ "alC" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Detective"},/turf/simulated/floor/carpet,/area/security/detectives_office) "alD" = (/turf/simulated/floor/carpet,/area/security/detectives_office) "alE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/carpet,/area/security/detectives_office) -"alF" = (/obj/structure/table/woodentable,/obj/item/ashtray/bronze,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 2},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/security/detectives_office) +"alF" = (/obj/structure/table/woodentable,/obj/item/weapon/material/ashtray/bronze,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 2},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/security/detectives_office) "alG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/security/detectives_office) "alH" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/filingcabinet/chestdrawer,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "alI" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/obj/item/trash/raisins,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/security_starboard) @@ -637,7 +637,7 @@ "amm" = (/obj/structure/closet/lawcloset,/obj/item/clothing/glasses/sunglasses/big,/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "amn" = (/obj/item/weapon/storage/secure/safe{pixel_x = -23},/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 2},/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "amo" = (/obj/machinery/door/window/brigdoor{dir = 1; id = "Cell 3"; name = "Cell 3"; req_access = list(2)},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/security/brig) -"amp" = (/obj/structure/table/woodentable,/obj/item/ashtray/bronze,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/device/flash,/obj/item/weapon/handcuffs,/turf/simulated/floor/carpet,/area/security/detectives_office) +"amp" = (/obj/structure/table/standard,/obj/item/weapon/material/ashtray/plastic,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "amq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/security/detectives_office) "amr" = (/obj/item/weapon/storage/secure/safe{pixel_x = 35; pixel_y = 5},/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "ams" = (/obj/machinery/door/airlock/glass_security{id_tag = "prisonexit"; name = "Brig Exit"; req_access = list(2)},/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"},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/prison) @@ -703,7 +703,7 @@ "anA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/lobby) "anB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/security/lobby) "anC" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/lobby) -"anD" = (/obj/structure/table/reinforced,/obj/item/weapon/pen/blue{pixel_x = -5; pixel_y = -1},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = 3},/obj/item/ashtray/plastic{pixel_x = 4; pixel_y = 6},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) +"anD" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table/reinforced,/obj/item/weapon/pen/blue{pixel_x = -5; pixel_y = -1},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = 3},/obj/item/weapon/material/ashtray/plastic{pixel_x = 4; pixel_y = 6},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "anE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "anF" = (/obj/structure/table/reinforced,/obj/machinery/photocopier/faxmachine{anchored = 0; department = "Internal Affairs"},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "anG" = (/turf/simulated/wall/r_wall,/area/security/detectives_office) @@ -840,7 +840,7 @@ "aqh" = (/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{icon_state = "cult"; dir = 2},/area/lawoffice) "aqi" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "aqj" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) -"aqk" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table/reinforced,/obj/item/weapon/pen/blue{pixel_x = -5; pixel_y = -1},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = 3},/obj/item/ashtray/plastic{pixel_x = 4; pixel_y = 6},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) +"aqk" = (/obj/structure/table/reinforced,/obj/item/weapon/pen/blue{pixel_x = -5; pixel_y = -1},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = 3},/obj/item/weapon/material/ashtray/plastic{pixel_x = 4; pixel_y = 6},/turf/simulated/floor{icon_state = "cult"; dir = 2},/area/lawoffice) "aql" = (/obj/machinery/computer/med_data,/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) "aqm" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = 1443; icon_state = "on"; id = "air_in"; use_power = 1},/obj/structure/bed/chair,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/prison) "aqn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor{icon_state = "white"},/area/security/detectives_office) @@ -2188,7 +2188,7 @@ "aQd" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Central - Northwest"},/turf/simulated/floor{dir = 4; icon_state = "bluecorner"},/area/hallway/primary/central_one) "aQe" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aQf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet,/area/crew_quarters/bar) -"aQg" = (/obj/machinery/light/small{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/obj/structure/table/woodentable,/obj/item/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/simulated/floor/carpet,/area/crew_quarters/bar) +"aQg" = (/obj/machinery/light/small{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/obj/structure/table/woodentable,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aQh" = (/obj/structure/kitchenspike,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "aQi" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "aQj" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) @@ -3702,7 +3702,7 @@ "btj" = (/obj/machinery/light,/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry/aft) "btk" = (/obj/machinery/disposal/deliveryChute{dir = 1; name = "disposal inlet"},/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/disposal) "btl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/disposal) -"btm" = (/obj/machinery/camera/network/civilian_west{c_tag = "Waste Disposal"; dir = 8},/obj/item/ashtray/plastic{pixel_x = 5; pixel_y = -5},/obj/effect/decal/cleanable/ash,/obj/item/weapon/cigbutt/cigarbutt,/turf/simulated/floor/plating,/area/maintenance/disposal) +"btm" = (/obj/machinery/camera/network/civilian_west{c_tag = "Waste Disposal"; dir = 8},/obj/item/weapon/material/ashtray/plastic{pixel_x = 5; pixel_y = -5},/obj/effect/decal/cleanable/ash,/obj/item/weapon/cigbutt/cigarbutt,/turf/simulated/floor/plating,/area/maintenance/disposal) "btn" = (/turf/space,/area/supply/station) "bto" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) "btp" = (/obj/machinery/status_display{density = 0; pixel_x = 0; pixel_y = 32},/obj/structure/closet/emcloset,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) @@ -7461,13 +7461,13 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfagBafYajFafYajGajHalfajJajKajLajMajNajOajPajQajRajSajTajUajVajWajXajUajYajWajWajZakaakaakbakcakdahOakeajbakgajzakhakiakjalnaklakmaknakoakpalqakZakqabOaaaaaaaaaaaaaaaaaaaaaaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafabQaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaamaamaaIaamaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWagWagWagWagWagWaksaktakuakvakwakxakyakzalrakBakCakDakXalvakwakGakwakwakHakIakJakKakLakMalxakOakPakJakQalNakSakTakUalbalPalCakYakoalIabbalOabZactaaaaaaaaaaafaaaaaaaaaaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaIaaIaaIaaIaaaaaaaaaabpaaaaaaaaaaaIaaIaamaamaamaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaaaaaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWalcaldalZalQagWalgalhahLalialjagWacTamoacTagWabVamsabUagWalpamuamtalsagDaltaluamxalwamyagWabTabSabSabRagWalBamcalDalEalFalGalHakoamAanQamDanQanQaaaaaaaafaafaaaaaaaaaaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqaaaaaaaafaafaafaaaaaaaoYaafaafaaaaafaafaaaaaaaamaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafabMaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafabfadEabWalMalMamHamFamMamJalRahKalSaljagWalTalUalValWalXalYamNamOahKambahKamPabYameameamfamgamhamiamjamkamlammakoamnamUampamqalDalDamrakoadQanQamvawKamwaaaaaaaaLaaaaaaaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafabMaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafabfadEabWalMalMamHamFamMamJalRahKalSaljagWalTalUalValWalXalYamNamOahKambahKamPabYameameamfamgamhamiamjamkamlammakoamnamUahMamqalDalDamrakoadQanQamvawKamwaaaaaaaaLaaaaaaaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaamaaIaaIaaaaaaaaaaoXaaaaaaaaaaaIaaIaamaamaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfadEagWamWamBamCamZagWankalRaljanlamGagWamRamIanmalWamKamLannaiNaiSanPaiManaajkamgamgamfamgamTaoWamVanfamXanhakoaoeanWalDamqalDalDanbakoancandaneaocangaafaaLaafaafaaLaafaafaafakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafaaaaaaaaaaoVaafaafaaaaafaafaaaaaaaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaofagWagWagWagWagWagWaqqaqXagWagWagWagWaoRaoSaoRalWaoTaoUapealWapfapiaplanzanAamgamgamfanBanCamianDanEamXanFanGanHanIanJanKanLanManNanGanOaoPapqanRanSaaaaaaaafaaaaafaaLaafaacakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafaaaaaaaaaaoVaafaafaaaaafaafaaaaaaaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaofagWagWagWagWagWagWaqqaqXagWagWagWagWaoRaoSaoRalWaoTaoUapealWapfapiaplanzanAamgamgamfanBanCamiaqkanEamXanFanGanHanIanJanKanLanManNanGanOaoPapqanRanSaaaaaaaafaaaaafaaLaafaacakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanXanYanZaoaagDaekaoZagWaoCapdalKaogappaoiapDaokaolaonaonaooaonaopaoqaoGaoMaoOaiqamgamgaouaovaowamiaoxaqgamXaoyanGaozaoAaoBaoQaoDaoEaoFanGaqCanQanQanQanQaoIaoJaoHaoLaqJaaaaafaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalJaaaaaaaaaaafaaaaaaaaaaamaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaaaaaaaacaaaaaaaaaanXanXapaapbagDalMapcaqPaohaodanvanramSaomaosaosaotaojaonapmapnaoraonapoaonaoNapEapramgamfamgamTaraamYanEamXaptanGapuapvapwapxapyapzapAanGapBaoHapCapLapGapFapPaoHaoHarjaoHaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapJapJapJapJapJaafalkaafapJapJapJapJapJaafaaIaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaapKapaapbagDapUapMagWalgapNalKapOapVapQapRaokapSaqmaqcaqpapWapXapYapZaqaanUaqNaqdaovaqeaovaqfarnaqhaqiaqjaqkanGaqlaqWapyaqnaqoarlaqoaroaqraqsapFaqtaquapFailaoHaqwaqxaqyaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalkaaaaaaaaaaafaaaaaaaaaaaqaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqAaqBagDagWagWagWarvalRagWalWalWalWahbaqEapkahCahDahMaonaqIagnaqKahaanyarMaqOaryaqQaqRaqSanxaqUaqVarQamVanGarzaqYaqZafDaflafMardanGarearfapFaqtaqtapFaifaoHarhariarFaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaaaaaaaaaabgaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapJapJapJapJapJaafalkaafapJapJapJapJapJaafaaIaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaapKapaapbagDapUapMagWalgapNalKapOapVapQapRaokapSaqmaqcaqpapWapXapYapZaqaanUaqNaqdaovaqeaovaqfarnaqhaqiaqjanDanGaqlaqWapyaqnaqoarlaqoaroaqraqsapFaqtaquapFailaoHaqwaqxaqyaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafalkaaaaaaaaaaafaaaaaaaaaaaqaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqAaqBagDagWagWagWarvalRagWalWalWalWahbaqEapkahCahDampaonaqIagnaqKahaanyarMaqOaryaqQaqRaqSanxaqUaqVarQamVanGarzaqYaqZafDaflafMardanGarearfapFaqtaqtapFaifaoHarhariarFaoHaaaakrakrakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafapIapIapIapIapIaafalJaafapIapIapIapIapIaafaaIaaaaaaaaaaaaabgaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafanVanVanVanVanVaafalkaafanVanVanVanVanVaafaaIaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaqzarkaqBagDaekarHagWarmarOalKaogarPaoiaokarparqaesaeRaeraonarualWarZarSarxalLasnarAasBamzasOarEasRarGasWamjanGanGarIanGanGanGanGanGanGarJarKarLasaasaapFarNaoHaoHasXaoHaoHaaaaaaakrakrakraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaaaalJaaaaaaaaaaafaaaaaaaaaaamaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLasYaaLaaaaaaaaaaaaaaaaaaaaaaaIaafalzalyalyalyalyalAalkallaivaivaivaivagEaafaaIaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaqzataaqBagDarRapcatiarTarUatIapharWaloaonaonarYasFasyasMaonascalWasdasealmasgasharAasiasjaskarEaoHaoHaoHaoHaoHaslatQatJasoasoaspaspasqasrassastastasuasvasvaswasxatXaszaqsaaaaafaafaafaaaaaaaafaafaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaIaafanTanTanTanTanTaafalJaafanTanTanTanTanTaafaaIaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafasAauiasAaaaaaaaaaaaaaaaaaaaaaaaIaafapJapJapJapJapJaafalkaafapJapJapJapJapJaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasCasbapbagDapUapMagWaZtasEalKapOasPaoiasGasGasHasIaonasJaonasKalWasLatgaZuathauuarAasQauvasSarEasTasUasUasVauSasVavCavbasZasZasZasZasZasZasZasZasZasmavFatbatcaoKatdateatfaaaaafatPatratjatjatjatjavRatjatjatjatjatUaafaaaaaaaaaaaaaamaafanianjanjanjanjanualJansanqanqanqanqanwaafaaIaaaaaaaaaaaaaaaaaaaaaaaaaihaihaihaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/exodus-2.dmm b/maps/exodus-2.dmm index 64dc9e9cee..f42d980970 100644 --- a/maps/exodus-2.dmm +++ b/maps/exodus-2.dmm @@ -1494,7 +1494,7 @@ "CL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/holding) "CM" = (/obj/structure/window/shuttle{icon_state = "window3"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) "CN" = (/turf/unsimulated/wall,/area/centcom/holding) -"CO" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) +"CO" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) "CP" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) "CQ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/holding) "CR" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "greencorner"; dir = 1},/area/centcom/holding) @@ -1587,7 +1587,7 @@ "EA" = (/turf/simulated/shuttle/wall{icon_state = "swall7"; dir = 2},/area/shuttle/escape/centcom) "EB" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/shuttle/escape/centcom) "EC" = (/turf/unsimulated/floor{icon_state = "warning"},/area/centcom/holding) -"ED" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) +"ED" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/holding) "EE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/holding) "EF" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-beach (SOUTHEAST)"; icon_state = "beach"; dir = 6},/area/centcom/holding) "EG" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/holding) From 18c0760c56e11bdceee4c24c501e97403afc018e Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sun, 17 May 2015 18:22:30 +0930 Subject: [PATCH 146/199] Changelog. --- html/changelogs/Zuhayr-materials.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 html/changelogs/Zuhayr-materials.yml diff --git a/html/changelogs/Zuhayr-materials.yml b/html/changelogs/Zuhayr-materials.yml new file mode 100644 index 0000000000..78d873857c --- /dev/null +++ b/html/changelogs/Zuhayr-materials.yml @@ -0,0 +1,7 @@ +author: Zuhayr +delete-after: True +changes: + - rscadd: "Massive material refactor. Walls, beds, chairs, stools, tables, ashtrays, knives, baseball bats, axes, simple doors, barricades, so on." + - rscadd: "Tables are now built via steel then another sheet on the resulting frame. They can then be reinforced by dragging a stack of sheets onto the table." + - rscadd: "Walls are built with steel for girders, then right-click the girder and select the reinforce verb while holding a stack, then click the girders with a final sheet." + - rscadd: "Various things can be built with various sheet types. Experiment! Just keep in mind that uranium is now radioactive and phoron is now flammable." \ No newline at end of file From 1c32612dbdf8a0eb40436c61686ee0f8b66ee0b0 Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Sun, 17 May 2015 11:30:29 +0200 Subject: [PATCH 147/199] Updates changelog. --- html/changelog.html | 6 ++++++ html/changelogs/.all_changelog.yml | 3 +++ html/changelogs/PsiOmegaDelta-ArtifactTele-150516.yml | 5 ----- 3 files changed, 9 insertions(+), 5 deletions(-) delete mode 100644 html/changelogs/PsiOmegaDelta-ArtifactTele-150516.yml diff --git a/html/changelog.html b/html/changelog.html index 83d87d57b3..fcd40835d2 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,12 @@ -->
    +

    17 May 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Teleporter artifacts should no longer teleport mobs inside objects.
    • +
    +

    16 May 2015

    GinjaNinja32 updated: