From e1918d68b4aad02f8f63d4fccc11267d39413190 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Fri, 5 Apr 2019 02:07:06 -0700 Subject: [PATCH 001/370] Update communications.dm --- code/game/machinery/computer/communications.dm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index 43f5b96fbd..c40f543433 100755 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -173,14 +173,15 @@ var/obj/machinery/shuttle_manipulator/M = locate() in GLOB.machines if(M) SSshuttle.shuttle_purchased = TRUE + SSshuttle.points -= S.credit_cost + minor_announce("[usr.real_name] has purchased [S.name] for [S.credit_cost] credits." , "Shuttle Purchase") + message_and_log_admins("[ADMIN_LOOKUPFLW(usr)] purchased [S.name].") + SSblackbox.record_feedback("text", "shuttle_purchase", 1, "[S.name]") M.unload_preview() M.load_template(S) M.existing_shuttle = SSshuttle.emergency M.action_load(S) - SSshuttle.points -= S.credit_cost - minor_announce("[usr.real_name] has purchased [S.name] for [S.credit_cost] credits." , "Shuttle Purchase") - message_admins("[ADMIN_LOOKUPFLW(usr)] purchased [S.name].") - SSblackbox.record_feedback("text", "shuttle_purchase", 1, "[S.name]") + message_and_log_admins("[S.name] loaded, purchased by [usr]") else to_chat(usr, "Something went wrong! The shuttle exchange system seems to be down.") else From 040238d7ed3bbfa1142db7cc8fa887dd6bf99f63 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Fri, 5 Apr 2019 02:44:29 -0700 Subject: [PATCH 002/370] Update communications.dm --- code/game/machinery/computer/communications.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index c40f543433..752765baa1 100755 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -175,13 +175,13 @@ SSshuttle.shuttle_purchased = TRUE SSshuttle.points -= S.credit_cost minor_announce("[usr.real_name] has purchased [S.name] for [S.credit_cost] credits." , "Shuttle Purchase") - message_and_log_admins("[ADMIN_LOOKUPFLW(usr)] purchased [S.name].") + message_admins("[ADMIN_LOOKUPFLW(usr)] purchased [S.name].") SSblackbox.record_feedback("text", "shuttle_purchase", 1, "[S.name]") M.unload_preview() M.load_template(S) M.existing_shuttle = SSshuttle.emergency M.action_load(S) - message_and_log_admins("[S.name] loaded, purchased by [usr]") + message_admins("[S.name] loaded, purchased by [usr]") else to_chat(usr, "Something went wrong! The shuttle exchange system seems to be down.") else From 8b75240d89f67858a99b566b7056c5f22b05249a Mon Sep 17 00:00:00 2001 From: deathride58 Date: Thu, 11 Apr 2019 17:07:11 -0400 Subject: [PATCH 003/370] fuck atmos - attempts to optimize atmos by removing GAS_META from the gas mixture meta list and removing the usage of gas archive --- code/__DEFINES/atmospherics.dm | 6 +- code/datums/diseases/advance/symptoms/heal.dm | 6 +- code/datums/helper_datums/teleport.dm | 4 +- code/game/gamemodes/objective_items.dm | 2 +- code/game/machinery/computer/atmos_control.dm | 4 +- .../game/mecha/equipment/tools/other_tools.dm | 4 +- code/game/mecha/mecha.dm | 4 +- .../effects/effect_system/effects_foam.dm | 6 +- .../effects/effect_system/effects_smoke.dm | 4 +- .../objects/effects/spawners/bombspawner.dm | 4 +- code/game/objects/items/chrono_eraser.dm | 4 +- code/game/objects/items/devices/PDA/PDA.dm | 4 +- code/game/objects/items/devices/scanners.dm | 32 ++-- code/game/objects/items/flamethrower.dm | 2 +- code/game/objects/items/tanks/jetpack.dm | 2 +- code/game/objects/items/tanks/tank_types.dm | 22 +-- .../structures/transit_tubes/station.dm | 4 +- .../transit_tubes/transit_tube_pod.dm | 4 +- code/game/turfs/change_turf.dm | 4 +- code/game/turfs/open.dm | 8 +- code/modules/admin/verbs/debug.dm | 2 +- code/modules/admin/verbs/diagnostics.dm | 5 +- code/modules/assembly/bomb.dm | 2 +- .../atmospherics/environmental/LINDA_fire.dm | 10 +- .../environmental/LINDA_turf_tile.dm | 12 +- .../atmospherics/gasmixtures/gas_mixture.dm | 65 +++----- .../gasmixtures/immutable_mixtures.dm | 5 +- .../atmospherics/gasmixtures/reactions.dm | 110 +++++++------- .../atmospherics/machinery/airalarm.dm | 8 +- .../components/trinary_devices/filter.dm | 4 +- .../components/unary_devices/cryo.dm | 6 +- .../components/unary_devices/tank.dm | 8 +- .../components/unary_devices/vent_scrubber.dm | 4 +- .../atmospherics/machinery/datum_pipeline.dm | 4 +- .../atmospherics/machinery/other/miner.dm | 2 +- .../machinery/portable/canister.dm | 12 +- .../machinery/portable/scrubber.dm | 4 +- code/modules/cargo/bounties/engineering.dm | 2 +- code/modules/events/spacevine.dm | 8 +- code/modules/hydroponics/grown/towercap.dm | 2 +- .../subtypes/atmospherics.dm | 6 +- .../integrated_electronics/subtypes/input.dm | 4 +- code/modules/mob/living/carbon/alien/life.dm | 10 +- .../carbon/human/species_types/plasmamen.dm | 2 +- code/modules/mob/living/carbon/life.dm | 28 ++-- code/modules/mob/living/life.dm | 2 +- .../mob/living/silicon/pai/software.dm | 4 +- .../mob/living/simple_animal/hostile/tree.dm | 142 +++++++++--------- .../mob/living/simple_animal/simple_animal.dm | 8 +- .../mob/living/simple_animal/slime/life.dm | 2 +- code/modules/mob/mob.dm | 4 +- .../file_system/programs/sm_monitor.dm | 6 +- code/modules/power/singularity/collector.dm | 13 +- code/modules/power/supermatter/supermatter.dm | 14 +- .../xenobiology/crossbreeding/chilling.dm | 2 +- code/modules/surgery/organs/lungs.dm | 66 ++++---- .../living/silicon/robot/dogborg_equipment.dm | 12 +- 57 files changed, 347 insertions(+), 383 deletions(-) diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index b5ba44d956..e593cfef82 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -243,8 +243,7 @@ //HELPERS #define THERMAL_ENERGY(gas) (gas.temperature * gas.heat_capacity()) -#define ADD_GAS(gas_id, out_list)\ - var/list/tmp_gaslist = GLOB.gaslist_cache[gas_id]; out_list[gas_id] = tmp_gaslist.Copy(); +#define ADD_GAS(gas_id, out_list) out_list[gas_id] = 0; #define ASSERT_GAS(gas_id, gas_mixture) if (!gas_mixture.gases[gas_id]) { ADD_GAS(gas_id, gas_mixture.gases) }; @@ -253,9 +252,10 @@ #define TOTAL_MOLES(cached_gases, out_var)\ out_var = 0;\ for(var/total_moles_id in cached_gases){\ - out_var += cached_gases[total_moles_id][MOLES];\ + out_var += cached_gases[total_moles_id];\ } +#define ARCHIVE_TEMPERATURE(gas) gas.temperature_archived = gas.temperature GLOBAL_LIST_INIT(pipe_paint_colors, list( "amethyst" = rgb(130,43,255), //supplymain diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 0ace2ca8fd..9f3049dddd 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -364,15 +364,15 @@ /datum/symptom/heal/plasma/CanHeal(datum/disease/advance/A) var/mob/living/M = A.affected_mob var/datum/gas_mixture/environment - var/list/gases + var/plasmamount . = 0 if(M.loc) environment = M.loc.return_air() if(environment) - gases = environment.gases - if(gases["plasma"] && gases["plasma"][MOLES] > gases["plasma"][GAS_META][META_GAS_MOLES_VISIBLE]) //if there's enough plasma in the air to see + plasmamount = environment.gases["plasma"] + if(plasmamount && plasmamount > GLOB.meta_gas_info[/datum/gas/plasma][META_GAS_MOLES_VISIBLE]) //if there's enough plasma in the air to see . += power * 0.5 if(M.reagents.has_reagent("plasma")) . += power * 0.75 diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index d673cdb16d..0623e2f5f9 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -103,11 +103,11 @@ // Can most things breathe? if(trace_gases) continue - if(!(A_gases[/datum/gas/oxygen] && A_gases[/datum/gas/oxygen][MOLES] >= 16)) + if(A_gases[/datum/gas/oxygen] >= 16) continue if(A_gases[/datum/gas/plasma]) continue - if(A_gases[/datum/gas/carbon_dioxide] && A_gases[/datum/gas/carbon_dioxide][MOLES] >= 10) + if(A_gases[/datum/gas/carbon_dioxide] >= 10) continue // Aim for goldilocks temperatures and pressure diff --git a/code/game/gamemodes/objective_items.dm b/code/game/gamemodes/objective_items.dm index 6603bb3604..e56495d808 100644 --- a/code/game/gamemodes/objective_items.dm +++ b/code/game/gamemodes/objective_items.dm @@ -124,7 +124,7 @@ /datum/objective_item/steal/plasma/check_special_completion(obj/item/tank/T) var/target_amount = text2num(name) var/found_amount = 0 - found_amount += T.air_contents.gases[/datum/gas/plasma] ? T.air_contents.gases[/datum/gas/plasma][MOLES] : 0 + found_amount += T.air_contents.gases[/datum/gas/plasma] return found_amount>=target_amount diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm index baa6fa577e..191498e4e9 100644 --- a/code/game/machinery/computer/atmos_control.dm +++ b/code/game/machinery/computer/atmos_control.dm @@ -59,8 +59,8 @@ var/total_moles = air_sample.total_moles() if(total_moles) for(var/gas_id in air_sample.gases) - var/gas_name = air_sample.gases[gas_id][GAS_META][META_GAS_NAME] - signal.data["gases"][gas_name] = air_sample.gases[gas_id][MOLES] / total_moles * 100 + var/gas_name = GLOB.meta_gas_info[gas_id][META_GAS_NAME] + signal.data["gases"][gas_name] = air_sample.gases[gas_id] / total_moles * 100 radio_connection.post_signal(src, signal, filter = RADIO_ATMOSIA) diff --git a/code/game/mecha/equipment/tools/other_tools.dm b/code/game/mecha/equipment/tools/other_tools.dm index 1a3886c3df..e118ca81fd 100644 --- a/code/game/mecha/equipment/tools/other_tools.dm +++ b/code/game/mecha/equipment/tools/other_tools.dm @@ -423,12 +423,12 @@ var/datum/gas_mixture/GM = new GM.add_gas(/datum/gas/plasma) if(prob(10)) - GM.gases[/datum/gas/plasma][MOLES] += 100 + GM.gases[/datum/gas/plasma] += 100 GM.temperature = 1500+T0C //should be enough to start a fire T.visible_message("[src] suddenly disgorges a cloud of heated plasma.") qdel(src) else - GM.gases[/datum/gas/plasma][MOLES] += 5 + GM.gases[/datum/gas/plasma] += 5 GM.temperature = istype(T) ? T.air.return_temperature() : T20C T.visible_message("[src] suddenly disgorges a cloud of plasma.") T.assume_air(GM) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index d5de4a4898..ecd0cbe922 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -238,8 +238,8 @@ cabin_air.temperature = T20C cabin_air.volume = 200 cabin_air.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) - cabin_air.gases[/datum/gas/oxygen][MOLES] = O2STANDARD*cabin_air.volume/(R_IDEAL_GAS_EQUATION*cabin_air.temperature) - cabin_air.gases[/datum/gas/nitrogen][MOLES] = N2STANDARD*cabin_air.volume/(R_IDEAL_GAS_EQUATION*cabin_air.temperature) + cabin_air.gases[/datum/gas/oxygen] = O2STANDARD*cabin_air.volume/(R_IDEAL_GAS_EQUATION*cabin_air.temperature) + cabin_air.gases[/datum/gas/nitrogen] = N2STANDARD*cabin_air.volume/(R_IDEAL_GAS_EQUATION*cabin_air.temperature) return cabin_air /obj/mecha/proc/add_radio() diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index 264715e2ac..1118ff3609 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -40,8 +40,8 @@ if(hotspot && istype(T) && T.air) qdel(hotspot) var/datum/gas_mixture/G = T.air - var/plas_amt = min(30,G.gases[/datum/gas/plasma][MOLES]) //Absorb some plasma - G.gases[/datum/gas/plasma][MOLES] -= plas_amt + var/plas_amt = min(30,G.gases[/datum/gas/plasma]) //Absorb some plasma + G.gases[/datum/gas/plasma] -= plas_amt absorbed_plasma += plas_amt if(G.temperature > T20C) G.temperature = max(G.temperature/2,T20C) @@ -324,7 +324,7 @@ for(var/I in G_gases) if(I == /datum/gas/oxygen || I == /datum/gas/nitrogen) continue - G_gases[I][MOLES] = 0 + G_gases[I] = 0 G.garbage_collect() O.air_update_turf() for(var/obj/machinery/atmospherics/components/unary/U in O) diff --git a/code/game/objects/effects/effect_system/effects_smoke.dm b/code/game/objects/effects/effect_system/effects_smoke.dm index e8e833890b..9933d49e0d 100644 --- a/code/game/objects/effects/effect_system/effects_smoke.dm +++ b/code/game/objects/effects/effect_system/effects_smoke.dm @@ -173,8 +173,8 @@ var/list/G_gases = G.gases if(G_gases[/datum/gas/plasma]) G.assert_gas(/datum/gas/nitrogen) - G_gases[/datum/gas/nitrogen][MOLES] += (G_gases[/datum/gas/plasma][MOLES]) - G_gases[/datum/gas/plasma][MOLES] = 0 + G_gases[/datum/gas/nitrogen] += (G_gases[/datum/gas/plasma]) + G_gases[/datum/gas/plasma] = 0 G.garbage_collect() if (weldvents) for(var/obj/machinery/atmospherics/components/unary/U in T) diff --git a/code/game/objects/effects/spawners/bombspawner.dm b/code/game/objects/effects/spawners/bombspawner.dm index b1bb3e6b4d..0d3818ff5f 100644 --- a/code/game/objects/effects/spawners/bombspawner.dm +++ b/code/game/objects/effects/spawners/bombspawner.dm @@ -20,11 +20,11 @@ var/obj/item/tank/internals/oxygen/OT = new(V) PT.air_contents.assert_gas(/datum/gas/plasma) - PT.air_contents.gases[/datum/gas/plasma][MOLES] = pressure_p*PT.volume/(R_IDEAL_GAS_EQUATION*CELSIUS_TO_KELVIN(temp_p)) + PT.air_contents.gases[/datum/gas/plasma] = pressure_p*PT.volume/(R_IDEAL_GAS_EQUATION*CELSIUS_TO_KELVIN(temp_p)) PT.air_contents.temperature = CELSIUS_TO_KELVIN(temp_p) OT.air_contents.assert_gas(/datum/gas/oxygen) - OT.air_contents.gases[/datum/gas/oxygen][MOLES] = pressure_o*OT.volume/(R_IDEAL_GAS_EQUATION*CELSIUS_TO_KELVIN(temp_o)) + OT.air_contents.gases[/datum/gas/oxygen] = pressure_o*OT.volume/(R_IDEAL_GAS_EQUATION*CELSIUS_TO_KELVIN(temp_o)) OT.air_contents.temperature = CELSIUS_TO_KELVIN(temp_o) V.tank_one = PT diff --git a/code/game/objects/items/chrono_eraser.dm b/code/game/objects/items/chrono_eraser.dm index f7c37715aa..57d30fede6 100644 --- a/code/game/objects/items/chrono_eraser.dm +++ b/code/game/objects/items/chrono_eraser.dm @@ -249,8 +249,8 @@ /obj/effect/chrono_field/return_air() //we always have nominal air and temperature var/datum/gas_mixture/GM = new GM.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) - GM.gases[/datum/gas/oxygen][MOLES] = MOLES_O2STANDARD - GM.gases[/datum/gas/nitrogen][MOLES] = MOLES_N2STANDARD + GM.gases[/datum/gas/oxygen] = MOLES_O2STANDARD + GM.gases[/datum/gas/nitrogen] = MOLES_N2STANDARD GM.temperature = T20C return GM diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 9ff717816c..29cd150fd3 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -358,9 +358,9 @@ GLOBAL_LIST_EMPTY(PDAs) if (total_moles) for(var/id in env_gases) - var/gas_level = env_gases[id][MOLES]/total_moles + var/gas_level = env_gases[id]/total_moles if(gas_level > 0) - dat += "[env_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_level*100, 0.01)]%
" + dat += "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_level*100, 0.01)]%
" dat += "Temperature: [round(environment.temperature-T0C)]°C
" dat += "
" diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 5a68a8423a..3cbb9dfe93 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -420,38 +420,38 @@ SLIME SCANNER var/list/env_gases = environment.gases environment.assert_gases(arglist(GLOB.hardcoded_gases)) - var/o2_concentration = env_gases[/datum/gas/oxygen][MOLES]/total_moles - var/n2_concentration = env_gases[/datum/gas/nitrogen][MOLES]/total_moles - var/co2_concentration = env_gases[/datum/gas/carbon_dioxide][MOLES]/total_moles - var/plasma_concentration = env_gases[/datum/gas/plasma][MOLES]/total_moles + var/o2_concentration = env_gases[/datum/gas/oxygen]/total_moles + var/n2_concentration = env_gases[/datum/gas/nitrogen]/total_moles + var/co2_concentration = env_gases[/datum/gas/carbon_dioxide]/total_moles + var/plasma_concentration = env_gases[/datum/gas/plasma]/total_moles if(abs(n2_concentration - N2STANDARD) < 20) - to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/nitrogen][MOLES], 0.01)] mol)") + to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/nitrogen], 0.01)] mol)") else - to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/nitrogen][MOLES], 0.01)] mol)") + to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/nitrogen], 0.01)] mol)") if(abs(o2_concentration - O2STANDARD) < 2) - to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/oxygen][MOLES], 0.01)] mol)") + to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/oxygen], 0.01)] mol)") else - to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/oxygen][MOLES], 0.01)] mol)") + to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/oxygen], 0.01)] mol)") if(co2_concentration > 0.01) - to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/carbon_dioxide][MOLES], 0.01)] mol)") + to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/carbon_dioxide], 0.01)] mol)") else - to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/carbon_dioxide][MOLES], 0.01)] mol)") + to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/carbon_dioxide], 0.01)] mol)") if(plasma_concentration > 0.005) - to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/plasma][MOLES], 0.01)] mol)") + to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/plasma], 0.01)] mol)") else - to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/plasma][MOLES], 0.01)] mol)") + to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/plasma], 0.01)] mol)") environment.garbage_collect() for(var/id in env_gases) if(id in GLOB.hardcoded_gases) continue - var/gas_concentration = env_gases[id][MOLES]/total_moles - to_chat(user, "[env_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] % ([round(env_gases[id][MOLES], 0.01)] mol)") + var/gas_concentration = env_gases[id]/total_moles + to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] % ([round(env_gases[id], 0.01)] mol)") to_chat(user, "Temperature: [round(environment.temperature-T0C, 0.01)] °C ([round(environment.temperature, 0.01)] K)") /obj/item/analyzer/AltClick(mob/user) //Barometer output for measuring when the next storm happens @@ -541,8 +541,8 @@ SLIME SCANNER var/list/cached_gases = air_contents.gases for(var/id in cached_gases) - var/gas_concentration = cached_gases[id][MOLES]/total_moles - to_chat(user, "[cached_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] % ([round(cached_gases[id][MOLES], 0.01)] mol)") + var/gas_concentration = cached_gases[id]/total_moles + to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] % ([round(cached_gases[id], 0.01)] mol)") to_chat(user, "Temperature: [round(temperature - T0C,0.01)] °C ([round(temperature, 0.01)] K)") else diff --git a/code/game/objects/items/flamethrower.dm b/code/game/objects/items/flamethrower.dm index 2635955a15..fd51ecf26b 100644 --- a/code/game/objects/items/flamethrower.dm +++ b/code/game/objects/items/flamethrower.dm @@ -205,7 +205,7 @@ //Transfer 5% of current tank air contents to turf var/datum/gas_mixture/air_transfer = ptank.air_contents.remove_ratio(release_amount) if(air_transfer.gases[/datum/gas/plasma]) - air_transfer.gases[/datum/gas/plasma][MOLES] *= 5 + air_transfer.gases[/datum/gas/plasma] *= 5 target.assume_air(air_transfer) //Burn it based on transfered gas target.hotspot_expose((ptank.air_contents.temperature*2) + 380,500) diff --git a/code/game/objects/items/tanks/jetpack.dm b/code/game/objects/items/tanks/jetpack.dm index b3ee748d13..0707913bd5 100644 --- a/code/game/objects/items/tanks/jetpack.dm +++ b/code/game/objects/items/tanks/jetpack.dm @@ -18,7 +18,7 @@ ..() if(gas_type) air_contents.assert_gas(gas_type) - air_contents.gases[gas_type][MOLES] = (6 * ONE_ATMOSPHERE) * volume / (R_IDEAL_GAS_EQUATION * T20C) + air_contents.gases[gas_type] = (6 * ONE_ATMOSPHERE) * volume / (R_IDEAL_GAS_EQUATION * T20C) ion_trail = new ion_trail.set_up(src) diff --git a/code/game/objects/items/tanks/tank_types.dm b/code/game/objects/items/tanks/tank_types.dm index f4eb763847..3fcd8a7656 100644 --- a/code/game/objects/items/tanks/tank_types.dm +++ b/code/game/objects/items/tanks/tank_types.dm @@ -22,7 +22,7 @@ /obj/item/tank/internals/oxygen/New() ..() air_contents.assert_gas(/datum/gas/oxygen) - air_contents.gases[/datum/gas/oxygen][MOLES] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.gases[/datum/gas/oxygen] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -50,8 +50,8 @@ /obj/item/tank/internals/anesthetic/New() ..() air_contents.assert_gases(/datum/gas/oxygen, /datum/gas/nitrous_oxide) - air_contents.gases[/datum/gas/oxygen][MOLES] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD - air_contents.gases[/datum/gas/nitrous_oxide][MOLES] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD + air_contents.gases[/datum/gas/oxygen] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD + air_contents.gases[/datum/gas/nitrous_oxide] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD return /* @@ -68,8 +68,8 @@ /obj/item/tank/internals/air/New() ..() air_contents.assert_gases(/datum/gas/oxygen, /datum/gas/nitrogen) - air_contents.gases[/datum/gas/oxygen][MOLES] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD - air_contents.gases[/datum/gas/nitrogen][MOLES] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD + air_contents.gases[/datum/gas/oxygen] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD + air_contents.gases[/datum/gas/nitrogen] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD return @@ -88,7 +88,7 @@ /obj/item/tank/internals/plasma/New() ..() air_contents.assert_gas(/datum/gas/plasma) - air_contents.gases[/datum/gas/plasma][MOLES] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.gases[/datum/gas/plasma] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return /obj/item/tank/internals/plasma/attackby(obj/item/W, mob/user, params) @@ -106,7 +106,7 @@ /obj/item/tank/internals/plasma/full/New() ..() // Plasma asserted in parent - air_contents.gases[/datum/gas/plasma][MOLES] = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.gases[/datum/gas/plasma] = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -125,12 +125,12 @@ /obj/item/tank/internals/plasmaman/New() ..() air_contents.assert_gas(/datum/gas/plasma) - air_contents.gases[/datum/gas/plasma][MOLES] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.gases[/datum/gas/plasma] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return /obj/item/tank/internals/plasmaman/full/New() ..() // Plasma asserted in parent - air_contents.gases[/datum/gas/plasma][MOLES] = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.gases[/datum/gas/plasma] = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -144,7 +144,7 @@ /obj/item/tank/internals/plasmaman/belt/full/New() ..() // Plasma asserted in parent - air_contents.gases[/datum/gas/plasma][MOLES] = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.gases[/datum/gas/plasma] = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -167,7 +167,7 @@ /obj/item/tank/internals/emergency_oxygen/New() ..() air_contents.assert_gas(/datum/gas/oxygen) - air_contents.gases[/datum/gas/oxygen][MOLES] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.gases[/datum/gas/oxygen] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return /obj/item/tank/internals/emergency_oxygen/engi diff --git a/code/game/objects/structures/transit_tubes/station.dm b/code/game/objects/structures/transit_tubes/station.dm index 6015cf9f4a..c386726f34 100644 --- a/code/game/objects/structures/transit_tubes/station.dm +++ b/code/game/objects/structures/transit_tubes/station.dm @@ -152,8 +152,8 @@ pod_moving = 0 if(!QDELETED(pod)) var/datum/gas_mixture/floor_mixture = loc.return_air() - floor_mixture.archive() - pod.air_contents.archive() + ARCHIVE_TEMPERATURE(floor_mixture) + ARCHIVE_TEMPERATURE(pod.air_contents) pod.air_contents.share(floor_mixture, 1) //mix the pod's gas mixture with the tile it's on air_update_turf() diff --git a/code/game/objects/structures/transit_tubes/transit_tube_pod.dm b/code/game/objects/structures/transit_tubes/transit_tube_pod.dm index 03082cd4ba..30d6edbd12 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_pod.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_pod.dm @@ -12,8 +12,8 @@ /obj/structure/transit_tube_pod/Initialize() . = ..() air_contents.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) - air_contents.gases[/datum/gas/oxygen][MOLES] = MOLES_O2STANDARD - air_contents.gases[/datum/gas/nitrogen][MOLES] = MOLES_N2STANDARD + air_contents.gases[/datum/gas/oxygen] = MOLES_O2STANDARD + air_contents.gases[/datum/gas/nitrogen] = MOLES_N2STANDARD air_contents.temperature = T20C diff --git a/code/game/turfs/change_turf.dm b/code/game/turfs/change_turf.dm index f108a536d2..3834612466 100644 --- a/code/game/turfs/change_turf.dm +++ b/code/game/turfs/change_turf.dm @@ -298,14 +298,14 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( var/list/S_gases = S.air.gases for(var/id in S_gases) ASSERT_GAS(id, total) - total_gases[id][MOLES] += S_gases[id][MOLES] + total_gases[id] += S_gases[id] total.temperature += S.air.temperature air.copy_from(total) var/list/air_gases = air.gases for(var/id in air_gases) - air_gases[id][MOLES] /= turf_count //Averages contents of the turfs, ignoring walls and the like + air_gases[id] /= turf_count //Averages contents of the turfs, ignoring walls and the like air.temperature /= turf_count SSair.add_to_active(src) diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index 63b5f4b160..2873ab8bf5 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -289,9 +289,9 @@ /turf/open/rad_act(pulse_strength) . = ..() if (air.gases[/datum/gas/carbon_dioxide] && air.gases[/datum/gas/oxygen]) - pulse_strength = min(pulse_strength,air.gases[/datum/gas/carbon_dioxide][MOLES]*1000,air.gases[/datum/gas/oxygen][MOLES]*2000) //Ensures matter is conserved properly - air.gases[/datum/gas/carbon_dioxide][MOLES]=max(air.gases[/datum/gas/carbon_dioxide][MOLES]-(pulse_strength/1000),0) - air.gases[/datum/gas/oxygen][MOLES]=max(air.gases[/datum/gas/oxygen][MOLES]-(pulse_strength/2000),0) + pulse_strength = min(pulse_strength,air.gases[/datum/gas/carbon_dioxide]*1000,air.gases[/datum/gas/oxygen]*2000) //Ensures matter is conserved properly + air.gases[/datum/gas/carbon_dioxide]=max(air.gases[/datum/gas/carbon_dioxide]-(pulse_strength/1000),0) + air.gases[/datum/gas/oxygen]=max(air.gases[/datum/gas/oxygen]-(pulse_strength/2000),0) air.assert_gas(/datum/gas/pluoxium) - air.gases[/datum/gas/pluoxium][MOLES]+=(pulse_strength/4000) + air.gases[/datum/gas/pluoxium]+=(pulse_strength/4000) air.garbage_collect() diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 67b33afcc6..6052bc1d79 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -842,7 +842,7 @@ GLOBAL_PROTECT(AdminProcCallSpamPrevention) if(!Rad.loaded_tank) var/obj/item/tank/internals/plasma/Plasma = new/obj/item/tank/internals/plasma(Rad) Plasma.air_contents.assert_gas(/datum/gas/plasma) - Plasma.air_contents.gases[/datum/gas/plasma][MOLES] = 70 + Plasma.air_contents.gases[/datum/gas/plasma] = 70 Rad.drainratio = 0 Rad.loaded_tank = Plasma Plasma.forceMove(Rad) diff --git a/code/modules/admin/verbs/diagnostics.dm b/code/modules/admin/verbs/diagnostics.dm index 39aff33953..83651f81a7 100644 --- a/code/modules/admin/verbs/diagnostics.dm +++ b/code/modules/admin/verbs/diagnostics.dm @@ -9,10 +9,9 @@ var/list/lines = list("[AREACOORD(target)]: [env.temperature] K ([env.temperature - T0C] C), [env.return_pressure()] kPa[(burning)?(", burning"):(null)]") for(var/id in env_gases) - var/gas = env_gases[id] - var/moles = gas[MOLES] + var/moles = env_gases[id] if (moles >= 0.00001) - lines += "[gas[GAS_META][META_GAS_NAME]]: [moles] mol" + lines += "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [moles] mol" to_chat(usr, lines.Join("\n")) /client/proc/air_status(turf/target) diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index d40666babb..24ad850c74 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -144,7 +144,7 @@ /obj/item/tank/proc/ignite() //This happens when a bomb is told to explode air_contents.assert_gases(/datum/gas/plasma, /datum/gas/oxygen) - var/fuel_moles = air_contents.gases[/datum/gas/plasma][MOLES] + air_contents.gases[/datum/gas/oxygen][MOLES]/6 + var/fuel_moles = air_contents.gases[/datum/gas/plasma] + air_contents.gases[/datum/gas/oxygen]/6 air_contents.garbage_collect() var/datum/gas_mixture/bomb_mixture = air_contents.copy() var/strength = 1 diff --git a/code/modules/atmospherics/environmental/LINDA_fire.dm b/code/modules/atmospherics/environmental/LINDA_fire.dm index bf5d8efb13..d1da05e42d 100644 --- a/code/modules/atmospherics/environmental/LINDA_fire.dm +++ b/code/modules/atmospherics/environmental/LINDA_fire.dm @@ -14,9 +14,9 @@ if(!air_contents) return 0 - var/oxy = air_contents.gases[/datum/gas/oxygen] ? air_contents.gases[/datum/gas/oxygen][MOLES] : 0 - var/tox = air_contents.gases[/datum/gas/plasma] ? air_contents.gases[/datum/gas/plasma][MOLES] : 0 - var/trit = air_contents.gases[/datum/gas/tritium] ? air_contents.gases[/datum/gas/tritium][MOLES] : 0 + var/oxy = air_contents.gases[/datum/gas/oxygen] + var/tox = air_contents.gases[/datum/gas/plasma] + var/trit = air_contents.gases[/datum/gas/tritium] if(active_hotspot) if(soh) if((tox > 0.5 || trit > 0.5) && oxy > 0.5) @@ -162,7 +162,7 @@ color = list(LERP(0.3, 1, 1-greyscale_fire) * heat_r,0.3 * heat_g * greyscale_fire,0.3 * heat_b * greyscale_fire, 0.59 * heat_r * greyscale_fire,LERP(0.59, 1, 1-greyscale_fire) * heat_g,0.59 * heat_b * greyscale_fire, 0.11 * heat_r * greyscale_fire,0.11 * heat_g * greyscale_fire,LERP(0.11, 1, 1-greyscale_fire) * heat_b, 0,0,0) alpha = heat_a -#define INSUFFICIENT(path) (!location.air.gases[path] || location.air.gases[path][MOLES] < 0.5) +#define INSUFFICIENT(path) (location.air.gases[path] < 0.5) /obj/effect/hotspot/process() if(just_spawned) just_spawned = FALSE @@ -184,7 +184,7 @@ return //Not enough to burn - if(((!location.air.gases[/datum/gas/plasma] || location.air.gases[/datum/gas/plasma][MOLES] < 0.5) && (!location.air.gases[/datum/gas/tritium] || location.air.gases[/datum/gas/tritium][MOLES] < 0.5)) || location.air.gases[/datum/gas/oxygen][MOLES] < 0.5) + if((location.air.gases[/datum/gas/plasma] < 0.5 && location.air.gases[/datum/gas/tritium] < 0.5) || location.air.gases[/datum/gas/oxygen] < 0.5) qdel(src) return diff --git a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm index 45bb47ab58..0fa81970d3 100644 --- a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm +++ b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm @@ -88,7 +88,7 @@ temperature_archived = temperature /turf/open/archive() - air.archive() + ARCHIVE_TEMPERATURE(air) archived_cycle = SSair.times_fired temperature_archived = temperature @@ -121,10 +121,10 @@ if (nonoverlaying_gases[id]) continue var/gas = gases[id] - var/gas_meta = gas[GAS_META] + var/gas_meta = GLOB.meta_gas_info[id] var/gas_overlay = gas_meta[META_GAS_OVERLAY] - if(gas_overlay && gas[MOLES] > gas_meta[META_GAS_MOLES_VISIBLE]) - . += gas_overlay[min(FACTOR_GAS_VISIBLE_MAX, CEILING(gas[MOLES] / MOLES_GAS_VISIBLE_STEP, 1))] + if(gas_overlay && gas > gas_meta[META_GAS_MOLES_VISIBLE]) + . += gas_overlay[min(FACTOR_GAS_VISIBLE_MAX, CEILING(gas / MOLES_GAS_VISIBLE_STEP, 1))] /proc/typecache_of_gases_with_no_overlays() . = list() @@ -215,7 +215,7 @@ if (planet_atmos) //share our air with the "atmosphere" "above" the turf var/datum/gas_mixture/G = new G.copy_from_turf(src) - G.archive() + ARCHIVE_TEMPERATURE(G) if(our_air.compare(G)) if(!our_excited_group) var/datum/excited_group/EG = new @@ -327,7 +327,7 @@ A.merge(T.air) for(var/id in A_gases) - A_gases[id][MOLES] /= turflen + A_gases[id] /= turflen for(var/t in turf_list) var/turf/open/T = t diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 0304946111..156798bb0d 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -8,19 +8,6 @@ What are the archived variables for? #define QUANTIZE(variable) (round(variable,0.0000001))/*I feel the need to document what happens here. Basically this is used to catch most rounding errors, however it's previous value made it so that once gases got hot enough, most procedures wouldnt occur due to the fact that the mole counts would get rounded away. Thus, we lowered it a few orders of magnititude */ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm -GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) - -/proc/init_gaslist_cache() - . = list() - for(var/id in GLOB.meta_gas_info) - var/list/cached_gas = new(3) - - .[id] = cached_gas - - cached_gas[MOLES] = 0 - cached_gas[ARCHIVE] = 0 - cached_gas[GAS_META] = GLOB.meta_gas_info[id] - /datum/gas_mixture var/list/gases var/temperature = 0 //kelvins @@ -70,7 +57,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) /datum/gas_mixture/proc/garbage_collect(list/tocheck) var/list/cached_gases = gases for(var/id in (tocheck || cached_gases)) - if(QUANTIZE(cached_gases[id][MOLES]) <= 0 && QUANTIZE(cached_gases[id][ARCHIVE]) <= 0) + if(QUANTIZE(cached_gases[id]) <= 0) cached_gases -= id //PV = nRT @@ -79,8 +66,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) var/list/cached_gases = gases . = 0 for(var/id in cached_gases) - var/gas_data = cached_gases[id] - . += gas_data[data] * gas_data[GAS_META][META_GAS_SPECIFIC_HEAT] + . += cached_gases[id] * GLOB.meta_gas_info[id][META_GAS_SPECIFIC_HEAT] /datum/gas_mixture/turf/heat_capacity() . = ..() @@ -108,10 +94,6 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) /datum/gas_mixture/proc/thermal_energy() //joules return THERMAL_ENERGY(src) //see code/__DEFINES/atmospherics.dm; use the define in performance critical areas -/datum/gas_mixture/proc/archive() - //Update archived versions of variables - //Returns: 1 in all cases - /datum/gas_mixture/proc/merge(datum/gas_mixture/giver) //Merges all air from giver into self. Deletes giver. //Returns: 1 if we are mutable, 0 otherwise @@ -156,14 +138,6 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) //Performs various reactions such as combustion or fusion (LOL) //Returns: 1 if any reaction took place; 0 otherwise -/datum/gas_mixture/archive() - var/list/cached_gases = gases - - temperature_archived = temperature - for(var/id in cached_gases) - cached_gases[id][ARCHIVE] = cached_gases[id][MOLES] - - return 1 /datum/gas_mixture/merge(datum/gas_mixture/giver) if(!giver) @@ -182,7 +156,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) //gas transfer for(var/giver_id in giver_gases) ASSERT_GAS(giver_id, src) - cached_gases[giver_id][MOLES] += giver_gases[giver_id][MOLES] + cached_gases[giver_id] += giver_gases[giver_id] return 1 @@ -199,8 +173,8 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) removed.temperature = temperature for(var/id in cached_gases) ADD_GAS(id, removed.gases) - removed_gases[id][MOLES] = QUANTIZE((cached_gases[id][MOLES] / sum) * amount) - cached_gases[id][MOLES] -= removed_gases[id][MOLES] + removed_gases[id] = QUANTIZE((cached_gases[id] / sum) * amount) + cached_gases[id] -= removed_gases[id] garbage_collect() return removed @@ -217,8 +191,8 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) removed.temperature = temperature for(var/id in cached_gases) ADD_GAS(id, removed.gases) - removed_gases[id][MOLES] = QUANTIZE(cached_gases[id][MOLES] * ratio) - cached_gases[id][MOLES] -= removed_gases[id][MOLES] + removed_gases[id] = QUANTIZE(cached_gases[id] * ratio) + cached_gases[id] -= removed_gases[id] garbage_collect() @@ -232,7 +206,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) copy.temperature = temperature for(var/id in cached_gases) ADD_GAS(id, copy.gases) - copy_gases[id][MOLES] = cached_gases[id][MOLES] + copy_gases[id] = cached_gases[id] return copy @@ -244,7 +218,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) temperature = sample.temperature for(var/id in sample_gases) ASSERT_GAS(id,src) - cached_gases[id][MOLES] = sample_gases[id][MOLES] + cached_gases[id] = sample_gases[id] //remove all gases not in the sample cached_gases &= sample_gases @@ -273,7 +247,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) if(!ispath(path)) path = gas_id2path(path) //a lot of these strings can't have embedded expressions (especially for mappers), so support for IDs needs to stick around ADD_GAS(path, gases) - gases[path][MOLES] = text2num(gas[id]) + gases[path] = text2num(gas[id]) return 1 /datum/gas_mixture/share(datum/gas_mixture/sharer, atmos_adjacent_turfs = 4) @@ -302,20 +276,17 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) for(var/id in cached_gases) // transfer gases ASSERT_GAS(id, sharer) - var/gas = cached_gases[id] - var/sharergas = sharer_gases[id] - - var/delta = QUANTIZE(gas[ARCHIVE] - sharergas[ARCHIVE])/(atmos_adjacent_turfs+1) //the amount of gas that gets moved between the mixtures + var/delta = QUANTIZE(cached_gases[id] - sharer_gases[id])/(atmos_adjacent_turfs+1) //the amount of gas that gets moved between the mixtures if(delta && abs_temperature_delta > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER) - var/gas_heat_capacity = delta * gas[GAS_META][META_GAS_SPECIFIC_HEAT] + var/gas_heat_capacity = delta * GLOB.meta_gas_info[id][META_GAS_SPECIFIC_HEAT] if(delta > 0) heat_capacity_self_to_sharer += gas_heat_capacity else heat_capacity_sharer_to_self -= gas_heat_capacity //subtract here instead of adding the absolute value because we know that delta is negative. - gas[MOLES] -= delta - sharergas[MOLES] += delta + cached_gases[id] -= delta + sharer_gases[id] += delta moved_moles += delta abs_moved_moles += abs(delta) @@ -356,8 +327,8 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) sharer_temperature = sharer.temperature_archived var/temperature_delta = temperature_archived - sharer_temperature if(abs(temperature_delta) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER) - var/self_heat_capacity = heat_capacity(ARCHIVE) - sharer_heat_capacity = sharer_heat_capacity || sharer.heat_capacity(ARCHIVE) + var/self_heat_capacity = heat_capacity() + sharer_heat_capacity = sharer_heat_capacity || sharer.heat_capacity() if((sharer_heat_capacity > MINIMUM_HEAT_CAPACITY) && (self_heat_capacity > MINIMUM_HEAT_CAPACITY)) var/heat = conduction_coefficient*temperature_delta* \ @@ -376,9 +347,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) for(var/id in cached_gases | sample_gases) // compare gases from either mixture var/gas_moles = cached_gases[id] - gas_moles = gas_moles ? gas_moles[MOLES] : 0 var/sample_moles = sample_gases[id] - sample_moles = sample_moles ? sample_moles[MOLES] : 0 var/delta = abs(gas_moles - sample_moles) if(delta > MINIMUM_MOLES_DELTA_TO_MOVE && \ delta > gas_moles * MINIMUM_AIR_RATIO_TO_MOVE) @@ -425,7 +394,7 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) for(var/id in min_reqs) if (id == "TEMP" || id == "ENER") continue - if(!cached_gases[id] || cached_gases[id][MOLES] < min_reqs[id]) + if(cached_gases[id] < min_reqs[id]) continue reaction_loop //at this point, all minimum requirements for the reaction are satisfied. diff --git a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm index 08f64b5f4a..df912ff478 100644 --- a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm +++ b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm @@ -14,9 +14,6 @@ temperature_archived = initial_temperature gases.Cut() -/datum/gas_mixture/immutable/archive() - return 1 //nothing changes, so we do nothing and the archive is successful - /datum/gas_mixture/immutable/merge() return 0 //we're immutable. @@ -65,7 +62,7 @@ /datum/gas_mixture/immutable/cloner/garbage_collect() ..() ADD_GAS(/datum/gas/nitrogen, gases) - gases[/datum/gas/nitrogen][MOLES] = MOLES_O2STANDARD + MOLES_N2STANDARD + gases[/datum/gas/nitrogen] = MOLES_O2STANDARD + MOLES_N2STANDARD /datum/gas_mixture/immutable/cloner/heat_capacity() return (MOLES_O2STANDARD + MOLES_N2STANDARD)*20 //specific heat of nitrogen is 20 diff --git a/code/modules/atmospherics/gasmixtures/reactions.dm b/code/modules/atmospherics/gasmixtures/reactions.dm index 84ad1e9258..ff1c27805e 100644 --- a/code/modules/atmospherics/gasmixtures/reactions.dm +++ b/code/modules/atmospherics/gasmixtures/reactions.dm @@ -60,7 +60,7 @@ if(location && location.freon_gas_act()) . = REACTING else if(location && location.water_vapor_gas_act()) - air.gases[/datum/gas/water_vapor][MOLES] -= MOLES_GAS_VISIBLE + air.gases[/datum/gas/water_vapor] -= MOLES_GAS_VISIBLE . = REACTING //tritium combustion: combustion of oxygen and tritium (treated as hydrocarbons). creates hotspots. exothermic @@ -86,13 +86,13 @@ var/turf/open/location = isturf(holder) ? holder : null var/burned_fuel = 0 - if(cached_gases[/datum/gas/oxygen][MOLES] < cached_gases[/datum/gas/tritium][MOLES]) - burned_fuel = cached_gases[/datum/gas/oxygen][MOLES]/TRITIUM_BURN_OXY_FACTOR - cached_gases[/datum/gas/tritium][MOLES] -= burned_fuel + if(cached_gases[/datum/gas/oxygen] < cached_gases[/datum/gas/tritium]) + burned_fuel = cached_gases[/datum/gas/oxygen]/TRITIUM_BURN_OXY_FACTOR + cached_gases[/datum/gas/tritium] -= burned_fuel else - burned_fuel = cached_gases[/datum/gas/tritium][MOLES]*TRITIUM_BURN_TRIT_FACTOR - cached_gases[/datum/gas/tritium][MOLES] -= cached_gases[/datum/gas/tritium][MOLES]/TRITIUM_BURN_TRIT_FACTOR - cached_gases[/datum/gas/oxygen][MOLES] -= cached_gases[/datum/gas/tritium][MOLES] + burned_fuel = cached_gases[/datum/gas/tritium]*TRITIUM_BURN_TRIT_FACTOR + cached_gases[/datum/gas/tritium] -= cached_gases[/datum/gas/tritium]/TRITIUM_BURN_TRIT_FACTOR + cached_gases[/datum/gas/oxygen] -= cached_gases[/datum/gas/tritium] if(burned_fuel) energy_released += FIRE_HYDROGEN_ENERGY_RELEASED * burned_fuel @@ -100,7 +100,7 @@ radiation_pulse(location, energy_released/TRITIUM_BURN_RADIOACTIVITY_FACTOR) ASSERT_GAS(/datum/gas/water_vapor, air) //oxygen+more-or-less hydrogen=H2O - cached_gases[/datum/gas/water_vapor][MOLES] += burned_fuel/TRITIUM_BURN_OXY_FACTOR + cached_gases[/datum/gas/water_vapor] += burned_fuel/TRITIUM_BURN_OXY_FACTOR cached_results["fire"] += burned_fuel @@ -157,23 +157,23 @@ temperature_scale = (temperature-PLASMA_MINIMUM_BURN_TEMPERATURE)/(PLASMA_UPPER_TEMPERATURE-PLASMA_MINIMUM_BURN_TEMPERATURE) if(temperature_scale > 0) oxygen_burn_rate = OXYGEN_BURN_RATE_BASE - temperature_scale - if(cached_gases[/datum/gas/oxygen][MOLES] / cached_gases[/datum/gas/plasma][MOLES] > SUPER_SATURATION_THRESHOLD) //supersaturation. Form Tritium. + if(cached_gases[/datum/gas/oxygen] / cached_gases[/datum/gas/plasma] > SUPER_SATURATION_THRESHOLD) //supersaturation. Form Tritium. super_saturation = TRUE - if(cached_gases[/datum/gas/oxygen][MOLES] > cached_gases[/datum/gas/plasma][MOLES]*PLASMA_OXYGEN_FULLBURN) - plasma_burn_rate = (cached_gases[/datum/gas/plasma][MOLES]*temperature_scale)/PLASMA_BURN_RATE_DELTA + if(cached_gases[/datum/gas/oxygen] > cached_gases[/datum/gas/plasma]*PLASMA_OXYGEN_FULLBURN) + plasma_burn_rate = (cached_gases[/datum/gas/plasma]*temperature_scale)/PLASMA_BURN_RATE_DELTA else - plasma_burn_rate = (temperature_scale*(cached_gases[/datum/gas/oxygen][MOLES]/PLASMA_OXYGEN_FULLBURN))/PLASMA_BURN_RATE_DELTA + plasma_burn_rate = (temperature_scale*(cached_gases[/datum/gas/oxygen]/PLASMA_OXYGEN_FULLBURN))/PLASMA_BURN_RATE_DELTA if(plasma_burn_rate > MINIMUM_HEAT_CAPACITY) - plasma_burn_rate = min(plasma_burn_rate,cached_gases[/datum/gas/plasma][MOLES],cached_gases[/datum/gas/oxygen][MOLES]/oxygen_burn_rate) //Ensures matter is conserved properly - cached_gases[/datum/gas/plasma][MOLES] = QUANTIZE(cached_gases[/datum/gas/plasma][MOLES] - plasma_burn_rate) - cached_gases[/datum/gas/oxygen][MOLES] = QUANTIZE(cached_gases[/datum/gas/oxygen][MOLES] - (plasma_burn_rate * oxygen_burn_rate)) + plasma_burn_rate = min(plasma_burn_rate,cached_gases[/datum/gas/plasma],cached_gases[/datum/gas/oxygen]/oxygen_burn_rate) //Ensures matter is conserved properly + cached_gases[/datum/gas/plasma] = QUANTIZE(cached_gases[/datum/gas/plasma] - plasma_burn_rate) + cached_gases[/datum/gas/oxygen] = QUANTIZE(cached_gases[/datum/gas/oxygen] - (plasma_burn_rate * oxygen_burn_rate)) if (super_saturation) ASSERT_GAS(/datum/gas/tritium,air) - cached_gases[/datum/gas/tritium][MOLES] += plasma_burn_rate + cached_gases[/datum/gas/tritium] += plasma_burn_rate else ASSERT_GAS(/datum/gas/carbon_dioxide,air) - cached_gases[/datum/gas/carbon_dioxide][MOLES] += plasma_burn_rate + cached_gases[/datum/gas/carbon_dioxide] += plasma_burn_rate energy_released += FIRE_PLASMA_ENERGY_RELEASED * (plasma_burn_rate) @@ -231,21 +231,21 @@ var/old_heat_capacity = air.heat_capacity() var/reaction_energy = 0 - var/mediation = FUSION_MEDIATION_FACTOR*(air.heat_capacity()-(cached_gases[/datum/gas/plasma][MOLES]*cached_gases[/datum/gas/plasma][GAS_META][META_GAS_SPECIFIC_HEAT]))/(air.total_moles()-cached_gases[/datum/gas/plasma][MOLES]) //This is the average specific heat of the mixture,not including plasma. + var/mediation = FUSION_MEDIATION_FACTOR*(air.heat_capacity()-(cached_gases[/datum/gas/plasma]*GLOB.meta_gas_info[/datum/gas/plasma][META_GAS_SPECIFIC_HEAT]))/(air.total_moles()-cached_gases[/datum/gas/plasma]) //This is the average specific heat of the mixture,not including plasma. - var/gases_fused = air.total_moles() - cached_gases[/datum/gas/plasma][MOLES] - var/plasma_differential = (cached_gases[/datum/gas/plasma][MOLES] - gases_fused) / air.total_moles() + var/gases_fused = air.total_moles() - cached_gases[/datum/gas/plasma] + var/plasma_differential = (cached_gases[/datum/gas/plasma] - gases_fused) / air.total_moles() var/reaction_efficiency = FUSION_EFFICIENCY_BASE ** -((plasma_differential ** 2) / FUSION_EFFICIENCY_DIVISOR) //https://www.desmos.com/calculator/6jjx3vdrvx var/gas_power = 0 for (var/gas_id in cached_gases) - gas_power += reaction_efficiency * (cached_gases[gas_id][GAS_META][META_GAS_FUSION_POWER]*cached_gases[gas_id][MOLES]) + gas_power += reaction_efficiency * (GLOB.meta_gas_info[gas_id][META_GAS_FUSION_POWER]*cached_gases[gas_id]) var/power_ratio = gas_power/mediation cached_scan_results[id] = power_ratio //used for analyzer feedback for (var/gas_id in cached_gases) //and now we fuse - cached_gases[gas_id][MOLES] = 0 + cached_gases[gas_id] = 0 var/radiation_power = (FUSION_RADIATION_FACTOR * power_ratio) / (power_ratio + FUSION_RADIATION_CONSTANT) //https://www.desmos.com/calculator/4i1f296phl var/zap_power = ((FUSION_ZAP_POWER_ASYMPTOTE * power_ratio) / (power_ratio + FUSION_ZAP_POWER_CONSTANT)) + FUSION_ZAP_POWER_BASE //https://www.desmos.com/calculator/n0zkdpxnrr @@ -255,7 +255,7 @@ if (power_ratio > FUSION_SUPER_TIER_THRESHOLD) //power ratio 50+: SUPER TIER. The gases become so energized that they fuse into a ton of tritium, which is pretty nice! Until you consider the fact that everything just exploded, the canister is probably going to break and you're irradiated. reaction_energy += gases_fused * FUSION_RELEASE_ENERGY_SUPER * (power_ratio / FUSION_ENERGY_DIVISOR_SUPER) - cached_gases[/datum/gas/tritium][MOLES] += gases_fused * FUSION_GAS_CREATION_FACTOR_TRITIUM //60% of the gas is converted to energy, 40% to trit + cached_gases[/datum/gas/tritium] += gases_fused * FUSION_GAS_CREATION_FACTOR_TRITIUM //60% of the gas is converted to energy, 40% to trit fusion_prepare_to_die_edition_rng = 100 //Wait a minute.. do_explosion = TRUE zap_range = FUSION_ZAP_RANGE_SUPER @@ -263,8 +263,8 @@ else if (power_ratio > FUSION_HIGH_TIER_THRESHOLD) //power ratio 20-50; High tier. The reaction is so energized that it fuses into a small amount of stimulum, and some pluoxium. Very dangerous, but super cool and super useful. reaction_energy += gases_fused * FUSION_RELEASE_ENERGY_HIGH * (power_ratio / FUSION_ENERGY_DIVISOR_HIGH) air.assert_gases(/datum/gas/stimulum, /datum/gas/pluoxium) - cached_gases[/datum/gas/stimulum][MOLES] += gases_fused * FUSION_GAS_CREATION_FACTOR_STIM //40% of the gas is converted to energy, 60% to stim and pluox - cached_gases[/datum/gas/pluoxium][MOLES] += gases_fused * FUSION_GAS_CREATION_FACTOR_PLUOX + cached_gases[/datum/gas/stimulum] += gases_fused * FUSION_GAS_CREATION_FACTOR_STIM //40% of the gas is converted to energy, 60% to stim and pluox + cached_gases[/datum/gas/pluoxium] += gases_fused * FUSION_GAS_CREATION_FACTOR_PLUOX fusion_prepare_to_die_edition_rng = power_ratio //Now we're getting into dangerous territory do_explosion = TRUE zap_range = FUSION_ZAP_RANGE_HIGH @@ -272,16 +272,16 @@ else if (power_ratio > FUSION_MID_TIER_THRESHOLD) //power_ratio 5 to 20; Mediation is overpowered, fusion reaction starts to break down. reaction_energy += gases_fused * FUSION_RELEASE_ENERGY_MID * (power_ratio / FUSION_ENERGY_DIVISOR_MID) air.assert_gases(/datum/gas/nitryl,/datum/gas/nitrous_oxide) - cached_gases[/datum/gas/nitryl][MOLES] += gases_fused * FUSION_GAS_CREATION_FACTOR_NITRYL //20% of the gas is converted to energy, 80% to nitryl and N2O - cached_gases[/datum/gas/nitrous_oxide][MOLES] += gases_fused * FUSION_GAS_CREATION_FACTOR_N2O + cached_gases[/datum/gas/nitryl] += gases_fused * FUSION_GAS_CREATION_FACTOR_NITRYL //20% of the gas is converted to energy, 80% to nitryl and N2O + cached_gases[/datum/gas/nitrous_oxide] += gases_fused * FUSION_GAS_CREATION_FACTOR_N2O fusion_prepare_to_die_edition_rng = power_ratio * FUSION_MID_TIER_RAD_PROB_FACTOR //Still unlikely, but don't stand next to the reaction unprotected zap_range = FUSION_ZAP_RANGE_MID else //power ratio 0 to 5; Gas power is overpowered. Fusion isn't nearly as powerful. reaction_energy += gases_fused * FUSION_RELEASE_ENERGY_LOW * (power_ratio / FUSION_ENERGY_DIVISOR_LOW) air.assert_gases(/datum/gas/bz, /datum/gas/carbon_dioxide) - cached_gases[/datum/gas/bz][MOLES] += gases_fused * FUSION_GAS_CREATION_FACTOR_BZ //10% of the gas is converted to energy, 90% to BZ and CO2 - cached_gases[/datum/gas/carbon_dioxide][MOLES] += gases_fused * FUSION_GAS_CREATION_FACTOR_CO2 + cached_gases[/datum/gas/bz] += gases_fused * FUSION_GAS_CREATION_FACTOR_BZ //10% of the gas is converted to energy, 90% to BZ and CO2 + cached_gases[/datum/gas/carbon_dioxide] += gases_fused * FUSION_GAS_CREATION_FACTOR_CO2 fusion_prepare_to_die_edition_rng = power_ratio * FUSION_LOW_TIER_RAD_PROB_FACTOR //Low, but still something to look out for zap_range = FUSION_ZAP_RANGE_LOW @@ -322,14 +322,14 @@ var/temperature = air.temperature var/old_heat_capacity = air.heat_capacity() - var/heat_efficency = min(temperature/(FIRE_MINIMUM_TEMPERATURE_TO_EXIST*100),cached_gases[/datum/gas/oxygen][MOLES],cached_gases[/datum/gas/nitrogen][MOLES]) + var/heat_efficency = min(temperature/(FIRE_MINIMUM_TEMPERATURE_TO_EXIST*100),cached_gases[/datum/gas/oxygen],cached_gases[/datum/gas/nitrogen]) var/energy_used = heat_efficency*NITRYL_FORMATION_ENERGY ASSERT_GAS(/datum/gas/nitryl,air) - if ((cached_gases[/datum/gas/oxygen][MOLES] - heat_efficency < 0 )|| (cached_gases[/datum/gas/nitrogen][MOLES] - heat_efficency < 0)) //Shouldn't produce gas from nothing. + if ((cached_gases[/datum/gas/oxygen] - heat_efficency < 0 )|| (cached_gases[/datum/gas/nitrogen] - heat_efficency < 0)) //Shouldn't produce gas from nothing. return NO_REACTION - cached_gases[/datum/gas/oxygen][MOLES] -= heat_efficency - cached_gases[/datum/gas/nitrogen][MOLES] -= heat_efficency - cached_gases[/datum/gas/nitryl][MOLES] += heat_efficency*2 + cached_gases[/datum/gas/oxygen] -= heat_efficency + cached_gases[/datum/gas/nitrogen] -= heat_efficency + cached_gases[/datum/gas/nitryl] += heat_efficency*2 if(energy_used > 0) var/new_heat_capacity = air.heat_capacity() @@ -355,14 +355,14 @@ var/pressure = air.return_pressure() var/old_heat_capacity = air.heat_capacity() - var/reaction_efficency = min(1/((pressure/(0.1*ONE_ATMOSPHERE))*(max(cached_gases[/datum/gas/plasma][MOLES]/cached_gases[/datum/gas/nitrous_oxide][MOLES],1))),cached_gases[/datum/gas/nitrous_oxide][MOLES],cached_gases[/datum/gas/plasma][MOLES]/2) + var/reaction_efficency = min(1/((pressure/(0.1*ONE_ATMOSPHERE))*(max(cached_gases[/datum/gas/plasma]/cached_gases[/datum/gas/nitrous_oxide],1))),cached_gases[/datum/gas/nitrous_oxide],cached_gases[/datum/gas/plasma]/2) var/energy_released = 2*reaction_efficency*FIRE_CARBON_ENERGY_RELEASED - if ((cached_gases[/datum/gas/nitrous_oxide][MOLES] - reaction_efficency < 0 )|| (cached_gases[/datum/gas/plasma][MOLES] - (2*reaction_efficency) < 0)) //Shouldn't produce gas from nothing. + if ((cached_gases[/datum/gas/nitrous_oxide] - reaction_efficency < 0 )|| (cached_gases[/datum/gas/plasma] - (2*reaction_efficency) < 0)) //Shouldn't produce gas from nothing. return NO_REACTION ASSERT_GAS(/datum/gas/bz,air) - cached_gases[/datum/gas/bz][MOLES] += reaction_efficency - cached_gases[/datum/gas/nitrous_oxide][MOLES] -= reaction_efficency - cached_gases[/datum/gas/plasma][MOLES] -= 2*reaction_efficency + cached_gases[/datum/gas/bz] += reaction_efficency + cached_gases[/datum/gas/nitrous_oxide] -= reaction_efficency + cached_gases[/datum/gas/plasma] -= 2*reaction_efficency if(energy_released > 0) @@ -388,16 +388,16 @@ var/list/cached_gases = air.gases var/old_heat_capacity = air.heat_capacity() - var/heat_scale = min(air.temperature/STIMULUM_HEAT_SCALE,cached_gases[/datum/gas/tritium][MOLES],cached_gases[/datum/gas/plasma][MOLES],cached_gases[/datum/gas/nitryl][MOLES]) + var/heat_scale = min(air.temperature/STIMULUM_HEAT_SCALE,cached_gases[/datum/gas/tritium],cached_gases[/datum/gas/plasma],cached_gases[/datum/gas/nitryl]) var/stim_energy_change = heat_scale + STIMULUM_FIRST_RISE*(heat_scale**2) - STIMULUM_FIRST_DROP*(heat_scale**3) + STIMULUM_SECOND_RISE*(heat_scale**4) - STIMULUM_ABSOLUTE_DROP*(heat_scale**5) ASSERT_GAS(/datum/gas/stimulum,air) - if ((cached_gases[/datum/gas/tritium][MOLES] - heat_scale < 0 )|| (cached_gases[/datum/gas/plasma][MOLES] - heat_scale < 0) || (cached_gases[/datum/gas/nitryl][MOLES] - heat_scale < 0)) //Shouldn't produce gas from nothing. + if ((cached_gases[/datum/gas/tritium] - heat_scale < 0 )|| (cached_gases[/datum/gas/plasma] - heat_scale < 0) || (cached_gases[/datum/gas/nitryl] - heat_scale < 0)) //Shouldn't produce gas from nothing. return NO_REACTION - cached_gases[/datum/gas/stimulum][MOLES]+= heat_scale/10 - cached_gases[/datum/gas/tritium][MOLES] -= heat_scale - cached_gases[/datum/gas/plasma][MOLES] -= heat_scale - cached_gases[/datum/gas/nitryl][MOLES] -= heat_scale + cached_gases[/datum/gas/stimulum]+= heat_scale/10 + cached_gases[/datum/gas/tritium] -= heat_scale + cached_gases[/datum/gas/plasma] -= heat_scale + cached_gases[/datum/gas/nitryl] -= heat_scale if(stim_energy_change) var/new_heat_capacity = air.heat_capacity() @@ -420,13 +420,13 @@ var/list/cached_gases = air.gases air.assert_gases(/datum/gas/hypernoblium,/datum/gas/bz) var/old_heat_capacity = air.heat_capacity() - var/nob_formed = min((cached_gases[/datum/gas/nitrogen][MOLES]+cached_gases[/datum/gas/tritium][MOLES])/100,cached_gases[/datum/gas/tritium][MOLES]/10,cached_gases[/datum/gas/nitrogen][MOLES]/20) - var/energy_taken = nob_formed*(NOBLIUM_FORMATION_ENERGY/(max(cached_gases[/datum/gas/bz][MOLES],1))) - if ((cached_gases[/datum/gas/tritium][MOLES] - 10*nob_formed < 0) || (cached_gases[/datum/gas/nitrogen][MOLES] - 20*nob_formed < 0)) + var/nob_formed = min((cached_gases[/datum/gas/nitrogen]+cached_gases[/datum/gas/tritium])/100,cached_gases[/datum/gas/tritium]/10,cached_gases[/datum/gas/nitrogen]/20) + var/energy_taken = nob_formed*(NOBLIUM_FORMATION_ENERGY/(max(cached_gases[/datum/gas/bz],1))) + if ((cached_gases[/datum/gas/tritium] - 10*nob_formed < 0) || (cached_gases[/datum/gas/nitrogen] - 20*nob_formed < 0)) return NO_REACTION - cached_gases[/datum/gas/tritium][MOLES] -= 10*nob_formed - cached_gases[/datum/gas/nitrogen][MOLES] -= 20*nob_formed - cached_gases[/datum/gas/hypernoblium][MOLES]+= nob_formed + cached_gases[/datum/gas/tritium] -= 10*nob_formed + cached_gases[/datum/gas/nitrogen] -= 20*nob_formed + cached_gases[/datum/gas/hypernoblium]+= nob_formed if (nob_formed) @@ -449,14 +449,14 @@ /datum/gas_reaction/miaster/react(datum/gas_mixture/air, datum/holder) var/list/cached_gases = air.gases // As the name says it, it needs to be dry - if(cached_gases[/datum/gas/water_vapor] && cached_gases[/datum/gas/water_vapor][MOLES]/air.total_moles() > 0.1) + if(cached_gases[/datum/gas/water_vapor] && cached_gases[/datum/gas/water_vapor]/air.total_moles() > 0.1) return //Replace miasma with oxygen - var/cleaned_air = min(cached_gases[/datum/gas/miasma][MOLES], 20 + (air.temperature - FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 70) / 20) - cached_gases[/datum/gas/miasma][MOLES] -= cleaned_air + var/cleaned_air = min(cached_gases[/datum/gas/miasma], 20 + (air.temperature - FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 70) / 20) + cached_gases[/datum/gas/miasma] -= cleaned_air ASSERT_GAS(/datum/gas/oxygen,air) - cached_gases[/datum/gas/oxygen][MOLES] += cleaned_air + cached_gases[/datum/gas/oxygen] += cleaned_air //Possibly burning a bit of organic matter through maillard reaction, so a *tiny* bit more heat would be understandable air.temperature += cleaned_air * 0.002 diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index 0a7b76cc79..5f4e79174b 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -282,10 +282,10 @@ continue cur_tlv = TLV[gas_id] data["environment_data"] += list(list( - "name" = environment.gases[gas_id][GAS_META][META_GAS_NAME], - "value" = environment.gases[gas_id][MOLES] / total_moles * 100, + "name" = GLOB.meta_gas_info[gas_id][META_GAS_NAME], + "value" = environment.gases[gas_id] / total_moles * 100, "unit" = "%", - "danger_level" = cur_tlv.get_danger_level(environment.gases[gas_id][MOLES] * partial_pressure) + "danger_level" = cur_tlv.get_danger_level(environment.gases[gas_id] * partial_pressure) )) if(!locked || user.has_unlimited_silicon_privilege) @@ -692,7 +692,7 @@ if(!(gas_id in TLV)) // We're not interested in this gas, it seems. continue cur_tlv = TLV[gas_id] - gas_dangerlevel = max(gas_dangerlevel, cur_tlv.get_danger_level(env_gases[gas_id][MOLES] * partial_pressure)) + gas_dangerlevel = max(gas_dangerlevel, cur_tlv.get_danger_level(env_gases[gas_id] * partial_pressure)) environment.garbage_collect() diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index 4101deb00c..4d00cdf58e 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -160,9 +160,9 @@ filtered_out.temperature = removed.temperature filtered_out.add_gas(filter_type) - filtered_out.gases[filter_type][MOLES] = removed.gases[filter_type][MOLES] + filtered_out.gases[filter_type] = removed.gases[filter_type] - removed.gases[filter_type][MOLES] = 0 + removed.gases[filter_type] = 0 removed.garbage_collect() var/datum/gas_mixture/target = (air2.return_pressure() < target_pressure ? air2 : air1) //if there's no room for the filtered gas; just leave it in air1 diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index 9b69b2fa6f..8729f30fb0 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -183,7 +183,7 @@ if(reagent_transfer == 0) // Magically transfer reagents. Because cryo magic. beaker.reagents.trans_to(occupant, 1, efficiency * 0.25) // Transfer reagents. beaker.reagents.reaction(occupant, VAPOR) - air1.gases[/datum/gas/oxygen][MOLES] -= max(0,air1.gases[/datum/gas/oxygen][MOLES] - 2 / efficiency) //Let's use gas for this + air1.gases[/datum/gas/oxygen] -= max(0,air1.gases[/datum/gas/oxygen] - 2 / efficiency) //Let's use gas for this air1.garbage_collect() if(++reagent_transfer >= 10 * efficiency) // Throttle reagent transfer (higher efficiency will transfer the same amount but consume less from the beaker). reagent_transfer = 0 @@ -198,7 +198,7 @@ var/datum/gas_mixture/air1 = airs[1] - if(!nodes[1] || !airs[1] || !air1.gases.len || air1.gases[/datum/gas/oxygen][MOLES] < 5) // Turn off if the machine won't work. + if(!nodes[1] || !airs[1] || !air1.gases.len || air1.gases[/datum/gas/oxygen] < 5) // Turn off if the machine won't work. on = FALSE update_icon() return @@ -220,7 +220,7 @@ air1.temperature = max(air1.temperature - heat / air_heat_capacity, TCMB) mob_occupant.adjust_bodytemperature(heat / heat_capacity, TCMB) - air1.gases[/datum/gas/oxygen][MOLES] = max(0,air1.gases[/datum/gas/oxygen][MOLES] - 0.5 / efficiency) // Magically consume gas? Why not, we run on cryo magic. + air1.gases[/datum/gas/oxygen] = max(0,air1.gases[/datum/gas/oxygen] - 0.5 / efficiency) // Magically consume gas? Why not, we run on cryo magic. air1.garbage_collect() /obj/machinery/atmospherics/components/unary/cryo_cell/power_change() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/tank.dm b/code/modules/atmospherics/machinery/components/unary_devices/tank.dm index 1a9d1cff30..6bde4fd9e7 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/tank.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/tank.dm @@ -18,8 +18,8 @@ air_contents.temperature = T20C if(gas_type) air_contents.assert_gas(gas_type) - air_contents.gases[gas_type][MOLES] = AIR_CONTENTS - name = "[name] ([air_contents.gases[gas_type][GAS_META][META_GAS_NAME]])" + air_contents.gases[gas_type] = AIR_CONTENTS + name = "[name] ([GLOB.meta_gas_info[gas_type][META_GAS_NAME]])" /obj/machinery/atmospherics/components/unary/tank/carbon_dioxide gas_type = /datum/gas/carbon_dioxide @@ -45,5 +45,5 @@ ..() var/datum/gas_mixture/air_contents = airs[1] air_contents.assert_gases(/datum/gas/oxygen, /datum/gas/nitrogen) - air_contents.gases[/datum/gas/oxygen][MOLES] = AIR_CONTENTS * 0.2 - air_contents.gases[/datum/gas/nitrogen][MOLES] = AIR_CONTENTS * 0.8 + air_contents.gases[/datum/gas/oxygen] = AIR_CONTENTS * 0.2 + air_contents.gases[/datum/gas/nitrogen] = AIR_CONTENTS * 0.8 diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index ee819d4f74..485d082662 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -198,8 +198,8 @@ for(var/gas in filter_types & removed_gases) filtered_out.add_gas(gas) - filtered_gases[gas][MOLES] = removed_gases[gas][MOLES] - removed_gases[gas][MOLES] = 0 + filtered_gases[gas] = removed_gases[gas] + removed_gases[gas] = 0 removed.garbage_collect() diff --git a/code/modules/atmospherics/machinery/datum_pipeline.dm b/code/modules/atmospherics/machinery/datum_pipeline.dm index c4fa387ab0..38178a4339 100644 --- a/code/modules/atmospherics/machinery/datum_pipeline.dm +++ b/code/modules/atmospherics/machinery/datum_pipeline.dm @@ -145,7 +145,7 @@ var/member_gases = member.air_temporary.gases for(var/id in member_gases) - member_gases[id][MOLES] *= member.volume/air.volume + member_gases[id] *= member.volume/air.volume member.air_temporary.temperature = air.temperature @@ -254,4 +254,4 @@ G.copy_from(total_gas_mixture) var/list/G_gases = G.gases for(var/id in G_gases) - G_gases[id][MOLES] *= G.volume/total_gas_mixture.volume + G_gases[id] *= G.volume/total_gas_mixture.volume diff --git a/code/modules/atmospherics/machinery/other/miner.dm b/code/modules/atmospherics/machinery/other/miner.dm index 20251418bc..7c534303d1 100644 --- a/code/modules/atmospherics/machinery/other/miner.dm +++ b/code/modules/atmospherics/machinery/other/miner.dm @@ -132,7 +132,7 @@ return FALSE var/datum/gas_mixture/merger = new merger.assert_gas(spawn_id) - merger.gases[spawn_id][MOLES] = (spawn_mol) + merger.gases[spawn_id] = (spawn_mol) merger.temperature = spawn_temp O.assume_air(merger) O.air_update_turf(TRUE) diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm index d23a5df958..33f6a73c6b 100644 --- a/code/modules/atmospherics/machinery/portable/canister.dm +++ b/code/modules/atmospherics/machinery/portable/canister.dm @@ -207,13 +207,13 @@ air_contents.add_gas(gas_type) if(starter_temp) air_contents.temperature = starter_temp - air_contents.gases[gas_type][MOLES] = (maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) + air_contents.gases[gas_type] = (maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) if(starter_temp) air_contents.temperature = starter_temp /obj/machinery/portable_atmospherics/canister/air/create_gas() air_contents.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) - air_contents.gases[/datum/gas/oxygen][MOLES] = (O2STANDARD * maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) - air_contents.gases[/datum/gas/nitrogen][MOLES] = (N2STANDARD * maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) + air_contents.gases[/datum/gas/oxygen] = (O2STANDARD * maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) + air_contents.gases[/datum/gas/nitrogen] = (N2STANDARD * maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) #define HOLDING (1<<0) #define CONNECTED (1<<1) @@ -439,10 +439,10 @@ var/list/danger = list() for(var/id in air_contents.gases) var/gas = air_contents.gases[id] - if(!gas[GAS_META][META_GAS_DANGER]) + if(!GLOB.meta_gas_info[id][META_GAS_DANGER]) continue - if(gas[MOLES] > (gas[GAS_META][META_GAS_MOLES_VISIBLE] || MOLES_GAS_VISIBLE)) //if moles_visible is undefined, default to default visibility - danger[gas[GAS_META][META_GAS_NAME]] = gas[MOLES] //ex. "plasma" = 20 + if(gas > (GLOB.meta_gas_info[id][META_GAS_MOLES_VISIBLE] || MOLES_GAS_VISIBLE)) //if moles_visible is undefined, default to default visibility + danger[GLOB.meta_gas_info[id][META_GAS_NAME]] = gas //ex. "plasma" = 20 if(danger.len) message_admins("[ADMIN_LOOKUPFLW(usr)] opened a canister that contains the following at [ADMIN_VERBOSEJMP(src)]:") diff --git a/code/modules/atmospherics/machinery/portable/scrubber.dm b/code/modules/atmospherics/machinery/portable/scrubber.dm index 29a454f59a..800ac78713 100644 --- a/code/modules/atmospherics/machinery/portable/scrubber.dm +++ b/code/modules/atmospherics/machinery/portable/scrubber.dm @@ -46,8 +46,8 @@ filtered.temperature = filtering.temperature for(var/gas in filtering.gases & scrubbing) filtered.add_gas(gas) - filtered.gases[gas][MOLES] = filtering.gases[gas][MOLES] // Shuffle the "bad" gasses to the filtered mixture. - filtering.gases[gas][MOLES] = 0 + filtered.gases[gas] = filtering.gases[gas] // Shuffle the "bad" gasses to the filtered mixture. + filtering.gases[gas] = 0 filtering.garbage_collect() // Now that the gasses are set to 0, clean up the mixture. air_contents.merge(filtered) // Store filtered out gasses. diff --git a/code/modules/cargo/bounties/engineering.dm b/code/modules/cargo/bounties/engineering.dm index eb1764d482..e10d48f3bf 100644 --- a/code/modules/cargo/bounties/engineering.dm +++ b/code/modules/cargo/bounties/engineering.dm @@ -12,7 +12,7 @@ var/obj/item/tank/T = O if(!T.air_contents.gases[gas_type]) return FALSE - return T.air_contents.gases[gas_type][MOLES] >= moles_required + return T.air_contents.gases[gas_type] >= moles_required /datum/bounty/item/engineering/gas/nitryl_tank name = "Full Tank of Nitryl" diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index 966d5cc0d8..53f3832c7a 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -172,7 +172,7 @@ var/datum/gas_mixture/GM = T.air if(!GM.gases[/datum/gas/oxygen]) return - GM.gases[/datum/gas/oxygen][MOLES] = max(GM.gases[/datum/gas/oxygen][MOLES] - severity * holder.energy, 0) + GM.gases[/datum/gas/oxygen] = max(GM.gases[/datum/gas/oxygen] - severity * holder.energy, 0) GM.garbage_collect() /datum/spacevine_mutation/nitro_eater @@ -187,7 +187,7 @@ var/datum/gas_mixture/GM = T.air if(!GM.gases[/datum/gas/nitrogen]) return - GM.gases[/datum/gas/nitrogen][MOLES] = max(GM.gases[/datum/gas/nitrogen][MOLES] - severity * holder.energy, 0) + GM.gases[/datum/gas/nitrogen] = max(GM.gases[/datum/gas/nitrogen] - severity * holder.energy, 0) GM.garbage_collect() /datum/spacevine_mutation/carbondioxide_eater @@ -202,7 +202,7 @@ var/datum/gas_mixture/GM = T.air if(!GM.gases[/datum/gas/carbon_dioxide]) return - GM.gases[/datum/gas/carbon_dioxide][MOLES] = max(GM.gases[/datum/gas/carbon_dioxide][MOLES] - severity * holder.energy, 0) + GM.gases[/datum/gas/carbon_dioxide] = max(GM.gases[/datum/gas/carbon_dioxide] - severity * holder.energy, 0) GM.garbage_collect() /datum/spacevine_mutation/plasma_eater @@ -217,7 +217,7 @@ var/datum/gas_mixture/GM = T.air if(!GM.gases[/datum/gas/plasma]) return - GM.gases[/datum/gas/plasma][MOLES] = max(GM.gases[/datum/gas/plasma][MOLES] - severity * holder.energy, 0) + GM.gases[/datum/gas/plasma] = max(GM.gases[/datum/gas/plasma] - severity * holder.energy, 0) GM.garbage_collect() /datum/spacevine_mutation/thorns diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index 3fe5a2dfca..23f178edc9 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -187,7 +187,7 @@ var/turf/open/O = loc if(O.air) var/loc_gases = O.air.gases - if(loc_gases[/datum/gas/oxygen][MOLES] > 13) + if(loc_gases[/datum/gas/oxygen] > 13) return TRUE return FALSE diff --git a/code/modules/integrated_electronics/subtypes/atmospherics.dm b/code/modules/integrated_electronics/subtypes/atmospherics.dm index 1715223fa2..be4b15610f 100644 --- a/code/modules/integrated_electronics/subtypes/atmospherics.dm +++ b/code/modules/integrated_electronics/subtypes/atmospherics.dm @@ -371,14 +371,14 @@ obj/item/integrated_circuit/atmospherics/connector/portableConnectorReturnAir() for(var/filtered_gas in removed.gases) //Get the name of the gas and see if it is in the list - if(removed.gases[filtered_gas][GAS_META][META_GAS_NAME] in wanted) + if(GLOB.meta_gas_info[filtered_gas][META_GAS_NAME] in wanted) //The gas that is put in all the filtered out gases filtered_out.temperature = removed.temperature filtered_out.add_gas(filtered_gas) - filtered_out.gases[filtered_gas][MOLES] = removed.gases[filtered_gas][MOLES] + filtered_out.gases[filtered_gas] = removed.gases[filtered_gas] //The filtered out gas is entirely removed from the currently filtered gases - removed.gases[filtered_gas][MOLES] = 0 + removed.gases[filtered_gas] = 0 removed.garbage_collect() //Check if the pressure is high enough to put stuff in filtered, or else just put it back in the source diff --git a/code/modules/integrated_electronics/subtypes/input.dm b/code/modules/integrated_electronics/subtypes/input.dm index 6e8b0cb777..040f4d1e4a 100644 --- a/code/modules/integrated_electronics/subtypes/input.dm +++ b/code/modules/integrated_electronics/subtypes/input.dm @@ -1165,8 +1165,8 @@ var/list/gas_names = list() var/list/gas_amounts = list() for(var/id in gases) - var/name = gases[id][GAS_META][META_GAS_NAME] - var/amt = round(gases[id][MOLES], 0.001) + var/name = GLOB.meta_gas_info[id][META_GAS_NAME] + var/amt = round(gases[id], 0.001) gas_names.Add(name) gas_amounts.Add(amt) diff --git a/code/modules/mob/living/carbon/alien/life.dm b/code/modules/mob/living/carbon/alien/life.dm index 543fda9fd0..ea1dbab85e 100644 --- a/code/modules/mob/living/carbon/alien/life.dm +++ b/code/modules/mob/living/carbon/alien/life.dm @@ -18,20 +18,20 @@ breath.assert_gases(/datum/gas/plasma, /datum/gas/oxygen) //Partial pressure of the toxins in our breath - var/Toxins_pp = (breath_gases[/datum/gas/plasma][MOLES]/breath.total_moles())*breath_pressure + var/Toxins_pp = (breath_gases[/datum/gas/plasma]/breath.total_moles())*breath_pressure if(Toxins_pp > tox_detect_threshold) // Detect toxins in air - adjustPlasma(breath_gases[/datum/gas/plasma][MOLES]*250) + adjustPlasma(breath_gases[/datum/gas/plasma]*250) throw_alert("alien_tox", /obj/screen/alert/alien_tox) - toxins_used = breath_gases[/datum/gas/plasma][MOLES] + toxins_used = breath_gases[/datum/gas/plasma] else clear_alert("alien_tox") //Breathe in toxins and out oxygen - breath_gases[/datum/gas/plasma][MOLES] -= toxins_used - breath_gases[/datum/gas/oxygen][MOLES] += toxins_used + breath_gases[/datum/gas/plasma] -= toxins_used + breath_gases[/datum/gas/oxygen] += toxins_used breath.garbage_collect() diff --git a/code/modules/mob/living/carbon/human/species_types/plasmamen.dm b/code/modules/mob/living/carbon/human/species_types/plasmamen.dm index 6f5ae6f4eb..a13bb5db6d 100644 --- a/code/modules/mob/living/carbon/human/species_types/plasmamen.dm +++ b/code/modules/mob/living/carbon/human/species_types/plasmamen.dm @@ -33,7 +33,7 @@ if((!istype(H.w_uniform, /obj/item/clothing/under/plasmaman) || !istype(H.head, /obj/item/clothing/head/helmet/space/plasmaman)) && !atmos_sealed) if(environment) if(environment.total_moles()) - if(environment.gases[/datum/gas/oxygen] && (environment.gases[/datum/gas/oxygen][MOLES]) >= 1) //Same threshhold that extinguishes fire + if(environment.gases[/datum/gas/oxygen] && (environment.gases[/datum/gas/oxygen]) >= 1) //Same threshhold that extinguishes fire H.adjust_fire_stacks(0.5) if(!H.on_fire && H.fire_stacks > 0) H.visible_message("[H]'s body reacts with the atmosphere and bursts into flames!","Your body reacts with the atmosphere and bursts into flame!") diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index 48a401802b..80c20dbbf5 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -151,9 +151,9 @@ var/list/breath_gases = breath.gases breath.assert_gases(/datum/gas/oxygen, /datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/bz) - var/O2_partialpressure = (breath_gases[/datum/gas/oxygen][MOLES]/breath.total_moles())*breath_pressure - var/Toxins_partialpressure = (breath_gases[/datum/gas/plasma][MOLES]/breath.total_moles())*breath_pressure - var/CO2_partialpressure = (breath_gases[/datum/gas/carbon_dioxide][MOLES]/breath.total_moles())*breath_pressure + var/O2_partialpressure = (breath_gases[/datum/gas/oxygen]/breath.total_moles())*breath_pressure + var/Toxins_partialpressure = (breath_gases[/datum/gas/plasma]/breath.total_moles())*breath_pressure + var/CO2_partialpressure = (breath_gases[/datum/gas/carbon_dioxide]/breath.total_moles())*breath_pressure //OXYGEN @@ -177,7 +177,7 @@ var/ratio = 1 - O2_partialpressure/safe_oxy_min adjustOxyLoss(min(5*ratio, 3)) failed_last_breath = 1 - oxygen_used = breath_gases[/datum/gas/oxygen][MOLES]*ratio + oxygen_used = breath_gases[/datum/gas/oxygen]*ratio else adjustOxyLoss(3) failed_last_breath = 1 @@ -189,12 +189,12 @@ o2overloadtime = 0 //reset our counter for this too if(health >= crit_threshold) adjustOxyLoss(-5) - oxygen_used = breath_gases[/datum/gas/oxygen][MOLES] + oxygen_used = breath_gases[/datum/gas/oxygen] clear_alert("not_enough_oxy") SEND_SIGNAL(src, COMSIG_CLEAR_MOOD_EVENT, "suffocation") - breath_gases[/datum/gas/oxygen][MOLES] -= oxygen_used - breath_gases[/datum/gas/carbon_dioxide][MOLES] += oxygen_used + breath_gases[/datum/gas/oxygen] -= oxygen_used + breath_gases[/datum/gas/carbon_dioxide] += oxygen_used //CARBON DIOXIDE if(CO2_partialpressure > safe_co2_max) @@ -213,7 +213,7 @@ //TOXINS/PLASMA if(Toxins_partialpressure > safe_tox_max) - var/ratio = (breath_gases[/datum/gas/plasma][MOLES]/safe_tox_max) * 10 + var/ratio = (breath_gases[/datum/gas/plasma]/safe_tox_max) * 10 adjustToxLoss(CLAMP(ratio, MIN_TOXIC_GAS_DAMAGE, MAX_TOXIC_GAS_DAMAGE)) throw_alert("too_much_tox", /obj/screen/alert/too_much_tox) else @@ -221,7 +221,7 @@ //NITROUS OXIDE if(breath_gases[/datum/gas/nitrous_oxide]) - var/SA_partialpressure = (breath_gases[/datum/gas/nitrous_oxide][MOLES]/breath.total_moles())*breath_pressure + var/SA_partialpressure = (breath_gases[/datum/gas/nitrous_oxide]/breath.total_moles())*breath_pressure if(SA_partialpressure > SA_para_min) Unconscious(60) if(SA_partialpressure > SA_sleep_min) @@ -232,7 +232,7 @@ //BZ (Facepunch port of their Agent B) if(breath_gases[/datum/gas/bz]) - var/bz_partialpressure = (breath_gases[/datum/gas/bz][MOLES]/breath.total_moles())*breath_pressure + var/bz_partialpressure = (breath_gases[/datum/gas/bz]/breath.total_moles())*breath_pressure if(bz_partialpressure > 1) hallucination += 10 else if(bz_partialpressure > 0.01) @@ -240,17 +240,17 @@ //TRITIUM if(breath_gases[/datum/gas/tritium]) - var/tritium_partialpressure = (breath_gases[/datum/gas/tritium][MOLES]/breath.total_moles())*breath_pressure + var/tritium_partialpressure = (breath_gases[/datum/gas/tritium]/breath.total_moles())*breath_pressure radiation += tritium_partialpressure/10 //NITRYL if(breath_gases[/datum/gas/nitryl]) - var/nitryl_partialpressure = (breath_gases[/datum/gas/nitryl][MOLES]/breath.total_moles())*breath_pressure + var/nitryl_partialpressure = (breath_gases[/datum/gas/nitryl]/breath.total_moles())*breath_pressure adjustFireLoss(nitryl_partialpressure/4) //MIASMA if(breath_gases[/datum/gas/miasma]) - var/miasma_partialpressure = (breath_gases[/datum/gas/miasma][MOLES]/breath.total_moles())*breath_pressure + var/miasma_partialpressure = (breath_gases[/datum/gas/miasma]/breath.total_moles())*breath_pressure if(prob(1 * miasma_partialpressure)) var/datum/disease/advance/miasma_disease = new /datum/disease/advance/random(2,3) @@ -346,7 +346,7 @@ var/list/cached_gases = miasma_turf.air.gases ASSERT_GAS(/datum/gas/miasma, miasma_turf.air) - cached_gases[/datum/gas/miasma][MOLES] += 0.02 + cached_gases[/datum/gas/miasma] += 0.02 /mob/living/carbon/proc/handle_blood() return diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm index 9ef4c1567a..cb7b9a469c 100644 --- a/code/modules/mob/living/life.dm +++ b/code/modules/mob/living/life.dm @@ -109,7 +109,7 @@ ExtinguishMob() return var/datum/gas_mixture/G = loc.return_air() // Check if we're standing in an oxygenless environment - if(!G.gases[/datum/gas/oxygen] || G.gases[/datum/gas/oxygen][MOLES] < 1) + if(G.gases[/datum/gas/oxygen] < 1) ExtinguishMob() //If there's no oxygen in the tile we're on, put out the fire return var/turf/location = get_turf(src) diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm index 90070f1d5d..2ab1c9da35 100644 --- a/code/modules/mob/living/silicon/pai/software.dm +++ b/code/modules/mob/living/silicon/pai/software.dm @@ -544,9 +544,9 @@ if (total_moles) for(var/id in env_gases) - var/gas_level = env_gases[id][MOLES]/total_moles + var/gas_level = env_gases[id]/total_moles if(gas_level > 0.01) - dat += "[env_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_level*100)]%
" + dat += "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_level*100)]%
" dat += "Temperature: [round(environment.temperature-T0C)]°C
" dat += "Refresh Reading
" dat += "
" diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/hostile/tree.dm index 3d10bfd121..fc51b9afe4 100644 --- a/code/modules/mob/living/simple_animal/hostile/tree.dm +++ b/code/modules/mob/living/simple_animal/hostile/tree.dm @@ -1,71 +1,71 @@ -/mob/living/simple_animal/hostile/tree - name = "pine tree" - desc = "A pissed off tree-like alien. It seems annoyed with the festivities..." - icon = 'icons/obj/flora/pinetrees.dmi' - icon_state = "pine_1" - icon_living = "pine_1" - icon_dead = "pine_1" - icon_gib = "pine_1" - gender = NEUTER - speak_chance = 0 - turns_per_move = 5 - response_help = "brushes" - response_disarm = "pushes" - response_harm = "hits" - speed = 1 - maxHealth = 250 - health = 250 - mob_size = MOB_SIZE_LARGE - - pixel_x = -16 - - harm_intent_damage = 5 - melee_damage_lower = 8 - melee_damage_upper = 12 - attacktext = "bites" - attack_sound = 'sound/weapons/bite.ogg' - speak_emote = list("pines") - emote_taunt = list("growls") - taunt_chance = 20 - - atmos_requirements = list("min_oxy" = 2, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - unsuitable_atmos_damage = 5 - minbodytemp = 0 - maxbodytemp = 1200 - - faction = list("hostile") - deathmessage = "is hacked into pieces!" - loot = list(/obj/item/stack/sheet/mineral/wood) - gold_core_spawnable = HOSTILE_SPAWN - del_on_death = 1 - -/mob/living/simple_animal/hostile/tree/Life() - ..() - if(isopenturf(loc)) - var/turf/open/T = src.loc - if(T.air && T.air.gases[/datum/gas/carbon_dioxide]) - var/co2 = T.air.gases[/datum/gas/carbon_dioxide][MOLES] - if(co2 > 0) - if(prob(25)) - var/amt = min(co2, 9) - T.air.gases[/datum/gas/carbon_dioxide][MOLES] -= amt - T.atmos_spawn_air("o2=[amt]") - -/mob/living/simple_animal/hostile/tree/AttackingTarget() - . = ..() - if(iscarbon(target)) - var/mob/living/carbon/C = target - if(prob(15)) - C.Knockdown(60) - C.visible_message("\The [src] knocks down \the [C]!", \ - "\The [src] knocks you down!") - -/mob/living/simple_animal/hostile/tree/festivus - name = "festivus pole" - desc = "Serenity now... SERENITY NOW!" - icon_state = "festivus_pole" - icon_living = "festivus_pole" - icon_dead = "festivus_pole" - icon_gib = "festivus_pole" - loot = list(/obj/item/stack/rods) - speak_emote = list("polls") +/mob/living/simple_animal/hostile/tree + name = "pine tree" + desc = "A pissed off tree-like alien. It seems annoyed with the festivities..." + icon = 'icons/obj/flora/pinetrees.dmi' + icon_state = "pine_1" + icon_living = "pine_1" + icon_dead = "pine_1" + icon_gib = "pine_1" + gender = NEUTER + speak_chance = 0 + turns_per_move = 5 + response_help = "brushes" + response_disarm = "pushes" + response_harm = "hits" + speed = 1 + maxHealth = 250 + health = 250 + mob_size = MOB_SIZE_LARGE + + pixel_x = -16 + + harm_intent_damage = 5 + melee_damage_lower = 8 + melee_damage_upper = 12 + attacktext = "bites" + attack_sound = 'sound/weapons/bite.ogg' + speak_emote = list("pines") + emote_taunt = list("growls") + taunt_chance = 20 + + atmos_requirements = list("min_oxy" = 2, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) + unsuitable_atmos_damage = 5 + minbodytemp = 0 + maxbodytemp = 1200 + + faction = list("hostile") + deathmessage = "is hacked into pieces!" + loot = list(/obj/item/stack/sheet/mineral/wood) + gold_core_spawnable = HOSTILE_SPAWN + del_on_death = 1 + +/mob/living/simple_animal/hostile/tree/Life() + ..() + if(isopenturf(loc)) + var/turf/open/T = src.loc + if(T.air && T.air.gases[/datum/gas/carbon_dioxide]) + var/co2 = T.air.gases[/datum/gas/carbon_dioxide] + if(co2 > 0) + if(prob(25)) + var/amt = min(co2, 9) + T.air.gases[/datum/gas/carbon_dioxide] -= amt + T.atmos_spawn_air("o2=[amt]") + +/mob/living/simple_animal/hostile/tree/AttackingTarget() + . = ..() + if(iscarbon(target)) + var/mob/living/carbon/C = target + if(prob(15)) + C.Knockdown(60) + C.visible_message("\The [src] knocks down \the [C]!", \ + "\The [src] knocks you down!") + +/mob/living/simple_animal/hostile/tree/festivus + name = "festivus pole" + desc = "Serenity now... SERENITY NOW!" + icon_state = "festivus_pole" + icon_living = "festivus_pole" + icon_dead = "festivus_pole" + icon_gib = "festivus_pole" + loot = list(/obj/item/stack/rods) + speak_emote = list("polls") diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index fcb201d0ad..c33f667f24 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -209,10 +209,10 @@ var/ST_gases = ST.air.gases ST.air.assert_gases(arglist(GLOB.hardcoded_gases)) - var/tox = ST_gases[/datum/gas/plasma][MOLES] - var/oxy = ST_gases[/datum/gas/oxygen][MOLES] - var/n2 = ST_gases[/datum/gas/nitrogen][MOLES] - var/co2 = ST_gases[/datum/gas/carbon_dioxide][MOLES] + var/tox = ST_gases[/datum/gas/plasma] + var/oxy = ST_gases[/datum/gas/oxygen] + var/n2 = ST_gases[/datum/gas/nitrogen] + var/co2 = ST_gases[/datum/gas/carbon_dioxide] ST.air.garbage_collect() diff --git a/code/modules/mob/living/simple_animal/slime/life.dm b/code/modules/mob/living/simple_animal/slime/life.dm index 161362c187..ebb34fe77a 100644 --- a/code/modules/mob/living/simple_animal/slime/life.dm +++ b/code/modules/mob/living/simple_animal/slime/life.dm @@ -132,7 +132,7 @@ if(stat != DEAD) var/bz_percentage =0 if(environment.gases[/datum/gas/bz]) - bz_percentage = environment.gases[/datum/gas/bz][MOLES] / environment.total_moles() + bz_percentage = environment.gases[/datum/gas/bz] / environment.total_moles() var/stasis = (bz_percentage >= 0.05 && bodytemperature < (T0C + 100)) || force_stasis if(stat == CONSCIOUS && stasis) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 9d662b1673..deefe00a9b 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -67,8 +67,8 @@ t += "Temperature: [environment.temperature] \n" for(var/id in environment.gases) var/gas = environment.gases[id] - if(gas[MOLES]) - t+="[gas[GAS_META][META_GAS_NAME]]: [gas[MOLES]] \n" + if(gas) + t+="[GLOB.meta_gas_info[id][META_GAS_NAME]]: [gas] \n" to_chat(usr, t) diff --git a/code/modules/modular_computers/file_system/programs/sm_monitor.dm b/code/modules/modular_computers/file_system/programs/sm_monitor.dm index 138e8bb9dd..ca451beec4 100644 --- a/code/modules/modular_computers/file_system/programs/sm_monitor.dm +++ b/code/modules/modular_computers/file_system/programs/sm_monitor.dm @@ -81,13 +81,13 @@ if(air.total_moles()) for(var/gasid in air.gases) gasdata.Add(list(list( - "name"= air.gases[gasid][GAS_META][META_GAS_NAME], - "amount" = round(100*air.gases[gasid][MOLES]/air.total_moles(),0.01)))) + "name"= GLOB.meta_gas_info[gasid][META_GAS_NAME], + "amount" = round(100*air.gases[gasid]/air.total_moles(),0.01)))) else for(var/gasid in air.gases) gasdata.Add(list(list( - "name"= air.gases[gasid][GAS_META][META_GAS_NAME], + "name"= GLOB.meta_gas_info[gasid][META_GAS_NAME], "amount" = 0))) data["gases"] = gasdata diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 3b9c3a549b..1fb8bee72b 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -43,10 +43,10 @@ playsound(src, 'sound/machines/ding.ogg', 50, 1) eject() else - var/gasdrained = min(powerproduction_drain*drainratio,loaded_tank.air_contents.gases[/datum/gas/plasma][MOLES]) - loaded_tank.air_contents.gases[/datum/gas/plasma][MOLES] -= gasdrained + var/gasdrained = min(powerproduction_drain*drainratio,loaded_tank.air_contents.gases[/datum/gas/plasma]) + loaded_tank.air_contents.gases[/datum/gas/plasma] -= gasdrained loaded_tank.air_contents.assert_gas(/datum/gas/tritium) - loaded_tank.air_contents.gases[/datum/gas/tritium][MOLES] += gasdrained + loaded_tank.air_contents.gases[/datum/gas/tritium] += gasdrained loaded_tank.air_contents.garbage_collect() var/power_produced = RAD_COLLECTOR_OUTPUT @@ -58,10 +58,10 @@ eject() else var/gasdrained = bitcoinproduction_drain*drainratio - loaded_tank.air_contents.gases[/datum/gas/tritium][MOLES] -= gasdrained - loaded_tank.air_contents.gases[/datum/gas/oxygen][MOLES] -= gasdrained + loaded_tank.air_contents.gases[/datum/gas/tritium] -= gasdrained + loaded_tank.air_contents.gases[/datum/gas/oxygen] -= gasdrained loaded_tank.air_contents.assert_gas(/datum/gas/carbon_dioxide) - loaded_tank.air_contents.gases[/datum/gas/carbon_dioxide][MOLES] += gasdrained*2 + loaded_tank.air_contents.gases[/datum/gas/carbon_dioxide] += gasdrained*2 loaded_tank.air_contents.garbage_collect() var/bitcoins_mined = RAD_COLLECTOR_OUTPUT SSresearch.science_tech.add_point_type(TECHWEB_POINT_TYPE_DEFAULT, bitcoins_mined*RAD_COLLECTOR_MINING_CONVERSION_RATE) @@ -76,7 +76,6 @@ var/fuel if(loaded_tank) fuel = loaded_tank.air_contents.gases[/datum/gas/plasma] - fuel = fuel ? fuel[MOLES] : 0 investigate_log("turned [active?"on":"off"] by [key_name(user)]. [loaded_tank?"Fuel: [round(fuel/0.29)]%":"It is empty"].", INVESTIGATE_SINGULO) return else diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index ad94d577ea..0cca568d5d 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -343,12 +343,12 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) //calculating gas related values combined_gas = max(removed.total_moles(), 0) - plasmacomp = max(removed.gases[/datum/gas/plasma][MOLES]/combined_gas, 0) - o2comp = max(removed.gases[/datum/gas/oxygen][MOLES]/combined_gas, 0) - co2comp = max(removed.gases[/datum/gas/carbon_dioxide][MOLES]/combined_gas, 0) + plasmacomp = max(removed.gases[/datum/gas/plasma]/combined_gas, 0) + o2comp = max(removed.gases[/datum/gas/oxygen]/combined_gas, 0) + co2comp = max(removed.gases[/datum/gas/carbon_dioxide]/combined_gas, 0) - n2ocomp = max(removed.gases[/datum/gas/nitrous_oxide][MOLES]/combined_gas, 0) - n2comp = max(removed.gases[/datum/gas/nitrogen][MOLES]/combined_gas, 0) + n2ocomp = max(removed.gases[/datum/gas/nitrous_oxide]/combined_gas, 0) + n2comp = max(removed.gases[/datum/gas/nitrogen]/combined_gas, 0) gasmix_power_ratio = min(max(plasmacomp + o2comp + co2comp - n2comp, 0), 1) @@ -400,9 +400,9 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) removed.temperature = max(0, min(removed.temperature, 2500 * dynamic_heat_modifier)) //Calculate how much gas to release - removed.gases[/datum/gas/plasma][MOLES] += max((device_energy * dynamic_heat_modifier) / PLASMA_RELEASE_MODIFIER, 0) + removed.gases[/datum/gas/plasma] += max((device_energy * dynamic_heat_modifier) / PLASMA_RELEASE_MODIFIER, 0) - removed.gases[/datum/gas/oxygen][MOLES] += max(((device_energy + removed.temperature * dynamic_heat_modifier) - T0C) / OXYGEN_RELEASE_MODIFIER, 0) + removed.gases[/datum/gas/oxygen] += max(((device_energy + removed.temperature * dynamic_heat_modifier) - T0C) / OXYGEN_RELEASE_MODIFIER, 0) if(produces_gas) env.merge(removed) diff --git a/code/modules/research/xenobiology/crossbreeding/chilling.dm b/code/modules/research/xenobiology/crossbreeding/chilling.dm index 25dbaa461f..40951fc35d 100644 --- a/code/modules/research/xenobiology/crossbreeding/chilling.dm +++ b/code/modules/research/xenobiology/crossbreeding/chilling.dm @@ -102,7 +102,7 @@ Chilling extracts: var/datum/gas_mixture/G = T.air if(istype(G)) G.assert_gas(/datum/gas/plasma) - G.gases[/datum/gas/plasma][MOLES] = 0 + G.gases[/datum/gas/plasma] = 0 filtered = TRUE G.garbage_collect() T.air_update_turf() diff --git a/code/modules/surgery/organs/lungs.dm b/code/modules/surgery/organs/lungs.dm index 1e22796b1b..f78a1043c9 100644 --- a/code/modules/surgery/organs/lungs.dm +++ b/code/modules/surgery/organs/lungs.dm @@ -87,10 +87,10 @@ breath.assert_gases(/datum/gas/oxygen, /datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/bz, /datum/gas/nitrogen, /datum/gas/tritium, /datum/gas/nitryl, /datum/gas/pluoxium, /datum/gas/stimulum) //Partial pressures in our breath - var/O2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/oxygen][MOLES])+(8*breath.get_breath_partial_pressure(breath_gases[/datum/gas/pluoxium][MOLES])) - var/N2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/nitrogen][MOLES]) - var/Toxins_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/plasma][MOLES]) - var/CO2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/carbon_dioxide][MOLES]) + var/O2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/oxygen])+(8*breath.get_breath_partial_pressure(breath_gases[/datum/gas/pluoxium])) + var/N2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/nitrogen]) + var/Toxins_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/plasma]) + var/CO2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/carbon_dioxide]) //-- OXY --// @@ -98,7 +98,7 @@ //Too much oxygen! //Yes, some species may not like it. if(safe_oxygen_max) if((O2_pp > safe_oxygen_max) && safe_oxygen_max == 0) //I guess plasma men technically need to have a check. - var/ratio = (breath_gases[/datum/gas/oxygen][MOLES]/safe_oxygen_max) * 10 + var/ratio = (breath_gases[/datum/gas/oxygen]/safe_oxygen_max) * 10 H.apply_damage_type(CLAMP(ratio, oxy_breath_dam_min, oxy_breath_dam_max), oxy_damage_type) H.throw_alert("too_much_oxy", /obj/screen/alert/too_much_oxy) @@ -121,18 +121,18 @@ //Too little oxygen! if(safe_oxygen_min) if(O2_pp < safe_oxygen_min) - gas_breathed = handle_too_little_breath(H, O2_pp, safe_oxygen_min, breath_gases[/datum/gas/oxygen][MOLES]) + gas_breathed = handle_too_little_breath(H, O2_pp, safe_oxygen_min, breath_gases[/datum/gas/oxygen]) H.throw_alert("not_enough_oxy", /obj/screen/alert/not_enough_oxy) else H.failed_last_breath = FALSE if(H.health >= H.crit_threshold) H.adjustOxyLoss(-5) - gas_breathed = breath_gases[/datum/gas/oxygen][MOLES] + gas_breathed = breath_gases[/datum/gas/oxygen] H.clear_alert("not_enough_oxy") //Exhale - breath_gases[/datum/gas/oxygen][MOLES] -= gas_breathed - breath_gases[/datum/gas/carbon_dioxide][MOLES] += gas_breathed + breath_gases[/datum/gas/oxygen] -= gas_breathed + breath_gases[/datum/gas/carbon_dioxide] += gas_breathed gas_breathed = 0 //-- Nitrogen --// @@ -140,7 +140,7 @@ //Too much nitrogen! if(safe_nitro_max) if(N2_pp > safe_nitro_max) - var/ratio = (breath_gases[/datum/gas/nitrogen][MOLES]/safe_nitro_max) * 10 + var/ratio = (breath_gases[/datum/gas/nitrogen]/safe_nitro_max) * 10 H.apply_damage_type(CLAMP(ratio, nitro_breath_dam_min, nitro_breath_dam_max), nitro_damage_type) H.throw_alert("too_much_nitro", /obj/screen/alert/too_much_nitro) H.losebreath += 2 @@ -150,18 +150,18 @@ //Too little nitrogen! if(safe_nitro_min) if(N2_pp < safe_nitro_min) - gas_breathed = handle_too_little_breath(H, N2_pp, safe_nitro_min, breath_gases[/datum/gas/nitrogen][MOLES]) + gas_breathed = handle_too_little_breath(H, N2_pp, safe_nitro_min, breath_gases[/datum/gas/nitrogen]) H.throw_alert("nitro", /obj/screen/alert/not_enough_nitro) else H.failed_last_breath = FALSE if(H.health >= H.crit_threshold) H.adjustOxyLoss(-5) - gas_breathed = breath_gases[/datum/gas/nitrogen][MOLES] + gas_breathed = breath_gases[/datum/gas/nitrogen] H.clear_alert("nitro") //Exhale - breath_gases[/datum/gas/nitrogen][MOLES] -= gas_breathed - breath_gases[/datum/gas/carbon_dioxide][MOLES] += gas_breathed + breath_gases[/datum/gas/nitrogen] -= gas_breathed + breath_gases[/datum/gas/carbon_dioxide] += gas_breathed gas_breathed = 0 //-- CO2 --// @@ -187,18 +187,18 @@ //Too little CO2! if(safe_co2_min) if(CO2_pp < safe_co2_min) - gas_breathed = handle_too_little_breath(H, CO2_pp, safe_co2_min, breath_gases[/datum/gas/carbon_dioxide][MOLES]) + gas_breathed = handle_too_little_breath(H, CO2_pp, safe_co2_min, breath_gases[/datum/gas/carbon_dioxide]) H.throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2) else H.failed_last_breath = FALSE if(H.health >= H.crit_threshold) H.adjustOxyLoss(-5) - gas_breathed = breath_gases[/datum/gas/carbon_dioxide][MOLES] + gas_breathed = breath_gases[/datum/gas/carbon_dioxide] H.clear_alert("not_enough_co2") //Exhale - breath_gases[/datum/gas/carbon_dioxide][MOLES] -= gas_breathed - breath_gases[/datum/gas/oxygen][MOLES] += gas_breathed + breath_gases[/datum/gas/carbon_dioxide] -= gas_breathed + breath_gases[/datum/gas/oxygen] += gas_breathed gas_breathed = 0 @@ -207,7 +207,7 @@ //Too much toxins! if(safe_toxins_max) if(Toxins_pp > safe_toxins_max) - var/ratio = (breath_gases[/datum/gas/plasma][MOLES]/safe_toxins_max) * 10 + var/ratio = (breath_gases[/datum/gas/plasma]/safe_toxins_max) * 10 H.apply_damage_type(CLAMP(ratio, tox_breath_dam_min, tox_breath_dam_max), tox_damage_type) H.throw_alert("too_much_tox", /obj/screen/alert/too_much_tox) else @@ -217,18 +217,18 @@ //Too little toxins! if(safe_toxins_min) if(Toxins_pp < safe_toxins_min) - gas_breathed = handle_too_little_breath(H, Toxins_pp, safe_toxins_min, breath_gases[/datum/gas/plasma][MOLES]) + gas_breathed = handle_too_little_breath(H, Toxins_pp, safe_toxins_min, breath_gases[/datum/gas/plasma]) H.throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox) else H.failed_last_breath = FALSE if(H.health >= H.crit_threshold) H.adjustOxyLoss(-5) - gas_breathed = breath_gases[/datum/gas/plasma][MOLES] + gas_breathed = breath_gases[/datum/gas/plasma] H.clear_alert("not_enough_tox") //Exhale - breath_gases[/datum/gas/plasma][MOLES] -= gas_breathed - breath_gases[/datum/gas/carbon_dioxide][MOLES] += gas_breathed + breath_gases[/datum/gas/plasma] -= gas_breathed + breath_gases[/datum/gas/carbon_dioxide] += gas_breathed gas_breathed = 0 @@ -238,7 +238,7 @@ // N2O - var/SA_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/nitrous_oxide][MOLES]) + var/SA_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/nitrous_oxide]) if(SA_pp > SA_para_min) // Enough to make us stunned for a bit H.Unconscious(60) // 60 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 @@ -249,7 +249,7 @@ // BZ - var/bz_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/bz][MOLES]) + var/bz_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/bz]) if(bz_pp > BZ_trip_balls_min) H.hallucination += 10 H.reagents.add_reagent("bz_metabolites",5) @@ -262,14 +262,14 @@ // Tritium - var/trit_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/tritium][MOLES]) + var/trit_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/tritium]) if (trit_pp > 50) H.radiation += trit_pp/2 //If you're breathing in half an atmosphere of radioactive gas, you fucked up. else H.radiation += trit_pp/10 // Nitryl - var/nitryl_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/nitryl][MOLES]) + var/nitryl_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/nitryl]) if (prob(nitryl_pp)) to_chat(H, "Your mouth feels like it's burning!") if (nitryl_pp >40) @@ -280,22 +280,22 @@ H.silent = max(H.silent, 3) else H.adjustFireLoss(nitryl_pp/4) - gas_breathed = breath_gases[/datum/gas/nitryl][MOLES] + gas_breathed = breath_gases[/datum/gas/nitryl] if (gas_breathed > gas_stimulation_min) H.reagents.add_reagent("no2",1) - breath_gases[/datum/gas/nitryl][MOLES]-=gas_breathed + breath_gases[/datum/gas/nitryl]-=gas_breathed // Stimulum - gas_breathed = breath_gases[/datum/gas/stimulum][MOLES] + gas_breathed = breath_gases[/datum/gas/stimulum] if (gas_breathed > gas_stimulation_min) var/existing = H.reagents.get_reagent_amount("stimulum") H.reagents.add_reagent("stimulum",max(0, 1 - existing)) - breath_gases[/datum/gas/stimulum][MOLES]-=gas_breathed + breath_gases[/datum/gas/stimulum]-=gas_breathed // Miasma if (breath_gases[/datum/gas/miasma]) - var/miasma_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/miasma][MOLES]) + var/miasma_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/miasma]) //Miasma sickness if(prob(0.5 * miasma_pp)) @@ -334,7 +334,7 @@ // Then again, this is a purely hypothetical scenario and hardly reachable owner.adjust_disgust(0.1 * miasma_pp) - breath_gases[/datum/gas/miasma][MOLES]-=gas_breathed + breath_gases[/datum/gas/miasma]-=gas_breathed // Clear out moods when no miasma at all else diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm index f0e5c35a8b..5c58380d7b 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm @@ -90,10 +90,10 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! var/list/env_gases = environment.gases environment.assert_gases(arglist(GLOB.hardcoded_gases)) - var/o2_concentration = env_gases[/datum/gas/oxygen][MOLES]/total_moles - var/n2_concentration = env_gases[/datum/gas/nitrogen][MOLES]/total_moles - var/co2_concentration = env_gases[/datum/gas/carbon_dioxide][MOLES]/total_moles - var/plasma_concentration = env_gases[/datum/gas/plasma][MOLES]/total_moles + var/o2_concentration = env_gases[/datum/gas/oxygen]/total_moles + var/n2_concentration = env_gases[/datum/gas/nitrogen]/total_moles + var/co2_concentration = env_gases[/datum/gas/carbon_dioxide]/total_moles + var/plasma_concentration = env_gases[/datum/gas/plasma]/total_moles environment.garbage_collect() if(abs(n2_concentration - N2STANDARD) < 20) @@ -120,8 +120,8 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! for(var/id in env_gases) if(id in GLOB.hardcoded_gases) continue - var/gas_concentration = env_gases[id][MOLES]/total_moles - to_chat(user, "[env_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %") + var/gas_concentration = env_gases[id]/total_moles + to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %") to_chat(user, "Temperature: [round(environment.temperature-T0C)] °C") /obj/item/analyzer/nose/AltClick(mob/user) //Barometer output for measuring when the next storm happens From 20784855943c49a54801b1bebd47576cbbf4e17d Mon Sep 17 00:00:00 2001 From: deathride58 Date: Thu, 11 Apr 2019 18:20:55 -0400 Subject: [PATCH 004/370] minor code cleanup + fixes plasma fixation --- code/__DEFINES/atmospherics.dm | 5 +---- code/datums/diseases/advance/symptoms/heal.dm | 2 +- code/modules/atmospherics/gasmixtures/gas_mixture.dm | 2 +- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index e593cfef82..bb966e46e9 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -1,8 +1,5 @@ //LISTMOS //indices of values in gas lists. -#define MOLES 1 -#define ARCHIVE 2 -#define GAS_META 3 #define META_GAS_SPECIFIC_HEAT 1 #define META_GAS_NAME 2 #define META_GAS_MOLES_VISIBLE 3 @@ -243,7 +240,7 @@ //HELPERS #define THERMAL_ENERGY(gas) (gas.temperature * gas.heat_capacity()) -#define ADD_GAS(gas_id, out_list) out_list[gas_id] = 0; +#define ADD_GAS(gas_id, out_list) out_list[gas_id] = 0 #define ASSERT_GAS(gas_id, gas_mixture) if (!gas_mixture.gases[gas_id]) { ADD_GAS(gas_id, gas_mixture.gases) }; diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 9f3049dddd..ff9eda0766 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -371,7 +371,7 @@ if(M.loc) environment = M.loc.return_air() if(environment) - plasmamount = environment.gases["plasma"] + plasmamount = environment.gases[/datum/gas/plasma] if(plasmamount && plasmamount > GLOB.meta_gas_info[/datum/gas/plasma][META_GAS_MOLES_VISIBLE]) //if there's enough plasma in the air to see . += power * 0.5 if(M.reagents.has_reagent("plasma")) diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 156798bb0d..0cf2718740 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -62,7 +62,7 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm //PV = nRT -/datum/gas_mixture/proc/heat_capacity(data = MOLES) //joules per kelvin +/datum/gas_mixture/proc/heat_capacity() //joules per kelvin var/list/cached_gases = gases . = 0 for(var/id in cached_gases) From b1467b4ec4be7c0077ccf546cc65a5819ddc9f9d Mon Sep 17 00:00:00 2001 From: deathride58 Date: Fri, 12 Apr 2019 08:13:51 -0400 Subject: [PATCH 005/370] Optimizes memory usage even further by removing the list initialization in gas mixture new() in favor of having the lists start as empty lists. seems to save about 20mb of memory on box judging from one unscientific single test --- code/__DEFINES/atmospherics.dm | 3 +++ code/modules/atmospherics/gasmixtures/gas_mixture.dm | 9 +++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index bb966e46e9..bc0399d3cf 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -240,8 +240,11 @@ //HELPERS #define THERMAL_ENERGY(gas) (gas.temperature * gas.heat_capacity()) + +//REMOVE REMOVE REMOVE REMOVE #define ADD_GAS(gas_id, out_list) out_list[gas_id] = 0 +//REMOVEREMOVEREMOVE #define ASSERT_GAS(gas_id, gas_mixture) if (!gas_mixture.gases[gas_id]) { ADD_GAS(gas_id, gas_mixture.gases) }; diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 0cf2718740..904a500755 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -9,24 +9,24 @@ What are the archived variables for? once gases got hot enough, most procedures wouldnt occur due to the fact that the mole counts would get rounded away. Thus, we lowered it a few orders of magnititude */ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm /datum/gas_mixture - var/list/gases + var/list/gases = list() var/temperature = 0 //kelvins var/tmp/temperature_archived = 0 var/volume = CELL_VOLUME //liters var/last_share = 0 - var/list/reaction_results + var/list/reaction_results = list() var/list/analyzer_results //used for analyzer feedback - not initialized until its used var/gc_share = FALSE // Whether to call garbage_collect() on the sharer during shares, used for immutable mixtures /datum/gas_mixture/New(volume) - gases = new if (!isnull(volume)) src.volume = volume - reaction_results = new //listmos procs //use the macros in performance intensive areas. for their definitions, refer to code/__DEFINES/atmospherics.dm +//UNOMOS - whoever originally wrote this is a sadist that just wants to see byond suffer. + //assert_gas(gas_id) - used to guarantee that the gas list for this id exists in gas_mixture.gases. //Must be used before adding to a gas. May be used before reading from a gas. /datum/gas_mixture/proc/assert_gas(gas_id) @@ -54,6 +54,7 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm //Must be used after subtracting from a gas. Must be used after assert_gas() //if assert_gas() was called only to read from the gas. //By removing empty gases, processing speed is increased. + //UNOMOS - above comment right above this line is now fairly inaccurate, as the system no longer makes gracious abuse of lists for storing gasses moles. /datum/gas_mixture/proc/garbage_collect(list/tocheck) var/list/cached_gases = gases for(var/id in (tocheck || cached_gases)) From 2c9deab42e1fe9d0ea19c97cf6f0dbd14129fc61 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Sun, 14 Apr 2019 10:33:39 -0400 Subject: [PATCH 006/370] removes add_gas() and assert_gas(). next up: do further testing with garbage_collect() present and not present --- code/__DEFINES/atmospherics.dm | 8 ---- .../game/mecha/equipment/tools/other_tools.dm | 1 - code/game/mecha/mecha.dm | 1 - .../effects/effect_system/effects_smoke.dm | 1 - .../objects/effects/spawners/bombspawner.dm | 2 - code/game/objects/items/chrono_eraser.dm | 1 - code/game/objects/items/devices/scanners.dm | 1 - code/game/objects/items/tanks/jetpack.dm | 1 - code/game/objects/items/tanks/tank_types.dm | 6 --- .../transit_tubes/transit_tube_pod.dm | 1 - code/game/turfs/change_turf.dm | 1 - code/game/turfs/open.dm | 1 - code/modules/admin/verbs/debug.dm | 1 - code/modules/assembly/bomb.dm | 1 - .../atmospherics/gasmixtures/gas_mixture.dm | 42 ++++--------------- .../gasmixtures/immutable_mixtures.dm | 1 - .../atmospherics/gasmixtures/reactions.dm | 11 ----- .../components/trinary_devices/filter.dm | 1 - .../components/unary_devices/tank.dm | 2 - .../components/unary_devices/vent_scrubber.dm | 1 - .../atmospherics/machinery/other/miner.dm | 1 - .../machinery/portable/canister.dm | 2 - .../machinery/portable/scrubber.dm | 1 - .../subtypes/atmospherics.dm | 1 - code/modules/mob/living/carbon/alien/life.dm | 2 - code/modules/mob/living/carbon/life.dm | 2 - .../mob/living/simple_animal/simple_animal.dm | 1 - code/modules/power/singularity/collector.dm | 2 - code/modules/power/supermatter/supermatter.dm | 1 - .../xenobiology/crossbreeding/chilling.dm | 1 - code/modules/surgery/organs/lungs.dm | 2 - .../living/silicon/robot/dogborg_equipment.dm | 1 - 32 files changed, 7 insertions(+), 95 deletions(-) diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index bc0399d3cf..ae79360dd2 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -240,14 +240,6 @@ //HELPERS #define THERMAL_ENERGY(gas) (gas.temperature * gas.heat_capacity()) - -//REMOVE REMOVE REMOVE REMOVE -#define ADD_GAS(gas_id, out_list) out_list[gas_id] = 0 - -//REMOVEREMOVEREMOVE -#define ASSERT_GAS(gas_id, gas_mixture) if (!gas_mixture.gases[gas_id]) { ADD_GAS(gas_id, gas_mixture.gases) }; - - //prefer this to gas_mixture/total_moles in performance critical areas #define TOTAL_MOLES(cached_gases, out_var)\ out_var = 0;\ diff --git a/code/game/mecha/equipment/tools/other_tools.dm b/code/game/mecha/equipment/tools/other_tools.dm index e118ca81fd..80c92c7922 100644 --- a/code/game/mecha/equipment/tools/other_tools.dm +++ b/code/game/mecha/equipment/tools/other_tools.dm @@ -421,7 +421,6 @@ if(!istype(T)) return var/datum/gas_mixture/GM = new - GM.add_gas(/datum/gas/plasma) if(prob(10)) GM.gases[/datum/gas/plasma] += 100 GM.temperature = 1500+T0C //should be enough to start a fire diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index ecd0cbe922..fcbed0fc4a 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -237,7 +237,6 @@ cabin_air = new cabin_air.temperature = T20C cabin_air.volume = 200 - cabin_air.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) cabin_air.gases[/datum/gas/oxygen] = O2STANDARD*cabin_air.volume/(R_IDEAL_GAS_EQUATION*cabin_air.temperature) cabin_air.gases[/datum/gas/nitrogen] = N2STANDARD*cabin_air.volume/(R_IDEAL_GAS_EQUATION*cabin_air.temperature) return cabin_air diff --git a/code/game/objects/effects/effect_system/effects_smoke.dm b/code/game/objects/effects/effect_system/effects_smoke.dm index 9933d49e0d..08921ecb8b 100644 --- a/code/game/objects/effects/effect_system/effects_smoke.dm +++ b/code/game/objects/effects/effect_system/effects_smoke.dm @@ -172,7 +172,6 @@ qdel(H) var/list/G_gases = G.gases if(G_gases[/datum/gas/plasma]) - G.assert_gas(/datum/gas/nitrogen) G_gases[/datum/gas/nitrogen] += (G_gases[/datum/gas/plasma]) G_gases[/datum/gas/plasma] = 0 G.garbage_collect() diff --git a/code/game/objects/effects/spawners/bombspawner.dm b/code/game/objects/effects/spawners/bombspawner.dm index 0d3818ff5f..426abb5514 100644 --- a/code/game/objects/effects/spawners/bombspawner.dm +++ b/code/game/objects/effects/spawners/bombspawner.dm @@ -19,11 +19,9 @@ var/obj/item/tank/internals/plasma/PT = new(V) var/obj/item/tank/internals/oxygen/OT = new(V) - PT.air_contents.assert_gas(/datum/gas/plasma) PT.air_contents.gases[/datum/gas/plasma] = pressure_p*PT.volume/(R_IDEAL_GAS_EQUATION*CELSIUS_TO_KELVIN(temp_p)) PT.air_contents.temperature = CELSIUS_TO_KELVIN(temp_p) - OT.air_contents.assert_gas(/datum/gas/oxygen) OT.air_contents.gases[/datum/gas/oxygen] = pressure_o*OT.volume/(R_IDEAL_GAS_EQUATION*CELSIUS_TO_KELVIN(temp_o)) OT.air_contents.temperature = CELSIUS_TO_KELVIN(temp_o) diff --git a/code/game/objects/items/chrono_eraser.dm b/code/game/objects/items/chrono_eraser.dm index 57d30fede6..344e7c5472 100644 --- a/code/game/objects/items/chrono_eraser.dm +++ b/code/game/objects/items/chrono_eraser.dm @@ -248,7 +248,6 @@ /obj/effect/chrono_field/return_air() //we always have nominal air and temperature var/datum/gas_mixture/GM = new - GM.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) GM.gases[/datum/gas/oxygen] = MOLES_O2STANDARD GM.gases[/datum/gas/nitrogen] = MOLES_N2STANDARD GM.temperature = T20C diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 3cbb9dfe93..20262d5052 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -419,7 +419,6 @@ SLIME SCANNER if(total_moles) var/list/env_gases = environment.gases - environment.assert_gases(arglist(GLOB.hardcoded_gases)) var/o2_concentration = env_gases[/datum/gas/oxygen]/total_moles var/n2_concentration = env_gases[/datum/gas/nitrogen]/total_moles var/co2_concentration = env_gases[/datum/gas/carbon_dioxide]/total_moles diff --git a/code/game/objects/items/tanks/jetpack.dm b/code/game/objects/items/tanks/jetpack.dm index 0707913bd5..44be1b53db 100644 --- a/code/game/objects/items/tanks/jetpack.dm +++ b/code/game/objects/items/tanks/jetpack.dm @@ -17,7 +17,6 @@ /obj/item/tank/jetpack/New() ..() if(gas_type) - air_contents.assert_gas(gas_type) air_contents.gases[gas_type] = (6 * ONE_ATMOSPHERE) * volume / (R_IDEAL_GAS_EQUATION * T20C) ion_trail = new diff --git a/code/game/objects/items/tanks/tank_types.dm b/code/game/objects/items/tanks/tank_types.dm index 3fcd8a7656..c16762467e 100644 --- a/code/game/objects/items/tanks/tank_types.dm +++ b/code/game/objects/items/tanks/tank_types.dm @@ -21,7 +21,6 @@ /obj/item/tank/internals/oxygen/New() ..() - air_contents.assert_gas(/datum/gas/oxygen) air_contents.gases[/datum/gas/oxygen] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -49,7 +48,6 @@ /obj/item/tank/internals/anesthetic/New() ..() - air_contents.assert_gases(/datum/gas/oxygen, /datum/gas/nitrous_oxide) air_contents.gases[/datum/gas/oxygen] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD air_contents.gases[/datum/gas/nitrous_oxide] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD return @@ -67,7 +65,6 @@ /obj/item/tank/internals/air/New() ..() - air_contents.assert_gases(/datum/gas/oxygen, /datum/gas/nitrogen) air_contents.gases[/datum/gas/oxygen] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD air_contents.gases[/datum/gas/nitrogen] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD return @@ -87,7 +84,6 @@ /obj/item/tank/internals/plasma/New() ..() - air_contents.assert_gas(/datum/gas/plasma) air_contents.gases[/datum/gas/plasma] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -124,7 +120,6 @@ /obj/item/tank/internals/plasmaman/New() ..() - air_contents.assert_gas(/datum/gas/plasma) air_contents.gases[/datum/gas/plasma] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -166,7 +161,6 @@ /obj/item/tank/internals/emergency_oxygen/New() ..() - air_contents.assert_gas(/datum/gas/oxygen) air_contents.gases[/datum/gas/oxygen] = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return diff --git a/code/game/objects/structures/transit_tubes/transit_tube_pod.dm b/code/game/objects/structures/transit_tubes/transit_tube_pod.dm index 30d6edbd12..ee46538be1 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_pod.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_pod.dm @@ -11,7 +11,6 @@ /obj/structure/transit_tube_pod/Initialize() . = ..() - air_contents.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) air_contents.gases[/datum/gas/oxygen] = MOLES_O2STANDARD air_contents.gases[/datum/gas/nitrogen] = MOLES_N2STANDARD air_contents.temperature = T20C diff --git a/code/game/turfs/change_turf.dm b/code/game/turfs/change_turf.dm index 3834612466..e441ccd6cc 100644 --- a/code/game/turfs/change_turf.dm +++ b/code/game/turfs/change_turf.dm @@ -297,7 +297,6 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( continue var/list/S_gases = S.air.gases for(var/id in S_gases) - ASSERT_GAS(id, total) total_gases[id] += S_gases[id] total.temperature += S.air.temperature diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index 2873ab8bf5..79bf8f279e 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -292,6 +292,5 @@ pulse_strength = min(pulse_strength,air.gases[/datum/gas/carbon_dioxide]*1000,air.gases[/datum/gas/oxygen]*2000) //Ensures matter is conserved properly air.gases[/datum/gas/carbon_dioxide]=max(air.gases[/datum/gas/carbon_dioxide]-(pulse_strength/1000),0) air.gases[/datum/gas/oxygen]=max(air.gases[/datum/gas/oxygen]-(pulse_strength/2000),0) - air.assert_gas(/datum/gas/pluoxium) air.gases[/datum/gas/pluoxium]+=(pulse_strength/4000) air.garbage_collect() diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 6052bc1d79..57dc357859 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -841,7 +841,6 @@ GLOBAL_PROTECT(AdminProcCallSpamPrevention) if(Rad.anchored) if(!Rad.loaded_tank) var/obj/item/tank/internals/plasma/Plasma = new/obj/item/tank/internals/plasma(Rad) - Plasma.air_contents.assert_gas(/datum/gas/plasma) Plasma.air_contents.gases[/datum/gas/plasma] = 70 Rad.drainratio = 0 Rad.loaded_tank = Plasma diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index 24ad850c74..75a0492785 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -143,7 +143,6 @@ return /obj/item/tank/proc/ignite() //This happens when a bomb is told to explode - air_contents.assert_gases(/datum/gas/plasma, /datum/gas/oxygen) var/fuel_moles = air_contents.gases[/datum/gas/plasma] + air_contents.gases[/datum/gas/oxygen]/6 air_contents.garbage_collect() var/datum/gas_mixture/bomb_mixture = air_contents.copy() diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 904a500755..570b62a081 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -27,34 +27,12 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm //UNOMOS - whoever originally wrote this is a sadist that just wants to see byond suffer. - //assert_gas(gas_id) - used to guarantee that the gas list for this id exists in gas_mixture.gases. - //Must be used before adding to a gas. May be used before reading from a gas. -/datum/gas_mixture/proc/assert_gas(gas_id) - ASSERT_GAS(gas_id, src) - - //assert_gases(args) - shorthand for calling ASSERT_GAS() once for each gas type. -/datum/gas_mixture/proc/assert_gases() - for(var/id in args) - ASSERT_GAS(id, src) - - //add_gas(gas_id) - similar to assert_gas(), but does not check for an existing - //gas list for this id. This can clobber existing gases. - //Used instead of assert_gas() when you know the gas does not exist. Faster than assert_gas(). -/datum/gas_mixture/proc/add_gas(gas_id) - ADD_GAS(gas_id, gases) - - //add_gases(args) - shorthand for calling add_gas() once for each gas_type. -/datum/gas_mixture/proc/add_gases() - var/cached_gases = gases - for(var/id in args) - ADD_GAS(id, cached_gases) - //garbage_collect() - removes any gas list which is empty. //If called with a list as an argument, only removes gas lists with IDs from that list. //Must be used after subtracting from a gas. Must be used after assert_gas() //if assert_gas() was called only to read from the gas. //By removing empty gases, processing speed is increased. - //UNOMOS - above comment right above this line is now fairly inaccurate, as the system no longer makes gracious abuse of lists for storing gasses moles. + //UNOMOS - i have no idea exactly what the fuck or how the fuck it's the case, but removing this proc can and will completely nullify all of the performance gain from removing add_gas and assert_gas. so uh, dont remove it i guess. Why this shit isn't a define is beyond me. /datum/gas_mixture/proc/garbage_collect(list/tocheck) var/list/cached_gases = gases for(var/id in (tocheck || cached_gases)) @@ -156,7 +134,6 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm var/list/giver_gases = giver.gases //gas transfer for(var/giver_id in giver_gases) - ASSERT_GAS(giver_id, src) cached_gases[giver_id] += giver_gases[giver_id] return 1 @@ -173,7 +150,6 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm removed.temperature = temperature for(var/id in cached_gases) - ADD_GAS(id, removed.gases) removed_gases[id] = QUANTIZE((cached_gases[id] / sum) * amount) cached_gases[id] -= removed_gases[id] garbage_collect() @@ -191,7 +167,6 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm removed.temperature = temperature for(var/id in cached_gases) - ADD_GAS(id, removed.gases) removed_gases[id] = QUANTIZE(cached_gases[id] * ratio) cached_gases[id] -= removed_gases[id] @@ -206,7 +181,6 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm copy.temperature = temperature for(var/id in cached_gases) - ADD_GAS(id, copy.gases) copy_gases[id] = cached_gases[id] return copy @@ -218,7 +192,6 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm temperature = sample.temperature for(var/id in sample_gases) - ASSERT_GAS(id,src) cached_gases[id] = sample_gases[id] //remove all gases not in the sample @@ -247,7 +220,6 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm var/path = id if(!ispath(path)) path = gas_id2path(path) //a lot of these strings can't have embedded expressions (especially for mappers), so support for IDs needs to stick around - ADD_GAS(path, gases) gases[path] = text2num(gas[id]) return 1 @@ -271,16 +243,16 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm var/moved_moles = 0 var/abs_moved_moles = 0 + //we're gonna define these vars outside of this for loop because as it turns out, var declaration is pricy + var/delta + var/gas_heat_capacity //GAS TRANSFER - for(var/id in sharer_gases - cached_gases) // create gases not in our cache - ADD_GAS(id, gases) - for(var/id in cached_gases) // transfer gases - ASSERT_GAS(id, sharer) + for(var/id in cached_gases | sharer_gases) // transfer gases - var/delta = QUANTIZE(cached_gases[id] - sharer_gases[id])/(atmos_adjacent_turfs+1) //the amount of gas that gets moved between the mixtures + delta = QUANTIZE(cached_gases[id] - sharer_gases[id])/(atmos_adjacent_turfs+1) //the amount of gas that gets moved between the mixtures if(delta && abs_temperature_delta > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER) - var/gas_heat_capacity = delta * GLOB.meta_gas_info[id][META_GAS_SPECIFIC_HEAT] + gas_heat_capacity = delta * GLOB.meta_gas_info[id][META_GAS_SPECIFIC_HEAT] if(delta > 0) heat_capacity_self_to_sharer += gas_heat_capacity else diff --git a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm index df912ff478..77a00841cf 100644 --- a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm +++ b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm @@ -61,7 +61,6 @@ /datum/gas_mixture/immutable/cloner/garbage_collect() ..() - ADD_GAS(/datum/gas/nitrogen, gases) gases[/datum/gas/nitrogen] = MOLES_O2STANDARD + MOLES_N2STANDARD /datum/gas_mixture/immutable/cloner/heat_capacity() diff --git a/code/modules/atmospherics/gasmixtures/reactions.dm b/code/modules/atmospherics/gasmixtures/reactions.dm index ff1c27805e..e963582020 100644 --- a/code/modules/atmospherics/gasmixtures/reactions.dm +++ b/code/modules/atmospherics/gasmixtures/reactions.dm @@ -99,7 +99,6 @@ if(location && prob(10) && burned_fuel > TRITIUM_MINIMUM_RADIATION_ENERGY) //woah there let's not crash the server radiation_pulse(location, energy_released/TRITIUM_BURN_RADIOACTIVITY_FACTOR) - ASSERT_GAS(/datum/gas/water_vapor, air) //oxygen+more-or-less hydrogen=H2O cached_gases[/datum/gas/water_vapor] += burned_fuel/TRITIUM_BURN_OXY_FACTOR cached_results["fire"] += burned_fuel @@ -169,10 +168,8 @@ cached_gases[/datum/gas/plasma] = QUANTIZE(cached_gases[/datum/gas/plasma] - plasma_burn_rate) cached_gases[/datum/gas/oxygen] = QUANTIZE(cached_gases[/datum/gas/oxygen] - (plasma_burn_rate * oxygen_burn_rate)) if (super_saturation) - ASSERT_GAS(/datum/gas/tritium,air) cached_gases[/datum/gas/tritium] += plasma_burn_rate else - ASSERT_GAS(/datum/gas/carbon_dioxide,air) cached_gases[/datum/gas/carbon_dioxide] += plasma_burn_rate energy_released += FIRE_PLASMA_ENERGY_RELEASED * (plasma_burn_rate) @@ -262,7 +259,6 @@ else if (power_ratio > FUSION_HIGH_TIER_THRESHOLD) //power ratio 20-50; High tier. The reaction is so energized that it fuses into a small amount of stimulum, and some pluoxium. Very dangerous, but super cool and super useful. reaction_energy += gases_fused * FUSION_RELEASE_ENERGY_HIGH * (power_ratio / FUSION_ENERGY_DIVISOR_HIGH) - air.assert_gases(/datum/gas/stimulum, /datum/gas/pluoxium) cached_gases[/datum/gas/stimulum] += gases_fused * FUSION_GAS_CREATION_FACTOR_STIM //40% of the gas is converted to energy, 60% to stim and pluox cached_gases[/datum/gas/pluoxium] += gases_fused * FUSION_GAS_CREATION_FACTOR_PLUOX fusion_prepare_to_die_edition_rng = power_ratio //Now we're getting into dangerous territory @@ -271,7 +267,6 @@ else if (power_ratio > FUSION_MID_TIER_THRESHOLD) //power_ratio 5 to 20; Mediation is overpowered, fusion reaction starts to break down. reaction_energy += gases_fused * FUSION_RELEASE_ENERGY_MID * (power_ratio / FUSION_ENERGY_DIVISOR_MID) - air.assert_gases(/datum/gas/nitryl,/datum/gas/nitrous_oxide) cached_gases[/datum/gas/nitryl] += gases_fused * FUSION_GAS_CREATION_FACTOR_NITRYL //20% of the gas is converted to energy, 80% to nitryl and N2O cached_gases[/datum/gas/nitrous_oxide] += gases_fused * FUSION_GAS_CREATION_FACTOR_N2O fusion_prepare_to_die_edition_rng = power_ratio * FUSION_MID_TIER_RAD_PROB_FACTOR //Still unlikely, but don't stand next to the reaction unprotected @@ -279,7 +274,6 @@ else //power ratio 0 to 5; Gas power is overpowered. Fusion isn't nearly as powerful. reaction_energy += gases_fused * FUSION_RELEASE_ENERGY_LOW * (power_ratio / FUSION_ENERGY_DIVISOR_LOW) - air.assert_gases(/datum/gas/bz, /datum/gas/carbon_dioxide) cached_gases[/datum/gas/bz] += gases_fused * FUSION_GAS_CREATION_FACTOR_BZ //10% of the gas is converted to energy, 90% to BZ and CO2 cached_gases[/datum/gas/carbon_dioxide] += gases_fused * FUSION_GAS_CREATION_FACTOR_CO2 fusion_prepare_to_die_edition_rng = power_ratio * FUSION_LOW_TIER_RAD_PROB_FACTOR //Low, but still something to look out for @@ -324,7 +318,6 @@ var/old_heat_capacity = air.heat_capacity() var/heat_efficency = min(temperature/(FIRE_MINIMUM_TEMPERATURE_TO_EXIST*100),cached_gases[/datum/gas/oxygen],cached_gases[/datum/gas/nitrogen]) var/energy_used = heat_efficency*NITRYL_FORMATION_ENERGY - ASSERT_GAS(/datum/gas/nitryl,air) if ((cached_gases[/datum/gas/oxygen] - heat_efficency < 0 )|| (cached_gases[/datum/gas/nitrogen] - heat_efficency < 0)) //Shouldn't produce gas from nothing. return NO_REACTION cached_gases[/datum/gas/oxygen] -= heat_efficency @@ -359,7 +352,6 @@ var/energy_released = 2*reaction_efficency*FIRE_CARBON_ENERGY_RELEASED if ((cached_gases[/datum/gas/nitrous_oxide] - reaction_efficency < 0 )|| (cached_gases[/datum/gas/plasma] - (2*reaction_efficency) < 0)) //Shouldn't produce gas from nothing. return NO_REACTION - ASSERT_GAS(/datum/gas/bz,air) cached_gases[/datum/gas/bz] += reaction_efficency cached_gases[/datum/gas/nitrous_oxide] -= reaction_efficency cached_gases[/datum/gas/plasma] -= 2*reaction_efficency @@ -391,7 +383,6 @@ var/heat_scale = min(air.temperature/STIMULUM_HEAT_SCALE,cached_gases[/datum/gas/tritium],cached_gases[/datum/gas/plasma],cached_gases[/datum/gas/nitryl]) var/stim_energy_change = heat_scale + STIMULUM_FIRST_RISE*(heat_scale**2) - STIMULUM_FIRST_DROP*(heat_scale**3) + STIMULUM_SECOND_RISE*(heat_scale**4) - STIMULUM_ABSOLUTE_DROP*(heat_scale**5) - ASSERT_GAS(/datum/gas/stimulum,air) if ((cached_gases[/datum/gas/tritium] - heat_scale < 0 )|| (cached_gases[/datum/gas/plasma] - heat_scale < 0) || (cached_gases[/datum/gas/nitryl] - heat_scale < 0)) //Shouldn't produce gas from nothing. return NO_REACTION cached_gases[/datum/gas/stimulum]+= heat_scale/10 @@ -418,7 +409,6 @@ /datum/gas_reaction/nobliumformation/react(datum/gas_mixture/air) var/list/cached_gases = air.gases - air.assert_gases(/datum/gas/hypernoblium,/datum/gas/bz) var/old_heat_capacity = air.heat_capacity() var/nob_formed = min((cached_gases[/datum/gas/nitrogen]+cached_gases[/datum/gas/tritium])/100,cached_gases[/datum/gas/tritium]/10,cached_gases[/datum/gas/nitrogen]/20) var/energy_taken = nob_formed*(NOBLIUM_FORMATION_ENERGY/(max(cached_gases[/datum/gas/bz],1))) @@ -455,7 +445,6 @@ //Replace miasma with oxygen var/cleaned_air = min(cached_gases[/datum/gas/miasma], 20 + (air.temperature - FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 70) / 20) cached_gases[/datum/gas/miasma] -= cleaned_air - ASSERT_GAS(/datum/gas/oxygen,air) cached_gases[/datum/gas/oxygen] += cleaned_air //Possibly burning a bit of organic matter through maillard reaction, so a *tiny* bit more heat would be understandable diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index 4d00cdf58e..b834d65084 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -159,7 +159,6 @@ var/datum/gas_mixture/filtered_out = new filtered_out.temperature = removed.temperature - filtered_out.add_gas(filter_type) filtered_out.gases[filter_type] = removed.gases[filter_type] removed.gases[filter_type] = 0 diff --git a/code/modules/atmospherics/machinery/components/unary_devices/tank.dm b/code/modules/atmospherics/machinery/components/unary_devices/tank.dm index 6bde4fd9e7..7aab990b18 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/tank.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/tank.dm @@ -17,7 +17,6 @@ air_contents.volume = volume air_contents.temperature = T20C if(gas_type) - air_contents.assert_gas(gas_type) air_contents.gases[gas_type] = AIR_CONTENTS name = "[name] ([GLOB.meta_gas_info[gas_type][META_GAS_NAME]])" @@ -44,6 +43,5 @@ /obj/machinery/atmospherics/components/unary/tank/air/New() ..() var/datum/gas_mixture/air_contents = airs[1] - air_contents.assert_gases(/datum/gas/oxygen, /datum/gas/nitrogen) air_contents.gases[/datum/gas/oxygen] = AIR_CONTENTS * 0.2 air_contents.gases[/datum/gas/nitrogen] = AIR_CONTENTS * 0.8 diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index 485d082662..02bde682a9 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -197,7 +197,6 @@ filtered_out.temperature = removed.temperature for(var/gas in filter_types & removed_gases) - filtered_out.add_gas(gas) filtered_gases[gas] = removed_gases[gas] removed_gases[gas] = 0 diff --git a/code/modules/atmospherics/machinery/other/miner.dm b/code/modules/atmospherics/machinery/other/miner.dm index 7c534303d1..adb17b4e94 100644 --- a/code/modules/atmospherics/machinery/other/miner.dm +++ b/code/modules/atmospherics/machinery/other/miner.dm @@ -131,7 +131,6 @@ if(!isopenturf(O)) return FALSE var/datum/gas_mixture/merger = new - merger.assert_gas(spawn_id) merger.gases[spawn_id] = (spawn_mol) merger.temperature = spawn_temp O.assume_air(merger) diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm index 33f6a73c6b..65fcb078d7 100644 --- a/code/modules/atmospherics/machinery/portable/canister.dm +++ b/code/modules/atmospherics/machinery/portable/canister.dm @@ -204,14 +204,12 @@ /obj/machinery/portable_atmospherics/canister/proc/create_gas() if(gas_type) - air_contents.add_gas(gas_type) if(starter_temp) air_contents.temperature = starter_temp air_contents.gases[gas_type] = (maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) if(starter_temp) air_contents.temperature = starter_temp /obj/machinery/portable_atmospherics/canister/air/create_gas() - air_contents.add_gases(/datum/gas/oxygen, /datum/gas/nitrogen) air_contents.gases[/datum/gas/oxygen] = (O2STANDARD * maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) air_contents.gases[/datum/gas/nitrogen] = (N2STANDARD * maximum_pressure * filled) * air_contents.volume / (R_IDEAL_GAS_EQUATION * air_contents.temperature) diff --git a/code/modules/atmospherics/machinery/portable/scrubber.dm b/code/modules/atmospherics/machinery/portable/scrubber.dm index 800ac78713..eed7afaaa4 100644 --- a/code/modules/atmospherics/machinery/portable/scrubber.dm +++ b/code/modules/atmospherics/machinery/portable/scrubber.dm @@ -45,7 +45,6 @@ filtered.temperature = filtering.temperature for(var/gas in filtering.gases & scrubbing) - filtered.add_gas(gas) filtered.gases[gas] = filtering.gases[gas] // Shuffle the "bad" gasses to the filtered mixture. filtering.gases[gas] = 0 filtering.garbage_collect() // Now that the gasses are set to 0, clean up the mixture. diff --git a/code/modules/integrated_electronics/subtypes/atmospherics.dm b/code/modules/integrated_electronics/subtypes/atmospherics.dm index be4b15610f..d9408ca466 100644 --- a/code/modules/integrated_electronics/subtypes/atmospherics.dm +++ b/code/modules/integrated_electronics/subtypes/atmospherics.dm @@ -374,7 +374,6 @@ obj/item/integrated_circuit/atmospherics/connector/portableConnectorReturnAir() if(GLOB.meta_gas_info[filtered_gas][META_GAS_NAME] in wanted) //The gas that is put in all the filtered out gases filtered_out.temperature = removed.temperature - filtered_out.add_gas(filtered_gas) filtered_out.gases[filtered_gas] = removed.gases[filtered_gas] //The filtered out gas is entirely removed from the currently filtered gases diff --git a/code/modules/mob/living/carbon/alien/life.dm b/code/modules/mob/living/carbon/alien/life.dm index ea1dbab85e..ae5cee48b6 100644 --- a/code/modules/mob/living/carbon/alien/life.dm +++ b/code/modules/mob/living/carbon/alien/life.dm @@ -15,8 +15,6 @@ var/breath_pressure = (breath.total_moles()*R_IDEAL_GAS_EQUATION*breath.temperature)/BREATH_VOLUME var/list/breath_gases = breath.gases - breath.assert_gases(/datum/gas/plasma, /datum/gas/oxygen) - //Partial pressure of the toxins in our breath var/Toxins_pp = (breath_gases[/datum/gas/plasma]/breath.total_moles())*breath_pressure diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index 80c20dbbf5..b6cb5862d6 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -150,7 +150,6 @@ var/breath_pressure = (breath.total_moles()*R_IDEAL_GAS_EQUATION*breath.temperature)/BREATH_VOLUME var/list/breath_gases = breath.gases - breath.assert_gases(/datum/gas/oxygen, /datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/bz) var/O2_partialpressure = (breath_gases[/datum/gas/oxygen]/breath.total_moles())*breath_pressure var/Toxins_partialpressure = (breath_gases[/datum/gas/plasma]/breath.total_moles())*breath_pressure var/CO2_partialpressure = (breath_gases[/datum/gas/carbon_dioxide]/breath.total_moles())*breath_pressure @@ -345,7 +344,6 @@ var/list/cached_gases = miasma_turf.air.gases - ASSERT_GAS(/datum/gas/miasma, miasma_turf.air) cached_gases[/datum/gas/miasma] += 0.02 /mob/living/carbon/proc/handle_blood() diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index c33f667f24..0f09773bc3 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -207,7 +207,6 @@ var/turf/open/ST = src.loc if(ST.air) var/ST_gases = ST.air.gases - ST.air.assert_gases(arglist(GLOB.hardcoded_gases)) var/tox = ST_gases[/datum/gas/plasma] var/oxy = ST_gases[/datum/gas/oxygen] diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 1fb8bee72b..3c86aba3b2 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -45,7 +45,6 @@ else var/gasdrained = min(powerproduction_drain*drainratio,loaded_tank.air_contents.gases[/datum/gas/plasma]) loaded_tank.air_contents.gases[/datum/gas/plasma] -= gasdrained - loaded_tank.air_contents.assert_gas(/datum/gas/tritium) loaded_tank.air_contents.gases[/datum/gas/tritium] += gasdrained loaded_tank.air_contents.garbage_collect() @@ -60,7 +59,6 @@ var/gasdrained = bitcoinproduction_drain*drainratio loaded_tank.air_contents.gases[/datum/gas/tritium] -= gasdrained loaded_tank.air_contents.gases[/datum/gas/oxygen] -= gasdrained - loaded_tank.air_contents.assert_gas(/datum/gas/carbon_dioxide) loaded_tank.air_contents.gases[/datum/gas/carbon_dioxide] += gasdrained*2 loaded_tank.air_contents.garbage_collect() var/bitcoins_mined = RAD_COLLECTOR_OUTPUT diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 0cca568d5d..e7ee1209d4 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -339,7 +339,6 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) if(damage > damage_archived && prob(10)) playsound(get_turf(src), 'sound/effects/empulse.ogg', 50, 1) - removed.assert_gases(/datum/gas/oxygen, /datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/nitrogen) //calculating gas related values combined_gas = max(removed.total_moles(), 0) diff --git a/code/modules/research/xenobiology/crossbreeding/chilling.dm b/code/modules/research/xenobiology/crossbreeding/chilling.dm index 40951fc35d..c15e31267a 100644 --- a/code/modules/research/xenobiology/crossbreeding/chilling.dm +++ b/code/modules/research/xenobiology/crossbreeding/chilling.dm @@ -101,7 +101,6 @@ Chilling extracts: for(var/turf/open/T in A) var/datum/gas_mixture/G = T.air if(istype(G)) - G.assert_gas(/datum/gas/plasma) G.gases[/datum/gas/plasma] = 0 filtered = TRUE G.garbage_collect() diff --git a/code/modules/surgery/organs/lungs.dm b/code/modules/surgery/organs/lungs.dm index f78a1043c9..49b822d916 100644 --- a/code/modules/surgery/organs/lungs.dm +++ b/code/modules/surgery/organs/lungs.dm @@ -84,8 +84,6 @@ var/list/breath_gases = breath.gases - breath.assert_gases(/datum/gas/oxygen, /datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/bz, /datum/gas/nitrogen, /datum/gas/tritium, /datum/gas/nitryl, /datum/gas/pluoxium, /datum/gas/stimulum) - //Partial pressures in our breath var/O2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/oxygen])+(8*breath.get_breath_partial_pressure(breath_gases[/datum/gas/pluoxium])) var/N2_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/nitrogen]) diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm index 5c58380d7b..959103819e 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm @@ -89,7 +89,6 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! if(total_moles) var/list/env_gases = environment.gases - environment.assert_gases(arglist(GLOB.hardcoded_gases)) var/o2_concentration = env_gases[/datum/gas/oxygen]/total_moles var/n2_concentration = env_gases[/datum/gas/nitrogen]/total_moles var/co2_concentration = env_gases[/datum/gas/carbon_dioxide]/total_moles From 41375d97378b6a224d3295d841c6e08435e4d0e6 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Sun, 14 Apr 2019 11:33:28 -0400 Subject: [PATCH 007/370] Increases performance significantly by turning garbage collection into a define --- code/__DEFINES/atmospherics.dm | 10 + .../effects/effect_system/effects_foam.dm | 694 +++---- .../effects/effect_system/effects_smoke.dm | 656 +++--- code/game/objects/items/devices/scanners.dm | 2 +- code/game/turfs/open.dm | 592 +++--- code/modules/assembly/bomb.dm | 404 ++-- .../atmospherics/gasmixtures/gas_mixture.dm | 30 +- .../gasmixtures/immutable_mixtures.dm | 13 +- .../atmospherics/machinery/airalarm.dm | 1760 ++++++++--------- .../components/trinary_devices/filter.dm | 474 ++--- .../components/unary_devices/cryo.dm | 4 +- .../components/unary_devices/vent_scrubber.dm | 658 +++--- .../machinery/portable/scrubber.dm | 290 +-- code/modules/events/spacevine.dm | 1096 +++++----- .../subtypes/atmospherics.dm | 1522 +++++++------- code/modules/mob/living/carbon/alien/life.dm | 2 +- code/modules/mob/living/carbon/life.dm | 2 +- .../mob/living/simple_animal/simple_animal.dm | 1176 +++++------ code/modules/power/singularity/collector.dm | 4 +- .../xenobiology/crossbreeding/chilling.dm | 2 +- code/modules/surgery/organs/lungs.dm | 2 +- .../living/silicon/robot/dogborg_equipment.dm | 778 ++++---- 22 files changed, 5081 insertions(+), 5090 deletions(-) diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index ae79360dd2..928837979c 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -239,6 +239,8 @@ //HELPERS #define THERMAL_ENERGY(gas) (gas.temperature * gas.heat_capacity()) +#define QUANTIZE(variable) (round(variable,0.0000001))/*I feel the need to document what happens here. Basically this is used to catch most rounding errors, however it's previous value made it so that + once gases got hot enough, most procedures wouldnt occur due to the fact that the mole counts would get rounded away. Thus, we lowered it a few orders of magnititude */ //prefer this to gas_mixture/total_moles in performance critical areas #define TOTAL_MOLES(cached_gases, out_var)\ @@ -247,6 +249,14 @@ out_var += cached_gases[total_moles_id];\ } +//Unomos - So for whatever reason, garbage collection actually drastically decreases the cost of atmos later in the round. Turning this into a define yields massively improved performance. +#define GAS_GARBAGE_COLLECT(GASGASGAS)\ + var/list/CACHE_GAS = GASGASGAS;\ + for(var/id in CACHE_GAS){\ + if(QUANTIZE(CACHE_GAS[id]) <= 0)\ + CACHE_GAS -= id;\ + } + #define ARCHIVE_TEMPERATURE(gas) gas.temperature_archived = gas.temperature GLOBAL_LIST_INIT(pipe_paint_colors, list( diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index 1118ff3609..10ee73915c 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -1,347 +1,347 @@ -// Foam -// Similar to smoke, but slower and mobs absorb its reagent through their exposed skin. -#define ALUMINUM_FOAM 1 -#define IRON_FOAM 2 -#define RESIN_FOAM 3 - - -/obj/effect/particle_effect/foam - name = "foam" - icon_state = "foam" - opacity = 0 - anchored = TRUE - density = FALSE - layer = EDGED_TURF_LAYER - mouse_opacity = MOUSE_OPACITY_TRANSPARENT - var/amount = 3 - animate_movement = 0 - var/metal = 0 - var/lifetime = 40 - var/reagent_divisor = 7 - var/static/list/blacklisted_turfs = typecacheof(list( - /turf/open/space/transit, - /turf/open/chasm, - /turf/open/lava)) - -/obj/effect/particle_effect/foam/firefighting - name = "firefighting foam" - lifetime = 20 //doesn't last as long as normal foam - amount = 0 //no spread - var/absorbed_plasma = 0 - -/obj/effect/particle_effect/foam/firefighting/MakeSlippery() - return - -/obj/effect/particle_effect/foam/firefighting/process() - ..() - - var/turf/open/T = get_turf(src) - var/obj/effect/hotspot/hotspot = (locate(/obj/effect/hotspot) in T) - if(hotspot && istype(T) && T.air) - qdel(hotspot) - var/datum/gas_mixture/G = T.air - var/plas_amt = min(30,G.gases[/datum/gas/plasma]) //Absorb some plasma - G.gases[/datum/gas/plasma] -= plas_amt - absorbed_plasma += plas_amt - if(G.temperature > T20C) - G.temperature = max(G.temperature/2,T20C) - G.garbage_collect() - T.air_update_turf() - -/obj/effect/particle_effect/foam/firefighting/kill_foam() - STOP_PROCESSING(SSfastprocess, src) - - if(absorbed_plasma) - var/obj/effect/decal/cleanable/plasma/P = (locate(/obj/effect/decal/cleanable/plasma) in get_turf(src)) - if(!P) - P = new(loc) - P.reagents.add_reagent("stable_plasma", absorbed_plasma) - - flick("[icon_state]-disolve", src) - QDEL_IN(src, 5) - -/obj/effect/particle_effect/foam/firefighting/foam_mob(mob/living/L) - if(!istype(L)) - return - L.adjust_fire_stacks(-2) - L.ExtinguishMob() - -/obj/effect/particle_effect/foam/firefighting/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) - return - -/obj/effect/particle_effect/foam/metal - name = "aluminium foam" - metal = ALUMINUM_FOAM - icon_state = "mfoam" - -/obj/effect/particle_effect/foam/metal/MakeSlippery() - return - -/obj/effect/particle_effect/foam/metal/smart - name = "smart foam" - -/obj/effect/particle_effect/foam/metal/iron - name = "iron foam" - metal = IRON_FOAM - -/obj/effect/particle_effect/foam/metal/resin - name = "resin foam" - metal = RESIN_FOAM - -/obj/effect/particle_effect/foam/long_life - lifetime = 150 - -/obj/effect/particle_effect/foam/Initialize() - . = ..() - MakeSlippery() - create_reagents(1000) //limited by the size of the reagent holder anyway. - START_PROCESSING(SSfastprocess, src) - playsound(src, 'sound/effects/bubbles2.ogg', 80, 1, -3) - -/obj/effect/particle_effect/foam/proc/MakeSlippery() - AddComponent(/datum/component/slippery, 100) - -/obj/effect/particle_effect/foam/Destroy() - STOP_PROCESSING(SSfastprocess, src) - return ..() - - -/obj/effect/particle_effect/foam/proc/kill_foam() - STOP_PROCESSING(SSfastprocess, src) - switch(metal) - if(ALUMINUM_FOAM) - new /obj/structure/foamedmetal(get_turf(src)) - if(IRON_FOAM) - new /obj/structure/foamedmetal/iron(get_turf(src)) - if(RESIN_FOAM) - new /obj/structure/foamedmetal/resin(get_turf(src)) - flick("[icon_state]-disolve", src) - QDEL_IN(src, 5) - -/obj/effect/particle_effect/foam/smart/kill_foam() //Smart foam adheres to area borders for walls - STOP_PROCESSING(SSfastprocess, src) - if(metal) - var/turf/T = get_turf(src) - if(isspaceturf(T)) //Block up any exposed space - T.PlaceOnTop(/turf/open/floor/plating/foam) - for(var/direction in GLOB.cardinals) - var/turf/cardinal_turf = get_step(T, direction) - if(get_area(cardinal_turf) != get_area(T)) //We're at an area boundary, so let's block off this turf! - new/obj/structure/foamedmetal(T) - break - flick("[icon_state]-disolve", src) - QDEL_IN(src, 5) - -/obj/effect/particle_effect/foam/process() - lifetime-- - if(lifetime < 1) - kill_foam() - return - - var/fraction = 1/initial(reagent_divisor) - for(var/obj/O in range(0,src)) - if(O.type == src.type) - continue - if(isturf(O.loc)) - var/turf/T = O.loc - if(T.intact && O.level == 1) //hidden under the floor - continue - if(lifetime % reagent_divisor) - reagents.reaction(O, VAPOR, fraction) - var/hit = 0 - for(var/mob/living/L in range(0,src)) - hit += foam_mob(L) - if(hit) - lifetime++ //this is so the decrease from mobs hit and the natural decrease don't cumulate. - var/T = get_turf(src) - if(lifetime % reagent_divisor) - reagents.reaction(T, VAPOR, fraction) - - if(--amount < 0) - return - spread_foam() - -/obj/effect/particle_effect/foam/proc/foam_mob(mob/living/L) - if(lifetime<1) - return 0 - if(!istype(L)) - return 0 - var/fraction = 1/initial(reagent_divisor) - if(lifetime % reagent_divisor) - reagents.reaction(L, VAPOR, fraction) - lifetime-- - return 1 - -/obj/effect/particle_effect/foam/proc/spread_foam() - var/turf/t_loc = get_turf(src) - for(var/turf/T in t_loc.GetAtmosAdjacentTurfs()) - var/obj/effect/particle_effect/foam/foundfoam = locate() in T //Don't spread foam where there's already foam! - if(foundfoam) - continue - - if(is_type_in_typecache(T, blacklisted_turfs)) - continue - - for(var/mob/living/L in T) - foam_mob(L) - var/obj/effect/particle_effect/foam/F = new src.type(T) - F.amount = amount - reagents.copy_to(F, (reagents.total_volume)) - F.add_atom_colour(color, FIXED_COLOUR_PRIORITY) - F.metal = metal - - -/obj/effect/particle_effect/foam/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) - if(prob(max(0, exposed_temperature - 475))) //foam dissolves when heated - kill_foam() - - -/obj/effect/particle_effect/foam/metal/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) - return - - -/////////////////////////////////////////////// -//FOAM EFFECT DATUM -/datum/effect_system/foam_spread - var/amount = 10 // the size of the foam spread. - var/obj/chemholder - effect_type = /obj/effect/particle_effect/foam - var/metal = 0 - - -/datum/effect_system/foam_spread/metal - effect_type = /obj/effect/particle_effect/foam/metal - - -/datum/effect_system/foam_spread/metal/smart - effect_type = /obj/effect/particle_effect/foam/smart - - -/datum/effect_system/foam_spread/long - effect_type = /obj/effect/particle_effect/foam/long_life - -/datum/effect_system/foam_spread/New() - ..() - chemholder = new /obj() - var/datum/reagents/R = new/datum/reagents(1000) - chemholder.reagents = R - R.my_atom = chemholder - -/datum/effect_system/foam_spread/Destroy() - qdel(chemholder) - chemholder = null - return ..() - -/datum/effect_system/foam_spread/set_up(amt=5, loca, datum/reagents/carry = null) - if(isturf(loca)) - location = loca - else - location = get_turf(loca) - - amount = round(sqrt(amt / 2), 1) - carry.copy_to(chemholder, carry.total_volume) - -/datum/effect_system/foam_spread/metal/set_up(amt=5, loca, datum/reagents/carry = null, metaltype) - ..() - metal = metaltype - -/datum/effect_system/foam_spread/start() - var/obj/effect/particle_effect/foam/F = new effect_type(location) - var/foamcolor = mix_color_from_reagents(chemholder.reagents.reagent_list) - chemholder.reagents.copy_to(F, chemholder.reagents.total_volume/amount) - F.add_atom_colour(foamcolor, FIXED_COLOUR_PRIORITY) - F.amount = amount - F.metal = metal - - -////////////////////////////////////////////////////////// -// FOAM STRUCTURE. Formed by metal foams. Dense and opaque, but easy to break -/obj/structure/foamedmetal - icon = 'icons/effects/effects.dmi' - icon_state = "metalfoam" - density = TRUE - opacity = 1 // changed in New() - anchored = TRUE - layer = EDGED_TURF_LAYER - resistance_flags = FIRE_PROOF | ACID_PROOF - name = "foamed metal" - desc = "A lightweight foamed metal wall." - gender = PLURAL - max_integrity = 20 - CanAtmosPass = ATMOS_PASS_DENSITY - -/obj/structure/foamedmetal/Initialize() - . = ..() - air_update_turf(1) - -/obj/structure/foamedmetal/Move() - var/turf/T = loc - . = ..() - move_update_air(T) - -/obj/structure/foamedmetal/attack_paw(mob/user) - return attack_hand(user) - -/obj/structure/foamedmetal/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) - playsound(src.loc, 'sound/weapons/tap.ogg', 100, 1) - -/obj/structure/foamedmetal/attack_hand(mob/user) - . = ..() - if(.) - return - user.changeNext_move(CLICK_CD_MELEE) - user.do_attack_animation(src, ATTACK_EFFECT_PUNCH) - to_chat(user, "You hit [src] but bounce off it!") - playsound(src.loc, 'sound/weapons/tap.ogg', 100, 1) - -/obj/structure/foamedmetal/CanPass(atom/movable/mover, turf/target) - return !density - -/obj/structure/foamedmetal/iron - max_integrity = 50 - icon_state = "ironfoam" - -//Atmos Backpack Resin, transparent, prevents atmos and filters the air -/obj/structure/foamedmetal/resin - name = "\improper ATMOS Resin" - desc = "A lightweight, transparent resin used to suffocate fires, scrub the air of toxins, and restore the air to a safe temperature." - opacity = FALSE - icon_state = "atmos_resin" - alpha = 120 - max_integrity = 10 - -/obj/structure/foamedmetal/resin/Initialize() - . = ..() - if(isopenturf(loc)) - var/turf/open/O = loc - O.ClearWet() - if(O.air) - var/datum/gas_mixture/G = O.air - G.temperature = 293.15 - for(var/obj/effect/hotspot/H in O) - qdel(H) - var/list/G_gases = G.gases - for(var/I in G_gases) - if(I == /datum/gas/oxygen || I == /datum/gas/nitrogen) - continue - G_gases[I] = 0 - G.garbage_collect() - O.air_update_turf() - for(var/obj/machinery/atmospherics/components/unary/U in O) - if(!U.welded) - U.welded = TRUE - U.update_icon() - U.visible_message("[U] sealed shut!") - for(var/mob/living/L in O) - L.ExtinguishMob() - for(var/obj/item/Item in O) - Item.extinguish() - -/obj/structure/foamedmetal/resin/CanPass(atom/movable/mover, turf/target) - if(istype(mover) && (mover.pass_flags & PASSGLASS)) - return TRUE - . = ..() - -#undef ALUMINUM_FOAM -#undef IRON_FOAM -#undef RESIN_FOAM +// Foam +// Similar to smoke, but slower and mobs absorb its reagent through their exposed skin. +#define ALUMINUM_FOAM 1 +#define IRON_FOAM 2 +#define RESIN_FOAM 3 + + +/obj/effect/particle_effect/foam + name = "foam" + icon_state = "foam" + opacity = 0 + anchored = TRUE + density = FALSE + layer = EDGED_TURF_LAYER + mouse_opacity = MOUSE_OPACITY_TRANSPARENT + var/amount = 3 + animate_movement = 0 + var/metal = 0 + var/lifetime = 40 + var/reagent_divisor = 7 + var/static/list/blacklisted_turfs = typecacheof(list( + /turf/open/space/transit, + /turf/open/chasm, + /turf/open/lava)) + +/obj/effect/particle_effect/foam/firefighting + name = "firefighting foam" + lifetime = 20 //doesn't last as long as normal foam + amount = 0 //no spread + var/absorbed_plasma = 0 + +/obj/effect/particle_effect/foam/firefighting/MakeSlippery() + return + +/obj/effect/particle_effect/foam/firefighting/process() + ..() + + var/turf/open/T = get_turf(src) + var/obj/effect/hotspot/hotspot = (locate(/obj/effect/hotspot) in T) + if(hotspot && istype(T) && T.air) + qdel(hotspot) + var/datum/gas_mixture/G = T.air + var/plas_amt = min(30,G.gases[/datum/gas/plasma]) //Absorb some plasma + G.gases[/datum/gas/plasma] -= plas_amt + absorbed_plasma += plas_amt + if(G.temperature > T20C) + G.temperature = max(G.temperature/2,T20C) + GAS_GARBAGE_COLLECT(G.gases) + T.air_update_turf() + +/obj/effect/particle_effect/foam/firefighting/kill_foam() + STOP_PROCESSING(SSfastprocess, src) + + if(absorbed_plasma) + var/obj/effect/decal/cleanable/plasma/P = (locate(/obj/effect/decal/cleanable/plasma) in get_turf(src)) + if(!P) + P = new(loc) + P.reagents.add_reagent("stable_plasma", absorbed_plasma) + + flick("[icon_state]-disolve", src) + QDEL_IN(src, 5) + +/obj/effect/particle_effect/foam/firefighting/foam_mob(mob/living/L) + if(!istype(L)) + return + L.adjust_fire_stacks(-2) + L.ExtinguishMob() + +/obj/effect/particle_effect/foam/firefighting/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + return + +/obj/effect/particle_effect/foam/metal + name = "aluminium foam" + metal = ALUMINUM_FOAM + icon_state = "mfoam" + +/obj/effect/particle_effect/foam/metal/MakeSlippery() + return + +/obj/effect/particle_effect/foam/metal/smart + name = "smart foam" + +/obj/effect/particle_effect/foam/metal/iron + name = "iron foam" + metal = IRON_FOAM + +/obj/effect/particle_effect/foam/metal/resin + name = "resin foam" + metal = RESIN_FOAM + +/obj/effect/particle_effect/foam/long_life + lifetime = 150 + +/obj/effect/particle_effect/foam/Initialize() + . = ..() + MakeSlippery() + create_reagents(1000) //limited by the size of the reagent holder anyway. + START_PROCESSING(SSfastprocess, src) + playsound(src, 'sound/effects/bubbles2.ogg', 80, 1, -3) + +/obj/effect/particle_effect/foam/proc/MakeSlippery() + AddComponent(/datum/component/slippery, 100) + +/obj/effect/particle_effect/foam/Destroy() + STOP_PROCESSING(SSfastprocess, src) + return ..() + + +/obj/effect/particle_effect/foam/proc/kill_foam() + STOP_PROCESSING(SSfastprocess, src) + switch(metal) + if(ALUMINUM_FOAM) + new /obj/structure/foamedmetal(get_turf(src)) + if(IRON_FOAM) + new /obj/structure/foamedmetal/iron(get_turf(src)) + if(RESIN_FOAM) + new /obj/structure/foamedmetal/resin(get_turf(src)) + flick("[icon_state]-disolve", src) + QDEL_IN(src, 5) + +/obj/effect/particle_effect/foam/smart/kill_foam() //Smart foam adheres to area borders for walls + STOP_PROCESSING(SSfastprocess, src) + if(metal) + var/turf/T = get_turf(src) + if(isspaceturf(T)) //Block up any exposed space + T.PlaceOnTop(/turf/open/floor/plating/foam) + for(var/direction in GLOB.cardinals) + var/turf/cardinal_turf = get_step(T, direction) + if(get_area(cardinal_turf) != get_area(T)) //We're at an area boundary, so let's block off this turf! + new/obj/structure/foamedmetal(T) + break + flick("[icon_state]-disolve", src) + QDEL_IN(src, 5) + +/obj/effect/particle_effect/foam/process() + lifetime-- + if(lifetime < 1) + kill_foam() + return + + var/fraction = 1/initial(reagent_divisor) + for(var/obj/O in range(0,src)) + if(O.type == src.type) + continue + if(isturf(O.loc)) + var/turf/T = O.loc + if(T.intact && O.level == 1) //hidden under the floor + continue + if(lifetime % reagent_divisor) + reagents.reaction(O, VAPOR, fraction) + var/hit = 0 + for(var/mob/living/L in range(0,src)) + hit += foam_mob(L) + if(hit) + lifetime++ //this is so the decrease from mobs hit and the natural decrease don't cumulate. + var/T = get_turf(src) + if(lifetime % reagent_divisor) + reagents.reaction(T, VAPOR, fraction) + + if(--amount < 0) + return + spread_foam() + +/obj/effect/particle_effect/foam/proc/foam_mob(mob/living/L) + if(lifetime<1) + return 0 + if(!istype(L)) + return 0 + var/fraction = 1/initial(reagent_divisor) + if(lifetime % reagent_divisor) + reagents.reaction(L, VAPOR, fraction) + lifetime-- + return 1 + +/obj/effect/particle_effect/foam/proc/spread_foam() + var/turf/t_loc = get_turf(src) + for(var/turf/T in t_loc.GetAtmosAdjacentTurfs()) + var/obj/effect/particle_effect/foam/foundfoam = locate() in T //Don't spread foam where there's already foam! + if(foundfoam) + continue + + if(is_type_in_typecache(T, blacklisted_turfs)) + continue + + for(var/mob/living/L in T) + foam_mob(L) + var/obj/effect/particle_effect/foam/F = new src.type(T) + F.amount = amount + reagents.copy_to(F, (reagents.total_volume)) + F.add_atom_colour(color, FIXED_COLOUR_PRIORITY) + F.metal = metal + + +/obj/effect/particle_effect/foam/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + if(prob(max(0, exposed_temperature - 475))) //foam dissolves when heated + kill_foam() + + +/obj/effect/particle_effect/foam/metal/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + return + + +/////////////////////////////////////////////// +//FOAM EFFECT DATUM +/datum/effect_system/foam_spread + var/amount = 10 // the size of the foam spread. + var/obj/chemholder + effect_type = /obj/effect/particle_effect/foam + var/metal = 0 + + +/datum/effect_system/foam_spread/metal + effect_type = /obj/effect/particle_effect/foam/metal + + +/datum/effect_system/foam_spread/metal/smart + effect_type = /obj/effect/particle_effect/foam/smart + + +/datum/effect_system/foam_spread/long + effect_type = /obj/effect/particle_effect/foam/long_life + +/datum/effect_system/foam_spread/New() + ..() + chemholder = new /obj() + var/datum/reagents/R = new/datum/reagents(1000) + chemholder.reagents = R + R.my_atom = chemholder + +/datum/effect_system/foam_spread/Destroy() + qdel(chemholder) + chemholder = null + return ..() + +/datum/effect_system/foam_spread/set_up(amt=5, loca, datum/reagents/carry = null) + if(isturf(loca)) + location = loca + else + location = get_turf(loca) + + amount = round(sqrt(amt / 2), 1) + carry.copy_to(chemholder, carry.total_volume) + +/datum/effect_system/foam_spread/metal/set_up(amt=5, loca, datum/reagents/carry = null, metaltype) + ..() + metal = metaltype + +/datum/effect_system/foam_spread/start() + var/obj/effect/particle_effect/foam/F = new effect_type(location) + var/foamcolor = mix_color_from_reagents(chemholder.reagents.reagent_list) + chemholder.reagents.copy_to(F, chemholder.reagents.total_volume/amount) + F.add_atom_colour(foamcolor, FIXED_COLOUR_PRIORITY) + F.amount = amount + F.metal = metal + + +////////////////////////////////////////////////////////// +// FOAM STRUCTURE. Formed by metal foams. Dense and opaque, but easy to break +/obj/structure/foamedmetal + icon = 'icons/effects/effects.dmi' + icon_state = "metalfoam" + density = TRUE + opacity = 1 // changed in New() + anchored = TRUE + layer = EDGED_TURF_LAYER + resistance_flags = FIRE_PROOF | ACID_PROOF + name = "foamed metal" + desc = "A lightweight foamed metal wall." + gender = PLURAL + max_integrity = 20 + CanAtmosPass = ATMOS_PASS_DENSITY + +/obj/structure/foamedmetal/Initialize() + . = ..() + air_update_turf(1) + +/obj/structure/foamedmetal/Move() + var/turf/T = loc + . = ..() + move_update_air(T) + +/obj/structure/foamedmetal/attack_paw(mob/user) + return attack_hand(user) + +/obj/structure/foamedmetal/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) + playsound(src.loc, 'sound/weapons/tap.ogg', 100, 1) + +/obj/structure/foamedmetal/attack_hand(mob/user) + . = ..() + if(.) + return + user.changeNext_move(CLICK_CD_MELEE) + user.do_attack_animation(src, ATTACK_EFFECT_PUNCH) + to_chat(user, "You hit [src] but bounce off it!") + playsound(src.loc, 'sound/weapons/tap.ogg', 100, 1) + +/obj/structure/foamedmetal/CanPass(atom/movable/mover, turf/target) + return !density + +/obj/structure/foamedmetal/iron + max_integrity = 50 + icon_state = "ironfoam" + +//Atmos Backpack Resin, transparent, prevents atmos and filters the air +/obj/structure/foamedmetal/resin + name = "\improper ATMOS Resin" + desc = "A lightweight, transparent resin used to suffocate fires, scrub the air of toxins, and restore the air to a safe temperature." + opacity = FALSE + icon_state = "atmos_resin" + alpha = 120 + max_integrity = 10 + +/obj/structure/foamedmetal/resin/Initialize() + . = ..() + if(isopenturf(loc)) + var/turf/open/O = loc + O.ClearWet() + if(O.air) + var/datum/gas_mixture/G = O.air + G.temperature = 293.15 + for(var/obj/effect/hotspot/H in O) + qdel(H) + var/list/G_gases = G.gases + for(var/I in G_gases) + if(I == /datum/gas/oxygen || I == /datum/gas/nitrogen) + continue + G_gases[I] = 0 + GAS_GARBAGE_COLLECT(G.gases) + O.air_update_turf() + for(var/obj/machinery/atmospherics/components/unary/U in O) + if(!U.welded) + U.welded = TRUE + U.update_icon() + U.visible_message("[U] sealed shut!") + for(var/mob/living/L in O) + L.ExtinguishMob() + for(var/obj/item/Item in O) + Item.extinguish() + +/obj/structure/foamedmetal/resin/CanPass(atom/movable/mover, turf/target) + if(istype(mover) && (mover.pass_flags & PASSGLASS)) + return TRUE + . = ..() + +#undef ALUMINUM_FOAM +#undef IRON_FOAM +#undef RESIN_FOAM diff --git a/code/game/objects/effects/effect_system/effects_smoke.dm b/code/game/objects/effects/effect_system/effects_smoke.dm index 08921ecb8b..79deac475b 100644 --- a/code/game/objects/effects/effect_system/effects_smoke.dm +++ b/code/game/objects/effects/effect_system/effects_smoke.dm @@ -1,328 +1,328 @@ -///////////////////////////////////////////// -//// SMOKE SYSTEMS -///////////////////////////////////////////// - -/obj/effect/particle_effect/smoke - name = "smoke" - icon = 'icons/effects/96x96.dmi' - icon_state = "smoke" - pixel_x = -32 - pixel_y = -32 - opacity = 0 - layer = FLY_LAYER - anchored = TRUE - mouse_opacity = MOUSE_OPACITY_TRANSPARENT - animate_movement = 0 - var/amount = 4 - var/lifetime = 5 - var/opaque = 1 //whether the smoke can block the view when in enough amount - - -/obj/effect/particle_effect/smoke/proc/fade_out(frames = 16) - if(alpha == 0) //Handle already transparent case - return - if(frames == 0) - frames = 1 //We will just assume that by 0 frames, the coder meant "during one frame". - var/step = alpha / frames - for(var/i = 0, i < frames, i++) - alpha -= step - if(alpha < 160) - set_opacity(0) //if we were blocking view, we aren't now because we're fading out - stoplag() - -/obj/effect/particle_effect/smoke/Initialize() - . = ..() - create_reagents(500) - START_PROCESSING(SSobj, src) - - -/obj/effect/particle_effect/smoke/Destroy() - STOP_PROCESSING(SSobj, src) - return ..() - -/obj/effect/particle_effect/smoke/proc/kill_smoke() - STOP_PROCESSING(SSobj, src) - INVOKE_ASYNC(src, .proc/fade_out) - QDEL_IN(src, 10) - -/obj/effect/particle_effect/smoke/process() - lifetime-- - if(lifetime < 1) - kill_smoke() - return 0 - for(var/mob/living/L in range(0,src)) - smoke_mob(L) - return 1 - -/obj/effect/particle_effect/smoke/proc/smoke_mob(mob/living/carbon/C) - if(!istype(C)) - return 0 - if(lifetime<1) - return 0 - if(C.internal != null || C.has_smoke_protection()) - return 0 - if(C.smoke_delay) - return 0 - C.smoke_delay++ - addtimer(CALLBACK(src, .proc/remove_smoke_delay, C), 10) - return 1 - -/obj/effect/particle_effect/smoke/proc/remove_smoke_delay(mob/living/carbon/C) - if(C) - C.smoke_delay = 0 - -/obj/effect/particle_effect/smoke/proc/spread_smoke() - var/turf/t_loc = get_turf(src) - if(!t_loc) - return - var/list/newsmokes = list() - for(var/turf/T in t_loc.GetAtmosAdjacentTurfs()) - var/obj/effect/particle_effect/smoke/foundsmoke = locate() in T //Don't spread smoke where there's already smoke! - if(foundsmoke) - continue - for(var/mob/living/L in T) - smoke_mob(L) - var/obj/effect/particle_effect/smoke/S = new type(T) - reagents.copy_to(S, reagents.total_volume) - S.setDir(pick(GLOB.cardinals)) - S.amount = amount-1 - S.add_atom_colour(color, FIXED_COLOUR_PRIORITY) - S.lifetime = lifetime - if(S.amount>0) - if(opaque) - S.set_opacity(TRUE) - newsmokes.Add(S) - - if(newsmokes.len) - spawn(1) //the smoke spreads rapidly but not instantly - for(var/obj/effect/particle_effect/smoke/SM in newsmokes) - SM.spread_smoke() - - -/datum/effect_system/smoke_spread - var/amount = 10 - effect_type = /obj/effect/particle_effect/smoke - -/datum/effect_system/smoke_spread/set_up(radius = 5, loca) - if(isturf(loca)) - location = loca - else - location = get_turf(loca) - amount = radius - -/datum/effect_system/smoke_spread/start() - if(holder) - location = get_turf(holder) - var/obj/effect/particle_effect/smoke/S = new effect_type(location) - S.amount = amount - if(S.amount) - S.spread_smoke() - - -///////////////////////////////////////////// -// Bad smoke -///////////////////////////////////////////// - -/obj/effect/particle_effect/smoke/bad - lifetime = 8 - -/obj/effect/particle_effect/smoke/bad/smoke_mob(mob/living/carbon/M) - if(..()) - M.drop_all_held_items() - M.adjustOxyLoss(1) - M.emote("cough") - return 1 - -/obj/effect/particle_effect/smoke/bad/CanPass(atom/movable/mover, turf/target) - if(istype(mover, /obj/item/projectile/beam)) - var/obj/item/projectile/beam/B = mover - B.damage = (B.damage/2) - return 1 - - - -/datum/effect_system/smoke_spread/bad - effect_type = /obj/effect/particle_effect/smoke/bad - -///////////////////////////////////////////// -// Nanofrost smoke -///////////////////////////////////////////// - -/obj/effect/particle_effect/smoke/freezing - name = "nanofrost smoke" - color = "#B2FFFF" - opaque = 0 - -/datum/effect_system/smoke_spread/freezing - effect_type = /obj/effect/particle_effect/smoke/freezing - var/blast = 0 - var/temperature = 2 - var/weldvents = TRUE - var/distcheck = TRUE - -/datum/effect_system/smoke_spread/freezing/proc/Chilled(atom/A) - if(isopenturf(A)) - var/turf/open/T = A - if(T.air) - var/datum/gas_mixture/G = T.air - if(!distcheck || get_dist(T, location) < blast) // Otherwise we'll get silliness like people using Nanofrost to kill people through walls with cold air - G.temperature = temperature - T.air_update_turf() - for(var/obj/effect/hotspot/H in T) - qdel(H) - var/list/G_gases = G.gases - if(G_gases[/datum/gas/plasma]) - G_gases[/datum/gas/nitrogen] += (G_gases[/datum/gas/plasma]) - G_gases[/datum/gas/plasma] = 0 - G.garbage_collect() - if (weldvents) - for(var/obj/machinery/atmospherics/components/unary/U in T) - if(!isnull(U.welded) && !U.welded) //must be an unwelded vent pump or vent scrubber. - U.welded = TRUE - U.update_icon() - U.visible_message("[U] was frozen shut!") - for(var/mob/living/L in T) - L.ExtinguishMob() - for(var/obj/item/Item in T) - Item.extinguish() - -/datum/effect_system/smoke_spread/freezing/set_up(radius = 5, loca, blast_radius = 0) - ..() - blast = blast_radius - -/datum/effect_system/smoke_spread/freezing/start() - if(blast) - for(var/turf/T in RANGE_TURFS(blast, location)) - Chilled(T) - ..() - -/datum/effect_system/smoke_spread/freezing/decon - temperature = 293.15 - distcheck = FALSE - weldvents = FALSE - - -///////////////////////////////////////////// -// Sleep smoke -///////////////////////////////////////////// - -/obj/effect/particle_effect/smoke/sleeping - color = "#9C3636" - lifetime = 10 - -/obj/effect/particle_effect/smoke/sleeping/smoke_mob(mob/living/carbon/M) - if(..()) - M.Sleeping(200) - M.emote("cough") - return 1 - -/datum/effect_system/smoke_spread/sleeping - effect_type = /obj/effect/particle_effect/smoke/sleeping - -///////////////////////////////////////////// -// Chem smoke -///////////////////////////////////////////// - -/obj/effect/particle_effect/smoke/chem - lifetime = 10 - - -/obj/effect/particle_effect/smoke/chem/process() - if(..()) - var/turf/T = get_turf(src) - var/fraction = 1/initial(lifetime) - for(var/atom/movable/AM in T) - if(AM.type == src.type) - continue - if(T.intact && AM.level == 1) //hidden under the floor - continue - reagents.reaction(AM, TOUCH, fraction) - - reagents.reaction(T, TOUCH, fraction) - return 1 - -/obj/effect/particle_effect/smoke/chem/smoke_mob(mob/living/carbon/M) - if(lifetime<1) - return 0 - if(!istype(M)) - return 0 - var/mob/living/carbon/C = M - if(C.internal != null || C.has_smoke_protection()) - return 0 - var/fraction = 1/initial(lifetime) - reagents.copy_to(C, fraction*reagents.total_volume) - reagents.reaction(M, INGEST, fraction) - return 1 - - - -/datum/effect_system/smoke_spread/chem - var/obj/chemholder - effect_type = /obj/effect/particle_effect/smoke/chem - -/datum/effect_system/smoke_spread/chem/New() - ..() - chemholder = new /obj() - var/datum/reagents/R = new/datum/reagents(500) - chemholder.reagents = R - R.my_atom = chemholder - -/datum/effect_system/smoke_spread/chem/Destroy() - qdel(chemholder) - chemholder = null - return ..() - -/datum/effect_system/smoke_spread/chem/set_up(datum/reagents/carry = null, radius = 1, loca, silent = FALSE) - if(isturf(loca)) - location = loca - else - location = get_turf(loca) - amount = radius - carry.copy_to(chemholder, carry.total_volume) - - if(!silent) - var/contained = "" - for(var/reagent in carry.reagent_list) - contained += " [reagent] " - if(contained) - contained = "\[[contained]\]" - - var/where = "[AREACOORD(location)]" - if(carry.my_atom.fingerprintslast) - var/mob/M = get_mob_by_key(carry.my_atom.fingerprintslast) - var/more = "" - if(M) - more = "[ADMIN_LOOKUPFLW(M)] " - message_admins("Smoke: ([ADMIN_VERBOSEJMP(location)])[contained]. Key: [more ? more : carry.my_atom.fingerprintslast].") - log_game("A chemical smoke reaction has taken place in ([where])[contained]. Last touched by [carry.my_atom.fingerprintslast].") - else - message_admins("Smoke: ([ADMIN_VERBOSEJMP(location)])[contained]. No associated key.") - log_game("A chemical smoke reaction has taken place in ([where])[contained]. No associated key.") - - -/datum/effect_system/smoke_spread/chem/start() - var/mixcolor = mix_color_from_reagents(chemholder.reagents.reagent_list) - if(holder) - location = get_turf(holder) - var/obj/effect/particle_effect/smoke/chem/S = new effect_type(location) - - if(chemholder.reagents.total_volume > 1) // can't split 1 very well - chemholder.reagents.copy_to(S, chemholder.reagents.total_volume) - - if(mixcolor) - S.add_atom_colour(mixcolor, FIXED_COLOUR_PRIORITY) // give the smoke color, if it has any to begin with - S.amount = amount - if(S.amount) - S.spread_smoke() //calling process right now so the smoke immediately attacks mobs. - - -///////////////////////////////////////////// -// Transparent smoke -///////////////////////////////////////////// - -//Same as the base type, but the smoke produced is not opaque -/datum/effect_system/smoke_spread/transparent - effect_type = /obj/effect/particle_effect/smoke/transparent - -/obj/effect/particle_effect/smoke/transparent - opaque = FALSE +///////////////////////////////////////////// +//// SMOKE SYSTEMS +///////////////////////////////////////////// + +/obj/effect/particle_effect/smoke + name = "smoke" + icon = 'icons/effects/96x96.dmi' + icon_state = "smoke" + pixel_x = -32 + pixel_y = -32 + opacity = 0 + layer = FLY_LAYER + anchored = TRUE + mouse_opacity = MOUSE_OPACITY_TRANSPARENT + animate_movement = 0 + var/amount = 4 + var/lifetime = 5 + var/opaque = 1 //whether the smoke can block the view when in enough amount + + +/obj/effect/particle_effect/smoke/proc/fade_out(frames = 16) + if(alpha == 0) //Handle already transparent case + return + if(frames == 0) + frames = 1 //We will just assume that by 0 frames, the coder meant "during one frame". + var/step = alpha / frames + for(var/i = 0, i < frames, i++) + alpha -= step + if(alpha < 160) + set_opacity(0) //if we were blocking view, we aren't now because we're fading out + stoplag() + +/obj/effect/particle_effect/smoke/Initialize() + . = ..() + create_reagents(500) + START_PROCESSING(SSobj, src) + + +/obj/effect/particle_effect/smoke/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() + +/obj/effect/particle_effect/smoke/proc/kill_smoke() + STOP_PROCESSING(SSobj, src) + INVOKE_ASYNC(src, .proc/fade_out) + QDEL_IN(src, 10) + +/obj/effect/particle_effect/smoke/process() + lifetime-- + if(lifetime < 1) + kill_smoke() + return 0 + for(var/mob/living/L in range(0,src)) + smoke_mob(L) + return 1 + +/obj/effect/particle_effect/smoke/proc/smoke_mob(mob/living/carbon/C) + if(!istype(C)) + return 0 + if(lifetime<1) + return 0 + if(C.internal != null || C.has_smoke_protection()) + return 0 + if(C.smoke_delay) + return 0 + C.smoke_delay++ + addtimer(CALLBACK(src, .proc/remove_smoke_delay, C), 10) + return 1 + +/obj/effect/particle_effect/smoke/proc/remove_smoke_delay(mob/living/carbon/C) + if(C) + C.smoke_delay = 0 + +/obj/effect/particle_effect/smoke/proc/spread_smoke() + var/turf/t_loc = get_turf(src) + if(!t_loc) + return + var/list/newsmokes = list() + for(var/turf/T in t_loc.GetAtmosAdjacentTurfs()) + var/obj/effect/particle_effect/smoke/foundsmoke = locate() in T //Don't spread smoke where there's already smoke! + if(foundsmoke) + continue + for(var/mob/living/L in T) + smoke_mob(L) + var/obj/effect/particle_effect/smoke/S = new type(T) + reagents.copy_to(S, reagents.total_volume) + S.setDir(pick(GLOB.cardinals)) + S.amount = amount-1 + S.add_atom_colour(color, FIXED_COLOUR_PRIORITY) + S.lifetime = lifetime + if(S.amount>0) + if(opaque) + S.set_opacity(TRUE) + newsmokes.Add(S) + + if(newsmokes.len) + spawn(1) //the smoke spreads rapidly but not instantly + for(var/obj/effect/particle_effect/smoke/SM in newsmokes) + SM.spread_smoke() + + +/datum/effect_system/smoke_spread + var/amount = 10 + effect_type = /obj/effect/particle_effect/smoke + +/datum/effect_system/smoke_spread/set_up(radius = 5, loca) + if(isturf(loca)) + location = loca + else + location = get_turf(loca) + amount = radius + +/datum/effect_system/smoke_spread/start() + if(holder) + location = get_turf(holder) + var/obj/effect/particle_effect/smoke/S = new effect_type(location) + S.amount = amount + if(S.amount) + S.spread_smoke() + + +///////////////////////////////////////////// +// Bad smoke +///////////////////////////////////////////// + +/obj/effect/particle_effect/smoke/bad + lifetime = 8 + +/obj/effect/particle_effect/smoke/bad/smoke_mob(mob/living/carbon/M) + if(..()) + M.drop_all_held_items() + M.adjustOxyLoss(1) + M.emote("cough") + return 1 + +/obj/effect/particle_effect/smoke/bad/CanPass(atom/movable/mover, turf/target) + if(istype(mover, /obj/item/projectile/beam)) + var/obj/item/projectile/beam/B = mover + B.damage = (B.damage/2) + return 1 + + + +/datum/effect_system/smoke_spread/bad + effect_type = /obj/effect/particle_effect/smoke/bad + +///////////////////////////////////////////// +// Nanofrost smoke +///////////////////////////////////////////// + +/obj/effect/particle_effect/smoke/freezing + name = "nanofrost smoke" + color = "#B2FFFF" + opaque = 0 + +/datum/effect_system/smoke_spread/freezing + effect_type = /obj/effect/particle_effect/smoke/freezing + var/blast = 0 + var/temperature = 2 + var/weldvents = TRUE + var/distcheck = TRUE + +/datum/effect_system/smoke_spread/freezing/proc/Chilled(atom/A) + if(isopenturf(A)) + var/turf/open/T = A + if(T.air) + var/datum/gas_mixture/G = T.air + if(!distcheck || get_dist(T, location) < blast) // Otherwise we'll get silliness like people using Nanofrost to kill people through walls with cold air + G.temperature = temperature + T.air_update_turf() + for(var/obj/effect/hotspot/H in T) + qdel(H) + var/list/G_gases = G.gases + if(G_gases[/datum/gas/plasma]) + G_gases[/datum/gas/nitrogen] += (G_gases[/datum/gas/plasma]) + G_gases[/datum/gas/plasma] = 0 + GAS_GARBAGE_COLLECT(G.gases) + if (weldvents) + for(var/obj/machinery/atmospherics/components/unary/U in T) + if(!isnull(U.welded) && !U.welded) //must be an unwelded vent pump or vent scrubber. + U.welded = TRUE + U.update_icon() + U.visible_message("[U] was frozen shut!") + for(var/mob/living/L in T) + L.ExtinguishMob() + for(var/obj/item/Item in T) + Item.extinguish() + +/datum/effect_system/smoke_spread/freezing/set_up(radius = 5, loca, blast_radius = 0) + ..() + blast = blast_radius + +/datum/effect_system/smoke_spread/freezing/start() + if(blast) + for(var/turf/T in RANGE_TURFS(blast, location)) + Chilled(T) + ..() + +/datum/effect_system/smoke_spread/freezing/decon + temperature = 293.15 + distcheck = FALSE + weldvents = FALSE + + +///////////////////////////////////////////// +// Sleep smoke +///////////////////////////////////////////// + +/obj/effect/particle_effect/smoke/sleeping + color = "#9C3636" + lifetime = 10 + +/obj/effect/particle_effect/smoke/sleeping/smoke_mob(mob/living/carbon/M) + if(..()) + M.Sleeping(200) + M.emote("cough") + return 1 + +/datum/effect_system/smoke_spread/sleeping + effect_type = /obj/effect/particle_effect/smoke/sleeping + +///////////////////////////////////////////// +// Chem smoke +///////////////////////////////////////////// + +/obj/effect/particle_effect/smoke/chem + lifetime = 10 + + +/obj/effect/particle_effect/smoke/chem/process() + if(..()) + var/turf/T = get_turf(src) + var/fraction = 1/initial(lifetime) + for(var/atom/movable/AM in T) + if(AM.type == src.type) + continue + if(T.intact && AM.level == 1) //hidden under the floor + continue + reagents.reaction(AM, TOUCH, fraction) + + reagents.reaction(T, TOUCH, fraction) + return 1 + +/obj/effect/particle_effect/smoke/chem/smoke_mob(mob/living/carbon/M) + if(lifetime<1) + return 0 + if(!istype(M)) + return 0 + var/mob/living/carbon/C = M + if(C.internal != null || C.has_smoke_protection()) + return 0 + var/fraction = 1/initial(lifetime) + reagents.copy_to(C, fraction*reagents.total_volume) + reagents.reaction(M, INGEST, fraction) + return 1 + + + +/datum/effect_system/smoke_spread/chem + var/obj/chemholder + effect_type = /obj/effect/particle_effect/smoke/chem + +/datum/effect_system/smoke_spread/chem/New() + ..() + chemholder = new /obj() + var/datum/reagents/R = new/datum/reagents(500) + chemholder.reagents = R + R.my_atom = chemholder + +/datum/effect_system/smoke_spread/chem/Destroy() + qdel(chemholder) + chemholder = null + return ..() + +/datum/effect_system/smoke_spread/chem/set_up(datum/reagents/carry = null, radius = 1, loca, silent = FALSE) + if(isturf(loca)) + location = loca + else + location = get_turf(loca) + amount = radius + carry.copy_to(chemholder, carry.total_volume) + + if(!silent) + var/contained = "" + for(var/reagent in carry.reagent_list) + contained += " [reagent] " + if(contained) + contained = "\[[contained]\]" + + var/where = "[AREACOORD(location)]" + if(carry.my_atom.fingerprintslast) + var/mob/M = get_mob_by_key(carry.my_atom.fingerprintslast) + var/more = "" + if(M) + more = "[ADMIN_LOOKUPFLW(M)] " + message_admins("Smoke: ([ADMIN_VERBOSEJMP(location)])[contained]. Key: [more ? more : carry.my_atom.fingerprintslast].") + log_game("A chemical smoke reaction has taken place in ([where])[contained]. Last touched by [carry.my_atom.fingerprintslast].") + else + message_admins("Smoke: ([ADMIN_VERBOSEJMP(location)])[contained]. No associated key.") + log_game("A chemical smoke reaction has taken place in ([where])[contained]. No associated key.") + + +/datum/effect_system/smoke_spread/chem/start() + var/mixcolor = mix_color_from_reagents(chemholder.reagents.reagent_list) + if(holder) + location = get_turf(holder) + var/obj/effect/particle_effect/smoke/chem/S = new effect_type(location) + + if(chemholder.reagents.total_volume > 1) // can't split 1 very well + chemholder.reagents.copy_to(S, chemholder.reagents.total_volume) + + if(mixcolor) + S.add_atom_colour(mixcolor, FIXED_COLOUR_PRIORITY) // give the smoke color, if it has any to begin with + S.amount = amount + if(S.amount) + S.spread_smoke() //calling process right now so the smoke immediately attacks mobs. + + +///////////////////////////////////////////// +// Transparent smoke +///////////////////////////////////////////// + +//Same as the base type, but the smoke produced is not opaque +/datum/effect_system/smoke_spread/transparent + effect_type = /obj/effect/particle_effect/smoke/transparent + +/obj/effect/particle_effect/smoke/transparent + opaque = FALSE diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 20262d5052..37243acc40 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -444,7 +444,7 @@ SLIME SCANNER else to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] % ([round(env_gases[/datum/gas/plasma], 0.01)] mol)") - environment.garbage_collect() + GAS_GARBAGE_COLLECT(environment.gases) for(var/id in env_gases) if(id in GLOB.hardcoded_gases) diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index 79bf8f279e..3f9ee9c9e5 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -1,296 +1,296 @@ -/turf/open - plane = FLOOR_PLANE - var/slowdown = 0 //negative for faster, positive for slower - - var/postdig_icon_change = FALSE - var/postdig_icon - var/wet - - var/footstep = null - -/turf/open/ComponentInitialize() - . = ..() - if(wet) - AddComponent(/datum/component/wet_floor, wet, INFINITY, 0, INFINITY, TRUE) - -/turf/open/MouseDrop_T(atom/dropping, mob/user) - . = ..() - if(dropping == user && isliving(user)) - var/mob/living/L = user - if(L.resting && do_after(L, max(10, L.getStaminaLoss()*0.5), 0, src)) - if(Adjacent(L, src)) - step(L, get_dir(L, src)) - playsound(L, "rustle", 25, 1) - -/turf/open/indestructible - name = "floor" - icon = 'icons/turf/floors.dmi' - icon_state = "floor" - footstep = FOOTSTEP_FLOOR - tiled_dirt = TRUE - -/turf/open/indestructible/Melt() - to_be_destroyed = FALSE - return src - -/turf/open/indestructible/singularity_act() - return - -/turf/open/indestructible/TerraformTurf(path, defer_change = FALSE, ignore_air = FALSE) - return - -/turf/open/indestructible/sound - name = "squeaky floor" - footstep = null - var/sound - -/turf/open/indestructible/sound/Entered(var/mob/AM) - ..() - if(istype(AM)) - playsound(src,sound,50,1) - -/turf/open/indestructible/cobble/side - icon_state = "cobble_side" - -/turf/open/indestructible/cobble/corner - icon_state = "cobble_corner" - -/turf/open/indestructible/cobble - name = "cobblestone path" - desc = "A simple but beautiful path made of various sized stones." - icon = 'icons/turf/floors.dmi' - icon_state = "cobble" - baseturfs = /turf/open/indestructible/cobble - tiled_dirt = FALSE - -/turf/open/indestructible/necropolis - name = "necropolis floor" - desc = "It's regarding you suspiciously." - icon = 'icons/turf/floors.dmi' - icon_state = "necro1" - baseturfs = /turf/open/indestructible/necropolis - initial_gas_mix = LAVALAND_DEFAULT_ATMOS - footstep = FOOTSTEP_LAVA - tiled_dirt = FALSE - -/turf/open/indestructible/necropolis/Initialize() - . = ..() - if(prob(12)) - icon_state = "necro[rand(2,3)]" - -/turf/open/indestructible/necropolis/air - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - -/turf/open/indestructible/boss //you put stone tiles on this and use it as a base - name = "necropolis floor" - icon = 'icons/turf/boss_floors.dmi' - icon_state = "boss" - baseturfs = /turf/open/indestructible/boss - initial_gas_mix = LAVALAND_DEFAULT_ATMOS - -/turf/open/indestructible/boss/air - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - -/turf/open/indestructible/hierophant - icon = 'icons/turf/floors/hierophant_floor.dmi' - initial_gas_mix = LAVALAND_DEFAULT_ATMOS - baseturfs = /turf/open/indestructible/hierophant - smooth = SMOOTH_TRUE - tiled_dirt = FALSE - -/turf/open/indestructible/hierophant/two - -/turf/open/indestructible/hierophant/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir) - return FALSE - -/turf/open/indestructible/paper - name = "notebook floor" - desc = "A floor made of invulnerable notebook paper." - icon_state = "paperfloor" - footstep = null - tiled_dirt = FALSE - -/turf/open/indestructible/binary - name = "tear in the fabric of reality" - CanAtmosPass = ATMOS_PASS_NO - baseturfs = /turf/open/indestructible/binary - icon_state = "binary" - footstep = null - -/turf/open/indestructible/airblock - icon_state = "bluespace" - CanAtmosPass = ATMOS_PASS_NO - baseturfs = /turf/open/indestructible/airblock - -/turf/open/indestructible/clock_spawn_room - name = "cogmetal floor" - desc = "Brass plating that gently radiates heat. For some reason, it reminds you of blood." - icon_state = "reebe" - baseturfs = /turf/open/indestructible/clock_spawn_room - footstep = FOOTSTEP_PLATING - -/turf/open/indestructible/clock_spawn_room/Entered() - ..() - START_PROCESSING(SSfastprocess, src) - -/turf/open/indestructible/clock_spawn_room/Destroy() - STOP_PROCESSING(SSfastprocess, src) - . = ..() - -/turf/open/indestructible/clock_spawn_room/process() - if(!port_servants()) - STOP_PROCESSING(SSfastprocess, src) - -/turf/open/indestructible/clock_spawn_room/proc/port_servants() - . = FALSE - for(var/mob/living/L in src) - if(is_servant_of_ratvar(L) && L.stat != DEAD) - . = TRUE - L.forceMove(get_turf(pick(GLOB.servant_spawns))) - visible_message("[L] vanishes in a flash of red!") - L.visible_message("[L] appears in a flash of red!", \ - "sas'so c'arta forbici
You're yanked away from [src]!") - playsound(src, 'sound/magic/enter_blood.ogg', 50, TRUE) - playsound(L, 'sound/magic/exit_blood.ogg', 50, TRUE) - flash_color(L, flash_color = "#C80000", flash_time = 10) - -/turf/open/Initalize_Atmos(times_fired) - excited = 0 - update_visuals() - - current_cycle = times_fired - - //cache some vars - var/list/atmos_adjacent_turfs = src.atmos_adjacent_turfs - - for(var/direction in GLOB.cardinals) - var/turf/open/enemy_tile = get_step(src, direction) - if(!istype(enemy_tile)) - if (atmos_adjacent_turfs) - atmos_adjacent_turfs -= enemy_tile - continue - var/datum/gas_mixture/enemy_air = enemy_tile.return_air() - - //only check this turf, if it didn't check us when it was initalized - if(enemy_tile.current_cycle < times_fired) - if(CANATMOSPASS(src, enemy_tile)) - LAZYINITLIST(atmos_adjacent_turfs) - LAZYINITLIST(enemy_tile.atmos_adjacent_turfs) - atmos_adjacent_turfs[enemy_tile] = TRUE - enemy_tile.atmos_adjacent_turfs[src] = TRUE - else - if (atmos_adjacent_turfs) - atmos_adjacent_turfs -= enemy_tile - if (enemy_tile.atmos_adjacent_turfs) - enemy_tile.atmos_adjacent_turfs -= src - UNSETEMPTY(enemy_tile.atmos_adjacent_turfs) - continue - else - if (!atmos_adjacent_turfs || !atmos_adjacent_turfs[enemy_tile]) - continue - - if(!excited && air.compare(enemy_air)) - //testing("Active turf found. Return value of compare(): [is_active]") - excited = TRUE - SSair.active_turfs |= src - UNSETEMPTY(atmos_adjacent_turfs) - if (atmos_adjacent_turfs) - src.atmos_adjacent_turfs = atmos_adjacent_turfs - -/turf/open/proc/GetHeatCapacity() - . = air.heat_capacity() - -/turf/open/proc/GetTemperature() - . = air.temperature - -/turf/open/proc/TakeTemperature(temp) - air.temperature += temp - air_update_turf() - -/turf/open/proc/freon_gas_act() - for(var/obj/I in contents) - if(I.resistance_flags & FREEZE_PROOF) - return - if(!(I.obj_flags & FROZEN)) - I.make_frozen_visual() - for(var/mob/living/L in contents) - if(L.bodytemperature <= 50) - L.apply_status_effect(/datum/status_effect/freon) - MakeSlippery(TURF_WET_PERMAFROST, 50) - return 1 - -/turf/open/proc/water_vapor_gas_act() - MakeSlippery(TURF_WET_WATER, min_wet_time = 100, wet_time_to_add = 50) - - for(var/mob/living/simple_animal/slime/M in src) - M.apply_water() - - SEND_SIGNAL(src, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK) - for(var/obj/effect/O in src) - if(is_cleanable(O)) - qdel(O) - return TRUE - -/turf/open/handle_slip(mob/living/carbon/C, knockdown_amount, obj/O, lube) - if(C.movement_type & FLYING) - return 0 - if(has_gravity(src)) - var/obj/buckled_obj - if(C.buckled) - buckled_obj = C.buckled - if(!(lube&GALOSHES_DONT_HELP)) //can't slip while buckled unless it's lube. - return 0 - else - if(C.lying || !(C.status_flags & CANKNOCKDOWN)) // can't slip unbuckled mob if they're lying or can't fall. - return 0 - if(C.m_intent == MOVE_INTENT_WALK && (lube&NO_SLIP_WHEN_WALKING)) - return 0 - if(ishuman(C) && (lube&NO_SLIP_WHEN_WALKING)) - var/mob/living/carbon/human/H = C - if(!H.sprinting && H.getStaminaLoss() >= 20) - return 0 - if(!(lube&SLIDE_ICE)) - to_chat(C, "You slipped[ O ? " on the [O.name]" : ""]!") - playsound(C.loc, 'sound/misc/slip.ogg', 50, 1, -3) - - SEND_SIGNAL(C, COMSIG_ADD_MOOD_EVENT, "slipped", /datum/mood_event/slipped) - for(var/obj/item/I in C.held_items) - C.accident(I) - - var/olddir = C.dir - if(!(lube & SLIDE_ICE)) - C.Knockdown(knockdown_amount) - C.stop_pulling() - else - C.Stun(20) - - if(buckled_obj) - buckled_obj.unbuckle_mob(C) - lube |= SLIDE_ICE - - if(lube&SLIDE) - new /datum/forced_movement(C, get_ranged_target_turf(C, olddir, 4), 1, FALSE, CALLBACK(C, /mob/living/carbon/.proc/spin, 1, 1)) - else if(lube&SLIDE_ICE) - new /datum/forced_movement(C, get_ranged_target_turf(C, olddir, 1), 1, FALSE) //spinning would be bad for ice, fucks up the next dir - return 1 - -/turf/open/proc/MakeSlippery(wet_setting = TURF_WET_WATER, min_wet_time = 0, wet_time_to_add = 0, max_wet_time = MAXIMUM_WET_TIME, permanent) - AddComponent(/datum/component/wet_floor, wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) - -/turf/open/proc/MakeDry(wet_setting = TURF_WET_WATER, immediate = FALSE, amount = INFINITY) - SEND_SIGNAL(src, COMSIG_TURF_MAKE_DRY, wet_setting, immediate, amount) - -/turf/open/get_dumping_location() - return src - -/turf/open/proc/ClearWet()//Nuclear option of immediately removing slipperyness from the tile instead of the natural drying over time - qdel(GetComponent(/datum/component/wet_floor)) - -/turf/open/rad_act(pulse_strength) - . = ..() - if (air.gases[/datum/gas/carbon_dioxide] && air.gases[/datum/gas/oxygen]) - pulse_strength = min(pulse_strength,air.gases[/datum/gas/carbon_dioxide]*1000,air.gases[/datum/gas/oxygen]*2000) //Ensures matter is conserved properly - air.gases[/datum/gas/carbon_dioxide]=max(air.gases[/datum/gas/carbon_dioxide]-(pulse_strength/1000),0) - air.gases[/datum/gas/oxygen]=max(air.gases[/datum/gas/oxygen]-(pulse_strength/2000),0) - air.gases[/datum/gas/pluoxium]+=(pulse_strength/4000) - air.garbage_collect() +/turf/open + plane = FLOOR_PLANE + var/slowdown = 0 //negative for faster, positive for slower + + var/postdig_icon_change = FALSE + var/postdig_icon + var/wet + + var/footstep = null + +/turf/open/ComponentInitialize() + . = ..() + if(wet) + AddComponent(/datum/component/wet_floor, wet, INFINITY, 0, INFINITY, TRUE) + +/turf/open/MouseDrop_T(atom/dropping, mob/user) + . = ..() + if(dropping == user && isliving(user)) + var/mob/living/L = user + if(L.resting && do_after(L, max(10, L.getStaminaLoss()*0.5), 0, src)) + if(Adjacent(L, src)) + step(L, get_dir(L, src)) + playsound(L, "rustle", 25, 1) + +/turf/open/indestructible + name = "floor" + icon = 'icons/turf/floors.dmi' + icon_state = "floor" + footstep = FOOTSTEP_FLOOR + tiled_dirt = TRUE + +/turf/open/indestructible/Melt() + to_be_destroyed = FALSE + return src + +/turf/open/indestructible/singularity_act() + return + +/turf/open/indestructible/TerraformTurf(path, defer_change = FALSE, ignore_air = FALSE) + return + +/turf/open/indestructible/sound + name = "squeaky floor" + footstep = null + var/sound + +/turf/open/indestructible/sound/Entered(var/mob/AM) + ..() + if(istype(AM)) + playsound(src,sound,50,1) + +/turf/open/indestructible/cobble/side + icon_state = "cobble_side" + +/turf/open/indestructible/cobble/corner + icon_state = "cobble_corner" + +/turf/open/indestructible/cobble + name = "cobblestone path" + desc = "A simple but beautiful path made of various sized stones." + icon = 'icons/turf/floors.dmi' + icon_state = "cobble" + baseturfs = /turf/open/indestructible/cobble + tiled_dirt = FALSE + +/turf/open/indestructible/necropolis + name = "necropolis floor" + desc = "It's regarding you suspiciously." + icon = 'icons/turf/floors.dmi' + icon_state = "necro1" + baseturfs = /turf/open/indestructible/necropolis + initial_gas_mix = LAVALAND_DEFAULT_ATMOS + footstep = FOOTSTEP_LAVA + tiled_dirt = FALSE + +/turf/open/indestructible/necropolis/Initialize() + . = ..() + if(prob(12)) + icon_state = "necro[rand(2,3)]" + +/turf/open/indestructible/necropolis/air + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + +/turf/open/indestructible/boss //you put stone tiles on this and use it as a base + name = "necropolis floor" + icon = 'icons/turf/boss_floors.dmi' + icon_state = "boss" + baseturfs = /turf/open/indestructible/boss + initial_gas_mix = LAVALAND_DEFAULT_ATMOS + +/turf/open/indestructible/boss/air + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + +/turf/open/indestructible/hierophant + icon = 'icons/turf/floors/hierophant_floor.dmi' + initial_gas_mix = LAVALAND_DEFAULT_ATMOS + baseturfs = /turf/open/indestructible/hierophant + smooth = SMOOTH_TRUE + tiled_dirt = FALSE + +/turf/open/indestructible/hierophant/two + +/turf/open/indestructible/hierophant/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir) + return FALSE + +/turf/open/indestructible/paper + name = "notebook floor" + desc = "A floor made of invulnerable notebook paper." + icon_state = "paperfloor" + footstep = null + tiled_dirt = FALSE + +/turf/open/indestructible/binary + name = "tear in the fabric of reality" + CanAtmosPass = ATMOS_PASS_NO + baseturfs = /turf/open/indestructible/binary + icon_state = "binary" + footstep = null + +/turf/open/indestructible/airblock + icon_state = "bluespace" + CanAtmosPass = ATMOS_PASS_NO + baseturfs = /turf/open/indestructible/airblock + +/turf/open/indestructible/clock_spawn_room + name = "cogmetal floor" + desc = "Brass plating that gently radiates heat. For some reason, it reminds you of blood." + icon_state = "reebe" + baseturfs = /turf/open/indestructible/clock_spawn_room + footstep = FOOTSTEP_PLATING + +/turf/open/indestructible/clock_spawn_room/Entered() + ..() + START_PROCESSING(SSfastprocess, src) + +/turf/open/indestructible/clock_spawn_room/Destroy() + STOP_PROCESSING(SSfastprocess, src) + . = ..() + +/turf/open/indestructible/clock_spawn_room/process() + if(!port_servants()) + STOP_PROCESSING(SSfastprocess, src) + +/turf/open/indestructible/clock_spawn_room/proc/port_servants() + . = FALSE + for(var/mob/living/L in src) + if(is_servant_of_ratvar(L) && L.stat != DEAD) + . = TRUE + L.forceMove(get_turf(pick(GLOB.servant_spawns))) + visible_message("[L] vanishes in a flash of red!") + L.visible_message("[L] appears in a flash of red!", \ + "sas'so c'arta forbici
You're yanked away from [src]!") + playsound(src, 'sound/magic/enter_blood.ogg', 50, TRUE) + playsound(L, 'sound/magic/exit_blood.ogg', 50, TRUE) + flash_color(L, flash_color = "#C80000", flash_time = 10) + +/turf/open/Initalize_Atmos(times_fired) + excited = 0 + update_visuals() + + current_cycle = times_fired + + //cache some vars + var/list/atmos_adjacent_turfs = src.atmos_adjacent_turfs + + for(var/direction in GLOB.cardinals) + var/turf/open/enemy_tile = get_step(src, direction) + if(!istype(enemy_tile)) + if (atmos_adjacent_turfs) + atmos_adjacent_turfs -= enemy_tile + continue + var/datum/gas_mixture/enemy_air = enemy_tile.return_air() + + //only check this turf, if it didn't check us when it was initalized + if(enemy_tile.current_cycle < times_fired) + if(CANATMOSPASS(src, enemy_tile)) + LAZYINITLIST(atmos_adjacent_turfs) + LAZYINITLIST(enemy_tile.atmos_adjacent_turfs) + atmos_adjacent_turfs[enemy_tile] = TRUE + enemy_tile.atmos_adjacent_turfs[src] = TRUE + else + if (atmos_adjacent_turfs) + atmos_adjacent_turfs -= enemy_tile + if (enemy_tile.atmos_adjacent_turfs) + enemy_tile.atmos_adjacent_turfs -= src + UNSETEMPTY(enemy_tile.atmos_adjacent_turfs) + continue + else + if (!atmos_adjacent_turfs || !atmos_adjacent_turfs[enemy_tile]) + continue + + if(!excited && air.compare(enemy_air)) + //testing("Active turf found. Return value of compare(): [is_active]") + excited = TRUE + SSair.active_turfs |= src + UNSETEMPTY(atmos_adjacent_turfs) + if (atmos_adjacent_turfs) + src.atmos_adjacent_turfs = atmos_adjacent_turfs + +/turf/open/proc/GetHeatCapacity() + . = air.heat_capacity() + +/turf/open/proc/GetTemperature() + . = air.temperature + +/turf/open/proc/TakeTemperature(temp) + air.temperature += temp + air_update_turf() + +/turf/open/proc/freon_gas_act() + for(var/obj/I in contents) + if(I.resistance_flags & FREEZE_PROOF) + return + if(!(I.obj_flags & FROZEN)) + I.make_frozen_visual() + for(var/mob/living/L in contents) + if(L.bodytemperature <= 50) + L.apply_status_effect(/datum/status_effect/freon) + MakeSlippery(TURF_WET_PERMAFROST, 50) + return 1 + +/turf/open/proc/water_vapor_gas_act() + MakeSlippery(TURF_WET_WATER, min_wet_time = 100, wet_time_to_add = 50) + + for(var/mob/living/simple_animal/slime/M in src) + M.apply_water() + + SEND_SIGNAL(src, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK) + for(var/obj/effect/O in src) + if(is_cleanable(O)) + qdel(O) + return TRUE + +/turf/open/handle_slip(mob/living/carbon/C, knockdown_amount, obj/O, lube) + if(C.movement_type & FLYING) + return 0 + if(has_gravity(src)) + var/obj/buckled_obj + if(C.buckled) + buckled_obj = C.buckled + if(!(lube&GALOSHES_DONT_HELP)) //can't slip while buckled unless it's lube. + return 0 + else + if(C.lying || !(C.status_flags & CANKNOCKDOWN)) // can't slip unbuckled mob if they're lying or can't fall. + return 0 + if(C.m_intent == MOVE_INTENT_WALK && (lube&NO_SLIP_WHEN_WALKING)) + return 0 + if(ishuman(C) && (lube&NO_SLIP_WHEN_WALKING)) + var/mob/living/carbon/human/H = C + if(!H.sprinting && H.getStaminaLoss() >= 20) + return 0 + if(!(lube&SLIDE_ICE)) + to_chat(C, "You slipped[ O ? " on the [O.name]" : ""]!") + playsound(C.loc, 'sound/misc/slip.ogg', 50, 1, -3) + + SEND_SIGNAL(C, COMSIG_ADD_MOOD_EVENT, "slipped", /datum/mood_event/slipped) + for(var/obj/item/I in C.held_items) + C.accident(I) + + var/olddir = C.dir + if(!(lube & SLIDE_ICE)) + C.Knockdown(knockdown_amount) + C.stop_pulling() + else + C.Stun(20) + + if(buckled_obj) + buckled_obj.unbuckle_mob(C) + lube |= SLIDE_ICE + + if(lube&SLIDE) + new /datum/forced_movement(C, get_ranged_target_turf(C, olddir, 4), 1, FALSE, CALLBACK(C, /mob/living/carbon/.proc/spin, 1, 1)) + else if(lube&SLIDE_ICE) + new /datum/forced_movement(C, get_ranged_target_turf(C, olddir, 1), 1, FALSE) //spinning would be bad for ice, fucks up the next dir + return 1 + +/turf/open/proc/MakeSlippery(wet_setting = TURF_WET_WATER, min_wet_time = 0, wet_time_to_add = 0, max_wet_time = MAXIMUM_WET_TIME, permanent) + AddComponent(/datum/component/wet_floor, wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) + +/turf/open/proc/MakeDry(wet_setting = TURF_WET_WATER, immediate = FALSE, amount = INFINITY) + SEND_SIGNAL(src, COMSIG_TURF_MAKE_DRY, wet_setting, immediate, amount) + +/turf/open/get_dumping_location() + return src + +/turf/open/proc/ClearWet()//Nuclear option of immediately removing slipperyness from the tile instead of the natural drying over time + qdel(GetComponent(/datum/component/wet_floor)) + +/turf/open/rad_act(pulse_strength) + . = ..() + if (air.gases[/datum/gas/carbon_dioxide] && air.gases[/datum/gas/oxygen]) + pulse_strength = min(pulse_strength,air.gases[/datum/gas/carbon_dioxide]*1000,air.gases[/datum/gas/oxygen]*2000) //Ensures matter is conserved properly + air.gases[/datum/gas/carbon_dioxide]=max(air.gases[/datum/gas/carbon_dioxide]-(pulse_strength/1000),0) + air.gases[/datum/gas/oxygen]=max(air.gases[/datum/gas/oxygen]-(pulse_strength/2000),0) + air.gases[/datum/gas/pluoxium]+=(pulse_strength/4000) + GAS_GARBAGE_COLLECT(air.gases) diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index 75a0492785..8ec93f978f 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -1,202 +1,202 @@ -/obj/item/onetankbomb - name = "bomb" - icon = 'icons/obj/tank.dmi' - item_state = "assembly" - lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' - righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' - throwforce = 5 - w_class = WEIGHT_CLASS_NORMAL - throw_speed = 2 - throw_range = 4 - flags_1 = CONDUCT_1 - var/status = FALSE //0 - not readied //1 - bomb finished with welder - var/obj/item/assembly_holder/bombassembly = null //The first part of the bomb is an assembly holder, holding an igniter+some device - var/obj/item/tank/bombtank = null //the second part of the bomb is a plasma tank - -/obj/item/onetankbomb/IsSpecialAssembly() - return TRUE - -/obj/item/onetankbomb/examine(mob/user) - bombtank.examine(user) - -/obj/item/onetankbomb/update_icon() - cut_overlays() - if(bombtank) - icon = bombtank.icon - icon_state = bombtank.icon_state - if(bombassembly) - add_overlay(bombassembly.icon_state) - copy_overlays(bombassembly) - add_overlay("bomb_assembly") - -/obj/item/onetankbomb/wrench_act(mob/living/user, obj/item/I) - to_chat(user, "You disassemble [src]!") - if(bombassembly) - bombassembly.forceMove(drop_location()) - bombassembly.master = null - bombassembly = null - if(bombtank) - bombtank.forceMove(drop_location()) - bombtank.master = null - bombtank = null - qdel(src) - return TRUE - -/obj/item/onetankbomb/welder_act(mob/living/user, obj/item/I) - . = FALSE - if(status) - to_chat(user, "[bombtank] already has a pressure hole!") - return - if(!I.tool_start_check(user, amount=0)) - return - if(I.use_tool(src, user, 0, volume=40)) - status = TRUE - GLOB.bombers += "[key_name(user)] welded a single tank bomb. Temp: [bombtank.air_contents.temperature-T0C]" - message_admins("[ADMIN_LOOKUPFLW(user)] welded a single tank bomb. Temp: [bombtank.air_contents.temperature-T0C]") - to_chat(user, "A pressure hole has been bored to [bombtank] valve. \The [bombtank] can now be ignited.") - add_fingerprint(user) - return TRUE - - -/obj/item/onetankbomb/analyzer_act(mob/living/user, obj/item/I) - bombtank.analyzer_act(user, I) - -/obj/item/onetankbomb/attack_self(mob/user) //pressing the bomb accesses its assembly - bombassembly.attack_self(user, TRUE) - add_fingerprint(user) - return - -/obj/item/onetankbomb/receive_signal() //This is mainly called by the sensor through sense() to the holder, and from the holder to here. - audible_message("[icon2html(src, hearers(src))] *beep* *beep* *beep*") - playsound(src, 'sound/machines/triple_beep.ogg', ASSEMBLY_BEEP_VOLUME, TRUE) - sleep(10) - if(QDELETED(src)) - return - if(status) - bombtank.ignite() //if its not a dud, boom (or not boom if you made shitty mix) the ignite proc is below, in this file - else - bombtank.release() - -//Assembly / attached device memes - -/obj/item/onetankbomb/Crossed(atom/movable/AM as mob|obj) //for mousetraps - . = ..() - if(bombassembly) - bombassembly.Crossed(AM) - -/obj/item/onetankbomb/on_found(mob/finder) //for mousetraps - if(bombassembly) - bombassembly.on_found(finder) - -/obj/item/onetankbomb/attack_hand() //also for mousetraps - . = ..() - if(.) - return - if(bombassembly) - bombassembly.attack_hand() - -/obj/item/onetankbomb/Move() - . = ..() - if(bombassembly) - bombassembly.setDir(dir) - bombassembly.Move() - -/obj/item/onetankbomb/dropped() - . = ..() - if(bombassembly) - bombassembly.dropped() - - - - -// ---------- Procs below are for tanks that are used exclusively in 1-tank bombs ---------- - -//Bomb assembly proc. This turns assembly+tank into a bomb -/obj/item/tank/proc/bomb_assemble(obj/item/assembly_holder/assembly, mob/living/user) - //Check if either part of the assembly has an igniter, but if both parts are igniters, then fuck it - if(isigniter(assembly.a_left) == isigniter(assembly.a_right)) - return - - if((src in user.get_equipped_items(TRUE)) && !user.canUnEquip(src)) - to_chat(user, "[src] is stuck to you!") - return - - if(!user.canUnEquip(assembly)) - to_chat(user, "[assembly] is stuck to your hand!") - return - - var/obj/item/onetankbomb/bomb = new - user.transferItemToLoc(src, bomb) - user.transferItemToLoc(assembly, bomb) - - bomb.bombassembly = assembly //Tell the bomb about its assembly part - assembly.master = bomb //Tell the assembly about its new owner - - bomb.bombtank = src //Same for tank - master = bomb - - forceMove(bomb) - bomb.update_icon() - - user.put_in_hands(bomb) //Equips the bomb if possible, or puts it on the floor. - to_chat(user, "You attach [assembly] to [src].") - return - -/obj/item/tank/proc/ignite() //This happens when a bomb is told to explode - var/fuel_moles = air_contents.gases[/datum/gas/plasma] + air_contents.gases[/datum/gas/oxygen]/6 - air_contents.garbage_collect() - var/datum/gas_mixture/bomb_mixture = air_contents.copy() - var/strength = 1 - - var/turf/ground_zero = get_turf(loc) - - if(master) - qdel(master) - qdel(src) - - if(bomb_mixture.temperature > (T0C + 400)) - strength = (fuel_moles/15) - - if(strength >=1) - explosion(ground_zero, round(strength,1), round(strength*2,1), round(strength*3,1), round(strength*4,1)) - else if(strength >=0.5) - explosion(ground_zero, 0, 1, 2, 4) - else if(strength >=0.2) - explosion(ground_zero, -1, 0, 1, 2) - else - ground_zero.assume_air(bomb_mixture) - ground_zero.hotspot_expose(1000, 125) - - else if(bomb_mixture.temperature > (T0C + 250)) - strength = (fuel_moles/20) - - if(strength >=1) - explosion(ground_zero, 0, round(strength,1), round(strength*2,1), round(strength*3,1)) - else if (strength >=0.5) - explosion(ground_zero, -1, 0, 1, 2) - else - ground_zero.assume_air(bomb_mixture) - ground_zero.hotspot_expose(1000, 125) - - else if(bomb_mixture.temperature > (T0C + 100)) - strength = (fuel_moles/25) - - if (strength >=1) - explosion(ground_zero, -1, 0, round(strength,1), round(strength*3,1)) - else - ground_zero.assume_air(bomb_mixture) - ground_zero.hotspot_expose(1000, 125) - - else - ground_zero.assume_air(bomb_mixture) - ground_zero.hotspot_expose(1000, 125) - - ground_zero.air_update_turf() - -/obj/item/tank/proc/release() //This happens when the bomb is not welded. Tank contents are just spat out. - var/datum/gas_mixture/removed = air_contents.remove(air_contents.total_moles()) - var/turf/T = get_turf(src) - if(!T) - return - T.assume_air(removed) - air_update_turf() +/obj/item/onetankbomb + name = "bomb" + icon = 'icons/obj/tank.dmi' + item_state = "assembly" + lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' + throwforce = 5 + w_class = WEIGHT_CLASS_NORMAL + throw_speed = 2 + throw_range = 4 + flags_1 = CONDUCT_1 + var/status = FALSE //0 - not readied //1 - bomb finished with welder + var/obj/item/assembly_holder/bombassembly = null //The first part of the bomb is an assembly holder, holding an igniter+some device + var/obj/item/tank/bombtank = null //the second part of the bomb is a plasma tank + +/obj/item/onetankbomb/IsSpecialAssembly() + return TRUE + +/obj/item/onetankbomb/examine(mob/user) + bombtank.examine(user) + +/obj/item/onetankbomb/update_icon() + cut_overlays() + if(bombtank) + icon = bombtank.icon + icon_state = bombtank.icon_state + if(bombassembly) + add_overlay(bombassembly.icon_state) + copy_overlays(bombassembly) + add_overlay("bomb_assembly") + +/obj/item/onetankbomb/wrench_act(mob/living/user, obj/item/I) + to_chat(user, "You disassemble [src]!") + if(bombassembly) + bombassembly.forceMove(drop_location()) + bombassembly.master = null + bombassembly = null + if(bombtank) + bombtank.forceMove(drop_location()) + bombtank.master = null + bombtank = null + qdel(src) + return TRUE + +/obj/item/onetankbomb/welder_act(mob/living/user, obj/item/I) + . = FALSE + if(status) + to_chat(user, "[bombtank] already has a pressure hole!") + return + if(!I.tool_start_check(user, amount=0)) + return + if(I.use_tool(src, user, 0, volume=40)) + status = TRUE + GLOB.bombers += "[key_name(user)] welded a single tank bomb. Temp: [bombtank.air_contents.temperature-T0C]" + message_admins("[ADMIN_LOOKUPFLW(user)] welded a single tank bomb. Temp: [bombtank.air_contents.temperature-T0C]") + to_chat(user, "A pressure hole has been bored to [bombtank] valve. \The [bombtank] can now be ignited.") + add_fingerprint(user) + return TRUE + + +/obj/item/onetankbomb/analyzer_act(mob/living/user, obj/item/I) + bombtank.analyzer_act(user, I) + +/obj/item/onetankbomb/attack_self(mob/user) //pressing the bomb accesses its assembly + bombassembly.attack_self(user, TRUE) + add_fingerprint(user) + return + +/obj/item/onetankbomb/receive_signal() //This is mainly called by the sensor through sense() to the holder, and from the holder to here. + audible_message("[icon2html(src, hearers(src))] *beep* *beep* *beep*") + playsound(src, 'sound/machines/triple_beep.ogg', ASSEMBLY_BEEP_VOLUME, TRUE) + sleep(10) + if(QDELETED(src)) + return + if(status) + bombtank.ignite() //if its not a dud, boom (or not boom if you made shitty mix) the ignite proc is below, in this file + else + bombtank.release() + +//Assembly / attached device memes + +/obj/item/onetankbomb/Crossed(atom/movable/AM as mob|obj) //for mousetraps + . = ..() + if(bombassembly) + bombassembly.Crossed(AM) + +/obj/item/onetankbomb/on_found(mob/finder) //for mousetraps + if(bombassembly) + bombassembly.on_found(finder) + +/obj/item/onetankbomb/attack_hand() //also for mousetraps + . = ..() + if(.) + return + if(bombassembly) + bombassembly.attack_hand() + +/obj/item/onetankbomb/Move() + . = ..() + if(bombassembly) + bombassembly.setDir(dir) + bombassembly.Move() + +/obj/item/onetankbomb/dropped() + . = ..() + if(bombassembly) + bombassembly.dropped() + + + + +// ---------- Procs below are for tanks that are used exclusively in 1-tank bombs ---------- + +//Bomb assembly proc. This turns assembly+tank into a bomb +/obj/item/tank/proc/bomb_assemble(obj/item/assembly_holder/assembly, mob/living/user) + //Check if either part of the assembly has an igniter, but if both parts are igniters, then fuck it + if(isigniter(assembly.a_left) == isigniter(assembly.a_right)) + return + + if((src in user.get_equipped_items(TRUE)) && !user.canUnEquip(src)) + to_chat(user, "[src] is stuck to you!") + return + + if(!user.canUnEquip(assembly)) + to_chat(user, "[assembly] is stuck to your hand!") + return + + var/obj/item/onetankbomb/bomb = new + user.transferItemToLoc(src, bomb) + user.transferItemToLoc(assembly, bomb) + + bomb.bombassembly = assembly //Tell the bomb about its assembly part + assembly.master = bomb //Tell the assembly about its new owner + + bomb.bombtank = src //Same for tank + master = bomb + + forceMove(bomb) + bomb.update_icon() + + user.put_in_hands(bomb) //Equips the bomb if possible, or puts it on the floor. + to_chat(user, "You attach [assembly] to [src].") + return + +/obj/item/tank/proc/ignite() //This happens when a bomb is told to explode + var/fuel_moles = air_contents.gases[/datum/gas/plasma] + air_contents.gases[/datum/gas/oxygen]/6 + GAS_GARBAGE_COLLECT(air_contents.gases) + var/datum/gas_mixture/bomb_mixture = air_contents.copy() + var/strength = 1 + + var/turf/ground_zero = get_turf(loc) + + if(master) + qdel(master) + qdel(src) + + if(bomb_mixture.temperature > (T0C + 400)) + strength = (fuel_moles/15) + + if(strength >=1) + explosion(ground_zero, round(strength,1), round(strength*2,1), round(strength*3,1), round(strength*4,1)) + else if(strength >=0.5) + explosion(ground_zero, 0, 1, 2, 4) + else if(strength >=0.2) + explosion(ground_zero, -1, 0, 1, 2) + else + ground_zero.assume_air(bomb_mixture) + ground_zero.hotspot_expose(1000, 125) + + else if(bomb_mixture.temperature > (T0C + 250)) + strength = (fuel_moles/20) + + if(strength >=1) + explosion(ground_zero, 0, round(strength,1), round(strength*2,1), round(strength*3,1)) + else if (strength >=0.5) + explosion(ground_zero, -1, 0, 1, 2) + else + ground_zero.assume_air(bomb_mixture) + ground_zero.hotspot_expose(1000, 125) + + else if(bomb_mixture.temperature > (T0C + 100)) + strength = (fuel_moles/25) + + if (strength >=1) + explosion(ground_zero, -1, 0, round(strength,1), round(strength*3,1)) + else + ground_zero.assume_air(bomb_mixture) + ground_zero.hotspot_expose(1000, 125) + + else + ground_zero.assume_air(bomb_mixture) + ground_zero.hotspot_expose(1000, 125) + + ground_zero.air_update_turf() + +/obj/item/tank/proc/release() //This happens when the bomb is not welded. Tank contents are just spat out. + var/datum/gas_mixture/removed = air_contents.remove(air_contents.total_moles()) + var/turf/T = get_turf(src) + if(!T) + return + T.assume_air(removed) + air_update_turf() diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 570b62a081..a112eabbf7 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -5,8 +5,6 @@ What are the archived variables for? */ #define MINIMUM_HEAT_CAPACITY 0.0003 #define MINIMUM_MOLE_COUNT 0.01 -#define QUANTIZE(variable) (round(variable,0.0000001))/*I feel the need to document what happens here. Basically this is used to catch most rounding errors, however it's previous value made it so that - once gases got hot enough, most procedures wouldnt occur due to the fact that the mole counts would get rounded away. Thus, we lowered it a few orders of magnititude */ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm /datum/gas_mixture var/list/gases = list() @@ -22,23 +20,6 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm if (!isnull(volume)) src.volume = volume -//listmos procs -//use the macros in performance intensive areas. for their definitions, refer to code/__DEFINES/atmospherics.dm - -//UNOMOS - whoever originally wrote this is a sadist that just wants to see byond suffer. - - //garbage_collect() - removes any gas list which is empty. - //If called with a list as an argument, only removes gas lists with IDs from that list. - //Must be used after subtracting from a gas. Must be used after assert_gas() - //if assert_gas() was called only to read from the gas. - //By removing empty gases, processing speed is increased. - //UNOMOS - i have no idea exactly what the fuck or how the fuck it's the case, but removing this proc can and will completely nullify all of the performance gain from removing add_gas and assert_gas. so uh, dont remove it i guess. Why this shit isn't a define is beyond me. -/datum/gas_mixture/proc/garbage_collect(list/tocheck) - var/list/cached_gases = gases - for(var/id in (tocheck || cached_gases)) - if(QUANTIZE(cached_gases[id]) <= 0) - cached_gases -= id - //PV = nRT /datum/gas_mixture/proc/heat_capacity() //joules per kelvin @@ -152,7 +133,7 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm for(var/id in cached_gases) removed_gases[id] = QUANTIZE((cached_gases[id] / sum) * amount) cached_gases[id] -= removed_gases[id] - garbage_collect() + GAS_GARBAGE_COLLECT(gases) return removed @@ -170,7 +151,7 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm removed_gases[id] = QUANTIZE(cached_gases[id] * ratio) cached_gases[id] -= removed_gases[id] - garbage_collect() + GAS_GARBAGE_COLLECT(gases) return removed @@ -282,11 +263,8 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm if(abs(new_sharer_heat_capacity/old_sharer_heat_capacity - 1) < 0.1) // <10% change in sharer heat capacity temperature_share(sharer, OPEN_HEAT_TRANSFER_COEFFICIENT) - if(length(cached_gases ^ sharer_gases)) //if all gases were present in both mixtures, we know that no gases are 0 - garbage_collect(cached_gases - sharer_gases) //any gases the sharer had, we are guaranteed to have. gases that it didn't have we are not. - sharer.garbage_collect(sharer_gases - cached_gases) //the reverse is equally true if (initial(sharer.gc_share)) - sharer.garbage_collect() + GAS_GARBAGE_COLLECT(sharer.gases) if(temperature_delta > MINIMUM_TEMPERATURE_TO_MOVE || abs(moved_moles) > MINIMUM_MOLES_DELTA_TO_MOVE) var/our_moles TOTAL_MOLES(cached_gases,our_moles) @@ -391,7 +369,7 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm if (. & STOP_REACTIONS) break if(.) - garbage_collect() + GAS_GARBAGE_COLLECT(gases) if(temperature < TCMB) //just for safety temperature = TCMB diff --git a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm index 77a00841cf..db6bc45f2b 100644 --- a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm +++ b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm @@ -7,9 +7,6 @@ /datum/gas_mixture/immutable/New() ..() - garbage_collect() - -/datum/gas_mixture/immutable/garbage_collect() temperature = initial_temperature temperature_archived = initial_temperature gases.Cut() @@ -19,7 +16,9 @@ /datum/gas_mixture/immutable/share(datum/gas_mixture/sharer, atmos_adjacent_turfs = 4) . = ..(sharer, 0) - garbage_collect() + temperature = initial_temperature + temperature_archived = initial_temperature + gases.Cut() /datum/gas_mixture/immutable/react() return 0 //we're immutable. @@ -59,9 +58,13 @@ /datum/gas_mixture/immutable/cloner initial_temperature = T20C -/datum/gas_mixture/immutable/cloner/garbage_collect() +/datum/gas_mixture/immutable/cloner/New() ..() gases[/datum/gas/nitrogen] = MOLES_O2STANDARD + MOLES_N2STANDARD +/datum/gas_mixture/immutable/share(datum/gas_mixture/sharer, atmos_adjacent_turfs = 4) + . = ..(sharer, 0) + gases[/datum/gas/nitrogen] = MOLES_O2STANDARD + MOLES_N2STANDARD + /datum/gas_mixture/immutable/cloner/heat_capacity() return (MOLES_O2STANDARD + MOLES_N2STANDARD)*20 //specific heat of nitrogen is 20 diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index 5f4e79174b..f065882a8d 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -1,880 +1,880 @@ -/datum/tlv - var/min2 - var/min1 - var/max1 - var/max2 - -/datum/tlv/New(min2 as num, min1 as num, max1 as num, max2 as num) - if(min2) src.min2 = min2 - if(min1) src.min1 = min1 - if(max1) src.max1 = max1 - if(max2) src.max2 = max2 - -/datum/tlv/proc/get_danger_level(val as num) - if(max2 != -1 && val >= max2) - return 2 - if(min2 != -1 && val <= min2) - return 2 - if(max1 != -1 && val >= max1) - return 1 - if(min1 != -1 && val <= min1) - return 1 - return 0 - -/datum/tlv/no_checks - min2 = -1 - min1 = -1 - max1 = -1 - max2 = -1 - -/datum/tlv/dangerous - min2 = -1 - min1 = -1 - max1 = 0.2 - max2 = 0.5 - -/obj/item/electronics/airalarm - name = "air alarm electronics" - icon_state = "airalarm_electronics" - -/obj/item/wallframe/airalarm - name = "air alarm frame" - desc = "Used for building Air Alarms." - icon = 'icons/obj/monitors.dmi' - icon_state = "alarm_bitem" - result_path = /obj/machinery/airalarm - -#define AALARM_MODE_SCRUBBING 1 -#define AALARM_MODE_VENTING 2 //makes draught -#define AALARM_MODE_PANIC 3 //like siphon, but stronger (enables widenet) -#define AALARM_MODE_REPLACEMENT 4 //sucks off all air, then refill and swithes to scrubbing -#define AALARM_MODE_OFF 5 -#define AALARM_MODE_FLOOD 6 //Emagged mode; turns off scrubbers and pressure checks on vents -#define AALARM_MODE_SIPHON 7 //Scrubbers suck air -#define AALARM_MODE_CONTAMINATED 8 //Turns on all filtering and widenet scrubbing. -#define AALARM_MODE_REFILL 9 //just like normal, but with triple the air output - -#define AALARM_REPORT_TIMEOUT 100 - -#define AALARM_OVERLAY_OFF "alarm_off" -#define AALARM_OVERLAY_GREEN "alarm_green" -#define AALARM_OVERLAY_WARN "alarm_amber" -#define AALARM_OVERLAY_DANGER "alarm_red" - -/obj/machinery/airalarm - name = "air alarm" - desc = "A machine that monitors atmosphere levels. Goes off if the area is dangerous." - icon = 'icons/obj/monitors.dmi' - icon_state = "alarm0" - use_power = IDLE_POWER_USE - idle_power_usage = 4 - active_power_usage = 8 - power_channel = ENVIRON - req_access = list(ACCESS_ATMOSPHERICS) - max_integrity = 250 - integrity_failure = 80 - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 30) - resistance_flags = FIRE_PROOF - - var/danger_level = 0 - var/mode = AALARM_MODE_SCRUBBING - - var/locked = TRUE - var/aidisabled = 0 - var/shorted = 0 - var/buildstage = 2 // 2 = complete, 1 = no wires, 0 = circuit gone - var/brightness_on = 1 - - var/frequency = FREQ_ATMOS_CONTROL - var/alarm_frequency = FREQ_ATMOS_ALARMS - var/datum/radio_frequency/radio_connection - - var/list/TLV = list( // Breathable air. - "pressure" = new/datum/tlv(ONE_ATMOSPHERE * 0.8, ONE_ATMOSPHERE* 0.9, ONE_ATMOSPHERE * 1.1, ONE_ATMOSPHERE * 1.2), // kPa - "temperature" = new/datum/tlv(T0C, T0C+10, T0C+40, T0C+66), - /datum/gas/oxygen = new/datum/tlv(16, 19, 135, 140), // Partial pressure, kpa - /datum/gas/nitrogen = new/datum/tlv(-1, -1, 1000, 1000), - /datum/gas/carbon_dioxide = new/datum/tlv(-1, -1, 5, 10), - /datum/gas/miasma = new/datum/tlv/(-1, -1, 2, 5), - /datum/gas/plasma = new/datum/tlv/dangerous, - /datum/gas/nitrous_oxide = new/datum/tlv/dangerous, - /datum/gas/bz = new/datum/tlv/dangerous, - /datum/gas/hypernoblium = new/datum/tlv(-1, -1, 1000, 1000), // Hyper-Noblium is inert and nontoxic - /datum/gas/water_vapor = new/datum/tlv/dangerous, - /datum/gas/tritium = new/datum/tlv/dangerous, - /datum/gas/stimulum = new/datum/tlv(-1, -1, 1000, 1000), // Stimulum has only positive effects - /datum/gas/nitryl = new/datum/tlv/dangerous, - /datum/gas/pluoxium = new/datum/tlv(-1, -1, 1000, 1000) // Unlike oxygen, pluoxium does not fuel plasma/tritium fires - ) - -/obj/machinery/airalarm/server // No checks here. - TLV = list( - "pressure" = new/datum/tlv/no_checks, - "temperature" = new/datum/tlv/no_checks, - /datum/gas/oxygen = new/datum/tlv/no_checks, - /datum/gas/nitrogen = new/datum/tlv/no_checks, - /datum/gas/carbon_dioxide = new/datum/tlv/no_checks, - /datum/gas/miasma = new/datum/tlv/no_checks, - /datum/gas/plasma = new/datum/tlv/no_checks, - /datum/gas/nitrous_oxide = new/datum/tlv/no_checks, - /datum/gas/bz = new/datum/tlv/no_checks, - /datum/gas/hypernoblium = new/datum/tlv/no_checks, - /datum/gas/water_vapor = new/datum/tlv/no_checks, - /datum/gas/tritium = new/datum/tlv/no_checks, - /datum/gas/stimulum = new/datum/tlv/no_checks, - /datum/gas/nitryl = new/datum/tlv/no_checks, - /datum/gas/pluoxium = new/datum/tlv/no_checks - ) - -/obj/machinery/airalarm/kitchen_cold_room // Copypasta: to check temperatures. - TLV = list( - "pressure" = new/datum/tlv(ONE_ATMOSPHERE * 0.8, ONE_ATMOSPHERE* 0.9, ONE_ATMOSPHERE * 1.1, ONE_ATMOSPHERE * 1.2), // kPa - "temperature" = new/datum/tlv(T0C-73.15, T0C-63.15, T0C, T0C+10), - /datum/gas/oxygen = new/datum/tlv(16, 19, 135, 140), // Partial pressure, kpa - /datum/gas/nitrogen = new/datum/tlv(-1, -1, 1000, 1000), - /datum/gas/carbon_dioxide = new/datum/tlv(-1, -1, 5, 10), - /datum/gas/miasma = new/datum/tlv/(-1, -1, 2, 5), - /datum/gas/plasma = new/datum/tlv/dangerous, - /datum/gas/nitrous_oxide = new/datum/tlv/dangerous, - /datum/gas/bz = new/datum/tlv/dangerous, - /datum/gas/hypernoblium = new/datum/tlv(-1, -1, 1000, 1000), // Hyper-Noblium is inert and nontoxic - /datum/gas/water_vapor = new/datum/tlv/dangerous, - /datum/gas/tritium = new/datum/tlv/dangerous, - /datum/gas/stimulum = new/datum/tlv(-1, -1, 1000, 1000), // Stimulum has only positive effects - /datum/gas/nitryl = new/datum/tlv/dangerous, - /datum/gas/pluoxium = new/datum/tlv(-1, -1, 1000, 1000) // Unlike oxygen, pluoxium does not fuel plasma/tritium fires - ) - -/obj/machinery/airalarm/unlocked - locked = FALSE - -/obj/machinery/airalarm/engine - name = "engine air alarm" - locked = FALSE - req_access = null - req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_ENGINE) - -/obj/machinery/airalarm/mixingchamber - name = "chamber air alarm" - locked = FALSE - req_access = null - req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_TOX, ACCESS_TOX_STORAGE) - -/obj/machinery/airalarm/all_access - name = "all-access air alarm" - desc = "This particular atmos control unit appears to have no access restrictions." - locked = FALSE - req_access = null - req_one_access = null - -/obj/machinery/airalarm/syndicate //general syndicate access - req_access = list(ACCESS_SYNDICATE) - -/obj/machinery/airalarm/directional/north //Pixel offsets get overwritten on New() - dir = SOUTH - pixel_y = 24 - -/obj/machinery/airalarm/directional/south - dir = NORTH - pixel_y = -24 - -/obj/machinery/airalarm/directional/east - dir = WEST - pixel_x = 24 - -/obj/machinery/airalarm/directional/west - dir = EAST - pixel_x = -24 - -//all air alarms in area are connected via magic -/area - var/list/air_vent_names = list() - var/list/air_scrub_names = list() - var/list/air_vent_info = list() - var/list/air_scrub_info = list() - -/obj/machinery/airalarm/Initialize(mapload, ndir, nbuild) - . = ..() - wires = new /datum/wires/airalarm(src) - - if(ndir) - setDir(ndir) - - if(nbuild) - buildstage = 0 - panel_open = TRUE - pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24) - pixel_y = (dir & 3)? (dir == 1 ? -24 : 24) : 0 - - if(name == initial(name)) - name = "[get_area_name(src)] Air Alarm" - - power_change() - set_frequency(frequency) - -/obj/machinery/airalarm/Destroy() - SSradio.remove_object(src, frequency) - qdel(wires) - wires = null - return ..() - -/obj/machinery/airalarm/examine(mob/user) - . = ..() - switch(buildstage) - if(0) - to_chat(user, "It is missing air alarm electronics.") - if(1) - to_chat(user, "It is missing wiring.") - if(2) - to_chat(user, "Alt-click to [locked ? "unlock" : "lock"] the interface.") - -/obj/machinery/airalarm/ui_status(mob/user) - if(user.has_unlimited_silicon_privilege && aidisabled) - to_chat(user, "AI control has been disabled.") - else if(!shorted) - return ..() - return UI_CLOSE - -/obj/machinery/airalarm/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "airalarm", name, 440, 650, master_ui, state) - ui.open() - -/obj/machinery/airalarm/ui_data(mob/user) - var/data = list( - "locked" = locked, - "siliconUser" = user.has_unlimited_silicon_privilege, - "emagged" = (obj_flags & EMAGGED ? 1 : 0), - "danger_level" = danger_level, - ) - - var/area/A = get_area(src) - data["atmos_alarm"] = A.atmosalm - data["fire_alarm"] = A.fire - - var/turf/T = get_turf(src) - var/datum/gas_mixture/environment = T.return_air() - var/datum/tlv/cur_tlv - - data["environment_data"] = list() - var/pressure = environment.return_pressure() - cur_tlv = TLV["pressure"] - data["environment_data"] += list(list( - "name" = "Pressure", - "value" = pressure, - "unit" = "kPa", - "danger_level" = cur_tlv.get_danger_level(pressure) - )) - var/temperature = environment.temperature - cur_tlv = TLV["temperature"] - data["environment_data"] += list(list( - "name" = "Temperature", - "value" = temperature, - "unit" = "K ([round(temperature - T0C, 0.1)]C)", - "danger_level" = cur_tlv.get_danger_level(temperature) - )) - var/total_moles = environment.total_moles() - var/partial_pressure = R_IDEAL_GAS_EQUATION * environment.temperature / environment.volume - for(var/gas_id in environment.gases) - if(!(gas_id in TLV)) // We're not interested in this gas, it seems. - continue - cur_tlv = TLV[gas_id] - data["environment_data"] += list(list( - "name" = GLOB.meta_gas_info[gas_id][META_GAS_NAME], - "value" = environment.gases[gas_id] / total_moles * 100, - "unit" = "%", - "danger_level" = cur_tlv.get_danger_level(environment.gases[gas_id] * partial_pressure) - )) - - if(!locked || user.has_unlimited_silicon_privilege) - data["vents"] = list() - for(var/id_tag in A.air_vent_names) - var/long_name = A.air_vent_names[id_tag] - var/list/info = A.air_vent_info[id_tag] - if(!info || info["frequency"] != frequency) - continue - data["vents"] += list(list( - "id_tag" = id_tag, - "long_name" = sanitize(long_name), - "power" = info["power"], - "checks" = info["checks"], - "excheck" = info["checks"]&1, - "incheck" = info["checks"]&2, - "direction" = info["direction"], - "external" = info["external"], - "internal" = info["internal"], - "extdefault"= (info["external"] == ONE_ATMOSPHERE), - "intdefault"= (info["internal"] == 0) - )) - data["scrubbers"] = list() - for(var/id_tag in A.air_scrub_names) - var/long_name = A.air_scrub_names[id_tag] - var/list/info = A.air_scrub_info[id_tag] - if(!info || info["frequency"] != frequency) - continue - data["scrubbers"] += list(list( - "id_tag" = id_tag, - "long_name" = sanitize(long_name), - "power" = info["power"], - "scrubbing" = info["scrubbing"], - "widenet" = info["widenet"], - "filter_types" = info["filter_types"] - )) - data["mode"] = mode - data["modes"] = list() - data["modes"] += list(list("name" = "Filtering - Scrubs out contaminants", "mode" = AALARM_MODE_SCRUBBING, "selected" = mode == AALARM_MODE_SCRUBBING, "danger" = 0)) - data["modes"] += list(list("name" = "Contaminated - Scrubs out ALL contaminants quickly","mode" = AALARM_MODE_CONTAMINATED, "selected" = mode == AALARM_MODE_CONTAMINATED, "danger" = 0)) - data["modes"] += list(list("name" = "Draught - Siphons out air while replacing", "mode" = AALARM_MODE_VENTING, "selected" = mode == AALARM_MODE_VENTING, "danger" = 0)) - data["modes"] += list(list("name" = "Refill - Triple vent output", "mode" = AALARM_MODE_REFILL, "selected" = mode == AALARM_MODE_REFILL, "danger" = 1)) - data["modes"] += list(list("name" = "Cycle - Siphons air before replacing", "mode" = AALARM_MODE_REPLACEMENT, "selected" = mode == AALARM_MODE_REPLACEMENT, "danger" = 1)) - data["modes"] += list(list("name" = "Siphon - Siphons air out of the room", "mode" = AALARM_MODE_SIPHON, "selected" = mode == AALARM_MODE_SIPHON, "danger" = 1)) - data["modes"] += list(list("name" = "Panic Siphon - Siphons air out of the room quickly","mode" = AALARM_MODE_PANIC, "selected" = mode == AALARM_MODE_PANIC, "danger" = 1)) - data["modes"] += list(list("name" = "Off - Shuts off vents and scrubbers", "mode" = AALARM_MODE_OFF, "selected" = mode == AALARM_MODE_OFF, "danger" = 0)) - if(obj_flags & EMAGGED) - data["modes"] += list(list("name" = "Flood - Shuts off scrubbers and opens vents", "mode" = AALARM_MODE_FLOOD, "selected" = mode == AALARM_MODE_FLOOD, "danger" = 1)) - - var/datum/tlv/selected - var/list/thresholds = list() - - selected = TLV["pressure"] - thresholds += list(list("name" = "Pressure", "settings" = list())) - thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "min2", "selected" = selected.min2)) - thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "min1", "selected" = selected.min1)) - thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "max1", "selected" = selected.max1)) - thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "max2", "selected" = selected.max2)) - - selected = TLV["temperature"] - thresholds += list(list("name" = "Temperature", "settings" = list())) - thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "min2", "selected" = selected.min2)) - thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "min1", "selected" = selected.min1)) - thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "max1", "selected" = selected.max1)) - thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "max2", "selected" = selected.max2)) - - for(var/gas_id in GLOB.meta_gas_info) - if(!(gas_id in TLV)) // We're not interested in this gas, it seems. - continue - selected = TLV[gas_id] - thresholds += list(list("name" = GLOB.meta_gas_info[gas_id][META_GAS_NAME], "settings" = list())) - thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "min2", "selected" = selected.min2)) - thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "min1", "selected" = selected.min1)) - thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "max1", "selected" = selected.max1)) - thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "max2", "selected" = selected.max2)) - - data["thresholds"] = thresholds - return data - -/obj/machinery/airalarm/ui_act(action, params) - if(..() || buildstage != 2) - return - if((locked && !usr.has_unlimited_silicon_privilege) || (usr.has_unlimited_silicon_privilege && aidisabled)) - return - var/device_id = params["id_tag"] - switch(action) - if("lock") - if(usr.has_unlimited_silicon_privilege && !wires.is_cut(WIRE_IDSCAN)) - locked = !locked - . = TRUE - if("power", "toggle_filter", "widenet", "scrubbing") - send_signal(device_id, list("[action]" = params["val"]), usr) - . = TRUE - if("excheck") - send_signal(device_id, list("checks" = text2num(params["val"])^1), usr) - . = TRUE - if("incheck") - send_signal(device_id, list("checks" = text2num(params["val"])^2), usr) - . = TRUE - if("set_external_pressure", "set_internal_pressure") - var/area/A = get_area(src) - var/target = input("New target pressure:", name, A.air_vent_info[device_id][(action == "set_external_pressure" ? "external" : "internal")]) as num|null - if(!isnull(target) && !..()) - send_signal(device_id, list("[action]" = target), usr) - . = TRUE - if("reset_external_pressure") - send_signal(device_id, list("reset_external_pressure"), usr) - . = TRUE - if("reset_internal_pressure") - send_signal(device_id, list("reset_internal_pressure"), usr) - . = TRUE - if("threshold") - var/env = params["env"] - if(text2path(env)) - env = text2path(env) - - var/name = params["var"] - var/datum/tlv/tlv = TLV[env] - if(isnull(tlv)) - return - var/value = input("New [name] for [env]:", name, tlv.vars[name]) as num|null - if(!isnull(value) && !..()) - if(value < 0) - tlv.vars[name] = -1 - else - tlv.vars[name] = round(value, 0.01) - investigate_log(" treshold value for [env]:[name] was set to [value] by [key_name(usr)]",INVESTIGATE_ATMOS) - . = TRUE - if("mode") - mode = text2num(params["mode"]) - investigate_log("was turned to [get_mode_name(mode)] mode by [key_name(usr)]",INVESTIGATE_ATMOS) - apply_mode() - . = TRUE - if("alarm") - var/area/A = get_area(src) - if(A.atmosalert(2, src)) - post_alert(2) - . = TRUE - if("reset") - var/area/A = get_area(src) - if(A.atmosalert(0, src)) - post_alert(0) - . = TRUE - update_icon() - -/obj/machinery/airalarm/proc/reset(wire) - switch(wire) - if(WIRE_POWER) - if(!wires.is_cut(WIRE_POWER)) - shorted = FALSE - update_icon() - if(WIRE_AI) - if(!wires.is_cut(WIRE_AI)) - aidisabled = FALSE - - -/obj/machinery/airalarm/proc/shock(mob/user, prb) - if((stat & (NOPOWER))) // unpowered, no shock - return 0 - if(!prob(prb)) - return 0 //you lucked out, no shock for you - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread - s.set_up(5, 1, src) - s.start() //sparks always. - if (electrocute_mob(user, get_area(src), src, 1, TRUE)) - return 1 - else - return 0 - -/obj/machinery/airalarm/proc/refresh_all() - var/area/A = get_area(src) - for(var/id_tag in A.air_vent_names) - var/list/I = A.air_vent_info[id_tag] - if(I && I["timestamp"] + AALARM_REPORT_TIMEOUT / 2 > world.time) - continue - send_signal(id_tag, list("status")) - for(var/id_tag in A.air_scrub_names) - var/list/I = A.air_scrub_info[id_tag] - if(I && I["timestamp"] + AALARM_REPORT_TIMEOUT / 2 > world.time) - continue - send_signal(id_tag, list("status")) - -/obj/machinery/airalarm/proc/set_frequency(new_frequency) - SSradio.remove_object(src, frequency) - frequency = new_frequency - radio_connection = SSradio.add_object(src, frequency, RADIO_TO_AIRALARM) - -/obj/machinery/airalarm/proc/send_signal(target, list/command, mob/user)//sends signal 'command' to 'target'. Returns 0 if no radio connection, 1 otherwise - if(!radio_connection) - return 0 - - var/datum/signal/signal = new(command) - signal.data["tag"] = target - signal.data["sigtype"] = "command" - signal.data["user"] = user - radio_connection.post_signal(src, signal, RADIO_FROM_AIRALARM) - - return 1 - -/obj/machinery/airalarm/proc/get_mode_name(mode_value) - switch(mode_value) - if(AALARM_MODE_SCRUBBING) - return "Filtering" - if(AALARM_MODE_CONTAMINATED) - return "Contaminated" - if(AALARM_MODE_VENTING) - return "Draught" - if(AALARM_MODE_REFILL) - return "Refill" - if(AALARM_MODE_PANIC) - return "Panic Siphon" - if(AALARM_MODE_REPLACEMENT) - return "Cycle" - if(AALARM_MODE_SIPHON) - return "Siphon" - if(AALARM_MODE_OFF) - return "Off" - if(AALARM_MODE_FLOOD) - return "Flood" - -/obj/machinery/airalarm/proc/apply_mode() - var/area/A = get_area(src) - switch(mode) - if(AALARM_MODE_SCRUBBING) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 1, - "set_filters" = list(/datum/gas/carbon_dioxide, /datum/gas/miasma), - "scrubbing" = 1, - "widenet" = 0, - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 1, - "checks" = 1, - "set_external_pressure" = ONE_ATMOSPHERE - )) - if(AALARM_MODE_CONTAMINATED) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 1, - "set_filters" = list( - /datum/gas/carbon_dioxide, - /datum/gas/miasma, - /datum/gas/plasma, - /datum/gas/water_vapor, - /datum/gas/hypernoblium, - /datum/gas/nitrous_oxide, - /datum/gas/nitryl, - /datum/gas/tritium, - /datum/gas/bz, - /datum/gas/stimulum, - /datum/gas/pluoxium - ), - "scrubbing" = 1, - "widenet" = 1, - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 1, - "checks" = 1, - "set_external_pressure" = ONE_ATMOSPHERE - )) - if(AALARM_MODE_VENTING) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 1, - "widenet" = 0, - "scrubbing" = 0 - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 1, - "checks" = 1, - "set_external_pressure" = ONE_ATMOSPHERE*2 - )) - if(AALARM_MODE_REFILL) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 1, - "set_filters" = list(/datum/gas/carbon_dioxide, /datum/gas/miasma), - "scrubbing" = 1, - "widenet" = 0, - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 1, - "checks" = 1, - "set_external_pressure" = ONE_ATMOSPHERE * 3 - )) - if(AALARM_MODE_PANIC, - AALARM_MODE_REPLACEMENT) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 1, - "widenet" = 1, - "scrubbing" = 0 - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 0 - )) - if(AALARM_MODE_SIPHON) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 1, - "widenet" = 0, - "scrubbing" = 0 - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 0 - )) - - if(AALARM_MODE_OFF) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 0 - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 0 - )) - if(AALARM_MODE_FLOOD) - for(var/device_id in A.air_scrub_names) - send_signal(device_id, list( - "power" = 0 - )) - for(var/device_id in A.air_vent_names) - send_signal(device_id, list( - "power" = 1, - "checks" = 2, - "set_internal_pressure" = 0 - )) - -/obj/machinery/airalarm/update_icon() - set_light(0) - cut_overlays() - SSvis_overlays.remove_vis_overlay(src, managed_vis_overlays) - if(stat & NOPOWER) - icon_state = "alarm0" - return - - if(stat & BROKEN) - icon_state = "alarmx" - return - - if(panel_open) - switch(buildstage) - if(2) - icon_state = "alarmx" - if(1) - icon_state = "alarm_b2" - if(0) - icon_state = "alarm_b1" - return - - icon_state = "alarm1" - var/overlay_state = AALARM_OVERLAY_OFF - var/area/A = get_area(src) - switch(max(danger_level, A.atmosalm)) - if(0) - add_overlay(AALARM_OVERLAY_GREEN) - overlay_state = AALARM_OVERLAY_GREEN - light_color = LIGHT_COLOR_PALEBLUE - set_light(brightness_on) - if(1) - add_overlay(AALARM_OVERLAY_WARN) - overlay_state = AALARM_OVERLAY_WARN - light_color = LIGHT_COLOR_LAVA - set_light(brightness_on) - if(2) - add_overlay(AALARM_OVERLAY_DANGER) - overlay_state = AALARM_OVERLAY_DANGER - light_color = LIGHT_COLOR_RED - set_light(brightness_on) - - SSvis_overlays.add_vis_overlay(src, icon, overlay_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir) - update_light() - -/obj/machinery/airalarm/process() - if((stat & (NOPOWER|BROKEN)) || shorted) - return - - var/turf/location = get_turf(src) - if(!location) - return - - var/datum/tlv/cur_tlv - - var/datum/gas_mixture/environment = location.return_air() - var/list/env_gases = environment.gases - var/partial_pressure = R_IDEAL_GAS_EQUATION * environment.temperature / environment.volume - - cur_tlv = TLV["pressure"] - var/environment_pressure = environment.return_pressure() - var/pressure_dangerlevel = cur_tlv.get_danger_level(environment_pressure) - - cur_tlv = TLV["temperature"] - var/temperature_dangerlevel = cur_tlv.get_danger_level(environment.temperature) - - var/gas_dangerlevel = 0 - for(var/gas_id in env_gases) - if(!(gas_id in TLV)) // We're not interested in this gas, it seems. - continue - cur_tlv = TLV[gas_id] - gas_dangerlevel = max(gas_dangerlevel, cur_tlv.get_danger_level(env_gases[gas_id] * partial_pressure)) - - environment.garbage_collect() - - var/old_danger_level = danger_level - danger_level = max(pressure_dangerlevel, temperature_dangerlevel, gas_dangerlevel) - - if(old_danger_level != danger_level) - apply_danger_level() - if(mode == AALARM_MODE_REPLACEMENT && environment_pressure < ONE_ATMOSPHERE * 0.05) - mode = AALARM_MODE_SCRUBBING - apply_mode() - - return - - -/obj/machinery/airalarm/proc/post_alert(alert_level) - var/datum/radio_frequency/frequency = SSradio.return_frequency(alarm_frequency) - - if(!frequency) - return - - var/datum/signal/alert_signal = new(list( - "zone" = get_area_name(src), - "type" = "Atmospheric" - )) - if(alert_level==2) - alert_signal.data["alert"] = "severe" - else if (alert_level==1) - alert_signal.data["alert"] = "minor" - else if (alert_level==0) - alert_signal.data["alert"] = "clear" - - frequency.post_signal(src, alert_signal, range = -1) - -/obj/machinery/airalarm/proc/apply_danger_level() - var/area/A = get_area(src) - - var/new_area_danger_level = 0 - for(var/obj/machinery/airalarm/AA in A) - if (!(AA.stat & (NOPOWER|BROKEN)) && !AA.shorted) - new_area_danger_level = max(new_area_danger_level,AA.danger_level) - if(A.atmosalert(new_area_danger_level,src)) //if area was in normal state or if area was in alert state - post_alert(new_area_danger_level) - - update_icon() - -/obj/machinery/airalarm/attackby(obj/item/W, mob/user, params) - switch(buildstage) - if(2) - if(istype(W, /obj/item/wirecutters) && panel_open && wires.is_all_cut()) - W.play_tool_sound(src) - to_chat(user, "You cut the final wires.") - new /obj/item/stack/cable_coil(loc, 5) - buildstage = 1 - update_icon() - return - else if(istype(W, /obj/item/screwdriver)) // Opening that Air Alarm up. - W.play_tool_sound(src) - panel_open = !panel_open - to_chat(user, "The wires have been [panel_open ? "exposed" : "unexposed"].") - update_icon() - return - else if(istype(W, /obj/item/card/id) || istype(W, /obj/item/pda))// trying to unlock the interface with an ID card - togglelock(user) - else if(panel_open && is_wire_tool(W)) - wires.interact(user) - return - if(1) - if(istype(W, /obj/item/crowbar)) - user.visible_message("[user.name] removes the electronics from [src.name].",\ - "You start prying out the circuit...") - W.play_tool_sound(src) - if (W.use_tool(src, user, 20)) - if (buildstage == 1) - to_chat(user, "You remove the air alarm electronics.") - new /obj/item/electronics/airalarm( src.loc ) - playsound(src.loc, 'sound/items/deconstruct.ogg', 50, 1) - buildstage = 0 - update_icon() - return - - if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/cable = W - if(cable.get_amount() < 5) - to_chat(user, "You need five lengths of cable to wire the air alarm!") - return - user.visible_message("[user.name] wires the air alarm.", \ - "You start wiring the air alarm...") - if (do_after(user, 20, target = src)) - if (cable.get_amount() >= 5 && buildstage == 1) - cable.use(5) - to_chat(user, "You wire the air alarm.") - wires.repair() - aidisabled = 0 - locked = FALSE - mode = 1 - shorted = 0 - post_alert(0) - buildstage = 2 - update_icon() - return - if(0) - if(istype(W, /obj/item/electronics/airalarm)) - if(user.temporarilyRemoveItemFromInventory(W)) - to_chat(user, "You insert the circuit.") - buildstage = 1 - update_icon() - qdel(W) - return - - if(istype(W, /obj/item/electroadaptive_pseudocircuit)) - var/obj/item/electroadaptive_pseudocircuit/P = W - if(!P.adapt_circuit(user, 25)) - return - user.visible_message("[user] fabricates a circuit and places it into [src].", \ - "You adapt an air alarm circuit and slot it into the assembly.") - buildstage = 1 - update_icon() - return - - if(istype(W, /obj/item/wrench)) - to_chat(user, "You detach \the [src] from the wall.") - W.play_tool_sound(src) - new /obj/item/wallframe/airalarm( user.loc ) - qdel(src) - return - - return ..() - -/obj/machinery/airalarm/AltClick(mob/user) - ..() - if(!user.canUseTopic(src, !issilicon(user)) || !isturf(loc)) - return - else - togglelock(user) - -/obj/machinery/airalarm/proc/togglelock(mob/living/user) - if(stat & (NOPOWER|BROKEN)) - to_chat(user, "It does nothing!") - else - if(src.allowed(usr) && !wires.is_cut(WIRE_IDSCAN)) - locked = !locked - updateUsrDialog() - to_chat(user, "You [ locked ? "lock" : "unlock"] the air alarm interface.") - else - to_chat(user, "Access denied.") - return - -/obj/machinery/airalarm/power_change() - ..() - if(stat & NOPOWER) - set_light(0) - update_icon() - -/obj/machinery/airalarm/emag_act(mob/user) - if(obj_flags & EMAGGED) - return - obj_flags |= EMAGGED - visible_message("Sparks fly out of [src]!", "You emag [src], disabling its safeties.") - playsound(src, "sparks", 50, 1) - -/obj/machinery/airalarm/obj_break(damage_flag) - ..() - update_icon() - set_light(0) - -/obj/machinery/airalarm/deconstruct(disassembled = TRUE) - if(!(flags_1 & NODECONSTRUCT_1)) - new /obj/item/stack/sheet/metal(loc, 2) - var/obj/item/I = new /obj/item/electronics/airalarm(loc) - if(!disassembled) - I.obj_integrity = I.max_integrity * 0.5 - new /obj/item/stack/cable_coil(loc, 3) - qdel(src) - -#undef AALARM_MODE_SCRUBBING -#undef AALARM_MODE_VENTING -#undef AALARM_MODE_PANIC -#undef AALARM_MODE_REPLACEMENT -#undef AALARM_MODE_OFF -#undef AALARM_MODE_FLOOD -#undef AALARM_MODE_SIPHON -#undef AALARM_MODE_CONTAMINATED -#undef AALARM_MODE_REFILL -#undef AALARM_REPORT_TIMEOUT +/datum/tlv + var/min2 + var/min1 + var/max1 + var/max2 + +/datum/tlv/New(min2 as num, min1 as num, max1 as num, max2 as num) + if(min2) src.min2 = min2 + if(min1) src.min1 = min1 + if(max1) src.max1 = max1 + if(max2) src.max2 = max2 + +/datum/tlv/proc/get_danger_level(val as num) + if(max2 != -1 && val >= max2) + return 2 + if(min2 != -1 && val <= min2) + return 2 + if(max1 != -1 && val >= max1) + return 1 + if(min1 != -1 && val <= min1) + return 1 + return 0 + +/datum/tlv/no_checks + min2 = -1 + min1 = -1 + max1 = -1 + max2 = -1 + +/datum/tlv/dangerous + min2 = -1 + min1 = -1 + max1 = 0.2 + max2 = 0.5 + +/obj/item/electronics/airalarm + name = "air alarm electronics" + icon_state = "airalarm_electronics" + +/obj/item/wallframe/airalarm + name = "air alarm frame" + desc = "Used for building Air Alarms." + icon = 'icons/obj/monitors.dmi' + icon_state = "alarm_bitem" + result_path = /obj/machinery/airalarm + +#define AALARM_MODE_SCRUBBING 1 +#define AALARM_MODE_VENTING 2 //makes draught +#define AALARM_MODE_PANIC 3 //like siphon, but stronger (enables widenet) +#define AALARM_MODE_REPLACEMENT 4 //sucks off all air, then refill and swithes to scrubbing +#define AALARM_MODE_OFF 5 +#define AALARM_MODE_FLOOD 6 //Emagged mode; turns off scrubbers and pressure checks on vents +#define AALARM_MODE_SIPHON 7 //Scrubbers suck air +#define AALARM_MODE_CONTAMINATED 8 //Turns on all filtering and widenet scrubbing. +#define AALARM_MODE_REFILL 9 //just like normal, but with triple the air output + +#define AALARM_REPORT_TIMEOUT 100 + +#define AALARM_OVERLAY_OFF "alarm_off" +#define AALARM_OVERLAY_GREEN "alarm_green" +#define AALARM_OVERLAY_WARN "alarm_amber" +#define AALARM_OVERLAY_DANGER "alarm_red" + +/obj/machinery/airalarm + name = "air alarm" + desc = "A machine that monitors atmosphere levels. Goes off if the area is dangerous." + icon = 'icons/obj/monitors.dmi' + icon_state = "alarm0" + use_power = IDLE_POWER_USE + idle_power_usage = 4 + active_power_usage = 8 + power_channel = ENVIRON + req_access = list(ACCESS_ATMOSPHERICS) + max_integrity = 250 + integrity_failure = 80 + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 30) + resistance_flags = FIRE_PROOF + + var/danger_level = 0 + var/mode = AALARM_MODE_SCRUBBING + + var/locked = TRUE + var/aidisabled = 0 + var/shorted = 0 + var/buildstage = 2 // 2 = complete, 1 = no wires, 0 = circuit gone + var/brightness_on = 1 + + var/frequency = FREQ_ATMOS_CONTROL + var/alarm_frequency = FREQ_ATMOS_ALARMS + var/datum/radio_frequency/radio_connection + + var/list/TLV = list( // Breathable air. + "pressure" = new/datum/tlv(ONE_ATMOSPHERE * 0.8, ONE_ATMOSPHERE* 0.9, ONE_ATMOSPHERE * 1.1, ONE_ATMOSPHERE * 1.2), // kPa + "temperature" = new/datum/tlv(T0C, T0C+10, T0C+40, T0C+66), + /datum/gas/oxygen = new/datum/tlv(16, 19, 135, 140), // Partial pressure, kpa + /datum/gas/nitrogen = new/datum/tlv(-1, -1, 1000, 1000), + /datum/gas/carbon_dioxide = new/datum/tlv(-1, -1, 5, 10), + /datum/gas/miasma = new/datum/tlv/(-1, -1, 2, 5), + /datum/gas/plasma = new/datum/tlv/dangerous, + /datum/gas/nitrous_oxide = new/datum/tlv/dangerous, + /datum/gas/bz = new/datum/tlv/dangerous, + /datum/gas/hypernoblium = new/datum/tlv(-1, -1, 1000, 1000), // Hyper-Noblium is inert and nontoxic + /datum/gas/water_vapor = new/datum/tlv/dangerous, + /datum/gas/tritium = new/datum/tlv/dangerous, + /datum/gas/stimulum = new/datum/tlv(-1, -1, 1000, 1000), // Stimulum has only positive effects + /datum/gas/nitryl = new/datum/tlv/dangerous, + /datum/gas/pluoxium = new/datum/tlv(-1, -1, 1000, 1000) // Unlike oxygen, pluoxium does not fuel plasma/tritium fires + ) + +/obj/machinery/airalarm/server // No checks here. + TLV = list( + "pressure" = new/datum/tlv/no_checks, + "temperature" = new/datum/tlv/no_checks, + /datum/gas/oxygen = new/datum/tlv/no_checks, + /datum/gas/nitrogen = new/datum/tlv/no_checks, + /datum/gas/carbon_dioxide = new/datum/tlv/no_checks, + /datum/gas/miasma = new/datum/tlv/no_checks, + /datum/gas/plasma = new/datum/tlv/no_checks, + /datum/gas/nitrous_oxide = new/datum/tlv/no_checks, + /datum/gas/bz = new/datum/tlv/no_checks, + /datum/gas/hypernoblium = new/datum/tlv/no_checks, + /datum/gas/water_vapor = new/datum/tlv/no_checks, + /datum/gas/tritium = new/datum/tlv/no_checks, + /datum/gas/stimulum = new/datum/tlv/no_checks, + /datum/gas/nitryl = new/datum/tlv/no_checks, + /datum/gas/pluoxium = new/datum/tlv/no_checks + ) + +/obj/machinery/airalarm/kitchen_cold_room // Copypasta: to check temperatures. + TLV = list( + "pressure" = new/datum/tlv(ONE_ATMOSPHERE * 0.8, ONE_ATMOSPHERE* 0.9, ONE_ATMOSPHERE * 1.1, ONE_ATMOSPHERE * 1.2), // kPa + "temperature" = new/datum/tlv(T0C-73.15, T0C-63.15, T0C, T0C+10), + /datum/gas/oxygen = new/datum/tlv(16, 19, 135, 140), // Partial pressure, kpa + /datum/gas/nitrogen = new/datum/tlv(-1, -1, 1000, 1000), + /datum/gas/carbon_dioxide = new/datum/tlv(-1, -1, 5, 10), + /datum/gas/miasma = new/datum/tlv/(-1, -1, 2, 5), + /datum/gas/plasma = new/datum/tlv/dangerous, + /datum/gas/nitrous_oxide = new/datum/tlv/dangerous, + /datum/gas/bz = new/datum/tlv/dangerous, + /datum/gas/hypernoblium = new/datum/tlv(-1, -1, 1000, 1000), // Hyper-Noblium is inert and nontoxic + /datum/gas/water_vapor = new/datum/tlv/dangerous, + /datum/gas/tritium = new/datum/tlv/dangerous, + /datum/gas/stimulum = new/datum/tlv(-1, -1, 1000, 1000), // Stimulum has only positive effects + /datum/gas/nitryl = new/datum/tlv/dangerous, + /datum/gas/pluoxium = new/datum/tlv(-1, -1, 1000, 1000) // Unlike oxygen, pluoxium does not fuel plasma/tritium fires + ) + +/obj/machinery/airalarm/unlocked + locked = FALSE + +/obj/machinery/airalarm/engine + name = "engine air alarm" + locked = FALSE + req_access = null + req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_ENGINE) + +/obj/machinery/airalarm/mixingchamber + name = "chamber air alarm" + locked = FALSE + req_access = null + req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_TOX, ACCESS_TOX_STORAGE) + +/obj/machinery/airalarm/all_access + name = "all-access air alarm" + desc = "This particular atmos control unit appears to have no access restrictions." + locked = FALSE + req_access = null + req_one_access = null + +/obj/machinery/airalarm/syndicate //general syndicate access + req_access = list(ACCESS_SYNDICATE) + +/obj/machinery/airalarm/directional/north //Pixel offsets get overwritten on New() + dir = SOUTH + pixel_y = 24 + +/obj/machinery/airalarm/directional/south + dir = NORTH + pixel_y = -24 + +/obj/machinery/airalarm/directional/east + dir = WEST + pixel_x = 24 + +/obj/machinery/airalarm/directional/west + dir = EAST + pixel_x = -24 + +//all air alarms in area are connected via magic +/area + var/list/air_vent_names = list() + var/list/air_scrub_names = list() + var/list/air_vent_info = list() + var/list/air_scrub_info = list() + +/obj/machinery/airalarm/Initialize(mapload, ndir, nbuild) + . = ..() + wires = new /datum/wires/airalarm(src) + + if(ndir) + setDir(ndir) + + if(nbuild) + buildstage = 0 + panel_open = TRUE + pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24) + pixel_y = (dir & 3)? (dir == 1 ? -24 : 24) : 0 + + if(name == initial(name)) + name = "[get_area_name(src)] Air Alarm" + + power_change() + set_frequency(frequency) + +/obj/machinery/airalarm/Destroy() + SSradio.remove_object(src, frequency) + qdel(wires) + wires = null + return ..() + +/obj/machinery/airalarm/examine(mob/user) + . = ..() + switch(buildstage) + if(0) + to_chat(user, "It is missing air alarm electronics.") + if(1) + to_chat(user, "It is missing wiring.") + if(2) + to_chat(user, "Alt-click to [locked ? "unlock" : "lock"] the interface.") + +/obj/machinery/airalarm/ui_status(mob/user) + if(user.has_unlimited_silicon_privilege && aidisabled) + to_chat(user, "AI control has been disabled.") + else if(!shorted) + return ..() + return UI_CLOSE + +/obj/machinery/airalarm/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ + datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + if(!ui) + ui = new(user, src, ui_key, "airalarm", name, 440, 650, master_ui, state) + ui.open() + +/obj/machinery/airalarm/ui_data(mob/user) + var/data = list( + "locked" = locked, + "siliconUser" = user.has_unlimited_silicon_privilege, + "emagged" = (obj_flags & EMAGGED ? 1 : 0), + "danger_level" = danger_level, + ) + + var/area/A = get_area(src) + data["atmos_alarm"] = A.atmosalm + data["fire_alarm"] = A.fire + + var/turf/T = get_turf(src) + var/datum/gas_mixture/environment = T.return_air() + var/datum/tlv/cur_tlv + + data["environment_data"] = list() + var/pressure = environment.return_pressure() + cur_tlv = TLV["pressure"] + data["environment_data"] += list(list( + "name" = "Pressure", + "value" = pressure, + "unit" = "kPa", + "danger_level" = cur_tlv.get_danger_level(pressure) + )) + var/temperature = environment.temperature + cur_tlv = TLV["temperature"] + data["environment_data"] += list(list( + "name" = "Temperature", + "value" = temperature, + "unit" = "K ([round(temperature - T0C, 0.1)]C)", + "danger_level" = cur_tlv.get_danger_level(temperature) + )) + var/total_moles = environment.total_moles() + var/partial_pressure = R_IDEAL_GAS_EQUATION * environment.temperature / environment.volume + for(var/gas_id in environment.gases) + if(!(gas_id in TLV)) // We're not interested in this gas, it seems. + continue + cur_tlv = TLV[gas_id] + data["environment_data"] += list(list( + "name" = GLOB.meta_gas_info[gas_id][META_GAS_NAME], + "value" = environment.gases[gas_id] / total_moles * 100, + "unit" = "%", + "danger_level" = cur_tlv.get_danger_level(environment.gases[gas_id] * partial_pressure) + )) + + if(!locked || user.has_unlimited_silicon_privilege) + data["vents"] = list() + for(var/id_tag in A.air_vent_names) + var/long_name = A.air_vent_names[id_tag] + var/list/info = A.air_vent_info[id_tag] + if(!info || info["frequency"] != frequency) + continue + data["vents"] += list(list( + "id_tag" = id_tag, + "long_name" = sanitize(long_name), + "power" = info["power"], + "checks" = info["checks"], + "excheck" = info["checks"]&1, + "incheck" = info["checks"]&2, + "direction" = info["direction"], + "external" = info["external"], + "internal" = info["internal"], + "extdefault"= (info["external"] == ONE_ATMOSPHERE), + "intdefault"= (info["internal"] == 0) + )) + data["scrubbers"] = list() + for(var/id_tag in A.air_scrub_names) + var/long_name = A.air_scrub_names[id_tag] + var/list/info = A.air_scrub_info[id_tag] + if(!info || info["frequency"] != frequency) + continue + data["scrubbers"] += list(list( + "id_tag" = id_tag, + "long_name" = sanitize(long_name), + "power" = info["power"], + "scrubbing" = info["scrubbing"], + "widenet" = info["widenet"], + "filter_types" = info["filter_types"] + )) + data["mode"] = mode + data["modes"] = list() + data["modes"] += list(list("name" = "Filtering - Scrubs out contaminants", "mode" = AALARM_MODE_SCRUBBING, "selected" = mode == AALARM_MODE_SCRUBBING, "danger" = 0)) + data["modes"] += list(list("name" = "Contaminated - Scrubs out ALL contaminants quickly","mode" = AALARM_MODE_CONTAMINATED, "selected" = mode == AALARM_MODE_CONTAMINATED, "danger" = 0)) + data["modes"] += list(list("name" = "Draught - Siphons out air while replacing", "mode" = AALARM_MODE_VENTING, "selected" = mode == AALARM_MODE_VENTING, "danger" = 0)) + data["modes"] += list(list("name" = "Refill - Triple vent output", "mode" = AALARM_MODE_REFILL, "selected" = mode == AALARM_MODE_REFILL, "danger" = 1)) + data["modes"] += list(list("name" = "Cycle - Siphons air before replacing", "mode" = AALARM_MODE_REPLACEMENT, "selected" = mode == AALARM_MODE_REPLACEMENT, "danger" = 1)) + data["modes"] += list(list("name" = "Siphon - Siphons air out of the room", "mode" = AALARM_MODE_SIPHON, "selected" = mode == AALARM_MODE_SIPHON, "danger" = 1)) + data["modes"] += list(list("name" = "Panic Siphon - Siphons air out of the room quickly","mode" = AALARM_MODE_PANIC, "selected" = mode == AALARM_MODE_PANIC, "danger" = 1)) + data["modes"] += list(list("name" = "Off - Shuts off vents and scrubbers", "mode" = AALARM_MODE_OFF, "selected" = mode == AALARM_MODE_OFF, "danger" = 0)) + if(obj_flags & EMAGGED) + data["modes"] += list(list("name" = "Flood - Shuts off scrubbers and opens vents", "mode" = AALARM_MODE_FLOOD, "selected" = mode == AALARM_MODE_FLOOD, "danger" = 1)) + + var/datum/tlv/selected + var/list/thresholds = list() + + selected = TLV["pressure"] + thresholds += list(list("name" = "Pressure", "settings" = list())) + thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "min2", "selected" = selected.min2)) + thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "min1", "selected" = selected.min1)) + thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "max1", "selected" = selected.max1)) + thresholds[thresholds.len]["settings"] += list(list("env" = "pressure", "val" = "max2", "selected" = selected.max2)) + + selected = TLV["temperature"] + thresholds += list(list("name" = "Temperature", "settings" = list())) + thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "min2", "selected" = selected.min2)) + thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "min1", "selected" = selected.min1)) + thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "max1", "selected" = selected.max1)) + thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "max2", "selected" = selected.max2)) + + for(var/gas_id in GLOB.meta_gas_info) + if(!(gas_id in TLV)) // We're not interested in this gas, it seems. + continue + selected = TLV[gas_id] + thresholds += list(list("name" = GLOB.meta_gas_info[gas_id][META_GAS_NAME], "settings" = list())) + thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "min2", "selected" = selected.min2)) + thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "min1", "selected" = selected.min1)) + thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "max1", "selected" = selected.max1)) + thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "max2", "selected" = selected.max2)) + + data["thresholds"] = thresholds + return data + +/obj/machinery/airalarm/ui_act(action, params) + if(..() || buildstage != 2) + return + if((locked && !usr.has_unlimited_silicon_privilege) || (usr.has_unlimited_silicon_privilege && aidisabled)) + return + var/device_id = params["id_tag"] + switch(action) + if("lock") + if(usr.has_unlimited_silicon_privilege && !wires.is_cut(WIRE_IDSCAN)) + locked = !locked + . = TRUE + if("power", "toggle_filter", "widenet", "scrubbing") + send_signal(device_id, list("[action]" = params["val"]), usr) + . = TRUE + if("excheck") + send_signal(device_id, list("checks" = text2num(params["val"])^1), usr) + . = TRUE + if("incheck") + send_signal(device_id, list("checks" = text2num(params["val"])^2), usr) + . = TRUE + if("set_external_pressure", "set_internal_pressure") + var/area/A = get_area(src) + var/target = input("New target pressure:", name, A.air_vent_info[device_id][(action == "set_external_pressure" ? "external" : "internal")]) as num|null + if(!isnull(target) && !..()) + send_signal(device_id, list("[action]" = target), usr) + . = TRUE + if("reset_external_pressure") + send_signal(device_id, list("reset_external_pressure"), usr) + . = TRUE + if("reset_internal_pressure") + send_signal(device_id, list("reset_internal_pressure"), usr) + . = TRUE + if("threshold") + var/env = params["env"] + if(text2path(env)) + env = text2path(env) + + var/name = params["var"] + var/datum/tlv/tlv = TLV[env] + if(isnull(tlv)) + return + var/value = input("New [name] for [env]:", name, tlv.vars[name]) as num|null + if(!isnull(value) && !..()) + if(value < 0) + tlv.vars[name] = -1 + else + tlv.vars[name] = round(value, 0.01) + investigate_log(" treshold value for [env]:[name] was set to [value] by [key_name(usr)]",INVESTIGATE_ATMOS) + . = TRUE + if("mode") + mode = text2num(params["mode"]) + investigate_log("was turned to [get_mode_name(mode)] mode by [key_name(usr)]",INVESTIGATE_ATMOS) + apply_mode() + . = TRUE + if("alarm") + var/area/A = get_area(src) + if(A.atmosalert(2, src)) + post_alert(2) + . = TRUE + if("reset") + var/area/A = get_area(src) + if(A.atmosalert(0, src)) + post_alert(0) + . = TRUE + update_icon() + +/obj/machinery/airalarm/proc/reset(wire) + switch(wire) + if(WIRE_POWER) + if(!wires.is_cut(WIRE_POWER)) + shorted = FALSE + update_icon() + if(WIRE_AI) + if(!wires.is_cut(WIRE_AI)) + aidisabled = FALSE + + +/obj/machinery/airalarm/proc/shock(mob/user, prb) + if((stat & (NOPOWER))) // unpowered, no shock + return 0 + if(!prob(prb)) + return 0 //you lucked out, no shock for you + var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread + s.set_up(5, 1, src) + s.start() //sparks always. + if (electrocute_mob(user, get_area(src), src, 1, TRUE)) + return 1 + else + return 0 + +/obj/machinery/airalarm/proc/refresh_all() + var/area/A = get_area(src) + for(var/id_tag in A.air_vent_names) + var/list/I = A.air_vent_info[id_tag] + if(I && I["timestamp"] + AALARM_REPORT_TIMEOUT / 2 > world.time) + continue + send_signal(id_tag, list("status")) + for(var/id_tag in A.air_scrub_names) + var/list/I = A.air_scrub_info[id_tag] + if(I && I["timestamp"] + AALARM_REPORT_TIMEOUT / 2 > world.time) + continue + send_signal(id_tag, list("status")) + +/obj/machinery/airalarm/proc/set_frequency(new_frequency) + SSradio.remove_object(src, frequency) + frequency = new_frequency + radio_connection = SSradio.add_object(src, frequency, RADIO_TO_AIRALARM) + +/obj/machinery/airalarm/proc/send_signal(target, list/command, mob/user)//sends signal 'command' to 'target'. Returns 0 if no radio connection, 1 otherwise + if(!radio_connection) + return 0 + + var/datum/signal/signal = new(command) + signal.data["tag"] = target + signal.data["sigtype"] = "command" + signal.data["user"] = user + radio_connection.post_signal(src, signal, RADIO_FROM_AIRALARM) + + return 1 + +/obj/machinery/airalarm/proc/get_mode_name(mode_value) + switch(mode_value) + if(AALARM_MODE_SCRUBBING) + return "Filtering" + if(AALARM_MODE_CONTAMINATED) + return "Contaminated" + if(AALARM_MODE_VENTING) + return "Draught" + if(AALARM_MODE_REFILL) + return "Refill" + if(AALARM_MODE_PANIC) + return "Panic Siphon" + if(AALARM_MODE_REPLACEMENT) + return "Cycle" + if(AALARM_MODE_SIPHON) + return "Siphon" + if(AALARM_MODE_OFF) + return "Off" + if(AALARM_MODE_FLOOD) + return "Flood" + +/obj/machinery/airalarm/proc/apply_mode() + var/area/A = get_area(src) + switch(mode) + if(AALARM_MODE_SCRUBBING) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 1, + "set_filters" = list(/datum/gas/carbon_dioxide, /datum/gas/miasma), + "scrubbing" = 1, + "widenet" = 0, + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 1, + "checks" = 1, + "set_external_pressure" = ONE_ATMOSPHERE + )) + if(AALARM_MODE_CONTAMINATED) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 1, + "set_filters" = list( + /datum/gas/carbon_dioxide, + /datum/gas/miasma, + /datum/gas/plasma, + /datum/gas/water_vapor, + /datum/gas/hypernoblium, + /datum/gas/nitrous_oxide, + /datum/gas/nitryl, + /datum/gas/tritium, + /datum/gas/bz, + /datum/gas/stimulum, + /datum/gas/pluoxium + ), + "scrubbing" = 1, + "widenet" = 1, + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 1, + "checks" = 1, + "set_external_pressure" = ONE_ATMOSPHERE + )) + if(AALARM_MODE_VENTING) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 1, + "widenet" = 0, + "scrubbing" = 0 + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 1, + "checks" = 1, + "set_external_pressure" = ONE_ATMOSPHERE*2 + )) + if(AALARM_MODE_REFILL) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 1, + "set_filters" = list(/datum/gas/carbon_dioxide, /datum/gas/miasma), + "scrubbing" = 1, + "widenet" = 0, + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 1, + "checks" = 1, + "set_external_pressure" = ONE_ATMOSPHERE * 3 + )) + if(AALARM_MODE_PANIC, + AALARM_MODE_REPLACEMENT) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 1, + "widenet" = 1, + "scrubbing" = 0 + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 0 + )) + if(AALARM_MODE_SIPHON) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 1, + "widenet" = 0, + "scrubbing" = 0 + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 0 + )) + + if(AALARM_MODE_OFF) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 0 + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 0 + )) + if(AALARM_MODE_FLOOD) + for(var/device_id in A.air_scrub_names) + send_signal(device_id, list( + "power" = 0 + )) + for(var/device_id in A.air_vent_names) + send_signal(device_id, list( + "power" = 1, + "checks" = 2, + "set_internal_pressure" = 0 + )) + +/obj/machinery/airalarm/update_icon() + set_light(0) + cut_overlays() + SSvis_overlays.remove_vis_overlay(src, managed_vis_overlays) + if(stat & NOPOWER) + icon_state = "alarm0" + return + + if(stat & BROKEN) + icon_state = "alarmx" + return + + if(panel_open) + switch(buildstage) + if(2) + icon_state = "alarmx" + if(1) + icon_state = "alarm_b2" + if(0) + icon_state = "alarm_b1" + return + + icon_state = "alarm1" + var/overlay_state = AALARM_OVERLAY_OFF + var/area/A = get_area(src) + switch(max(danger_level, A.atmosalm)) + if(0) + add_overlay(AALARM_OVERLAY_GREEN) + overlay_state = AALARM_OVERLAY_GREEN + light_color = LIGHT_COLOR_PALEBLUE + set_light(brightness_on) + if(1) + add_overlay(AALARM_OVERLAY_WARN) + overlay_state = AALARM_OVERLAY_WARN + light_color = LIGHT_COLOR_LAVA + set_light(brightness_on) + if(2) + add_overlay(AALARM_OVERLAY_DANGER) + overlay_state = AALARM_OVERLAY_DANGER + light_color = LIGHT_COLOR_RED + set_light(brightness_on) + + SSvis_overlays.add_vis_overlay(src, icon, overlay_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir) + update_light() + +/obj/machinery/airalarm/process() + if((stat & (NOPOWER|BROKEN)) || shorted) + return + + var/turf/location = get_turf(src) + if(!location) + return + + var/datum/tlv/cur_tlv + + var/datum/gas_mixture/environment = location.return_air() + var/list/env_gases = environment.gases + var/partial_pressure = R_IDEAL_GAS_EQUATION * environment.temperature / environment.volume + + cur_tlv = TLV["pressure"] + var/environment_pressure = environment.return_pressure() + var/pressure_dangerlevel = cur_tlv.get_danger_level(environment_pressure) + + cur_tlv = TLV["temperature"] + var/temperature_dangerlevel = cur_tlv.get_danger_level(environment.temperature) + + var/gas_dangerlevel = 0 + for(var/gas_id in env_gases) + if(!(gas_id in TLV)) // We're not interested in this gas, it seems. + continue + cur_tlv = TLV[gas_id] + gas_dangerlevel = max(gas_dangerlevel, cur_tlv.get_danger_level(env_gases[gas_id] * partial_pressure)) + + GAS_GARBAGE_COLLECT(environment.gases) + + var/old_danger_level = danger_level + danger_level = max(pressure_dangerlevel, temperature_dangerlevel, gas_dangerlevel) + + if(old_danger_level != danger_level) + apply_danger_level() + if(mode == AALARM_MODE_REPLACEMENT && environment_pressure < ONE_ATMOSPHERE * 0.05) + mode = AALARM_MODE_SCRUBBING + apply_mode() + + return + + +/obj/machinery/airalarm/proc/post_alert(alert_level) + var/datum/radio_frequency/frequency = SSradio.return_frequency(alarm_frequency) + + if(!frequency) + return + + var/datum/signal/alert_signal = new(list( + "zone" = get_area_name(src), + "type" = "Atmospheric" + )) + if(alert_level==2) + alert_signal.data["alert"] = "severe" + else if (alert_level==1) + alert_signal.data["alert"] = "minor" + else if (alert_level==0) + alert_signal.data["alert"] = "clear" + + frequency.post_signal(src, alert_signal, range = -1) + +/obj/machinery/airalarm/proc/apply_danger_level() + var/area/A = get_area(src) + + var/new_area_danger_level = 0 + for(var/obj/machinery/airalarm/AA in A) + if (!(AA.stat & (NOPOWER|BROKEN)) && !AA.shorted) + new_area_danger_level = max(new_area_danger_level,AA.danger_level) + if(A.atmosalert(new_area_danger_level,src)) //if area was in normal state or if area was in alert state + post_alert(new_area_danger_level) + + update_icon() + +/obj/machinery/airalarm/attackby(obj/item/W, mob/user, params) + switch(buildstage) + if(2) + if(istype(W, /obj/item/wirecutters) && panel_open && wires.is_all_cut()) + W.play_tool_sound(src) + to_chat(user, "You cut the final wires.") + new /obj/item/stack/cable_coil(loc, 5) + buildstage = 1 + update_icon() + return + else if(istype(W, /obj/item/screwdriver)) // Opening that Air Alarm up. + W.play_tool_sound(src) + panel_open = !panel_open + to_chat(user, "The wires have been [panel_open ? "exposed" : "unexposed"].") + update_icon() + return + else if(istype(W, /obj/item/card/id) || istype(W, /obj/item/pda))// trying to unlock the interface with an ID card + togglelock(user) + else if(panel_open && is_wire_tool(W)) + wires.interact(user) + return + if(1) + if(istype(W, /obj/item/crowbar)) + user.visible_message("[user.name] removes the electronics from [src.name].",\ + "You start prying out the circuit...") + W.play_tool_sound(src) + if (W.use_tool(src, user, 20)) + if (buildstage == 1) + to_chat(user, "You remove the air alarm electronics.") + new /obj/item/electronics/airalarm( src.loc ) + playsound(src.loc, 'sound/items/deconstruct.ogg', 50, 1) + buildstage = 0 + update_icon() + return + + if(istype(W, /obj/item/stack/cable_coil)) + var/obj/item/stack/cable_coil/cable = W + if(cable.get_amount() < 5) + to_chat(user, "You need five lengths of cable to wire the air alarm!") + return + user.visible_message("[user.name] wires the air alarm.", \ + "You start wiring the air alarm...") + if (do_after(user, 20, target = src)) + if (cable.get_amount() >= 5 && buildstage == 1) + cable.use(5) + to_chat(user, "You wire the air alarm.") + wires.repair() + aidisabled = 0 + locked = FALSE + mode = 1 + shorted = 0 + post_alert(0) + buildstage = 2 + update_icon() + return + if(0) + if(istype(W, /obj/item/electronics/airalarm)) + if(user.temporarilyRemoveItemFromInventory(W)) + to_chat(user, "You insert the circuit.") + buildstage = 1 + update_icon() + qdel(W) + return + + if(istype(W, /obj/item/electroadaptive_pseudocircuit)) + var/obj/item/electroadaptive_pseudocircuit/P = W + if(!P.adapt_circuit(user, 25)) + return + user.visible_message("[user] fabricates a circuit and places it into [src].", \ + "You adapt an air alarm circuit and slot it into the assembly.") + buildstage = 1 + update_icon() + return + + if(istype(W, /obj/item/wrench)) + to_chat(user, "You detach \the [src] from the wall.") + W.play_tool_sound(src) + new /obj/item/wallframe/airalarm( user.loc ) + qdel(src) + return + + return ..() + +/obj/machinery/airalarm/AltClick(mob/user) + ..() + if(!user.canUseTopic(src, !issilicon(user)) || !isturf(loc)) + return + else + togglelock(user) + +/obj/machinery/airalarm/proc/togglelock(mob/living/user) + if(stat & (NOPOWER|BROKEN)) + to_chat(user, "It does nothing!") + else + if(src.allowed(usr) && !wires.is_cut(WIRE_IDSCAN)) + locked = !locked + updateUsrDialog() + to_chat(user, "You [ locked ? "lock" : "unlock"] the air alarm interface.") + else + to_chat(user, "Access denied.") + return + +/obj/machinery/airalarm/power_change() + ..() + if(stat & NOPOWER) + set_light(0) + update_icon() + +/obj/machinery/airalarm/emag_act(mob/user) + if(obj_flags & EMAGGED) + return + obj_flags |= EMAGGED + visible_message("Sparks fly out of [src]!", "You emag [src], disabling its safeties.") + playsound(src, "sparks", 50, 1) + +/obj/machinery/airalarm/obj_break(damage_flag) + ..() + update_icon() + set_light(0) + +/obj/machinery/airalarm/deconstruct(disassembled = TRUE) + if(!(flags_1 & NODECONSTRUCT_1)) + new /obj/item/stack/sheet/metal(loc, 2) + var/obj/item/I = new /obj/item/electronics/airalarm(loc) + if(!disassembled) + I.obj_integrity = I.max_integrity * 0.5 + new /obj/item/stack/cable_coil(loc, 3) + qdel(src) + +#undef AALARM_MODE_SCRUBBING +#undef AALARM_MODE_VENTING +#undef AALARM_MODE_PANIC +#undef AALARM_MODE_REPLACEMENT +#undef AALARM_MODE_OFF +#undef AALARM_MODE_FLOOD +#undef AALARM_MODE_SIPHON +#undef AALARM_MODE_CONTAMINATED +#undef AALARM_MODE_REFILL +#undef AALARM_REPORT_TIMEOUT diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index b834d65084..f045c2a10d 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -1,237 +1,237 @@ -/obj/machinery/atmospherics/components/trinary/filter - name = "gas filter" - icon_state = "filter_off" - desc = "Very useful for filtering gasses." - density = FALSE - can_unwrench = TRUE - var/target_pressure = ONE_ATMOSPHERE - var/filter_type = null - var/frequency = 0 - var/datum/radio_frequency/radio_connection - - construction_type = /obj/item/pipe/trinary/flippable - pipe_state = "filter" - -/obj/machinery/atmospherics/components/trinary/filter/layer1 - piping_layer = PIPING_LAYER_MIN - pixel_x = -PIPING_LAYER_P_X - pixel_y = -PIPING_LAYER_P_Y - -/obj/machinery/atmospherics/components/trinary/filter/layer3 - piping_layer = PIPING_LAYER_MAX - pixel_x = PIPING_LAYER_P_X - pixel_y = PIPING_LAYER_P_Y - -/obj/machinery/atmospherics/components/trinary/filter/flipped - icon_state = "filter_off_f" - flipped = TRUE - -/obj/machinery/atmospherics/components/trinary/filter/flipped/layer1 - piping_layer = PIPING_LAYER_MIN - pixel_x = -PIPING_LAYER_P_X - pixel_y = -PIPING_LAYER_P_Y - -/obj/machinery/atmospherics/components/trinary/filter/flipped/layer3 - piping_layer = PIPING_LAYER_MAX - pixel_x = PIPING_LAYER_P_X - pixel_y = PIPING_LAYER_P_Y - -// These two filter types have critical_machine flagged to on and thus causes the area they are in to be exempt from the Grid Check event. - -/obj/machinery/atmospherics/components/trinary/filter/critical - critical_machine = TRUE - -/obj/machinery/atmospherics/components/trinary/filter/flipped/critical - critical_machine = TRUE - -/obj/machinery/atmospherics/components/trinary/filter/proc/set_frequency(new_frequency) - SSradio.remove_object(src, frequency) - frequency = new_frequency - if(frequency) - radio_connection = SSradio.add_object(src, frequency, RADIO_ATMOSIA) - -/obj/machinery/atmospherics/components/trinary/filter/Destroy() - SSradio.remove_object(src,frequency) - return ..() - -/obj/machinery/atmospherics/components/trinary/filter/atmos //Used for atmos waste loops - on = TRUE - icon_state = "filter_on" - -/obj/machinery/atmospherics/components/trinary/filter/atmos/n2 - name = "nitrogen filter" - filter_type = "n2" -/obj/machinery/atmospherics/components/trinary/filter/atmos/o2 - name = "oxygen filter" - filter_type = "o2" -/obj/machinery/atmospherics/components/trinary/filter/atmos/co2 - name = "carbon dioxide filter" - filter_type = "co2" -/obj/machinery/atmospherics/components/trinary/filter/atmos/n2o - name = "nitrous oxide filter" - filter_type = "n2o" -/obj/machinery/atmospherics/components/trinary/filter/atmos/plasma - name = "plasma filter" - filter_type = "plasma" - -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped //This feels wrong, I know - icon_state = "filter_on_f" - flipped = TRUE - -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2 - name = "nitrogen filter" - filter_type = "n2" -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/o2 - name = "oxygen filter" - filter_type = "o2" -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/co2 - name = "carbon dioxide filter" - filter_type = "co2" -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2o - name = "nitrous oxide filter" - filter_type = "n2o" -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/plasma - name = "plasma filter" - filter_type = "plasma" - -/obj/machinery/atmospherics/components/trinary/filter/update_icon() - cut_overlays() - for(var/direction in GLOB.cardinals) - if(direction & initialize_directions) - var/obj/machinery/atmospherics/node = findConnecting(direction) - if(node) - add_overlay(getpipeimage('icons/obj/atmospherics/components/trinary_devices.dmi', "cap", direction, node.pipe_color)) - continue - add_overlay(getpipeimage('icons/obj/atmospherics/components/trinary_devices.dmi', "cap", direction)) - ..() - -/obj/machinery/atmospherics/components/trinary/filter/update_icon_nopipes() - if(on && nodes[1] && nodes[2] && nodes[3] && is_operational()) - icon_state = "filter_on[flipped?"_f":""]" - return - icon_state = "filter_off[flipped?"_f":""]" - -/obj/machinery/atmospherics/components/trinary/filter/power_change() - var/old_stat = stat - ..() - if(stat != old_stat) - update_icon() - -/obj/machinery/atmospherics/components/trinary/filter/process_atmos() - ..() - if(!on || !(nodes[1] && nodes[2] && nodes[3]) || !is_operational()) - return - - var/datum/gas_mixture/air1 = airs[1] - var/datum/gas_mixture/air2 = airs[2] - var/datum/gas_mixture/air3 = airs[3] - - var/output_starting_pressure = air3.return_pressure() - - if(output_starting_pressure >= target_pressure) - //No need to transfer if target is already full! - return - - //Calculate necessary moles to transfer using PV=nRT - - var/pressure_delta = target_pressure - output_starting_pressure - var/transfer_moles - - if(air1.temperature > 0) - transfer_moles = pressure_delta*air3.volume/(air1.temperature * R_IDEAL_GAS_EQUATION) - - //Actually transfer the gas - - if(transfer_moles > 0) - var/datum/gas_mixture/removed = air1.remove(transfer_moles) - - if(!removed) - return - - var/filtering = TRUE - if(!ispath(filter_type)) - if(filter_type) - filter_type = gas_id2path(filter_type) //support for mappers so they don't need to type out paths - else - filtering = FALSE - - if(filtering && removed.gases[filter_type]) - var/datum/gas_mixture/filtered_out = new - - filtered_out.temperature = removed.temperature - filtered_out.gases[filter_type] = removed.gases[filter_type] - - removed.gases[filter_type] = 0 - removed.garbage_collect() - - var/datum/gas_mixture/target = (air2.return_pressure() < target_pressure ? air2 : air1) //if there's no room for the filtered gas; just leave it in air1 - target.merge(filtered_out) - - air3.merge(removed) - - update_parents() - -/obj/machinery/atmospherics/components/trinary/filter/atmosinit() - set_frequency(frequency) - return ..() - -/obj/machinery/atmospherics/components/trinary/filter/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "atmos_filter", name, 475, 195, master_ui, state) - ui.open() - -/obj/machinery/atmospherics/components/trinary/filter/ui_data() - var/data = list() - data["on"] = on - data["pressure"] = round(target_pressure) - data["max_pressure"] = round(MAX_OUTPUT_PRESSURE) - - data["filter_types"] = list() - data["filter_types"] += list(list("name" = "Nothing", "path" = "", "selected" = !filter_type)) - for(var/path in GLOB.meta_gas_info) - var/list/gas = GLOB.meta_gas_info[path] - data["filter_types"] += list(list("name" = gas[META_GAS_NAME], "id" = gas[META_GAS_ID], "selected" = (path == gas_id2path(filter_type)))) - - return data - -/obj/machinery/atmospherics/components/trinary/filter/ui_act(action, params) - if(..()) - return - switch(action) - if("power") - on = !on - investigate_log("was turned [on ? "on" : "off"] by [key_name(usr)]", INVESTIGATE_ATMOS) - . = TRUE - if("pressure") - var/pressure = params["pressure"] - if(pressure == "max") - pressure = MAX_OUTPUT_PRESSURE - . = TRUE - else if(pressure == "input") - pressure = input("New output pressure (0-[MAX_OUTPUT_PRESSURE] kPa):", name, target_pressure) as num|null - if(!isnull(pressure) && !..()) - . = TRUE - else if(text2num(pressure) != null) - pressure = text2num(pressure) - . = TRUE - if(.) - target_pressure = CLAMP(pressure, 0, MAX_OUTPUT_PRESSURE) - investigate_log("was set to [target_pressure] kPa by [key_name(usr)]", INVESTIGATE_ATMOS) - if("filter") - filter_type = null - var/filter_name = "nothing" - var/gas = gas_id2path(params["mode"]) - if(gas in GLOB.meta_gas_info) - filter_type = gas - filter_name = GLOB.meta_gas_info[gas][META_GAS_NAME] - investigate_log("was set to filter [filter_name] by [key_name(usr)]", INVESTIGATE_ATMOS) - . = TRUE - update_icon() - -/obj/machinery/atmospherics/components/trinary/filter/can_unwrench(mob/user) - . = ..() - if(. && on && is_operational()) - to_chat(user, "You cannot unwrench [src], turn it off first!") - return FALSE +/obj/machinery/atmospherics/components/trinary/filter + name = "gas filter" + icon_state = "filter_off" + desc = "Very useful for filtering gasses." + density = FALSE + can_unwrench = TRUE + var/target_pressure = ONE_ATMOSPHERE + var/filter_type = null + var/frequency = 0 + var/datum/radio_frequency/radio_connection + + construction_type = /obj/item/pipe/trinary/flippable + pipe_state = "filter" + +/obj/machinery/atmospherics/components/trinary/filter/layer1 + piping_layer = PIPING_LAYER_MIN + pixel_x = -PIPING_LAYER_P_X + pixel_y = -PIPING_LAYER_P_Y + +/obj/machinery/atmospherics/components/trinary/filter/layer3 + piping_layer = PIPING_LAYER_MAX + pixel_x = PIPING_LAYER_P_X + pixel_y = PIPING_LAYER_P_Y + +/obj/machinery/atmospherics/components/trinary/filter/flipped + icon_state = "filter_off_f" + flipped = TRUE + +/obj/machinery/atmospherics/components/trinary/filter/flipped/layer1 + piping_layer = PIPING_LAYER_MIN + pixel_x = -PIPING_LAYER_P_X + pixel_y = -PIPING_LAYER_P_Y + +/obj/machinery/atmospherics/components/trinary/filter/flipped/layer3 + piping_layer = PIPING_LAYER_MAX + pixel_x = PIPING_LAYER_P_X + pixel_y = PIPING_LAYER_P_Y + +// These two filter types have critical_machine flagged to on and thus causes the area they are in to be exempt from the Grid Check event. + +/obj/machinery/atmospherics/components/trinary/filter/critical + critical_machine = TRUE + +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical + critical_machine = TRUE + +/obj/machinery/atmospherics/components/trinary/filter/proc/set_frequency(new_frequency) + SSradio.remove_object(src, frequency) + frequency = new_frequency + if(frequency) + radio_connection = SSradio.add_object(src, frequency, RADIO_ATMOSIA) + +/obj/machinery/atmospherics/components/trinary/filter/Destroy() + SSradio.remove_object(src,frequency) + return ..() + +/obj/machinery/atmospherics/components/trinary/filter/atmos //Used for atmos waste loops + on = TRUE + icon_state = "filter_on" + +/obj/machinery/atmospherics/components/trinary/filter/atmos/n2 + name = "nitrogen filter" + filter_type = "n2" +/obj/machinery/atmospherics/components/trinary/filter/atmos/o2 + name = "oxygen filter" + filter_type = "o2" +/obj/machinery/atmospherics/components/trinary/filter/atmos/co2 + name = "carbon dioxide filter" + filter_type = "co2" +/obj/machinery/atmospherics/components/trinary/filter/atmos/n2o + name = "nitrous oxide filter" + filter_type = "n2o" +/obj/machinery/atmospherics/components/trinary/filter/atmos/plasma + name = "plasma filter" + filter_type = "plasma" + +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped //This feels wrong, I know + icon_state = "filter_on_f" + flipped = TRUE + +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2 + name = "nitrogen filter" + filter_type = "n2" +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/o2 + name = "oxygen filter" + filter_type = "o2" +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/co2 + name = "carbon dioxide filter" + filter_type = "co2" +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2o + name = "nitrous oxide filter" + filter_type = "n2o" +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/plasma + name = "plasma filter" + filter_type = "plasma" + +/obj/machinery/atmospherics/components/trinary/filter/update_icon() + cut_overlays() + for(var/direction in GLOB.cardinals) + if(direction & initialize_directions) + var/obj/machinery/atmospherics/node = findConnecting(direction) + if(node) + add_overlay(getpipeimage('icons/obj/atmospherics/components/trinary_devices.dmi', "cap", direction, node.pipe_color)) + continue + add_overlay(getpipeimage('icons/obj/atmospherics/components/trinary_devices.dmi', "cap", direction)) + ..() + +/obj/machinery/atmospherics/components/trinary/filter/update_icon_nopipes() + if(on && nodes[1] && nodes[2] && nodes[3] && is_operational()) + icon_state = "filter_on[flipped?"_f":""]" + return + icon_state = "filter_off[flipped?"_f":""]" + +/obj/machinery/atmospherics/components/trinary/filter/power_change() + var/old_stat = stat + ..() + if(stat != old_stat) + update_icon() + +/obj/machinery/atmospherics/components/trinary/filter/process_atmos() + ..() + if(!on || !(nodes[1] && nodes[2] && nodes[3]) || !is_operational()) + return + + var/datum/gas_mixture/air1 = airs[1] + var/datum/gas_mixture/air2 = airs[2] + var/datum/gas_mixture/air3 = airs[3] + + var/output_starting_pressure = air3.return_pressure() + + if(output_starting_pressure >= target_pressure) + //No need to transfer if target is already full! + return + + //Calculate necessary moles to transfer using PV=nRT + + var/pressure_delta = target_pressure - output_starting_pressure + var/transfer_moles + + if(air1.temperature > 0) + transfer_moles = pressure_delta*air3.volume/(air1.temperature * R_IDEAL_GAS_EQUATION) + + //Actually transfer the gas + + if(transfer_moles > 0) + var/datum/gas_mixture/removed = air1.remove(transfer_moles) + + if(!removed) + return + + var/filtering = TRUE + if(!ispath(filter_type)) + if(filter_type) + filter_type = gas_id2path(filter_type) //support for mappers so they don't need to type out paths + else + filtering = FALSE + + if(filtering && removed.gases[filter_type]) + var/datum/gas_mixture/filtered_out = new + + filtered_out.temperature = removed.temperature + filtered_out.gases[filter_type] = removed.gases[filter_type] + + removed.gases[filter_type] = 0 + GAS_GARBAGE_COLLECT(removed.gases) + + var/datum/gas_mixture/target = (air2.return_pressure() < target_pressure ? air2 : air1) //if there's no room for the filtered gas; just leave it in air1 + target.merge(filtered_out) + + air3.merge(removed) + + update_parents() + +/obj/machinery/atmospherics/components/trinary/filter/atmosinit() + set_frequency(frequency) + return ..() + +/obj/machinery/atmospherics/components/trinary/filter/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ + datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + if(!ui) + ui = new(user, src, ui_key, "atmos_filter", name, 475, 195, master_ui, state) + ui.open() + +/obj/machinery/atmospherics/components/trinary/filter/ui_data() + var/data = list() + data["on"] = on + data["pressure"] = round(target_pressure) + data["max_pressure"] = round(MAX_OUTPUT_PRESSURE) + + data["filter_types"] = list() + data["filter_types"] += list(list("name" = "Nothing", "path" = "", "selected" = !filter_type)) + for(var/path in GLOB.meta_gas_info) + var/list/gas = GLOB.meta_gas_info[path] + data["filter_types"] += list(list("name" = gas[META_GAS_NAME], "id" = gas[META_GAS_ID], "selected" = (path == gas_id2path(filter_type)))) + + return data + +/obj/machinery/atmospherics/components/trinary/filter/ui_act(action, params) + if(..()) + return + switch(action) + if("power") + on = !on + investigate_log("was turned [on ? "on" : "off"] by [key_name(usr)]", INVESTIGATE_ATMOS) + . = TRUE + if("pressure") + var/pressure = params["pressure"] + if(pressure == "max") + pressure = MAX_OUTPUT_PRESSURE + . = TRUE + else if(pressure == "input") + pressure = input("New output pressure (0-[MAX_OUTPUT_PRESSURE] kPa):", name, target_pressure) as num|null + if(!isnull(pressure) && !..()) + . = TRUE + else if(text2num(pressure) != null) + pressure = text2num(pressure) + . = TRUE + if(.) + target_pressure = CLAMP(pressure, 0, MAX_OUTPUT_PRESSURE) + investigate_log("was set to [target_pressure] kPa by [key_name(usr)]", INVESTIGATE_ATMOS) + if("filter") + filter_type = null + var/filter_name = "nothing" + var/gas = gas_id2path(params["mode"]) + if(gas in GLOB.meta_gas_info) + filter_type = gas + filter_name = GLOB.meta_gas_info[gas][META_GAS_NAME] + investigate_log("was set to filter [filter_name] by [key_name(usr)]", INVESTIGATE_ATMOS) + . = TRUE + update_icon() + +/obj/machinery/atmospherics/components/trinary/filter/can_unwrench(mob/user) + . = ..() + if(. && on && is_operational()) + to_chat(user, "You cannot unwrench [src], turn it off first!") + return FALSE diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index 8729f30fb0..bfe60cd573 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -184,7 +184,7 @@ beaker.reagents.trans_to(occupant, 1, efficiency * 0.25) // Transfer reagents. beaker.reagents.reaction(occupant, VAPOR) air1.gases[/datum/gas/oxygen] -= max(0,air1.gases[/datum/gas/oxygen] - 2 / efficiency) //Let's use gas for this - air1.garbage_collect() + GAS_GARBAGE_COLLECT(air1.gases) if(++reagent_transfer >= 10 * efficiency) // Throttle reagent transfer (higher efficiency will transfer the same amount but consume less from the beaker). reagent_transfer = 0 @@ -221,7 +221,7 @@ mob_occupant.adjust_bodytemperature(heat / heat_capacity, TCMB) air1.gases[/datum/gas/oxygen] = max(0,air1.gases[/datum/gas/oxygen] - 0.5 / efficiency) // Magically consume gas? Why not, we run on cryo magic. - air1.garbage_collect() + GAS_GARBAGE_COLLECT(air1.gases) /obj/machinery/atmospherics/components/unary/cryo_cell/power_change() ..() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index 02bde682a9..cd69f5b8c6 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -1,329 +1,329 @@ -#define SIPHONING 0 -#define SCRUBBING 1 - -/obj/machinery/atmospherics/components/unary/vent_scrubber - name = "air scrubber" - desc = "Has a valve and pump attached to it." - icon_state = "scrub_map" - use_power = IDLE_POWER_USE - idle_power_usage = 10 - active_power_usage = 60 - can_unwrench = TRUE - welded = FALSE - level = 1 - layer = GAS_SCRUBBER_LAYER - - var/id_tag = null - var/scrubbing = SCRUBBING //0 = siphoning, 1 = scrubbing - - var/filter_types = list(/datum/gas/carbon_dioxide) - var/volume_rate = 200 - var/widenet = 0 //is this scrubber acting on the 3x3 area around it. - var/list/turf/adjacent_turfs = list() - - var/frequency = FREQ_ATMOS_CONTROL - var/datum/radio_frequency/radio_connection - var/radio_filter_out - var/radio_filter_in - - pipe_state = "scrubber" - -/obj/machinery/atmospherics/components/unary/vent_scrubber/layer1 - piping_layer = PIPING_LAYER_MIN - pixel_x = -PIPING_LAYER_P_X - pixel_y = -PIPING_LAYER_P_Y - -/obj/machinery/atmospherics/components/unary/vent_scrubber/layer3 - piping_layer = PIPING_LAYER_MAX - pixel_x = PIPING_LAYER_P_X - pixel_y = PIPING_LAYER_P_Y - -/obj/machinery/atmospherics/components/unary/vent_scrubber/New() - ..() - if(!id_tag) - id_tag = assign_uid_vents() - - for(var/f in filter_types) - if(istext(f)) - filter_types -= f - filter_types += gas_id2path(f) - -/obj/machinery/atmospherics/components/unary/vent_scrubber/on - on = TRUE - icon_state = "scrub_map_on" - -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer1 - piping_layer = PIPING_LAYER_MIN - pixel_x = -PIPING_LAYER_P_X - pixel_y = -PIPING_LAYER_P_Y - -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3 - piping_layer = PIPING_LAYER_MAX - pixel_x = PIPING_LAYER_P_X - pixel_y = PIPING_LAYER_P_Y - -/obj/machinery/atmospherics/components/unary/vent_scrubber/Destroy() - var/area/A = get_area(src) - if (A) - A.air_scrub_names -= id_tag - A.air_scrub_info -= id_tag - - SSradio.remove_object(src,frequency) - radio_connection = null - adjacent_turfs.Cut() - return ..() - -/obj/machinery/atmospherics/components/unary/vent_scrubber/auto_use_power() - if(!on || welded || !is_operational() || !powered(power_channel)) - return FALSE - - var/amount = idle_power_usage - - if(scrubbing & SCRUBBING) - amount += idle_power_usage * length(filter_types) - else //scrubbing == SIPHONING - amount = active_power_usage - - if(widenet) - amount += amount * (adjacent_turfs.len * (adjacent_turfs.len / 2)) - use_power(amount, power_channel) - return TRUE - -/obj/machinery/atmospherics/components/unary/vent_scrubber/update_icon_nopipes() - cut_overlays() - if(showpipe) - add_overlay(getpipeimage(icon, "scrub_cap", initialize_directions)) - - if(welded) - icon_state = "scrub_welded" - return - - if(!nodes[1] || !on || !is_operational()) - icon_state = "scrub_off" - return - - if(scrubbing & SCRUBBING) - if(widenet) - icon_state = "scrub_wide" - else - icon_state = "scrub_on" - else //scrubbing == SIPHONING - icon_state = "scrub_purge" - -/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/set_frequency(new_frequency) - SSradio.remove_object(src, frequency) - frequency = new_frequency - radio_connection = SSradio.add_object(src, frequency, radio_filter_in) - -/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/broadcast_status() - if(!radio_connection) - return FALSE - - var/list/f_types = list() - for(var/path in GLOB.meta_gas_info) - var/list/gas = GLOB.meta_gas_info[path] - f_types += list(list("gas_id" = gas[META_GAS_ID], "gas_name" = gas[META_GAS_NAME], "enabled" = (path in filter_types))) - - var/datum/signal/signal = new(list( - "tag" = id_tag, - "frequency" = frequency, - "device" = "VS", - "timestamp" = world.time, - "power" = on, - "scrubbing" = scrubbing, - "widenet" = widenet, - "filter_types" = f_types, - "sigtype" = "status" - )) - - var/area/A = get_area(src) - if(!A.air_scrub_names[id_tag]) - name = "\improper [A.name] air scrubber #[A.air_scrub_names.len + 1]" - A.air_scrub_names[id_tag] = name - - A.air_scrub_info[id_tag] = signal.data - radio_connection.post_signal(src, signal, radio_filter_out) - - return TRUE - -/obj/machinery/atmospherics/components/unary/vent_scrubber/atmosinit() - radio_filter_in = frequency==initial(frequency)?(RADIO_FROM_AIRALARM):null - radio_filter_out = frequency==initial(frequency)?(RADIO_TO_AIRALARM):null - if(frequency) - set_frequency(frequency) - broadcast_status() - check_turfs() - ..() - -/obj/machinery/atmospherics/components/unary/vent_scrubber/process_atmos() - ..() - if(welded || !is_operational()) - return FALSE - if(!nodes[1] || !on) - on = FALSE - return FALSE - scrub(loc) - if(widenet) - for(var/turf/tile in adjacent_turfs) - scrub(tile) - return TRUE - -/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/scrub(var/turf/tile) - if(!istype(tile)) - return FALSE - var/datum/gas_mixture/environment = tile.return_air() - var/datum/gas_mixture/air_contents = airs[1] - var/list/env_gases = environment.gases - - if(air_contents.return_pressure() >= 50*ONE_ATMOSPHERE) - return FALSE - - if(scrubbing & SCRUBBING) - if(length(env_gases & filter_types)) - var/transfer_moles = min(1, volume_rate/environment.volume)*environment.total_moles() - - //Take a gas sample - var/datum/gas_mixture/removed = tile.remove_air(transfer_moles) - - //Nothing left to remove from the tile - if(isnull(removed)) - return FALSE - - var/list/removed_gases = removed.gases - - //Filter it - var/datum/gas_mixture/filtered_out = new - var/list/filtered_gases = filtered_out.gases - filtered_out.temperature = removed.temperature - - for(var/gas in filter_types & removed_gases) - filtered_gases[gas] = removed_gases[gas] - removed_gases[gas] = 0 - - removed.garbage_collect() - - //Remix the resulting gases - air_contents.merge(filtered_out) - tile.assume_air(removed) - tile.air_update_turf() - - else //Just siphoning all air - - var/transfer_moles = environment.total_moles()*(volume_rate/environment.volume) - - var/datum/gas_mixture/removed = tile.remove_air(transfer_moles) - - air_contents.merge(removed) - tile.air_update_turf() - - update_parents() - - return TRUE - -//There is no easy way for an object to be notified of changes to atmos can pass flags -// So we check every machinery process (2 seconds) -/obj/machinery/atmospherics/components/unary/vent_scrubber/process() - if(widenet) - check_turfs() - -//we populate a list of turfs with nonatmos-blocked cardinal turfs AND -// diagonal turfs that can share atmos with *both* of the cardinal turfs - -/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/check_turfs() - adjacent_turfs.Cut() - var/turf/T = get_turf(src) - if(istype(T)) - adjacent_turfs = T.GetAtmosAdjacentTurfs(alldir = 1) - -/obj/machinery/atmospherics/components/unary/vent_scrubber/receive_signal(datum/signal/signal) - if(!is_operational() || !signal.data["tag"] || (signal.data["tag"] != id_tag) || (signal.data["sigtype"]!="command")) - return 0 - - var/mob/signal_sender = signal.data["user"] - - if("power" in signal.data) - on = text2num(signal.data["power"]) - if("power_toggle" in signal.data) - on = !on - - if("widenet" in signal.data) - widenet = text2num(signal.data["widenet"]) - if("toggle_widenet" in signal.data) - widenet = !widenet - - var/old_scrubbing = scrubbing - if("scrubbing" in signal.data) - scrubbing = text2num(signal.data["scrubbing"]) - if("toggle_scrubbing" in signal.data) - scrubbing = !scrubbing - if(scrubbing != old_scrubbing) - investigate_log(" was toggled to [scrubbing ? "scrubbing" : "siphon"] mode by [key_name(signal_sender)]",INVESTIGATE_ATMOS) - - if("toggle_filter" in signal.data) - filter_types ^= gas_id2path(signal.data["toggle_filter"]) - - if("set_filters" in signal.data) - filter_types = list() - for(var/gas in signal.data["set_filters"]) - filter_types += gas_id2path(gas) - - if("init" in signal.data) - name = signal.data["init"] - return - - if("status" in signal.data) - broadcast_status() - return //do not update_icon - - broadcast_status() - update_icon() - return - -/obj/machinery/atmospherics/components/unary/vent_scrubber/power_change() - ..() - update_icon_nopipes() - -/obj/machinery/atmospherics/components/unary/vent_scrubber/welder_act(mob/living/user, obj/item/I) - if(!I.tool_start_check(user, amount=0)) - return TRUE - to_chat(user, "Now welding the scrubber.") - if(I.use_tool(src, user, 20, volume=50)) - if(!welded) - user.visible_message("[user] welds the scrubber shut.","You weld the scrubber shut.", "You hear welding.") - welded = TRUE - else - user.visible_message("[user] unwelds the scrubber.", "You unweld the scrubber.", "You hear welding.") - welded = FALSE - update_icon() - pipe_vision_img = image(src, loc, layer = ABOVE_HUD_LAYER, dir = dir) - pipe_vision_img.plane = ABOVE_HUD_PLANE - return TRUE - -/obj/machinery/atmospherics/components/unary/vent_scrubber/can_unwrench(mob/user) - . = ..() - if(. && on && is_operational()) - to_chat(user, "You cannot unwrench [src], turn it off first!") - return FALSE - -/obj/machinery/atmospherics/components/unary/vent_scrubber/examine(mob/user) - ..() - if(welded) - to_chat(user, "It seems welded shut.") - -/obj/machinery/atmospherics/components/unary/vent_scrubber/can_crawl_through() - return !welded - -/obj/machinery/atmospherics/components/unary/vent_scrubber/attack_alien(mob/user) - if(!welded || !(do_after(user, 20, target = src))) - return - user.visible_message("[user] furiously claws at [src]!", "You manage to clear away the stuff blocking the scrubber.", "You hear loud scraping noises.") - welded = FALSE - update_icon() - pipe_vision_img = image(src, loc, layer = ABOVE_HUD_LAYER, dir = dir) - pipe_vision_img.plane = ABOVE_HUD_PLANE - playsound(loc, 'sound/weapons/bladeslice.ogg', 100, 1) - - - -#undef SIPHONING -#undef SCRUBBING +#define SIPHONING 0 +#define SCRUBBING 1 + +/obj/machinery/atmospherics/components/unary/vent_scrubber + name = "air scrubber" + desc = "Has a valve and pump attached to it." + icon_state = "scrub_map" + use_power = IDLE_POWER_USE + idle_power_usage = 10 + active_power_usage = 60 + can_unwrench = TRUE + welded = FALSE + level = 1 + layer = GAS_SCRUBBER_LAYER + + var/id_tag = null + var/scrubbing = SCRUBBING //0 = siphoning, 1 = scrubbing + + var/filter_types = list(/datum/gas/carbon_dioxide) + var/volume_rate = 200 + var/widenet = 0 //is this scrubber acting on the 3x3 area around it. + var/list/turf/adjacent_turfs = list() + + var/frequency = FREQ_ATMOS_CONTROL + var/datum/radio_frequency/radio_connection + var/radio_filter_out + var/radio_filter_in + + pipe_state = "scrubber" + +/obj/machinery/atmospherics/components/unary/vent_scrubber/layer1 + piping_layer = PIPING_LAYER_MIN + pixel_x = -PIPING_LAYER_P_X + pixel_y = -PIPING_LAYER_P_Y + +/obj/machinery/atmospherics/components/unary/vent_scrubber/layer3 + piping_layer = PIPING_LAYER_MAX + pixel_x = PIPING_LAYER_P_X + pixel_y = PIPING_LAYER_P_Y + +/obj/machinery/atmospherics/components/unary/vent_scrubber/New() + ..() + if(!id_tag) + id_tag = assign_uid_vents() + + for(var/f in filter_types) + if(istext(f)) + filter_types -= f + filter_types += gas_id2path(f) + +/obj/machinery/atmospherics/components/unary/vent_scrubber/on + on = TRUE + icon_state = "scrub_map_on" + +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer1 + piping_layer = PIPING_LAYER_MIN + pixel_x = -PIPING_LAYER_P_X + pixel_y = -PIPING_LAYER_P_Y + +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3 + piping_layer = PIPING_LAYER_MAX + pixel_x = PIPING_LAYER_P_X + pixel_y = PIPING_LAYER_P_Y + +/obj/machinery/atmospherics/components/unary/vent_scrubber/Destroy() + var/area/A = get_area(src) + if (A) + A.air_scrub_names -= id_tag + A.air_scrub_info -= id_tag + + SSradio.remove_object(src,frequency) + radio_connection = null + adjacent_turfs.Cut() + return ..() + +/obj/machinery/atmospherics/components/unary/vent_scrubber/auto_use_power() + if(!on || welded || !is_operational() || !powered(power_channel)) + return FALSE + + var/amount = idle_power_usage + + if(scrubbing & SCRUBBING) + amount += idle_power_usage * length(filter_types) + else //scrubbing == SIPHONING + amount = active_power_usage + + if(widenet) + amount += amount * (adjacent_turfs.len * (adjacent_turfs.len / 2)) + use_power(amount, power_channel) + return TRUE + +/obj/machinery/atmospherics/components/unary/vent_scrubber/update_icon_nopipes() + cut_overlays() + if(showpipe) + add_overlay(getpipeimage(icon, "scrub_cap", initialize_directions)) + + if(welded) + icon_state = "scrub_welded" + return + + if(!nodes[1] || !on || !is_operational()) + icon_state = "scrub_off" + return + + if(scrubbing & SCRUBBING) + if(widenet) + icon_state = "scrub_wide" + else + icon_state = "scrub_on" + else //scrubbing == SIPHONING + icon_state = "scrub_purge" + +/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/set_frequency(new_frequency) + SSradio.remove_object(src, frequency) + frequency = new_frequency + radio_connection = SSradio.add_object(src, frequency, radio_filter_in) + +/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/broadcast_status() + if(!radio_connection) + return FALSE + + var/list/f_types = list() + for(var/path in GLOB.meta_gas_info) + var/list/gas = GLOB.meta_gas_info[path] + f_types += list(list("gas_id" = gas[META_GAS_ID], "gas_name" = gas[META_GAS_NAME], "enabled" = (path in filter_types))) + + var/datum/signal/signal = new(list( + "tag" = id_tag, + "frequency" = frequency, + "device" = "VS", + "timestamp" = world.time, + "power" = on, + "scrubbing" = scrubbing, + "widenet" = widenet, + "filter_types" = f_types, + "sigtype" = "status" + )) + + var/area/A = get_area(src) + if(!A.air_scrub_names[id_tag]) + name = "\improper [A.name] air scrubber #[A.air_scrub_names.len + 1]" + A.air_scrub_names[id_tag] = name + + A.air_scrub_info[id_tag] = signal.data + radio_connection.post_signal(src, signal, radio_filter_out) + + return TRUE + +/obj/machinery/atmospherics/components/unary/vent_scrubber/atmosinit() + radio_filter_in = frequency==initial(frequency)?(RADIO_FROM_AIRALARM):null + radio_filter_out = frequency==initial(frequency)?(RADIO_TO_AIRALARM):null + if(frequency) + set_frequency(frequency) + broadcast_status() + check_turfs() + ..() + +/obj/machinery/atmospherics/components/unary/vent_scrubber/process_atmos() + ..() + if(welded || !is_operational()) + return FALSE + if(!nodes[1] || !on) + on = FALSE + return FALSE + scrub(loc) + if(widenet) + for(var/turf/tile in adjacent_turfs) + scrub(tile) + return TRUE + +/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/scrub(var/turf/tile) + if(!istype(tile)) + return FALSE + var/datum/gas_mixture/environment = tile.return_air() + var/datum/gas_mixture/air_contents = airs[1] + var/list/env_gases = environment.gases + + if(air_contents.return_pressure() >= 50*ONE_ATMOSPHERE) + return FALSE + + if(scrubbing & SCRUBBING) + if(length(env_gases & filter_types)) + var/transfer_moles = min(1, volume_rate/environment.volume)*environment.total_moles() + + //Take a gas sample + var/datum/gas_mixture/removed = tile.remove_air(transfer_moles) + + //Nothing left to remove from the tile + if(isnull(removed)) + return FALSE + + var/list/removed_gases = removed.gases + + //Filter it + var/datum/gas_mixture/filtered_out = new + var/list/filtered_gases = filtered_out.gases + filtered_out.temperature = removed.temperature + + for(var/gas in filter_types & removed_gases) + filtered_gases[gas] = removed_gases[gas] + removed_gases[gas] = 0 + + GAS_GARBAGE_COLLECT(removed.gases) + + //Remix the resulting gases + air_contents.merge(filtered_out) + tile.assume_air(removed) + tile.air_update_turf() + + else //Just siphoning all air + + var/transfer_moles = environment.total_moles()*(volume_rate/environment.volume) + + var/datum/gas_mixture/removed = tile.remove_air(transfer_moles) + + air_contents.merge(removed) + tile.air_update_turf() + + update_parents() + + return TRUE + +//There is no easy way for an object to be notified of changes to atmos can pass flags +// So we check every machinery process (2 seconds) +/obj/machinery/atmospherics/components/unary/vent_scrubber/process() + if(widenet) + check_turfs() + +//we populate a list of turfs with nonatmos-blocked cardinal turfs AND +// diagonal turfs that can share atmos with *both* of the cardinal turfs + +/obj/machinery/atmospherics/components/unary/vent_scrubber/proc/check_turfs() + adjacent_turfs.Cut() + var/turf/T = get_turf(src) + if(istype(T)) + adjacent_turfs = T.GetAtmosAdjacentTurfs(alldir = 1) + +/obj/machinery/atmospherics/components/unary/vent_scrubber/receive_signal(datum/signal/signal) + if(!is_operational() || !signal.data["tag"] || (signal.data["tag"] != id_tag) || (signal.data["sigtype"]!="command")) + return 0 + + var/mob/signal_sender = signal.data["user"] + + if("power" in signal.data) + on = text2num(signal.data["power"]) + if("power_toggle" in signal.data) + on = !on + + if("widenet" in signal.data) + widenet = text2num(signal.data["widenet"]) + if("toggle_widenet" in signal.data) + widenet = !widenet + + var/old_scrubbing = scrubbing + if("scrubbing" in signal.data) + scrubbing = text2num(signal.data["scrubbing"]) + if("toggle_scrubbing" in signal.data) + scrubbing = !scrubbing + if(scrubbing != old_scrubbing) + investigate_log(" was toggled to [scrubbing ? "scrubbing" : "siphon"] mode by [key_name(signal_sender)]",INVESTIGATE_ATMOS) + + if("toggle_filter" in signal.data) + filter_types ^= gas_id2path(signal.data["toggle_filter"]) + + if("set_filters" in signal.data) + filter_types = list() + for(var/gas in signal.data["set_filters"]) + filter_types += gas_id2path(gas) + + if("init" in signal.data) + name = signal.data["init"] + return + + if("status" in signal.data) + broadcast_status() + return //do not update_icon + + broadcast_status() + update_icon() + return + +/obj/machinery/atmospherics/components/unary/vent_scrubber/power_change() + ..() + update_icon_nopipes() + +/obj/machinery/atmospherics/components/unary/vent_scrubber/welder_act(mob/living/user, obj/item/I) + if(!I.tool_start_check(user, amount=0)) + return TRUE + to_chat(user, "Now welding the scrubber.") + if(I.use_tool(src, user, 20, volume=50)) + if(!welded) + user.visible_message("[user] welds the scrubber shut.","You weld the scrubber shut.", "You hear welding.") + welded = TRUE + else + user.visible_message("[user] unwelds the scrubber.", "You unweld the scrubber.", "You hear welding.") + welded = FALSE + update_icon() + pipe_vision_img = image(src, loc, layer = ABOVE_HUD_LAYER, dir = dir) + pipe_vision_img.plane = ABOVE_HUD_PLANE + return TRUE + +/obj/machinery/atmospherics/components/unary/vent_scrubber/can_unwrench(mob/user) + . = ..() + if(. && on && is_operational()) + to_chat(user, "You cannot unwrench [src], turn it off first!") + return FALSE + +/obj/machinery/atmospherics/components/unary/vent_scrubber/examine(mob/user) + ..() + if(welded) + to_chat(user, "It seems welded shut.") + +/obj/machinery/atmospherics/components/unary/vent_scrubber/can_crawl_through() + return !welded + +/obj/machinery/atmospherics/components/unary/vent_scrubber/attack_alien(mob/user) + if(!welded || !(do_after(user, 20, target = src))) + return + user.visible_message("[user] furiously claws at [src]!", "You manage to clear away the stuff blocking the scrubber.", "You hear loud scraping noises.") + welded = FALSE + update_icon() + pipe_vision_img = image(src, loc, layer = ABOVE_HUD_LAYER, dir = dir) + pipe_vision_img.plane = ABOVE_HUD_PLANE + playsound(loc, 'sound/weapons/bladeslice.ogg', 100, 1) + + + +#undef SIPHONING +#undef SCRUBBING diff --git a/code/modules/atmospherics/machinery/portable/scrubber.dm b/code/modules/atmospherics/machinery/portable/scrubber.dm index eed7afaaa4..44ae465982 100644 --- a/code/modules/atmospherics/machinery/portable/scrubber.dm +++ b/code/modules/atmospherics/machinery/portable/scrubber.dm @@ -1,145 +1,145 @@ -/obj/machinery/portable_atmospherics/scrubber - name = "portable air scrubber" - icon_state = "pscrubber:0" - density = TRUE - - var/on = FALSE - var/volume_rate = 1000 - volume = 1000 - - var/list/scrubbing = list(/datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/bz, /datum/gas/nitryl, /datum/gas/tritium, /datum/gas/hypernoblium, /datum/gas/water_vapor) - -/obj/machinery/portable_atmospherics/scrubber/Destroy() - var/turf/T = get_turf(src) - T.assume_air(air_contents) - air_update_turf() - return ..() - -/obj/machinery/portable_atmospherics/scrubber/update_icon() - icon_state = "pscrubber:[on]" - - cut_overlays() - if(holding) - add_overlay("scrubber-open") - if(connected_port) - add_overlay("scrubber-connector") - -/obj/machinery/portable_atmospherics/scrubber/process_atmos() - ..() - if(!on) - return - - if(holding) - scrub(holding.air_contents) - else - var/turf/T = get_turf(src) - scrub(T.return_air()) - -/obj/machinery/portable_atmospherics/scrubber/proc/scrub(var/datum/gas_mixture/mixture) - var/transfer_moles = min(1, volume_rate / mixture.volume) * mixture.total_moles() - - var/datum/gas_mixture/filtering = mixture.remove(transfer_moles) // Remove part of the mixture to filter. - var/datum/gas_mixture/filtered = new - if(!filtering) - return - - filtered.temperature = filtering.temperature - for(var/gas in filtering.gases & scrubbing) - filtered.gases[gas] = filtering.gases[gas] // Shuffle the "bad" gasses to the filtered mixture. - filtering.gases[gas] = 0 - filtering.garbage_collect() // Now that the gasses are set to 0, clean up the mixture. - - air_contents.merge(filtered) // Store filtered out gasses. - mixture.merge(filtering) // Returned the cleaned gas. - if(!holding) - air_update_turf() - -/obj/machinery/portable_atmospherics/scrubber/emp_act(severity) - . = ..() - if(. & EMP_PROTECT_SELF) - return - if(is_operational()) - if(prob(50 / severity)) - on = !on - update_icon() - -/obj/machinery/portable_atmospherics/scrubber/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "portable_scrubber", name, 420, 435, master_ui, state) - ui.open() - -/obj/machinery/portable_atmospherics/scrubber/ui_data() - var/data = list() - data["on"] = on - data["connected"] = connected_port ? 1 : 0 - data["pressure"] = round(air_contents.return_pressure() ? air_contents.return_pressure() : 0) - - data["id_tag"] = -1 //must be defined in order to reuse code between portable and vent scrubbers - data["filter_types"] = list() - for(var/path in GLOB.meta_gas_info) - var/list/gas = GLOB.meta_gas_info[path] - data["filter_types"] += list(list("gas_id" = gas[META_GAS_ID], "gas_name" = gas[META_GAS_NAME], "enabled" = (path in scrubbing))) - - if(holding) - data["holding"] = list() - data["holding"]["name"] = holding.name - data["holding"]["pressure"] = round(holding.air_contents.return_pressure()) - return data - -/obj/machinery/portable_atmospherics/scrubber/ui_act(action, params) - if(..()) - return - switch(action) - if("power") - on = !on - . = TRUE - if("eject") - if(holding) - holding.forceMove(drop_location()) - holding = null - . = TRUE - if("toggle_filter") - scrubbing ^= gas_id2path(params["val"]) - . = TRUE - update_icon() - -/obj/machinery/portable_atmospherics/scrubber/huge - name = "huge air scrubber" - icon_state = "scrubber:0" - anchored = TRUE - active_power_usage = 500 - idle_power_usage = 10 - - volume_rate = 1500 - volume = 50000 - - var/movable = FALSE - -/obj/machinery/portable_atmospherics/scrubber/huge/movable - movable = TRUE - -/obj/machinery/portable_atmospherics/scrubber/huge/update_icon() - icon_state = "scrubber:[on]" - -/obj/machinery/portable_atmospherics/scrubber/huge/process_atmos() - if((!anchored && !movable) || !is_operational()) - on = FALSE - update_icon() - use_power = on ? ACTIVE_POWER_USE : IDLE_POWER_USE - if(!on) - return - - ..() - if(!holding) - var/turf/T = get_turf(src) - for(var/turf/AT in T.GetAtmosAdjacentTurfs(alldir = TRUE)) - scrub(AT.return_air()) - -/obj/machinery/portable_atmospherics/scrubber/huge/attackby(obj/item/W, mob/user) - if(default_unfasten_wrench(user, W)) - if(!movable) - on = FALSE - else - return ..() +/obj/machinery/portable_atmospherics/scrubber + name = "portable air scrubber" + icon_state = "pscrubber:0" + density = TRUE + + var/on = FALSE + var/volume_rate = 1000 + volume = 1000 + + var/list/scrubbing = list(/datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/bz, /datum/gas/nitryl, /datum/gas/tritium, /datum/gas/hypernoblium, /datum/gas/water_vapor) + +/obj/machinery/portable_atmospherics/scrubber/Destroy() + var/turf/T = get_turf(src) + T.assume_air(air_contents) + air_update_turf() + return ..() + +/obj/machinery/portable_atmospherics/scrubber/update_icon() + icon_state = "pscrubber:[on]" + + cut_overlays() + if(holding) + add_overlay("scrubber-open") + if(connected_port) + add_overlay("scrubber-connector") + +/obj/machinery/portable_atmospherics/scrubber/process_atmos() + ..() + if(!on) + return + + if(holding) + scrub(holding.air_contents) + else + var/turf/T = get_turf(src) + scrub(T.return_air()) + +/obj/machinery/portable_atmospherics/scrubber/proc/scrub(var/datum/gas_mixture/mixture) + var/transfer_moles = min(1, volume_rate / mixture.volume) * mixture.total_moles() + + var/datum/gas_mixture/filtering = mixture.remove(transfer_moles) // Remove part of the mixture to filter. + var/datum/gas_mixture/filtered = new + if(!filtering) + return + + filtered.temperature = filtering.temperature + for(var/gas in filtering.gases & scrubbing) + filtered.gases[gas] = filtering.gases[gas] // Shuffle the "bad" gasses to the filtered mixture. + filtering.gases[gas] = 0 + GAS_GARBAGE_COLLECT(filtering.gases) + + air_contents.merge(filtered) // Store filtered out gasses. + mixture.merge(filtering) // Returned the cleaned gas. + if(!holding) + air_update_turf() + +/obj/machinery/portable_atmospherics/scrubber/emp_act(severity) + . = ..() + if(. & EMP_PROTECT_SELF) + return + if(is_operational()) + if(prob(50 / severity)) + on = !on + update_icon() + +/obj/machinery/portable_atmospherics/scrubber/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ + datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + if(!ui) + ui = new(user, src, ui_key, "portable_scrubber", name, 420, 435, master_ui, state) + ui.open() + +/obj/machinery/portable_atmospherics/scrubber/ui_data() + var/data = list() + data["on"] = on + data["connected"] = connected_port ? 1 : 0 + data["pressure"] = round(air_contents.return_pressure() ? air_contents.return_pressure() : 0) + + data["id_tag"] = -1 //must be defined in order to reuse code between portable and vent scrubbers + data["filter_types"] = list() + for(var/path in GLOB.meta_gas_info) + var/list/gas = GLOB.meta_gas_info[path] + data["filter_types"] += list(list("gas_id" = gas[META_GAS_ID], "gas_name" = gas[META_GAS_NAME], "enabled" = (path in scrubbing))) + + if(holding) + data["holding"] = list() + data["holding"]["name"] = holding.name + data["holding"]["pressure"] = round(holding.air_contents.return_pressure()) + return data + +/obj/machinery/portable_atmospherics/scrubber/ui_act(action, params) + if(..()) + return + switch(action) + if("power") + on = !on + . = TRUE + if("eject") + if(holding) + holding.forceMove(drop_location()) + holding = null + . = TRUE + if("toggle_filter") + scrubbing ^= gas_id2path(params["val"]) + . = TRUE + update_icon() + +/obj/machinery/portable_atmospherics/scrubber/huge + name = "huge air scrubber" + icon_state = "scrubber:0" + anchored = TRUE + active_power_usage = 500 + idle_power_usage = 10 + + volume_rate = 1500 + volume = 50000 + + var/movable = FALSE + +/obj/machinery/portable_atmospherics/scrubber/huge/movable + movable = TRUE + +/obj/machinery/portable_atmospherics/scrubber/huge/update_icon() + icon_state = "scrubber:[on]" + +/obj/machinery/portable_atmospherics/scrubber/huge/process_atmos() + if((!anchored && !movable) || !is_operational()) + on = FALSE + update_icon() + use_power = on ? ACTIVE_POWER_USE : IDLE_POWER_USE + if(!on) + return + + ..() + if(!holding) + var/turf/T = get_turf(src) + for(var/turf/AT in T.GetAtmosAdjacentTurfs(alldir = TRUE)) + scrub(AT.return_air()) + +/obj/machinery/portable_atmospherics/scrubber/huge/attackby(obj/item/W, mob/user) + if(default_unfasten_wrench(user, W)) + if(!movable) + on = FALSE + else + return ..() diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index 53f3832c7a..d8906de036 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -1,548 +1,548 @@ -/datum/round_event_control/spacevine - name = "Spacevine" - typepath = /datum/round_event/spacevine - weight = 15 - max_occurrences = 3 - min_players = 10 - -/datum/round_event/spacevine - fakeable = FALSE - -/datum/round_event/spacevine/start() - var/list/turfs = list() //list of all the empty floor turfs in the hallway areas - - var/obj/structure/spacevine/SV = new() - - for(var/area/hallway/A in world) - for(var/turf/F in A) - if(F.Enter(SV)) - turfs += F - - qdel(SV) - - if(turfs.len) //Pick a turf to spawn at if we can - var/turf/T = pick(turfs) - new /datum/spacevine_controller(T) //spawn a controller at turf - - -/datum/spacevine_mutation - var/name = "" - var/severity = 1 - var/hue - var/quality - -/datum/spacevine_mutation/proc/add_mutation_to_vinepiece(obj/structure/spacevine/holder) - holder.mutations |= src - holder.add_atom_colour(hue, FIXED_COLOUR_PRIORITY) - -/datum/spacevine_mutation/proc/process_mutation(obj/structure/spacevine/holder) - return - -/datum/spacevine_mutation/proc/process_temperature(obj/structure/spacevine/holder, temp, volume) - return - -/datum/spacevine_mutation/proc/on_birth(obj/structure/spacevine/holder) - return - -/datum/spacevine_mutation/proc/on_grow(obj/structure/spacevine/holder) - return - -/datum/spacevine_mutation/proc/on_death(obj/structure/spacevine/holder) - return - -/datum/spacevine_mutation/proc/on_hit(obj/structure/spacevine/holder, mob/hitter, obj/item/I, expected_damage) - . = expected_damage - -/datum/spacevine_mutation/proc/on_cross(obj/structure/spacevine/holder, mob/crosser) - return - -/datum/spacevine_mutation/proc/on_chem(obj/structure/spacevine/holder, datum/reagent/R) - return - -/datum/spacevine_mutation/proc/on_eat(obj/structure/spacevine/holder, mob/living/eater) - return - -/datum/spacevine_mutation/proc/on_spread(obj/structure/spacevine/holder, turf/target) - return - -/datum/spacevine_mutation/proc/on_buckle(obj/structure/spacevine/holder, mob/living/buckled) - return - -/datum/spacevine_mutation/proc/on_explosion(severity, target, obj/structure/spacevine/holder) - return - - -/datum/spacevine_mutation/light - name = "light" - hue = "#ffff00" - quality = POSITIVE - severity = 4 - -/datum/spacevine_mutation/light/on_grow(obj/structure/spacevine/holder) - if(holder.energy) - holder.set_light(severity, 0.3) - -/datum/spacevine_mutation/toxicity - name = "toxic" - hue = "#ff00ff" - severity = 10 - quality = NEGATIVE - -/datum/spacevine_mutation/toxicity/on_cross(obj/structure/spacevine/holder, mob/living/crosser) - if(issilicon(crosser)) - return - if(prob(severity) && istype(crosser) && !isvineimmune(crosser)) - to_chat(crosser, "You accidentally touch the vine and feel a strange sensation.") - crosser.adjustToxLoss(5) - -/datum/spacevine_mutation/toxicity/on_eat(obj/structure/spacevine/holder, mob/living/eater) - if(!isvineimmune(eater)) - eater.adjustToxLoss(5) - -/datum/spacevine_mutation/explosive //OH SHIT IT CAN CHAINREACT RUN!!! - name = "explosive" - hue = "#ff0000" - quality = NEGATIVE - severity = 2 - -/datum/spacevine_mutation/explosive/on_explosion(explosion_severity, target, obj/structure/spacevine/holder) - if(explosion_severity < 3) - qdel(holder) - else - . = 1 - QDEL_IN(holder, 5) - -/datum/spacevine_mutation/explosive/on_death(obj/structure/spacevine/holder, mob/hitter, obj/item/I) - explosion(holder.loc, 0, 0, severity, 0, 0) - -/datum/spacevine_mutation/fire_proof - name = "fire proof" - hue = "#ff8888" - quality = MINOR_NEGATIVE - -/datum/spacevine_mutation/fire_proof/process_temperature(obj/structure/spacevine/holder, temp, volume) - return 1 - -/datum/spacevine_mutation/fire_proof/on_hit(obj/structure/spacevine/holder, mob/hitter, obj/item/I, expected_damage) - if(I && I.damtype == "fire") - . = 0 - else - . = expected_damage - -/datum/spacevine_mutation/vine_eating - name = "vine eating" - hue = "#ff7700" - quality = MINOR_NEGATIVE - -/datum/spacevine_mutation/vine_eating/on_spread(obj/structure/spacevine/holder, turf/target) - var/obj/structure/spacevine/prey = locate() in target - if(prey && !prey.mutations.Find(src)) //Eat all vines that are not of the same origin - qdel(prey) - -/datum/spacevine_mutation/aggressive_spread //very OP, but im out of other ideas currently - name = "aggressive spreading" - hue = "#333333" - severity = 3 - quality = NEGATIVE - -/datum/spacevine_mutation/aggressive_spread/on_spread(obj/structure/spacevine/holder, turf/target) - target.ex_act(severity, null, src) // vine immunity handled at /mob/ex_act - -/datum/spacevine_mutation/aggressive_spread/on_buckle(obj/structure/spacevine/holder, mob/living/buckled) - buckled.ex_act(severity, null, src) - -/datum/spacevine_mutation/transparency - name = "transparent" - hue = "" - quality = POSITIVE - -/datum/spacevine_mutation/transparency/on_grow(obj/structure/spacevine/holder) - holder.set_opacity(0) - holder.alpha = 125 - -/datum/spacevine_mutation/oxy_eater - name = "oxygen consuming" - hue = "#ffff88" - severity = 3 - quality = NEGATIVE - -/datum/spacevine_mutation/oxy_eater/process_mutation(obj/structure/spacevine/holder) - var/turf/open/floor/T = holder.loc - if(istype(T)) - var/datum/gas_mixture/GM = T.air - if(!GM.gases[/datum/gas/oxygen]) - return - GM.gases[/datum/gas/oxygen] = max(GM.gases[/datum/gas/oxygen] - severity * holder.energy, 0) - GM.garbage_collect() - -/datum/spacevine_mutation/nitro_eater - name = "nitrogen consuming" - hue = "#8888ff" - severity = 3 - quality = NEGATIVE - -/datum/spacevine_mutation/nitro_eater/process_mutation(obj/structure/spacevine/holder) - var/turf/open/floor/T = holder.loc - if(istype(T)) - var/datum/gas_mixture/GM = T.air - if(!GM.gases[/datum/gas/nitrogen]) - return - GM.gases[/datum/gas/nitrogen] = max(GM.gases[/datum/gas/nitrogen] - severity * holder.energy, 0) - GM.garbage_collect() - -/datum/spacevine_mutation/carbondioxide_eater - name = "CO2 consuming" - hue = "#00ffff" - severity = 3 - quality = POSITIVE - -/datum/spacevine_mutation/carbondioxide_eater/process_mutation(obj/structure/spacevine/holder) - var/turf/open/floor/T = holder.loc - if(istype(T)) - var/datum/gas_mixture/GM = T.air - if(!GM.gases[/datum/gas/carbon_dioxide]) - return - GM.gases[/datum/gas/carbon_dioxide] = max(GM.gases[/datum/gas/carbon_dioxide] - severity * holder.energy, 0) - GM.garbage_collect() - -/datum/spacevine_mutation/plasma_eater - name = "toxins consuming" - hue = "#ffbbff" - severity = 3 - quality = POSITIVE - -/datum/spacevine_mutation/plasma_eater/process_mutation(obj/structure/spacevine/holder) - var/turf/open/floor/T = holder.loc - if(istype(T)) - var/datum/gas_mixture/GM = T.air - if(!GM.gases[/datum/gas/plasma]) - return - GM.gases[/datum/gas/plasma] = max(GM.gases[/datum/gas/plasma] - severity * holder.energy, 0) - GM.garbage_collect() - -/datum/spacevine_mutation/thorns - name = "thorny" - hue = "#666666" - severity = 10 - quality = NEGATIVE - -/datum/spacevine_mutation/thorns/on_cross(obj/structure/spacevine/holder, mob/living/crosser) - if(prob(severity) && istype(crosser) && !isvineimmune(holder)) - var/mob/living/M = crosser - M.adjustBruteLoss(5) - to_chat(M, "You cut yourself on the thorny vines.") - -/datum/spacevine_mutation/thorns/on_hit(obj/structure/spacevine/holder, mob/living/hitter, obj/item/I, expected_damage) - if(prob(severity) && istype(hitter) && !isvineimmune(holder)) - var/mob/living/M = hitter - M.adjustBruteLoss(5) - to_chat(M, "You cut yourself on the thorny vines.") - . = expected_damage - -/datum/spacevine_mutation/woodening - name = "hardened" - hue = "#997700" - quality = NEGATIVE - -/datum/spacevine_mutation/woodening/on_grow(obj/structure/spacevine/holder) - if(holder.energy) - holder.density = TRUE - holder.max_integrity = 100 - holder.obj_integrity = holder.max_integrity - -/datum/spacevine_mutation/woodening/on_hit(obj/structure/spacevine/holder, mob/living/hitter, obj/item/I, expected_damage) - if(I.is_sharp()) - . = expected_damage * 0.5 - else - . = expected_damage - -/datum/spacevine_mutation/flowering - name = "flowering" - hue = "#0A480D" - quality = NEGATIVE - severity = 10 - -/datum/spacevine_mutation/flowering/on_grow(obj/structure/spacevine/holder) - if(holder.energy == 2 && prob(severity) && !locate(/obj/structure/alien/resin/flower_bud_enemy) in range(5,holder)) - new/obj/structure/alien/resin/flower_bud_enemy(get_turf(holder)) - -/datum/spacevine_mutation/flowering/on_cross(obj/structure/spacevine/holder, mob/living/crosser) - if(prob(25)) - holder.entangle(crosser) - - -// SPACE VINES (Note that this code is very similar to Biomass code) -/obj/structure/spacevine - name = "space vines" - desc = "An extremely expansionistic species of vine." - icon = 'icons/effects/spacevines.dmi' - icon_state = "Light1" - anchored = TRUE - density = FALSE - layer = SPACEVINE_LAYER - mouse_opacity = MOUSE_OPACITY_OPAQUE //Clicking anywhere on the turf is good enough - pass_flags = PASSTABLE | PASSGRILLE - max_integrity = 50 - var/energy = 0 - var/datum/spacevine_controller/master = null - var/list/mutations = list() - -/obj/structure/spacevine/Initialize() - . = ..() - add_atom_colour("#ffffff", FIXED_COLOUR_PRIORITY) - -/obj/structure/spacevine/examine(mob/user) - ..() - var/text = "This one is a" - if(mutations.len) - for(var/A in mutations) - var/datum/spacevine_mutation/SM = A - text += " [SM.name]" - else - text += " normal" - text += " vine." - to_chat(user, text) - -/obj/structure/spacevine/Destroy() - for(var/datum/spacevine_mutation/SM in mutations) - SM.on_death(src) - if(master) - master.VineDestroyed(src) - mutations = list() - set_opacity(0) - if(has_buckled_mobs()) - unbuckle_all_mobs(force=1) - return ..() - -/obj/structure/spacevine/proc/on_chem_effect(datum/reagent/R) - var/override = 0 - for(var/datum/spacevine_mutation/SM in mutations) - override += SM.on_chem(src, R) - if(!override && istype(R, /datum/reagent/toxin/plantbgone)) - if(prob(50)) - qdel(src) - -/obj/structure/spacevine/proc/eat(mob/eater) - var/override = 0 - for(var/datum/spacevine_mutation/SM in mutations) - override += SM.on_eat(src, eater) - if(!override) - qdel(src) - -/obj/structure/spacevine/attacked_by(obj/item/I, mob/living/user) - var/damage_dealt = I.force - if(I.is_sharp()) - damage_dealt *= 4 - if(I.damtype == BURN) - damage_dealt *= 4 - - for(var/datum/spacevine_mutation/SM in mutations) - damage_dealt = SM.on_hit(src, user, I, damage_dealt) //on_hit now takes override damage as arg and returns new value for other mutations to permutate further - take_damage(damage_dealt, I.damtype, "melee", 1) - -/obj/structure/spacevine/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) - switch(damage_type) - if(BRUTE) - if(damage_amount) - playsound(src, 'sound/weapons/slash.ogg', 50, 1) - else - playsound(src, 'sound/weapons/tap.ogg', 50, 1) - if(BURN) - playsound(src.loc, 'sound/items/welder.ogg', 100, 1) - -/obj/structure/spacevine/Crossed(mob/crosser) - if(isliving(crosser)) - for(var/datum/spacevine_mutation/SM in mutations) - SM.on_cross(src, crosser) - -//ATTACK HAND IGNORING PARENT RETURN VALUE -/obj/structure/spacevine/attack_hand(mob/user) - for(var/datum/spacevine_mutation/SM in mutations) - SM.on_hit(src, user) - user_unbuckle_mob(user, user) - . = ..() - -/obj/structure/spacevine/attack_paw(mob/living/user) - for(var/datum/spacevine_mutation/SM in mutations) - SM.on_hit(src, user) - user_unbuckle_mob(user,user) - -/obj/structure/spacevine/attack_alien(mob/living/user) - eat(user) - -/datum/spacevine_controller - var/list/obj/structure/spacevine/vines - var/list/growth_queue - var/spread_multiplier = 5 - var/spread_cap = 30 - var/list/vine_mutations_list - var/mutativeness = 1 - -/datum/spacevine_controller/New(turf/location, list/muts, potency, production) - vines = list() - growth_queue = list() - spawn_spacevine_piece(location, null, muts) - START_PROCESSING(SSobj, src) - vine_mutations_list = list() - init_subtypes(/datum/spacevine_mutation/, vine_mutations_list) - if(potency != null) - mutativeness = potency / 10 - if(production != null) - spread_cap *= production / 5 - spread_multiplier /= production / 5 - -/datum/spacevine_controller/vv_get_dropdown() - . = ..() - . += "---" - .["Delete Vines"] = "?_src_=[REF(src)];[HrefToken()];purge_vines=1" - -/datum/spacevine_controller/Topic(href, href_list) - if(..() || !check_rights(R_ADMIN, FALSE) || !usr.client.holder.CheckAdminHref(href, href_list)) - return - - if(href_list["purge_vines"]) - if(alert(usr, "Are you sure you want to delete this spacevine cluster?", "Delete Vines", "Yes", "No") != "Yes") - return - DeleteVines() - -/datum/spacevine_controller/proc/DeleteVines() //this is kill - QDEL_LIST(vines) //this will also qdel us - -/datum/spacevine_controller/Destroy() - STOP_PROCESSING(SSobj, src) - return ..() - -/datum/spacevine_controller/proc/spawn_spacevine_piece(turf/location, obj/structure/spacevine/parent, list/muts) - var/obj/structure/spacevine/SV = new(location) - growth_queue += SV - vines += SV - SV.master = src - if(muts && muts.len) - for(var/datum/spacevine_mutation/M in muts) - M.add_mutation_to_vinepiece(SV) - return - if(parent) - SV.mutations |= parent.mutations - var/parentcolor = parent.atom_colours[FIXED_COLOUR_PRIORITY] - SV.add_atom_colour(parentcolor, FIXED_COLOUR_PRIORITY) - if(prob(mutativeness)) - var/datum/spacevine_mutation/randmut = pick(vine_mutations_list - SV.mutations) - randmut.add_mutation_to_vinepiece(SV) - - for(var/datum/spacevine_mutation/SM in SV.mutations) - SM.on_birth(SV) - location.Entered(SV) - -/datum/spacevine_controller/proc/VineDestroyed(obj/structure/spacevine/S) - S.master = null - vines -= S - growth_queue -= S - if(!vines.len) - var/obj/item/seeds/kudzu/KZ = new(S.loc) - KZ.mutations |= S.mutations - KZ.set_potency(mutativeness * 10) - KZ.set_production((spread_cap / initial(spread_cap)) * 5) - qdel(src) - -/datum/spacevine_controller/process() - if(!LAZYLEN(vines)) - qdel(src) //space vines exterminated. Remove the controller - return - if(!growth_queue) - qdel(src) //Sanity check - return - - var/length = 0 - - length = min( spread_cap , max( 1 , vines.len / spread_multiplier ) ) - var/i = 0 - var/list/obj/structure/spacevine/queue_end = list() - - for(var/obj/structure/spacevine/SV in growth_queue) - if(QDELETED(SV)) - continue - i++ - queue_end += SV - growth_queue -= SV - for(var/datum/spacevine_mutation/SM in SV.mutations) - SM.process_mutation(SV) - if(SV.energy < 2) //If tile isn't fully grown - if(prob(20)) - SV.grow() - else //If tile is fully grown - SV.entangle_mob() - - SV.spread() - if(i >= length) - break - - growth_queue = growth_queue + queue_end - -/obj/structure/spacevine/proc/grow() - if(!energy) - src.icon_state = pick("Med1", "Med2", "Med3") - energy = 1 - set_opacity(1) - else - src.icon_state = pick("Hvy1", "Hvy2", "Hvy3") - energy = 2 - - for(var/datum/spacevine_mutation/SM in mutations) - SM.on_grow(src) - -/obj/structure/spacevine/proc/entangle_mob() - if(!has_buckled_mobs() && prob(25)) - for(var/mob/living/V in src.loc) - entangle(V) - if(has_buckled_mobs()) - break //only capture one mob at a time - - -/obj/structure/spacevine/proc/entangle(mob/living/V) - if(!V || isvineimmune(V)) - return - for(var/datum/spacevine_mutation/SM in mutations) - SM.on_buckle(src, V) - if((V.stat != DEAD) && (V.buckled != src)) //not dead or captured - to_chat(V, "The vines [pick("wind", "tangle", "tighten")] around you!") - buckle_mob(V, 1) - -/obj/structure/spacevine/proc/spread() - var/direction = pick(GLOB.cardinals) - var/turf/stepturf = get_step(src,direction) - if (!isspaceturf(stepturf) && stepturf.Enter(src)) - for(var/datum/spacevine_mutation/SM in mutations) - SM.on_spread(src, stepturf) - stepturf = get_step(src,direction) //in case turf changes, to make sure no runtimes happen - if(!locate(/obj/structure/spacevine, stepturf)) - if(master) - master.spawn_spacevine_piece(stepturf, src) - -/obj/structure/spacevine/ex_act(severity, target) - if(istype(target, type)) //if its agressive spread vine dont do anything - return - var/i - for(var/datum/spacevine_mutation/SM in mutations) - i += SM.on_explosion(severity, target, src) - if(!i && prob(100/severity)) - qdel(src) - -/obj/structure/spacevine/temperature_expose(null, temp, volume) - var/override = 0 - for(var/datum/spacevine_mutation/SM in mutations) - override += SM.process_temperature(src, temp, volume) - if(!override) - qdel(src) - -/obj/structure/spacevine/CanPass(atom/movable/mover, turf/target) - if(isvineimmune(mover)) - . = TRUE - else - . = ..() - -/proc/isvineimmune(atom/A) - . = FALSE - if(isliving(A)) - var/mob/living/M = A - if(("vines" in M.faction) || ("plants" in M.faction)) - . = TRUE +/datum/round_event_control/spacevine + name = "Spacevine" + typepath = /datum/round_event/spacevine + weight = 15 + max_occurrences = 3 + min_players = 10 + +/datum/round_event/spacevine + fakeable = FALSE + +/datum/round_event/spacevine/start() + var/list/turfs = list() //list of all the empty floor turfs in the hallway areas + + var/obj/structure/spacevine/SV = new() + + for(var/area/hallway/A in world) + for(var/turf/F in A) + if(F.Enter(SV)) + turfs += F + + qdel(SV) + + if(turfs.len) //Pick a turf to spawn at if we can + var/turf/T = pick(turfs) + new /datum/spacevine_controller(T) //spawn a controller at turf + + +/datum/spacevine_mutation + var/name = "" + var/severity = 1 + var/hue + var/quality + +/datum/spacevine_mutation/proc/add_mutation_to_vinepiece(obj/structure/spacevine/holder) + holder.mutations |= src + holder.add_atom_colour(hue, FIXED_COLOUR_PRIORITY) + +/datum/spacevine_mutation/proc/process_mutation(obj/structure/spacevine/holder) + return + +/datum/spacevine_mutation/proc/process_temperature(obj/structure/spacevine/holder, temp, volume) + return + +/datum/spacevine_mutation/proc/on_birth(obj/structure/spacevine/holder) + return + +/datum/spacevine_mutation/proc/on_grow(obj/structure/spacevine/holder) + return + +/datum/spacevine_mutation/proc/on_death(obj/structure/spacevine/holder) + return + +/datum/spacevine_mutation/proc/on_hit(obj/structure/spacevine/holder, mob/hitter, obj/item/I, expected_damage) + . = expected_damage + +/datum/spacevine_mutation/proc/on_cross(obj/structure/spacevine/holder, mob/crosser) + return + +/datum/spacevine_mutation/proc/on_chem(obj/structure/spacevine/holder, datum/reagent/R) + return + +/datum/spacevine_mutation/proc/on_eat(obj/structure/spacevine/holder, mob/living/eater) + return + +/datum/spacevine_mutation/proc/on_spread(obj/structure/spacevine/holder, turf/target) + return + +/datum/spacevine_mutation/proc/on_buckle(obj/structure/spacevine/holder, mob/living/buckled) + return + +/datum/spacevine_mutation/proc/on_explosion(severity, target, obj/structure/spacevine/holder) + return + + +/datum/spacevine_mutation/light + name = "light" + hue = "#ffff00" + quality = POSITIVE + severity = 4 + +/datum/spacevine_mutation/light/on_grow(obj/structure/spacevine/holder) + if(holder.energy) + holder.set_light(severity, 0.3) + +/datum/spacevine_mutation/toxicity + name = "toxic" + hue = "#ff00ff" + severity = 10 + quality = NEGATIVE + +/datum/spacevine_mutation/toxicity/on_cross(obj/structure/spacevine/holder, mob/living/crosser) + if(issilicon(crosser)) + return + if(prob(severity) && istype(crosser) && !isvineimmune(crosser)) + to_chat(crosser, "You accidentally touch the vine and feel a strange sensation.") + crosser.adjustToxLoss(5) + +/datum/spacevine_mutation/toxicity/on_eat(obj/structure/spacevine/holder, mob/living/eater) + if(!isvineimmune(eater)) + eater.adjustToxLoss(5) + +/datum/spacevine_mutation/explosive //OH SHIT IT CAN CHAINREACT RUN!!! + name = "explosive" + hue = "#ff0000" + quality = NEGATIVE + severity = 2 + +/datum/spacevine_mutation/explosive/on_explosion(explosion_severity, target, obj/structure/spacevine/holder) + if(explosion_severity < 3) + qdel(holder) + else + . = 1 + QDEL_IN(holder, 5) + +/datum/spacevine_mutation/explosive/on_death(obj/structure/spacevine/holder, mob/hitter, obj/item/I) + explosion(holder.loc, 0, 0, severity, 0, 0) + +/datum/spacevine_mutation/fire_proof + name = "fire proof" + hue = "#ff8888" + quality = MINOR_NEGATIVE + +/datum/spacevine_mutation/fire_proof/process_temperature(obj/structure/spacevine/holder, temp, volume) + return 1 + +/datum/spacevine_mutation/fire_proof/on_hit(obj/structure/spacevine/holder, mob/hitter, obj/item/I, expected_damage) + if(I && I.damtype == "fire") + . = 0 + else + . = expected_damage + +/datum/spacevine_mutation/vine_eating + name = "vine eating" + hue = "#ff7700" + quality = MINOR_NEGATIVE + +/datum/spacevine_mutation/vine_eating/on_spread(obj/structure/spacevine/holder, turf/target) + var/obj/structure/spacevine/prey = locate() in target + if(prey && !prey.mutations.Find(src)) //Eat all vines that are not of the same origin + qdel(prey) + +/datum/spacevine_mutation/aggressive_spread //very OP, but im out of other ideas currently + name = "aggressive spreading" + hue = "#333333" + severity = 3 + quality = NEGATIVE + +/datum/spacevine_mutation/aggressive_spread/on_spread(obj/structure/spacevine/holder, turf/target) + target.ex_act(severity, null, src) // vine immunity handled at /mob/ex_act + +/datum/spacevine_mutation/aggressive_spread/on_buckle(obj/structure/spacevine/holder, mob/living/buckled) + buckled.ex_act(severity, null, src) + +/datum/spacevine_mutation/transparency + name = "transparent" + hue = "" + quality = POSITIVE + +/datum/spacevine_mutation/transparency/on_grow(obj/structure/spacevine/holder) + holder.set_opacity(0) + holder.alpha = 125 + +/datum/spacevine_mutation/oxy_eater + name = "oxygen consuming" + hue = "#ffff88" + severity = 3 + quality = NEGATIVE + +/datum/spacevine_mutation/oxy_eater/process_mutation(obj/structure/spacevine/holder) + var/turf/open/floor/T = holder.loc + if(istype(T)) + var/datum/gas_mixture/GM = T.air + if(!GM.gases[/datum/gas/oxygen]) + return + GM.gases[/datum/gas/oxygen] = max(GM.gases[/datum/gas/oxygen] - severity * holder.energy, 0) + GAS_GARBAGE_COLLECT(GM.gases) + +/datum/spacevine_mutation/nitro_eater + name = "nitrogen consuming" + hue = "#8888ff" + severity = 3 + quality = NEGATIVE + +/datum/spacevine_mutation/nitro_eater/process_mutation(obj/structure/spacevine/holder) + var/turf/open/floor/T = holder.loc + if(istype(T)) + var/datum/gas_mixture/GM = T.air + if(!GM.gases[/datum/gas/nitrogen]) + return + GM.gases[/datum/gas/nitrogen] = max(GM.gases[/datum/gas/nitrogen] - severity * holder.energy, 0) + GAS_GARBAGE_COLLECT(GM.gases) + +/datum/spacevine_mutation/carbondioxide_eater + name = "CO2 consuming" + hue = "#00ffff" + severity = 3 + quality = POSITIVE + +/datum/spacevine_mutation/carbondioxide_eater/process_mutation(obj/structure/spacevine/holder) + var/turf/open/floor/T = holder.loc + if(istype(T)) + var/datum/gas_mixture/GM = T.air + if(!GM.gases[/datum/gas/carbon_dioxide]) + return + GM.gases[/datum/gas/carbon_dioxide] = max(GM.gases[/datum/gas/carbon_dioxide] - severity * holder.energy, 0) + GAS_GARBAGE_COLLECT(GM.gases) + +/datum/spacevine_mutation/plasma_eater + name = "toxins consuming" + hue = "#ffbbff" + severity = 3 + quality = POSITIVE + +/datum/spacevine_mutation/plasma_eater/process_mutation(obj/structure/spacevine/holder) + var/turf/open/floor/T = holder.loc + if(istype(T)) + var/datum/gas_mixture/GM = T.air + if(!GM.gases[/datum/gas/plasma]) + return + GM.gases[/datum/gas/plasma] = max(GM.gases[/datum/gas/plasma] - severity * holder.energy, 0) + GAS_GARBAGE_COLLECT(GM.gases) + +/datum/spacevine_mutation/thorns + name = "thorny" + hue = "#666666" + severity = 10 + quality = NEGATIVE + +/datum/spacevine_mutation/thorns/on_cross(obj/structure/spacevine/holder, mob/living/crosser) + if(prob(severity) && istype(crosser) && !isvineimmune(holder)) + var/mob/living/M = crosser + M.adjustBruteLoss(5) + to_chat(M, "You cut yourself on the thorny vines.") + +/datum/spacevine_mutation/thorns/on_hit(obj/structure/spacevine/holder, mob/living/hitter, obj/item/I, expected_damage) + if(prob(severity) && istype(hitter) && !isvineimmune(holder)) + var/mob/living/M = hitter + M.adjustBruteLoss(5) + to_chat(M, "You cut yourself on the thorny vines.") + . = expected_damage + +/datum/spacevine_mutation/woodening + name = "hardened" + hue = "#997700" + quality = NEGATIVE + +/datum/spacevine_mutation/woodening/on_grow(obj/structure/spacevine/holder) + if(holder.energy) + holder.density = TRUE + holder.max_integrity = 100 + holder.obj_integrity = holder.max_integrity + +/datum/spacevine_mutation/woodening/on_hit(obj/structure/spacevine/holder, mob/living/hitter, obj/item/I, expected_damage) + if(I.is_sharp()) + . = expected_damage * 0.5 + else + . = expected_damage + +/datum/spacevine_mutation/flowering + name = "flowering" + hue = "#0A480D" + quality = NEGATIVE + severity = 10 + +/datum/spacevine_mutation/flowering/on_grow(obj/structure/spacevine/holder) + if(holder.energy == 2 && prob(severity) && !locate(/obj/structure/alien/resin/flower_bud_enemy) in range(5,holder)) + new/obj/structure/alien/resin/flower_bud_enemy(get_turf(holder)) + +/datum/spacevine_mutation/flowering/on_cross(obj/structure/spacevine/holder, mob/living/crosser) + if(prob(25)) + holder.entangle(crosser) + + +// SPACE VINES (Note that this code is very similar to Biomass code) +/obj/structure/spacevine + name = "space vines" + desc = "An extremely expansionistic species of vine." + icon = 'icons/effects/spacevines.dmi' + icon_state = "Light1" + anchored = TRUE + density = FALSE + layer = SPACEVINE_LAYER + mouse_opacity = MOUSE_OPACITY_OPAQUE //Clicking anywhere on the turf is good enough + pass_flags = PASSTABLE | PASSGRILLE + max_integrity = 50 + var/energy = 0 + var/datum/spacevine_controller/master = null + var/list/mutations = list() + +/obj/structure/spacevine/Initialize() + . = ..() + add_atom_colour("#ffffff", FIXED_COLOUR_PRIORITY) + +/obj/structure/spacevine/examine(mob/user) + ..() + var/text = "This one is a" + if(mutations.len) + for(var/A in mutations) + var/datum/spacevine_mutation/SM = A + text += " [SM.name]" + else + text += " normal" + text += " vine." + to_chat(user, text) + +/obj/structure/spacevine/Destroy() + for(var/datum/spacevine_mutation/SM in mutations) + SM.on_death(src) + if(master) + master.VineDestroyed(src) + mutations = list() + set_opacity(0) + if(has_buckled_mobs()) + unbuckle_all_mobs(force=1) + return ..() + +/obj/structure/spacevine/proc/on_chem_effect(datum/reagent/R) + var/override = 0 + for(var/datum/spacevine_mutation/SM in mutations) + override += SM.on_chem(src, R) + if(!override && istype(R, /datum/reagent/toxin/plantbgone)) + if(prob(50)) + qdel(src) + +/obj/structure/spacevine/proc/eat(mob/eater) + var/override = 0 + for(var/datum/spacevine_mutation/SM in mutations) + override += SM.on_eat(src, eater) + if(!override) + qdel(src) + +/obj/structure/spacevine/attacked_by(obj/item/I, mob/living/user) + var/damage_dealt = I.force + if(I.is_sharp()) + damage_dealt *= 4 + if(I.damtype == BURN) + damage_dealt *= 4 + + for(var/datum/spacevine_mutation/SM in mutations) + damage_dealt = SM.on_hit(src, user, I, damage_dealt) //on_hit now takes override damage as arg and returns new value for other mutations to permutate further + take_damage(damage_dealt, I.damtype, "melee", 1) + +/obj/structure/spacevine/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) + switch(damage_type) + if(BRUTE) + if(damage_amount) + playsound(src, 'sound/weapons/slash.ogg', 50, 1) + else + playsound(src, 'sound/weapons/tap.ogg', 50, 1) + if(BURN) + playsound(src.loc, 'sound/items/welder.ogg', 100, 1) + +/obj/structure/spacevine/Crossed(mob/crosser) + if(isliving(crosser)) + for(var/datum/spacevine_mutation/SM in mutations) + SM.on_cross(src, crosser) + +//ATTACK HAND IGNORING PARENT RETURN VALUE +/obj/structure/spacevine/attack_hand(mob/user) + for(var/datum/spacevine_mutation/SM in mutations) + SM.on_hit(src, user) + user_unbuckle_mob(user, user) + . = ..() + +/obj/structure/spacevine/attack_paw(mob/living/user) + for(var/datum/spacevine_mutation/SM in mutations) + SM.on_hit(src, user) + user_unbuckle_mob(user,user) + +/obj/structure/spacevine/attack_alien(mob/living/user) + eat(user) + +/datum/spacevine_controller + var/list/obj/structure/spacevine/vines + var/list/growth_queue + var/spread_multiplier = 5 + var/spread_cap = 30 + var/list/vine_mutations_list + var/mutativeness = 1 + +/datum/spacevine_controller/New(turf/location, list/muts, potency, production) + vines = list() + growth_queue = list() + spawn_spacevine_piece(location, null, muts) + START_PROCESSING(SSobj, src) + vine_mutations_list = list() + init_subtypes(/datum/spacevine_mutation/, vine_mutations_list) + if(potency != null) + mutativeness = potency / 10 + if(production != null) + spread_cap *= production / 5 + spread_multiplier /= production / 5 + +/datum/spacevine_controller/vv_get_dropdown() + . = ..() + . += "---" + .["Delete Vines"] = "?_src_=[REF(src)];[HrefToken()];purge_vines=1" + +/datum/spacevine_controller/Topic(href, href_list) + if(..() || !check_rights(R_ADMIN, FALSE) || !usr.client.holder.CheckAdminHref(href, href_list)) + return + + if(href_list["purge_vines"]) + if(alert(usr, "Are you sure you want to delete this spacevine cluster?", "Delete Vines", "Yes", "No") != "Yes") + return + DeleteVines() + +/datum/spacevine_controller/proc/DeleteVines() //this is kill + QDEL_LIST(vines) //this will also qdel us + +/datum/spacevine_controller/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() + +/datum/spacevine_controller/proc/spawn_spacevine_piece(turf/location, obj/structure/spacevine/parent, list/muts) + var/obj/structure/spacevine/SV = new(location) + growth_queue += SV + vines += SV + SV.master = src + if(muts && muts.len) + for(var/datum/spacevine_mutation/M in muts) + M.add_mutation_to_vinepiece(SV) + return + if(parent) + SV.mutations |= parent.mutations + var/parentcolor = parent.atom_colours[FIXED_COLOUR_PRIORITY] + SV.add_atom_colour(parentcolor, FIXED_COLOUR_PRIORITY) + if(prob(mutativeness)) + var/datum/spacevine_mutation/randmut = pick(vine_mutations_list - SV.mutations) + randmut.add_mutation_to_vinepiece(SV) + + for(var/datum/spacevine_mutation/SM in SV.mutations) + SM.on_birth(SV) + location.Entered(SV) + +/datum/spacevine_controller/proc/VineDestroyed(obj/structure/spacevine/S) + S.master = null + vines -= S + growth_queue -= S + if(!vines.len) + var/obj/item/seeds/kudzu/KZ = new(S.loc) + KZ.mutations |= S.mutations + KZ.set_potency(mutativeness * 10) + KZ.set_production((spread_cap / initial(spread_cap)) * 5) + qdel(src) + +/datum/spacevine_controller/process() + if(!LAZYLEN(vines)) + qdel(src) //space vines exterminated. Remove the controller + return + if(!growth_queue) + qdel(src) //Sanity check + return + + var/length = 0 + + length = min( spread_cap , max( 1 , vines.len / spread_multiplier ) ) + var/i = 0 + var/list/obj/structure/spacevine/queue_end = list() + + for(var/obj/structure/spacevine/SV in growth_queue) + if(QDELETED(SV)) + continue + i++ + queue_end += SV + growth_queue -= SV + for(var/datum/spacevine_mutation/SM in SV.mutations) + SM.process_mutation(SV) + if(SV.energy < 2) //If tile isn't fully grown + if(prob(20)) + SV.grow() + else //If tile is fully grown + SV.entangle_mob() + + SV.spread() + if(i >= length) + break + + growth_queue = growth_queue + queue_end + +/obj/structure/spacevine/proc/grow() + if(!energy) + src.icon_state = pick("Med1", "Med2", "Med3") + energy = 1 + set_opacity(1) + else + src.icon_state = pick("Hvy1", "Hvy2", "Hvy3") + energy = 2 + + for(var/datum/spacevine_mutation/SM in mutations) + SM.on_grow(src) + +/obj/structure/spacevine/proc/entangle_mob() + if(!has_buckled_mobs() && prob(25)) + for(var/mob/living/V in src.loc) + entangle(V) + if(has_buckled_mobs()) + break //only capture one mob at a time + + +/obj/structure/spacevine/proc/entangle(mob/living/V) + if(!V || isvineimmune(V)) + return + for(var/datum/spacevine_mutation/SM in mutations) + SM.on_buckle(src, V) + if((V.stat != DEAD) && (V.buckled != src)) //not dead or captured + to_chat(V, "The vines [pick("wind", "tangle", "tighten")] around you!") + buckle_mob(V, 1) + +/obj/structure/spacevine/proc/spread() + var/direction = pick(GLOB.cardinals) + var/turf/stepturf = get_step(src,direction) + if (!isspaceturf(stepturf) && stepturf.Enter(src)) + for(var/datum/spacevine_mutation/SM in mutations) + SM.on_spread(src, stepturf) + stepturf = get_step(src,direction) //in case turf changes, to make sure no runtimes happen + if(!locate(/obj/structure/spacevine, stepturf)) + if(master) + master.spawn_spacevine_piece(stepturf, src) + +/obj/structure/spacevine/ex_act(severity, target) + if(istype(target, type)) //if its agressive spread vine dont do anything + return + var/i + for(var/datum/spacevine_mutation/SM in mutations) + i += SM.on_explosion(severity, target, src) + if(!i && prob(100/severity)) + qdel(src) + +/obj/structure/spacevine/temperature_expose(null, temp, volume) + var/override = 0 + for(var/datum/spacevine_mutation/SM in mutations) + override += SM.process_temperature(src, temp, volume) + if(!override) + qdel(src) + +/obj/structure/spacevine/CanPass(atom/movable/mover, turf/target) + if(isvineimmune(mover)) + . = TRUE + else + . = ..() + +/proc/isvineimmune(atom/A) + . = FALSE + if(isliving(A)) + var/mob/living/M = A + if(("vines" in M.faction) || ("plants" in M.faction)) + . = TRUE diff --git a/code/modules/integrated_electronics/subtypes/atmospherics.dm b/code/modules/integrated_electronics/subtypes/atmospherics.dm index d9408ca466..7f1705e151 100644 --- a/code/modules/integrated_electronics/subtypes/atmospherics.dm +++ b/code/modules/integrated_electronics/subtypes/atmospherics.dm @@ -1,761 +1,761 @@ -#define SOURCE_TO_TARGET 0 -#define TARGET_TO_SOURCE 1 -#define PUMP_EFFICIENCY 0.6 -#define TANK_FAILURE_PRESSURE (ONE_ATMOSPHERE*25) -#define PUMP_MAX_PRESSURE (ONE_ATMOSPHERE*24) -#define PUMP_MAX_VOLUME 100 - - -/obj/item/integrated_circuit/atmospherics - category_text = "Atmospherics" - cooldown_per_use = 2 SECONDS - complexity = 10 - size = 7 - outputs = list( - "self reference" = IC_PINTYPE_SELFREF, - "pressure" = IC_PINTYPE_NUMBER - ) - var/datum/gas_mixture/air_contents - var/volume = 2 //Pretty small, I know - -/obj/item/integrated_circuit/atmospherics/Initialize() - air_contents = new(volume) - ..() - -/obj/item/integrated_circuit/atmospherics/return_air() - return air_contents - -//Check if the gas container is adjacent and of the right type -/obj/item/integrated_circuit/atmospherics/proc/check_gassource(atom/gasholder) - if(!gasholder) - return FALSE - if(!gasholder.Adjacent(get_object())) - return FALSE - if(!istype(gasholder, /obj/item/tank) && !istype(gasholder, /obj/machinery/portable_atmospherics) && !istype(gasholder, /obj/item/integrated_circuit/atmospherics)) - return FALSE - return TRUE - -//Needed in circuits where source and target types differ -/obj/item/integrated_circuit/atmospherics/proc/check_gastarget(atom/gasholder) - return check_gassource(gasholder) - - -// - gas pump - // **works** -/obj/item/integrated_circuit/atmospherics/pump - name = "gas pump" - desc = "Somehow moves gases between two tanks, canisters, and other gas containers." - spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH - inputs = list( - "source" = IC_PINTYPE_REF, - "target" = IC_PINTYPE_REF, - "target pressure" = IC_PINTYPE_NUMBER - ) - activators = list( - "transfer" = IC_PINTYPE_PULSE_IN, - "on transfer" = IC_PINTYPE_PULSE_OUT - ) - var/direction = SOURCE_TO_TARGET - var/target_pressure = PUMP_MAX_PRESSURE - power_draw_per_use = 20 - -/obj/item/integrated_circuit/atmospherics/pump/Initialize() - air_contents = new(volume) - extended_desc += " Use negative pressure to move air from target to source. \ - Note that only part of the gas is moved on each transfer, \ - so multiple activations will be necessary to achieve target pressure. \ - The pressure limit for circuit pumps is [round(PUMP_MAX_PRESSURE)] kPa." - . = ..() - -// This proc gets the direction of the gas flow depending on its value, by calling update target -/obj/item/integrated_circuit/atmospherics/pump/on_data_written() - var/amt = get_pin_data(IC_INPUT, 3) - update_target(amt) - -/obj/item/integrated_circuit/atmospherics/pump/proc/update_target(new_amount) - if(!isnum(new_amount)) - new_amount = 0 - // See in which direction the gas moves - if(new_amount < 0) - direction = TARGET_TO_SOURCE - else - direction = SOURCE_TO_TARGET - target_pressure = min(round(PUMP_MAX_PRESSURE),abs(new_amount)) - -/obj/item/integrated_circuit/atmospherics/pump/do_work() - var/obj/source = get_pin_data_as_type(IC_INPUT, 1, /obj) - var/obj/target = get_pin_data_as_type(IC_INPUT, 2, /obj) - perform_magic(source, target) - activate_pin(2) - -/obj/item/integrated_circuit/atmospherics/pump/proc/perform_magic(atom/source, atom/target) - //Check if both atoms are of the right type: atmos circuits/gas tanks/canisters. If one is the same, use the circuit var - if(!check_gassource(source)) - source = src - - if(!check_gastarget(target)) - target = src - - // If both are the same, this whole proc would do nothing and just waste performance - if(source == target) - return - - var/datum/gas_mixture/source_air = source.return_air() - var/datum/gas_mixture/target_air = target.return_air() - - if(!source_air || !target_air) - return - - // Swapping both source and target - if(direction == TARGET_TO_SOURCE) - var/temp = source_air - source_air = target_air - target_air = temp - - // If what you are pumping is empty, use the circuit's storage - if(source_air.total_moles() <= 0) - source_air = air_contents - - // Move gas from one place to another - move_gas(source_air, target_air) - air_update_turf() - -/obj/item/integrated_circuit/atmospherics/pump/proc/move_gas(datum/gas_mixture/source_air, datum/gas_mixture/target_air) - - // No moles = nothing to pump - if(source_air.total_moles() <= 0 || target_air.return_pressure() >= PUMP_MAX_PRESSURE) - return - - // Negative Kelvin temperatures should never happen and if they do, normalize them - if(source_air.temperature < TCMB) - source_air.temperature = TCMB - - var/pressure_delta = target_pressure - target_air.return_pressure() - if(pressure_delta > 0.1) - var/transfer_moles = (pressure_delta*target_air.volume/(source_air.temperature * R_IDEAL_GAS_EQUATION))*PUMP_EFFICIENCY - var/datum/gas_mixture/removed = source_air.remove(transfer_moles) - target_air.merge(removed) - - -// - volume pump - // **Works** -/obj/item/integrated_circuit/atmospherics/pump/volume - name = "volume pump" - desc = "Moves gases between two tanks, canisters, and other gas containers by using their volume, up to 200 L/s." - extended_desc = " Use negative volume to move air from target to source. Note that only part of the gas is moved on each transfer. Its maximum pumping volume is capped at 1000kPa." - - spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH - inputs = list( - "source" = IC_PINTYPE_REF, - "target" = IC_PINTYPE_REF, - "transfer volume" = IC_PINTYPE_NUMBER - ) - activators = list( - "transfer" = IC_PINTYPE_PULSE_IN, - "on transfer" = IC_PINTYPE_PULSE_OUT - ) - direction = SOURCE_TO_TARGET - var/transfer_rate = PUMP_MAX_VOLUME - power_draw_per_use = 20 - -/obj/item/integrated_circuit/atmospherics/pump/volume/update_target(new_amount) - if(!isnum(new_amount)) - new_amount = 0 - // See in which direction the gas moves - if(new_amount < 0) - direction = TARGET_TO_SOURCE - else - direction = SOURCE_TO_TARGET - target_pressure = min(PUMP_MAX_VOLUME,abs(new_amount)) - -/obj/item/integrated_circuit/atmospherics/pump/volume/move_gas(datum/gas_mixture/source_air, datum/gas_mixture/target_air) - // No moles = nothing to pump - if(source_air.total_moles() <= 0) - return - - // Negative Kelvin temperatures should never happen and if they do, normalize them - if(source_air.temperature < TCMB) - source_air.temperature = TCMB - - if((source_air.return_pressure() < 0.01) || (target_air.return_pressure() >= PUMP_MAX_PRESSURE)) - return - - //The second part of the min caps the pressure built by the volume pumps to the max pump pressure - var/transfer_ratio = min(transfer_rate,target_air.volume*PUMP_MAX_PRESSURE/source_air.return_pressure())/source_air.volume - - var/datum/gas_mixture/removed = source_air.remove_ratio(transfer_ratio * PUMP_EFFICIENCY) - - target_air.merge(removed) - - -// - gas vent - // **works** -/obj/item/integrated_circuit/atmospherics/pump/vent - name = "gas vent" - extended_desc = "Use negative volume to move air from target to environment. Note that only part of the gas is moved on each transfer. Unlike the gas pump, this one keeps pumping even further to pressures of 9000 pKa and it is not advised to use it on tank circuits." - desc = "Moves gases between the environment and adjacent gas containers." - inputs = list( - "container" = IC_PINTYPE_REF, - "target pressure" = IC_PINTYPE_NUMBER - ) - -/obj/item/integrated_circuit/atmospherics/pump/vent/on_data_written() - var/amt = get_pin_data(IC_INPUT, 2) - update_target(amt) - -/obj/item/integrated_circuit/atmospherics/pump/vent/do_work() - var/turf/source = get_turf(src) - var/obj/target = get_pin_data_as_type(IC_INPUT, 1, /obj) - perform_magic(source, target) - activate_pin(2) - -/obj/item/integrated_circuit/atmospherics/pump/vent/check_gastarget(atom/gasholder) - if(!gasholder) - return FALSE - if(!gasholder.Adjacent(get_object())) - return FALSE - if(!istype(gasholder, /obj/item/tank) && !istype(gasholder, /obj/machinery/portable_atmospherics) && !istype(gasholder, /obj/item/integrated_circuit/atmospherics)) - return FALSE - return TRUE - - -/obj/item/integrated_circuit/atmospherics/pump/vent/check_gassource(atom/target) - if(!target) - return FALSE - if(!istype(target, /turf)) - return FALSE - return TRUE - - -// - integrated connector - // Can connect and disconnect properly -/obj/item/integrated_circuit/atmospherics/connector - name = "integrated connector" - desc = "Creates an airtight seal with standard connectors found on the floor, \ - allowing the assembly to exchange gases with a pipe network." - extended_desc = "This circuit will automatically attempt to locate and connect to ports on the floor beneath it when activated. \ - You must set a target before connecting." - spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH - inputs = list( - "target" = IC_PINTYPE_REF - ) - activators = list( - "toggle connection" = IC_PINTYPE_PULSE_IN, - "on connected" = IC_PINTYPE_PULSE_OUT, - "on connection failed" = IC_PINTYPE_PULSE_OUT, - "on disconnected" = IC_PINTYPE_PULSE_OUT - ) - - var/obj/machinery/atmospherics/components/unary/portables_connector/connector - -/obj/item/integrated_circuit/atmospherics/connector/Initialize() - air_contents = new(volume) - START_PROCESSING(SSobj, src) - . = ..() - -//Sucks up the gas from the connector -/obj/item/integrated_circuit/atmospherics/connector/process() - set_pin_data(IC_OUTPUT, 2, air_contents.return_pressure()) - -/obj/item/integrated_circuit/atmospherics/connector/check_gassource(atom/gasholder) - if(!gasholder) - return FALSE - if(!istype(gasholder,/obj/machinery/atmospherics/components/unary/portables_connector)) - return FALSE - return TRUE - -//If the assembly containing this is moved from the tile the connector pipe is in, the connection breaks -/obj/item/integrated_circuit/atmospherics/connector/ext_moved() - if(connector) - if(get_dist(get_object(), connector) > 0) - // The assembly is set as connected device and the connector handles the rest - connector.connected_device = null - connector = null - activate_pin(4) - -/obj/item/integrated_circuit/atmospherics/connector/do_work() - // If there is a connection, disconnect - if(connector) - connector.connected_device = null - connector = null - activate_pin(4) - return - - var/obj/machinery/atmospherics/components/unary/portables_connector/PC = locate() in get_turf(src) - // If no connector can't connect - if(!PC) - activate_pin(3) - return - connector = PC - connector.connected_device = src - activate_pin(2) - -// Required for making the connector port script work -obj/item/integrated_circuit/atmospherics/connector/portableConnectorReturnAir() - return air_contents - - -// - gas filter - // **works** -/obj/item/integrated_circuit/atmospherics/pump/filter - name = "gas filter" - desc = "Filters one gas out of a mixture." - complexity = 20 - size = 8 - spawn_flags = IC_SPAWN_RESEARCH - inputs = list( - "source" = IC_PINTYPE_REF, - "filtered output" = IC_PINTYPE_REF, - "contaminants output" = IC_PINTYPE_REF, - "wanted gases" = IC_PINTYPE_LIST, - "target pressure" = IC_PINTYPE_NUMBER - ) - power_draw_per_use = 30 - -/obj/item/integrated_circuit/atmospherics/pump/filter/on_data_written() - var/amt = get_pin_data(IC_INPUT, 5) - target_pressure = CLAMP(amt, 0, PUMP_MAX_PRESSURE) - -/obj/item/integrated_circuit/atmospherics/pump/filter/do_work() - activate_pin(2) - var/obj/source = get_pin_data_as_type(IC_INPUT, 1, /obj) - var/obj/filtered = get_pin_data_as_type(IC_INPUT, 2, /obj) - var/obj/contaminants = get_pin_data_as_type(IC_INPUT, 3, /obj) - - var/wanted = get_pin_data(IC_INPUT, 4) - - // If there is no filtered output, this whole thing makes no sense - if(!check_gassource(filtered)) - return - - var/datum/gas_mixture/filtered_air = filtered.return_air() - if(!filtered_air) - return - - // If no source is set, the source is possibly this circuit's content - if(!check_gassource(source)) - source = src - var/datum/gas_mixture/source_air = source.return_air() - - //No source air: source is this circuit - if(!source_air) - source_air = air_contents - - // If no filtering tank is set, filter through itself - if(!check_gassource(contaminants)) - contaminants = src - var/datum/gas_mixture/contaminated_air = contaminants.return_air() - - //If there is no gas mixture datum for unfiltered, pump the contaminants back into the circuit - if(!contaminated_air) - contaminated_air = air_contents - - if(contaminated_air.return_pressure() >= PUMP_MAX_PRESSURE || filtered_air.return_pressure() >= PUMP_MAX_PRESSURE) - return - - var/pressure_delta = target_pressure - contaminated_air.return_pressure() - var/transfer_moles - - //Negative Kelvins are an anomaly and should be normalized if encountered - if(source_air.temperature < TCMB) - source_air.temperature = TCMB - - transfer_moles = (pressure_delta*contaminated_air.volume/(source_air.temperature * R_IDEAL_GAS_EQUATION))*PUMP_EFFICIENCY - - //If there is nothing to transfer, just return - if(transfer_moles <= 0) - return - - //This is the var that holds the currently filtered part of the gas - var/datum/gas_mixture/removed = source_air.remove(transfer_moles) - if(!removed) - return - - //This is the gas that will be moved from source to filtered - var/datum/gas_mixture/filtered_out = new - - for(var/filtered_gas in removed.gases) - //Get the name of the gas and see if it is in the list - if(GLOB.meta_gas_info[filtered_gas][META_GAS_NAME] in wanted) - //The gas that is put in all the filtered out gases - filtered_out.temperature = removed.temperature - filtered_out.gases[filtered_gas] = removed.gases[filtered_gas] - - //The filtered out gas is entirely removed from the currently filtered gases - removed.gases[filtered_gas] = 0 - removed.garbage_collect() - - //Check if the pressure is high enough to put stuff in filtered, or else just put it back in the source - var/datum/gas_mixture/target = (filtered_air.return_pressure() < target_pressure ? filtered_air : source_air) - target.merge(filtered_out) - contaminated_air.merge(removed) - - -/obj/item/integrated_circuit/atmospherics/pump/filter/Initialize() - air_contents = new(volume) - . = ..() - extended_desc = "Remember to properly spell and capitalize the filtered gas name. \ - Note that only part of the gas is moved on each transfer, \ - so multiple activations will be necessary to achieve target pressure. \ - The pressure limit for circuit pumps is [round(PUMP_MAX_PRESSURE)] kPa." - - -// - gas mixer - // **works** -/obj/item/integrated_circuit/atmospherics/pump/mixer - name = "gas mixer" - desc = "Mixes 2 different types of gases." - complexity = 20 - size = 8 - spawn_flags = IC_SPAWN_RESEARCH - inputs = list( - "first source" = IC_PINTYPE_REF, - "second source" = IC_PINTYPE_REF, - "output" = IC_PINTYPE_REF, - "first source percentage" = IC_PINTYPE_NUMBER, - "target pressure" = IC_PINTYPE_NUMBER - ) - power_draw_per_use = 30 - -/obj/item/integrated_circuit/atmospherics/pump/mixer/do_work() - activate_pin(2) - var/obj/source_1 = get_pin_data(IC_INPUT, 1) - var/obj/source_2 = get_pin_data(IC_INPUT, 2) - var/obj/gas_output = get_pin_data(IC_INPUT, 3) - if(!check_gassource(source_1)) - source_1 = src - - if(!check_gassource(source_2)) - source_2 = src - - if(!check_gassource(gas_output)) - gas_output = src - - if(source_1 == gas_output || source_2 == gas_output) - return - - var/datum/gas_mixture/source_1_gases = source_1.return_air() - var/datum/gas_mixture/source_2_gases = source_2.return_air() - var/datum/gas_mixture/output_gases = gas_output.return_air() - - if(!source_1_gases || !source_2_gases || !output_gases) - return - - if(output_gases.return_pressure() >= PUMP_MAX_PRESSURE) - return - - if(source_1_gases.return_pressure() <= 0 || source_2_gases.return_pressure() <= 0) - return - - //This calculates how much should be sent - var/gas_percentage = round(max(min(get_pin_data(IC_INPUT, 4),100),0) / 100) - - //Basically: number of moles = percentage of pressure filled up * efficiency coefficient * (pressure from both gases * volume of output) / (R * Temperature) - var/transfer_moles = (get_pin_data(IC_INPUT, 5) / max(1,output_gases.return_pressure())) * PUMP_EFFICIENCY * (source_1_gases.return_pressure() * gas_percentage + source_2_gases.return_pressure() * (1 - gas_percentage)) * output_gases.volume/ (R_IDEAL_GAS_EQUATION * max(output_gases.temperature,TCMB)) - - - if(transfer_moles <= 0) - return - - var/datum/gas_mixture/mix = source_1_gases.remove(transfer_moles * gas_percentage) - output_gases.merge(mix) - mix = source_2_gases.remove(transfer_moles * (1-gas_percentage)) - output_gases.merge(mix) - - -// - integrated tank - // **works** -/obj/item/integrated_circuit/atmospherics/tank - name = "integrated tank" - desc = "A small tank for the storage of gases." - spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH - size = 4 - activators = list( - "push ref" = IC_PINTYPE_PULSE_IN - ) - volume = 3 //emergency tank sized - var/broken = FALSE - -/obj/item/integrated_circuit/atmospherics/tank/Initialize() - air_contents = new(volume) - START_PROCESSING(SSobj, src) - extended_desc = "Take care not to pressurize it above [round(TANK_FAILURE_PRESSURE)] kPa, or else it will break." - . = ..() - -/obj/item/integrated_circuit/atmospherics/tank/Destroy() - STOP_PROCESSING(SSobj, src) - . = ..() - -/obj/item/integrated_circuit/atmospherics/tank/do_work() - set_pin_data(IC_OUTPUT, 1, WEAKREF(src)) - push_data() - -/obj/item/integrated_circuit/atmospherics/tank/process() - var/tank_pressure = air_contents.return_pressure() - set_pin_data(IC_OUTPUT, 2, tank_pressure) - push_data() - - //Check if tank broken - if(!broken && tank_pressure > TANK_FAILURE_PRESSURE) - broken = TRUE - to_chat(view(2),"The [name] ruptures, releasing its gases!") - if(broken) - release() - -/obj/item/integrated_circuit/atmospherics/tank/proc/release() - if(air_contents.total_moles() > 0) - playsound(loc, 'sound/effects/spray.ogg', 10, 1, -3) - var/datum/gas_mixture/expelled_gas = air_contents.remove(air_contents.total_moles()) - var/turf/current_turf = get_turf(src) - var/datum/gas_mixture/exterior_gas - if(!current_turf) - return - - exterior_gas = current_turf.return_air() - exterior_gas.merge(expelled_gas) - - -// - large integrated tank - // **works** -/obj/item/integrated_circuit/atmospherics/tank/large - name = "large integrated tank" - desc = "A less small tank for the storage of gases." - volume = 9 - size = 12 - spawn_flags = IC_SPAWN_RESEARCH - - -// - freezer tank - // **works** -/obj/item/integrated_circuit/atmospherics/tank/freezer - name = "freezer tank" - desc = "Cools the gas it contains to a preset temperature." - volume = 6 - size = 8 - inputs = list( - "target temperature" = IC_PINTYPE_NUMBER, - "on" = IC_PINTYPE_BOOLEAN - ) - inputs_default = list("1" = 300) - spawn_flags = IC_SPAWN_RESEARCH - var/temperature = 293.15 - var/heater_coefficient = 0.1 - -/obj/item/integrated_circuit/atmospherics/tank/freezer/on_data_written() - temperature = max(73.15,min(293.15,get_pin_data(IC_INPUT, 1))) - if(get_pin_data(IC_INPUT, 2)) - power_draw_idle = 30 - else - power_draw_idle = 0 - -/obj/item/integrated_circuit/atmospherics/tank/freezer/process() - var/tank_pressure = air_contents.return_pressure() - set_pin_data(IC_OUTPUT, 2, tank_pressure) - push_data() - - //Cool the tank if the power is on and the temp is above - if(!power_draw_idle || air_contents.temperature < temperature) - return - - air_contents.temperature = max(73.15,air_contents.temperature - (air_contents.temperature - temperature) * heater_coefficient) - - -// - heater tank - // **works** -/obj/item/integrated_circuit/atmospherics/tank/freezer/heater - name = "heater tank" - desc = "Heats the gas it contains to a preset temperature." - volume = 6 - inputs = list( - "target temperature" = IC_PINTYPE_NUMBER, - "on" = IC_PINTYPE_BOOLEAN - ) - spawn_flags = IC_SPAWN_RESEARCH - -/obj/item/integrated_circuit/atmospherics/tank/freezer/heater/on_data_written() - temperature = max(293.15,min(573.15,get_pin_data(IC_INPUT, 1))) - if(get_pin_data(IC_INPUT, 2)) - power_draw_idle = 30 - else - power_draw_idle = 0 - -/obj/item/integrated_circuit/atmospherics/tank/freezer/heater/process() - var/tank_pressure = air_contents.return_pressure() - set_pin_data(IC_OUTPUT, 2, tank_pressure) - push_data() - - //Heat the tank if the power is on or its temperature is below what is set - if(!power_draw_idle || air_contents.temperature > temperature) - return - - air_contents.temperature = min(573.15,air_contents.temperature + (temperature - air_contents.temperature) * heater_coefficient) - - -// - atmospheric cooler - // **works** -/obj/item/integrated_circuit/atmospherics/cooler - name = "atmospheric cooler circuit" - desc = "Cools the air around it." - volume = 6 - size = 13 - spawn_flags = IC_SPAWN_RESEARCH - inputs = list( - "target temperature" = IC_PINTYPE_NUMBER, - "on" = IC_PINTYPE_BOOLEAN - ) - var/temperature = 293.15 - var/heater_coefficient = 0.1 - -/obj/item/integrated_circuit/atmospherics/cooler/Initialize() - air_contents = new(volume) - START_PROCESSING(SSobj, src) - . = ..() - -/obj/item/integrated_circuit/atmospherics/cooler/Destroy() - STOP_PROCESSING(SSobj, src) - . = ..() - -/obj/item/integrated_circuit/atmospherics/cooler/on_data_written() - temperature = max(243.15,min(293.15,get_pin_data(IC_INPUT, 1))) - if(get_pin_data(IC_INPUT, 2)) - power_draw_idle = 30 - else - power_draw_idle = 0 - -/obj/item/integrated_circuit/atmospherics/cooler/process() - set_pin_data(IC_OUTPUT, 2, air_contents.return_pressure()) - push_data() - - - //Get the turf you're on and its gas mixture - var/turf/current_turf = get_turf(src) - if(!current_turf) - return - - var/datum/gas_mixture/turf_air = current_turf.return_air() - if(!power_draw_idle || turf_air.temperature < temperature) - return - - //Cool the gas - turf_air.temperature = max(243.15,turf_air.temperature - (turf_air.temperature - temperature) * heater_coefficient) - - -// - atmospheric heater - // **works** -/obj/item/integrated_circuit/atmospherics/cooler/heater - name = "atmospheric heater circuit" - desc = "Heats the air around it." - -/obj/item/integrated_circuit/atmospherics/cooler/heater/on_data_written() - temperature = max(293.15,min(323.15,get_pin_data(IC_INPUT, 1))) - if(get_pin_data(IC_INPUT, 2)) - power_draw_idle = 30 - else - power_draw_idle = 0 - -/obj/item/integrated_circuit/atmospherics/cooler/heater/process() - set_pin_data(IC_OUTPUT, 2, air_contents.return_pressure()) - push_data() - - //Get the turf and its air mixture - var/turf/current_turf = get_turf(src) - if(!current_turf) - return - - var/datum/gas_mixture/turf_air = current_turf.return_air() - if(!power_draw_idle || turf_air.temperature > temperature) - return - - //Heat the gas - turf_air.temperature = min(323.15,turf_air.temperature + (temperature - turf_air.temperature) * heater_coefficient) - - -// - tank slot - // **works** -/obj/item/integrated_circuit/input/tank_slot - category_text = "Atmospherics" - cooldown_per_use = 1 - name = "tank slot" - desc = "Lets you add a tank to your assembly and remove it even when the assembly is closed." - extended_desc = "It can help you extract gases easier." - complexity = 25 - size = 30 - inputs = list() - outputs = list( - "pressure used" = IC_PINTYPE_NUMBER, - "current tank" = IC_PINTYPE_REF - ) - activators = list( - "push ref" = IC_PINTYPE_PULSE_IN, - "on insert" = IC_PINTYPE_PULSE_OUT, - "on remove" = IC_PINTYPE_PULSE_OUT - ) - spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH - - can_be_asked_input = TRUE - demands_object_input = TRUE - can_input_object_when_closed = TRUE - - var/obj/item/tank/internals/current_tank - -/obj/item/integrated_circuit/input/tank_slot/Initialize() - START_PROCESSING(SSobj, src) - . = ..() - -/obj/item/integrated_circuit/input/tank_slot/process() - push_pressure() - -/obj/item/integrated_circuit/input/tank_slot/attackby(var/obj/item/tank/internals/I, var/mob/living/user) - //Check if it truly is a tank - if(!istype(I,/obj/item/tank/internals)) - to_chat(user,"The [I.name] doesn't seem to fit in here.") - return - - //Check if there is no other tank already inside - if(current_tank) - to_chat(user,"There is already a gas tank inside.") - return - - //The current tank is the one we just attached, its location is inside the circuit - current_tank = I - user.transferItemToLoc(I,src) - to_chat(user,"You put the [I.name] inside the tank slot.") - - //Set the pin to a weak reference of the current tank - push_pressure() - set_pin_data(IC_OUTPUT, 2, WEAKREF(current_tank)) - push_data() - do_work(1) - - -/obj/item/integrated_circuit/input/tank_slot/ask_for_input(mob/user) - attack_self(user) - -/obj/item/integrated_circuit/input/tank_slot/attack_self(mob/user) - //Check if no tank attached - if(!current_tank) - to_chat(user, "There is currently no tank attached.") - return - - //Remove tank and put in user's hands/location - to_chat(user, "You take [current_tank] out of the tank slot.") - user.put_in_hands(current_tank) - current_tank = null - - //Remove tank reference - push_pressure() - set_pin_data(IC_OUTPUT, 2, null) - push_data() - do_work(2) - -/obj/item/integrated_circuit/input/tank_slot/do_work() - set_pin_data(IC_OUTPUT, 2, WEAKREF(current_tank)) - push_data() - -/obj/item/integrated_circuit/input/tank_slot/proc/push_pressure() - if(!current_tank) - set_pin_data(IC_OUTPUT, 1, 0) - return - - var/datum/gas_mixture/tank_air = current_tank.return_air() - if(!tank_air) - set_pin_data(IC_OUTPUT, 1, 0) - return - - set_pin_data(IC_OUTPUT, 1, tank_air.return_pressure()) - push_data() - - -#undef SOURCE_TO_TARGET -#undef TARGET_TO_SOURCE -#undef PUMP_EFFICIENCY -#undef TANK_FAILURE_PRESSURE -#undef PUMP_MAX_PRESSURE -#undef PUMP_MAX_VOLUME +#define SOURCE_TO_TARGET 0 +#define TARGET_TO_SOURCE 1 +#define PUMP_EFFICIENCY 0.6 +#define TANK_FAILURE_PRESSURE (ONE_ATMOSPHERE*25) +#define PUMP_MAX_PRESSURE (ONE_ATMOSPHERE*24) +#define PUMP_MAX_VOLUME 100 + + +/obj/item/integrated_circuit/atmospherics + category_text = "Atmospherics" + cooldown_per_use = 2 SECONDS + complexity = 10 + size = 7 + outputs = list( + "self reference" = IC_PINTYPE_SELFREF, + "pressure" = IC_PINTYPE_NUMBER + ) + var/datum/gas_mixture/air_contents + var/volume = 2 //Pretty small, I know + +/obj/item/integrated_circuit/atmospherics/Initialize() + air_contents = new(volume) + ..() + +/obj/item/integrated_circuit/atmospherics/return_air() + return air_contents + +//Check if the gas container is adjacent and of the right type +/obj/item/integrated_circuit/atmospherics/proc/check_gassource(atom/gasholder) + if(!gasholder) + return FALSE + if(!gasholder.Adjacent(get_object())) + return FALSE + if(!istype(gasholder, /obj/item/tank) && !istype(gasholder, /obj/machinery/portable_atmospherics) && !istype(gasholder, /obj/item/integrated_circuit/atmospherics)) + return FALSE + return TRUE + +//Needed in circuits where source and target types differ +/obj/item/integrated_circuit/atmospherics/proc/check_gastarget(atom/gasholder) + return check_gassource(gasholder) + + +// - gas pump - // **works** +/obj/item/integrated_circuit/atmospherics/pump + name = "gas pump" + desc = "Somehow moves gases between two tanks, canisters, and other gas containers." + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + inputs = list( + "source" = IC_PINTYPE_REF, + "target" = IC_PINTYPE_REF, + "target pressure" = IC_PINTYPE_NUMBER + ) + activators = list( + "transfer" = IC_PINTYPE_PULSE_IN, + "on transfer" = IC_PINTYPE_PULSE_OUT + ) + var/direction = SOURCE_TO_TARGET + var/target_pressure = PUMP_MAX_PRESSURE + power_draw_per_use = 20 + +/obj/item/integrated_circuit/atmospherics/pump/Initialize() + air_contents = new(volume) + extended_desc += " Use negative pressure to move air from target to source. \ + Note that only part of the gas is moved on each transfer, \ + so multiple activations will be necessary to achieve target pressure. \ + The pressure limit for circuit pumps is [round(PUMP_MAX_PRESSURE)] kPa." + . = ..() + +// This proc gets the direction of the gas flow depending on its value, by calling update target +/obj/item/integrated_circuit/atmospherics/pump/on_data_written() + var/amt = get_pin_data(IC_INPUT, 3) + update_target(amt) + +/obj/item/integrated_circuit/atmospherics/pump/proc/update_target(new_amount) + if(!isnum(new_amount)) + new_amount = 0 + // See in which direction the gas moves + if(new_amount < 0) + direction = TARGET_TO_SOURCE + else + direction = SOURCE_TO_TARGET + target_pressure = min(round(PUMP_MAX_PRESSURE),abs(new_amount)) + +/obj/item/integrated_circuit/atmospherics/pump/do_work() + var/obj/source = get_pin_data_as_type(IC_INPUT, 1, /obj) + var/obj/target = get_pin_data_as_type(IC_INPUT, 2, /obj) + perform_magic(source, target) + activate_pin(2) + +/obj/item/integrated_circuit/atmospherics/pump/proc/perform_magic(atom/source, atom/target) + //Check if both atoms are of the right type: atmos circuits/gas tanks/canisters. If one is the same, use the circuit var + if(!check_gassource(source)) + source = src + + if(!check_gastarget(target)) + target = src + + // If both are the same, this whole proc would do nothing and just waste performance + if(source == target) + return + + var/datum/gas_mixture/source_air = source.return_air() + var/datum/gas_mixture/target_air = target.return_air() + + if(!source_air || !target_air) + return + + // Swapping both source and target + if(direction == TARGET_TO_SOURCE) + var/temp = source_air + source_air = target_air + target_air = temp + + // If what you are pumping is empty, use the circuit's storage + if(source_air.total_moles() <= 0) + source_air = air_contents + + // Move gas from one place to another + move_gas(source_air, target_air) + air_update_turf() + +/obj/item/integrated_circuit/atmospherics/pump/proc/move_gas(datum/gas_mixture/source_air, datum/gas_mixture/target_air) + + // No moles = nothing to pump + if(source_air.total_moles() <= 0 || target_air.return_pressure() >= PUMP_MAX_PRESSURE) + return + + // Negative Kelvin temperatures should never happen and if they do, normalize them + if(source_air.temperature < TCMB) + source_air.temperature = TCMB + + var/pressure_delta = target_pressure - target_air.return_pressure() + if(pressure_delta > 0.1) + var/transfer_moles = (pressure_delta*target_air.volume/(source_air.temperature * R_IDEAL_GAS_EQUATION))*PUMP_EFFICIENCY + var/datum/gas_mixture/removed = source_air.remove(transfer_moles) + target_air.merge(removed) + + +// - volume pump - // **Works** +/obj/item/integrated_circuit/atmospherics/pump/volume + name = "volume pump" + desc = "Moves gases between two tanks, canisters, and other gas containers by using their volume, up to 200 L/s." + extended_desc = " Use negative volume to move air from target to source. Note that only part of the gas is moved on each transfer. Its maximum pumping volume is capped at 1000kPa." + + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + inputs = list( + "source" = IC_PINTYPE_REF, + "target" = IC_PINTYPE_REF, + "transfer volume" = IC_PINTYPE_NUMBER + ) + activators = list( + "transfer" = IC_PINTYPE_PULSE_IN, + "on transfer" = IC_PINTYPE_PULSE_OUT + ) + direction = SOURCE_TO_TARGET + var/transfer_rate = PUMP_MAX_VOLUME + power_draw_per_use = 20 + +/obj/item/integrated_circuit/atmospherics/pump/volume/update_target(new_amount) + if(!isnum(new_amount)) + new_amount = 0 + // See in which direction the gas moves + if(new_amount < 0) + direction = TARGET_TO_SOURCE + else + direction = SOURCE_TO_TARGET + target_pressure = min(PUMP_MAX_VOLUME,abs(new_amount)) + +/obj/item/integrated_circuit/atmospherics/pump/volume/move_gas(datum/gas_mixture/source_air, datum/gas_mixture/target_air) + // No moles = nothing to pump + if(source_air.total_moles() <= 0) + return + + // Negative Kelvin temperatures should never happen and if they do, normalize them + if(source_air.temperature < TCMB) + source_air.temperature = TCMB + + if((source_air.return_pressure() < 0.01) || (target_air.return_pressure() >= PUMP_MAX_PRESSURE)) + return + + //The second part of the min caps the pressure built by the volume pumps to the max pump pressure + var/transfer_ratio = min(transfer_rate,target_air.volume*PUMP_MAX_PRESSURE/source_air.return_pressure())/source_air.volume + + var/datum/gas_mixture/removed = source_air.remove_ratio(transfer_ratio * PUMP_EFFICIENCY) + + target_air.merge(removed) + + +// - gas vent - // **works** +/obj/item/integrated_circuit/atmospherics/pump/vent + name = "gas vent" + extended_desc = "Use negative volume to move air from target to environment. Note that only part of the gas is moved on each transfer. Unlike the gas pump, this one keeps pumping even further to pressures of 9000 pKa and it is not advised to use it on tank circuits." + desc = "Moves gases between the environment and adjacent gas containers." + inputs = list( + "container" = IC_PINTYPE_REF, + "target pressure" = IC_PINTYPE_NUMBER + ) + +/obj/item/integrated_circuit/atmospherics/pump/vent/on_data_written() + var/amt = get_pin_data(IC_INPUT, 2) + update_target(amt) + +/obj/item/integrated_circuit/atmospherics/pump/vent/do_work() + var/turf/source = get_turf(src) + var/obj/target = get_pin_data_as_type(IC_INPUT, 1, /obj) + perform_magic(source, target) + activate_pin(2) + +/obj/item/integrated_circuit/atmospherics/pump/vent/check_gastarget(atom/gasholder) + if(!gasholder) + return FALSE + if(!gasholder.Adjacent(get_object())) + return FALSE + if(!istype(gasholder, /obj/item/tank) && !istype(gasholder, /obj/machinery/portable_atmospherics) && !istype(gasholder, /obj/item/integrated_circuit/atmospherics)) + return FALSE + return TRUE + + +/obj/item/integrated_circuit/atmospherics/pump/vent/check_gassource(atom/target) + if(!target) + return FALSE + if(!istype(target, /turf)) + return FALSE + return TRUE + + +// - integrated connector - // Can connect and disconnect properly +/obj/item/integrated_circuit/atmospherics/connector + name = "integrated connector" + desc = "Creates an airtight seal with standard connectors found on the floor, \ + allowing the assembly to exchange gases with a pipe network." + extended_desc = "This circuit will automatically attempt to locate and connect to ports on the floor beneath it when activated. \ + You must set a target before connecting." + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + inputs = list( + "target" = IC_PINTYPE_REF + ) + activators = list( + "toggle connection" = IC_PINTYPE_PULSE_IN, + "on connected" = IC_PINTYPE_PULSE_OUT, + "on connection failed" = IC_PINTYPE_PULSE_OUT, + "on disconnected" = IC_PINTYPE_PULSE_OUT + ) + + var/obj/machinery/atmospherics/components/unary/portables_connector/connector + +/obj/item/integrated_circuit/atmospherics/connector/Initialize() + air_contents = new(volume) + START_PROCESSING(SSobj, src) + . = ..() + +//Sucks up the gas from the connector +/obj/item/integrated_circuit/atmospherics/connector/process() + set_pin_data(IC_OUTPUT, 2, air_contents.return_pressure()) + +/obj/item/integrated_circuit/atmospherics/connector/check_gassource(atom/gasholder) + if(!gasholder) + return FALSE + if(!istype(gasholder,/obj/machinery/atmospherics/components/unary/portables_connector)) + return FALSE + return TRUE + +//If the assembly containing this is moved from the tile the connector pipe is in, the connection breaks +/obj/item/integrated_circuit/atmospherics/connector/ext_moved() + if(connector) + if(get_dist(get_object(), connector) > 0) + // The assembly is set as connected device and the connector handles the rest + connector.connected_device = null + connector = null + activate_pin(4) + +/obj/item/integrated_circuit/atmospherics/connector/do_work() + // If there is a connection, disconnect + if(connector) + connector.connected_device = null + connector = null + activate_pin(4) + return + + var/obj/machinery/atmospherics/components/unary/portables_connector/PC = locate() in get_turf(src) + // If no connector can't connect + if(!PC) + activate_pin(3) + return + connector = PC + connector.connected_device = src + activate_pin(2) + +// Required for making the connector port script work +obj/item/integrated_circuit/atmospherics/connector/portableConnectorReturnAir() + return air_contents + + +// - gas filter - // **works** +/obj/item/integrated_circuit/atmospherics/pump/filter + name = "gas filter" + desc = "Filters one gas out of a mixture." + complexity = 20 + size = 8 + spawn_flags = IC_SPAWN_RESEARCH + inputs = list( + "source" = IC_PINTYPE_REF, + "filtered output" = IC_PINTYPE_REF, + "contaminants output" = IC_PINTYPE_REF, + "wanted gases" = IC_PINTYPE_LIST, + "target pressure" = IC_PINTYPE_NUMBER + ) + power_draw_per_use = 30 + +/obj/item/integrated_circuit/atmospherics/pump/filter/on_data_written() + var/amt = get_pin_data(IC_INPUT, 5) + target_pressure = CLAMP(amt, 0, PUMP_MAX_PRESSURE) + +/obj/item/integrated_circuit/atmospherics/pump/filter/do_work() + activate_pin(2) + var/obj/source = get_pin_data_as_type(IC_INPUT, 1, /obj) + var/obj/filtered = get_pin_data_as_type(IC_INPUT, 2, /obj) + var/obj/contaminants = get_pin_data_as_type(IC_INPUT, 3, /obj) + + var/wanted = get_pin_data(IC_INPUT, 4) + + // If there is no filtered output, this whole thing makes no sense + if(!check_gassource(filtered)) + return + + var/datum/gas_mixture/filtered_air = filtered.return_air() + if(!filtered_air) + return + + // If no source is set, the source is possibly this circuit's content + if(!check_gassource(source)) + source = src + var/datum/gas_mixture/source_air = source.return_air() + + //No source air: source is this circuit + if(!source_air) + source_air = air_contents + + // If no filtering tank is set, filter through itself + if(!check_gassource(contaminants)) + contaminants = src + var/datum/gas_mixture/contaminated_air = contaminants.return_air() + + //If there is no gas mixture datum for unfiltered, pump the contaminants back into the circuit + if(!contaminated_air) + contaminated_air = air_contents + + if(contaminated_air.return_pressure() >= PUMP_MAX_PRESSURE || filtered_air.return_pressure() >= PUMP_MAX_PRESSURE) + return + + var/pressure_delta = target_pressure - contaminated_air.return_pressure() + var/transfer_moles + + //Negative Kelvins are an anomaly and should be normalized if encountered + if(source_air.temperature < TCMB) + source_air.temperature = TCMB + + transfer_moles = (pressure_delta*contaminated_air.volume/(source_air.temperature * R_IDEAL_GAS_EQUATION))*PUMP_EFFICIENCY + + //If there is nothing to transfer, just return + if(transfer_moles <= 0) + return + + //This is the var that holds the currently filtered part of the gas + var/datum/gas_mixture/removed = source_air.remove(transfer_moles) + if(!removed) + return + + //This is the gas that will be moved from source to filtered + var/datum/gas_mixture/filtered_out = new + + for(var/filtered_gas in removed.gases) + //Get the name of the gas and see if it is in the list + if(GLOB.meta_gas_info[filtered_gas][META_GAS_NAME] in wanted) + //The gas that is put in all the filtered out gases + filtered_out.temperature = removed.temperature + filtered_out.gases[filtered_gas] = removed.gases[filtered_gas] + + //The filtered out gas is entirely removed from the currently filtered gases + removed.gases[filtered_gas] = 0 + GAS_GARBAGE_COLLECT(removed.gases) + + //Check if the pressure is high enough to put stuff in filtered, or else just put it back in the source + var/datum/gas_mixture/target = (filtered_air.return_pressure() < target_pressure ? filtered_air : source_air) + target.merge(filtered_out) + contaminated_air.merge(removed) + + +/obj/item/integrated_circuit/atmospherics/pump/filter/Initialize() + air_contents = new(volume) + . = ..() + extended_desc = "Remember to properly spell and capitalize the filtered gas name. \ + Note that only part of the gas is moved on each transfer, \ + so multiple activations will be necessary to achieve target pressure. \ + The pressure limit for circuit pumps is [round(PUMP_MAX_PRESSURE)] kPa." + + +// - gas mixer - // **works** +/obj/item/integrated_circuit/atmospherics/pump/mixer + name = "gas mixer" + desc = "Mixes 2 different types of gases." + complexity = 20 + size = 8 + spawn_flags = IC_SPAWN_RESEARCH + inputs = list( + "first source" = IC_PINTYPE_REF, + "second source" = IC_PINTYPE_REF, + "output" = IC_PINTYPE_REF, + "first source percentage" = IC_PINTYPE_NUMBER, + "target pressure" = IC_PINTYPE_NUMBER + ) + power_draw_per_use = 30 + +/obj/item/integrated_circuit/atmospherics/pump/mixer/do_work() + activate_pin(2) + var/obj/source_1 = get_pin_data(IC_INPUT, 1) + var/obj/source_2 = get_pin_data(IC_INPUT, 2) + var/obj/gas_output = get_pin_data(IC_INPUT, 3) + if(!check_gassource(source_1)) + source_1 = src + + if(!check_gassource(source_2)) + source_2 = src + + if(!check_gassource(gas_output)) + gas_output = src + + if(source_1 == gas_output || source_2 == gas_output) + return + + var/datum/gas_mixture/source_1_gases = source_1.return_air() + var/datum/gas_mixture/source_2_gases = source_2.return_air() + var/datum/gas_mixture/output_gases = gas_output.return_air() + + if(!source_1_gases || !source_2_gases || !output_gases) + return + + if(output_gases.return_pressure() >= PUMP_MAX_PRESSURE) + return + + if(source_1_gases.return_pressure() <= 0 || source_2_gases.return_pressure() <= 0) + return + + //This calculates how much should be sent + var/gas_percentage = round(max(min(get_pin_data(IC_INPUT, 4),100),0) / 100) + + //Basically: number of moles = percentage of pressure filled up * efficiency coefficient * (pressure from both gases * volume of output) / (R * Temperature) + var/transfer_moles = (get_pin_data(IC_INPUT, 5) / max(1,output_gases.return_pressure())) * PUMP_EFFICIENCY * (source_1_gases.return_pressure() * gas_percentage + source_2_gases.return_pressure() * (1 - gas_percentage)) * output_gases.volume/ (R_IDEAL_GAS_EQUATION * max(output_gases.temperature,TCMB)) + + + if(transfer_moles <= 0) + return + + var/datum/gas_mixture/mix = source_1_gases.remove(transfer_moles * gas_percentage) + output_gases.merge(mix) + mix = source_2_gases.remove(transfer_moles * (1-gas_percentage)) + output_gases.merge(mix) + + +// - integrated tank - // **works** +/obj/item/integrated_circuit/atmospherics/tank + name = "integrated tank" + desc = "A small tank for the storage of gases." + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + size = 4 + activators = list( + "push ref" = IC_PINTYPE_PULSE_IN + ) + volume = 3 //emergency tank sized + var/broken = FALSE + +/obj/item/integrated_circuit/atmospherics/tank/Initialize() + air_contents = new(volume) + START_PROCESSING(SSobj, src) + extended_desc = "Take care not to pressurize it above [round(TANK_FAILURE_PRESSURE)] kPa, or else it will break." + . = ..() + +/obj/item/integrated_circuit/atmospherics/tank/Destroy() + STOP_PROCESSING(SSobj, src) + . = ..() + +/obj/item/integrated_circuit/atmospherics/tank/do_work() + set_pin_data(IC_OUTPUT, 1, WEAKREF(src)) + push_data() + +/obj/item/integrated_circuit/atmospherics/tank/process() + var/tank_pressure = air_contents.return_pressure() + set_pin_data(IC_OUTPUT, 2, tank_pressure) + push_data() + + //Check if tank broken + if(!broken && tank_pressure > TANK_FAILURE_PRESSURE) + broken = TRUE + to_chat(view(2),"The [name] ruptures, releasing its gases!") + if(broken) + release() + +/obj/item/integrated_circuit/atmospherics/tank/proc/release() + if(air_contents.total_moles() > 0) + playsound(loc, 'sound/effects/spray.ogg', 10, 1, -3) + var/datum/gas_mixture/expelled_gas = air_contents.remove(air_contents.total_moles()) + var/turf/current_turf = get_turf(src) + var/datum/gas_mixture/exterior_gas + if(!current_turf) + return + + exterior_gas = current_turf.return_air() + exterior_gas.merge(expelled_gas) + + +// - large integrated tank - // **works** +/obj/item/integrated_circuit/atmospherics/tank/large + name = "large integrated tank" + desc = "A less small tank for the storage of gases." + volume = 9 + size = 12 + spawn_flags = IC_SPAWN_RESEARCH + + +// - freezer tank - // **works** +/obj/item/integrated_circuit/atmospherics/tank/freezer + name = "freezer tank" + desc = "Cools the gas it contains to a preset temperature." + volume = 6 + size = 8 + inputs = list( + "target temperature" = IC_PINTYPE_NUMBER, + "on" = IC_PINTYPE_BOOLEAN + ) + inputs_default = list("1" = 300) + spawn_flags = IC_SPAWN_RESEARCH + var/temperature = 293.15 + var/heater_coefficient = 0.1 + +/obj/item/integrated_circuit/atmospherics/tank/freezer/on_data_written() + temperature = max(73.15,min(293.15,get_pin_data(IC_INPUT, 1))) + if(get_pin_data(IC_INPUT, 2)) + power_draw_idle = 30 + else + power_draw_idle = 0 + +/obj/item/integrated_circuit/atmospherics/tank/freezer/process() + var/tank_pressure = air_contents.return_pressure() + set_pin_data(IC_OUTPUT, 2, tank_pressure) + push_data() + + //Cool the tank if the power is on and the temp is above + if(!power_draw_idle || air_contents.temperature < temperature) + return + + air_contents.temperature = max(73.15,air_contents.temperature - (air_contents.temperature - temperature) * heater_coefficient) + + +// - heater tank - // **works** +/obj/item/integrated_circuit/atmospherics/tank/freezer/heater + name = "heater tank" + desc = "Heats the gas it contains to a preset temperature." + volume = 6 + inputs = list( + "target temperature" = IC_PINTYPE_NUMBER, + "on" = IC_PINTYPE_BOOLEAN + ) + spawn_flags = IC_SPAWN_RESEARCH + +/obj/item/integrated_circuit/atmospherics/tank/freezer/heater/on_data_written() + temperature = max(293.15,min(573.15,get_pin_data(IC_INPUT, 1))) + if(get_pin_data(IC_INPUT, 2)) + power_draw_idle = 30 + else + power_draw_idle = 0 + +/obj/item/integrated_circuit/atmospherics/tank/freezer/heater/process() + var/tank_pressure = air_contents.return_pressure() + set_pin_data(IC_OUTPUT, 2, tank_pressure) + push_data() + + //Heat the tank if the power is on or its temperature is below what is set + if(!power_draw_idle || air_contents.temperature > temperature) + return + + air_contents.temperature = min(573.15,air_contents.temperature + (temperature - air_contents.temperature) * heater_coefficient) + + +// - atmospheric cooler - // **works** +/obj/item/integrated_circuit/atmospherics/cooler + name = "atmospheric cooler circuit" + desc = "Cools the air around it." + volume = 6 + size = 13 + spawn_flags = IC_SPAWN_RESEARCH + inputs = list( + "target temperature" = IC_PINTYPE_NUMBER, + "on" = IC_PINTYPE_BOOLEAN + ) + var/temperature = 293.15 + var/heater_coefficient = 0.1 + +/obj/item/integrated_circuit/atmospherics/cooler/Initialize() + air_contents = new(volume) + START_PROCESSING(SSobj, src) + . = ..() + +/obj/item/integrated_circuit/atmospherics/cooler/Destroy() + STOP_PROCESSING(SSobj, src) + . = ..() + +/obj/item/integrated_circuit/atmospherics/cooler/on_data_written() + temperature = max(243.15,min(293.15,get_pin_data(IC_INPUT, 1))) + if(get_pin_data(IC_INPUT, 2)) + power_draw_idle = 30 + else + power_draw_idle = 0 + +/obj/item/integrated_circuit/atmospherics/cooler/process() + set_pin_data(IC_OUTPUT, 2, air_contents.return_pressure()) + push_data() + + + //Get the turf you're on and its gas mixture + var/turf/current_turf = get_turf(src) + if(!current_turf) + return + + var/datum/gas_mixture/turf_air = current_turf.return_air() + if(!power_draw_idle || turf_air.temperature < temperature) + return + + //Cool the gas + turf_air.temperature = max(243.15,turf_air.temperature - (turf_air.temperature - temperature) * heater_coefficient) + + +// - atmospheric heater - // **works** +/obj/item/integrated_circuit/atmospherics/cooler/heater + name = "atmospheric heater circuit" + desc = "Heats the air around it." + +/obj/item/integrated_circuit/atmospherics/cooler/heater/on_data_written() + temperature = max(293.15,min(323.15,get_pin_data(IC_INPUT, 1))) + if(get_pin_data(IC_INPUT, 2)) + power_draw_idle = 30 + else + power_draw_idle = 0 + +/obj/item/integrated_circuit/atmospherics/cooler/heater/process() + set_pin_data(IC_OUTPUT, 2, air_contents.return_pressure()) + push_data() + + //Get the turf and its air mixture + var/turf/current_turf = get_turf(src) + if(!current_turf) + return + + var/datum/gas_mixture/turf_air = current_turf.return_air() + if(!power_draw_idle || turf_air.temperature > temperature) + return + + //Heat the gas + turf_air.temperature = min(323.15,turf_air.temperature + (temperature - turf_air.temperature) * heater_coefficient) + + +// - tank slot - // **works** +/obj/item/integrated_circuit/input/tank_slot + category_text = "Atmospherics" + cooldown_per_use = 1 + name = "tank slot" + desc = "Lets you add a tank to your assembly and remove it even when the assembly is closed." + extended_desc = "It can help you extract gases easier." + complexity = 25 + size = 30 + inputs = list() + outputs = list( + "pressure used" = IC_PINTYPE_NUMBER, + "current tank" = IC_PINTYPE_REF + ) + activators = list( + "push ref" = IC_PINTYPE_PULSE_IN, + "on insert" = IC_PINTYPE_PULSE_OUT, + "on remove" = IC_PINTYPE_PULSE_OUT + ) + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + + can_be_asked_input = TRUE + demands_object_input = TRUE + can_input_object_when_closed = TRUE + + var/obj/item/tank/internals/current_tank + +/obj/item/integrated_circuit/input/tank_slot/Initialize() + START_PROCESSING(SSobj, src) + . = ..() + +/obj/item/integrated_circuit/input/tank_slot/process() + push_pressure() + +/obj/item/integrated_circuit/input/tank_slot/attackby(var/obj/item/tank/internals/I, var/mob/living/user) + //Check if it truly is a tank + if(!istype(I,/obj/item/tank/internals)) + to_chat(user,"The [I.name] doesn't seem to fit in here.") + return + + //Check if there is no other tank already inside + if(current_tank) + to_chat(user,"There is already a gas tank inside.") + return + + //The current tank is the one we just attached, its location is inside the circuit + current_tank = I + user.transferItemToLoc(I,src) + to_chat(user,"You put the [I.name] inside the tank slot.") + + //Set the pin to a weak reference of the current tank + push_pressure() + set_pin_data(IC_OUTPUT, 2, WEAKREF(current_tank)) + push_data() + do_work(1) + + +/obj/item/integrated_circuit/input/tank_slot/ask_for_input(mob/user) + attack_self(user) + +/obj/item/integrated_circuit/input/tank_slot/attack_self(mob/user) + //Check if no tank attached + if(!current_tank) + to_chat(user, "There is currently no tank attached.") + return + + //Remove tank and put in user's hands/location + to_chat(user, "You take [current_tank] out of the tank slot.") + user.put_in_hands(current_tank) + current_tank = null + + //Remove tank reference + push_pressure() + set_pin_data(IC_OUTPUT, 2, null) + push_data() + do_work(2) + +/obj/item/integrated_circuit/input/tank_slot/do_work() + set_pin_data(IC_OUTPUT, 2, WEAKREF(current_tank)) + push_data() + +/obj/item/integrated_circuit/input/tank_slot/proc/push_pressure() + if(!current_tank) + set_pin_data(IC_OUTPUT, 1, 0) + return + + var/datum/gas_mixture/tank_air = current_tank.return_air() + if(!tank_air) + set_pin_data(IC_OUTPUT, 1, 0) + return + + set_pin_data(IC_OUTPUT, 1, tank_air.return_pressure()) + push_data() + + +#undef SOURCE_TO_TARGET +#undef TARGET_TO_SOURCE +#undef PUMP_EFFICIENCY +#undef TANK_FAILURE_PRESSURE +#undef PUMP_MAX_PRESSURE +#undef PUMP_MAX_VOLUME diff --git a/code/modules/mob/living/carbon/alien/life.dm b/code/modules/mob/living/carbon/alien/life.dm index ae5cee48b6..b8edd34ee9 100644 --- a/code/modules/mob/living/carbon/alien/life.dm +++ b/code/modules/mob/living/carbon/alien/life.dm @@ -31,7 +31,7 @@ breath_gases[/datum/gas/plasma] -= toxins_used breath_gases[/datum/gas/oxygen] += toxins_used - breath.garbage_collect() + GAS_GARBAGE_COLLECT(breath.gases) //BREATH TEMPERATURE handle_breath_temperature(breath) diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index b6cb5862d6..4acfc25d68 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -291,7 +291,7 @@ - breath.garbage_collect() + GAS_GARBAGE_COLLECT(breath.gases) //BREATH TEMPERATURE handle_breath_temperature(breath) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 0f09773bc3..2517d2438d 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -1,588 +1,588 @@ -/mob/living/simple_animal - name = "animal" - icon = 'icons/mob/animal.dmi' - health = 20 - maxHealth = 20 - gender = PLURAL //placeholder - - status_flags = CANPUSH - - var/icon_living = "" - var/icon_dead = "" //icon when the animal is dead. Don't use animated icons for this. - var/icon_gib = null //We only try to show a gibbing animation if this exists. - - var/list/speak = list() - var/list/speak_emote = list()// Emotes while speaking IE: Ian [emote], [text] -- Ian barks, "WOOF!". Spoken text is generated from the speak variable. - var/speak_chance = 0 - var/list/emote_hear = list() //Hearable emotes - var/list/emote_see = list() //Unlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps - - var/turns_per_move = 1 - var/turns_since_move = 0 - var/stop_automated_movement = 0 //Use this to temporarely stop random movement or to if you write special movement code for animals. - var/wander = 1 // Does the mob wander around when idle? - var/stop_automated_movement_when_pulled = 1 //When set to 1 this stops the animal from moving when someone is pulling it. - - //Interaction - var/response_help = "pokes" - var/response_disarm = "shoves" - var/response_harm = "hits" - var/harm_intent_damage = 3 - var/force_threshold = 0 //Minimum force required to deal any damage - - //Temperature effect - var/minbodytemp = 250 - var/maxbodytemp = 350 - - //Healable by medical stacks? Defaults to yes. - var/healable = 1 - - //Atmos effect - Yes, you can make creatures that require plasma or co2 to survive. N2O is a trace gas and handled separately, hence why it isn't here. It'd be hard to add it. Hard and me don't mix (Yes, yes make all the dick jokes you want with that.) - Errorage - var/list/atmos_requirements = list("min_oxy" = 5, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 1, "min_co2" = 0, "max_co2" = 5, "min_n2" = 0, "max_n2" = 0) //Leaving something at 0 means it's off - has no maximum - var/unsuitable_atmos_damage = 2 //This damage is taken when atmos doesn't fit all the requirements above - - //LETTING SIMPLE ANIMALS ATTACK? WHAT COULD GO WRONG. Defaults to zero so Ian can still be cuddly - var/melee_damage_lower = 0 - var/melee_damage_upper = 0 - var/obj_damage = 0 //how much damage this simple animal does to objects, if any - var/armour_penetration = 0 //How much armour they ignore, as a flat reduction from the targets armour value - var/melee_damage_type = BRUTE //Damage type of a simple mob's melee attack, should it do damage. - var/list/damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) // 1 for full damage , 0 for none , -1 for 1:1 heal from that source - var/attacktext = "attacks" - var/attack_sound = null - var/friendly = "nuzzles" //If the mob does no damage with it's attack - var/environment_smash = ENVIRONMENT_SMASH_NONE //Set to 1 to allow breaking of crates,lockers,racks,tables; 2 for walls; 3 for Rwalls - - var/speed = 1 //LETS SEE IF I CAN SET SPEEDS FOR SIMPLE MOBS WITHOUT DESTROYING EVERYTHING. Higher speed is slower, negative speed is faster - - //Hot simple_animal baby making vars - var/list/childtype = null - var/next_scan_time = 0 - var/animal_species //Sorry, no spider+corgi buttbabies. - - //simple_animal access - var/obj/item/card/id/access_card = null //innate access uses an internal ID card - var/buffed = 0 //In the event that you want to have a buffing effect on the mob, but don't want it to stack with other effects, any outside force that applies a buff to a simple mob should at least set this to 1, so we have something to check against - var/gold_core_spawnable = NO_SPAWN //If the mob can be spawned with a gold slime core. HOSTILE_SPAWN are spawned with plasma, FRIENDLY_SPAWN are spawned with blood - - var/mob/living/simple_animal/hostile/spawner/nest - - var/sentience_type = SENTIENCE_ORGANIC // Sentience type, for slime potions - - var/list/loot = list() //list of things spawned at mob's loc when it dies - var/del_on_death = 0 //causes mob to be deleted on death, useful for mobs that spawn lootable corpses - var/deathmessage = "" - var/death_sound = null //The sound played on death - - var/allow_movement_on_non_turfs = FALSE - - var/attacked_sound = "punch" //Played when someone punches the creature - - var/dextrous = FALSE //If the creature has, and can use, hands - var/dextrous_hud_type = /datum/hud/dextrous - var/datum/personal_crafting/handcrafting - - var/AIStatus = AI_ON //The Status of our AI, can be set to AI_ON (On, usual processing), AI_IDLE (Will not process, but will return to AI_ON if an enemy comes near), AI_OFF (Off, Not processing ever), AI_Z_OFF (Temporarily off due to nonpresence of players) - - var/shouldwakeup = FALSE //convenience var for forcibly waking up an idling AI on next check. - - //domestication - var/tame = 0 - - var/my_z // I don't want to confuse this with client registered_z - - var/do_footstep = FALSE - -/mob/living/simple_animal/Initialize() - . = ..() - GLOB.simple_animals[AIStatus] += src - handcrafting = new() - if(gender == PLURAL) - gender = pick(MALE,FEMALE) - if(!real_name) - real_name = name - if(!loc) - stack_trace("Simple animal being instantiated in nullspace") - update_simplemob_varspeed() - -/mob/living/simple_animal/Destroy() - GLOB.simple_animals[AIStatus] -= src - if (SSnpcpool.state == SS_PAUSED && LAZYLEN(SSnpcpool.currentrun)) - SSnpcpool.currentrun -= src - - if(nest) - nest.spawned_mobs -= src - nest = null - - var/turf/T = get_turf(src) - if (T && AIStatus == AI_Z_OFF) - SSidlenpcpool.idle_mobs_by_zlevel[T.z] -= src - - return ..() - -/mob/living/simple_animal/initialize_footstep() - if(do_footstep) - ..() - -/mob/living/simple_animal/updatehealth() - ..() - health = CLAMP(health, 0, maxHealth) - -/mob/living/simple_animal/update_stat() - if(status_flags & GODMODE) - return - if(stat != DEAD) - if(health <= 0) - death() - else - stat = CONSCIOUS - med_hud_set_status() - - -/mob/living/simple_animal/handle_status_effects() - ..() - if(stuttering) - stuttering = 0 - -/mob/living/simple_animal/proc/handle_automated_action() - set waitfor = FALSE - return - -/mob/living/simple_animal/proc/handle_automated_movement() - set waitfor = FALSE - if(!stop_automated_movement && wander) - if((isturf(src.loc) || allow_movement_on_non_turfs) && !resting && !buckled && canmove) //This is so it only moves if it's not inside a closet, gentics machine, etc. - turns_since_move++ - if(turns_since_move >= turns_per_move) - if(!(stop_automated_movement_when_pulled && pulledby)) //Some animals don't move when pulled - var/anydir = pick(GLOB.cardinals) - if(Process_Spacemove(anydir)) - Move(get_step(src, anydir), anydir) - turns_since_move = 0 - return 1 - -/mob/living/simple_animal/proc/handle_automated_speech(var/override) - set waitfor = FALSE - if(speak_chance) - if(prob(speak_chance) || override) - if(speak && speak.len) - if((emote_hear && emote_hear.len) || (emote_see && emote_see.len)) - var/length = speak.len - if(emote_hear && emote_hear.len) - length += emote_hear.len - if(emote_see && emote_see.len) - length += emote_see.len - var/randomValue = rand(1,length) - if(randomValue <= speak.len) - say(pick(speak), forced = "poly") - else - randomValue -= speak.len - if(emote_see && randomValue <= emote_see.len) - emote("me [pick(emote_see)]", 1) - else - emote("me [pick(emote_hear)]", 2) - else - say(pick(speak), forced = "poly") - else - if(!(emote_hear && emote_hear.len) && (emote_see && emote_see.len)) - emote("me", 1, pick(emote_see)) - if((emote_hear && emote_hear.len) && !(emote_see && emote_see.len)) - emote("me", 2, pick(emote_hear)) - if((emote_hear && emote_hear.len) && (emote_see && emote_see.len)) - var/length = emote_hear.len + emote_see.len - var/pick = rand(1,length) - if(pick <= emote_see.len) - emote("me", 1, pick(emote_see)) - else - emote("me", 2, pick(emote_hear)) - - -/mob/living/simple_animal/proc/environment_is_safe(datum/gas_mixture/environment, check_temp = FALSE) - . = TRUE - - if(pulledby && pulledby.grab_state >= GRAB_KILL && atmos_requirements["min_oxy"]) - . = FALSE //getting choked - - if(isturf(src.loc) && isopenturf(src.loc)) - var/turf/open/ST = src.loc - if(ST.air) - var/ST_gases = ST.air.gases - - var/tox = ST_gases[/datum/gas/plasma] - var/oxy = ST_gases[/datum/gas/oxygen] - var/n2 = ST_gases[/datum/gas/nitrogen] - var/co2 = ST_gases[/datum/gas/carbon_dioxide] - - ST.air.garbage_collect() - - if(atmos_requirements["min_oxy"] && oxy < atmos_requirements["min_oxy"]) - . = FALSE - else if(atmos_requirements["max_oxy"] && oxy > atmos_requirements["max_oxy"]) - . = FALSE - else if(atmos_requirements["min_tox"] && tox < atmos_requirements["min_tox"]) - . = FALSE - else if(atmos_requirements["max_tox"] && tox > atmos_requirements["max_tox"]) - . = FALSE - else if(atmos_requirements["min_n2"] && n2 < atmos_requirements["min_n2"]) - . = FALSE - else if(atmos_requirements["max_n2"] && n2 > atmos_requirements["max_n2"]) - . = FALSE - else if(atmos_requirements["min_co2"] && co2 < atmos_requirements["min_co2"]) - . = FALSE - else if(atmos_requirements["max_co2"] && co2 > atmos_requirements["max_co2"]) - . = FALSE - else - if(atmos_requirements["min_oxy"] || atmos_requirements["min_tox"] || atmos_requirements["min_n2"] || atmos_requirements["min_co2"]) - . = FALSE - - if(check_temp) - var/areatemp = get_temperature(environment) - if((areatemp < minbodytemp) || (areatemp > maxbodytemp)) - . = FALSE - - -/mob/living/simple_animal/handle_environment(datum/gas_mixture/environment) - var/atom/A = src.loc - if(isturf(A)) - var/areatemp = get_temperature(environment) - if( abs(areatemp - bodytemperature) > 5) - var/diff = areatemp - bodytemperature - diff = diff / 5 - adjust_bodytemperature(diff) - - if(!environment_is_safe(environment)) - adjustHealth(unsuitable_atmos_damage) - - handle_temperature_damage() - -/mob/living/simple_animal/proc/handle_temperature_damage() - if((bodytemperature < minbodytemp) || (bodytemperature > maxbodytemp)) - adjustHealth(unsuitable_atmos_damage) - -/mob/living/simple_animal/gib() - if(butcher_results) - var/atom/Tsec = drop_location() - for(var/path in butcher_results) - for(var/i in 1 to butcher_results[path]) - new path(Tsec) - ..() - -/mob/living/simple_animal/gib_animation() - if(icon_gib) - new /obj/effect/temp_visual/gib_animation/animal(loc, icon_gib) - -/mob/living/simple_animal/say_mod(input, message_mode) - if(speak_emote && speak_emote.len) - verb_say = pick(speak_emote) - . = ..() - -/mob/living/simple_animal/emote(act, m_type=1, message = null, intentional = FALSE) - if(stat) - return - if(act == "scream") - message = "makes a loud and pained whimper." //ugly hack to stop animals screaming when crushed :P - act = "me" - ..(act, m_type, message) - -/mob/living/simple_animal/proc/set_varspeed(var_value) - speed = var_value - update_simplemob_varspeed() - -/mob/living/simple_animal/proc/update_simplemob_varspeed() - if(speed == 0) - remove_movespeed_modifier(MOVESPEED_ID_SIMPLEMOB_VARSPEED, TRUE) - add_movespeed_modifier(MOVESPEED_ID_SIMPLEMOB_VARSPEED, TRUE, 100, multiplicative_slowdown = speed, override = TRUE) - -/mob/living/simple_animal/Stat() - ..() - if(statpanel("Status")) - stat(null, "Health: [round((health / maxHealth) * 100)]%") - return 1 - -/mob/living/simple_animal/proc/drop_loot() - if(loot.len) - for(var/i in loot) - new i(loc) - -/mob/living/simple_animal/death(gibbed) - movement_type &= ~FLYING - if(nest) - nest.spawned_mobs -= src - nest = null - drop_loot() - if(dextrous) - drop_all_held_items() - if(!gibbed) - if(death_sound) - playsound(get_turf(src),death_sound, 200, 1) - if(deathmessage || !del_on_death) - emote("deathgasp") - if(del_on_death) - ..() - //Prevent infinite loops if the mob Destroy() is overridden in such - //a manner as to cause a call to death() again - del_on_death = FALSE - qdel(src) - else - health = 0 - icon_state = icon_dead - density = FALSE - lying = 1 - ..() - -/mob/living/simple_animal/proc/CanAttack(atom/the_target) - if(see_invisible < the_target.invisibility) - return FALSE - if(ismob(the_target)) - var/mob/M = the_target - if(M.status_flags & GODMODE) - return FALSE - if (isliving(the_target)) - var/mob/living/L = the_target - if(L.stat != CONSCIOUS) - return FALSE - if (ismecha(the_target)) - var/obj/mecha/M = the_target - if (M.occupant) - return FALSE - return TRUE - -/mob/living/simple_animal/handle_fire() - return - -/mob/living/simple_animal/IgniteMob() - return FALSE - -/mob/living/simple_animal/ExtinguishMob() - return - -/mob/living/simple_animal/revive(full_heal = 0, admin_revive = 0) - if(..()) //successfully ressuscitated from death - icon = initial(icon) - icon_state = icon_living - density = initial(density) - lying = 0 - . = 1 - movement_type = initial(movement_type) - -/mob/living/simple_animal/proc/make_babies() // <3 <3 <3 - if(gender != FEMALE || stat || next_scan_time > world.time || !childtype || !animal_species || !SSticker.IsRoundInProgress()) - return - next_scan_time = world.time + 400 - var/alone = 1 - var/mob/living/simple_animal/partner - var/children = 0 - for(var/mob/M in view(7, src)) - if(M.stat != CONSCIOUS) //Check if it's conscious FIRST. - continue - else if(istype(M, childtype)) //Check for children SECOND. - children++ - else if(istype(M, animal_species)) - if(M.ckey) - continue - else if(!istype(M, childtype) && M.gender == MALE) //Better safe than sorry ;_; - partner = M - - else if(isliving(M) && !faction_check_mob(M)) //shyness check. we're not shy in front of things that share a faction with us. - return //we never mate when not alone, so just abort early - - if(alone && partner && children < 3) - var/childspawn = pickweight(childtype) - var/turf/target = get_turf(loc) - if(target) - return new childspawn(target) - -/mob/living/simple_animal/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE) - if(incapacitated()) - to_chat(src, "You can't do that right now!") - return FALSE - if(be_close && !in_range(M, src)) - to_chat(src, "You are too far away!") - return FALSE - if(!(no_dextery || dextrous)) - to_chat(src, "You don't have the dexterity to do this!") - return FALSE - return TRUE - -/mob/living/simple_animal/stripPanelUnequip(obj/item/what, mob/who, where) - if(!canUseTopic(who, BE_CLOSE)) - return - else - ..() - -/mob/living/simple_animal/stripPanelEquip(obj/item/what, mob/who, where) - if(!canUseTopic(who, BE_CLOSE)) - return - else - ..() - -/mob/living/simple_animal/update_canmove(value_otherwise = TRUE) - if(IsUnconscious() || IsStun() || IsKnockdown() || stat || resting) - drop_all_held_items() - canmove = FALSE - else if(buckled) - canmove = FALSE - else - canmove = value_otherwise - update_transform() - update_action_buttons_icon() - return canmove - -/mob/living/simple_animal/update_transform() - var/matrix/ntransform = matrix(transform) //aka transform.Copy() - var/changed = 0 - - if(resize != RESIZE_DEFAULT_SIZE) - changed++ - ntransform.Scale(resize) - resize = RESIZE_DEFAULT_SIZE - - if(changed) - animate(src, transform = ntransform, time = 2, easing = EASE_IN|EASE_OUT) - -/mob/living/simple_animal/proc/sentience_act() //Called when a simple animal gains sentience via gold slime potion - toggle_ai(AI_OFF) // To prevent any weirdness. - -/mob/living/simple_animal/update_sight() - if(!client) - return - if(stat == DEAD) - sight = (SEE_TURFS|SEE_MOBS|SEE_OBJS) - see_in_dark = 8 - see_invisible = SEE_INVISIBLE_OBSERVER - return - - see_invisible = initial(see_invisible) - see_in_dark = initial(see_in_dark) - sight = initial(sight) - - if(client.eye != src) - var/atom/A = client.eye - if(A.update_remote_sight(src)) //returns 1 if we override all other sight updates. - return - sync_lighting_plane_alpha() - -/mob/living/simple_animal/get_idcard() - return access_card - -/mob/living/simple_animal/OpenCraftingMenu() - if(dextrous) - handcrafting.ui_interact(src) - -/mob/living/simple_animal/can_hold_items() - return dextrous - -/mob/living/simple_animal/IsAdvancedToolUser() - return dextrous - -/mob/living/simple_animal/activate_hand(selhand) - if(!dextrous) - return ..() - if(!selhand) - selhand = (active_hand_index % held_items.len)+1 - if(istext(selhand)) - selhand = lowertext(selhand) - if(selhand == "right" || selhand == "r") - selhand = 2 - if(selhand == "left" || selhand == "l") - selhand = 1 - if(selhand != active_hand_index) - swap_hand(selhand) - else - mode() - -/mob/living/simple_animal/swap_hand(hand_index) - if(!dextrous) - return ..() - if(!hand_index) - hand_index = (active_hand_index % held_items.len)+1 - var/obj/item/held_item = get_active_held_item() - if(held_item) - if(istype(held_item, /obj/item/twohanded)) - var/obj/item/twohanded/T = held_item - if(T.wielded == 1) - to_chat(usr, "Your other hand is too busy holding the [T.name].") - return - var/oindex = active_hand_index - active_hand_index = hand_index - if(hud_used) - var/obj/screen/inventory/hand/H - H = hud_used.hand_slots["[hand_index]"] - if(H) - H.update_icon() - H = hud_used.hand_slots["[oindex]"] - if(H) - H.update_icon() - -/mob/living/simple_animal/put_in_hands(obj/item/I, del_on_fail = FALSE, merge_stacks = TRUE) - . = ..(I, del_on_fail, merge_stacks) - update_inv_hands() - -/mob/living/simple_animal/update_inv_hands() - if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) - var/obj/item/l_hand = get_item_for_held_index(1) - var/obj/item/r_hand = get_item_for_held_index(2) - if(r_hand) - r_hand.layer = ABOVE_HUD_LAYER - r_hand.plane = ABOVE_HUD_PLANE - r_hand.screen_loc = ui_hand_position(get_held_index_of_item(r_hand)) - client.screen |= r_hand - if(l_hand) - l_hand.layer = ABOVE_HUD_LAYER - l_hand.plane = ABOVE_HUD_PLANE - l_hand.screen_loc = ui_hand_position(get_held_index_of_item(l_hand)) - client.screen |= l_hand - -//ANIMAL RIDING - -/mob/living/simple_animal/user_buckle_mob(mob/living/M, mob/user) - GET_COMPONENT(riding_datum, /datum/component/riding) - if(riding_datum) - if(user.incapacitated()) - return - for(var/atom/movable/A in get_turf(src)) - if(A != src && A != M && A.density) - return - M.forceMove(get_turf(src)) - return ..() - -/mob/living/simple_animal/relaymove(mob/user, direction) - GET_COMPONENT(riding_datum, /datum/component/riding) - if(tame && riding_datum) - riding_datum.handle_ride(user, direction) - -/mob/living/simple_animal/buckle_mob(mob/living/buckled_mob, force = 0, check_loc = 1) - . = ..() - LoadComponent(/datum/component/riding) - -/mob/living/simple_animal/proc/toggle_ai(togglestatus) - if (AIStatus != togglestatus) - if (togglestatus > 0 && togglestatus < 5) - if (togglestatus == AI_Z_OFF || AIStatus == AI_Z_OFF) - var/turf/T = get_turf(src) - if (AIStatus == AI_Z_OFF) - SSidlenpcpool.idle_mobs_by_zlevel[T.z] -= src - else - SSidlenpcpool.idle_mobs_by_zlevel[T.z] += src - GLOB.simple_animals[AIStatus] -= src - GLOB.simple_animals[togglestatus] += src - AIStatus = togglestatus - else - stack_trace("Something attempted to set simple animals AI to an invalid state: [togglestatus]") - -/mob/living/simple_animal/proc/consider_wakeup() - if (pulledby || shouldwakeup) - toggle_ai(AI_ON) - -/mob/living/simple_animal/adjustHealth(amount, updating_health = TRUE, forced = FALSE) - . = ..() - if(!ckey && !stat)//Not unconscious - if(AIStatus == AI_IDLE) - toggle_ai(AI_ON) - - -/mob/living/simple_animal/onTransitZ(old_z, new_z) - ..() - if (AIStatus == AI_Z_OFF) - SSidlenpcpool.idle_mobs_by_zlevel[old_z] -= src - toggle_ai(initial(AIStatus)) +/mob/living/simple_animal + name = "animal" + icon = 'icons/mob/animal.dmi' + health = 20 + maxHealth = 20 + gender = PLURAL //placeholder + + status_flags = CANPUSH + + var/icon_living = "" + var/icon_dead = "" //icon when the animal is dead. Don't use animated icons for this. + var/icon_gib = null //We only try to show a gibbing animation if this exists. + + var/list/speak = list() + var/list/speak_emote = list()// Emotes while speaking IE: Ian [emote], [text] -- Ian barks, "WOOF!". Spoken text is generated from the speak variable. + var/speak_chance = 0 + var/list/emote_hear = list() //Hearable emotes + var/list/emote_see = list() //Unlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps + + var/turns_per_move = 1 + var/turns_since_move = 0 + var/stop_automated_movement = 0 //Use this to temporarely stop random movement or to if you write special movement code for animals. + var/wander = 1 // Does the mob wander around when idle? + var/stop_automated_movement_when_pulled = 1 //When set to 1 this stops the animal from moving when someone is pulling it. + + //Interaction + var/response_help = "pokes" + var/response_disarm = "shoves" + var/response_harm = "hits" + var/harm_intent_damage = 3 + var/force_threshold = 0 //Minimum force required to deal any damage + + //Temperature effect + var/minbodytemp = 250 + var/maxbodytemp = 350 + + //Healable by medical stacks? Defaults to yes. + var/healable = 1 + + //Atmos effect - Yes, you can make creatures that require plasma or co2 to survive. N2O is a trace gas and handled separately, hence why it isn't here. It'd be hard to add it. Hard and me don't mix (Yes, yes make all the dick jokes you want with that.) - Errorage + var/list/atmos_requirements = list("min_oxy" = 5, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 1, "min_co2" = 0, "max_co2" = 5, "min_n2" = 0, "max_n2" = 0) //Leaving something at 0 means it's off - has no maximum + var/unsuitable_atmos_damage = 2 //This damage is taken when atmos doesn't fit all the requirements above + + //LETTING SIMPLE ANIMALS ATTACK? WHAT COULD GO WRONG. Defaults to zero so Ian can still be cuddly + var/melee_damage_lower = 0 + var/melee_damage_upper = 0 + var/obj_damage = 0 //how much damage this simple animal does to objects, if any + var/armour_penetration = 0 //How much armour they ignore, as a flat reduction from the targets armour value + var/melee_damage_type = BRUTE //Damage type of a simple mob's melee attack, should it do damage. + var/list/damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) // 1 for full damage , 0 for none , -1 for 1:1 heal from that source + var/attacktext = "attacks" + var/attack_sound = null + var/friendly = "nuzzles" //If the mob does no damage with it's attack + var/environment_smash = ENVIRONMENT_SMASH_NONE //Set to 1 to allow breaking of crates,lockers,racks,tables; 2 for walls; 3 for Rwalls + + var/speed = 1 //LETS SEE IF I CAN SET SPEEDS FOR SIMPLE MOBS WITHOUT DESTROYING EVERYTHING. Higher speed is slower, negative speed is faster + + //Hot simple_animal baby making vars + var/list/childtype = null + var/next_scan_time = 0 + var/animal_species //Sorry, no spider+corgi buttbabies. + + //simple_animal access + var/obj/item/card/id/access_card = null //innate access uses an internal ID card + var/buffed = 0 //In the event that you want to have a buffing effect on the mob, but don't want it to stack with other effects, any outside force that applies a buff to a simple mob should at least set this to 1, so we have something to check against + var/gold_core_spawnable = NO_SPAWN //If the mob can be spawned with a gold slime core. HOSTILE_SPAWN are spawned with plasma, FRIENDLY_SPAWN are spawned with blood + + var/mob/living/simple_animal/hostile/spawner/nest + + var/sentience_type = SENTIENCE_ORGANIC // Sentience type, for slime potions + + var/list/loot = list() //list of things spawned at mob's loc when it dies + var/del_on_death = 0 //causes mob to be deleted on death, useful for mobs that spawn lootable corpses + var/deathmessage = "" + var/death_sound = null //The sound played on death + + var/allow_movement_on_non_turfs = FALSE + + var/attacked_sound = "punch" //Played when someone punches the creature + + var/dextrous = FALSE //If the creature has, and can use, hands + var/dextrous_hud_type = /datum/hud/dextrous + var/datum/personal_crafting/handcrafting + + var/AIStatus = AI_ON //The Status of our AI, can be set to AI_ON (On, usual processing), AI_IDLE (Will not process, but will return to AI_ON if an enemy comes near), AI_OFF (Off, Not processing ever), AI_Z_OFF (Temporarily off due to nonpresence of players) + + var/shouldwakeup = FALSE //convenience var for forcibly waking up an idling AI on next check. + + //domestication + var/tame = 0 + + var/my_z // I don't want to confuse this with client registered_z + + var/do_footstep = FALSE + +/mob/living/simple_animal/Initialize() + . = ..() + GLOB.simple_animals[AIStatus] += src + handcrafting = new() + if(gender == PLURAL) + gender = pick(MALE,FEMALE) + if(!real_name) + real_name = name + if(!loc) + stack_trace("Simple animal being instantiated in nullspace") + update_simplemob_varspeed() + +/mob/living/simple_animal/Destroy() + GLOB.simple_animals[AIStatus] -= src + if (SSnpcpool.state == SS_PAUSED && LAZYLEN(SSnpcpool.currentrun)) + SSnpcpool.currentrun -= src + + if(nest) + nest.spawned_mobs -= src + nest = null + + var/turf/T = get_turf(src) + if (T && AIStatus == AI_Z_OFF) + SSidlenpcpool.idle_mobs_by_zlevel[T.z] -= src + + return ..() + +/mob/living/simple_animal/initialize_footstep() + if(do_footstep) + ..() + +/mob/living/simple_animal/updatehealth() + ..() + health = CLAMP(health, 0, maxHealth) + +/mob/living/simple_animal/update_stat() + if(status_flags & GODMODE) + return + if(stat != DEAD) + if(health <= 0) + death() + else + stat = CONSCIOUS + med_hud_set_status() + + +/mob/living/simple_animal/handle_status_effects() + ..() + if(stuttering) + stuttering = 0 + +/mob/living/simple_animal/proc/handle_automated_action() + set waitfor = FALSE + return + +/mob/living/simple_animal/proc/handle_automated_movement() + set waitfor = FALSE + if(!stop_automated_movement && wander) + if((isturf(src.loc) || allow_movement_on_non_turfs) && !resting && !buckled && canmove) //This is so it only moves if it's not inside a closet, gentics machine, etc. + turns_since_move++ + if(turns_since_move >= turns_per_move) + if(!(stop_automated_movement_when_pulled && pulledby)) //Some animals don't move when pulled + var/anydir = pick(GLOB.cardinals) + if(Process_Spacemove(anydir)) + Move(get_step(src, anydir), anydir) + turns_since_move = 0 + return 1 + +/mob/living/simple_animal/proc/handle_automated_speech(var/override) + set waitfor = FALSE + if(speak_chance) + if(prob(speak_chance) || override) + if(speak && speak.len) + if((emote_hear && emote_hear.len) || (emote_see && emote_see.len)) + var/length = speak.len + if(emote_hear && emote_hear.len) + length += emote_hear.len + if(emote_see && emote_see.len) + length += emote_see.len + var/randomValue = rand(1,length) + if(randomValue <= speak.len) + say(pick(speak), forced = "poly") + else + randomValue -= speak.len + if(emote_see && randomValue <= emote_see.len) + emote("me [pick(emote_see)]", 1) + else + emote("me [pick(emote_hear)]", 2) + else + say(pick(speak), forced = "poly") + else + if(!(emote_hear && emote_hear.len) && (emote_see && emote_see.len)) + emote("me", 1, pick(emote_see)) + if((emote_hear && emote_hear.len) && !(emote_see && emote_see.len)) + emote("me", 2, pick(emote_hear)) + if((emote_hear && emote_hear.len) && (emote_see && emote_see.len)) + var/length = emote_hear.len + emote_see.len + var/pick = rand(1,length) + if(pick <= emote_see.len) + emote("me", 1, pick(emote_see)) + else + emote("me", 2, pick(emote_hear)) + + +/mob/living/simple_animal/proc/environment_is_safe(datum/gas_mixture/environment, check_temp = FALSE) + . = TRUE + + if(pulledby && pulledby.grab_state >= GRAB_KILL && atmos_requirements["min_oxy"]) + . = FALSE //getting choked + + if(isturf(src.loc) && isopenturf(src.loc)) + var/turf/open/ST = src.loc + if(ST.air) + var/ST_gases = ST.air.gases + + var/tox = ST_gases[/datum/gas/plasma] + var/oxy = ST_gases[/datum/gas/oxygen] + var/n2 = ST_gases[/datum/gas/nitrogen] + var/co2 = ST_gases[/datum/gas/carbon_dioxide] + + GAS_GARBAGE_COLLECT(ST.air.gases) + + if(atmos_requirements["min_oxy"] && oxy < atmos_requirements["min_oxy"]) + . = FALSE + else if(atmos_requirements["max_oxy"] && oxy > atmos_requirements["max_oxy"]) + . = FALSE + else if(atmos_requirements["min_tox"] && tox < atmos_requirements["min_tox"]) + . = FALSE + else if(atmos_requirements["max_tox"] && tox > atmos_requirements["max_tox"]) + . = FALSE + else if(atmos_requirements["min_n2"] && n2 < atmos_requirements["min_n2"]) + . = FALSE + else if(atmos_requirements["max_n2"] && n2 > atmos_requirements["max_n2"]) + . = FALSE + else if(atmos_requirements["min_co2"] && co2 < atmos_requirements["min_co2"]) + . = FALSE + else if(atmos_requirements["max_co2"] && co2 > atmos_requirements["max_co2"]) + . = FALSE + else + if(atmos_requirements["min_oxy"] || atmos_requirements["min_tox"] || atmos_requirements["min_n2"] || atmos_requirements["min_co2"]) + . = FALSE + + if(check_temp) + var/areatemp = get_temperature(environment) + if((areatemp < minbodytemp) || (areatemp > maxbodytemp)) + . = FALSE + + +/mob/living/simple_animal/handle_environment(datum/gas_mixture/environment) + var/atom/A = src.loc + if(isturf(A)) + var/areatemp = get_temperature(environment) + if( abs(areatemp - bodytemperature) > 5) + var/diff = areatemp - bodytemperature + diff = diff / 5 + adjust_bodytemperature(diff) + + if(!environment_is_safe(environment)) + adjustHealth(unsuitable_atmos_damage) + + handle_temperature_damage() + +/mob/living/simple_animal/proc/handle_temperature_damage() + if((bodytemperature < minbodytemp) || (bodytemperature > maxbodytemp)) + adjustHealth(unsuitable_atmos_damage) + +/mob/living/simple_animal/gib() + if(butcher_results) + var/atom/Tsec = drop_location() + for(var/path in butcher_results) + for(var/i in 1 to butcher_results[path]) + new path(Tsec) + ..() + +/mob/living/simple_animal/gib_animation() + if(icon_gib) + new /obj/effect/temp_visual/gib_animation/animal(loc, icon_gib) + +/mob/living/simple_animal/say_mod(input, message_mode) + if(speak_emote && speak_emote.len) + verb_say = pick(speak_emote) + . = ..() + +/mob/living/simple_animal/emote(act, m_type=1, message = null, intentional = FALSE) + if(stat) + return + if(act == "scream") + message = "makes a loud and pained whimper." //ugly hack to stop animals screaming when crushed :P + act = "me" + ..(act, m_type, message) + +/mob/living/simple_animal/proc/set_varspeed(var_value) + speed = var_value + update_simplemob_varspeed() + +/mob/living/simple_animal/proc/update_simplemob_varspeed() + if(speed == 0) + remove_movespeed_modifier(MOVESPEED_ID_SIMPLEMOB_VARSPEED, TRUE) + add_movespeed_modifier(MOVESPEED_ID_SIMPLEMOB_VARSPEED, TRUE, 100, multiplicative_slowdown = speed, override = TRUE) + +/mob/living/simple_animal/Stat() + ..() + if(statpanel("Status")) + stat(null, "Health: [round((health / maxHealth) * 100)]%") + return 1 + +/mob/living/simple_animal/proc/drop_loot() + if(loot.len) + for(var/i in loot) + new i(loc) + +/mob/living/simple_animal/death(gibbed) + movement_type &= ~FLYING + if(nest) + nest.spawned_mobs -= src + nest = null + drop_loot() + if(dextrous) + drop_all_held_items() + if(!gibbed) + if(death_sound) + playsound(get_turf(src),death_sound, 200, 1) + if(deathmessage || !del_on_death) + emote("deathgasp") + if(del_on_death) + ..() + //Prevent infinite loops if the mob Destroy() is overridden in such + //a manner as to cause a call to death() again + del_on_death = FALSE + qdel(src) + else + health = 0 + icon_state = icon_dead + density = FALSE + lying = 1 + ..() + +/mob/living/simple_animal/proc/CanAttack(atom/the_target) + if(see_invisible < the_target.invisibility) + return FALSE + if(ismob(the_target)) + var/mob/M = the_target + if(M.status_flags & GODMODE) + return FALSE + if (isliving(the_target)) + var/mob/living/L = the_target + if(L.stat != CONSCIOUS) + return FALSE + if (ismecha(the_target)) + var/obj/mecha/M = the_target + if (M.occupant) + return FALSE + return TRUE + +/mob/living/simple_animal/handle_fire() + return + +/mob/living/simple_animal/IgniteMob() + return FALSE + +/mob/living/simple_animal/ExtinguishMob() + return + +/mob/living/simple_animal/revive(full_heal = 0, admin_revive = 0) + if(..()) //successfully ressuscitated from death + icon = initial(icon) + icon_state = icon_living + density = initial(density) + lying = 0 + . = 1 + movement_type = initial(movement_type) + +/mob/living/simple_animal/proc/make_babies() // <3 <3 <3 + if(gender != FEMALE || stat || next_scan_time > world.time || !childtype || !animal_species || !SSticker.IsRoundInProgress()) + return + next_scan_time = world.time + 400 + var/alone = 1 + var/mob/living/simple_animal/partner + var/children = 0 + for(var/mob/M in view(7, src)) + if(M.stat != CONSCIOUS) //Check if it's conscious FIRST. + continue + else if(istype(M, childtype)) //Check for children SECOND. + children++ + else if(istype(M, animal_species)) + if(M.ckey) + continue + else if(!istype(M, childtype) && M.gender == MALE) //Better safe than sorry ;_; + partner = M + + else if(isliving(M) && !faction_check_mob(M)) //shyness check. we're not shy in front of things that share a faction with us. + return //we never mate when not alone, so just abort early + + if(alone && partner && children < 3) + var/childspawn = pickweight(childtype) + var/turf/target = get_turf(loc) + if(target) + return new childspawn(target) + +/mob/living/simple_animal/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE) + if(incapacitated()) + to_chat(src, "You can't do that right now!") + return FALSE + if(be_close && !in_range(M, src)) + to_chat(src, "You are too far away!") + return FALSE + if(!(no_dextery || dextrous)) + to_chat(src, "You don't have the dexterity to do this!") + return FALSE + return TRUE + +/mob/living/simple_animal/stripPanelUnequip(obj/item/what, mob/who, where) + if(!canUseTopic(who, BE_CLOSE)) + return + else + ..() + +/mob/living/simple_animal/stripPanelEquip(obj/item/what, mob/who, where) + if(!canUseTopic(who, BE_CLOSE)) + return + else + ..() + +/mob/living/simple_animal/update_canmove(value_otherwise = TRUE) + if(IsUnconscious() || IsStun() || IsKnockdown() || stat || resting) + drop_all_held_items() + canmove = FALSE + else if(buckled) + canmove = FALSE + else + canmove = value_otherwise + update_transform() + update_action_buttons_icon() + return canmove + +/mob/living/simple_animal/update_transform() + var/matrix/ntransform = matrix(transform) //aka transform.Copy() + var/changed = 0 + + if(resize != RESIZE_DEFAULT_SIZE) + changed++ + ntransform.Scale(resize) + resize = RESIZE_DEFAULT_SIZE + + if(changed) + animate(src, transform = ntransform, time = 2, easing = EASE_IN|EASE_OUT) + +/mob/living/simple_animal/proc/sentience_act() //Called when a simple animal gains sentience via gold slime potion + toggle_ai(AI_OFF) // To prevent any weirdness. + +/mob/living/simple_animal/update_sight() + if(!client) + return + if(stat == DEAD) + sight = (SEE_TURFS|SEE_MOBS|SEE_OBJS) + see_in_dark = 8 + see_invisible = SEE_INVISIBLE_OBSERVER + return + + see_invisible = initial(see_invisible) + see_in_dark = initial(see_in_dark) + sight = initial(sight) + + if(client.eye != src) + var/atom/A = client.eye + if(A.update_remote_sight(src)) //returns 1 if we override all other sight updates. + return + sync_lighting_plane_alpha() + +/mob/living/simple_animal/get_idcard() + return access_card + +/mob/living/simple_animal/OpenCraftingMenu() + if(dextrous) + handcrafting.ui_interact(src) + +/mob/living/simple_animal/can_hold_items() + return dextrous + +/mob/living/simple_animal/IsAdvancedToolUser() + return dextrous + +/mob/living/simple_animal/activate_hand(selhand) + if(!dextrous) + return ..() + if(!selhand) + selhand = (active_hand_index % held_items.len)+1 + if(istext(selhand)) + selhand = lowertext(selhand) + if(selhand == "right" || selhand == "r") + selhand = 2 + if(selhand == "left" || selhand == "l") + selhand = 1 + if(selhand != active_hand_index) + swap_hand(selhand) + else + mode() + +/mob/living/simple_animal/swap_hand(hand_index) + if(!dextrous) + return ..() + if(!hand_index) + hand_index = (active_hand_index % held_items.len)+1 + var/obj/item/held_item = get_active_held_item() + if(held_item) + if(istype(held_item, /obj/item/twohanded)) + var/obj/item/twohanded/T = held_item + if(T.wielded == 1) + to_chat(usr, "Your other hand is too busy holding the [T.name].") + return + var/oindex = active_hand_index + active_hand_index = hand_index + if(hud_used) + var/obj/screen/inventory/hand/H + H = hud_used.hand_slots["[hand_index]"] + if(H) + H.update_icon() + H = hud_used.hand_slots["[oindex]"] + if(H) + H.update_icon() + +/mob/living/simple_animal/put_in_hands(obj/item/I, del_on_fail = FALSE, merge_stacks = TRUE) + . = ..(I, del_on_fail, merge_stacks) + update_inv_hands() + +/mob/living/simple_animal/update_inv_hands() + if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) + var/obj/item/l_hand = get_item_for_held_index(1) + var/obj/item/r_hand = get_item_for_held_index(2) + if(r_hand) + r_hand.layer = ABOVE_HUD_LAYER + r_hand.plane = ABOVE_HUD_PLANE + r_hand.screen_loc = ui_hand_position(get_held_index_of_item(r_hand)) + client.screen |= r_hand + if(l_hand) + l_hand.layer = ABOVE_HUD_LAYER + l_hand.plane = ABOVE_HUD_PLANE + l_hand.screen_loc = ui_hand_position(get_held_index_of_item(l_hand)) + client.screen |= l_hand + +//ANIMAL RIDING + +/mob/living/simple_animal/user_buckle_mob(mob/living/M, mob/user) + GET_COMPONENT(riding_datum, /datum/component/riding) + if(riding_datum) + if(user.incapacitated()) + return + for(var/atom/movable/A in get_turf(src)) + if(A != src && A != M && A.density) + return + M.forceMove(get_turf(src)) + return ..() + +/mob/living/simple_animal/relaymove(mob/user, direction) + GET_COMPONENT(riding_datum, /datum/component/riding) + if(tame && riding_datum) + riding_datum.handle_ride(user, direction) + +/mob/living/simple_animal/buckle_mob(mob/living/buckled_mob, force = 0, check_loc = 1) + . = ..() + LoadComponent(/datum/component/riding) + +/mob/living/simple_animal/proc/toggle_ai(togglestatus) + if (AIStatus != togglestatus) + if (togglestatus > 0 && togglestatus < 5) + if (togglestatus == AI_Z_OFF || AIStatus == AI_Z_OFF) + var/turf/T = get_turf(src) + if (AIStatus == AI_Z_OFF) + SSidlenpcpool.idle_mobs_by_zlevel[T.z] -= src + else + SSidlenpcpool.idle_mobs_by_zlevel[T.z] += src + GLOB.simple_animals[AIStatus] -= src + GLOB.simple_animals[togglestatus] += src + AIStatus = togglestatus + else + stack_trace("Something attempted to set simple animals AI to an invalid state: [togglestatus]") + +/mob/living/simple_animal/proc/consider_wakeup() + if (pulledby || shouldwakeup) + toggle_ai(AI_ON) + +/mob/living/simple_animal/adjustHealth(amount, updating_health = TRUE, forced = FALSE) + . = ..() + if(!ckey && !stat)//Not unconscious + if(AIStatus == AI_IDLE) + toggle_ai(AI_ON) + + +/mob/living/simple_animal/onTransitZ(old_z, new_z) + ..() + if (AIStatus == AI_Z_OFF) + SSidlenpcpool.idle_mobs_by_zlevel[old_z] -= src + toggle_ai(initial(AIStatus)) diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 3c86aba3b2..4159d9898a 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -46,7 +46,7 @@ var/gasdrained = min(powerproduction_drain*drainratio,loaded_tank.air_contents.gases[/datum/gas/plasma]) loaded_tank.air_contents.gases[/datum/gas/plasma] -= gasdrained loaded_tank.air_contents.gases[/datum/gas/tritium] += gasdrained - loaded_tank.air_contents.garbage_collect() + GAS_GARBAGE_COLLECT(loaded_tank.air_contents.gases) var/power_produced = RAD_COLLECTOR_OUTPUT add_avail(power_produced) @@ -60,7 +60,7 @@ loaded_tank.air_contents.gases[/datum/gas/tritium] -= gasdrained loaded_tank.air_contents.gases[/datum/gas/oxygen] -= gasdrained loaded_tank.air_contents.gases[/datum/gas/carbon_dioxide] += gasdrained*2 - loaded_tank.air_contents.garbage_collect() + GAS_GARBAGE_COLLECT(loaded_tank.air_contents.gases) var/bitcoins_mined = RAD_COLLECTOR_OUTPUT SSresearch.science_tech.add_point_type(TECHWEB_POINT_TYPE_DEFAULT, bitcoins_mined*RAD_COLLECTOR_MINING_CONVERSION_RATE) stored_power-=bitcoins_mined diff --git a/code/modules/research/xenobiology/crossbreeding/chilling.dm b/code/modules/research/xenobiology/crossbreeding/chilling.dm index c15e31267a..cfbbc8e4a1 100644 --- a/code/modules/research/xenobiology/crossbreeding/chilling.dm +++ b/code/modules/research/xenobiology/crossbreeding/chilling.dm @@ -103,7 +103,7 @@ Chilling extracts: if(istype(G)) G.gases[/datum/gas/plasma] = 0 filtered = TRUE - G.garbage_collect() + GAS_GARBAGE_COLLECT(G.gases) T.air_update_turf() if(filtered) user.visible_message("Cracks spread throughout [src], and some air is sucked in!") diff --git a/code/modules/surgery/organs/lungs.dm b/code/modules/surgery/organs/lungs.dm index 49b822d916..9a010e881c 100644 --- a/code/modules/surgery/organs/lungs.dm +++ b/code/modules/surgery/organs/lungs.dm @@ -339,7 +339,7 @@ SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "smell") handle_breath_temperature(breath, H) - breath.garbage_collect() + GAS_GARBAGE_COLLECT(breath.gases) return TRUE diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm index 959103819e..511cd9abfb 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm @@ -1,389 +1,389 @@ -/* -DOG BORG EQUIPMENT HERE -SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! -*/ - -/obj/item/dogborg/jaws - name = "Dogborg jaws" - desc = "The jaws of the debug errors oh god." - icon = 'icons/mob/dogborg.dmi' - flags_1 = CONDUCT_1 - force = 1 - throwforce = 0 - w_class = 3 - hitsound = 'sound/weapons/bite.ogg' - sharpness = IS_SHARP - -/obj/item/dogborg/jaws/big - name = "combat jaws" - desc = "The jaws of the law. Very sharp." - icon_state = "jaws" - force = 12 - attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") - -/obj/item/dogborg/jaws/small - name = "puppy jaws" - desc = "Rubberized teeth designed to protect accidental harm. Sharp enough for specialized tasks however." - icon_state = "smalljaws" - force = 6 - attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") - var/status = 0 - -/obj/item/dogborg/jaws/attack(atom/A, mob/living/silicon/robot/user) - ..() - user.do_attack_animation(A, ATTACK_EFFECT_BITE) - log_combat(user, A, "bit") - -/obj/item/dogborg/jaws/small/attack_self(mob/user) - var/mob/living/silicon/robot.R = user - if(R.cell && R.cell.charge > 100) - if(R.emagged && status == 0) - name = "combat jaws" - icon_state = "jaws" - desc = "The jaws of the law." - force = 12 - attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") - status = 1 - to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") - else - name = "puppy jaws" - icon_state = "smalljaws" - desc = "The jaws of a small dog." - force = 5 - attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") - status = 0 - if(R.emagged) - to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") - update_icon() - -//Boop - -/obj/item/analyzer/nose - name = "boop module" - icon = 'icons/mob/dogborg.dmi' - icon_state = "nose" - desc = "The BOOP module" - flags_1 = CONDUCT_1 - force = 0 - throwforce = 0 - attack_verb = list("nuzzles", "pushes", "boops") - w_class = 1 - -/obj/item/analyzer/nose/attack_self(mob/user) - user.visible_message("[user] sniffs around the air.", "You sniff the air for gas traces.") - - var/turf/location = user.loc - if(!istype(location)) - return - - var/datum/gas_mixture/environment = location.return_air() - - var/pressure = environment.return_pressure() - var/total_moles = environment.total_moles() - - to_chat(user, "Results:") - if(abs(pressure - ONE_ATMOSPHERE) < 10) - to_chat(user, "Pressure: [round(pressure,0.1)] kPa") - else - to_chat(user, "Pressure: [round(pressure,0.1)] kPa") - if(total_moles) - var/list/env_gases = environment.gases - - var/o2_concentration = env_gases[/datum/gas/oxygen]/total_moles - var/n2_concentration = env_gases[/datum/gas/nitrogen]/total_moles - var/co2_concentration = env_gases[/datum/gas/carbon_dioxide]/total_moles - var/plasma_concentration = env_gases[/datum/gas/plasma]/total_moles - environment.garbage_collect() - - if(abs(n2_concentration - N2STANDARD) < 20) - to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] %") - else - to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] %") - - if(abs(o2_concentration - O2STANDARD) < 2) - to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] %") - else - to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] %") - - if(co2_concentration > 0.01) - to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] %") - else - to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] %") - - if(plasma_concentration > 0.005) - to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] %") - else - to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] %") - - - for(var/id in env_gases) - if(id in GLOB.hardcoded_gases) - continue - var/gas_concentration = env_gases[id]/total_moles - to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %") - to_chat(user, "Temperature: [round(environment.temperature-T0C)] °C") - -/obj/item/analyzer/nose/AltClick(mob/user) //Barometer output for measuring when the next storm happens - . = ..() - -/obj/item/analyzer/nose/afterattack(atom/target, mob/user, proximity) - . = ..() - if(!proximity) - return - do_attack_animation(target, null, src) - user.visible_message("[user] [pick(attack_verb)] \the [target.name] with their nose!") - -//Delivery -/obj/item/storage/bag/borgdelivery - name = "fetching storage" - desc = "Fetch the thing!" - icon = 'icons/mob/dogborg.dmi' - icon_state = "dbag" - w_class = WEIGHT_CLASS_BULKY - -/obj/item/storage/bag/borgdelivery/ComponentInitialize() - . = ..() - GET_COMPONENT(STR, /datum/component/storage) - STR.max_w_class = WEIGHT_CLASS_BULKY - STR.max_combined_w_class = 5 - STR.max_items = 1 - STR.cant_hold = typecacheof(list(/obj/item/disk/nuclear, /obj/item/radio/intercom)) - -//Tongue stuff -/obj/item/soap/tongue - name = "synthetic tongue" - desc = "Useful for slurping mess off the floor before affectionally licking the crew members in the face." - icon = 'icons/mob/dogborg.dmi' - icon_state = "synthtongue" - hitsound = 'sound/effects/attackblob.ogg' - cleanspeed = 80 - var/status = 0 - -/obj/item/soap/tongue/scrubpup - cleanspeed = 25 //slightly faster than a mop. - -/obj/item/soap/tongue/New() - ..() - item_flags |= NOBLUDGEON //No more attack messages - -/obj/item/soap/tongue/attack_self(mob/user) - var/mob/living/silicon/robot.R = user - if(R.cell && R.cell.charge > 100) - if(R.emagged && status == 0) - status = !status - name = "energized tongue" - desc = "Your tongue is energized for dangerously maximum efficency." - icon_state = "syndietongue" - to_chat(user, "Your tongue is now [status ? "Energized" : "Normal"].") - cleanspeed = 10 //(nerf'd)tator soap stat - else - status = 0 - name = "synthetic tongue" - desc = "Useful for slurping mess off the floor before affectionally licking the crew members in the face." - icon_state = "synthtongue" - cleanspeed = initial(cleanspeed) - if(R.emagged) - to_chat(user, "Your tongue is now [status ? "Energized" : "Normal"].") - update_icon() - -/obj/item/soap/tongue/afterattack(atom/target, mob/user, proximity) - var/mob/living/silicon/robot.R = user - if(!proximity || !check_allowed_items(target)) - return - if(R.client && (target in R.client.screen)) - to_chat(R, "You need to take that [target.name] off before cleaning it!") - else if(is_cleanable(target)) - R.visible_message("[R] begins to lick off \the [target.name].", "You begin to lick off \the [target.name]...") - if(do_after(R, src.cleanspeed, target = target)) - if(!in_range(src, target)) //Proximity is probably old news by now, do a new check. - return //If they moved away, you can't eat them. - to_chat(R, "You finish licking off \the [target.name].") - qdel(target) - R.cell.give(50) - else if(isobj(target)) //hoo boy. danger zone man - if(istype(target,/obj/item/trash)) - R.visible_message("[R] nibbles away at \the [target.name].", "You begin to nibble away at \the [target.name]...") - if(!do_after(R, src.cleanspeed, target = target)) - return //If they moved away, you can't eat them. - to_chat(R, "You finish off \the [target.name].") - qdel(target) - R.cell.give(250) - return - if(istype(target,/obj/item/stock_parts/cell)) - R.visible_message("[R] begins cramming \the [target.name] down its throat.", "You begin cramming \the [target.name] down your throat...") - if(!do_after(R, 50, target = target)) - return //If they moved away, you can't eat them. - to_chat(R, "You finish off \the [target.name].") - var/obj/item/stock_parts/cell.C = target - R.cell.charge = R.cell.charge + (C.charge / 3) //Instant full cell upgrades op idgaf - qdel(target) - return - var/obj/item/I = target //HAHA FUCK IT, NOT LIKE WE ALREADY HAVE A SHITTON OF WAYS TO REMOVE SHIT - if(!I.anchored && R.emagged) - R.visible_message("[R] begins chewing up \the [target.name]. Looks like it's trying to loophole around its diet restriction!", "You begin chewing up \the [target.name]...") - if(!do_after(R, 100, target = I)) //Nerf dat time yo - return //If they moved away, you can't eat them. - visible_message("[R] chews up \the [target.name] and cleans off the debris!") - to_chat(R, "You finish off \the [target.name].") - qdel(I) - R.cell.give(500) - return - R.visible_message("[R] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") - else if(ishuman(target)) - var/mob/living/L = target - if(status == 0 && check_zone(R.zone_selected) == "head") - R.visible_message("\the [R] affectionally licks \the [L]'s face!", "You affectionally lick \the [L]'s face!") - playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) - if(istype(L) && L.fire_stacks > 0) - L.adjust_fire_stacks(-10) - return - else if(status == 0) - R.visible_message("\the [R] affectionally licks \the [L]!", "You affectionally lick \the [L]!") - playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) - if(istype(L) && L.fire_stacks > 0) - L.adjust_fire_stacks(-10) - return - else - if(R.cell.charge <= 800) - to_chat(R, "Insufficent Power!") - return - L.Stun(4) // normal stunbaton is force 7 gimme a break good sir! - L.Knockdown(80) - L.apply_effect(EFFECT_STUTTER, 4) - L.visible_message("[R] has shocked [L] with its tongue!", \ - "[R] has shocked you with its tongue!") - playsound(loc, 'sound/weapons/Egloves.ogg', 50, 1, -1) - R.cell.use(666) - log_combat(R, L, "tongue stunned") - - else if(istype(target, /obj/structure/window)) - R.visible_message("[R] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") - if(do_after(user, src.cleanspeed, target = target)) - to_chat(user, "You clean \the [target.name].") - target.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - target.set_opacity(initial(target.opacity)) - else - R.visible_message("[R] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") - if(do_after(user, src.cleanspeed, target = target)) - to_chat(user, "You clean \the [target.name].") - var/obj/effect/decal/cleanable/C = locate() in target - qdel(C) - target.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - SEND_SIGNAL(target, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_MEDIUM) - target.wash_cream() - return - -//Dogfood - -/obj/item/trash/rkibble - name = "robo kibble" - desc = "A novelty bowl of assorted mech fabricator byproducts. Mockingly feed this to the sec-dog to help it recharge." - icon = 'icons/mob/dogborg.dmi' - icon_state= "kibble" - -//Defibs - -/obj/item/twohanded/shockpaddles/cyborg/hound - name = "Paws of Life" - desc = "MediHound specific shock paws." - icon = 'icons/mob/dogborg.dmi' - icon_state = "defibpaddles0" - item_state = "defibpaddles0" - -// Pounce stuff for K-9 - -/obj/item/dogborg/pounce - name = "pounce" - icon = 'icons/mob/dogborg.dmi' - icon_state = "pounce" - desc = "Leap at your target to momentarily stun them." - force = 0 - throwforce = 0 - -/obj/item/dogborg/pounce/New() - ..() - item_flags |= NOBLUDGEON - -/mob/living/silicon/robot - var/leaping = 0 - var/pounce_cooldown = 0 - var/pounce_cooldown_time = 50 //Nearly doubled, u happy? - var/pounce_spoolup = 3 - var/leap_at - var/disabler - var/laser - var/sleeper_g - var/sleeper_r - var/sleeper_nv - -#define MAX_K9_LEAP_DIST 4 //because something's definitely borked the pounce functioning from a distance. - -/obj/item/dogborg/pounce/afterattack(atom/A, mob/user) - var/mob/living/silicon/robot/R = user - if(R && !R.pounce_cooldown) - R.pounce_cooldown = !R.pounce_cooldown - to_chat(R, "Your targeting systems lock on to [A]...") - addtimer(CALLBACK(R, /mob/living/silicon/robot.proc/leap_at, A), R.pounce_spoolup) - spawn(R.pounce_cooldown_time) - R.pounce_cooldown = !R.pounce_cooldown - else if(R && R.pounce_cooldown) - to_chat(R, "Your leg actuators are still recharging!") - -/mob/living/silicon/robot/proc/leap_at(atom/A) - if(leaping || stat || buckled || lying) - return - - if(!has_gravity(src) || !has_gravity(A)) - to_chat(src,"It is unsafe to leap without gravity!") - //It's also extremely buggy visually, so it's balance+bugfix - return - - if(cell.charge <= 500) - to_chat(src,"Insufficent reserves for jump actuators!") - return - - else - leaping = 1 - weather_immunities += "lava" - pixel_y = 10 - update_icons() - throw_at(A, MAX_K9_LEAP_DIST, 1, spin=0, diagonals_first = 1) - cell.use(500) //Doubled the energy consumption - weather_immunities -= "lava" - -/mob/living/silicon/robot/throw_impact(atom/A) - - if(!leaping) - return ..() - - if(A) - if(isliving(A)) - var/mob/living/L = A - var/blocked = 0 - if(ishuman(A)) - var/mob/living/carbon/human/H = A - if(H.check_shields(0, "the [name]", src, attack_type = LEAP_ATTACK)) - blocked = 1 - if(!blocked) - L.visible_message("[src] pounces on [L]!", "[src] pounces on you!") - L.Knockdown(iscarbon(L) ? 450 : 45) // Temporary. If someone could rework how dogborg pounces work to accomodate for combat changes, that'd be nice. - playsound(src, 'sound/weapons/Egloves.ogg', 50, 1) - sleep(2)//Runtime prevention (infinite bump() calls on hulks) - step_towards(src,L) - log_combat(src, L, "borg pounced") - else - Knockdown(45, 1, 1) - - pounce_cooldown = !pounce_cooldown - spawn(pounce_cooldown_time) //3s by default - pounce_cooldown = !pounce_cooldown - else if(A.density && !A.CanPass(src)) - visible_message("[src] smashes into [A]!", "You smash into [A]!") - playsound(src, 'sound/items/trayhit1.ogg', 50, 1) - Knockdown(45, 1, 1) - - if(leaping) - leaping = 0 - pixel_y = initial(pixel_y) - update_icons() - update_canmove() +/* +DOG BORG EQUIPMENT HERE +SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! +*/ + +/obj/item/dogborg/jaws + name = "Dogborg jaws" + desc = "The jaws of the debug errors oh god." + icon = 'icons/mob/dogborg.dmi' + flags_1 = CONDUCT_1 + force = 1 + throwforce = 0 + w_class = 3 + hitsound = 'sound/weapons/bite.ogg' + sharpness = IS_SHARP + +/obj/item/dogborg/jaws/big + name = "combat jaws" + desc = "The jaws of the law. Very sharp." + icon_state = "jaws" + force = 12 + attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") + +/obj/item/dogborg/jaws/small + name = "puppy jaws" + desc = "Rubberized teeth designed to protect accidental harm. Sharp enough for specialized tasks however." + icon_state = "smalljaws" + force = 6 + attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") + var/status = 0 + +/obj/item/dogborg/jaws/attack(atom/A, mob/living/silicon/robot/user) + ..() + user.do_attack_animation(A, ATTACK_EFFECT_BITE) + log_combat(user, A, "bit") + +/obj/item/dogborg/jaws/small/attack_self(mob/user) + var/mob/living/silicon/robot.R = user + if(R.cell && R.cell.charge > 100) + if(R.emagged && status == 0) + name = "combat jaws" + icon_state = "jaws" + desc = "The jaws of the law." + force = 12 + attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") + status = 1 + to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") + else + name = "puppy jaws" + icon_state = "smalljaws" + desc = "The jaws of a small dog." + force = 5 + attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") + status = 0 + if(R.emagged) + to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") + update_icon() + +//Boop + +/obj/item/analyzer/nose + name = "boop module" + icon = 'icons/mob/dogborg.dmi' + icon_state = "nose" + desc = "The BOOP module" + flags_1 = CONDUCT_1 + force = 0 + throwforce = 0 + attack_verb = list("nuzzles", "pushes", "boops") + w_class = 1 + +/obj/item/analyzer/nose/attack_self(mob/user) + user.visible_message("[user] sniffs around the air.", "You sniff the air for gas traces.") + + var/turf/location = user.loc + if(!istype(location)) + return + + var/datum/gas_mixture/environment = location.return_air() + + var/pressure = environment.return_pressure() + var/total_moles = environment.total_moles() + + to_chat(user, "Results:") + if(abs(pressure - ONE_ATMOSPHERE) < 10) + to_chat(user, "Pressure: [round(pressure,0.1)] kPa") + else + to_chat(user, "Pressure: [round(pressure,0.1)] kPa") + if(total_moles) + var/list/env_gases = environment.gases + + var/o2_concentration = env_gases[/datum/gas/oxygen]/total_moles + var/n2_concentration = env_gases[/datum/gas/nitrogen]/total_moles + var/co2_concentration = env_gases[/datum/gas/carbon_dioxide]/total_moles + var/plasma_concentration = env_gases[/datum/gas/plasma]/total_moles + GAS_GARBAGE_COLLECT(environment.gases) + + if(abs(n2_concentration - N2STANDARD) < 20) + to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] %") + else + to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] %") + + if(abs(o2_concentration - O2STANDARD) < 2) + to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] %") + else + to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] %") + + if(co2_concentration > 0.01) + to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] %") + else + to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] %") + + if(plasma_concentration > 0.005) + to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] %") + else + to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] %") + + + for(var/id in env_gases) + if(id in GLOB.hardcoded_gases) + continue + var/gas_concentration = env_gases[id]/total_moles + to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %") + to_chat(user, "Temperature: [round(environment.temperature-T0C)] °C") + +/obj/item/analyzer/nose/AltClick(mob/user) //Barometer output for measuring when the next storm happens + . = ..() + +/obj/item/analyzer/nose/afterattack(atom/target, mob/user, proximity) + . = ..() + if(!proximity) + return + do_attack_animation(target, null, src) + user.visible_message("[user] [pick(attack_verb)] \the [target.name] with their nose!") + +//Delivery +/obj/item/storage/bag/borgdelivery + name = "fetching storage" + desc = "Fetch the thing!" + icon = 'icons/mob/dogborg.dmi' + icon_state = "dbag" + w_class = WEIGHT_CLASS_BULKY + +/obj/item/storage/bag/borgdelivery/ComponentInitialize() + . = ..() + GET_COMPONENT(STR, /datum/component/storage) + STR.max_w_class = WEIGHT_CLASS_BULKY + STR.max_combined_w_class = 5 + STR.max_items = 1 + STR.cant_hold = typecacheof(list(/obj/item/disk/nuclear, /obj/item/radio/intercom)) + +//Tongue stuff +/obj/item/soap/tongue + name = "synthetic tongue" + desc = "Useful for slurping mess off the floor before affectionally licking the crew members in the face." + icon = 'icons/mob/dogborg.dmi' + icon_state = "synthtongue" + hitsound = 'sound/effects/attackblob.ogg' + cleanspeed = 80 + var/status = 0 + +/obj/item/soap/tongue/scrubpup + cleanspeed = 25 //slightly faster than a mop. + +/obj/item/soap/tongue/New() + ..() + item_flags |= NOBLUDGEON //No more attack messages + +/obj/item/soap/tongue/attack_self(mob/user) + var/mob/living/silicon/robot.R = user + if(R.cell && R.cell.charge > 100) + if(R.emagged && status == 0) + status = !status + name = "energized tongue" + desc = "Your tongue is energized for dangerously maximum efficency." + icon_state = "syndietongue" + to_chat(user, "Your tongue is now [status ? "Energized" : "Normal"].") + cleanspeed = 10 //(nerf'd)tator soap stat + else + status = 0 + name = "synthetic tongue" + desc = "Useful for slurping mess off the floor before affectionally licking the crew members in the face." + icon_state = "synthtongue" + cleanspeed = initial(cleanspeed) + if(R.emagged) + to_chat(user, "Your tongue is now [status ? "Energized" : "Normal"].") + update_icon() + +/obj/item/soap/tongue/afterattack(atom/target, mob/user, proximity) + var/mob/living/silicon/robot.R = user + if(!proximity || !check_allowed_items(target)) + return + if(R.client && (target in R.client.screen)) + to_chat(R, "You need to take that [target.name] off before cleaning it!") + else if(is_cleanable(target)) + R.visible_message("[R] begins to lick off \the [target.name].", "You begin to lick off \the [target.name]...") + if(do_after(R, src.cleanspeed, target = target)) + if(!in_range(src, target)) //Proximity is probably old news by now, do a new check. + return //If they moved away, you can't eat them. + to_chat(R, "You finish licking off \the [target.name].") + qdel(target) + R.cell.give(50) + else if(isobj(target)) //hoo boy. danger zone man + if(istype(target,/obj/item/trash)) + R.visible_message("[R] nibbles away at \the [target.name].", "You begin to nibble away at \the [target.name]...") + if(!do_after(R, src.cleanspeed, target = target)) + return //If they moved away, you can't eat them. + to_chat(R, "You finish off \the [target.name].") + qdel(target) + R.cell.give(250) + return + if(istype(target,/obj/item/stock_parts/cell)) + R.visible_message("[R] begins cramming \the [target.name] down its throat.", "You begin cramming \the [target.name] down your throat...") + if(!do_after(R, 50, target = target)) + return //If they moved away, you can't eat them. + to_chat(R, "You finish off \the [target.name].") + var/obj/item/stock_parts/cell.C = target + R.cell.charge = R.cell.charge + (C.charge / 3) //Instant full cell upgrades op idgaf + qdel(target) + return + var/obj/item/I = target //HAHA FUCK IT, NOT LIKE WE ALREADY HAVE A SHITTON OF WAYS TO REMOVE SHIT + if(!I.anchored && R.emagged) + R.visible_message("[R] begins chewing up \the [target.name]. Looks like it's trying to loophole around its diet restriction!", "You begin chewing up \the [target.name]...") + if(!do_after(R, 100, target = I)) //Nerf dat time yo + return //If they moved away, you can't eat them. + visible_message("[R] chews up \the [target.name] and cleans off the debris!") + to_chat(R, "You finish off \the [target.name].") + qdel(I) + R.cell.give(500) + return + R.visible_message("[R] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") + else if(ishuman(target)) + var/mob/living/L = target + if(status == 0 && check_zone(R.zone_selected) == "head") + R.visible_message("\the [R] affectionally licks \the [L]'s face!", "You affectionally lick \the [L]'s face!") + playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) + if(istype(L) && L.fire_stacks > 0) + L.adjust_fire_stacks(-10) + return + else if(status == 0) + R.visible_message("\the [R] affectionally licks \the [L]!", "You affectionally lick \the [L]!") + playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) + if(istype(L) && L.fire_stacks > 0) + L.adjust_fire_stacks(-10) + return + else + if(R.cell.charge <= 800) + to_chat(R, "Insufficent Power!") + return + L.Stun(4) // normal stunbaton is force 7 gimme a break good sir! + L.Knockdown(80) + L.apply_effect(EFFECT_STUTTER, 4) + L.visible_message("[R] has shocked [L] with its tongue!", \ + "[R] has shocked you with its tongue!") + playsound(loc, 'sound/weapons/Egloves.ogg', 50, 1, -1) + R.cell.use(666) + log_combat(R, L, "tongue stunned") + + else if(istype(target, /obj/structure/window)) + R.visible_message("[R] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") + if(do_after(user, src.cleanspeed, target = target)) + to_chat(user, "You clean \the [target.name].") + target.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) + target.set_opacity(initial(target.opacity)) + else + R.visible_message("[R] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") + if(do_after(user, src.cleanspeed, target = target)) + to_chat(user, "You clean \the [target.name].") + var/obj/effect/decal/cleanable/C = locate() in target + qdel(C) + target.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) + SEND_SIGNAL(target, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_MEDIUM) + target.wash_cream() + return + +//Dogfood + +/obj/item/trash/rkibble + name = "robo kibble" + desc = "A novelty bowl of assorted mech fabricator byproducts. Mockingly feed this to the sec-dog to help it recharge." + icon = 'icons/mob/dogborg.dmi' + icon_state= "kibble" + +//Defibs + +/obj/item/twohanded/shockpaddles/cyborg/hound + name = "Paws of Life" + desc = "MediHound specific shock paws." + icon = 'icons/mob/dogborg.dmi' + icon_state = "defibpaddles0" + item_state = "defibpaddles0" + +// Pounce stuff for K-9 + +/obj/item/dogborg/pounce + name = "pounce" + icon = 'icons/mob/dogborg.dmi' + icon_state = "pounce" + desc = "Leap at your target to momentarily stun them." + force = 0 + throwforce = 0 + +/obj/item/dogborg/pounce/New() + ..() + item_flags |= NOBLUDGEON + +/mob/living/silicon/robot + var/leaping = 0 + var/pounce_cooldown = 0 + var/pounce_cooldown_time = 50 //Nearly doubled, u happy? + var/pounce_spoolup = 3 + var/leap_at + var/disabler + var/laser + var/sleeper_g + var/sleeper_r + var/sleeper_nv + +#define MAX_K9_LEAP_DIST 4 //because something's definitely borked the pounce functioning from a distance. + +/obj/item/dogborg/pounce/afterattack(atom/A, mob/user) + var/mob/living/silicon/robot/R = user + if(R && !R.pounce_cooldown) + R.pounce_cooldown = !R.pounce_cooldown + to_chat(R, "Your targeting systems lock on to [A]...") + addtimer(CALLBACK(R, /mob/living/silicon/robot.proc/leap_at, A), R.pounce_spoolup) + spawn(R.pounce_cooldown_time) + R.pounce_cooldown = !R.pounce_cooldown + else if(R && R.pounce_cooldown) + to_chat(R, "Your leg actuators are still recharging!") + +/mob/living/silicon/robot/proc/leap_at(atom/A) + if(leaping || stat || buckled || lying) + return + + if(!has_gravity(src) || !has_gravity(A)) + to_chat(src,"It is unsafe to leap without gravity!") + //It's also extremely buggy visually, so it's balance+bugfix + return + + if(cell.charge <= 500) + to_chat(src,"Insufficent reserves for jump actuators!") + return + + else + leaping = 1 + weather_immunities += "lava" + pixel_y = 10 + update_icons() + throw_at(A, MAX_K9_LEAP_DIST, 1, spin=0, diagonals_first = 1) + cell.use(500) //Doubled the energy consumption + weather_immunities -= "lava" + +/mob/living/silicon/robot/throw_impact(atom/A) + + if(!leaping) + return ..() + + if(A) + if(isliving(A)) + var/mob/living/L = A + var/blocked = 0 + if(ishuman(A)) + var/mob/living/carbon/human/H = A + if(H.check_shields(0, "the [name]", src, attack_type = LEAP_ATTACK)) + blocked = 1 + if(!blocked) + L.visible_message("[src] pounces on [L]!", "[src] pounces on you!") + L.Knockdown(iscarbon(L) ? 450 : 45) // Temporary. If someone could rework how dogborg pounces work to accomodate for combat changes, that'd be nice. + playsound(src, 'sound/weapons/Egloves.ogg', 50, 1) + sleep(2)//Runtime prevention (infinite bump() calls on hulks) + step_towards(src,L) + log_combat(src, L, "borg pounced") + else + Knockdown(45, 1, 1) + + pounce_cooldown = !pounce_cooldown + spawn(pounce_cooldown_time) //3s by default + pounce_cooldown = !pounce_cooldown + else if(A.density && !A.CanPass(src)) + visible_message("[src] smashes into [A]!", "You smash into [A]!") + playsound(src, 'sound/items/trayhit1.ogg', 50, 1) + Knockdown(45, 1, 1) + + if(leaping) + leaping = 0 + pixel_y = initial(pixel_y) + update_icons() + update_canmove() From f7203a3428a663ee4e07adac85500468ad85fd3c Mon Sep 17 00:00:00 2001 From: deathride58 Date: Sun, 14 Apr 2019 15:00:02 -0400 Subject: [PATCH 008/370] caches the meta gas info list in heat_capacity() to shave off a mere 2e-7 from its average cost --- code/modules/atmospherics/gasmixtures/gas_mixture.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index a112eabbf7..fa64e95bc0 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -24,9 +24,10 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm /datum/gas_mixture/proc/heat_capacity() //joules per kelvin var/list/cached_gases = gases + var/list/cached_gasinfo = GLOB.meta_gas_info . = 0 for(var/id in cached_gases) - . += cached_gases[id] * GLOB.meta_gas_info[id][META_GAS_SPECIFIC_HEAT] + . += cached_gases[id] * cached_gasinfo[id][META_GAS_SPECIFIC_HEAT] //TODO - itll absolutely be worth splitting the meta_gas_info list into multiple lists to bypass the overhead associated with accessing lists within lists /datum/gas_mixture/turf/heat_capacity() . = ..() From 905f32b193d6a14a611c32b765e32256f6b5fa73 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Sun, 14 Apr 2019 16:40:37 -0400 Subject: [PATCH 009/370] further optimizes performance by making all of the meta gas properties use their own individual lists instead of being in a messy nested list --- code/datums/diseases/advance/symptoms/heal.dm | 2 +- code/game/machinery/computer/atmos_control.dm | 2 +- .../objects/effects/spawners/bombspawner.dm | 2 +- code/game/objects/items/devices/PDA/PDA.dm | 2 +- code/game/objects/items/devices/scanners.dm | 4 +- code/modules/admin/verbs/diagnostics.dm | 2 +- .../environmental/LINDA_turf_tile.dm | 5 +- .../atmospherics/gasmixtures/gas_mixture.dm | 19 ++++- .../atmospherics/gasmixtures/gas_types.dm | 73 ++++++++++++++----- .../atmospherics/gasmixtures/reactions.dm | 4 +- .../atmospherics/machinery/airalarm.dm | 6 +- .../components/trinary_devices/filter.dm | 9 +-- .../components/unary_devices/tank.dm | 2 +- .../components/unary_devices/vent_scrubber.dm | 5 +- .../machinery/portable/canister.dm | 6 +- .../machinery/portable/scrubber.dm | 5 +- .../subtypes/atmospherics.dm | 2 +- .../integrated_electronics/subtypes/input.dm | 2 +- .../mob/living/silicon/pai/software.dm | 2 +- code/modules/mob/mob.dm | 2 +- .../file_system/programs/sm_monitor.dm | 4 +- .../living/silicon/robot/dogborg_equipment.dm | 2 +- 22 files changed, 101 insertions(+), 61 deletions(-) diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index ff9eda0766..0a4d192319 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -372,7 +372,7 @@ environment = M.loc.return_air() if(environment) plasmamount = environment.gases[/datum/gas/plasma] - if(plasmamount && plasmamount > GLOB.meta_gas_info[/datum/gas/plasma][META_GAS_MOLES_VISIBLE]) //if there's enough plasma in the air to see + if(plasmamount && plasmamount > GLOB.meta_gas_visibility[/datum/gas/plasma]) //if there's enough plasma in the air to see . += power * 0.5 if(M.reagents.has_reagent("plasma")) . += power * 0.75 diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm index 191498e4e9..6576f51e46 100644 --- a/code/game/machinery/computer/atmos_control.dm +++ b/code/game/machinery/computer/atmos_control.dm @@ -59,7 +59,7 @@ var/total_moles = air_sample.total_moles() if(total_moles) for(var/gas_id in air_sample.gases) - var/gas_name = GLOB.meta_gas_info[gas_id][META_GAS_NAME] + var/gas_name = GLOB.meta_gas_names[gas_id] signal.data["gases"][gas_name] = air_sample.gases[gas_id] / total_moles * 100 radio_connection.post_signal(src, signal, filter = RADIO_ATMOSIA) diff --git a/code/game/objects/effects/spawners/bombspawner.dm b/code/game/objects/effects/spawners/bombspawner.dm index 426abb5514..65395d534a 100644 --- a/code/game/objects/effects/spawners/bombspawner.dm +++ b/code/game/objects/effects/spawners/bombspawner.dm @@ -1,6 +1,6 @@ #define CELSIUS_TO_KELVIN(T_K) ((T_K) + T0C) -#define OPTIMAL_TEMP_K_PLA_BURN_SCALE(PRESSURE_P,PRESSURE_O,TEMP_O) (((PRESSURE_P) * GLOB.meta_gas_info[/datum/gas/plasma][META_GAS_SPECIFIC_HEAT]) / (((PRESSURE_P) * GLOB.meta_gas_info[/datum/gas/plasma][META_GAS_SPECIFIC_HEAT] + (PRESSURE_O) * GLOB.meta_gas_info[/datum/gas/oxygen][META_GAS_SPECIFIC_HEAT]) / PLASMA_UPPER_TEMPERATURE - (PRESSURE_O) * GLOB.meta_gas_info[/datum/gas/oxygen][META_GAS_SPECIFIC_HEAT] / CELSIUS_TO_KELVIN(TEMP_O))) +#define OPTIMAL_TEMP_K_PLA_BURN_SCALE(PRESSURE_P,PRESSURE_O,TEMP_O) (((PRESSURE_P) * GLOB.meta_gas_specific_heats[/datum/gas/plasma]) / (((PRESSURE_P) * GLOB.meta_gas_specific_heats[/datum/gas/plasma] + (PRESSURE_O) * GLOB.meta_gas_specific_heats[/datum/gas/oxygen]) / PLASMA_UPPER_TEMPERATURE - (PRESSURE_O) * GLOB.meta_gas_specific_heats[/datum/gas/oxygen] / CELSIUS_TO_KELVIN(TEMP_O))) #define OPTIMAL_TEMP_K_PLA_BURN_RATIO(PRESSURE_P,PRESSURE_O,TEMP_O) (CELSIUS_TO_KELVIN(TEMP_O) * PLASMA_OXYGEN_FULLBURN * (PRESSURE_P) / (PRESSURE_O)) /obj/effect/spawner/newbomb diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 29cd150fd3..4215e2e0a2 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -360,7 +360,7 @@ GLOBAL_LIST_EMPTY(PDAs) for(var/id in env_gases) var/gas_level = env_gases[id]/total_moles if(gas_level > 0) - dat += "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_level*100, 0.01)]%
" + dat += "[GLOB.meta_gas_names[id]]: [round(gas_level*100, 0.01)]%
" dat += "Temperature: [round(environment.temperature-T0C)]°C
" dat += "
" diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 37243acc40..e4e37c4b3b 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -450,7 +450,7 @@ SLIME SCANNER if(id in GLOB.hardcoded_gases) continue var/gas_concentration = env_gases[id]/total_moles - to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] % ([round(env_gases[id], 0.01)] mol)") + to_chat(user, "[GLOB.meta_gas_names[id]]: [round(gas_concentration*100, 0.01)] % ([round(env_gases[id], 0.01)] mol)") to_chat(user, "Temperature: [round(environment.temperature-T0C, 0.01)] °C ([round(environment.temperature, 0.01)] K)") /obj/item/analyzer/AltClick(mob/user) //Barometer output for measuring when the next storm happens @@ -541,7 +541,7 @@ SLIME SCANNER var/list/cached_gases = air_contents.gases for(var/id in cached_gases) var/gas_concentration = cached_gases[id]/total_moles - to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] % ([round(cached_gases[id], 0.01)] mol)") + to_chat(user, "[GLOB.meta_gas_names[id]]: [round(gas_concentration*100, 0.01)] % ([round(cached_gases[id], 0.01)] mol)") to_chat(user, "Temperature: [round(temperature - T0C,0.01)] °C ([round(temperature, 0.01)] K)") else diff --git a/code/modules/admin/verbs/diagnostics.dm b/code/modules/admin/verbs/diagnostics.dm index 83651f81a7..b19b2a91d8 100644 --- a/code/modules/admin/verbs/diagnostics.dm +++ b/code/modules/admin/verbs/diagnostics.dm @@ -11,7 +11,7 @@ for(var/id in env_gases) var/moles = env_gases[id] if (moles >= 0.00001) - lines += "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [moles] mol" + lines += "[GLOB.meta_gas_names[id]]: [moles] mol" to_chat(usr, lines.Join("\n")) /client/proc/air_status(turf/target) diff --git a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm index 0fa81970d3..2a182a68b4 100644 --- a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm +++ b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm @@ -121,9 +121,8 @@ if (nonoverlaying_gases[id]) continue var/gas = gases[id] - var/gas_meta = GLOB.meta_gas_info[id] - var/gas_overlay = gas_meta[META_GAS_OVERLAY] - if(gas_overlay && gas > gas_meta[META_GAS_MOLES_VISIBLE]) + var/gas_overlay = GLOB.meta_gas_overlays[id] + if(gas_overlay && gas > GLOB.meta_gas_visibility[id]) . += gas_overlay[min(FACTOR_GAS_VISIBLE_MAX, CEILING(gas / MOLES_GAS_VISIBLE_STEP, 1))] /proc/typecache_of_gases_with_no_overlays() diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index fa64e95bc0..9858db2abb 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -5,7 +5,16 @@ What are the archived variables for? */ #define MINIMUM_HEAT_CAPACITY 0.0003 #define MINIMUM_MOLE_COUNT 0.01 -GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm + +//Unomos - global list inits for all of the meta gas lists. +//This setup allows procs to only look at one list instead of trying to dig around in lists-within-lists +GLOBAL_LIST_INIT(meta_gas_specific_heats, meta_gas_heat_list()) +GLOBAL_LIST_INIT(meta_gas_names, meta_gas_name_list()) +GLOBAL_LIST_INIT(meta_gas_visibility, meta_gas_visibility_list()) +GLOBAL_LIST_INIT(meta_gas_overlays, meta_gas_overlay_list()) +GLOBAL_LIST_INIT(meta_gas_dangers, meta_gas_danger_list()) +GLOBAL_LIST_INIT(meta_gas_ids, meta_gas_id_list()) +GLOBAL_LIST_INIT(meta_gas_fusions, meta_gas_fusion_list()) /datum/gas_mixture var/list/gases = list() var/temperature = 0 //kelvins @@ -24,10 +33,10 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm /datum/gas_mixture/proc/heat_capacity() //joules per kelvin var/list/cached_gases = gases - var/list/cached_gasinfo = GLOB.meta_gas_info + var/list/cached_gasheats = GLOB.meta_gas_specific_heats . = 0 for(var/id in cached_gases) - . += cached_gases[id] * cached_gasinfo[id][META_GAS_SPECIFIC_HEAT] //TODO - itll absolutely be worth splitting the meta_gas_info list into multiple lists to bypass the overhead associated with accessing lists within lists + . += cached_gases[id] * cached_gasheats[id] /datum/gas_mixture/turf/heat_capacity() . = ..() @@ -228,13 +237,15 @@ GLOBAL_LIST_INIT(meta_gas_info, meta_gas_list()) //see ATMOSPHERICS/gas_types.dm //we're gonna define these vars outside of this for loop because as it turns out, var declaration is pricy var/delta var/gas_heat_capacity + //and also cache this shit rq because that results in sanic speed for reasons byond explanation + var/list/cached_gasheats = GLOB.meta_gas_specific_heats //GAS TRANSFER for(var/id in cached_gases | sharer_gases) // transfer gases delta = QUANTIZE(cached_gases[id] - sharer_gases[id])/(atmos_adjacent_turfs+1) //the amount of gas that gets moved between the mixtures if(delta && abs_temperature_delta > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER) - gas_heat_capacity = delta * GLOB.meta_gas_info[id][META_GAS_SPECIFIC_HEAT] + gas_heat_capacity = delta * cached_gasheats[id] if(delta > 0) heat_capacity_self_to_sharer += gas_heat_capacity else diff --git a/code/modules/atmospherics/gasmixtures/gas_types.dm b/code/modules/atmospherics/gasmixtures/gas_types.dm index 9dcf8c3145..d628826b01 100644 --- a/code/modules/atmospherics/gasmixtures/gas_types.dm +++ b/code/modules/atmospherics/gasmixtures/gas_types.dm @@ -1,33 +1,66 @@ GLOBAL_LIST_INIT(hardcoded_gases, list(/datum/gas/oxygen, /datum/gas/nitrogen, /datum/gas/carbon_dioxide, /datum/gas/plasma)) //the main four gases, which were at one time hardcoded GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(/datum/gas/oxygen, /datum/gas/nitrogen, /datum/gas/carbon_dioxide, /datum/gas/pluoxium, /datum/gas/stimulum, /datum/gas/nitryl))) //unable to react amongst themselves -/proc/meta_gas_list() - . = subtypesof(/datum/gas) - for(var/gas_path in .) - var/list/gas_info = new(7) - var/datum/gas/gas = gas_path - - gas_info[META_GAS_SPECIFIC_HEAT] = initial(gas.specific_heat) - gas_info[META_GAS_NAME] = initial(gas.name) - gas_info[META_GAS_MOLES_VISIBLE] = initial(gas.moles_visible) - if(initial(gas.moles_visible) != null) - gas_info[META_GAS_OVERLAY] = new /list(FACTOR_GAS_VISIBLE_MAX) - for(var/i in 1 to FACTOR_GAS_VISIBLE_MAX) - gas_info[META_GAS_OVERLAY][i] = new /obj/effect/overlay/gas(initial(gas.gas_overlay), i * 255 / FACTOR_GAS_VISIBLE_MAX) - gas_info[META_GAS_FUSION_POWER] = initial(gas.fusion_power) - gas_info[META_GAS_DANGER] = initial(gas.dangerous) - gas_info[META_GAS_ID] = initial(gas.id) - .[gas_path] = gas_info - /proc/gas_id2path(id) - var/list/meta_gas = GLOB.meta_gas_info + var/list/meta_gas = GLOB.meta_gas_ids if(id in meta_gas) return id for(var/path in meta_gas) - if(meta_gas[path][META_GAS_ID] == id) + if(meta_gas[path] == id) return path return "" +//Unomos - oh god oh fuck oh shit oh lord have mercy this is messy as fuck oh god +//my addiction to seeing better performance numbers isn't healthy, kids +//you see this shit, children? +//i am not a good idol. don't take after me. +//this is literally worse than my alcohol addiction +/proc/meta_gas_heat_list() + . = subtypesof(/datum/gas) + for(var/gas_path in .) + var/datum/gas/gas = gas_path + .[gas_path] = initial(gas.specific_heat) + +/proc/meta_gas_name_list() + . = subtypesof(/datum/gas) + for(var/gas_path in .) + var/datum/gas/gas = gas_path + .[gas_path] = initial(gas.name) + +/proc/meta_gas_visibility_list() + . = subtypesof(/datum/gas) + for(var/gas_path in .) + var/datum/gas/gas = gas_path + .[gas_path] = initial(gas.moles_visible) + +/proc/meta_gas_overlay_list() + . = subtypesof(/datum/gas) + for(var/gas_path in .) + var/datum/gas/gas = gas_path + .[gas_path] = 0 //gotta make sure if(GLOB.meta_gas_overlays[gaspath]) doesn't break + if(initial(gas.moles_visible) != null) + .[gas_path] = new /list(FACTOR_GAS_VISIBLE_MAX) + for(var/i in 1 to FACTOR_GAS_VISIBLE_MAX) + .[gas_path][i] = new /obj/effect/overlay/gas(initial(gas.gas_overlay), i * 255 / FACTOR_GAS_VISIBLE_MAX) + +/proc/meta_gas_danger_list() + . = subtypesof(/datum/gas) + for(var/gas_path in .) + var/datum/gas/gas = gas_path + .[gas_path] = initial(gas.dangerous) + +/proc/meta_gas_id_list() + . = subtypesof(/datum/gas) + for(var/gas_path in .) + var/datum/gas/gas = gas_path + .[gas_path] = initial(gas.id) + +/proc/meta_gas_fusion_list() + . = subtypesof(/datum/gas) + for(var/gas_path in .) + var/datum/gas/gas = gas_path + .[gas_path] = initial(gas.fusion_power) + /*||||||||||||||/----------\||||||||||||||*\ ||||||||||||||||[GAS DATUMS]|||||||||||||||| ||||||||||||||||\__________/|||||||||||||||| diff --git a/code/modules/atmospherics/gasmixtures/reactions.dm b/code/modules/atmospherics/gasmixtures/reactions.dm index e963582020..46ad4f26b7 100644 --- a/code/modules/atmospherics/gasmixtures/reactions.dm +++ b/code/modules/atmospherics/gasmixtures/reactions.dm @@ -228,7 +228,7 @@ var/old_heat_capacity = air.heat_capacity() var/reaction_energy = 0 - var/mediation = FUSION_MEDIATION_FACTOR*(air.heat_capacity()-(cached_gases[/datum/gas/plasma]*GLOB.meta_gas_info[/datum/gas/plasma][META_GAS_SPECIFIC_HEAT]))/(air.total_moles()-cached_gases[/datum/gas/plasma]) //This is the average specific heat of the mixture,not including plasma. + var/mediation = FUSION_MEDIATION_FACTOR*(air.heat_capacity()-(cached_gases[/datum/gas/plasma]*GLOB.meta_gas_specific_heats[/datum/gas/plasma]))/(air.total_moles()-cached_gases[/datum/gas/plasma]) //This is the average specific heat of the mixture,not including plasma. var/gases_fused = air.total_moles() - cached_gases[/datum/gas/plasma] var/plasma_differential = (cached_gases[/datum/gas/plasma] - gases_fused) / air.total_moles() @@ -236,7 +236,7 @@ var/gas_power = 0 for (var/gas_id in cached_gases) - gas_power += reaction_efficiency * (GLOB.meta_gas_info[gas_id][META_GAS_FUSION_POWER]*cached_gases[gas_id]) + gas_power += reaction_efficiency * (GLOB.meta_gas_fusions[gas_id]*cached_gases[gas_id]) var/power_ratio = gas_power/mediation cached_scan_results[id] = power_ratio //used for analyzer feedback diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index f065882a8d..6ea571935b 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -282,7 +282,7 @@ continue cur_tlv = TLV[gas_id] data["environment_data"] += list(list( - "name" = GLOB.meta_gas_info[gas_id][META_GAS_NAME], + "name" = GLOB.meta_gas_names[gas_id], "value" = environment.gases[gas_id] / total_moles * 100, "unit" = "%", "danger_level" = cur_tlv.get_danger_level(environment.gases[gas_id] * partial_pressure) @@ -352,11 +352,11 @@ thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "max1", "selected" = selected.max1)) thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "max2", "selected" = selected.max2)) - for(var/gas_id in GLOB.meta_gas_info) + for(var/gas_id in GLOB.meta_gas_names) if(!(gas_id in TLV)) // We're not interested in this gas, it seems. continue selected = TLV[gas_id] - thresholds += list(list("name" = GLOB.meta_gas_info[gas_id][META_GAS_NAME], "settings" = list())) + thresholds += list(list("name" = GLOB.meta_gas_names[gas_id], "settings" = list())) thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "min2", "selected" = selected.min2)) thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "min1", "selected" = selected.min1)) thresholds[thresholds.len]["settings"] += list(list("env" = gas_id, "val" = "max1", "selected" = selected.max1)) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index f045c2a10d..b073651a8e 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -190,9 +190,8 @@ data["filter_types"] = list() data["filter_types"] += list(list("name" = "Nothing", "path" = "", "selected" = !filter_type)) - for(var/path in GLOB.meta_gas_info) - var/list/gas = GLOB.meta_gas_info[path] - data["filter_types"] += list(list("name" = gas[META_GAS_NAME], "id" = gas[META_GAS_ID], "selected" = (path == gas_id2path(filter_type)))) + for(var/path in GLOB.meta_gas_ids) + data["filter_types"] += list(list("name" = GLOB.meta_gas_names[path], "id" = GLOB.meta_gas_ids[path], "selected" = (path == gas_id2path(filter_type)))) return data @@ -223,9 +222,9 @@ filter_type = null var/filter_name = "nothing" var/gas = gas_id2path(params["mode"]) - if(gas in GLOB.meta_gas_info) + if(gas in GLOB.meta_gas_names) filter_type = gas - filter_name = GLOB.meta_gas_info[gas][META_GAS_NAME] + filter_name = GLOB.meta_gas_names[gas] investigate_log("was set to filter [filter_name] by [key_name(usr)]", INVESTIGATE_ATMOS) . = TRUE update_icon() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/tank.dm b/code/modules/atmospherics/machinery/components/unary_devices/tank.dm index 7aab990b18..4f16406456 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/tank.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/tank.dm @@ -18,7 +18,7 @@ air_contents.temperature = T20C if(gas_type) air_contents.gases[gas_type] = AIR_CONTENTS - name = "[name] ([GLOB.meta_gas_info[gas_type][META_GAS_NAME]])" + name = "[name] ([GLOB.meta_gas_names[gas_type]])" /obj/machinery/atmospherics/components/unary/tank/carbon_dioxide gas_type = /datum/gas/carbon_dioxide diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index cd69f5b8c6..7f40630a86 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -120,9 +120,8 @@ return FALSE var/list/f_types = list() - for(var/path in GLOB.meta_gas_info) - var/list/gas = GLOB.meta_gas_info[path] - f_types += list(list("gas_id" = gas[META_GAS_ID], "gas_name" = gas[META_GAS_NAME], "enabled" = (path in filter_types))) + for(var/path in GLOB.meta_gas_ids) + f_types += list(list("gas_id" = GLOB.meta_gas_ids[path], "gas_name" = GLOB.meta_gas_names[path], "enabled" = (path in filter_types))) var/datum/signal/signal = new(list( "tag" = id_tag, diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm index 65fcb078d7..bad2b85bfe 100644 --- a/code/modules/atmospherics/machinery/portable/canister.dm +++ b/code/modules/atmospherics/machinery/portable/canister.dm @@ -437,10 +437,10 @@ var/list/danger = list() for(var/id in air_contents.gases) var/gas = air_contents.gases[id] - if(!GLOB.meta_gas_info[id][META_GAS_DANGER]) + if(!GLOB.meta_gas_dangers[id]) continue - if(gas > (GLOB.meta_gas_info[id][META_GAS_MOLES_VISIBLE] || MOLES_GAS_VISIBLE)) //if moles_visible is undefined, default to default visibility - danger[GLOB.meta_gas_info[id][META_GAS_NAME]] = gas //ex. "plasma" = 20 + if(gas > (GLOB.meta_gas_visibility[id] || MOLES_GAS_VISIBLE)) //if moles_visible is undefined, default to default visibility + danger[GLOB.meta_gas_names[id]] = gas //ex. "plasma" = 20 if(danger.len) message_admins("[ADMIN_LOOKUPFLW(usr)] opened a canister that contains the following at [ADMIN_VERBOSEJMP(src)]:") diff --git a/code/modules/atmospherics/machinery/portable/scrubber.dm b/code/modules/atmospherics/machinery/portable/scrubber.dm index 44ae465982..28cdb56e3d 100644 --- a/code/modules/atmospherics/machinery/portable/scrubber.dm +++ b/code/modules/atmospherics/machinery/portable/scrubber.dm @@ -78,9 +78,8 @@ data["id_tag"] = -1 //must be defined in order to reuse code between portable and vent scrubbers data["filter_types"] = list() - for(var/path in GLOB.meta_gas_info) - var/list/gas = GLOB.meta_gas_info[path] - data["filter_types"] += list(list("gas_id" = gas[META_GAS_ID], "gas_name" = gas[META_GAS_NAME], "enabled" = (path in scrubbing))) + for(var/path in GLOB.meta_gas_ids) + data["filter_types"] += list(list("gas_id" = GLOB.meta_gas_ids[path], "gas_name" = GLOB.meta_gas_names[path], "enabled" = (path in scrubbing))) if(holding) data["holding"] = list() diff --git a/code/modules/integrated_electronics/subtypes/atmospherics.dm b/code/modules/integrated_electronics/subtypes/atmospherics.dm index 7f1705e151..230d1ce154 100644 --- a/code/modules/integrated_electronics/subtypes/atmospherics.dm +++ b/code/modules/integrated_electronics/subtypes/atmospherics.dm @@ -371,7 +371,7 @@ obj/item/integrated_circuit/atmospherics/connector/portableConnectorReturnAir() for(var/filtered_gas in removed.gases) //Get the name of the gas and see if it is in the list - if(GLOB.meta_gas_info[filtered_gas][META_GAS_NAME] in wanted) + if(GLOB.meta_gas_names[filtered_gas] in wanted) //The gas that is put in all the filtered out gases filtered_out.temperature = removed.temperature filtered_out.gases[filtered_gas] = removed.gases[filtered_gas] diff --git a/code/modules/integrated_electronics/subtypes/input.dm b/code/modules/integrated_electronics/subtypes/input.dm index 040f4d1e4a..b9b83b54ea 100644 --- a/code/modules/integrated_electronics/subtypes/input.dm +++ b/code/modules/integrated_electronics/subtypes/input.dm @@ -1165,7 +1165,7 @@ var/list/gas_names = list() var/list/gas_amounts = list() for(var/id in gases) - var/name = GLOB.meta_gas_info[id][META_GAS_NAME] + var/name = GLOB.meta_gas_names[id] var/amt = round(gases[id], 0.001) gas_names.Add(name) gas_amounts.Add(amt) diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm index 2ab1c9da35..0e8d37a807 100644 --- a/code/modules/mob/living/silicon/pai/software.dm +++ b/code/modules/mob/living/silicon/pai/software.dm @@ -546,7 +546,7 @@ for(var/id in env_gases) var/gas_level = env_gases[id]/total_moles if(gas_level > 0.01) - dat += "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_level*100)]%
" + dat += "[GLOB.meta_gas_names[id]]: [round(gas_level*100)]%
" dat += "Temperature: [round(environment.temperature-T0C)]°C
" dat += "Refresh Reading
" dat += "
" diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index deefe00a9b..7ff8fbc0b1 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -68,7 +68,7 @@ for(var/id in environment.gases) var/gas = environment.gases[id] if(gas) - t+="[GLOB.meta_gas_info[id][META_GAS_NAME]]: [gas] \n" + t+="[GLOB.meta_gas_names[id]]: [gas] \n" to_chat(usr, t) diff --git a/code/modules/modular_computers/file_system/programs/sm_monitor.dm b/code/modules/modular_computers/file_system/programs/sm_monitor.dm index ca451beec4..e7dd42a797 100644 --- a/code/modules/modular_computers/file_system/programs/sm_monitor.dm +++ b/code/modules/modular_computers/file_system/programs/sm_monitor.dm @@ -81,13 +81,13 @@ if(air.total_moles()) for(var/gasid in air.gases) gasdata.Add(list(list( - "name"= GLOB.meta_gas_info[gasid][META_GAS_NAME], + "name"= GLOB.meta_gas_names[gasid], "amount" = round(100*air.gases[gasid]/air.total_moles(),0.01)))) else for(var/gasid in air.gases) gasdata.Add(list(list( - "name"= GLOB.meta_gas_info[gasid][META_GAS_NAME], + "name"= GLOB.meta_gas_names[gasid], "amount" = 0))) data["gases"] = gasdata diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm index 511cd9abfb..5e10e71433 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm @@ -120,7 +120,7 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! if(id in GLOB.hardcoded_gases) continue var/gas_concentration = env_gases[id]/total_moles - to_chat(user, "[GLOB.meta_gas_info[id][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %") + to_chat(user, "[GLOB.meta_gas_names[id]]: [round(gas_concentration*100, 0.01)] %") to_chat(user, "Temperature: [round(environment.temperature-T0C)] °C") /obj/item/analyzer/nose/AltClick(mob/user) //Barometer output for measuring when the next storm happens From 1d966a688eb926a1e37c5d2611c24c817f7200c8 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 14 Apr 2019 23:17:37 -0400 Subject: [PATCH 010/370] Update shield.dm --- code/modules/station_goals/shield.dm | 30 ++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index 44746e595e..4aeebab02c 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -127,13 +127,39 @@ else return ..() -/obj/machinery/satellite/meteor_shield +/obj/machinery/satellite name = "\improper Meteor Shield Satellite" desc = "A meteor point-defense satellite." mode = "M-SHIELD" speed_process = TRUE var/kill_range = 14 +/obj/machinery/satellite/meteor_shield/sci + name = "\improper Meteor Shield Satellite" + desc = "A station made meteor point-defense satellite." + mode = "M-SHIELD" + +/obj/item/disk/meteor + name = "Meteor Shield Upgrade Disk" + desc = "A floppy disk that allows meteor shields to fire at longer ranges and lowers meteor drawing from gravitational fields.." + +/obj/machinery/satellite/meteor_shield/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/disk/meteor)) + to_chat(user, "The disk uploads better tracking and rang modification software.") + kill_range = 17 + change_meteor_chance(0.5) + else + return ..() + +/obj/machinery/satellite/meteor_shield/sci/toggle(user) + if(!..(user)) + return FALSE + if(obj_flags & EMAGGED) + if(active) + change_meteor_chance(8) + else + change_meteor_chance(1.5) + /obj/machinery/satellite/meteor_shield/proc/space_los(meteor) for(var/turf/T in getline(src,meteor)) if(!isspaceturf(T)) @@ -177,4 +203,4 @@ obj_flags |= EMAGGED to_chat(user, "You access the satellite's debug mode, increasing the chance of meteor strikes.") if(active) - change_meteor_chance(2) + change_meteor_chance(4) From cc06df001aeb8741155f72cb7d3033a95529c9c2 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 14 Apr 2019 23:20:09 -0400 Subject: [PATCH 011/370] Update all_nodes.dm --- code/modules/research/techweb/all_nodes.dm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 4d631691d0..51b8c67e92 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -203,6 +203,25 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3000) export_price = 5000 +/datum/techweb_node/basic_meteor_defense + id = "basic_meteor_defense" + display_name = "Meteor Defense Research" + description = "Unlock the potential of the mysterious of why CC desided to not build these around the staition themselfs." + prereq_ids = list("adv_engi", "high_efficiency") + design_ids = list("meteor_defence", "meteor_console") + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000) + export_price = 5000 + +/datum/techweb_node/adv_meteor_defense + id = "adv_meteor_defense" + display_name = "Meteor Defense Research" + description = "New and improved coding and lock on tech for meteor defence!" + prereq_ids = list("basic_meteor_defense", "adv_datatheory", "emp_adv") + design_ids = list("meteor_disk") + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500) + export_price = 5000 + + /////////////////////////Bluespace tech///////////////////////// /datum/techweb_node/bluespace_basic //Bluespace-memery id = "bluespace_basic" From 1a0aca6a655cbcee421c1608ac87de67209aae55 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 14 Apr 2019 23:20:49 -0400 Subject: [PATCH 012/370] Update comp_board_designs.dm --- code/modules/research/designs/comp_board_designs.dm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/code/modules/research/designs/comp_board_designs.dm b/code/modules/research/designs/comp_board_designs.dm index 68aee66d62..5d567bf955 100644 --- a/code/modules/research/designs/comp_board_designs.dm +++ b/code/modules/research/designs/comp_board_designs.dm @@ -303,3 +303,11 @@ build_path = /obj/item/circuitboard/computer/nanite_cloud_controller category = list("Computer Boards") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE + +/datum/design/board/meteor_console + name = "Computer Design (Meteor Satellite Console)" + desc = "Allows for the construction of circuit boards used to build a new Meteor Satellite monitor console." + id = "meteor_console" + build_path = /obj/item/circuitboard/computer/sat_control + category = list("Computer Boards") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING From 84b04d87521ad6b9fb89d849bd591fe630d16bef Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 14 Apr 2019 23:22:17 -0400 Subject: [PATCH 013/370] Update misc_designs.dm --- code/modules/research/designs/misc_designs.dm | 52 +++++++++++++++---- 1 file changed, 41 insertions(+), 11 deletions(-) diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index d567334998..505d0c3d9c 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -228,16 +228,6 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING -/datum/design/forcefield_projector - name = "Forcefield Projector" - desc = "A device which can project temporary forcefields to seal off an area." - id = "forcefield_projector" - build_type = PROTOLATHE - materials = list(MAT_METAL = 2500, MAT_GLASS = 1000) - build_path = /obj/item/forcefield_projector - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - /datum/design/sci_goggles name = "Science Goggles" desc = "Goggles fitted with a portable analyzer capable of determining the research worth of an item or components of a machine." @@ -312,6 +302,11 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SERVICE +///////////////////////////////////////// +////////////Holosign Designs////////////// +///////////////////////////////////////// + + /datum/design/holosign name = "Holographic Sign Projector" desc = "A holograpic projector used to project various warning signs." @@ -352,6 +347,16 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING +/datum/design/forcefield_projector + name = "Forcefield Projector" + desc = "A device which can project temporary forcefields to seal off an area." + id = "forcefield_projector" + build_type = PROTOLATHE + materials = list(MAT_METAL = 2500, MAT_GLASS = 1000) + build_path = /obj/item/forcefield_projector + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + ///////////////////////////////////////// ////////////Tools////////////// ///////////////////////////////////////// @@ -457,7 +462,7 @@ departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING ///////////////////////////////////////// -////////////Armour////////////// +////////////Armour/////////////////////// ///////////////////////////////////////// /datum/design/reactive_armour @@ -469,3 +474,28 @@ build_path = /obj/item/reactive_armour_shell category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING + +///////////////////////////////////////// +////////////Meteor/////////////////////// +///////////////////////////////////////// + +/datum/design/meteor_defence + name = "Meteor Defence" + desc = "A blue print of a early model of the Meteor defence turret." + id = "meteor_defence" + build_type = PROTOLATHE + materials = list(MAT_METAL = 150000, MAT_GLASS = 150000, MAT_SILVER = 7500, MAT_GOLD = 10000, MAT_TITANIUM = 35000) //Station goal + build_path = /obj/machinery/satellite/meteor_shield/sci + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/meteor_disk + name = "Meteor Defence Upgrade Disk" + desc = "A disk containing debugging programming to solve and monitor meteors more effectively." + id = "meteor_disk" + build_type = PROTOLATHE + materials = list(MAT_METAL = 1500, MAT_GLASS = 1500, MAT_SILVER = 2500, MAT_GOLD = 1000) + build_path = /obj/item/disk/meteor + category = list("Electronics") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + From ad19f6fcaec6d2cf44279913f2706032720998d1 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 14 Apr 2019 23:30:52 -0400 Subject: [PATCH 014/370] Shame to see it --- code/modules/station_goals/shield.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index 4aeebab02c..fda0109b77 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -127,7 +127,7 @@ else return ..() -/obj/machinery/satellite +/obj/machinery/satellite/meteor_shield name = "\improper Meteor Shield Satellite" desc = "A meteor point-defense satellite." mode = "M-SHIELD" From 558a989d8a957504ea3fe0e1a5b3f21ba34e8597 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Mon, 15 Apr 2019 15:03:03 -0400 Subject: [PATCH 015/370] fixed --- code/modules/station_goals/shield.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index fda0109b77..2d8b2a60ba 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -147,7 +147,6 @@ if(istype(I, /obj/item/disk/meteor)) to_chat(user, "The disk uploads better tracking and rang modification software.") kill_range = 17 - change_meteor_chance(0.5) else return ..() @@ -158,7 +157,7 @@ if(active) change_meteor_chance(8) else - change_meteor_chance(1.5) + change_meteor_chance(1.25) /obj/machinery/satellite/meteor_shield/proc/space_los(meteor) for(var/turf/T in getline(src,meteor)) From 875bd522d0f725c2c1f98c97970b58a4da39a5de Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Mon, 15 Apr 2019 22:45:08 -0400 Subject: [PATCH 016/370] grammer --- code/modules/research/techweb/all_nodes.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 51b8c67e92..879a57ed8f 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -206,7 +206,7 @@ /datum/techweb_node/basic_meteor_defense id = "basic_meteor_defense" display_name = "Meteor Defense Research" - description = "Unlock the potential of the mysterious of why CC desided to not build these around the staition themselfs." + description = "Unlock the potential of the mysterious of why CC decided to not build these around the station themselves." prereq_ids = list("adv_engi", "high_efficiency") design_ids = list("meteor_defence", "meteor_console") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000) From 2adc3c6069e9106c23c4c5d633a3944c1ee37c6b Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Tue, 16 Apr 2019 15:11:46 -0400 Subject: [PATCH 017/370] Update shield.dm --- code/modules/station_goals/shield.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index 2d8b2a60ba..98f5534d06 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -157,7 +157,7 @@ if(active) change_meteor_chance(8) else - change_meteor_chance(1.25) + change_meteor_chance(0.125) /obj/machinery/satellite/meteor_shield/proc/space_los(meteor) for(var/turf/T in getline(src,meteor)) From e1963f4ae51edbae25fd3a565e9f84f5f0a95712 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Tue, 16 Apr 2019 18:36:39 -0400 Subject: [PATCH 018/370] fixes the bug where space isnt actually a vacuum --- code/modules/atmospherics/gasmixtures/immutable_mixtures.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm index db6bc45f2b..2a843ed237 100644 --- a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm +++ b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm @@ -62,7 +62,7 @@ ..() gases[/datum/gas/nitrogen] = MOLES_O2STANDARD + MOLES_N2STANDARD -/datum/gas_mixture/immutable/share(datum/gas_mixture/sharer, atmos_adjacent_turfs = 4) +/datum/gas_mixture/immutable/cloner/share(datum/gas_mixture/sharer, atmos_adjacent_turfs = 4) . = ..(sharer, 0) gases[/datum/gas/nitrogen] = MOLES_O2STANDARD + MOLES_N2STANDARD From 1a3e63dc8f6015f5dd5ffbc0964395019db07b8d Mon Sep 17 00:00:00 2001 From: deathride58 Date: Fri, 19 Apr 2019 13:06:50 -0400 Subject: [PATCH 019/370] fixes space pollution --- code/modules/atmospherics/environmental/LINDA_turf_tile.dm | 5 +++++ code/modules/atmospherics/gasmixtures/immutable_mixtures.dm | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm index 2a182a68b4..ea555c9489 100644 --- a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm +++ b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm @@ -231,6 +231,11 @@ atmos_cooldown = cached_atmos_cooldown +/turf/open/space/process_cell(fire_count) //dumb hack to prevent space pollution + . = ..() + var/datum/gas_mixture/immutable/I = space_gas + I.after_process_cell() + /turf/proc/process_cell_reaction() SSair.remove_from_react_queue(src) diff --git a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm index 2a843ed237..53f7ede3e6 100644 --- a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm +++ b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm @@ -39,6 +39,10 @@ . = ..() temperature = initial_temperature +/datum/gas_mixture/immutable/proc/after_process_cell() + temperature = initial_temperature + temperature_archived = initial_temperature + gases.Cut() //used by space tiles /datum/gas_mixture/immutable/space From ebc3347850eb6087a9f65acd9450d77999becdec Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Tue, 23 Apr 2019 12:16:07 -0400 Subject: [PATCH 020/370] Update misc_designs.dm --- code/modules/research/designs/misc_designs.dm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index 505d0c3d9c..c76d1024b6 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -53,7 +53,6 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SECURITY - /datum/design/security_hud_night name = "Night Vision Security HUD" desc = "A heads-up display which provides id data and vision in complete darkness." @@ -306,7 +305,6 @@ ////////////Holosign Designs////////////// ///////////////////////////////////////// - /datum/design/holosign name = "Holographic Sign Projector" desc = "A holograpic projector used to project various warning signs." @@ -484,7 +482,7 @@ desc = "A blue print of a early model of the Meteor defence turret." id = "meteor_defence" build_type = PROTOLATHE - materials = list(MAT_METAL = 150000, MAT_GLASS = 150000, MAT_SILVER = 7500, MAT_GOLD = 10000, MAT_TITANIUM = 35000) //Station goal + materials = list(MAT_METAL = 100000, MAT_GLASS = 100000, MAT_SILVER = 17500, MAT_GOLD = 15000, MAT_TITANIUM = 75000, MAT_URANIUM = 18000) //Station goal build_path = /obj/machinery/satellite/meteor_shield/sci category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING From 41659fa56231c105aca05488191511898444363c Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 15:03:34 +0200 Subject: [PATCH 021/370] Energy net tweak to make it less clunky to use. --- .../suit/n_suit_verbs/energy_net_nets.dm | 3 ++ .../ninja/suit/n_suit_verbs/ninja_net.dm | 35 +++++++++++++------ 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 270e1f106f..e2609e8d09 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -59,6 +59,9 @@ It is possible to destroy the net by the occupant or someone else. continue H.dropItemToGround(W) + if(affecting in GLOB.alive_mob_list) //Feel free to suggest a better check if it's alive. + affecting.revive(1, 1) //Basically a full heal, including limbs/organs. + playsound(affecting, 'sound/effects/sparks4.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase/out(affecting.drop_location(), affecting.dir) diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm index 8c8f92e522..41f7b8af83 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm @@ -2,21 +2,34 @@ //Allows the ninja to kidnap people /obj/item/clothing/suit/space/space_ninja/proc/ninjanet() var/mob/living/carbon/human/H = affecting - var/mob/living/carbon/C = input("Select who to capture:","Capture who?",null) as null|mob in oview(H) + var/mob/living/carbon/C + + //If there's only one valid target, let's actually try to capture it, rather than forcing + //the user to fiddle with the dialog displaying a list of one + //Also, let's make this smarter and not list mobs you can't currently net. + var/Candidates[] + for(var/mob/mob in oview(H)) + if(!mob.client)//Monkeys without a client can still step_to() and bypass the net. Also, netting inactive people is lame. + //to_chat(H, "[C.p_they(TRUE)] will bring no honor to your Clan!") + continue + if(locate(/obj/structure/energy_net) in get_turf(mob))//Check if they are already being affected by an energy net. + //to_chat(H, "[C.p_they(TRUE)] are already trapped inside an energy net!") + continue + for(var/turf/T in getline(get_turf(H), get_turf(mob))) + if(T.density)//Don't want them shooting nets through walls. It's kind of cheesy. + //to_chat(H, "You may not use an energy net through solid obstacles!") + continue + Candidates+=mob + + if(Candidates.len == 1) + C = Candidates[1] + else + C = input("Select who to capture:","Capture who?",null) as null|mob in Candidates + if(QDELETED(C)||!(C in oview(H))) return 0 - if(!C.client)//Monkeys without a client can still step_to() and bypass the net. Also, netting inactive people is lame. - to_chat(H, "[C.p_they(TRUE)] will bring no honor to your Clan!") - return - if(locate(/obj/structure/energy_net) in get_turf(C))//Check if they are already being affected by an energy net. - to_chat(H, "[C.p_they(TRUE)] are already trapped inside an energy net!") - return - for(var/turf/T in getline(get_turf(H), get_turf(C))) - if(T.density)//Don't want them shooting nets through walls. It's kind of cheesy. - to_chat(H, "You may not use an energy net through solid obstacles!") - return if(!ninjacost(200,N_STEALTH_CANCEL)) H.Beam(C,"n_beam",time=15) H.say("Get over here!", forced = "ninja net") From 4a30cd1ce61c1b21c2373830735af0d8ff856082 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 15:32:32 +0200 Subject: [PATCH 022/370] Energy net and capture objective tweak. --- code/game/gamemodes/objective.dm | 6 ++-- .../suit/n_suit_verbs/energy_net_nets.dm | 33 ++++++++++++++++++- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 7532d18d06..f6b1def645 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -542,6 +542,7 @@ GLOBAL_LIST_EMPTY(possible_items_special) return checking.researched_nodes.len >= target_amount /datum/objective/capture + var/captured_amount = 0 /datum/objective/capture/proc/gen_amount_goal() target_amount = rand(5,10) @@ -549,8 +550,7 @@ GLOBAL_LIST_EMPTY(possible_items_special) return target_amount /datum/objective/capture/check_completion()//Basically runs through all the mobs in the area to determine how much they are worth. - var/captured_amount = 0 - var/area/centcom/holding/A = GLOB.areas_by_type[/area/centcom/holding] + /*var/area/centcom/holding/A = GLOB.areas_by_type[/area/centcom/holding] for(var/mob/living/carbon/human/M in A)//Humans. if(M.stat == DEAD)//Dead folks are worth less. captured_amount+=0.5 @@ -573,7 +573,7 @@ GLOBAL_LIST_EMPTY(possible_items_special) if(M.stat == DEAD) captured_amount+=1 continue - captured_amount+=2 + captured_amount+=2*/ //Removed in favour of adding points on capture, in energy_net_nets.dm return captured_amount >= target_amount diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index e2609e8d09..6b01256b1b 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -59,9 +59,40 @@ It is possible to destroy the net by the occupant or someone else. continue H.dropItemToGround(W) - if(affecting in GLOB.alive_mob_list) //Feel free to suggest a better check if it's alive. + if(affecting.stat != DEAD) affecting.revive(1, 1) //Basically a full heal, including limbs/organs. + var/datum/antagonist/antag_datum + for(antag_datum in GLOB.antagonists) + if(antag_datum.owner == master) + break + + for(var/datum/objective/capture/capture in antag_datum) + if(istype(affecting, /mob/living/carbon/human)) //Humans. + if(affecting.stat == DEAD)//Dead folks are worth less. + capture.captured_amount+=0.5 + continue + capture.captured_amount+=1 + if(istype(affecting, /mob/living/carbon/monkey)) //Monkeys are almost worthless, you failure. + capture.captured_amount+=0.1 + if(istype(affecting, /mob/living/carbon/alien/larva)) //Larva are important for research. + if(affecting.stat == DEAD) + capture.captured_amount+=0.5 + continue + capture.captured_amount+=1 + if(istype(affecting, /mob/living/carbon/alien/humanoid)) //Aliens are worth twice as much as humans. + if(istype(affecting, /mob/living/carbon/alien/humanoid/royal/queen)) //Queens are worth three times as much as humans. + if(affecting.stat == DEAD) + capture.captured_amount+=1.5 + else + capture.captured_amount+=3 + continue + if(affecting.stat == DEAD) + capture.captured_amount+=1 + continue + capture.captured_amount+=2 + + playsound(affecting, 'sound/effects/sparks4.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase/out(affecting.drop_location(), affecting.dir) From 10d6b810f6bd135bffb1193fdeba380d33caf484 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 15:34:58 +0200 Subject: [PATCH 023/370] Revert "Added myself to the admin list. Duh." This reverts commit 41a0b802e8fdc94f8880fb06de2fa2e4bf909513. --- config/admins.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/admins.txt b/config/admins.txt index 4a2b4ac8da..27a2178e2c 100644 --- a/config/admins.txt +++ b/config/admins.txt @@ -8,4 +8,4 @@ # NOTE: syntax was changed to allow hyphenation of ranknames, since spaces are stripped. # ############################################################################################### -Useroth = Host +yourckeygoeshere = Host From e2c053e7a51e49dafdd4741f9c2896842a8b313b Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 15:59:54 +0200 Subject: [PATCH 024/370] Makes energy nets a bit sturdier and unbreakable with bare hands. --- .../modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 6b01256b1b..fd9ee41510 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -14,7 +14,7 @@ It is possible to destroy the net by the occupant or someone else. mouse_opacity = MOUSE_OPACITY_ICON//So you can hit it with stuff. anchored = TRUE//Can't drag/grab the net. layer = ABOVE_ALL_MOB_LAYER - max_integrity = 25 //How much health it has. + max_integrity = 45 //How much health it has. can_buckle = 1 buckle_lying = 0 buckle_prevents_pull = TRUE @@ -63,8 +63,9 @@ It is possible to destroy the net by the occupant or someone else. affecting.revive(1, 1) //Basically a full heal, including limbs/organs. var/datum/antagonist/antag_datum - for(antag_datum in GLOB.antagonists) - if(antag_datum.owner == master) + for(var/datum/antagonist/AD in GLOB.antagonists) + if(AD.owner == master) + antag_datum = AD break for(var/datum/objective/capture/capture in antag_datum) @@ -108,7 +109,8 @@ It is possible to destroy the net by the occupant or someone else. new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) /obj/structure/energy_net/attack_paw(mob/user) - return attack_hand() + //return attack_hand() //How about no barehanded breaking of the net? + return /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) return//We only want our target to be buckled From 4fc90142f1d3a30fea722266318985d4348c8c00 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 16:02:40 +0200 Subject: [PATCH 025/370] Might as well crank it up a little more. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index fd9ee41510..bdc9ca9fdb 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -14,7 +14,7 @@ It is possible to destroy the net by the occupant or someone else. mouse_opacity = MOUSE_OPACITY_ICON//So you can hit it with stuff. anchored = TRUE//Can't drag/grab the net. layer = ABOVE_ALL_MOB_LAYER - max_integrity = 45 //How much health it has. + max_integrity = 50 //How much health it has. can_buckle = 1 buckle_lying = 0 buckle_prevents_pull = TRUE From a4ece1cadacce657f8d438f504c48d54f084e425 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 21:04:24 +0200 Subject: [PATCH 026/370] Another attempt at the nets not being breakable with bare hands. Now with more consideration. --- .../ninja/suit/n_suit_verbs/energy_net_nets.dm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index bdc9ca9fdb..58183a8226 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -108,9 +108,19 @@ It is possible to destroy the net by the occupant or someone else. playsound(affecting, 'sound/effects/sparks2.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) -/obj/structure/energy_net/attack_paw(mob/user) - //return attack_hand() //How about no barehanded breaking of the net? - return +/obj/structure/energy_net/attackby(obj/item/I, mob/user, params) + + if(istype(user, /mob/living/carbon/alien/humanoid)) //so that aliums aren't completely cucked by nets + return attack_hand(user) + if(!I) + return + if(!I.force) + return + + return attack_hand(user) + +/*/obj/structure/energy_net/attack_paw(mob/user) + return attack_hand()*/ //How about no barehanded breaking of the net? /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) return//We only want our target to be buckled From edae316d04b806f2ec25b6da0161da67b60ec84f Mon Sep 17 00:00:00 2001 From: Useroth Date: Sun, 28 Apr 2019 07:05:18 +0200 Subject: [PATCH 027/370] Makes the gloves actually stun people. --- code/modules/ninja/suit/gloves.dm | 2 ++ code/modules/ninja/suit/ninjaDrainAct.dm | 15 +++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/code/modules/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm index 4308120c4f..dc840d5336 100644 --- a/code/modules/ninja/suit/gloves.dm +++ b/code/modules/ninja/suit/gloves.dm @@ -37,6 +37,8 @@ var/mindrain = 200 var/maxdrain = 400 + var/stunforce = 140 //same as stunbaton, adjustable + /obj/item/clothing/gloves/space_ninja/Touch(atom/A,proximity) if(!candrain || draining) diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index 861ffb9446..45ca231a4a 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -262,3 +262,18 @@ They *could* go in their appropriate files, but this is supposed to be modular playsound(src, "sparks", 50, 1) visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!") electrocute_act(25, H) + + src.Knockdown(G.stunforce) + src.adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) + src.apply_effect(EFFECT_STUTTER, G.stunforce) + SEND_SIGNAL(src, COMSIG_LIVING_MINOR_SHOCK) + + src.lastattacker = H.real_name + src.lastattackerckey = H.ckey + log_combat(H, src, "stunned") + + playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) + + if(ishuman(src)) + var/mob/living/carbon/human/Hsrc = src + Hsrc.forcesay(GLOB.hit_appends) From 1913737b7eaea4f89828031576adac744d4710f3 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sun, 28 Apr 2019 07:07:48 +0200 Subject: [PATCH 028/370] Small tweak. --- code/modules/ninja/suit/ninjaDrainAct.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index 45ca231a4a..e72000598a 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -261,7 +261,7 @@ They *could* go in their appropriate files, but this is supposed to be modular spark_system.set_up(5, 0, loc) playsound(src, "sparks", 50, 1) visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!") - electrocute_act(25, H) + electrocute_act(15, H) src.Knockdown(G.stunforce) src.adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) From 24ac1fa8ff9a6824f89eadf47c081a0e3952561d Mon Sep 17 00:00:00 2001 From: Useroth Date: Sun, 28 Apr 2019 07:16:47 +0200 Subject: [PATCH 029/370] An afterthought regarding healing/reviving the capturees. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 58183a8226..b7f2b78e64 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -59,9 +59,6 @@ It is possible to destroy the net by the occupant or someone else. continue H.dropItemToGround(W) - if(affecting.stat != DEAD) - affecting.revive(1, 1) //Basically a full heal, including limbs/organs. - var/datum/antagonist/antag_datum for(var/datum/antagonist/AD in GLOB.antagonists) if(AD.owner == master) @@ -94,6 +91,9 @@ It is possible to destroy the net by the occupant or someone else. capture.captured_amount+=2 + affecting.revive(1, 1) //Basically a revive and full heal, including limbs/organs + //In case people who have been captured dead want to hang out at the holding area + playsound(affecting, 'sound/effects/sparks4.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase/out(affecting.drop_location(), affecting.dir) From 7be3f6d01a1463cac29a5a12c4459c3c4ae93eef Mon Sep 17 00:00:00 2001 From: Useroth <37159550+Useroth@users.noreply.github.com> Date: Tue, 7 May 2019 06:07:19 +0200 Subject: [PATCH 030/370] Update ninjaDrainAct.dm --- code/modules/ninja/suit/ninjaDrainAct.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index e72000598a..10fce3d74e 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -263,13 +263,13 @@ They *could* go in their appropriate files, but this is supposed to be modular visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!") electrocute_act(15, H) - src.Knockdown(G.stunforce) - src.adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) - src.apply_effect(EFFECT_STUTTER, G.stunforce) + Knockdown(G.stunforce) + adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) + apply_effect(EFFECT_STUTTER, G.stunforce) SEND_SIGNAL(src, COMSIG_LIVING_MINOR_SHOCK) - src.lastattacker = H.real_name - src.lastattackerckey = H.ckey + lastattacker = H.real_name + lastattackerckey = H.ckey log_combat(H, src, "stunned") playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) From 6c077758c64fa9273591d1de7cc7559c7ff05fc6 Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Sat, 18 May 2019 05:06:22 -0400 Subject: [PATCH 031/370] ports gang --- code/__DEFINES/antagonists.dm | 5 + code/__DEFINES/role_preferences.dm | 6 +- code/modules/admin/topic.dm | 9 +- icons/effects/crayondecal.dmi | Bin 29115 -> 34780 bytes icons/mob/hud.dmi | Bin 14773 -> 14934 bytes icons/obj/device.dmi | Bin 43527 -> 43562 bytes .../code/game/gamemodes/gangs/dominator.dm | 241 +++++++++ .../gamemodes/gangs/dominator_countdown.dm | 13 + .../code/game/gamemodes/gangs/gang.dm | 475 ++++++++++++++++++ .../code/game/gamemodes/gangs/gang_crayon.dm | 236 +++++++++ .../code/game/gamemodes/gangs/gang_datums.dm | 139 +++++ .../code/game/gamemodes/gangs/gang_decals.dm | 38 ++ .../code/game/gamemodes/gangs/gang_hud.dm | 34 ++ .../code/game/gamemodes/gangs/gang_items.dm | 404 +++++++++++++++ .../code/game/gamemodes/gangs/gang_pen.dm | 58 +++ .../code/game/gamemodes/gangs/gangs.dm | 59 +++ .../code/game/gamemodes/gangs/gangtool.dm | 259 ++++++++++ .../code/game/gamemodes/gangs/implant_gang.dm | 61 +++ tgstation.dme | 12 + 19 files changed, 2046 insertions(+), 3 deletions(-) create mode 100644 modular_citadel/code/game/gamemodes/gangs/dominator.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/dominator_countdown.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gang.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gang_datums.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gang_decals.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gang_hud.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gang_items.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gang_pen.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gangs.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/gangtool.dm create mode 100644 modular_citadel/code/game/gamemodes/gangs/implant_gang.dm diff --git a/code/__DEFINES/antagonists.dm b/code/__DEFINES/antagonists.dm index 4c454aa61a..e35defd485 100644 --- a/code/__DEFINES/antagonists.dm +++ b/code/__DEFINES/antagonists.dm @@ -35,3 +35,8 @@ //Overthrow time to update heads obj #define OBJECTIVE_UPDATING_TIME 300 + +//Gangshit +#define NOT_DOMINATING -1 +#define MAX_LEADERS_GANG 3 +#define INITIAL_DOM_ATTEMPTS 3 diff --git a/code/__DEFINES/role_preferences.dm b/code/__DEFINES/role_preferences.dm index 6773d55e53..b316c003a9 100644 --- a/code/__DEFINES/role_preferences.dm +++ b/code/__DEFINES/role_preferences.dm @@ -33,7 +33,8 @@ #define ROLE_DRONE "drone" #define ROLE_DEATHSQUAD "deathsquad" #define ROLE_LAVALAND "lavaland" -#define ROLE_INTERNAL_AFFAIRS "internal affairs agent" +#define ROLE_INTERNAL_AFFAIRS "internal affairs agent" +#define ROLE_GANG "gangster" //Missing assignment means it's not a gamemode specific role, IT'S NOT A BUG OR ERROR. //The gamemode specific ones are just so the gamemodes can query whether a player is old enough @@ -58,7 +59,8 @@ GLOBAL_LIST_INIT(special_roles, list( ROLE_SERVANT_OF_RATVAR = /datum/game_mode/clockwork_cult, ROLE_OVERTHROW = /datum/game_mode/overthrow, ROLE_INTERNAL_AFFAIRS = /datum/game_mode/traitor/internal_affairs, - ROLE_SENTIENCE + ROLE_SENTIENCE, + ROLE_GANG = /datum/game_mode/gang )) //Job defines for what happens when you fail to qualify for any job during job selection diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 226f2a5456..6fa118ab7f 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -903,6 +903,13 @@ else dat += "Alien" + //Gang + if(jobban_isbanned(M, ROLE_GANG) || isbanned_dept) + dat += "Gang" + else + dat += "Gang" + + //Other Roles (black) dat += "" dat += "" @@ -974,7 +981,7 @@ if("ghostroles") joblist += list(ROLE_PAI, ROLE_POSIBRAIN, ROLE_DRONE , ROLE_DEATHSQUAD, ROLE_LAVALAND, ROLE_SENTIENCE) if("teamantags") - joblist += list(ROLE_OPERATIVE, ROLE_REV, ROLE_CULTIST, ROLE_SERVANT_OF_RATVAR, ROLE_ABDUCTOR, ROLE_ALIEN) + joblist += list(ROLE_OPERATIVE, ROLE_REV, ROLE_CULTIST, ROLE_SERVANT_OF_RATVAR, ROLE_ABDUCTOR, ROLE_ALIEN, ROLE_GANG) if("convertantags") joblist += list(ROLE_REV, ROLE_CULTIST, ROLE_SERVANT_OF_RATVAR, ROLE_ALIEN) if("otherroles") diff --git a/icons/effects/crayondecal.dmi b/icons/effects/crayondecal.dmi index bb48832025c0b6e4e7c3850a6d5020b72da517b9..fcd27698e7e1b286291a7eb0cfeb211fd1081683 100644 GIT binary patch delta 10004 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 PfyXoX=TA%I%!2+0Aq1Ru delta 4310 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 diff --git a/icons/mob/hud.dmi b/icons/mob/hud.dmi index 047f08094662b38053bdae13b3d87a530d485cac..10474f94da8c8e6a2667411520ebb65c5f18d096 100644 GIT binary patch literal 14934 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 diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index becb58568ff14b0a8d215f10a556f805b1a920ee..55c33e5e832f86f5fcc95aad40486aab775056bd 100644 GIT binary patch delta 23479 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 z world.time) + to_chat(user, "Hostile Takeover in progress. Estimated [gang.domination_time_remaining()] seconds remain.") + else + to_chat(user, "Hostile Takeover of [station_name()] successful. Have a great day.") + else + to_chat(user, "System on standby.") + to_chat(user, "System Integrity: [round((obj_integrity/max_integrity)*100,1)]%") + +/obj/machinery/dominator/process() + ..() + if(gang && gang.domination_time != NOT_DOMINATING) + var/time_remaining = gang.domination_time_remaining() + if(time_remaining > 0) + if(excessive_walls_check()) + gang.domination_time += 20 + playsound(loc, 'sound/machines/buzz-two.ogg', 50, 0) + if(spam_prevention < DOM_BLOCKED_SPAM_CAP) + spam_prevention++ + else + gang.message_gangtools("Warning: There are too many walls around your gang's dominator, its signal is being blocked!") + say("Error: Takeover signal is currently blocked! There are too many walls within 3 standard units of this device.") + spam_prevention = 0 + return + . = TRUE + playsound(loc, 'sound/items/timer.ogg', 10, 0) + if(!warned && (time_remaining < 180)) + warned = TRUE + var/area/domloc = get_area(loc) + gang.message_gangtools("Less than 3 minutes remains in hostile takeover. Defend your dominator at [domloc.map_name]!") + for(var/G in GLOB.gangs) + var/datum/team/gang/tempgang = G + if(tempgang != gang) + tempgang.message_gangtools("WARNING: [gang.name] Gang takeover imminent. Their dominator at [domloc.map_name] must be destroyed!",1,1) + else + Cinematic(CINEMATIC_MALF,world) //Here is the gang victory trigger on the dominator ending. + gang.winner = TRUE + SSticker.force_ending = TRUE + + if(!.) + STOP_PROCESSING(SSmachines, src) + +/obj/machinery/dominator/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) + switch(damage_type) + if(BRUTE) + if(damage_amount) + playsound(src, 'sound/effects/bang.ogg', 50, 1) + else + playsound(loc, 'sound/weapons/tap.ogg', 50, 1) + if(BURN) + playsound(src.loc, 'sound/items/welder.ogg', 100, 1) + +/obj/machinery/dominator/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1) + . = ..() + if(.) + if(obj_integrity/max_integrity > 0.66) + if(prob(damage_amount*2)) + spark_system.start() + else if(!(stat & BROKEN)) + spark_system.start() + update_icon() + + +/obj/machinery/dominator/obj_break(damage_flag) + if(!(stat & BROKEN) && !(flags_1 & NODECONSTRUCT_1)) + set_broken() + +/obj/machinery/dominator/deconstruct(disassembled = TRUE) + if(!(flags_1 & NODECONSTRUCT_1)) + if(!(stat & BROKEN)) + set_broken() + new /obj/item/stack/sheet/plasteel(src.loc) + qdel(src) + +/obj/machinery/dominator/attacked_by(obj/item/I, mob/living/user) + add_fingerprint(user) + ..() + +/obj/machinery/dominator/attack_hand(mob/user) + if(operating || (stat & BROKEN)) + examine(user) + return + + var/datum/team/gang/tempgang + + var/datum/antagonist/gang/GA = user.mind.has_antag_datum(/datum/antagonist/gang) + if(GA) + tempgang = GA.gang + if(!tempgang) + examine(user) + return + + if(tempgang.domination_time != NOT_DOMINATING) + to_chat(user, "Error: Hostile Takeover is already in progress.") + return + + if(!tempgang.dom_attempts) + to_chat(user, "Error: Unable to breach station network. Firewall has logged our signature and is blocking all further attempts.") + return + + var/time = round(tempgang.determine_domination_time()/60,0.1) + if(alert(user,"A takeover will require [time] minutes.\nYour gang will be unable to gain influence while it is active.\nThe entire station will likely be alerted to it once it starts.\nYou have [tempgang.dom_attempts] attempt(s) remaining. Are you ready?","Confirm","Ready","Later") == "Ready") + if((tempgang.domination_time != NOT_DOMINATING) || !tempgang.dom_attempts || !in_range(src, user) || !isturf(loc)) + return 0 + + var/area/A = get_area(loc) + var/locname = A.map_name + + gang = tempgang + gang.dom_attempts -- + priority_announce("Network breach detected in [locname]. The [gang.name] Gang is attempting to seize control of the station!","Network Alert") + gang.domination() + SSshuttle.registerHostileEnvironment(src) + name = "[gang.name] Gang [name]" + operating = TRUE + update_icon() + + countdown.start() + countdown.color = gang.color + + set_light(3) + START_PROCESSING(SSmachines, src) + + gang.message_gangtools("Hostile takeover in progress: Estimated [time] minutes until victory.[gang.dom_attempts ? "" : " This is your final attempt."]") + for(var/G in GLOB.gangs) + var/datum/team/gang/vagos = G + if(vagos != gang) + vagos.message_gangtools("Enemy takeover attempt detected in [locname]: Estimated [time] minutes until our defeat.",1,1) + +/obj/machinery/dominator/proc/excessive_walls_check() // why the fuck was this even a global proc... + var/open = FALSE + for(var/turf/T in view(3, src)) + if(!isclosedturf(T)) + open++ + if(open < DOM_REQUIRED_TURFS) + return TRUE + else + return FALSE + +/obj/machinery/dominator/proc/set_broken() + if(gang) + gang.domination_time = NOT_DOMINATING + + var/takeover_in_progress = FALSE + for(var/G in GLOB.gangs) + var/datum/team/gang/ballas = G + if(ballas.domination_time != NOT_DOMINATING) + takeover_in_progress = TRUE + break + if(!takeover_in_progress) + var/was_stranded = SSshuttle.emergency.mode == SHUTTLE_STRANDED + if(!was_stranded) + priority_announce("All hostile activity within station systems has ceased.","Network Alert") + + if(get_security_level() == "delta") + set_security_level("red") + + SSshuttle.clearHostileEnvironment(src) + gang.message_gangtools("Hostile takeover cancelled: Dominator is no longer operational.[gang.dom_attempts ? " You have [gang.dom_attempts] attempt remaining." : " The station network will have likely blocked any more attempts by us."]",1,1) + + set_light(0) + operating = FALSE + stat |= BROKEN + update_icon() + STOP_PROCESSING(SSmachines, src) + +#undef DOM_BLOCKED_SPAM_CAP +#undef DOM_REQUIRED_TURFS +#undef DOM_HULK_HITS_REQUIRED \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/dominator_countdown.dm b/modular_citadel/code/game/gamemodes/gangs/dominator_countdown.dm new file mode 100644 index 0000000000..c6ae610e37 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/dominator_countdown.dm @@ -0,0 +1,13 @@ +/obj/effect/countdown/dominator + name = "dominator countdown" + text_size = 1 + color = "#e5e5e5" // Overwritten when the dominator starts + +/obj/effect/countdown/dominator/get_value() + var/obj/machinery/dominator/D = attached_to + if(!istype(D)) + return + else if(D.gang && D.gang.domination_time != NOT_DOMINATING) + return D.gang.domination_time_remaining() + else + return "OFFLINE" \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang.dm b/modular_citadel/code/game/gamemodes/gangs/gang.dm new file mode 100644 index 0000000000..5b93cf0cb7 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gang.dm @@ -0,0 +1,475 @@ +/datum/antagonist/gang + name = "Gangster" + roundend_category = "gangsters" + can_coexist_with_others = FALSE + job_rank = ROLE_GANG + antagpanel_category = "Gang" + var/hud_type = "gangster" + var/message_name = "Gangster" + var/datum/team/gang/gang + +/datum/antagonist/gang/can_be_owned(datum/mind/new_owner) + . = ..() + if(.) + if(new_owner.unconvertable) + return FALSE + +/datum/antagonist/gang/apply_innate_effects(mob/living/mob_override) + var/mob/living/M = mob_override || owner.current + update_gang_icons_added(M) + +/datum/antagonist/gang/remove_innate_effects(mob/living/mob_override) + var/mob/living/M = mob_override || owner.current + update_gang_icons_removed(M) + +/datum/antagonist/gang/get_team() + return gang + +/datum/antagonist/gang/greet() + gang.greet_gangster(owner) + +/datum/antagonist/gang/farewell() + if(ishuman(owner.current)) + owner.current.visible_message("[owner.current] looks like [owner.current.p_theyve()] just remembered [owner.current.p_their()] real allegiance!", null, null, null, owner.current) + to_chat(owner, "You are no longer a gangster!") + +/datum/antagonist/gang/on_gain() + if(!gang) + create_team() + ..() + var/mob/living/carbon/human/H = owner.current + if(istype(H)) + if(owner.assigned_role == "Clown") + to_chat(owner, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") + H.dna.remove_mutation(CLOWNMUT) + add_to_gang() + +/datum/antagonist/gang/on_removal() + remove_from_gang() + ..() + +/datum/antagonist/gang/create_team(team) + if(!gang) // add_antag_datum calls create_team, so we need to avoid generating two gangs in that case + if(team) + gang = team + return + var/datum/team/gang/gangteam = pick_n_take(GLOB.possible_gangs) + if(gangteam) + gang = new gangteam + +/datum/antagonist/gang/proc/equip_gang() // Bosses get equipped with their tools + return + +/datum/antagonist/gang/proc/update_gang_icons_added(mob/living/M) + var/datum/atom_hud/antag/gang/ganghud = GLOB.huds[gang.hud_entry_num] + if(!ganghud) + ganghud = new/datum/atom_hud/antag/gang() + gang.hud_entry_num = GLOB.huds.len+1 // this is the index the gang hud will be added at + GLOB.huds += ganghud + ganghud.color = gang.color + ganghud.join_hud(M) + set_antag_hud(M,hud_type) + +/datum/antagonist/gang/proc/update_gang_icons_removed(mob/living/M) + var/datum/atom_hud/antag/gang/ganghud = GLOB.huds[gang.hud_entry_num] + if(ganghud) + ganghud.leave_hud(M) + set_antag_hud(M, null) + +/datum/antagonist/gang/proc/can_be_converted(mob/living/candidate) + if(!candidate.mind) + return FALSE + if(!can_be_owned(candidate.mind)) + return FALSE + var/mob/living/carbon/human/H = candidate + if(!istype(H)) //Can't nonhumans + return FALSE + return TRUE + +/datum/antagonist/gang/proc/promote() // Bump up to boss + var/datum/team/gang/old_gang = gang + var/datum/mind/old_owner = owner + owner.remove_antag_datum(/datum/antagonist/gang) + var/datum/antagonist/gang/boss/lieutenant/new_boss = new + new_boss.silent = TRUE + old_owner.add_antag_datum(new_boss,old_gang) + new_boss.silent = FALSE + log_game("[key_name(old_owner)] has been promoted to Lieutenant in the [old_gang.name] Gang") + to_chat(old_owner, "You have been promoted to Lieutenant!") + + +// Admin commands +/datum/antagonist/gang/get_admin_commands() + . = ..() + .["Promote"] = CALLBACK(src,.proc/admin_promote) + .["Set Influence"] = CALLBACK(src, .proc/admin_adjust_influence) + if(gang.domination_time != NOT_DOMINATING) + .["Set domination time left"] = CALLBACK(src, .proc/set_dom_time_left) + +/datum/antagonist/gang/admin_add(datum/mind/new_owner,mob/admin) + var/new_or_existing = input(admin, "Which gang do you want to be assigned to the user?", "Gangs") as null|anything in list("New","Existing") + if(isnull(new_or_existing)) + return + else if(new_or_existing == "New") + var/newgang = input(admin, "Select a gang, or select random to pick a random one.", "New gang") as null|anything in GLOB.possible_gangs + "Random" + if(isnull(newgang)) + return + else if(newgang == "Random") + var/datum/team/gang/G = pick_n_take(GLOB.possible_gangs) + gang = new G + else + GLOB.possible_gangs -= newgang + gang = new newgang + else + if(!GLOB.gangs.len) // no gangs exist + to_chat(admin, "No gangs exist, please create a new one instead.") + return + var/existinggang = input(admin, "Select a gang, or select random to pick a random one.", "Existing gang") as null|anything in GLOB.gangs + "Random" + if(isnull(existinggang)) + return + else if(existinggang == "Random") + gang = pick(GLOB.gangs) + else + gang = existinggang + ..() + return TRUE + +/datum/antagonist/gang/proc/admin_promote(mob/admin) + message_admins("[key_name_admin(admin)] has promoted [owner] to gang boss.") + log_admin("[key_name(admin)] has promoted [owner] to boss.") + promote() + +/datum/antagonist/gang/proc/admin_adjust_influence() + var/inf = input("Influence for [gang.name]","Gang influence", gang.influence) as null | num + if(!isnull(inf)) + gang.influence = inf + message_admins("[key_name_admin(usr)] changed [gang.name]'s influence to [inf].") + log_admin("[key_name(usr)] changed [gang.name]'s influence to [inf].") + +/datum/antagonist/gang/proc/add_to_gang() + gang.add_member(owner) + owner.current.log_message("Has been converted to the [gang.name] gang!", INDIVIDUAL_ATTACK_LOG) + +/datum/antagonist/gang/proc/remove_from_gang() + gang.remove_member(owner) + owner.current.log_message("Has been deconverted from the [gang.name] gang!", INDIVIDUAL_ATTACK_LOG) + +/datum/antagonist/gang/proc/set_dom_time_left(mob/admin) + if(gang.domination_time == NOT_DOMINATING) + return // an admin shouldn't need this + var/seconds = input(admin, "Set the time left for the gang to win, in seconds", "Domination time left") as null|num + if(seconds && seconds > 0) + gang.domination_time = world.time + seconds*10 + gang.message_gangtools("Takeover shortened to [gang.domination_time_remaining()] seconds by your Syndicate benefactors.") + +// Boss type. Those can use gang tools to buy items for their gang, in particular the Dominator, used to win the gamemode, along with more gang tools to promote fellow gangsters to boss status. +/datum/antagonist/gang/boss + name = "Gang boss" + hud_type = "gang_boss" + message_name = "Leader" + +/datum/antagonist/gang/boss/on_gain() + ..() + if(gang) + gang.leaders += owner + +/datum/antagonist/gang/boss/on_removal() + if(gang) + gang.leaders -= owner + ..() + +/datum/antagonist/gang/boss/antag_listing_name() + return ..() + "(Boss)" + +/datum/antagonist/gang/boss/equip_gang(gangtool = TRUE, pen = TRUE, spraycan = TRUE, hud = TRUE) // usually has to be called separately + var/mob/living/carbon/human/H = owner.current + if(!istype(H)) + return + + var/list/slots = list ( + "backpack" = SLOT_IN_BACKPACK, + "left pocket" = SLOT_L_STORE, + "right pocket" = SLOT_R_STORE, + "hands" = SLOT_HANDS + ) + + if(gangtool) + var/obj/item/device/gangtool/G = new() + var/where = H.equip_in_one_of_slots(G, slots) + if (!where) + to_chat(H, "Your Syndicate benefactors were unfortunately unable to get you a Gangtool.") + else + G.register_device(H) + to_chat(H, "The Gangtool in your [where] will allow you to purchase weapons and equipment, send messages to your gang, and recall the emergency shuttle from anywhere on the station.") + to_chat(H, "As the gang boss, you can also promote your gang members to lieutenant. Unlike regular gangsters, Lieutenants cannot be deconverted and are able to use recruitment pens and gangtools.") + + if(pen) + var/obj/item/pen/gang/T = new() + var/where2 = H.equip_in_one_of_slots(T, slots) + if (!where2) + to_chat(H, "Your Syndicate benefactors were unfortunately unable to get you a recruitment pen to start.") + else + to_chat(H, "The recruitment pen in your [where2] will help you get your gang started. Stab unsuspecting crew members with it to recruit them.") + + if(spraycan) + var/obj/item/toy/crayon/spraycan/gang/SC = new(null,gang) + var/where3 = H.equip_in_one_of_slots(SC, slots) + if (!where3) + to_chat(H, "Your Syndicate benefactors were unfortunately unable to get you a territory spraycan to start.") + else + to_chat(H, "The territory spraycan in your [where3] can be used to claim areas of the station for your gang. The more territory your gang controls, the more influence you get. All gangsters can use these, so distribute them to grow your influence faster.") + + if(hud) + var/obj/item/clothing/glasses/hud/security/chameleon/C = new(null,gang) + var/where4 = H.equip_in_one_of_slots(C, slots) + if (!where4) + to_chat(H, "Your Syndicate benefactors were unfortunately unable to get you a chameleon security HUD.") + else + to_chat(H, "The chameleon security HUD in your [where4] will help you keep track of who is mindshield-implanted, and unable to be recruited.") + +// Admin commands for bosses +/datum/antagonist/gang/boss/admin_add(datum/mind/new_owner,mob/admin) + if(!new_owner.has_antag_datum(parent_type)) + ..() + to_chat(new_owner.current, "You are a member of the [gang.name] Gang leadership now!") + return + promote() + message_admins("[key_name_admin(admin)] has made [new_owner.current] a boss of the [gang.name] gang.") + log_admin("[key_name(admin)] has made [new_owner.current] a boss of the [gang.name] gang.") + to_chat(new_owner.current, "You are a member of the [gang.name] Gang leadership now!") + +/datum/antagonist/gang/boss/get_admin_commands() + . = ..() + . -= "Promote" + .["Take gangtool"] = CALLBACK(src,.proc/admin_take_gangtool) + .["Give gangtool"] = CALLBACK(src,.proc/admin_give_gangtool) + .["Demote"] = CALLBACK(src,.proc/admin_demote) + +/datum/antagonist/gang/boss/proc/demote() + var/old_gang = gang + var/datum/mind/old_owner = owner + silent = TRUE + owner.remove_antag_datum(/datum/antagonist/gang/boss) + var/datum/antagonist/gang/new_gangster = new /datum/antagonist/gang() + new_gangster.silent = TRUE + old_owner.add_antag_datum(new_gangster,old_gang) + new_gangster.silent = FALSE + log_game("[key_name(old_owner)] has been demoted to Gangster in the [gang.name] Gang") + to_chat(old_owner, "The gang has been disappointed of your leader traits! You are a regular gangster now!") + +/datum/antagonist/gang/boss/proc/admin_take_gangtool(mob/admin) + var/list/L = owner.current.get_contents() + var/obj/item/device/gangtool/gangtool = locate() in L + if (!gangtool) + to_chat(admin, "Deleting gangtool failed!") + return + qdel(gangtool) + +/datum/antagonist/gang/boss/proc/admin_give_gangtool(mob/admin) + equip_gang(TRUE, FALSE, FALSE, FALSE) + +/datum/antagonist/gang/boss/proc/admin_demote(datum/mind/target,mob/user) + message_admins("[key_name_admin(user)] has demoted [owner.current] from gang boss.") + log_admin("[key_name(user)] has demoted [owner.current] from gang boss.") + admin_take_gangtool(user) + demote() + +/datum/antagonist/gang/boss/lieutenant + name = "Gang Lieutenant" + message_name = "Lieutenant" + hud_type = "gang_lt" + +#define MAXIMUM_RECALLS 3 +#define INFLUENCE_INTERVAL 1200 //This handles the interval between each count of influence. +// Gang team datum. This handles the gang itself. +/datum/team/gang + name = "Gang" + member_name = "gangster" + var/hud_entry_num // because if you put something other than a number in GLOB.huds, god have mercy on your fucking soul friend + var/list/leaders = list() // bosses + var/max_leaders = MAX_LEADERS_GANG + var/list/territories = list() // territories owned by the gang. + var/list/lost_territories = list() // territories lost by the gang. + var/list/new_territories = list() // territories captured by the gang. + var/list/gangtools = list() + var/domination_time = NOT_DOMINATING + var/dom_attempts = INITIAL_DOM_ATTEMPTS + var/color + var/influence = 0 // influence of the gang, based on how many territories they own. Can be used to buy weapons and tools from a gang uplink. + var/winner // Once the gang wins with a dominator, this becomes true. For roundend credits purposes. + var/list/inner_outfits = list() + var/list/outer_outfits = list() + var/next_point_time + var/recalls = MAXIMUM_RECALLS // Once this reaches 0, this gang cannot force recall the shuttle with their gangtool anymore + +/datum/team/gang/New(starting_members) + . = ..() + GLOB.gangs += src + if(starting_members) + if(islist(starting_members)) + for(var/datum/mind/groveboss in starting_members) + leaders += groveboss + var/datum/antagonist/gang/boss/gb = new + groveboss.add_antag_datum(gb, src) + gb.equip_gang() + + else + var/datum/mind/CJ = starting_members + if(istype(CJ)) + leaders += CJ + var/datum/antagonist/gang/boss/bossdatum = new + CJ.add_antag_datum(bossdatum, src) + bossdatum.equip_gang() + next_point_time = world.time + INFLUENCE_INTERVAL + addtimer(CALLBACK(src, .proc/handle_territories), INFLUENCE_INTERVAL) + +/datum/team/gang/Destroy() + GLOB.gangs -= src + ..() + +/datum/team/gang/roundend_report() + var/list/report = list() + report += "[name]:" + if(winner) + report += "The [name] gang was successful!" + else + report += "The [name] gang has failed!" + + report += "The [name] gang bosses were:" + report += printplayerlist(leaders) + report += "The [name] [member_name]s were:" + report += printplayerlist(members-leaders) + + return "

[report.Join("
")]
" + +/datum/team/gang/proc/greet_gangster(datum/mind/gangster) + to_chat(gangster, "You are now a member of the [name] Gang!") + to_chat(gangster, "Help your bosses take over the station by claiming territory with special spraycans only they can provide. Simply spray on any unclaimed area of the station.") + to_chat(gangster, "Their ultimate objective is to take over the station with a Dominator machine.") + to_chat(gangster, "You can identify your mates by their large, \[G\] icon.") + gangster.store_memory("You are a member of the [name] Gang!") + +/datum/team/gang/proc/handle_territories() + next_point_time = world.time + INFLUENCE_INTERVAL + if(!leaders.len) + return + var/added_names = "" + var/lost_names = "" + + //Re-add territories that were reclaimed, so if they got tagged over, they can still earn income if they tag it back before the next status report + var/list/reclaimed_territories = new_territories & lost_territories + territories |= reclaimed_territories + new_territories -= reclaimed_territories + lost_territories -= reclaimed_territories + + //Process lost territories + for(var/area in lost_territories) + if(lost_names != "") + lost_names += ", " + lost_names += "[lost_territories[area]]" + territories -= area + + //Calculate and report influence growth + + //Process new territories + for(var/area in new_territories) + if(added_names != "") + added_names += ", " + added_names += "[new_territories[area]]" + territories += area + + //Report territory changes + var/message = "[src] Gang Status Report:.
*---------*
" + message += "[new_territories.len] new territories:
[added_names]
" + message += "[lost_territories.len] territories lost:
[lost_names]
" + //Clear the lists + new_territories = list() + lost_territories = list() + var/total_territories = total_claimable_territories() + var/control = round((territories.len/total_territories)*100, 1) + var/uniformed = check_clothing() + message += "Your gang now has [control]% control of the station.
*---------*
" + if(domination_time != NOT_DOMINATING) + var/new_time = max(world.time, domination_time - (uniformed * 4) - (territories.len * 2)) + if(new_time < domination_time) + message += "Takeover shortened by [(domination_time - new_time)*0.1] seconds for defending [territories.len] territories.
" + domination_time = new_time + message += "[domination_time_remaining()] seconds remain in hostile takeover.
" + else + var/new_influence = check_territory_income() + if(new_influence != influence) + message += "Gang influence has increased by [new_influence - influence] for defending [territories.len] territories and [uniformed] uniformed gangsters.
" + influence = new_influence + message += "Your gang now has [influence] influence.
" + message_gangtools(message) + addtimer(CALLBACK(src, .proc/handle_territories), INFLUENCE_INTERVAL) + +/datum/team/gang/proc/total_claimable_territories() + var/list/valid_territories = list() + for(var/z in SSmapping.levels_by_trait(ZTRAIT_STATION)) //First, collect all area types on the station zlevel + for(var/ar in SSmapping.areas_in_z["[z]"]) + var/area/A = ar + if(!(A.type in valid_territories) && A.valid_territory) + valid_territories |= A.type + return valid_territories.len + +/datum/team/gang/proc/check_territory_income() + var/new_influence = min(999,influence + 15 + (check_clothing() * 2) + territories.len) + return new_influence + +/datum/team/gang/proc/check_clothing() + //Count uniformed gangsters + var/uniformed = 0 + for(var/datum/mind/gangmind in members) + if(ishuman(gangmind.current)) + var/mob/living/carbon/human/gangster = gangmind.current + //Gangster must be alive and should return 0 not continue if conditions are met. + if(!istype(gangster) || gangster.stat == DEAD) + return 0 + + var/obj/item/clothing/outfit + var/obj/item/clothing/gang_outfit + if(gangster.w_uniform) + outfit = gangster.w_uniform + if(outfit.type in inner_outfits) + gang_outfit = outfit + if(gangster.wear_suit) + outfit = gangster.wear_suit + if(outfit.type in outer_outfits) + gang_outfit = outfit + + if(gang_outfit) + uniformed++ + return uniformed + +/datum/team/gang/proc/adjust_influence(value) + influence = max(0, influence + value) + +/datum/team/gang/proc/message_gangtools(message) + if(!gangtools.len || !message) + return + for(var/i in gangtools) + var/obj/item/device/gangtool/tool = i + var/mob/living/mob = get(tool.loc, /mob/living) + if(mob && mob.mind && mob.stat == CONSCIOUS) + var/datum/antagonist/gang/gangster = mob.mind.has_antag_datum(/datum/antagonist/gang) + if(gangster.gang == src) + to_chat(mob, "[icon2html(tool, mob)] [message]") + playsound(mob.loc, 'sound/machines/twobeep.ogg', 50, 1) + return + +/datum/team/gang/proc/domination() + domination_time = world.time + determine_domination_time()*10 + set_security_level("delta") + +/datum/team/gang/proc/determine_domination_time() // calculates the value in seconds (this is the initial domination time!) + var/total_territories = total_claimable_territories() + return max(180,480 - (round((territories.len/total_territories)*100, 1) * 9)) + +/datum/team/gang/proc/domination_time_remaining() // retrieves the value from world.time based deciseconds to seconds + var/diff = domination_time - world.time + return round(diff * 0.1) + + +#undef MAXIMUM_RECALLS +#undef INFLUENCE_INTERVAL \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm b/modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm new file mode 100644 index 0000000000..2edc2ba945 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm @@ -0,0 +1,236 @@ +#define RANDOM_GRAFFITI "Random Graffiti" +#define RANDOM_LETTER "Random Letter" +#define RANDOM_NUMBER "Random Number" +#define RANDOM_ORIENTED "Random Oriented" +#define RANDOM_RUNE "Random Rune" +#define RANDOM_ANY "Random Anything" + +/obj/item/toy/crayon + var/datum/team/gang/gang //For marking territory, spraycans are gang-locked to their initial gang due to colors + +/obj/item/toy/crayon/afterattack(atom/target, mob/user, proximity, params) + if(!proximity || !check_allowed_items(target)) + return + + var/cost = 1 + if(paint_mode == PAINT_LARGE_HORIZONTAL) + cost = 5 + if(istype(target, /obj/item/canvas)) + cost = 0 + + if(istype(target, /obj/effect/decal/cleanable)) + target = target.loc + + if(!is_type_in_list(target,validSurfaces)) + return + + var/drawing = drawtype + switch(drawtype) + if(RANDOM_LETTER) + drawing = pick(letters) + if(RANDOM_GRAFFITI) + drawing = pick(graffiti) + if(RANDOM_RUNE) + drawing = pick(runes) + if(RANDOM_ORIENTED) + drawing = pick(oriented) + if(RANDOM_NUMBER) + drawing = pick(numerals) + if(RANDOM_ANY) + drawing = pick(all_drawables) + + var/temp = "rune" + if(drawing in letters) + temp = "letter" + else if(drawing in graffiti) + temp = "graffiti" + else if(drawing in numerals) + temp = "number" + + temp = gang_check(user,target) + if(!temp) return // hippie + var/graf_rot + if(drawing in oriented) + switch(user.dir) + if(EAST) + graf_rot = 90 + if(SOUTH) + graf_rot = 180 + if(WEST) + graf_rot = 270 + else + graf_rot = 0 + + var/list/click_params = params2list(params) + var/clickx + var/clicky + + if(click_params && click_params["icon-x"] && click_params["icon-y"]) + clickx = CLAMP(text2num(click_params["icon-x"]) - 16, -(world.icon_size/2), world.icon_size/2) + clicky = CLAMP(text2num(click_params["icon-y"]) - 16, -(world.icon_size/2), world.icon_size/2) + + if(!instant) + to_chat(user, "You start drawing a [temp] on the [target.name]...") + + if(pre_noise) + audible_message("You hear spraying.") + playsound(user.loc, 'sound/effects/spray.ogg', 5, 1, 5) + + var/takes_time = !instant + + var/wait_time = 50 + if(paint_mode == PAINT_LARGE_HORIZONTAL) + wait_time *= 3 + if(gang) takes_time = TRUE // hippie + if(takes_time) + if(!do_after(user, 50, target = target)) + return + + if(length(text_buffer)) + drawing = copytext(text_buffer,1,2) + + + var/list/turf/affected_turfs = list() + + if(!gang) // hippie - drawing is done in gang_final() if it's a gang type + if(actually_paints) + switch(paint_mode) + if(PAINT_NORMAL) + var/obj/effect/decal/cleanable/crayon/C = new(target, paint_color, drawing, temp, graf_rot) + C.add_hiddenprint(user) + C.pixel_x = clickx + C.pixel_y = clicky + affected_turfs += target + if(PAINT_LARGE_HORIZONTAL) + var/turf/left = locate(target.x-1,target.y,target.z) + var/turf/right = locate(target.x+1,target.y,target.z) + if(is_type_in_list(left, validSurfaces) && is_type_in_list(right, validSurfaces)) + var/obj/effect/decal/cleanable/crayon/C = new(left, paint_color, drawing, temp, graf_rot, PAINT_LARGE_HORIZONTAL_ICON) + C.add_hiddenprint(user) + affected_turfs += left + affected_turfs += right + affected_turfs += target + else + to_chat(user, "There isn't enough space to paint!") + return + else // hippie + if(gang_final(user, target, affected_turfs)) return // hippie + + if(!instant) + to_chat(user, "You finish drawing \the [temp].") + else + to_chat(user, "You spray a [temp] on \the [target.name]") + + var/charges_used = use_charges(user, cost) + if(!charges_used) + return + . = charges_used + + if(length(text_buffer)) + text_buffer = copytext(text_buffer,2) + + if(post_noise) + audible_message("You hear spraying.") + playsound(user.loc, 'sound/effects/spray.ogg', 5, 1, 5) + + var/fraction = min(1, . / reagents.maximum_volume) + if(affected_turfs.len) + fraction /= affected_turfs.len + for(var/t in affected_turfs) + reagents.reaction(t, TOUCH, fraction * volume_multiplier) + reagents.trans_to(t, ., volume_multiplier) + check_empty(user) + +/obj/item/toy/crayon/proc/gang_check(mob/user, atom/target) // hooked into afterattack + var/gang_mode = FALSE + if(gang && user.mind) + var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) + if(G.gang != gang) + to_chat(user, "This spraycan's color isn't your gang's one! You cannot use it.") + return FALSE + gang_mode = TRUE + instant = FALSE + . = "graffiti" + // discontinue if the area isn't valid for tagging because gang "honour" + if(gang_mode && (!can_claim_for_gang(user, target))) + return FALSE + +/obj/item/toy/crayon/proc/gang_final(mob/user, atom/target, list/affected_turfs) // hooked into afterattack + // Double check it wasn't tagged in the meanwhile + if(!can_claim_for_gang(user, target)) + return TRUE + tag_for_gang(user, target) + affected_turfs += target + +/obj/item/toy/crayon/proc/can_claim_for_gang(mob/user, atom/target) + // Check area validity. + // Reject space, player-created areas, and non-station z-levels. + var/area/A = get_area(target) + if(!A || (!is_station_level(A.z)) || !A.valid_territory) + to_chat(user, "[A] is unsuitable for tagging.") + return FALSE + + var/spraying_over = FALSE + for(var/G in target) + var/obj/effect/decal/cleanable/crayon/gang/gangtag = G + if(istype(gangtag)) + var/datum/antagonist/gang/GA = user.mind.has_antag_datum(/datum/antagonist/gang) + if(gangtag.gang != GA.gang) + spraying_over = TRUE + break + + for(var/obj/machinery/power/apc in target) + to_chat(user, "You can't tag an APC.") + return FALSE + + var/occupying_gang = territory_claimed(A, user) + if(occupying_gang && !spraying_over) + to_chat(user, "[A] has already been tagged by the [occupying_gang] gang! You must get rid of or spray over the old tag first!") + return FALSE + + // If you pass the gaunlet of checks, you're good to proceed + return TRUE + +/obj/item/toy/crayon/proc/territory_claimed(area/territory, mob/user) + for(var/datum/team/gang/G in GLOB.gangs) + if(territory.type in (G.territories|G.new_territories)) + . = G.name + break + +/obj/item/toy/crayon/proc/tag_for_gang(mob/user, atom/target) + //Delete any old markings on this tile, including other gang tags + for(var/obj/effect/decal/cleanable/crayon/old_marking in target) + qdel(old_marking) + + var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) + var/area/territory = get_area(target) + + new /obj/effect/decal/cleanable/crayon/gang(target,G.gang,"graffiti",0,user) + to_chat(user, "You tagged [territory] for your gang!") + +/obj/item/toy/crayon/spraycan/gang + //desc = "A modified container containing suspicious paint." + charges = 20 + gang = TRUE + + pre_noise = FALSE + post_noise = TRUE + +/obj/item/toy/crayon/spraycan/gang/Initialize(loc, datum/team/gang/G) + ..() + if(G) + gang = G + paint_color = G.color + update_icon() + +/obj/item/toy/crayon/spraycan/gang/examine(mob/user) + . = ..() + if(user.mind && user.mind.has_antag_datum(/datum/antagonist/gang) || isobserver(user)) + to_chat(user, "This spraycan has been specially modified for tagging territory.") + +#undef RANDOM_GRAFFITI +#undef RANDOM_LETTER +#undef RANDOM_NUMBER +#undef RANDOM_ORIENTED +#undef RANDOM_RUNE +#undef RANDOM_ANY \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm new file mode 100644 index 0000000000..66dfdd0ca3 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm @@ -0,0 +1,139 @@ +// Gang datums go here. If you want to create a new gang, you must be sure to edit: +// name +// color (must be a hex, "blue" isn't acceptable due to how spraycans are handled) +// inner_outfits (must be a list() with typepaths of the clothes in it. One is fine, but there is support for multiple: one will be picked at random when bought) +// outer_outfits (same as above) +// You also need to make a gang graffiti, that will go in crayondecal.dmi inside our icons(not tg's), with the same name of the gang it's assigned to. Nothing else,just the icon. +// Those are all required. If one is missed, stuff could break. + +/datum/team/gang/clandestine + name = "Clandestine" + color = "#FF0000" + inner_outfits = list(/obj/item/clothing/under/syndicate/combat) + outer_outfits = list(/obj/item/clothing/suit/jacket) + +/datum/team/gang/prima + name = "Prima" + color = "#FFFF00" + inner_outfits = list(/obj/item/clothing/under/color/yellow) + outer_outfits = list(/obj/item/clothing/suit/hastur) + +/datum/team/gang/zerog + name = "Zero-G" + color = "#C0C0C0" + inner_outfits = list(/obj/item/clothing/under/suit_jacket/white) + outer_outfits = list(/obj/item/clothing/suit/hooded/wintercoat) + +/datum/team/gang/max + name = "Max" + color = "#800000" + inner_outfits = list(/obj/item/clothing/under/color/maroon) + outer_outfits = list(/obj/item/clothing/suit/poncho/red) + +/datum/team/gang/blasto + name = "Blasto" + color = "#000080" + inner_outfits = list(/obj/item/clothing/under/suit_jacket/navy) + outer_outfits = list(/obj/item/clothing/suit/jacket/miljacket) + +/datum/team/gang/waffle + name = "Waffle" + color = "#808000" + inner_outfits = list(/obj/item/clothing/under/suit_jacket/green) + outer_outfits = list(/obj/item/clothing/suit/poncho) + +/datum/team/gang/north + name = "North" + color = "#00FF00" + inner_outfits = list(/obj/item/clothing/under/color/green) + outer_outfits = list(/obj/item/clothing/suit/poncho/green) + +/datum/team/gang/omni + name = "Omni" + color = "#008080" + inner_outfits = list(/obj/item/clothing/under/color/teal) + outer_outfits = list(/obj/item/clothing/suit/studentuni) + +/datum/team/gang/newton + name = "Newton" + color = "#A52A2A" + inner_outfits = list(/obj/item/clothing/under/color/brown) + outer_outfits = list(/obj/item/clothing/suit/toggle/owlwings) + +/datum/team/gang/cyber + name = "Cyber" + color = "#808000" + inner_outfits = list(/obj/item/clothing/under/color/lightbrown) + outer_outfits = list(/obj/item/clothing/suit/nemes) + +/datum/team/gang/donk + name = "Donk" + color = "#0000FF" + inner_outfits = list(/obj/item/clothing/under/color/darkblue) + outer_outfits = list(/obj/item/clothing/suit/apron/overalls) + +/datum/team/gang/gene + name = "Gene" + color = "#00FFFF" + inner_outfits = list(/obj/item/clothing/under/color/blue) + outer_outfits = list(/obj/item/clothing/suit/apron) + +/datum/team/gang/gib + name = "Gib" + color = "#636060" //Applying black to grayscale... Zero-G is already grey too. + inner_outfits = list(/obj/item/clothing/under/color/black) + outer_outfits = list(/obj/item/clothing/suit/jacket/leather/overcoat) + +/datum/team/gang/tunnel + name = "Tunnel" + color = "#FF00FF" + inner_outfits = list(/obj/item/clothing/under/villain) + outer_outfits = list(/obj/item/clothing/suit/poncho/ponchoshame) + +/datum/team/gang/diablo + name = "Diablo" + color = "#FF0000" + inner_outfits = list(/obj/item/clothing/under/color/red) + outer_outfits = list(/obj/item/clothing/suit/jacket/leather) + +/datum/team/gang/psyke + name = "Psyke" + color = "#808080" + inner_outfits = list(/obj/item/clothing/under/color/grey) + outer_outfits = list(/obj/item/clothing/suit/toggle/owlwings/griffinwings) + +/datum/team/gang/osiron + name = "Osiron" + color = "#FFFFFF" + inner_outfits = list(/obj/item/clothing/under/color/white) + outer_outfits = list(/obj/item/clothing/suit/toggle/labcoat) + +/datum/team/gang/sirius + name = "Sirius" + color = "#FFC0CB" + inner_outfits = list(/obj/item/clothing/under/color/pink) + outer_outfits = list(/obj/item/clothing/suit/jacket/puffer/vest) + +/datum/team/gang/sleepingcarp + name = "Sleeping Carp" + color = "#800080" + inner_outfits = list(/obj/item/clothing/under/color/lightpurple) + outer_outfits = list(/obj/item/clothing/suit/hooded/carp_costume) + +/datum/team/gang/h + name = "H" + color = "#993333" + inner_outfits = list(/obj/item/clothing/under/jabroni) //Why not? + outer_outfits = list(/obj/item/clothing/suit/toggle/owlwings) + +/datum/team/gang/rigatonifamily + name = "Rigatoni family" + color = "#cc9900" // p a s t a colored + inner_outfits = list(/obj/item/clothing/under/rank/chef) + outer_outfits = list(/obj/item/clothing/suit/apron/chef) + +/datum/team/gang/weed + name = "Weed" + color = "#66ff33" + inner_outfits = list(/obj/item/clothing/under/color/darkgreen) + outer_outfits = list(/obj/item/clothing/suit/vapeshirt) \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_decals.dm b/modular_citadel/code/game/gamemodes/gangs/gang_decals.dm new file mode 100644 index 0000000000..6e5cb58891 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gang_decals.dm @@ -0,0 +1,38 @@ +/obj/effect/decal/cleanable/crayon/Initialize(mapload, main, type, e_name, graf_rot, alt_icon = null) + . = ..() + if(type == "poseur tag") + var/datum/team/gang/gang = pick(subtypesof(/datum/team/gang)) + var/gangname = initial(gang.name) + icon = 'icons/effects/crayondecal.dmi' + icon_state = "[gangname]" + type = null + +/obj/effect/decal/cleanable/crayon/gang + icon = 'icons/effects/crayondecal.dmi' + layer = ABOVE_NORMAL_TURF_LAYER //Harder to hide + plane = GAME_PLANE + do_icon_rotate = FALSE //These are designed to always face south, so no rotation please. + var/datum/team/gang/gang + +/obj/effect/decal/cleanable/crayon/gang/Initialize(mapload, datum/team/gang/G, e_name = "gang tag", rotation = 0, mob/user) + if(!G) + return INITIALIZE_HINT_QDEL + gang = G + var/newcolor = G.color + var/area/territory = get_area(src) + icon_state = G.name + G.new_territories |= list(territory.type = territory.name) + //If this isn't tagged by a specific gangster there's no bonus income. + .=..(mapload, newcolor, icon_state, e_name, rotation) + +/obj/effect/decal/cleanable/crayon/gang/Destroy() + if(gang) + var/area/territory = get_area(src) + gang.territories -= territory.type + gang.new_territories -= territory.type + gang.lost_territories |= list(territory.type = territory.name) + gang = null + return ..() + +/obj/effect/decal/cleanable/crayon/NeverShouldHaveComeHere(turf/T) + return isspaceturf(T) || islava(T) || istype(T, /turf/open/water) || ischasm(T) \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_hud.dm b/modular_citadel/code/game/gamemodes/gangs/gang_hud.dm new file mode 100644 index 0000000000..3fde6d4123 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gang_hud.dm @@ -0,0 +1,34 @@ +/datum/atom_hud/antag/gang + var/color = null + +/datum/atom_hud/antag/gang/add_to_hud(atom/A) + if(!A) + return + var/image/holder = A.hud_list[ANTAG_HUD] + if(holder) + holder.color = color + ..() + +/datum/atom_hud/antag/gang/remove_from_hud(atom/A) + if(!A) + return + var/image/holder = A.hud_list[ANTAG_HUD] + if(holder) + holder.color = null + ..() + +/datum/atom_hud/antag/gang/join_hud(mob/M) + if(!istype(M)) + CRASH("join_hud(): [M] ([M.type]) is not a mob!") + var/image/holder = M.hud_list[ANTAG_HUD] + if(holder) + holder.color = color + ..() + +/datum/atom_hud/antag/gang/leave_hud(mob/M) + if(!istype(M)) + CRASH("leave_hud(): [M] ([M.type]) is not a mob!") + var/image/holder = M.hud_list[ANTAG_HUD] + if(holder) + holder.color = null + ..() \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm new file mode 100644 index 0000000000..ceb08b3da3 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm @@ -0,0 +1,404 @@ +/datum/gang_item + var/name + var/item_path + var/cost + var/spawn_msg + var/category + var/list/gang_whitelist = list() + var/list/gang_blacklist = list() + var/id + +/datum/gang_item/proc/purchase(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool, check_canbuy = TRUE) + if(check_canbuy && !can_buy(user, gang, gangtool)) + return FALSE + var/real_cost = get_cost(user, gang, gangtool) + if(!spawn_item(user, gang, gangtool)) + gang.adjust_influence(-real_cost) + to_chat(user, "You bought \the [name].") + return TRUE + +/datum/gang_item/proc/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) // If this returns anything other than null, something fucked up and influence won't lower. + if(item_path) + var/obj/item/O = new item_path(user.loc) + user.put_in_hands(O) + else + return TRUE + if(spawn_msg) + to_chat(user, "[spawn_msg]") + +/datum/gang_item/proc/can_buy(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + return gang && (gang.influence >= get_cost(user, gang, gangtool)) && can_see(user, gang, gangtool) + +/datum/gang_item/proc/can_see(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + return TRUE + +/datum/gang_item/proc/get_cost(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + return cost + +/datum/gang_item/proc/get_cost_display(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + return "([get_cost(user, gang, gangtool)] Influence)" + +/datum/gang_item/proc/get_name_display(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + return name + +/datum/gang_item/proc/get_extra_info(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + return + +/////////////////// +//CLOTHING +/////////////////// + +/datum/gang_item/clothing + category = "Purchase Gang Clothes (Only the jumpsuit and suit give you added influence):" + +/datum/gang_item/clothing/under + name = "Gang Uniform" + id = "under" + cost = 1 + +/datum/gang_item/clothing/under/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(gang.inner_outfits.len) + var/outfit = pick(gang.inner_outfits) + if(outfit) + var/obj/item/O = new outfit(user.loc) + user.put_in_hands(O) + to_chat(user, " This is your gang's official uniform, wearing it will increase your influence") + return + return TRUE + +/datum/gang_item/clothing/suit + name = "Gang Armored Outerwear" + id = "suit" + cost = 1 + +/datum/gang_item/clothing/suit/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(gang.outer_outfits.len) + var/outfit = pick(gang.outer_outfits) + if(outfit) + var/obj/item/O = new outfit(user.loc) + O.armor = O.armor.setRating(melee = 20, bullet = 35, laser = 10, energy = 10, bomb = 30, bio = 0, rad = 0, fire = 30, acid = 30) + O.desc += " Tailored for the [gang.name] Gang to offer the wearer moderate protection against ballistics and physical trauma." + user.put_in_hands(O) + to_chat(user, " This is your gang's official outerwear, wearing it will increase your influence") + return + return TRUE + + +/datum/gang_item/clothing/hat + name = "Pimp Hat" + id = "hat" + cost = 16 + item_path = /obj/item/clothing/head/collectable/petehat/gang + + +/obj/item/clothing/head/collectable/petehat/gang + name = "pimpin' hat" + desc = "The undisputed king of style." + +/datum/gang_item/clothing/mask + name = "Golden Death Mask" + id = "mask" + cost = 18 + item_path = /obj/item/clothing/mask/gskull + +/obj/item/clothing/mask/gskull + name = "golden death mask" + icon_state = "gskull" + desc = "Strike terror, and envy, into the hearts of your enemies." + +/datum/gang_item/clothing/shoes + name = "Bling Boots" + id = "boots" + cost = 22 + item_path = /obj/item/clothing/shoes/gang + +/obj/item/clothing/shoes/gang + name = "blinged-out boots" + desc = "Stand aside peasants." + icon_state = "bling" + +/datum/gang_item/clothing/neck + name = "Gold Necklace" + id = "necklace" + cost = 9 + item_path = /obj/item/clothing/neck/necklace/dope + +/datum/gang_item/clothing/hands + name = "Decorative Brass Knuckles" + id = "hand" + cost = 11 + item_path = /obj/item/clothing/gloves/gang + +/obj/item/clothing/gloves/gang + name = "braggadocio's brass knuckles" + desc = "Purely decorative, don't find out the hard way." + icon_state = "knuckles" + w_class = 3 + +/datum/gang_item/clothing/belt + name = "Badass Belt" + id = "belt" + cost = 13 + item_path = /obj/item/storage/belt/military/gang + +/obj/item/storage/belt/military/gang + name = "badass belt" + icon_state = "gangbelt" + item_state = "gang" + desc = "The belt buckle simply reads 'BAMF'." + +/////////////////// +//WEAPONS +/////////////////// + +/datum/gang_item/weapon + category = "Purchase Weapons:" + +/datum/gang_item/weapon/ammo + +/datum/gang_item/weapon/shuriken + name = "Shuriken" + id = "shuriken" + cost = 2 + item_path = /obj/item/throwing_star + +/datum/gang_item/weapon/switchblade + name = "Switchblade" + id = "switchblade" + cost = 5 + item_path = /obj/item/switchblade + +/datum/gang_item/weapon/surplus + name = "Surplus Rifle" + id = "surplus" + cost = 7 + item_path = /obj/item/gun/ballistic/automatic/surplus + +/datum/gang_item/weapon/ammo/surplus_ammo + name = "Surplus Rifle Ammo" + id = "surplus_ammo" + cost = 5 + item_path = /obj/item/ammo_box/magazine/m10mm/rifle + +/datum/gang_item/weapon/improvised + name = "Sawn-Off Improvised Shotgun" + id = "sawn" + cost = 6 + item_path = /obj/item/gun/ballistic/revolver/doublebarrel/improvised/sawn + +/datum/gang_item/weapon/ammo/improvised_ammo + name = "Box of Buckshot" + id = "buckshot" + cost = 5 + item_path = /obj/item/storage/box/lethalshot + +/datum/gang_item/weapon/pistol + name = "10mm Pistol" + id = "pistol" + cost = 25 + item_path = /obj/item/gun/ballistic/automatic/pistol + +/datum/gang_item/weapon/ammo/pistol_ammo + name = "10mm Ammo" + id = "pistol_ammo" + cost = 10 + item_path = /obj/item/ammo_box/magazine/m10mm + +/datum/gang_item/weapon/sniper + name = "Black Market .50cal Sniper Rifle" + id = "sniper" + cost = 40 + item_path = /obj/item/gun/ballistic/automatic/sniper_rifle + +/datum/gang_item/weapon/ammo/sniper_ammo + name = "Smuggled .50cal Sniper Rounds" + id = "sniper_ammo" + cost = 15 + item_path = /obj/item/ammo_box/magazine/sniper_rounds + +/datum/gang_item/weapon/ammo/sleeper_ammo + name = "Illicit Soporific Cartridges" + id = "sniper_ammo" + cost = 15 + item_path = /obj/item/ammo_box/magazine/sniper_rounds/soporific + +/datum/gang_item/weapon/machinegun + name = "Mounted Machine Gun" + id = "MG" + cost = 50 + item_path = /obj/machinery/manned_turret + spawn_msg = "The mounted machine gun features enhanced responsiveness. Hold down on the trigger while firing to control where you're shooting." + +/datum/gang_item/weapon/machinegun/spawn_item(mob/living/carbon/user, obj/item/device/gangtool/gangtool) + new item_path(user.loc) + to_chat(user, spawn_msg) + +/datum/gang_item/weapon/uzi + name = "Uzi SMG" + id = "uzi" + cost = 60 + item_path = /obj/item/gun/ballistic/automatic/mini_uzi + +/datum/gang_item/weapon/ammo/uzi_ammo + name = "Uzi Ammo" + id = "uzi_ammo" + cost = 30 + item_path = /obj/item/ammo_box/magazine/uzim9mm + +/////////////////// +//EQUIPMENT +/////////////////// + +/datum/gang_item/equipment + category = "Purchase Equipment:" + + +/datum/gang_item/equipment/spraycan + name = "Territory Spraycan" + id = "spraycan" + cost = 5 + item_path = /obj/item/toy/crayon/spraycan/gang + +/datum/gang_item/equipment/spraycan/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + var/obj/item/O = new item_path(user.loc, gang) + user.put_in_hands(O) + +/datum/gang_item/equipment/sharpener + name = "Sharpener" + id = "whetstone" + cost = 3 + item_path = /obj/item/sharpener + + +/datum/gang_item/equipment/emp + name = "EMP Grenade" + id = "EMP" + cost = 7 + item_path = /obj/item/grenade/empgrenade + +/datum/gang_item/equipment/c4 + name = "C4 Explosive" + id = "c4" + cost = 7 + item_path = /obj/item/grenade/plastic/c4 + +/datum/gang_item/equipment/frag + name = "Fragmentation Grenade" + id = "frag nade" + cost = 7 + item_path = /obj/item/grenade/syndieminibomb/concussion/frag + +/datum/gang_item/equipment/stimpack + name = "Black Market Stimulants" + id = "stimpack" + cost = 12 + item_path = /obj/item/reagent_containers/syringe/stimulants + +/datum/gang_item/equipment/implant_breaker + name = "Implant Breaker" + id = "implant_breaker" + cost = 10 + item_path = /obj/item/implanter/gang + +/datum/gang_item/equipment/implant_breaker/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + var/obj/item/O = new item_path(user.loc, gang) + user.put_in_hands(O) + to_chat(user, "The implant breaker is a single-use device that destroys all implants within the target before trying to recruit them to your gang. Also works on enemy gangsters.") + +/datum/gang_item/equipment/wetwork_boots + name = "Wetwork boots" + id = "wetwork" + cost = 12 + item_path = /obj/item/clothing/shoes/combat/gang + +/obj/item/clothing/shoes/combat/gang + name = "Wetwork boots" + desc = "A gang's best hitmen are prepared for anything." + permeability_coefficient = 0.01 + clothing_flags = NOSLIP + +/datum/gang_item/equipment/pen + name = "Recruitment Pen" + id = "pen" + cost = 25 + item_path = /obj/item/pen/gang + spawn_msg = "More recruitment pens will allow you to recruit gangsters faster. Only gang leaders can recruit with pens." + +/datum/gang_item/equipment/pen/purchase(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(..()) + gangtool.free_pen = FALSE + return TRUE + return FALSE + +/datum/gang_item/equipment/pen/get_cost(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(gangtool && gangtool.free_pen) + return 0 + return ..() + +/datum/gang_item/equipment/pen/get_cost_display(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(gangtool && gangtool.free_pen) + return "(GET ONE FREE)" + return ..() + + +/datum/gang_item/equipment/gangtool + id = "gangtool" + cost = 10 + +/datum/gang_item/equipment/gangtool/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + var/item_type + if(gang) + item_type = /obj/item/device/gangtool/spare/lt + if(gang.leaders.len < MAX_LEADERS_GANG) + to_chat(user, "Gangtools allow you to promote a gangster to be your Lieutenant, enabling them to recruit and purchase items like you. Simply have them register the gangtool. You may promote up to [MAX_LEADERS_GANG-gang.leaders.len] more Lieutenants") + else + item_type = /obj/item/device/gangtool/spare + var/obj/item/device/gangtool/spare/tool = new item_type(user.loc) + user.put_in_hands(tool) + +/datum/gang_item/equipment/gangtool/get_name_display(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(gang && (gang.leaders.len < gang.max_leaders)) + return "Promote a Gangster" + return "Spare Gangtool" + +/datum/gang_item/equipment/dominator + name = "Station Dominator" + id = "dominator" + cost = 30 + item_path = /obj/machinery/dominator + spawn_msg = "The dominator will secure your gang's dominance over the station. Turn it on when you are ready to defend it." + +/datum/gang_item/equipment/dominator/can_buy(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(!gang || !gang.dom_attempts) + return FALSE + return ..() + +/datum/gang_item/equipment/dominator/get_name_display(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(!gang || !gang.dom_attempts) + return ..() + return "[..()]" + +/datum/gang_item/equipment/dominator/get_cost_display(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(!gang || !gang.dom_attempts) + return "(Out of stock)" + return ..() + +/datum/gang_item/equipment/dominator/get_extra_info(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + if(gang) + return "This device requires a 5x5 area clear of walls to work. (Estimated Takeover Time: [round(gang.determine_domination_time()/60,0.1)] minutes)" + +/datum/gang_item/equipment/dominator/purchase(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + var/area/userarea = get_area(user) + if(!(userarea.type in gang.territories|gang.new_territories)) + to_chat(user,"The dominator can be spawned only on territory controlled by your gang!") + return FALSE + for(var/obj/obj in get_turf(user)) + if(obj.density) + to_chat(user, "There's not enough room here!") + return FALSE + + return ..() + +/datum/gang_item/equipment/dominator/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) + new item_path(user.loc) + to_chat(user, spawn_msg) \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm b/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm new file mode 100644 index 0000000000..ceb780a8c5 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm @@ -0,0 +1,58 @@ +/* + * Gang Boss Pens + */ +/obj/item/pen/gang + var/cooldown + var/last_used + +/obj/item/pen/gang/Initialize() + . = ..() + last_used = world.time + +/obj/item/pen/gang/attack(mob/living/M, mob/user, stealth = TRUE) + if(!istype(M)) + return + if(!ishuman(M) || !ishuman(user) || M.stat == DEAD) + return ..() + var/datum/antagonist/gang/boss/L = user.mind.has_antag_datum(/datum/antagonist/gang/boss) + if(!L) + return ..() + if(!..()) + return + if(cooldown) + to_chat(user, "[src] needs more time to recharge before it can be used.") + return + if(!M.client || !M.mind) + to_chat(user, "A braindead gangster is an useless gangster!") + return + var/datum/team/gang/gang = L.gang + if(!add_gangster(user, gang, M.mind)) + return + cooldown = TRUE + icon_state = "pen_blink" + var/cooldown_time = 600/gang.leaders.len + addtimer(CALLBACK(src, .proc/cooldown), cooldown_time) + +/obj/item/pen/gang/proc/cooldown() + cooldown = FALSE + icon_state = "pen" + var/mob/M = loc + if(istype(M)) + to_chat(M, "[icon2html(src, M)] [src][(loc == M)?(""):(" in your [loc]")] vibrates softly. It is ready to be used again.") + +/obj/item/pen/gang/proc/add_gangster(mob/user, datum/team/gang/gang, datum/mind/gangster_mind, check = TRUE) // Basically a wrapper to add_antag_datum. + var/datum/antagonist/dudegang = gangster_mind.has_antag_datum(/datum/antagonist/gang) + if(dudegang) + if(dudegang == gang) + to_chat(user, "This mind is already controlled by your gang!") + return + to_chat(user, "This mind is already controlled by someone else!") + return + if(check && gangster_mind.current.has_trait(TRAIT_MINDSHIELD)) //Check to see if the potential gangster is implanted + to_chat(user, "This mind is too strong to control!") + return + var/mob/living/carbon/human/H = gangster_mind.current // we are sure the dude's human cause it's checked in attack() + H.silent = max(H.silent, 5) + H.Knockdown(100) + gangster_mind.add_antag_datum(/datum/antagonist/gang, gang) + return TRUE \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gangs.dm b/modular_citadel/code/game/gamemodes/gangs/gangs.dm new file mode 100644 index 0000000000..639296c628 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gangs.dm @@ -0,0 +1,59 @@ +//gang.dm +//Gang War Game Mode +GLOBAL_LIST_INIT(possible_gangs, subtypesof(/datum/team/gang)) +GLOBAL_LIST_EMPTY(gangs) +/datum/game_mode/gang + name = "gang war" + config_tag = "gang" + antag_flag = ROLE_GANG + restricted_jobs = list("Security Officer", "Warden", "Detective", "AI", "Cyborg","Captain", "Head of Personnel", "Head of Security") + required_players = 1 + required_enemies = 0 + recommended_enemies = 2 + enemy_minimum_age = 14 + + announce_span = "danger" + announce_text = "A violent turf war has erupted on the station!\n\ + Gangsters: Take over the station with a dominator.\n\ + Crew: Prevent the gangs from expanding and initiating takeover." + + var/list/datum/mind/gangboss_candidates = list() + +/datum/game_mode/gang/pre_setup() + if(CONFIG_GET(flag/protect_roles_from_antagonist)) + restricted_jobs += protected_jobs + + if(CONFIG_GET(flag/protect_assistant_from_antagonist)) + restricted_jobs += "Assistant" + + //Spawn more bosses depending on server population + var/gangs_to_create = 2 + if(prob(num_players()) && num_players() > 1.5*required_players) + gangs_to_create++ + if(prob(num_players()) && num_players() > 2*required_players) + gangs_to_create++ + gangs_to_create = min(gangs_to_create, GLOB.possible_gangs.len) + + for(var/i in 1 to gangs_to_create) + if(!antag_candidates.len) + break + + //Now assign a boss for the gang + var/datum/mind/boss = pick_n_take(antag_candidates) + antag_candidates -= boss + gangboss_candidates += boss + boss.restricted_roles = restricted_jobs + + if(gangboss_candidates.len < 1) //Need at least one gangs + return + + return TRUE + +/datum/game_mode/gang/post_setup() + set waitfor = FALSE + ..() + for(var/i in gangboss_candidates) + var/datum/mind/M = i + var/datum/antagonist/gang/boss/B = new() + M.add_antag_datum(B) + B.equip_gang() diff --git a/modular_citadel/code/game/gamemodes/gangs/gangtool.dm b/modular_citadel/code/game/gamemodes/gangs/gangtool.dm new file mode 100644 index 0000000000..9e828a7042 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/gangtool.dm @@ -0,0 +1,259 @@ +//gangtool device +/obj/item/device/gangtool + name = "suspicious device" + desc = "A strange device of sorts. Hard to really make out what it actually does if you don't know how to operate it." + icon = 'icons/obj/device.dmi' + icon_state = "gangtool" + item_state = "radio" + lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' + throwforce = 0 + w_class = WEIGHT_CLASS_TINY + throw_speed = 3 + throw_range = 7 + flags_1 = CONDUCT_1 + var/datum/team/gang/gang //Which gang uses this? + var/recalling = 0 + var/outfits = 2 + var/free_pen = 0 + var/promotable = FALSE + var/static/list/buyable_items = list() + var/list/tags = list() + +/obj/item/device/gangtool/Initialize() + . = ..() + update_icon() + for(var/i in subtypesof(/datum/gang_item)) + var/datum/gang_item/G = i + var/id = initial(G.id) + var/cat = initial(G.category) + if(id) + if(!islist(buyable_items[cat])) + buyable_items[cat] = list() + buyable_items[cat][id] = new G +/obj/item/device/gangtool/Destroy() + if(gang) + gang.gangtools -= src + return ..() + +/obj/item/device/gangtool/attack_self(mob/user) + ..() + if (!can_use(user)) + return + var/datum/antagonist/gang/boss/L = user.mind.has_antag_datum(/datum/antagonist/gang/boss) + var/dat + if(!gang) + dat += "This device is not registered.

" + if(L) + if(promotable && L.gang.leaders.len < L.gang.max_leaders) + dat += "Give this device to another member of your organization to use to promote them to Lieutenant.

" + dat += "If this is meant as a spare device for yourself:
" + dat += "Register Device as Spare
" + else if(promotable) + var/datum/antagonist/gang/sweet = user.mind.has_antag_datum(/datum/antagonist/gang) + if(sweet.gang.leaders.len < sweet.gang.max_leaders) + dat += "You have been selected for a promotion!
" + dat += "Accept Promotion
" + else + dat += "No promotions available: All positions filled.
" + else + dat += "This device is not authorized to promote.
" + else + if(gang.domination_time != NOT_DOMINATING) + dat += "
Takeover In Progress:
[DisplayTimeText(gang.domination_time_remaining() * 10)] remain
" + + dat += "Registration: [gang.name] Gang Boss
" + dat += "Organization Size: [gang.members.len] | Station Control: [gang.territories.len] territories under control. | Influence: [gang.influence]
" + dat += "Time until Influence grows: [time2text(gang.next_point_time - world.time, "mm:ss")]
" + dat += "Send message to Gang
" + dat += "Recall shuttle
" + dat += "
" + for(var/cat in buyable_items) + dat += "[cat]
" + for(var/id in buyable_items[cat]) + var/datum/gang_item/G = buyable_items[cat][id] + if(!G.can_see(user, gang, src)) + continue + + var/cost = G.get_cost_display(user, gang, src) + if(cost) + dat += cost + " " + + var/toAdd = G.get_name_display(user, gang, src) + if(G.can_buy(user, gang, src)) + toAdd = "[toAdd]" + dat += toAdd + var/extra = G.get_extra_info(user, gang, src) + if(extra) + dat += "
[extra]" + dat += "
" + dat += "
" + + dat += "Refresh
" + + var/datum/browser/popup = new(user, "gangtool", "Welcome to GangTool v4.0", 340, 625) + popup.set_content(dat) + popup.open() + +/obj/item/device/gangtool/Topic(href, href_list) + if(!can_use(usr)) + return + + add_fingerprint(usr) + + if(href_list["register"]) + register_device(usr) + + else if(!gang) //Gangtool must be registered before you can use the functions below + return + + if(href_list["purchase"]) + if(islist(buyable_items[href_list["cat"]])) + var/list/L = buyable_items[href_list["cat"]] + var/datum/gang_item/G = L[href_list["id"]] + if(G && G.can_buy(usr, gang, src)) + G.purchase(usr, gang, src, FALSE) + + if(href_list["commute"]) + ping_gang(usr) + if(href_list["recall"]) + recall(usr) + attack_self(usr) + +/obj/item/device/gangtool/update_icon() + overlays.Cut() + var/image/I = new(icon, "[icon_state]-overlay") + if(gang) + I.color = gang.color + overlays.Add(I) + +/obj/item/device/gangtool/proc/ping_gang(mob/user) + if(!can_use(user)) + return + var/message = stripped_input(user,"Discreetly send a gang-wide message.","Send Message") as null|text + if(!message || !can_use(user)) + return + if(!is_station_level(user.z)) + to_chat(user, "[icon2html(src, user)]Error: Station out of range.") + return + if(gang.members.len) + var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) + if(!G) + return + var/ping = "[gang.name] [G.message_name] [user.real_name]: [message]" + for(var/datum/mind/ganger in gang.members) + if(ganger.current && is_station_level(ganger.current.z) && (ganger.current.stat == CONSCIOUS)) + to_chat(ganger.current, ping) + for(var/mob/M in GLOB.dead_mob_list) + var/link = FOLLOW_LINK(M, user) + to_chat(M, "[link] [ping]") + user.log_talk(message,LOG_SAY, tag="[gang.name] gangster") + +/obj/item/device/gangtool/proc/register_device(mob/user) + if(gang) //It's already been registered! + return + var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) + if(G) + gang = G.gang + gang.gangtools += src + update_icon() + if(!(user.mind in gang.leaders) && promotable) + G.promote() + free_pen = TRUE + gang.message_gangtools("[user] has been promoted to Lieutenant.") + to_chat(user, "The Gangtool you registered will allow you to purchase weapons and equipment, and send messages to your gang.") + to_chat(user, "Unlike regular gangsters, you may use recruitment pens to add recruits to your gang. Use them on unsuspecting crew members to recruit them. Don't forget to get your one free pen from the gangtool.") + else + to_chat(user, "ACCESS DENIED: Unauthorized user.") + +/obj/item/device/gangtool/proc/recall(mob/user) + if(!recallchecks(user)) + return + if(recalling) + to_chat(user, "Error: Recall already in progress.") + return + gang.message_gangtools("[user] is attempting to recall the emergency shuttle.") + recalling = TRUE + to_chat(user, "[icon2html(src, loc)]Generating shuttle recall order with codes retrieved from last call signal...") + addtimer(CALLBACK(src, .proc/recall2, user), rand(100,300)) + +/obj/item/device/gangtool/proc/recall2(mob/user) + if(!recallchecks(user)) + return + to_chat(user, "[icon2html(src, loc)]Shuttle recall order generated. Accessing station long-range communication arrays...") + addtimer(CALLBACK(src, .proc/recall3, user), rand(100,300)) + +/obj/item/device/gangtool/proc/recall3(mob/user) + if(!recallchecks(user)) + return + var/list/living_crew = list()//shamelessly copied from mulligan code, there should be a helper for this + for(var/mob/Player in GLOB.mob_list) + if(Player.mind && Player.stat != DEAD && !isnewplayer(Player) && !isbrain(Player) && Player.client) + living_crew += Player + var/malc = CONFIG_GET(number/midround_antag_life_check) + if(living_crew.len / GLOB.joined_player_list.len <= malc) //Shuttle cannot be recalled if too many people died + to_chat(user, "[icon2html(src, user)]Error: Station communication systems compromised. Unable to establish connection.") + recalling = FALSE + return + to_chat(user, "[icon2html(src, loc)]Comm arrays accessed. Broadcasting recall signal...") + addtimer(CALLBACK(src, .proc/recallfinal, user), rand(100,300)) + +/obj/item/device/gangtool/proc/recallfinal(mob/user) + if(!recallchecks(user)) + return + recalling = FALSE + log_game("[key_name(user)] has tried to recall the shuttle with a gangtool.") + message_admins("[key_name_admin(user)] has tried to recall the shuttle with a gangtool.", 1) + if(SSshuttle.cancelEvac(user)) + gang.recalls-- + return TRUE + + to_chat(user, "[icon2html(src, loc)]No response recieved. Emergency shuttle cannot be recalled at this time.") + return + +/obj/item/device/gangtool/proc/recallchecks(mob/user) + if(!can_use(user)) + return + if(SSshuttle.emergencyNoRecall) + return + if(!gang.recalls) + to_chat(user, "Error: Unable to access communication arrays. Firewall has logged our signature and is blocking all further attempts.") + return + if(SSshuttle.emergency.mode != SHUTTLE_CALL) //Shuttle can only be recalled when it's moving to the station + to_chat(user, "[icon2html(src, user)]Emergency shuttle cannot be recalled at this time.") + recalling = FALSE + return + if(!gang.dom_attempts) + to_chat(user, "[icon2html(src, user)]Error: Unable to access communication arrays. Firewall has logged our signature and is blocking all further attempts.") + recalling = FALSE + return + if(!is_station_level(user.z)) //Shuttle can only be recalled while on station + to_chat(user, "[icon2html(src, user)]Error: Device out of range of station communication arrays.") + recalling = FALSE + return + return TRUE + +/obj/item/device/gangtool/proc/can_use(mob/living/carbon/human/user) + if(!istype(user)) + return + if(user.incapacitated()) + return + if(!(src in user.contents)) + return + if(!user.mind) + return + var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) + if(!G) + to_chat(user, "Huh, what's this?") + return + if(!isnull(gang) && G.gang != gang) + to_chat(user, "You cannot use gang tools owned by enemy gangs!") + return + return TRUE + + +/obj/item/device/gangtool/spare + outfits = TRUE + +/obj/item/device/gangtool/spare/lt + promotable = TRUE \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/implant_gang.dm b/modular_citadel/code/game/gamemodes/gangs/implant_gang.dm new file mode 100644 index 0000000000..ee91928845 --- /dev/null +++ b/modular_citadel/code/game/gamemodes/gangs/implant_gang.dm @@ -0,0 +1,61 @@ +/obj/item/implant/gang + name = "gang implant" + desc = "Makes you a gangster or such." + activated = 0 + var/datum/team/gang/gang + +/obj/item/implant/gang/Initialize(loc, setgang) + .=..() + gang = setgang + +/obj/item/implant/gang/Destroy() + gang = null + return ..() + +/obj/item/implant/gang/get_data() + var/dat = {"Implant Specifications:
+ Name: Criminal brainwash implant
+ Life: A few seconds after injection.
+ Important Notes: Illegal
+
+ Implant Details:
+ Function: Contains a small pod of nanobots that change the host's brain to be loyal to a certain organization.
+ Special Features: This device will also emit a small EMP pulse, destroying any other implants within the host's brain.
+ Integrity: Implant's EMP function will destroy itself in the process."} + return dat + +/obj/item/implant/gang/implant(mob/living/target, mob/user, silent = 0) + if(!target || !target.mind || target.stat == DEAD) + return 0 + var/datum/antagonist/gang/G = target.mind.has_antag_datum(/datum/antagonist/gang) + if(G && G.gang == G) + return 0 // it's pointless + if(..()) + for(var/obj/item/implant/I in target.implants) + if(I != src) + qdel(I) + + if(ishuman(target)) + var/success + if(G) + if(!istype(G, /datum/antagonist/gang/boss)) + success = TRUE //Was not a gang boss, convert as usual + target.mind.remove_antag_datum(/datum/antagonist/gang) + else + success = TRUE + if(!success) + target.visible_message("[target] seems to resist the implant!", "You feel the influence of your enemies try to invade your mind!") + return FALSE + target.mind.add_antag_datum(/datum/antagonist/gang, gang) + qdel(src) + return TRUE + +/obj/item/implanter/gang + name = "implanter (gang)" + +/obj/item/implanter/gang/Initialize(loc, gang) + if(!gang) + qdel(src) + return + imp = new /obj/item/implant/gang(src,gang) + .=..() \ No newline at end of file diff --git a/tgstation.dme b/tgstation.dme index 12a91dfaa9..7c9185699a 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2810,6 +2810,18 @@ #include "modular_citadel\code\datums\wires\airlock.dm" #include "modular_citadel\code\datums\wires\autoylathe.dm" #include "modular_citadel\code\game\area\cit_areas.dm" +#include "modular_citadel\code\game\gamemodes\gangs\dominator.dm" +#include "modular_citadel\code\game\gamemodes\gangs\dominator_countdown.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gang.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gang_crayon.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gang_datums.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gang_decals.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gang_hud.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gang_items.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gang_pen.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gangs.dm" +#include "modular_citadel\code\game\gamemodes\gangs\gangtool.dm" +#include "modular_citadel\code\game\gamemodes\gangs\implant_gang.dm" #include "modular_citadel\code\game\gamemodes\miniantags\bot_swarm\swarmer_event.dm" #include "modular_citadel\code\game\gamemodes\revolution\revolution.dm" #include "modular_citadel\code\game\machinery\cryopod.dm" From 09dfb448ed967bd45ac52b4632734bcfb0a9a94c Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Sat, 18 May 2019 05:51:53 -0400 Subject: [PATCH 032/370] woops left that at 1 instead of 15 --- modular_citadel/code/game/gamemodes/gangs/gangs.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_citadel/code/game/gamemodes/gangs/gangs.dm b/modular_citadel/code/game/gamemodes/gangs/gangs.dm index 639296c628..6e4bf752a6 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gangs.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gangs.dm @@ -7,7 +7,7 @@ GLOBAL_LIST_EMPTY(gangs) config_tag = "gang" antag_flag = ROLE_GANG restricted_jobs = list("Security Officer", "Warden", "Detective", "AI", "Cyborg","Captain", "Head of Personnel", "Head of Security") - required_players = 1 + required_players = 15 required_enemies = 0 recommended_enemies = 2 enemy_minimum_age = 14 From 9ff2132055b997878d87546655ccb2bd3e95f48a Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sat, 18 May 2019 12:52:59 -0400 Subject: [PATCH 033/370] Update lavaland_surface_seed_vault.dmm --- .../LavaRuins/lavaland_surface_seed_vault.dmm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm index ba291fc258..7b305bbf6f 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm @@ -272,7 +272,13 @@ /obj/machinery/light, /turf/open/floor/plasteel/freezer, /area/ruin/powered/seedvault) - +"Z" = ( +/obj/machinery/autolathe{ + hacked = TRUE; + desc = "This autolathe seems to have its safety light off." + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered/seedvault) (1,1,1) = {" a a @@ -375,7 +381,7 @@ h h u R -u +Z Q a a From 03f129fa6efe70d33a0cbfd738a3d7ea96374a0a Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Sun, 19 May 2019 07:29:09 -0400 Subject: [PATCH 034/370] More changes --- code/game/objects/items/crayons.dm | 137 ++++++++-- .../code/game/gamemodes/gangs/dominator.dm | 16 +- .../code/game/gamemodes/gangs/gang_crayon.dm | 236 ------------------ .../code/game/gamemodes/gangs/gang_datums.dm | 8 +- .../code/game/gamemodes/gangs/gang_items.dm | 2 +- tgstation.dme | 1 - 6 files changed, 131 insertions(+), 269 deletions(-) delete mode 100644 modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 26f8a73cb3..b76a9b9c98 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -68,6 +68,8 @@ var/pre_noise = FALSE var/post_noise = FALSE + var/datum/team/gang/gang //For marking territory, spraycans are gang-locked to their initial gang due to colors + /obj/item/toy/crayon/suicide_act(mob/user) user.visible_message("[user] is jamming [src] up [user.p_their()] nose and into [user.p_their()] brain. It looks like [user.p_theyre()] trying to commit suicide!") @@ -288,7 +290,8 @@ else if(drawing in numerals) temp = "number" - + temp = gang_check(user,target) + if(!temp) return // gang check var/graf_rot if(drawing in oriented) switch(user.dir) @@ -310,7 +313,7 @@ clicky = CLAMP(text2num(click_params["icon-y"]) - 16, -(world.icon_size/2), world.icon_size/2) if(!instant) - to_chat(user, "You start drawing a [temp] on the [target.name]...") + to_chat(user, "You start drawing a [temp] on the [target.name]...") if(pre_noise) audible_message("You hear spraying.") @@ -322,6 +325,7 @@ if(paint_mode == PAINT_LARGE_HORIZONTAL) wait_time *= 3 + if(gang) takes_time = TRUE // gang tagging takes time. if(takes_time) if(!do_after(user, 50, target = target)) return @@ -332,26 +336,29 @@ var/list/turf/affected_turfs = list() - if(actually_paints) - switch(paint_mode) - if(PAINT_NORMAL) - var/obj/effect/decal/cleanable/crayon/C = new(target, paint_color, drawing, temp, graf_rot) - C.add_hiddenprint(user) - C.pixel_x = clickx - C.pixel_y = clicky - affected_turfs += target - if(PAINT_LARGE_HORIZONTAL) - var/turf/left = locate(target.x-1,target.y,target.z) - var/turf/right = locate(target.x+1,target.y,target.z) - if(is_type_in_list(left, validSurfaces) && is_type_in_list(right, validSurfaces)) - var/obj/effect/decal/cleanable/crayon/C = new(left, paint_color, drawing, temp, graf_rot, PAINT_LARGE_HORIZONTAL_ICON) + if(!gang) //drawing is done in gang_final() if it's a gang type + if(actually_paints) + switch(paint_mode) + if(PAINT_NORMAL) + var/obj/effect/decal/cleanable/crayon/C = new(target, paint_color, drawing, temp, graf_rot) C.add_hiddenprint(user) - affected_turfs += left - affected_turfs += right + C.pixel_x = clickx + C.pixel_y = clicky affected_turfs += target - else - to_chat(user, "There isn't enough space to paint!") - return + if(PAINT_LARGE_HORIZONTAL) + var/turf/left = locate(target.x-1,target.y,target.z) + var/turf/right = locate(target.x+1,target.y,target.z) + if(is_type_in_list(left, validSurfaces) && is_type_in_list(right, validSurfaces)) + var/obj/effect/decal/cleanable/crayon/C = new(left, paint_color, drawing, temp, graf_rot, PAINT_LARGE_HORIZONTAL_ICON) + C.add_hiddenprint(user) + affected_turfs += left + affected_turfs += right + affected_turfs += target + else + to_chat(user, "There isn't enough space to paint!") + return + else // gangstuff + if(gang_final(user, target, affected_turfs)) return // gangstuff if(!instant) to_chat(user, "You finish drawing \the [temp].") @@ -373,6 +380,77 @@ reagents.trans_to(t, ., volume_multiplier) check_empty(user) + +//////////////Gang mode stuff///////////////// +/obj/item/toy/crayon/proc/gang_check(mob/user, atom/target) // hooked into afterattack + var/gang_mode = FALSE + if(gang && user.mind) + var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) + if(G.gang != gang) + to_chat(user, "This spraycan's color isn't your gang's one! You cannot use it.") + return FALSE + gang_mode = TRUE + instant = FALSE + . = "graffiti" + // discontinue if the area isn't valid for tagging because gang "honour" + if(gang_mode && (!can_claim_for_gang(user, target))) + return FALSE + +/obj/item/toy/crayon/proc/gang_final(mob/user, atom/target, list/affected_turfs) // hooked into afterattack + // Double check it wasn't tagged in the meanwhile + if(!can_claim_for_gang(user, target)) + return TRUE + tag_for_gang(user, target) + affected_turfs += target + +/obj/item/toy/crayon/proc/can_claim_for_gang(mob/user, atom/target) + // Check area validity. + // Reject space, player-created areas, and non-station z-levels. + var/area/A = get_area(target) + if(!A || (!is_station_level(A.z)) || !A.valid_territory) + to_chat(user, "[A] is unsuitable for tagging.") + return FALSE + + var/spraying_over = FALSE + for(var/G in target) + var/obj/effect/decal/cleanable/crayon/gang/gangtag = G + if(istype(gangtag)) + var/datum/antagonist/gang/GA = user.mind.has_antag_datum(/datum/antagonist/gang) + if(gangtag.gang != GA.gang) + spraying_over = TRUE + break + + for(var/obj/machinery/power/apc in target) + to_chat(user, "You can't tag an APC.") + return FALSE + + var/occupying_gang = territory_claimed(A, user) + if(occupying_gang && !spraying_over) + to_chat(user, "[A] has already been tagged by the [occupying_gang] gang! You must get rid of or spray over the old tag first!") + return FALSE + + // If you pass the gauntlet of checks, you're good to proceed + return TRUE + +/obj/item/toy/crayon/proc/territory_claimed(area/territory, mob/user) + for(var/datum/team/gang/G in GLOB.gangs) + if(territory.type in (G.territories|G.new_territories)) + . = G.name + break + +/obj/item/toy/crayon/proc/tag_for_gang(mob/user, atom/target) + //Delete any old markings on this tile, including other gang tags + for(var/obj/effect/decal/cleanable/crayon/old_marking in target) + qdel(old_marking) + + var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) + var/area/territory = get_area(target) + + new /obj/effect/decal/cleanable/crayon/gang(target,G.gang,"graffiti",0,user) + to_chat(user, "You tagged [territory] for your gang!") +////////////Gang end//////////////////// + + /obj/item/toy/crayon/attack(mob/M, mob/user) if(edible && (M == user)) to_chat(user, "You take a bite of the [src.name]. Delicious!") @@ -703,6 +781,25 @@ post_noise = FALSE reagent_contents = list("nothing" = 1, "mutetoxin" = 1) +/obj/item/toy/crayon/spraycan/gang + charges = 20 + gang = TRUE + + pre_noise = FALSE + post_noise = TRUE + +/obj/item/toy/crayon/spraycan/gang/Initialize(loc, datum/team/gang/G) + ..() + if(G) + gang = G + paint_color = G.color + update_icon() + +/obj/item/toy/crayon/spraycan/gang/examine(mob/user) + . = ..() + if(user.mind && user.mind.has_antag_datum(/datum/antagonist/gang) || isobserver(user)) + to_chat(user, "This spraycan has been specially modified for tagging territory.") + #undef RANDOM_GRAFFITI #undef RANDOM_LETTER #undef RANDOM_NUMBER diff --git a/modular_citadel/code/game/gamemodes/gangs/dominator.dm b/modular_citadel/code/game/gamemodes/gangs/dominator.dm index 418c26ab3c..0d89c78010 100644 --- a/modular_citadel/code/game/gamemodes/gangs/dominator.dm +++ b/modular_citadel/code/game/gamemodes/gangs/dominator.dm @@ -1,5 +1,6 @@ #define DOM_BLOCKED_SPAM_CAP 6 -#define DOM_REQUIRED_TURFS 30 +//32 instead of 40 for safety reasons. How many turfs aren't walls around dominator for it to work +#define DOM_REQUIRED_TURFS 32 #define DOM_HULK_HITS_REQUIRED 10 /obj/machinery/dominator @@ -22,7 +23,7 @@ /obj/machinery/dominator/Initialize() . = ..() - set_light(2) + set_light(l_range = 2, l_power = 0.75) GLOB.poi_list |= src spark_system = new spark_system.set_up(5, TRUE, src) @@ -86,10 +87,10 @@ if(time_remaining > 0) if(excessive_walls_check()) gang.domination_time += 20 - playsound(loc, 'sound/machines/buzz-two.ogg', 50, 0) if(spam_prevention < DOM_BLOCKED_SPAM_CAP) spam_prevention++ else + playsound(loc, 'sound/machines/buzz-two.ogg', 50, 0) // Play sound buzz-two.ogg, not before cause its annoying. gang.message_gangtools("Warning: There are too many walls around your gang's dominator, its signal is being blocked!") say("Error: Takeover signal is currently blocked! There are too many walls within 3 standard units of this device.") spam_prevention = 0 @@ -190,7 +191,8 @@ countdown.start() countdown.color = gang.color - set_light(3) + set_light(l_range = 3, l_power = 0.9) + light_color = gang.color START_PROCESSING(SSmachines, src) gang.message_gangtools("Hostile takeover in progress: Estimated [time] minutes until victory.[gang.dom_attempts ? "" : " This is your final attempt."]") @@ -200,15 +202,15 @@ vagos.message_gangtools("Enemy takeover attempt detected in [locname]: Estimated [time] minutes until our defeat.",1,1) /obj/machinery/dominator/proc/excessive_walls_check() // why the fuck was this even a global proc... - var/open = FALSE + var/open = 0 for(var/turf/T in view(3, src)) - if(!isclosedturf(T)) + if(!iswallturf(T)) //Check for /closed/wall, isclosedturf() moves it back to just checking for /closed/ which makes it very finicky. open++ + //to_chat(world, "THE DOMINATOR SEES [open] OPEN TURFS") uncomment to see what this shitty fucking wallcheck sees if(open < DOM_REQUIRED_TURFS) return TRUE else return FALSE - /obj/machinery/dominator/proc/set_broken() if(gang) gang.domination_time = NOT_DOMINATING diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm b/modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm deleted file mode 100644 index 2edc2ba945..0000000000 --- a/modular_citadel/code/game/gamemodes/gangs/gang_crayon.dm +++ /dev/null @@ -1,236 +0,0 @@ -#define RANDOM_GRAFFITI "Random Graffiti" -#define RANDOM_LETTER "Random Letter" -#define RANDOM_NUMBER "Random Number" -#define RANDOM_ORIENTED "Random Oriented" -#define RANDOM_RUNE "Random Rune" -#define RANDOM_ANY "Random Anything" - -/obj/item/toy/crayon - var/datum/team/gang/gang //For marking territory, spraycans are gang-locked to their initial gang due to colors - -/obj/item/toy/crayon/afterattack(atom/target, mob/user, proximity, params) - if(!proximity || !check_allowed_items(target)) - return - - var/cost = 1 - if(paint_mode == PAINT_LARGE_HORIZONTAL) - cost = 5 - if(istype(target, /obj/item/canvas)) - cost = 0 - - if(istype(target, /obj/effect/decal/cleanable)) - target = target.loc - - if(!is_type_in_list(target,validSurfaces)) - return - - var/drawing = drawtype - switch(drawtype) - if(RANDOM_LETTER) - drawing = pick(letters) - if(RANDOM_GRAFFITI) - drawing = pick(graffiti) - if(RANDOM_RUNE) - drawing = pick(runes) - if(RANDOM_ORIENTED) - drawing = pick(oriented) - if(RANDOM_NUMBER) - drawing = pick(numerals) - if(RANDOM_ANY) - drawing = pick(all_drawables) - - var/temp = "rune" - if(drawing in letters) - temp = "letter" - else if(drawing in graffiti) - temp = "graffiti" - else if(drawing in numerals) - temp = "number" - - temp = gang_check(user,target) - if(!temp) return // hippie - var/graf_rot - if(drawing in oriented) - switch(user.dir) - if(EAST) - graf_rot = 90 - if(SOUTH) - graf_rot = 180 - if(WEST) - graf_rot = 270 - else - graf_rot = 0 - - var/list/click_params = params2list(params) - var/clickx - var/clicky - - if(click_params && click_params["icon-x"] && click_params["icon-y"]) - clickx = CLAMP(text2num(click_params["icon-x"]) - 16, -(world.icon_size/2), world.icon_size/2) - clicky = CLAMP(text2num(click_params["icon-y"]) - 16, -(world.icon_size/2), world.icon_size/2) - - if(!instant) - to_chat(user, "You start drawing a [temp] on the [target.name]...") - - if(pre_noise) - audible_message("You hear spraying.") - playsound(user.loc, 'sound/effects/spray.ogg', 5, 1, 5) - - var/takes_time = !instant - - var/wait_time = 50 - if(paint_mode == PAINT_LARGE_HORIZONTAL) - wait_time *= 3 - if(gang) takes_time = TRUE // hippie - if(takes_time) - if(!do_after(user, 50, target = target)) - return - - if(length(text_buffer)) - drawing = copytext(text_buffer,1,2) - - - var/list/turf/affected_turfs = list() - - if(!gang) // hippie - drawing is done in gang_final() if it's a gang type - if(actually_paints) - switch(paint_mode) - if(PAINT_NORMAL) - var/obj/effect/decal/cleanable/crayon/C = new(target, paint_color, drawing, temp, graf_rot) - C.add_hiddenprint(user) - C.pixel_x = clickx - C.pixel_y = clicky - affected_turfs += target - if(PAINT_LARGE_HORIZONTAL) - var/turf/left = locate(target.x-1,target.y,target.z) - var/turf/right = locate(target.x+1,target.y,target.z) - if(is_type_in_list(left, validSurfaces) && is_type_in_list(right, validSurfaces)) - var/obj/effect/decal/cleanable/crayon/C = new(left, paint_color, drawing, temp, graf_rot, PAINT_LARGE_HORIZONTAL_ICON) - C.add_hiddenprint(user) - affected_turfs += left - affected_turfs += right - affected_turfs += target - else - to_chat(user, "There isn't enough space to paint!") - return - else // hippie - if(gang_final(user, target, affected_turfs)) return // hippie - - if(!instant) - to_chat(user, "You finish drawing \the [temp].") - else - to_chat(user, "You spray a [temp] on \the [target.name]") - - var/charges_used = use_charges(user, cost) - if(!charges_used) - return - . = charges_used - - if(length(text_buffer)) - text_buffer = copytext(text_buffer,2) - - if(post_noise) - audible_message("You hear spraying.") - playsound(user.loc, 'sound/effects/spray.ogg', 5, 1, 5) - - var/fraction = min(1, . / reagents.maximum_volume) - if(affected_turfs.len) - fraction /= affected_turfs.len - for(var/t in affected_turfs) - reagents.reaction(t, TOUCH, fraction * volume_multiplier) - reagents.trans_to(t, ., volume_multiplier) - check_empty(user) - -/obj/item/toy/crayon/proc/gang_check(mob/user, atom/target) // hooked into afterattack - var/gang_mode = FALSE - if(gang && user.mind) - var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) - if(G.gang != gang) - to_chat(user, "This spraycan's color isn't your gang's one! You cannot use it.") - return FALSE - gang_mode = TRUE - instant = FALSE - . = "graffiti" - // discontinue if the area isn't valid for tagging because gang "honour" - if(gang_mode && (!can_claim_for_gang(user, target))) - return FALSE - -/obj/item/toy/crayon/proc/gang_final(mob/user, atom/target, list/affected_turfs) // hooked into afterattack - // Double check it wasn't tagged in the meanwhile - if(!can_claim_for_gang(user, target)) - return TRUE - tag_for_gang(user, target) - affected_turfs += target - -/obj/item/toy/crayon/proc/can_claim_for_gang(mob/user, atom/target) - // Check area validity. - // Reject space, player-created areas, and non-station z-levels. - var/area/A = get_area(target) - if(!A || (!is_station_level(A.z)) || !A.valid_territory) - to_chat(user, "[A] is unsuitable for tagging.") - return FALSE - - var/spraying_over = FALSE - for(var/G in target) - var/obj/effect/decal/cleanable/crayon/gang/gangtag = G - if(istype(gangtag)) - var/datum/antagonist/gang/GA = user.mind.has_antag_datum(/datum/antagonist/gang) - if(gangtag.gang != GA.gang) - spraying_over = TRUE - break - - for(var/obj/machinery/power/apc in target) - to_chat(user, "You can't tag an APC.") - return FALSE - - var/occupying_gang = territory_claimed(A, user) - if(occupying_gang && !spraying_over) - to_chat(user, "[A] has already been tagged by the [occupying_gang] gang! You must get rid of or spray over the old tag first!") - return FALSE - - // If you pass the gaunlet of checks, you're good to proceed - return TRUE - -/obj/item/toy/crayon/proc/territory_claimed(area/territory, mob/user) - for(var/datum/team/gang/G in GLOB.gangs) - if(territory.type in (G.territories|G.new_territories)) - . = G.name - break - -/obj/item/toy/crayon/proc/tag_for_gang(mob/user, atom/target) - //Delete any old markings on this tile, including other gang tags - for(var/obj/effect/decal/cleanable/crayon/old_marking in target) - qdel(old_marking) - - var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) - var/area/territory = get_area(target) - - new /obj/effect/decal/cleanable/crayon/gang(target,G.gang,"graffiti",0,user) - to_chat(user, "You tagged [territory] for your gang!") - -/obj/item/toy/crayon/spraycan/gang - //desc = "A modified container containing suspicious paint." - charges = 20 - gang = TRUE - - pre_noise = FALSE - post_noise = TRUE - -/obj/item/toy/crayon/spraycan/gang/Initialize(loc, datum/team/gang/G) - ..() - if(G) - gang = G - paint_color = G.color - update_icon() - -/obj/item/toy/crayon/spraycan/gang/examine(mob/user) - . = ..() - if(user.mind && user.mind.has_antag_datum(/datum/antagonist/gang) || isobserver(user)) - to_chat(user, "This spraycan has been specially modified for tagging territory.") - -#undef RANDOM_GRAFFITI -#undef RANDOM_LETTER -#undef RANDOM_NUMBER -#undef RANDOM_ORIENTED -#undef RANDOM_RUNE -#undef RANDOM_ANY \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm index 66dfdd0ca3..c2a31abe17 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm @@ -38,7 +38,7 @@ /datum/team/gang/waffle name = "Waffle" - color = "#808000" + color = "#808000" //shared color with cyber, but they can keep brown cause waffles. inner_outfits = list(/obj/item/clothing/under/suit_jacket/green) outer_outfits = list(/obj/item/clothing/suit/poncho) @@ -62,7 +62,7 @@ /datum/team/gang/cyber name = "Cyber" - color = "#808000" + color = "#00f904" //Cyber and waffle shared colors, I made these guys green and made weed darker green. inner_outfits = list(/obj/item/clothing/under/color/lightbrown) outer_outfits = list(/obj/item/clothing/suit/nemes) @@ -80,7 +80,7 @@ /datum/team/gang/gib name = "Gib" - color = "#636060" //Applying black to grayscale... Zero-G is already grey too. + color = "#636060" //Applying black to grayscale... Zero-G is already grey too. oh well. inner_outfits = list(/obj/item/clothing/under/color/black) outer_outfits = list(/obj/item/clothing/suit/jacket/leather/overcoat) @@ -134,6 +134,6 @@ /datum/team/gang/weed name = "Weed" - color = "#66ff33" + color = "#6cd648" inner_outfits = list(/obj/item/clothing/under/color/darkgreen) outer_outfits = list(/obj/item/clothing/suit/vapeshirt) \ No newline at end of file diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm index ceb08b3da3..f808229661 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm @@ -385,7 +385,7 @@ /datum/gang_item/equipment/dominator/get_extra_info(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) if(gang) - return "This device requires a 5x5 area clear of walls to work. (Estimated Takeover Time: [round(gang.determine_domination_time()/60,0.1)] minutes)" + return "This device requires a 5x5 area clear of walls to work best. (Estimated Takeover Time: [round(gang.determine_domination_time()/60,0.1)] minutes)" /datum/gang_item/equipment/dominator/purchase(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) var/area/userarea = get_area(user) diff --git a/tgstation.dme b/tgstation.dme index 7c9185699a..7f6d07438c 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2813,7 +2813,6 @@ #include "modular_citadel\code\game\gamemodes\gangs\dominator.dm" #include "modular_citadel\code\game\gamemodes\gangs\dominator_countdown.dm" #include "modular_citadel\code\game\gamemodes\gangs\gang.dm" -#include "modular_citadel\code\game\gamemodes\gangs\gang_crayon.dm" #include "modular_citadel\code\game\gamemodes\gangs\gang_datums.dm" #include "modular_citadel\code\game\gamemodes\gangs\gang_decals.dm" #include "modular_citadel\code\game\gamemodes\gangs\gang_hud.dm" From a68c40a1a02ccdb2fee9c48bb24319154807e04c Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Mon, 20 May 2019 15:29:52 -0400 Subject: [PATCH 035/370] Update lavaland_surface_seed_vault.dmm --- _maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm | 1 + 1 file changed, 1 insertion(+) diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm index 7b305bbf6f..fd2e56a53f 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_seed_vault.dmm @@ -273,6 +273,7 @@ /turf/open/floor/plasteel/freezer, /area/ruin/powered/seedvault) "Z" = ( +/obj/item/disk/design_disk/plant_disk, /obj/machinery/autolathe{ hacked = TRUE; desc = "This autolathe seems to have its safety light off." From 539a965159d04019854f990b51cdf7b8833a0b1f Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Mon, 20 May 2019 15:33:46 -0400 Subject: [PATCH 036/370] Update lavaland_ruin_code.dm --- code/modules/ruins/lavaland_ruin_code.dm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/code/modules/ruins/lavaland_ruin_code.dm b/code/modules/ruins/lavaland_ruin_code.dm index b8d19a7018..28ea849782 100644 --- a/code/modules/ruins/lavaland_ruin_code.dm +++ b/code/modules/ruins/lavaland_ruin_code.dm @@ -16,6 +16,17 @@ /obj/item/seeds/sunflower/moonflower = 8 ) +/obj/item/disk/design_disk/plant_disk + name = "Plant Disk Blueprints" + desc = "A disk to be uploaded into the autolathen for more plant disks." + icon_state = "datadisk1" + max_blueprints = 1 + +/obj/item/disk/design_disk/golem_shell/Initialize() + . = ..() + var/datum/design/diskplantgene/P = new + blueprints[1] = P + //Free Golems /obj/item/disk/design_disk/golem_shell From 84016ed3efd29c83887a76345f8f8fed163b87c1 Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Tue, 21 May 2019 12:30:44 -0400 Subject: [PATCH 037/370] Here we go. --- code/game/objects/effects/decals/crayon.dm | 1 + code/game/objects/items/crayons.dm | 60 +++++++------------ .../code/game/gamemodes/gangs/gang.dm | 2 +- .../code/game/gamemodes/gangs/gang_datums.dm | 10 ++-- 4 files changed, 30 insertions(+), 43 deletions(-) diff --git a/code/game/objects/effects/decals/crayon.dm b/code/game/objects/effects/decals/crayon.dm index 34263ef9a4..0a0348ae39 100644 --- a/code/game/objects/effects/decals/crayon.dm +++ b/code/game/objects/effects/decals/crayon.dm @@ -3,6 +3,7 @@ desc = "Graffiti. Damn kids." icon = 'icons/effects/crayondecal.dmi' icon_state = "rune1" + plane = GAME_PLANE //makes the graffiti visible over a wall. gender = NEUTER mergeable_decal = FALSE var/do_icon_rotate = TRUE diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index b76a9b9c98..859369384c 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -68,8 +68,7 @@ var/pre_noise = FALSE var/post_noise = FALSE - var/datum/team/gang/gang //For marking territory, spraycans are gang-locked to their initial gang due to colors - + var/datum/team/gang/gang //For marking territory. /obj/item/toy/crayon/suicide_act(mob/user) user.visible_message("[user] is jamming [src] up [user.p_their()] nose and into [user.p_their()] brain. It looks like [user.p_theyre()] trying to commit suicide!") @@ -290,8 +289,14 @@ else if(drawing in numerals) temp = "number" - temp = gang_check(user,target) - if(!temp) return // gang check + // If a gang member is using a gang spraycan, it'll behave differently + var/gang_mode = FALSE + if(gang && user.mind && user.mind.has_antag_datum(/datum/antagonist/gang)) //Heres a check. + gang_mode = TRUE // No more runtimes if a non-gang member sprays a gang can, it just works like normal cans. + // discontinue if the area isn't valid for tagging because gang "honour" + if(gang_mode && (!can_claim_for_gang(user, target))) + return + var/graf_rot if(drawing in oriented) switch(user.dir) @@ -320,12 +325,13 @@ playsound(user.loc, 'sound/effects/spray.ogg', 5, 1, 5) var/takes_time = !instant + if(gang_mode) + takes_time = TRUE var/wait_time = 50 if(paint_mode == PAINT_LARGE_HORIZONTAL) wait_time *= 3 - if(gang) takes_time = TRUE // gang tagging takes time. if(takes_time) if(!do_after(user, 50, target = target)) return @@ -336,8 +342,15 @@ var/list/turf/affected_turfs = list() - if(!gang) //drawing is done in gang_final() if it's a gang type - if(actually_paints) + + if(actually_paints) + if(gang_mode) + // Double check it wasn't tagged in the meanwhile + if(!can_claim_for_gang(user, target)) + return + tag_for_gang(user, target) + affected_turfs += target + else switch(paint_mode) if(PAINT_NORMAL) var/obj/effect/decal/cleanable/crayon/C = new(target, paint_color, drawing, temp, graf_rot) @@ -357,8 +370,6 @@ else to_chat(user, "There isn't enough space to paint!") return - else // gangstuff - if(gang_final(user, target, affected_turfs)) return // gangstuff if(!instant) to_chat(user, "You finish drawing \the [temp].") @@ -382,27 +393,6 @@ //////////////Gang mode stuff///////////////// -/obj/item/toy/crayon/proc/gang_check(mob/user, atom/target) // hooked into afterattack - var/gang_mode = FALSE - if(gang && user.mind) - var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) - if(G.gang != gang) - to_chat(user, "This spraycan's color isn't your gang's one! You cannot use it.") - return FALSE - gang_mode = TRUE - instant = FALSE - . = "graffiti" - // discontinue if the area isn't valid for tagging because gang "honour" - if(gang_mode && (!can_claim_for_gang(user, target))) - return FALSE - -/obj/item/toy/crayon/proc/gang_final(mob/user, atom/target, list/affected_turfs) // hooked into afterattack - // Double check it wasn't tagged in the meanwhile - if(!can_claim_for_gang(user, target)) - return TRUE - tag_for_gang(user, target) - affected_turfs += target - /obj/item/toy/crayon/proc/can_claim_for_gang(mob/user, atom/target) // Check area validity. // Reject space, player-created areas, and non-station z-levels. @@ -420,10 +410,6 @@ spraying_over = TRUE break - for(var/obj/machinery/power/apc in target) - to_chat(user, "You can't tag an APC.") - return FALSE - var/occupying_gang = territory_claimed(A, user) if(occupying_gang && !spraying_over) to_chat(user, "[A] has already been tagged by the [occupying_gang] gang! You must get rid of or spray over the old tag first!") @@ -446,9 +432,9 @@ var/datum/antagonist/gang/G = user.mind.has_antag_datum(/datum/antagonist/gang) var/area/territory = get_area(target) - new /obj/effect/decal/cleanable/crayon/gang(target,G.gang,"graffiti",0,user) + new /obj/effect/decal/cleanable/crayon/gang(target,G.gang,"graffiti",0,user) // Heres the gang tag. to_chat(user, "You tagged [territory] for your gang!") -////////////Gang end//////////////////// +/////////////////Gang end//////////////////// /obj/item/toy/crayon/attack(mob/M, mob/user) @@ -782,7 +768,7 @@ reagent_contents = list("nothing" = 1, "mutetoxin" = 1) /obj/item/toy/crayon/spraycan/gang - charges = 20 + charges = 10 // Charges are at 10 because the tagger trait exists. gang = TRUE pre_noise = FALSE diff --git a/modular_citadel/code/game/gamemodes/gangs/gang.dm b/modular_citadel/code/game/gamemodes/gangs/gang.dm index 5b93cf0cb7..8192041e3e 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang.dm @@ -331,7 +331,7 @@ var/list/report = list() report += "[name]:" if(winner) - report += "The [name] gang was successful!" + report += "The [name] gang successfully activated the mind dominator!" else report += "The [name] gang has failed!" diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm index c2a31abe17..010778413b 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm @@ -86,15 +86,15 @@ /datum/team/gang/tunnel name = "Tunnel" - color = "#FF00FF" + color = "#FF00FF" //Gave the leather jacket to the tunnel gang over diablo. inner_outfits = list(/obj/item/clothing/under/villain) - outer_outfits = list(/obj/item/clothing/suit/poncho/ponchoshame) + outer_outfits = list(/obj/item/clothing/suit/jacket/leather) /datum/team/gang/diablo name = "Diablo" - color = "#FF0000" - inner_outfits = list(/obj/item/clothing/under/color/red) - outer_outfits = list(/obj/item/clothing/suit/jacket/leather) + color = "#FF0000" //literal early 90s skinhead regalia. + inner_outfits = list(/obj/item/clothing/under/pants/classicjeans) + outer_outfits = list(/obj/item/clothing/suit/suspenders) /datum/team/gang/psyke name = "Psyke" From b4a7bad2f850de37cef39014c08d460d78883805 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Tue, 21 May 2019 23:49:33 +0200 Subject: [PATCH 038/370] Initial copypasta. --- .github/CONTRIBUTING.md | 5 +++++ .github/ISSUE_TEMPLATE.md | 9 --------- .github/ISSUE_TEMPLATE/bug_report.md | 20 ++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 7 +++++++ .github/PULL_REQUEST_TEMPLATE.md | 17 ++++++++++++++--- 5 files changed, 46 insertions(+), 12 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index c00e2688f1..e14c5d1624 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -111,6 +111,9 @@ The use of the : operator to override type safety checks is not allowed. You mus ### Type paths must begin with a / eg: `/datum/thing`, not `datum/thing` +### Type paths must be lowercase +eg: `/datum/thing/blue`, not `datum/thing/BLUE` or `datum/thing/Blue` + ### Datum type paths must began with "datum" In DM, this is optional, but omitting it makes finding definitions harder. @@ -240,6 +243,8 @@ This prevents nesting levels from getting deeper then they need to be. * Queries must never specify the database, be it in code, or in text files in the repo. +* Primary keys are inherently immutable and you must never do anything to change the primary key of a row or entity. This includes preserving auto increment numbers of rows when copying data to a table in a conversion script. No amount of bitching about gaps in ids or out of order ids will save you from this policy. + ### Mapping Standards * TGM Format & Map Merge * All new maps submitted to the repo through a pull request must be in TGM format (unless there is a valid reason present to have it in the default BYOND format.) This is done using the [Map Merge](https://github.com/tgstation/tgstation/wiki/Map-Merger) utility included in the repo to convert the file to TGM format. diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index 949f1c4c44..0000000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,9 +0,0 @@ -[Round ID]: # (If you discovered this issue from playing tgstation hosted servers:) -[Round ID]: # (**INCLUDE THE ROUND ID**) -[Round ID]: # (It can be found in the Status panel or retrieved from https://atlantaned.space/statbus/round.php ! The round id let's us look up valuable information and logs for the round the bug happened.) - -[Testmerges]: # (If you believe the issue to be caused by a test merge [OOC tab -> Show Server Revision], report it in the pull request's comment section instead.) - -[Reproduction]: # (Explain your issue in detail, including the steps to reproduce it. Issues without proper reproduction steps or explanation are open to being ignored/closed by maintainers.) - -[For Admins]: # (Oddities induced by var-edits and other admin tools are not necessarily bugs. Verify that your issues occur under regular circumstances before reporting them.) \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000000..09f99f6c85 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,20 @@ +--- +name: Bug report +about: Create a report to help reproduce and fix the issue +--- + +## Round ID: + + + +## Testmerges: + + + +## Reproduction: + + + + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000000..11687283df --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,7 @@ +--- +name: Feature request +about: Suggest an idea for this project + +--- + +Feature requests are not handled in the repository. The best place to discuss these ideas would be on the /tg/station 13 forums here: https://tgstation13.org/phpBB/viewforum.php?f=9&sid=5153c1c704a4fb1006bf7a265e45e03f diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 7855fd5782..f204eb0a72 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,6 +1,16 @@ -[Changelogs]: # (Your PR should contain a detailed changelog of notable changes, titled and categorized appropriately. This includes, new features, sprites, sounds, balance changes, admin tools, map edits, removals, big refactors, config changes, hosting changes and important fixes. An example changelog has been provided below for you to edit. If you need additional help, read https://github.com/tgstation/tgstation/wiki/Changelogs) + + -:cl: optional name here +## About The Pull Request + + + +## Why It's Good For The Game + + + +## Changelog +:cl: add: Added new things add: Added more things del: Removed old things @@ -19,4 +29,5 @@ admin: messed with admin stuff server: something server ops should know /:cl: -[why]: # (Please add a short description [two lines down] of why you think these changes would benefit the game. If you can't justify it in words, it might not be worth adding.) + + From 82ea741f5722e9495cef3e353f31ee8614d35e90 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 22 May 2019 14:34:50 -0400 Subject: [PATCH 039/370] Update packs.dm --- code/modules/cargo/packs.dm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index 633f4fa850..2a9f85912d 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -882,7 +882,6 @@ ) crate_name= "shield sat crate" - /datum/supply_pack/engineering/shield_sat_control name = "Shield System Control Board" desc = "A control system for the Shield Generator Satellite system." @@ -891,7 +890,6 @@ contains = list(/obj/item/circuitboard/computer/sat_control) crate_name= "shield control board crate" - ////////////////////////////////////////////////////////////////////////////// //////////////////////// Engine Construction ///////////////////////////////// ////////////////////////////////////////////////////////////////////////////// @@ -961,6 +959,15 @@ crate_name = "grounding rod crate" crate_type = /obj/structure/closet/crate/engineering/electrical +/datum/supply_pack/engine/mason + name = "M.A.S.O.N RIG Crate" + desc = "The rare M.A.S.O.N RIG. Requires CE access to open." + cost = 15000 + access = ACCESS_CE + contains = list(/obj/item/clothing/suit/space/hardsuit/ancient/mason) + crate_name = "M.A.S.O.N Rig" + crate_type = /obj/structure/closet/crate/secure/engineering + /datum/supply_pack/engine/PA name = "Particle Accelerator Crate" desc = "A supermassive black hole or hyper-powered teslaball are the perfect way to spice up any party! This \"My First Apocalypse\" kit contains everything you need to build your own Particle Accelerator! Ages 10 and up." From 80b44ac0f4f57b9d7d3316ede14fb0d3960ef0a8 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 22 May 2019 14:37:24 -0400 Subject: [PATCH 040/370] Update hardsuit.dm --- code/modules/clothing/spacesuits/hardsuit.dm | 45 ++++++++++++++------ 1 file changed, 31 insertions(+), 14 deletions(-) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 02982998e1..1294b88bfc 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -443,7 +443,6 @@ icon_state = "hardsuit0-medical" item_state = "medical_helm" item_color = "medical" - flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR flash_protect = 0 armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 60, "fire" = 60, "acid" = 75) scan_reagents = 1 @@ -500,8 +499,6 @@ helmettype = /obj/item/clothing/head/helmet/space/hardsuit/rd tauric = TRUE //Citadel Add for tauric hardsuits - - //Security hardsuit /obj/item/clothing/head/helmet/space/hardsuit/security name = "security hardsuit helmet" @@ -511,7 +508,6 @@ item_color = "sec" armor = list("melee" = 35, "bullet" = 15, "laser" = 30,"energy" = 10, "bomb" = 10, "bio" = 100, "rad" = 50, "fire" = 75, "acid" = 75) - /obj/item/clothing/suit/space/hardsuit/security icon_state = "hardsuit-sec" name = "security hardsuit" @@ -533,7 +529,6 @@ item_color = "hos" armor = list("melee" = 45, "bullet" = 25, "laser" = 30, "energy" = 10, "bomb" = 25, "bio" = 100, "rad" = 50, "fire" = 95, "acid" = 95) - /obj/item/clothing/suit/space/hardsuit/security/hos icon_state = "hardsuit-hos" name = "head of security's hardsuit" @@ -624,6 +619,37 @@ var/footstep = 1 var/datum/component/mobhook +/obj/item/clothing/suit/space/hardsuit/ancient/mason + name = "M.A.S.O.N RIG" + desc = "The Multy Advanced Sencer Of Networks RIG type hardsuit. With shining plates to protect against not only rads storms, SM meltdowns, acid proof coating this hulking hardsuit has huds built into its visors.\ + The scanners allow for at a glace huds on anything a engineer would need. Sadly most of its armor makes the suit bulky and unable to sustain much harm from any weapon other then a bomb. This RIG can hold bags and toolboxes on its external shells.\ + M.A.S.O.N Rigs are also made to withstand lava as well as ash storms down on lava land or other planets that are hotter then normal with its own environmental hazards. \ + Only few of these are made to do the shear costs of them for use. Armord as it is, this suit will NOT save you from a nuke, massive bomb, or other larger explosions." + icon_state = "hardsuit-ancient" + item_state = "anc_hardsuit" + armor = list("melee" = 10, "bullet" = 5, "laser" = 5, "energy" = 500, "bomb" = 500, "bio" = 500, "rad" = 500, "fire" = 500, "acid" = 500) + slowdown = 6 //Slow + allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/storage, /obj/item/construction/rcd, /obj/item/pipe_dispenser) + helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ancient/mason + max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + +/obj/item/clothing/head/helmet/space/hardsuit/ancient/mason + name = "M.A.S.O.N RIG helmet" + desc = "M.A.S.O.N RIG hardsuit helmet. This hulking helmet was made only for constructions making it not armored for anything but that. \ + Weak against combat it excels giving eye protection and flood light." + icon_state = "hardsuit0-ancient" + item_state = "anc_helm" + armor = list("melee" = 10, "bullet" = 5, "laser" = 5, "energy" = 500, "bomb" = 500, "bio" = 500, "rad" = 500, "fire" = 500, "acid" = 500) + item_color = "ancient" + brightness_on = 16 + scan_reagents = 1 + flash_protect = 5 //We will not be flash by bombs + tint = 1 + /obj/machinery/doppler_array/integrated/bomb_radar + max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + /obj/item/clothing/suit/space/hardsuit/ancient/proc/on_mob_move() var/mob/living/carbon/human/H = loc if(!istype(H) || H.wear_suit != src) @@ -693,7 +719,6 @@ return 1 return 0 - /obj/item/clothing/suit/space/hardsuit/shielded/Destroy() STOP_PROCESSING(SSobj, src) return ..() @@ -751,8 +776,6 @@ item_state = "ert_command" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/ctf/blue - - /obj/item/clothing/head/helmet/space/hardsuit/shielded/ctf name = "shielded hardsuit helmet" desc = "Standard issue hardsuit helmet for playing capture the flag." @@ -761,7 +784,6 @@ item_color = "ert_medical" armor = list("melee" = 0, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 95, "acid" = 95) - /obj/item/clothing/head/helmet/space/hardsuit/shielded/ctf/red icon_state = "hardsuit0-ert_security" item_state = "hardsuit0-ert_security" @@ -774,10 +796,6 @@ item_state = "hardsuit0-ert_commander" item_color = "ert_commander" - - - - //////Syndicate Version /obj/item/clothing/suit/space/hardsuit/shielded/syndi @@ -792,7 +810,6 @@ slowdown = 0 tauric = TRUE //Citadel Add for tauric hardsuits - /obj/item/clothing/suit/space/hardsuit/shielded/syndi/Initialize() jetpack = new /obj/item/tank/jetpack/suit(src) . = ..() From 90bc986b8482640c242ca7cabb0273ca27f1d999 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 22 May 2019 15:33:50 -0400 Subject: [PATCH 041/370] Bhijn's sanity --- code/modules/clothing/spacesuits/hardsuit.dm | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 1294b88bfc..c4dc97ce2a 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -646,10 +646,25 @@ scan_reagents = 1 flash_protect = 5 //We will not be flash by bombs tint = 1 - /obj/machinery/doppler_array/integrated/bomb_radar + var/obj/machinery/doppler_array/integrated/bomb_radar max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF +/obj/item/clothing/head/helmet/space/hardsuit/ancient/mason/Initialize() + . = ..() + bomb_radar = new /obj/machinery/doppler_array/integrated(src) + +/obj/item/clothing/head/helmet/space/hardsuit/ancient/mason/equipped(mob/living/carbon/human/user, slot) + ..() + if (slot == SLOT_HEAD) + var/datum/atom_hud/DHUD = GLOB.huds[DATA_HUD_DIAGNOSTIC_BASIC] + DHUD.add_hud_to(user) + +/obj/item/clothing/head/helmet/space/hardsuit/ancient/mason/dropped(mob/living/carbon/human/user) + ..() + if (user.head == src) + var/datum/atom_hud/DHUD = GLOB.huds[DATA_HUD_DIAGNOSTIC_BASIC] + DHUD.remove_hud_from(user) /obj/item/clothing/suit/space/hardsuit/ancient/proc/on_mob_move() var/mob/living/carbon/human/H = loc if(!istype(H) || H.wear_suit != src) From 6fbe698e32431dc9e9f4f1db005ba4c24752edea Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 22 May 2019 15:45:47 -0400 Subject: [PATCH 042/370] I know what im doing, I sware --- code/modules/clothing/spacesuits/hardsuit.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index c4dc97ce2a..2bc35c1c14 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -435,7 +435,6 @@ . = ..() AddComponent(/datum/component/anti_magic, TRUE, FALSE) - //Medical hardsuit /obj/item/clothing/head/helmet/space/hardsuit/medical name = "medical hardsuit helmet" @@ -453,6 +452,7 @@ desc = "A special suit that protects against hazardous, low pressure environments. Built with lightweight materials for easier movement." item_state = "medical_hardsuit" allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/storage/firstaid, /obj/item/healthanalyzer, /obj/item/stack/medical) + flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 60, "fire" = 60, "acid" = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/medical tauric = TRUE //Citadel Add for tauric hardsuits @@ -665,6 +665,7 @@ if (user.head == src) var/datum/atom_hud/DHUD = GLOB.huds[DATA_HUD_DIAGNOSTIC_BASIC] DHUD.remove_hud_from(user) + /obj/item/clothing/suit/space/hardsuit/ancient/proc/on_mob_move() var/mob/living/carbon/human/H = loc if(!istype(H) || H.wear_suit != src) From 3168c956a9b9b865a2811ba2dab1953d7a991042 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 22 May 2019 15:46:57 -0400 Subject: [PATCH 043/370] *cough* --- code/modules/clothing/spacesuits/hardsuit.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 2bc35c1c14..092048b284 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -444,6 +444,7 @@ item_color = "medical" flash_protect = 0 armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 60, "fire" = 60, "acid" = 75) + flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR scan_reagents = 1 /obj/item/clothing/suit/space/hardsuit/medical @@ -452,7 +453,6 @@ desc = "A special suit that protects against hazardous, low pressure environments. Built with lightweight materials for easier movement." item_state = "medical_hardsuit" allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/storage/firstaid, /obj/item/healthanalyzer, /obj/item/stack/medical) - flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 60, "fire" = 60, "acid" = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/medical tauric = TRUE //Citadel Add for tauric hardsuits From e0e0142fb181f5f4583a715e3528a4a2e8710c74 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 22 May 2019 18:26:06 -0400 Subject: [PATCH 044/370] Better grammar --- code/modules/clothing/spacesuits/hardsuit.dm | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 092048b284..d40b5f4e9b 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -621,10 +621,7 @@ /obj/item/clothing/suit/space/hardsuit/ancient/mason name = "M.A.S.O.N RIG" - desc = "The Multy Advanced Sencer Of Networks RIG type hardsuit. With shining plates to protect against not only rads storms, SM meltdowns, acid proof coating this hulking hardsuit has huds built into its visors.\ - The scanners allow for at a glace huds on anything a engineer would need. Sadly most of its armor makes the suit bulky and unable to sustain much harm from any weapon other then a bomb. This RIG can hold bags and toolboxes on its external shells.\ - M.A.S.O.N Rigs are also made to withstand lava as well as ash storms down on lava land or other planets that are hotter then normal with its own environmental hazards. \ - Only few of these are made to do the shear costs of them for use. Armord as it is, this suit will NOT save you from a nuke, massive bomb, or other larger explosions." + desc = "The Multi-Augmented Severe Operations Networked Resource Integration Gear is an man-portable tank designed for extreme environmental situations. It is excessively bulky, but rated for all but the most atomic of hazards. The specialized armor is surprisingly weak to conventional weaponry. The exo slot can attach most storge bags on to the suit." icon_state = "hardsuit-ancient" item_state = "anc_hardsuit" armor = list("melee" = 10, "bullet" = 5, "laser" = 5, "energy" = 500, "bomb" = 500, "bio" = 500, "rad" = 500, "fire" = 500, "acid" = 500) @@ -636,8 +633,7 @@ /obj/item/clothing/head/helmet/space/hardsuit/ancient/mason name = "M.A.S.O.N RIG helmet" - desc = "M.A.S.O.N RIG hardsuit helmet. This hulking helmet was made only for constructions making it not armored for anything but that. \ - Weak against combat it excels giving eye protection and flood light." + desc = "The M.A.S.O.N RIG helmet is complimentary to the rest of the armor. It features a very large, high powered flood lamp and robust flash protection." icon_state = "hardsuit0-ancient" item_state = "anc_helm" armor = list("melee" = 10, "bullet" = 5, "laser" = 5, "energy" = 500, "bomb" = 500, "bio" = 500, "rad" = 500, "fire" = 500, "acid" = 500) From 080b29de798279542463c10b5cea5868512788f7 Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Thu, 23 May 2019 00:40:57 -0400 Subject: [PATCH 045/370] Solves a few things. --- code/game/objects/items/crayons.dm | 4 +-- .../items/implants/implant_mindshield.dm | 5 ++- .../code/game/gamemodes/gangs/gang_items.dm | 32 +++++++++++-------- .../code/game/gamemodes/gangs/gangs.dm | 6 ++++ 4 files changed, 31 insertions(+), 16 deletions(-) diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 859369384c..efa09a8021 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -332,8 +332,8 @@ if(paint_mode == PAINT_LARGE_HORIZONTAL) wait_time *= 3 - if(takes_time) - if(!do_after(user, 50, target = target)) + if(takes_time) //This is what deteremines the time it takes to spray a tag in gang mode. 50 is Default. + if(!do_after(user, 25, target = target)) //Lets try 25 instead of giving them all spraycans. return if(length(text_buffer)) diff --git a/code/game/objects/items/implants/implant_mindshield.dm b/code/game/objects/items/implants/implant_mindshield.dm index 2c197eb7ec..ae7abc6d63 100644 --- a/code/game/objects/items/implants/implant_mindshield.dm +++ b/code/game/objects/items/implants/implant_mindshield.dm @@ -26,7 +26,7 @@ if(target.mind.has_antag_datum(/datum/antagonist/brainwashed)) target.mind.remove_antag_datum(/datum/antagonist/brainwashed) - if(target.mind.has_antag_datum(/datum/antagonist/rev/head) || target.mind.unconvertable) + if(target.mind.has_antag_datum(/datum/antagonist/rev/head) || target.mind.unconvertable || target.mind.has_antag_datum(/datum/antagonist/gang/boss)) if(!silent) target.visible_message("[target] seems to resist the implant!", "You feel something interfering with your mental conditioning, but you resist it!") var/obj/item/implanter/I = loc @@ -37,9 +37,12 @@ I.update_icon() return FALSE + var/datum/antagonist/gang/gang = target.mind.has_antag_datum(/datum/antagonist/gang) var/datum/antagonist/rev/rev = target.mind.has_antag_datum(/datum/antagonist/rev) if(rev) rev.remove_revolutionary(FALSE, user) + if(gang) + target.mind.remove_antag_datum(/datum/antagonist/gang) if(!silent) if(target.mind in SSticker.mode.cult) to_chat(target, "You feel something interfering with your mental conditioning, but you resist it!") diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm index f808229661..f3c1fc91b0 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm @@ -171,7 +171,7 @@ /datum/gang_item/weapon/surplus name = "Surplus Rifle" id = "surplus" - cost = 7 + cost = 6 item_path = /obj/item/gun/ballistic/automatic/surplus /datum/gang_item/weapon/ammo/surplus_ammo @@ -183,7 +183,7 @@ /datum/gang_item/weapon/improvised name = "Sawn-Off Improvised Shotgun" id = "sawn" - cost = 6 + cost = 5 item_path = /obj/item/gun/ballistic/revolver/doublebarrel/improvised/sawn /datum/gang_item/weapon/ammo/improvised_ammo @@ -195,7 +195,7 @@ /datum/gang_item/weapon/pistol name = "10mm Pistol" id = "pistol" - cost = 25 + cost = 20 item_path = /obj/item/gun/ballistic/automatic/pistol /datum/gang_item/weapon/ammo/pistol_ammo @@ -207,7 +207,7 @@ /datum/gang_item/weapon/sniper name = "Black Market .50cal Sniper Rifle" id = "sniper" - cost = 40 + cost = 30 item_path = /obj/item/gun/ballistic/automatic/sniper_rifle /datum/gang_item/weapon/ammo/sniper_ammo @@ -225,7 +225,7 @@ /datum/gang_item/weapon/machinegun name = "Mounted Machine Gun" id = "MG" - cost = 50 + cost = 40 item_path = /obj/machinery/manned_turret spawn_msg = "The mounted machine gun features enhanced responsiveness. Hold down on the trigger while firing to control where you're shooting." @@ -236,13 +236,13 @@ /datum/gang_item/weapon/uzi name = "Uzi SMG" id = "uzi" - cost = 60 + cost = 50 item_path = /obj/item/gun/ballistic/automatic/mini_uzi /datum/gang_item/weapon/ammo/uzi_ammo name = "Uzi Ammo" id = "uzi_ammo" - cost = 30 + cost = 20 item_path = /obj/item/ammo_box/magazine/uzim9mm /////////////////// @@ -256,7 +256,7 @@ /datum/gang_item/equipment/spraycan name = "Territory Spraycan" id = "spraycan" - cost = 5 + cost = 1 item_path = /obj/item/toy/crayon/spraycan/gang /datum/gang_item/equipment/spraycan/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) @@ -285,13 +285,13 @@ /datum/gang_item/equipment/frag name = "Fragmentation Grenade" id = "frag nade" - cost = 7 + cost = 5 item_path = /obj/item/grenade/syndieminibomb/concussion/frag /datum/gang_item/equipment/stimpack name = "Black Market Stimulants" id = "stimpack" - cost = 12 + cost = 10 item_path = /obj/item/reagent_containers/syringe/stimulants /datum/gang_item/equipment/implant_breaker @@ -308,7 +308,7 @@ /datum/gang_item/equipment/wetwork_boots name = "Wetwork boots" id = "wetwork" - cost = 12 + cost = 10 item_path = /obj/item/clothing/shoes/combat/gang /obj/item/clothing/shoes/combat/gang @@ -317,10 +317,16 @@ permeability_coefficient = 0.01 clothing_flags = NOSLIP +datum/gang_item/equipment/shield + name = "Riot Shield" + id = "riot_shield" + cost = 25 + item_path = /obj/item/shield/riot + /datum/gang_item/equipment/pen name = "Recruitment Pen" id = "pen" - cost = 25 + cost = 20 item_path = /obj/item/pen/gang spawn_msg = "More recruitment pens will allow you to recruit gangsters faster. Only gang leaders can recruit with pens." @@ -343,7 +349,7 @@ /datum/gang_item/equipment/gangtool id = "gangtool" - cost = 10 + cost = 5 /datum/gang_item/equipment/gangtool/spawn_item(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) var/item_type diff --git a/modular_citadel/code/game/gamemodes/gangs/gangs.dm b/modular_citadel/code/game/gamemodes/gangs/gangs.dm index 6e4bf752a6..9151107d6f 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gangs.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gangs.dm @@ -19,6 +19,12 @@ GLOBAL_LIST_EMPTY(gangs) var/list/datum/mind/gangboss_candidates = list() +/datum/game_mode/gang/generate_report() + return "Cybersun Industries representatives claimed that they, in joint research with the Tiger Cooperative, have made a major breakthrough in brainwashing technology, and have \ + made the nanobots that apply the \"conversion\" very small and capable of fitting into usually innocent objects - namely, pens. While they refused to outsource this technology for \ + months to come due to its flaws, they reported some as missing but passed it off to carelessness. At Central Command, we don't like mysteries, and we have reason to believe that this \ + technology was stolen for anti-Nanotrasen use. Be on the lookout for territory claims and unusually violent crew behavior, applying mindshield implants as necessary." + /datum/game_mode/gang/pre_setup() if(CONFIG_GET(flag/protect_roles_from_antagonist)) restricted_jobs += protected_jobs From 9081b34cb865d2e2551f7661aca12c4182edb228 Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Thu, 23 May 2019 01:16:29 -0400 Subject: [PATCH 046/370] blunt trauma deconv --- code/modules/mob/living/carbon/human/species.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index e2e9e5149f..1c74d37e04 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1634,8 +1634,11 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(H.stat == CONSCIOUS && H != user && prob(I.force + ((100 - H.health) * 0.5))) // rev deconversion through blunt trauma. var/datum/antagonist/rev/rev = H.mind.has_antag_datum(/datum/antagonist/rev) + var/datum/antagonist/gang/gang = H.mind.has_antag_datum(/datum/antagonist/gang/) if(rev) rev.remove_revolutionary(FALSE, user) + if(gang) + gang.remove_from_gang(user) if(bloody) //Apply blood if(H.wear_mask) From 38ad6785a0dd62dbfda26aba7714bf063290638f Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Thu, 23 May 2019 01:42:00 -0400 Subject: [PATCH 047/370] Over-reduced the item costs a bit too much. Lets do it in tiny increments until It plays somewhat unpredictably for all sides. --- code/game/objects/items/crayons.dm | 2 +- .../code/game/gamemodes/gangs/gang_items.dm | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index efa09a8021..184f4d02a3 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -768,7 +768,7 @@ reagent_contents = list("nothing" = 1, "mutetoxin" = 1) /obj/item/toy/crayon/spraycan/gang - charges = 10 // Charges are at 10 because the tagger trait exists. + charges = 20 // Charges back to 20, which is the default value for them. gang = TRUE pre_noise = FALSE diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm index f3c1fc91b0..ccaab546e5 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm @@ -195,7 +195,7 @@ /datum/gang_item/weapon/pistol name = "10mm Pistol" id = "pistol" - cost = 20 + cost = 25 item_path = /obj/item/gun/ballistic/automatic/pistol /datum/gang_item/weapon/ammo/pistol_ammo @@ -207,7 +207,7 @@ /datum/gang_item/weapon/sniper name = "Black Market .50cal Sniper Rifle" id = "sniper" - cost = 30 + cost = 35 item_path = /obj/item/gun/ballistic/automatic/sniper_rifle /datum/gang_item/weapon/ammo/sniper_ammo @@ -225,7 +225,7 @@ /datum/gang_item/weapon/machinegun name = "Mounted Machine Gun" id = "MG" - cost = 40 + cost = 45 item_path = /obj/machinery/manned_turret spawn_msg = "The mounted machine gun features enhanced responsiveness. Hold down on the trigger while firing to control where you're shooting." @@ -291,7 +291,7 @@ /datum/gang_item/equipment/stimpack name = "Black Market Stimulants" id = "stimpack" - cost = 10 + cost = 12 item_path = /obj/item/reagent_containers/syringe/stimulants /datum/gang_item/equipment/implant_breaker @@ -391,7 +391,7 @@ datum/gang_item/equipment/shield /datum/gang_item/equipment/dominator/get_extra_info(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) if(gang) - return "This device requires a 5x5 area clear of walls to work best. (Estimated Takeover Time: [round(gang.determine_domination_time()/60,0.1)] minutes)" + return "This device requires a 5x5 area clear of walls to FUNCTION. (Estimated Takeover Time: [round(gang.determine_domination_time()/60,0.1)] minutes)" /datum/gang_item/equipment/dominator/purchase(mob/living/carbon/user, datum/team/gang/gang, obj/item/device/gangtool/gangtool) var/area/userarea = get_area(user) From 196da05313ec4e349e8a02e51c231102e9c62c85 Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Thu, 23 May 2019 02:49:35 -0400 Subject: [PATCH 048/370] Brute deconv correct woops --- code/modules/mob/living/carbon/human/species.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 1c74d37e04..bb1a703b8d 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1638,7 +1638,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(rev) rev.remove_revolutionary(FALSE, user) if(gang) - gang.remove_from_gang(user) + H.mind.remove_antag_datum(/datum/antagonist/gang) if(bloody) //Apply blood if(H.wear_mask) From a09df344209553a0051e19101e6929296eceec54 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 12:09:14 +0300 Subject: [PATCH 049/370] Gas pump CTRL and Alt click function --- .../machinery/components/binary_devices/pump.dm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index e7df188f70..2f8f490987 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -27,7 +27,19 @@ Thus, the two variables affect pump operation are set in New(): construction_type = /obj/item/pipe/directional pipe_state = "pump" + +/obj/machinery/atmospherics/components/binary/pump/CtrlClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + on = !on + update_icon() + return ..() + update_icon() + return ..() +/obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + target_pressure = MAX_OUTPUT_PRESSURE + /obj/machinery/atmospherics/components/binary/pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X From 54e013272a0eb418d2886962618e7f9dc9bab79d Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 12:12:15 +0300 Subject: [PATCH 050/370] Volume pump CTRL and alt click functionality --- .../components/binary_devices/volume_pump.dm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index 46b646cabf..99b0165f13 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -28,6 +28,18 @@ Thus, the two variables affect pump operation are set in New(): construction_type = /obj/item/pipe/directional pipe_state = "volumepump" +/obj/machinery/atmospherics/components/binary/volume_pump/CtrlClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + on = !on + update_icon() + return ..() + +/obj/machinery/atmospherics/components/binary/volume_pump/AltClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + transfer_rate = MAX_TRANSFER_RATE + update_icon() + return ..() + /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X @@ -192,4 +204,4 @@ Thus, the two variables affect pump operation are set in New(): else investigate_log("Pump, [src.name], was unwrenched by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Pump, [src.name], was unwrenched by [ADMIN_LOOKUPFLW(user)] at [A]") - return TRUE \ No newline at end of file + return TRUE From 277a498f288b43d3e2174343f6ec9514154f4403 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 12:13:45 +0300 Subject: [PATCH 051/370] Update filter.dm --- .../machinery/components/trinary_devices/filter.dm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index 4101deb00c..a65785a77e 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -12,6 +12,18 @@ construction_type = /obj/item/pipe/trinary/flippable pipe_state = "filter" +/obj/machinery/atmospherics/components/trinary/filter/CtrlClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + on = !on + update_icon() + return ..() + +/obj/machinery/atmospherics/components/trinary/filter/AltClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + target_pressure = MAX_OUTPUT_PRESSURE + update_icon() + return ..() + /obj/machinery/atmospherics/components/trinary/filter/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X From ea1edd965dbf18c496ff62f95ba382b1f265e0ac Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 12:18:13 +0300 Subject: [PATCH 052/370] Update mixer.dm --- .../machinery/components/trinary_devices/mixer.dm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index 4dd2972526..50c1db2b04 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -14,6 +14,17 @@ pipe_state = "mixer" //node 3 is the outlet, nodes 1 & 2 are intakes +/obj/machinery/atmospherics/components/trinary/mixer/CtrlClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + on = !on + update_icon() + return ..() + +/obj/machinery/atmospherics/components/trinary/mixer/AltClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + target_pressure = MAX_OUTPUT_PRESSURE + update_icon() + return ..() /obj/machinery/atmospherics/components/trinary/mixer/layer1 piping_layer = PIPING_LAYER_MIN From 77bfcc61eddc796c98bfb2e18cd98ae9dfe471cf Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 13:37:05 +0300 Subject: [PATCH 053/370] Update pump.dm --- .../atmospherics/machinery/components/binary_devices/pump.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 2f8f490987..7a775fb584 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -29,7 +29,7 @@ Thus, the two variables affect pump operation are set in New(): pipe_state = "pump" /obj/machinery/atmospherics/components/binary/pump/CtrlClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() return ..() @@ -37,7 +37,7 @@ Thus, the two variables affect pump operation are set in New(): return ..() /obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE /obj/machinery/atmospherics/components/binary/pump/layer1 From e91338f9e377f162529865368f78e38feaf097ee Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 13:47:23 +0300 Subject: [PATCH 054/370] Update volume_pump.dm --- .../machinery/components/binary_devices/volume_pump.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index 99b0165f13..405af80e0c 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -29,13 +29,13 @@ Thus, the two variables affect pump operation are set in New(): pipe_state = "volumepump" /obj/machinery/atmospherics/components/binary/volume_pump/CtrlClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() return ..() /obj/machinery/atmospherics/components/binary/volume_pump/AltClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) transfer_rate = MAX_TRANSFER_RATE update_icon() return ..() From 07db00be8f15d6d554bb62c7fbb8673f64e787e7 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 13:48:03 +0300 Subject: [PATCH 055/370] Update filter.dm --- .../machinery/components/trinary_devices/filter.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index a65785a77e..5640a1a587 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -13,13 +13,13 @@ pipe_state = "filter" /obj/machinery/atmospherics/components/trinary/filter/CtrlClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() return ..() /obj/machinery/atmospherics/components/trinary/filter/AltClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE update_icon() return ..() From fc54f4b7bf7dbcd274d5b82f5c0abd9866514c2c Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 13:49:24 +0300 Subject: [PATCH 056/370] Update mixer.dm --- .../machinery/components/trinary_devices/mixer.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index 50c1db2b04..3b0e89b99d 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -15,13 +15,13 @@ //node 3 is the outlet, nodes 1 & 2 are intakes /obj/machinery/atmospherics/components/trinary/mixer/CtrlClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() return ..() /obj/machinery/atmospherics/components/trinary/mixer/AltClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE update_icon() return ..() From 5d06de81b686ece5bc393d8550262512104b60e9 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 15:00:27 +0300 Subject: [PATCH 057/370] Fixes inconsistent indentation --- .../atmospherics/machinery/components/binary_devices/pump.dm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 7a775fb584..be59e801d0 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -33,9 +33,7 @@ Thus, the two variables affect pump operation are set in New(): on = !on update_icon() return ..() - update_icon() - return ..() - + /obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE From 5b2fc29d1f319c6ebe44d11eaddde6d6d9d274f5 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 15:08:25 +0300 Subject: [PATCH 058/370] Pumps now let you know when their output is maxed using Alt --- .../atmospherics/machinery/components/binary_devices/pump.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index be59e801d0..864d135f7c 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -37,7 +37,7 @@ Thus, the two variables affect pump operation are set in New(): /obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE - + to_chat(user, "You maximize the pressure on the [src]") /obj/machinery/atmospherics/components/binary/pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X From 661c1d90205ff304a2e90fd61373f31390fa8fad Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 15:18:38 +0300 Subject: [PATCH 059/370] Add fancy colours to the plaintext. --- .../atmospherics/machinery/components/binary_devices/pump.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 864d135f7c..3a5b37b993 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -37,7 +37,7 @@ Thus, the two variables affect pump operation are set in New(): /obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE - to_chat(user, "You maximize the pressure on the [src]") + to_chat(user,"You maximize the pressure on the [src].") /obj/machinery/atmospherics/components/binary/pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X From 5a7ab390cee3a76a836476aa4b96d3011cf5cc64 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 15:20:36 +0300 Subject: [PATCH 060/370] Gah, forgot to do spacing --- .../atmospherics/machinery/components/binary_devices/pump.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 3a5b37b993..cf33b46b63 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -38,6 +38,7 @@ Thus, the two variables affect pump operation are set in New(): if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") + /obj/machinery/atmospherics/components/binary/pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X From 40e90d1e3430a2325fc1b00159064003c7252596 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 15:21:40 +0300 Subject: [PATCH 061/370] Adds volume pump max text, as unlikely as it may be. Removes unnecesary icon update. --- .../machinery/components/binary_devices/volume_pump.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index 405af80e0c..a10b82d33e 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -37,8 +37,7 @@ Thus, the two variables affect pump operation are set in New(): /obj/machinery/atmospherics/components/binary/volume_pump/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) transfer_rate = MAX_TRANSFER_RATE - update_icon() - return ..() + to_chat(user,"You maximize the pressure on the [src].") /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN From 7b82ce463bfcd5b4e503fcb27f4879967cdab0ee Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 15:23:10 +0300 Subject: [PATCH 062/370] Ditto Removes icon update, adds text confirmation to maxed pump in filter --- .../machinery/components/trinary_devices/filter.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index 5640a1a587..e97c4574f0 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -21,8 +21,7 @@ /obj/machinery/atmospherics/components/trinary/filter/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE - update_icon() - return ..() + to_chat(user,"You maximize the pressure on the [src].") /obj/machinery/atmospherics/components/trinary/filter/layer1 piping_layer = PIPING_LAYER_MIN From 9e025a03bd78106c804ed57752807f0716219fcd Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 24 May 2019 15:23:54 +0300 Subject: [PATCH 063/370] Ditto Adds output max confirmation, removes unneeded icon update --- .../machinery/components/trinary_devices/mixer.dm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index 3b0e89b99d..9df4efe8cd 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -23,9 +23,8 @@ /obj/machinery/atmospherics/components/trinary/mixer/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE - update_icon() - return ..() - + to_chat(user,"You maximize the pressure on the [src].") + /obj/machinery/atmospherics/components/trinary/mixer/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X From d082479ccbe9f4034c43b71378e13cb81b817ab0 Mon Sep 17 00:00:00 2001 From: Sishen Date: Fri, 24 May 2019 08:48:03 -0400 Subject: [PATCH 064/370] Slimespeak! --- code/modules/language/slime.dm | 1 + code/modules/surgery/organs/tongue.dm | 1 + 2 files changed, 2 insertions(+) diff --git a/code/modules/language/slime.dm b/code/modules/language/slime.dm index 7171c07b39..cca56ca933 100644 --- a/code/modules/language/slime.dm +++ b/code/modules/language/slime.dm @@ -5,6 +5,7 @@ ask_verb = "warbles" exclaim_verb = "warbles" key = "k" + flags = TONGUELESS_SPEECH syllables = list("qr","qrr","xuq","qil","quum","xuqm","vol","xrim","zaoo","qu-uu","qix","qoo","zix","*","!") default_priority = 70 diff --git a/code/modules/surgery/organs/tongue.dm b/code/modules/surgery/organs/tongue.dm index d5b2d16e67..0e672de225 100644 --- a/code/modules/surgery/organs/tongue.dm +++ b/code/modules/surgery/organs/tongue.dm @@ -17,6 +17,7 @@ /datum/language/beachbum, /datum/language/ratvar, /datum/language/aphasia, + /datum/language/slime, )) /obj/item/organ/tongue/Initialize(mapload) From 180666f519b1f81f59e8ada432ee0f6630bfe4a1 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 24 May 2019 22:11:11 -0400 Subject: [PATCH 065/370] Update recipes.dm --- code/modules/crafting/recipes.dm | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index 6ada4629d3..a605944c4c 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -10,7 +10,6 @@ var/category = CAT_NONE //where it shows up in the crafting UI var/subcategory = CAT_NONE - /datum/crafting_recipe/pin_removal name = "Pin Removal" result = /obj/item/gun @@ -302,6 +301,18 @@ category = CAT_WEAPONRY subcategory = CAT_WEAPON +/datum/crafting_recipe/irifle + name = "Improvised Rifle(7.62mm)" + result = /obj/item/gun/ballistic/shotgun/boltaction/improvised + reqs = list(/obj/item/weaponcrafting/receiver = 1, + /obj/item/pipe = 2, + /obj/item/weaponcrafting/stock = 1, + /obj/item/stack/packageWrap = 5) + tools = list(TOOL_SCREWDRIVER) + time = 100 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + /datum/crafting_recipe/chainsaw name = "Chainsaw" result = /obj/item/twohanded/required/chainsaw @@ -385,7 +396,6 @@ reqs = list(/obj/item/paper = 5) category = CAT_MISC - /datum/crafting_recipe/flashlight_eyes name = "Flashlight Eyes" result = /obj/item/organ/eyes/robotic/flashlight @@ -601,7 +611,6 @@ /obj/item/assembly/igniter = 1) category = CAT_MISC - /datum/crafting_recipe/rcl name = "Makeshift Rapid Cable Layer" result = /obj/item/twohanded/rcl/ghetto @@ -725,7 +734,10 @@ name = "Improvised Jetpack" result = /obj/item/tank/jetpack/improvised time = 30 - reqs = list(/obj/item/tank/internals/oxygen = 2, /obj/item/extinguisher = 1, /obj/item/pipe = 3, /obj/item/stack/cable_coil = 30)//red oxygen tank so it looks right + reqs = list(/obj/item/tank/internals/oxygen = 2, + /obj/item/extinguisher = 1, + /obj/item/pipe = 3, + /obj/item/stack/cable_coil = 30) category = CAT_MISC tools = list(TOOL_WRENCH, TOOL_WELDER, TOOL_WIRECUTTER) From 5b6f324993948bbe0967cf532a984b8850392c29 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 24 May 2019 22:13:16 -0400 Subject: [PATCH 066/370] Update shotgun.dm --- code/modules/projectiles/guns/ballistic/shotgun.dm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm index 914f9bc016..b3ca5956b6 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/ballistic/shotgun.dm @@ -71,7 +71,6 @@ var/obj/item/ammo_casing/AC = magazine.get_round() //load next casing. chambered = AC - /obj/item/gun/ballistic/shotgun/examine(mob/user) ..() if (chambered) @@ -117,6 +116,13 @@ knife_x_offset = 27 knife_y_offset = 13 +/obj/item/gun/ballistic/shotgun/boltaction/improvised + name = "Makeshift 7.62mm Rifle" + icon_state = "ishotgun" + item_state = "shotgun" + desc = "A large zip gun more or less that takes a single 7.62mm bullet" + mag_type = /obj/item/ammo_box/magazine/internal/boltaction/improvised + /obj/item/gun/ballistic/shotgun/boltaction/pump(mob/M) playsound(M, 'sound/weapons/shotgunpump.ogg', 60, 1) if(bolt_open) @@ -137,7 +143,6 @@ ..() to_chat(user, "The bolt is [bolt_open ? "open" : "closed"].") - /obj/item/gun/ballistic/shotgun/boltaction/enchanted name = "enchanted bolt action rifle" desc = "Careful not to lose your head." @@ -153,10 +158,8 @@ icon_state = "arcane_barrage" item_state = "arcane_barrage" can_bayonet = FALSE - item_flags = NEEDS_PERMIT | DROPDEL flags_1 = NONE - mag_type = /obj/item/ammo_box/magazine/internal/boltaction/enchanted/arcane_barrage /obj/item/gun/ballistic/shotgun/boltaction/enchanted/Initialize() @@ -207,7 +210,6 @@ "Slick" = "cshotgun_slick" ) - /obj/item/gun/ballistic/shotgun/automatic/combat/compact name = "compact combat shotgun" desc = "A compact version of the semi automatic combat shotgun. For close encounters." @@ -218,7 +220,6 @@ "Slick" = "cshotgunc_slick" ) - //Dual Feed Shotgun /obj/item/gun/ballistic/shotgun/automatic/dual_tube @@ -261,5 +262,4 @@ return pump() - // DOUBLE BARRELED SHOTGUN and IMPROVISED SHOTGUN are in revolver.dm From f5d4135fe935a7303be3b60a1964367b55cbc3e4 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 24 May 2019 22:14:17 -0400 Subject: [PATCH 067/370] Update automatic.dm --- code/modules/projectiles/guns/ballistic/automatic.dm | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/code/modules/projectiles/guns/ballistic/automatic.dm b/code/modules/projectiles/guns/ballistic/automatic.dm index 8aa8d53726..4bd65a7b20 100644 --- a/code/modules/projectiles/guns/ballistic/automatic.dm +++ b/code/modules/projectiles/guns/ballistic/automatic.dm @@ -268,8 +268,6 @@ empty_alarm() return - - // L6 SAW // /obj/item/gun/ballistic/automatic/l6_saw @@ -292,13 +290,11 @@ /obj/item/gun/ballistic/automatic/l6_saw/unrestricted pin = /obj/item/firing_pin - /obj/item/gun/ballistic/automatic/l6_saw/examine(mob/user) ..() if(cover_open && magazine) to_chat(user, "It seems like you could use an empty hand to remove the magazine.") - /obj/item/gun/ballistic/automatic/l6_saw/attack_self(mob/user) cover_open = !cover_open to_chat(user, "You [cover_open ? "open" : "close"] [src]'s cover.") @@ -308,12 +304,10 @@ playsound(user, 'sound/weapons/sawclose.ogg', 60, 1) update_icon() - /obj/item/gun/ballistic/automatic/l6_saw/update_icon() icon_state = "l6[cover_open ? "open" : "closed"][magazine ? CEILING(get_ammo(0)/12.5, 1)*25 : "-empty"][suppressed ? "-suppressed" : ""]" item_state = "l6[cover_open ? "openmag" : "closedmag"]" - /obj/item/gun/ballistic/automatic/l6_saw/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, flag, params) //what I tried to do here is just add a check to see if the cover is open or not and add an icon_state change because I can't figure out how c-20rs do it with overlays if(cover_open) to_chat(user, "[src]'s cover is open! Close it before firing!") @@ -344,8 +338,6 @@ return ..() - - // SNIPER // /obj/item/gun/ballistic/automatic/sniper_rifle @@ -367,14 +359,12 @@ slot_flags = ITEM_SLOT_BACK actions_types = list() - /obj/item/gun/ballistic/automatic/sniper_rifle/update_icon() if(magazine) icon_state = "sniper-mag" else icon_state = "sniper" - /obj/item/gun/ballistic/automatic/sniper_rifle/syndicate name = "syndicate sniper rifle" desc = "An illegally modified .50 cal sniper rifle with suppression compatibility. Quickscoping still doesn't work." @@ -403,7 +393,6 @@ else icon_state = "surplus-e" - // Laser rifle (rechargeable magazine) // /obj/item/gun/ballistic/automatic/laser From 61605443b59ee1cb9157a8b9370613beb2f94b15 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 24 May 2019 22:18:53 -0400 Subject: [PATCH 068/370] Update rifle.dm --- code/modules/projectiles/boxes_magazines/internal/rifle.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/modules/projectiles/boxes_magazines/internal/rifle.dm b/code/modules/projectiles/boxes_magazines/internal/rifle.dm index ef83e96b1c..ae49a8cadd 100644 --- a/code/modules/projectiles/boxes_magazines/internal/rifle.dm +++ b/code/modules/projectiles/boxes_magazines/internal/rifle.dm @@ -6,10 +6,12 @@ max_ammo = 5 multiload = 1 +/obj/item/ammo_box/magazine/internal/boltaction/improvised + max_ammo = 1 + /obj/item/ammo_box/magazine/internal/boltaction/enchanted max_ammo = 1 ammo_type = /obj/item/ammo_casing/a762/enchanted /obj/item/ammo_box/magazine/internal/boltaction/enchanted/arcane_barrage ammo_type = /obj/item/ammo_casing/magic/arcane_barrage - From 34cad3786b4c59e756bc35967bf26f4d07f350c8 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 25 May 2019 07:35:48 +0200 Subject: [PATCH 069/370] Reduces stunprod's delay. --- code/game/objects/items/stunbaton.dm | 1 + code/modules/assembly/assembly.dm | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index c0e81a7949..b6a8ab718a 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -207,6 +207,7 @@ /obj/item/melee/baton/cattleprod/Initialize() . = ..() sparkler = new (src) + sparkler.activate_cooldown = 18 /obj/item/melee/baton/cattleprod/baton_stun() if(sparkler.activate()) diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index 67527b2e91..1e7a9b7c15 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -27,6 +27,7 @@ var/datum/wires/connected = null var/next_activate = 0 //When we're next allowed to activate - for spam control + var/activate_cooldown = 3 SECONDS /obj/item/assembly/get_part_rating() return 1 @@ -78,7 +79,7 @@ /obj/item/assembly/proc/activate() if(QDELETED(src) || !secured || (next_activate > world.time)) return FALSE - next_activate = world.time + 30 + next_activate = world.time + activate_cooldown return TRUE From 521c371253228b0d9b80c8ebf9f43d2103c41239 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 25 May 2019 07:44:45 +0200 Subject: [PATCH 070/370] actually, let's just halve it, won't be an issue I suppose. --- code/game/objects/items/stunbaton.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index b6a8ab718a..0a5d528ad7 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -207,7 +207,7 @@ /obj/item/melee/baton/cattleprod/Initialize() . = ..() sparkler = new (src) - sparkler.activate_cooldown = 18 + sparkler.activate_cooldown = 15 /obj/item/melee/baton/cattleprod/baton_stun() if(sparkler.activate()) From 96ab12cb4837c550464c5db06620b96b80f875b8 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sat, 25 May 2019 13:59:35 +0300 Subject: [PATCH 071/370] Update code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm Co-Authored-By: Poojawa --- .../machinery/components/binary_devices/volume_pump.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index a10b82d33e..c217b640bd 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -38,6 +38,7 @@ Thus, the two variables affect pump operation are set in New(): if(user.canUseTopic(src, BE_CLOSE, FALSE,)) transfer_rate = MAX_TRANSFER_RATE to_chat(user,"You maximize the pressure on the [src].") + investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN From 749e3a6f6aa34060f1a48592233a847eedcf45a4 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sat, 25 May 2019 14:01:55 +0300 Subject: [PATCH 072/370] Apply suggestions from code review Added logging as suggested by Poojawa Co-Authored-By: Poojawa --- .../atmospherics/machinery/components/binary_devices/pump.dm | 1 + .../machinery/components/binary_devices/volume_pump.dm | 1 + 2 files changed, 2 insertions(+) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index cf33b46b63..46b898247a 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -38,6 +38,7 @@ Thus, the two variables affect pump operation are set in New(): if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") + investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) /obj/machinery/atmospherics/components/binary/pump/layer1 piping_layer = PIPING_LAYER_MIN diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index c217b640bd..1c6543681e 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -39,6 +39,7 @@ Thus, the two variables affect pump operation are set in New(): transfer_rate = MAX_TRANSFER_RATE to_chat(user,"You maximize the pressure on the [src].") investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN From 08bb998cf362bb2033a5fa2dd665b4865c11a21a Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sat, 25 May 2019 14:06:45 +0300 Subject: [PATCH 073/370] Fixes some oofs --- .../machinery/components/binary_devices/volume_pump.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index 1c6543681e..c217b640bd 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -39,7 +39,6 @@ Thus, the two variables affect pump operation are set in New(): transfer_rate = MAX_TRANSFER_RATE to_chat(user,"You maximize the pressure on the [src].") investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) - investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN From 7b4ddd896547fcab753eef1a07f8b676561a19df Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sat, 25 May 2019 18:24:19 -0400 Subject: [PATCH 074/370] Update comp_board_designs.dm --- code/modules/research/designs/comp_board_designs.dm | 7 ------- 1 file changed, 7 deletions(-) diff --git a/code/modules/research/designs/comp_board_designs.dm b/code/modules/research/designs/comp_board_designs.dm index 5d567bf955..fc053dc4b8 100644 --- a/code/modules/research/designs/comp_board_designs.dm +++ b/code/modules/research/designs/comp_board_designs.dm @@ -304,10 +304,3 @@ category = list("Computer Boards") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE -/datum/design/board/meteor_console - name = "Computer Design (Meteor Satellite Console)" - desc = "Allows for the construction of circuit boards used to build a new Meteor Satellite monitor console." - id = "meteor_console" - build_path = /obj/item/circuitboard/computer/sat_control - category = list("Computer Boards") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING From df236fbda55251eeef15761cf8c621c88566c7ba Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sat, 25 May 2019 18:24:33 -0400 Subject: [PATCH 075/370] Update comp_board_designs.dm --- code/modules/research/designs/comp_board_designs.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/research/designs/comp_board_designs.dm b/code/modules/research/designs/comp_board_designs.dm index fc053dc4b8..68aee66d62 100644 --- a/code/modules/research/designs/comp_board_designs.dm +++ b/code/modules/research/designs/comp_board_designs.dm @@ -303,4 +303,3 @@ build_path = /obj/item/circuitboard/computer/nanite_cloud_controller category = list("Computer Boards") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE - From a29aed136b6502bc0d569841691a9e5f988518e8 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sat, 25 May 2019 18:25:01 -0400 Subject: [PATCH 076/370] Update misc_designs.dm --- code/modules/research/designs/misc_designs.dm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index c76d1024b6..e4e2dde7a3 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -497,3 +497,10 @@ category = list("Electronics") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING +/datum/design/board/meteor_console + name = "Computer Design (Meteor Satellite Console)" + desc = "Allows for the construction of circuit boards used to build a new Meteor Satellite monitor console." + id = "meteor_console" + build_path = /obj/item/circuitboard/computer/sat_control + category = list("Computer Boards") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING From 869fac49a7d606ef1bbfcac31b84d39da0e8468d Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sun, 26 May 2019 03:29:27 +0300 Subject: [PATCH 077/370] Apply suggestions from code review Fixes compile errors Co-Authored-By: Poojawa --- .../atmospherics/machinery/components/binary_devices/pump.dm | 1 + .../machinery/components/binary_devices/volume_pump.dm | 1 + 2 files changed, 2 insertions(+) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 46b898247a..3aeb799bdb 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -35,6 +35,7 @@ Thus, the two variables affect pump operation are set in New(): return ..() /obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) + var/area/A = get_area(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index c217b640bd..f41b1607c5 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -35,6 +35,7 @@ Thus, the two variables affect pump operation are set in New(): return ..() /obj/machinery/atmospherics/components/binary/volume_pump/AltClick(mob/user) + var/area/A = get_area(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) transfer_rate = MAX_TRANSFER_RATE to_chat(user,"You maximize the pressure on the [src].") From 2fe1431db61ca2e344ec1fd04879105c875c85d4 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 26 May 2019 03:40:48 +0200 Subject: [PATCH 078/370] Applying suggestion, ?. so no theorical runtime. --- code/game/objects/items/stunbaton.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 0a5d528ad7..d6f6bc58fd 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -202,13 +202,13 @@ hitcost = 2000 throw_hit_chance = 10 slot_flags = ITEM_SLOT_BACK - var/obj/item/assembly/igniter/sparkler = 0 + var/obj/item/assembly/igniter/sparkler /obj/item/melee/baton/cattleprod/Initialize() . = ..() sparkler = new (src) - sparkler.activate_cooldown = 15 + sparkler.activate_cooldown = 5 /obj/item/melee/baton/cattleprod/baton_stun() - if(sparkler.activate()) - ..() + sparkler.activate() + return ..() From b2eea5e3f47a3f5a7d6c046a5fb21d3702f9e422 Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Sun, 26 May 2019 04:11:52 +0200 Subject: [PATCH 079/370] Sorry, web edit because I didn't commit the ?. --- code/game/objects/items/stunbaton.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index d6f6bc58fd..1a6f9ad3ab 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -210,5 +210,5 @@ sparkler.activate_cooldown = 5 /obj/item/melee/baton/cattleprod/baton_stun() - sparkler.activate() + sparkler?.activate() return ..() From 2aa86157e1b049bbfe659c69152991310a28592c Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 26 May 2019 04:52:31 -0500 Subject: [PATCH 080/370] Fixes rendering issues. Adds balls to be rendered --- code/__DEFINES/citadel_defines.dm | 4 +- code/__HELPERS/_cit_helpers.dm | 70 +++++------------- code/__HELPERS/mobs.dm | 2 + .../code/modules/arousal/arousal.dm | 51 ++++++------- .../code/modules/arousal/organs/breasts.dm | 4 +- .../code/modules/arousal/organs/genitals.dm | 25 +++++-- .../organs/genitals_sprite_accessories.dm | 13 +++- .../code/modules/arousal/organs/penis.dm | 4 +- .../code/modules/arousal/organs/testicles.dm | 43 +++++++++-- .../code/modules/arousal/organs/vagina.dm | 3 +- .../icons/obj/genitals/breasts_onmob.dmi | Bin 1401 -> 1593 bytes modular_citadel/icons/obj/genitals/penis.dmi | Bin 2758 -> 3200 bytes .../icons/obj/genitals/penis_onmob.dmi | Bin 3880 -> 4855 bytes modular_citadel/icons/obj/genitals/vagina.dmi | Bin 510 -> 626 bytes .../icons/obj/genitals/vagina_onmob.dmi | Bin 939 -> 1171 bytes tgstation.dme | 12 +-- 16 files changed, 121 insertions(+), 110 deletions(-) diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index 9f5f52180c..2abe0db04e 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -33,8 +33,8 @@ #define BALLS_VOLUME_MULT 1 #define BALLS_SIZE_MIN 1 -#define BALLS_SIZE_DEF 3 -#define BALLS_SIZE_MAX 7 +#define BALLS_SIZE_DEF 2 +#define BALLS_SIZE_MAX 3 #define BALLS_SACK_SIZE_MIN 1 #define BALLS_SACK_SIZE_DEF 8 diff --git a/code/__HELPERS/_cit_helpers.dm b/code/__HELPERS/_cit_helpers.dm index eb2a564d1b..e21bee2e36 100644 --- a/code/__HELPERS/_cit_helpers.dm +++ b/code/__HELPERS/_cit_helpers.dm @@ -58,6 +58,7 @@ GLOBAL_LIST_EMPTY(ipc_antennas_list) //Genitals and Arousal Lists GLOBAL_LIST_EMPTY(cock_shapes_list)//global_lists.dm for the list initializations //Now also _DATASTRUCTURES globals.dm GLOBAL_LIST_EMPTY(cock_shapes_icons) //Associated list for names->icon_states for cockshapes. +GLOBAL_LIST_EMPTY(balls_shapes_list) GLOBAL_LIST_EMPTY(breasts_size_list) GLOBAL_LIST_EMPTY(breasts_shapes_list) GLOBAL_LIST_EMPTY(vagina_shapes_list) @@ -123,36 +124,36 @@ GLOBAL_VAR_INIT(miscreants_allowed, FALSE) /mob/living/carbon/proc/has_penis() if(getorganslot("penis"))//slot shared with ovipositor if(istype(getorganslot("penis"), /obj/item/organ/genital/penis)) - return 1 - return 0 + return TRUE + return FALSE /mob/living/carbon/proc/has_balls() if(getorganslot("balls")) if(istype(getorganslot("balls"), /obj/item/organ/genital/testicles)) - return 1 - return 0 + return TRUE + return FALSE /mob/living/carbon/proc/has_vagina() if(getorganslot("vagina")) - return 1 - return 0 + return TRUE + return FALSE /mob/living/carbon/proc/has_breasts() if(getorganslot("breasts")) - return 1 - return 0 + return TRUE + return FALSE /mob/living/carbon/proc/has_ovipositor() if(getorganslot("penis"))//shared slot if(istype(getorganslot("penis"), /obj/item/organ/genital/ovipositor)) - return 1 - return 0 + return TRUE + return FALSE /mob/living/carbon/human/proc/has_eggsack() if(getorganslot("balls")) if(istype(getorganslot("balls"), /obj/item/organ/genital/eggsack)) - return 1 - return 0 + return TRUE + return FALSE /mob/living/carbon/human/proc/is_bodypart_exposed(bodypart) @@ -161,16 +162,16 @@ GLOBAL_VAR_INIT(miscreants_allowed, FALSE) L = get_equipped_items() for(var/obj/item/I in L) if(I.body_parts_covered & GROIN) - return 0 - return 1 + return FALSE + return TRUE /mob/living/carbon/proc/is_chest_exposed(var/list/L) if(!L) L = get_equipped_items() for(var/obj/item/I in L) if(I.body_parts_covered & CHEST) - return 0 - return 1 + return FALSE + return TRUE //////////////////////// //DANGER | DEBUG PROCS// @@ -191,40 +192,3 @@ GLOBAL_VAR_INIT(miscreants_allowed, FALSE) H.give_vagina() H.give_womb() H.give_breasts() - -/client/proc/test_mammal_overlays() - set name = "Mass Give Mammalitus" - set category = "Dangerous" - set desc = "Turns every human into a mammal with tails, ears, etc. WARNING: NOT FOR LIVE SERVER USAGE!!" - - log_admin("[src] turned everyone into mammals.") - message_admins("[src] turned everyone into mammals.") - for(var/mob/living/carbon/human/H in GLOB.mob_list) - if(!H.dna) - continue - var/datum/dna/hdna = H.dna - H.set_species(/datum/species/mammal) - var/subspec = pick("Fox","Wolf","Fennec") - switch(subspec) - if("Wolf") - hdna.features["mam_tail"] = "Wolf" - hdna.features["mam_ears"] = "Wolf" - hdna.features["mam_snouts"] = "Wolf" - hdna.features["mam_body_markings"] = "Wolf" - hdna.features["mcolor"] = "555" - hdna.features["mcolor2"] = "999" - hdna.features["mcolor3"] = "999" - if("Fox") - hdna.features["mam_tail"] = "Fox" - hdna.features["mam_ears"] = "Fox" - hdna.features["mam_snouts"] = "Fox, Long" - hdna.features["mam_body_markings"] = "Fox" - hdna.features["mcolor"] = "f60" - hdna.features["mcolor2"] = "fff" - hdna.features["mcolor3"] = "fff" - if("Fennec") - hdna.features["mam_tail"] = "Fennec" - hdna.features["mam_ears"] = "Fennec" - hdna.features["mam_snouts"] = "Fox, Short" - hdna.features["mam_body_markings"] = "Fox" - H.regenerate_icons() diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 74a1fbd785..6c6b197a12 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -77,6 +77,8 @@ //CIT CHANGES - genitals and such if(!GLOB.cock_shapes_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/penis, GLOB.cock_shapes_list) + if(!GLOB.balls_shapes_list.len) + init_sprite_accessory_subtypes(/datum/sprite_accessory/testicles, GLOB.balls_shapes_list) if(!GLOB.vagina_shapes_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/vagina, GLOB.vagina_shapes_list) if(!GLOB.breasts_shapes_list.len) diff --git a/modular_citadel/code/modules/arousal/arousal.dm b/modular_citadel/code/modules/arousal/arousal.dm index ef9201af60..846a8cff62 100644 --- a/modular_citadel/code/modules/arousal/arousal.dm +++ b/modular_citadel/code/modules/arousal/arousal.dm @@ -40,7 +40,7 @@ adjustArousalLoss(arousal_rate * S.arousal_gain_rate) if(dna.features["exhibitionist"] && client) var/amt_nude = 0 - if(is_chest_exposed() && (gender == FEMALE || getorganslot("breasts"))) + if(is_chest_exposed() && (getorganslot("breasts"))) amt_nude++ if(is_groin_exposed()) if(getorganslot("penis")) @@ -64,14 +64,14 @@ /mob/living/proc/adjustArousalLoss(amount, updating_arousal=1) if(status_flags & GODMODE || !canbearoused) - return 0 + return FALSE arousalloss = CLAMP(arousalloss + amount, min_arousal, max_arousal) if(updating_arousal) updatearousal() /mob/living/proc/setArousalLoss(amount, updating_arousal=1) if(status_flags & GODMODE || !canbearoused) - return 0 + return FALSE arousalloss = CLAMP(amount, min_arousal, max_arousal) if(updating_arousal) updatearousal() @@ -99,6 +99,8 @@ switch(G.type) if(/obj/item/organ/genital/penis) S = GLOB.cock_shapes_list[G.shape] + if(/obj/item/organ/genital/testicles) + S = GLOB.balls_shapes_list[G.shape] if(/obj/item/organ/genital/vagina) S = GLOB.vagina_shapes_list[G.shape] if(/obj/item/organ/genital/breasts) @@ -112,54 +114,54 @@ G.update_appearance() /mob/living/proc/update_arousal_hud() - return 0 + return FALSE /datum/species/proc/update_arousal_hud(mob/living/carbon/human/H) - return 0 + return FALSE /mob/living/carbon/human/update_arousal_hud() if(!client || !hud_used) - return 0 + return FALSE if(dna.species.update_arousal_hud()) - return 0 + return FALSE if(!canbearoused) hud_used.arousal.icon_state = "" - return 0 + return FALSE else if(hud_used.arousal) if(stat == DEAD) hud_used.arousal.icon_state = "arousal0" - return 1 + return TRUE if(getArousalLoss() == max_arousal) hud_used.arousal.icon_state = "arousal100" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 90)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal90" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 80)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal80" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 70)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal70" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 60)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal60" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 50)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal50" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 40)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal40" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 30)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal30" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 20)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal10" - return 1 + return TRUE if(getArousalLoss() >= (max_arousal / 100) * 10)//M O D U L A R , W O W hud_used.arousal.icon_state = "arousal10" - return 1 + return TRUE else hud_used.arousal.icon_state = "arousal0" @@ -171,11 +173,11 @@ /obj/screen/arousal/Click() if(!isliving(usr)) - return 0 + return FALSE var/mob/living/M = usr if(M.canbearoused) M.mob_climax() - return 1 + return TRUE else to_chat(M, "Arousal is disabled. Feature is unavailable.") @@ -196,13 +198,6 @@ "You have relieved yourself.") SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "orgasm", /datum/mood_event/orgasm) setArousalLoss(min_arousal) - /* - switch(gender) - if(MALE) - PoolOrNew(/obj/effect/decal/cleanable/semen, loc) - if(FEMALE) - PoolOrNew(/obj/effect/decal/cleanable/femcum, loc) - */ else to_chat(src, "You aren't aroused enough for that.") diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm index 1239a515cd..7d482ec3a0 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/modular_citadel/code/modules/arousal/organs/breasts.dm @@ -60,7 +60,5 @@ string = "breasts_[lowertext(shape)]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner + icon_state = sanitize_text(string) H.update_genitals() - - icon_state = sanitize_text(string) - diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm index 591bb6f1de..592d1e2f33 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals.dm @@ -165,7 +165,7 @@ P.Insert(src) if(P) if(dna.species.use_skintones && dna.features["genitals_use_skintone"]) - P.color = skintone2hex(skin_tone) + P.color = "#[skintone2hex(skin_tone)]" else P.color = "#[dna.features["cock_color"]]" P.length = dna.features["cock_length"] @@ -181,13 +181,14 @@ if(!getorganslot("testicles")) var/obj/item/organ/genital/testicles/T = new T.Insert(src) -// if(dna.species.use_skintones && dna.features["genitals_use_skintone"]) -// T.color = skintone2hex(skin_tone) -// else -// T.color = "#[dna.features["balls_color"]]" if(T) + if(dna.species.use_skintones && dna.features["genitals_use_skintone"]) + T.color = "#[skintone2hex(skin_tone)]" + else + T.color = "#[dna.features["balls_color"]]" T.size = dna.features["balls_size"] T.sack_size = dna.features["balls_sack_size"] + T.shape = "single" T.fluid_id = dna.features["balls_fluid"] T.fluid_rate = dna.features["balls_cum_rate"] T.fluid_mult = dna.features["balls_cum_mult"] @@ -204,7 +205,7 @@ B.Insert(src) if(B) if(dna.species.use_skintones && dna.features["genitals_use_skintone"]) - B.color = skintone2hex(skin_tone) + B.color = "#[skintone2hex(skin_tone)]" else B.color = "#[dna.features["breasts_color"]]" B.size = dna.features["breasts_size"] @@ -228,7 +229,7 @@ V.Insert(src) if(V) if(dna.species.use_skintones && dna.features["genitals_use_skintone"]) - V.color = skintone2hex(skin_tone) + V.color = "#[skintone2hex(skin_tone)]" else V.color = "[dna.features["vag_color"]]" V.shape = "[dna.features["vag_shape"]]" @@ -297,7 +298,9 @@ for(var/obj/item/organ/O in H.internal_organs) if(isgenital(O)) var/obj/item/organ/genital/G = O + to_chat(world, "checking [G] for exposure") if(G.is_exposed()) //Checks appropriate clothing slot and if it's through_clothes + to_chat(world, "[G] is [G.is_exposed() ? "true" : "false"]") genitals_to_add += H.getorganslot(G.slot) //Now we added all genitals that aren't internal and should be rendered @@ -308,9 +311,12 @@ var/datum/sprite_accessory/S size = G.size aroused_state = G.aroused_state + to_chat(world, "switching [G.type] for sprite loading") switch(G.type) if(/obj/item/organ/genital/penis) S = GLOB.cock_shapes_list[G.shape] + if(/obj/item/organ/genital/testicles) + S = GLOB.balls_shapes_list[G.shape] if(/obj/item/organ/genital/vagina) S = GLOB.vagina_shapes_list[G.shape] if(/obj/item/organ/genital/breasts) @@ -318,8 +324,10 @@ if(!S || S.icon_state == "none") continue + var/mutable_appearance/genital_overlay = mutable_appearance(S.icon, layer = -layer) genital_overlay.icon_state = "[G.slot]_[S.icon_state]_[size]_[aroused_state]_[layertext]" + to_chat(world, "[G.slot]_[S.icon_state]_[size]_[aroused_state]_[layertext] is icon state") if(S.center) genital_overlay = center_image(genital_overlay, S.dimension_x, S.dimension_y) @@ -331,12 +339,15 @@ switch(S.color_src) if("cock_color") genital_overlay.color = "#[H.dna.features["cock_color"]]" + if("balls_color") + genital_overlay.color = "#[H.dna.features["balls_color"]]" if("breasts_color") genital_overlay.color = "#[H.dna.features["breasts_color"]]" if("vag_color") genital_overlay.color = "#[H.dna.features["vag_color"]]" standing += genital_overlay + if(LAZYLEN(standing)) H.overlays_standing[layer] = standing.Copy() standing = list() diff --git a/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm b/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm index e857c0d7ed..eaf493482f 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm @@ -55,8 +55,19 @@ center = TRUE //Center the image 'cause 2-tile wide. dimension_x = 64 +//Testicles +//These ones aren't inert +/datum/sprite_accessory/testicles + icon = 'modular_citadel/icons/obj/genitals/penis_onmob.dmi' + icon_state = "testicle" + name = "testicle" //the preview name of the accessory + color_src = "balls_color" + locked = 0 - +/datum/sprite_accessory/testicles/single + icon_state = "single" + name = "single" + alt_aroused = TRUE //Vaginas /datum/sprite_accessory/vagina diff --git a/modular_citadel/code/modules/arousal/organs/penis.dm b/modular_citadel/code/modules/arousal/organs/penis.dm index ac812e286d..2498ff6370 100644 --- a/modular_citadel/code/modules/arousal/organs/penis.dm +++ b/modular_citadel/code/modules/arousal/organs/penis.dm @@ -52,15 +52,15 @@ string = "penis_[GLOB.cock_shapes_icons[shape]]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner + icon_state = sanitize_text(string) H.update_genitals() - icon_state = sanitize_text(string) - /obj/item/organ/genital/penis/update_link() if(owner) linked_organ = (owner.getorganslot("testicles")) if(linked_organ) linked_organ.linked_organ = src + linked_organ.size = size else if(linked_organ) linked_organ.linked_organ = null diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index 815d8034e7..2ee92d743a 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -3,15 +3,20 @@ desc = "A male reproductive organ." icon_state = "testicles" icon = 'modular_citadel/icons/obj/genitals/penis.dmi' + var/icon_on = 'modular_citadel/icons/obj/genitals/penis_onmob.dmi' zone = "groin" slot = "testicles" w_class = 3 - internal = TRUE - size = BALLS_SIZE_DEF + size = BALLS_SIZE_MIN + var/size_name = "Normal" + shape = "single" var/sack_size = BALLS_SACK_SIZE_DEF fluid_id = "semen" producing = TRUE - var/sent_full_message = 1 //defaults to 1 since they're full to start + can_masturbate_with = TRUE + masturbation_verb = "massage" + can_climax = TRUE + var/sent_full_message = TRUE //defaults to 1 since they're full to start /obj/item/organ/genital/testicles/Initialize() . = ..() @@ -23,14 +28,22 @@ if(reagents && producing) generate_cum() +/obj/item/organ/genital/testicles/update_size() + if(size == 1) + size_name = "Normal" + if(size == 2) + size_name = "Enlarged" + if(size == 3) + size_name = "Engorged" + /obj/item/organ/genital/testicles/proc/generate_cum() reagents.maximum_volume = fluid_max_volume if(reagents.total_volume >= reagents.maximum_volume) if(!sent_full_message) send_full_message() - sent_full_message = 1 + sent_full_message = TRUE return FALSE - sent_full_message = 0 + sent_full_message = FALSE update_link() if(!linked_organ) return FALSE @@ -42,6 +55,8 @@ linked_organ = (owner.getorganslot("penis")) if(linked_organ) linked_organ.linked_organ = src + size = linked_organ.size + update_size() else if(linked_organ) linked_organ.linked_organ = null @@ -49,6 +64,22 @@ /obj/item/organ/genital/testicles/proc/send_full_message(msg = "Your balls finally feel full, again.") if(owner && istext(msg)) - owner << msg + to_chat(owner, msg) return TRUE +/obj/item/organ/genital/testicles/update_appearance() + if(owner) + desc = "You see a pair of testicles dangling. They're quite [lowertext(size_name)]." + var/string + if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"]) + if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... + var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. + color = "#[skintone2hex(H.skin_tone)]" + string = "testicles_[size_name]-s" + else + color = "#[owner.dna.features["balls_color"]]" + string = "testicles_[size_name]" + if(ishuman(owner)) + var/mob/living/carbon/human/H = owner + icon_state = sanitize_text(string) + H.update_genitals() diff --git a/modular_citadel/code/modules/arousal/organs/vagina.dm b/modular_citadel/code/modules/arousal/organs/vagina.dm index b8ef7029b6..8c15aa5437 100644 --- a/modular_citadel/code/modules/arousal/organs/vagina.dm +++ b/modular_citadel/code/modules/arousal/organs/vagina.dm @@ -60,10 +60,9 @@ string = "vagina" if(ishuman(owner)) var/mob/living/carbon/human/H = owner + icon_state = sanitize_text(string) H.update_genitals() - icon_state = sanitize_text(string) - /obj/item/organ/genital/vagina/update_link() if(owner) linked_organ = (owner.getorganslot("womb")) diff --git a/modular_citadel/icons/obj/genitals/breasts_onmob.dmi b/modular_citadel/icons/obj/genitals/breasts_onmob.dmi index b0dc1d7aef1259bd40c6ae31cf34777fa1262ed6..1869e082de2455609c96af44c969430368bc09e4 100644 GIT binary patch delta 1537 zcmXw2YdDh&0REIXCplA25|yW#0WA>m;FK%qaPTByA~sBvv<#QSQD7d|>V(`$;T zd=Z71pI5PTOpzxFkKDLoLwJefn4wUjOy6f>SA9DcdGX4zFE5LIZZ%d6N+$eB)j{C! zGXp5Bv-+kJ8WO*6Rqimci~b1iEm_Y3C8H+8t%!!q+Z?wp@d0cMy>;FlbddJyoL1rK zw9f}=4I#yG!e-LZU*2sDa`Z^0t4c^u?s~TE= zP4_Z}TD5h)(4(5;8}i^DwV;i$@&5e`Q+-nnej~JzqyaR`Q~u zfY$j$^Sq|9avnIkydGS-@a+@KzDoqlLLYt45>&DYz=~?3Fk#@Z87R5#A}*GAgiM@q zAlgF&*X%cK9K?Za0F{LDAaqvau@^+kPtSe|-S@uMWM02Rv1+iZ zGz&}eOFzmUb9gL~DSc-LfXiS`l-{m)u%J0OH`}dp-lj~RCinkEps2}igHYsTRw6Sfo^2Bxu?e&jE#g_!o{7U`id(4`fQ zDH`$)_b!yza2kd_+jPr%gTMPYJWIvx7*C&U=DP<3ixRZS1Y8x=v-mv!f*+xzMe{B9 zdXC|^krclwQD9j9lpG=B*dTmmB0)4T*4W@94wg`0LS(3(0 zlrNob+^bsJYTQ>U&>BDpOmBD+icuG`-^R zDR~G_ci~iNkma%df*0G*GIgLx(I6*w)iLq7_7rI(sD-8%?tf%+7Oy$NSSsu4nG4rJ zPR7d}38Q^T+A~Wo%pSo>@#G{KMv-eV(^69t|9VbnBo+JcxuhDHCCmPrKzdoq6qofa zvr6aCg5*e5v~+GLnoG@AFF74tE$gjmRqVW!N8l29bTTKF({>}fm z*l4BOl`if1u>{+h_&{C5$xaS(PyjFF*WQJQ7Ju{;7=5J?P4NE>H+YY2K@S=2j4ioL zACFiW1$W8}lxCymSrYO9ZtXQr;(1foUK(tSl$DmpE+Y|6?iDwBA&y_MK@#Gv;@iH&rys(ujW^4eVI71ilkN;%^Yf5_ z$G1Dijy({WA$v8e*kfl&JNa!8&4FpO>)DKWKu_fB{*LL$kQp4}_&pr@xWwOVm<&5x gpQ2WoUT7B!6u`rdz$+dLEh($ delta 1344 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 I!NKYO1?a^1lmGw# diff --git a/modular_citadel/icons/obj/genitals/penis_onmob.dmi b/modular_citadel/icons/obj/genitals/penis_onmob.dmi index 2457759b732edd537fa4ac5d22d8abc7c0b13073..0ab1b951a70ea5af5a8d0ed08fb908560a15b3a4 100644 GIT binary patch literal 4855 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 literal 3880 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 diff --git a/modular_citadel/icons/obj/genitals/vagina.dmi b/modular_citadel/icons/obj/genitals/vagina.dmi index 00891888a44047465c86f73ba5b441a0f56e884a..39bdd48e89a70449a43ab36290da524de343af45 100644 GIT binary patch delta 463 zcmV;=0Wkjl1M&orMj`-|Lq+Epbo!JXeXfNPv6kcI@+XHPD$)w3+J1eq7-lmTAf&pHU762H%r+J>+)07aHK%S@Y ze;SJ4ckCHt-z4TyMxq8Hk0tQu>Q+=6*cyE;mpm!e2Gr*CJw;5Rs0&b?!MS>Wu2Coo zK;)j^${J9OAdFW}Yqzc^gF;aNqL->9*8oZmSJg+!v_Bt;HUkPrQ6+(e{O^mPyY%*-(#>a%}+Nd@lw^{lQ%AfkB|-$N|uOXxUsM-?8t#IDJ>I_wvf?{|Sbkb?$fN@jw6o002ovPDHLk FV1h|e)3^Wt delta 346 zcmV-g0j2)(1pWh%Mk0WeLq+IMAMi+BUgUEI!{Eyl(|A;0d&e)(oHLezO@BH1CmF&I-I zHIj6V!vL5YqR>mE3T0BF=%OZySQ+qt6>*LkQ7D;8U(p-t5m5jrqdY}{IWC9-oWP$^ zI0gD^N1$eD``KHV7rO7S2@+-=;1pRw00lqb_bE;?L4h{u(~NvC;^4iBzofe*X>Vu| zBno;f1nPWKtYx1Qd%Tt$usK}pg%g~rQgAai)tw#i5=g4oK(*(9-FfwY;}qL1Kf7iX s+tN+p{?Y;bsS|g^gxi5VVx7;)17UDJ@=UOoxc~qF07*qoM6N<$f;#e;3;+NC diff --git a/modular_citadel/icons/obj/genitals/vagina_onmob.dmi b/modular_citadel/icons/obj/genitals/vagina_onmob.dmi index c22c12ded338f74567d6521f524ebb9a64d1ae81..e6ad183687987a2e865effef73ec8c3ab1ab668f 100644 GIT binary patch delta 1118 zcmZ3@KACfZI9~$?GXn#|WJ%XvAZ0L7)v*3Q14Hb80W%<%u_VYZn8D%MjWi(Vb5%%0 ziA!p6a#3bMNoIZ?14G4}wNnmqHyMZ=JO6IIMCsOm(|NH@-29R*<&|4jHpgr_d+7hZ zOm<<43tFWNwLNnLNcQW}Ot6nO+KG|`qbn~YPQ-h~HeRbD^ zwZ7|B(YJ=4LXS_Y80PKhoc!ke@*hUdVu?;>S|_|%MYgQGyMBgsTkaRVy^d?W&u{!& zR{8CMGn?w;n*4wg3Ll`v0k4U%#nhyHoV%B`3%4f3_?z$2@pG(XU&wEq}s<^HqG; z<)w~X&i?fABpCT{<$UKqZCXt1H<FH%=1G&q>Fi9X?Ab;uQn|rU9UuU0^{QT?b;9blYOwT(kNY-nFDKaV7`B;%>B`f=_ zuI7AMg4E^j>-neq-`{6v$M`Zmp{9`yrjUW*f}4%}{8%}|ryfQQ^qqZm zmh<-h}IgWB0Gi zJK$tJzr&v&(pR2;Uhl}jaCe6JlHcXuueIM`d6TE7oxEq)WVL6TY))kV&PdVgUc6^h zciOZ4_IdZ6oj=>#=ihb={#?I*+xE*hYQ9z18lOEY&OdGYrskig7QdFhd30;yek;*8 z$@^+*QiXT#-18;A-Y`M^^UwQwW*b(2-ael@-~DDcCr7a>C)Z~snP<5fGyZq9{?t%9 z(_WZp*T?s{)n~?fmBTff@@mtB)MkjP&5}@?Bds=X-dE{QJA`M{ZaWW-I8RqUmvv4F FO#pf){Luga delta 884 zcmV-)1B?8V39AQ?7Y<+q0{{R3K&`V50000jktH#IXZa3j00001bW%=J06^y0W&i*H z?|M{NbVOxyV{&P5bZKvH004NLt&~p-f-o4y&+bzUy;i9GxpfIEI%E*t<)uv>=!$I_ ze*2~#EF@toc6r~y^X&KT8T0UFyFbJ@Iv!9(g=9C5*LX4Wk@I9k<+_=N$jK?oa@93b zfug#9bSuahha`WLz>^^Hlim3gUtHu6CS>D+oK!$bn>zR^3&vzCy-N$Ibs74TWxK-3 zkRgLRs6apO)wQe1d2T z@%r6n8-@3)GXIklZ;oEC*5w381E$;US8uEM?X3q_lh-HUB*94rn|IOrce#h>6R2;2 z`S?14B0hcw?l)qRZv6-q8%VYO6a)Z&004lcT6S%1n-}OaFVhJ&WqEzRKA*n-|M^oE z->{mp{S@hQEgM9H0Blr0001Zh>N(on^vb&zkh`j?8huVt?$RL-=`Z$uVCEZ000000APXA z`h3`*7~=j!TAxqj_lGRL^&c<{yYd7aZap{)vb$?+teyke| zSM&$!D|oWNKTbgwU*EyS`t=58Z=pDWbp7U^f_E@p|Ee7VoQ*%Z{6;Ch(!ECj0000< KMNUMnLSTZC1f0bH diff --git a/tgstation.dme b/tgstation.dme index 4d74c8a95f..dea02c485f 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2502,12 +2502,6 @@ #include "code\modules\research\server.dm" #include "code\modules\research\stock_parts.dm" #include "code\modules\research\designs\AI_module_designs.dm" -#include "code\modules\research\designs\autolathe_desings\autolathe_designs_construction.dm" -#include "code\modules\research\designs\autolathe_desings\autolathe_designs_electronics.dm" -#include "code\modules\research\designs\autolathe_desings\autolathe_designs_medical_and_dinnerware.dm" -#include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" -#include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" -#include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" #include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\bluespace_designs.dm" #include "code\modules\research\designs\comp_board_designs.dm" @@ -2527,6 +2521,12 @@ #include "code\modules\research\designs\stock_parts_designs.dm" #include "code\modules\research\designs\telecomms_designs.dm" #include "code\modules\research\designs\weapon_designs.dm" +#include "code\modules\research\designs\autolathe_desings\autolathe_designs_construction.dm" +#include "code\modules\research\designs\autolathe_desings\autolathe_designs_electronics.dm" +#include "code\modules\research\designs\autolathe_desings\autolathe_designs_medical_and_dinnerware.dm" +#include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" +#include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" +#include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" #include "code\modules\research\machinery\_production.dm" #include "code\modules\research\machinery\circuit_imprinter.dm" #include "code\modules\research\machinery\departmental_circuit_imprinter.dm" From 84aafb87f91c3e142096e5699330e69f165fa339 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 26 May 2019 04:52:44 -0500 Subject: [PATCH 081/370] Lizard tails are actually marked --- .../mob/living/carbon/human/species_types/lizardpeople.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm index c5a64ebd13..30bf705547 100644 --- a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm @@ -97,6 +97,7 @@ brutemod = 0.9 /datum/species/lizard/ashwalker/on_species_gain(mob/living/carbon/human/C, datum/species/old_species) - if((C.dna.features["spines"] != "None" ) && (C.dna.features["tail"] == "None")) //tbh, it's kinda ugly for them not to have a tail yet have floating spines - C.dna.features["tail"] = "Smooth" + if((C.dna.features["spines"] != "None" ) && (C.dna.features["tail_lizard"] == "None")) //tbh, it's kinda ugly for them not to have a tail yet have floating spines + C.dna.features["tail_lizard"] = "Smooth" + C.update_body() return ..() From ac066c34257d6c779390e2ce44fc31a0f6dad69f Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sun, 26 May 2019 17:27:21 +0300 Subject: [PATCH 082/370] Logging Adds logging and message to admins for CTRL and Alt --- .../machinery/components/binary_devices/pump.dm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 3aeb799bdb..abdc3ada57 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -29,17 +29,23 @@ Thus, the two variables affect pump operation are set in New(): pipe_state = "pump" /obj/machinery/atmospherics/components/binary/pump/CtrlClick(mob/user) + var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() - return ..() + investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + return ..() /obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") /obj/machinery/atmospherics/components/binary/pump/layer1 piping_layer = PIPING_LAYER_MIN From b494e21ef655a7bf57c37fab20b6d460dd53ee8a Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sun, 26 May 2019 17:31:23 +0300 Subject: [PATCH 083/370] Update volume_pump.dm Adds logging and message to admins --- .../machinery/components/binary_devices/volume_pump.dm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index f41b1607c5..dd12a73cd1 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -29,17 +29,23 @@ Thus, the two variables affect pump operation are set in New(): pipe_state = "volumepump" /obj/machinery/atmospherics/components/binary/volume_pump/CtrlClick(mob/user) + var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() - return ..() + investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + return ..() /obj/machinery/atmospherics/components/binary/volume_pump/AltClick(mob/user) var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) - transfer_rate = MAX_TRANSFER_RATE + target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN From 3eff4743007766f6f9deea7c800a0edbff82c28d Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sun, 26 May 2019 17:33:25 +0300 Subject: [PATCH 084/370] Update filter.dm Adds logging and to-admin --- .../machinery/components/trinary_devices/filter.dm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index e97c4574f0..1e52e238cf 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -13,15 +13,23 @@ pipe_state = "filter" /obj/machinery/atmospherics/components/trinary/filter/CtrlClick(mob/user) + var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() - return ..() - + investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + return ..() + /obj/machinery/atmospherics/components/trinary/filter/AltClick(mob/user) + var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") + investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") /obj/machinery/atmospherics/components/trinary/filter/layer1 piping_layer = PIPING_LAYER_MIN From 3f7f8a3560889ca8f6ff92e934c3a54c99d482f3 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sun, 26 May 2019 17:34:48 +0300 Subject: [PATCH 085/370] Update mixer.dm Adds logging and to-admin --- .../machinery/components/trinary_devices/mixer.dm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index 9df4efe8cd..ba9fdf31af 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -15,15 +15,23 @@ //node 3 is the outlet, nodes 1 & 2 are intakes /obj/machinery/atmospherics/components/trinary/mixer/CtrlClick(mob/user) + var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() - return ..() - + investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + return ..() + /obj/machinery/atmospherics/components/trinary/mixer/AltClick(mob/user) + var/area/A = get_area(src) + var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") + investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") /obj/machinery/atmospherics/components/trinary/mixer/layer1 piping_layer = PIPING_LAYER_MIN From 352b07d5b19eb2af9f6281d05a1594adc1def50f Mon Sep 17 00:00:00 2001 From: Arturlang Date: Sun, 26 May 2019 17:49:48 +0300 Subject: [PATCH 086/370] Goddamnit, TABS, not spaces. Also removes alt click function for vol pumps, since thats unnecesary. --- .../components/binary_devices/volume_pump.dm | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index dd12a73cd1..2efff16301 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -36,16 +36,7 @@ Thus, the two variables affect pump operation are set in New(): update_icon() investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") - return ..() - -/obj/machinery/atmospherics/components/binary/volume_pump/AltClick(mob/user) - var/area/A = get_area(src) - var/turf/T = get_turf(src) - if(user.canUseTopic(src, BE_CLOSE, FALSE,)) - target_pressure = MAX_OUTPUT_PRESSURE - to_chat(user,"You maximize the pressure on the [src].") - investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) - message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + return ..() /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN From 057fd54d92a36d3ae1ae0e15ff1c1de3fc5c524c Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 26 May 2019 15:25:04 -0400 Subject: [PATCH 087/370] Update packs.dm --- code/modules/cargo/packs.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index ca8f10869d..0bbdd5263c 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -433,7 +433,6 @@ /datum/supply_pack/security/russianclothing name = "Russian Surplus Clothing" desc = "An old russian crate full of surplus armor that they used to use! Has two sets of bulletproff armor, a few union suits and some warm hats!" - hidden = TRUE contraband = TRUE cost = 5000 // Its basicly sec suits, good boots/gloves contains = list(/obj/item/clothing/suit/security/officer/russian, From 7e10b4bed9bf3d7b4d2238c51109b6a5983de34e Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Sun, 26 May 2019 22:03:38 +0200 Subject: [PATCH 088/370] Update code/game/objects/items/stunbaton.dm Co-Authored-By: deathride58 --- code/game/objects/items/stunbaton.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 1a6f9ad3ab..e55368b91c 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -211,4 +211,4 @@ /obj/item/melee/baton/cattleprod/baton_stun() sparkler?.activate() - return ..() + . = ..() From 745df721ba743ff5369657911c4c0eb076a933bb Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Sun, 26 May 2019 23:20:27 +0200 Subject: [PATCH 089/370] CWC player requirement increase Player requirement increase from 30 to 45 well basically most people dislike CWC in lowpop and it's generally unbalanced during lowpop so let's just not have it happen during lowpop. Easy fix! --- code/game/gamemodes/clock_cult/clock_cult.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index d6513b5d40..347a381d05 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -131,7 +131,7 @@ Credit where due: config_tag = "clockwork_cult" antag_flag = ROLE_SERVANT_OF_RATVAR false_report_weight = 10 - required_players = 30 + required_players = 45 required_enemies = 3 recommended_enemies = 5 enemy_minimum_age = 7 From 38a6c1f917445e9c270701cc5afe8ffa60841610 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Mon, 27 May 2019 00:22:50 +0200 Subject: [PATCH 090/370] Decreased the increase from 45 to 40 --- code/game/gamemodes/clock_cult/clock_cult.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 347a381d05..63c8aaaad6 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -131,7 +131,7 @@ Credit where due: config_tag = "clockwork_cult" antag_flag = ROLE_SERVANT_OF_RATVAR false_report_weight = 10 - required_players = 45 + required_players = 40 required_enemies = 3 recommended_enemies = 5 enemy_minimum_age = 7 From f56960ff8815919ded62102e90b513d293d1d0e1 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Mon, 27 May 2019 00:39:48 +0200 Subject: [PATCH 091/370] Fract said max 35 --- code/game/gamemodes/clock_cult/clock_cult.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 63c8aaaad6..0d5a7bd56c 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -131,7 +131,7 @@ Credit where due: config_tag = "clockwork_cult" antag_flag = ROLE_SERVANT_OF_RATVAR false_report_weight = 10 - required_players = 40 + required_players = 35 required_enemies = 3 recommended_enemies = 5 enemy_minimum_age = 7 From 1b48db693f98fc4c9c1cb82a02092c5b49698881 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Mon, 27 May 2019 02:42:46 -0400 Subject: [PATCH 092/370] Update shotgun.dm --- code/modules/projectiles/guns/ballistic/shotgun.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm index b3ca5956b6..bb6a144c93 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/ballistic/shotgun.dm @@ -122,6 +122,7 @@ item_state = "shotgun" desc = "A large zip gun more or less that takes a single 7.62mm bullet" mag_type = /obj/item/ammo_box/magazine/internal/boltaction/improvised + can_bayonet = FALSE /obj/item/gun/ballistic/shotgun/boltaction/pump(mob/M) playsound(M, 'sound/weapons/shotgunpump.ogg', 60, 1) From d6ffe6385b54d841a64d0bbb6e6a72efcbe7b81c Mon Sep 17 00:00:00 2001 From: Ghommie Date: Mon, 27 May 2019 11:40:17 +0200 Subject: [PATCH 093/370] Copypaste from pooj's dupe cause Kev didn't reply --- .github/ISSUE_TEMPLATE/feature_request.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index 11687283df..2c9eb90c72 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -4,4 +4,4 @@ about: Suggest an idea for this project --- -Feature requests are not handled in the repository. The best place to discuss these ideas would be on the /tg/station 13 forums here: https://tgstation13.org/phpBB/viewforum.php?f=9&sid=5153c1c704a4fb1006bf7a265e45e03f +Please be aware that feature discussions most often take place on the Citadel Station Discord and should not be requested here. From 93813613aacb862d10c011b87bfe941b45887156 Mon Sep 17 00:00:00 2001 From: JTGSZ <46565256+JTGSZ@users.noreply.github.com> Date: Mon, 27 May 2019 14:42:07 -0400 Subject: [PATCH 094/370] Some changes. --- code/game/objects/items/crayons.dm | 16 +++++++++++----- .../code/game/gamemodes/gangs/gang.dm | 13 +++++++------ .../code/game/gamemodes/gangs/gang_datums.dm | 2 +- .../code/game/gamemodes/gangs/gang_items.dm | 14 ++++++++++---- .../code/game/gamemodes/gangs/gang_pen.dm | 5 +++-- 5 files changed, 32 insertions(+), 18 deletions(-) diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 184f4d02a3..30089f298f 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -69,6 +69,7 @@ var/post_noise = FALSE var/datum/team/gang/gang //For marking territory. + var/gang_tag_delay = 30 //this is the delay for gang mode tag applications on anything that gang = true on. /obj/item/toy/crayon/suicide_act(mob/user) user.visible_message("[user] is jamming [src] up [user.p_their()] nose and into [user.p_their()] brain. It looks like [user.p_theyre()] trying to commit suicide!") @@ -324,7 +325,7 @@ audible_message("You hear spraying.") playsound(user.loc, 'sound/effects/spray.ogg', 5, 1, 5) - var/takes_time = !instant + var/takes_time = !instant //For order purposes, since I'm maximum bad. if(gang_mode) takes_time = TRUE @@ -333,7 +334,7 @@ wait_time *= 3 if(takes_time) //This is what deteremines the time it takes to spray a tag in gang mode. 50 is Default. - if(!do_after(user, 25, target = target)) //Lets try 25 instead of giving them all spraycans. + if(!do_after(user, gang_tag_delay, target = target)) //25 is a good number, but we have gang_tag_delay var now. return if(length(text_buffer)) @@ -345,7 +346,7 @@ if(actually_paints) if(gang_mode) - // Double check it wasn't tagged in the meanwhile + // Double check it wasn't tagged in the meanwhile. if(!can_claim_for_gang(user, target)) return tag_for_gang(user, target) @@ -588,6 +589,7 @@ is_capped = TRUE self_contained = FALSE // Don't disappear when they're empty can_change_colour = TRUE + gang = TRUE //Gang check is true for all things upon the honored hierarchy of spraycans, except those that are FALSE. validSurfaces = list(/turf/open/floor, /turf/closed/wall) reagent_contents = list("welding_fuel" = 1, "ethanol" = 1) @@ -733,6 +735,7 @@ icon_capped = "deathcan2_cap" icon_uncapped = "deathcan2" use_overlays = FALSE + gang = FALSE volume_multiplier = 25 charges = 100 @@ -747,6 +750,7 @@ icon_capped = "clowncan2_cap" icon_uncapped = "clowncan2" use_overlays = FALSE + gang = FALSE reagent_contents = list("lube" = 1, "banana" = 1) volume_multiplier = 5 @@ -759,6 +763,7 @@ icon_capped = "mimecan_cap" icon_uncapped = "mimecan" use_overlays = FALSE + gang = FALSE can_change_colour = FALSE paint_color = "#FFFFFF" //RGB @@ -770,9 +775,10 @@ /obj/item/toy/crayon/spraycan/gang charges = 20 // Charges back to 20, which is the default value for them. gang = TRUE + gang_tag_delay = 15 //Its 50% faster than a regular spraycan, for tagging. After-all they did spend points/meet the boss. pre_noise = FALSE - post_noise = TRUE + post_noise = TRUE // Its even more stealthy just a tad. /obj/item/toy/crayon/spraycan/gang/Initialize(loc, datum/team/gang/G) ..() @@ -784,7 +790,7 @@ /obj/item/toy/crayon/spraycan/gang/examine(mob/user) . = ..() if(user.mind && user.mind.has_antag_datum(/datum/antagonist/gang) || isobserver(user)) - to_chat(user, "This spraycan has been specially modified for tagging territory.") + to_chat(user, "This spraycan has been specially modified with a stage 2 nozzle kit, making it faster.") #undef RANDOM_GRAFFITI #undef RANDOM_LETTER diff --git a/modular_citadel/code/game/gamemodes/gangs/gang.dm b/modular_citadel/code/game/gamemodes/gangs/gang.dm index 8192041e3e..00ce3f81a9 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang.dm @@ -193,7 +193,7 @@ "hands" = SLOT_HANDS ) - if(gangtool) + if(gangtool)//Here is where all of the text occurs when a gang boss first spawns in. var/obj/item/device/gangtool/G = new() var/where = H.equip_in_one_of_slots(G, slots) if (!where) @@ -201,7 +201,7 @@ else G.register_device(H) to_chat(H, "The Gangtool in your [where] will allow you to purchase weapons and equipment, send messages to your gang, and recall the emergency shuttle from anywhere on the station.") - to_chat(H, "As the gang boss, you can also promote your gang members to lieutenant. Unlike regular gangsters, Lieutenants cannot be deconverted and are able to use recruitment pens and gangtools.") + to_chat(H, "As the gang boss, you can also promote your gang members to lieutenant. Unlike regular gangsters, Lieutenants cannot be deconverted and are able to use gangtools too.") if(pen) var/obj/item/pen/gang/T = new() @@ -209,7 +209,7 @@ if (!where2) to_chat(H, "Your Syndicate benefactors were unfortunately unable to get you a recruitment pen to start.") else - to_chat(H, "The recruitment pen in your [where2] will help you get your gang started. Stab unsuspecting crew members with it to recruit them.") + to_chat(H, "The recruitment pen in your [where2] will help you get your gang started. Stab unsuspecting crew members with it to recruit them. All gangsters can use these, distribute them to see your gang grow.") if(spraycan) var/obj/item/toy/crayon/spraycan/gang/SC = new(null,gang) @@ -327,7 +327,7 @@ GLOB.gangs -= src ..() -/datum/team/gang/roundend_report() +/datum/team/gang/roundend_report() //roundend report. var/list/report = list() report += "[name]:" if(winner) @@ -342,9 +342,10 @@ return "
[report.Join("
")]
" -/datum/team/gang/proc/greet_gangster(datum/mind/gangster) +/datum/team/gang/proc/greet_gangster(datum/mind/gangster) //The text a person receives when recruited. to_chat(gangster, "You are now a member of the [name] Gang!") - to_chat(gangster, "Help your bosses take over the station by claiming territory with special spraycans only they can provide. Simply spray on any unclaimed area of the station.") + to_chat(gangster, "Help your bosses take over the station by claiming territory with spraycans. Simply spray on any unclaimed area of the station.") + to_chat(gangster, "You can also use recruitment pens to recruit more to your cause, If your boss provides you one.") to_chat(gangster, "Their ultimate objective is to take over the station with a Dominator machine.") to_chat(gangster, "You can identify your mates by their large, \[G\] icon.") gangster.store_memory("You are a member of the [name] Gang!") diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm index 010778413b..334d6bf423 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm @@ -3,7 +3,7 @@ // color (must be a hex, "blue" isn't acceptable due to how spraycans are handled) // inner_outfits (must be a list() with typepaths of the clothes in it. One is fine, but there is support for multiple: one will be picked at random when bought) // outer_outfits (same as above) -// You also need to make a gang graffiti, that will go in crayondecal.dmi inside our icons(not tg's), with the same name of the gang it's assigned to. Nothing else,just the icon. +// You also need to make a gang graffiti, that will go in crayondecal.dmi inside our icons, with the same name of the gang it's assigned to. Nothing else,just the icon. // Those are all required. If one is missed, stuff could break. /datum/team/gang/clandestine diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm index ccaab546e5..0f16b6462b 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_items.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_items.dm @@ -76,7 +76,7 @@ var/outfit = pick(gang.outer_outfits) if(outfit) var/obj/item/O = new outfit(user.loc) - O.armor = O.armor.setRating(melee = 20, bullet = 35, laser = 10, energy = 10, bomb = 30, bio = 0, rad = 0, fire = 30, acid = 30) + O.armor = O.armor.setRating(melee = 25, bullet = 35, laser = 15, energy = 10, bomb = 30, bio = 0, rad = 0, fire = 30, acid = 30) O.desc += " Tailored for the [gang.name] Gang to offer the wearer moderate protection against ballistics and physical trauma." user.put_in_hands(O) to_chat(user, " This is your gang's official outerwear, wearing it will increase your influence") @@ -135,6 +135,12 @@ icon_state = "knuckles" w_class = 3 +datum/gang_item/clothing/shades //Addition: Why not have cool shades on a gang member anyways? + name = "Cool Sunglasses" + id = "glasses" + cost = 5 + item_path = /obj/item/clothing/glasses/sunglasses + /datum/gang_item/clothing/belt name = "Badass Belt" id = "belt" @@ -168,7 +174,7 @@ cost = 5 item_path = /obj/item/switchblade -/datum/gang_item/weapon/surplus +/datum/gang_item/weapon/surplus //For when a gang boss is extra broke or cheap. name = "Surplus Rifle" id = "surplus" cost = 6 @@ -177,7 +183,7 @@ /datum/gang_item/weapon/ammo/surplus_ammo name = "Surplus Rifle Ammo" id = "surplus_ammo" - cost = 5 + cost = 3 item_path = /obj/item/ammo_box/magazine/m10mm/rifle /datum/gang_item/weapon/improvised @@ -308,7 +314,7 @@ /datum/gang_item/equipment/wetwork_boots name = "Wetwork boots" id = "wetwork" - cost = 10 + cost = 8 item_path = /obj/item/clothing/shoes/combat/gang /obj/item/clothing/shoes/combat/gang diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm b/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm index ceb780a8c5..3dfdf4dd9b 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm @@ -9,12 +9,13 @@ . = ..() last_used = world.time -/obj/item/pen/gang/attack(mob/living/M, mob/user, stealth = TRUE) +/obj/item/pen/gang/attack(mob/living/M, mob/user, stealth = TRUE) //ha if(!istype(M)) return if(!ishuman(M) || !ishuman(user) || M.stat == DEAD) return ..() - var/datum/antagonist/gang/boss/L = user.mind.has_antag_datum(/datum/antagonist/gang/boss) + //var/datum/antagonist/gang/boss/L = user.mind.has_antag_datum(/datum/antagonist/gang/boss) //Pen works with bosses only. + var/datum/antagonist/gang/L = user.mind.has_antag_datum(/datum/antagonist/gang) //Pen works with anyone in gang. if(!L) return ..() if(!..()) From 4913f332c768be8ce69823ab0c061b2b999587e9 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 May 2019 14:23:29 -0700 Subject: [PATCH 095/370] Update stun.dm --- code/modules/projectiles/ammunition/energy/stun.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/projectiles/ammunition/energy/stun.dm b/code/modules/projectiles/ammunition/energy/stun.dm index 9b24571d12..ce4d6289d4 100644 --- a/code/modules/projectiles/ammunition/energy/stun.dm +++ b/code/modules/projectiles/ammunition/energy/stun.dm @@ -21,6 +21,7 @@ /obj/item/ammo_casing/energy/disabler projectile_type = /obj/item/projectile/beam/disabler select_name = "disable" - e_cost = 50 + e_cost = 31.25 fire_sound = 'sound/weapons/taser2.ogg' harmful = FALSE + click_cooldown_override = 3 From 6ed955ddde2d426ae70650c4da21ca652d0b1e8a Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 May 2019 14:25:45 -0700 Subject: [PATCH 096/370] Update beams.dm --- code/modules/projectiles/projectile/beams.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index f4ca82b4e6..cbd0348743 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -74,6 +74,7 @@ flag = "energy" hitsound = 'sound/weapons/tap.ogg' eyeblur = 0 + speed = 0.7 impact_effect_type = /obj/effect/temp_visual/impact_effect/blue_laser light_color = LIGHT_COLOR_BLUE tracer_type = /obj/effect/projectile/tracer/disabler From 031779a94446f06c7e6a2a1c86a1b5f03e694b5b Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 May 2019 14:28:17 -0700 Subject: [PATCH 097/370] 32 --> 25 --- code/modules/projectiles/ammunition/energy/stun.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/ammunition/energy/stun.dm b/code/modules/projectiles/ammunition/energy/stun.dm index ce4d6289d4..3f033ac904 100644 --- a/code/modules/projectiles/ammunition/energy/stun.dm +++ b/code/modules/projectiles/ammunition/energy/stun.dm @@ -21,7 +21,7 @@ /obj/item/ammo_casing/energy/disabler projectile_type = /obj/item/projectile/beam/disabler select_name = "disable" - e_cost = 31.25 + e_cost = 40 fire_sound = 'sound/weapons/taser2.ogg' harmful = FALSE click_cooldown_override = 3 From 21c678736b5bafd360318e78d30b6eedb5bcc7cf Mon Sep 17 00:00:00 2001 From: Sishen Date: Mon, 27 May 2019 22:46:28 -0400 Subject: [PATCH 098/370] crewmonitor --- _maps/map_files/BoxStation/BoxStation.dmm | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index bba92be7a7..dcd2c47cb2 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -27901,8 +27901,8 @@ pixel_x = 30 }, /obj/machinery/light, -/mob/living/simple_animal/bot/cleanbot{ - name = "C.L.E.A.N." +/obj/machinery/computer/crew{ + dir = 1 }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) @@ -31596,7 +31596,7 @@ /area/medical/sleeper) "bwC" = ( /obj/machinery/computer/med_data{ - dir = 4 + dir = 3 }, /turf/open/floor/plasteel/white, /area/medical/sleeper) @@ -56882,6 +56882,12 @@ /obj/item/pen, /turf/open/floor/plasteel/white, /area/science/circuit) +"ium" = ( +/mob/living/simple_animal/bot/cleanbot{ + name = "C.L.E.A.N." + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) "izv" = ( /obj/machinery/vending/clothing, /obj/machinery/light/small{ @@ -94182,7 +94188,7 @@ blm bmL boi bpw -bhh +ium bsx btX bvj From 8cd0b69b617598d4f5d97dca4924a643ba5d6167 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 28 May 2019 00:53:32 -0700 Subject: [PATCH 099/370] adrenals --- .../objects/items/implants/implant_misc.dm | 18 +----------- .../abductor/equipment/abduction_gear.dm | 15 +--------- .../changeling/powers/adrenaline.dm | 18 +----------- code/modules/mob/living/living.dm | 29 +++++++++++++++++++ .../suit/n_suit_verbs/ninja_adrenaline.dm | 17 +---------- code/modules/reagents/chemistry/holder.dm | 6 ++-- .../chemistry/reagents/drug_reagents.dm | 19 +++++++++--- .../chemistry/reagents/medicine_reagents.dm | 1 + 8 files changed, 52 insertions(+), 71 deletions(-) diff --git a/code/game/objects/items/implants/implant_misc.dm b/code/game/objects/items/implants/implant_misc.dm index 6db3699beb..889f702ee7 100644 --- a/code/game/objects/items/implants/implant_misc.dm +++ b/code/game/objects/items/implants/implant_misc.dm @@ -33,24 +33,8 @@ /obj/item/implant/adrenalin/activate() . = ..() uses-- + imp_in.do_adrenaline(150, TRUE, 0, 0, TRUE, list("inaprovaline" = 3, "synaptizine" = 10, "omnizine" = 10, "stimulants" = 10), "You feel a sudden surge of energy!") to_chat(imp_in, "You feel a sudden surge of energy!") - imp_in.SetSleeping(0) - imp_in.SetStun(0) - imp_in.SetKnockdown(0) - imp_in.SetUnconscious(0) - imp_in.adjustStaminaLoss(-150) - imp_in.stuttering = 0 - imp_in.updatehealth() - imp_in.update_stamina() - imp_in.resting = 0 - imp_in.lying = 0 - imp_in.update_canmove() - - imp_in.reagents.add_reagent("inaprovaline", 3) //let's give another chance to dumb fucks who forget to breathe - imp_in.reagents.add_reagent("synaptizine", 10) - imp_in.reagents.add_reagent("omnizine", 10) - imp_in.reagents.add_reagent("stimulants", 10) - if(!uses) qdel(src) diff --git a/code/modules/antagonists/abductor/equipment/abduction_gear.dm b/code/modules/antagonists/abductor/equipment/abduction_gear.dm index 237d1a6c00..ca491d8cab 100644 --- a/code/modules/antagonists/abductor/equipment/abduction_gear.dm +++ b/code/modules/antagonists/abductor/equipment/abduction_gear.dm @@ -108,20 +108,7 @@ to_chat(loc, "Combat injection is still recharging.") return var/mob/living/carbon/human/M = loc - M.SetSleeping(0) - M.SetUnconscious(0) - M.SetStun(0) - M.SetKnockdown(0) - M.reagents.add_reagent("inaprovaline", 3) - M.reagents.add_reagent("synaptizine", 10) - M.reagents.add_reagent("stimulants", 10) - M.adjustStaminaLoss(-150) - M.stuttering = 0 - M.updatehealth() - M.update_stamina() - M.resting = 0 - M.lying = 0 - M.update_canmove() + M.do_adrenaline(150, FALSE, 0, 0, TRUE, list("inaprovaline" = 3, "synaptizine" = 10, "omnizine" = 10), "You feel a sudden surge of energy!") combat_cooldown = 0 START_PROCESSING(SSobj, src) diff --git a/code/modules/antagonists/changeling/powers/adrenaline.dm b/code/modules/antagonists/changeling/powers/adrenaline.dm index 9dbe706ed2..b4ae981ec8 100644 --- a/code/modules/antagonists/changeling/powers/adrenaline.dm +++ b/code/modules/antagonists/changeling/powers/adrenaline.dm @@ -12,21 +12,5 @@ //Recover from stuns. /obj/effect/proc_holder/changeling/adrenaline/sting_action(mob/living/user) - to_chat(user, "Energy rushes through us.[user.lying ? " We arise." : ""]") - user.SetSleeping(0) - user.SetUnconscious(0) - user.SetStun(0) - user.SetKnockdown(0) - user.reagents.add_reagent("changelingadrenaline", 10) - user.reagents.add_reagent("changelinghaste", 2) //For a really quick burst of speed - user.reagents.add_reagent("inaprovaline", 3) //let's give another chance to dumb fucks who forget to breathe - user.adjustStaminaLoss(-150) - user.stuttering = 0 - user.updatehealth() - user.update_stamina() - user.resting = 0 - user.lying = 0 - user.update_canmove() - + user.do_adrenaline(100, FALSE, 70, 0, TRUE, list("epinephrine" = 3, "changelingmeth" = 10, "mannitol" = 10, "omnizine" = 10, "changelingadreanline" = 5), "Energy rushes through us.") return TRUE - diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index ae662c7628..ae99ac8a50 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1180,3 +1180,32 @@ update_transform() if("lighting_alpha") sync_lighting_plane_alpha() + +/mob/living/proc/do_adrenaline( + stamina_boost = 150, + put_on_feet = TRUE, + clamp_unconscious_to = 0, + clamp_immobility_to = 0, + reset_misc = TRUE, + healing_chems = list("inaprovaline" = 3, "synaptizine" = 10, "omnizine" = 10, "stimulants" = 10), + message = "You feel a surge of energy!" + ) + if(AmountSleeping() > clamp_unconscious_to) + SetSleeping(clamp_unconscious_to) + if(AmountUnconscious() > clamp_unconscious_to) + SetUnconscious(clamp_unconscious_to) + if(AmountStun() > clamp_immobility_to) + SetStun(clamp_immobility_to) + if(AmountKnockdown() > clamp_immobility_to) + SetKnockdown(clamp_immobility_to) + adjustStaminaLoss(max(0, -stamina_boost)) + if(put_on_feet) + resting = FALSE + lying = FALSE + if(reset_misc) + stuttering = 0 + updatehealth() + update_stamina() + update_canmove() + for(var/chem in healing_chems) + reagents.add_reagent(chem, healing_chems[chem]) diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm index 5c19a67284..816ae58749 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm @@ -4,22 +4,7 @@ if(!ninjacost(0,N_ADRENALINE)) var/mob/living/carbon/human/H = affecting - H.SetSleeping(0) - H.SetStun(0) - H.SetKnockdown(0) - H.SetUnconscious(0) - H.adjustStaminaLoss(-150) - H.stuttering = 0 - H.updatehealth() - H.update_stamina() - H.resting = 0 - H.lying = 0 - H.update_canmove() - - H.reagents.add_reagent("inaprovaline", 3) //let's give another chance to dumb fucks who forget to breathe - H.reagents.add_reagent("synaptizine", 10) - H.reagents.add_reagent("omnizine", 10) - H.reagents.add_reagent("stimulants", 10) + H.do_adrenaline(150, TRUE, 0, 0, TRUE, list("inaprovaline" = 3, "synaptizine" = 10, "omnizine" = 10), "You feel a sudden surge of energy!") H.say(pick("A CORNERED FOX IS MORE DANGEROUS THAN A JACKAL!","HURT ME MOOORRREEE!","IMPRESSIVE!"), forced = "ninjaboost") diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 442ef191a9..7c24a79359 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -555,7 +555,7 @@ if(!D) WARNING("[my_atom] attempted to add a reagent called '[reagent]' which doesn't exist. ([usr])") return FALSE - + update_total() var/cached_total = total_volume if(cached_total + amount > maximum_volume) @@ -599,9 +599,9 @@ if(data) R.data = data R.on_new(data) - + if(isliving(my_atom)) - R.on_mob_add(my_atom) //Must occur befor it could posibly run on_mob_delete + R.on_mob_add(my_atom) //Must occur befor it could posibly run on_mob_delete update_total() if(my_atom) my_atom.on_reagent_change(ADD_REAGENT) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index d77756a649..88f3e92613 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -164,6 +164,9 @@ overdose_threshold = 20 addiction_threshold = 10 metabolization_rate = 0.75 * REAGENTS_METABOLISM + var/brain_damage = TRUE + var/jitter = TRUE + var/confusion = TRUE /datum/reagent/drug/methamphetamine/on_mob_add(mob/living/L) ..() @@ -181,10 +184,10 @@ M.AdjustKnockdown(-40, 0) M.AdjustUnconscious(-40, 0) M.adjustStaminaLoss(-7.5 * REM, 0) - M.Jitter(2) - M.adjustBrainLoss(rand(1,4)) - if(prob(30)) - M.confused = max(1, M.confused) + if(jitter) + M.Jitter(2) + if(brain_damage) + M.adjustBrainLoss(rand(1,4)) M.heal_overall_damage(2, 2) if(prob(5)) M.emote(pick("twitch", "shiver")) @@ -240,6 +243,14 @@ ..() . = 1 +/datum/reagent/drug/methamphetamine/changeling + id = "changelingmeth" + name = "Changeling Adrenaline" + addiction_threshold = 35 + overdose_threshold = 35 + jitter = FALSE + brain_damage = FALSE + /datum/reagent/drug/bath_salts name = "Bath Salts" id = "bath_salts" diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 3970e8157b..b5a56c944d 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -1171,6 +1171,7 @@ M.AdjustUnconscious(-20, 0) M.AdjustStun(-20, 0) M.AdjustKnockdown(-20, 0) + M.AdjustSleeping(-20, 0) M.adjustStaminaLoss(-30, 0) ..() return TRUE From 69a39b4f67be3059c50d6611beddc74b81634258 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Tue, 28 May 2019 18:56:16 -0400 Subject: [PATCH 100/370] Update hierophant.dm --- .../living/simple_animal/hostile/megafauna/hierophant.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm index 293e3e21fd..70ccf1ff68 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm @@ -47,11 +47,11 @@ Difficulty: Hard icon = 'icons/mob/lavaland/hierophant_new.dmi' faction = list("boss") //asteroid mobs? get that shit out of my beautiful square house speak_emote = list("preaches") - armour_penetration = 50 + armour_penetration = 75 melee_damage_lower = 15 - melee_damage_upper = 15 + melee_damage_upper = 20 speed = 1 - move_to_delay = 10 + move_to_delay = 11 ranged = 1 ranged_cooldown_time = 40 aggro_vision_range = 21 //so it can see to one side of the arena to the other From 5ead987d536184eb6b7e0354434d3def17796049 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Tue, 28 May 2019 19:01:32 -0400 Subject: [PATCH 101/370] Update hierophant.dm --- .../mob/living/simple_animal/hostile/megafauna/hierophant.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm index 70ccf1ff68..6577553a6a 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm @@ -30,7 +30,7 @@ Cross Blasts and the AoE burst gain additional range as Hierophant loses health, When Hierophant dies, it stops trying to murder you and shrinks into a small form, which, while much weaker, is still quite effective. - The smaller club can place a teleport beacon, allowing the user to teleport themself and their allies to the beacon. -Difficulty: Hard +Difficulty: Normal */ From 894b0d28e2c77dd8d3c233869dfa09ee00013bb8 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 29 May 2019 08:45:45 +0200 Subject: [PATCH 102/370] Krav maga leg sweep buff. --- code/datums/martial/krav_maga.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 8a5f0f9439..765567205f 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -86,13 +86,13 @@ return 0 /datum/martial_art/krav_maga/proc/leg_sweep(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) - if(D.stat || D.IsKnockdown()) + if(D.lying || D.resting) return 0 D.visible_message("[A] leg sweeps [D]!", \ "[A] leg sweeps you!") playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1) D.apply_damage(5, BRUTE) - D.Knockdown(40) + D.Knockdown(40, override_duration = 10, 25) log_combat(A, D, "leg sweeped") return 1 From fe5ac5e6e9d7b579466d19bb6abe83bf5a10fa68 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 29 May 2019 09:24:12 +0200 Subject: [PATCH 103/370] On the other hand, vehicle memes. --- code/datums/martial/krav_maga.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 765567205f..0713b6ed18 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -86,7 +86,7 @@ return 0 /datum/martial_art/krav_maga/proc/leg_sweep(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) - if(D.lying || D.resting) + if(D.lying || D.IsKnockdown()) return 0 D.visible_message("[A] leg sweeps [D]!", \ "[A] leg sweeps you!") From 12648720dca56f47c8e78b18a52ff2d929f46ef7 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 29 May 2019 10:41:43 +0200 Subject: [PATCH 104/370] tweakin. --- code/datums/martial/krav_maga.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 0713b6ed18..4faa0619cf 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -88,11 +88,12 @@ /datum/martial_art/krav_maga/proc/leg_sweep(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) if(D.lying || D.IsKnockdown()) return 0 + var/hardstun = D.resting ? null : 10 D.visible_message("[A] leg sweeps [D]!", \ "[A] leg sweeps you!") playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1) D.apply_damage(5, BRUTE) - D.Knockdown(40, override_duration = 10, 25) + D.Knockdown(40, override_duration = hardstun, 25) log_combat(A, D, "leg sweeped") return 1 From 5309eafb595ed9aa35f0f76eb6e7b85772ad5f57 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 29 May 2019 11:24:27 +0200 Subject: [PATCH 105/370] Fine and be it, man. --- code/datums/martial/krav_maga.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 4faa0619cf..40bf5b055f 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -88,12 +88,11 @@ /datum/martial_art/krav_maga/proc/leg_sweep(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) if(D.lying || D.IsKnockdown()) return 0 - var/hardstun = D.resting ? null : 10 D.visible_message("[A] leg sweeps [D]!", \ "[A] leg sweeps you!") playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1) D.apply_damage(5, BRUTE) - D.Knockdown(40, override_duration = hardstun, 25) + D.Knockdown(40, override_stam = 45) log_combat(A, D, "leg sweeped") return 1 From 8fbc25ad77795b69cb9020ee217b38ff564f12e1 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 29 May 2019 16:35:56 +0200 Subject: [PATCH 106/370] Ports in combat gloves plus. --- code/datums/martial/krav_maga.dm | 15 +++++++++++++++ code/game/gamemodes/clown_ops/clown_ops.dm | 1 + code/game/gamemodes/nuclear/nuclear.dm | 1 + code/modules/uplink/uplink_items.dm | 8 ++++++++ 4 files changed, 25 insertions(+) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 8a5f0f9439..b0a78211b0 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -191,3 +191,18 @@ heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT resistance_flags = NONE + +/obj/item/clothing/gloves/krav_maga/combatglovesplus + name = "combat gloves plus" + desc = "These tactical gloves are fireproof and shock resistant, and using nanochip technology it teaches you the powers of krav maga." + icon_state = "black" + item_state = "blackglovesplus" + siemens_coefficient = 0 + permeability_coefficient = 0.05 + strip_delay = 80 + cold_protection = HANDS + min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT + heat_protection = HANDS + max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT + resistance_flags = NONE + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 50) diff --git a/code/game/gamemodes/clown_ops/clown_ops.dm b/code/game/gamemodes/clown_ops/clown_ops.dm index 12d3106c8d..a666b57afd 100644 --- a/code/game/gamemodes/clown_ops/clown_ops.dm +++ b/code/game/gamemodes/clown_ops/clown_ops.dm @@ -62,5 +62,6 @@ /datum/outfit/syndicate/clownop/leader name = "Clown Operative Leader - Basic" id = /obj/item/card/id/syndicate/nuke_leader + gloves = /obj/item/clothing/gloves/krav_maga/combatglovesplus r_hand = /obj/item/nuclear_challenge/clownops command_radio = TRUE diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index d76552982c..615d55a818 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -137,6 +137,7 @@ /datum/outfit/syndicate/leader name = "Syndicate Leader - Basic" id = /obj/item/card/id/syndicate/nuke_leader + gloves = /obj/item/clothing/gloves/krav_maga/combatglovesplus r_hand = /obj/item/nuclear_challenge command_radio = TRUE diff --git a/code/modules/uplink/uplink_items.dm b/code/modules/uplink/uplink_items.dm index 503b1bd743..1d8006e6bd 100644 --- a/code/modules/uplink/uplink_items.dm +++ b/code/modules/uplink/uplink_items.dm @@ -303,6 +303,14 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) item = /obj/item/melee/powerfist cost = 8 +/datum/uplink_item/badass/combatglovesplus + name = "Combat Gloves Plus" + desc = "A pair of gloves that are fireproof and shock resistant, however unlike the regular Combat Gloves this one uses nanotechnology \ + to learn the abilities of krav maga to the wearer." + item = /obj/item/clothing/gloves/krav_maga/combatglovesplus + cost = 5 + include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops) + /datum/uplink_item/dangerous/emp name = "EMP Grenades and Implanter Kit" desc = "A box that contains two EMP grenades and an EMP implant. Useful to disrupt communication, \ From 93464b8f24de54194d702b2b43f58a708bc7eec8 Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Thu, 30 May 2019 02:46:34 +1200 Subject: [PATCH 107/370] Adds bluespace compression kit --- .../objects/items/devices/compressionkit.dm | 62 ++++++++++++++++++ code/modules/uplink/uplink_items.dm | 9 +++ icons/obj/device.dmi | Bin 43527 -> 44214 bytes tgstation.dme | 1 + 4 files changed, 72 insertions(+) create mode 100644 code/game/objects/items/devices/compressionkit.dm diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm new file mode 100644 index 0000000000..387b8a3244 --- /dev/null +++ b/code/game/objects/items/devices/compressionkit.dm @@ -0,0 +1,62 @@ +/obj/item/compressionkit + name = "bluespace compression kit" + desc = "An illegally modified BSRPED, capable of reducing the size of most items." + icon = 'icons/obj/device.dmi' + icon_state = "compression" // aicard-full + item_state = "RPED" + lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' + w_class = WEIGHT_CLASS_NORMAL + var/charges = 5 + +/obj/item/compressionkit/suicide_act(mob/living/carbon/M) + M.visible_message("[M] is sticking their head in [src] and turning it on! [M.p_theyre(TRUE)] going to compress their own skull!") + var/obj/item/bodypart/head = M.get_bodypart("head") + if(!head) + return + var/turf/T = get_turf(M) + var/list/organs = M.getorganszone("head") + M.getorganszone("eyes") + M.getorganszone("mouth") + for(var/internal_organ in organs) + var/obj/item/organ/I = internal_organ + I.Remove(M) + I.forceMove(T) + head.drop_limb() + qdel(head) + new M.gib_type(T,1,M.get_static_viruses()) + M.add_splatter_floor(T) + playsound(M, 'sound/weapons/flash.ogg', 100, 1, -6) + playsound(M, 'sound/effects/splat.ogg', 50, 1) + + return OXYLOSS + +/obj/item/compressionkit/afterattack(atom/target, mob/user, proximity) + . = ..() + if(!proximity || !target) + return + if(istype(target, /obj/item)) + var/obj/item/O = target + if(charges == 0) + playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 100, 1, -6) + to_chat(user, "The bluespace compression kit is out of charges! Recharge it with bluespace crystals.") + return + if(O.w_class == 1) + playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 100, 1, -6) + to_chat(user, "[target] cannot be compressed smaller!.") + return + if(O.GetComponent(/datum/component/storage)) + to_chat(user, "You feel like compressing an item that stores other items would be counterproductive.") + return + if(O.w_class > 1) + O.w_class -= 1 + playsound(get_turf(src), 'sound/weapons/flash.ogg', 100, 1, -6) + to_chat(user, "You successfully compress [target]!") + charges -= 1 + else + to_chat(user, "Anomalous error. Summon a coder.") + +/obj/item/compressionkit/attackby(obj/item/I, mob/user, params) + ..() + if(istype(I, /obj/item/stack/ore/bluespace_crystal)) + to_chat(user, "You insert [I] into [src].") + qdel(I) + charges += 2 \ No newline at end of file diff --git a/code/modules/uplink/uplink_items.dm b/code/modules/uplink/uplink_items.dm index 798b495cfd..8510e0c830 100644 --- a/code/modules/uplink/uplink_items.dm +++ b/code/modules/uplink/uplink_items.dm @@ -1247,6 +1247,15 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) item = /obj/item/codespeak_manual/unlimited cost = 3 +/datum/uplink_item/device_tools/compressionkit + name = "Bluespace Compression Kit" + desc = "A modified version of a BSRPED that can be used to reduce the size of most items while retaining their original functions! \ + Does not work on storage items. \ + Recharge using bluespace crystals. \ + Comes with 5 charges." + item = /obj/item/compressionkit + cost = 5 + // Implants /datum/uplink_item/implants category = "Implants" diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index becb58568ff14b0a8d215f10a556f805b1a920ee..4c15e69afccec8a482f14d9556cb41826c0350e9 100644 GIT binary patch delta 3496 zcma)8`8(8Y)c;yTF{H^zmN2BUg$Eh?*s}DfEMbgLq_U)#kgwhJ*q10_N<(QZS%<7O z#u`&0O?G2iM2vMX!#iE?`v<)DFQ0Rr>snKPx1(NBb7T-k?V8~9Lg&LUu%L( zzaE2oR3Prb=GHh*!PBRo zrlLU^J__4%?`Dv(Iwd0ylL|IAK$r4^dTBic$1dk&n9Lkb*U{;vaa=REZW4Zt^Sn}) zO?KF_fae`+n5T7SNu9DSSjO)^4p^Nvj({q&drD+F?z>b5tbUpZksNFZuup@FU~r9% zg!F^6H1*b%IQ!c>{ zrz;fQB|M!sJ16B}lIypnL};p`rUGO@rh!6%Us8%oJNfej@8Gs=sCY1=p9q$bBg2NA z*R^FVN6U|Lpxby~SMSesJwH+Rcnmmv3^2Jso6WpO#xU1Eb)j|sc-hf#ncgk?HR(Yc zyT;Dg_*bhlH}TwFPEnOYsgD>I6V_-RbHUzhxUFKy$4Uah9EFl@M|{$phX}|N=AXIZ zyWAWwD z&8J6~AGvsDZTW5F-DZwY@K#LK3Imz#-aPF!d^yiwUs82#yC&62_;P+Oh!gSZ+^BZ| zt6o3U=a})XA3a2RdSMH!SlN#Hhi>&F%#7I;Sw2)$r81s ztXYeHjsh#Z?!@9-!_~|#o&V*%Ol*?vMDB)jf^H2DxZjdpibU^BRTyag9@ehkLXjXE zlHtm!R+J5(O1d@9UOh5XZ@p_4JF}12X^indT_k zj^k|zttXsSV@9RleP&uF4E&dp0?!}k(*u&nHGQRV6uW( z*)Ujo5TU$Wvz{xfa5QN0?dUoL)!HL*R6W9yJEm|uBhhXe)dm4DRJcfmD?3tU82SyI zsjq48Tc0=YYYC{ln=zt{+engi<&;=tdtYO1hQwq@gJ(oDKD3n z8dNyTo6vnU3oBrUz+y|PPwBe!J6`6^C7$wQ^=fc6+o*c3r{)@NoC4mwQxVHbe0?XB zE^cxfvPX1_Qj*ivbmY6bYKlbaN`XppNF>r%fA8oaF)^_#>4F0PPZ(Os_#`Hl)jSax zUZER%^13V633++>0Zk74m#N(G@9Mn7`3MpcpF#9imOpE)DDm>8A~z5{at{>>15Wi% zePkCYdB!~lG2Q=g81Q3O50*}}Dt`*863(b^-~l|UT6B^xU3~dI2YpgFKS7jy`Y+K_ z^=hSfyaV}3EYdvaF?OACIM$n41popOanF7;PxPj%=U&Cw;3a~%?s;4lG}Fxz?YRxjXV;~Kg}cI z5}tq%!uhquQ|hL&lB@A$G&^^Lh2O?G`(33l;A`}{e{U$x?M+OZFSe7Dv~TT}(07nF z*1jNC`8%uy4m{TRy(d;V{W17rc(lEJ+H8XV)q5gFPdcOy5<<<&(BtblGcl)m8rcIO z*Qc(p@6)QSk3Tl9dIgOg8~!-4`3RAQO*)$!gFzH$rnZ%oc=sCD+>vb9e({c(N@3Qd zRL_Ssmlo31y|=#WX4SDQ029U>VjO(CQ0+unP$-Y9@MyL>rKZ-k{tNP?iEP@F{ywkP=zCleW`(*a-yeZl2V zcA?|k7_ykH*~})hA5YYS{l8f`X5cm$QR^N*MX3A?H`liP{@ZT?_DAOq)(!P6rAimUu82g%RswcSSiU6r?}Sd8+TbhgS*jBTb?VSA$Vb3J4kX z?3|aqeO4A0`W!pvog%)j?jRIO$83xeEm?0dZBy89L9gJlTT4_Qaj2-0+!4xM^>@rD zBlqa&c3vQ?McM%^ls%~hBt&nggt*%)dqIk0pO~t)4;x;%N1eZ+HB-T`GK{W`dZSBN-#L zx1yL|JONlX9?MIjG5Y(GVJ^;QNm?G+&+SghlLyq0@rQKHgn7At`u~d2R$l*bVcR0A z^%;)}{5jmG4$B;RKhqSz*Bu8k``Hj>RFAq``0ojRg`Qn$g9Y*J)@!`Xd`L!)~}OOqD)_KNb<3BR8u_dH57*S z8=+++vR%f*fsmU0x6sG1KOLhu<58j1hYTy*>PoEGLqS1Iz?FYuJ`SjQV?O7$%x|A} zgNiDQWJBa0`(p3+U#&_1vQ};=A%#0EeAa_YZ0uQS_`RV{BLk7-;j7;_%e!5K$~#>} zr|%>5s@!60F#E~iWv?^ez(FCqLsMXlaE#7w^-(mIzAL*#nI816hl;AY*fdXQFLng-DJA{A0QYPRaI#sx zm?pOMk_`ibYd1nC^cf<6i9@>-;8iCa_`bQZ3e4QFyu>B>=gxV>QHUwwwHY$2k*iPG zB;cbyPbjgsa%HeAwfahI&B^xcT8Z}|2j?yz))K?i6;rm1TP3occB`oeRrr@X?nrq< z(O64XTpagke8tZqaU=V?`=d82&J_xZ2lfyM=oJ6^a$m3B+$3aZEaJYUy~L|E{r)ehH^>!nPhOW|4-xWaM#@zTU?HAyYD;%0XHLS(om5> zR(}2g1;O5jg&B;_KRvTsyNn-0GZ|l1Ky}g^DK)aeq>%NMD^FBeYN@d%USAC~3pVII z|GPIKhqRM~J4$@4ermUPQ@Io>V+xI@Ri_1YW=lIb+wTio@Tu;B)A9rP`;MV70VT<~ zXt{o?5aki;O14+kdXNQix4-{9>9^6F-H`jP+6X5lS%q(MCGG;Ca6VQW3LZIP-IF1! zTVFB!D}nN(t{L@iI`m;Z_gq*@>D-)`@ory^vc=nSAWrbZd|%FGS=;kdfGBnO9q=5Q zxwv?1ak52%N~Jb!O+`Aoxt($`DF*kpGdK2(+F=ybY111w%00Nam^Yh{++b=tcKu;M zvL#)?1OG6&)zd!Bo&}o(t)UVUC9nJkGp(+rTH`|5!wv856|2d9UePu*lvd`KsjICu z`!Zmr8gnK$FRyma6d%Wt2*2uX9G9+o8WCSdQa|ANDOPHtn%IJ1zt z?(hn!js5$;opVJ=c~S?7F|uhZQfYz#g2@=)Y*Xz!i+tutyyzgBB;4bvafI?$bzJmv sitjx}BuDUIvDlM)8XVXE2@wvkWw~Zy0{A0`$^g!>v2Z|EnR&(i59;E@umAu6 delta 2804 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 Date: Thu, 30 May 2019 12:23:57 +1200 Subject: [PATCH 108/370] Update Fixes merge conflict with gangs. Adds a little feedback. Fixes crystal eating. --- .../objects/items/devices/compressionkit.dm | 16 ++++++++++------ icons/obj/device.dmi | Bin 44214 -> 43527 bytes icons/obj/tools.dmi | Bin 20197 -> 20903 bytes 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm index 387b8a3244..eb2f47d408 100644 --- a/code/game/objects/items/devices/compressionkit.dm +++ b/code/game/objects/items/devices/compressionkit.dm @@ -1,8 +1,8 @@ /obj/item/compressionkit name = "bluespace compression kit" desc = "An illegally modified BSRPED, capable of reducing the size of most items." - icon = 'icons/obj/device.dmi' - icon_state = "compression" // aicard-full + icon = 'icons/obj/tools.dmi' + icon_state = "compression" item_state = "RPED" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' @@ -49,14 +49,18 @@ if(O.w_class > 1) O.w_class -= 1 playsound(get_turf(src), 'sound/weapons/flash.ogg', 100, 1, -6) - to_chat(user, "You successfully compress [target]!") charges -= 1 + to_chat(user, "You successfully compress [target]!The compressor now has [charges] charges.") else to_chat(user, "Anomalous error. Summon a coder.") /obj/item/compressionkit/attackby(obj/item/I, mob/user, params) ..() if(istype(I, /obj/item/stack/ore/bluespace_crystal)) - to_chat(user, "You insert [I] into [src].") - qdel(I) - charges += 2 \ No newline at end of file + var/obj/item/stack/ore/bluespace_crystal/B = I + charges += 2 + to_chat(user, "You insert [I] into [src]. It now has [charges] charges.") + if(B.amount > 1) + B.amount -= 1 + else + qdel(I) \ No newline at end of file diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 4c15e69afccec8a482f14d9556cb41826c0350e9..becb58568ff14b0a8d215f10a556f805b1a920ee 100644 GIT binary patch delta 2804 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 diff --git a/icons/obj/tools.dmi b/icons/obj/tools.dmi index 8f6b844a2374f74468aba3463fe812d801fc2087..4f59848392ddfd48c0e9c3059db0bdb240f4a4ff 100644 GIT binary patch literal 20903 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≤r{D~6+Zx3<|`#cc?wH} zvjg>C6C-4LokmG?(Epfx)k^ogSZjw(boI|DFm7#8zET1Vb!k@R#X@)2jw}}4y4bq5=tLU=4(1fZ5s6{alz|vHRe~d z4VX@72tV9#!zOILsB0=kLw}HmQ+KwU$l*=pXXCFmN5j4Dx!I=Vl~ETspRE0waO!!K zc&uSc=s@cb-px-^OB_%cKh{kGO~nxnplh@kcaIIvJp8CNEIK0F2*W+msdWLu1S<8q wYQ7$A>vcwAPJ`c3=?M^jO#Gi=@XIf7G Date: Thu, 30 May 2019 18:59:43 +0200 Subject: [PATCH 109/370] Glubbs --- code/modules/clothing/gloves/miscellaneous.dm | 2 +- icons/obj/clothing/gloves.dmi | Bin 13922 -> 14207 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index b691074c27..bc36353ac5 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -27,7 +27,7 @@ /obj/item/clothing/gloves/combat name = "combat gloves" desc = "These tactical gloves are fireproof and shock resistant." - icon_state = "black" + icon_state = "combat" item_state = "blackgloves" siemens_coefficient = 0 permeability_coefficient = 0.05 diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi index a90efcdfea1c50dc851f4b953bee6cf81eacc40e..619db9290dcae78ccc808e43b118948ee80f2c7c 100644 GIT binary patch literal 14207 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 From 5482469a86545fa0e15337834232fed19fb23ba5 Mon Sep 17 00:00:00 2001 From: SkullyRoberts Date: Thu, 30 May 2019 13:02:18 -0400 Subject: [PATCH 110/370] Added lightup shoes and heelys to maint loot --- code/_globalvars/lists/maintenance_loot.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index 36049de77b..aa1cdcb40a 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -109,5 +109,7 @@ GLOBAL_LIST_INIT(maintenance_loot, list( /obj/item/reagent_containers/pill/floorpill = 1, /obj/item/storage/daki = 3, //VERY IMPORTANT CIT CHANGE - adds bodypillows to maint /obj/item/storage/pill_bottle/penis_enlargement = 2, + /obj/item/clothing/shoes/wheelys = 1, + /obj/item/clothing/shoes/kindleKicks = 1, "" = 3 )) From e75e629a8a3fa1512efd555d53275edcd5b3a96c Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 30 May 2019 10:32:02 -0700 Subject: [PATCH 111/370] Update code/modules/antagonists/changeling/powers/adrenaline.dm Co-Authored-By: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/modules/antagonists/changeling/powers/adrenaline.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/antagonists/changeling/powers/adrenaline.dm b/code/modules/antagonists/changeling/powers/adrenaline.dm index b4ae981ec8..a9d85d0fed 100644 --- a/code/modules/antagonists/changeling/powers/adrenaline.dm +++ b/code/modules/antagonists/changeling/powers/adrenaline.dm @@ -12,5 +12,5 @@ //Recover from stuns. /obj/effect/proc_holder/changeling/adrenaline/sting_action(mob/living/user) - user.do_adrenaline(100, FALSE, 70, 0, TRUE, list("epinephrine" = 3, "changelingmeth" = 10, "mannitol" = 10, "omnizine" = 10, "changelingadreanline" = 5), "Energy rushes through us.") + user.do_adrenaline(100, FALSE, 70, 0, TRUE, list("epinephrine" = 3, "changelingmeth" = 10, "mannitol" = 10, "omnizine" = 10, "changelingadrenaline" = 5), "Energy rushes through us.") return TRUE From 85ab98884250d368bb5ffcc2833e9cba853f6448 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Thu, 30 May 2019 20:09:19 +0200 Subject: [PATCH 112/370] 0, null, and "", all fulfill the ! operator. --- .../food_and_drinks/drinks/drinks/bottle.dm | 2 +- .../mob/living/carbon/human/human_defense.dm | 2 +- code/modules/mob/living/living_defense.dm | 16 +++++----------- .../guns/energy/kinetic_accelerator.dm | 4 ++-- 4 files changed, 9 insertions(+), 15 deletions(-) diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index 46e637e640..b753a6c246 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -73,7 +73,7 @@ var/mob/living/carbon/human/H = target var/headarmor = 0 // Target's head armor - armor_block = H.run_armor_check(affecting, "melee","","",armour_penetration) // For normal attack damage + armor_block = H.run_armor_check(affecting, "melee", null, null,armour_penetration) // For normal attack damage //If they have a hat/helmet and the user is targeting their head. if(istype(H.head, /obj/item/clothing/head) && affecting == BODY_ZONE_HEAD) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index b66ebdb001..d280c1d311 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -256,7 +256,7 @@ var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) if(!affecting) affecting = get_bodypart(BODY_ZONE_CHEST) - var/armor_block = run_armor_check(affecting, "melee","","",10) + var/armor_block = run_armor_check(affecting, "melee", null, null,10) playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) visible_message("[M] has slashed at [src]!", \ diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 643c91b95a..27e06f327f 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -1,24 +1,18 @@ -/mob/living/proc/run_armor_check(def_zone = null, attack_flag = "melee", absorb_text = null, soften_text = null, armour_penetration, penetrated_text) +/mob/living/proc/run_armor_check(def_zone = null, attack_flag = "melee", absorb_text = "Your armor absorbs the blow!", soften_text = "Your armor softens the blow!", armour_penetration, penetrated_text = "Your armor was penetrated!") var/armor = getarmor(def_zone, attack_flag) //the if "armor" check is because this is used for everything on /living, including humans if(armor && armour_penetration) armor = max(0, armor - armour_penetration) if(penetrated_text) - to_chat(src, "[penetrated_text]") - else - to_chat(src, "Your armor was penetrated!") + to_chat(src, "[penetrated_text]") else if(armor >= 100) if(absorb_text) - to_chat(src, "[absorb_text]") - else - to_chat(src, "Your armor absorbs the blow!") + to_chat(src, "[absorb_text]") else if(armor > 0) if(soften_text) - to_chat(src, "[soften_text]") - else - to_chat(src, "Your armor softens the blow!") + to_chat(src, "[soften_text]") return armor @@ -43,7 +37,7 @@ return /mob/living/bullet_act(obj/item/projectile/P, def_zone) - var/armor = run_armor_check(def_zone, P.flag, "","",P.armour_penetration) + var/armor = run_armor_check(def_zone, P.flag, null, null,P.armour_penetration) if(!P.nodamage) apply_damage(P.damage, P.damage_type, def_zone, armor) if(P.dismemberment) diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm index fba355d738..a4ec979a06 100644 --- a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm +++ b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm @@ -424,7 +424,7 @@ M.gets_drilled(K.firer) if(modifier) for(var/mob/living/L in range(1, target_turf) - K.firer - target) - var/armor = L.run_armor_check(K.def_zone, K.flag, "", "", K.armour_penetration) + var/armor = L.run_armor_check(K.def_zone, K.flag, null, null, K.armour_penetration) L.apply_damage(K.damage*modifier, K.damage_type, K.def_zone, armor) to_chat(L, "You're struck by a [K.name]!") @@ -530,7 +530,7 @@ var/kill_modifier = 1 if(K.pressure_decrease_active) kill_modifier *= K.pressure_decrease - var/armor = L.run_armor_check(K.def_zone, K.flag, "", "", K.armour_penetration) + var/armor = L.run_armor_check(K.def_zone, K.flag, null, null, K.armour_penetration) L.apply_damage(bounties_reaped[L.type]*kill_modifier, K.damage_type, K.def_zone, armor) /obj/item/borg/upgrade/modkit/bounty/proc/get_kill(mob/living/L) From fa4cf533cbafae880223b52b84c1b6c8d52262da Mon Sep 17 00:00:00 2001 From: Ghommie Date: Thu, 30 May 2019 20:20:05 +0200 Subject: [PATCH 113/370] honestly AP bullet spam is ballocks too. --- code/modules/mob/living/living_defense.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 27e06f327f..0d74094d81 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -37,7 +37,7 @@ return /mob/living/bullet_act(obj/item/projectile/P, def_zone) - var/armor = run_armor_check(def_zone, P.flag, null, null,P.armour_penetration) + var/armor = run_armor_check(def_zone, P.flag, null, null, P.armour_penetration, null) if(!P.nodamage) apply_damage(P.damage, P.damage_type, def_zone, armor) if(P.dismemberment) From 5d80fb6811eb38543c0a60edfad57b4d6a49b4d1 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 30 May 2019 15:04:45 -0400 Subject: [PATCH 114/370] Update backpack.dm --- code/game/objects/items/storage/backpack.dm | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/storage/backpack.dm b/code/game/objects/items/storage/backpack.dm index 1f1143e7ce..5fd676ee50 100644 --- a/code/game/objects/items/storage/backpack.dm +++ b/code/game/objects/items/storage/backpack.dm @@ -28,7 +28,6 @@ STR.max_w_class = WEIGHT_CLASS_NORMAL STR.max_items = 21 - /* * Backpack Types */ @@ -244,6 +243,18 @@ icon_state = "satchel-explorer" item_state = "securitypack" +/obj/item/storage/backpack/satchel/bone + name = "bone satchel" + desc = "A bone satchel fashend with watcher wings and large bones from goliath. Can be worn on the belt." + icon = 'icons/obj/mining.dmi' + icon_state = "goliath_saddle" + slot_flags = ITEM_SLOT_BACK | ITEM_SLOT_BELT + +/obj/item/storage/backpack/satchel/bone/ComponentInitialize() + . = ..() + GET_COMPONENT(STR, /datum/component/storage) + STR.max_combined_w_class = 10 + /obj/item/storage/backpack/satchel/cap name = "captain's satchel" desc = "An exclusive satchel for Nanotrasen officers." From d7fdaed1810b52c873ba3d02cbb2110cff372e16 Mon Sep 17 00:00:00 2001 From: Sishen Date: Thu, 30 May 2019 15:45:17 -0400 Subject: [PATCH 115/370] Fixes the Oldstation Tile --- _maps/RandomRuins/SpaceRuins/oldstation.dmm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/_maps/RandomRuins/SpaceRuins/oldstation.dmm b/_maps/RandomRuins/SpaceRuins/oldstation.dmm index ef36495c58..e820b06f61 100644 --- a/_maps/RandomRuins/SpaceRuins/oldstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldstation.dmm @@ -2183,9 +2183,7 @@ /obj/effect/turf_decal/tile/purple{ dir = 8 }, -/turf/open/floor/plasteel/white{ - icon_state = "whitepurple" - }, +/turf/open/floor/plasteel/white, /area/ruin/space/has_grav/ancientstation/rnd) "fU" = ( /obj/effect/decal/cleanable/dirt, From 751b9adb5390dce312b6283f90a300754d944fc6 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 30 May 2019 16:10:10 -0400 Subject: [PATCH 116/370] Update recipes.dm --- code/modules/crafting/recipes.dm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index c3858da6ad..c626c9b8c8 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -536,6 +536,14 @@ /obj/item/stack/sheet/animalhide/ashdrake = 5) category = CAT_PRIMAL +/datum/crafting_recipe/bonearmor + name = "Bone Armor" + result = /obj/item/storage/backpack/satchel/bone + time = 30 + reqs = list(/obj/item/stack/sheet/bone = 3, + /obj/item/stack/sheet/sinew = 2) + category = CAT_PRIMAL + /datum/crafting_recipe/gold_horn name = "Golden Bike Horn" result = /obj/item/bikehorn/golden From c73884aea4354b70ad79c6a43e9b2acad54fde07 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 30 May 2019 16:12:40 -0400 Subject: [PATCH 117/370] huh... --- code/modules/crafting/recipes.dm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index c626c9b8c8..fc51739511 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -395,7 +395,6 @@ reqs = list(/obj/item/paper = 5) category = CAT_MISC - /datum/crafting_recipe/flashlight_eyes name = "Flashlight Eyes" result = /obj/item/organ/eyes/robotic/flashlight @@ -536,8 +535,8 @@ /obj/item/stack/sheet/animalhide/ashdrake = 5) category = CAT_PRIMAL -/datum/crafting_recipe/bonearmor - name = "Bone Armor" +/datum/crafting_recipe/bonebag + name = "Bone Satchel" result = /obj/item/storage/backpack/satchel/bone time = 30 reqs = list(/obj/item/stack/sheet/bone = 3, From 2b1931c2177ef2a53323cd4907edad748a408fc9 Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Sat, 1 Jun 2019 00:42:40 +1200 Subject: [PATCH 118/370] Compression kit can now shrink dicks. Also gives it way more feedback. --- .../objects/items/devices/compressionkit.dm | 59 ++++++++++++++++--- 1 file changed, 50 insertions(+), 9 deletions(-) diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm index eb2f47d408..9d10d2663c 100644 --- a/code/game/objects/items/devices/compressionkit.dm +++ b/code/game/objects/items/devices/compressionkit.dm @@ -9,6 +9,15 @@ w_class = WEIGHT_CLASS_NORMAL var/charges = 5 +/obj/item/compressionkit/examine(mob/user) + ..() + to_chat(user, "It has [charges] charges left.") + +/obj/item/compressionkit/proc/sparks() + var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread + s.set_up(5, 1, get_turf(src)) + s.start() + /obj/item/compressionkit/suicide_act(mob/living/carbon/M) M.visible_message("[M] is sticking their head in [src] and turning it on! [M.p_theyre(TRUE)] going to compress their own skull!") var/obj/item/bodypart/head = M.get_bodypart("head") @@ -24,7 +33,7 @@ qdel(head) new M.gib_type(T,1,M.get_static_viruses()) M.add_splatter_floor(T) - playsound(M, 'sound/weapons/flash.ogg', 100, 1, -6) + playsound(M, 'sound/weapons/flash.ogg', 50, 1) playsound(M, 'sound/effects/splat.ogg', 50, 1) return OXYLOSS @@ -33,27 +42,59 @@ . = ..() if(!proximity || !target) return - if(istype(target, /obj/item)) - var/obj/item/O = target + else if(charges == 0) - playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 100, 1, -6) + playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 50, 1) to_chat(user, "The bluespace compression kit is out of charges! Recharge it with bluespace crystals.") return + if(istype(target, /obj/item)) + var/obj/item/O = target if(O.w_class == 1) - playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 100, 1, -6) + playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 50, 1) to_chat(user, "[target] cannot be compressed smaller!.") return if(O.GetComponent(/datum/component/storage)) to_chat(user, "You feel like compressing an item that stores other items would be counterproductive.") return if(O.w_class > 1) - O.w_class -= 1 - playsound(get_turf(src), 'sound/weapons/flash.ogg', 100, 1, -6) - charges -= 1 - to_chat(user, "You successfully compress [target]!The compressor now has [charges] charges.") + playsound(get_turf(src), 'sound/weapons/flash.ogg', 50, 1) + user.visible_message("[user] is compressing [O] with their bluespace compression kit!") + if(do_mob(user, O, 40) && charges > 0 && O.w_class > 1) + playsound(get_turf(src), 'sound/weapons/emitter2.ogg', 50, 1) + sparks() + flash_lighting_fx(3, 3, LIGHT_COLOR_CYAN) + O.w_class -= 1 + charges -= 1 + to_chat(user, "You successfully compress [target]! The compressor now has [charges] charges.") else to_chat(user, "Anomalous error. Summon a coder.") + if(istype(target, /mob/living)) + var/mob/living/victim = target + if(istype(victim, /mob/living/carbon/human)) + if(user.zone_selected == "groin") // pp smol. There's probably a smarter way to do this but im retarded. If you have a simpler method let me know. + var/list/organs = victim.getorganszone("groin") + for(var/internal_organ in organs) + if(istype(internal_organ, /obj/item/organ/genital/penis)) + var/obj/item/organ/genital/penis/O = internal_organ + playsound(get_turf(src), 'sound/weapons/flash.ogg', 50, 1) + victim.visible_message("[user] is preparing to shrink [victim]\'s [O.name] with their bluespace compression kit!") + if(do_mob(user, victim, 40) && charges > 0 && O.length > 0) + victim.visible_message("[user] has shrunk [victim]\'s [O.name]!") + playsound(get_turf(src), 'sound/weapons/emitter2.ogg', 50, 1) + sparks() + flash_lighting_fx(3, 3, LIGHT_COLOR_CYAN) + charges -= 1 + O.length -= 5 + if(O.length < 1) + victim.visible_message("[user]\'s [O.name] vanishes!") + qdel(O) // no pp for you + else + O.update_size() + O.update_appearance() + + + /obj/item/compressionkit/attackby(obj/item/I, mob/user, params) ..() if(istype(I, /obj/item/stack/ore/bluespace_crystal)) From 46123cb1fa934e7104e44052c22b014b9a6b6467 Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Sat, 1 Jun 2019 02:45:14 +1200 Subject: [PATCH 119/370] First attempt at making size change damage (doesn't work yet) --- code/_onclick/item_attack.dm | 1 + code/game/objects/items.dm | 3 +++ .../objects/items/devices/compressionkit.dm | 24 ++++++++++++++++-- icons/obj/tools.dmi | Bin 20903 -> 22240 bytes 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index d23d0905e9..ec742a8dfe 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -113,6 +113,7 @@ if(I.force) //CIT CHANGES START HERE - combatmode and resting checks var/totitemdamage = I.force + totitemdamage *= I.force_mult //Compression kit uses this if(iscarbon(user)) var/mob/living/carbon/tempcarb = user if(!tempcarb.combatmode) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 9ff1b5cf01..0765853b9c 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -109,6 +109,9 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) var/list/grind_results //A reagent list containing the reagents this item produces when ground up in a grinder - this can be an empty list to allow for reagent transferring only var/list/juice_results //A reagent list containing blah blah... but when JUICED in a grinder! + //Compression kit vars + var/force_mult = 1 + /obj/item/Initialize() materials = typelist("materials", materials) diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm index 9d10d2663c..cd26a06dde 100644 --- a/code/game/objects/items/devices/compressionkit.dm +++ b/code/game/objects/items/devices/compressionkit.dm @@ -2,16 +2,35 @@ name = "bluespace compression kit" desc = "An illegally modified BSRPED, capable of reducing the size of most items." icon = 'icons/obj/tools.dmi' - icon_state = "compression" + icon_state = "compression_c" item_state = "RPED" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' w_class = WEIGHT_CLASS_NORMAL var/charges = 5 + var/damage_multiplier = 0.2 // Changing this effects how much more or less damage a resized item will do + var/mode = 0 /obj/item/compressionkit/examine(mob/user) ..() - to_chat(user, "It has [charges] charges left.") + to_chat(user, "It has [charges] charges left. Recharge with bluespace crystals.") + to_chat(user, "Use in-hand to swap toggle compress/expand mode (expand mode not yet implemented).") + +/obj/item/compressionkit/attack_self(mob/user) + if(mode == 0) + mode = 1 + icon_state = "compression_e" + to_chat(user, "You switch the compressor to expand mode. This isn't implemented yet, so right now it wont do anything different!") + return + if(mode == 1) + mode = 0 + icon_state = "compression_c" + to_chat(user, "You switch the compressor to compress mode. Usage will now reduce the size of objects.") + return + else + mode = 0 + icon_state = "compression_c" + to_chat(user, "Some coder cocked up or an admin broke your compressor. It's been set back to compress mode..") /obj/item/compressionkit/proc/sparks() var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread @@ -64,6 +83,7 @@ sparks() flash_lighting_fx(3, 3, LIGHT_COLOR_CYAN) O.w_class -= 1 + O.force_mult -= damage_multiplier charges -= 1 to_chat(user, "You successfully compress [target]! The compressor now has [charges] charges.") else diff --git a/icons/obj/tools.dmi b/icons/obj/tools.dmi index 4f59848392ddfd48c0e9c3059db0bdb240f4a4ff..d3d25adea41a2c6e57f179f9e7f0e8edab8f1749 100644 GIT binary patch literal 22240 zcmb5W1yq$?*EV|7-AJdDB8`+ZBBHcX(%mJg!iG)bLxY5LcZ!?t?vxUc?rzwy;oSJX z-#P#HjsHFW_!(n6cHFDyyw=gqOR>KYwlv|Z0+P~?dSjipHgxYMjTdn2)jqto|as^)g;W=qpK|`(4_gT6+$zY zthjzVCj5M0?vSwykMmc$#yax2qs5>QeOh1B72<01h~q*fcx|#GyP8O}@~%?e0%g0I zShTV~=7V`b3H&&8*W9sFc^MJ{z5i7S_KVD3zw%ZHB`d$MQ+ZP zkF(QRpIL?^RmkVF3Xc|J;knw%pdgY))e5scE$$#J>+r`m-U58}Iq&Vzht9B{JGF1X z_Od?Z&*0|!eIb9OS>d`I;;WR+PB>tj{pL;R$_x={%}d4(s^*U()Ob~z&eld$qTC+K za5RO@R>{kN@MhWPv9Royer|HrR`&F=hHFdCZhM|fSKQ7{pL_Bv95nNnsr^fprwL(x z1-M!9gpZorXLf%5(kCd$Z09n`J>~u(-k5A6a5-XLTg04ze)TyG4fT{`6nO+$>72ue zWJE%?Vh;1d67}YppFVOijtM?IPxMJQ9qB5;KfIV-!T}~6GQ4z|6tSvd3QxLON!Lj} zPq59Y;EeRZf~g?tLGSZ1KjcRCJJ}==2jftt@mp3~6D7sHDl;;FFD0reIK*RzX3XMV zO`IsOx<<=(^z`tVP5+V9XB@v+Cflv=U1ZrVLK?bE`|9=!l^-L1vuaIm4|RneU)QCr zbSHT*bv1qR`V)$nV7w;yRWbbI^yxWhTnxY)S!wl8DSN4&dg|tPJ(Ah2Sq%6YB$&ts zgoCoU+-uy)mA~dW#s_7m)1PUg*VXA1Yk#n@O`b8=*AFQ91>@7?|DfPwp8FCOgl3>7 zHLhBx$aI;ExpR%+P2sn+7{=x2aj{tPS}dP#92OZ7v6L7=acN%Myp~8{dS5)rfa%AO z^P0fY5(>U^!e0Zx&&=2&fFA?qR~dZpOPQ=F6!530Cl5b4i4c>JeDCa(?Vi2fI_Mq5 zLrHCU5!*Jz`cqJ2c`^B(nM6o8M+H7UmB9D)>sLiHGiD$oBLhfFO9P-v$%1`=(d-ZN zuu+L!p7DtZ+LL>B)xtz8V8{kGIN!|VIybRc_>LE-s6c`H;TzrUC~jn*^Vf2F?iEfa zj!I0jP9qS9J|6PEo8`l15yQeEnXBSXWfwFDy6%z^p7$DKbTZ>?h-`lR$4{h!6i#rm zb`>b6uFCrdI}59Sa$62cDJkLE*w}FVd6qDM1awg`WJ}=z!e|WRZ9#R13-(xY^);g?n=_noKQ%NxrwW9RuBaz-PfJ}zIbbBnmkPXjasiTqi;B11k8 zWo?W8(=Nk85{m=O5t77)mV|uHiqEZ3?c*3;KxZKTa5`wq#>&b!fQ=nRM_Z~Q>V{3p z9@pkpQi)--M3I!7tfr?I2BX4Dh{tE3qAh0h@F+Pzv2rLu&fve>i+8+DPD*mhE+Uj% z=f8StNM1iz@vduc_IcliumPm{U^)E;PL@)*7;H~}G#&)%lFC=HVSvUT7l4 zllL3CzwVs7ahcOzbV05-fjf**N}q7K4#>=z-5<+X9ZsfI?y%%H{X?v6IO0vW0N{p) zr-zfVwxbcdTV`{1S^j&*R}wzNdKHJ%GME&oaTdun0x(d_+p*LtBqtTO!5q^z{i3yd- zghti~4R3Cu0PkuXU^n!h;Bs3G6C^ubANL%0Rj7=4Mqcq6f%X=^O|a6WX85&CWlPi* z36g*C8)i$XqM|}dPA*!Kt!1N4gZ4{D%Wo=={h&wE<3P`%^Jv-W^r&_6nHG)7E$4P9 z)^=<&|2fwCmDN>|d?}dMjnNbmAQk?$t9Q=Ca)gzI7f>DAb-G@QRoP0HA`IvtN+OXe zg$|oml4zG{4mfMDTR6@MPe54~E&we~V@x zjg_@J^OHrSW69i^HZb2r_8@!NytM-3*Td&@=FZ!Ah(~qb1>OATvdK99fo+L39*qEwfo4f<7MLR$Mji#0x`3=S& z1ysqr*?1^@{1`$Gd^H|`)o;stMvN%z;SJsY0(x@s4*4NSd_yp8vKh z2SvL;bHKg2iPSsOf04jW`8@~3CCOx)B!DSuV7<4op5DeS9=8`6C{S;)R4-D&En5~v zxkyx6tsw@DXH4%s?%IxkdXWrzZ=jC&$R2-|dSRj%&;!T{FMo*1k_dz{%SlUfkfh=P zqC~XG;d{M-S$Cs2*e2ftXGM|Bm^?FUe+N9hB`>3>0f33~OVGzHj|8aj00ssI=$z$P zD)(lD+i;+hz!OwvM)&S+zOR*1&xw&bk-r-v7nA){7HI|Kn-DcHru7-bNe8v{Rlu$& z`R@o???WCvD)r|9c*uJ=V*?I7FX$R zv6W_I@MFNm^#B2jgpAC>>F!tI`-jQnege#?eL&BkY4wPXp8uR>E6oXHDYP}GgcvBU zX=}5o>gm~?ivjxc>01w#>jjxVi>c%3%oBQV)@{v+=cc{sPVzy(O?YMhwQ_5lcG9Fm zX4(M~xatW;v;UaM5m8t<;R3fm^LkbpSlmqU!r>Eab)*?&B zBf`Q0^7Gkh$~BACR4e9v>sUGiXn^xoh*)#fo42Mf-TY-GCv(L3=M3_gBNOVRWW{rQm-S~ zg4UY#?h&7jTY$nXT|9JPkk!0z7UVCNMJYkR-i7 zlmHi{p7c4kyjU-itIrcuS=Xn%N1+6B7*ej1TY)?v#1RMT0HC{ff%rQ#G&DSnzRb{z zM2KpP?DO3!>*g;ZlLk3Vs|RvCnLkrK>n{v&OVAj_T{^&kf&7fH^AmC+IDR~&eTz{s zki?<#8sJ8R`CR(b03bxlW=i}AV)s8$=ih*&DFRI5yp@CL_5skhuw=DDcis6Kp((2u z@6s7CvqWV`+WykTQZ!~hG_*=ZS3zJ;*40k%2NU@}FPfS&7~(%9HjzjP{vh9hT~FL; zus;GfInfmEiw3(7FQ8|s#VYb7Bp6HO?|4D~E||=^|8&Jj1N&l7b8~zU7H&>#>TAV} z9D>Hzf~v_$s!u-#D0e+}e<>E*#QxHv@uESeRLd3$=C@7F>@kXessrj1V9htQ0+Ar4Q5g{utkRd!w$&#&3B3s-m?p6}J{MIcZ zTfFDn;M#T|)uY7;(}kJ4_w{1Q{`ROvA>#Hbh;*%?b1YbMkl-pMvXu{aY`wA-Ruh8%h@G!7kf zJwj&y6@7U0G3zO18G2D_W+07o89Fv_uIZ%$b~Y*@A-Lh79_RDt&p<1L4QRCQK8k8~ zIqxztcCX%3e*jEc90uw{-l3=PUIR=cwj>sZTO@3xH*_wC-lc_w%eYZ`Ts@PDuNoF7 zDXvr7Dg{!bat`$%GQUAfzztIcsq=FxJTVZ+e&>UK8i)S-1#OJ~nrjPW5_uJsgh!;L z4_u!rJV?PZT+K5eFfiJie2Ogx#7E4~&Ym7!aT;ExjyqnBagQ>Iv8GHiz?cYJxZYlQ zkZ?Q}6eM%5qoJgv{K23^!^g*Gc6-`=7{!7pD_3!K1YKaiohs4K5Bbxh`JUVdUc9}% z{lnNsAgFNip>2_N%xG}5Uk`9ZfGqu)tLFnaMGLs1ITfn8CMEy}dWCMTbI9@E{w|Ow zVMu8Q>Tw0jW%E)hq=i;f7UnFLf@QH_K#20P-Res?>e$DJCRet%zk+tv=2GVeK9YL& zxB7ODJyaGD%wt__r_0QNo++s}i*<0>%V0P-%!+4f$iU;!=)}ZcR8&+al5aG${;UtP zv_S0)1Zb!S(FU=(3aEj!7*8Z6AKWI3)fKs*pKV}!q8NBDnZYL&zNVzmpabx;?T*~Z zX=<(>atex&j0^_KdpNIY_l)`DKTOZ?`2Yr&%a!rODLH@JFBb=qgKn#4x4V))F7-oj z@R$}_0aFpgHE#T)_`rCp-RzoesS}jp3$G1r*4EZ|_9;(}S9|z@sHCKRpf!d?;ploZ zeeTtL^dpS#l1fwG*FSnJcIDo?$}G-RHMzRa!P0qvQO_&A`P!m`C^}9wY3%^X%3jLu zK+u7?1+Z~&zTX^7C{>?cTx^U}Q&A260r#w+l@$}O%LR{+kdUok_fHO31XhW7(7|r+ z4(0L-B@h0YnD7J~1iodyiuLz|-}dI-+}u#><*Pm+1cwXu&gC;Rh-|21LE)SL04D?a z_|{KtXN>E7+2Fg%oCRI>t!4hVIO|N8WRp3?H9 zpz}O{>%UR(dn@YL(1&{0!nPB_WFf~qEOS)A8ITp~nw1-wh2MJ3OIpXgNy-p2YfLC1vK@yU z0Ejw*z#2-9%NwWuDf&SMKoCpjZtE+yR6E0$K7e1lq`+)7&MvsE4&N^4+Zu8 z``r3eGmd57vr@WWys0NF>3Qe%POfm zutR+FDK^i4OReTwPxO0Nsv?qFu!%S#KsauoRK#(3%l=Q}2hC5*$VJ6Pqppbhm*PSm#rgtYhhK66OfwZY)Xq=2 zxi^PdSXm#7i#O@+RvFU^u1$=8i7oC!tdIB~O-XvY6?ngPiXU6uZHY^dG}P5yZnme! z&d!pZ+}!LKU-T_SV4$JR3f!6wUr`%wE-o(6IcK$%Z#_Z1bJJ(xu)%T$kPFn=OFmQu zfi1m;K*W(zP(Y3wosxnJP&~I%t@%5j53Bg|=bvAbw+n6rtv_1GkVavsdT8Kk-Cb67 z-{V3L!^2v#&#zzXi?j_T3k}3`>GvnPMA2r7uik?;qv#q%-v0WtTLA$BH}^;m?8Ao- zef!f>Q;)g0h7Wuu0)!t`WjatyWm4D@25HnngM%;8GIl2l*lndxXddx%m2i8EkYB@Q z&fW?GOU`OcSsVNAlo-d!Z?!7*fffeE3YuG)C#ZfB&8+{4s0x6moOX<%@!m zSX(PRnUBETK3E35YOYqcH)B>u>KlajHcuJ!df!u@KF^FqQ|bg zrKMqlwr$kXz%)n>6$O~uQp8HrP%^JBA{ekDjRHVNvDn$&6q@~SNng(~A&EgwQUDf>jgPLJWd4+e>x~`%gwOFQL()TRd&E<}84a9zXr0R@pVw-G{hT1B zXk{?%;=Vka(VP3T?Fj%1vz>l1h{fDlNYQ+(a$Td-eSxQ#oN?nTI)N2+JiYl6yZb)< z{+5k|n)=x%E>TfxMn*;eT3`R-m(Y&E{CH1sWSh6WJ!d?}2b1@7;TWP%zHC2}wtH4v ze2D_G3ZVH|qfmXO$x{dg01FB`pFOb{PWiezJ3Ajj<4JAo0>ABh1#V1eK=9US_F6Eh24HF2C zy4*r0Sbd)qNv<#2e7|^6%e!!gSisXkj`+p;FuZTz@VX$x{!0j?EAS9HG_%$`9qgsJa;34$ni|@^mWxt0;0oo`M8HaXj1(RRO7_oMR5z^_* z;P+8Ev9QQkRum_@bSSSKJ(6hG;ut3q-yPgbe(377@)s5^ARr(B0763gW;Yu{$@5Kp zeSN7#2+!Jv<-5w}`53ax$a6Hn>+_yY0zO(a$`(V}3hIm#;iz~jKWrvC97@B&E$sprMNx;A!|yxQuEqG)W)czb($1cr{N);7mVYZ8AiFCqc( zjm6-5vAGEc{ML>Iyej&4PMiQ3a@zW#421(P+RF4B%p?(Ku@i7q_x;~p=U5fm>u)WY*o!~R9TEF9m_4Z1NlImUz1gE&OtE=zJ<$?W$*HwKwQS*Uiu+?d}WCs7O z{^S)3*thU!BEIBWrN|jB$R^vO?O3({99y3ET{T1;TUy)L@OhS54QZ2>Qrdb9Z832B zua?o=SZ00(+>NHo^nak?knvCm;RA{((CiN0k~>p=OXrEju3w8Er8pHr-t!XFD1{5T zBTohRUpbCC2aUN@H>-Mg4r1Kn8I(EP&Sg8^LGW)JOxZ>!88M95^t!N)ZkX$nNQ}sp zo^f)b0b}9iRp%d4G)^ta?Vr6U)g9@M3%~#8(KFOj^YX+Nb*DaMqqw)^FODwH*T>n5 zi|ZhQki|O$ACM^E!utM$J|67%wGv-5QM2&Pd<13>5`A8-4_W*wG1J-&yE&& z^?s|cIoBaD=)Fdb(X)+@lK3x-t}GYO%%ZojRJd-x zqXa;9Coh-2Nc_+uWri;6G*!y^imTR`hx;N1rPuqI%>oK{#IuV>2@6;aHNc-wt9WH( z%ZG=KPRg083?Lw`_CyNZyi5j1)w0Riy`{g(Q~%q zcvdP(=>z@C_RKOtw)g*WzyD4Pb#OwqVsi5GlJu=z`(jw|=?j41G4`yF;u9q3fF7A;yIOl%Ks{R?bP6*3FEW zQoemNiz28z{~FOT)%wim8m&um(?mNmEe5nJ%)wbsLd#tb3|SYTrI3stsKD=~sU{9^b?9?Hu)pXqD(dZ?p5DFb-XwuQ|FTqG z?70#rkS8ZBESxx(F6zN$V@pr0kv@8QRu2nv)TZ!gJdVUMm$BZH&_y8#!>kEK+OvUQ zbdy0||CFkaX=WnSH6+F0Ir~1Hm`U`4sUeT>lcqo%uRF3=QE_o}osZ}9Z(1~LMS5EOXNQbpN{Br@4VMCx8Ht%kSk|Ec>Y*Io8bca$bMGZeRYiFBSprhOE2MIi3M<9H?rM5KyKK=chr4gYaszsO0;qPlN6(L$|jEufF#s@Q%9hv66 z%Hj@Ax3c|qZQA850SA?Wf{O5qQ36H;SJvUlA&SxK)je)XWI*1hVrDH#&EIX#hnKp- za)b_$($IM1v9Go1;5KvhLLuGJ^%|3M$t-UD8tW;o*L$ku;9P}-tehNFaBmcLUJH3c zx0joqk}{aXH7*W3<1Ur;*9_fRG4YQUlwAnR&cWQcB+O&icGV!iDPAxTR0&)~gI~W}LH{Xs~yav9$`_f&r7O zlL77_gI!DrFeChliHAboIuY;rb7Z_0s+3C%C)i5Tffx0LTwula1|9lCw{{vDQH*#6 zv+9$swQ(s+R7CZPV4ot3ciF%Occ)4_5_wIXu20Ot*dIik&il$(@jD+{TwL6z?#$~g-^{wYY`#f9%Pm?or-6#FDql(+cabefKh02m0&JOF5*qjBHvOFm zjbek&V0v#W=Y#HW>L<^h`O9QVorY6?S`8OEV_RM2rICt+(u0Mq&)~L)m5oj((DA@Tj;i`1qQ%_$~RCLZr8TrQW z1sJdD?v?{uD~vmM?0-K;D80VOEL%hVM&CSWhB(|smn`YM-!tkb*<={)!I{WY>iB6r z!Sm(JN}4GpDyntf=N=*d=1pZ{PY=D%JR=;4iit6aDSKC#xIK}N0R`e?fcIha-ycm3e-ct4Dn0)E{vxKCYLJ2~$+C#0k1k&RZ9q^qhw|4&}E zr*fLuQ>%d4)q;X27QYJAeoW-6B-`B|jxvVPOa5Vm$Mf7RYpJUn^<5kri4InGA9Ti? zu15c!Vq`sA#US>_F#azsKma`tXlGA%Jw9UquJmjbpr^Z+7Zwz>c7>AHtyWAPB76M7 zy0s_I`|~-!@BC(D_eCBzSEH44go=y|vJm~sZh4DEK()ic0saJed+kMs1ZGdiJ@GxN11M<#0;dSoUkQ;202G zUdDr~bPL}tuZ^|rH8nBeaoE#7bKISq0qK#6iOF7>BYx&@0${BX=ecZ7uR8mqY{4BL z`8P`D@7~2feB}4Mu-jW`An%@@c`3P`O!)9#A)aHoY^1MGx?iXYOcHYE_7L4C-ThAS zm`l1Q9>2fQ`m!2dzg1fR&vn!ITM9D z7@B0La3s0gshd($1usEz_weYU^_Vwy8lIje?>KBE@xZ5#NEP+S%FTV{gWo!Sx*3hL zM6fxMjU{Dn^`vaEK76;vad|Tc{U;CZNy{y9U|=9wICpaJsXfenis(%1iPO=NbOns) zu0qvw=hV9VA{O+MJxKR2FnORxf~W20p#=x7uw%90+Dz6BcYm5FB)!F)ot;y%ByDSz z4M#rqZCCXG&{u>SK6kb6l{xQYFqb{;#}0|XzJzMuo#aqY5!46KL4uby!Uv@ApaxXE z7-*|4wp^>F1g@7Jd5;+4C2XMzZ{Lp2jJD>!4*#b;s?9$-IXM(`I{$dTrNNzn1f`fV z9c!;yF`)JObhGaF9e8@J6Nm=md9-;WJ$n0=7k2t#E`7wyE!NOeF!S_N((5{?=Ck?n_jZB^dq-q{{OTOnvEC zUdJmeAUQ(@-YO{2Hq)R;5=h=2`M1^4dtbFJ!{cov?ZPEl9);ynsUEz7l=d(+Vni`{ z*=tR05+GcHnsdpZ+VBk>z+_9;2FW#UFQ z!R?gXiNK{!h4P<=hjZ)_(%5?io-l0aNO5e~NOJ5?LD3RP z*j>r8XY_HA%Xz6alJMKb-(=A2v;E_H(Az6`52YR4_fwHOa7&F<@*I2x%@5NXQkqFY z147v%t2*IQ=k10q{raVD(MJr!C0~8f_>*h9rrc+}{}FDg-HT2hW@cHT7hP?C$GvS> z=Zq#D8`^p)sm*L~y?_4DgesW9EY-B-8&0Ejx8~H)(2zPT%jXvOWdl=Wsi-d)wW80| ziTXGpyzBhr+q{v+cuj)$+qeIO(K__1T!O8eY;n&@(1DQ$?YoTS0Jh5eyVai48{-I% zy8D&^Q6Ro=_cdj%6~GsqECcD$o+`Ei@tI5Eu{;u+$&-jK^T8 zQw@IFlPWX1_BiaboJR^VpRPK@^A^$2c>~PAu0%TqmqKZEXn)PZWp6+;;FC$s3Jg9Q zGSUrRik8^ceJmpK{qy!Q`|bXFNw7{Q1@5EixozzA2h`N23wGp;NWx$Ul8`1WL)!(e zP_Id04NJ+zV=OXK!-8qUQ*4;+=T~$2-f~ZAbx(V~yM84D&km@@K3{}IQNZ&;fXlzb z$^W|m@_#=>RFSmpC~sM|7+lU_0b3d{LJ5yh{-^(d+h9L@nAC37?aB~=yym?nsn-QFkE&4@XgH0+%p0THoroTqQp7^pd$$7+&341N~}v?-HL{s z5JpLCD|}caMv7x+eKuXEoWZcCCj5+motwq~5Wn@qXH^YU9?WoP)k((5JHA>yOwYBp zm3M^XZ(ZlQck4YyzdS;ToX7CGOZ_MM!_!Gi*PeTxhn;UqD7f2@Gc?iW&=E%GrfB#b z-3F|5r<;S)1l|r-dO6WMTHp&->M$6SNpBP>mM9F}O!JIDf_~tQccht8(Gsx*VU7WGh@+JVy;L-nLI&)bYC0SWYmQ&7H8Gx}{y$EX(U2j%v z?I5xD!ITG?Oo%NY;!Vz3=p7 zNQ;;j#|*r#56-yDaZ_NQD>5t?gQVoDtmmK1Ro$X8vifmCId!Wkerf&^)xhN;lD^#W zzO7fTWS~K4Si4%10s2FmO}GoyOxndh^@3z~4)t0vt*I|S;B3~;`|HBnpqYHI7BWA4 zXt@86ieuICm9OXm3_zj~H%?uh)aPp^z*T?|z&x9t3~|QsO~jsi(NQvXpGv-TxafEJ zN7Q#-Z>fWTtzB0ZLdGr`xAtG(lQgF&D158KIiEJP`W_6K8!;Im+vPJWy$hGi_%V($5Wk(YX*sOdF(|OIU8M?k z6N=~u=j`zevashxiE%r_LeTEn3u08Dpr}YjBkllZWmhFa+L|;UeRO^v7#T_6ps^mWv*7;sV$V~nx{ z9|?w`i?bq$db@pwgaXLUDukbbj2A1bN_zooo^B_V-NIFvkm#|Ogo*Icfu&TAzvd7V zWIW*qcuq%c5CK}9Nra7{t3J2?wo2W~;s*&MLp}c4TlxRJu<<|SzyA+%$p2Yt=2nhJ z!-3QPE#4A6;C|z9-4TE||~b>MJwJTg~;JW#-`xp`#Op0l`R2Nowonwfq6yL(?g^e19=cYzca zGU5U<-P2^E1TyR7`~(~Q+?sU1JT7^4y}>$@E`+Y&aO0y4##(|_2!KvNWpZRBO#HV_ zkFC_!9d9a1Dgh};Ae@RJkNdeQlSz?ym4$Q*uR^!AC?f&uI=Kje-#R%jfyIF1rr0la zEhM1qC#}}Bx(k6XY%*h0RL%4;Wc=^|?(X?iOnS!uFD?M(e`_ay7;>awyc^4Gkfc9%Gz@bK;~yR3thUI_WC zC@Bee9F#R=sp{zX?d-50FggX?mFjAJ+?~?M-+r+5)Tfe7q-jo{HCb8)pOAVO8P8dT z5CXe&pK;yX;?SoTteUX`SMYn+o1buUN`rj>TBoN8TJFA7b{uQFz#SaSk1idN0CmkT z8I2|R1#oq5b|1?D6?~|Z$c*rlP%TIL1%kP00)F?VNJ3x{=_>Nw*UzUvqLOjGB}n?& z>gdO6XV&^RXcZ&yu)Aml#l5DsHqntKRa&SIn>>)~>RN;8l{>j#4HcA}5xz?AS6Q!l zef<;_9Qla&B@Msxnmm|LZyOmQ0OJhkoBZTr=1w4hL}oPJ5`juX)0h3bKSX-&ZAUri z#F$B2$jE2)TPpRmcEM?TEOG1fcsQjl=+U!9Ql)>_Tu74WBr=>PZtFA{5n?3TB*^^< zd#vHlYw%oOROD*?FxyB{PoUj-FF-SD@98;_|7UpT{zQSv#zqGTu${^YEqlORkLp`e z#W99td!1B*9K_^Yq()$8(3R#NOv0ERnVz0LMcgyqQyz5wH-?}}C4|fOm>|Vm z<78m)>X@X0{n{KvkcYDfH|{wSp?;c8_VFmR?2Vqje)vOHWOC9NG#l1b+XrW!W&@=% z)`B^WTn$c{fE{P=yc_uUP}mVQ5E|lu^cOY^njoXjt7PnD8rd}ogENK^?9Rw8CaN;qa;@eB1}e?1V4#P(&{*2PL}dk8@O zoj!iyi}nAfj{cu;@NW^#e*}>V{y%TcvufUb-`ex~iSaj&ExJ;w&T23<|F)r|E{-*i z#0b_H*WcM6;z?=yv+p65?HW^fErF}M>$7QQt79cK!VJ_tJQ;K+n2t3l%BDM^y-7kf z%5NTsCjRU7C-MJ4MMR$w+@6Rs5p=JU z|F77h&bC9T{te4U^t3MVr0ZECv?Whm;*N`p^Ld8lcoJy6x|Jq@9p|=&-@m#UdPR3q z`2fQ4!Y{0cItcQOYd<6Kn+S|Ls2%yH%dAs(Q1fX2pj)m>ujiT_Eg*rkqv#(1J(K8x z6B)ckPrz9&5p!Dict?lZe;6Q^_|0%l3^U%aQ!J6Qh4uv0x>&w5Eh{NmyRfyjB_b!c zJV^!RjEW~|;&1jozSPuwk=$(7M_hb5N(o_1y*S(ctE{pwF>Fcu4yG`>Yy-lMk{z4- zO0+B6J4cfgJRU*5u+3)3Lw|Q8^uY5HrP^CcUeujUuJbgFN-(NctPAvog zH+jt=kUMS@!{gAI%kfYvD{#fr#Fy9C13mr>%UFMY+Su55bRh~yfT>Jvn&^&*rE4>} zZ_@Ql=OA=|@`>)#?1fkW!o~&YHGUdfN&+1!OxZ^#{fJamzf>}X-|-2MQD0AW>~eks zgTcsPiz2g07q?a(u}6_i=Y?pXwrtJ1xBsn=_fOC9fU{U@l5rI(#U-6)uey?o3PLcS zmZ0D4MG57~F*#WMGeLVGzMyn5w|YHx@Mcfj+Z*ggApxj#%?dx?o#t0lgA;~n7Qfmp z)jX)pEJKozkSG8}sI@9w2`E5XDjLT|X&;jPWSb2nJ|M}o6PWW$# zdA>lI{Dw%gu*VFTKn5nJi~@vG z431l|^XKXNeBO>8#m$IENYbM=Z{I8;yW1lDYUU#uiF8-N#@qUi3iJ@aW}{W0NqxQ^ zs

r9On&U!WYnUat4xgtxa|ueRk9W(9aZK#0w|6cs~>?f|%zOz(M2AQ<9hb4m!Xk zGw*r6*D-bkON6ow=m3U#9*XWCT%P^Kx{G|eN3YVi=um?r(RBUItqZxUipa!l#wX^R zyqIhhIQ4ActenusMzL6&XV0G1A%6eX0rR8Ze{F#o((s^?5?9}|=L+B510K3nFB$bm z^+|IxhzFm*IU-I5^DL1pJ37GLVmqae4{*eND?Jt6BFU&9W?PZkB*bioxn1M`6{UA@ zu(R_k$ zcDB#)%Bw1Y8*%60;Pm3v>H^q|z?zl?w9`cG@e#MvW0r9+u%fy>~x02DfygRoes7tb?ZLop9)nXRq}6t`3x}vxw zq$qE`{fc+isyw`BO>zCQfg`AjjyNoD)Fhv-7+`ko(UwZu&G59HS*0xLyLjZgap~2z zVu~QujeJw~sS&V>D4=jgZU+~oYdiapl0pUmts@f?bETa@CR;~N>5I;h0of}l!WHsT z6TWIko*PidDkRvf(oS7+e6A_pag+*8gzp_|ep~r4NuLOI-<)=`rs!>4Y;1?v`LFlA zeSOA1s;Y>HiTywjt!-#|ydA zV~_Qs3J!Zw>{xg~D=e((LBvgOvQq`Sr^Rf$YeT6>7jo{^RHSKrpgtC8RQUMypN_NI zK0X{e^Ce4FK4BM>P0y7l#AB0SVnH+W+|b;S7m|Vm941>; zw6)#CDjX0&f{_|Lrql;(JaW=!ks7?e7r&f0b-ERACKtP0jg)Mko9kJ-Q~2#1_O%|T zW(>tL^0K|N4{N@zlO^;BZtI9V8kpj+P;Z{(E6N|0m>7};K>)yV6}#%sa{6{l4X1>h z{Ct$nRr{%Q*d3(tc@qI3b-*uQaoh3BWiaMuFNo3 ziwGC#`l^hY1QpdzEkae2vbw1S<*?;m0%&dV0pL%O6%U)7q>n`Dw_2zGTwDoYn2~gU zw?}`15|LD2J``_zbFn|u3=sv4lwHL(WP4n!kMW=10Tu51IwkrIWHzwhD?MqLlUvuH z&M2Y4y@5r|M(>D7NGpIgzwpILH!|70U?Qb0app#N;o@v=AaVxo1+M=nvK5HL(`AO~ z)uQa|cv4h=6-?*nADga%vFxY|2P%H2C8_6vf?0Wa-BODGFQ+*BFHSMNTAIYi!pY8# z-5@DL1%1wYPW|J@_{3DXN~rU@YkleaX2`Ca&po*WG2(DhP3|f(tW(u<%Z*lJkE=F8@iNVCWGA#4 zEJbjO<^lHwt3qynbd*5{PBl8T|Zae#&Jj9+}un?w9|>ZhNItgcrCRe<$>f2JO|1vE63;N=JIx= z---emu7_02EG)BUOR>#A&+XSYW8Smk7i1No`+PAL@ED5lDecKqIs|wOZ!n;a<)s)I zx^3+#B%}J-LhVyKEj4=N$W`h$7_F0c*LQZ2_m|^0d5%OHE8yRsTOQ! zu%vfZ0=cwP)AR(WzwabyCxt!&AlDZBtbI*z6{{j)?JNP(uXs?8EMOY3h}m6WqF=Cd z7H*VyR-^+x%Pn=BAG;wr%VZMDb|DZyBgChD5dhxU8V10N7{XD0-9coe2E83k{U1Ns zhsPaHogT{@VtXa$@~^eu9OI9X?`T7|a}yNHk}Wq0!&o4etyDgOQ}|miX_Km{xJ9|4 zha5Aecc@RQO$ET+)%izD75f1f3#2&SFC;WH_WWRBZbhJ*#5*V;&_rIlK)?_@Y!XOK z_u1a^deDsq_RxLVV)VDY3Zel1T=%@z+?C9ru{rM{g1-xrtX|YywZs+Oi|+cQog)BG z;v`=lvjp%PD|2;sb;V&n3JbqdFLHK*Vk2C!fv#$*j3x%eLHXjJPQJ|35+VuLEyA_G zw-k6R1}Rd6KOz%#9Q=4Ad6{$6OJnR^+0guJTYiXqRHfadM&{+?YsQ3&vtWt1@TH*< zr%m+1<*L}|(SMrSlD^lz6+fpVsZ z6QupFbxvafhzx-b=gkE2Cc-~k#Pq2;ipA=(9cOLR?;75o=`YBi2(Vr+AlV&E!8JvJ zRjM==cP`J)gG$-)!)Ev`)`w?WWoF=gzgicGRWC3Q^G~EC7~+%7H2RnJ;?E}tiJ0f- zB{`R8RLKrYJ_q44ofQp7x9OX!2J6D14;8S&CCJWP1b@FuA8nhu^Y7?!7Vz;Fe)+zT z+7~3agb&OQmsa`1-C*Yr_X0}w z>SC^sItY}y-(sMnBLkXcdQXeXI8i>G4o1+3jI*3$iFa4pDPT_ibKUVq^hA^E>DIuW zc%eUd4N`N4JoAW63yV_91!iQr+G9vMM1{hk0RgYzp)NaDn4W`19rm>ej3BtsCSQDF zD_1}JdtjR2HNf|EoEhYd8;yp!mQ0p|$Q>VVu_uLTK*b?8S0lO=`w)!ekpUyVqJ(~J zJNnAsY1rbM7ye)=KAi74|0WzLqH{F|h@H?9)Ny1z^$YmV{vQ72NkNr6SQdpk^wL`j zz3bUMag${0*uM@V%-Dg@zqfH70tt4k-phOsukLY)?S^LX+8m}|1=UpTZPpP0;7(R2 zE?_{zQj_$(E%K8&=}*&4et(_j2@djy7u$u?xLzyi)e|7y0`2xp1ganDql z9zt-}Hin5$j{^up&cusxsqPKpBe;TX6eRWvciG{n%N*LPB-F+C;)eA)`1ae5f{@6^ zTllzxcj(WW5mR}a(6g>FA@DBGKn!yId5-SRK<#uDtmj+d1jPkQ=N@9J88?&vx+1@< zc#9;UYH3=mstRvWxJyWWDk>F%-2>*IH+?Y@DIFXVMQuo(1s#4iKIhvG&2!|#ej@C} zapHnc^~(&b^Z~3B`P`Da{;aFTrfnRoQ>)xBZMh%rEB;qE6-`XD)et|>L5*-C!ZyWs zS;S=oKc&tRqh^uE2$f5p^R@fM(}Rwn$G}qTL_Xd{Pl?{_0e{=HWsM9R4@FK`F`d)H z6K;7hyZrN{>IMWtD>$%T0H9mNh7&PQlJtwad{(1 zMLAurHV%#=iB(zP^Yn}xSRzCeyOeMB- zC>X8f`#%I`??vLnE4RL)>a|s2`qk`EZs3+NVK*HiQB^$3o$)0+iX%mm#>Ap-Z;It( zwhK{WB+B%vs5opP&8n*JhJ$`O9e4kZQtOUwIhZrFDnDLoEzlI;vdqFr%XONj+{DrUe!KmhrN`j#piC zIlNZ3%{w-*)>t~nmhKgEz2r~8aYx4Q?hw<(t=DZvFy568sX~bge}7b~k0xdLNgH&v zWjy`fmCm_L0NTJd?|1~c#qXtb*l!7lnzVESWukYq^`_UNXK#BSs6L^Xr5+CY*@A7l9i*4N+Pa>poVvO1tYIXCZw)Il5bIx6Xhhrh4}a(S zWWE{mC*T7J?>gaBdmYT789!CU)cX}v_g#7#d!Bba1{LtB z_{Def|1gxiDpWTC1vLN^q=9J)DxGu=J~zi202EY=q5yX{9lWvot)pX4%7LI)%AMUl z4%7NR7mxF!>q@t1yWIGwO(BRQ+G@=~gOH+azl0LokL>Ww7+pBBzM9_p`)zw5J8~F!dN&E&7pr%lq5q678_u5_MgYC!4@E?s2>^= z!@jXN%niWwl{)Jv@N8Uf#{6{o>ekx9u$ZVp25{Q#uESLYu3SO16aAj#lzmR_;@tY6jJD0B2iJ1FvySUs$*JetGu(kr5P6K;F>+;V_bpo zzZiwtOkL__6LWC06Kg4^PqJanNSap}7O^ixd|#~Ie0av5R9VW@OP89m4ixCEwh7>v)gZh!?ozQzWlH$hNF_ad}0vpOoQ={i}JVHy6fg6>3Pxz=R)w#{C9S$OE|m>jG-^@WFhYJ+J3mf-J9%_=#Qz5UMq z9+Q3p!CD!0em#n)y2FKoi2;$6QjwnQZ#|dIRMS(nDsR}{;#{aZtK%v_RuXZ$NX3)M zuyH*xab*uk>!CRxKfTi-z4M9#cwsuftlC?b`Wul4IKzax^ z-#2=J`N!!HS1 zVR6gj!v&!S)q%$7c4Uw!m}v{LNTfm-IDrcO{z!@9<6H|@Lz-7>Z!ui%^UumKT`vxA zEI;(hwOSsDZn0lqt9!#?WdO^pp8Te#AN`owA#h6@TtNz3IS)|QNtuB#JGZ)kk#5t9OZ<Y2XG zpipIPwxI0d9}e;-f3eSo??4%W7uZvcTTx zk&vjnce#U9u@6W`$AiP-|I5NZd^ilMGvoDu`x1Jq7B<(6`H^=;0F#z*p8f{?+R;Vu zuf6gQ=^XrvnLfPo#1OALUrctaL2Co*eCgt7RYuMttB5Zx23jPesl% zw8gj2c3NA>8Qhg(hIFFcI;Uz4xmWOs-+qt&QFmVdbG`LLwJxSZ$F=S1$!5QvS>t zC08=Q@4N5**|Dp7$OC9f(V_H^s!uEqB{Tj%pYeD)?-E>L#py(j8|!{OeM>_^Pw2W3 ze8z)wQRZW}jocOs^iFFs4<{Dr{`1tX~7;QX8u>9g# z(qJ#F9NDLU5bAy|+n28^usI~G<3vtEvrv)LZdo))L~5h+h2RYKwOqo-X^&v-oC!&5BWI8 zDV1*@zIVSQ{AU)Wqx!UXag@}=w?(&*`y-yL658x!;6Gd_)qK;1#l_6f_cSH=d|#$= z!*SqSeyXx}mGr&Md#t4?b9C69*g>ut(4{_J`9#>6iDxCsytOYie8^`J-9vJjB#6)| z-6_7yVnGQ^UcTRj#E~xV{7^Jb=|v95_+|qREaqLsET4@{MmhXMz&~XxMMsY-)ezOi zhvfJj@xkgyQab2SG2aXK@J!9G3W(-nG6ke*@m-nUYtW^ z6M7E;T#tav7KKhckZUHk+FEHke9>PvsH`Gc0|+7$D2Is0E6+h&Q?c=brS5?s*RIOP zjh=ja=rbH%i7VebbqK%+PJgU8uu12`xV~6Q3o}BiqL!Adb}mhYYSh;sq;~bW#wSoS z#<3j-=#?BWOhk&37Q2k9s_>wKD`$-yNHIf|x0fcjL|Eg#eFox8F{Y`1$*sP zwb0X2WeLagTZS_al2|(3O=SyJR8Oncu@U{~VT*32kBOb*`ibfxW`WnLe|F=SwX8@y z7))3alfXWNX8gUtNj=Go%hu|ZpfLzqq$Jfo^#lwr?_sHj{HN^<{eQ__JzPmxGo0aQ z6Zm?=vv4WCi%&SJ*kj93G%~EE^=*H=($>3(fu=*xF2xA2eHt2jt`^pO^m|4OFY&w@ zkA2=)gye36;5aX*47KheYtPkdwVsoaUQRO_ug)#)8T%(Ga-d&8he8{4LcGp zek15JX{}d$h13|g*>sJr1x*g+y_p!9e6`#28?$t`YXuj{Q7rbwLMGxvD!=HdV~w(J zZ-K9 zcar18i4b@bS%l02`KS%&YOI`-{A2vEgQ-7`WfB)CBq(1!-PV@~D--ev4zyNjZY+L^ zh=n=aDZp=b+GU_$mooRQ4aeJd8l$Aa=a_#zQeBrmc52n^U&bqVcF&)A_7*pKY0%TY zb97&+VLVac&K~c@>SXVucP~Gd>_VMY8oHAO(>G1qOhuiclnS_LuTM{>hqTN}V>GB2 zSoLMn8^xJ>P)bhFyL5bGUE$dB!W9=;sLP!0wex{VA|;NDz}m|G@T{G#Z+)IkonMeX zl%I41cG)_)qW=~pQai3)QGQKl_Zub)9cFRtjGewyy1AQuPSFnzj~0r$=(mj_#O^nH zcRgPikE!t*L0?BKF{a0Dfv})AuC$O|nWSsKHowJYE1&yf#-0lpO$vNPy?a4@oOJ$X z`}0q?r2Xio8(PA`Wz@BNH}rmA0t{l3fA##zy4u2KfO%27$AAo1+f>R-#>Uf2d6*AW z=9~)^x`+G(+S=N##I`d*EBiEH=cD@xu?tf$X69$^+qypd653+ng$qG-VhhYaInj+XxvCo)igC?iJVpF1$-Iz$ z?sYbA?S#J>88PMzpS-=uDYFIXXO9dl1^d6g(a}&snR9V-OQTSzQ`y0b$tG04JwELZ z^JNXhCNo#p^@D2|^kp#L22-=t)flU`sSDPva;>h|!@uK0m#pB2@%(i8Z0@-L(Q8jb z+TZIz7vJz+0XP@YF8UKbO(vt{cA{LzR^2d47qOx-QxA$Itft^OCUIzpg3cxtEYLX zXg%?oq9WPfBiR#mp$hj%Q6$Q|^1WTI+`{sn)Jk+gfNZ5u)7StsNKIBKrzJyu0_KT!>U zjd*S^0~P*D1=|zM5D`j~HlK^!=jLRc+(EFh!i|4W@kpDM(`}HIRmHAQ6f9U*ku#Zx z;Y4dS)sG=Ps+RN`tF;q}oeDJL0Q2Q~5QiII;4VuAOSR$R;PVtcO*EaF`&TUhyg zX*?HIton;2B7UyqS#(&mz$cmyRdm9QJ=6Kjq)6>7X zB!*M!H)x|`W8e6VyLV;3=}G32T+jbStrPtHIBgL*dZbp|i=Q|?u)c&}%(tdaU-|AN zp|^|wX?}F@vaw)Nihuc`?NrTVusVNlSP34@alY6Id2N<<6DuV3z-Cs!jbcl7>FabK(V!OljctO}=EC4WAEW4-V`I{YQip zVUdSjNW->K2)(5y^ezhBsGQOnQrOQ6K9;Xnbr_&QOw@$*|54%coqx&h1HM zl-Zu()mDToiKbSS+iFC(QUN(0tA38WeB{~;KH-%HV<&lwDQO%WR>A<>(xeaoB_qko)xhwr1wovIO*wfwwD25ruW?GdxOD8CX@pbc+wuhSl?*T zB=BQ0VM?qNzY3|TemCO!-M>28G5(I;@{CTkZ!^xD z>Y*M??Cdevn3#ybzm1Ld$w?xh(q&zi2w>B#4ocM9!WQP`oqXY6ArfLLhfp|er#UsH zf1C0ZMa08W=yqprrz2GK{!ZV)c^M<}{^7E|RWL8>qjr9cTs}?P@3`MCExRIrI8wqm z#Jn}?;$i3VkGBo&d>dmh%FXNGa7&p){XAA(qi^weA?zkPd!(G4IVMl~s$_O9tt&O4B^*B2g(-}XgA`B@W zvORB`N?MXfiBKj5uqb`7vOexwj(ZRbrG-TIqQG8-h4sqHZd2;cXOG*?1kdUN77XSw zpAH%t1l;9~sMY0S9N2|FqS#`YSJODv0g6$LEiKf@$jCZn)0mb;fGk4T4oud;1E-;- zjuNnLxl?y&`Sj^igKl|eY$F?Va6_GcFNu4h{YwZ9%h zR`6LOZqxnH4+Y|@8`G8coyNcNTJ%R>J-=!}6S*XP*AcTiA$oDTBm7yAjI7v!4q+H2 zU;KqV(%>G04;}1Pq5R!MvAdmJ@k?+OcAxJ6-(A~~k%5N7X>bvEd3gn_zKcsrnxY%h z!f5)~)>`^6cD)ndc%WQ`$DEJlJMM$TrpF5H@BZA{b?`yYlAfrQDE;vOn-lOW#;(PQv;~d zz4P>cxY;sXQ=mo5HfP{vYG9Ra=M!FS{;8+Q*IC&_7J>}4E*Nn;NT}OH8nNu9T@2R+ANY+@(*vHJmeDkF5;cI11Y>{^7#0;?aN> zOEf?I6JFTwcBOR21iyBCdHDxyEmOS+Zxp!&DS#G@(MA(#VZ2*LN4w~~GF6Byh)p3G z2?ea9yE`mC7l+t@iEh6T9+Je*P^|)5v;f+Ff52XY9eAhRxjJLnwsz9OHjw?RZpw?7 z9xcE|QiR`GJ68q~$|aWm`{>~o0!&U$sur;vDBuP8f~bJOZ%oLeG&rtV$%<-VXc+x) ze~YQ1X7qxs>-NQqe_cotz3+@j8X7p;-jA)X?K{uaejuJ~_bE*U>$YUD_Vg{3G(K@)m-hp=ot=nEilRmvL zr$uB!3s6OSZ2}HE_?PCrT9~)=_g>lOKM(?>EYjv1EpULb6l+DLr98TGfyv1vyL)?8 z9~OTp<4b5@fDe^f9pV?guYc1e3ACO2ShWodD2#o(afKS*2?G2c&Wa0mbtZTCAEfv) z{Wx-@$X!d+@w~7)fANXJG@4t|OlJ;Wi+s~4-FZ2dps@Ts-vB6gA%nOnI+ejgqztQXV)u{0U532iUx!~HKK$LgAhxo9pa#aq#@@dP(bzjcV?kiD zkfHocj}al==8I%RLm<034+)EmG{3*QQyjza{!Lw8UM`tZQo@RXfdTp-^9|XZd*(-M zQwDIFC0%kuVo$6}ruXolJu^FVk-obewrBzJz!kg=ghg{d#Y%K^u36~jAepC^7aczb zt{@PD*npCW)HYhlY3gGgNN*BggM8PCzTJ*A9L&EO5P;Cs1NrE+Jd8}nDZx`^p_}bY z)_k(~Jkd*6DjMJ3dr?w04?lF#uQwjJ$b$J z^A#e%l>PvD0v-JC=pC1~k2ffcCDVw29d_&5swq`Lyh_1%CH^c>iHwgw+l!XQV87@l zgx$pHg9&r67_2f*Z51V3q3-XC4cUJA1wtTAaD{^@^(hhGPgFFhI;+6HEzocASo@N{ zw~%XX$@B-=$~i7m&x7{?`RkX_Xqx{j1lA~%F!W)g%JAcdS`y7 zT$&&&A)Q9WZ_`^JqMjlSdurTuk>MPOQ_i105lw+%`t&qOsH*N%5=9YD>F!4=s+2tX z#KS|!sZT4O!TFWk(bs30`IO>YuA|d`^Ua4XtucFWk)1UsG+H-niKyri(&OW@`ibdR z98BQx)v|5PV$~!FGXdnnLnJHNMlMK$ot#2iCD;de%T7L-l>cRE`lcs4*KS0foa}df zcLg#jE3uB(1HG=#rL_AV5iHt}Mqkv&s z;`VmXsSO6A3K&i$Wo!tqO!*n9`L7EfBSQ)oW-1$uxpjvE6C*tq0h1H7QpCtqaXhL{M;%39KM zv&l})E1aEX&wLv^0A9zDjhDV^IY=}mm6nsMZ#25IuHBr{9n;n_exZn^)5+<816v0q zYxQPXD}IUr*RQck5?Ta;Gbj76CiEI-sENA&$UqqIQE4&WK4R$LGc<|GA_x!!7k(Ob z*o@#wyjiHxDie?db}dcM1w> znW#oXxAx-&A0!I9#3!e={qd^)N^0CaP%!UtMCq{1et5X&9}&={!7PJb=~sU~<=Y;J zz9FIoy;&C>bKt#YNH9co(-zg#G^H5M`EA=+Nt;1*4bd3~bfBHthF$|gWvI`p%0qTG zJrW8EJ;#xcg?VJ9A7)MbP{_t4_6}%4P`P)N=m+MCD>y{2N$Pl;P$pn zQ>YYZOF8%?h<5Cnnw}ax22XsrF#{&o_OcU$=;? zmBL2g9mhjeK4e9djDQBW3%P^e%MQY&t7)K26|tZd**qc z3OtPhjJ-AxZEfv|>1l-z14(R*_vN`qil94oVBBFNfEFO0*QziYLKu#2dkflD@CgBC zU>V_<0G<{M48v0+BPtCNZL@-JK`SoLsv;@kxvLVpzSWuDyXbJN`1nNCV6T++a+i58 z(vbgS3NiQ^N8r#F#Z%}Q<%w+{&37rvUH){QhP@b}h{uPAyRW_WkLf?A`;R|M{@?lY zwz2>S^32tqCuZ^CYy6IL&lgmmpfRYk%2H@i!q^}-oPbFu;p8Gqcoi+cnMFPS<8?3o ztfH!|-`%aY7H!x^1h*!&NZ?w*Ll&hOSrjPp$WV1e;JBOn4%$A z3#VgP_#%*Mip}3p?RYDcPd5LW>iXJbEeM?{dD&2DSxeM&s5_FR#@7!ZN0x9isdJdk z{sp}kYPs2@04K?OrS0?Eckeoyz0NGW;ALZQ`Ny&1VZv$p#{xal55Q;Y-<2oPbYW>z zC+QFNLvDPIbGc)N&0*k}z@e?azi-{#e3{Qt9?E-0G`>~d1hAO2d3mWhOk9fa+1*~^ zTrtomSg&>jmtK#x=H?>ectA**2 z3|W=G-TRWP5#-8=6{uOFRmI52SXf>j(%LHC+}!--+cz|TRKVFJ`9CJ(-&8iEAa`?g;2*@GsW@F~Ok&#T-+%I~jlTl~UhFl5kjc&s#*p%wKbB zTGt_3tD8GB5zwA7=CW{b$l2Ji6ql5oOlYW}ZIz@u3!9QF_qYpMV%^PlhK9$pMZX_Hp&02=1NTxf}S%DU@HAfzB%AMH^ z8oq1{flMI_G#uzSq(W{i2#5%HWJJMTUD5@gLUhM71WXY?l6^v4XegN`;L==z2w0goc_$;h-s_vXH@bB68S5Ju zV25H&N%t2T%=Q5R|Ir z-jI;n^!4(lx4@cDCLz+O?TQme8aNP<-_5F;x;y7?L5&Yx=mf|0(G(EiG41qK$Q}H* z#yGy&^(ekd)B*1D13OF85{tc1z+inNbqt&uL|Wx;aQ)73ng5~XqDzQp2vJA$TM^Ov@ow;xMXp=A)uX$nhuxi2?-)19Nsh-93jJKHu)SOWaa z4lzHN6gTG$aIJlD!5~wRoAd2>j8P$|y4# z570xeJscd8d5vL0t6}VKl|o#{8DW6#8yYVNx!}`w1PMxh1%DjU=;!!Q05)PcD~1G8Cs9G@+`2L21~{i?R_0 zYosMQhLzG%HevvNdBB>WsjZ#5zkYNS3wl$c=i_LOobW#dZ@XCtG4P)KgCyC!j(xSt zh}eBxi&fOS=EvkC<(+5om|R#M9dK_SOiRmbbero_QJK_40neG4Yk)6bzQ8zI@5bohDzAjwT6n^5_5O%l!&D#EiyTb- z>`zMb{lu*ynIn~3&S%9_ba3GKV%oUo2Q(=6VLev-@FxvYCnuXzC3U?_4K#f4TCCoV zlJyrO=|w}Ek5s{-kUnhelxY)6i=h&SiU4hki-s%}MMYKKif`YdfjNrv`LFC~piw@gt@_ybV-6+}pFS&d@7+LMVC$hO|pL zzpXTnAeQV`aBk~C6R&lm5n+9cpJK>nnQ|P2WKMK{b4X-Sc#L_ku{b|jf=+-&y@oOp zDwe?bj7rq|rwKGiE|wTe4JTo0i@|isw*beU&mx;F@8by7Fif8ef@l*1o3#7X)XF)I zrXz%~!LagcVFbb>*S1qa?bb_E${^eJCp`(Da|ARGQ;qv4!s~^Sh0STT^P2^Zl!{MX z1a%}NB#5xm#w{G{Hedsmn9schL(i^dN%1-S0!BlmQL0Q+8!!vUka)Vv!UOrl|9mmJ zdKkn2))3Gi*mYh!d-m*ySk#~zT$y_X#N*dRD;eVVNq@qgA+2({GalBl`0&|k6^waA zKw7yxo(b>C*UFHkfOI@&Z8lf8!F2;8ARs`ftfdqC8~<|kUNlSV6aY&lFqw+Cdu^I+ zxNkgJS0JKjxc*J}JYkAiQU1qI3J$A3nTlny#!f0Ab6QOv852ruk;0x?@EsxiSbr4b zFsIC<_>;J5XHoRRkS)cp+qEF1lTUno5*ce=i{QOpMx~OB1O&+ZWAY}Pou)laaoH4w z&9bF=wB@OP)p@wIX!u~d2;K~G(CorOG~ln!rD=)y9!IM8YHjxz)AeSm(|74wr{5Pz z@09(r{X9d1+6=SMX7J%STqgRPtbgiTBN_f#NZmb$To@+J3(xHvr;%0R$EZ=sNH1&& zxNYP0vm3m5|DF(sN(c#PIOD9J-}hizHLif#SMzKcSNLI8z6mU5UQ$LdQc2)zzrOa2 z_wFrI`AH>)@ap!)n()WqpTE?i!imr(>;}d&Kl8)q?qFC7iE{2d3=GkV4e9OctLkk6 zIW790rl#gMKF9B!{u5Q>r0!`hEK`|430?qELl_vnAa6Y9-mE!IKV_1D@DW_}+J_?La-(?osvhBL%tfBc|4zdaBF zt<+({2>=gg8INdt9(LdTaqfOKC=RCWZl0!Ye-^LU59im?{cd7nl3Doxmi)4ccja|2 z!mW&SYQA6KpyMx9JZ6w4z9(xPmdkv|lA?SD87Nz3N33H$y+12hE?)X399~OIR4?uA zE%Yav!unHFK>_pS!F-Q$DxXrV{WQDQovQQ+yk#y7~jbYqzdWOY<^&6)s ziJF@Soi-(3!*9zXjvH~UBW8ZLO)MX}t{zrjT`s8(TWIYxRFkCil^QTPlrMjEmytmp zyE+VRH-YJu{kdQ|Lxc&->Xa^XA!OW-@Dpb+EY(k-y`Q{9a-KJ9J!-if{&ycu!EZ6i zthmatqu_SKHvnu&x4G`tdkMYs8OMov4wf&Jz|0_}!vDA(wG@O1@5}vgk7=4e`+`^W zESzY2%c4=+TMZX;b8}iLoHUTL(&Ne~nAi9Q*8;F9I%n)Dz8c#kte86<$6(U-8hMoa zCH~{XRqN{ddf;r0^?Gj{0{~O8axH=_AEiX8SW&;${eIRrD0N-?RllMTrA1)DhKnAo zWi4AAwLU^u?{ChwEGL=2%PT6n&2%c{g@n|)1qMBXJH9q)9J-=;yhf!UB4TWO#m%i@ zQ#xuR{pl6Ii;r=A3)9m=Dr=GYb7xz<+XUmHTR_BZ1vvn)@i`578NIIFhBMu3lZ;Yq zFq-GB{~?cw`}e#2ojy6njUmeiF{L9-gLAKyf3M`v?28D7XW?m|XJ&M=y65X0Kk89D zBOsU^{71lKIl?sbwRyFjSiMIim1lq*F-gC5@&y_r{c7_FdX9as zcs15vyOTC9aYgDB4hQ>Jn<{b9X@4rMBkY4sKUuU4OL3NHV)+Pjqi<{kLI4tI9hSN* z)>@MBg>I-}6S$etKQIsn_k;i|duR1!-)Wp0-tFj1Ie44pVsXY*iHZppMXS7A-KzvM z1wtaCr@XkTs;bnBin1tU@%&%eMk||KbUQ3!3_+Ty2kixrz8mp!f)vYB+|H+FxPHhZ z>%=2BJX+QFwvv|{9E2uHY0wQq+rfO@nU$>h$7-dsJHSTlHp+*)kThHAfZm0#v-oI@ zT3OfP=h2HA>05jXI>6U2owe0xw`r!7n=`{!GTKXUvCq;bHA!bRZA;G+sI3X^X) zHx*D1@I)A4D^(1R+BGS0^6@3{@-KlLR&Rfu&F{rCW?gc9X(YT9%0NT(d5CjxDVr8(ObCY&fAL&g9opH=qY;?4xcBv;(hVN;3 zH=h_-*)LJ^KVw?*+DhAu9vvk`p_S@bFaQ+INQre(*pw9F6=}Xro1Uz7Yeka)^z`({ zgWMwmGBm)mI@#}u25~HiUtJK6boX2~-kniJ$S)5+Q;g@>N=Dabh)b{# zC1Imp?eebryizgDt7t#)tkG%H7lM|rEwwNJruMZ7dJdrAtlnQ)@n0@mb}3{R7z z8E#m zLPkEuL6>k=di9L?fLM{!)c*O`tqeRxo)<5QG+R-v_vWKuiG0R@PNQpH@KTH4txlRU zDh&+{n@(k$#jW=o1frE_5nnhA;?*RA=!m;r?#}zXwD^vwgWiI zdqSS<@||zv1uEtfg=)lcERSL$B0s3O%z}0cGN9Eu56kU=VNp?T5iPH}{`9nNMPma? zv2!s&m~n4E?BWr~Wt!>Px43TW^RC30v`jq(-TtYdUa6@cNC0U%)seH~lJAYFjYV_+ zxTc~fn6JD#)X>w5P)KG+Ka$dd0t+5A$H`RRe3$)*Z;yVreZn$|XtbzOQUp^sPHK3n zQ;TU{(r*KUANd@?Ugv!jtKkGcP8i#Gc-!Ps`p!I3bFp*P(WqpM$6&(MH>VSmljt75 zQsP^8=>V8@xjC;KN&`A~GlU0A$u_@yw74?DlzW%@8T;c^sX%PX-l3eAm*6Eaw!0nm z%qYC|?le+290R~4f>oLKAOP%!zmR?#aqO$j{2UDBnZLhR^WVY=xbXfV>O(9SLm8(C z0aI2bA_|HDqZVJXtMDiudU^zNYHzgrRM&Yhdytft4(hxpqa*S|cr%6iM#<)Dgej?( zeUiWOJ7uf*ug~6Nbyn6`4RstYHkr1>GMvY^U_ZT%`|^c$KO-?QIM)f|>J8R^*8*6# z8~L@vx>YK-w>RgXr8maJ`g+NtGzcElgx8&&>{qPva^fA|68UHWiOG@2#`gbGe^ma4 zH$#3kG@#{pdp7_6&9&ch>%3fPI@97OOioVzy&j_DyNXZ^xw{I+EJRc#ri`MfKU(>d zHZP#75r~o`bEs`BQ7}HsBi@2T@;zH?DeSgnQowlyxVBLhVH=8ro9RV}#kZsdFZx&V z7{e%PRRfWHD;E&kroa7czPJKr@>+fP!Mp%Wizco7vIvw#Y?U8W3=*cvhNgAHn3qGpkn-6UB8>^jnKCyqym3GoUQLU-<(?Bfi!_6>grcJj7BBB>uTBm z=)E6|yRG-_;g}(%U%G$`LXDM+;M8~3og*GW!IU(fWBcoiR*LT?hfb#zY}!F$jTN0c zsZjx$TMhE@0;$4~ZtjeG9aR|=HpC}D(cjDcXe0XJJ|cvIk$7VvxM>Hj@3ia?kItIs z1Z6gO^9BGi8yaSc>Jb$tSL5WU@%vjIAAAb-6rx3dhVA%R&-nOwU3-t3#ywKL+pnP} zu-~EQZOj>0b@Q-|3I0Av{Hoqpuo{*@I-pe9DQ*`2CG@_8l+XJ+X2eK(Kq~9sE&ext zQhS>Ujh)4+`nb}M!^pN}gQ%=UP9I#G$@(o@%w9Ea2H=^$y6W#V-c*P?KVVZNzy4J4 zx1eWiUgD+}1&eHzsZ`^fm8KSjxcmYZ$?Bo4xo7H9Lv8atxoCXntk<^ro!xx@?})SC zAUsP-7M@!_SDuUBS122~eVL_#;=tT4wE#@49rt16m5i0?WSliPd(8Sh>-@2Asx8DX z5tBdCr(Cd1W%~k-)X?X!@CnO4J#<4IQICjS$^LBOtLtt&WL_RbYj+x+Ot5k$)B5@= zSlkV4H{lviqPeu>0E@|QGKLG57ysJTzLYg{=Peq=QCBPUvZKx6BqcYkH0T*;M*Q$O z*WXq%yoM|(!#8bEn~bT9%2dnj%R)uTt_SlzRgFD$Fve&B8Ch^U06q8ucZAZTNc6Tp zXkso;pWBMXkT?e9*1C4%_(4{EPj+ z^1xB49Sm@f*-iU@A%g)oQRaLZLduxcby69_z)d`xd_#|plaWRe2I!_JsHZVab0<5l zk*{&y=qEx#MiwjPBNu)VaJdjvpo>)O5&hO8B|7XX}H%*?V=%m{Mu| zi!}Vt9!!4LnLouwifYvcpODUP@cH&zo;a~A9eKe%?vj^&R zQ2;Pf0kG-}f7$jv2dsn9n#IIw?PXnjPwP<+VzAa>z_ylD%imy~*+>MaL~ki0B&HR- zSypot*98?mX=P5YNuce2%@hab%{rPN@EXv10YCMxl z@hJ+5x8tGi2at;S3RDkB0*lE242DBLh?HUVLILCg;SgHg`IUdK%)n8 z8_VTjuPiyn?ALhy3QIsZRiFLQQqT?y<$VG%?Q22V2BeLm@QawnAaO_|((qXZ z>V14xr?vchhqb6kT{dHGxpCg<6JZxzV(+uW8}%W!%zWa)Mu+M}lD5gQy@gAr(rAp8 zftx(hQE)`Y_d}`tsduWi^JH4S&)(mXAfmO!4UpF`a0AY9J)yP>)vsns9yK%xeSKVF zciBpIvA17aP8M8xJY3H6V!d+tx)Dx<4*@B;iFSuOupr+pr?PpxF;y2YwiCI^fR~aXDgmH=l(1Gw+dtziql6LId^0n4JXy zDJrlj3NAA7FuVxGL{y$3x7Bi$$;Nv72fdl5mMZqpDCWqjtS6CGJIL{g#VPBx{4i#6 zh?Z9WdNE8ocC-YKBz|QUic1r-yK6@pEgN|NPBu)UyW{r$wvnJBGZUz2&elw`BIOg# z_j-)P{#a?fC+M)`pj71u=ePe{UA?4J9n?fA>T@Y%Rr*yWBlJHOHEWZXmnUXM>Ezr` zc%cF4h?SGAuxm2Jo2!l%0AO{5wjrN5Jl;L^N07)upLLN0JeOm0q48rrGGb%!-yIhL z0JzFsJq33&hLWS(0WC}1(E56Q5fPD<)zPnd^B4XPjl_wG(Ev=dMBQ@wKL)P9eoGJX zy56_!2x}@L57LV1%M0e|mAvYn9AY=uu0ASa;L>{0Ao7E8G#0^j8KM}q!?=_!6FIXP z--fs~oL19&5GS_7TIR%!>Og&e%)As%un?XEj4Nn7sPlR~e25>=DpJt#p}jvWb5c(x z-J#T*a}P1RcviVdgJthXBliZLdxUjQyoI=_(hR+arxo zC&LMt@dycn2$+?B3c`1`;b#A){0~xGW#%&y5^}%#3aTzsyEP_Rg4v{&=KJ?;Has0R zJZ9I&tHf!nxhn8?d-}X4VsLz8_oSpGj8RjDxtQeyfRAs3g+G`S8#J0>_a~ebas!kw7o6kd`RW4!K2NeBZ2mSEYaze&9_*%>;-G^Z6XMZFR2xdashV-o8U&rS^W#T_X@GylpK=DMpumT3V0*z-f}=RJDXSWmrnYb__2o+fBtDqbYC+Sgo$ z+ng(b93XNDC$&tX&FGzX#tYc;+ezld56k!U?Smtq*Sxvh2FbbQSUovpAk&E(AxUD{ z3TZ+4eyXF(Msw}}%V)0N!V%i|X2xR6ee8?aPQBK02kamm3LHMK;YYB;E*s4dbl@Lb zdat#djy9tUzm#no9`pFK+$t(iL-ONXewhpeU}uF<+%~2BwQ_TvGZq1mlPJCYTkLGB zm+C`#Fxm=M3J=pP1iN0au%Pi~$tzFS6GH~_{GY;zVt?q&BbRZ@rSRF23f>|zCgKzr zGefHOhX~}vMby>4+~nEHnsV~6{A`lE++}8DEc*I2UiWNXZ}AfrYbdm1>Mav zT~7N#p8CGge3;fmT}<}zvrh&gkAjw;wcjJssG-e?mW9t-Wo4^8p$#|GR1T>$L8Kz# zU1lbx>IzYfnAW>_R0#Pgc=Qn<*XR()L5{1}2 z1n@}gXNc{ll4FxPx_4>fPM4Sb7bT&hUu_&~cD zXYGL{xw?xH(^0!2Vfikz2 z<$)HrmZgD{m-SgVeAoi?grwwX6Csp{Km$=!=U>ydWI0G;n$n)|JKY*kHMU)-lS_Lo z#~ew+!rc8AYT&l;3=Dp3PZj4N#;<}atDT_?O>9Vi{m=n4wAFrlshCx>Lje)q^vD1X z;uLEB=U?=x@5A+DXdsGIa!g$BIjZ>4^_Ks*{LusPWG#+^@9{ge=3e})418?)07PeJhW zCdlMK0u>{JVK$mAvwytW2}-6Azy$gF`kONRK#LQsMn2rDWaa*QK}bjl3m+{OsZY&k zWak@fx7QC9uEhr*mWJPlcK!dx0(USLs2Ul?oVp%X3HZ*@leQJ_uY%IUkkC+65fMsb z+W^|Ia@e9u*UD*IlC(HRt{*BVSN@9-nMmTQA*TJ$AGd~e|0SV6jn-Y9V0gjAYpjlY zzc?Aj`)HzLe+x22yd(jO*VKmPmb0KOG>M3aK>Z{519F!JnJwxkU3LB<${>g$VALov zs!j(B2RWlNMlZkzvj=xlD~!msn-LH%5AQ$0U(N(*SRrw+%+4fR@@{^(GA9Jck{G)U z!a)?f?!dPLA7_ZzBquQwSVkDM4A3fO?J$6y6QalAeR7r#=ysem_?`dF*2e#O)8qg6 zi59bk|Iu%yj)fM2mVZ|2;-?eio*RkX)q^_<@Z9CJi?S22?5G2HI(0ThOa%6on=y## zV}h%na;)n3A`o2t)g?L!JFA64I?=ES3TSYBJuV71Wz-4q2a%M=xv~#;JOxBn4{JaB z=K57b&Bq73_OK0Eiq)e2hoeN$Y3BN}UPfi0U;gZCd4XlH5R%1yL)z;5Jv znl4T%y)u*QahrcP>l4l#FEQ2eii1@0{;*WVjpI4PlS}3N`bCb?S;4e1?%^AB?lofm zx2^qpIK|^dDN%D z(E@Uiy9(Jr!H=)Mq+ur{hy?GU9DY?SYta{&GPx!KA5#WDna#;K!2R*#lveESn6SF$ zvx*p5XvW!|n%0y)v7eoI?XvCx^DkWD7hz9+)ESB^2ktxi`ueV{ubWqk`YoL?9bFyy zV=ywRWPuEE@9UD*kk|=L{6MutV4zDQ?eZbUY>Bachm5E~QdB2MQ9EaArmGxonyPm+ zZj0`RZNx`^f7uTb_Bi~}=hGth?Z|D0=g2E+;RGLCfNDm=iH@Mrk%4x=ZZGP;eElHZ z!XD(-XCt+Rr4C3ysb1pCrY9pDMO_jsqBgm<0m-QGFKL8$ut+#IO%2E9nUZy$i0utc z76=p|Ff!l0ok!S-hk8sg|6<~E>cTUBKwQ_2yB4A#6C`GRW^7${u#Wb0`~jSHUYA}A z5hAN~I>_PI((G&m*&KZE2ed-{_JT7ZNW~U)Gq#(5&cmh|f0zC8}WAjcty?q zZOQ7v0YhUf=u*QQcmL1?|EnP+_t=0+RQ+TVzlDY4&D09P+W3HT`BvdQf;8Mvaxh{b znTnskrGE;u|APqm|L+C!O8ID4qdkwyyXnB~ne(XdaJ64JNTYeq(>7}u7xfy&b~8o0 zs3;F}syg2olRrqAnkF^L5@@e^kH`zwdfhM4(dBp@JpJ96BB@V(6#F-EMD^^o-kqI% zhLscp8Y-vYbf73T|4V9s@5cv4FRugz->e6B4B&dV#RJZhpfB>L8fe=?xxI*@N%a;& z25_*s`}4)eTT#2_T=!TfAFBV#f%wFJ&lb}Y9kJ~EOU>p{a^0l_UY7nP?Z3D{!Vbh( zT-vve7&u-E@vuzUO8{}q%aL){WC_~1M>`1>+%qY=cLk|~=1}(e_uM-5R(ZhF;gNzg zQoKNf;0C5jyg$tiot!9o0oG?f{(??Ya93JALfd_T70-pjYfX)Ue3Ng!@H?M}jJO3j zFBw@;J301~ZT>ktPHp*z^4?zc(8N*%R}~d#q=)+g9I>ve=Z<&x`i^Z+`1ePtGg}oE zDU_a~jUcpcB{4a<%Jpug7C-%EK2L&-GfP5Ypx5n2dEooojncr{%K=T)gFrt`#Uk12 z`!c6wwU9KUJmz* zWKH9219!iZE86-NaHe`5ah|@XKjt*f5dO24?BzM4Y6&X6$Y->z$55`(qyNBa-mb|Q z6nWQV6q>R}I}0V-GpW7DDU|x3cQ?Oh1c8TEzM{O>)@Dv^Axu;AU*uozqVe2&CBMGA zeZc>S{WJHdGSu~%w6@7cf8tBA3=+_?>Ec;yYil#09#9ihKc*%phk~25T9jmh5jot` z=7tM}o@WHQIDQ_{Oouk*p=RJl&|#|6T2FquvS9A$H_{&l2iiVS-3e;!)wLNyt7zHi zCzV`c$$If|ao-aY84Z%GtgPrk{tZ_3xdrR0s_?;W!NQ7)P*B`ER}TCv;yNRX65f2%D$>umZ+WB7*z=Jx^+@MEWPbGOe5DkPB?NuHon-i3@uzu5Hn+m|4N#gXU252r zgpKQ@3?aor;aU1XxHL^_zp}de89c5PzYdDvfHy1^HW=YxEj!o`+&$GFgv3Ly#tJ|^ z^|!dxRQpf*vD6DPIoB3*^-eS;<2ztf2?T{^n(y9W2s^Yd13-6^Hl3JQi>7&;eCzEt zSm_H20}B{>KiJj?9NGhriRTNHQuE&_D-#RpC@)}jg&`cOUlgQ%uH2ra^BZ#taD9@Z zj^`_BTI6n9-@XKnLEGb1XEw7Cjqx`VMz(WAGdc^4zsW0d$-j!kfh3sg5`lP-_>iwCC@fRR;g@Yi=)eSz1bz)ih1*V@gv0t`5o~S?a zys95Ika>v-w0^*iRe}Z(9aUUn(%viQKeaChw%>elvrIQrVSV@1QZxS38f@8(CX4x6 z*=K&c+;-BScJc(Cn9)6&!SMMP?NHJ6da*}g-ShBriIp#*ZE~+guqUVYBRXUiJtYK^ z#L*|Akg|vlP|AB>H<2Uyi&$_4M2<+r{{H@;i{j#!im7}<^!1|!Dl|_%Kpi^{{C7xn z;Ge7l@!ELts+inx?;`wg;K?+h(dlcI=7EwZ@lfWmCj*z*o3`!j?2z(*_%VqnA}U(t zv@ABYfOOOII#Nm1-~-3OB!3U}J-8pHd(Uz45TM@ykEE$@9dSKgX(xUZIS(b99eWNX zsC7L2vb`IYLv=RLJ7s`Ta*u#V_?lE3gB`M>{5G(qK?(l&NrV75i`mQtnS&lU9Hh|! z3P+(P7f0I;_caZlofm>*)dFYdM%Z@g3Lb7*{_r6|e$Q7pl~9Y+K~Wt+ZbAsI0ObQN zVh!2Gu2c%!|E9C<@9Q%?J3ajpAKw|lpdt4Z$Gbzt5Wqnb`@gr|!=(~>U+w!`IsDSA za#4tc!^k2}ab{q>%H6+CbQ_nOEv1s@vlMlQikujaAOzBu$q_Qg@uuM}VRw<5YZbZA z+-m{~2}^GcP@4ZWyzAjq?({(na|LI~cOgZ*(u^QUBg6kuEaHUzYO(p@;;ejn6|Sj&G@mI!m0%~XxK2X!=aR_-r&8Z> zvqzr*Inyx$6#(45i(i~qs`I<(E&xhXk3Go5^-I1#=kT|gowrjE7oJ4}Jl``oc7Upa zI$@$}?+d$7iiWRn^+u70uGJn`5>eV`r)(q%=cCbu4cm)tQ?20b!~cAW~4?0J|P7r+IbLTSN6 z&h_#lcr#$@b40{uea+SaCQw*d_~!iM(37x+k5vNvz%3vz zB#n{(aJw2xvvPQ7>T<^s@+=C+AMp5#xTU-h>=JJl?C64ic59Xy?Y%r0H8=f61@dpwuW0)WKn^Vb6!@c4k4-uHie z>7ApaeD(FHWm=JwCECIVXZi}dqhweVqR78*ao$K>@b+1%J;;~zoFSfltZBG1JFDAr zo%!JqBzZuRSqRz$i}LhKHvH8pi=TaK;N|WdFP7uZSl-Jt<HHH;x$e~`Mcy&^D2$^h6bLk^dZ#ZOh@1L-ql z7&sF1i`_|Z|BTN#M*3wo(RkAlaDB66`N=kVp%n4>N~1GR8`pI9c8Ztu!kSCSt~qo5 zD^%ekPTv?5^Vd~sXB50@4XoRa;F6bkLcRP_!_;Tg)aeMc$N&}!BDoX4Syv(c+Z)>8 z-&^TEs`~noPZ1jT^z;+~$ZF1h@%-ZQlK2wTTK&ACDPUq?_;i^nO;02)m zZ^DW7>K3QH_SxZUMpjnL967{+5rmTgR7T21(%&Wr3MDgo}+f58Kh^0(`xX< z^Zy1jEwPRBdy$?T!)u*P)$^KG(JLWJT9t zb+`{?CAkC$IBuD>^z^wnqPm$Uo_A7s^dscYgOsn_S5rjnB1&A($Vx8|`?-kf!Kr@A zYVRJg3zom+=bzq1z1nU^9x~&e|37ewKLtOb_JX=@f7WQ;*m^M=cZ1>( zKqnRoS!vp{hd6tv>T{cZ$gm>#sr}fQXMpiX>m2h<7<6j{Jc&=DQrB3Kv&vv1C_n#8 z`C{fDvyO`#X2uo)d&N!6H+hLP0Kg@D`hNikSrv+6l1y_7Xu%l#?i@_u!C|Lg+b$3M`;&Iy-7PltL~ep6w4(F3^r zU6XQd`4@~UK2X$y(c0Uo@?XD%Onu7;!E}w=!tSzRhVm))yuXZhBb34#Ar z$JeYQ^Ht;I_!dR@=0)X}N848DeDU7T8<;=*;Y*F!+za^BX|=WVI;`xVGnF=#-|CLAH9YrNS5)cd~aN*YJ{MF*h}?<9h6CNAJ2X5&d1A-{wx=qdc9mO85S$T|Z7y$uN{`4W?)>^^ek`$KZ?j4|VGL{QMyD zA&a7*bw*vMe{fN0zW&<48%F{jV0*ev4!n(1LI4pum@i@M;BxgWwibt2P9#1GJTT^@ zBr_U_mCOhaPMU*i!^+C;XzyRfPH<{@FY2nNRq1^s3{*HaFH4$asrR-&7 zm+dEoRFdT~(dF7^vXo_FOd{F3$x>q}DOn@gV#Y|8l4T-f8T&|f#xf1#cih{5@1O5^ z&wI{!&hvdf-yBmjGs7Agt~b1oh$G1~i9%GFWH(ddfOq9I2PH}!Hsr%w@v`%U%jN1K ze0Nl|{`FN3Fg4hxUf(N~bvXB|@COFp8X6Wl4~X60*8)8aj9UNRMd5zb?xih^&+Y#p zxaZP5Ey`}}XHAt4nsfY{PA7BZduCLSHEo<+7TCywfaJaJNWw4l{G>qGNM2sYL6~#^ z!xA5EbIvpb^~2E%SCRH3OJR{#n1^EyUr8c3vp@iYs(rtVn2S|j7RirliTH)=j3S$Yn05L}HknW5O zL;^DJ@hQhOqQO!QM~d`g9Afq;Jq z`JQU@*>&1(57uViXygmhQO$O*PR&|hszesyKv%YXG?H(?5BVibnx9|1K1i#xZRTzweJQP@T zQhfqss^1W*h7OxsQESHyWA-CyCw8|Ql+J%%VCp<@NjL`o_K)#YCOo>mEE;9G@@k3j z=W+Ad$Y$Np(^r+{xQ@&7W~D}eYXNRwFE=4Rsy@!iwKFDUdTE5V{M)_`NHdNTIi%485 zb5nDw!0zo#rv@;O^wpp)TY#U2puP7nL3<*Tu=1F7A}P}3hF&yJ z>!})mSqTIj&JPHqN+3=8p$(2};5*2rQYtAbTtgS3_9O_7wQ+%^`(S zlwl{LW4%2L#dCS;a}a^a43wiRI9L{iJ}+`jC!=**r0ZK zwsMR~YAbRbX06%ktsi)V4~3XfzK=69^4*)FlvPzNR$K<{K`t_(&pjxXjojMnb4vHt zVpb9TX>;aFcyD>}CRk&gePZcXgdr?rxq;usXqW?gj~g0iM%fo(9qv+Qs{V}L z3+3iLzQL}WHd~u8NcSwQw*Fc5dLvoDGgN$)V!AycALuEDTLrf&O<#eO2J{ic!Luxj zK;j8UV<&&&?ti-JBU^Ke6=~p0<{Utg+G1F{Y8w!g_jeh0;-9SzNI;}}+#={Pv}EP} zMx@s+8eXhevH)aT$s1zIpnEjo!sc}HRo}7QRw>WGZm-7JGe>G=jdkeo0R;NMkT7X{ zXYrrPZY==0KqWRPtp|W~GKzY7Pu=Q+6b8!OxB(vA7Z6_mA;Nh`14$?^KY+0z=`3}q zjy84uK@)M?PH6wviDh0m4Dx5pISaYh2d;lt4gF}{Y}K?C(zcd$`{P;;8tf3x7PYds zQT|kH_{J3mJ6Ej?0~`lXZ{`>T3C-q#kSeWJ5#h0l@MgQmW9djG+alk4_vGH_{QP-h zVIeUi1L#&hl$}vag$2X{d-qN}|C^p`^lxSiLm-g92K7(~eBb8eCJsdKdhm{`)0>hK z?eA?GJnx)UT_ZLH&ewrYR!938QzoVKyyg|`ed3ugb8QY(S?c7UqHQyrd%b4- zlQW;v9JdFDHOl0yQY!3>=<>?|dB_G@xpfvqL!7Lht{#d*iqzGUdZMB7apGO3VdRjj zq?hOxdsUB*9pfnIvq2zCE-djvs%qZdSqDMSb3um6vz> z3bCLSJ-cEtckaNT1OG(J>;BB!#zt{O;HW(Sc*5#fo%?vkAN92=tgbXq(InDa*B6sH zN+(CeMemz{fn8Fk)8m=xHNDiZAX9LDSSkqZwP}QiiN4MNFHKBwmEwD zdY|(Tm6rVb{zrIyqnZF*v!IV}#;f;c?+c6FY&c;R65*eFVaj0HPH?0vxMi1D1f%kS zOkM#6m z$3r0QdG?P#{pY!$tOqnZJ35Aj!C;~WVH$v9QeV`M+6_zdG+wM?QSUEn0ffv2#R-`W zg)n)LHY&_t9J`Gbps&xfV-s-)hck!ja_M2K=0+KP{eAqyhor6fK28e@3oafWb2m4M z;^N}f`NF(n0L2Z>%y^}Txvw$Gv0s;r*SD{oL=iz`6#Y{-vpr|EeXO`jf36~%9+cID z@TRZN0^CN35*hYefo?r%)m#{S#Z=Tf;Nd z-PJ~n`?peX8u2`Jk)BABszsB5gCY-U-tMD-Sc;GXwZ*d&)17PBX=!OGYiulK#%v-m z24zGae1Mood8Xj8-}TRc|2lhw!=3qFGW&9w7M16Y<1}?RVwT< zJu|sa9H85{p?J zQ|wfl@Yg0jPE$^t8s%L&Du%AH80OFVk#{r1#F`w~W@c`_cAZsG_8eSH Date: Fri, 31 May 2019 16:06:26 -0400 Subject: [PATCH 120/370] Update shotgun.dm --- code/modules/projectiles/projectile/bullets/shotgun.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/projectile/bullets/shotgun.dm b/code/modules/projectiles/projectile/bullets/shotgun.dm index c8c4a73b3b..07f726b691 100644 --- a/code/modules/projectiles/projectile/bullets/shotgun.dm +++ b/code/modules/projectiles/projectile/bullets/shotgun.dm @@ -17,7 +17,7 @@ /obj/item/projectile/bullet/shotgun_stunslug name = "stunslug" - damage = 5 + stamina = 30 knockdown = 100 stutter = 5 jitter = 20 From 96a32f7c3d494dcb1bc75ae96cf2af5a05803653 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 17:53:54 -0400 Subject: [PATCH 121/370] Update boxes.dm --- code/game/objects/items/storage/boxes.dm | 71 ++++++++++++++++++++---- 1 file changed, 61 insertions(+), 10 deletions(-) diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index f09c040795..3f7561a576 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -15,9 +15,10 @@ * Handcuff, mousetrap, and pillbottle boxes, * Snap-pops and matchboxes, * Replacement light boxes, - * Shotgun Ammo boxes, + * Ammo types, * Action Figure Boxes, - * Various paper bags. + * Various paper bags, + * Colored boxes * * For syndicate call-ins see uplink_kits.dm */ @@ -75,7 +76,6 @@ return 0 return ..() - //Disk boxes /obj/item/storage/box/disks name = "diskette box" @@ -142,6 +142,29 @@ ..() // we want the regular stuff too new /obj/item/radio/off(src) +/obj/item/storage/box/seclooking + icon_state = "secbox" + illustration = null + +/obj/item/storage/box/cells + name = "box of powercells" + desc = "Contains powercells." + illustration = "power_cell" + +/obj/item/storage/box/ammoshells + name = "box of loose ammo" + desc = "Contains loose ammo." + illustration = "loose_ammo" + +/obj/item/storage/box/otwo + name = "box of o2 supplies" + desc = "Contains o2 supplies." + illustration = "02" + +/obj/item/storage/box/otwo/PopulateContents() + for(var/i in 1 to 7) + new /obj/item/tank/internals/emergency_oxygen/engi(src) + /obj/item/storage/box/gloves name = "box of latex gloves" desc = "Contains sterile latex gloves." @@ -463,7 +486,7 @@ /obj/item/storage/box/firingpins name = "box of standard firing pins" desc = "A box full of standard firing pins, to allow newly-developed firearms to operate." - illustration = "id" + illustration = "firing_pins" /obj/item/storage/box/firingpins/PopulateContents() for(var/i in 1 to 5) @@ -472,7 +495,7 @@ /obj/item/storage/box/lasertagpins name = "box of laser tag firing pins" desc = "A box full of laser tag firing pins, to allow newly-developed firearms to require wearing brightly coloured plastic armor before being able to be used." - illustration = "id" + illustration = "firing_pins" /obj/item/storage/box/lasertagpins/PopulateContents() for(var/i in 1 to 3) @@ -714,10 +737,6 @@ icon_state = "rubbershot_box" illustration = null -/obj/item/storage/box/beanbag/PopulateContents() - for(var/i in 1 to 6) - new /obj/item/ammo_casing/shotgun/beanbag(src) - /obj/item/storage/box/lethalslugs name = "box of 12g shotgun slugs" desc = "A box full of lethal 12g slug, designed for riot shotguns." @@ -758,6 +777,10 @@ for(var/i in 1 to 7) new /obj/item/ammo_casing/shotgun/incendiary(src) +/obj/item/storage/box/beanbag/PopulateContents() + for(var/i in 1 to 6) + new /obj/item/ammo_casing/shotgun/beanbag(src) + /obj/item/storage/box/actionfigure name = "box of action figures" desc = "The latest set of collectable action figures." @@ -1003,7 +1026,6 @@ for(var/i in 1 to 7) new /obj/item/reagent_containers/pill/patch/silver_sulf(src) - /obj/item/storage/box/fountainpens name = "box of fountain pens" @@ -1062,3 +1084,32 @@ new /obj/item/stock_parts/matter_bin/bluespace(src) new /obj/item/stock_parts/matter_bin/bluespace(src) new /obj/item/stock_parts/matter_bin/bluespace(src) + +//Colored boxes. +/obj/item/storage/box/green + icon_state = "box_green" + illustration = null + +/obj/item/storage/box/blue + icon_state = "box_blue" + illustration = null + +/obj/item/storage/box/purple + icon_state = "box_purple" + illustration = null + +/obj/item/storage/box/red + icon_state = "box_red" + illustration = null + +/obj/item/storage/box/yellow + icon_state = "box_yellow" + illustration = null + +/obj/item/storage/box/brown + icon_state = "box_brown" + illustration = null + +/obj/item/storage/box/pink + icon_state = "box_pink" + illustration = null From 3891cf1ff6483a6b802cc9de4d9223cf1c900fd1 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 17:54:49 -0400 Subject: [PATCH 122/370] Update sheet_types.dm --- .../items/stacks/sheets/sheet_types.dm | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index a8c44656ca..d2995585d1 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -252,8 +252,7 @@ GLOBAL_LIST_INIT(cloth_recipes, list ( \ new/datum/stack_recipe("bedsheet", /obj/item/bedsheet, 3), \ new/datum/stack_recipe("empty sandbag", /obj/item/emptysandbag, 4), \ null, \ - new/datum/stack_recipe("fingerless gloves", /obj/item/clothing/gloves/fingerless, 1),\ - new/datum/stack_recipe("white gloves", /obj/item/clothing/gloves/color/white, 1),\ + new/datum/stack_recipe("fingerless gloves", /obj/item/clothing/gloves/fingerless, 1), \ new/datum/stack_recipe("black gloves", /obj/item/clothing/gloves/color/black, 3), \ null, \ new/datum/stack_recipe("blindfold", /obj/item/clothing/glasses/sunglasses/blindfold, 2), \ @@ -282,9 +281,14 @@ GLOBAL_LIST_INIT(cloth_recipes, list ( \ */ GLOBAL_LIST_INIT(cardboard_recipes, list ( \ new/datum/stack_recipe("box", /obj/item/storage/box), \ + new/datum/stack_recipe("sec box", /obj/item/storage/box/seclooking), \ new/datum/stack_recipe("light tubes", /obj/item/storage/box/lights/tubes), \ new/datum/stack_recipe("light bulbs", /obj/item/storage/box/lights/bulbs), \ new/datum/stack_recipe("mouse traps", /obj/item/storage/box/mousetraps), \ + new/datum/stack_recipe("pizza box", /obj/item/pizzabox), \ + new/datum/stack_recipe("power cell", /obj/item/storage/box/cells), \ + new/datum/stack_recipe("02", /obj/item/storage/box/otwo), \ + null, \ new/datum/stack_recipe("lethal ammo box", /obj/item/storage/box/lethalshot), \ new/datum/stack_recipe("rubber shot ammo box", /obj/item/storage/box/rubbershot), \ new/datum/stack_recipe("bean bag ammo box", /obj/item/storage/box/beanbag), \ @@ -292,13 +296,23 @@ GLOBAL_LIST_INIT(cardboard_recipes, list ( \ new/datum/stack_recipe("stun slug ammo box", /obj/item/storage/box/stunslug), \ new/datum/stack_recipe("tech shell ammo box", /obj/item/storage/box/techsslug), \ new/datum/stack_recipe("incendiary ammo box", /obj/item/storage/box/fireshot), \ + new/datum/stack_recipe("firing pins", /obj/item/storage/box/firingpins), \ + new/datum/stack_recipe("loose ammo", /obj/item/storage/box/ammoshells), \ + null, \ 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), \ new/datum/stack_recipe("folder", /obj/item/folder), \ new/datum/stack_recipe("large box", /obj/structure/closet/cardboard, 4), \ new/datum/stack_recipe("cardboard cutout", /obj/item/cardboard_cutout, 5), \ -)) + null, \ + new/datum/stack_recipe("colored brown", /obj/item/storage/box/brown), \ + new/datum/stack_recipe("colored green", /obj/item/storage/box/green), \ + new/datum/stack_recipe("colored red", /obj/item/storage/box/blue), \ + new/datum/stack_recipe("colored blue", /obj/item/storage/box/red), \ + new/datum/stack_recipe("colored yellow", /obj/item/storage/box/yellow), \ + new/datum/stack_recipe("colored pink", /obj/item/storage/box/pink), \ + new/datum/stack_recipe("colored purple", /obj/item/storage/box/purple), \ + )) /obj/item/stack/sheet/cardboard //BubbleWrap //it's cardboard you fuck name = "cardboard" From 23d4da8541d7a4cfb3445b69426c554240889b73 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 17:55:36 -0400 Subject: [PATCH 123/370] Delete storage.dmi --- icons/obj/storage.dmi | Bin 63960 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 icons/obj/storage.dmi diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi deleted file mode 100644 index 1a1e5f617b05967ff1c512e93180f20e877f7821..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63960 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%0D{8O)LLBO0kRiB4V!Asef% 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 LHHBh1Bme&e_p>OQ From 995b02b109b058020593ca4e37b79e3b9cfdfb33 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 17:55:56 -0400 Subject: [PATCH 124/370] Add files via upload --- icons/obj/storage.dmi | Bin 0 -> 65457 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 icons/obj/storage.dmi diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi new file mode 100644 index 0000000000000000000000000000000000000000..9467e8f81875ccc5e5d2c315be1ff817586444d7 GIT binary patch literal 65457 zcmb@tWmsHI6E=8ox8OQRLLd-ahTu+uCAho026qik2yVeGXmEE45Q1ya;O;)`;d%G_ zx%+4Lx)|nYcUN_F)qPj>eEFy#jfGBz4gdhwdl?BO0Dz|kKL9E+c%|jl>>B_;!tzwn zaFH-|Hg>XfaIv(v0|57og0xYmMIPLNu^DBDuf~Tlo4vLy?Is!ZLcNDmIGvjQvM*kR zn*x7c++PTW*S=E!1)GjxJsYwA68ork=5u;GT!|Cg_c$9i%{lPzC4pPt0Hji#m|T6c zzL802=?9C}XZduur+m58$d>g?nnf&=7Pqpb}ul}=hnjzLeVi66>bWUzT6Z{XSozDhPie$uxRB|9yZa&N-iLU zh>`-vb729i4>kI@ZGmEA*pvbVddKH(Y$S!A6*3(Q!cR9&mBPO+HC#VNyJ8Wb@E@RO zOi})kxq;$-ZzonUI&xY?0_?NLIqRblCrvy40Is2B3~(vksA>UoNnWTnP=opeQw+y3 z7IZ{k-#3cd*G2f7=b|fuq%oTU+fyhBj$EO}R$EJB>2F|i8 zQi88v?n6yZCo*4LR?9UI{UyZh!XTx!#+2kSaW)kXFnnkVslTBZwYj3Db`$O~S zxO1Up@;x9gr_fu%Xa!DJixsUgNu37$E8Qz>#Z)oLQ@^3CwuecAH`fG%pF5ep(TSO} z-jH9wAL0r>skEI7Jc@~kyGS7G9u>sSW9!l4nh@b)48$vmi9Ixo(}d{myM14tVtu)) zz**8VCAQa7!@M4CGd!sJpsV?y|eR~6wxtTq!%`F_+{+BwjfEI=HwtcMxgi75$*D0kPS2`DS&jJ`{Ycq zzTk_Dm$8YqQM;juHa3fh{_MApo6L(&*UR|)I4Zis^$)&t?)u&yt*l2KLO)<|UoRUI zVjmhu0Du~JFCnVpo^g=r;ZC5saCN*F9DHE%N`weimIqZf&?X`rmvjlw0nm5*LYCR* z*zf3qD@}QMIq5+uDW^g~s3L+VErGNYr}`CutAT^-P7=)j8DDVk?Wdw%(5&31uKN1q zp@K=hc`sw{UZp^3yJFjh!Wa`#6c_x{$~||1Lk*-x4Qza%Mi6_x6ucD&NArA1%z4oN z`2u1NpNYtS&-|g_p#JYY3v5!{=a;Ct1{TMoCW{o^+`Hor7aN=_2&J=Hh*&>c)_lbg zf@#D%38dWrkiD~K^^wAR#Pai=d-dq?b2XYHq|k^|@+e1xj9{UQ`uT z)p#^e(w&02Xn(nEq0GL%KDgD<5IPA-NyEE~UAbKu)c=%}jEv3Ol_BIqR$X1qlSeHt zFAw#(tEEMvdsfQ&L>~=;)5XrGC<;C$E}9wKk%93%>9zg+GC4G~XB{>Ea~SjoZ%&K^ z&xsAHfBKXo1NXlh7gd%b|D@U}1U;v$VDWU)S5UnYUuwLywGZCW`*$ZlU?qQB1WS*1 z_l3dH#_r*Rs{dug3s37Jg48@3Rxpk`k-znlg+-y7L8dj@45CfJz^o!6Y?p6+S5TBm z-eee!D@>gJ^BqC__01(jz`aU#Kvh+hF;@|sREAh_c{WfSqsa&Zj(i`{U^7x0K^`8p z@!!SzzK?ZAE1T%rejoc~8h_!SlcK4gUR63_Kzb7(mtZj!J*Xxbg+*4-x|Y z-%osGq7GxEP~+nx^8T8YUAXY4?a{*n3uJz-+D{s)+*E1Y2td{4N4yEFL!&fYQcIit z<>ced$a!NBTrf2}{;O{bDD^^)joPdBdXjYDj$ z;ny)Z^RaauA3-vRuf`{zF1fjM-15et4u(L>=k?_I8hZ?Z*48OLJ#J*?M5ka7_IL~j zps9^WHVx(faDQ}Fz3^-Mh4H>*>-@Wk#LHA$`#TRv#ZBM$2;YUwYlJEvm?eNN?5*y2 z*kx!KuKly$t{n4qrilnxDT#QO~ao zS%U1*Aq?VsBO1>q8eG+0_e))diItW3{LOn6_%Oal2okdvVD+|s`yw0jICysa-_pqD zXHvrmZ>STDF8|YukZ>}N-U^}4^zX$q;vauh`8qjq0Q+0wGG&5}@IymG*kcR(%<{u1 zr-^^h&NIq=tg4Or(2;?S{%8b1E}bWOvB|kegA_cHpXRW67_}z>UjEL)0%Uv-*eh=8 zW+fi~4Nxho>a&q2Wrx_ll^b-$mrhHKd%C-?O4s7&DglUCbS#_?qg?lAER|w4P zq+`v*F1#*w#zzw9dnfO-Xda$eHL8H_X_ewP z$KTZBZ`{=F?d>&r8Wg%1{ma*l5pBQ5#swb~U$XU^6S-j<)^e83U@e(77w!nY*UO)FNrcenS|^)ozn{ZXWXa;u8MkNNXY{suybX6bs!!1DKEQ!&Kz zYU-+%;Sg@lbq3I_0Wp2}R{QI4z7Q03TK09arCQ>KSZv%qet|MLgD;VCn$W?^hF1X#R`G3r4+#ze+^p9lFJJ%w$05= zY;L&Xz6RozPD=H2I-UGaIF=o8U+LsaB}D{$U|CVVfHwrk3om8?|Fz0n@g;K4qq53& zqk`BZIGuMNWQQH9T(Im~Po?Bxrv>BKyFF$LwU%0g>5}~UW^}jJ16<=cp0ag&e`iQFRL z!_Q5;1^j=j`w`JW=G+Ka1**fn3}LkLwdJa{S!`5wb#=w%<#*Q;B8cyo!?Uzd2>*=F{Y&j(I^u7D3n7 zH@MibQqG~%v{Pww!R=ePRu_Yx*tvERYdd#3Bx|=T%w>(7E=Z3Ay4B2gcD!!|RfOL;DK0J+ z(bLNsfRKTKQbO^73>U5`Je>QR){`W)@q_!el^_0*nlHRM%Uzl5-BB7&K$zL(!NosR z@DL8f2T@U&vlm0&U~s(9qTu--&cXeVGkU}R9L1?o(f*%7P#EU_fI^x$a`1o8j?(-; zV=3(NP}yf#m1WkNXi9U%RC^F4_<@6{IzMG?>;5-|w9@kHc4)uSHsQ+~6f`4v=S*Hq+j-}+3y}#LrHT+<_KU1k*@Pg=#UuzS3 zqIrz5x(I(^{S7Un859!WzKf(P?_YF@bYA@rn_6H{C%58@;i%Q@{~8S!lJE{swjp^? z$y@uX{pj&UlsS6+>c}B%M|d_IkRYqN={Jo$dE|Kkb_dvr!BDLI6O$ zJF3dSt_r&jEi@pE@aG)xz(1KSs$%+1*;0}9dQZ{z)V0MDbkt)kYZ^)!$&Hj$y*U*_ z4_6ylXdU*43Cl)C??d3mepK7aSa9nEQiltPd506Hznhcgv7O}$%B45)_Ds`G?14Rq zHT>cL^>?+oos9sjzj*QSlO9XDBFmxQQ4w2rheWWhWB_litoyP~_(y+7( zdsX|3ia?~9r}M79w3MuZifJ#M77{Cb8hm~?J$ zRq91gO{qLv(UQ}CInOzUM+^mDpm{Rufb?-kY-2EDGM3Eye%hqkJFJ(P<9Yuo6=`-0 zh<`{^|K5pz+U}rzOiaEJa1(g5rJq<=tGFlJ5^U@?2EWdUrEy*MP+@eFxwwUpJZQnY^*E)8Jx($M)heVYuvYtsIOmNq~9idO?W0(aXS*^SW3UP#Jo$?x z*D=4Bmk&u!CjR=BqD(3i+0j-^Yt?T4XfUU#9S^w4(tTiqLfBu>Pu zoZ+uWBE8wEL95e7S>wi+SAhRCYb6}OtW}F@YinDNt@>@%;I&jxvB<}dA7g#$bLl?N zr3KKP(FIOP9o@A!!~XM*o{Zw~e3)nl+b+vLM}H|)p8Sfgd~@gX+i7E%eB@2XE2aj~ z%2{h7v?g$@BO?R$D-YNpn=*^XKn&%6H3yy#?YuX-;z(hZ9%gBdSHyfq_5vHz+s#;B5o$k$>4+-bK2EoDz{%PZ>>+OR*+9$uOXNEVMhm{@i%RJVZC>Y_) z4%}=_Wu)hC1cb%blZxsxJ-t9obg<&ZGg$a&=j6t~!_Tih?PO|hK3vcGL!(-3az8#X zvCHZFyqZhUM^r&!*<8ztKZ4C>R`ucGMjHE>N&_ZWgl2X2*=-|rBppX`6~m7vZ0COx5yPk7(l-d{qm zK}0AI@tvNoAJ{5;Z)D-Oblr;&^*W*eR(oX^Pdicl3hU5LRU~bs`s6VID;yt$BW(Np ziX$aeyNz?bgCzdSW7xrv^EEI(KW{VBvEFy+e2fSHMo$mYCJ1s&__XYhLDH2bs?Jx} zZWeZSlG@tju+vyS=r?uC4-t`Gm_4qAV*#7Ft_u6vd@=Pg*wqs#{;F<@2*6LD?Ke!0 zTPmazZ)36-*7xguUl{QGGX0*2$9nr_=a})lyV!AS`{^iC8MqMeYciI7a}e9@G~~bZ z^oVrzr>+(Mu65mGiRhY3&G$HUc}NV=q(jOR#Edo*gb60s2n(cmN7o3ByiG=k_N;qOa;>}Xs^>Y$d_qqd}F^^I}=iBUJ;>WlwPC$oG&)oN@kb~x^ zqx75M=C4FH1t>Pq2&?D<7o9NF{6pD`b8sfhXzcMf2KN0yh&MUhG>^i^dyZqQ;sUQp zAs%z)cmH#ABw(CXF!od6zi%c2w^P}8Bs=z;`p(WwUzNX(Ua6`!Jq5Z9mp4Qt#LwsE zH#QE~lwc4ucfua;|K54MEcZotd;fBaqCk>KaRr} zj2b?}3{oCRNlBUa??pd-if=sJJ|3uz3dPjZMpr}>XDWKYW@RCXemx687Fw(*spmom z232~kj7HrrzA|6}61^TjUMAxZz7^2{p2&gzq7wSem>h;u&gM1|T^pU&(Tnw5BR~X< zJ;3T}K#(1)#OuCg6O&hct+3yj{BXc?Ak>chBX4`US;Q@zw{1@3^H1-#;o@GLpa&KMEJl!>7kk zKF#3a;c@N+(OH@d4=9z%pvFExZ+xV^m9z_7p-bFV%$eO7#lruItAZxwae}na`hj@TCl7NI6VU z>+SxQ>I%m-45SI8Toa4!qJ}Ruv;1B!y-neCOB!BSv0L7{a@A-w2pGOQO2L6MWQUrk zf=2y$bA|k3R%rL|?6RQ&zJj0#OU9n&FRa`_JmVxdB@m_BYfe-8QsSE6A* zi=Ni75H)%BwUK(v_H56eZf~Gdaf1&TAhw(IU|y#oiHnB#V)@6yEKEZ^gW%YG{3>^X zBbZ|hz0=-o1yQr0-2M1p0x$P?!uh@A|IlmV{|h4h{|0PZGX)La3oCp+P2tX5VD9I- zBFg*$>x!0|=)k-X^m)=fx*Nh%Hoc6rcC*YCzO5fHxxDs=x)BqO8@V8^ zy;LBLdo}A|Gx{DtVSdq{I^nBwO#{6mqHNhJaU_}Rn6UAi?z4z$lN^|;Kpa@kHO7a? z^qn-m`}sJ))csx`;qlcYwB8K;wcpd_M#@6s$!0}11$*M-*h$z&<7(lFZ-w<}sosmm z%(lM;5RsA65AE$HjL&Ri+3Vy7!SM3=(RDVbv3APF&&i0kFh8G-g9dSp0=qJ_t&O}5rtua2Kg@?l>YTw`b#mbbLg*cTsnc2VOH9R* zMly!J4#Y^Fb_Fq1a{0l12#*PktKSNP3{!^2xgrttD`^2Nw-f0~=p3#{bJNwbx{uNA*scIUq8 z*LMm-m&(JREr!SS%mfgzkU=FQBR2(GO{C%rjPnQj=x9%A^q84x}C!{ zn7x}p)2QLNw+sS9_QdU$kFv~@AKqZbNy+Pox}OVaFa17dVELIfPkXpjttPXwKsY{t zM&2|!DYN3^vo_lCr&iaZ;4D#=>4-~&jGNkL8;=&^N({oo&*{FyhN)_cPDB&MUzqYo z+aqsL!t&M)+9wC<_x9QL+l38h@17ceuu2HMQOrUFR2BxUQ)j@5i#u^xU6)M0Jfz_! zub2D6`7-uB`|p+wwW633s7^rh%sYxV&?uTyb}VznOtfw25xnup&gXz|St?D0vx65g ze+4nZ$G8j*)Aa^PI6JqJ|4}ykFIIA`s&H2ojbLCDIm@&M2+t7GuM`+3KuA%5;+uL* zx=EDz5kIacf%UDZz=}fn*XOLXX8j*~qp18N>}^ws`0w(F3*mu13rd6$3e z*#x+a-o5bdslM;7Bq8IQFoPvHD7fr0M&(NpbXx0>-Rwx*aKaeb<9$6ou~Qa(0HQjR*eB%+TA-K5B(& za#q;ho+f9*yS)1g1a*B!5kU^Fiu?h$mPgzgkRtHQp9NSxbam2%0}`a+tldsL5=Gp- zDnJc(1+{#1h1HHebOqhEicj7%mFnv|bQ?b21>&R9`$%5gHn<^xx?w{@CIQ@4H9MZ@ z;WW%Ix?eIlKf7(Q3#020efB^0P~dy{yr&Nbcog>U0oyBzqvH?wE!eN^##YZ*iSM zX}!{u*sxL*-u`DG50rg;d|WME4>30{udnq3tprchB}xtkIR=n>OM*Mi*==G|(c=#% zH^OufiF0aHFDJ7QTurRL*}iRT$qcOC66<%Ct}7jI+E&Ub^iC=Yg*3lwr-*Nl2mIyr z?a!`p&;kFC03l0O4YQ6NvbYcg&6sZillNHuj-M|EZT1OggmZf=sW52x7l@?GdAdMq zf|Io+aKFzQ+tg#_GOt+&I}?s7n#FCiSZ!QwJxk)AJvetPDcw*n)tf<-UgVh2z1(z%UxHq&7nM6e zNlB@Znh*qLQwhP@>IQ3dCu`D>we`M8|M75Zm5J+%O9<408d>TyId0RF-`m@3MwtC$ z%MJE)UGR>yoE#>0YQ3#tY6BP(%zWWOkI-KUaKMj_{>{rcl2_;jt^Ksl$kd6J>g#O` zj?fJtiVz4FlCC#5A@Dl^4^?qr(Ku>x$Wg8lrX?*hH{k;8uAVvH+LqH&Cy`(xBO)TM zu7yGRQ#sAqOn(vBEY@Si$H()m#C)TNLL0Y*5--b2OF`1^9~_MM%;pml6H_?Nu|ItH z;Ba?gnNR<^tP}^}cRT96yWFpK+Wf%9!?RvmR?*$+aegw&yJF$=*kHRD+TSk)YG~u; zbffXGe(~gV0I~soW-pE*BqVdj*$a1mu=DI{&r7QxdTnG+=fY1xzK?f?>%Cu~o)-*e zBPjuG;MSYM$1!4k32A8*XiSfFWn1WeMGJOnYU=ZF?1g}Tt@kVyr?Y0NNQydsoNrS> zJ?;wmUCJdB=+0?)pAS8W5%UoBZ@rUvJ?B0nF-mm)4h`jG^es@uacwJ5dm##RipxR> z()EGCG#sFD`^f8LzJIKXWIq_4USjBY-}-KnWTVhSPB07sNJ_~2)xd8f(%jr!<$ddv zA?QVf90V5<65{^!czv4O@gSKPsQF*gf=WnM%`Qls zQ1Y``&oG0fM-DDP>J z@F^vCG%|w2X<+H*$-he!f$JyMlVfEev+a&j7R=Gn(Nbx#s8Lsc#i+S!1fadFOdOPN zBDpZ~o@fe3+`)nE&G2n&v&iCkfefGXUhV8*q#p)QTvj6KZi1+`)gIlPrX}z=H96Ph z{JKy+eP)BVQ+fwjeZ+wUb*^S@eWSKnJF%XWhWG@FhhgV{8l)KLnw=$96uQk%Gu z`|*W^2vSZn1MscJ-NJO0X=HyevrGkc(Kl71e0n}6oL5&zi2qul7u56VAYE*6#j)kG z@4c<}+0bi^20KbnYag|=BBsmKH#TC0`$5xJon{#v7FSgzw6e0QG8-j(p4;aJx(lz-^24R(9?T1dThEzqfaQY{vJ25okw4UZsPu&z_8q2F_PKyxpvL zYQjfO9ECdWu2sR23VB1(F)-re;`~oH28@rEnoiD~>?`2RZ}z@;Xq^9HcJvw*|HwDt?4wLe{hJTw~pVjp29-dQAu0H<9&L3fG zD}9G&I8PPxi`P|#J-84^YUnGuf__Clp`(QW zEDU!#KRv;BL>_mxt^FNkxelGRp1_faN!}V8kUif<0A|86JMY*U_01ROwJY=9Fyusc~)?R9Nuv)oFGPcJ88W5e7ZOFp~N zXmI2m>r?T)vU1>g>Xem(+?G91vVHFu!Ic*ZR-QmGFgBKGc-($dpM-wkPQs046~iIl)Vclhitt8qRmD<>4*MG~`u9`_+% zAIyn?HL|+TDR1ulH)cDQ`m1~zer>Eib!b67VOoZ)@U*tg@j)AnzDg}0)hB%v{|a8B z17~=+pq2mJexj63a&e?U>DLeh)6m#PKXC@LI9Q{|W&=vkx8vDd7%-6$#85Ch-Bx@f zJ01`1HEK-Izy#@b7|kyVZKbv4R>V8!Ws9R7Hu9^R=PX&L%}Ud+4?ANX#{T&UH$xAR zP`4k`wvW}5lc!zx$Hw65k)hy5FHd>!cx@CmYMv8Vg@uI zn!F_}EsNg`o3-tR7WQznQM#*MM=9+*FwLU-R9e4LY+Eh(FiG|H?wv|zCCB3RQJeQG z4b{oEjy-QetqVb>1+`S4-_)4piR*GxdDR7dZ+)y8=JAr*XHt0#ncWWN*lQaaHg=1$ zh$dk__tlq#GwnaO-R+fmJ=n3OPCk0!kll^t2z<|ZU~_`Htqz#)y8_maqf>1j0RyNSe3F7O>-k(-pNv78Lq(G=fzxD1}{ic zI2Ma~#Vic*L)R`3XX)G>h<%qZJ8@E;-U04#H)yQKYy1JbpqhEQ9^OhY`bdxIGd=ES zp#a#oHyCGr>-^OFyd`-Z4uN?46=~sY{P;GMA;d%qY<^pe)wtUB6A;Aj8Yt8vUum|v zbw)hoxgQx3DmrUcDr)$~Wo+4|d$LU3l?Qz@Qm6!`iMzH1C z)HF5cjq9fbTRt<^;AXP0Eip%Y($tIkb!OBu02Mdv61AHfM7)~9_ruR4!@9g|v~_tw zwznV8V-|H_58Pa9+vjGx3IE+qAk+g|!q#VKnC4-Gc^X^a1#99@&GP(G$i z0?s+c&e$muZkq1z2bYP%Uy2cKwTC6ejxqK@SX;mIvMvb6g;hImh8ls>2JYaYhG4U> zy3CQoU)N5vtoD`ouj%l8|L-;#%NO_SZ!PTB(>1*x0&%m2#?6+MZ|{2_fDYWumM!s! zwxPi{@_5vS{ZqdZUK8pf&1#C%Y>HiKh7lF>JJx1IQW6bxl0-?-Z9pk83njN*-ch0; zlSCn>q-my%TOb-sZS7C$yB&>auH7@9i9$oBryZWtbx!#fdW~jprL3r>{d4nff9LaRunx|uN*!d-_!bnyPW;7k_ph-q;Xi8}c0?Jx(=0QsTUo3m=YjO+>(oXE!#$VJQ13kWUgEvevg=-I@1@5O2fq^hu&2LQaD zx@6ba625-z2ENzTOP!`aB*nq)7C2nDjyCcLrs%T) z%PLWx8(4sdr{`F;LLeif*TwkJvBhLi%eHM{KAI+&wjTX>(tNp3Soxr&q@)3cQ=mQd z6+1hgqTM`gVMj{pmx&1_RF7{wH2PZ(2c-_I2S+-<6hPTiw0^iKOgIVAx!1m-SV1~o zb&%U_pn862i@7iY4erK5#z+UMrG0UNgGw|i1CIBA>0MDR^BT<(`+vs8P7}j}^l7S( zZz{?c8d$y)MxZX;u5oWij44Be;3VMS?D1jtr$Z5rXoodYa(s3d;zoRA7JF5}ZXy3# zG;dsT*1)crDW^m)lNxrHJF{LZ2>=#{ZIbkqbZn9o8R=+KV)OG~PEAke)YcM!%qS%Q zmwl`yK7Ji`a^i3beI+MjB1PZwW(h;JCy6FE2m5YAM8bqXXm0h@)|c?87uV_`EIlaX zuz>rOArmVJG5;fraIP1$(Sf)=5Vuij69>OOtnfV3+(O8#gIR4dCurZn@#9@roLh@y zxr6L4GT5jC;ZDAx;kwlE&^mdNCFWca03y6h>GJNH%kHTEXfb5t>9&YtV<|U2vlFps zbiz)ToXzgPe*J24j(+=m;agPb^XR{S2floH5Z*oZb4%vJ`|{<>Ge!$W!~gb`VE%6t zfQRK;ETD&Zyrv8XfRebHTNH~AoRmCY!&H>=*aj12pW*AcXzGZyN{$C!g_aR2IdeZP zeRPtDIs1Rd(4**REIC8gtY6KgXFhjjz z%=tfyOJp0?_JsWWg`X%CZ1KC7{o*Dcul!OC#LgxUwMTVK3@tse(H-Je@bHd5L*ha( zh^jz**JHp&&CRX4WY4#oJQYX5=Y$BtD7D_;+WPw3+FBJGPdNXyG_s!p-Je18`+P9B z7NdjnVErM0OvH~O_qMpa1k5Gdc%g)ecbL<81I225D(}C&!Z@~KcHFO+~3pj@DLR#X7_`b zweN9aZ03wf)Y^o$HK=F2pi+dZb4v zf9vUpTER~*ahP@EQ|AOUSIWof3;%q4ygwavw5Do~(6u-exkB+G@X1Ls2Qnr3O6;n!K>p zYVj?#r!ZfWe@TNsojjYj=@Uwl@!bLGNFLR~m3V4D39tOp9%ZKCIY+aw`M;8)^O3X7 zb@MKFjYvCd9J9ilA4$5#^_r3)gU}tSBwH0Q+0J3~tist28TWL-gOiE$HpQ0)8PiEl0#L zMlQV4`RR27PvpJ+g8_VAWF-Hn>J5u4UgYj7f>DE*XNlt~cg3*Z(qpTizgb zo$p7ks4(%GQW61bBH|>VcIwr>QC5qY#Ttow8<&P-$WJ#$K*(3pYG-BjCMGFyElJzH zub;IY_xe3vntrfANlD4NkQ>wwCIEb|uEwLGp~)R0;j+Np+uOsXqKb)&!)0%)t{y*t zx|Iwqc1xO>)GVY~Nk~ZL5Va1GydcB&5vL3k@5zac3QV!v!^yosC6PU+A;AWBrmAF= z_x|qYG}6mq?Eh5D2GJ6}vAQ6}BiV#qqb82-HWRVuQgc&DGhOC3y%-7eC!+6NfPqLR zf)q~r!uo<(_3?fovO5E+RyrhTw(nO^$;)0EU2qF{J_=B0k=+`VF)uh({iBYvTi)&= zirI2T>heZix;aAzI@J|Nex?oRVnc*5f!tkO%uoX%P@2_^9(4dr@WOXqSf828!QCbSSOCAW5SvfW-OuLay{uoJ9lo6d62fF?pIgeohVE8@;Aq z@@(oe9~XjwExcD=^c%g^N^-8!b7K0X=1dDY-zqNdDcPpv1i;AfQAsHfRQhvN z$jd{Bj*gc3@S*$me7n#4!)FO3YV2xxlEf%*Dfu4ZBs{xKsqSKv9eHurX^|99N&vL8 zFQY7z6GpgjzErr3UmVvoK0i&5j3ez%QNS0gS?I|#kB0p;P3DcbBXF2tBLzg0A2t9)j4?^`%9to8XgL zcD#8T&Y+KeY`+(jSxVuXm=&9yw?|OwtwxO#`Gsej=1U37{85%bv@cOnT%3>z)bNSc z`%bl`Cv49YT-o!k?ey}L3bxs>sv}wJNUBKRgn)>jiSFCO@C2E~{Rq5@JBA_vbedGP zJgjIT$HSVzQ7FFavHa>9XqFF+V@YWoT!k6wZf=&UZ@|pC61>n!8_wYN=`{Ag{?0(*4eObNeC_e*m9qwR%sn>a+pL{kS8{ zab-5I?~&BwuQ2>IxXu6g@tRF9?V@gdvnu0Syri|B;mw*#PmC=8a$k)90)e;y%^TgFWw)~PJp6rSb`t z`7Z5@3EbS=fWF|9;|AOb<%f-pjd|7g!mB&}Hsdy^@wooSbR0D+o;EkWs8$M$i*VBu z-l!6oCj+&$B!I~H7b`~sIeYO)g$Sp{NgUC4D`5sN^9#jASU70a`F?HwEV93)oDiah zpLyd|P-xU}fIw&awT2MwQw?p>XSTW-6iFHNVPG(^ivxZ#c{Hqyvy|U6qmJ8n(Eq}T zs>yt9S6sR%*ZYpchCTWGV0j5rFllN<+dx15-rqj&(m|M4^d_q%S(ox1}&mdv0X z&exmX{TxnaYKCUAJ*Zj4@cF@7=N^sEaduH7&KeZ0xO2KJM*9YhC zQ%N?OAH#JhtBa6ru^?+&>;gu)V48MeLErbC;J$+ F86C3FO-q|>^!RIsA_q_-Q? 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 D&1N`2?^O2}0ih;zfSo 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 A#Q*>R literal 0 HcmV?d00001 From aaaebe625b44650dc2b9471a80bff1b90292aa48 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 18:00:00 -0400 Subject: [PATCH 125/370] old file fixes --- code/game/objects/items/stacks/sheets/sheet_types.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index d2995585d1..050e4f7b15 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -252,7 +252,8 @@ GLOBAL_LIST_INIT(cloth_recipes, list ( \ new/datum/stack_recipe("bedsheet", /obj/item/bedsheet, 3), \ new/datum/stack_recipe("empty sandbag", /obj/item/emptysandbag, 4), \ null, \ - new/datum/stack_recipe("fingerless gloves", /obj/item/clothing/gloves/fingerless, 1), \ + new/datum/stack_recipe("fingerless gloves", /obj/item/clothing/gloves/fingerless, 1),\ + new/datum/stack_recipe("white gloves", /obj/item/clothing/gloves/color/white, 1),\ new/datum/stack_recipe("black gloves", /obj/item/clothing/gloves/color/black, 3), \ null, \ new/datum/stack_recipe("blindfold", /obj/item/clothing/glasses/sunglasses/blindfold, 2), \ From 5e6797461113e476c398d9a63279313d88ad9043 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 18:01:22 -0400 Subject: [PATCH 126/370] old file fixing --- code/game/objects/items/storage/boxes.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index 3f7561a576..b056960051 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -737,6 +737,10 @@ icon_state = "rubbershot_box" illustration = null +/obj/item/storage/box/beanbag/PopulateContents() + for(var/i in 1 to 6) + new /obj/item/ammo_casing/shotgun/beanbag(src) + /obj/item/storage/box/lethalslugs name = "box of 12g shotgun slugs" desc = "A box full of lethal 12g slug, designed for riot shotguns." From 9badda96d8b59e9f7b47305ee5af4c619ad57308 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 18:04:02 -0400 Subject: [PATCH 127/370] huh --- code/game/objects/items/storage/boxes.dm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index b056960051..d94b43c02b 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -781,10 +781,6 @@ for(var/i in 1 to 7) new /obj/item/ammo_casing/shotgun/incendiary(src) -/obj/item/storage/box/beanbag/PopulateContents() - for(var/i in 1 to 6) - new /obj/item/ammo_casing/shotgun/beanbag(src) - /obj/item/storage/box/actionfigure name = "box of action figures" desc = "The latest set of collectable action figures." From 5dde4555cce52bf2ef86ff067cf9dce9319e1174 Mon Sep 17 00:00:00 2001 From: Sishen Date: Fri, 31 May 2019 21:11:39 -0400 Subject: [PATCH 128/370] lmao2crate --- code/modules/cargo/packs.dm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index ca8f10869d..5e26914349 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -874,7 +874,6 @@ name = "Shield Generator Satellite" desc = "Protect the very existence of this station with these Anti-Meteor defenses. Contains three Shield Generator Satellites." cost = 3000 - special = TRUE contains = list( /obj/machinery/satellite/meteor_shield, /obj/machinery/satellite/meteor_shield, @@ -886,8 +885,7 @@ /datum/supply_pack/engineering/shield_sat_control name = "Shield System Control Board" desc = "A control system for the Shield Generator Satellite system." - cost = 5000 - special = TRUE + cost = 3000 contains = list(/obj/item/circuitboard/computer/sat_control) crate_name= "shield control board crate" From 2d91388be805c7575ddfc20b28ff24e84b413fb3 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 22:57:28 -0400 Subject: [PATCH 129/370] Update mining_tools.dm --- code/modules/mining/equipment/mining_tools.dm | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/code/modules/mining/equipment/mining_tools.dm b/code/modules/mining/equipment/mining_tools.dm index ca313182b6..4bd03540bf 100644 --- a/code/modules/mining/equipment/mining_tools.dm +++ b/code/modules/mining/equipment/mining_tools.dm @@ -31,7 +31,7 @@ force = 10 throwforce = 7 slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_NORMAL + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=1000) /obj/item/pickaxe/silver @@ -41,6 +41,7 @@ toolspeed = 0.5 //mines faster than a normal pickaxe, bought from mining vendor desc = "A silver-plated pickaxe that mines slightly faster than standard-issue." force = 17 + materials = list(MAT_SILVER=4000) /obj/item/pickaxe/diamond name = "diamond-tipped pickaxe" @@ -49,6 +50,7 @@ toolspeed = 0.3 desc = "A pickaxe with a diamond pick head. Extremely robust at cracking rock walls and digging up dirt." force = 19 + materials = list(MAT_DIAMOND=4000) /obj/item/pickaxe/drill name = "mining drill" @@ -58,6 +60,7 @@ toolspeed = 0.6 //available from roundstart, faster than a pickaxe. usesound = 'sound/weapons/drill.ogg' hitsound = 'sound/weapons/drill.ogg' + force = 17 desc = "An electric mining drill for the especially scrawny." /obj/item/pickaxe/drill/cyborg @@ -70,17 +73,19 @@ name = "diamond-tipped mining drill" icon_state = "diamonddrill" toolspeed = 0.2 + force = 19 desc = "Yours is the drill that will pierce the heavens!" /obj/item/pickaxe/drill/cyborg/diamond //This is the BORG version! name = "diamond-tipped cyborg mining drill" //To inherit the NODROP_1 flag, and easier to change borg specific drill mechanics. icon_state = "diamonddrill" - toolspeed = 0.2 + toolspeed = 0.1 /obj/item/pickaxe/drill/jackhammer name = "sonic jackhammer" icon_state = "jackhammer" item_state = "jackhammer" + w_class = WEIGHT_CLASS_HUGE toolspeed = 0.1 //the epitome of powertools. extremely fast mining, laughs at puny walls usesound = 'sound/weapons/sonic_jackhammer.ogg' hitsound = 'sound/weapons/sonic_jackhammer.ogg' @@ -97,12 +102,12 @@ slot_flags = ITEM_SLOT_BELT force = 8 tool_behaviour = TOOL_SHOVEL - toolspeed = 1 + toolspeed = 0.1 //Can only dig ash and thats about it, out classed by the picks and drills no more! usesound = 'sound/effects/shovel_dig.ogg' throwforce = 4 item_state = "shovel" w_class = WEIGHT_CLASS_NORMAL - materials = list(MAT_METAL=50) + materials = list(MAT_METAL=350) attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked") sharpness = IS_SHARP @@ -126,4 +131,5 @@ righthand_file = 'icons/mob/inhands/equipment/hydroponics_righthand.dmi' force = 5 throwforce = 7 + materials = list(MAT_METAL=50) w_class = WEIGHT_CLASS_SMALL From ed95ba20b68b2420a10b7157632d223c6f6477c7 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 23:03:00 -0400 Subject: [PATCH 130/370] so we dont speed removal plants by missclicks --- code/modules/mining/equipment/mining_tools.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/mining/equipment/mining_tools.dm b/code/modules/mining/equipment/mining_tools.dm index 4bd03540bf..a4218b5408 100644 --- a/code/modules/mining/equipment/mining_tools.dm +++ b/code/modules/mining/equipment/mining_tools.dm @@ -129,6 +129,7 @@ item_state = "spade" lefthand_file = 'icons/mob/inhands/equipment/hydroponics_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/hydroponics_righthand.dmi' + toolspeed = 0.5 force = 5 throwforce = 7 materials = list(MAT_METAL=50) From 78822d2e42eb3555ac1569483c3e481336ad217e Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 23:06:08 -0400 Subject: [PATCH 131/370] Update resonator.dm --- code/modules/mining/equipment/resonator.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/mining/equipment/resonator.dm b/code/modules/mining/equipment/resonator.dm index e23c3deb58..2672bc1cb6 100644 --- a/code/modules/mining/equipment/resonator.dm +++ b/code/modules/mining/equipment/resonator.dm @@ -8,10 +8,10 @@ righthand_file = 'icons/mob/inhands/equipment/mining_righthand.dmi' desc = "A handheld device that creates small fields of energy that resonate until they detonate, crushing rock. It does increased damage in low pressure." w_class = WEIGHT_CLASS_NORMAL - force = 15 + force = 18 throwforce = 10 var/burst_time = 30 - var/fieldlimit = 4 + var/fieldlimit = 6 var/list/fields = list() var/quick_burst_mod = 0.8 @@ -20,7 +20,7 @@ desc = "An upgraded version of the resonator that can produce more fields at once, as well as having no damage penalty for bursting a resonance field early." icon_state = "resonator_u" item_state = "resonator_u" - fieldlimit = 6 + fieldlimit = 8 quick_burst_mod = 1 /obj/item/resonator/attack_self(mob/user) From d6486e2f6c9aae1904d45befd6434c19aac457d0 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 31 May 2019 23:13:31 -0400 Subject: [PATCH 132/370] Update resonator.dm --- code/modules/mining/equipment/resonator.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/mining/equipment/resonator.dm b/code/modules/mining/equipment/resonator.dm index 2672bc1cb6..f63b459f10 100644 --- a/code/modules/mining/equipment/resonator.dm +++ b/code/modules/mining/equipment/resonator.dm @@ -20,6 +20,7 @@ desc = "An upgraded version of the resonator that can produce more fields at once, as well as having no damage penalty for bursting a resonance field early." icon_state = "resonator_u" item_state = "resonator_u" + force = 20 fieldlimit = 8 quick_burst_mod = 1 From a37f84fb9b6d02ab44b60cde2d42498d9a7b9a4d Mon Sep 17 00:00:00 2001 From: CalamaBanana Date: Sat, 1 Jun 2019 17:28:17 +0200 Subject: [PATCH 133/370] Ports RP Deer taur and adds Elf Ears to Mammals Ports RP Deer taur and adds Elf Ears to Mammals --- code/modules/clothing/suits/_suits.dm | 2 +- .../mob/dead/new_player/sprite_accessories.dm | 13 +++++++++++++ modular_citadel/icons/mob/mam_taur.dmi | Bin 27986 -> 33826 bytes 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/code/modules/clothing/suits/_suits.dm b/code/modules/clothing/suits/_suits.dm index 8a02245550..7346dc9ea9 100644 --- a/code/modules/clothing/suits/_suits.dm +++ b/code/modules/clothing/suits/_suits.dm @@ -36,7 +36,7 @@ if(tauric == TRUE) center = TRUE dimension_x = 64 - else if(H.dna.features["taur"] in list("Fox","Wolf","Otie","Drake","Lab","Shepherd","Husky","Eevee","Panther","Horse","Cow","Tiger")) + else if(H.dna.features["taur"] in list("Fox","Wolf","Otie","Drake","Lab","Shepherd","Husky","Eevee","Panther","Horse","Cow","Tiger","Deer")) taurmode = PAW_TAURIC if(tauric == TRUE) center = TRUE diff --git a/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm b/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm index a4532d0820..e552c2cbdd 100644 --- a/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm +++ b/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm @@ -959,6 +959,13 @@ name = "Eevee" icon_state = "eevee" + +/datum/sprite_accessory/mam_ears/elf + name = "Elf" + icon_state = "elf" + color_src = MUTCOLORS3 + + /datum/sprite_accessory/mam_ears/elephant name = "Elephant" icon_state = "elephant" @@ -1497,6 +1504,12 @@ datum/sprite_accessory/mam_tails/insect icon_state = "cow" taur_mode = HOOF_TAURIC +/datum/sprite_accessory/taur/deer + name = "Deer" + icon_state = "deer" + taur_mode = HOOF_TAURIC + color_src = MUTCOLORS + /datum/sprite_accessory/taur/drake name = "Drake" icon_state = "drake" diff --git a/modular_citadel/icons/mob/mam_taur.dmi b/modular_citadel/icons/mob/mam_taur.dmi index 3d0d4a0e841e85f93eaf89a4c3447a09eca94d68..84367ebf0af6c83676f4354b51e6869dc6e6755d 100644 GIT binary patch literal 33826 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 n&FAV;ge#o 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 literal 27986 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 LEtPU5tMLB;xQmD- From f8586c9699cebf44af7ec188a3702a5f3b9deb95 Mon Sep 17 00:00:00 2001 From: Fermi Date: Sat, 1 Jun 2019 18:51:25 +0100 Subject: [PATCH 134/370] Adds Friendly and empahty quirk from tg. --- code/__DEFINES/traits.dm | 2 ++ .../mood_events/generic_negative_events.dm | 8 +++++++ .../mood_events/generic_positive_events.dm | 24 +++++++++++++++++++ code/datums/traits/good.dm | 17 +++++++++++++ .../mob/living/carbon/carbon_defense.dm | 6 +++++ .../mob/living/carbon/human/examine.dm | 19 +++++++++++++++ 6 files changed, 76 insertions(+) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index b2caf614b3..1dca4b9633 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -72,6 +72,8 @@ #define TRAIT_CROCRIN_IMMUNE "crocin_immune" #define TRAIT_NYMPHO "nymphomania" #define TRAIT_MASO "masochism" +#define TRAIT_EMPATH "empath" +#define TRAIT_FRIENDLY "friendly" // common trait sources #define TRAIT_GENERIC "generic" diff --git a/code/datums/mood_events/generic_negative_events.dm b/code/datums/mood_events/generic_negative_events.dm index 4021d11128..fc3e689c7e 100644 --- a/code/datums/mood_events/generic_negative_events.dm +++ b/code/datums/mood_events/generic_negative_events.dm @@ -125,3 +125,11 @@ /datum/mood_event/surgery description = "HE'S CUTTING ME OPEN!!\n" mood_change = -8 + +/datum/mood_event/sad_empath + description = "Someone seems upset...\n" + mood_change = -2 + timeout = 600 + + /datum/mood_event/sad_empath/add_effects(mob/sadtarget) + description = "[sadtarget.name] seems upset...\n" diff --git a/code/datums/mood_events/generic_positive_events.dm b/code/datums/mood_events/generic_positive_events.dm index 6989744fe3..ac2e31d37d 100644 --- a/code/datums/mood_events/generic_positive_events.dm +++ b/code/datums/mood_events/generic_positive_events.dm @@ -75,3 +75,27 @@ description = "There is something soothing about this music.\n" mood_change = 3 timeout = 600 + +/datum/mood_event/betterhug + description = "Someone was very nice to me.\n" + mood_change = 3 + timeout = 3000 + + /datum/mood_event/betterhug/add_effects(mob/friend) + description = "[friend.name] was very nice to me.\n" + + /datum/mood_event/besthug + description = "Someone is great to be around, they make me feel so happy!\n" + mood_change = 5 + timeout = 3000 + + /datum/mood_event/besthug/add_effects(mob/friend) + description = "[friend.name] is great to be around, [friend.p_they()] makes me feel so happy!\n" + +/datum/mood_event/sad_empath + description = "Someone seems happy!\n" + mood_change = 2 + timeout = 600 + + /datum/mood_event/sad_empath/add_effects(mob/sadtarget) + description = "[sadtarget.name]'s happiness is infectious!\n" diff --git a/code/datums/traits/good.dm b/code/datums/traits/good.dm index 513115b194..300a1264eb 100644 --- a/code/datums/traits/good.dm +++ b/code/datums/traits/good.dm @@ -35,6 +35,14 @@ lose_text = "You no longer feel like drinking would ease your pain." medical_record_text = "Patient has unusually efficient liver metabolism and can slowly regenerate wounds by drinking alcoholic beverages." +/datum/quirk/empath + name = "Empath" + desc = "Whether it's a sixth sense or careful study of body language, it only takes you a quick glance at someone to understand how they feel." + value = 2 + mob_trait = TRAIT_EMPATH + gain_text = "You feel in tune with those around you." + lose_text = "You feel isolated from others." + /datum/quirk/freerunning name = "Freerunning" desc = "You're great at quick moves! You can climb tables more quickly." @@ -43,6 +51,15 @@ gain_text = "You feel lithe on your feet!" lose_text = "You feel clumsy again." +/datum/quirk/friendly + name = "Friendly" + desc = "You give the best hugs, especially when you're in the right mood." + value = 1 + mob_trait = TRAIT_FRIENDLY + gain_text = "You want to hug someone." + lose_text = "You no longer feel compelled to hug others." + mood_quirk = TRUE + /datum/quirk/jolly name = "Jolly" desc = "You sometimes just feel happy, for no reason at all." diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index d8bb90460a..a739f599af 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -306,6 +306,12 @@ M.visible_message("[M] hugs [src] to make [p_them()] feel better!", \ "You hug [src] to make [p_them()] feel better!") SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "hug", /datum/mood_event/hug) + if(M.has_trait(TRAIT_FRIENDLY)) + GET_COMPONENT_FROM(mood, /datum/component/mood, M) + if (mood.sanity >= SANITY_GREAT) + SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/besthug, M) + else if (mood.sanity >= SANITY_DISTURBED) + SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/betterhug, M) AdjustStun(-60) AdjustKnockdown(-60) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 26e19ff376..a18c598173 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -281,6 +281,25 @@ if(91.01 to INFINITY) msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" + if(user.has_trait(TRAIT_EMPATH) && !appears_dead && (src != user)) + if (a_intent != INTENT_HELP) + msg += "[t_He] seem[p_s()] to be on guard.\n" + if (getOxyLoss() >= 10) + msg += "[t_He] seem[p_s()] winded.\n" + if (getToxLoss() >= 10) + msg += "[t_He] seem[p_s()] sickly.\n" + GET_COMPONENT_FROM(mood, /datum/component/mood, src) + if(mood.sanity <= SANITY_DISTURBED) + msg += "[t_He] seem[p_s()] distressed.\n" + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empath", /datum/mood_event/sad_empath, src) + if(mood.sanity >= SANITY_GREAT) + msg += "[t_He] seem[p_s()] to be doing well!\n" + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empathH", /datum/mood_event/happy_empath, src) + if (has_trait(TRAIT_BLIND)) + msg += "[t_He] appear[p_s()] to be staring off into space.\n" + if (has_trait(TRAIT_DEAF)) + msg += "[t_He] appear[p_s()] to not be responding to noises.\n" + msg += "" if(!appears_dead) From 5918b026aa41b5adc0abbd07caa4d6ce6e712fcf Mon Sep 17 00:00:00 2001 From: Fermi Date: Sat, 1 Jun 2019 20:02:51 +0100 Subject: [PATCH 135/370] Fixes, PLEASE CHECK HEADPATS IN MOODULAR. --- .../mood_events/generic_negative_events.dm | 2 +- .../mood_events/generic_positive_events.dm | 12 +++++----- .../mob/living/carbon/carbon_defense.dm | 16 +++++++++---- .../mob/living/carbon/human/examine.dm | 6 ++--- .../mood_events/generic_positive_events.dm | 4 ++-- .../code/datums/mood_events/moodular.dm | 2 ++ tgstation.dme | 24 +++++++++---------- 7 files changed, 37 insertions(+), 29 deletions(-) diff --git a/code/datums/mood_events/generic_negative_events.dm b/code/datums/mood_events/generic_negative_events.dm index fc3e689c7e..06857c0f55 100644 --- a/code/datums/mood_events/generic_negative_events.dm +++ b/code/datums/mood_events/generic_negative_events.dm @@ -131,5 +131,5 @@ mood_change = -2 timeout = 600 - /datum/mood_event/sad_empath/add_effects(mob/sadtarget) +/datum/mood_event/sad_empath/add_effects(mob/sadtarget) description = "[sadtarget.name] seems upset...\n" diff --git a/code/datums/mood_events/generic_positive_events.dm b/code/datums/mood_events/generic_positive_events.dm index ac2e31d37d..051a548d1d 100644 --- a/code/datums/mood_events/generic_positive_events.dm +++ b/code/datums/mood_events/generic_positive_events.dm @@ -81,21 +81,21 @@ mood_change = 3 timeout = 3000 - /datum/mood_event/betterhug/add_effects(mob/friend) +/datum/mood_event/betterhug/add_effects(mob/friend) description = "[friend.name] was very nice to me.\n" - /datum/mood_event/besthug +/datum/mood_event/besthug description = "Someone is great to be around, they make me feel so happy!\n" mood_change = 5 timeout = 3000 - /datum/mood_event/besthug/add_effects(mob/friend) +/datum/mood_event/besthug/add_effects(mob/friend) description = "[friend.name] is great to be around, [friend.p_they()] makes me feel so happy!\n" -/datum/mood_event/sad_empath +/datum/mood_event/happy_empath description = "Someone seems happy!\n" mood_change = 2 timeout = 600 - /datum/mood_event/sad_empath/add_effects(mob/sadtarget) - description = "[sadtarget.name]'s happiness is infectious!\n" +/datum/mood_event/happy_empath/add_effects(var/mob/happytarget) + description = "[happytarget.name]'s happiness is infectious!\n" diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index a739f599af..2c27f7d585 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -277,6 +277,12 @@ M.visible_message("[M] gives [H] a pat on the head to make [p_them()] feel better!", \ "You give [H] a pat on the head to make [p_them()] feel better!") SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "headpat", /datum/mood_event/headpat) + if(M.has_trait(TRAIT_FRIENDLY)) + GET_COMPONENT_FROM(mood, /datum/component/mood, M) + if (mood.sanity >= SANITY_GREAT) + SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/besthug, M) + else if (mood.sanity >= SANITY_DISTURBED) + SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/betterhug, M) if(H.dna.species.can_wag_tail(H)) if("tail_human" in pref_species.default_features) if(H.dna.features["tail_human"] == "None") @@ -307,11 +313,11 @@ "You hug [src] to make [p_them()] feel better!") SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "hug", /datum/mood_event/hug) if(M.has_trait(TRAIT_FRIENDLY)) - GET_COMPONENT_FROM(mood, /datum/component/mood, M) - if (mood.sanity >= SANITY_GREAT) - SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/besthug, M) - else if (mood.sanity >= SANITY_DISTURBED) - SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/betterhug, M) + GET_COMPONENT_FROM(mood, /datum/component/mood, M) + if (mood.sanity >= SANITY_GREAT) + SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/besthug, M) + else if (mood.sanity >= SANITY_DISTURBED) + SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/betterhug, M) AdjustStun(-60) AdjustKnockdown(-60) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index a18c598173..59cdda8484 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -281,7 +281,7 @@ if(91.01 to INFINITY) msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" - if(user.has_trait(TRAIT_EMPATH) && !appears_dead && (src != user)) + if(has_trait(TRAIT_EMPATH) && !appears_dead && (src != user)) if (a_intent != INTENT_HELP) msg += "[t_He] seem[p_s()] to be on guard.\n" if (getOxyLoss() >= 10) @@ -292,8 +292,8 @@ if(mood.sanity <= SANITY_DISTURBED) msg += "[t_He] seem[p_s()] distressed.\n" SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empath", /datum/mood_event/sad_empath, src) - if(mood.sanity >= SANITY_GREAT) - msg += "[t_He] seem[p_s()] to be doing well!\n" + if(mood.mood >= 5) //So roundstart people aren't all "happy" + msg += "[t_He] seem[p_s()] to have had something nice happen to them recently.\n" SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empathH", /datum/mood_event/happy_empath, src) if (has_trait(TRAIT_BLIND)) msg += "[t_He] appear[p_s()] to be staring off into space.\n" diff --git a/modular_citadel/code/datums/mood_events/generic_positive_events.dm b/modular_citadel/code/datums/mood_events/generic_positive_events.dm index 717fe5a47d..7b989d7700 100644 --- a/modular_citadel/code/datums/mood_events/generic_positive_events.dm +++ b/modular_citadel/code/datums/mood_events/generic_positive_events.dm @@ -24,11 +24,11 @@ description = "I came!\n" //funny meme haha mood_change = 3 timeout = 1000 - + /datum/mood_event/fedpred description = "I've devoured someone!\n" mood_change = 3 /datum/mood_event/fedprey description = "It feels quite cozy in here.\n" - mood_change = 3 \ No newline at end of file + mood_change = 3 diff --git a/modular_citadel/code/datums/mood_events/moodular.dm b/modular_citadel/code/datums/mood_events/moodular.dm index b764c0027e..5b0e5ace24 100644 --- a/modular_citadel/code/datums/mood_events/moodular.dm +++ b/modular_citadel/code/datums/mood_events/moodular.dm @@ -7,12 +7,14 @@ if(mood) mood.add_event("hugbox", /datum/mood_event/hugbox) +/* // headpats (IMPORTANT) /mob/living/carbon/help_shake_act(mob/living/carbon/M) . = ..() GET_COMPONENT_FROM(mood, /datum/component/mood, src) if(mood) mood.add_event("headpat", /datum/mood_event/headpat) +*/ // plush petting /obj/item/toy/plush/attack_self(mob/user) diff --git a/tgstation.dme b/tgstation.dme index f2cef76dd9..c9098249b0 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2505,22 +2505,10 @@ #include "code\modules\research\designs\AI_module_designs.dm" #include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\bluespace_designs.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" #include "code\modules\research\designs\computer_part_designs.dm" #include "code\modules\research\designs\electronics_designs.dm" #include "code\modules\research\designs\equipment_designs.dm" #include "code\modules\research\designs\limbgrower_designs.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\designs\mecha_designs.dm" #include "code\modules\research\designs\mechfabricator_designs.dm" #include "code\modules\research\designs\medical_designs.dm" @@ -2538,6 +2526,18 @@ #include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\machinery\_production.dm" #include "code\modules\research\machinery\circuit_imprinter.dm" #include "code\modules\research\machinery\departmental_circuit_imprinter.dm" From 0105dbf562f2fbb6c33d3fa604faf39258617c0c Mon Sep 17 00:00:00 2001 From: Fermi Date: Sat, 1 Jun 2019 20:04:41 +0100 Subject: [PATCH 136/370] Removed duplicate headpat code. --- modular_citadel/code/datums/mood_events/moodular.dm | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/modular_citadel/code/datums/mood_events/moodular.dm b/modular_citadel/code/datums/mood_events/moodular.dm index 5b0e5ace24..b53ce417e8 100644 --- a/modular_citadel/code/datums/mood_events/moodular.dm +++ b/modular_citadel/code/datums/mood_events/moodular.dm @@ -7,14 +7,7 @@ if(mood) mood.add_event("hugbox", /datum/mood_event/hugbox) -/* -// headpats (IMPORTANT) -/mob/living/carbon/help_shake_act(mob/living/carbon/M) - . = ..() - GET_COMPONENT_FROM(mood, /datum/component/mood, src) - if(mood) - mood.add_event("headpat", /datum/mood_event/headpat) -*/ +//Removed headpats here, duplicate code? // plush petting /obj/item/toy/plush/attack_self(mob/user) From 9aaeed6f8156543dc85cdadde458e37e3c00cc94 Mon Sep 17 00:00:00 2001 From: Sishen Date: Sat, 1 Jun 2019 19:46:09 -0400 Subject: [PATCH 137/370] Update packs.dm --- code/modules/cargo/packs.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index 5e26914349..479a8db0ad 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -873,7 +873,7 @@ /datum/supply_pack/engineering/shield_sat name = "Shield Generator Satellite" desc = "Protect the very existence of this station with these Anti-Meteor defenses. Contains three Shield Generator Satellites." - cost = 3000 + cost = 4000 contains = list( /obj/machinery/satellite/meteor_shield, /obj/machinery/satellite/meteor_shield, @@ -885,7 +885,7 @@ /datum/supply_pack/engineering/shield_sat_control name = "Shield System Control Board" desc = "A control system for the Shield Generator Satellite system." - cost = 3000 + cost = 4000 contains = list(/obj/item/circuitboard/computer/sat_control) crate_name= "shield control board crate" From 9347ad57b11e0ff20bcf834efff894877f787f73 Mon Sep 17 00:00:00 2001 From: Sishen Date: Sat, 1 Jun 2019 20:20:55 -0400 Subject: [PATCH 138/370] sneaky erp --- code/modules/mob/say_vr.dm | 76 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/code/modules/mob/say_vr.dm b/code/modules/mob/say_vr.dm index 6cc0ca185f..850566f625 100644 --- a/code/modules/mob/say_vr.dm +++ b/code/modules/mob/say_vr.dm @@ -117,6 +117,73 @@ proc/get_top_level_mob(var/mob/S) message = null emote_type = EMOTE_VISIBLE +///////////////// SUBTLE 2: NO GHOST BOOGALOO + +/datum/emote/living/subtler + key = "subtler" + key_third_person = "subtler" + message = null + mob_type_blacklist_typecache = list(/mob/living/brain) + + +/datum/emote/living/subtler/proc/check_invalid(mob/user, input) + . = TRUE + if(copytext(input,1,5) == "says") + to_chat(user, "Invalid emote.") + else if(copytext(input,1,9) == "exclaims") + to_chat(user, "Invalid emote.") + else if(copytext(input,1,6) == "yells") + to_chat(user, "Invalid emote.") + else if(copytext(input,1,5) == "asks") + to_chat(user, "Invalid emote.") + else + . = FALSE + +/datum/emote/living/subtler/run_emote(mob/user, params, type_override = null) + if(jobban_isbanned(user, "emote")) + to_chat(user, "You cannot send subtle emotes (banned).") + return FALSE + else if(user.client && user.client.prefs.muted & MUTE_IC) + to_chat(user, "You cannot send IC messages (muted).") + return FALSE + else if(!params) + var/subtle_emote = copytext(sanitize(input("Choose an emote to display.") as message|null), 1, MAX_MESSAGE_LEN) + if(subtle_emote && !check_invalid(user, subtle_emote)) + var/type = input("Is this a visible or hearable emote?") as null|anything in list("Visible", "Hearable") + switch(type) + if("Visible") + emote_type = EMOTE_VISIBLE + if("Hearable") + emote_type = EMOTE_AUDIBLE + else + alert("Unable to use this emote, must be either hearable or visible.") + return + message = subtle_emote + else + return FALSE + else + message = params + if(type_override) + emote_type = type_override + . = TRUE + if(!can_run_emote(user)) + return FALSE + + user.log_message(message, INDIVIDUAL_EMOTE_LOG) + message = "[user] " + "[message]" + + for(var/mob/M) + if(M in list(/mob/living)) + M.show_message(message) + + if(emote_type == EMOTE_AUDIBLE) + user.audible_message(message=message,hearing_distance=1) + else + user.visible_message(message=message,self_message=message,vision_distance=1) + log_emote("[key_name(user)] : [message]") + + message = null + ///////////////// VERB CODE /mob/living/verb/subtle() set name = "Subtle" @@ -125,3 +192,12 @@ proc/get_top_level_mob(var/mob/S) to_chat(usr, "Speech is currently admin-disabled.") return usr.emote("subtle") + +///////////////// VERB CODE 2 +/mob/living/verb/subtler() + set name = "Subtler" + set category = "IC" + if(GLOB.say_disabled) //This is here to try to identify lag problems + to_chat(usr, "Speech is currently admin-disabled.") + return + usr.emote("subtler") From e7802a9b032f5ee9b2c8c96bd3f16156f83455f5 Mon Sep 17 00:00:00 2001 From: BurgerLua Date: Sun, 2 Jun 2019 02:02:47 -0700 Subject: [PATCH 139/370] Arcade Loot Improvements --- code/game/machinery/computer/arcade.dm | 136 +++++++++++++---------- code/game/objects/items/storage/boxes.dm | 13 +++ tgstation.dme | 24 ++-- 3 files changed, 103 insertions(+), 70 deletions(-) diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 1f262c0979..7ef70ddd21 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -1,3 +1,8 @@ +#define ARCADE_WEIGHT_TRICK 4 +#define ARCADE_WEIGHT_USELESS 2 +#define ARCADE_WEIGHT_RARE 1 + + /obj/machinery/computer/arcade name = "random arcade" desc = "random arcade machine" @@ -6,55 +11,67 @@ icon_screen = "invaders" clockwork = TRUE //it'd look weird var/list/prizes = list( - /obj/item/storage/box/snappops = 8, - /obj/item/toy/talking/AI = 8, - /obj/item/toy/talking/codex_gigas = 8, - /obj/item/clothing/under/syndicate/tacticool = 8, - /obj/item/toy/sword = 8, - /obj/item/toy/gun = 8, - /obj/item/gun/ballistic/shotgun/toy/crossbow = 8, - /obj/item/storage/box/fakesyndiesuit = 8, - /obj/item/storage/crayons = 8, - /obj/item/toy/spinningtoy = 8, - /obj/item/toy/prize/ripley = 4, - /obj/item/toy/prize/fireripley = 4, - /obj/item/toy/prize/deathripley = 4, - /obj/item/toy/prize/gygax = 4, - /obj/item/toy/prize/durand = 4, - /obj/item/toy/prize/honk = 4, - /obj/item/toy/prize/marauder = 4, - /obj/item/toy/prize/seraph = 4, - /obj/item/toy/prize/mauler = 4, - /obj/item/toy/prize/odysseus = 4, - /obj/item/toy/prize/phazon = 4, - /obj/item/toy/prize/reticence = 4, - /obj/item/toy/cards/deck = 8, - /obj/item/toy/nuke = 8, - /obj/item/toy/minimeteor = 8, - /obj/item/toy/redbutton = 8, - /obj/item/toy/talking/owl = 8, - /obj/item/toy/talking/griffin = 8, - /obj/item/coin/antagtoken = 8, - /obj/item/stack/tile/fakespace/loaded = 8, - /obj/item/stack/tile/fakepit/loaded = 8, - /obj/item/toy/toy_xeno = 8, - /obj/item/storage/box/actionfigure = 4, - /obj/item/restraints/handcuffs/fake = 8, - /obj/item/grenade/chem_grenade/glitter/pink = 4, - /obj/item/grenade/chem_grenade/glitter/blue = 4, - /obj/item/grenade/chem_grenade/glitter/white = 4, - /obj/item/toy/eightball = 8, - /obj/item/toy/windupToolbox = 8, - /obj/item/toy/clockwork_watch = 8, - /obj/item/toy/toy_dagger = 8, - /obj/item/extendohand/acme = 4, - /obj/item/hot_potato/harmless/toy = 4, - /obj/item/card/emagfake = 4, - /obj/item/clothing/shoes/wheelys = 8, - /obj/item/clothing/shoes/kindleKicks = 8, - /obj/item/storage/belt/military/snack = 8, - /obj/item/toy/plush/random = 450 - )//plushies have a 0.6 chance + /obj/item/toy/balloon = ARCADE_WEIGHT_USELESS, + /obj/item/toy/beach_ball = ARCADE_WEIGHT_USELESS, + /obj/item/toy/cattoy = ARCADE_WEIGHT_USELESS, + /obj/item/toy/clockwork_watch = ARCADE_WEIGHT_TRICK, + /obj/item/toy/dummy = ARCADE_WEIGHT_TRICK, + /obj/item/toy/eightball = ARCADE_WEIGHT_USELESS, + /obj/item/toy/eightball/haunted = ARCADE_WEIGHT_RARE, + /obj/item/storage/box/actionfigure = ARCADE_WEIGHT_USELESS, + /obj/item/toy/foamblade = ARCADE_WEIGHT_TRICK, + /obj/item/toy/gun = ARCADE_WEIGHT_TRICK, + /obj/item/toy/gun/justicar = ARCADE_WEIGHT_TRICK, + /obj/item/toy/gun/m41 = ARCADE_WEIGHT_TRICK, + /obj/item/toy/katana = ARCADE_WEIGHT_TRICK, + /obj/item/toy/minimeteor = ARCADE_WEIGHT_TRICK, + /obj/item/toy/nuke = ARCADE_WEIGHT_TRICK, + /obj/item/toy/plush/random = ARCADE_WEIGHT_USELESS, + /obj/item/toy/redbutton = ARCADE_WEIGHT_TRICK, + /obj/item/toy/spinningtoy = ARCADE_WEIGHT_TRICK, + /obj/item/toy/sword = ARCADE_WEIGHT_TRICK, + /obj/item/toy/sword/cx = ARCADE_WEIGHT_TRICK, + /obj/item/toy/sword/darksabre = ARCADE_WEIGHT_TRICK, + /obj/item/toy/talking/AI = ARCADE_WEIGHT_USELESS, + /obj/item/toy/talking/codex_gigas = ARCADE_WEIGHT_USELESS, + /obj/item/toy/talking/griffin = ARCADE_WEIGHT_USELESS, + /obj/item/toy/talking/owl = ARCADE_WEIGHT_USELESS, + /obj/item/toy/toy_dagger = ARCADE_WEIGHT_TRICK, + /obj/item/toy/toy_xeno = ARCADE_WEIGHT_TRICK, + /obj/item/toy/windupToolbox = ARCADE_WEIGHT_TRICK, + + /obj/item/twohanded/dualsaber/toy = ARCADE_WEIGHT_RARE, + /mob/living/simple_animal/bot/secbot/grievous/toy = ARCADE_WEIGHT_RARE, + /obj/item/clothing/mask/facehugger/toy = ARCADE_WEIGHT_RARE, + /obj/item/gun/ballistic/automatic/toy/pistol/unrestricted = ARCADE_WEIGHT_TRICK, + /obj/item/hot_potato/harmless/toy = ARCADE_WEIGHT_RARE, + /obj/item/twohanded/dualsaber/toy = ARCADE_WEIGHT_RARE, + /obj/item/twohanded/hypereutactic/toy = ARCADE_WEIGHT_RARE, + /obj/item/twohanded/hypereutactic/toy/rainbow = ARCADE_WEIGHT_RARE, + + /obj/item/storage/box/snappops = ARCADE_WEIGHT_TRICK, + /obj/item/clothing/under/syndicate/tacticool = ARCADE_WEIGHT_TRICK, + /obj/item/gun/ballistic/shotgun/toy/crossbow = ARCADE_WEIGHT_TRICK, + /obj/item/storage/box/fakesyndiesuit = ARCADE_WEIGHT_TRICK, + /obj/item/storage/crayons = ARCADE_WEIGHT_USELESS, + /obj/item/coin/antagtoken = ARCADE_WEIGHT_USELESS, + /obj/item/stack/tile/fakespace/loaded = ARCADE_WEIGHT_TRICK, + /obj/item/stack/tile/fakepit/loaded = ARCADE_WEIGHT_TRICK, + /obj/item/restraints/handcuffs/fake = ARCADE_WEIGHT_TRICK, + + /obj/item/grenade/chem_grenade/glitter/pink = ARCADE_WEIGHT_TRICK, + /obj/item/grenade/chem_grenade/glitter/blue = ARCADE_WEIGHT_TRICK, + /obj/item/grenade/chem_grenade/glitter/white = ARCADE_WEIGHT_TRICK, + + /obj/item/extendohand/acme = ARCADE_WEIGHT_TRICK, + /obj/item/card/emagfake = ARCADE_WEIGHT_TRICK, + /obj/item/clothing/shoes/wheelys = ARCADE_WEIGHT_RARE, + /obj/item/clothing/shoes/kindleKicks = ARCADE_WEIGHT_RARE, + /obj/item/storage/belt/military/snack = ARCADE_WEIGHT_RARE, + + /obj/item/clothing/mask/fakemoustache/italian = ARCADE_WEIGHT_RARE, + /obj/item/disk/nuclear/fake = ARCADE_WEIGHT_RARE + ) light_color = LIGHT_COLOR_GREEN @@ -74,7 +91,8 @@ /obj/machinery/computer/arcade/proc/prizevend(mob/user) SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "arcade", /datum/mood_event/arcade) - if(prob(0.0001)) //1 in a million + + if(prob(1) && prob(1) && prob(1)) //Proper 1 in a million new /obj/item/gun/energy/pulse/prize(src) SSmedals.UnlockMedal(MEDAL_PULSE, usr.client) @@ -124,6 +142,8 @@ var/blocked = FALSE //Player cannot attack/heal while set var/turtle = 0 + var/turn_speed = 5 //Measured in deciseconds. + /obj/machinery/computer/arcade/battle/Reset() var/name_action var/name_part1 @@ -172,7 +192,7 @@ if(turtle > 0) turtle-- - sleep(10) + sleep(turn_speed) enemy_hp -= attackamt arcade_action(usr) @@ -185,7 +205,7 @@ updateUsrDialog() turtle++ - sleep(10) + sleep(turn_speed) player_mp -= pointamt player_hp += healamt blocked = TRUE @@ -202,7 +222,7 @@ turtle-- updateUsrDialog() - sleep(10) + sleep(turn_speed) arcade_action(usr) if (href_list["close"]) @@ -211,10 +231,10 @@ else if (href_list["newgame"]) //Reset everything temp = "New Round" - player_hp = 30 - player_mp = 10 - enemy_hp = 45 - enemy_mp = 20 + player_hp = initial(player_hp) + player_mp = initial(player_mp) + enemy_hp = initial(enemy_hp) + enemy_mp = initial(enemy_mp) gameover = FALSE turtle = 0 @@ -260,7 +280,7 @@ if (player_mp <= 0) gameover = TRUE - sleep(10) + sleep(turn_speed) temp = "You have been drained! GAME OVER" playsound(loc, 'sound/arcade/lose.ogg', 50, 1, extrarange = -3, falloff = 10) if(obj_flags & EMAGGED) diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index f09c040795..151561f957 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -768,6 +768,19 @@ var/randomFigure = pick(subtypesof(/obj/item/toy/figure)) new randomFigure(src) +/obj/item/storage/box/mechfigures + name = "box of mech figures" + desc = "The latest set of collectable mech figures." + icon_state = "box" + +/obj/item/storage/box/mechfigures/PopulateContents() + for(var/i in 1 to 4) + var/randomFigure = pick(subtypesof(/obj/item/toy/prize/)) + new randomFigure(src) + + + + #define NODESIGN "None" #define NANOTRASEN "NanotrasenStandard" #define SYNDI "SyndiSnacks" diff --git a/tgstation.dme b/tgstation.dme index f2cef76dd9..c9098249b0 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2505,22 +2505,10 @@ #include "code\modules\research\designs\AI_module_designs.dm" #include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\bluespace_designs.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" #include "code\modules\research\designs\computer_part_designs.dm" #include "code\modules\research\designs\electronics_designs.dm" #include "code\modules\research\designs\equipment_designs.dm" #include "code\modules\research\designs\limbgrower_designs.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\designs\mecha_designs.dm" #include "code\modules\research\designs\mechfabricator_designs.dm" #include "code\modules\research\designs\medical_designs.dm" @@ -2538,6 +2526,18 @@ #include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\machinery\_production.dm" #include "code\modules\research\machinery\circuit_imprinter.dm" #include "code\modules\research\machinery\departmental_circuit_imprinter.dm" From 818ec19561278b6294531912c3ad8afd4b5787f5 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 2 Jun 2019 04:44:57 -0500 Subject: [PATCH 140/370] Working as intended, fixed a few other missing sprites Started groundwork for multi-breasts and hidden balls. --- code/__HELPERS/_cit_helpers.dm | 2 + code/__HELPERS/global_lists.dm | 8 ++- code/__HELPERS/mobs.dm | 3 +- code/modules/client/preferences.dm | 1 + code/modules/client/preferences_savefile.dm | 1 + .../code/modules/arousal/organs/breasts.dm | 11 ++-- .../code/modules/arousal/organs/eggsack.dm | 1 - .../code/modules/arousal/organs/genitals.dm | 49 +++++++++--------- .../organs/genitals_sprite_accessories.dm | 18 ++++++- .../code/modules/arousal/organs/penis.dm | 5 +- .../code/modules/arousal/organs/testicles.dm | 45 ++++++++-------- .../code/modules/arousal/organs/womb.dm | 2 - .../modules/client/preferences_savefile.dm | 1 + .../icons/obj/genitals/breasts_onmob.dmi | Bin 1593 -> 1401 bytes modular_citadel/icons/obj/genitals/penis.dmi | Bin 3200 -> 2624 bytes .../icons/obj/genitals/penis_onmob.dmi | Bin 4855 -> 3880 bytes .../icons/obj/genitals/testicles.dmi | Bin 0 -> 1116 bytes .../icons/obj/genitals/testicles_onmob.dmi | Bin 0 -> 762 bytes .../icons/obj/genitals/vagina_onmob.dmi | Bin 1171 -> 1076 bytes 19 files changed, 87 insertions(+), 60 deletions(-) create mode 100644 modular_citadel/icons/obj/genitals/testicles.dmi create mode 100644 modular_citadel/icons/obj/genitals/testicles_onmob.dmi diff --git a/code/__HELPERS/_cit_helpers.dm b/code/__HELPERS/_cit_helpers.dm index e21bee2e36..668b151b6e 100644 --- a/code/__HELPERS/_cit_helpers.dm +++ b/code/__HELPERS/_cit_helpers.dm @@ -59,8 +59,10 @@ GLOBAL_LIST_EMPTY(ipc_antennas_list) GLOBAL_LIST_EMPTY(cock_shapes_list)//global_lists.dm for the list initializations //Now also _DATASTRUCTURES globals.dm GLOBAL_LIST_EMPTY(cock_shapes_icons) //Associated list for names->icon_states for cockshapes. GLOBAL_LIST_EMPTY(balls_shapes_list) +GLOBAL_LIST_EMPTY(balls_shapes_icons) GLOBAL_LIST_EMPTY(breasts_size_list) GLOBAL_LIST_EMPTY(breasts_shapes_list) +GLOBAL_LIST_EMPTY(breasts_shapes_icons) GLOBAL_LIST_EMPTY(vagina_shapes_list) GLOBAL_LIST_INIT(cum_into_containers_list, list(/obj/item/reagent_containers/food/snacks/pie)) //Yer fuggin snowflake name list jfc GLOBAL_LIST_INIT(dick_nouns, list("dick","cock","member","shaft")) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index f6ef08fe0d..3f3322c3ec 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -46,7 +46,6 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/xeno_dorsal, GLOB.xeno_dorsal_list) //genitals init_sprite_accessory_subtypes(/datum/sprite_accessory/penis, GLOB.cock_shapes_list) - for(var/K in GLOB.cock_shapes_list) var/datum/sprite_accessory/penis/value = GLOB.cock_shapes_list[K] GLOB.cock_shapes_icons[K] = value.icon_state @@ -54,6 +53,13 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/vagina, GLOB.vagina_shapes_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/breasts, GLOB.breasts_shapes_list) GLOB.breasts_size_list = list("a","b","c","d","e") //We need the list to choose from initialized, but it's no longer a sprite_accessory thing. + for(var/K in GLOB.breast_shapes_list) + var/datum/sprite_accessory/breasts/value = GLOB.breasts_shapes_list[K] + GLOB.breasts_shapes_icons[K] = value.icon_state + init_sprite_accessory_subtypes(/datum/sprite_accessory/testicles, GLOB.balls_shapes_list) + for(var/K in GLOB.balls_shapes_list) + var/datum/sprite_accessory/testicles/value = GLOB.balls_shapes_list[K] + GLOB.balls_shapes_icons[K] = value.icon_state //END OF CIT CHANGES //Species diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 8eb8d45cba..51c814a5f9 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -170,6 +170,7 @@ "balls_amount" = 2, "balls_sack_size" = BALLS_SACK_SIZE_DEF, "balls_size" = BALLS_SIZE_DEF, + "balls_shape" = "Pair", "balls_cum_rate" = CUM_RATE, "balls_cum_mult" = CUM_RATE_MULT, "balls_efficiency" = CUM_EFFICIENCY, @@ -187,7 +188,7 @@ "has_breasts" = FALSE, "breasts_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"), "breasts_size" = pick(GLOB.breasts_size_list), - "breasts_shape" = pick(GLOB.breasts_shapes_list), + "breasts_shape" = "Pair", "breasts_fluid" = "milk", "has_vag" = FALSE, "vag_shape" = pick(GLOB.vagina_shapes_list), diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index d80f56c8c8..91e7b2a5bc 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -117,6 +117,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) "balls_color" = "fff", "balls_amount" = 2, "balls_sack_size" = BALLS_SACK_SIZE_DEF, + "balls_shape" = "Pair", "balls_size" = BALLS_SIZE_DEF, "balls_cum_rate" = CUM_RATE, "balls_cum_mult" = CUM_RATE_MULT, diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 39b44f1ab9..c2675ba867 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -330,6 +330,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_has_balls"] >> features["has_balls"] S["feature_balls_color"] >> features["balls_color"] S["feature_balls_size"] >> features["balls_size"] + S["feature_balls_shape"] >> features["balls_shape"] S["feature_balls_sack_size"] >> features["balls_sack_size"] S["feature_balls_fluid"] >> features["balls_fluid"] //breasts features diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm index 7d482ec3a0..3f8e3fc6f1 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/modular_citadel/code/modules/arousal/organs/breasts.dm @@ -5,7 +5,6 @@ icon = 'modular_citadel/icons/obj/genitals/breasts.dmi' zone = "chest" slot = "breasts" - w_class = 3 size = BREASTS_SIZE_DEF fluid_id = "milk" var/amount = 2 @@ -14,7 +13,7 @@ can_masturbate_with = TRUE masturbation_verb = "massage" can_climax = TRUE - fluid_transfer_factor =0.5 + fluid_transfer_factor = 0.5 /obj/item/organ/genital/breasts/Initialize() . = ..() @@ -40,6 +39,10 @@ switch(lowershape) if("pair") desc = "You see a pair of breasts." + if("quad") + desc = "You see two pairs of breast, one just under the other." + if("six") + desc = "You see three pairs of breasts, running from their chest to their belly." else desc = "You see some breasts, they seem to be quite exotic." if (size) @@ -54,10 +57,10 @@ if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. color = "#[skintone2hex(H.skin_tone)]" - string = "breasts_[lowertext(shape)]_[size]-s" + string = "breasts_[GLOB.breasts_shapes_icons[lowertext(shape)]]_[size]-s" else color = "#[owner.dna.features["breasts_color"]]" - string = "breasts_[lowertext(shape)]_[size]" + string = "breasts_[GLOB.breasts_shapes_icons[lowertext(shape)]]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner icon_state = sanitize_text(string) diff --git a/modular_citadel/code/modules/arousal/organs/eggsack.dm b/modular_citadel/code/modules/arousal/organs/eggsack.dm index 27104cd36a..402d246e40 100644 --- a/modular_citadel/code/modules/arousal/organs/eggsack.dm +++ b/modular_citadel/code/modules/arousal/organs/eggsack.dm @@ -6,7 +6,6 @@ zone = "groin" slot = "testicles" color = null //don't use the /genital color since it already is colored - w_class = 3 internal = TRUE var/egg_girth = EGG_GIRTH_DEF var/cum_mult = CUM_RATE_MULT diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm index 592d1e2f33..460c6b4188 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals.dm @@ -1,25 +1,26 @@ /obj/item/organ/genital color = "#fcccb3" - var/shape = "human" - var/sensitivity = 1 - var/list/genital_flags = list() - var/can_masturbate_with = FALSE - var/masturbation_verb = "masturbate" - var/can_climax = FALSE - var/fluid_transfer_factor = 0.0 //How much would a partner get in them if they climax using this? - var/size = 2 //can vary between num or text, just used in icon_state strings - var/fluid_id = null - var/fluid_max_volume = 50 - var/fluid_efficiency = 1 - var/fluid_rate = 1 - var/fluid_mult = 1 - var/producing = FALSE - var/aroused_state = FALSE //Boolean used in icon_state strings - var/aroused_amount = 50 //This is a num from 0 to 100 for arousal percentage for when to use arousal state icons. + w_class = WEIGHT_CLASS_NORMAL + var/shape = "human" + var/sensitivity = AROUSAL_START_VALUE + var/list/genital_flags = list() + var/can_masturbate_with = FALSE + var/masturbation_verb = "masturbate" + var/can_climax = FALSE + var/fluid_transfer_factor = 0.0 //How much would a partner get in them if they climax using this? + var/size = 2 //can vary between num or text, just used in icon_state strings + var/fluid_id = null + var/fluid_max_volume = 50 + var/fluid_efficiency = 1 + var/fluid_rate = 1 + var/fluid_mult = 1 + var/producing = FALSE + var/aroused_state = FALSE //Boolean used in icon_state strings + var/aroused_amount = 50 //This is a num from 0 to 100 for arousal percentage for when to use arousal state icons. var/obj/item/organ/genital/linked_organ - var/through_clothes = FALSE - var/internal = FALSE - var/hidden = FALSE + var/through_clothes = FALSE + var/internal = FALSE + var/hidden = FALSE /obj/item/organ/genital/Initialize() . = ..() @@ -188,7 +189,11 @@ T.color = "#[dna.features["balls_color"]]" T.size = dna.features["balls_size"] T.sack_size = dna.features["balls_sack_size"] - T.shape = "single" + T.shape = dna.features["balls_shape"] + if(dna.features["balls_shape"] == "Hidden") + T.internal = TRUE + else + T.internal = FALSE T.fluid_id = dna.features["balls_fluid"] T.fluid_rate = dna.features["balls_cum_rate"] T.fluid_mult = dna.features["balls_cum_mult"] @@ -298,9 +303,7 @@ for(var/obj/item/organ/O in H.internal_organs) if(isgenital(O)) var/obj/item/organ/genital/G = O - to_chat(world, "checking [G] for exposure") if(G.is_exposed()) //Checks appropriate clothing slot and if it's through_clothes - to_chat(world, "[G] is [G.is_exposed() ? "true" : "false"]") genitals_to_add += H.getorganslot(G.slot) //Now we added all genitals that aren't internal and should be rendered @@ -311,7 +314,6 @@ var/datum/sprite_accessory/S size = G.size aroused_state = G.aroused_state - to_chat(world, "switching [G.type] for sprite loading") switch(G.type) if(/obj/item/organ/genital/penis) S = GLOB.cock_shapes_list[G.shape] @@ -327,7 +329,6 @@ var/mutable_appearance/genital_overlay = mutable_appearance(S.icon, layer = -layer) genital_overlay.icon_state = "[G.slot]_[S.icon_state]_[size]_[aroused_state]_[layertext]" - to_chat(world, "[G.slot]_[S.icon_state]_[size]_[aroused_state]_[layertext] is icon state") if(S.center) genital_overlay = center_image(genital_overlay, S.dimension_x, S.dimension_y) diff --git a/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm b/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm index eaf493482f..b913a90fb6 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm @@ -58,15 +58,20 @@ //Testicles //These ones aren't inert /datum/sprite_accessory/testicles - icon = 'modular_citadel/icons/obj/genitals/penis_onmob.dmi' + icon = 'modular_citadel/icons/obj/genitals/testicles_onmob.dmi' icon_state = "testicle" name = "testicle" //the preview name of the accessory color_src = "balls_color" locked = 0 +/datum/sprite_accessory/testicles/hidden + icon_state = "hidden" + name = "Hidden" + alt_aroused = TRUE + /datum/sprite_accessory/testicles/single icon_state = "single" - name = "single" + name = "Single" alt_aroused = TRUE //Vaginas @@ -120,6 +125,15 @@ name = "Pair" alt_aroused = TRUE +/datum/sprite_accessory/breasts/quad + icon_state = "quad" + name = "Quad" + alt_aroused = TRUE + +/datum/sprite_accessory/breasts/sextuple + icon_state = "sextuple" + name = "Sextuple" + alt_aroused = TRUE //OVIPOSITORS BE HERE /datum/sprite_accessory/ovipositor diff --git a/modular_citadel/code/modules/arousal/organs/penis.dm b/modular_citadel/code/modules/arousal/organs/penis.dm index 2498ff6370..b6cb8fa4b2 100644 --- a/modular_citadel/code/modules/arousal/organs/penis.dm +++ b/modular_citadel/code/modules/arousal/organs/penis.dm @@ -5,14 +5,13 @@ icon = 'modular_citadel/icons/obj/genitals/penis.dmi' zone = "groin" slot = ORGAN_SLOT_PENIS - w_class = 3 can_masturbate_with = TRUE masturbation_verb = "stroke" can_climax = TRUE - fluid_transfer_factor = 0.5 + fluid_transfer_factor = 0.5 size = 2 //arbitrary value derived from length and girth for sprites. var/length = 6 //inches - var/cached_length //used to detect a change in length + var/cached_length //used to detect a change in length var/girth = 0 var/girth_ratio = COCK_GIRTH_RATIO_DEF //0.73; check citadel_defines.dm var/knot_girth_ratio = KNOT_GIRTH_RATIO_DEF diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index 2ee92d743a..0415199415 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -1,22 +1,20 @@ /obj/item/organ/genital/testicles - name = "testicles" - desc = "A male reproductive organ." - icon_state = "testicles" - icon = 'modular_citadel/icons/obj/genitals/penis.dmi' - var/icon_on = 'modular_citadel/icons/obj/genitals/penis_onmob.dmi' - zone = "groin" - slot = "testicles" - w_class = 3 - size = BALLS_SIZE_MIN - var/size_name = "Normal" - shape = "single" - var/sack_size = BALLS_SACK_SIZE_DEF - fluid_id = "semen" - producing = TRUE + name = "testicles" + desc = "A male reproductive organ." + icon_state = "testicles" + icon = 'modular_citadel/icons/obj/genitals/testicles.dmi' + zone = "groin" + slot = "testicles" + size = BALLS_SIZE_MIN + var/size_name = "average" + shape = "single" + var/sack_size = BALLS_SACK_SIZE_DEF + fluid_id = "semen" + producing = TRUE can_masturbate_with = TRUE masturbation_verb = "massage" can_climax = TRUE - var/sent_full_message = TRUE //defaults to 1 since they're full to start + var/sent_full_message = TRUE //defaults to 1 since they're full to start /obj/item/organ/genital/testicles/Initialize() . = ..() @@ -30,11 +28,11 @@ /obj/item/organ/genital/testicles/update_size() if(size == 1) - size_name = "Normal" + size_name = "average" if(size == 2) - size_name = "Enlarged" - if(size == 3) - size_name = "Engorged" + size_name = "enlarged" + if(size >= 3) + size_name = "engorged" /obj/item/organ/genital/testicles/proc/generate_cum() reagents.maximum_volume = fluid_max_volume @@ -69,16 +67,19 @@ /obj/item/organ/genital/testicles/update_appearance() if(owner) - desc = "You see a pair of testicles dangling. They're quite [lowertext(size_name)]." + if(!internal) + desc = "You see an [lowertext(size_name)] pair of testicles dangling." + else + desc = "They don't have any testicles you can see." var/string if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"]) if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. color = "#[skintone2hex(H.skin_tone)]" - string = "testicles_[size_name]-s" + string = "testicles_[GLOB.balls_shapes_icons[shape]]_[size]-s" else color = "#[owner.dna.features["balls_color"]]" - string = "testicles_[size_name]" + string = "testicles_[GLOB.balls_shapes_icons[shape]]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner icon_state = sanitize_text(string) diff --git a/modular_citadel/code/modules/arousal/organs/womb.dm b/modular_citadel/code/modules/arousal/organs/womb.dm index c59d74e629..686d9059a0 100644 --- a/modular_citadel/code/modules/arousal/organs/womb.dm +++ b/modular_citadel/code/modules/arousal/organs/womb.dm @@ -5,12 +5,10 @@ icon_state = "womb" zone = "groin" slot = "womb" - w_class = 3 internal = TRUE fluid_id = "femcum" producing = TRUE - /obj/item/organ/genital/womb/Initialize() . = ..() reagents.add_reagent(fluid_id, fluid_max_volume) diff --git a/modular_citadel/code/modules/client/preferences_savefile.dm b/modular_citadel/code/modules/client/preferences_savefile.dm index 209d46db61..2921f70684 100644 --- a/modular_citadel/code/modules/client/preferences_savefile.dm +++ b/modular_citadel/code/modules/client/preferences_savefile.dm @@ -56,6 +56,7 @@ WRITE_FILE(S["feature_has_balls"], features["has_balls"]) WRITE_FILE(S["feature_balls_color"], features["balls_color"]) WRITE_FILE(S["feature_balls_size"], features["balls_size"]) + WRITE_FILE(S["feature_balls_shape"], features["balls_shape"]) WRITE_FILE(S["feature_balls_sack_size"], features["balls_sack_size"]) WRITE_FILE(S["feature_balls_fluid"], features["balls_fluid"]) //breasts features diff --git a/modular_citadel/icons/obj/genitals/breasts_onmob.dmi b/modular_citadel/icons/obj/genitals/breasts_onmob.dmi index 1869e082de2455609c96af44c969430368bc09e4..b0dc1d7aef1259bd40c6ae31cf34777fa1262ed6 100644 GIT binary patch delta 1344 zcmV-G1;6^a4EYL>BmpOpB`SaaJ*ANE00001bW%=J06^y0W&i*H(t1=_bVOxyV{&P5 zbZKvH004NLrIkAi!Y~wt=j2y}c2-(-bt$dd!3g3W^0>7be2@hF`?hr!^tjzSoP2zc z!_7t2Y+EVneajydqQ70mTCC;;XHV}^KP<}yXFd6IpWaJMI?*s@CXj!QDXP2nL1|T} z&G8^l8E4LiIKIMJ7xab3x%?O_k(j|~2BTSwW-*$>Xbz`U&90U8?>Hn!m>pqu1lkd3 zr)LrD!4SlnfD#Q#v?$S{M28aHe?+Jk6B7D!s3oD61Y6PyWXD6i0hzt~U zvFf1^78(zY%YvFE4U3hj4*y)SWWjk4m-ldd?CV7Neq>vEIp^UXdwg_dM-c!3z$air zOqu?3P@(y3+?5xVw z!2D#n`fyp#*JNTd%2oA%JW!@AS3~pL(d1)2KRKtb0{{R30001EGV9(V$-dUg=lah< zx$_gU{`Br^t^A{2zN+WHF{jUb^E-ikt(C7``ehUSwjl+1~~765+$00000=*w=J)27uIKfZn$ zjBmacN7+@!?Yidu!@1b%i&HPW!Tv&tK)g56C}np0=8Mu2Y&0_6{8TpNlutw2tTgy*f3YZ|@!crROb2QK6yl zkZ&k|V68@Z#~TjK0{{R30000V3aef9Zno6?bpL-jsHA*WmUI5USEuD)_wwg@{?wd` z?tE6(pLSnci5-2dn%}?5|E}j_nU^0=QhtBKoLZu8j;7mthkvWriw@i7)Ryh;Z|$gf zrXIL(d}fZ_R}EKQHnet~?e1%fGXJMs>|C8e&;R0{LeXndIWqlf&Ponm<|28Y}v3kK`ywSLs3awatV4?X0dS83; zveP{ie@Vz21?0?-^GVdcws6#Yj4z+$YuVSna|SG-eJ_1600000002Hv#Y=6qbNws{L z2LF41k#0WA>m;FK%qaPTByA~sBvv<#QSQD7d|>V(`$;T zd=Z71pI5PTOpzxFkKDLoLwJefn4wUjOy6f>SA9DcdGX4zFE5LIZZ%d6N+$eB)j{C! zGXp5Bv-+kJ8WO*6Rqimci~b1iEm_Y3C8H+8t%!!q+Z?wp@d0cMy>;FlbddJyoL1rK zw9f}=4I#yG!e-LZU*2sDa`Z^0t4c^u?s~TE= zP4_Z}TD5h)(4(5;8}i^DwV;i$@&5e`Q+-nnej~JzqyaR`Q~u zfY$j$^Sq|9avnIkydGS-@a+@KzDoqlLLYt45>&DYz=~?3Fk#@Z87R5#A}*GAgiM@q zAlgF&*X%cK9K?Za0F{LDAaqvau@^+kPtSe|-S@uMWM02Rv1+iZ zGz&}eOFzmUb9gL~DSc-LfXiS`l-{m)u%J0OH`}dp-lj~RCinkEps2}igHYsTRw6Sfo^2Bxu?e&jE#g_!o{7U`id(4`fQ zDH`$)_b!yza2kd_+jPr%gTMPYJWIvx7*C&U=DP<3ixRZS1Y8x=v-mv!f*+xzMe{B9 zdXC|^krclwQD9j9lpG=B*dTmmB0)4T*4W@94wg`0LS(3(0 zlrNob+^bsJYTQ>U&>BDpOmBD+icuG`-^R zDR~G_ci~iNkma%df*0G*GIgLx(I6*w)iLq7_7rI(sD-8%?tf%+7Oy$NSSsu4nG4rJ zPR7d}38Q^T+A~Wo%pSo>@#G{KMv-eV(^69t|9VbnBo+JcxuhDHCCmPrKzdoq6qofa zvr6aCg5*e5v~+GLnoG@AFF74tE$gjmRqVW!N8l29bTTKF({>}fm z*l4BOl`if1u>{+h_&{C5$xaS(PyjFF*WQJQ7Ju{;7=5J?P4NE>H+YY2K@S=2j4ioL zACFiW1$W8}lxCymSrYO9ZtXQr;(1foUK(tSl$DmpE+Y|6?iDwBA&y_MK@#Gv;@iH&rys(ujW^4eVI71ilkN;%^Yf5_ z$G1Dijy({WA$v8e*kfl&JNa!8&4FpO>)DKWKu_fB{*LL$kQp4}_&pr@xWwOVm<&5x gpQ2WoUT7B!6u`rdz$+dLEh($ diff --git a/modular_citadel/icons/obj/genitals/penis.dmi b/modular_citadel/icons/obj/genitals/penis.dmi index 02597b3cdb719218e18723d99805b0a601319d48..397fa335e537e9926e119efcabda1fc3bb91ad72 100644 GIT binary patch delta 2619 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 literal 3200 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 literal 4855 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 diff --git a/modular_citadel/icons/obj/genitals/testicles.dmi b/modular_citadel/icons/obj/genitals/testicles.dmi new file mode 100644 index 0000000000000000000000000000000000000000..3d7a5f4f4801004f4439bf82c46f6f34a1b8b14f GIT binary patch literal 1116 zcmV-i1f%C0000pP)t-sz`($> zv$Nmd-`LpL*Votd^z`QD=BTKst*x!Mx3}7~vi9ER>e<}o#>@Hc^8Ww;z`($g<)POA z0004WQchCV=-0C=2JR&a84_w-Y6@%7{?OD!tS z%+FJ>RWQ*r;NmRLOex6#a*U0*I5Sc+(=$pSoZ^zil2jm5sU)?yBr`cDwOEOZGbOXA z7$|1Q#hF%=n41b=W2%fV&df{CNsTuoU5gRvT8xR;qDzh^$kAj(jwWLwG?8FxMrKM% zY92|E0M$ZDBtW&05D9RHkrYNSr;(!xPrxcGxca$(^92APnDaxBc^Y*900SIJL_t(| zob8&4lA|yTL$n{sBNW*gF6OaEw4cHMK2|L8}@t zWCIBvUEOtEulsBH0f0^c?Nor4eu9h80RREY_WNzE{Ss68GWgPtZ(!?Q?qa1rC!kVdf?bzGS z4h8ZDHXnwtzv_^nf%I)}GMP*!lgadcO{6>h=Vh7a1B6sakUz~c6F>wPM3C40K|TRc z>kJI05OS3O<+FbPP!0AD0KrN+0ub_7cXZo$3^vukpCm{yZLXUQjIx#=0EmxvDgcML z2ps?rpnMOo?Es>|ewF~@vH<{?{|T@Y2;)dGvuD%*)-4c7(*WlC#;-9D0hVtQRRQ2^ zw}}8K-!B3TP)&4x7M?|`03N_x z09#_(OdEZNIq&q5r9`C?RY7G-%iTm6e<7qeZG9r zkEZ!6^#f1gn|v_F zME$_;<)Oxeae&FP#IDh>>)|=6l z`hmCIjLR zUfsO&^w{Z}CW78TS;mqezhDN3XE)M-obOd35hX6E#mPmP1tppJc?=8{bCyoq$k${b z;+p-gU82%O})w$xYJPFj9d!tqp@HT>^xMdt5$J^P$gV$f#m`CnAi z0^hRP&poo}cEH`YTg2=G9o>T`i?#{71k-7uzYLK{L$qFuL#HmqgJIeLmY zQZBJ-R=UJ)b4&S-tuAX+Yw{Itc5HQ8Bbu@{q*b9gGjZLhnQ-Q z#dS`bkiS1c>Veb2Nt?7J`%NX-wI#GA8b zzd!wHTWC!A^JmL7UwziT{qk$ZR zfQ|?2D)ImFb?48s_v2UXSbzR({I`qEE`fA&uO?ElvWtPBhB Z;l23wYGwY}*$OcrSx;9#mvv4FO#q}SaOVI3 literal 0 HcmV?d00001 diff --git a/modular_citadel/icons/obj/genitals/vagina_onmob.dmi b/modular_citadel/icons/obj/genitals/vagina_onmob.dmi index e6ad183687987a2e865effef73ec8c3ab1ab668f..f5daa3fea1ba98eefe5f6bc9512d66a61ab9186a 100644 GIT binary patch literal 1076 zcmV-41k3x0P)bJ$*|z zQ0Oua8{NwnH%t#1>>1DOO(@D0tTyy3vi1d?=L@d(yGAQgwo+j4;R)7Sh+iz2g8(K9 zhxy>4@toAB3R9UhctJ>d8G2hw^X}Luj_w)`k+sB8<1-JvDO1wMKj{TObWPe{8EcCy9lBLFPWY1;*0001& zYo2d-6D-&}zg}h=-UbUs^PlpDUO5i{00000&{*$zP&8lYJx_|}3sm&Zp>gRJ}PegUThXDWp z003GT+b6Tpe&Qe9Ha;Wsd8lA?p0jE_5SnkQ$8)e^zV~votQL5-L)rcMrWPO0=fjm{ zeZX|ka8Ysnxt3qO_~Ku^&8l`n2J>Y@^>=*ufa00000aPi(f{6cY(w<brQY+L=<`hg00000 zz@=+GK8Y5L=I?$53*;8Te6*q8tq%wQ00000;3&nkr1v~1n!iukhUh%#x^uobpsQd( z#?Cv;#JFSu0000uL#cNInMHKku~?)QeLM-zbM~S5VwZvq6cvNasHy0Y;)mzs7V(il6p4)00000oFMgXpt1NzuPG9~4nOUYiOzHO(E@)Sj*c9x zn6m#&yOeJ#Jlmn{{=WY8YJ>R`zMd^Te^FGtzpLd3=Q)erKFx*==1&>09V}R$qFO(- zc}_5Yg278J+)%y4;q|8|J^l0S##sOW006)_Xg-hW?u2>FsPcvA&*k*a7kYmIUh`jw u0ssI2003TD?_Z~BZglgUDDxZup!65M;!*YA3x8h#0000|ux0FmeePB`?kov)J0Op96w01C9j-{P@ioF&D8AjL$YWzc2Ee#Qt(NRLmW(HXRqWB{^i znyY?wxbEvB6fN?0U+EwZB~wBiknUlbSKFHkzT}VeK|M4(=Sccf{E}ndbWc~xrHag% zePyZi8)F6b1B;jxO}28cdZ1+RN}IOw+nDM()l`H{nJUeYe z3E2>_zmX~^cEWVX^@q0?0Gw)|*ry?G87n8&OVWyFlEwq_UPnb8+UIq2UjpL1K)g{U zjPBSkdqqpf2!qWz-QfHAkn=}U|FQu9wkt9$I5w;1Z`n1{q_2w&IrJ{<)-4E{{Dj8o z?2J6PK)**gg<_N{<|k+`J0#u~%fDsZg;ZS#G*DPs7{14w-KKoL(`gj7r_Zl)be^kz zrqkTvML*9uoe2aAclcW@v(c*5uD0O;6JfWxpYCVW+bh{#k z9Vrl=F@wfHp;{wxu&adY_4;UyQN^TxN+2+yjTP&X3(p#LrgpLhwPgli_0Ks`T}7cz!}H-uof-nM ze7|Lb)~)%R@RG@BUA1iFN)G%-gJZWUxX(`Rct|8Et=RlIG0b<5*!h2VI(A&S@Jh{< z*j2^P>xW_lu(1zBL3iWv*S4TznTIu5$tOHK40%jZ1{Eb<{M2nGM|ig{&vMnkPY4E-pEq&S% z*L%WsA-;#nOmP0?=kAqrtfSNeI@2`XzvV|=SDi!3DQP(Zo{q5Bd14foFS4PMLX(&0 zaB*rJp~6X5c!te;x1Z^a#Z~XZv0ZVT-MAVwuC`W>);@A(=XQ!%o1sL8lfoW`P_O?3 Doh}-H From ae5d68c6f9b7884331e74c357dc9c0bdb0c983ed Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 2 Jun 2019 13:24:03 +0200 Subject: [PATCH 141/370] Fixes stunbatons' icons not properly updating on cell removal, and more cell charge leniency. --- code/game/objects/items/stunbaton.dm | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 5265f555da..3904355893 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -58,16 +58,15 @@ switch_status(FALSE) /obj/item/melee/baton/proc/switch_status(new_status = FALSE, silent = FALSE) - if(status == new_status) - return - status = new_status + if(status != new_status) + status = new_status + if(!silent) + playsound(loc, "sparks", 75, 1, -1) + if(status) + START_PROCESSING(SSobj, src) + else + STOP_PROCESSING(SSobj, src) update_icon() - if(!silent) - playsound(loc, "sparks", 75, 1, -1) - if(status) - START_PROCESSING(SSobj, src) - else - STOP_PROCESSING(SSobj, src) /obj/item/melee/baton/process() deductcharge(hitcost * 0.004, FALSE) @@ -93,7 +92,7 @@ if(cell) to_chat(user, "[src] already has a cell.") else - if(C.maxcharge < hitcost) + if(C.maxcharge < hitcost * STUNBATON_CHARGE_LENIENCY) to_chat(user, "[src] requires a higher capacity cell.") return if(!user.transferItemToLoc(W, src)) From e6e06a1a432810c091a586b960da31da51f501aa Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 2 Jun 2019 13:59:36 +0200 Subject: [PATCH 142/370] Makes clockwork wall - sonic jackhammer interaction account the wall's superheating. --- code/game/turfs/simulated/wall/misc_walls.dm | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/code/game/turfs/simulated/wall/misc_walls.dm b/code/game/turfs/simulated/wall/misc_walls.dm index f40f74787a..8efac31f65 100644 --- a/code/game/turfs/simulated/wall/misc_walls.dm +++ b/code/game/turfs/simulated/wall/misc_walls.dm @@ -77,6 +77,19 @@ return ..() +/turf/closed/wall/clockwork/try_destroy(obj/item/I, mob/user, turf/T) + if(!heated) + return ..() + if(!istype(I, /obj/item/pickaxe/drill/jackhammer)) + return FALSE + to_chat(user, "You begin to smash though [src]...") + if(!do_after(user, 70, TRUE, src)) + return FALSE + I.play_tool_sound(src) + visible_message("[user] smashes through [src] with [I]!", "You hear the grinding of metal.") + dismantle_wall() + return TRUE + /turf/closed/wall/clockwork/ReplaceWithLattice() ..() for(var/obj/structure/lattice/L in src) From 1cfaf62a750973aad45c60f2083edb5956465dce Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 2 Jun 2019 07:47:37 -0500 Subject: [PATCH 143/370] multi-boobies sprited --- .../icons/obj/genitals/breasts.dmi | Bin 1028 -> 1497 bytes .../icons/obj/genitals/breasts_onmob.dmi | Bin 1401 -> 4932 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/modular_citadel/icons/obj/genitals/breasts.dmi b/modular_citadel/icons/obj/genitals/breasts.dmi index e864d09a704acb3ea667a7f9e0fe1fa9aca58d8f..8c76891396623a234c9c66f4a0a252c34c910fb2 100644 GIT binary patch literal 1497 zcmYjRe>l^59RG$j=2;_YwZ)Wh7hP(YJJ&YCc&_bc=W#M=bcK>_a-C|dwo#%u;fbLl zk<%iSA{!~?S1RRKF)gP2jEy#C_no_Yo_jsd`}KOi-tYJ4*FT?RDuo1xphD9t>HOt@D5k6gSVrY zf2Ew=u=*r~7LjEeQnCHBEX5|XV+lhS<~^QaXV@;KTg>rFO7b3MR;tEh_nDXMOOcC`XrSqvwno4zh>{5EB8au&<`M3qd z2ls@0a!=LkqEg2!Ac=!C>ey~jx=Y)yY&deXKkAae$z{@oq<$ULRJBFP96>gCI*Z5b zcbWr$LAbA{yMJ8XWYA9(8PVj}fH4z`BVMW{qCRfS-p2yg&TraGbDBMIVpFIA(&|Iz zYm1E9vWM@@rG3^^u~%j|QWMG`-P9PH$k<8r zHk%+hv{x|tf+Yqiy?-RPe&=`rdmL5iXykr$k~e!(C199x;Mo;xd6%j*@*S!PgKWV>&>!rCX}ha{MxR?(-VL|3bT>G>CTruSxI zb{NG(PM{s87MB+x_4OgIR-Z^v5+RWqwB1N138L{Fx4FH5M%@c#w<#huAqq@w96{flv}sZR@y<;PsRkaLz!f4(ePDCrR(rLYmV=#f1*=7k5C^RVoBwM#&p z=-PZ-jI~H**wKP%3EzE2h#+VRdEt-30EitoIalq>o<$DdI-s<}VJ{EVq^90Uc{s4w zKCtgZkk>-MOWNS?j8&C_ER$Hy<+5K*zmj&QbD8P~q4nf9Px&T3)fsTO9)*dddcDa?NH0q#aPWbAvYD(S{mHeu`_54v1= zZ$4Suyk=<=y)S&&=Y=k-k2XB}N; zk3+-sI7HWX=iTrgxLH{(pP<>LLj#1Nk^*{j`fX6C$yah9-W7;+VX366E({rr@=Me= zbP^xm%G8@{Y`{+V|3FE5vb delta 1012 zcmVmzXf9l!X z`R?-e-sk^-|0F<3=>Px#0d!JMQvg8b*k%9#0GfJKSad{Xb7OL8aCB*JZU6vyoKseC za&`CgQ*iP1<%z^9 z*CjPjNY#)+s)l4zH6)R$ArZF*Wd&D17jPN`0L*K`r9KWXDF6Th=t)FDRA_gi-TMdugn&m_`vgH$ZI^22|=rVfy69(1$5W5L`p@s z!b06b&}u+{hzib)VFJ4K*a|rn0-i4$ulh&de(DurLGMp5OW*|)(D-y&k=dsm0+;#4 z^|yA_ErZL3wjhv70nHu)e~bYEZ~qJeiOEsmc82xUA*X#~A9lQ@9Umx!fL;iJV&B-G z1Abm@AO-o$p#e2K=G>jw-Dydfv@KWHcJ#(asf=DpI`k_U`}w7i5;u1 z*O(CPH&TEpD$Y9(Qck;r5a20HIPW~liD?p6+w*rA7HC%J`-t#PNS~00fEVv>eOp}a$%WT+9ns*$>n{VSrpjn05$22(llL5oT@+0;v?};9|$`AdtBde;i~#kU10xdRwaA*ns5@ z=YHT5c37@iaXSb6zWxHm5_e=jE5W~nfUO)1Sk$u>I@n62+&f?nt$3*p`1*sr#`^EQ zaNs#ggM(u531RVE1h|FZz8?SwKTyd-LOg|;;C{sl4>F#^V2>81;P?80GAsxV7{Fcl z5Gq{4MP4s%N^V(Z%$V^%Vd|aK>PTYI>PR9X>-_@(lvw>DA?y7^0@aixih3UpQSalC i$?_eIxi-%D_V^3Ie9JL3nZqOi0000 diff --git a/modular_citadel/icons/obj/genitals/breasts_onmob.dmi b/modular_citadel/icons/obj/genitals/breasts_onmob.dmi index b0dc1d7aef1259bd40c6ae31cf34777fa1262ed6..69a531bd11511356b8a89b4057a1fc243f3e078e 100644 GIT binary patch literal 4932 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 V@;9v|T&-FkGBdWmP;TfM^FLE7$}j)` literal 1401 zcmXYv3p5jY9LHCYE=Ed*Ji1A8=u+Jj(yp4^-5m2CCX{!}BSY-jPQ99jeL=7?YrSth_w@+>`(%m&;vRT2d;NeSLi_7K=`&uki)kYPxh$EF2x5 zZfC1{TuO69s*!CeKAygSpJqNrt3*HAFE9lXg^EayOG=4LOaK7Vi%RpHwOZ`;GX+!d zU(*7DQ&X*}+~!@M&BS#KBW#Y^*NvJ~gVj2oa}gGs)5>uhx`wb8;@IZ;C9F&DgI~?4 z$G}8BU|Y6&jEfXi%)jX2)Mp=kI49e>^6xd*IRA3a@&TApOi$KnW=jxgHM6~5ZfKMH zq&aryi=YS5$4ITQIuw5nEl(mkeaQWZ>E$#vu3ju9MsL1(cN^*E9^fz4NBT-2S$lW{ zNI7Wl9vQ0KlAN!G=m+K3$40uC=7aXhmyJ72I$r?*Y6qbZSHJY41s)5AfE%_i6XV|i zwY*AwPDSATu7U~>!LyN;<*2KW7^|1vceV9X-wMgQ4UBakvTu_tfyBHD9c9Sd$mR^) zg7qZq{2WAzk3^sy1^=31uqjdQdH_I^RrooNLIui;EWI|4nMFi%tZM^;Hiq>A?J3gx zf!Z7}x3Uf4@1lHW$SzHWvObmUnt#dB&^E7JhzZtZyp9 z1?)(9y_v7-L>!;vAN;@^?h?p)UF%o&(iN+VNUHorD6>+)I!5Wmt~lSqQS)A3nnt2c zjo9zx>Elwj(H`_VBS0ZYejMa&cUt0SFm98|k{2 zyH(~|kjev8KAo=-J?Z4Q{z&C^bE<;JKhOG9;~3A@`fcWs?c?ryOoJ`JEIWZTP&Nbt zGx0_b5}5|>qy8NW4KrU`>pu#KzTh{1+4Vf;w4kkOn81UQ9R)E0w(J&?h&(kgEKH93 z^A3=0hmu(73WfRR9A_HxV($gafdY*Fcs;M7p5@dvshw2^ZFHddZo#nISD6m+&A52( z?Tuh|=iJ!kb%q6a>CFb0-`GU6E8o>MFtUBCwKZ1+*2rrS4M8&{U9yHr0zS@jgPz+P zHqFxQ1SdYPAz^5~B%L)KlZ|5Hsln=OfuhmrWO1U%R8cB8>h4V@i*gc=5W=Y!GCKC_ zaK43Su32?Sl29`!Pf-%#Yr>u^=@yAycgQNPp_MAE&eo_@}(hT)nIf) zCTQ)hZo2_WUuUG@r?Mw&1vB%iubhFHlttOsih1VzyIQg}MjAiE6;>-2*?G3@oL~<3 zjG_H2=d>O+iZd-ToHh%;^R<+BXOSA6-}2ey+>BK2Fc~m8;drveaZ^LxJR!7m;kW+> Dyhh3= From 69b1373209440bb895bf8535bf3e9abe08ab3202 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 2 Jun 2019 08:06:16 -0500 Subject: [PATCH 144/370] compile testing and tweaks --- code/__HELPERS/global_lists.dm | 3 ++- code/modules/client/preferences.dm | 17 ++++++++++++----- .../code/modules/arousal/organs/genitals.dm | 4 ++-- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index 3f3322c3ec..ac113b4e08 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -53,9 +53,10 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/vagina, GLOB.vagina_shapes_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/breasts, GLOB.breasts_shapes_list) GLOB.breasts_size_list = list("a","b","c","d","e") //We need the list to choose from initialized, but it's no longer a sprite_accessory thing. - for(var/K in GLOB.breast_shapes_list) + for(var/K in GLOB.breasts_shapes_list) var/datum/sprite_accessory/breasts/value = GLOB.breasts_shapes_list[K] GLOB.breasts_shapes_icons[K] = value.icon_state + init_sprite_accessory_subtypes(/datum/sprite_accessory/testicles, GLOB.balls_shapes_list) for(var/K in GLOB.balls_shapes_list) var/datum/sprite_accessory/testicles/value = GLOB.balls_shapes_list[K] diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 91e7b2a5bc..01b0b0415d 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -702,6 +702,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) else dat += "Testicles Color:" dat += "    Change
" + dat += "Testicles showing:[features["balls_shape"]]" dat += APPEARANCE_CATEGORY_COLUMN dat += "Has Vagina:" dat += "[features["has_vag"] == TRUE ? "Yes" : "No"]" @@ -1837,7 +1838,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) features["cock_color"] = sanitize_hexcolor(new_cockcolor) else - user << "Invalid color. Your color is not bright enough." + to_chat(user,"Invalid color. Your color is not bright enough.") if("cock_length") var/new_length = input(user, "Penis length in inches:\n([COCK_SIZE_MIN]-[COCK_SIZE_MAX])", "Character Preference") as num|null @@ -1859,7 +1860,13 @@ GLOBAL_LIST_EMPTY(preferences_datums) else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) features["balls_color"] = sanitize_hexcolor(new_ballscolor) else - user << "Invalid color. Your color is not bright enough." + to_chat(user,"Invalid color. Your color is not bright enough.") + + if("balls_shape") + var/new_shape + new_shape = input(user, "Testicle Type:", "Character Preference") as null|anything in GLOB.balls_shapes_list + if(new_shape) + features["balls_shape"] = new_shape if("egg_size") var/new_size @@ -1875,7 +1882,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) features["eggsack_egg_color"] = sanitize_hexcolor(new_egg_color) else - user << "Invalid color. Your color is not bright enough." + to_chat(user,"Invalid color. Your color is not bright enough.") if("breasts_size") var/new_size @@ -1898,7 +1905,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) features["breasts_color"] = sanitize_hexcolor(new_breasts_color) else - user << "Invalid color. Your color is not bright enough." + to_chat(user,"Invalid color. Your color is not bright enough.") if("vag_shape") var/new_shape @@ -1915,7 +1922,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) features["vag_color"] = sanitize_hexcolor(new_vagcolor) else - user << "Invalid color. Your color is not bright enough." + to_chat(user,"Invalid color. Your color is not bright enough.") if("ooccolor") var/new_ooccolor = input(user, "Choose your OOC colour:", "Game Preference",ooccolor) as color|null diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm index 460c6b4188..cbf14e420a 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals.dm @@ -141,14 +141,14 @@ if (NOGENITALS in dna.species.species_traits) return //Order should be very important. FIRST vagina, THEN testicles, THEN penis, as this affects the order they are rendered in. - if(dna.features["has_breasts"]) - give_breasts() if(dna.features["has_vag"]) give_vagina() if(dna.features["has_womb"]) give_womb() if(dna.features["has_balls"]) give_balls() + if(dna.features["has_breasts"]) // since we have multi-boobs as a thing, we'll want to at least draw over these. but not over the pingas. + give_breasts() if(dna.features["has_cock"]) give_penis() if(dna.features["has_ovi"]) From 25458fad630b770e3d8c5ed9d3053aeb3ee3d04f Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 2 Jun 2019 08:40:51 -0500 Subject: [PATCH 145/370] I refuse to eat crow. --- .../code/modules/arousal/organs/breasts.dm | 8 +++---- .../code/modules/arousal/organs/testicles.dm | 22 +++++++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm index 3f8e3fc6f1..1223f0b616 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/modular_citadel/code/modules/arousal/organs/breasts.dm @@ -41,8 +41,8 @@ desc = "You see a pair of breasts." if("quad") desc = "You see two pairs of breast, one just under the other." - if("six") - desc = "You see three pairs of breasts, running from their chest to their belly." + if("sextuple") + desc = "You see three sets of breasts, running from their chest to their belly." else desc = "You see some breasts, they seem to be quite exotic." if (size) @@ -57,10 +57,10 @@ if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. color = "#[skintone2hex(H.skin_tone)]" - string = "breasts_[GLOB.breasts_shapes_icons[lowertext(shape)]]_[size]-s" + string = "breasts_[GLOB.breasts_shapes_icons[shape]]_[size]-s" else color = "#[owner.dna.features["breasts_color"]]" - string = "breasts_[GLOB.breasts_shapes_icons[lowertext(shape)]]_[size]" + string = "breasts_[GLOB.breasts_shapes_icons[shape]]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner icon_state = sanitize_text(string) diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index 0415199415..0cf698392c 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -26,14 +26,6 @@ if(reagents && producing) generate_cum() -/obj/item/organ/genital/testicles/update_size() - if(size == 1) - size_name = "average" - if(size == 2) - size_name = "enlarged" - if(size >= 3) - size_name = "engorged" - /obj/item/organ/genital/testicles/proc/generate_cum() reagents.maximum_volume = fluid_max_volume if(reagents.total_volume >= reagents.maximum_volume) @@ -53,8 +45,7 @@ linked_organ = (owner.getorganslot("penis")) if(linked_organ) linked_organ.linked_organ = src - size = linked_organ.size - update_size() + else if(linked_organ) linked_organ.linked_organ = null @@ -67,8 +58,17 @@ /obj/item/organ/genital/testicles/update_appearance() if(owner) + if(size == 0) + size_name = "nonexistant" + if(size == 1) + size_name = "average" + if(size == 2) + size_name = "enlarged" + if(size >= 3) + size_name = "engorged" + if(!internal) - desc = "You see an [lowertext(size_name)] pair of testicles dangling." + desc = "You see an [size_name] pair of testicles dangling." else desc = "They don't have any testicles you can see." var/string From d4abb85641e600c7c4d4622788d4c81ff1aa8cff Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 2 Jun 2019 09:40:18 -0500 Subject: [PATCH 146/370] Update preferences.dm --- code/modules/client/preferences.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 01b0b0415d..91a329c67b 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -117,7 +117,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) "balls_color" = "fff", "balls_amount" = 2, "balls_sack_size" = BALLS_SACK_SIZE_DEF, - "balls_shape" = "Pair", + "balls_shape" = "Single", "balls_size" = BALLS_SIZE_DEF, "balls_cum_rate" = CUM_RATE, "balls_cum_mult" = CUM_RATE_MULT, From d6e54bf2378cbd0aa219d946296f117dd685c395 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 2 Jun 2019 18:28:30 +0200 Subject: [PATCH 147/370] Fixes and updates pod's emergency suits storage. --- code/__DEFINES/components.dm | 5 ++-- .../components/storage/concrete/_concrete.dm | 9 ++++++ .../components/storage/concrete/emergency.dm | 22 ++++++++++++++ code/datums/components/storage/storage.dm | 30 ++++++++----------- code/game/objects/items/cards_ids.dm | 2 +- code/game/objects/obj_defense.dm | 1 + code/modules/shuttle/emergency.dm | 24 ++------------- code/modules/shuttle/on_move.dm | 3 +- 8 files changed, 52 insertions(+), 44 deletions(-) create mode 100644 code/datums/components/storage/concrete/emergency.dm diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index 3338fc1cda..dbe8cfbb62 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -142,8 +142,9 @@ #define COMSIG_CARBON_SOUNDBANG "carbon_soundbang" //from base of mob/living/carbon/soundbang_act(): (list(intensity)) // /obj signals -#define COMSIG_OBJ_DECONSTRUCT "obj_deconstruct" //from base of obj/deconstruct(): (disassembled) -#define COMSIG_OBJ_SETANCHORED "obj_setanchored" //called in /obj/structure/setAnchored(): (value) +#define COMSIG_OBJ_DECONSTRUCT "obj_deconstruct" //from base of obj/deconstruct(): (disassembled) +#define COMSIG_OBJ_BREAK "obj_break" //from base of /obj/obj_break(): (damage_flag) +#define COMSIG_OBJ_SETANCHORED "obj_setanchored" //called in /obj/structure/setAnchored(): (value) // /obj/item signals #define COMSIG_ITEM_ATTACK "item_attack" //from base of obj/item/attack(): (/mob/living/target, /mob/living/user) diff --git a/code/datums/components/storage/concrete/_concrete.dm b/code/datums/components/storage/concrete/_concrete.dm index 4d7e8bddc5..0b78605869 100644 --- a/code/datums/components/storage/concrete/_concrete.dm +++ b/code/datums/components/storage/concrete/_concrete.dm @@ -6,6 +6,8 @@ /datum/component/storage/concrete var/drop_all_on_deconstruct = TRUE var/drop_all_on_destroy = FALSE + var/drop_all_on_break = FALSE + var/unlock_on_break = FALSE var/transfer_contents_on_component_transfer = FALSE var/list/datum/component/storage/slaves = list() @@ -16,6 +18,7 @@ . = ..() RegisterSignal(parent, COMSIG_ATOM_CONTENTS_DEL, .proc/on_contents_del) RegisterSignal(parent, COMSIG_OBJ_DECONSTRUCT, .proc/on_deconstruct) + RegisterSignal(parent, COMSIG_OBJ_BREAK, .proc/on_break) /datum/component/storage/concrete/Destroy() var/atom/real_location = real_location() @@ -100,6 +103,12 @@ if(drop_all_on_deconstruct) do_quick_empty() +/datum/component/storage/concrete/proc/on_break(datum/source, damage_flag) + if(drop_all_on_break) + do_quick_empty() + if(unlock_on_break) + set_locked(source, FALSE) + /datum/component/storage/concrete/can_see_contents() . = ..() for(var/i in slaves) diff --git a/code/datums/components/storage/concrete/emergency.dm b/code/datums/components/storage/concrete/emergency.dm new file mode 100644 index 0000000000..e5f9d83a17 --- /dev/null +++ b/code/datums/components/storage/concrete/emergency.dm @@ -0,0 +1,22 @@ +/datum/component/storage/concrete/emergency + drop_all_on_break = TRUE + unlock_on_break = TRUE + locked = TRUE + +/datum/component/storage/concrete/emergency/Initialize() + . = ..() + RegisterSignal(parent, COMSIG_ATOM_EMAG_ACT, .proc/unlock_me) + +/datum/component/storage/concrete/emergency/signal_insertion_attempt(datum/source, obj/item/I, mob/M, silent = FALSE, force = FALSE) + if(!silent && istype(I, /obj/item/card/emag)) + silent = TRUE // suppresses the message + return ..() + +/datum/component/storage/concrete/check_locked(datum/source, mob/user, message = FALSE) + . = locked && GLOB.security_level < SEC_LEVEL_RED + if(message && . && user) + to_chat(user, "The storage unit will only unlock during a Red or Delta security alert.") + +/datum/component/storage/concrete/emergency/proc/unlock_me(datum/source) + if(locked) + set_locked(source, FALSE) diff --git a/code/datums/components/storage/storage.dm b/code/datums/components/storage/storage.dm index dc25729e37..869fe59ae9 100644 --- a/code/datums/components/storage/storage.dm +++ b/code/datums/components/storage/storage.dm @@ -156,8 +156,7 @@ next += slave.parent /datum/component/storage/proc/attack_self(datum/source, mob/M) - if(locked) - to_chat(M, "[parent] seems to be locked!") + if(check_locked(source, M, TRUE)) return FALSE if((M.get_active_held_item() == parent) && allow_quick_empty) quick_empty(M) @@ -166,8 +165,7 @@ if(!isitem(O) || !click_gather || SEND_SIGNAL(O, COMSIG_CONTAINS_STORAGE)) return FALSE . = COMPONENT_NO_ATTACK - if(locked) - to_chat(M, "[parent] seems to be locked!") + if(check_locked(source, M, TRUE)) return FALSE var/atom/A = parent var/obj/item/I = O @@ -238,8 +236,7 @@ var/atom/A = parent if((!ishuman(M) && (A.loc != M)) || (M.stat != CONSCIOUS) || M.restrained() || !M.canmove) return - if(locked) - to_chat(M, "[parent] seems to be locked!") + if(check_locked(null, M, TRUE)) return FALSE A.add_fingerprint(M) to_chat(M, "You start dumping out [parent].") @@ -281,7 +278,7 @@ /datum/component/storage/proc/set_locked(datum/source, new_state) locked = new_state - if(locked) + if(check_locked()) close_all() /datum/component/storage/proc/_process_numerical_display() @@ -456,8 +453,7 @@ var/atom/A = parent var/atom/dump_destination = dest_object.get_dumping_location() if(A.Adjacent(M) && dump_destination && M.Adjacent(dump_destination)) - if(locked) - to_chat(M, "[parent] seems to be locked!") + if(check_locked(null, M, TRUE)) return FALSE if(dump_destination.storage_contents_dump_act(src, M)) playsound(A, "rustle", 50, 1, -5) @@ -563,10 +559,9 @@ var/atom/host = parent if(real_location == I.loc) return FALSE //Means the item is already in the storage item - if(locked) + if(check_locked(null, M, !stop_messages)) if(M && !stop_messages) host.add_fingerprint(M) - to_chat(M, "[host] seems to be locked!") return FALSE if(real_location.contents.len >= max_items) if(!stop_messages) @@ -659,8 +654,10 @@ /datum/component/storage/proc/on_check() return TRUE -/datum/component/storage/proc/check_locked() - return locked +/datum/component/storage/proc/check_locked(datum/source, mob/user, message = FALSE) + . = locked + if(message && . && user) + to_chat(user, "[parent] seems to be locked!") /datum/component/storage/proc/signal_take_type(datum/source, type, atom/destination, amount = INFINITY, check_adjacent = FALSE, force = FALSE, mob/user, list/inserted) if(!force) @@ -720,9 +717,7 @@ if(A.loc == user) . = COMPONENT_NO_ATTACK_HAND - if(locked) - to_chat(user, "[parent] seems to be locked!") - else + if(!check_locked(source, user, TRUE)) show_to(user) A.do_jiggle() @@ -747,8 +742,7 @@ /datum/component/storage/proc/on_alt_click(datum/source, mob/user) if(!isliving(user) || !user.CanReach(parent)) return - if(locked) - to_chat(user, "[parent] seems to be locked!") + if(check_locked(source, user, TRUE)) return var/atom/A = parent diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 30b1ca3399..4143e45624 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -105,7 +105,7 @@ if(isturf(A)) return - if(istype(A,/obj/item/storage/lockbox)) + if(istype(A,/obj/item/storage/lockbox) || istype(A, /obj/item/storage/pod))) A.emag_act(user) uses = max(uses - 1, 0) if(!uses) diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm index 6221416db8..2db2cd08d8 100644 --- a/code/game/objects/obj_defense.dm +++ b/code/game/objects/obj_defense.dm @@ -241,6 +241,7 @@ GLOBAL_DATUM_INIT(acid_overlay, /mutable_appearance, mutable_appearance('icons/e //what happens when the obj's health is below integrity_failure level. /obj/proc/obj_break(damage_flag) + SEND_SIGNAL(src, COMSIG_OBJ_BREAK, damage_flag) return //what happens when the obj's integrity reaches zero. diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 9af4194049..d41fd6a79b 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -516,10 +516,10 @@ name = "emergency space suits" desc = "A wall mounted safe containing space suits. Will only open in emergencies." anchored = TRUE - density = FALSE icon = 'icons/obj/storage.dmi' icon_state = "safe" - var/unlocked = FALSE + integrity_failure = 100 + component_type = /datum/component/storage/concrete/emergency /obj/item/storage/pod/PopulateContents() new /obj/item/clothing/head/helmet/space/orange(src) @@ -535,26 +535,6 @@ new /obj/item/survivalcapsule(src) new /obj/item/storage/toolbox/emergency(src) -/obj/item/storage/pod/attackby(obj/item/W, mob/user, params) - if (can_interact(user)) - return ..() - -/obj/item/storage/pod/attack_hand(mob/user) - if (can_interact(user)) - SEND_SIGNAL(src, COMSIG_TRY_STORAGE_SHOW, user) - return TRUE - -/obj/item/storage/pod/MouseDrop(over_object, src_location, over_location) - if(can_interact(usr)) - return ..() - -/obj/item/storage/pod/can_interact(mob/user) - if(!..()) - return FALSE - if(GLOB.security_level == SEC_LEVEL_RED || GLOB.security_level == SEC_LEVEL_DELTA || unlocked) - return TRUE - to_chat(user, "The storage unit will only unlock during a Red or Delta security alert.") - /obj/docking_port/mobile/emergency/backup name = "backup shuttle" id = "backup" diff --git a/code/modules/shuttle/on_move.dm b/code/modules/shuttle/on_move.dm index 9942446868..a6904c28cc 100644 --- a/code/modules/shuttle/on_move.dm +++ b/code/modules/shuttle/on_move.dm @@ -290,7 +290,8 @@ All ShuttleMove procs go here // ignores the movement of the shuttle from the staging area on CentCom to // the station as it is loaded in. if (oldT && !is_centcom_level(oldT.z)) - unlocked = TRUE + GET_COMPONENT(STR, /datum/component/storage/concrete/emergency) + STR?.unlock_me() /************************************Mob move procs************************************/ From 73e279dada06506fe7ac67cd2f1e09b96313c776 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 2 Jun 2019 18:29:43 +0200 Subject: [PATCH 148/370] excessive parenthesis wrapping. --- code/game/objects/items/cards_ids.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 4143e45624..96bbe759ca 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -105,7 +105,7 @@ if(isturf(A)) return - if(istype(A,/obj/item/storage/lockbox) || istype(A, /obj/item/storage/pod))) + if(istype(A,/obj/item/storage/lockbox) || istype(A, /obj/item/storage/pod)) A.emag_act(user) uses = max(uses - 1, 0) if(!uses) From da4ce71ba342c8b4d16ad29efe239453751bbf17 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 2 Jun 2019 19:02:16 +0200 Subject: [PATCH 149/370] alphabetic index, you silly brainfrying wonks. --- tgstation.dme | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/tgstation.dme b/tgstation.dme index 9219376f29..fe53839289 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -380,6 +380,7 @@ #include "code\datums\components\storage\concrete\_concrete.dm" #include "code\datums\components\storage\concrete\bag_of_holding.dm" #include "code\datums\components\storage\concrete\bluespace.dm" +#include "code\datums\components\storage\concrete\emergency.dm" #include "code\datums\components\storage\concrete\implant.dm" #include "code\datums\components\storage\concrete\pockets.dm" #include "code\datums\components\storage\concrete\rped.dm" @@ -2504,22 +2505,10 @@ #include "code\modules\research\designs\AI_module_designs.dm" #include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\bluespace_designs.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" #include "code\modules\research\designs\computer_part_designs.dm" #include "code\modules\research\designs\electronics_designs.dm" #include "code\modules\research\designs\equipment_designs.dm" #include "code\modules\research\designs\limbgrower_designs.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\designs\mecha_designs.dm" #include "code\modules\research\designs\mechfabricator_designs.dm" #include "code\modules\research\designs\medical_designs.dm" @@ -2537,6 +2526,18 @@ #include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\machinery\_production.dm" #include "code\modules\research\machinery\circuit_imprinter.dm" #include "code\modules\research\machinery\departmental_circuit_imprinter.dm" From abb76baeca1d715ebbc1596277494dc84709de88 Mon Sep 17 00:00:00 2001 From: Thalpy <33956696+Thalpy@users.noreply.github.com> Date: Sun, 2 Jun 2019 19:14:08 +0100 Subject: [PATCH 150/370] Update code/modules/mob/living/carbon/human/examine.dm Ghoomie's change. Co-Authored-By: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/modules/mob/living/carbon/human/examine.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 59cdda8484..ef792443a3 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -281,7 +281,7 @@ if(91.01 to INFINITY) msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" - if(has_trait(TRAIT_EMPATH) && !appears_dead && (src != user)) + if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead) if (a_intent != INTENT_HELP) msg += "[t_He] seem[p_s()] to be on guard.\n" if (getOxyLoss() >= 10) From e0690c610ae01e59c5312dc3cf8a28dbb9f9adf6 Mon Sep 17 00:00:00 2001 From: Thalpy <33956696+Thalpy@users.noreply.github.com> Date: Sun, 2 Jun 2019 20:53:41 +0100 Subject: [PATCH 151/370] Added a check to ensure empath target isn't dead. --- code/modules/mob/living/carbon/human/examine.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index ef792443a3..a88250f4c7 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -281,7 +281,7 @@ if(91.01 to INFINITY) msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" - if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead) + if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead && !stat == DEAD) if (a_intent != INTENT_HELP) msg += "[t_He] seem[p_s()] to be on guard.\n" if (getOxyLoss() >= 10) From 5b56225b72bdae06aee5ee86133fd3ac83b01c34 Mon Sep 17 00:00:00 2001 From: Fermi Date: Sun, 2 Jun 2019 21:01:05 +0100 Subject: [PATCH 152/370] Wait how can the dead inspect? --- code/modules/mob/living/carbon/human/examine.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index a88250f4c7..ef792443a3 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -281,7 +281,7 @@ if(91.01 to INFINITY) msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" - if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead && !stat == DEAD) + if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead) if (a_intent != INTENT_HELP) msg += "[t_He] seem[p_s()] to be on guard.\n" if (getOxyLoss() >= 10) From c11d2bac80bf9f8385f136b903db1cb8942cc4f6 Mon Sep 17 00:00:00 2001 From: Fermi Date: Sun, 2 Jun 2019 21:03:16 +0100 Subject: [PATCH 153/370] Okay, now it checks the right thing. --- .../mob/living/carbon/human/examine.dm | 38 ++++++++++--------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index ef792443a3..9964b9c1ca 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -281,24 +281,26 @@ if(91.01 to INFINITY) msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" - if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead) - if (a_intent != INTENT_HELP) - msg += "[t_He] seem[p_s()] to be on guard.\n" - if (getOxyLoss() >= 10) - msg += "[t_He] seem[p_s()] winded.\n" - if (getToxLoss() >= 10) - msg += "[t_He] seem[p_s()] sickly.\n" - GET_COMPONENT_FROM(mood, /datum/component/mood, src) - if(mood.sanity <= SANITY_DISTURBED) - msg += "[t_He] seem[p_s()] distressed.\n" - SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empath", /datum/mood_event/sad_empath, src) - if(mood.mood >= 5) //So roundstart people aren't all "happy" - msg += "[t_He] seem[p_s()] to have had something nice happen to them recently.\n" - SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empathH", /datum/mood_event/happy_empath, src) - if (has_trait(TRAIT_BLIND)) - msg += "[t_He] appear[p_s()] to be staring off into space.\n" - if (has_trait(TRAIT_DEAF)) - msg += "[t_He] appear[p_s()] to not be responding to noises.\n" + if(isliving(user)) + var/mob/living/L = user + if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead) + if (a_intent != INTENT_HELP) + msg += "[t_He] seem[p_s()] to be on guard.\n" + if (getOxyLoss() >= 10) + msg += "[t_He] seem[p_s()] winded.\n" + if (getToxLoss() >= 10) + msg += "[t_He] seem[p_s()] sickly.\n" + GET_COMPONENT_FROM(mood, /datum/component/mood, src) + if(mood.sanity <= SANITY_DISTURBED) + msg += "[t_He] seem[p_s()] distressed.\n" + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empath", /datum/mood_event/sad_empath, src) + if(mood.mood >= 5) //So roundstart people aren't all "happy" + msg += "[t_He] seem[p_s()] to have had something nice happen to them recently.\n" + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empathH", /datum/mood_event/happy_empath, src) + if (has_trait(TRAIT_BLIND)) + msg += "[t_He] appear[p_s()] to be staring off into space.\n" + if (has_trait(TRAIT_DEAF)) + msg += "[t_He] appear[p_s()] to not be responding to noises.\n" msg += "" From 1a73cf6efe58f3757dac9544e2451515b1fdeac9 Mon Sep 17 00:00:00 2001 From: Fermi Date: Sun, 2 Jun 2019 21:09:31 +0100 Subject: [PATCH 154/370] This is why you compile test. --- code/modules/mob/living/carbon/human/examine.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 9964b9c1ca..6dc15048d7 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -283,7 +283,7 @@ if(isliving(user)) var/mob/living/L = user - if(src != user && user.has_trait(TRAIT_EMPATH) && !appears_dead) + if(src != user && L.has_trait(TRAIT_EMPATH) && !appears_dead) if (a_intent != INTENT_HELP) msg += "[t_He] seem[p_s()] to be on guard.\n" if (getOxyLoss() >= 10) From c98d2ce5a0be48fb7bf86d1219ce054678abb747 Mon Sep 17 00:00:00 2001 From: BurgerLua Date: Sun, 2 Jun 2019 15:21:45 -0700 Subject: [PATCH 155/370] nuke be gone --- code/game/machinery/computer/arcade.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 7ef70ddd21..13d5cff3b8 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -69,8 +69,7 @@ /obj/item/clothing/shoes/kindleKicks = ARCADE_WEIGHT_RARE, /obj/item/storage/belt/military/snack = ARCADE_WEIGHT_RARE, - /obj/item/clothing/mask/fakemoustache/italian = ARCADE_WEIGHT_RARE, - /obj/item/disk/nuclear/fake = ARCADE_WEIGHT_RARE + /obj/item/clothing/mask/fakemoustache/italian = ARCADE_WEIGHT_RARE ) light_color = LIGHT_COLOR_GREEN From ebb820ed388d53871ae38e537769c8a4aa963740 Mon Sep 17 00:00:00 2001 From: Useroth Date: Mon, 3 Jun 2019 22:56:01 +0200 Subject: [PATCH 156/370] Made the changeling tentacle disarm a bit more reliable. --- .../changeling/powers/mutations.dm | 5 ++-- tgstation.dme | 24 +++++++++---------- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/code/modules/antagonists/changeling/powers/mutations.dm b/code/modules/antagonists/changeling/powers/mutations.dm index 3d6c766307..ede3c2fc58 100644 --- a/code/modules/antagonists/changeling/powers/mutations.dm +++ b/code/modules/antagonists/changeling/powers/mutations.dm @@ -344,9 +344,8 @@ if(isitem(target)) var/obj/item/I = target if(!I.anchored) - to_chat(firer, "You pull [I] towards yourself.") - H.throw_mode_on() - I.throw_at(H, 10, 2) + to_chat(firer, "You pull [I] right into your grasp.") + H.put_in_hands(I) //Because throwing it is goofy as fuck and unreliable. If you land the tentacle despite the penalties to accuracy, you should have your reward. . = 1 else if(isliving(target)) diff --git a/tgstation.dme b/tgstation.dme index f2cef76dd9..c9098249b0 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2505,22 +2505,10 @@ #include "code\modules\research\designs\AI_module_designs.dm" #include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\bluespace_designs.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" #include "code\modules\research\designs\computer_part_designs.dm" #include "code\modules\research\designs\electronics_designs.dm" #include "code\modules\research\designs\equipment_designs.dm" #include "code\modules\research\designs\limbgrower_designs.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\designs\mecha_designs.dm" #include "code\modules\research\designs\mechfabricator_designs.dm" #include "code\modules\research\designs\medical_designs.dm" @@ -2538,6 +2526,18 @@ #include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\machinery\_production.dm" #include "code\modules\research\machinery\circuit_imprinter.dm" #include "code\modules\research\machinery\departmental_circuit_imprinter.dm" From ed7d0575b26cc7062de3798f1852eb614a48505c Mon Sep 17 00:00:00 2001 From: BurgerLua Date: Mon, 3 Jun 2019 14:40:57 -0700 Subject: [PATCH 157/370] Ass Blast USA --- code/__DEFINES/traits.dm | 1 + code/datums/traits/neutral.dm | 9 +++++++ .../mob/living/carbon/human/species.dm | 21 ++++++++++++++-- tgstation.dme | 24 +++++++++---------- 4 files changed, 41 insertions(+), 14 deletions(-) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index b2caf614b3..5c2deae875 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -72,6 +72,7 @@ #define TRAIT_CROCRIN_IMMUNE "crocin_immune" #define TRAIT_NYMPHO "nymphomania" #define TRAIT_MASO "masochism" +#define TRAIT_ASSBLASTUSA "assblastusa" // common trait sources #define TRAIT_GENERIC "generic" diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index f299e9904a..f70e3a3c68 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -93,3 +93,12 @@ gain_text = "You feel more prudish." lose_text = "You don't feel as prudish as before." medical_record_text = "Patient exhibits a special gene that makes them immune to Crocin and Hexacrocin." + +/datum/quirk/assblastusa + name = "Buns of Steel" + desc = "You've never skipped ass day. With this trait, you are completely immune to all forms of ass slapping and anyone who tries to slap your rock hard ass usually gets a broken hand." + mob_trait = TRAIT_ASSBLASTUSA + value = 0 + medical_record_text = "Patient never skipped ass day." + gain_text = "Your ass rivals those of golems." + lose_text = "Your butt feels more squishy and slappable." \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 9a0a978d7a..ff2064c30f 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1486,6 +1486,24 @@ GLOBAL_LIST_EMPTY(roundstart_races) user.adjustStaminaLossBuffered(3) return FALSE else if(aim_for_groin && (target == user || target.lying || same_dir) && (target_on_help || target_restrained || target_aiming_for_groin)) + user.do_attack_animation(target, ATTACK_EFFECT_ASS_SLAP) + user.adjustStaminaLossBuffered(3) + if(target.has_trait(TRAIT_ASSBLASTUSA)) + var/hit_zone = (user.held_index_to_dir(user.active_hand_index) == "l" ? "l_":"r_") + "arm" + user.adjustStaminaLoss(50, affected_zone = hit_zone) + var/obj/item/bodypart/affecting = user.get_bodypart(hit_zone) + if(affecting) + if(affecting.receive_damage(5, 0)) + user.update_damage_overlays() + user.visible_message(\ + "\The [user] slaps \the [target]'s ass, but their hand bounces off like they hit metal!",\ + "You slap [user == target ? "your" : "\the [target]'s"] ass, but feel an intense amount of pain as you realise their buns are harder than steel!",\ + "You hear a slap." + ) + playsound(target.loc, 'sound/weapons/tap.ogg', 50, 1, -1) + user.emote("scream") + return FALSE + playsound(target.loc, 'sound/weapons/slap.ogg', 50, 1, -1) user.visible_message(\ "\The [user] slaps \the [target]'s ass!",\ @@ -1498,8 +1516,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) target.mob_climax(forced_climax=TRUE) if (!target.has_trait(TRAIT_NYMPHO)) stop_wagging_tail(target) - user.do_attack_animation(target, ATTACK_EFFECT_ASS_SLAP) - user.adjustStaminaLossBuffered(3) + return FALSE else if(attacker_style && attacker_style.disarm_act(user,target)) return 1 diff --git a/tgstation.dme b/tgstation.dme index f2cef76dd9..c9098249b0 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2505,22 +2505,10 @@ #include "code\modules\research\designs\AI_module_designs.dm" #include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\bluespace_designs.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" #include "code\modules\research\designs\computer_part_designs.dm" #include "code\modules\research\designs\electronics_designs.dm" #include "code\modules\research\designs\equipment_designs.dm" #include "code\modules\research\designs\limbgrower_designs.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\designs\mecha_designs.dm" #include "code\modules\research\designs\mechfabricator_designs.dm" #include "code\modules\research\designs\medical_designs.dm" @@ -2538,6 +2526,18 @@ #include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\machinery\_production.dm" #include "code\modules\research\machinery\circuit_imprinter.dm" #include "code\modules\research\machinery\departmental_circuit_imprinter.dm" From 5d397fafdabf55ff2a229649c51c125c53bfdeb5 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Mon, 3 Jun 2019 16:51:15 -0500 Subject: [PATCH 158/370] Automatic changelog generation for PR #8515 [ci skip] --- html/changelogs/AutoChangeLog-pr-8515.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8515.yml diff --git a/html/changelogs/AutoChangeLog-pr-8515.yml b/html/changelogs/AutoChangeLog-pr-8515.yml new file mode 100644 index 0000000000..99e414f5e1 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8515.yml @@ -0,0 +1,5 @@ +author: "Ghommie" +delete-after: True +changes: + - bugfix: "Fixes stunbatons icon not properly updating on cell removal and insertion." + - tweak: "Allows lower charge cells to be used with stun batons, and thus single use crapshots batons." From 7fb1f7fba142bbf564e4c333f20c7d80a22189e8 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Mon, 3 Jun 2019 18:38:55 -0400 Subject: [PATCH 159/370] Update snacks_pastry.dm --- code/modules/food_and_drinks/food/snacks_pastry.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index 435b4a371a..fe05d8a5bf 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -203,7 +203,7 @@ list_reagents = list("nutriment" = 1) filling_color = "#F0E68C" tastes = list("cookie" = 1) - foodtype = GRAIN | SUGAR + foodtype = SUGAR /obj/item/reagent_containers/food/snacks/donkpocket name = "\improper Donk-pocket" From da67bdf63d2ac751d2068490d0a3ac1b0e275c56 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Tue, 4 Jun 2019 12:40:29 -0400 Subject: [PATCH 160/370] >_> --- code/modules/projectiles/projectile/bullets/shotgun.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/projectiles/projectile/bullets/shotgun.dm b/code/modules/projectiles/projectile/bullets/shotgun.dm index 07f726b691..f9aa47c6a3 100644 --- a/code/modules/projectiles/projectile/bullets/shotgun.dm +++ b/code/modules/projectiles/projectile/bullets/shotgun.dm @@ -17,7 +17,8 @@ /obj/item/projectile/bullet/shotgun_stunslug name = "stunslug" - stamina = 30 + damage = 5 + stamina = 20 knockdown = 100 stutter = 5 jitter = 20 From b175150719cf2008357dab454d919d94fbeb517d Mon Sep 17 00:00:00 2001 From: Poojawa Date: Tue, 4 Jun 2019 23:27:33 -0500 Subject: [PATCH 161/370] fixes missing chest markings --- modular_citadel/icons/mob/mam_markings.dmi | Bin 93880 -> 93563 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/modular_citadel/icons/mob/mam_markings.dmi b/modular_citadel/icons/mob/mam_markings.dmi index 3575f38e1cdb20d6d5ad39684f176f60a0021ec5..9931f52fe750ae870e51360db66dfa42426df45a 100644 GIT binary patch delta 50129 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

|#RkAiwh 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%0D-v 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 VhUXrt+i}%UH*~J&U9))ce*pAxV1NJs From b053fe3c86634d2f2743e36c3ad888f2d6735d63 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Tue, 4 Jun 2019 23:36:58 -0500 Subject: [PATCH 162/370] Probably fixes synth hand issues --- code/modules/surgery/bodyparts/bodyparts.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 71b659b73f..564a0623a0 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -262,6 +262,7 @@ else if(status == BODYPART_ROBOTIC) icon = DEFAULT_BODYPART_ICON_ROBOTIC body_markings = null + auxmarking = null if(owner) owner.updatehealth() @@ -292,6 +293,7 @@ should_draw_greyscale = FALSE no_update = TRUE body_markings = "husk" // reeee + auxmarking = "husk" if(no_update) return @@ -339,13 +341,16 @@ if(H.dna.features.["mam_body_markings"] != "None") body_markings_icon = Smark.icon body_markings = lowertext(H.dna.features.["mam_body_markings"]) + auxmarking = lowertext(H.dna.features.["mam_body_markings"]) if(MATRIXED) markings_color = list(colorlist) else body_markings = "plain" + auxmarking = "plain" markings_color = (H.dna.features.["mcolor"]) else body_markings = null + auxmarking = null markings_color = "" if(!dropping_limb && H.dna.check_mutation(HULK)) @@ -361,6 +366,7 @@ if(status == BODYPART_ROBOTIC) dmg_overlay_type = "robotic" body_markings = null + auxmarking = null if(dropping_limb) no_update = TRUE //when attached, the limb won't be affected by the appearance changes of its mob owner. From a2b4f4261c1444c7eafa52ecf07a51b33efcc344 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Wed, 5 Jun 2019 02:33:25 -0500 Subject: [PATCH 163/370] Fixes missing hands and marking overlap cleans up the code a bit too. Improves female chest sprites. --- .../mob/living/carbon/human/update_icons.dm | 2 ++ code/modules/surgery/bodyparts/bodyparts.dm | 33 +++++++----------- modular_citadel/icons/mob/mam_markings.dmi | Bin 93563 -> 93529 bytes 3 files changed, 15 insertions(+), 20 deletions(-) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 9b5375035e..ef5b9045ca 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -660,6 +660,8 @@ generate/load female uniform sprites matching all previously decided variables . += "-[BP.dmg_overlay_type]" if(BP.body_markings) . += "-[BP.body_markings]" + else + . += "-no_marking" if(has_trait(TRAIT_HUSK)) . += "-husk" diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 564a0623a0..e35b8efbd0 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -48,7 +48,7 @@ var/body_markings = "" //for bodypart markings var/body_markings_icon = 'modular_citadel/icons/mob/mam_markings.dmi' var/list/markings_color = list() - var/auxmarking + var/auxmarking = "" var/list/auxmarking_color = list() var/animal_origin = null //for nonhuman bodypart (e.g. monkey) @@ -261,8 +261,6 @@ icon = DEFAULT_BODYPART_ICON_ORGANIC else if(status == BODYPART_ROBOTIC) icon = DEFAULT_BODYPART_ICON_ROBOTIC - body_markings = null - auxmarking = null if(owner) owner.updatehealth() @@ -338,20 +336,14 @@ if("mam_body_markings" in S.default_features) var/datum/sprite_accessory/Smark Smark = GLOB.mam_body_markings_list[H.dna.features["mam_body_markings"]] + body_markings_icon = Smark.icon if(H.dna.features.["mam_body_markings"] != "None") - body_markings_icon = Smark.icon body_markings = lowertext(H.dna.features.["mam_body_markings"]) auxmarking = lowertext(H.dna.features.["mam_body_markings"]) - if(MATRIXED) - markings_color = list(colorlist) else body_markings = "plain" auxmarking = "plain" - markings_color = (H.dna.features.["mcolor"]) - else - body_markings = null - auxmarking = null - markings_color = "" + markings_color = list(colorlist) if(!dropping_limb && H.dna.check_mutation(HULK)) mutation_color = "00aa00" @@ -400,7 +392,8 @@ . += image('icons/mob/dam_mob.dmi', "[dmg_overlay_type]_[body_zone]_[brutestate]0", -DAMAGE_LAYER, image_dir) if(burnstate) . += image('icons/mob/dam_mob.dmi', "[dmg_overlay_type]_[body_zone]_0[burnstate]", -DAMAGE_LAYER, image_dir) - if(body_markings && status != BODYPART_ROBOTIC) + + if(!isnull(body_markings) && status == BODYPART_ORGANIC) if(!use_digitigrade) if(BODY_ZONE_CHEST) . += image(body_markings_icon, "[body_markings]_[body_zone]_[icon_gender]", -MARKING_LAYER, image_dir) @@ -456,7 +449,7 @@ limb.icon_state = "[species_id]_[body_zone]" // Body markings - if(body_markings) + if(!isnull(body_markings)) if(species_id == "husk") marking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[body_zone]", -MARKING_LAYER, image_dir) else if(species_id == "husk" && use_digitigrade) @@ -476,7 +469,7 @@ if(aux_zone) aux = image(limb.icon, "[species_id]_[aux_zone]", -aux_layer, image_dir) . += aux - if(body_markings) + if(!isnull(auxmarking)) if(species_id == "husk") auxmarking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[aux_zone]", -aux_layer, image_dir) else @@ -489,17 +482,18 @@ limb.icon_state = "[body_zone]_[icon_gender]" else limb.icon_state = "[body_zone]" + if(aux_zone) - aux = image(limb.icon, "[species_id]_[aux_zone]", -aux_layer, image_dir) + aux = image(limb.icon, "[aux_zone]", -aux_layer, image_dir) . += aux - if(body_markings) + if(!isnull(auxmarking)) if(species_id == "husk") auxmarking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[aux_zone]", -aux_layer, image_dir) else auxmarking = image(body_markings_icon, "[body_markings]_[aux_zone]", -aux_layer, image_dir) . += auxmarking - if(body_markings) + if(!isnull(body_markings)) if(species_id == "husk") marking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[body_zone]", -MARKING_LAYER, image_dir) else if(species_id == "husk" && use_digitigrade) @@ -515,17 +509,16 @@ . += marking return - if(should_draw_greyscale) var/draw_color = mutation_color || species_color || (skin_tone && skintone2hex(skin_tone)) if(draw_color) limb.color = "#[draw_color]" if(aux_zone) aux.color = "#[draw_color]" - if(body_markings) + if(!isnull(auxmarking)) auxmarking.color = list(markings_color) - if(body_markings) + if(!isnull(body_markings)) if(species_id == "husk") marking.color = "#141414" else diff --git a/modular_citadel/icons/mob/mam_markings.dmi b/modular_citadel/icons/mob/mam_markings.dmi index 9931f52fe750ae870e51360db66dfa42426df45a..8327be6eaf0663c9f3c42a9173f4468488b89fb8 100644 GIT binary patch literal 93529 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
jQyJ?b_eIan2Q`ABfBnahq?PAKQ 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 oZ|_V5!!!J4oT0xzxyEV`;2%>uLM*KOV literal 93563 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 B@Qwfg From 60ab3b54d51fc34106336640d42b31d388276b6a Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:40:31 -0500 Subject: [PATCH 164/370] Automatic changelog generation for PR #8524 [ci skip] --- html/changelogs/AutoChangeLog-pr-8524.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8524.yml diff --git a/html/changelogs/AutoChangeLog-pr-8524.yml b/html/changelogs/AutoChangeLog-pr-8524.yml new file mode 100644 index 0000000000..66a7b6d456 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8524.yml @@ -0,0 +1,4 @@ +author: "BurgerBB" +delete-after: True +changes: + - rscadd: "Adds a new trait \"Buns of Steel\" that makes you immune to the effects of ass slapping, and temporarily makes the user's arm useless like a stun baton hit. It costs 0 points." From 73fe37ada015db2cb0d12beb823341bd7dc93bac Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:41:25 -0500 Subject: [PATCH 165/370] Automatic changelog generation for PR #8518 [ci skip] --- html/changelogs/AutoChangeLog-pr-8518.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8518.yml diff --git a/html/changelogs/AutoChangeLog-pr-8518.yml b/html/changelogs/AutoChangeLog-pr-8518.yml new file mode 100644 index 0000000000..cbc34893b6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8518.yml @@ -0,0 +1,5 @@ +author: "Ghommie" +delete-after: True +changes: + - tweak: "escape pods emergency suits storage can now be busted open by emags or excessive damage." + - bugfix: "Fixes alt click bypassing the escape pods' suits storage lock." From 1eef9b39e30a808e1a43097f888868ea7fc3ded9 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:42:50 -0500 Subject: [PATCH 166/370] Automatic changelog generation for PR #8517 [ci skip] --- html/changelogs/AutoChangeLog-pr-8517.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8517.yml diff --git a/html/changelogs/AutoChangeLog-pr-8517.yml b/html/changelogs/AutoChangeLog-pr-8517.yml new file mode 100644 index 0000000000..5e14c1c696 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8517.yml @@ -0,0 +1,6 @@ +author: "Poojawa" +delete-after: True +changes: + - rscadd: "Added visible and hidden testicles" + - rscadd: "Added multi-boob support. Now you can have two or three pairs of breasts." + - bugfix: "fixed missing vagina and breast sprites" From 8dc5619369f10bc47c3b0c259a05d0f3a4167afc Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:44:07 -0500 Subject: [PATCH 167/370] Automatic changelog generation for PR #8506 [ci skip] --- html/changelogs/AutoChangeLog-pr-8506.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8506.yml diff --git a/html/changelogs/AutoChangeLog-pr-8506.yml b/html/changelogs/AutoChangeLog-pr-8506.yml new file mode 100644 index 0000000000..6711217fb5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8506.yml @@ -0,0 +1,5 @@ +author: "CalamaBanana" +delete-after: True +changes: + - rscadd: "Added Deer taur" + - rscadd: "Added Elf ears to mammals" From f18943387fba7bc0c0a2eeb22633b4061785e3cd Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:49:13 -0500 Subject: [PATCH 168/370] Automatic changelog generation for PR #8504 [ci skip] --- html/changelogs/AutoChangeLog-pr-8504.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8504.yml diff --git a/html/changelogs/AutoChangeLog-pr-8504.yml b/html/changelogs/AutoChangeLog-pr-8504.yml new file mode 100644 index 0000000000..4e80d02845 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8504.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - bugfix: "resonators being so shitty" From 65e2d1d37c70a89a509ad392a6aadc04b78691e4 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:49:59 -0500 Subject: [PATCH 169/370] Automatic changelog generation for PR #8489 [ci skip] --- html/changelogs/AutoChangeLog-pr-8489.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8489.yml diff --git a/html/changelogs/AutoChangeLog-pr-8489.yml b/html/changelogs/AutoChangeLog-pr-8489.yml new file mode 100644 index 0000000000..5e90c56d67 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8489.yml @@ -0,0 +1,5 @@ +author: "Coolgat3" +delete-after: True +changes: + - rscadd: "Added combat gloves sprite" + - imageadd: "Added said sprite" From 055396d110b8eabf524055913d03c0c2c6e75e3e Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:52:19 -0500 Subject: [PATCH 170/370] Automatic changelog generation for PR #8491 [ci skip] --- html/changelogs/AutoChangeLog-pr-8491.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8491.yml diff --git a/html/changelogs/AutoChangeLog-pr-8491.yml b/html/changelogs/AutoChangeLog-pr-8491.yml new file mode 100644 index 0000000000..0e82e809f7 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8491.yml @@ -0,0 +1,5 @@ +author: "Ghommie" +delete-after: True +changes: + - bugfix: "Reduces goonchat lag from being blasted by pellets and bullets repeatedly whilst wearing armor by properly removing the armor protection texts this times." + - spellcheck: "also reduced the size of armor protection messages in general. they clog up the chat box." From 962afa97bc798a98ccba4f63309706fb01044e0d Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:53:37 -0500 Subject: [PATCH 171/370] Automatic changelog generation for PR #8516 [ci skip] --- html/changelogs/AutoChangeLog-pr-8516.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8516.yml diff --git a/html/changelogs/AutoChangeLog-pr-8516.yml b/html/changelogs/AutoChangeLog-pr-8516.yml new file mode 100644 index 0000000000..f7419f1add --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8516.yml @@ -0,0 +1,4 @@ +author: "Ghommie" +delete-after: True +changes: + - balance: "Adds in a 7 seconds delay to the jackhammer dismantling a superheated clockwork wall." From ecef40258b3fe0b9b5b47baaf84fae13203f5d76 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 03:55:21 -0500 Subject: [PATCH 172/370] Automatic changelog generation for PR #8387 [ci skip] --- html/changelogs/AutoChangeLog-pr-8387.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8387.yml diff --git a/html/changelogs/AutoChangeLog-pr-8387.yml b/html/changelogs/AutoChangeLog-pr-8387.yml new file mode 100644 index 0000000000..4770fe08fc --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8387.yml @@ -0,0 +1,4 @@ +author: "jtgsz" +delete-after: True +changes: + - rscadd: "ported gang mode" From d44aa44ec6eb21edc2bddf552cd4ee485efc8316 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 04:02:43 -0500 Subject: [PATCH 173/370] Automatic changelog generation for PR #8528 [ci skip] --- html/changelogs/AutoChangeLog-pr-8528.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8528.yml diff --git a/html/changelogs/AutoChangeLog-pr-8528.yml b/html/changelogs/AutoChangeLog-pr-8528.yml new file mode 100644 index 0000000000..0dece1e63d --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8528.yml @@ -0,0 +1,7 @@ +author: "Poojawa" +delete-after: True +changes: + - bugfix: "fixed prosthetic hands being invisible" + - bugfix: "male foxes exist again" + - bugfix: "female chest markings improved from being too dark in comparison to their other colors, blending better" + - bugfix: "Markings behave better on non-organic limbs." From 6c6df79e190e4b445e2986ce43310ab170c074e6 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Wed, 5 Jun 2019 15:01:50 +0200 Subject: [PATCH 174/370] pink panties! Yes I sprited some pink panties because apparently that wasn't a thing. Who knows why. --- underwear.dm | 175 ++++++++++++++++++++++++++++++++++++++++++++++++++ underwear.dmi | Bin 0 -> 54015 bytes 2 files changed, 175 insertions(+) create mode 100644 underwear.dm create mode 100644 underwear.dmi diff --git a/underwear.dm b/underwear.dm new file mode 100644 index 0000000000..7b66427eba --- /dev/null +++ b/underwear.dm @@ -0,0 +1,175 @@ +/////////////////////////// +// Underwear Definitions // +/////////////////////////// +/datum/sprite_accessory/underwear + icon = 'icons/mob/underwear.dmi' + gender = NEUTER + +/datum/sprite_accessory/underwear/nude + name = "Nude" + icon_state = null + +/datum/sprite_accessory/underwear/mankini + name = "Mankini - Green" + icon_state = "mankini_green" + +/datum/sprite_accessory/underwear/male_kinky + name = "Jockstrap - White" + icon_state = "jockstrap_white" + +/datum/sprite_accessory/underwear/male_white + name = "Briefs - White" + icon_state = "briefs_white" + +/datum/sprite_accessory/underwear/male_black + name = "Briefs - Black" + icon_state = "briefs_black" + +/datum/sprite_accessory/underwear/male_grey + name = "Briefs - Grey" + icon_state = "briefs_grey" + +/datum/sprite_accessory/underwear/male_red + name = "Briefs - Red" + icon_state = "briefs_red" + +/datum/sprite_accessory/underwear/male_green + name = "Briefs - Green" + icon_state = "briefs_green" + +/datum/sprite_accessory/underwear/male_blue + name = "Briefs - Blue" + icon_state = "briefs_blue" + +/datum/sprite_accessory/underwear/male_blackalt + name = "Boxers - Black" + icon_state = "boxers_black" + +/datum/sprite_accessory/underwear/male_greyalt + name = "Boxers - Grey" + icon_state = "boxers_grey" + +/datum/sprite_accessory/underwear/male_hearts + name = "Boxers - Heart" + icon_state = "boxers_heart" + +/datum/sprite_accessory/underwear/male_stripe + name = "Boxers - Striped" + icon_state = "boxers_striped" + +/datum/sprite_accessory/underwear/male_commie + name = "Boxers - Striped Communist" + icon_state = "boxers_commie" + +/datum/sprite_accessory/underwear/male_usastripe + name = "Boxers - Striped Freedom" + icon_state = "boxers_assblastusa" + +/datum/sprite_accessory/underwear/male_uk + name = "Boxers - Striped UK" + icon_state = "boxers_uk" + + +/datum/sprite_accessory/underwear/female_whitealt + name = "Boxer Briefs - White" + icon_state = "boxer_briefs_white" + +/datum/sprite_accessory/underwear/female_blackalt + name = "Boxer Briefs - Black" + icon_state = "boxer_briefs_black" + +/datum/sprite_accessory/underwear/female_pinkalt + name = "Boxer Briefs - Pink" + icon_state = "boxer_briefs_pink" + +/datum/sprite_accessory/underwear/female_babyblue + name = "Boxer Briefs - Baby Blue" + icon_state = "boxer_briefs_babyblue" + +/datum/sprite_accessory/underwear/female_yellow + name = "Boxer Briefs - Yellow" + icon_state = "boxer_briefs_yellow" + + +/datum/sprite_accessory/underwear/female_black + name = "Panties - Black" + icon_state = "panties_black" + +/datum/sprite_accessory/underwear/female_pink + name = "Panties - Pink" + icon_state = "panties_pink" + +/datum/sprite_accessory/underwear/female_blue + name = "Panties - Blue" + icon_state = "panties_blue" + +/datum/sprite_accessory/underwear/female_commie + name = "Panties - Commie" + icon_state = "panties_commie" + +/datum/sprite_accessory/underwear/female_usastripe + name = "Panties - Freedom" + icon_state = "panties_assblastusa" + +/datum/sprite_accessory/underwear/female_green + name = "Panties - Green" + icon_state = "panties_green" + +/datum/sprite_accessory/underwear/female_kinky + name = "Panties - Kinky Black" + icon_state = "panties_kinky" + +/datum/sprite_accessory/underwear/female_red + name = "Panties - Red" + icon_state = "panties_red" + +/datum/sprite_accessory/underwear/female_uk + name = "Panties - UK" + icon_state = "panties_uk" + +/datum/sprite_accessory/underwear/female_white + name = "Panties - White" + icon_state = "panties_white" + +/datum/sprite_accessory/underwear/female_white_neko + name = "Panties, Neko - White" + icon_state = "panties_neko_white" + +/datum/sprite_accessory/underwear/female_black_neko + name = "Panties, Neko - Black" + icon_state = "panties_neko_black" + + +/datum/sprite_accessory/underwear/swimsuit_red + name = "Swimsuit, One Piece - Red" + icon_state = "swimming_red" + +/datum/sprite_accessory/underwear/swimsuit + name = "Swimsuit, One Piece - Black" + icon_state = "swimming_black" + +/datum/sprite_accessory/underwear/swimsuit_blue + name = "Swimsuit, One Piece - Striped Blue" + icon_state = "swimming_blue" + +/datum/sprite_accessory/underwear/swimsuit_green + name = "Swimsuit, Bottom - Green" + icon_state = "panties_swimming_green" + +/datum/sprite_accessory/underwear/swimsuit_purple + name = "Swimsuit, Bottom - Purple" + icon_state = "panties_swimming_purple" + +/datum/sprite_accessory/underwear/female_thong_black + name = "Thong - Black" + icon_state = "thong_black" + +/datum/sprite_accessory/underwear/female_thong + name = "Thong - Pink" + icon_state = "thong_pink" + +/datum/sprite_accessory/underwear/female_babydoll + name = "Babydoll - Black" + icon_state = "babydoll" + + diff --git a/underwear.dmi b/underwear.dmi new file mode 100644 index 0000000000000000000000000000000000000000..a7e1eb304d65768f5838688f66725bd5dc16dd96 GIT binary patch literal 54015 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 z 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 literal 0 HcmV?d00001 From f6c7eeb4daec7722f66233ca2e0548c8a1c320f1 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 09:06:47 -0400 Subject: [PATCH 175/370] Update mining_tools.dm --- code/modules/mining/equipment/mining_tools.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/modules/mining/equipment/mining_tools.dm b/code/modules/mining/equipment/mining_tools.dm index a4218b5408..0d6c337444 100644 --- a/code/modules/mining/equipment/mining_tools.dm +++ b/code/modules/mining/equipment/mining_tools.dm @@ -60,7 +60,6 @@ toolspeed = 0.6 //available from roundstart, faster than a pickaxe. usesound = 'sound/weapons/drill.ogg' hitsound = 'sound/weapons/drill.ogg' - force = 17 desc = "An electric mining drill for the especially scrawny." /obj/item/pickaxe/drill/cyborg @@ -73,7 +72,6 @@ name = "diamond-tipped mining drill" icon_state = "diamonddrill" toolspeed = 0.2 - force = 19 desc = "Yours is the drill that will pierce the heavens!" /obj/item/pickaxe/drill/cyborg/diamond //This is the BORG version! From 27ef3ce2819952b0ab67942fe5227dc8245f04d0 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Wed, 5 Jun 2019 08:10:20 -0500 Subject: [PATCH 176/370] Without this, everyone is broken --- code/modules/surgery/bodyparts/bodyparts.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index e35b8efbd0..230347fae5 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -345,6 +345,10 @@ auxmarking = "plain" markings_color = list(colorlist) + else + body_markings = null + auxmarking = null + if(!dropping_limb && H.dna.check_mutation(HULK)) mutation_color = "00aa00" else From 71c7dd0dba77b340001319d226250ba93f0b5a82 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Wed, 5 Jun 2019 16:04:19 +0200 Subject: [PATCH 177/370] Delete underwear.dm --- underwear.dm | 175 --------------------------------------------------- 1 file changed, 175 deletions(-) delete mode 100644 underwear.dm diff --git a/underwear.dm b/underwear.dm deleted file mode 100644 index 7b66427eba..0000000000 --- a/underwear.dm +++ /dev/null @@ -1,175 +0,0 @@ -/////////////////////////// -// Underwear Definitions // -/////////////////////////// -/datum/sprite_accessory/underwear - icon = 'icons/mob/underwear.dmi' - gender = NEUTER - -/datum/sprite_accessory/underwear/nude - name = "Nude" - icon_state = null - -/datum/sprite_accessory/underwear/mankini - name = "Mankini - Green" - icon_state = "mankini_green" - -/datum/sprite_accessory/underwear/male_kinky - name = "Jockstrap - White" - icon_state = "jockstrap_white" - -/datum/sprite_accessory/underwear/male_white - name = "Briefs - White" - icon_state = "briefs_white" - -/datum/sprite_accessory/underwear/male_black - name = "Briefs - Black" - icon_state = "briefs_black" - -/datum/sprite_accessory/underwear/male_grey - name = "Briefs - Grey" - icon_state = "briefs_grey" - -/datum/sprite_accessory/underwear/male_red - name = "Briefs - Red" - icon_state = "briefs_red" - -/datum/sprite_accessory/underwear/male_green - name = "Briefs - Green" - icon_state = "briefs_green" - -/datum/sprite_accessory/underwear/male_blue - name = "Briefs - Blue" - icon_state = "briefs_blue" - -/datum/sprite_accessory/underwear/male_blackalt - name = "Boxers - Black" - icon_state = "boxers_black" - -/datum/sprite_accessory/underwear/male_greyalt - name = "Boxers - Grey" - icon_state = "boxers_grey" - -/datum/sprite_accessory/underwear/male_hearts - name = "Boxers - Heart" - icon_state = "boxers_heart" - -/datum/sprite_accessory/underwear/male_stripe - name = "Boxers - Striped" - icon_state = "boxers_striped" - -/datum/sprite_accessory/underwear/male_commie - name = "Boxers - Striped Communist" - icon_state = "boxers_commie" - -/datum/sprite_accessory/underwear/male_usastripe - name = "Boxers - Striped Freedom" - icon_state = "boxers_assblastusa" - -/datum/sprite_accessory/underwear/male_uk - name = "Boxers - Striped UK" - icon_state = "boxers_uk" - - -/datum/sprite_accessory/underwear/female_whitealt - name = "Boxer Briefs - White" - icon_state = "boxer_briefs_white" - -/datum/sprite_accessory/underwear/female_blackalt - name = "Boxer Briefs - Black" - icon_state = "boxer_briefs_black" - -/datum/sprite_accessory/underwear/female_pinkalt - name = "Boxer Briefs - Pink" - icon_state = "boxer_briefs_pink" - -/datum/sprite_accessory/underwear/female_babyblue - name = "Boxer Briefs - Baby Blue" - icon_state = "boxer_briefs_babyblue" - -/datum/sprite_accessory/underwear/female_yellow - name = "Boxer Briefs - Yellow" - icon_state = "boxer_briefs_yellow" - - -/datum/sprite_accessory/underwear/female_black - name = "Panties - Black" - icon_state = "panties_black" - -/datum/sprite_accessory/underwear/female_pink - name = "Panties - Pink" - icon_state = "panties_pink" - -/datum/sprite_accessory/underwear/female_blue - name = "Panties - Blue" - icon_state = "panties_blue" - -/datum/sprite_accessory/underwear/female_commie - name = "Panties - Commie" - icon_state = "panties_commie" - -/datum/sprite_accessory/underwear/female_usastripe - name = "Panties - Freedom" - icon_state = "panties_assblastusa" - -/datum/sprite_accessory/underwear/female_green - name = "Panties - Green" - icon_state = "panties_green" - -/datum/sprite_accessory/underwear/female_kinky - name = "Panties - Kinky Black" - icon_state = "panties_kinky" - -/datum/sprite_accessory/underwear/female_red - name = "Panties - Red" - icon_state = "panties_red" - -/datum/sprite_accessory/underwear/female_uk - name = "Panties - UK" - icon_state = "panties_uk" - -/datum/sprite_accessory/underwear/female_white - name = "Panties - White" - icon_state = "panties_white" - -/datum/sprite_accessory/underwear/female_white_neko - name = "Panties, Neko - White" - icon_state = "panties_neko_white" - -/datum/sprite_accessory/underwear/female_black_neko - name = "Panties, Neko - Black" - icon_state = "panties_neko_black" - - -/datum/sprite_accessory/underwear/swimsuit_red - name = "Swimsuit, One Piece - Red" - icon_state = "swimming_red" - -/datum/sprite_accessory/underwear/swimsuit - name = "Swimsuit, One Piece - Black" - icon_state = "swimming_black" - -/datum/sprite_accessory/underwear/swimsuit_blue - name = "Swimsuit, One Piece - Striped Blue" - icon_state = "swimming_blue" - -/datum/sprite_accessory/underwear/swimsuit_green - name = "Swimsuit, Bottom - Green" - icon_state = "panties_swimming_green" - -/datum/sprite_accessory/underwear/swimsuit_purple - name = "Swimsuit, Bottom - Purple" - icon_state = "panties_swimming_purple" - -/datum/sprite_accessory/underwear/female_thong_black - name = "Thong - Black" - icon_state = "thong_black" - -/datum/sprite_accessory/underwear/female_thong - name = "Thong - Pink" - icon_state = "thong_pink" - -/datum/sprite_accessory/underwear/female_babydoll - name = "Babydoll - Black" - icon_state = "babydoll" - - From 064e52e3deb62e0116ad15ec3deaca8c1066fc21 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Wed, 5 Jun 2019 16:04:27 +0200 Subject: [PATCH 178/370] Delete underwear.dmi --- underwear.dmi | Bin 54015 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 underwear.dmi diff --git a/underwear.dmi b/underwear.dmi deleted file mode 100644 index a7e1eb304d65768f5838688f66725bd5dc16dd96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54015 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 z 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 From 2e47c973c6ac73c67b34d0bbd0a4d79c00cf45b3 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Wed, 5 Jun 2019 16:15:38 +0200 Subject: [PATCH 179/370] Pink Panties --- .../sprite_accessories/underwear.dm | 6 +++++- icons/mob/underwear.dmi | Bin 54625 -> 53916 bytes 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm b/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm index 6beed231aa..7b66427eba 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm @@ -78,7 +78,7 @@ name = "Boxer Briefs - Black" icon_state = "boxer_briefs_black" -/datum/sprite_accessory/underwear/female_pink +/datum/sprite_accessory/underwear/female_pinkalt name = "Boxer Briefs - Pink" icon_state = "boxer_briefs_pink" @@ -95,6 +95,10 @@ name = "Panties - Black" icon_state = "panties_black" +/datum/sprite_accessory/underwear/female_pink + name = "Panties - Pink" + icon_state = "panties_pink" + /datum/sprite_accessory/underwear/female_blue name = "Panties - Blue" icon_state = "panties_blue" diff --git a/icons/mob/underwear.dmi b/icons/mob/underwear.dmi index 0b63685668097377754c298ecd5905b0be20059f..76a200a3cf48d706b85ee0ea9eaa448ca37f23fb 100644 GIT binary patch literal 53916 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%0APz&$^wNVJne;J=1PvNWVK>^-3TrJPsf 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

9w^? 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 AcmMzZ From 057107da3bdeaa0e1d5d095c4c79a02dd357519d Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 11:54:39 -0500 Subject: [PATCH 180/370] Automatic changelog generation for PR #8424 [ci skip] --- html/changelogs/AutoChangeLog-pr-8424.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8424.yml diff --git a/html/changelogs/AutoChangeLog-pr-8424.yml b/html/changelogs/AutoChangeLog-pr-8424.yml new file mode 100644 index 0000000000..12295e8a82 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8424.yml @@ -0,0 +1,4 @@ +author: "Arturlang" +delete-after: True +changes: + - rscadd: "You can now use CTRL and ALT click on pumps and filters to toggle them on and off and max their output respectively" From d1d0f38460bb384380324d6bdcad03c3f0d50786 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Wed, 5 Jun 2019 19:29:53 +0200 Subject: [PATCH 181/370] Revert "test" --- .../sprite_accessories/underwear.dm | 6 +----- icons/mob/underwear.dmi | Bin 53916 -> 54625 bytes 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm b/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm index 7b66427eba..6beed231aa 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/underwear.dm @@ -78,7 +78,7 @@ name = "Boxer Briefs - Black" icon_state = "boxer_briefs_black" -/datum/sprite_accessory/underwear/female_pinkalt +/datum/sprite_accessory/underwear/female_pink name = "Boxer Briefs - Pink" icon_state = "boxer_briefs_pink" @@ -95,10 +95,6 @@ name = "Panties - Black" icon_state = "panties_black" -/datum/sprite_accessory/underwear/female_pink - name = "Panties - Pink" - icon_state = "panties_pink" - /datum/sprite_accessory/underwear/female_blue name = "Panties - Blue" icon_state = "panties_blue" diff --git a/icons/mob/underwear.dmi b/icons/mob/underwear.dmi index 76a200a3cf48d706b85ee0ea9eaa448ca37f23fb..0b63685668097377754c298ecd5905b0be20059f 100644 GIT binary patch literal 54625 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

&vhp07uq=*L^+ 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 delta 122951 zcmagFcR1DWA3uJq>~RpH>^RBZWs5_|-ee_vRYKOw-jaxrO*YBS-bv_?oxL~N`+J}F z`~CTTuj}{E@48;;49drhMFj6yG47S$<;Q{^TLf@@RXNmW&)$EL zK`%)c%y@~vHKcEc}P=H+FirCk#}C-lGGm>+TKmt++ZMls<41b z_`CRSfYA5KLHOc^GXn=fpCPlU0&~7j*(+N&JXVS&#~s3?i`M>Dm$6#+TaGYsK{sAP z<>0Ri!;4H8(rN*6k2{mQ1k+1C-of)V7*tIOgZ!$DiRo3bmL5#VyDfy{?3NzeJB1X& z-&tKcDiXphqLbM8`Z-0ThpJPXupZD z5}_6qF8bX==K*=Fl?;*e$39kFA*7yl_&wZeF(mXezLCeJ>OzhX*Yvf`!_C#IHZWtV{Zz zS}8DVMeVXa-Kqt0^clcIGYR$rNFI-#h zeqPQXx-e^KX?ZbLw)AG1yEbgJUn9~Zi2dRDA=#(GC+1A27OOjj9409~K`|T4dF%?j zJbJ!n7jA2~kkzK|7Ow7!mY+z?fQm=e6G|3I{};A1TVKhd=*0rvp?cn+tn1|Gegd8- zm6(bJ(HnUcYlc#uExU18A6$+GFm!M|Hh3QKT+Fs$MZX_lQSCB&U(pw$0EuDDJ(eK) z`FLd=@ubq_d1>hx}dE zzr)1$T2_Z~RYZNSnejzxedB^sHb=={VD(2bhGwsj#)*@7HAH_Wk%H0|VfH~vzc$q3 zT>>{0lxlnS^%TB5*6(>of3$AI96Cx~n^GcL%iB+!61ja6uFO*>ydD=Qm)&m?m;Zar zzl`Pi@i)jU>C1wY^Niix4bvIh-M4<1>psI}JHEq8<5nU)$e73KMe(?C7o=ML^~Dbx zHMon_e?cn2H67>oqr(3&QF+0Z)RwC}jfQJMgyKaRs?w>;FPuGX#(<@S# z1xu|zHgzodb0ckouZlmG?0U$TzWz|I`!QVo?e=khiEkszFhA*#28BEQ_RxX&>yFg0 z?b`i89j?aXjz4(A-#O~-w-SovdbP)&E5{=Yes$rnmft<%D*tp2OLfJ>cK?Kp@NLGE z!wg?K|7*#-{|WM)aUWcZfNm8;v&E_u=Xcv+M@RXho*h)_r62Lg#n=ei<&y>!#p%5f zq%9${^iyJZUOstz{UN4wcc?7Qs_*NyTC->J)6-Rg(eql3YEJ33$ag6%`YfI7Egx62 zt2XJFFxNhqGMxx2c@IvGj5fWy6=Hz7QWP%E#%m=y_5+@KsQ$??`FBcgKdI*d~&MD%%Z-KYENUoc$k_$OpnZvquhR3$I*ey zlC`g`>KVX=F;W5P_@F_^|UqlI@A)>lEu?hP!?_(4||3=v`K4l(vVDEs~c9SF(22m zieTg;Oh@6g1Ute)s2R$T&NFy>wp>vSbUIH7k-AfNeIl}_KT8gB+$K>DZ!nBW+ou1l z);M&YLA^$MD-)6@>ljifq5XuEXV95}@qQ!1#9bM_mmdB7>enRY6^%yF)dr7mqm>xl zU8S&%Djccvofh!ILZzCb7~jIrV5}L2L4{UaGx!0F>;65K{MtbUrRUFGF-{Bz z=z?RfirFL`4lcLetLDL@k$OLCjS-aZRP*dVFO5cO76i#=W)PprFKV#BgY$z|XJ6K- zBPesi`JwtZ*Mwr+iG&K>F?PA4Z{IRFjy*7|x@^AXrcGL|&smxuiXvK-XCG&ds_Ojl z>+gpt8_pl@%B%JGQ6<%lDE;`9hqRE4a56H&sa|831uy%HVaXD$SCOkA-91Uij?gM^ zcD#Twg5l04IylB}6&j6;hFcE8Sh__w%k_!w+_?iGJ}8CBF^5zJPi}?uSO#=jpyWb% zoV;76h&KINuUu}2b|AYnKf#u9q5-AN0HymL-D|#{m7KAW zn|S*$lIH1w7ndFW6XfVKrMw|S!)d1s?54u8k#W@cFV{*WS+u-f$>ZnPvSbeNJ^?n^ zB~ZWa$jHczqG67zE6oD!fN_WE*ovRQ?dBi*mOp>9qQEZSFZd8plVa;iFzwX3u&3R? zO-XR`-tyP7*SVSn7A-SG^IBC>YWs&x-$pbKuM)WkgueakM2;25h$;DDCM&pLv+stnzr*P8-(@f;-0R0v6oLyJd-GYCKAE4r%z;~&SuQwNFkRE;ztt)Q4dX( zh8t(Pgo!-*F@?kneq>zP>lE?pE?xj*nlC{xX0dKjW>(zfmhjIJ-En+Lr^Izbt-kjp zH5B77<^<~b4qkEPOSp+dQ%<>M&nl21QA1Ph{7F$qhF0H98-JaD?6FMFQoSidrbap( zD^kxzo|lYtxaM};Z!SpFZ(nn@8z6*&+h)G=H+=cBD-x0Q{p|ExCW3&9ii%r!g4Dvg z<=4Se!vIFS02_KyQMJ4wmxrmEVhf%!)_GwM#8B4gcl0BrpeyUG3AWPf!onya|Rd@URErP5Kax5i`)Bm6%;;f;H5D0s<7?_>dDDT zcue>H<>e*J&q3Hr%jzJGgvG&uI>MJ(m`Gk4jx9s>@72L!e7gDr!rtZZi`jHLzfS41 zx?Vmg%DeW;zGMzdy@9X(e}5G`2+~I2#3VW!W897_{C+?2ixGwo6vhSDZ4)mJdXw!l zJ4<|MUL$*+4#x5CHAa+B;=Q)Fxo|U3GNmuX{|ckpCowrCWk{rM$|-c%4hNQB7!ex_ zhrzJC)@v9LH8NxLH(){V<*99__8Oy;+5OWNg$IdKM}$o{X{vdssi|nB!wwSfzBxTf z=$z|AK0!#7wXb`s`np}|qc#7nUsqsv!VcOXmNN;FJm2qmfz^dDX6$?XKB=;Q9WQnj1EU~;jXO|Drjs7G9oMd&fLVYosfvd3otutf!sInz z@yCHY8(8X2iRdYUcef8UT|W>#e*RhL()LeU4n=*;U z#@&OX`SnGerkij(EllmIlN_j!gXHaPON&czb0X{g=L_TA##ZbOtu-wliZ%Be16gpB zR%yNm1-@c(!!X5H3-Frux|sbgQ?SJVq6U@bS6Ddlux!*m?1XI-%a3%a^=NiBL)$CH znqj|nPUghBNlB{BT)#w@l|20KMm4Wq#;l3{v}El{WA_Iq9P^-42gpL#sBDHh0EN=H zcO5=edF`w^vxqp}(?C#iT-wZEnj$F8%JnN9^N(8=6{N1W8)pzuCv}%bT3ur!F*i%oHSdUfA@k6 zf07)361MS6N37?2Jqvp_8=bGnGtt|`ASxL47swr2aiw3|gUs%`EImCud%Y-!687IF^Swy| z)dYj zxB1T&%{WQlujShp@xFDFd|&V6_k|-}HjcRHiEcos@p1f^Zmn{n8-ca2&qqF&UDHuz z&<{v1*BO(5U8sX0Cu~)5tIoJo)?<)RLzXeFXLt9@QG=(Sb;lj)#$UPAEeCBMIjvT# z>W1xt3kz4>+y%^M5PMG;f^!&L*vZ3Ra(oOT`C{UsUlLtkUoXUjT!tQ99JR&+mKJtu-)Xi%DL%s)2~P#XXx1Rvnef;Uol$~4VSFWB-NH#kR!}6Mem$3 z%H)D=ZdE6&Hm|B~O|bt~kPcs%38RDc_Vy;9EV_ttbg++K zHV+RH-J&795y<~U56sDtR||yVAr_bpg8nx(lq(l8XV0^}ZEvJGG&60P<&;z*_Q*$h z+{KX7-nPFxl<8w|Lrpy}6ih_h&OFaQ`o1{{rml9SSS(1w8L+BgO6+~S79YMEaddP< zfa+PO70O%aVDJ+x}EQM1*~+iHu$jTSZSV@hGi0pTWNgTHp!_2N}Es zQ58G4!NC0I=k3txyI!if zAXvWhtLz%6DjXS==C`=F`HY($IdL~Ra2+pSpVLZ_7~z8*-;$5HI6RqGGrqC*9Es-w zYZ1LV!kTSfPYj`P(u{%}Lal6G-EjNBcNF0}jxbI3XPJJ45JCrQmW9^1J>~C-s;`~=;)Q(+F))n=C54k#2o6jtJ4AB z{!-&QO)c2BmrD`m!L@o6EtcnBMvmy1V5RK*TOkH6II^qGA(Z0T-ezVFRdi3oE!*DF zsxueX=wipip;eX)zn6=8EY?y^@s3P>n{IoL%`C+PAEgjtr|b%X zX*{*go5pJB`?a-gb@m-MeL$~*=5-^V#YkNhghqD5lB?M-*Q03`BdhPApK7@9Z>W_Z z_3`)ZFf{Q5`C|e>h4%lU-Ie;~8bh0MrG&jo4#CpF-gs#T?@|Qd2HuaLy$cggJ`AGD z?#w_A_>JN*90<6q^KsymjSlr5ygm)W8y+5i9_9lA0%aSzVg8%b4^-`rZOGix65FJV zx>Xu>X0QvJUF^UP@P{>+?0g>D6&5E<%fH4h-aMc&z;+cP2oCs7t6o^xw&f-wIG>qp zhryZB*Jf9x6z*$43Tki7oE1D=j;P@AXKIOqSmEf1fDJeI3f?AirUOaK3Iowp)kl|a z43C@1(hufUD|R4*u!FCLkbKMDGZ&bqJehg3F5H!6bHg?scCep*`Dw0O{{i7Nx6FaW z!DaLmLR{yWB|~v6TuS=XnA0jKvU?%qv*fX-XNuE5{YMaIg9#68b}(1@WUh`u*BI-G z*=9QTC54ptiOcD$M!M^%yw5k{8Nn_+opKO1(()$1lWEnmr8aVBdOjzBfO*wvV~1}VktHZD{{zu+#mmg>=;~Ve zITaZ}YJZx6Ah>~xOAKG34URpBgpyxh_s$-y4V`Q-TnI&WTG(@|rAu;kUV+WB|Jt$J zf^QA3Z;x+=#FOru#gY-kVwFTUutCQCpB@B4G3@Lw&>Ko9gZt^XAn;7@X1;EqdEnIW zq3m?$IsbMWK86w{ed*1mY#t?JX9iKx^t80D)m4Ptr9XPcMj}TKE9>ZG{RYpmrIjhX zC&a9kdzFoI=tzi39#4*-`!Jh@)WOef*69Q6RgSdbW7l7CK7uwzJf&~@qYuPW3)-m3 zEw@L5TJCh$7gASA*N3E6$vQmlDWu>o(Lp-&1pgB*7KVqXm-%4sTv@d*i=Yod8d*BJ zaY9m#PvZ@v)Q}2~);igJByPY9hE`WOS@3QIhD=O8cI5DO{OtMs&`M;Wt4_mBSuh8M zmzn2TH|hOfj}4_cshFwAJzRswYNXsu|Iu70bD$xQ90*|Fo*zy2oI)I629f#Dd=$QX zQ<7vJwVOM#G1UTS838-0He|nBt&UsPK#IAIOW3Vg3q-#}pZ12ML{OO+mtEw4Ul6t| z``dG{Lf0|>Fy9_KKI)*}@E+^1Z2VQ#PsBZ+LMX-e4%Rbd9}!Csx6gsrYs%kFfJsrl zyaaQr3lRClyUrnQX_~`yI*=H|3b@>poBy2^Y#BlJs=-Yav!6rt;RQP!P4$5`36$bK zfH>TYS)&lJg=gctIsWa)2V}$WlJQIv}2p~gR0JL zuabV<_LzF)*)NsJ^xmae;aMnMkxf_PxVmnFXy(cedRh1Bs3EVun-@Cpr5Pp}o}3Ol zVs{fkGbkb{eXCnrowI2&?J-h~tCe@ojmR^crkXl2W_JmB%$AQJM_5ZN^;?<=yc(yO zdC(iBO`E`^dC85KsCtHQbi+y{)CCMRV(x|KwKJQg0$LTqfue z)J@0K(G4M$Ae3`+76LQ`ACr^$Rl-1cRe3WqMZ60qlZxnM)-0gBO@hlwMM(23Buu?1 zoCi=-sdrL|A&OSmGda=5r~ky!+{?OmDr~tYUra1fn-}6C$J@guB1(RR@)ACEFZORR zFwj}w{?yGJ``S_UY5IJ3%$>4GpG)VG;Tw0JJ~cB_IWZ)itWq!Z=Cy$RiIUVlH;*Tc z{(>KWo(d?0iVCgzJ;nq-KG~=-x1wP~^GQ60!r(l}kOp+3vnuz>L9orKDo82JY~>o}<|=46~iM zCP+=9#+@bXC_Oc`6Rg7*@bO{~9}?}!A1K6!wcV6Q119doM~!D<_Is_N3@#PpQ7j5? zTdXQ%baXg5IUUB2KI0&umH`Z#Hd1vea~KU9Z0eg&B!ll}afdF_-FA_B^46lSJfk1J5C9rI;^VLXR#p6o5uy37R#!q-7O zUu=$77*1mS>R_K6>g_g7xMDz165f9+6FF`%hA*1>xa`Z0t0-|JOmHw1Ic@?XzW)JO z>aXLROTt@41^V{dT`90)>Ft0DvH4IblL

mydv9`Kis9#pd0d|o^ES}ZM3I^0PRj<%9kLa@O)};n zy!i3~Zxld%XEpb{xSp0+ zjFiubd+c~kNL-h>}+nUd3 zuBSfxjJXmc)SR7zPXu3`A4Rh$-8ln8(yy8T;4zR#e`Me2u8L%PyjosK)aAE`?&_hg?Telo{|6ubhc~N zhk=v*{r%~%rF|!H`tCqnQV<5^vqrP__?AX@X*E1J$z>Gus2_g&#w#owlIe5)uFopA z&#LNhBV5i%-r1{4fs>pshf15197X@?)hn=Y-GBbv264(KDco-<#}Gb~nwqY_NG1*L z|L@2-lYI=CF|u@H$EV7YPG7cZA%aH>{)t=cONn@m`qp76J5Ct7QV0$P%q54Nm!^N z{YRU4jNQ-Y-xO7R02363pd3GHpW_7#9{5PZ$qC-$6FyaFL&)vrJf)GL3G&y@sAR8R z-Qy-5;WMv!=$#_#JH27gZy8J-dB)tK>WG|h8IbV-*N7L|uDOZXlC2N}y5E3Sh>?Wh z;ZMIGcpcFZu9N1rZyr~eSB(Ffo_?E_MjvmeXlo4h;!7+ahgcFibEFT{q zk43MXDUYJAuziS;X0||^0ElbEI{^&MIcY?387G}I+<50Hqf#J?* zicyX8i^egXJ2-*@0xW$;KYtQ|$W(pu$)fEuAWH4OAE`ZgV(#flyVJDKUGFl7IqkFZ z)NOBGUPVR4#v+~*MEhF?DH2#R-ra=m7=}bA$igDa!W4wL83g_cJ)GlI_oPic&c^7b zCP@`FwKCDG1GvSZmF=5w+&~#XtLguwVxzZ6y_#nY#F@b~ePXFj`MmEtWs;=m9o1!5 zQJ~SqIntNwt5oEf@_3zFZ~xrYEWifE;`H{(S>3E~RfKe`=vOf#+DhX}v4=NAmb@S@PeCSGvo|!!tUx zm<;~Q*5+WMiexgp>lwC{h+;A}HVzth=vwHG0k;=M!IN%=W^pcjrQY}Cm@`*?xl0df zOs9p$*&*a>o_6jnDVMDQ_Vv&H{w%;pMn*=8dav?Q1j-ux{F5}d=W#of^bTY-LUsRq zK9YxwB(%zn2h5Bd0_dh)G(aS2+8Y!ZLl@=7M_#wgjEQsPm@y8+znBT9RLP)Ih-7;A z{Ct)mTq#T{iVx(`%F4{h(8$F10|)AlczH1I764Z0+!6c>l2myyux7zkEKR>9;{Gv0ycp`rP86$-0FRrO<^73ez{X`|<7O0VdamzU9Hbc*Qp!&Dn*=kD2A zM$qE{wedONiwq!03U=E0o!Xo5;&dgwJJHlP9Mm7!(zQjoe#iVg^Y)t^$Z_K8Gd3co zJ6rxTY(gyn)DPltOmg9XZ~grR;abIIH8H8lqMg1T+o6Lb9SmvbOkzNi#!saJHNalKy5T0Ph-KjmVWLWFMzH^lSJ0sRD%*tDT8jta3UoP_TH8OkyjrLUYYNV z{0N}$;v(y`*A67HWx=j>0mq~BZD!bMJf>%3XXgXrKqNJf-C?aI??9JL){ z#7R})c35lpRO(gLH(x8^6x8%IN%PD#MbU7CF}EJmui-elp`qRLOT1uN(Kqv~%DI|1 z*GT-?tMEQ3Vi&m5UM=0Fk4AVGt(m1hb)t$!G#IuNQu*7Jl-yk3mD$_NPKb{RY&?vFu#ovr&)nRovK5d?`3hRj2b0U&FDsg+ zCE1*Oi;o^8Ny2`W`hb|K+A6KN1PUmH?Qx_e1K9ei>s|B#9^!9tP09q}-wa(#4}tQm z4wkIVykK-eg$)a|Y6%HcB~)=_{$JmpF=VRal@?x4x1S&99@W`pLTW-3wkEh~VlB+E zcr?!@9u%a(-(-E@OE)*u1(5R`8C%Sbv<8buS`IUMBkOTO}?`Ng<)!)4|bE+~yh5n#o2huitd$3*eW3 zZn?GZ9D}{DHt96?Od_dHpk2h%-F>-VW$GG2BR(iAu8bNeG?Dr|_X)me2&6eu@lhBy zLZg5R2Tl+a_0GkTn4wX_)x?IBk)h#PxMEL1&E;wE8*XlK<_QHTvD=crb!DIFgObi~ z>;iU+l&|9s56Ic6hM0Lw&d!t_7F)vRxsFeFYo}?fv=)ubEr%#`r^c&4U z=FmmEf_SRx!Z~#4es9{glcd%So(B zX_X0z!>4o_B@+igiLebU(Nk@-IB7!T!>ny};gphlKTDRcbwOTJ%+<6XsRovTLF`@h zt_609)O~Af>lf!ojv$YjL2usN0$uN^x5;{o07#0qw)h}YJ(hmo-vr&RsK;)Gpx3ar zY2ZHSdJGLKTTROKl`?|eMjmC2w{@j zqJGf%@y-G&TVeLoXvx;$pV~KpQpbN@>6@60WJwrH2UzlU%Bvif~!i&G4x*yvobWEo8BPZMLW+8(m|k73Wt zHM!O5wbK|1QtLd((f2zNz$3^GuJN@%RfNL!4RRbOBe(TwtxKkr*Y{;K_G}9#G(2P2 z9p*D|7LGG?Ir(L->kO)`+CPQ~3$4RP4bWmRi%JL@<1{u}$?hZ)WfrR=Y~T#nSJxNE z_kCw9%KcuERE&d87M-LfObiq-G(|JHouM&~B}!%x6Q0?LHnG0_!3>qM_9h~C;)D*20yMk3mfu93KYdM%KTX1^{PKz57nvvde5q zO%qG*9i?1yAV?Av64)yfE?Zd>7l`4*Kw9DfzlJqoE5hvq?j19eL@#5p*I>ey>XVWNXqO=uqzWQvth~GI@7* z5eH#9fbQ(=iv;;xy&XP1eii~_ykPoF*lZY!VcPCzRo zV>w9;SrTLy&L#V)&EU73#Mv>ajJVB!EtV%>ySRTEA*SYe2A!W@Yv>GfQDYgC!Yw#8x#egYYWJrG2Qec% z17tJ((3y5U?sp_;`ayFVhRg=l&85y5v}-mI-)lkIYb(88dss8MwKQK_j@a2;{Zp-m z3TvYX$Bt(Y{`|p)lEM1~13KTT(YrXRQY(FNAg%m3pL$sKeM#=~cG+GxNE3FbJsMAr z5{}{nGfK-Qi64abp~?#66Cv~JygUVa2(U{V4+wvkH;Y!UJ8wqNz+T)uOD}yDi^)7WZFsS_&QQ0m%?BzUfFk`5L{~fxQ_6&W;kiNLB?zItg0A6_8*0ux@54JHj-95GmkorXg%gz{wm_2E-rl~cp$31?`-;Spe-DCG;39}@tr(_q>6ynf~{ zh4Uvf={G;o)*2}(XB)~v(2F_%5Shqz;7rL!xB^`@UkRi%3H41*OstO_4Toi&SMf4q zD!G8LC*ny=zn+IK1EA}&rh%+-MEcWDIG!U{PC|6sC20>{-DuI1&nvQS{3lOBESpci zx#E9jXO=GLuaNpJJI3qJ7kkBSxkQok^P86aX|CQZ@NHC$pB$tYjsx3KImQn%r`k7u`jNw zy2+)c*%k#{wp7#SCZ#(bBiS_P7k@Yb)i74?{E>KPD$=4nY}C~2>3u)LzVJk~FBCk9 zVxgvV~?K0LlQIhLKSU z6^@Ny^NDHmtWymg;JpA^AH+^Vv1F@Io(X?l))eZ#ny2x)I$fcAesy2!?VZ3*3&1I~ z10txrp&@GcDh0dz>4dRkF=PhYE-g)dO%-$d)^i@;%ex7xxxjHzwDIC(e$>FC13TIgu68;_G`VOUR1;4&KJ`5q7#UYff`eJd{xRwE7ND#=(ZkxZ{$U0W>q z=Z>$>&To!Z>|8F1Ikc{{Pu08ctE)jZs?KCRDYy7`<6kh|KReDzlK1o&i+WvjD;RMRQ9*OUljoSd-HK))rKgwXt{X* z)y-AQg=Y(YHFp6eMrBJ02sP$Kff{Ff`C2u}q+As?H0)I|bFi|y!OqUcfnAodXrN!{ z_zA=oc+M*zfJO1K@~wfXY5GxvZec3bL#IB7{}4a@$w?B0v&FczR=N`bA=w}{?0Jm<=O=(Rprm~&F$@xbs4~Bd{kk}FC>WTVJ*SSR;(e{ zpa)%9h^kBz6*IZQ%&kc$?U8Apc88s~t@FW+;g0G;-S~Ix?3^phU)XLtMGDX zLOjvcBEPUO*Dp={#e1QzkB;V1)Z+lRha=#3}PT&XO6UVw`A{RznrH`KTd&fj6-? zGdC9}if@b7l;ZRuos(E}5h5Lg}u;b;~SqS_YM0wkQ4)SuG6L=Y) z%U`cUeInDA&W(q662iLY68|uiQ2BJABMIPkU|SV2Uu}7XOY^LF`H4InXOi=KvX7I{ zHqZ{_#g31Tlv4a|AZB*$I-;xlzK&Bi5EH7iu&{ir^Qr&jNkxRF@@Vkl6I;y;!s>jC zl!!kWf&f9@m*uvT)=_xgBRy6NtbR}=^WxX6rs?JjN!*NK8cbat{!&vOY}&octqJJ# zq<8c0Qg3ptsF09OtlNrPJ>Q<3cZ2uo*X13z&5i8P{#1!>On>RV-|erg2g;F)nD-+z zUzq|a#DI}3-=ho;H{?eVnji^)6ht;aXWl$PnsnRqiVW*V)lp&gr};h6321V%3Ul^Q z^)W@WHQ-fbCqKO^p^wYQXr~#vC>Dw0^IphxwyBU7`g)R+25KNEbT=JM2OjEcjpm(L zMH-C0^7B3KzvICm{;Pwnag~)GxSe_m#Yzv8FH30o_I0x5@g#r)`YUL}A4RBd^jKA> zQ{o7x5C_XX62l`ILtQwFchOHg}Z%?M%3ia|E?!>_M zxqO5$5FWlJ5fPAEUy<)xz}Zzl8Sj}^Om6K0wn|00Smddb2yl)jANHF-3r|Lt+@6`6 zPwz@L|6_k{161<*S^b%7vsD++5$x1va1YNfHLY8`Aj9!5u;J0k?x5AmEV8=p>~M|4 zVy`c0QlOZ~StSwWe)^W}+^Sd71}`veOTk7ruYT`~3NH zeez6_K;-Ck(iRAe5n zeukV>5D-M7=x=@S{B-Bd9Nzs8Nx&<#%T#1{mODoU@;+gCoG0``$B;V-9Omb#;)sk^^ojv>IopNlK@!G22;zF8~d zZov|Z_jP=;G~C-x5GXDum*>Y-mSobmg|41tjxK&!7kkO8A+7Krdp0>5+Y$BmR7}_xe90U`baO+>7^uB z+R&PJ>pa-SCBBjXIGUMB-#;j^ssIh4;^VhRlp1oGE;c&XYG7Tpb>ul|JNMsbmDL2I zV$~%iQi?I3{0>I5rGTno!9^x-(>PdFyY?F5X`DTW8t+UZ&hQW{1*KAlg8P5>62})Q zV%2yau3L9d%nt#Q>_8~FI+Co#a+Iow-K4C>iTSonu>$DTRY&mD5?eD@NckFP57tFY zpJ(B%-p@0M-3~0qT$!A+g{Rn=^Cxl0PU=y7{MZxZ%7(=!@7(x{T5D%}J3+GV(hW#y zWA%`G*>d)#?5>{Vx3=s2!dlyMv*muGDbEi-FWSVfS<|~IY4vs!#(cu^)2N%T1`|pJ zK+YAP%*T7Z(_3#mmI4TkGSC3e)HtUn_~uzvAQF^jJDCA51W;4;{NOj>>FNwkGv263 zB08a6xdfd`0z1lJ)K2A>CXet$NH8QTQ?J1#V9N618i1z*Ed?n!Qy=A`i7q`tqCGnWZ5(a{))QJ+CVNS*mkS;qs}IbIbu z3UC2nvOX6|v*_;TW&x-P&<2SfTreF0>30_>1L$lh*vaRbmL+I++&cYl zqRH6}uZt5nKqEj$ut$pe9H4GG)r{xlv9IHN8?JqApBxDc0uvL$e~z%rC&%_MDa|=o zcs{KFmE$H#0xj>IU;5gvSyed*3w)h~0vVI>H4ybEU-3SN%IJ+oo~xDXW2w_v7KL9^ zQ&0DOm}G+~aX!5Qv@?Jwb{gu3yU*R658wWju>Q~M4Oc>p9}9c4-`s(xW}iPo1B1Qk;bHyAtPQwe_PG_Z^vlXo+OWg zt&2>PQuGeVE`+9kZ}27&DW9?fYfk6aD}{gTEn|+x7oGBHvIO8=P_IA-qME1W1rnR? z@8Gk+4V<^b1EEVx&w*d~(NF%-pMZKIA|f&a5i>Sw;|$#DeGXMlzjd1x$gs;b{x_6> zf(6(FY?J?{|*;UUTn1a$`bdTO!teuY7v(A z|MzT0G4a1AFHmx;EJ=mg(ZWiCSq{p?@EK=kX9Wc1AU30pj!0c2P6ql z3knN8_M=5=?n(mMM_>>3^&*=}?ma zdSas(N%EOgfSS1=Dnj4~O)yLxSOH@MS`KhMV4ywMKv|eLHZn5e1C!(29cl7y8%!qo6uh#o_$aNQynLpfy0Ly^+b{s~p&@2ZZA^pm2!1M!g z1q%xc&E`&6tFR4KZ;dLIFML{9Jwbh@eC70~q4fc@VpcpT0e1X9>(UhPZ^SYRt8ncp zBY)iacU*g}GU#3W|14!pHdlM)c?CT#%kqq z?ZtHH>Vb*(p8UrrR_)z1otm)&{rwgm9%Jg~SAOY5g%RW91~6&X+c#jF(2)Vyakn45 z#0FI8>*E4_j=$=NAixB+flP=B#D)2l0=ciH$>$sfYfLj)b1Y978ya6quxi$D6PXW< zJ)&EJ+C62J%k_iux>@>g8-4yEy)w9PoWdO$H$gTATL2~vZWdUCxDzMeZwcWb;0D?p zA6$;Np91#twx|p2{AjD4;c6Fm6G-^NDNiWg0Mh$F7`?cJ!I(gEXgaDYW1=CN?@tv2 zZ0*U!Xw!`@8rjTul<;-nsDP>xysqpA=zKBkZkz)T0niI(8#aG{w&vD+sPAMjDY9CI zmvRy0U+FixY+W?KMnR?sYa<{PLZ>_E6p=mDSaCS!ZV+7!b1C?W*R%BCf7)m)0}Z{{K4iMqbI1 z|9`xAm`qJ!dnQ%8?GF?lrXqn{UNInUbo^}gD)9V|RfRv_jl3bqU~dMXj+^NpK%xJ@ zOTBUipjw9opR21Y%$T5!sAEkV4bi)1(PF97sn*+5CkiXvNlQUg_e?iMQM8w2% zzcL?b2B#T@)Ou0h<$WE`TFRK10M`>18j*Dy&J3xv7B? zzPAg_Jwj(T&{rwWT%nnOdSh-No!|nqzyvw3YS_2)rKe5qJ0@T^S@MUwK8*JF#{ljz z@rvtP1(M=vK0hVsNrAls7~a4q{&5mnURfa?_hq^Yqj(Dr(QIzY0dSywSU=$_q?$KG zb}s8(C=Y<8E1V-OZ2vngwKO!&tPR|O;c{6PPeHbQW9x?(ugG@t_wV0`LvU;{BwT$> zC7C)>eya*>flPH?6>KFCO%~fCeEla@(Zq^(I&h%cqD zCZcm54qM&W5)dTF^h}LCvOfjJ1?NN8<0x8lF-nprk#5v9b(au`WARu;8+TvOvJo|7 z%VF=;eqo8RBpiLc%QV+m+D(VkEspMf)0 zO2-Rx*`XKyqme5}WDb$&XuAzYF^D~>i#gIT4uY2FI*BM!ky25@YhD%=cIYw1gYn2wK-$IkT4Bb+QB%P_x87sZWZP~Aay z00^a&z8f$y+VCFBw$)hFx5@NWC}l~vNGDR#@QI%iEBWhYD(nCZ?&{$+SLVdtR=X-) z@6W)3lGtkw3>!T3J}=sjMx*_HtnAl%9dn0-gj5p#l)8?AmVvbi)EOIFTN%J5%Vv_n zPVYH4$up1!%dW1iwYIfk0#GJMD-X6T=~WB^FYIKMlwl9>+kvw zCIhJFh-B--d^>>j?rk2ac}gj#JNT>FH4e$|?(mII#HGy%5WdnImA!&75}7 z1QaMdbEOeUvRDOKn4O~|4h$$Wpi9pxDS1+emqVQ{x0tSv*%hWP>rL*SRup>&f2ncj z>5EQsN9RhsVa1nr+fotGig3|Zv&fHXzgN@GYsRmO;71j8n~-@_$!atmiUd@gl)hyn zs>mgOeLVza+I^}>g(xzagoMP}ru~9$1RNQr22d@yNJ1A9IxXIS7~iR^o49gLs;21a zn7J9*`6#RJaOYO}B_OZ4<=FXl$t~jH8X2B@^3DvrNEr0(qPMpJxPyRZHo6H8eWBwo zR#EYIZe+{o|8Vx+@mRM1|M(>#A|fRjDIsKMuSlgt1KA@pyJU}(tn3xpqovFcvWu+j zWbaLvy)WzfzRvFV{r-G^zu)8c$M^eq=<3dWjq^Is<2;Vn>$#2!(3FAP%v%;Ci`z%A zJvl-AUP@7)rbbDQc&94smite#E2ou|Y%}ZRpr6nn6Jm0g>o33`p zA0$AO!MNT2DX%ZDzRBf(yYrs<^qDjG?~9I>J|NNZMc_o=fx})bl_bGuD@Hg!y^lB{=~r{rw$_nqb)vn2YWjhJul@(y2G^+&TWH^W(-UJ~UCp z8Hz%$HBTqWlU^IY-S(KJT^qq&4`m`-G&&?fmI2cfP`-fb!}#hL7zonf_J@x*LXfA~ zHq!fldaEa3<&cM||DQhe_WNICCo@$!4Lv=Xg5IdUx;4PFU9s(KX2uTcInX>_-2PvspV6IPg;& zm1@hO+%scBw!$%<)MS1T6;WiKA#*UVva_NuJ%y6nu^_H&pH0t%fQOs99>C>m$p^@> zz$YdFm^!-Pl1@mb#z1s4Z_3%wJhC; zNQ?9%=~-ZrlI)=bZ58Q16|8X72e}6SfC(LaPl9h&#<5O0_TGIwAR&-j6pmMdPsMmW z7tfiV{(1eFG~8;1g@sT>Q0?h3M{x!NPTScQ^hWmnDbP|cB30_oe>+0)8V6eLZ{J|5 zdjH@uG-yUoo+y?}um@{Js$hVF?}T>26YnLt2Lp1+2ccBXpn>-Vc{sEWD9Fv=_U+Ld zX3UjMk<-Bh9LvXfD~9Htf4gDuW$rh3F~K*E^elQ{pKlB-Z30hMRFU0Ri#1|8R_#Pp`+(DY} zbj2&pycA_`w88h6YNj;C)O{ESXdRkt%H?yWa<8cKOa^X>^__+W#@gC?;6Vki1a)Rs z)^V7Q5_AJ<(-p?DX&H5SH#$uTjyl6K52XnZ55Fy|&&S_Bl)^~vwG?uXk*(;d@ZR|l zg`_H7!jBv~dApAUQ!=QVuZP4QJpR;}r(5kmOUbOK=I;7f`_Gnk%V}akukoLbP>_IL zT;9?WD}#<2J&+jsJtWezJ^5#Kh=Gif8Gtspick_%Y%Z42VRZJU=$%9v`bwO5QM&%* zb-cTvDxMevMQWdxmimD*Pb$eh{CXOd$Fs&qeJUmbjmC%odp8BTJaKt^9rFE^2{7)U12RY2on9YPb{z*2zG($Dx(QAhaZ_MD=P;?2VwnAZNHeTd@&hOwiKyB z^(a6bCR(gtCHe?;`odco_aCjMg36FYLood^+D?=_pw`X^$&I*!J8% z1MI!d;B*11PB`&Ou;AWQAF&tILs0DlqW1m!ciK*Mm=E6gaQMJ&2+bO}xGl(@-?fYFK=~ZL@!M~!3EQ?R51s^C4e57_v*ehVUY_5JuOc3&1sW8z3zg*k|m#u zKl1dVv0ZywtRuU`?x%rzS^T#-aPa%LVpJK&FZxokIAgH_O$B)>dtJfz9#>j{#tmE! zEvD;1&nYkd!fXnIsb>N50C+A?hI}O;Hh&z@i&x}*N$2;5gKPJQz*v%z%hQt= z){gFEQqU_D9T;=sw&9LP;Ko0xa5#VX+zaa#Lr0DEl8OY!1lP$V)gc4Nq;>kez z+x0E3%*K9gH645=q-^#&u{%ig=k)qj1(2N(Yz7~t6&wi%0aSNyF)Hjsb$x;Gh)M)P z5<+dDUmu2U6nY9+w)?D#X(R6e#i)erR1a&Z9zT8@6a{GYLFOkXR-3`uHnBe4?gDqS zKz#OIYaa||V7%1SiiBhiC^*{0pqxp+_i;}QLV_-wB7^PiUJD6-K%ea*8)k#8u%Txe)xWqqEcd zFO6999L0m7{4Dku%c-~EOkFr`0Luu*9JJbU+yE8bcb3DEoCj4NOYQCS-cWu*^&16dF_cUT1toJaYzH8djVY2$9Osvm?0zW69G zo`gmn!1)8Unz^+#==bGB8R`!Y_TCSi20gF=G%(4@$uPm70xF7p?cIyNvkOTUe){`uvVIgpy3*&)u>}d2f&k)P%jfL3Jm7YaQoa zmsZj_@$iZ-sNhKfNj!ezBS{eTOp-nF+`(a7!qy|;U=>PI=x>(s-P=X@!FZ?k&whSH zL*-7CFhV^J2(8LL8Q^8yoVHjS97Y2V-3qoU%Q8#;ForI%$v(bFaD-KXn(tDOfQe>o zZcch#egjSKi9N-zm1xFiJKyo%kM{+(O_oF@PZpcrD667&xZ4~{5PabW(NQGfXugow zNO@WLR?APVf=q#S4-Vr@*NbK6917^imcbo%|L)eZs;L@J^?vebpktlz{t3a=-w9T~ z{%lep+h29uY}BiwQTB0hDZR**(ce%bRZ41X!tJAH`a`9VyimkDdV!1vC{;gufN1ANeu6Zmq3m*3fkmqwezl zEHBiqsqJrzE`Q;e`CW2O#C9dHmSzEZQJ}%N?Ap+JU^uHET93_#fVs$6vYN|6b8p?W>u~_VeofTZ2$aYifPhQW;hvycT z(evc3Bpv_4dn^^yt``^rzbvvrQZ{oLr#ng@1i$$xY?pc(hA zO_FFgAta! z0`9jO+*%$VTm4E0G@U2caoI6=Rz;}(yx(vDM*@&H z{R)l8kPdRt#*-tZ{y`>Xzz#L7`ZgG=uQ7-c$B4FD8w=9IjBe?0Vtyg8wHn%Kd0 zHMNkiFu5+Fxw5c(9L8!j3-58go|RkEy>W(gKx{*C3JL~^+}o^C4^*9jPA{kl;n!CG zKKQA@pOLGB;Ip*R%=d3eVTKK4Au}|~vgf`0kUAoObS0wP1sLfiet^VpX{5XvhTU`B zfJSK@IE04l;h;+Ac};WroH?5pbP+GUr(GrTw?6?|m(+H%J8PGqOieN}alt+E$Pj<` z;FAFa5fnNt%VnvHYy@1Gdg}0J>JtJsZd-tDAihSVElGNv(y?v{yIALD8{QcfU=r}zp3~DKh?<|FV?+segUy3@0F?Kslaz%%NHXxzWHDd zECpwJbSjb=qI{(G77DdvKa7UUNjC)7T~Low1Vzmh8BxV%bjc33`fxXP(GK_ewF`(5 z2eafv*rTMgNPhbqjvfpkk_Wl>IMVd;eE9uk&l_m3HT@PRYS;0)oZ4>NH@lc}0zXqS zY7A8yTuA5XUcLSmJ>I11Z%f1F0S0_ur_C0Bb#)QKdGM%GfAr{njykj}aK}Qw1+jX2 zggfiJsb)4MgSSPY5v3sg6tEeeHMVH%ViHeDaY8e`acK#$8COXcek4hTd5xm=SbwevTw*2+zG`JLCCi&A?EOM?oF)#zw=1WA~Bl%u4 zaRe&g&lguq#c~<5h8JT>x$_&Z5B*xBhES71&yhU6@}GOVyTThB)K`f$V?o#k4H+CS z0!V5MnN}}IrO(lF_p*kkpCG_g{`*yXfM_GI$+A~zk z`j1w2O*%7N8Mgf>BPsBc498IIIa!~}sohc~ucD+}Y;v_Yc~_R8)%f=eB0{6unM-Hs zK}jj--(#!{vnzLVPv&591-{&Mk@GbxLJHkAv?suo$e;6XSoQYBrO+yT|MQ2FRq+L+ z263OR#l3Dn?gr+E)X`bUN7EdiefFJ?{8h6F`H2(KzomMssPE;pn2y1XzVK517|YVMT z(V*Yr7+ki7ewoSx6?Y4ZpMPvib&DR#_ky+phUs~PpEyU))^g26s;CXZ@}RI4x?AhF ze&)oK$4>hwPApG73;f(Kda>`1{=O*dUVbQ?{=dCzH##zD1718Ax2{y*4Z&C0A=f_i z)M*T;1rlM(a^Gs@6i+@Pg~4V>N8EDQI5p;GOnvX4L!y#voV;3I!OdPl9uE%xq+^UPM)hLkk#Y70vTO_@Ar)KG_-0q8oEeKlZ>-& zejqvZpUH_x@Dx!!-Z z1S>^FS2s2{4XvIp$UZvN3MRBHBrA*V+_~Dh#yM{$uJp^!|2;Xx<#(sP2;z=nMt75K z^GonJ>k+Vb7+Ah}A^{Tsb(C|z^;LCt#VFq!Z#(A=BXr*!{qK=I!|aa*$c*KAOkU+m ze{Q`y5N03S@}sM0-m)TD@gsT++uJhKv%OqSD~qE=44F&e!XX2 z)~}5%oF)RPIyndw{yoc7a=vfWR{rN-FYmqby72EYA7hcbeakp!1)ft11PQ5(&Si~fRnf^?|%iFnZE|!=R2Iu)<4an+ReGLd>*F5O< zfqjyfWV)&16rR&0Q}phc!hLWG5@29vWC|V>CWhZ&juF3LyyN;as6}kHm{qSk>ZjQ3 zF(P>q@g_H_t>gcE{i)Rl5yyx4$bXbQW-M>#Xe5G>!osh(Lx+$(^ClEsQIK|HoK2y* z2WY%Ite-(|&Qk|sFvglUSgF0ao1udE*liJ)6nCm19qx~>4U^u3linYm^kB(lYy4R| z{#X=f;=0p!nw#%b!hL&$^dC}wu=(+)D z28grcAgX!RIh(7#MMj}c%zU-==R=xVh7kTil^=->hJU7r2ypI=#)3nOj<(KM7{~^< zN*@OOjBT$Q9E4qqSF4#yw*B-1%3Rp7tx zG058Ys0jr@@mp-W$9yOwGnJv73=5Cw(+S@WR@G}fc6Ylz1Dtb<^%oMkU4G7f-9E`a z3|!{n4TV{(zf-919S=TUp`OJ8N~?7ugB*1q2)sZijBnV@$L4k)bIx%lE82%Q7%?tD zoy4jLp6ba}*(`N_K0Xes*%scG_1s(@A^K2?CU(qG7WI{gzn0N ztFoiw76C`o;>1Wl`iLC1+L|TyAL{ovIFlKvosBEL@TDGELU5t&vEGJ(kpj@ zg*)G}GkQwfXMGImI)o@fZxF(5%@lrfhwjyz8mLR@Ly3W%qB8FWhH(pHv|{6C;!-HEbiIszxhKtQlDf1#PJg@R2t~ z8Ia%)^~2h>9n%T0#e4Ic-r1+jb8m!-3Dk#B`e(1}zwMlBB>dQFWG+M> zmzY=!>S*5(h0AB0r7vptGRUsegV9Ja3Y-ajb8&r>`la8X88s=js;n2gnayrtNzHjB z!$p&)mU;Cp_v_B?VQ%7+QpAF|SfssC-3s{;p7PQ|(C%;$e=zC{04h)}7=vfeer>hm z5nLj^2Emqi9tVq(`H`Pv#1NPY$FQ>+j)cG!1o<`y&`>K+ZEY=MC7$aP8JG^g0(}4r z`N|4kitC@tn7(cgT#BnK#B4&;0w7+%kYej0sI_JhajfM76u~vKk(N-Gj$U509^oi<~kJf98vqeI=Zh?VQqFqC{+8pnA1UacB$R!tBzJ?(dKC zuD;fj9^KkmMpmSkT?$Bmn*kFJyhpbMEe5VdLSU-5w`0IC3aeOJB9_n^z>NU65Ox!U z`EMYY7XF8Y;`EzL{UD3Tc7N0KC-gw$!$&~#9m2G#FP#>Dw9)~4`kldgp$s3N*RxV` z-@3YNRZci79S)31_Sg^L!FHDpcdZO#RatxR(RXuAd>Ok)Q^45s5L>~(A@BFIFeZCb zijSNyAJHKH3*Z9_06cP$l&A3PX*l9dS4LSu+|;vDka~_gmK)x@`b#-R28zatVbbkI zZf>3xrAvgheD|`tvlDFv2@C>&OL46{0l)dAYCuN}9eY73_nCOi{Zm9duPp~z_n^2= z+`GiX=_=U7bnIyHa2xd0sqKWr$ixI;>$x1jt8TnSyYk`##XiTq?SYM}dRg57E&JKv zt$3R4aSU+VKG$u4Mq5}yq#0NwI-^^?zjTa`*g-_VnfGrtSIq1Mgh~^p-Y{2Xvp)LD zK9)bgNas(`CdL_ad!2yl6c6V~RxSbF%(@xek~ApqH(jA7i=9F)@vITVWj9uIn!^wP zCuh1=4yqid4op+!yryoN^m|#c{M2kZqIvavl662L$JAar%`!`^KY2Uzf{#c{o=zD z;2{yXVlXx!xz1Zw*4e#qS^-*+B_ALhp^bv;Kd45krW(wUJJV_gy#r`g0EGrKT`sm} zV&)goso=Vq&H8)1Wc?R}Dnqn1AzQ->=7R@3cJ~$IdZwZ^56lkZ+Z*qd)z#UUu%)`Q zF#oOqmrwT5SB#<}aGh@ZA=F1YF+ZQ3ee$l9QSsxpjB{$UyZ~H2SmMZQWz+9@oh+I? zK|n9V zB6Vb&_r&0p*On<8fVKkz2#G1M;s__!?e2=hn}BgDX;3ox2{?sOM>5h@8UvRX0t_Tw zHWX*JaefHFCANI;9~i+@XW%+iIca}m9pDje5O_3PZJrhY-9D^OJ-xk8%@?R3k5vQG z0^(z66|Q`$fCE$I)Kp8GrJ_D}w0b6#Z zi+UNL3b+$m$WBGaAJfs(JiUt}Oc(^SHWv@ zdT)0Lk)I$hfG^O~)#U?!nbHy4j8r^PGYa}`E`&gY47B0=a23(-w&X05n38fsJlSSX zzP+_2v#V!&z+C8aSy_-0+eJy~4yB!V$~P_7sf@@gr7F3jn=~j{uftLZ_}idFx&Bg{F&8{qO7AGMl645*hlElO-PR|sw zs4YAV^>zq8!$d_#4iO~UvoZ?zSHSUkyc*BdNMxf&SpS$Gd&rj9I?*;PA@`Uo=*ZnJ zNZp_cybfke%-t?n$>Gi5WWxb~(K>-rmgu1xLJQD77Z(?xxv*?P#Q}{rkee|7_vYyb zps3okceSkwDF?=Ry;bDB%zmxRD^L73GTKQm8^sE|7K~G_vqdhh-)cX;YL1JKzb2kM z@@r~;F7j=5r+J#zr?hvO*1`SI>1OBTe4l;>^QD1<11%sPu)KDfe?eRxYw6Yh{1p|k z10Bgd4v4a>9k+v8BBP5`F-rWG)1@9-qnWs8r3?Ts!yWVwf$#gHWu{I-MnRwZ;1J5!BF>I6ZuQJl9BoOT)Li7|$ca=#;4@3AXAc>b!X|3t`(t=p=V20kF z2^+J>_G_WkoxqesQAwc|ICPi~VQLng1+)`1c|}@xcQ&9B$=Bu(vMp%Y9v+~PGbXx$ zUF}_1w%d*Gf|z^AOi^||!p0OVsBj;mX;vwgS6k)-lv1ggaN{!(8aHLn)o9Pkpo`uRw7Muos%qFJPe>(21yFUaxl7sB)_wn$ZamrvR zJo}?)cPlG$U=VI?u*ZotPyB8|9v16R0+6MxIAc*{p@vUX{Nz7E_3VgHxP3ykJ)W!>Xt>BR)|I4JpEK&aPY1UoITlaP`XkHc6Y0xv#Ba)cV~BfJ!Pn1M%NQvuf~E9 zNSOj*D$AFU^8WBc_*AYs833aygvIa&FmpLkMw+pH>P%lOX62I|X>g1?*&}!MaLZd< z$;xQXiKV5bL5OC<0Rr>7Kz3dBS6Y|!(nopw16(cHo@bswe9`g-F0b1{Lsy%&Y?*|F zIG$DUoU053@Sudm_9IWn4;C?qfw0fTA!kyi1p}kvB6fJh}D=82{;vm*2``v3s%I^ee>UoCG zp8v|+flQSC8N#?+X|`u%=tzu|U1!N?p00s*NduZw+ef?))o7=KcFxjuTXdI=K1IZI z&y8gDBU-GQvFX^dZbHo{*2V&>VVdHHYlkn)5g+IrFP#%B(H3a?h*rOs-dCr4UH)pD)mv3 zIXDH8ZfKs1vA|c4bvDoKL0hswd_Cg)Hh#4lf9k|H?>T>4yG8>o7P`*3ZbX|=j@?4_1&G2``=@S1eKJ7&L9aR+)(CiUQtna7TW13rzJL1tz? z7Z;nxye%KL;l9F4Dsza|deo$yhFdM!RSh)QbQ!wFM|W!A&okX?m;U5^(U8~V_i1x1pV@!n8q=lJ;}UZxjzAtQ>8fzCMQc3o^S zmjr*7^xH@d3HzB4H7_V0vgud(ERKfH@zpq(w0gjVLrI5Mni0%|MyC5=Sjb zG+D=6(dfAyI%?8s{<{pPqpe*FwYc8in&mu)9RDv(g8a*0j_VMSX8;jn%KP769s9O zRvt16QWW71b$!Z;Y!dVliLf9+tp$e#H?oRKIHMuKx7fs?gEH6%z?)H9!s9@sx~*z$ z;8EYanQ|dI^i{}Q=dKA`2+)&SBpvy{1KM9&9&fPX z(0CMS`L)ju76^Pf7EKc!VjtFBq&6}-YJ2CGCHstL92oZ)PXw$Wmm_ALzg+~%NuMx5 z#M>01X%ic=DY-HW!XWRS7|O-WuS20d3h}V$mzCFL|5(+e6#WbCkH>wB@mk92#r7Og zf(8V%@^fxlM0wq~g7F`r_C_ag7Pds_;`nJv9 z)n3aG+Zrmi_zM!5va+%+cJWQ-BcczbI7N7U9qHvO@6RUQF=4J(Cee|g{E?i!k^i>6 z1rpP~UzZ-GJ_ux#(Z9fzsuaS{)nuS97uPE`^UA#wbOA1W3}2=XmU?6#d%aIldD@v} zaO2|r;`6*Kt!mXXzc${`oQKoD044E|j<;s70}y8*nTsP;j9m3LEoeYyw>2Tp{+8?F zJ7~-D^4cwqpLeDG+H-rQ6*{543-Q$m_!bJdQ5!raJBT?lt3#aO1jNr|wO*Ixu`BJA z65wJkD=&Ad+*K>D+p;Y1c3ug^wL51w*uElMfQF}<{PF@{L$+O$9~u@t-Va_ z-KCRUy8Po~^@)fB|N?>@@7Y?_+wSzyhe+v`_i;0)prx{d`GN9$dBC-LNS zOh|EX(vcrx0lnBd^lK3&G$fX~JiU{<+~aDIyjRnjnf<7GgL7}?X8>dAk{jejPeoSo z_{u+4zeeKa^I(36=45$az0JY?Ynj~#D^V3x#-d$i(6=$qWQ&cDvPbGJq|ISj$#e(gZO-ljXdo1F(Q{==YN_F|` zlA<8$pfl<@#Q|1nJJFThylR_fI)CDTIG4h!5p)Ky=@9T7#iJW}89hj8{4v4=ik}MV zGVvhU^W3tP8C>y1+3H%u)vi1(NN)x5SvPO%w+-~3Ef8CA{*3rmT6@UwZt|J_mmciP z9veJPqDc{wvfQk~q>2f-!xi;rHhkcv0%84F3~$9+>A(`iA{1{VO9(l>B=VVv%6xPE zLZog^kcVCD1LXYF$p@S<9p*y5qo=+Im%9Cy%$#KNjaXcGbFKFI zR(~N(Vyfs)48eK$nO+IU^{b+Q_fOBZPXI2SCyq%7d@Ubv!rIxoL_}iISXifoYy5&@ zRMA@OWl(c$y3X2+(^E9Wl0_)%tP|~nZOZi&dpHt=t-US$IAnaKlbA;m@n%fi-=|H6 z=*z(^I}bpBV?`Ig;OHu8Zp)r5xCuDwrmM#z-9zS{Yg#r=yh+Nl-d3?H$5`$;VUNcR%!@KGS1J9%i)(?S%Z$}hdE z1<>~~e?EI9l-3{w0YQ&)YtCr+_6QRGh?5r7&``W9QwC7U4Lr^W>Q!bXxMdcow;66_ zYfqch|EgCxU!&y@k!ippCz9sXR^ikI{AX<6i2!+L-ik%vgRMuC9w{D7St-Ia{p*YC zFMu;%Ae_~4CQ@~(NOW*;NbfZ7J5-%F1Q`t2aehp$-V|_yvydqDvAXk`R(u%Mg|<7q zRX;dmf~-TmNT><3X%1qxI04ek*fS7nV)JFN0@l))nN_ji5^`A;7=l%2rqX#UU>c^M zm3GyhM;Xf}T=oj$X=X+u&-J{ZQN z`7a5|MDh2%7c}U*#)v_Z5w0U|3riXF+HjtH&V?&2bN#zdZNRG&lw~VMy4AP8jB0zisbd4vbM7a~^kr z9TB>V-QfF|WM!ZVA4$H#LIOTf;Eo{ORwLxbTewu~x7gAwiUuzBOD0pv{lmY$r2FTo zFB@mZLil0Mg$mG+|GFY8H6S7(QUZb`r2nCDk6i~&cdIGMl#Qz(Li!%ywxA~bk#|}d zz>s8R=gJXfO27XwuZ;wff>1(= z;op-&f&rS?<<=YeND{(pC?jSk3MV=}_BUawFK4EL4IMFHkAQ~)veo(>q`CjR4*ei5 zx?=)rYLRm)$LlSw?(S?Y@0oizRO{{tBYYp+K!=@lND{xnPv1c zm+Uw;3{aeCTcGc%nW!m#>gam#G}zWDd-y|aQ^vnyg0ZnET_Y_my#e7iH5#-H7SWVAwex&^Isf> z`fUX)MoB-$O9)mx$XS8E82isAhuMau(@gSx{jN3HHWZ(K^=xN??^x2Hr|d}5)ckd7 z3;UWtd*D3Muw|d)z-kKwPr?Up`?hDeq^Ef1r`NPmCKUP_cjsyOLm%ctFa5)5lf!V> z>TwO62GRlo7xph8jr#}8dbkJ#k9ek519!VW@jlpnck)S_SjqGSE9iq^tG5Z%B+SLE zJKp;t&tYN59z2kq2VL0xrOI-5s7u~7M76zxe&HtUtT|Z8BToAG@UXwMpW>6Jj1@)4{az$CR{{GiBK0ToHyY#GY$5sV?fs`V#ezoQx&!I@>$flT6+x{t_=V^G0z z#pdjrhK|uu%5^t(@e!Y)N~hPnJUoAZXsa2;gR}~bz;e$KgrFcwa`I!<$Al65%w!U- zYVqqaeJ#C$>B^Q82}`jRf&ttN+Fl)ybTylR zA5IgA#MRW)RC%V_=iz-^R{13*L*Bo?^hGa189+Jx98f}(oRi0jF3_QDGlk&R!PC!s ziX75c#ipsw?jZ-u_&PH=!MLQP>nNqIv$~M%w!CttdgaZ^b`_LRvcuM$T5nQv>`>j z9s|(C>W#N7l5DdKFv0(2CFkcsRB?=vlr-EDfu{jFvNK$;T-`psyfj}A8w}fN#&!;0nM*5I%uxsC;7gU0V+!IVENEnJ7ie$O zEdLTtiMdeFe0T;h)Tn#!F}qRmqFX&3GQXa`z+I#4YE8 zG!&v;oL~b0KRIA4ikI-u*;JES0m?*QEek|nvnFJo)M4Po8Zzn#&mR?D;~l? z$_uc_6Q#2$@?cE?G#xlmz#M_d@vYa_)t-K)P(RnmL71R2!Szu?=FSGY6^=VQFYlb} zI-4_SC&QWP%}z9ZpV@RlR|_3gf$LpDz$}6Wi=1~9S+!fIlxRcnKu3h|LoP*<=+h%0 ze~0q}^Sg$o<`YkR!;dhaTIC*76MAj_7GHMD%)2;>*fT@h;-YWM93A(=G*mNvFYUpn z^QXvASOC!29-Igi``AwoAUwJ5e-l_)w&?F5rULr_MyQ<>6xwh>;N1y`f7IbKO7KWv z?*|Kj6yXPWm$^TGj$qKur5{mqCN@7KBnDFEb5&Is%nCq|f(|PS`v}*Sk#br98WBIR za6+ZXp6X5w9zsZ6KxOJ3U~72YeCa}VosyS{z*$KM^92D8*nW35x>UeU3FI@={v9S* zziLPAH{X#VP%$+bQ;`!}moE=1Ux@s+zb^@D3qX^Au^l;_Ex}ppd){q4Y&RBw+4Wpo zA@m@yb%q#?g#+!ag+-^O%LFFCXAXTOz<@4ZY5lIU@SRoI$;4M5bEGfInIE5&nCLS{ zXn>__`3mC>%1NMrz7z-CqM@Prbs*D^z_Q{{xB;7@{l0xYFa(+SK?aIG4%C5ADHSu_XE^5WNcwKG}@mOYl;%D~{Ep#chj zy2i$rubO8=G#)8w*ov%ASeEzBvJ@Xp;y2ZGKESpg#;7o+*8JV_9RV5*V$y@MA?j1g|eqO zLkJ!wiZvZZ0_>iVtgKBN|7NJdA)5Eh>zrt-j3^b%x40h!c19hatFVx*@-?ZlrS(sR zBaqRE1e*?M*!pKai7kG}>c`ER`YD$$s?I-Yz#(8>0$V#s z2o);zZh|HWmJb3U8uZaKaE`EE7JEhE@a14Nk{eKF}o> z>ud+_kHl-y=-U5b(1*ziz*NZWSRtb;oPe|+ThS9$5F`bHM$IPC`#=kV7Q=31?*7M2 zi%ZF%-arw1=nM@>=cX*8@Zs-nv4`Inv!tq;UT;4&yYlaTcP8`Gka6 zt!@Wt;*99(W2d@0I;f!ch7SiX$7x4up$5$UA7hT@wY(@5;fS~&%Xp*xPUeHiix8az zb{|OUz<}<)5rNa5``P-l?iwiua9}gNjhSa+KxcvE4oad<63;Z;QHU7=gMyL8vml&% z6=O-jF@T~cuHfmA-3;Up?5DD`Ci)^fk;iOB4@aalQEuB-wj=g|je8`7n`{H%x#mJ;?@4a3D=JMuu9w;J{siOFI38u@ee)Dl3OaY0;ygyteWey`4`*!2BPo%`7a|+Y4s|x<(9t6;uE%Sle1Yph#dY9IRkUOaP_PPG>m6YJ~@-++#2?-=TctgNk2W*rJhq zPM_-#XmyHAGqBg0yA6)`m zA0e@F%Fdr;dRO%Gr&S#oKVUk5p$Jp<`Am^?&G9d#HEY0b^n;~E!FR|2w%Y*xCh86U z^(*S?-i!~WwAbJwawGj7)#*KuWjHUD&fd#WABWR)Ya##l%``X*b#)3rf}nd$ZY>VV zO`tj!C^)doIjP%9Y=wCiE4u7yVUkaMhbvrY02vxg#g>J|$DcKP_}~LuMjz0SFysFx zBE=AHX6SQ3#YYb+poN9(4&#pBQ>PF?uFs$=gGJ;5=kHvdGUp}`WPt(7s?Cq*^=ju$ z=GE$*;A-dWMf;hOJXZo<#&V*y~*H$bvWoYN{a$YyptD+im;X)d$N% zu+s=c3PC{!cLuNtASOgzLa&>5dY0XTJpi+2+t?jl@_g-v7S!o#F3?5z5c-_+L?lm} z5e5=$fwM`|))vY8*bxgQEl91P2*jq^iE{4~q~rEHq*K)#dY=Ry9zE_S2OE8?xK@Jm z8S1Ozf#@%Z?X$JY);t#?U#`3hF{A?lF&qFW4^UHs^zPh6AW30^7P4e-S~5So$$APX zdVpYIAKXUGy3tKgu%H|B$WX?(D20Ih9w?r| z*`N`|2b=o%qNgAuVf!<&ejXH%#q|=mxR|XQ=AV;klUky~tD|+%<}mR95eMeiZSziE z0gAH=RYrXSG)}s``2__ppaF!g;G|&*4Blc9hS5;C(H_8_=5j`o zAL|ssRfo{ym+|AvI1uMSeG8KalwI%x^9Uqx#CG=&G%Y$Bfg=FQt`L4>`+mZw&wybg39k; zqYFeG4fz>i{N<-B`Vk7nsFhUwn2aFEUI42}k9i4!OM_LbOU~O>!i_1)s;IaJI%H9Y zwcq{*sD1~mvf6sKC1+9)7+*w52u@P4d9fXmfZIT31oD*eOFOcH1ki1wG5BI)fo|JN z-^02`g`r-?FSH-FIVpELw>*8FpX-t?iV9Fti_s#q&JGy+q$j1m%(9uo$76XJ*I zZ;>Cn^HcicY~)5PgC-eM!Mcj^&D9kxx(Lr1@KJ#t2gnDQ2ltpO zcqI=PhPXw}eP(*a`U+ZUuna+t4{Ti*mz+4AQ~90gX5_7-Aj#*g+=;rn*%M}otbgBg zwK(`@Jqk7`43)SP-zl=ixH08iHfB+Ub;Hf=ZSWR?At38#10Ojwu+K`lv)4$>*|uAm zZjm5&!Dal9ggui`fsUSjfWP#+Sil_FSM>ZsnnVR|QKY}HUHUj^1YqY;lnkpEofUQ3 zO6oBB1_gh%^xHS>g>HtqEpyMsQ4NzeMH%DPe(3NM_TUlRhvW~=FO@xu#9?;as#)j# zj0!tdUL@PWBt3~PPRQ7|^W|Vj6?{Z;5o}_eXi*HlP{?2ah*&2kzg*i{{{uK@m_lzT z_&aMbm@7w%n$v2%d8xOV9rH1>#&Nd<*%N7_qtW_Q^w2L_m!dQkS#s$C%uF$g4<=$5 z%dnnWKRF=-YD_gw+VmJbw@dti$gIR@{!U7N|Wx9O3eOY)R^?Z*T)fj=lVfQ>Q zAeWExozG{G+RmIbuK(Emidy@mS#w6mnqe5JdNk~W-Qv=92%J*cX zKH{6MeJ8NlE{5+Vk>s((EddKHC}@i~XSyKVdb5E`ffL^e}8lKEG z7U=&pz7X8!U=NHzgs=p7r4!-4x$s&~1fW;D*R!1(x?u!EN&Ze9G^XLy5=h40Nx5VF z@$q&AmSi73c6%sLX%fWDsqlq`hNeL<*f)daq%Tms!xB08A?axwzp!xecv1Ry7WLd$ z60vAz*UDF^bH#2>P9@gI1-=lf$->*YO!ajy8$UPRh%}d_#DpkHQit)~mM-eOW-VP6 z|ASRpT3Wf+0jPrkn{|ZK?Tz~I9yd&CkUv_iF8jV~{z{%h!GLr5DvD%<-gry+wx7A| z-d}pagGA>DYO72{ zzy`r5HC}uleQ*XPARbqviUSax>bn3<%ZhlRq#bO0%9ze{8!$l!la2s|tTFfqmZ`|c zv#|eRURjBL(m5+@k74Ii^|#?IBHG#i;T{?<*0miT5C8e|8AEuR2FlQ^;ZS-8o+J4H z6?m3!FOlVqR{{Kr{78t9Sm@*V%a`n3d-z`qA3_CIJk|fF!S8>ZgmTAD2K|p=6JnsHFJ6eC=hgRrGcW#sKJsJ0ZP}-GBe~uS{tr~GLQ9w(ZE5~{2oXME zhT-$nC)&=^B|`5C?r4B;BJF(R^McQsb|pg+^54yOWNlS=qiN%B)|^b|Xa2z;4@3b5 z1eJV3q6q7AC5EJ|OpAj`uq^b@7FtV8t(9I$rI(nrw@YcCm7p$_yHO#q>J=#lC&w{M4x2Tsacu;`Y z=bYs0=4)L-Fmw6J8xC$)BVg2rk{Scp-z}vAYjR?d>`8r)8C>1E#z2B|A0N|+g?c~o z){mY^{fx;oQ%8D*C{Qz)$yxATOs<}%4;*kjybBvlS&rU1I#WGJn@Rm(@bTsv0B7j(d=l2zpc!AZcysT_2f?Cr3C0nogK@d|(xKzvXxsIq2dX=ctBbeg zE-Uzn&{H(}9l6lS!EhoVXSNzn;5N=Z;yBUK7uNu()s7wm_fi43e3oj*@E}kc$4i>6 zvAAlWApqaEV)Jo!D!F3BSM7$$o=o|GJOS7blh8mAnJNRhCiLZ-DxHBJU+9eeRfx9- zSvpZ$fHm8DhTnEw10>+!pjhDtXFDJhA{A`A>9f~@sw)aw2+}e#NJ4Max=M{v_6hhu zC^a6w3iT?e{4rbBK1#xc;{-w&@KN-a9jK}K0agp+0D#H(F2u|#P^Ox%9n_+LUVvo~ z>L7T;^u=Nx+{rA$Us9|Ax&Z1UI-}x+fSxH8_9$6&gb;YqGJobh`5VT_%6JTADfoE| z>0o;r`Y3SQKaIHCtFFW{QkRJ{`GKZ7Xmr6~O=lk9F6bjN=6j*#Js?|19kDh}grUuW*y z_QQx!4gFAfcU|k%^s5KTT*)S8v4zPo@w(8wX>O8!7WtaZshZX7v-tvjJ}z1nM%jpKd+t02!4?0yOf<@JafF_ERprxy>O zwgm#@3Re&wb$Cc1ND_i3qz+WBWDOY$%uhteIiC(z0IE6u1Ht~2HQSQG`&r!`7Db>k zM0YWOC_AM~E&)#OiU>$%A<+|dj-OvVA9DE6 z(R1SnvVaHz#&ZZvF*bKp4P%kXl*yQ@?zcBe(xoVJUb}#y| zAqN-7&YLO!>WL`zd}divU+UjNZ6byxFlLdu`%v>Q)nHRuZ6W!JS79t|t|&L> z58hNv@V#JDN9z#lQH#mKDZZ+`>mGX2Q=)Z+cLr;8%}iM4xSEHSbc*k>JgapotJ-4h zv-eF`YjehQi>=o#7B3WfH#9dM6QOohXa|?)tT}nZchti2U!03wlgHGF_#mH>4QHzG zL8E+1f-bWAE5}fbd{`VuTSkIp2sZ~l@59X#`TPOEzp@O)`VSQz~ zMX5<)YoM)dRcM7-i#J?jFD$3zYV`~|aJjg+G&D68w6^kqn`A!$0~pl@e4+A8F6daP zZZq2?B_*fCA6xKlE?cEjbKUK|E#c(k^F9CWRQjy#4D_+s8Bgt-#1;z}+h0?DE~an# zLf1zhaqi1%G~*F=a&yXq|9FMaHdVQ`Ynrrkbfm9>_ZK8maE0MVtR38kDMuqWvY)tf zRW)k0Z8T2Ew{Hjd*?;Wd4Gd5mgBI)N0yg`$6$#i<0 zBtzf#zq_!Pwg0Syj>k66a#z~m^GU@1~504DJ*6E7F z@(uBYuD!jT@=B|}be==B@`!_jLu?ZVEs&Lp*$t5b4GdjTtAq}329NaQaQK-|mk$h$ zj+%gL!Gw|IZ1aYsSAmY zwac&PE+lB@=WNVit>%-sE*Va=s7WPq0J`=(e$1Nf;>B0%mDd&12bLJ0eX0b-04A10 znm14uGUKk>NLw^Cx1312AbXA%YuJ3t>WG`K>jyFOQQC9spVVefPVNUS9f}B#DO+W_ z<-}Xo^Y7|deN}=^?s{Cl2lxzrOU>{) z(r;PjIfkKvrPbPRF6`7YzJ?e!3_kE}ZF6or80!D?#A^?QJa98u{-8$4cLQ1o)p5ta zSATH~nY_|c4|9X=_Cy}95nC7AevD$G@CdJP5HdbF>-=;JUERLrPtBH4cn=K^!`X%M zSd{RXYC=g7VP{i`+-*p4k}|&Rt%D!?HO!xa77~|`xTm=DN90sU`9Gg8Bl1n6g25xF zZx{Mu&TZSOdyh#}9ZQ^p+6zKI2+8AAUyhCppR^=)zZ-k@Yzv+scA(f-@*qsC2bb|G zYNaJxKdQ_WK`3aG#AOH>zw!{#!D?z=SFg&NY)PaC!_yD2!CIKm0s_%zdgjE_G%P6? zABWM}A6BX4og$+kTK+o;Y0!9d)rK4#92-&&eAUV3e=%g+8w{_!3`)rnDdh(XOFg|= zbvO8e)F9i2Rpk2*A6_PW-f;Z^&ajoSK;B#8zt%!#JSSPz(wkv&VqixvcbVyC3WhWD zkEmuFl$4g1GRsVyv9Pk7h^*NN&5?tnBbg1X{SNoQTW`6zpy%$J!842fP{{L8xIKqa zX~>ZA?*r^D}`1erb#KJRfYM-<2AxdDV&divt%*)B8XO@UQxj zz0vfcHRX}A!SK*f-@d4ngDGB~J1eUyQX*S+;5Fdh!yu9M~V-p=Xfs zo_F+_PNEn^w@r6cqjI+hJyOpE zr0bt&ixo(0eY&5HHP2Tbyk6YRT5tufb;vAUycX(ns1R13i;Ig%NlA1t22E6(j(ZTn z?)>d;t?%5je2=I>5x@qv-lI3mCeY6PydmF^^MMGkeS#&4+m4&Z>|@RsFSPRc`NuA} z2r4m_?a~toS)P>;ezV&^=?n+&l`yXyBi8#$N@Eyld@cOCtjz9x>~p7uG1eYCg6=6qLw#EYVmn?od%cKA#!M><;gt4X?N_ivq^geqr$OHN_O z4?~Qm`-{^u4h}3ayBudl#xj^)oIrqnhyiBJ7k?71#v=;^!%R&2A`Pu@TWiS&%EUD< zX;uAhk4;Z;4d16WSQUyxQq*U3c&L42cM~!C2X)xSjT@(!vW&!D2cEiCi#>)l_jiIs z?8sry>} zKc7z0F5K1m#zMNKLVe_u3NvwOX&;UF`-O!{|AfVUW9Od=))DukDf7O)wAsr5!J z>7wvf(xd^F%Oc+mrN2Zn+@;j?e_~(6=6C+~?#0~ous8+(BN$OUF|hY+O!W`TgI`HU zZw!50PB2qzYx8UCHOF?0iHYeOB}N%dP7|EeLkZf<6^Su7BSk`@CPg1SI&0|DXekM= z6XzJ)&fs?KcdJ|bqt6P%iwnD7cmG!WmzsM12mJgd7q*~5Qyyl-4{rIsT;oA?C=Q#P+t)L1+^^k4&+}Fq100c#4zn^;x^9Q`P;!f^C+OPj8&IruMVw-D zp?Z>k0s-mdci=m|_PN@w?zLw-2auQ)ez`24H>QDIB_T;OT`e#ae5d>JL|cC$#sSEbjDe9DSuLocG5; zAf)1@!8^X~0mf%1-Y(YmF?)k0t+qI1^Z0Z@$1T1uxuSJF!OC$$zBNJtx=zWu`!o7# z`t7FbAp`&~2+~KVQ$x4!q?OkkhLq`dY94boSLa_fR zUGNfBVqz@p?9SiVKKDvTBndnP>KG~asjop_;Fwq=MHd?J!W15?{L`QGL<%h=QJ?`1 zdb2uB33eC7{D`FVNo{i`!q+D4(?}%*dx<4cqh$adOJhL^c{aaU%3riMMT6l zttA8;c<~y&PJ4XN&;E+1I?|F`LdUIsLiRurZMh#YWFS$7Gcc44Azhnrn(uNP#RmJffSH543e4?!u}y&M;_`xLPp~m>-$NsO4CjoP*T-zba23U??0tBzYu%JP z*YOUqqlSrx*3vCYUrxC3D`-o{kF^`_x#SALrJH+Wp+yp;>;K{out>_YO6liPLIw8X zOdMOviZEIte1l3sJ~_-a*D(}`q92FKlv>j0K^?;88G1xSkk(VkeHQ5Azxj96Y5~Wc z7+iB&Oi1NT31PWNw}p6WK&X{Zb9$iu3fkQ}J301$Nm6 z^;Cw;D_3fU85A??;AaYZ;-aR)!|vNVgN>YTgzbK^R%GE=(w=AgqrQ~)bauX+TJ15P zen*g=6%%|s_Aqm>kZfjd@vb^>+2BQPUh6_i>I=+YmzmxJe=S2SZ_He{|ISN~$*z~^ zZCLoa(0^fv%Q^_4^?tsb&zbBAY%`6pLj#srf754fm#&_!Y50|J^O2=Q>-Uqb8G3Ez zBBJ_cFE^^DG(HHbr;&v)Jb*93h(+$p-aAhkEFA#mQFXiR?QRA)TS#8Nt`<{$?hDMq zHR2gU%2y*Vnj?q9Q&&_kjgm=Jh$L*lsyxbeqU}g8Zju@ux7@XSOc{D2C{?l+t6JsG z5z@UcqN1*1;^9=t^9Fb$&L_1IH1GPxg5uQ>9*7;eGg36N38NllS=wmPS;3oIMqUUF z*6x!!`w>92FkOEM*14IZ%lBv#qV8qn#}A9^`2F+KPr~H_nPpIjYc@Fh53QEd*Iz7X z;rhHY|FVQlR{)plOSgdSi*!G9A_9_U-w%xp-x3fk2#nKT>wkI9xl7er4D%I<9+eQ3e!@nL=fEXRp7VF!xQ-4vkOVTy zL_$tEkI_+}X3d^KoH&A5-S^@>k1TQD{Cqhr+cn(r=nlwJ-&}t|B^ET7n%H_SC+6DT zKS10*btBiwd|oowfp*(WA`}T6=vqnBq?E>wQv+N2XXx6$v3y7l@MgiUZ)lvJy42X# zn7@S~>b~aYuz>9@s5*$v=+sfiI;(`0Qk;WEO*H-ch5p86Nh>WC5-W1NoZBTX%(-uu z%1tZd`n=tW^DIM+Ar&YpL-U&~^=T0PwYEm(P|{~?&J6JDy}I1-@MRug zP3>Flm(+K$$wq2WeP3G$%uS_e-Vx(0`t@ro`GR73?TBLEj#5XLuUN_MPPI7t ze<5a~-+%o0@uohD4S8(R zwPDfd%tgIz*Q||f-EBD_3eCw*IWWh5UTL_Mc$w?d<9-^EQr4H9B z$F@c(zuj{}@xMSn)}n2@IoC%GXuQr=R(*N;;zfW!7v2#UBUBbH9op^*{dmo;@xv<< z#6rma@QUqPi>Kh*aNO-Sht+H|NBk zc6H&$V{vnpGVYtb>Qt`&!t2IQ zH4y~or!#t_swdg2Vf1tDAfn<94MlL?eqVL}ocwg_tmZ=MrkR5j0kJN*`GNEi&ZrLdJ(oPC!q1@DN4MpV(8Bo-athma7s68tF&P$;Tm}D*g-!*} zjj(AJP0I)!-F$fIsLZLEfSImCmdwtKS+oxK!seCzjZ#g4wV%$g=JmG{z|s#o{EV%Z z&+?yLxw`OJhI=C!LUj26&TafVl)Q!pf)fySdtUS*g(BN`WTyB7l)7suxM<)2%<#Bv zBR&Ca8PNla!D9x#Z7kEC8m~t6UDCexR#qhegOL{(hYm58hd??W3M|TxetRIqkaUYF zCEA9q4%Rnv^>WIK9DfDsGkQ1(D8KIWWN6G-3!d-wM3%Fyg08Pbv3Y)v@LOYcx&qA_e0eLSMl{`4hI*|5buXhxXyoN5>AL2H%nPtc?6CANLy~;%EHQ$ zPEJyK{=t)8H+KZ!%P-e0r_jm$LBOq7-|LdUk=aqi>|)z^uFJ~kT*8%9;B*uUy5}&3 zliD5ADv<<(V)i*H+0KDa!@1vor@MG3zW-qJ*8=`3?vo-mTlWZI{`*dt*}UP4U^@Zo zwrhqBY%4txaQ1)?9rwQVWgmC=DnoRZe?(y--J+TDF*~K=JmVf%xFAvp^O%p%N&J4j zrNRG6$Fm!r-pBc9DVQvAba2$LTn(QB;$MulKfc(9Uqg|Nnc4FwOM89^T7L=CE8FXe zr<=PnJId9xl7s)5tVlTX!E{Tj#o_s$UvV9@l|^Djo>&=et9KKd*!J`0`MIl4Eo~E# z5(f$wCD-qTfvs(=jgm#)02MJ%0~!?QA1r9vBet+FQ?Z9VD8V!#<67~X#P_g{ig$NW371O)uPI65$WYdDq8620m~>5 z6BTB!nynH9F0}B|-`1$C5 zs?#FN6w606@_^R?;pCqAFlM^9tiHaU&OWgWYE=ElPqy9ud6P7oUC<-!?AY+uS9F`Y zkY-1IN_lDsE-(0a6G}0S?Ofqp+V8(d~&ZOsCJ(|8*8Sv#Md z?0=_~>`I|{x8ysw1%y%7$pCN59#zpG6ocRFBBnmi*i?uuqFUfdK^D=gW)7AHu#OcK zXJChhnjQ?EP30@Uo#V<8i>~rcvQZ^#t{i6yzHT_Tb6Njg9pDIn647tp+HX4Pqlxzd zY&oR7pY5)yTkx^{JY9fwz+4q$7ko@jWz1~(py_3*nb+wnEfr2wv_}9(8YoG)z8%~K zA46WNNp}Qklo(Rp(cZ3@!L&uQ2o9Yk9UXkgE1sfbq5zgcHVsx}4kU9lnj5wY23x;Z zRu%|v>ZauqR3vjEdKyL)SJCR==_iIw4d;*fa#%{q~>@GIF*FA19veyJnTrX!Q9q>COgkL}7L#iLwLN!z;{S zVTGQNtd>di+I^lQ*A!e5)26c*FX9@3`m_+9X>eA9ohiy#!8|%L8Z%PH5ug+RRD8VH z%5>*``=eM!7=-~;3WT0qQpLtKtJ{HY!jU__ix_VoVEG{NuI?eqJs@M#SV?BSPi#;ol(x_Oh?By?-?K^l$6=R2~H-3%CEIEi&a%sfvt%hJ^BzI7c1bx&5MOw+wrU7M~^yp+jUe;ekqii zX@IB*#w5>9;?;s)1wRb74Hj#dZNeMF_=nb;sR-}MC5(M;y4MG%$;A5GtEGd~`q=n8 z776u<`3f@e$9?~2QSNmq*z8r-?jqCtFrfN_0BWFLVR3X6wEqwxNcW;8)E_T{TPVb) zU=KbvS}fc_^5jQw-3a8dS0D{5{m%M}Q0Bu-MO9f?0IwEo-@-R@9E)++z24K)>vz1tQ-Il|?tYweM!O^m@C`T%q-bo% zaz&qvJ%upYk~I;=1nVw8vv+T1MYH*zf`?Upu(>lhZKLO$eFTwwHhCSU78}~y>K8Lx zzdYWvYWkrj3$Hv`TH;G06fWUn$`2%vRVEqkG}cZB6e9mfNgc1=HHS?7FW2$#0imJJ z1+fpL3l9Nrq;SLyau^FqJTM56rsRpz;adm!j+X&&{Y#C{0EP@iPzzo->KTj(PQ}GV z9Lim!jXJ^56G#yN^0@f8P_@}hX=!AS1DB6Od~>ZdmnGolK;d9{!O6}205~f;ow+%H z8qcTHKH|!TO#pBl>?k0(fO5hr1ZAxPuM&K^JgMHFFCTz+0|xo!*1fLnR}09)izTrW zYPiC!_tv@7l9;FnHV{(PGYMR$kIja>T@Hq8FRyR^lA4OWCI&#zAv2)5Pnb=#amI5; z&<)_S(-#_!|GTqdWTsLQTs@{y(k2GBtf7#fuaDQLwzf9#glTymfw0+NO?kQ>JD3v_ z6G^uj9HltX;J>KM(XnQMv7x6&5G4r$3c`j*IBTJ)!fS<4yF_6*No2{uAY(smiJ1%c zKw|dHc98GjYOqpK)Uoc^u7U&M>(?~^*PJ@fo%K(e#gl6UFjc#_oas0UOQ@(=B2pOy?ito#6P0#yl# zqLj~Hv%6CQSYTi{3GyD;OX1)pDV)EU9bmvD8DX3BODbhH z52(v4hEIX_f)mcJ;-F}DK04~5totKS2q(AM235I zhT*?!Su!if-h~Z&-8&uI*^w53;p(X}wtSp37TR2e>}Q!cq<;jQOhOEnWOz$2RhFg{ znAR1cv|iCA=)iG6aBdxY;Qvwm4|0vW-X-STYqa<}KiT`Li7}(z2vJO*iFfr46{1#{ zsdvvFc{H@BfSdXYNpz70OcM(xI9H~B>ZrzcvcVfBOKE_V7D7Z(=- zz~CsQ%J1e}?Bgomw&j?hMyoq;1>^TXeg3nNrlYv!%NO2!JhggJ7e3QitY8%2dJ?!^ zlt_^X;q#G8sO$zX_Gn5Hp?J8XfJWSpyAB|Svixc8_1nGB)_E)QgIv9f;iz|Y&Tl_+ zEEdvE$0}Xf|6Jg9sA>DS6UyXis%M%wIO#9t%}4>H&~6P^RaJFi3<*b=HzvzL&*22X z20^^6`=A_MH!;1z7Lh$EqnP_7oWAOW~Z0X>$Ym7wRLM0sK06 z2VLCtCKFGd3bVhb*bgqX`M43-PXulE)Ow@sg!j6Y@LR30*k8r@Ba&5Wdw>8TG`UPnWis6L;IX|u z&8TzfU0nf*bM*_qcviOsg&NM5N2e8CuKI($*mF*p>OQlFF@u)yakpSI)-*h1!q13( zjh&{$rE=+Sv1nu6~U$t*Nc~m$u{+vY67IaG{54FFfX%|I~K|x zVeF7AA|JUMUG&doL;nQo1=D7qq|^$tLcshgDk?UZBc>TO_T9U8XED9f%2u-PimUU_K-Co*ziSNT;+qT6!Vg>1Jqxc!C=fgy zXJ352oWQ1O=fb00dYee21_T83?|W>Pa!Isi-mSaZCr0%IrI9JWcmLG~B+cZa<#SVZ zQ*W};W7U`#Kwr@OX0IVjh?r_8qVwC3x(W0hm$?ETvc%_uJQ9zVQ6uan>}yEiOV#e1 zb(ZaYkl&;#@ZDWNA%fcJCP|#|k^Kn01sQrfZmYDFLNS6+kKwC|{JO0iTSHkFl}|eD zeTGQ8nwuU_9M61O8)YFbj{*C@r|bUQ>JR#YF}0zAx_8NE znjRNM;2>SzAZ&pR5_L4)Dtae@Gd$mZ_uLz81XA8F|8pGNK-*GpZuRP* z+CGL=lXjCCeT$A1ZW*}tDJSL6Pl zDhALP7f8k$AGG7vEt&tha)4qr}jGYV~V{3oM}yr=hP)|Fh&X5xYdqo zl1agRYEO|V*O^GHEF>bn!^5%7jUzZXcrJCNr!D!caI9(%brt`uQrxhca{24VkY=ef zWVrMv*XYl!OP7;IttS$2uo%*+Rv!8?S@8MLmLjQxy`8acE>GGwk1;-?EyX6`M8o5P zN*cA#!i#$0@wId3cQvRtxDNQ}5B{^TkpbWja;Vwl`G&CBg&!KL4ST9?@+|cfLpR0u z^1iZjG_qh#&2vJ0Q?fElA6RQX91GeuUt9j?Rryc=Z#H7ex5G38AQ#ECArPAqYccJ- z8M{qR%22RG?uRKeZ?@RikDx5YzoM9i&8;_;Hf3(%e52{{q=f7t*MZ(#!tu`)_LnT) zg$rBrB{q2`^8UHj;Cn&Vu8QAZT90pkoRpX=VS(xIY|Gaf$q#tw}Aln zBOg?%)jwvYmIMB~OeAcD$R6Jb6p&D(2DmxGy6S|*1!*SziB&vU}VJ}oVke9D-oaJ%Tbk=|*LJTG{+ z%4ay<}AncvIpht z2C4)v`9$gjL^v{OT<$Y=`t~Z;bc@JkFZ709 zA$Os|FtYy(t$Af46%j(+$^vu`@?zia9dcMq@)M)BEk%F?o0@g>%ZrE=2EKYHv*qi3 zMi#gmC0ZXp`-ZqMwc{)l@*-bxQ0u>tQAg!^=goy0<|@Yf$J{0m*nWE@-z~ex4A2aM z4a-amii#dQE$ao2Mm#?eWlqcNy=G!}AA+kwvy`j1Zf)k@EE%MhhdakCrN4TQ1V@ad zq*R)Zgr71$w2)fEasen)VIC708$*3Ay6PAqtI#H_=xeFbwlp3d*wO$HDgMAnQD>6L zd8+)voB-717|K@n;Ac9%o&5e;SXfMUNgSv7)4951j^826rLjop?vsm7iIi(a2Q|v} z{=V_KV04mNCix#untwO{U_bA8%b%D)h0d41yfE3ppGGSCjFVog{#&}2C|b<-=Edk+ zwCVyAnnX?$thx4xQ%SkW83i(t8_{k__X0j3AuSl2LI($`V*gQR(CC;V#xg`T7CW~L ztvp6nJFe~V?=HV$cwwK5_8&H?Q{Hv+!?xoL&I#V#)qA5tk+3t{8`)hsB1ry zj3)7rgeC9~XieS&81E`i{r5zvp#ydU&aG4X&=~3D1-xt=7_oBHE*6Ro=fT^&ZMe2` z7s<@E0se)pGDnZ7tTv;@P|-U3^WD~>2*Vv5g*qFzHFkYa`JbtuGUvQ6UaS*%`BOa^ z-_~8LBEQ#ip|Jn(RVDzVqHf=CrXp92xQl`r#|L@G0m5GxEbwGTJ(^L~rfQHmvHc1f zPLh^)pXkwSxc;g@L-P#R^95q-|GuqNKLNvoip1GlxbAlpJ4jo-?stKK0Ytp35L0Jn z;lkIW)X30R@?RC@m%B~e^#-QPA3Py0rZvzsW{l6K)O8mdk6%b_ao_4N>wq+>pbReF zV-age3t|%gk)Io5Ab}#u@ah|%K{2;ty$mhiU)0m?4rH}=_KfS2Klmi2j}2_dxP@-i z%qbwvW+`uaU5OB+Ok1T=7qo*`9dpf{7nuocyY1gF-uvF<>D(?t%s711+E4h$Y1TF= z<=Aqtifb49x&qURjbW+(!}0Z#PzQ&IXuBro^w>0brqkVc}rBd^pSO*1>k)K8s1CB<-KT`g{sx@<(C?iY~{k+9*tdx zkZ(eaFfP%&hrjl5@%fvIo=R7HZlxPZgytOyNzU$94^|U&f~ps676HE+&22mJ7&p9X z+g4SsxAG<=<*awmU#9Wi&ZuYc>&{X@BqR9eyID%dm4qB7W1+nQ%%3)cw#EA3E_nUiEysywGYL!C-rZ{>D-@cWsCfTPRIlN_XJI4M7kt|fu$(32DR zwHN0kJ=@u~J^HA)(dlQgs`@wkb4622ujV-^=65p@t)O|Hd`Ns zI;A)MZtBKzTsjoxneO^19@bC@FvFiZsV)B9`*>0wxS8CQ_T|v@6?xjwc^({+BGiN5 z&Qlh;X75fS+6zMSIrY`|8Xnt z>#TOnQ?>o-KB_m^-XE^+>pNxHrpBvLz6=FLYg=2OXwDoxd>=vdkSY3Y4N|L_`3MJrQX{3}w-%itn zz$r|Xaoh-`2GkLbr>cqyV1i`6FchVL0Mf9(cb`}1+4hLDMzHL{6P67d06$YG_PqYd z8z^Yxp?5;p4MQ6h?#zEyTD#U5=`N;zmdte=^CF0xJfOm%>^ldEkG6lXYP*TnXy|1LTDr6bi};Wg_MrL~f@n8O28-hxB=* zTvfCr8s#$yGY$Yby;elI)JoYoAZeFl4)FLDKXT0puynVYh?rXATWkWgJRYNwtE(QB zskl?z>H&q#uVl*Cd^9s?#)a6*(FGGjK6!4(rR?0`>nmeptau4PhK(uCC=Na}UBFB~ z!G`GT_7X+W+cE8W!>;VfK&W}Y4Xjh8 zEXa`__Ae+YxYP({VI$-#U>#!zIMJr-A@uY?&-$iX_a%+4Z`OS$YaYaUBuQ^-P?_W> zUqu>ueBGg!<+KSK48~}<-|IZ1LF>}2HIsQaSIa}wv5p-)1Bpt4A%P7Ph4MEBays`J zpYpSxn;AW@$N^@+9GF5l%iy{m2tTeoh_J5s+|q2m3F%pTtt`vVh^i1XBHY&9W%xejkK_y!yd zObFM-(X-4kXf0vhptriQ&xBgeZs43gU3b9X!!y3EJXJuBw1_tkFc9^$eDg8S_SF=~ z{&<(imE>jR{83s_UHFzuE$+WMbtw!R2J_}7m(G&v!*pzhaf=Q z2(S^l`*A*iw1CbMP+=hsozs&*8!$nZm*_sd5Atb1+_<<=q6`fUA-{~lPD`IcK|u|| zltq5Y18NsqTEJxwAhse=xmZZ0Dk-ABXR4mvO9k}|;)Sm$zPh?vAaOX-^3A_ju^Hh~ z`Vs?q!d3*?%|-huN(@`0y3EhdFDVil&q>WS|L30wRw_7E`5>E2e5* z`ibNBJzqSj>LrI`2vE5gf&jb+(q(}E>3gP~e1g*|a>z6Q1$ANXD^;ViNB5eVnvU|% zVWTLWV~6ZMdk0DH6$Az=pJUH*r`^^@y{fhgLV{>veenY?m>ybJyQZ;EN{x_?Ba$L(MN6M zB|C}CDOmpWxtH$uOu`m&ljq&Y!a_<^U0Q}6?u!d%uRob>;Em7NV#R2(9+xh*4z7Q& zzkyy)iMGUgYv34+{nJr{66**fj=A->?cb)u?;S~&{L8FD0jjtvIO3og6ZyIZO z|IK}N@I5Vg3?a<8$FPUe?0PGicdXd0J=-f-CH}7Xn~JI`oqf!|oF=2ikklKC`&3AftYZ*l18xA$B34Q{z>+IcG-{)ZdE*5UgHnRwOFkpqr581}JA?^d}7(L-F6!_G%X zxHpnwUuF)D24b!uZEEcps_XEmFthORZ~!m32(i#rQ9@%ZXrSrs)9`jk@Fp>KjD7T1 z0XIH##rhzHWJkbD;kK<=(@soMSG@3=$%_GXT6RYj$VL=fZ{K#JwL3Yy3iQ%4R){g| z>o91E3n#)3H!qQb%%R#t9#%~uOb53NW0({=A(A9$)W4+Pf&GUY9mqbgpcnXjKn2N} zl;6K2`0g~2;QAxw6<>E%2P+4OXWif!0-ZhqAZCBaO1Wrmk(%iPOKa;GkW^rs zK|=l%GUeYf8k>%a7n%}GrV(InLA4^xvV&B61Ma6S&cX()+A1|EGt;G$jV{PR3S}8? zUVtQ6*YFqv?1W{EeR%rJnH|3Oj;b4vb8-|sFaLw7uxOcWI_xKS{mWVNiX5Mx+>HSS zOw$bny?FStuPO(kGpQWY4KaYl7XW@`MS9pQGW|I&P&;tyU19uQ{{<^iz8TamsBOvlZBX*e)oD`~w1Dc}3}y z55|qkSFIZs*FWQ7wXU_hdl%Y#{7aCj+UIJ71ypQky>aMc_Giz<*-?Sb+pb~?@4e%G z!C(@;0ij-ZBi|~Op-+QJM@MJ+P-(D=vVv{pczZqrCb0RTI=Ocq-F!(m4-u&PmMIkj z(Jrz)Ee7~CB1CN$gjv2gE1)b{d++$vrcJ7tU9vE9_Da|LFssq@%N7(d?a1P%DpS5k zxu7*KC**`+PR->O0PQmWqA-9~Z{Hf*UJU|NnIk19N5iM@CeLz6{hj50U|-^r_{xcq z6+r`ng0#Dxw0UB@^TaCpyCw{B@ZowjO_vP<8oV>Eeo*fX7UXCVu+K7f_tlLS+Nsx4 z8pXuL{|$+D3UXiZeE3-5@@W6>?jsmip5ZY$eM1Nb6UJ_gQkot$KsSaM24l=P#N7cF z4S{y$5wI}Oy@8&{HX!PS6eSQth(bI2oNk%v#DyD1=nFha50ZaK|SC z*o5yLuL%mauR$gTfEIxGf4Z0l>YJC=r@D}*^g6p!-`+!lR~dr6rC$kG$c#OtVxuo_ z9{%O&UF>S_uD?b5lI+*f@4 zY*It4C$Zo!;mQVqeCf@F0+5l@HYU{i5}c4sC(eU5P@U~{3Dw-@gqvuU*jK}rh#Zo$sa z^#+BwWiXpI#co3(lj(MC&d*&oTsaJ;uchyPVqlw(1FIx|;U>YY49hJmGovryX7laa z!wbz2|Dc${I|KoZX|G$|PA)=45*V-tUj>F05FRQl=r+W?(DNLozmB!+>thEz-JT$a zus2j@rn-O-*%oxK`euA>KZGa@eP1fz3#aww>8GQQ!BeFlr`u5(_;V=?qu?0QP^~F2 zB{3Z^HDCgoM0Gys!9^K>Zq3Wb%CYBA;fRFDNR0I9Pem>B4z*l)%w2!SoHG04|G0Uf zxs|evws)g_1oMwH=AFkj?-D-y)ad+6<@3KU;7BV(BSlTs^-=U-G z(-F{^8hVHG2)B67_scgErG$^wJf>HEywmrlV@%@h{tWYL7qzv`w0j!8d(vrZCDxYxFp_`7(GIyVk3@&+euu*>uVSpoU1Th5cdx~(DLuF}GnJqc`>PxFTgGZ{n z(|$?eAU63)D+2d!{YLInHqz0c@L zHRFOr-?&wjG;I~LcVVj&XD9s`?f2$U?q0h$BjpGg(@&>%eGe*B)jb-ilG=O%UrD-C z8ed>YrgH6TuZH@~`>#FT)(@tQy<*%QC>Fmxn~s)R3PxTn3FKv@aLYOWJhgrJ;?llR{SKrFC+|=D;P=m=fs4n7 zpW3vQ&(V~nGObbvZ_l#n(=9e<*4sKRSQUz8r5RI2H6EGzs>C?;OBpuVE>sfBSyLx{ zbaH0a`IU6x5+lfch7z<(8YA+MfaPqU7kR6>zOZ5D$A(b#*9mQI9j7?5Za67q5RuaE z_dJjD;gq(Nx&m{|DREW^RKJ##Bz^hfg}!XmwR>TD5C*R`q8|7bNP}C~=|71QNL&ym zVdhWYYF%&`&1Mu_5A$kUp%PTY;SosrRQKCcnds0|g0fj%VFg|!XnqWe%b>*b2)M2A z?4O_+_12?6BjKsN^iu0krycuuPGL9rJuPC3*m;r zB>0)G+zk&K+9bY0zP4~yDw^jg-R>uv{Nq3EoULVt99t4WLKq{{rKD2xqdh=Fgdg3Kdm<^7j(7KkM83& z5D%Z;A$<#u9?clk7p$Jv{8gr#SPv~JjxE@;859KDJp%B6+nCd88g+2yk*xfZN>QvpG&~6ts9I|S9uq7Z&Ym6T<@NV1WNE38y*RVzxLS75&251 zEHz$X*pxi}k_RWL3RUzVa-KgAiG3f4f{=r74;s}*>dqRG-k_t{lNngEfLvTo_d@5*cW z;32U$&m&+}sg?fwMEwv2iWFsu%mzq7K?jTn=f5A)DPjDRWwX4x?fKobQet@4fNSo& zjdF2ue{H;5KmGHQuN?H+uIVVy<-MtjG=@=smBLDvNths+f-1~zvotquAQAd>c~t`r zG-%tirfXB@bPSjGV$2lRSxwhS_nU*7NqCBYV_a!?Vckk6PX+ou8XRuX_C}d z0bzliYBD3y>g$u9mE~{Ge;41=s2L&(Jgi6Itl-nr9wD$8p3Oo>FohYtuV{9aL!pS<5bQ@`O$0J7PtH=O$dLv^_J6o*9G z=Z09N`e7st`M`d~Ja6fj&RMSMW$0OAc0ta3fORsN z-8b}3lz8Sg|4MW*nQd<2o#E`sQD)D3pE8LJv(WU$G+K~wKpN1baY#t@VZ-Mb+tAWoYQu z6mqklXl(G*eZIOfUG$>IefyrWgF}cwz;j~U$W4N6h(|YU&UGT1cqn^>vRF>)O>sP2 z?LLxjH&ogop!Jm(x#6uDU&2x4sKg}ot_>wuD`}ezcUl-@6xec;c6V5vIC5I0|G{uN z*{?;FjB57z_(j4J^8P`_(7v$Lkns`kz8j7UKd*zim%Mnj>@9`CA#rTnZhb5LWF|5zE^+v_K1*k;AuysxDV&rHtM`dna z4lTht1wUbh$Kb6JLkc;Hfd&B51e^K#ka=>QCYNMqa3I8&jP{mNC}H82CSef&^?_mPadDIIi#yKWtl^f!vy{{j+VIk(GtyPir{6=t^wI z2CTEctuLgQum57nGPUNZ+N02H9ZN9d&6dSo?w|gAbJ3Yg@2yM%LYh-sxb@eq zn|l6tcL~hfl23iUifX>Hv_d<`u|?FHHg#ZmLdU?2{MG}DjSXI^X-|-UJgx8ElAq!7 zJwIk~@nH#LVkAx>?uA*nH(`$9BJ-%hoe)T}vlgx-%GNN6Q6Y&im8NQ zHzg~nkGo{N^P6nHHhZyOqv7hEaV?rO@x^%ko}GP*>d=g0zg~+ipm8p3qdek1(%CG1 z9_aEvFWjE;T7=k4G-94KYviAMYEBE&hh)daxGRqU@lob5y~JIDgj8kNU`geUpIKvJ ze`Ie+xmH&z%Q%x0Wv)jmr)-(%v0m|FxpA8RIFHc%oHcEJrYizE|M@#gsKFoAINT>v0o1%|6hm73_!alj%nGH)kOsirQHbt;b^tp6@ z_257A*W&WQ<6~)f;Y0`XeJ<~73bIS)@ee=QNXz=fu^#6U|Nr@2&R+d-pE9abW_s(# znVk=0>HlH9_5ZvjS^2kI4EdcycRFM=hwjM#`+r-AS1 zPiq_;y{vb+8&em!>bttSejKV;92y(Cx@SB@=Xv^^RZx3JL>G?nn)q4wDMBc6p?S|u zcQTl)d;G$OrwULTY6d=f!23(tdV zm(cUUAc=^(eo}@~&vjemiGG9~&eeT7AB;dvcyHW6Z?Yb30fHK}G%3n5P?uAp>j$qo zJ8zHFC|Q(p|I}q0Qr;_Rc?9rBPUYya65@A7MU`dP3T&mPZZESOUGB2_(cBi@6bDJNr&8x$;#FP7_DTVt9Ih3_dUFvZds)#Z$*_^ZZV`V^TXq zEKFS|ou%D({~LCB5;IG*PjT0I&1$x_u|4LF0F{72jD;`DbzHZRB*!1b1SLK2hjJwF>jXH;;z3mHA$~lgz&G#!3_D2 zbF|Ucf8DGw5fSia_A6^W;rIX>9dXb)hoXg%{t07#sz{(KSP2OUq86x;F(E(>Ns6= zn!!@DL89Y#$%=!W*)j5;uO?Y9d&@_$;0@>Ys#;KlpPk}eO@CLW)4Ig=(HVbD*=e!1 zX+;x7{bgeMntRXpZMx4r0U+az;U-2onPOhmIl!p%>XE|KjEuEiiEVp^2sQvb0N=hP z2U9RZ??4NCI>$eLP*T!sw$+7&LYkwau){V$ncOF3P&d5WY}%JQ*Sa0l z{|V=%Td%UZTw90TwvC^tS=*qNWt!3`MSIvrT^b+&`AMZ}?{?eT#p1kpK71gsXo1CI zmjU^gxEJTv&q(zRw*}5oejLtJNULw7PS0IF)zx7$7qCqHf1LeyJeB|d2aX?98bVZL zCn3p7vXzu5(V%6Oq-@FNTuMtqrIL^)r82XUl`^tZ_KK{Iz2`aK`_=37{@#Aye}Au= zTd&5!ab3^r`FuR?kNc>vyH;(pgPMD{m-0EtboA(F+2%A_{S2o5xK&(%*F1#0`^T^* zs?@!1EdD*7_hn!}8ucuekAJWiR1fLKn@f|@-kGH~PH*8D7%wUQ4BsPQncK8|IW~r{}CdXO{*H0Nm#G2ALXJy~* zylicOI->Opw>cXr|mA@JBa zPiPKg*^KO_yI}SNgWL}$B%S$e4R2v}(cW2bve^nfA1k$lUsqeDuEakce+Mzz|5Xck zJxU&I9j}53KSkId0UvO#1d0wL5cXO{v~7@cjs6PH`%Zbbv$hM(CvQ{p3^)(x&!2zU z;#+s%n&pKH%h77$r^iSbV{D8vaPB&=jEw3(`Wi{OTXBxDWW&M=%AcmJ`ft4o!(W;; zBJDz^VwFdVyIhn*Sm-WJlx&-EBRN8BGZn`lz(I$1gJu&`#L)4jU&<%gn%^?N_+^`u zaFGuVidE-Rk@4o!_9$ysC1jvzOjwwo!F|U;nxW!0M-w{Qc}j?LYsJ=G@QY7tMV@Ms2)YuUox z4S8Do7z=j=83?Bqh{$fOm?L^tc~KFhCbOOC68`se!*|F;IvSF#%$HKLTlb;X!s5;x zNRB`+Qa$J{uSk4!xtg(MjRY~?{J`=FhB#jKVssrY{a7%F*5ov|zGv9v9PYh-_Db1% zX0B46LOD5vDq^~daf=!0ftc)UbEPcd8Y)vX!MG90C+ts)9!jUrs-fr6>8x@Qm@UgQ z@~3?QYJ+V97Mh$Z?qQ!WPn6g}5)29HGHtkIS)WXD;Qy!h17!pGKrGwGI zhSr+mfp@B0>x`&hS(T(>RC6k0{~VR%J*%94PoT5I)Fj-Jy)v9|E`Im%hlHEC)cP}# zJrV5wFO1cUf-i;+o}4hSbYvr~M?JIkx70 zlL$Qoz-Jxg?fj*2p#}#JlA*9?&uX7y?gOeh5Wu0;0ly_v8K2gQ$|#k9ARgJy{3|SA zF8x@x?6~o|EW)&Mt6GA|J7vE)GVlJm(Fi@-p;_Te`{Gc3YaVyt5}<$}24W_GpA*(h zP>D1Rrhjy|H!D3KYxCG?9cTQ?=JYeoQ#2Gi;2OH^JuISs-#W=hN%rR|n2=z&*q4}3 z(R?Z_Y;k9PcR7Rp-c^y$FSVYQV-8W3GQmE;;uCX64Z$H>kAK%{dUBx=8>~*s#kh9s z;+_s)DphE4-HH6-F4^GOjD>H$LwU^)E6%q^VSPu(-1VTWZJu>(&J$konEq$D4xi$l zh0LWdxh?cCY`yR_b@TY%z4GX*Z8zy+hD1tX=$|T+#lUB~zqY7WP%j5G^AVf)0_jOw zD>iRW->=w8bB!3?>yZbqFrZ`@qT(ol`wtK?usXi84X+tx$`5^2n{&(kme;0K4bhs* ziB;WuZ-zU=I1r1=*{q(QB@Xs*>w`+!I4ID>LT&@_|MrW4+29`5&5lK}N49__@izIX z*0ef}S1`A>f~ZJn?5^2=?C%&cHIPb1v_f*9$O-b*^LpAw0rmsK%ak;BRFJLYghE7A z)U_9q%HDt8$d(p2?n!04IYc*0c(7M{84Axk@==;@r)*Ep^(N1tV0pO`gG2aq%C6W< zy*+K++%%ZL;5*>XqrR-jd0?nL(DUlHvsO>1i448intO+33m)p(&_6PI3y9t=^UzA2!4aBI8|GtMhD;J(D`afkzkm588XT12Gb4o@ zn79ME#L@NCcT5kVDfqZmAa^C$E16BDwLQJkqli=;vJ0u-0*ru*OgLAP&SyBbKl^l> z(HF9Mr|rGO!b*3hMht}ToN7EcWq7Qll?h{}ovDojG$^4_8Eb+AKrE@iO25?MT91(Qqd$Y;7JUtC<|5!Ke( z)_!1d9bvdgOcOHOsl=Gx*D2v`>!G}-%nfw9D zwZ}&f=@LH-kL@Y_c=~my@VZ?e2$NM{Uf>+T##PIEtTXN)_Bvgw8o$X`1@u=I-`_PEr}Ue(t*9{WSU9$=`bTmQNm~P_r2&P`Y`(l9de)EGcdn!p;n^R zlKPmxnnQ7UR?QA~1BF1HiaN1Ub01oqlS`r8$d^^Jpu#v;y3CGQqnui(oTl1TS@D|% z@ZVrEt9Nnk5t;91%xpfs7SIey@B(Ili|>h*&DQXkL*c2m#8aw7PtN0Z+(*bAuqP8Z zsfvf`LG9Kck$PmCiE#y9QQxQ?YpOZ@a&&aG9%&srdFPAAe^*5GZ@9=4@Zz)c?@DH2 zLBZA?Yj#S)H(!f+WG=8v;<2#Vy=8kJWIo#3Egbl&Y^Gr*rbOCrFm&5}qkx0zgF5A* zh#6ypCZF2)#Cdf4hMyKpY3=Dm8u6CC|8im2Nv6Fe&$?H6qtldSEb_;=_ z+0nx{r_|rDQdgSe$Wt5afRl)9;E8vC^SsEA@kG!0l-{q3cRq+9d&>7HDOr zm$N@Qkh6oQfzxb-U{5xb-DZ54^0{i0CsDGzajWQxZksW^hS0#Liw&{!g~9`ApFfui z|M5GSNFc_nXMB8ofhTX~`b1{7LG$Ya;WKqa6-<&oPT4OGo%&FeXrA-Q>T{^(TuFWR z?!+p(oulK>Q`%1nKl({em&#dcR3+$Al`8EXgZF1Inbp_#S9D*Rr_wc7I=te^>D!yg z>IGBC+|0}p903XS!mh5a5FqO}GcG;>tERWm=6UeM3%qbCopYU0{*;t(gs~PeJ(e1z z)pbWcaZDHaKBK_kU`I;Et4`~zZ1m98xpOL~s2&?lyj1SOkMNz}1b&W*#F$N=J~^6s z%yJ;Ezs1mDG^mfg_jq_Jau$TI4>_F8^)<=v;3A=qySkBMa*T_1m#mCRLuB(NtfziB z<$jeh%bno7_>ncWR`Ds}GbF&jVFRd4l#ay*Z?#NBI2#`MGB3+eFR`h|CiIk^tt-f4 zwP^U9{{i5iVwu?`_H4^F5d_e`;+4Ye23jrW_V-lPqoqG9k;?uriG9H4A{_JfDygaaJl>WlJ^$!Cu&UTU z+@q}$n^lD}bV{g?+ZL;D?B)y<$>Y)n&@gcLt^bQZ-2Z@>#>9VLresrbx6E{^Xz8#g zN7vyCoBsWqm+#^K`xgJc&;Gq;BjNH7n68BHdcb5!7&}+57U9@8+-JJ*^p-?}NHa5A zx<;toz|-2Uf?an5W2i-Kp@aWJd{P+lBZhR{b40%(bvadh_mq{dR1L3kKXVxYaN<523*+#&R#Vk4+yOnhB|hF^74~J~)oY)4HcnJZC$ac3Fr#01eBVIqmv<(;g24Xq1K zoXck}ZPFi@ModHcG-h&3Mx5vKS%p|oYr6oJ2>cV|&>SaNtn#R=*Z19Pu2Kp7rAmnF z`{qF`fx%i)`9Hb?jv4dY*0d)!Ozvw{n{Dj3+%!*_&}%2ON+WXav=6%1&?e8__$*PG zVVLmV+Olzdz1pX6Uovw2>&y~0mxU#+W<2N@34;$?KJZEME?4;Q+Uu9$rv$JtJ=M;b z)z`Rsf9{=lHOzXj><@-_H_jk<(0h3JvSo|iqP%JS_1KG%bu5kl+HYlneNc49$N$HE zQxm^_j?;ztN`AWg?3z3+m|X4w88fx9C6o8TX9knflnWZvDA&GE>}4q(pNIt6S_{eb zGa#pARPOzLBlY9TDeE|$&dvSn>4+lG|caR8m+bvEM(=^_Jq;mLeVM$aigxiXO7 z5-jZm+6$A!StZ6^u7rP%bC@E|QRxW1en!Mg0ZfuEYf6?fxPg}1@rk%;{bXg1L-P%b z`u6M(z0^U*mF!Z9dbgc}{fkX7E zclr){-kNrHdTyQ4=ya-_-7`o47~X7hsX4vs*4MIPt*Qw^=4hJ9Vl%mdw#79s%4mkD z$!m^2h*@{y<))YIk-RaUD=C)EHc^h#kRwi?{&i~7$@<$*HP!IY1SWohpC<;_=aIG7 zxQ_b*-K$dNCXg`q?36DKTzDgpJtx)|q6|8r6gJ6afVcvfyA-55TwHONKDGls0(uFy&Ewc)tJGlW$!vnJo{~7tDsnJk^K3!CDpf zx{q+rh6KO*)RUh>{^Z`Gy%GHGsJWIcJ)dOQtAx%!)c+PPc8oC%1}%(`pe~{`>|fT7 zAhqx%{>meWb_cDlR`K4U*Ac=V{@kNWxIMhV3V?^-zOe$u*HwgBJsheLM|R_F=@zF` zUCGL+(q-?8?!VR={rE8UqWNaxmh|GUDGN-QJLGKBpq_RbHmd_Hrr2PAA!=* z@?_mULgCaUE=*Y+2W%8q$7yFqN0q#Hv%T2R?(kgB`Ixou4S#@>IZrti9`qUE3+Dv1P+pyCq z@BYT=PFSQl>!E6tZ^16`1s@0t(wOli#p71J$Pnug?O<`HEj}}St3LFrTUcHe{OUs6ORE+Q9ir<{yNHS z&ZTd%`C8^YQ~m+fii!#*3Wn7HM>3kfjeSq~*xlYfS)pj~4^j`o)M(UiA!sz&rAVdt z=g+m6IKHg$cWC|*W`wP+c!vsJB=) zF#aI0Qh_K-AwvW{4QX&+_JJ9deN+47JM6*g_rBpLlaYC0^3LlaapMfwuHa}`#NRVU zR?wU(E+RhC-3zCVig1od?S>@$Nk!~W&$C+G*fsFLV?1ROXBd6H^xTg~S!ybYfjvJa zrKdLCuqF15e~p_Un$zS9cV>y2)$$JyCL76p1&FE?xmS*NqLRtJ`4L~Un;D$7&TT*G zKK4~l$>+i&K^5O?28ITtx#;4uYdEF7fnfr$#!@k@f0#SWgMt9=*LYk1@aMe>_s(^0 zR-@v7Z_nMvCvLB~f!l&ib=zGh!C5#2+^h>_vbxLtK)-v^nD=4Nii{7@+3cCxsPnSs zE?=Hj?8PSl|59(BXH}YNBzwU(yWSs@icDa!_UfGAwvThYL-OGU9|*MAr8@w;14#h% zCXfn-7Z_(^8CSTBI&~7YR{UaQ$VyyI_d9=fmqgUGg1koI9JiH^0jkuAG@>OK6ow(@ z7N@h{LRU&+g$%kwwed`nBWh3Uc2qOq@L^;9Td6zT2WQ+(5B2?e%^4x`Q_<%XvU>G6 zYZU;P7k>G|+~zZ^f#qqMi}2&$B@pWt=1U9k9_0FD?y_V`r7Ev zh`43m1m*iV1yBh|<7w`r7!LVUU48d~*twj;(^JHYrZ|&#t3R$vcp-^h4B{H>L3^*fp@-=5=Kd=qM>@S1~pKHw^gMu#RH%p)L$z`^&(({6`MH4giZKr=NT< z{;UNV3a8nRYzneS!M1nsAwY4_aG6`t&m+?Lf+LeS&18LYy?ygk{H_IDdQhIR$8`X5 z=b%uOq<(abDr3X{j+znjpNS>a62@8I6Z|djkV4ILheAbzMCOx+*CNSze+<>Kix-UT zGrTvB`)Ns{GeCipByG1zURs4|La)9)W$P}IMdg-l2BdEIMnJ=mU~vIA5f^heml@*_ zOOX=Cw$Fh^l45Et5~%C~5-@sxaz2H7q_c$vauX&*kNmca^Rj`lM5dG*YAq^OKGg_{ zi=p!2R%7Ng#%+{eB^Z#Z_dFD73)N9C*r&Vir0Bhwd7s7Xh=_-IblK^ID+@#nS+g1*35YaRKZ9F!VoWyq8djXyJA3>RK7K`{>%GAzi!v4K3fI zjUTceN*T^wRRzM2nsbN0hXgbp+K1P+$5*2#0n{j7B*EKJYf#nNH0ILT)lt4%Nm23R zMWa(2j+Cy=KK`(xlv@Jp6%eR1pU^I*2&T@EXYWX~PIs1fws1X^bc;o5rwelnYf z4j~hlMJb(J0E_4Qa-@8Dt<0@IN~453cz7+in*!MWqOn<#+aQL5!8gy&$Z=+6mb9xb z>lVQm28T~abPZUlX77$_9gy+uXXZB3f@jCqnLWK)L|gb`l5(*MV|KhelwT-DEV5L= zh1=A9=^p~yTEj1ngdxxS9$@Lvzs&Nystnz9GZaZTxrfhLHlqy2S|)wq`1riv*nYg( zWTlXl$EEiM>x_?O{@u;lr#I!XrRfWY?nn~8Z}ejIYu}JEM-D4COnhgxskQo&b5G0E zDNuB{`EcuOc{P&*&pHjJ-Y6eKjVDiuC+9&oYW_SD)>cEhePcr9D!>X~T3hBr>en6P zss!rqsnV+lo}c`82B^8SVT&Nw{xRdFNi~aIn5&cAj34YP0ZJaMpA25oP~6PuE9uM6 zAns8<)WstNe0FwL!ytc~%rsj4%#`8yPtme*?BOCdmiIS;|sKZC`y?4X;^1(AW_6dfA$(fkvB%fuLL;7Xelr zt>y20sM^h5H zS(o0^oLx>c>xQYpA$L+x67&!LCHjg)q8JNa;zh!L^E$j|x5{qUia$&)+1{3S=_6gG zhB4a%8YS{=vf0OwTO``ZV*iLK#fqW~YxCD(dpw<4S`5-#{aBVc^e6CXc@ zWcJ*Y6w%GO2{hAMMf11EJQ)*qPsBI31;~V5$|{HGBk`B5X`MoYQ=-Yc9e4YsAL`FL z(wow^r5Ox=9eD%?aN_`r@5-wxb$>`2o;2HLCCLIao2?j8F6=l+;YRhOl zD9qIUADihMj1i8=+&sdpVJ_lM{kI^V9Nvfe)<-{E(8t0T1~b}wv}Q{UUwwo{=t$&F zr=hvl)6J>%iN2auT62Ay@VCx|ax;*MVc3gG;!n7&h0<45QQBl`%;Fu3T;GVq_wPrh z+liQI;pwSD8UbZ!x3KR>L9Q)#PT%IPhh^QKGT~j|t%WYmCB*-=(&AV)3HlgI<=%0c@w;C$ot>Sz(Y99 z|HyPZie8t6zY5=&_kSZ4kKj>~Yxco}G+G6-tD!bMv!z>swUHqv>^rj?gQ1X{+Rukd zO7?$*lciaGFw^q1=E1(Pu}iZVdGu!Pl+HY2(vObkWqOk8hM80hp-eq%k#P@Tp4W*C z$M#MDF;qd?-(XeXM%gBmVV<(BWvF}Re+ar6B~YCoBBV({fw@o)V3Dx*g1r8&d-IQE z|DXl}mqlBQYxGk98XNqq?Aq}jmvh_046oMx@Kk+B6>HKjdD#)p=nD5udq7#wT;3V60`db#{q$(jIx+i@<~m>bf! zY0OT%+3+W9cKNKd_p$qil#!DMHJSWT|JNg%JEPSRh235z4F4q&gM=a^`^Fhl{>%Ji zTC`{t$^1MaE$&yoXZO_1eV>cfT@$mvQ4TdC9UzXnQpIdb7^?y*WS2@5A3K-t*c_wO zT*cD8M!Tf&G2We2^dW{#SxN%FQv&T1da+hdb;q5N6%1c!9EhiU|MzX`uduMX3$FD^ z9K3mRbxUH^rRi*{k4vlJ3dym2^g>_0a)&SIYidZf4*M6|u<9)L`Yd^yxpG!z?_oa7 zx7V)R@hChzr`U>2eg2c`prsl7K>gGOHp#K-OS1wo5l^2-b0Y9seC+z?I@>g~K_}vB ze`ADswtZ&M=@o0M%s)b33ght7wO$t<_=+OszHH*>Wp7W<8Li9&pZTI-e#VvihW}`T zf2epBi3SVp2k=o?bFYSBSN(smZYcZzC;R&Cn^i*L1-VQ%|1U9+pBSSIJgor7W9WZK z@ZI?}3yO@aV=|)vCKjXhV;kZeYy2*xofe=76kqvQhfQrxc&7BrfycM;U|ojNtr_s= zp2W@y2~)9e=B^RG%?ve)QG*!sX6g^(Y;54ZoTf;u5J{k&Iz`6%N%{&xw&J( ze$Qzqr)Gu(cWJSBZp{w*n^s4Lwe(7W=BtBF+Vye z?ia{mUrtmG%PlL0{q@tntlJA3>$L{fd6%J@s+4U&<6!w*ZLcJ+q}p@ZH#{5u*jb|P;$gpk z8#QE{y`9#=H>@?ql;2nK#;MlggK>rfgIYwieCVztNk`c5G4Y33oN)d#vZlQ!udOCy z8$(C^ckgVmuzV5y$U)*|4Ll#Jh4FK;YBJ7x-ty@scZAz7M7RQh#qU16_P;Vm^58wy zO{PP@TA1twNHINz!v8gN+x#}ZF?g7ru!>^zAbVcD-c4Rzao~Wj%V=YaKl8!??F!lQ zaU()(3;J6e$memufRoL0;%MInBlb+;Dy9M37 zhv`NOf-A2>M+!vkb+JcQ88{h{2gO0dXq`5j)+&0DOl(r49<{rKItXdWRlPvhek-#> zY;?Bf@kD>(FS`~O0pPWiHkAwFVWZntST{cMSiOV-!fXO)9Ivj-)ONk13X965rAjNMgSDJD^&%;l6IyajA!9Kg6aS@H~L&T1A;sD z;+OP60|}NCxuU!Ju_xaBVopl#GKi~1Ne&8W70=iYBu^PUR0|0>^#OW1aIQ`&g;`@J zggZ&H(ag@^d>Wqg?#r8hawzW16ENT;{|0}WNKigdb^s2~n<5T&RzKf^Z}=aG4jgY^ z{mhm34V~F$^?L~@RyAY5`~mudyL`g*)C0{$n2W?6*#fOoH09!xp4N3?22l$^-7->~ z!)|9%>fKLOE#ApH%Ip|7J$1h|H47i{@jxc9-9Y1s?_+uAIUE;jF6=*W_15q&MY8e7 zo{YWoaI8J%(C9 zg@ieyk@Ws(I^6*RJ;aFgD)5?hg#xrE6KMZ)^qP~^KL?-_*n0wPN|<#6W%K%=ERY>H zolH)9RD_^%cng8Z(@+o*U_VtYjdUXTw8bz2%nACUymBwDHFp2{1hc}K2IcXt1r7>c zd;%d+nQM~L98w-XD*bjDW1UJBNFT{s^W87^_XnG3GiNQfa&dIV0p9Fl;cv#An1DwL z_(h=VLw%aje7)|+pG3@I?4HDWumd1ESPNncBeL#?KtytILctD$J%s2z|M>X-hBw$- zU@g?gcO)(^)BF#p))apb8zIob6G8!G2|LUmy?LN8c3ULYlMv_y#k&~ds4zfm0=|7U z_98|Y|2jFTM-F;sbRgKSm3SRenUhh{1EPSu1QrpbvrVmqRCs0r&6yA=K0Q4jRx_=C zXz(@N&c0Fw9W?oBRAN86j>oS<{e=f`ry1+K{2-Q_d15_~SCUGMcmcTGmZgyWwFM(+ zm}iB^f8&&sP2TgNb6fLpp)e?du^7xk@I{4Z)P~iVe%WSVUWNWQ_9CJpy|)v&u;ze@ zVFzC@t7Cq^*#_mZh$m5J0r7zs#LM<2-2n(Z?~RRvyZV&bVVjTp2#kBGGM&9r;2e6j z+R|risM5MGd39OZ@J7080_#4##TsNxb>vYZ=RgsG7AqmMMnw|%J?@0!)Si>0-#j>A zkBa?seJDYWPQh>^jq;%kdaIX-Y6>_D3dZB!4gHrtFYzA`I|fT;VBeI_+)ju6@cLK7 z{{F!M&y@QIwJ4O4%`1*4Jb(*6Xnz2Z(@oy#8BlO&njmZ$HWWZK5z8zk?`C%M;uFjs zlk5-Z^M9SbR7nEZAg0T0-%jon6o`5;>p1exU+3z90T0m0bIhj?U1iGBlN@ag>B@IA zlVxhfMp)Ke{qu={=i?`B^H#je0CdV&AIHAEtQx)3`dhjKKmHyKU#ns? z=>PV1#&-?|oT7^sz&#xsY%;VSU^Mwc!?vBWT#~83%;LQjfb!ehWM#Xi2AeV8I!iA* zsJ-R(Rd_@^jt#_*h82gU2bc+fWPdXwr*asmKD=l6EWWOhMOzHYE0C$?S%2v(yDYm- z*qy{)(&~8pqn_iW)w}EX0e=C^i>9z|jocEZ?; z-t+#mvtD>D5E_fAJ-A;_Vt3cOz5npxjGNo91KKcueSPG^{_ItqpJd=7GMZ>Ue|(^l zh*m?&U*V4*T>tfu8*huA10J02@DgOg!8N^>olcElrM09xIQh{otDb;o5~*;)mZovv zHs|{PCh>6+4iX)i>|g}N$GOm8|1DtcVShX0Lm_<@dKfiEW<* zLQkE7!r<|7X6Z*k2Ssa7$`BwbFMI0Q8EDYzxX{PkAZ&Hc^BTzz!i^3LTmkC`$Yn1k ze`~D@91RRsy5sn{{pS<101#VJ{OWppETnQ0f;Y~1s_l>9wL(}4*!m{#m`H)rSPX9i zLsUa~$UUw06d#XA3!LAuHA=3%zdqy0hmqUnOq3|EF`_(ua=~PJJ@gvwcDuEcfXzla;3ouxia*Nli&1`Sv=Z8>P5j4+cP-jt63dpNDF7^bR@NA>8?RjBb38 zm^~|;ucFKFyrYnn5VY?l6UHyLY0hX#eAR|578>_bm)SHNu%PPA2IbAHlK2;L>lL^^ zg6DbKDTn%?gL&~79hP8$GbO2Uyo@T2=cONz9Jl!Q{!;qLp0GC3%|Ge?;H=JWW!u`(AGe)3Q97wqT! z?R?^xAfU-Tb))AcO3xjc{eC=`nKFMTiJ)@g3 zpU0SgapCG>W6WZND|ircMW4GYm8IkOEkPTpFQf4{H%O1jGUAA=ZIugO)Gabo^FxKz za(f*}um8;Zhf$d4tn@tW$Hjg#$1ddnI8dv4E$*gcf;8=|>82`(=hS!pbo+UNGGxx9 z$7RF}O{HdK>gVxy9%P^iN_1?2N|6sY2;u$WY3qHeRy@+uI$cH3)wAacj4>A%8RZ-} zewElMTKbDNNs7=gn1cn#af0^iruh)Z&!vgA{Qyu+XMQY&I2=1C=FWn$Uj)ajF z!YA0y6854SAlbn)E!^<&)T8U>iM_3EZ;wf3x)1V6mtDm+Q}pUS3Ks-EbY{2D${Y|6 zYd9m#-o8y*8kTng%QNA=x&!zzkh_D=%wGz}9W2+jJMQ$A#i7qlS|3TC#=ZNNM+ zL3+?rCN|_7cl076eu1OE5?|0_G87LZha;J5!uF?p=(<|sJQb0uCPQcyY0b~bFw*sJ z!pFnd*e{#Og`ATqD5Pv#qp%#L6s|za%jX`bgltM%X?jd;_!6yDdP3#a>}RhuTTaC2|EMu*ZFrk?$7IM)<3f{ZzeTpAx>*?ONR6+TuRiKfGHvl zVmkAdr#(B`YOm;;{&l- z8P~qrU$MW?*dRDpSY*F_<;ZEXfrNy)`V5oS4*Ucd89-Lovvz->-1{`$<0dAgktD$1 zGe>{7<)XJ@6r;P5ZeKr;xW+`SnmUOE8yFn?Kf4se%GcL=7K zC_m6c;rE2?CH)hNkDBH#!T%zwc4wk@qx>LEuAcCY2K$1x2Q?rlFRM=9w8i?-7+6x@ zf0>?j>r?E$m!rKsP2BlIG(ms29hc5|>MV%Pbf;vEwAtpEGoJRPcX^;#kn-hlU}DVg5LA!ocqt(4pZU~56wLrbs73wl-PAQ?={YjIx(i4@Ml~u z?e#1M_7a&YgG>#pTNbEVkJg9VuliGw-Nuy7`od!73(p_$oy(&iTa_Ju1dw>22q$Mc z`_J<7^5@%n+}{(wvWKGd9(mN8?a02T1N#x&wYQgVa}=>Q!e6l3d$@;AFgLXHJEuV0 zT=C6$?*=5mr2bMLnSRgzNs!hK67mFf*<%`K1fkRK*J_ipA@^hESLQ4J+h~;nu^-al zbX?F^B6<3>MHeh#;h2V~H0`2^q@*3ZY%4je3}aL)P%^_MByA|#>-THKMo)~!sdQJH z5_GGX4i^qZ`tcTZrQx)Rg`)`U2^QZmy&sE&A zyaUwZH`7`xHh4rvxk}y^oj5z}^Lu<2!4A-?upuGW*mzB_kl(zQ`g$Aai0~*LCwwQX z{mNXcG^QCFZn*pja*0v#yRmNN(kNvY=1K2X;;(-#*&%+P8zys8VT!#*@C1#Y*3vtE z@^`TfK~F6obk9p13V(@0*=oo2$F%LYn;5z;Yxbx`=P?3?U2Ay!5hMhp(`C3#19XIU zo8EdDh~Gn5gv@~VdyDrxub$Uz^R8lgkU)b_gLG7KU*u!;fBkK3*d&ppBH?ApV%LkD`DMKj>t~Z9CgnH-&9A)RWFH6eS@$XZbETl4e0wV;=w}j({{{6m# zZO;YP2VNd(u6%Q?53^A$q9L4ITpRuc;V;yYVXcmy@#AZ)tLCC~OKHStN@1*})a|on zd?zrX1_V*pq=x;yp{*^w+Yg8qIRKxY|FGj3qK&_&fF=4q1Tj|}dR!hnj<6NXm>*Gj z^rF6F)H{duMpTq5x|o|nkwQzyW4U{RCBVH94_k9;{0z#m%VrsMFP5^mYvozMrVT*` zPoh;^dx-pDU~5Cj3VXBoyOAT>nrwPt{);UZ7O5D+K|qTJJ=1qqp{Teh;?~HD1`Rsw z#-L2d%-B@EiA!qf{ zDo@_yY>2VcI(tXQ7qI{HwO`mdkhwJFtp{KH8;;Mq@|=8xWz0;Y;c{VJJh3<3HhjNd zKJfTP>PR{Bs$~H)1sqher$QNNNSHn&;}7oWbzut1KUnR7rFpZ^g|O6p z)H-CSXPNIPw@KkzjpAVS7UdM_W`(7?kE}6n$H$v^+h|Vaq*&{qb9Jihc|MlYui8z$ z3kFuMyNJw!{NlLSSa#oqH>k^yCzh^J4?f4H@tnnD-R z0R^95zkl|`kIj!t&u7NR*Abs?{jz;X(8psexQuaP2sbggtd+1D?kVrzjxgbPjoo1@ z2bLXudrV(YaKpMeJ~^lKKZq3w`o?Y=S}sHG`jTr?J|z#eN8Cjr&iGWl^~FuM@aAOt zHj1>2bc*4^fJ8(8(KwKsG=sLsRV4)p=aqzb=X4d?hU;&}%_4sD_y`+IuP1>g?#AUm z?3Fmodc+0TS8@EYK6xX7W-GZ?q2B+fN^fR+MC@%%`c}B8{WGbcz`t)iH(bNZ(5L*I zLSW3oABp_V-*zGbtUaQA@SX&-pl_Is=}ZDd)*73H(0fD4^2Xs|_PUIQArA3mUyZ6> z!%AVIxt#&6?19+(EuT-#?@rH5nz=%R{MikY?@;q0mFmySTXJ2SABFitMsF1pBKWSp zb(mf`%ttK#usFRctd0KHA$O$w>RoxI$cjCQ2^BF>HZPp^IJmd(h%^A&grftTa&Qix zKYy;_v1#o_&gCa)`IPMAZF5=dMv8oU34kUr5eB8@m6mdn&a?9#q|j@D$wYE}=7yQ|2lhJlu71Pj zm;?hr#gEIdw}CN2ojgt$&qe0V^6&XG%*gC7o~Wnhw6_PBWNSsP-K%n$F+4tZ0&xYR z$j|s-k~->1_{v2edIwak)iy0YYW$E)xGRiSvr}QP_>&%YLTYRo--ve(xB&PSPGKbN z!9puMCp^-GjI^g#Oj1oF>~92_Kg^54WUDu7&m-&8>vwIw#`#0bgDkj-Uq=+Me+ZU=%Da4Z zQrhGW^LM{UQ_0J%rPHGDmIw}B4c9{Q34qYVOonG|xOTD5pZ$Y`n8ytIpDP{(xwCZ! zb{Y!ztTMANg#$1R2@TCgR3^5*Q*VzU;IZ{ZtdK@|(;Q#8bz|M4f5B>Ogm*9?AvrC0 zL)(Jjw1(*AL9a!p=NFw-%<(4gjq?rg8!-4wQ7ld02bMWfT`i75FZNpkcTm%mWzwLVY>V`x+r?(Xh5kIt!M0psN_r}ZFt+_YwXFj>a+_`vx&|*kf8^#`5)8WzkJw=+j?I~3mJ~Ke* zNG6rA3S$i%i+>Z&%A7$(kNe(^KGgsAX>O|?gl{L>3neJG_FCCnTITd-45d3)~AHzo?Uke$5(*R`L^X1sa|Tf`UjxvIBn`#+{xw6cPQ@bs1FnTaC;lqb$kL*@#)Uhp~55j>QubAg?mFO`ixQ(aV z{%Xja&9O*+*RzHk*Or*hMI7*9UqW7d&QbPkTB_i0?xgHohb+_dI?EcjRx_!GEidXd zH(i@(U*z8yHSMXs#n@OExq26^t-lcs74jjs>uKx8T(z8OV*hkGFfd{LhGE`LGnx8d z_^)Y^5-+ZICpcsUjmj)y?=8R7 z=-;IG8t0{h->gQfmIf3s>boy3#RNmTj0xND%~e&>3wr;)&@c|>CF}Oi{(!@Aw2tWL z>(D61{-ky*Z_|&<{!NK-ebt$u@aJKnQb zm+xiz-+LkO7i(@aOaAZEFyUYO|Ngl6%m4qs~*73(jd2`h$>>S4asc*tqWB}3Ej$=eOgCqEx{fsZHxi|G=7MBZNh z-ozTr7TPf9P5ZE@81h?LolJkWW5e#AKI{~7)K9JWjB~(dt`%18g}%0zZl6DTPj{+> z=~!IzZ%pNo2fgRM*u)JZ(qgEKTf2RU!-on)(xaBcaRzR#m|n`ZCGv$lVP4E|bZ5)x zOy5RPxZ^R!lpF&532ZuhktO?KBs?`}U1=97k#b>aJlb{>IF@#KAnw~73!M7?6g+~Q8Y)y+?{y~enMzG0_7j6mqB-ru91_9{%< zX>gK&pCHXCzl}Q|JrfM-|EnwP7;35tQkU6KsYIqJ8Uz$~?FQ*aHF`aL!ETaoXU1fC z`JKrbu*31AAaC-z&~mr~?N=Al%@^i8l?Sa10^d$Z69~^G!#>VSGVR(=`56@8YUvTl zl3ftF0h+4alD9AYY0mFh*51^l4NFm2ky^2#OF{A9(AZdzk+7EhL16>KWswjOJim2Egg4q+wnU7k+%2@I_n?d&0q?fOH-8!kCM+ zo#qS1j2vOl2WEVnfm9eCIs`nOOo_%+2FMTW#3>=Z&BEvXtfHZOLqT%-?_gpMBN>K< zxpyF>XQ3?9X7PLH)H~eKb9$#ruK>`lk@-ao+|c3sYiump{X3{Mf%81RHuC7VdJFRy^+9y)>WA>D+bmMwfe>TmE`X${4;r z!lACItSq@8u#nWWX%n%@xgfNd*@V+x^d|`RW;7g4O+o;A=dBqj0~vAog9|kt1w#gjb8u`e2=tXr1BXajjmf zuY#3=7QoXltnmuwo%pbHT%~5q;-3XGkQ^(nQZ@oc_P~*wn)p!7KsuGL(q0>}DJ2&n zhce-*^frcHjaA?37_`xFkHXs|U5gGXZL%lW@Vp>S2kACgjnMsoh724V3;lUjo=M^; z2EgzNLOudaDE|!>fMP)#NhTe9Fus1LfQ|f;XmiztSSd6o3d-0wzwEyJg~c2>38T5O zv9o{a9mjMKzo$TVlff*yMp=2MT}63041Sp#h}8j1P*cEqU1(P6?&GiJBS^m{ZC}tr zzz82YpvTeC*NeL_hOZ-tpOb3Q?4Y0b^!AeDESMH!En^YF46+jrrOK{7Y@b>alEPd9 z^)RZZHQ3<`p+LuzhDCho(vd!&q@BJ}5A{*ZVnqUm2L4;m_wvnLEb@|sR$fQsEr!(` zY}a(^l=cX>jhm$Uutm9&+n>e-4?oMDzGJh#SgPqi4FSr*o;B^%2{`9M<7mZ(w4VIJ z!sjnXlBU=93LuQ{OU4ziJIKC7XaOcWAPGWrB*wMo(`uphni1_h#{8ZVo@ee5u#=M$)+yPsvf_ecbhRQeFEus5F~jaxW$!qyW~Se~(vuH8 zo1AXyvOfcaN}L0KoTmB@renjeI3yu>L}Bs}%YNASw4Ez7WB+n9M!t6+=cVXuIt<3z zHCB=9XU`b+-V@V;)nH^T(6`4qPcmh3!RSj$HS5YrB@G5B8Y1L z%QUr3o090%F0U+4v8yK%U0ijuktRr*aScA9GL!Ku*ecK-AeQ#Z){UYOtRi~?_LMJJ zIkKn~C*hSo#noy`hq3HbqeFfLqK(;Drtp*)@+$hOL>+j3vFT|Z(+T0_FCu=!-ChUR z9ZxhO6j}mROx_+t_=n{Csg4d2JOw1h;w4c7lWyFac5dxJgkPR`dn|>y3SJ!G@G#RU zR(D|X!VJ{7V3$$Js*N2Sa^o7qqn__q387kEX<5!Vbj)u&zkbjiXBbu@<~sgb`M8Ss z)a@*yYarS(UPS>P1_tW?)$L3J?z;mUmZ9;BF&zEM`tq&~* zaWRSg8QHA-GlUAn(+HOoxgs)ZgQiLbpJ1R(+K||@UdkrzVdHAEZ04+CdUJmH=Gz-I zBaRLruAB6%A9QyC-~N{GU_{-{x>-PX+u6v@{GRi*3V5)qF>?~z$>#w`GnO@e#mRz? z^lNhGXU-jB!IG)dY)qItpAp_Xh|qYLIHu=Hq@)-ACRyX;HD5*{Lo$4(WdH}lHg5OP z)X*c?-LhNLuj*E+-~PsOZF~j4$n-1zIv9F-~VaRtGl3>FwwJ7O-(IyVO+>-&80xSqSp*}J?8w} ziPy6IQLZ>Mfp&iR#K%0mDYQ%DA28CoGUi~#dDp6STh^c-#}dVDK=cU?hqZgjbj_z} zCv+6-cvddOX^XlFS~;RYb#YaL#zxO^U8k{2S-`NZ%UJWXQhQGfx92aW*O%tB^PFsF zJITH>TBm;JAV;%z#uY(!@2BVGBvTv_HTn-!o++6PRhL^fZkr@|yjni7J-9HoOGMf|C^MYJGAqhSNQtQB)r| zyaJCd*q|xWr)z~^PK}=(mefgMEx$!&mK?J)ref0uJwmPs^fufB_e44oT5yV?|7Y#4 zahu4ry1M#Il}R5MEkRg}p=;VbJ|205w*(@p3cqG?yRu2N%_7|40%c|X-!Y*L8S zfrfzZ@r*V%#MBVz!B80{9` zMEFCQdDFm9!xs9xjkc#%4#1N*fd)I3yVi|QuDVx$a(*FK;*Jt}=(1`uut}DI zh-DY*$Xr&El1Xuf9w0qEw`i}$lE2YIb~lVDBR!#Qe;}KRxGk-X=Nw~G3<%J$e{j8m z!__uTN^wCRI3bcG2z5rwxIL<&t+&q_`0)#Fu*QI9Pqkx`$L)4737YkWMzA}OBQ4Z1 zEuWRo-NfL4Hq8hi7!ZxT%uv%^>soPo+_cv8_6vz?Yos6@O32E{{OZ{98T78g)ZVAo z`9q2=sGDT|np&d#c5rmKR49kGpkhcOAzq3AXW&aaL4m{1!-AQPvYgP>MXVO-TPc^a zTaOEMkG>QyQ$Q$l<5cAoKW04h8P}sV=N5D=4!u6=1WzGVg}E_c?4b+GJl|(`Y_mAo z6K?)#39@$JAVL`y5V+m4q89-kwmWFo-i257Hs>(Qi@#SV^+Mv}?r|Dk>I9PF?pkla zQbcKqCHKOePN_a}T0rQTktD`XkosWw*EBU!I zd>L)q<0Y3(X z0l3@srfIOg)~#TBcqv2xWjS+_&u;BU)^bGvo09meXTJS}E{v^;iCh@}2u@4k8J2G9 zrgclDTM4DUgG0q%<~6e?Cpy3JH2xB{Ai8h5sRWu|qmPw^H}1@vG@uWpR-q>#DJTDe zke-{$bbSkwUD>`9p|3Ob5dB>Y6{{Z;#HbVcvAUi4V=Y>=n<3cG+%N<-Q*ZW4=O z!i~bSiH#fxe|9ldNj~OX`*4Qe;9GO-bSCw`2Fl-$u)oJX!2X2jnItc4vxlSW_FLTD zoyD>#-NQ2D*opQY#{P&C2ZzxwRFaxW&DSp^jAJ`xd499R?eP?200Pofma}JlzpND7 zt9l{$1+Sl zso-cL$isF5Jq<$Ntn#doBa8m@xrXbNifSci?0tR=A#6YALuxZJ#8oP5V${liIAm{a6E7N`NF$i-g)XL^Dq%*p9b%uO znG_1>)d$E?h@Y(Dj}9yl4lR8%t`IRpc{^xvJ(` znmn*Ll4v`6Cw3K4tT_@s#qMWB#h##VNeAt_`035kXCwTt>|k-DG^olMuP~xA7C7{- z*$z?Ww@bVNPrW_gHf|5HD8l>c9)evNte@w_5QdMK@S@@8B3WyfmIXhv8Uo zjX{PE%IFl&{hU=T;Mi8O{I^q0#^;!gE20VW*Oz=K-!AR+LPv%Q9bI-t^9t5{;Fa~E zuph3_-i$&+G6_q&FDzv``|f;tz4|vJh^<^scY78%s9QXdyMQ&Xd&c zPNZGBTGfhvP@}CsxGYwUA)^ZH)fKatJ*U>Ky(J(PS}PeL%dGl~$jZpDI9mR$+pi;3 z-9p^*w1}(Au%s%xYrLwfDP}iWnz`(5zlr( zUS3Ck`50B7u;3EH%+O(W+@b2pl}9ms9&HQn_&Vj$J#W9X#s!miTqL(G0!X#jq_DBt z$X*BI2ncuk&!`fvA-JH(E7Tzb-)HXJB`g-Evq2C7K53GK9-r|g>&XX)J_!d(>B+^_ zGKwCgq629yu0^3Ct*9C!V&T>GX^G6LP*Dsof4~dXfG_A!($4OZ@Gp@`pxW zWPG5lsdHYWObV_wFBMItp9f3ozplf!yoa&juH?ZGu|5!F0u)l(L_8X}Q2ud$NWT%I zfzDWB5-9MSs4#2XrTUZ@R@5j568E*Aoe%1HhE^q$G5+$ffJLgtq+#Kt;X6@J4oPvD z@J#Oe*4PKK9ois(#mps6a7;lPr8NF)1(2eP|-Q2KZr22t!D1k zx%?_Ix)VfqQC}O`3a!1p7S67cyrT*d`!V!SL!SDh%Zb;IK9o%?{TSHzVtE2XhmQOG z&L^4SRoD_2TKY3~$E&dJ8wwIZ*Uddg%ssP3F9QgXSM8WB?Q)_$8kU+Z+aj?1_EeWF zCFHGY)PNfG{rCo*LaqBlwE>LoCY*blw>)&IV*Zq)iQQDBl- zr$FB~cB1|-z3h^Y1+#5S8|9e3?RtYdrI^bX?dSKc7M+?trfL`8<9{?bWAL&#@p-t$ z1n_v}+@Zw}(`44hvFH1G;4cMk@Q&nm>*84NrwutKZd_h+!c|n-bqdZ@0n9tCM*5T)C z)~p#|2=YqkMKRiv-uV(2n)O%g9h+nJ*3K5a6u4$~W=Vu=4QAs4V*%lU7V|45sm;Nl zoa6EUxj+Ls6BFHMsi0KPqRGj}RPP^(%rJo1Gf&NLiMH4ex#R?y@G5>N<|yi$6wR$Q z8h4256hx>j9 zJtTDybrcHk!KYE4<$^hy@s<bDY=dD`TRUMNEk=P)}*od+GnCR5P>-p=p=Tp)=n- zp-4Ege&v0w{VXNXd3jmc0bXUXOPRm-Lr^ny1i5KTWg{y;s$Q!IIB@rclzDoORKnrV z|04WTm$#j>3A+K&74!(t|EPBmnL*3hvM=S-;hRa-B0d|2Wu+>|;yoAtha$i`>7SNb zQ+_yB0lsxuX1@_b9!R)EqX-1`ne^pj!MSb2bhSlod#{;k*1hi-WGMZYUvTl&r%du% zo@FT_O~iT)I!oYAxowDXp-^gO;%+1jjnA@l>fSrvoSoT^N5EGRnWJDu_Wb83-02SF ze6@e1YF?4}31NrbP5`|`mzzqla>z4ju-Yh&v;rfcWtAE06A$*0hx>?q8~eCP znsKX!PnZGI|5kj*-}+)2P(jv#oZm4b<0AE z$SG0oyCb>ios7jLr{6c!rd)Rqv(Kd7PuW#OZrw}2*3RZ<`ZVtd^QU%baL+PZRq-b& zy=*YNVq%LhQ*y(q(5|VNR^P5i3tNqS=D4EBvhvrDF9r2|zKl31E`iU7s*6BiuzOV~ z#6}zx5sSud4^iHok8kr#X%OmZwOK>Ny1`cEYyMQ8fUHK=yBWvQg!u>~_i&4U-_GFe z+3+f2&X3hcd*k^@d26p-Sw%*DK^uk$wd<`0 zXj%X$VcyHxhoc@{_CUNxbc}<1-|)Zke$HadiI30C$0^_B$fwRC!m6&9${*4#PD?UL zy`NLkH66kXcdb$5AUZFomgy%`+f8p}PHD6cd1%=0=Z(*5kQ*kdQa-SC+}gU&$GM6T zQyn2Z3YM-Q;9Av>ha^NmHo?9xKo~wVwfke@_*r3Ffm)MFY^;T?pUu(nTT})48TtT zo;E!t_weRA0<>K7xKiIbkLU$E9xomIg~d@8l~P>GN{?di)YG9ganF?q6tz=+DK%!h z@-b5jHRdU_rJ7+D;FYjA0JN?vimh!ygIl9qK2iUEguD^2BSkrmK<4l#sRt5WRPOj_ z9e83v2>@k}#svVrsXTAl8N%daaqOn%^A7>M01DDL)jHESWVl;|&)m-K$nOu(G=!J` z6sT9Cje3rQw0hn=9jBf~FD#&zho3ua@3)%5R}!^T{GOyW7lp=4SyNrc{=tqCt)2UD zE1_=ayo*Y7C4JI4qFbKbmiCePs)L?>Npz@EHgWI@quDGx^c6ugF=mf-ggq9pV0iHl zzE4l)N^F0HDX-?4YP+5s#Z|{asO9{3)_62&Kd9!>g`OMdJ%xt} zbsG?M)qmjim{fBcxWF9`ecO?`?Ol_2IkTdlCrX^XYCOWb-UdAH*mFczX5PF{7*o~;Xpx)fgm|_8OE?kVDzo%5%_5UN}-*YgZe`gN;tq@fFbRC?V=x* zYwJXJuYo(hV&vd`DHkD^j3r5tMs;z#5=?h};rm8=ZW+ZGhj%N54@tKfl!y0gQgh{LqA}5W?#YuF6OUA`2EE?xf;Gxjdo_nt2>BmPKRV0*4j7o6 zO39x2{_}hKy4GU@eJgh7s^p86JB$6F{?hWJ<^2@9x4s)W!G=>lWJulBc#E9yYLM(E zOI((ZDaBU&_b{udD>?7^Pfe&m(4FW1lkz7|qk#zOzhVL6--GVgvHz3m;J-fuC*l7h z7x=$9$;gBBe>=#u{+}G3f6hM~#X-;h|N4#O>-?X;@PEAj|5xvEe<6=1bSmFg++66u zQU#LkUynfzXtw>53)u>)WoAy=!1TQ}Y{>M1Ai=R07G9n5u_z;*ExF|`PFt{+HZ8yE zHYrO_X`LgowLN&#I@azU5)W)0x>h^5T;-Z>c1d!>z?D|?uuAL|4DJw9Z1 zXRNp6dt&$`4|#G`~&E(v6jnFYLh~o|u40M7o@>eDfMDjP#2AVhP9ef^kPxf~P#bV1^EN0VOMpDE4JtG@`7_P2)Ig z*@jaDqnUtv6*Z~qJ#YtH;p~_fl`~>t>J5&9f6lGs8csFVxq2YW}(c zEE`BV1e4|)mz(;2&Eg8cX09d{KIxv^@Get*q=sh?{veiN%U6Bs9(B+igR-%48QMOn z>JzxmE>aDfOwQcQLn&!e6NXfdn6RJY`k7tKAV&Pe_(K#_RYSqcU{X4mC)^1rCyR^s z;QO)tK~E|+bLP}=iqqML3JMBW0#yQV^uSq5(p8jK*>lO~WigQnY%65?cJ}trS|SOs z6F`Z?3lV(lvQNP!X4q*5eLNP(qXvEA&S2Z0 zX11pdiIwcBEesL5trHv@#A@qcivl!LavxZMJsVpp5H*SqXB1+g{nW*OIP6*+eAWG@ z)oDLd#xxfN`z=H(V5iB0aIv^Hjv>expo2!QO=mo*B{~E}HKQi0M=Y$Z7daL(cT(m! zqnKTxZ5(%2tBdZ$l$^yk4r<|%3IuC|HPo~xQ(}6@+pL0%Lvtb)rnj!R^4BOMAyx8V zRLrB5Q>q_kyOVt}JPM7|8cc2hu1)5arYxSL@dV&d=6XA@_L`X*8&h7&M4-1>MEEV; zWN@%XB=9n;uHWqq?5+j=OPR^n~@sw{F7LZ(lg{Mq$%k@%2 z+_^x%p@9OYfjv&H_13JG&s)#;;ygK*qLmt(RhjV;~ zzrI%9e^Mhxm#b-MoaCl-1U@;{AZEmFhM8Dr4H^Y?3+2>^`C;s}r>3{V8J5Upi-k)G z3f5yF1oZp&@3Advd+u90X*b!LdR%;X@a_WmD!zW%&A(g}*I-5<&II=B(=JwU6`tKbjQ^L-j} zZ&;k zRh@%~4o@P{=0LU4>Fi{0PI4eOJ{Yr5rbSkQ_SlG^6R~hZNF{Q!)hWrFDA`!bJQsGv-Fy)a$dL1G?iSC>h^8nKH{~D# z7IN)rbjWu0>`C29&nM-@GOJQ3C+fE2?WmpZ(?MDE3q>YW3x5I|ooeid0v0dSesf0V z8AC6*Vc8lo+8n8^C_2e%uP#xS42gx>ov7G%ZGTj4pEiVJQ+uM1Y#MDebS&<7Gq;`}-`R)7fAl06a{!^2#KC3nnq_1QeIKd$44<8f7#A0s zU2~@3-4EtZ;X>)csTSKYI-5mTT@uU*I<(z;a4U2M|BfIAgDpW!;yeK%LFyE59F$pe zV;iJ1edF-?KF{8AG6=F=2(7PNxuPa<1pd$7-c4WwzRu#o&u+Dc_oZO_kO?EP%bg0vvF!hX8jVP?c!cQ_|}4YJ(Mco{>mNx+3trgNG+wDF=zW$S)7d z9|mo{9Dezeq}&jyJ@0&ng&og6^%=vZ2R7^RONi94ys$kWHQ{Aa(#l)c&96D)9~*2M z1~{Q<#)GJ3LO?Wq^ypFSx99eRewKvmRzX8UE|2SPvCs?%&kt(%zVC}a{Cpgz*eZr!EoXB=|(BUJ?R8}gkxor+yy1J%ncxE{t_uhw@Xd>}E zR$nBW;;1W@>jmE?`2PtKM!5}55o~;Z$62VKY<47b)q@oR z?)uh3)3xQ%W!B2u`<#1;iPftXU#nu2I%@nPhz{?>Hnkc?M;fzkSg8-%qRgz2^6nXf zh)Iq!<*TuM?sE769~f+WxWG7Da?TGwd)4x%SO`Xna42RQPv@y$^bniW4PAbcU|Xog z`QdeipJ(65UDED6;M=0-CckQgr>P$@ndit&Xtq0dx{LpDq?{Je100qb${kdSH@kr-Gt72$E)x+HGLS>u z#*jxhaD4IUy#3eqH)R!6LpgtE7Hu!A((wJ@ePc1;gUn@lCXH}s{2%{9lLJhoH1G)s z;5EXP+x@9r_ASX2lSHne2@gy%)w^;=dm;;H^O)?`GE<^4uRXKHWaei3rR~Jm)>xwc zkAN*i=8I2khM{vtQtm(5Sy=&ALHD^Scv!ZKG`P2Y94i+IG!yy6An&=oWJeptBrab4zhjQ*OW4cl{VRk14^#q|1d7DUhB}2L+V>o zO$x(MSsj7@H}r2`6I_&+)*_;!nJ@FP%%NO;m9+W&6w4VkaM8oU+$vD{q!%%lr_)%R zv|C0A8Bp`SHVt_|T?PddR6%&y-qiK;5=`uZ1^F4bg=O>J_D%ZtTgj$pJLXrbN~yx< zx!6Yz792-A2Mj(sD{30;noMwgyT1CoCC}aBrL691aqPKIaS`FwvavbjMy(TDc29}o zPx>-Um<=YY(M_wz37~*@bmZFVW7?5Xl6Gs_%?y}((^M~QQ@zyz^DmO>I-@n5WH&6c zsQNh4F2~T`#0riq__}uIyTbX(!uJUaPv4b<;a}qL);!@Wngk_3Mt`nw)!)dE20e}d zfEzlWR5mSMziqTV)%?#s{|LXnNxDSj{icO}oxwJ@tp&q$WYqfr^baRCDo#jEe87hGIWnsAs=*{1FtfQ}%O zplGI_S)hA8`EnGi-Cw8e|^U2z_Ub-sZ_alBSaPFVLPemCBnw09qeL8O264N z>6`Bo>k#ja{TjL(lnZBafkbf4`Vo9x#5>_IHMx_ioFiT(ve?64g-g)+((S=rjk1+e&zP1ixuxR?A~Q?)yVVV$V(oL zM^ML;>Xrg-8Op8j@aOu{rUc}dkSNRNX6$WlZr%gMAhd!s8ZDMy+CAE)FYRB!_FaGj z7Ky&^n%}J4iHvN|m;a|iQh>W2c(O-dPtY5obbK44Oqh8R}p!j&#Op|L}8SsZn zyACM@W;V_ARMG%*mH*T}II$wC+uYju##ULG;Tgi>^ia2m`XikXCviX4a{=bevrpo6 zTOv)&BK>=pahWb8wZu1{bw;wnP0ZtFCai)Q7|@_bR-zu8rqY>%>HSxkZ5=a4-QN#K zzR+NGYc$5_N`XwN>tAu)7L0Wz6uBq1_{0*=n>#5%sl-AG8AJ|IYl)ffz`Z!aoaBj{ zNMj`~Z?tQk*XZ8($?CpH%n5+d8Wk&cd0%=*fz{w(7k)*Pr!kwK0WX;3GQib%TJ~VX zqj15uD)}z-<%*a8|l-{L}At&Vb1X(eqHq zCUWq!$&0+dY7!yZDV7~_d3UU~h6QZyQ6*ggaJy104_-tmkKr9i5_?kp48dNg3{jml z*bI3{Em>@gDj5!}UdCKHbgo{z!%(fmimH%X5<6$4|9w~C%+bpzkTIhO<9OvO;1{Cx zM4G%D-|X@WTgS2+#DZtvesj%nD2l+km5;)t%0VdtEdum<$N<5YpzqO*-94izV#UMn zZwp5`_I#-AAuLu@RMg@^DZCJ51`m%ouX(k*&|V~MkYe?p?C9|j;}w^8>HS!d*WJXl zRH?C0Jp@dToqPUoypLYwR{OGk&9jNDV zsXuy{81UTA;RvNzoA2NzVLu5wM1-GATIv6_K9uxex|%1N8O=}c^+5JQ9)#5mHeJFR zj8Iy&c>Wha%B@4I+Woj`9-nk|b+t}56nGR(9VvZKFqN6M8j_?_r(adL2UOJAqLz&w z=aSP=A=ZVp@rztJduz4)qcqpO$3Uo{E>B9zHBz{mT5RQdHdRp+UT9F8=ofkyu2+SI zvAk%NVlbblN(@>TQhREi-sGUYPquRJoBgjb$TRrUl|ll5jP(c%zUOS7f4hVf7O#Bz zIxltI=`zjSLnJD8N9sFdBEpx6IXV-N#t5q1Kk}u~I93FK=i*($6v87g0aRm^us4Z$ zWNe|6PZ%^XgC8qoKa+}m;204R5o!hss1)@%BzjJ}zfh3zN z;Op$^hiN0A9{w0|$2=o*YWoH&za;h(qTW<<#`}s+I1{PWmmHlTwh;f-jbeXu`p575BKrWA-%;QS76B zIqMhGu9@Sqp>jGky&URx#+<~4fZ5zawkpdtZYD>YNc~M%P{wCc)6$UCTQuZR((eYl z2Y$?+WB2#R#%ul8rX{E~bpVog$%E)~lafC5xD*e0&{Ipi;$BhSBxHHPI)M*tp2#Yf zT!!2CDN;=7$j-(Cnb^X3~D%dR|I}Y_XY-7WG{5EwOw+1AHj835^xdXPRjY8 zO23x+mlXw82{4MQ)co7Ik-P?*v!2Dh(Mt^HmQf&yf-nlyFVZtv6Qth8JHMTT@IfcO z!FF!$dll)K_Z6-Ixr1dhO`_Qx0`6Yd9f=m|vj2;B?OjModamXBq$C1?>3BDEhGA%2 zXx{QzxOfKHR`hoBUmt3GzOhfA?4VO~OqBALhHN=-t(6M~}NaTt%f^ zZaY=`DcZ(!zG*aV#49PoS8xV~7cAE*8k{8GCCW08=Ev@bPjVbvr>RgT zVsVT7WXIz=8-t#~U6kohluzWIOWBk%H8!>lfReFq7g3saaLd@D{E453O$HfrXz_W} zR#;aF+FZQIO_q9R&c8~UP1gwcX~6i~>(9?4Ki#XOxoz0ME3rQ4t;2FH+O*Dl<|>S| z*Bxz@!!y^iDefevmL|nXpnxqIbLj_1>Hl~sx6(yhhNc+Rh0BE?tk@wMeqE5@T~NR_ zW3%tU1k}OazCaZ+P&kHddDO!6mheCQ&o?S$l}yx6P*0p}`?e@yPzBmvNa{buzkT2D z+*jZPEn7s>IZwBz!T^ zl5ecH?_5ZO|7vk@6V=}ezK?m=vGgPUd*ygKS%GsM7|nxgho%E%!hub9Lp+?FJiMGK z|9wviWiNj2h@9TSdHJCXrv#zQ?@jslI{B^nwd67As;?mp}@qUuU6=)AwdnvHdix~&M=-icisaV#O$V-18cP#zH3#m5a&5^NQ znB|llW;8jJI(baAOo4orw2X~UDv#q(DC~fvHZz}Pn?~ecgJs9RP#~m4!eu7f!HVfC zp@$oZ2l1L&)7h3Wn5wT_huEacBX@7Xo$L#1SKJJi60;h1pR-CSXvbV+IPF=lVB+f$B;UJJ>ByB@vvteoXy2E{ zfMT_FzwIE`@zQOR{ouInF1LS#$F|Qm)XbJ-Ru{JJ;11+7Yh0TeC-+OB_sDNoum;Cp zpZESLo;x6Xc<+4N^{inRgYO^bC)$8*17X78)tL znDf}q$b^)MRXEC8O&Aab(hKHf5vfty*!ZxmC*A7;dFqE%i3y?Gj5zSQamg24HQaUn z1__s(=$M49p{G~9Znpc><8}l4KIR(dFG<#y(cdjb{2V2Ai$(e`vtzN^q=*20wxP~Ajt6z~Og&1VjJ=)ou@?<;a#10MFFL=qh?eIA?#%NB!G&E$V9p4b4 zi8e*{Q3>L{W|;+ByD6AjyD6Z!rUQVH2yY9<=QR*JTH4#oFh)T~X3g?8<4EAFf|-f_ zD)%-aETz-*+}Dr}%Cga*l*uKfoR8AfD1ur6*X>&Qee!3T(?w6AK2Sf7FxWE8KL)4{ zAwSY;W0d^0yvb#JeJC%bgTB!Sfn(D_6SJ6PYCbA*C}A12wbyxJ7XXB0NOWyQYT1Z) z-tn?;)VccMtk>sKFrF9o8D0s9DUlK3@=S^WV>xT3Thfc zalZV9$vMAUlKWp!YwfIFHKrl}YWTN51dU(a+a5CMK)@)-CIFg;XAEe`3DvzwY{{Z= zWsMn<@jL`9gn#MBA5b!HRrm7zeL`mCm$1I}du5tBFpH7(N^`+MtJ>%XDq-TRk&rU% z!-#Z6AA9}43H@(~pRT7e-}dxesH&+khsAPp{9=cEBD7|=Cz90I?URg47Oq^URZqVb z9zu`4tc>zdW##UnF!FeluQp6zJl7kVq` zia2|m2!E~CT=x67^yUXQCln}w<%GA*Ihh9!u_vw1oEZ(zjs5%I?Q0iLu^s}mk{h(J zz!7w>&X&G^$UoZ5*X^R{2CbA+m^gz5hY|qy#m7R{P=Llr-!>aWHGsAPSAXU8{#{{w z1rw766IQ0^7%^1^G?cO5BykcDFJMa0XNXG%Jdnv6V4i#?y+`Qgq$TVfnQFcq^1OLr z#7I8GG6LQLmu70VZH+#6N9ARRt$^IF*`vUr&IfIJ zChF*+6NK#pJ^ii9l>B!ewT6Xu!J~t@HNyb&0Q*sZVhU;Uj*7Xtv#I!>8bFMqrVK5sR>C(=d_twX~~?2O#eqW6UA$nljYe+>M%J1YW81}o8EJn^$( zLv{t!@@k^<}=6TT=wRu7$`%)(Q#1%?pSg_ef%av3LJpP{~l<_H34sSK>XCKpaQVD|!w{ zjiLo)?fLWuT`*6=(u4cUNG*G;_P%c7DDp_m;dn3VJb0(F2d+@~qR6yH>q%m^Os{`S z8quTap(Ng5c)H_Rq+Fhi{VkthHIHCT?$thxZ=d_yD7s(93P*QdwFB`4N^sKlh!%uN0K+6H!y&iInosC8K2;UU;D9Sy z9i*1Op|Y_s5yj@!b2x4H)Ep7%AQM3yeDIN-@5fz6n9)4{vaWxAOY;@B@hN)R@x;2Bm+;?i$!5@ZM`V@(m+t$P8+dOxQ`Dhom`O zLqnih^m?2XwLO2IobPC`S~eZQJ4;QXS{$<@9Swk%V?T=6xPN_6K#ts|4cKz4L?7Lo zofhvUT#K-e9_(dyFsFz8^D7BhkN7MwhZO$bGR(v+kBJr>pt;0 zKX$D3e*0^BAXJdErwKv_0XC_e%`4S80=W>*zdlG4lOL#qdokEjW$BQ$ft@9Sc1#C~ zXU6-?beWu{Orxo*Q5rMUxUYMNtx7X8a1FfAc`Lq(<$FJle%h}@KDKFWYpyy4ThcmZ zmj!YrUNd9O8CD9)%GN&MN8?R@j{&{LQLI(`wa0Rsb?~uwdDEXl&C_15LR6gAMSRVY z#8p5h_u;6)B?3(4(DpGHO!<#O!o&vuj1fiVetx1_yu|!K+I$kUnD2IAytOT{d)8w9 zOWgd80XG%!a=zM^C)#z0QDH)2XaTJ~->2i&zULjj-)nz3Fm|;LO)V#~OkfHxSPh7F zxEscQ9Ah|iAeOu*rFSSrfbZiiFz7HKGpiABL>9rl#=y^Zi7!;>n3(bXu1X=$qB&pP zwY#SzY&g-sFkCm$LbN+dR0t2*+O=!tRk3?Tpak;1}%#8#573o^)oj{6OZxuC<4Ev}x+jL7|&wcO?Aj41YZsW3h95 zOvQvk{LZLafz`1)t93khzP7ZifoT^a2lrxB!xCcR@BJ%>izuckgsaGq@e}JpzcaYf z+rX78PHp@-0u#x8Zd-z5`HM9@gJ*?p>x6P9ZnAEo94FDmWb@UIJlMUQt}`8 zeDC8BmvsFn7+U|!rAtMEWWfdxtOeq%opS2l)Ewh*8nso3_&OxDS2|MQ9oIpje|kI; z{gg5E;MfYFy_7&vM=b5~p@?(hBJVl$bdMNwb4zX9rWzJo7O(QATpM5Skmj@6MQm0Z zj2+VPpEcN!_IIQcfRo9Z6yGEzl_D$G?C7PJ;dSAg(m|;QrCUNL96M%qO=c5w*^~I& zcYD3PJN%Azk>5igh;z^Y7OKVx zD;EE=G&imR#pB|#z^tRC8q&hXAJz42<%f!~BL*YyKkfqn ziPDe2q4#s3^>qIdlW9&sJeG2-e8Y@}^B9_C0@mQv`iHuS3cGgkgtu^JtbP|WVj%P=tYZEwv+bioia$VMJ++4CDG@rLkniWb;lzG1+{Fetc_ct+-83Wsx)h~;(vLdV@+Bb3BmJ<*S&3T5idsmHx$`$a77 zNFZ7w0tG~8F;|pr0C@x*J=!I}>J(V9sy^CWgzil=i`8xhtO7qE z+WMVK4U=sr%xuNfhWh5r?EN5z5U=VcT-6R_w{CTxoxyWynW}u@nvsXx?t;i3RibhQ zfYwnjfILouq0hvF^xjP~$|br3AIA2(khuuz?!Q}dslS`jEdopFcKpx>_f5tu3D#2b zpoydw_&vzV%EGBu#V-vo2%!a^cX^H1bz0s;1`f=W_xE=OPU<0&u6_k1>d&ZyLzmeC zfjHj4h*-5={mO&->osQdfn7Lbbi?CO?BjyndDEk25KL-}cP*Fyy-kS`>}u|2c_JE3 zwazCYXYv^(@4&W*6(I_~ocCsfcKwIC=RRF(q#M~eazkNLXkEYW&+RX|!rUIAI>=#-;FH0pQ=lgrF4 zKY#x?hBN}*>bPY9q|i8Pc}&00$vh|(7AJ`8(hymkS>o5WV-|*&jI0N7=(qnO?yKhZ zenU43eeC^?dQYE_UWE`72s{uEYvE#k91;|X1%Ltpb-kw+Hn-Uju|8ri1FX90uL4kv zOCDL|HG994>47B>(Q;&H(3SQ`<>|W|nMZ9qLAUhP!~_cd)Z~<=$X7f?YXsftgtr>6 zgwy=Av$d!`&rsuBcEx!+UlfTqpYiqPzpOiBVp3jFQL$XOqD=rmPee(VW?@HUyA9hp z-*re-#pM^l>t>|!R`B`Mdt1nd4fPJL&cm%&~k!w_WSuE`lmvo7|y!uXA zzHPtPmq^{)!;MNFvp$Z!J|&G=Bk?NgM26lcKy}+R_&u<7Lm-0(8DN(%G4!l{&d+CN zXN<9u->d8)tXsD;T-*MD#8Y2hC|a*EUJ!?uoLG)r7+#$oml^#m6Mj{h;wU>3ShI>% z-DpWnJnt_q;c;^t{+($4WbDeK{~)X$A9fp1Cao8_s~?rKxbQFf34C(yjnB*f1vIv} zrIuVfA+=BbKgjg0^uY2+bs0`Y0H@CQZ!e)*&-=Oj4SDGjqbWnRa{mC?^0hlpt98V$ z%8ERmqmzE=2=GKs08bZN3#jYKMlbNXv{>kt-ZQkMT9LW=bA~29v{#cAG@;fh4FsgY zV~4OJG|iZ8vG4B2topPQTV9YX5ho6g`S_+j_47Uluox+Vi}n-zr7)_;9Zm5F1u8=! zN5F`MwieX>{qQFGBMu5AmpAq8!~_3acB~YrddRsck=w*FPJw49!w{8XYV^(zE?=lm zKkpNQ7O}4XGb%mAiAg910qg`Oa`(oI-%}r7ByEO88W4bAzMdBEtDBoM)rE?Qc$FZB z-;ECqRyNEUd-!FPjm7koi{%6xEctG-fP3{%C>G07pIBpYk6rS8u{miX`F?`S4M1%0 ze5Xitge3R_?&Z(tnw&pVJ{Z~ff%GLySf|eoax_zWXn(MwJkH6yBL%;;%l>qCJXV9W0wF$(M!eb z`Bt&Oz*GT>VgFW6WWaDz(9S?RHA2kIe=maoGuYo1$8E-@- z>YuPjHzC*+Zv~fnV$P3LVuyzx)?gtt{{(#Y)@z_6B^!txJA#3>n#x~l^_MoOxcAZ; zy9Ry<84v~h31|Ztgb@9mudFjg%h~a!6^-`(UneyP`umSr7IQpYdknMLdm0M!eV>4B zT6QBSlTCFO#Sri8$>|P0UkVy&jP_}oTJy?!#~S{a>%3aLf@cDqxh`-6<*eHu2;I*+8T4swIlNoV?p>> z+~pK-9rGMVfgSjchMELvyB|pIpw3N9wK`gWltJDO0xO_<+8?%#4C8yGX!U|eA30-O zLS56N-5&_HI@&lOKk%E3&E!o4J_Y8y{k-CXLtU5-d&by!6AmujIQ6Y+0p~i-NEuPP zTypSepayxFNW8Rfm4`$F zF?C;Fi3MaR*rn}ui%f4OY*-|L&L^?oeC zH0qKK7}bW}5V$DX6|Ky355x$q1V!rsk6disB1odg40nhFWFt$ES20m;sx-a&<={tq ziO<6$0Ch2p=jRXMnuAN?XT3X|UhyxSUOz7{KoR%bfpR&akX1dxLkSa8yU8OUMhUQ& z`0C`R81OEG_5Jo=NH(ERLP`Lct;3b1VA8!4PQilk?i!*^bp;>yH#!4Dz23Ai{lzI{ z!QK~lr2oicQX{FVx&+^c@IZ+L5See~s8^-7$0H(<49-Jpp1u82$ie{69M`*w9J3BO zvi9=WtT|Guju50tM;b3)Y#cJG1^Ku!w0XFrFdXSK7@UA+0%`VYL{O6Tjxq22NKD{Z zIi4KDQDOF4!}m#yh0^cYb4EUPbFHh3);*jp$!=D@7Wjt5gK_&7o82XEnuD4-a-J{crA^KtAichuDHAgsmmvc}6DjcAGpW7Z!cm5b( zw^oDTLgk6-vXMhjUg`Jan3&Q`Tk6w7>AuBp9e%qp+Kmu5*j>G=LkBRLe-A2O*V9l4+yF2!{uYub&d|_(zU4W*u$N=%a+Cyd#ES( zK5*Ig4k#7SFQmI5e2e$W=&19Hod%ZsdGEIzi9mzY%&fn(9olgIH~#1tngPyUIOxIq z0H1jQ+=t@>ZFbn+gZ3}onk7!4cEpIY5)op%DeeT6LTHyBT@W`&qXL`4jwr|fqiRycYgS%u7H&kIq$k|v=% zK_TqY(BI1cUFZ*R2_iO?QEqOIAgpf_x`BEe&%UX`R6#-um^$BvW$?V9AB32im`Nh$QoST)I$@o*@iPHUeKl&(UII zcjY?bktm3cgmM;_1Y504$JtGfgegl)G*KIar1|k<9hP-NFqusZKlZCTZ$=W2r|72} zybtrCm;&O%6I3|gBR9IGaBPcwVp+xaL56JBSMQ%gx*@K|Y(};938ncp1#N?q##r}v zML7vkH)cUQ@pFnk$P5MX<~Jwq#_Srgo%Tqh`W#HQl~i4z@_QC|D_Ro(3TWdY#z{&# zH@C4F!&BVbt+TsEtkG6HI#RYcno<-kg!uZYtq3a?Ht{-k{%oEWDj`xqTi%`C?gQ@% zVgyl*LfB^GmE~7dzLKA$TnL>qCk00edN_xFXVxbm(hQisVBs{wL_fQ=6w@a{pimv`Xi{MEQ}A0? zQpmGhMV|LLc1~xkYe?G>bWIc__%m`lc1&DuYohDE0vWP~%uw+f4HizBd(vEk7|DBL zoTz_X_8MV6kA9w}jN8 z?Q2dR>bWbMyyPOaUQSR*S1x*0rRPKBEk1q4_pL$TghuV`IjW_aNrh@rNGIu|%2hw}g($y_d%e zCyF1)D!QH*al7b{kbR)n?WxZe#;f|j&t6Ge%?XxGP{=Z$G1Lfdz$OzT$@E_nCrAJ~ z`K9`XKF;fcTB4$&4Wdcf=jWNBoB`9ro`uPbIX_hVMpT3fCA2e8NTi=Qzo9d5{WcNa zo5^j-sxO~^d6O2rV_R|_tOiqPm-vp~z|RRV+1FD50kH02CcBq?h5P(Hq92ZdBa`+wBhXYC*{s)n_FKW=K!Dh!1 zjMo5+O-(Z?-;$QMO(ZgCaL*1RW#7opWfUdRn!O8ngm>G#I;#=6I)IPbG1%wf#_=d- zSFU5ma}Q~eWj^kjUs6*VcG%9To+#hI8CY%-c#(O&SKaFa%UC1(`I1X%HF?Fz83^CGBs9JjLh985@3%+PRXMDqx>T_Ln zBeO^5PJ%fAZHisHs=6BD)TeC@5Ehw(qK5BkRp`=Qvtd_1%Bf^`2v$FT4r;iP>14B~ z31}-3uwljVAak4+TgJ!7H_LxmyjxA}HsCT66-@k1n~TB?nq{)WmdjEAK?wJrSn;T8 zHoQ^ooi1m!E?@KCdCF}E>b3(J*zG$lm~UL$SbAV({8xZL-E!nd>bJS#1uxfFXUAVoOWC zD~bfWS<$K#k$8W6gAYBvIqm{n;Qm9vrz=!WsXEZ*(TS6L*9!(D5lQPepyK~y!QkF- zRe8tpYa286e;yb}a__37`707T=TB~OW!pAF&j6(mtlc6Ql?U`uJ*;g{WuHA$B7>`R zzS~Vnc<2Xryy*cf`V>qU4MhYTp)DJQ&o>)xKJ zik-kvI|7JCyfLXo1BL-`usAdeVKO6U=0MTEJIqa2~vkrFjS=L=ynHv zwggjIUP_2b?v-9pbdHa>jDs7;OVRqE`=eJ^Xwfd;6~4WX@k4ni67(qYj)VEJ1H$3M zEAf|?-!jGDz-Mt0zz+p;HFInwp=-?GIH%BO#^qC}OcOp@hbAEILt{AYo{6c`m}9{d z*2RgFneGEm&UTzEZGsgzmfN7L1e%+xgK##63;l3QW&Z3sdoU{1GPJY+k)7@D%m>bxobdHTz32 zk%^qQx_RpY5}g@QvCD2Nlqtr(rMX{zZJbr{w%I$ljeX z@YZ|gQ>E4^o{tB4VcFz?Y800@g`CeWub?2|caB?#oUT+j`K0i|PzY^)qOgtB&Rks2 zdcrPuya^x5YdVK<8soch-47V`pV97hcDWPk{|vn=@0|3O6SbU%>m^8;Uv(IJMgDv0 z_FW+ZcUZ(UA(AUjjMI5m7r=03C{CEt$Jya^e&f!U^Nk063vtM-x!vNyp%Piy^*}Cv z1NLa3F{a8dxQcL|w41`=2YJqCn+K=Boi%yXF+iboTV1!-XuvcVi(2m~+*aAz!# z*Q(cgdf(wbMl<8s6MJ9y7j!Xq!3<&JOdUKWXvX~<=O>Di)2q@Bye>qI3Mv%E-oOXY zkzU^uC0cq^J7&Vjmdkn#T1)h3h|f9Gai)X4Vol&%qWkxcZ&K>zw5VCjg5K)BbK4%h zZ`4ZPc>QMiPl#9$L;m4>sv05~t2$AAAju%KV74LckRjKlw1q`SwlZn6Ze3VK@v zr{e=V20r7joL7nr%Cp7M`nJ!9?-HQxC~U<(^Ur0m(@?v2Z-nW3=_-Pe-!?R* z;n$sLDN<&t67_=1Wt@@KYCm|>1ew^lE(PK&&$*P=!DX0Ea2w?C**g0z4{l~k=NV;v zH#{M|0zr2_WV2DSU|(oe&|OUm177+MWdZx2a%~HhQU=8Vni)$d9!nGN2R#d#0)NS6 zm+fpi{Rvh7c_mb}?H^}Xk*Xi4Z1S^0M8#6oUO;w1lEJHpf&-{PaQuEBP_w`NSF^4B zBMIs-Bxz{0}S$YzAPbOZMI|k+2&TMeKnV7TGk{GB7$?>v&D>%w1V5l)si8_xG-}m-}Xw1jU z24R#ph9jQx&}*J~b0)vgCgq@&ZfQohq&y^miAS|Fp6t1%AEebg-bH#lC#8-?Skmqt zvVVCA9I$SpYq@$OUjksOdTJMXIh*X(KUee_sTFH;(B_rMELg1xBMUkkxHwxMP^EH! zbOr43BtGPDw^*qKAj#~Oz!DYO>;k3Ez~B$nX}ON~)UK7R8uN_>R_--2!XX-?x*5pz z@6V&lKh=!Ok87_7=K6+wZq){J3{EEHy^Uqr0{-0?^yYH(m*i?&`vn|(; zHc((r8+S<4^S(E;$SLHCa%MGTm6?;o4uC&o-g|40`rEl5!|(r&(S6=Q@BVe;9toFK z_8?$rwo0Ao8p@@#v~9L@u|UyG^_yLz>$1|*OK#)VKr)=JeN$6X{!Hh)<0*m^ zolg;58ei#vT%{MUOVXyOmVW`pyCW_;OuWppi*oZna$ldt{PIsl<}CjYs@?;v$t~Cd zji6u!J0i`3V5KU(TM$K1kX{v}6GS>8{3s$SO+<`<5K%e;(mSz1M0ziw8tH@{LQ8lP z&%O7($Cu+#NF)E=vuD;?vqlDf{r~-*m5#>xFQ@;*tHoub{N^ zafJ7pu}k{|qrZGROl6B6_`dA9H^}{{C}Hg%Px2^uwFD5nyT5Ga`?#tC?CxIvw2#<3 zc{ZF^IXpo5n1{mFkKn2R6)LC(5or1XJm-6-^KF-Qz@Mz#oEzS*JNYgu4bR>zwhM=Hx z8?`)u36eMHQG_s8~rhNOE}!)vF!W<50gAJ3|G9j$j8mz_t;u zE))g#y9}MrzR3P=yNf6k)Q8IJT}TjV;^#{J?r=W&XSc-!J$TxAJis#U^vEMrK=-fh zfSrPd_RYF8+XWP`6EN-h6=~p_;Ni>3cfbE^KL~ijjp~mVwuEw50nza0<<*~mT;IH` z{^s_L0_v2ls9!sOz$JuY6hEHW?Ec7#FK`GdoQ0o9CAcJ0Io1Nh!FcCOPg+Cq0_Qg zek%&bSd}#lKU4r=tddYZ8c1(QP7#4i1eo%HV&Y9LZ`bj4W8(nxh|!ecLqUPa=_K_} ze(kY90DwQw{_E1a41nmVtqz4IZyId=(M#|~1F$rK?$SNah+=YbXBD5POHXdKB)Sr6 z!}nUt_=z`318xN+L?t8Y7uce7v9pa?0oDMJ4E%|pl$J{yby-gb?*46)4}10M={LmX z6dw2_)x!m#u}bv}?nis%$!=4VA3y7NLmgYN=T)!f9Z$Cdu$(hUVZmOr-$y*55%-(G z_MuX@J9jhhfkx&`JPM3K>IZLK8TXvMhas`vYWpk*GR&J(*Cc+VLQnrcrE73QA#!PI zEH`o=lakpn2r)22ALgC*Uw3hSyqndylB1Z&dW5Y}aZ>?21UmK=4pJM!g(bZg*jdsX zV-KlZu@Z-6E@PIB-J|Sj0&&JrA^d(~0I>EFq2G2`UVM42GF(OMIhh!KGyO)e*unp$ zsqsCHw?CPypXXOUj^HjQ8($@K1u7q5j->vb{JLPTn8h#MWF6Iif?kv*_7ZC(*xJB6 zy$9<#SvhwA!G-Ock->!0#^Hc~D*a!&i~>SyxsvgtFc@eh)NVBu%ZGC(pE7|%&l)HJ zqYgyr@CSlu9N1OJVPKhN={ph)5eS~ow?p3m%sy&OUzk zI_O}|{2S0?D69-(HJB3U4OLp})LLrkUa$^2}}f}YGDn+Ss=iR%(=JzzP`r3a}rK6esa(EPOi0j9OdS=N5NE#Mb1sl zWtsY+x{C@N@hh*irF3ceJ=1q2{Ui`VczE~? zPDGPQe(ry9g%t(Oc;Q3~&%M@c7AeE7zp~B#@%O`{4RO%FD&xC!8sroZ>Y&{L_@ks} zDsXnfFJ6zb1N4|SJIIdWmG{*21q`_MN??jRbKHkVplOPS}AwH%2+=Yw(3 z>EGl`gvNUXr3Whi-E8b!e>h+s*+;(qfV`S}okAz3cvYt5I&hVHK>n(isfP;u4EgVh zUzIBBPvS4dgfg}_Ck~1OvkuJJPHqAC=*2es+=(Q2RITAa`*(GpY3CNki6@a;6!^yjV52{#5Hh_UJ&zQ_6IkJcz0d@W;M=`Wj{2S^6l>&f(Kc;U) z?NdUwe98WDn15RY2$iAGfO8N;JTI7a8;oISM}bwm8UWqz72WjT$10zK`WGf^Qd0ry zxpNRCfMVN~fCz%^2gg!I1~8oEob}e+Gjc3!vx=ZcNRPK)S7eLw5d*pb)HTg^Qb}30 zoj?`?e=$V`t(xi`R_AY=zqlWdnwm>;A z?b83IY)}21J-9rfJ~Lg+dh-qsKU~@RbtjVO$u60fBssD6>(_PQa#w?Yq(a{182787 zJX|&$nnkb4MfpEETNMEh2lxaY{`|Rlq!|zD8K?^NfuFL8P#Pi3gcMQ>eNRN%!DqYq zaOI+s659DdjAxfP5m>OJP!Z_}AVBd$XM(katPH1-3G^xezV*un$=7MZ*022_{tr6> z7Xawu)~PtNaafQrnB<{&#a-xaxV+lp6Up~{J18=tG62K#pL5k;hP77dMZQQhl&v7e zZ=F~Qx5{0o&02x(W>U#pCSVJwr!0@u9QYx|trM5d$HfocpAbHib-vZquz{V02zEEZ zgtM80ZnT2E$YEyE3=^~{3x-ctk>j_DeQI*dD!siREIE3=2Dt;>+*(9qk`OnGu4T~8! z2<`v$srmPV&|8`a;5)|-h9thK9qLZk^RZQ*ZXo_bzu`v%^VK}>*?z~n`%k^zrv{{XL8KW1f{v$cBYB>FL4N$kmFQc6;MH-G z`}p${2k%Tqr`V{bXgevT)9#XfpcuqZtCVT-b^wDsUDzdtNv9HVP&4 zUaQZ-tU8xWOukhqhs;zkJ6_}fJlXPfQidr-nT?BFXp%i8Q%UEKf})@fP{M6gn{L=smis?oR`v@};c|74si^k(5O z4_SCQg042)`2?vdj0#F8QSL(;D8X7{s-)gw(=jP0$r%7)3Z62f@NDf2OGanL-Puki zRSt**>m%rJJZkp}kv(O`w&=Bv^}myJ!Wm{h_oGePRICS)<6HkB%wJNDvIcToH0$!> z-CYZ!184?Kup(hEJtP1d1igsmhf z<5Djb%fy${B!!D;npw@$Bzf`L8sB^OclXZ;cXJG| zXBJygnhIsEEWbwFW`AWVKq}_uY-L3b>gT%+UHo0sX)e#SVCo@3-miRcY%`LN+Cb}i z?>4qP(B1951toSar>Jx$^5bb4%<_5A5dDEJxi>eG#iXQ`yB)uC{4hHU_L?ey@T~FpNtMY-qRz;TwKMK)wJ#GcuErxLg9GoM5ci zv8Y;0(DfKrB>p@Fr4O@+na7!AqZ*^$d z`!h!p^gsH8yeR$58Qm>_`z={M*!J!E){gu8kTz&dxpD$V$9`<1ydsShd2q-*zOM2d zfK#BMT`@c@k^3$>Ub?dX1-74Uv`pRR>xYg@z32YED%|UNi|75cId=W*NWPIbe|)H3 z-2-=w;?~Q@H#%JyZ@X`}z<8%#+TI$|V0(F(FV&%z*RQ2V8PPzFk|@Xk zP3sGY#K52D$MFbmPq4t+y!LhIiuLf4JqU*E7h4*dS3eC@4Klg7XWDAO3PMf{MFMwd zt@X@`N!DAc&BJCUp=tS0Ovvp*D6??@B=8oS+60DS*trk`I~XE287%IEcGdw7BK@u! zbb$au3_d>)1V@pvu`MbNG%m66pUz-Ob@3>;Lje9$M3wd|uX2xvPAN!k0GG*{x}Do3 zkdBhK$GJavJ&!ccnvUJ=s|5i6VPEy zbwM5D-MKlDzu`of0t*C-LKd#wYG;Z`^j$qv>$gYN^@)hQKuY1c3khObmrkKo7tncZ~R zq!U_7-NusmH<^l}dG9Zkm0_SaaZ-r&xF|30m=z?vxH8LB;xg0RbX(x_nL0&UZqKL@ zsN>HzG&OxP6#@DcOSa_ICJ0wIF;Wls?H$PuvXclA@ zKC&H_t5N@M*VI?FnVDiR2K?OK?P-~rH!CYEj|vEMEiDzmf~h>6LncN{0XZCQKux%! ztsMbs^r`NRB}e~z$iULllAVLYdV~R7R1iWZ*dLvV5(Aa#N!ryk_$1R(Q`Hp}6``!| zd>c>>?+o2n($c+qbHz18U{$dO=HY>-VY{~~s(Y#AL$&8#GGpWR>7|=qXJT=~Q3bM# z={_-Dncrc+E~hrXr&E&(_qf0cXU)66o`aG#g3j!SIGUcFoju4e?>U`EDl04VpSp^* zmz)L-B4V~M`rfO}4+Bo4gqiB|U#hCA)Wa(`TI(7?WOV7`Me9?3uca)2;JVab>Xs@_ z?mF@bCZhXRR#E(~W75%+Hcn2OkT3aCqYe1Hq;6*_J$?V~-E9jCJc#U|->0$iVdDfs zp>zPD?d0@rUdEp=xHe64lF9_(2YAv=kRz1e7OZ;v(PqpZNN{I;{%n}FN%r!emI?o4 zDV7FCkE?XX+aT>$o4M5v0}Bwi!N~B*sT@L48T;R_UjqO$xF{`6`*kDay3E4Z%(K7R zNi#jm6rjR!Z(QM}9pq;| zliH%&)+SLi{&$yXT6rd>X_ALK|Dtk^rd-w!VuYjOQ9ZGPt<^Y-+_h)38r0?GN$PCn z1XzpOd)R9bwekAL@m=5h%b`O*L3wYF=X`ZYBY^iKoNUsf1nw8ec(Q@{y!C1utSz^V zpF1@2s`{qvc@-bEMp-|s3bKYMV=mDNYS={ z&K<0a%X}77loOo|H#i%u15%e# zQ}kA`nWG+v37Gp8l$G^%v)@Of8`lQZNvliw+PB~lg~oaY1~}-NdO+WH?2GQuAHBV8 zylSNlZEIL8!HHU*YJ(P#=&2W7TU+zDFCQ5CIwYDfS`xN~-aaB_rP-RfW@ctaxRvsn z@NoUl)rS5O>~-efZ6EjKl@!>;7Ax6}RktlGtdFRXp;# zot4#P7(9+6lsGlwkd!-zmQIjx;^j<(@! z>O2#(COpwGTQzKotS`I-FAW3uGTA1G$#N}q)Gn&@d)JVupp+BHucR?pFU7m*$$7E1 zyvLw*^q>XFu>oJ*yB5oh&*OUeAm4~j&OOaFxz2`8r^|Uxzbh**mk#{EsLUDc@6Wm} z*a|ZdySh?gHB?n8J&=gGw$eK2lIR@;`{%mgM{k8}#J~cp2hLLs22U4$Lwn#wF|iL< zPPBL*{~NvsCBNpo?mx_So07uEBAzpS@jzYCW5(mnA^1+sveS7Qi>BPdI8BMLQQFd` z9pHU-##|aM*<%$D4rS*aFSPdJOanzV5zE=#(NXAg_3L#*keL}b5NpR4Ct=@Dcjen4 z9Y)SiA4=tHEoqCkaV(6jqE*iJoIR(pw%X)BQvt$-2JmsnHY-noQOxwE2>;26sk!0- zzq-{p0-Z-U{qE8to?bCBy9FTQ6qwvR@<^6mE3o;ZgRykYH{SaUx~ROl4W>v+R&rwg zD1PV-D`$UgK&|K{+lY4e2JcWAL)HWYHaN-V^P__s0-GuGD+`00_)T;QA?9&e+pag2 zFoogLjL@4GS3c(M$Z8r}v=&VPo!dK;V)R5RvZOmkw;;HH*;Tr`TvnF_2I3$sJlE%t zrbbxUK#reJHH3jPQMKa``Wu5c=MrTx%byER?L`GN-j()NQ|J?<0r83${nwuXPAO2)8%3+{n{PImuIe9I*)a24(2o@-^6`3dwi61&fvF= zhld`h`kDn8$Y0K^2zn1e(OPq({ZlF+1Ac3Emz=CszWsvG{?6!LyXbi?L`1C z0bdNqgw%52PPRZ~a(31Lj>Hbdy;k$@WT9@&r{1Vj1WQvm6${HqF&6KnA&x?%F<1

rC?R6wm3L!pYCikm<% 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 From 3eb217b063007020a056796845f337ff30e8e167 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 13:31:14 -0500 Subject: [PATCH 183/370] Automatic changelog generation for PR #8430 [ci skip] --- html/changelogs/AutoChangeLog-pr-8430.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8430.yml diff --git a/html/changelogs/AutoChangeLog-pr-8430.yml b/html/changelogs/AutoChangeLog-pr-8430.yml new file mode 100644 index 0000000000..e59f61821a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8430.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "Bad Idea" From b9aebf69b1caa7e17ed1781cfecc5d391b1d86f7 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 5 Jun 2019 13:35:25 -0500 Subject: [PATCH 184/370] Automatic changelog generation for PR #8525 [ci skip] --- html/changelogs/AutoChangeLog-pr-8525.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8525.yml diff --git a/html/changelogs/AutoChangeLog-pr-8525.yml b/html/changelogs/AutoChangeLog-pr-8525.yml new file mode 100644 index 0000000000..ef26cf1a4b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8525.yml @@ -0,0 +1,5 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - bugfix: "Game braking bug +critical: bug fix" From 8778349821e763324b5af2753e50eb5fdd13c11f Mon Sep 17 00:00:00 2001 From: BurgerLua Date: Wed, 5 Jun 2019 11:43:28 -0700 Subject: [PATCH 185/370] added --- code/modules/mob/living/carbon/human/species.dm | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 31fff2354a..526304032b 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1490,11 +1490,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) user.adjustStaminaLossBuffered(3) if(target.has_trait(TRAIT_ASSBLASTUSA)) var/hit_zone = (user.held_index_to_dir(user.active_hand_index) == "l" ? "l_":"r_") + "arm" - user.adjustStaminaLoss(50, affected_zone = hit_zone) - var/obj/item/bodypart/affecting = user.get_bodypart(hit_zone) - if(affecting) - if(affecting.receive_damage(5, 0)) - user.update_damage_overlays() + user.adjustStaminaLoss(20, affected_zone = hit_zone) user.visible_message(\ "\The [user] slaps \the [target]'s ass, but their hand bounces off like they hit metal!",\ "You slap [user == target ? "your" : "\the [target]'s"] ass, but feel an intense amount of pain as you realise their buns are harder than steel!",\ From dbac1e135af938ff35adcc6845e4adad7511cb54 Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Wed, 5 Jun 2019 21:08:10 +0200 Subject: [PATCH 186/370] Update human_face.dmi --- icons/mob/human_face.dmi | Bin 170161 -> 170251 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index ab6da943cef89b81b6d5e1ba2b9a1ceb54f0cbb9..c82e48f1c2d9407658c6b46bd493e158ed08acde 100644 GIT binary patch delta 117683 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

HwKGws)%m0OnqpX3Q!~0Jsk+TX# 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�!!aXh-v5 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 Date: Wed, 5 Jun 2019 15:54:51 -0400 Subject: [PATCH 187/370] Update backpack.dm --- code/game/objects/items/storage/backpack.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/game/objects/items/storage/backpack.dm b/code/game/objects/items/storage/backpack.dm index 1f1143e7ce..1c075c5116 100644 --- a/code/game/objects/items/storage/backpack.dm +++ b/code/game/objects/items/storage/backpack.dm @@ -447,6 +447,8 @@ new /obj/item/clothing/suit/straight_jacket(src) new /obj/item/clothing/mask/muzzle(src) new /obj/item/mmi/syndie(src) + new /obj/item/implantcase(src) + new /obj/item/implanter(src) /obj/item/storage/backpack/duffelbag/syndie/surgery_adv name = "advanced surgery duffel bag" @@ -464,6 +466,8 @@ new /obj/item/clothing/suit/straight_jacket(src) new /obj/item/clothing/mask/muzzle(src) new /obj/item/mmi/syndie(src) + new /obj/item/implantcase(src) + new /obj/item/implanter(src) /obj/item/storage/backpack/duffelbag/syndie/ammo name = "ammunition duffel bag" From b68565280e569a78f8aa99ee60406f0b7c08b146 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:02:22 -0400 Subject: [PATCH 188/370] Update snacks_other.dm --- .../food_and_drinks/food/snacks_other.dm | 30 ------------------- 1 file changed, 30 deletions(-) diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm index 5213cc96e1..c1abec86c1 100644 --- a/code/modules/food_and_drinks/food/snacks_other.dm +++ b/code/modules/food_and_drinks/food/snacks_other.dm @@ -340,36 +340,6 @@ tastes = list("melon" = 1) foodtype = FRUIT -/obj/item/reagent_containers/food/snacks/spacefreezy - name = "space freezy" - desc = "The best icecream in space." - icon_state = "spacefreezy" - bonus_reagents = list("nutriment" = 2, "vitamin" = 2) - list_reagents = list("nutriment" = 6, "bluecherryjelly" = 5, "vitamin" = 4) - filling_color = "#87CEFA" - tastes = list("blue cherries" = 2, "ice cream" = 2) - foodtype = FRUIT | DAIRY - -/obj/item/reagent_containers/food/snacks/sundae - name = "sundae" - desc = "A classic dessert." - icon_state = "sundae" - bonus_reagents = list("nutriment" = 2, "vitamin" = 1) - list_reagents = list("nutriment" = 6, "banana" = 5, "vitamin" = 2) - filling_color = "#FFFACD" - tastes = list("ice cream" = 1, "banana" = 1) - foodtype = FRUIT | DAIRY | SUGAR - -/obj/item/reagent_containers/food/snacks/honkdae - name = "honkdae" - desc = "The clown's favorite dessert." - icon_state = "honkdae" - bonus_reagents = list("nutriment" = 2, "vitamin" = 2) - list_reagents = list("nutriment" = 6, "banana" = 10, "vitamin" = 4) - filling_color = "#FFFACD" - tastes = list("ice cream" = 1, "banana" = 1, "a bad joke" = 1) - foodtype = FRUIT | DAIRY | SUGAR - /obj/item/reagent_containers/food/snacks/nachos name = "nachos" desc = "Chips from Space Mexico." From e922a0cb183d7ee6f53050a32a43279c0f6049d2 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:04:40 -0400 Subject: [PATCH 189/370] Update recipes_sandwich.dm --- .../recipes/tablecraft/recipes_sandwich.dm | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm index a2e83a09b4..0f1c40da3f 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm @@ -43,16 +43,6 @@ result = /obj/item/reagent_containers/food/snacks/jellysandwich/cherry subcategory = CAT_SANDWICH -/datum/crafting_recipe/food/icecreamsandwich - name = "Icecream sandwich" - reqs = list( - /datum/reagent/consumable/cream = 5, - /datum/reagent/consumable/ice = 5, - /obj/item/reagent_containers/food/snacks/icecream = 1 - ) - result = /obj/item/reagent_containers/food/snacks/icecreamsandwich - subcategory = CAT_SANDWICH - /datum/crafting_recipe/food/notasandwich name = "Not a sandwich" reqs = list( From 9b2991d0f2851cf3c56d1b910c47967d4b1b208f Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:05:22 -0400 Subject: [PATCH 190/370] Update recipes_misc.dm --- .../recipes/tablecraft/recipes_misc.dm | 33 ------------------- 1 file changed, 33 deletions(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm index 3dd27ddd01..0c4e2c2e30 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm @@ -186,39 +186,6 @@ result = /obj/item/reagent_containers/food/snacks/melonfruitbowl subcategory = CAT_MISCFOOD -/datum/crafting_recipe/food/spacefreezy - name ="Space freezy" - reqs = list( - /datum/reagent/consumable/bluecherryjelly = 5, - /datum/reagent/consumable/spacemountainwind = 15, - /obj/item/reagent_containers/food/snacks/icecream = 1 - ) - result = /obj/item/reagent_containers/food/snacks/spacefreezy - subcategory = CAT_MISCFOOD - -/datum/crafting_recipe/food/sundae - name ="Sundae" - reqs = list( - /datum/reagent/consumable/cream = 5, - /obj/item/reagent_containers/food/snacks/grown/cherries = 1, - /obj/item/reagent_containers/food/snacks/grown/banana = 1, - /obj/item/reagent_containers/food/snacks/icecream = 1 - ) - result = /obj/item/reagent_containers/food/snacks/sundae - subcategory = CAT_MISCFOOD - -/datum/crafting_recipe/food/honkdae - name ="Honkdae" - reqs = list( - /datum/reagent/consumable/cream = 5, - /obj/item/clothing/mask/gas/clown_hat = 1, - /obj/item/reagent_containers/food/snacks/grown/cherries = 1, - /obj/item/reagent_containers/food/snacks/grown/banana = 2, - /obj/item/reagent_containers/food/snacks/icecream = 1 - ) - result = /obj/item/reagent_containers/food/snacks/honkdae - subcategory = CAT_MISCFOOD - /datum/crafting_recipe/food/nachos name ="Nachos" reqs = list( From b7a759017df71f046dc7d66fefd8b3a23fb9c1b2 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:05:56 -0400 Subject: [PATCH 191/370] Add files via upload --- .../recipes/tablecraft/recipes_frozen.dm | 200 ++++++++++++++++++ 1 file changed, 200 insertions(+) create mode 100644 code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm new file mode 100644 index 0000000000..5108f6b2ed --- /dev/null +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm @@ -0,0 +1,200 @@ +//////////////////////////SNOW CONES/////////////////////// + +/datum/crafting_recipe/food/flaverless_sc + name = "Flaverless snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones + subcategory = CAT_ICE + +/datum/crafting_recipe/food/pineapple_sc + name = "Pineapple snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /obj/item/reagent_containers/food/snacks/pineappleslice = 2 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/pineapple + subcategory = CAT_ICE + +/datum/crafting_recipe/food/lime_sc + name = "Lime snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/limejuice = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/lime + subcategory = CAT_ICE + +/datum/crafting_recipe/food/lemon_sc + name = "Lemon snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/lemonjuice = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/lemon + subcategory = CAT_ICE + +/datum/crafting_recipe/food/apple_sc + name = "Apple snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/applejuice = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/apple + subcategory = CAT_ICE + +/datum/crafting_recipe/food/grape_sc + name = "Grape snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/berryjuice = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/grape + subcategory = CAT_ICE + +/datum/crafting_recipe/food/orange_sc + name = "Orange snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/orangejuice = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/orange + subcategory = CAT_ICE + +/datum/crafting_recipe/food/blue_sc + name = "Bluecherry snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/bluecherryjelly= 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/blue + subcategory = CAT_ICE + +/datum/crafting_recipe/food/red_sc + name = "Cherry snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/cherryjelly= 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/red + subcategory = CAT_ICE + +/datum/crafting_recipe/food/mix_sc + name = "Mixed berrie snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/berryjuice = 15 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/mix + subcategory = CAT_ICE + +/datum/crafting_recipe/food/fruitsalad_sc + name = "Fruit Salad snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/orangejuice = 5, + /datum/reagent/consumable/limejuice = 5, + /datum/reagent/consumable/lemonjuice = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/fruitsalad + subcategory = CAT_ICE + +/datum/crafting_recipe/food/mime_sc + name = "Mime snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/nothing = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/mime + subcategory = CAT_ICE + +/datum/crafting_recipe/food/clown_sc + name = "Clown snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/clownstears = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/clown + subcategory = CAT_ICE + +/datum/crafting_recipe/food/soda_sc + name = "Soda water snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/sodawater = 15 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/soda + subcategory = CAT_ICE + +/datum/crafting_recipe/food/pwgrmer_sc + name = "Pwergamer snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/pwr_game = 15 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/pwgrmer + subcategory = CAT_ICE + +/datum/crafting_recipe/food/kiwi_sc + name = "Soda water snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /obj/item/reagent_containers/food/snacks/egg/kiwiEgg = 1 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/kiwi + subcategory = CAT_ICE + +/datum/crafting_recipe/food/honey_sc + name = "Honey snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/consumable/honey = 5 + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/honey + subcategory = CAT_ICE + +/datum/crafting_recipe/food/honey_sc + name = "Rainbow snowcone" + reqs = list( + /obj/item/reagent_containers/food/drinks/sillycup = 1 + /datum/reagent/water = 5, + /datum/reagent/consumable/ice = 15, + /datum/reagent/colorful_reagent = 1 //Hard to make + ) + result = /obj/item/reagent_containers/food/snacks/snowcones/rainbow + subcategory = CAT_ICE \ No newline at end of file From 7f8886f6e95823a91323c7c13542e95a7663504b Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:06:37 -0400 Subject: [PATCH 192/370] Update construction.dm --- code/__DEFINES/construction.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/__DEFINES/construction.dm b/code/__DEFINES/construction.dm index 9f3d38efa1..aa9c5cf34e 100644 --- a/code/__DEFINES/construction.dm +++ b/code/__DEFINES/construction.dm @@ -103,6 +103,7 @@ #define CAT_SOUP "Soups" #define CAT_SPAGHETTI "Spaghettis" #define CAT_SUSHI "Fish" +#define CAT_ICE "Frozen" #define RCD_FLOORWALL 1 #define RCD_AIRLOCK 2 From 762c5093157d9651db6bbe051e67ef499234fd49 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:07:25 -0400 Subject: [PATCH 193/370] Update craft.dm --- code/modules/crafting/craft.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/crafting/craft.dm b/code/modules/crafting/craft.dm index 29ddb8e800..ba2a27af77 100644 --- a/code/modules/crafting/craft.dm +++ b/code/modules/crafting/craft.dm @@ -21,6 +21,8 @@ CAT_BURGER, CAT_CAKE, CAT_EGG, + CAT_SUSHI, //Called Fish + CAT_ICE, //Called Frozen CAT_MEAT, CAT_MISCFOOD, CAT_PASTRY, @@ -28,7 +30,6 @@ CAT_PIZZA, CAT_SALAD, CAT_SANDWICH, - CAT_SUSHI, CAT_SOUP, CAT_SPAGHETTI), CAT_CLOTHING) //Clothing subcategories From e5b538af71a2669dba1bd388913038092d0056ac Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:09:21 -0400 Subject: [PATCH 194/370] Update recipes_frozen.dm --- .../recipes/tablecraft/recipes_frozen.dm | 46 ++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm index 5108f6b2ed..f520377a4f 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm @@ -1,3 +1,47 @@ + +/datum/crafting_recipe/food/icecreamsandwich + name = "Icecream sandwich" + reqs = list( + /datum/reagent/consumable/cream = 5, + /datum/reagent/consumable/ice = 5, + /obj/item/reagent_containers/food/snacks/icecream = 1 + ) + result = /obj/item/reagent_containers/food/snacks/icecreamsandwich + subcategory = CAT_ICE + +/datum/crafting_recipe/food/spacefreezy + name ="Space freezy" + reqs = list( + /datum/reagent/consumable/bluecherryjelly = 5, + /datum/reagent/consumable/spacemountainwind = 15, + /obj/item/reagent_containers/food/snacks/icecream = 1 + ) + result = /obj/item/reagent_containers/food/snacks/spacefreezy + subcategory = CAT_ICE + +/datum/crafting_recipe/food/sundae + name ="Sundae" + reqs = list( + /datum/reagent/consumable/cream = 5, + /obj/item/reagent_containers/food/snacks/grown/cherries = 1, + /obj/item/reagent_containers/food/snacks/grown/banana = 1, + /obj/item/reagent_containers/food/snacks/icecream = 1 + ) + result = /obj/item/reagent_containers/food/snacks/sundae + subcategory = CAT_ICE + +/datum/crafting_recipe/food/honkdae + name ="Honkdae" + reqs = list( + /datum/reagent/consumable/cream = 5, + /obj/item/clothing/mask/gas/clown_hat = 1, + /obj/item/reagent_containers/food/snacks/grown/cherries = 1, + /obj/item/reagent_containers/food/snacks/grown/banana = 2, + /obj/item/reagent_containers/food/snacks/icecream = 1 + ) + result = /obj/item/reagent_containers/food/snacks/honkdae + subcategory = CAT_ICE + //////////////////////////SNOW CONES/////////////////////// /datum/crafting_recipe/food/flaverless_sc @@ -197,4 +241,4 @@ /datum/reagent/colorful_reagent = 1 //Hard to make ) result = /obj/item/reagent_containers/food/snacks/snowcones/rainbow - subcategory = CAT_ICE \ No newline at end of file + subcategory = CAT_ICE From a9ded7a3eb1ea54ab0a600cec069b314c8528388 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:10:07 -0400 Subject: [PATCH 195/370] Add files via upload --- .../food_and_drinks/food/snacks_frozen.dm | 187 ++++++++++++++++++ 1 file changed, 187 insertions(+) create mode 100644 code/modules/food_and_drinks/food/snacks_frozen.dm diff --git a/code/modules/food_and_drinks/food/snacks_frozen.dm b/code/modules/food_and_drinks/food/snacks_frozen.dm new file mode 100644 index 0000000000..e7f0509b92 --- /dev/null +++ b/code/modules/food_and_drinks/food/snacks_frozen.dm @@ -0,0 +1,187 @@ +/obj/item/reagent_containers/food/snacks/icecreamsandwich + name = "icecream sandwich" + desc = "Portable Ice-cream in its own packaging." + icon = 'icons/obj/food/food.dmi' + icon_state = "icecreamsandwich" + bonus_reagents = list("nutriment" = 1, "ice" = 2) + list_reagents = list("nutriment" = 2, "ice" = 2) + tastes = list("ice cream" = 1) + foodtype = GRAIN | DAIRY + +/obj/item/reagent_containers/food/snacks/sundae + name = "sundae" + desc = "A classic dessert." + icon_state = "sundae" + bonus_reagents = list("nutriment" = 2, "vitamin" = 1) + list_reagents = list("nutriment" = 6, "banana" = 5, "vitamin" = 2) + filling_color = "#FFFACD" + tastes = list("ice cream" = 1, "banana" = 1) + foodtype = FRUIT | DAIRY | SUGAR + +/obj/item/reagent_containers/food/snacks/honkdae + name = "honkdae" + desc = "The clown's favorite dessert." + icon_state = "honkdae" + bonus_reagents = list("nutriment" = 2, "vitamin" = 2) + list_reagents = list("nutriment" = 6, "banana" = 10, "vitamin" = 4) + filling_color = "#FFFACD" + tastes = list("ice cream" = 1, "banana" = 1, "a bad joke" = 1) + foodtype = FRUIT | DAIRY | SUGAR + +/obj/item/reagent_containers/food/snacks/spacefreezy + name = "space freezy" + desc = "The best icecream in space." + icon_state = "spacefreezy" + bonus_reagents = list("nutriment" = 2, "vitamin" = 2) + list_reagents = list("nutriment" = 6, "bluecherryjelly" = 5, "vitamin" = 4) + filling_color = "#87CEFA" + tastes = list("blue cherries" = 2, "ice cream" = 2) + foodtype = FRUIT | DAIRY + +///////////// +//SNOWCONES// +///////////// + +/obj/item/reagent_containers/food/snacks/snowcones //We use this as a base for all other snowcones + name = "flaverless snowcone" + desc = "Its just harden water slivers. Still fun to chew on." + icon = 'icons/obj/food/snowcones.dmi' + icon_state = "flaverless_sc" + trash = /obj/item/reagent_containers/food/drinks/sillycup //We dont eat paper cups + bonus_reagents = list("water" = 10) //Base line will allways give water + list_reagents = list("water" = 1) // We dont get food for water/juices + filling_color = "#FFFFFF" //Ice is white + tastes = list("ice" = 1, "water" = 1) + foodtype = SUGAR //We use SUGAR as a base line to act in as junkfood, other wise we use fruit + +/obj/item/reagent_containers/food/snacks/snowcones/lime + name = "lime flavored snowcone" + desc = "A pineapple flavord snowball in a paper cup." + icon_state = "lime_sc" + list_reagents = list("nutriment" = 1, "limejuice" = 5) + tastes = list("ice" = 1, "water" = 1, "limes" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/lemon + name = "lemon flavored snowcone" + desc = "A pineapple flavord snowball in a paper cup." + icon_state = "lemon_sc" + list_reagents = list("nutriment" = 1, "lemonjuice" = 5) + tastes = list("ice" = 1, "water" = 1, "lemons" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/apple + name = "apple flavored snowcone" + desc = "A pineapple flavord snowball in a paper cup." + icon_state = "blue_sc" + list_reagents = list("nutriment" = 1, "applejuice" = 5) + tastes = list("ice" = 1, "water" = 1, "apples" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/grape + name = "grape flavored snowcone" + desc = "A grape flavord snowball in a paper cup." + icon_state = "grape_sc" + list_reagents = list("nutriment" = 1, "berryjuice" = 5) + tastes = list("ice" = 1, "water" = 1, "grape" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/orange + name = "orange flavored snowcone" + desc = "A mix of different flavors dizzled on a snowball in a paper cup." + icon_state = "orange_sc" + list_reagents = list("nutriment" = 1, "orangejuice" = 10) + tastes = list("ice" = 1, "water" = 1, "berries" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/blue + name = "bluecherry flavored snowcone" + desc = "A bluecharry flavord snowball in a paper cup, how rare!" + icon_state = "red_sc" + list_reagents = list("nutriment" = 1, "bluecherryjelly" = 5) + tastes = list("ice" = 1, "water" = 1, "blue" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/red + name = "cherry flavored snowcone" + desc = "A cherry flavord snowball in a paper cup." + icon_state = "blue_sc" + list_reagents = list("nutriment" = 1, "cherryjelly" = 5) + tastes = list("ice" = 1, "water" = 1, "red" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/kiwi + name = "kiwi flavored snowcone" + desc = "A kiwi flavord snowball in a paper cup." + icon_state = "kiwi_sc" + list_reagents = list("nutriment" = 3, "vitamin" = 6) + tastes = list("ice" = 1, "space" = 3, "kiwi" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/mix + name = "mixed berry flavored snowcone" + desc = "A mix of different flavors dizzled on a snowball in a paper cup." + icon_state = "berry_sc" + list_reagents = list("nutriment" = 1, "berryjuice" = 10) + tastes = list("ice" = 1, "water" = 1, "berries" = 5) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/fruitsalad + name = "mixed fruit flavored snowcone" + desc = "A mix of different flavors dizzled on a snowball in a paper cup." + icon_state = "fruitsalad_sc" + list_reagents = list("nutriment" = 1, "lemonjuice" = 5, "limejuice" = 5, "lemonjuice" = 5, "orangejuice" = 5) + tastes = list("ice" = 1, "water" = 1, "fruits" = 25) + foodtype = FRUIT + +/obj/item/reagent_containers/food/snacks/snowcones/pineapple + name = "pineapple flavored snowcone" + desc = "A pineapple flavord snowball in a paper cup." + icon_state = "pineapple_sc" + list_reagents = list("nutriment" = 1, "water" = 1) + tastes = list("ice" = 1, "water" = 1, "pineapples" = 5) + foodtype = PINEAPPLE //Pineapple to allow all that like pineapple to enjoy + +/obj/item/reagent_containers/food/snacks/snowcones/mime + name = "mime snowcone" + desc = "..." + icon_state = "mime_sc" + list_reagents = list("nutriment" = 1, "nothing" = 5) + tastes = list("nothing" = 5) + +/obj/item/reagent_containers/food/snacks/snowcones/clown + name = "joke flavored snowcone" + desc = "A waterd down jokeful flavord snowball in a paper cup." + icon_state = "clown_sc" + list_reagents = list("nutriment" = 1, "laughter" = 5) + tastes = list("jokes" = 5, "brainfreeze" = 5, "joy" = 5) + +/obj/item/reagent_containers/food/snacks/snowcones/soda + name = "sodawater flavored snowcone" + desc = "A waterd down sodawater flavored snowcone snowball in a paper cup." + icon_state = "soda_sc" + list_reagents = list("nutriment" = 1, "sodawater" = 5) + tastes = list("surgar" = 1, "water" = 5, "soda" = 5) + foodtype = JUNKFOOD | SUGAR + +/obj/item/reagent_containers/food/snacks/snowcones/pwgrmer + name = "pwergamer flavored snowcone" + desc = "A waterd down pwergamer soda flavord snowball in a paper cup." + icon_state = "pwergamer_sc" + list_reagents = list("nutriment" = 1, "laughter" = 1) + tastes = list("vaild" = 5, "salt" = 5, "wats" = 5) + foodtype = JUNKFOOD | SUGAR + +/obj/item/reagent_containers/food/snacks/snowcones/honey + name = "pwergamer flavored snowcone" + desc = "A waterd down pwergamer soda flavord snowball in a paper cup." + icon_state = "honey_sc" + list_reagents = list("nutriment" = 1, "honey" = 5) + tastes = list("pollen" = 5, "sweetness" = 5, "wax" = 1) + +/obj/item/reagent_containers/food/snacks/snowcones/rainbow + name = "rainbow color snowcone" + desc = "A rainbow color snowball in a paper cup." + icon_state = "rainbow_sc" + list_reagents = list("nutriment" = 5, "laughter" = 25) + tastes = list("sunlight" = 5, "light" = 5, "slime" = 5, "paint" = 3, "clouds" = 3) \ No newline at end of file From 9443f5bf719a3ac9ef12fe69a25a0a5f0978087c Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:11:54 -0400 Subject: [PATCH 196/370] Add files via upload --- icons/obj/food/snowcones.dmi | Bin 0 -> 1388 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 icons/obj/food/snowcones.dmi diff --git a/icons/obj/food/snowcones.dmi b/icons/obj/food/snowcones.dmi new file mode 100644 index 0000000000000000000000000000000000000000..bdaa89fdf76f832c068d5414f9c59580e1e1342e GIT binary patch literal 1388 zcmV-y1(W)TP)004jp0{{R3ySOfH|I7fHX8$wHnKR60GnoL) zW;4tH%w{v0GyecHz`(%&|2Jd>&AI>p00DGTPE!Ct=GbNc007N;R9JLGWpiV4X>fFD zZ*Bkpc$|&W%?g7s3)3k zt6SaZ@?NVKvL|QtMW1(jl||~ql$z5~WfRgkg{|=c0;Vz_45TLpy?^*FS6NT&)BK>a zfnmn2{^^A*!m=2Y;E`bwK|{01G4>MHnpL(IXJrI^&{f^DIpU$hIy@ z=)fxl4+cb8de?*KFe37p#w@{;vna~bG1&260EMoa@_Y9mgbCm6eFVuT000BSNkl+5U5vTp7dc*T5y)wejso0t5l#U{`G)O9I0YEx z6kmk%A0XY_Tq>tMZo96#V4mF44zVwAZZ3OVG^ZVI@g;fzoc6eIo<#2Pi{L7iN~Kb% zR4UbZRFHn({8e}N_p}n&&zasB(_=nt$8p$VUe^_^AZJ&FrPCWr8{l{{#}4mMKS%a@ zejz@V&=}MYZpUFPDMi$;){14?uNk_bbfyY@&YFiafo3~6E265KDS|hNRVa> z&(8*p1qQQwpCIb*BtKe+(}YKUBkt|h@ciy3F}NR;YcSH^xw{zik@JfjFZN>RXN%E( zkn)T7e{3(p=?;lA8j6eIUM{#Ni%sviHU>#2=3W zf8ThAxPL7u!jBz#{&1Qk!3pIzOM>%^`oX88!rXd??JN2MZp7^_%-I{O-G{lPM<&}D z82ll>BJH ze((?=_-*=mbO;Rch$9Jh8;LN|54yWJ)(>)g__y=HAw0f!HwivJMHufN*DwRsLo|a|lmnDJy9Q`UTti^n7iM@V- z&j*UV!ovSAUR%8ja9Kb;g$vNyGv${oeJ&2$CCr_>!nWw~xwWnOlze@6~u{oUF+{rSGNb#i~VwodQw*4D}W u-P$_6zgt@;_jhYc`#Y6NrBbQ>wtfJGFLVd|kimWc0000 Date: Wed, 5 Jun 2019 20:13:07 -0400 Subject: [PATCH 197/370] Update tgstation.dme --- tgstation.dme | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tgstation.dme b/tgstation.dme index 739176a457..b5d72fff2b 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -1624,6 +1624,7 @@ #include "code\modules\food_and_drinks\food\snacks_burgers.dm" #include "code\modules\food_and_drinks\food\snacks_cake.dm" #include "code\modules\food_and_drinks\food\snacks_egg.dm" +#include "code\modules\food_and_drinks\food\snacks_frozen.dm" #include "code\modules\food_and_drinks\food\snacks_meat.dm" #include "code\modules\food_and_drinks\food\snacks_other.dm" #include "code\modules\food_and_drinks\food\snacks_pastry.dm" @@ -1652,6 +1653,7 @@ #include "code\modules\food_and_drinks\recipes\tablecraft\recipes_burger.dm" #include "code\modules\food_and_drinks\recipes\tablecraft\recipes_cake.dm" #include "code\modules\food_and_drinks\recipes\tablecraft\recipes_egg.dm" +#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_frozen.dm" #include "code\modules\food_and_drinks\recipes\tablecraft\recipes_meat.dm" #include "code\modules\food_and_drinks\recipes\tablecraft\recipes_misc.dm" #include "code\modules\food_and_drinks\recipes\tablecraft\recipes_pastry.dm" From 1b463c18b3d8d899b13382213d20ab6b5b5ec9fe Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:14:48 -0400 Subject: [PATCH 198/370] Update snacks_sandwichtoast.dm --- .../food_and_drinks/food/snacks_sandwichtoast.dm | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm index 88f8848315..1b602b6759 100644 --- a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm +++ b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm @@ -52,16 +52,6 @@ list_reagents = list("nutriment" = 2, "cherryjelly" = 5, "vitamin" = 2) foodtype = GRAIN | FRUIT -/obj/item/reagent_containers/food/snacks/icecreamsandwich - name = "icecream sandwich" - desc = "Portable Ice-cream in its own packaging." - icon = 'icons/obj/food/food.dmi' - icon_state = "icecreamsandwich" - bonus_reagents = list("nutriment" = 1, "ice" = 2) - list_reagents = list("nutriment" = 2, "ice" = 2) - tastes = list("ice cream" = 1) - foodtype = GRAIN | DAIRY - /obj/item/reagent_containers/food/snacks/notasandwich name = "not-a-sandwich" desc = "Something seems to be wrong with this, you can't quite figure what. Maybe it's his moustache." From 3e98ed955388f71f32cbfe3e5c36912d9873823d Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 20:41:59 -0400 Subject: [PATCH 199/370] Update packs.dm --- code/modules/cargo/packs.dm | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index 479a8db0ad..0b5b9376af 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -1541,7 +1541,6 @@ /datum/supply_pack/service group = "Service" - /datum/supply_pack/service/advlighting name = "Advanced Lighting crate" desc = "Thanks to advanced lighting tech we here at the Lamp Factory have be able to produce more lamps and lamp items! This crate has three lamps, a box of lights and a state of the art rapid-light-device!" @@ -1566,6 +1565,14 @@ /obj/item/stack/packageWrap) crate_name = "cargo supplies crate" +/datum/supply_pack/service/food_cart + name = "Food Cart Crate" + desc = "Want to sell food on the go? Cook lost their cart? Well we just so happen to have a few carts to spare!" + cost = 1000 + contains = list(/obj/machinery/food_cart) + crate_name = "food cart crate" + crate_type = /obj/structure/closet/crate + /datum/supply_pack/service/noslipfloor name = "High-traction Floor Tiles" desc = "Make slipping a thing of the past with sixty industrial-grade anti-slip floortiles!" @@ -1574,6 +1581,14 @@ /obj/item/stack/tile/noslip/thirty) crate_name = "high-traction floor tiles crate" +/datum/supply_pack/service/icecream_cart + name = "Ice Cream Cart Crate" + desc = "Plasma fire a to hot for you, want a nice treat after a hard days work? Well now we have the cart for you! This Ice Cream Vat has everthing you need to make you and your friends so ice cream treats! This cart comes stocked with some ingredients for each type of scoopable icecream." + cost = 2750 //Comes prestocked with basic ingredients + contains = list(/obj/machinery/icecream_vat) + crate_name = "ice cream vat crate" + crate_type = /obj/structure/closet/crate + /datum/supply_pack/service/janitor name = "Janitorial Supplies Crate" desc = "Fight back against dirt and grime with Nanotrasen's Janitorial Essentials(tm)! Contains three buckets, caution signs, and cleaner grenades. Also has a single mop, spray cleaner, rag, NT soap and a trash bag." @@ -1702,6 +1717,10 @@ crate_name = "shaft miner starter kit" crate_type = /obj/structure/closet/crate/secure +////////////////////////////////////////////////////////////////////////////// +/////////////////////////// Vending Restocks ///////////////////////////////// +////////////////////////////////////////////////////////////////////////////// + /datum/supply_pack/service/vending/bartending name = "Bartending Supply Crate" desc = "Bring on the booze with vending machine refills, as well as a free book containing the well-kept secrets to the bartending trade!" From 5e68db7836dcf542f99f2a2e1a22b1aec0e43629 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 5 Jun 2019 22:22:50 -0400 Subject: [PATCH 200/370] local files have commas, but I forgot to save --- .../recipes/tablecraft/recipes_frozen.dm | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm index f520377a4f..08d5716779 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm @@ -47,7 +47,7 @@ /datum/crafting_recipe/food/flaverless_sc name = "Flaverless snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15 ) @@ -57,7 +57,7 @@ /datum/crafting_recipe/food/pineapple_sc name = "Pineapple snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /obj/item/reagent_containers/food/snacks/pineappleslice = 2 @@ -68,7 +68,7 @@ /datum/crafting_recipe/food/lime_sc name = "Lime snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/limejuice = 5 @@ -79,7 +79,7 @@ /datum/crafting_recipe/food/lemon_sc name = "Lemon snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/lemonjuice = 5 @@ -90,7 +90,7 @@ /datum/crafting_recipe/food/apple_sc name = "Apple snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/applejuice = 5 @@ -101,7 +101,7 @@ /datum/crafting_recipe/food/grape_sc name = "Grape snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/berryjuice = 5 @@ -112,7 +112,7 @@ /datum/crafting_recipe/food/orange_sc name = "Orange snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/orangejuice = 5 @@ -123,7 +123,7 @@ /datum/crafting_recipe/food/blue_sc name = "Bluecherry snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/bluecherryjelly= 5 @@ -134,7 +134,7 @@ /datum/crafting_recipe/food/red_sc name = "Cherry snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/cherryjelly= 5 @@ -145,7 +145,7 @@ /datum/crafting_recipe/food/mix_sc name = "Mixed berrie snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/berryjuice = 15 @@ -156,7 +156,7 @@ /datum/crafting_recipe/food/fruitsalad_sc name = "Fruit Salad snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/orangejuice = 5, @@ -169,7 +169,7 @@ /datum/crafting_recipe/food/mime_sc name = "Mime snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/nothing = 5 @@ -180,7 +180,7 @@ /datum/crafting_recipe/food/clown_sc name = "Clown snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/clownstears = 5 @@ -191,7 +191,7 @@ /datum/crafting_recipe/food/soda_sc name = "Soda water snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/sodawater = 15 @@ -202,7 +202,7 @@ /datum/crafting_recipe/food/pwgrmer_sc name = "Pwergamer snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/pwr_game = 15 @@ -213,10 +213,10 @@ /datum/crafting_recipe/food/kiwi_sc name = "Soda water snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, + /obj/item/reagent_containers/food/snacks/egg/kiwiEgg = 1, /datum/reagent/water = 5, - /datum/reagent/consumable/ice = 15, - /obj/item/reagent_containers/food/snacks/egg/kiwiEgg = 1 + /datum/reagent/consumable/ice = 15 ) result = /obj/item/reagent_containers/food/snacks/snowcones/kiwi subcategory = CAT_ICE @@ -224,7 +224,7 @@ /datum/crafting_recipe/food/honey_sc name = "Honey snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/consumable/honey = 5 @@ -235,7 +235,7 @@ /datum/crafting_recipe/food/honey_sc name = "Rainbow snowcone" reqs = list( - /obj/item/reagent_containers/food/drinks/sillycup = 1 + /obj/item/reagent_containers/food/drinks/sillycup = 1, /datum/reagent/water = 5, /datum/reagent/consumable/ice = 15, /datum/reagent/colorful_reagent = 1 //Hard to make From 8d74a341ba6fc2547804298fb5ceb80905a96e32 Mon Sep 17 00:00:00 2001 From: dtfe Date: Thu, 6 Jun 2019 08:38:20 +0200 Subject: [PATCH 201/370] Update human_face.dmi --- icons/mob/human_face.dmi | Bin 170251 -> 170355 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index c82e48f1c2d9407658c6b46bd493e158ed08acde..9540599364589069a5e640cc2c73c36c4ef21f13 100644 GIT binary patch delta 116594 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�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

P? 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�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 delta 116536 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

9w^? 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 AcmMzZ literal 53916 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%0APz&$^wNVJne;J=1PvNWVK>^-3TrJPsf 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 Date: Wed, 5 Jun 2019 19:41:23 +0200 Subject: [PATCH 182/370] twintails... title --- .../sprite_accessories/hair_head.dm | 4 ++++ icons/mob/human_face.dmi | Bin 169453 -> 170161 bytes 2 files changed, 4 insertions(+) diff --git a/code/modules/mob/dead/new_player/sprite_accessories/hair_head.dm b/code/modules/mob/dead/new_player/sprite_accessories/hair_head.dm index 66c79ea0f0..f8d8d26328 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/hair_head.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/hair_head.dm @@ -439,6 +439,10 @@ name = "Tress Shoulder" icon_state = "hair_tressshoulder" +/datum/sprite_accessory/hair/longtwintails + name = "Twintails (Long)" + icon_state = "hair_longstraighttwintails" + /datum/sprite_accessory/hair/updo name = "Updo" icon_state = "hair_updo" diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index b479fa0764b9db46e703e18aacbfc0aa09fce4c6..ab6da943cef89b81b6d5e1ba2b9a1ceb54f0cbb9 100644 GIT binary patch delta 123667 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 z From cf3002a392f6907989a33dfe7f1acea666a2805d Mon Sep 17 00:00:00 2001 From: Sishen Date: Thu, 6 Jun 2019 05:14:01 -0400 Subject: [PATCH 202/370] slimeplush --- code/game/objects/items/plushes.dm | 19 +++++++++++++++++++ icons/obj/plushes.dmi | Bin 37645 -> 38687 bytes 2 files changed, 19 insertions(+) diff --git a/code/game/objects/items/plushes.dm b/code/game/objects/items/plushes.dm index 28a744fbb1..96f17ce790 100644 --- a/code/game/objects/items/plushes.dm +++ b/code/game/objects/items/plushes.dm @@ -595,6 +595,21 @@ squeak_override = list('sound/effects/blobattack.ogg' = 1) gender = FEMALE //given all the jokes and drawings, I'm not sure the xenobiologists would make a slimeboy +/obj/item/toy/plush/slimeplushie/annie + name = "slime plushie" + desc = "An adorable stuffed toy that resembles a slimey crewmember." + icon_state = "annie" + item_state = "annie" + attack_verb = list("blorbled", "slimed", "absorbed", "glomped") + +/obj/item/toy/plush/slimeplushie/paxton + name = "slime plushie" + desc = "An adorable stuffed toy that resembles a slimey crewmember." + icon_state = "paxton" + item_state = "paxton" + attack_verb = list("blorbled", "slimed", "absorbed", "glomped", "CQC'd", "jabroni'd", "powergamed", "robusted", "cakehatted") + gender = MALE + /obj/item/toy/plush/awakenedplushie name = "awakened plushie" desc = "An ancient plushie that has grown enlightened to the true nature of reality." @@ -741,6 +756,10 @@ icon_state = "pavel" item_state = "pavel" +/obj/item/toy/plush/mammal/mason + icon_state = "mason" + item_state = "mason" + /obj/item/toy/plush/mammal/oten icon_state = "oten" item_state = "oten" diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index 68c51bb4c8afefabee93e54a0b0eee281a14bcbe..9018249288563d4341e38cf19ed98d04480afb8e 100644 GIT binary patch delta 18084 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 Q&!S=QboFyt=akR{0DsUREC2ui delta 17034 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 V`q=a+F5rn144$rjF6*2UngIQ1@l*f+ From eccfb8cc15d0c9c61105fb6feee72cc45513c675 Mon Sep 17 00:00:00 2001 From: Sishen Date: Thu, 6 Jun 2019 05:22:41 -0400 Subject: [PATCH 203/370] Update plushes.dmi --- icons/obj/plushes.dmi | Bin 38687 -> 38691 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index 9018249288563d4341e38cf19ed98d04480afb8e..e3b10798f794f07810e533409cde155c9fc00572 100644 GIT binary patch delta 17349 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 delta 17272 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 X3dk*-X%Q*W00000NkvXXu0mjfQMS8U From b7b2fbc843658682cb2eee6f64a22f58c26f1fa3 Mon Sep 17 00:00:00 2001 From: Sishen Date: Thu, 6 Jun 2019 05:24:27 -0400 Subject: [PATCH 204/370] Update plushes.dmi --- icons/obj/plushes.dmi | Bin 38691 -> 38694 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index e3b10798f794f07810e533409cde155c9fc00572..324c4a17eead204cfe92af3d9ca1418eeb327d99 100644 GIT binary patch delta 590 zcmV-U0ikGeic<6pbJbsR_ZrCEYijxA?lo+G?b1T* zVks2L2Z~;8fWr5loqMZq#MVxgB1SQ(VP&o)K5gq13WcHzdbI%_y?T$AoEqju`H-$B znCs;|8LhFL714vd@7IxIHuO>ZPTU#7Fc#z%-N1;%3=DnE? zi;F&OZEXPn?YwOG7ndfCP$?7&r6ly44d&_7r?9uT$KJhr`ACbCj?~egkcfixvM7c^ zp?u)zJq)J25Jq>xs;;&ibX}oUU<#$;^4h4P`GQyU;x{RMzNHyzN_`H|W-Tzb#uwSgNCL_SQG8dl~Qed-DTV04{k zTDR*YN$C^{Z%m`Y@m0)cKK`6s71H=BmHs?lq9R*VOXK-D}u?+NFiq z#ZoAg4-~!H0EO>8JNH)Kh^?I}MT}xn!^&JqeA?D26beNb^lk&>B&UXXQ9h*W3Fdlv zPeyFP$%rigl%v7$(IXA&38qje6%)Om2{Pu5D|zt6M&vwM2LQ0DHW>gg>h@Y*fIXYn zmP~?=qQc0a>9YW^BFujF3;^JN;2UgEd2|>Ig;H_R`%VyUurnb9gs3<3Nhv>o72U2r zLvZZp6G;8_EUZ16 z1`OasKGg^?!><)oZ;z9LjvYJlg$}=c8@)n8F#PsyNz0^AC?6&|w*mTp`1lZedwT$Y znVFeVUS3`v0O0A#Ir6*47pW4<4kq!ciy`oq2Dj!{VY( zTU%QIKszrR{>7yUBUB27LMaKoW`lY9^eOD^?Xh?7UOv*|q$73oCnTaEy)25MP$(Zb zdJlssFND#Zu&S#qT~}xr6_`S)xV$$4lnN?93Z>%m-n0QyC=`m=lbnVclc|Oc7W_Yu WDlh<;V56o00000 Date: Thu, 6 Jun 2019 15:20:27 +0200 Subject: [PATCH 205/370] forgot to pull from upstream. One second. --- code/__DEFINES/traits.dm | 58 +++++++++++++ code/datums/datum.dm | 1 + code/game/objects/items/weaponry.dm | 4 +- code/modules/mob/living/brain/brain_item.dm | 6 +- code/modules/mob/living/carbon/alien/alien.dm | 2 +- .../mob/living/carbon/alien/larva/life.dm | 2 +- code/modules/mob/living/carbon/carbon.dm | 14 +-- .../mob/living/carbon/carbon_defense.dm | 8 +- .../mob/living/carbon/carbon_movement.dm | 2 +- .../modules/mob/living/carbon/damage_procs.dm | 2 +- code/modules/mob/living/carbon/examine.dm | 4 +- .../mob/living/carbon/human/examine.dm | 8 +- code/modules/mob/living/carbon/human/human.dm | 8 +- .../mob/living/carbon/human/human_defense.dm | 10 +-- .../mob/living/carbon/human/human_helpers.dm | 6 +- .../mob/living/carbon/human/human_movement.dm | 6 +- .../mob/living/carbon/human/inventory.dm | 2 +- code/modules/mob/living/carbon/human/life.dm | 6 +- code/modules/mob/living/carbon/human/say.dm | 2 +- .../mob/living/carbon/human/species.dm | 38 ++++---- code/modules/mob/living/carbon/life.dm | 14 +-- .../modules/mob/living/carbon/update_icons.dm | 2 +- code/modules/mob/living/living_defines.dm | 2 - code/modules/mob/living/status_procs.dm | 86 ++----------------- code/modules/mob/living/taste.dm | 2 +- .../chemistry/reagents/drug_reagents.dm | 4 +- .../chemistry/reagents/medicine_reagents.dm | 8 +- .../crossbreeding/_status_effects.dm | 4 +- tgstation.dme | 24 +++--- 29 files changed, 162 insertions(+), 173 deletions(-) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 805e72cfcb..b620902bb8 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -1,3 +1,61 @@ +// trait accessor defines +#define ADD_TRAIT(target, trait, source) \ + do { \ + var/list/_L; \ + if (!target.status_traits) { \ + target.status_traits = list(); \ + _L = target.status_traits; \ + _L[trait] = list(source); \ + } else { \ + _L = target.status_traits; \ + if (_L[trait]) { \ + _L[trait] |= list(source); \ + } else { \ + _L[trait] = list(source); \ + } \ + } \ + } while (0) +#define REMOVE_TRAIT(target, trait, sources) \ + do { \ + var/list/_L = target.status_traits; \ + var/list/_S; \ + if (sources && !islist(sources)) { \ + _S = list(sources); \ + } else { \ + _S = sources\ + }; \ + if (_L && _L[trait]) { \ + for (var/_T in _L[trait]) { \ + if ((!_S && (_T != ROUNDSTART_TRAIT)) || (_T in _S)) { \ + _L[trait] -= _T \ + } \ + };\ + if (!length(_L[trait])) { \ + _L -= trait \ + }; \ + if (!length(_L)) { \ + target.status_traits = null \ + }; \ + } \ + } while (0) +#define REMOVE_TRAITS_NOT_IN(target, sources) \ + do { \ + var/list/_L = target.status_traits; \ + var/list/_S = sources; \ + if (_L) { \ + for (var/_T in _L) { \ + _L[_T] &= _S;\ + if (!length(_L[_T])) { \ + _L -= _T } \ + };\ + if (!length(_L)) { \ + target.status_traits = null\ + };\ + }\ + } while (0) +#define HAS_TRAIT(target, trait) (target.status_traits ? (target.status_traits[trait] ? TRUE : FALSE) : FALSE) +#define HAS_TRAIT_FROM(target, trait, source) (target.status_traits ? (target.status_traits[trait] ? (source in target.status_traits[trait]) : FALSE) : FALSE) + //mob traits #define TRAIT_BLIND "blind" #define TRAIT_MUTE "mute" diff --git a/code/datums/datum.dm b/code/datums/datum.dm index e74e30b536..cdb195dd82 100644 --- a/code/datums/datum.dm +++ b/code/datums/datum.dm @@ -2,6 +2,7 @@ var/gc_destroyed //Time when this object was destroyed. var/list/active_timers //for SStimer var/list/datum_components //for /datum/components + var/list/status_traits var/list/comp_lookup //it used to be for looking up components which had registered a signal but now anything can register var/list/signal_procs var/signal_enabled = FALSE diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index ffbe5c004c..ccc703296e 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -115,10 +115,10 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/item/claymore/highlander/pickup(mob/living/user) to_chat(user, "The power of Scotland protects you! You are shielded from all stuns and knockdowns.") user.add_stun_absorption("highlander", INFINITY, 1, " is protected by the power of Scotland!", "The power of Scotland absorbs the stun!", " is protected by the power of Scotland!") - user.add_trait(TRAIT_IGNORESLOWDOWN, HIGHLANDER) + user.ignore_slowdown(HIGHLANDER) /obj/item/claymore/highlander/dropped(mob/living/user) - user.remove_trait(TRAIT_IGNORESLOWDOWN, HIGHLANDER) + user.unignore_slowdown(HIGHLANDER) if(!QDELETED(src)) qdel(src) //If this ever happens, it's because you lost an arm diff --git a/code/modules/mob/living/brain/brain_item.dm b/code/modules/mob/living/brain/brain_item.dm index 2f3ee10428..2ced3054c4 100644 --- a/code/modules/mob/living/brain/brain_item.dm +++ b/code/modules/mob/living/brain/brain_item.dm @@ -21,7 +21,7 @@ name = "brain" if(C.mind && C.mind.has_antag_datum(/datum/antagonist/changeling) && !no_id_transfer) //congrats, you're trapped in a body you don't control - if(brainmob && !(C.stat == DEAD || (C.has_trait(TRAIT_DEATHCOMA)))) + if(brainmob && !(C.stat == DEAD || (HAS_TRAIT(C, TRAIT_DEATHCOMA)))) to_chat(brainmob, "You can't feel your body! You're still just a brain!") forceMove(C) C.update_hair() @@ -64,7 +64,7 @@ name = "[L.name]'s brain" if(brainmob) return - + if(!L.mind) return brainmob = new(src) @@ -76,7 +76,7 @@ if(!brainmob.stored_dna) brainmob.stored_dna = new /datum/dna/stored(brainmob) C.dna.copy_dna(brainmob.stored_dna) - if(L.has_trait(TRAIT_NOCLONE)) + if(HAS_TRAIT(L, TRAIT_NOCLONE)) brainmob.status_traits[TRAIT_NOCLONE] = L.status_traits[TRAIT_NOCLONE] var/obj/item/organ/zombie_infection/ZI = L.getorganslot(ORGAN_SLOT_ZOMBIE) if(ZI) diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index 10fddfcb20..c8ece3f656 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -105,7 +105,7 @@ Des: Gives the client of the alien an image on each infected mob. if (client) for (var/i in GLOB.mob_living_list) var/mob/living/L = i - if(L.has_trait(TRAIT_XENO_HOST)) + if(HAS_TRAIT(L, TRAIT_XENO_HOST)) var/obj/item/organ/body_egg/alien_embryo/A = L.getorgan(/obj/item/organ/body_egg/alien_embryo) if(A) var/I = image('icons/mob/alien.dmi', loc = L, icon_state = "infected[A.stage]") diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm index 383edd566a..01a52b3b80 100644 --- a/code/modules/mob/living/carbon/alien/larva/life.dm +++ b/code/modules/mob/living/carbon/alien/larva/life.dm @@ -18,7 +18,7 @@ if(health<= -maxHealth || !getorgan(/obj/item/organ/brain)) death() return - if(IsUnconscious() || IsSleeping() || getOxyLoss() > 50 || (has_trait(TRAIT_DEATHCOMA)) || health <= crit_threshold) + if(IsUnconscious() || IsSleeping() || getOxyLoss() > 50 || (HAS_TRAIT(src, TRAIT_DEATHCOMA)) || health <= crit_threshold) if(stat == CONSCIOUS) stat = UNCONSCIOUS blind_eyes(1) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index ea13255dfe..fb09de7ec2 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -167,7 +167,7 @@ if(!throwable_mob.buckled) thrown_thing = throwable_mob stop_pulling() - if(has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(src, TRAIT_PACIFISM)) to_chat(src, "You gently let go of [throwable_mob].") adjustStaminaLossBuffered(25)//CIT CHANGE - throwing an entire person shall be very tiring var/turf/start_T = get_turf(loc) //Get the start and target tile for the descriptors @@ -179,7 +179,7 @@ thrown_thing = I dropItemToGround(I) - if(has_trait(TRAIT_PACIFISM) && I.throwforce) + if(HAS_TRAIT(src, TRAIT_PACIFISM) && I.throwforce) to_chat(src, "You set [I] down gently on the ground.") return @@ -416,7 +416,7 @@ var/modifier = 0 - if(has_trait(TRAIT_CLUMSY)) + if(HAS_TRAIT(src, TRAIT_CLUMSY)) modifier -= 40 //Clumsy people are more likely to hit themselves -Honk! //CIT CHANGES START HERE @@ -462,7 +462,7 @@ return ..() /mob/living/carbon/proc/vomit(lost_nutrition = 10, blood = FALSE, stun = TRUE, distance = 1, message = TRUE, toxic = FALSE) - if(has_trait(TRAIT_NOHUNGER)) + if(HAS_TRAIT(src, TRAIT_NOHUNGER)) return 1 if(nutrition < 100 && !blood) @@ -759,14 +759,14 @@ if(status_flags & GODMODE) return if(stat != DEAD) - if(health <= HEALTH_THRESHOLD_DEAD && !has_trait(TRAIT_NODEATH)) + if(health <= HEALTH_THRESHOLD_DEAD && !HAS_TRAIT(src, TRAIT_NODEATH)) death() return - if(IsUnconscious() || IsSleeping() || getOxyLoss() > 50 || (has_trait(TRAIT_DEATHCOMA)) || (health <= HEALTH_THRESHOLD_FULLCRIT && !has_trait(TRAIT_NOHARDCRIT))) + if(IsUnconscious() || IsSleeping() || getOxyLoss() > 50 || (HAS_TRAIT(src, TRAIT_DEATHCOMA)) || (health <= HEALTH_THRESHOLD_FULLCRIT && !HAS_TRAIT(src, TRAIT_NOHARDCRIT))) stat = UNCONSCIOUS blind_eyes(1) else - if(health <= crit_threshold && !has_trait(TRAIT_NOSOFTCRIT)) + if(health <= crit_threshold && !HAS_TRAIT(src, TRAIT_NOSOFTCRIT)) stat = SOFT_CRIT else stat = CONSCIOUS diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index d8bb90460a..e40c591014 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -224,7 +224,7 @@ /mob/living/carbon/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, override = 0, tesla_shock = 0, illusion = 0, stun = TRUE) if(tesla_shock && (flags_1 & TESLA_IGNORE_1)) return FALSE - if(has_trait(TRAIT_SHOCKIMMUNE)) + if(HAS_TRAIT(src, TRAIT_SHOCKIMMUNE)) return FALSE shock_damage *= siemens_coeff if(dna && dna.species) @@ -261,7 +261,7 @@ to_chat(M, "You can't put [p_them()] out with just your bare hands!") return - if(health >= 0 && !(has_trait(TRAIT_FAKEDEATH))) + if(health >= 0 && !(HAS_TRAIT(src, TRAIT_FAKEDEATH))) if(lying) if(buckled) @@ -350,12 +350,12 @@ if(eyes.eye_damage > 20) if(prob(eyes.eye_damage - 20)) - if(!has_trait(TRAIT_NEARSIGHT)) + if(!HAS_TRAIT(src, TRAIT_NEARSIGHT)) to_chat(src, "Your eyes start to burn badly!") become_nearsighted(EYE_DAMAGE) else if(prob(eyes.eye_damage - 25)) - if(!has_trait(TRAIT_BLIND)) + if(!HAS_TRAIT(src, TRAIT_BLIND)) to_chat(src, "You can't see anything!") become_blind(EYE_DAMAGE) diff --git a/code/modules/mob/living/carbon/carbon_movement.dm b/code/modules/mob/living/carbon/carbon_movement.dm index 37b888a6b8..8e6c888c40 100644 --- a/code/modules/mob/living/carbon/carbon_movement.dm +++ b/code/modules/mob/living/carbon/carbon_movement.dm @@ -37,7 +37,7 @@ /mob/living/carbon/Move(NewLoc, direct) . = ..() if(. && mob_has_gravity()) //floating is easy - if(has_trait(TRAIT_NOHUNGER)) + if(HAS_TRAIT(src, TRAIT_NOHUNGER)) nutrition = NUTRITION_LEVEL_FED - 1 //just less than feeling vigorous else if(nutrition && stat != DEAD) nutrition -= HUNGER_FACTOR/10 diff --git a/code/modules/mob/living/carbon/damage_procs.dm b/code/modules/mob/living/carbon/damage_procs.dm index c21f9ce213..749ae3b5b0 100644 --- a/code/modules/mob/living/carbon/damage_procs.dm +++ b/code/modules/mob/living/carbon/damage_procs.dm @@ -83,7 +83,7 @@ return amount /mob/living/carbon/adjustToxLoss(amount, updating_health = TRUE, forced = FALSE) - if(!forced && has_trait(TRAIT_TOXINLOVER)) //damage becomes healing and healing becomes damage + if(!forced && HAS_TRAIT(src, TRAIT_TOXINLOVER)) //damage becomes healing and healing becomes damage amount = -amount if(amount > 0) blood_volume -= 5*amount diff --git a/code/modules/mob/living/carbon/examine.dm b/code/modules/mob/living/carbon/examine.dm index c42bd82797..22da46346c 100644 --- a/code/modules/mob/living/carbon/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -67,7 +67,7 @@ else msg += "[t_He] [t_is] severely deformed!\n" - if(has_trait(TRAIT_DUMB)) + if(HAS_TRAIT(src, TRAIT_DUMB)) msg += "[t_He] seem[p_s()] to be clumsy and unable to think.\n" if(fire_stacks > 0) @@ -88,7 +88,7 @@ if(digitalcamo) msg += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly unsimian manner.\n" - + if(combatmode) msg += "[t_He] [t_is] visibly tense[resting ? "." : ", and [t_is] standing in combative stance."]\n" diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 26e19ff376..94f08280d4 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -10,7 +10,7 @@ if(isliving(user)) var/mob/living/L = user - if(L.has_trait(TRAIT_PROSOPAGNOSIA)) + if(HAS_TRAIT(L, TRAIT_PROSOPAGNOSIA)) obscure_name = TRUE var/msg = "*---------*\nThis is [!obscure_name ? name : "Unknown"]!\n" @@ -93,7 +93,7 @@ if(!(SLOT_GLASSES in obscured)) if(glasses) msg += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes.\n" - else if(eye_color == BLOODCULT_EYE && iscultist(src) && has_trait(CULT_EYES)) + else if(eye_color == BLOODCULT_EYE && iscultist(src) && HAS_TRAIT(src, CULT_EYES)) msg += "[t_His] eyes are glowing an unnatural red!\n" //ears @@ -126,7 +126,7 @@ msg += "[t_He] [t_is] twitching ever so slightly.\n" var/appears_dead = 0 - if(stat == DEAD || (has_trait(TRAIT_FAKEDEATH))) + if(stat == DEAD || (HAS_TRAIT(src, TRAIT_FAKEDEATH))) appears_dead = 1 if(suiciding) msg += "[t_He] appear[p_s()] to have committed suicide... there is no hope of recovery.\n" @@ -287,7 +287,7 @@ if(stat == UNCONSCIOUS) msg += "[t_He] [t_is]n't responding to anything around [t_him] and seem[p_s()] to be asleep.\n" else - if(has_trait(TRAIT_DUMB)) + if(HAS_TRAIT(src, TRAIT_DUMB)) msg += "[t_He] [t_has] a stupid expression on [t_his] face.\n" if(InCritical()) msg += "[t_He] [t_is] barely conscious.\n" diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 13da7b913c..0f962d7b0f 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -499,7 +499,7 @@ . = 1 // Default to returning true. if(user && !target_zone) target_zone = user.zone_selected - if(has_trait(TRAIT_PIERCEIMMUNE) && !bypass_immunity) + if(HAS_TRAIT(src, TRAIT_PIERCEIMMUNE) && !bypass_immunity) . = 0 // If targeting the head, see if the head item is thin enough. // If targeting anything else, see if the wear suit is thin enough. @@ -604,7 +604,7 @@ threatcount += 4 //fuk u antags <3 //no you //mindshield implants imply trustworthyness - if(has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(src, TRAIT_MINDSHIELD)) threatcount -= 1 //Agent cards lower threatlevel. @@ -640,7 +640,7 @@ /mob/living/carbon/human/proc/do_cpr(mob/living/carbon/C) CHECK_DNA_AND_SPECIES(C) - if(C.stat == DEAD || (C.has_trait(TRAIT_FAKEDEATH))) + if(C.stat == DEAD || (HAS_TRAIT(C, TRAIT_FAKEDEATH))) to_chat(src, "[C.name] is dead!") return if(is_mouth_covered()) @@ -657,7 +657,7 @@ to_chat(src, "You fail to perform CPR on [C]!") return 0 - var/they_breathe = !C.has_trait(TRAIT_NOBREATH) + var/they_breathe = !HAS_TRAIT(C, TRAIT_NOBREATH) var/they_lung = C.getorganslot(ORGAN_SLOT_LUNGS) if(C.health > C.crit_threshold) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index b66ebdb001..b8278d503a 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -138,7 +138,7 @@ else if(I) if(I.throw_speed >= EMBED_THROWSPEED_THRESHOLD) if(can_embed(I)) - if(prob(I.embedding.embed_chance) && !has_trait(TRAIT_PIERCEIMMUNE)) + if(prob(I.embedding.embed_chance) && !HAS_TRAIT(src, TRAIT_PIERCEIMMUNE)) throw_alert("embeddedobject", /obj/screen/alert/embeddedobject) var/obj/item/bodypart/L = pick(bodyparts) L.embedded_objects |= I @@ -153,7 +153,7 @@ return ..() /mob/living/carbon/human/grabbedby(mob/living/carbon/user, supress_message = 0) - if(user == src && pulling && !pulling.anchored && grab_state >= GRAB_AGGRESSIVE && (has_trait(TRAIT_FAT)) && ismonkey(pulling)) + if(user == src && pulling && !pulling.anchored && grab_state >= GRAB_AGGRESSIVE && (HAS_TRAIT(src, TRAIT_FAT)) && ismonkey(pulling)) devour_mob(pulling) else ..() @@ -668,7 +668,7 @@ if(prob(30)) burndamage += rand(30,40) - if(has_trait(TRAIT_SELF_AWARE)) + if(HAS_TRAIT(src, TRAIT_SELF_AWARE)) status = "[brutedamage] brute damage and [burndamage] burn damage" if(!brutedamage && !burndamage) status = "no damage" @@ -695,7 +695,7 @@ var/no_damage if(status == "OK" || status == "no damage") no_damage = TRUE - to_chat(src, "\t Your [LB.name] [has_trait(TRAIT_SELF_AWARE) ? "has" : "is"] [status].") + to_chat(src, "\t Your [LB.name] [HAS_TRAIT(src, TRAIT_SELF_AWARE) ? "has" : "is"] [status].") for(var/obj/item/I in LB.embedded_objects) to_chat(src, "\t There is \a [I] embedded in your [LB.name]!") @@ -710,7 +710,7 @@ to_chat(src, "You're completely exhausted.") else to_chat(src, "You feel fatigued.") - if(has_trait(TRAIT_SELF_AWARE)) + if(HAS_TRAIT(src, TRAIT_SELF_AWARE)) if(toxloss) if(toxloss > 10) to_chat(src, "You feel sick.") diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm index dd37563f8f..0b40d3d26a 100644 --- a/code/modules/mob/living/carbon/human/human_helpers.dm +++ b/code/modules/mob/living/carbon/human/human_helpers.dm @@ -56,7 +56,7 @@ if( head && (head.flags_inv&HIDEFACE) ) return if_no_face //Likewise for hats var/obj/item/bodypart/O = get_bodypart(BODY_ZONE_HEAD) - if( !O || (has_trait(TRAIT_DISFIGURED)) || (O.brutestate+O.burnstate)>2 || cloneloss>50 || !real_name || nameless) //disfigured. use id-name if possible + if( !O || (HAS_TRAIT(src, TRAIT_DISFIGURED)) || (O.brutestate+O.burnstate)>2 || cloneloss>50 || !real_name || nameless) //disfigured. use id-name if possible return if_no_face return real_name @@ -92,7 +92,7 @@ /mob/living/carbon/human/IsAdvancedToolUser() - if(has_trait(TRAIT_MONKEYLIKE)) + if(HAS_TRAIT(src, TRAIT_MONKEYLIKE)) return FALSE return TRUE//Humans can use guns and such @@ -138,7 +138,7 @@ if(src.dna.check_mutation(HULK)) to_chat(src, "Your meaty finger is much too large for the trigger guard!") return FALSE - if(has_trait(TRAIT_NOGUNS)) + if(HAS_TRAIT(src, TRAIT_NOGUNS)) to_chat(src, "Your fingers don't fit in the trigger guard!") return FALSE if(mind) diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index 1addb3615c..6ea9c985e2 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -1,7 +1,7 @@ /mob/living/carbon/human/get_movespeed_modifiers() var/list/considering = ..() . = considering - if(has_trait(TRAIT_IGNORESLOWDOWN)) + if(HAS_TRAIT(src, TRAIT_IGNORESLOWDOWN)) for(var/id in .) var/list/data = .[id] if(data[MOVESPEED_DATA_INDEX_FLAGS] & IGNORE_NOSLOW) @@ -13,10 +13,10 @@ . += dna.species.movement_delay(src) /mob/living/carbon/human/slip(knockdown_amount, obj/O, lube) - if(has_trait(TRAIT_NOSLIPALL)) + if(HAS_TRAIT(src, TRAIT_NOSLIPALL)) return 0 if (!(lube&GALOSHES_DONT_HELP)) - if(has_trait(TRAIT_NOSLIPWATER)) + if(HAS_TRAIT(src, TRAIT_NOSLIPWATER)) return 0 if(shoes && istype(shoes, /obj/item/clothing)) var/obj/item/clothing/CS = shoes diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index 7e2545f93e..176d967d52 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -187,7 +187,7 @@ if(G.tint) update_tint() if(G.vision_correction) - if(has_trait(TRAIT_NEARSIGHT)) + if(HAS_TRAIT(src, TRAIT_NEARSIGHT)) overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1) adjust_eye_damage(0) if(G.vision_flags || G.darkness_view || G.invis_override || G.invis_view || !isnull(G.lighting_alpha)) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index a50fb4fe79..12b1d73778 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -63,7 +63,7 @@ /mob/living/carbon/human/handle_traits() if(eye_blind) //blindness, heals slowly over time - if(has_trait(TRAIT_BLIND, EYES_COVERED)) //covering your eyes heals blurry eyes faster + if(HAS_TRAIT(src, TRAIT_BLIND, EYES_COVERED)) //covering your eyes heals blurry eyes faster adjust_blindness(-3) else adjust_blindness(-1) @@ -95,7 +95,7 @@ if(!L) if(health >= crit_threshold) adjustOxyLoss(HUMAN_MAX_OXYLOSS + 1) - else if(!has_trait(TRAIT_NOCRITDAMAGE)) + else if(!HAS_TRAIT(src, TRAIT_NOCRITDAMAGE)) adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) failed_last_breath = 1 @@ -332,7 +332,7 @@ HM.on_life(src) /mob/living/carbon/human/proc/handle_heart() - var/we_breath = !has_trait(TRAIT_NOBREATH, SPECIES_TRAIT) + var/we_breath = !HAS_TRAIT(src, TRAIT_NOBREATH, SPECIES_TRAIT) if(!undergoing_cardiac_arrest()) return diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index 7ce3f78da0..b0ac43aa42 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -54,7 +54,7 @@ /mob/living/carbon/human/IsVocal() // how do species that don't breathe talk? magic, that's what. - if(!has_trait(TRAIT_NOBREATH, SPECIES_TRAIT) && !getorganslot(ORGAN_SLOT_LUNGS)) + if(!HAS_TRAIT(src, TRAIT_NOBREATH, SPECIES_TRAIT) && !getorganslot(ORGAN_SLOT_LUNGS)) return FALSE if(mind) return !mind.miming diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 3930d19168..769b67e8e6 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -322,7 +322,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD) if(!HD) //Decapitated return - if(H.has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(H, TRAIT_HUSK)) return var/datum/sprite_accessory/S @@ -462,7 +462,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD) - if(HD && !(H.has_trait(TRAIT_HUSK))) + if(HD && !(HAS_TRAIT(H, TRAIT_HUSK))) // lipstick if(H.lip_style && (LIPS in species_traits)) var/mutable_appearance/lip_overlay = mutable_appearance('icons/mob/human_face.dmi', "lips_[H.lip_style]", -BODY_LAYER) @@ -757,7 +757,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) for(var/index=1, index<=colorlist.len, index++) colorlist[index] = colorlist[index]/255 - if(!(H.has_trait(TRAIT_HUSK))) + if(!HAS_TRAIT(H, TRAIT_HUSK)) if(!forced_colour) switch(S.color_src) if(SKINTONE) @@ -916,11 +916,11 @@ GLOBAL_LIST_EMPTY(roundstart_races) /datum/species/proc/spec_life(mob/living/carbon/human/H) - if(H.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(H, TRAIT_NOBREATH)) H.setOxyLoss(0) H.losebreath = 0 - var/takes_crit_damage = (!H.has_trait(TRAIT_NOCRITDAMAGE)) + var/takes_crit_damage = !HAS_TRAIT(H, TRAIT_NOCRITDAMAGE) if((H.health < H.crit_threshold) && takes_crit_damage) H.adjustBruteLoss(1) @@ -1158,7 +1158,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) /datum/species/proc/handle_digestion(mob/living/carbon/human/H) //The fucking TRAIT_FAT mutation is the dumbest shit ever. It makes the code so difficult to work with - if(H.has_trait(TRAIT_FAT))//I share your pain, past coder. + if(HAS_TRAIT(H, TRAIT_FAT))//I share your pain, past coder. if(H.overeatduration < 100) to_chat(H, "You feel fit again!") H.remove_trait(TRAIT_FAT, OBESITY) @@ -1172,7 +1172,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) H.update_inv_wear_suit() // nutrition decrease and satiety - if (H.nutrition > 0 && H.stat != DEAD && !H.has_trait(TRAIT_NOHUNGER)) + if (H.nutrition > 0 && H.stat != DEAD && !HAS_TRAIT(H, TRAIT_NOHUNGER)) // THEY HUNGER var/hunger_rate = HUNGER_FACTOR GET_COMPONENT_FROM(mood, /datum/component/mood, H) @@ -1201,7 +1201,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(H.nutrition > NUTRITION_LEVEL_FAT) H.metabolism_efficiency = 1 else if(H.nutrition > NUTRITION_LEVEL_FED && H.satiety > 80) - if(H.metabolism_efficiency != 1.25 && !H.has_trait(TRAIT_NOHUNGER)) + if(H.metabolism_efficiency != 1.25 && !HAS_TRAIT(H, TRAIT_NOHUNGER)) to_chat(H, "You feel vigorous.") H.metabolism_efficiency = 1.25 else if(H.nutrition < NUTRITION_LEVEL_STARVING + 50) @@ -1230,7 +1230,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) . = FALSE var/radiation = H.radiation - if(H.has_trait(TRAIT_RADIMMUNE)) + if(HAS_TRAIT(H, TRAIT_RADIMMUNE)) radiation = 0 return TRUE @@ -1277,17 +1277,17 @@ GLOBAL_LIST_EMPTY(roundstart_races) gravity = H.has_gravity() if(gravity && !flight) //Check for chemicals and innate speedups and slowdowns if we're on the ground - if(H.has_trait(TRAIT_GOTTAGOFAST)) + if(HAS_TRAIT(H, TRAIT_GOTTAGOFAST)) . -= 1 - if(H.has_trait(TRAIT_GOTTAGOREALLYFAST)) + if(HAS_TRAIT(H, TRAIT_GOTTAGOREALLYFAST)) . -= 2 . += speedmod . += H.physiology.speed_mod - if (H.m_intent == MOVE_INTENT_WALK && H.has_trait(TRAIT_SPEEDY_STEP)) + if (H.m_intent == MOVE_INTENT_WALK && HAS_TRAIT(H, TRAIT_SPEEDY_STEP)) . -= 1 - if(H.has_trait(TRAIT_IGNORESLOWDOWN)) + if(HAS_TRAIT(H, TRAIT_IGNORESLOWDOWN)) ignoreslow = 1 if(!gravity) @@ -1338,9 +1338,9 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(SANITY_UNSTABLE to SANITY_DISTURBED) . += 0.5 - if(H.has_trait(TRAIT_FAT)) + if(HAS_TRAIT(H, TRAIT_FAT)) . += (1.5 - flight) - if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !H.has_trait(TRAIT_RESISTCOLD)) + if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !HAS_TRAIT(H, TRAIT_RESISTCOLD)) . += (BODYTEMP_COLD_DAMAGE_LIMIT - H.bodytemperature) / COLD_SLOWDOWN_FACTOR return . @@ -1353,13 +1353,13 @@ GLOBAL_LIST_EMPTY(roundstart_races) ////////////////// /datum/species/proc/help(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(target.health >= 0 && !(target.has_trait(TRAIT_FAKEDEATH))) + if(target.health >= 0 && !HAS_TRAIT(target, TRAIT_FAKEDEATH)) target.help_shake_act(user) if(target != user) log_combat(user, target, "shaked") return 1 else - var/we_breathe = !user.has_trait(TRAIT_NOBREATH) + var/we_breathe = !HAS_TRAIT(user, TRAIT_NOBREATH) var/we_lung = user.getorganslot(ORGAN_SLOT_LUNGS) if(we_breathe && we_lung) @@ -1384,7 +1384,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) /datum/species/proc/harm(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm [target]!") return FALSE if(user.getStaminaLoss() >= STAMINA_SOFTCRIT) //CITADEL CHANGE - makes it impossible to punch while in stamina softcrit @@ -1480,7 +1480,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) "You slap [user == target ? "yourself" : "\the [target]"] in the face! ",\ "You hear a slap." ) - if (!target.has_trait(TRAIT_NYMPHO)) + if (!target.HAS_TRAIT(TRAIT_NYMPHO)) stop_wagging_tail(target) user.do_attack_animation(target, ATTACK_EFFECT_FACE_SLAP) user.adjustStaminaLossBuffered(3) diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index e757e6dcf4..db8ca40a56 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -116,7 +116,7 @@ air_update_turf() /mob/living/carbon/proc/has_smoke_protection() - if(has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(src, TRAIT_NOBREATH)) return TRUE return FALSE @@ -324,7 +324,7 @@ return // No decay if formaldehyde in corpse or when the corpse is charred - if(reagents.has_reagent("formaldehyde", 15) || has_trait(TRAIT_HUSK)) + if(reagents.has_reagent("formaldehyde", 15) || HAS_TRAIT(src, TRAIT_HUSK)) return // Also no decay if corpse chilled or not organic/undead @@ -551,7 +551,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put if(drunkenness >= 6) SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "drunk", /datum/mood_event/drunk) jitteriness = max(jitteriness - 3, 0) - if(has_trait(TRAIT_DRUNK_HEALING)) + if(HAS_TRAIT(src, TRAIT_DRUNK_HEALING)) adjustBruteLoss(-0.12, FALSE) adjustFireLoss(-0.06, FALSE) @@ -576,7 +576,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put if(prob(25)) confused += 2 Dizzy(10) - if(has_trait(TRAIT_DRUNK_HEALING)) // effects stack with lower tiers + if(HAS_TRAIT(src, TRAIT_DRUNK_HEALING)) // effects stack with lower tiers adjustBruteLoss(-0.3, FALSE) adjustFireLoss(-0.15, FALSE) @@ -589,7 +589,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put if(drunkenness >= 61) if(prob(50)) blur_eyes(5) - if(has_trait(TRAIT_DRUNK_HEALING)) + if(HAS_TRAIT(src, TRAIT_DRUNK_HEALING)) adjustBruteLoss(-0.4, FALSE) adjustFireLoss(-0.2, FALSE) @@ -657,7 +657,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put /mob/living/carbon/proc/liver_failure() reagents.metabolize(src, can_overdose=FALSE, liverless = TRUE) - if(has_trait(TRAIT_STABLEHEART)) + if(HAS_TRAIT(src, TRAIT_STABLEHEART)) return adjustToxLoss(4, TRUE, TRUE) if(prob(30)) @@ -693,7 +693,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put return TRUE /mob/living/carbon/proc/needs_heart() - if(has_trait(TRAIT_STABLEHEART)) + if(HAS_TRAIT(src, TRAIT_STABLEHEART)) return FALSE if(dna && dna.species && (NOBLOOD in dna.species.species_traits)) //not all carbons have species! return FALSE diff --git a/code/modules/mob/living/carbon/update_icons.dm b/code/modules/mob/living/carbon/update_icons.dm index 212b96e6d9..87bf662c4f 100644 --- a/code/modules/mob/living/carbon/update_icons.dm +++ b/code/modules/mob/living/carbon/update_icons.dm @@ -279,7 +279,7 @@ else . += "-robotic" - if(has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(src, TRAIT_HUSK)) . += "-husk" diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 0ba5b4c56d..3b0af53866 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -33,8 +33,6 @@ var/incorporeal_move = FALSE //FALSE is off, INCORPOREAL_MOVE_BASIC is normal, INCORPOREAL_MOVE_SHADOW is for ninjas //and INCORPOREAL_MOVE_JAUNT is blocked by holy water/salt - var/list/status_traits = list() - var/list/roundstart_quirks = list() var/list/surgeries = list() //a list of surgery datums. generally empty, they're added when the player wants them. diff --git a/code/modules/mob/living/status_procs.dm b/code/modules/mob/living/status_procs.dm index d1c72069ac..537ce8e67d 100644 --- a/code/modules/mob/living/status_procs.dm +++ b/code/modules/mob/living/status_procs.dm @@ -140,17 +140,6 @@ /////////////////////////////////// DISABILITIES //////////////////////////////////// -/mob/living/proc/add_trait(trait, source) - if(!status_traits[trait]) - status_traits[trait] = list(source) - on_add_trait(trait, source) - else - status_traits[trait] |= list(source) - -/mob/living/proc/on_add_trait(trait, source) - if(trait == TRAIT_IGNORESLOWDOWN) - update_movespeed(FALSE) - /mob/living/proc/add_quirk(quirk, spawn_effects) //separate proc due to the way these ones are handled if(has_trait(quirk)) return @@ -160,80 +149,15 @@ new T (src, spawn_effects) return TRUE -/mob/living/proc/remove_trait(trait, list/sources, force) - if(!status_traits[trait]) - return - - if(locate(ROUNDSTART_TRAIT) in status_traits[trait] && !force) //mob traits applied through roundstart cannot normally be removed - return - - if(!sources) // No defined source cures the trait entirely. - status_traits -= trait - on_remove_trait(trait, sources, force) - return - - if(!islist(sources)) - sources = list(sources) - - if(LAZYLEN(sources)) - for(var/S in sources) - if(S in status_traits[trait]) - status_traits[trait] -= S - else - status_traits[trait] = list() - - if(!LAZYLEN(status_traits[trait])) - status_traits -= trait - on_remove_trait(trait, sources, force) - -/mob/living/proc/on_remove_trait(trait, list/sources, force) - if(trait == TRAIT_IGNORESLOWDOWN) - update_movespeed(FALSE) - /mob/living/proc/remove_quirk(quirk) var/datum/quirk/T = roundstart_quirks[quirk] if(T) qdel(T) return TRUE -/mob/living/proc/has_trait(trait, list/sources) - if(!status_traits[trait]) - return FALSE - - . = FALSE - - if(sources && !islist(sources)) - sources = list(sources) - if(LAZYLEN(sources)) - for(var/S in sources) - if(S in status_traits[trait]) - return TRUE - else if(LAZYLEN(status_traits[trait])) - return TRUE - /mob/living/proc/has_quirk(quirk) return roundstart_quirks[quirk] -/mob/living/proc/remove_all_traits(remove_species_traits = FALSE, remove_organ_traits = FALSE, remove_quirks = FALSE) - - var/list/blacklisted_sources = list() - if(!remove_species_traits) - blacklisted_sources += SPECIES_TRAIT - if(!remove_organ_traits) - blacklisted_sources += ORGAN_TRAIT - if(!remove_quirks) - blacklisted_sources += ROUNDSTART_TRAIT - - for(var/kebab in status_traits) - var/skip - for(var/S in blacklisted_sources) - if(S in status_traits[kebab]) - skip = TRUE - break - if(!skip) - remove_trait(kebab, null, TRUE) - CHECK_TICK - /////////////////////////////////// TRAIT PROCS //////////////////////////////////// /mob/living/proc/cure_blind(list/sources) @@ -285,4 +209,12 @@ add_trait(TRAIT_FAKEDEATH, source) add_trait(TRAIT_DEATHCOMA, source) tod = STATION_TIME_TIMESTAMP("hh:mm:ss") - update_stat() \ No newline at end of file + update_stat() + +/mob/living/proc/unignore_slowdown(list/sources) + remove_trait(TRAIT_IGNORESLOWDOWN, sources) + update_movespeed(FALSE) + +/mob/living/proc/ignore_slowdown(source) + add_trait(TRAIT_IGNORESLOWDOWN, source) + update_movespeed(FALSE) \ No newline at end of file diff --git a/code/modules/mob/living/taste.dm b/code/modules/mob/living/taste.dm index 534bf36c59..fec024cebf 100644 --- a/code/modules/mob/living/taste.dm +++ b/code/modules/mob/living/taste.dm @@ -9,7 +9,7 @@ /mob/living/carbon/get_taste_sensitivity() var/obj/item/organ/tongue/tongue = getorganslot(ORGAN_SLOT_TONGUE) - if(istype(tongue) && !has_trait(TRAIT_AGEUSIA)) + if(istype(tongue) && !HAS_TRAIT(src, TRAIT_AGEUSIA)) . = tongue.taste_sensitivity else . = 101 // can't taste anything without a tongue diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index d77756a649..a4a2c8e527 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -167,10 +167,10 @@ /datum/reagent/drug/methamphetamine/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_IGNORESLOWDOWN, id) + L.ignore_slowdown(id) /datum/reagent/drug/methamphetamine/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_IGNORESLOWDOWN, id) + L.unignore_slowdown(id) ..() /datum/reagent/drug/methamphetamine/on_mob_life(mob/living/carbon/M) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 3970e8157b..6c9f77c762 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -632,10 +632,10 @@ /datum/reagent/medicine/morphine/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_IGNORESLOWDOWN, id) + L.ignore_slowdown(id) /datum/reagent/medicine/morphine/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_IGNORESLOWDOWN, id) + L.unignore_slowdown(id) ..() /datum/reagent/medicine/morphine/on_mob_life(mob/living/carbon/M) @@ -1224,11 +1224,11 @@ /datum/reagent/medicine/muscle_stimulant/on_mob_add(mob/living/M) . = ..() - M.add_trait(TRAIT_IGNORESLOWDOWN, id) + M.ignore_slowdown(id) /datum/reagent/medicine/muscle_stimulant/on_mob_delete(mob/living/M) . = ..() - M.remove_trait(TRAIT_IGNORESLOWDOWN, id) + M.unignore_slowdown(id) /datum/reagent/medicine/modafinil name = "Modafinil" diff --git a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm index aba54cfdf3..20d879cd77 100644 --- a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm +++ b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm @@ -767,11 +767,11 @@ datum/status_effect/stabilized/blue/on_remove() colour = "red" /datum/status_effect/stabilized/red/on_apply() - owner.add_trait(TRAIT_IGNORESLOWDOWN,"slimestatus") + owner.ignore_slowdown("slimestatus") return ..() /datum/status_effect/stabilized/red/on_remove() - owner.remove_trait(TRAIT_IGNORESLOWDOWN,"slimestatus") + owner.unignore_slowdown("slimestatus") /datum/status_effect/stabilized/green id = "stabilizedgreen" diff --git a/tgstation.dme b/tgstation.dme index 9219376f29..dd6db2a5e4 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2504,22 +2504,10 @@ #include "code\modules\research\designs\AI_module_designs.dm" #include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\bluespace_designs.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" -#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" #include "code\modules\research\designs\computer_part_designs.dm" #include "code\modules\research\designs\electronics_designs.dm" #include "code\modules\research\designs\equipment_designs.dm" #include "code\modules\research\designs\limbgrower_designs.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" -#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\designs\mecha_designs.dm" #include "code\modules\research\designs\mechfabricator_designs.dm" #include "code\modules\research\designs\medical_designs.dm" @@ -2537,6 +2525,18 @@ #include "code\modules\research\designs\autolathe_desings\autolathe_designs_sec_and_hacked.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tcomms_and_misc.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_tools.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_all_misc.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_cargo .dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_engi.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_medical.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sci.dm" +#include "code\modules\research\designs\comp_board_designs\comp_board_designs_sec.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_all_misc.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_cargo.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_engi.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_medical.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_sci.dm" +#include "code\modules\research\designs\machine_desings\machine_designs_service.dm" #include "code\modules\research\machinery\_production.dm" #include "code\modules\research\machinery\circuit_imprinter.dm" #include "code\modules\research\machinery\departmental_circuit_imprinter.dm" From 17febdd07ced8d66b7c129832c17e7482d447fc8 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 6 Jun 2019 08:53:01 -0500 Subject: [PATCH 206/370] Automatic changelog generation for PR #8534 [ci skip] --- html/changelogs/AutoChangeLog-pr-8534.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8534.yml diff --git a/html/changelogs/AutoChangeLog-pr-8534.yml b/html/changelogs/AutoChangeLog-pr-8534.yml new file mode 100644 index 0000000000..5c76fbdf36 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8534.yml @@ -0,0 +1,4 @@ +author: "dtfe3" +delete-after: True +changes: + - rscadd: "Pink Panties" From d3d2b8d8984821582955fef1cb93807c11ea1c45 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Thu, 6 Jun 2019 19:24:20 +0200 Subject: [PATCH 207/370] should be ready. --- code/__DEFINES/traits.dm | 2 +- code/_onclick/item_attack.dm | 2 +- code/datums/brain_damage/mild.dm | 4 +- code/datums/brain_damage/severe.dm | 14 ++--- code/datums/brain_damage/split_personality.dm | 2 +- code/datums/components/caltrop.dm | 4 +- code/datums/components/earhealing.dm | 2 +- code/datums/components/mood.dm | 8 +-- code/datums/diseases/_MobProcs.dm | 4 +- code/datums/diseases/advance/symptoms/heal.dm | 2 +- .../diseases/advance/symptoms/sensory.dm | 4 +- .../diseases/advance/symptoms/vision.dm | 2 +- code/datums/emotes.dm | 2 +- code/datums/martial/sleeping_carp.dm | 2 +- code/datums/mutations/body.dm | 8 +-- code/datums/mutations/cold_resistance.dm | 8 +-- code/datums/mutations/hulk.dm | 8 +-- code/datums/mutations/speech.dm | 4 +- code/datums/saymode.dm | 6 +-- code/datums/status_effects/buffs.dm | 4 +- code/datums/traits/_quirk.dm | 10 ++-- .../weather/weather_types/radiation_storm.dm | 2 +- code/game/data_huds.dm | 10 ++-- code/game/gamemodes/clock_cult/clock_cult.dm | 2 +- code/game/gamemodes/cult/cult.dm | 2 +- code/game/machinery/cloning.dm | 22 ++++---- code/game/machinery/computer/cloning.dm | 2 +- code/game/machinery/computer/dna_console.dm | 4 +- code/game/machinery/dna_scanner.dm | 2 +- code/game/machinery/doors/airlock.dm | 2 +- code/game/machinery/exp_cloner.dm | 12 ++--- code/game/machinery/harvester.dm | 2 +- .../machinery/porta_turret/portable_turret.dm | 2 +- code/game/mecha/mecha.dm | 4 +- code/game/objects/effects/decals/cleanable.dm | 2 +- .../effects/decals/cleanable/humans.dm | 2 +- code/game/objects/effects/mines.dm | 4 +- code/game/objects/items.dm | 8 +-- code/game/objects/items/body_egg.dm | 4 +- code/game/objects/items/crayons.dm | 2 +- code/game/objects/items/defib.dm | 4 +- code/game/objects/items/devices/flashlight.dm | 4 +- .../game/objects/items/devices/instruments.dm | 2 +- .../objects/items/devices/laserpointer.dm | 2 +- code/game/objects/items/devices/scanners.dm | 14 ++--- code/game/objects/items/dna_injector.dm | 4 +- code/game/objects/items/grenades/grenade.dm | 2 +- code/game/objects/items/handcuffs.dm | 2 +- .../items/implants/implant_mindshield.dm | 6 +-- .../objects/items/implants/implantchair.dm | 2 +- code/game/objects/items/manuals.dm | 10 ++-- code/game/objects/items/melee/misc.dm | 2 +- code/game/objects/items/melee/transforming.dm | 2 +- code/game/objects/items/pneumaticCannon.dm | 2 +- code/game/objects/items/religion.dm | 2 +- code/game/objects/items/shields.dm | 2 +- .../game/objects/items/stacks/sheets/glass.dm | 6 +-- code/game/objects/items/storage/book.dm | 2 +- code/game/objects/items/stunbaton.dm | 2 +- code/game/objects/items/tanks/tanks.dm | 2 +- code/game/objects/items/twohanded.dm | 2 +- code/game/objects/structures.dm | 2 +- .../structures/crates_lockers/closets.dm | 4 +- code/game/objects/structures/morgue.dm | 2 +- .../objects/structures/petrified_statue.dm | 4 +- code/modules/admin/antag_panel.dm | 2 +- code/modules/admin/verbs/pray.dm | 6 +-- .../antagonists/abductor/equipment/gland.dm | 4 +- .../antagonists/changeling/changeling.dm | 4 +- .../changeling/changeling_power.dm | 2 +- .../changeling/powers/fakedeath.dm | 2 +- .../antagonists/changeling/powers/hivemind.dm | 6 +-- .../antagonists/changeling/powers/revive.dm | 2 +- .../changeling/powers/strained_muscles.dm | 6 +-- .../changeling/powers/tiny_prick.dm | 4 +- .../clock_items/wraith_spectacles.dm | 14 ++--- .../clock_structures/ocular_warden.dm | 2 +- code/modules/antagonists/cult/cult.dm | 6 +-- code/modules/antagonists/cult/runes.dm | 6 +-- .../antagonists/highlander/highlander.dm | 4 +- .../overthrow/overthrow_converter.dm | 2 +- .../antagonists/revolution/revolution.dm | 2 +- code/modules/assembly/flash.dm | 2 +- code/modules/assembly/mousetrap.dm | 8 +-- code/modules/clothing/glasses/_glasses.dm | 2 +- code/modules/clothing/neck/_neck.dm | 2 +- code/modules/clothing/shoes/taeclowndo.dm | 2 +- code/modules/events/disease_outbreak.dm | 4 +- code/modules/food_and_drinks/drinks/drinks.dm | 2 +- .../food_and_drinks/drinks/drinks/bottle.dm | 2 +- code/modules/food_and_drinks/food.dm | 2 +- code/modules/food_and_drinks/food/snacks.dm | 2 +- .../food_and_drinks/food/snacks_pastry.dm | 2 +- code/modules/hydroponics/grown/nettle.dm | 2 +- .../mining/lavaland/necropolis_chests.dm | 8 +-- code/modules/mob/living/blood.dm | 14 ++--- code/modules/mob/living/carbon/human/death.dm | 4 +- .../mob/living/carbon/human/examine.dm | 2 +- .../mob/living/carbon/human/human_defense.dm | 2 +- code/modules/mob/living/carbon/human/life.dm | 4 +- code/modules/mob/living/carbon/human/say.dm | 2 +- .../mob/living/carbon/human/species.dm | 34 ++++++------ .../carbon/human/species_types/angel.dm | 4 +- .../carbon/human/species_types/golems.dm | 14 ++--- .../carbon/human/species_types/jellypeople.dm | 2 +- .../mob/living/carbon/human/status_procs.dm | 4 +- .../mob/living/carbon/human/update_icons.dm | 4 +- .../mob/living/carbon/monkey/combat.dm | 6 +-- code/modules/mob/living/carbon/monkey/life.dm | 4 +- .../mob/living/carbon/monkey/monkey.dm | 2 +- .../mob/living/carbon/monkey/update_icons.dm | 2 +- code/modules/mob/living/damage_procs.dm | 4 +- code/modules/mob/living/life.dm | 2 +- code/modules/mob/living/living.dm | 10 ++-- code/modules/mob/living/living_defense.dm | 18 +++---- code/modules/mob/living/say.dm | 2 +- .../living/simple_animal/animal_defense.dm | 4 +- .../mob/living/simple_animal/bot/medbot.dm | 4 +- .../mob/living/simple_animal/constructs.dm | 2 +- .../living/simple_animal/hostile/headcrab.dm | 2 +- .../hostile/megafauna/colossus.dm | 6 +-- code/modules/mob/living/status_procs.dm | 54 +++++++++---------- code/modules/mob/status_procs.dm | 16 +++--- code/modules/paperwork/contract.dm | 2 +- code/modules/paperwork/paper.dm | 4 +- code/modules/paperwork/paperplane.dm | 2 +- code/modules/photography/camera/camera.dm | 2 +- code/modules/power/lighting.dm | 2 +- code/modules/projectiles/gun.dm | 8 +-- .../projectiles/guns/ballistic/revolver.dm | 2 +- code/modules/projectiles/pins.dm | 2 +- code/modules/projectiles/projectile/energy.dm | 2 +- .../projectiles/projectile/energy/stun.dm | 2 +- .../projectile/special/hallucination.dm | 2 +- .../chemistry/reagents/alcohol_reagents.dm | 16 +++--- .../chemistry/reagents/drink_reagents.dm | 4 +- .../chemistry/reagents/drug_reagents.dm | 12 ++--- .../chemistry/reagents/food_reagents.dm | 2 +- .../chemistry/reagents/medicine_reagents.dm | 32 +++++------ .../chemistry/reagents/other_reagents.dm | 24 ++++----- .../chemistry/reagents/toxin_reagents.dm | 12 ++--- .../nanites/nanite_programs/buffing.dm | 8 +-- .../nanites/nanite_programs/healing.dm | 2 +- .../nanites/nanite_programs/suppression.dm | 8 +-- .../xenobiology/crossbreeding/_clothing.dm | 8 +-- .../xenobiology/crossbreeding/_misc.dm | 2 +- .../crossbreeding/_status_effects.dm | 32 +++++------ .../xenobiology/crossbreeding/charged.dm | 2 +- code/modules/spells/spell_types/genetic.dm | 4 +- code/modules/station_goals/dna_vault.dm | 12 ++--- code/modules/surgery/advanced/brainwashing.dm | 2 +- code/modules/surgery/advanced/revival.dm | 2 +- code/modules/surgery/bodyparts/bodyparts.dm | 6 +-- .../surgery/bodyparts/dismemberment.dm | 4 +- code/modules/surgery/bodyparts/head.dm | 2 +- code/modules/surgery/lipoplasty.dm | 2 +- code/modules/surgery/organs/ears.dm | 4 +- code/modules/surgery/organs/eyes.dm | 2 +- code/modules/surgery/organs/liver.dm | 2 +- code/modules/surgery/organs/lungs.dm | 8 +-- code/modules/surgery/organs/organ_internal.dm | 2 +- code/modules/surgery/plastic_surgery.dm | 4 +- .../code/game/gamemodes/gangs/gang_pen.dm | 2 +- .../objects/items/melee/eutactic_blades.dm | 2 +- .../code/game/objects/items/melee/misc.dm | 2 +- .../code/modules/arousal/organs/genitals.dm | 2 +- .../code/modules/mob/living/status_procs.dm | 2 +- .../modules/reagents/reagents/cit_reagents.dm | 6 +-- 168 files changed, 444 insertions(+), 444 deletions(-) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index fa39b35cab..adf8656708 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -131,6 +131,7 @@ #define TRAIT_NYMPHO "nymphomania" #define TRAIT_MASO "masochism" #define TRAIT_ASSBLASTUSA "assblastusa" +#define TRAIT_CULT_EYES "cult_eyes" // common trait sources #define TRAIT_GENERIC "generic" @@ -153,4 +154,3 @@ #define STASIS_MUTE "stasis" #define GENETICS_SPELL "genetics_spell" #define EYES_COVERED "eyes_covered" -#define CULT_EYES "cult_eyes" diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index d23d0905e9..2a14d232aa 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -64,7 +64,7 @@ to_chat(user, "You're too exhausted.") // CIT CHANGE - ditto return // CIT CHANGE - ditto - if(force && user.has_trait(TRAIT_PACIFISM)) + if(force && HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm other living beings!") return diff --git a/code/datums/brain_damage/mild.dm b/code/datums/brain_damage/mild.dm index afd53726db..f2fec3bb63 100644 --- a/code/datums/brain_damage/mild.dm +++ b/code/datums/brain_damage/mild.dm @@ -42,7 +42,7 @@ lose_text = "You feel smart again." /datum/brain_trauma/mild/dumbness/on_gain() - owner.add_trait(TRAIT_DUMB, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_DUMB, TRAUMA_TRAIT) SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "dumb", /datum/mood_event/oblivious) ..() @@ -55,7 +55,7 @@ ..() /datum/brain_trauma/mild/dumbness/on_lose() - owner.remove_trait(TRAIT_DUMB, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_DUMB, TRAUMA_TRAIT) owner.derpspeech = 0 SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "dumb") ..() diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm index a8adbfbce8..e790e539c8 100644 --- a/code/datums/brain_damage/severe.dm +++ b/code/datums/brain_damage/severe.dm @@ -13,11 +13,11 @@ lose_text = "You suddenly remember how to speak." /datum/brain_trauma/severe/mute/on_gain() - owner.add_trait(TRAIT_MUTE, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_MUTE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/mute/on_lose() - owner.remove_trait(TRAIT_MUTE, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_MUTE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/aphasia @@ -121,7 +121,7 @@ stress -= 4 /datum/brain_trauma/severe/monophobia/proc/check_alone() - if(owner.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(owner, TRAIT_BLIND)) return TRUE for(var/mob/M in oview(owner, 7)) if(!isliving(M)) //ghosts ain't people @@ -183,11 +183,11 @@ lose_text = "You feel in control of your hands again." /datum/brain_trauma/severe/discoordination/on_gain() - owner.add_trait(TRAIT_MONKEYLIKE, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_MONKEYLIKE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/discoordination/on_lose() - owner.remove_trait(TRAIT_MONKEYLIKE, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_MONKEYLIKE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/pacifism @@ -198,9 +198,9 @@ lose_text = "You no longer feel compelled to not harm." /datum/brain_trauma/severe/pacifism/on_gain() - owner.add_trait(TRAIT_PACIFISM, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_PACIFISM, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/pacifism/on_lose() - owner.remove_trait(TRAIT_PACIFISM, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_PACIFISM, TRAUMA_TRAIT) ..() \ No newline at end of file diff --git a/code/datums/brain_damage/split_personality.dm b/code/datums/brain_damage/split_personality.dm index 9ce65717f1..612af13392 100644 --- a/code/datums/brain_damage/split_personality.dm +++ b/code/datums/brain_damage/split_personality.dm @@ -192,7 +192,7 @@ return //no random switching /datum/brain_trauma/severe/split_personality/brainwashing/on_hear(message, speaker, message_language, raw_message, radio_freq) - if(owner.has_trait(TRAIT_DEAF) || owner == speaker) + if(HAS_TRAIT(owner, TRAIT_DEAF) || owner == speaker) return message if(findtext(message, codeword)) message = replacetext(message, codeword, "[codeword]") diff --git a/code/datums/components/caltrop.dm b/code/datums/components/caltrop.dm index 1e1b7a0a48..838a1b576a 100644 --- a/code/datums/components/caltrop.dm +++ b/code/datums/components/caltrop.dm @@ -24,7 +24,7 @@ if(ishuman(AM)) var/mob/living/carbon/human/H = AM - if(H.has_trait(TRAIT_PIERCEIMMUNE)) + if(HAS_TRAIT(H, TRAIT_PIERCEIMMUNE)) return if((flags & CALTROP_IGNORE_WALKERS) && H.m_intent == MOVE_INTENT_WALK) @@ -46,7 +46,7 @@ return var/damage = rand(min_damage, max_damage) - if(H.has_trait(TRAIT_LIGHT_STEP)) + if(HAS_TRAIT(H, TRAIT_LIGHT_STEP)) damage *= 0.75 H.apply_damage(damage, BRUTE, picked_def_zone) diff --git a/code/datums/components/earhealing.dm b/code/datums/components/earhealing.dm index 9396eab3a3..6eb71285e0 100644 --- a/code/datums/components/earhealing.dm +++ b/code/datums/components/earhealing.dm @@ -23,7 +23,7 @@ if (!wearer) STOP_PROCESSING(SSobj, src) return - if(!wearer.has_trait(TRAIT_DEAF)) + if(!HAS_TRAIT(wearer, TRAIT_DEAF)) var/obj/item/organ/ears/ears = wearer.getorganslot(ORGAN_SLOT_EARS) if (ears) ears.deaf = max(ears.deaf - 1, (ears.ear_damage < UNHEALING_EAR_DAMAGE ? 0 : 1)) // Do not clear deafness while above the unhealing ear damage threshold diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index 933c38505b..b32921a4ce 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -15,7 +15,7 @@ /datum/component/mood/Initialize() if(!isliving(parent)) return COMPONENT_INCOMPATIBLE - + START_PROCESSING(SSmood, src) RegisterSignal(parent, COMSIG_ADD_MOOD_EVENT, .proc/add_event) @@ -150,17 +150,17 @@ else owner.crit_threshold -= (holdmyinsanityeffect - insanity_effect) - if(owner.has_trait(TRAIT_DEPRESSION)) + if(HAS_TRAIT(owner, TRAIT_DEPRESSION)) if(prob(0.05)) add_event(null, "depression", /datum/mood_event/depression) clear_event(null, "jolly") - if(owner.has_trait(TRAIT_JOLLY)) + if(HAS_TRAIT(owner, TRAIT_JOLLY)) if(prob(0.05)) add_event(null, "jolly", /datum/mood_event/jolly) clear_event(null, "depression") holdmyinsanityeffect = insanity_effect - + HandleNutrition(owner) /datum/component/mood/proc/DecreaseSanity(amount, minimum = SANITY_INSANE) diff --git a/code/datums/diseases/_MobProcs.dm b/code/datums/diseases/_MobProcs.dm index ba570eca06..e1432bf9a6 100644 --- a/code/datums/diseases/_MobProcs.dm +++ b/code/datums/diseases/_MobProcs.dm @@ -117,7 +117,7 @@ /mob/living/carbon/AirborneContractDisease(datum/disease/D, force_spread) if(internal) return - if(has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(src, TRAIT_NOBREATH)) return ..() @@ -137,7 +137,7 @@ /mob/living/carbon/human/CanContractDisease(datum/disease/D) if(dna) - if(has_trait(TRAIT_VIRUSIMMUNE) && !D.bypasses_immunity) + if(HAS_TRAIT(src, TRAIT_VIRUSIMMUNE) && !D.bypasses_immunity) return FALSE for(var/thing in D.required_organs) diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 0ace2ca8fd..3e1ac87e6e 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -233,7 +233,7 @@ /datum/symptom/heal/coma/CanHeal(datum/disease/advance/A) var/mob/living/M = A.affected_mob - if(M.has_trait(TRAIT_DEATHCOMA)) + if(HAS_TRAIT(M, TRAIT_DEATHCOMA)) return power else if(M.IsUnconscious() || M.stat == UNCONSCIOUS) return power * 0.9 diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm index ffc145bd72..8d7cc5ed70 100644 --- a/code/datums/diseases/advance/symptoms/sensory.dm +++ b/code/datums/diseases/advance/symptoms/sensory.dm @@ -85,14 +85,14 @@ if(4, 5) M.restoreEars() - if(M.has_trait(TRAIT_BLIND, EYE_DAMAGE)) + if(HAS_TRAIT_FROM(M, TRAIT_BLIND, EYE_DAMAGE)) if(prob(20)) to_chat(M, "Your vision slowly returns...") M.cure_blind(EYE_DAMAGE) M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(35) - else if(M.has_trait(TRAIT_NEARSIGHT, EYE_DAMAGE)) + else if(HAS_TRAIT_FROM(M, TRAIT_NEARSIGHT, EYE_DAMAGE)) to_chat(M, "You can finally focus your eyes on distant objects.") M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(10) diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm index 0b42012f76..d1cc6905a6 100644 --- a/code/datums/diseases/advance/symptoms/vision.dm +++ b/code/datums/diseases/advance/symptoms/vision.dm @@ -61,7 +61,7 @@ Bonus M.become_nearsighted(EYE_DAMAGE) if(prob(eyes.eye_damage - 10 + 1)) if(!remove_eyes) - if(!M.has_trait(TRAIT_BLIND)) + if(!HAS_TRAIT(M, TRAIT_BLIND)) to_chat(M, "You go blind!") M.become_blind(EYE_DAMAGE) else diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index 57cdb9bcf5..6c91cc3a7d 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -133,7 +133,7 @@ if(isliving(user)) var/mob/living/L = user - if(L.has_trait(TRAIT_EMOTEMUTE)) + if(HAS_TRAIT(L, TRAIT_EMOTEMUTE)) return FALSE /datum/emote/sound diff --git a/code/datums/martial/sleeping_carp.dm b/code/datums/martial/sleeping_carp.dm index 4a15afd672..035e5ac833 100644 --- a/code/datums/martial/sleeping_carp.dm +++ b/code/datums/martial/sleeping_carp.dm @@ -179,7 +179,7 @@ /obj/item/twohanded/bostaff/attack(mob/target, mob/living/user) add_fingerprint(user) - if((user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) to_chat(user, "You club yourself over the head with [src].") user.Knockdown(60) if(ishuman(user)) diff --git a/code/datums/mutations/body.dm b/code/datums/mutations/body.dm index e114a43736..461c221ff8 100644 --- a/code/datums/mutations/body.dm +++ b/code/datums/mutations/body.dm @@ -86,12 +86,12 @@ /datum/mutation/human/clumsy/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_CLUMSY, GENETIC_MUTATION) + ADD_TRAIT(owner, TRAIT_CLUMSY, GENETIC_MUTATION) /datum/mutation/human/clumsy/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_CLUMSY, GENETIC_MUTATION) + REMOVE_TRAIT(owner, TRAIT_CLUMSY, GENETIC_MUTATION) //Tourettes causes you to randomly stand in place and shout. @@ -125,12 +125,12 @@ /datum/mutation/human/deaf/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_DEAF, GENETIC_MUTATION) + ADD_TRAIT(owner, TRAIT_DEAF, GENETIC_MUTATION) /datum/mutation/human/deaf/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_DEAF, GENETIC_MUTATION) + REMOVE_TRAIT(owner, TRAIT_DEAF, GENETIC_MUTATION) //Monified turns you into a monkey. diff --git a/code/datums/mutations/cold_resistance.dm b/code/datums/mutations/cold_resistance.dm index 6c3ac2982d..3d8fbababa 100644 --- a/code/datums/mutations/cold_resistance.dm +++ b/code/datums/mutations/cold_resistance.dm @@ -17,14 +17,14 @@ /datum/mutation/human/cold_resistance/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_RESISTCOLD, "cold_resistance") -// owner.add_trait(TRAIT_RESISTLOWPRESSURE, "cold_resistance") CITADEL CHANGE + ADD_TRAIT(owner, TRAIT_RESISTCOLD, "cold_resistance") +// ADD_TRAIT(owner, TRAIT_RESISTLOWPRESSURE, "cold_resistance") CITADEL CHANGE /datum/mutation/human/cold_resistance/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_RESISTCOLD, "cold_resistance") -// owner.remove_trait(TRAIT_RESISTLOWPRESSURE, "cold_resistance") CITADEL CHANGE + REMOVE_TRAIT(owner, TRAIT_RESISTCOLD, "cold_resistance") +// REMOVE_TRAIT(owner, TRAIT_RESISTLOWPRESSURE, "cold_resistance") CITADEL CHANGE /datum/mutation/human/cold_resistance/on_life(mob/living/carbon/human/owner) if(owner.getFireLoss()) diff --git a/code/datums/mutations/hulk.dm b/code/datums/mutations/hulk.dm index 7bcd056fab..0c760f4620 100644 --- a/code/datums/mutations/hulk.dm +++ b/code/datums/mutations/hulk.dm @@ -11,8 +11,8 @@ /datum/mutation/human/hulk/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_STUNIMMUNE, TRAIT_HULK) - owner.add_trait(TRAIT_PUSHIMMUNE, TRAIT_HULK) + ADD_TRAIT(owner, TRAIT_STUNIMMUNE, TRAIT_HULK) + ADD_TRAIT(owner, TRAIT_PUSHIMMUNE, TRAIT_HULK) owner.update_body_parts() SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "hulk", /datum/mood_event/hulk) @@ -28,8 +28,8 @@ /datum/mutation/human/hulk/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_STUNIMMUNE, TRAIT_HULK) - owner.remove_trait(TRAIT_PUSHIMMUNE, TRAIT_HULK) + REMOVE_TRAIT(owner, TRAIT_STUNIMMUNE, TRAIT_HULK) + REMOVE_TRAIT(owner, TRAIT_PUSHIMMUNE, TRAIT_HULK) owner.update_body_parts() SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "hulk") diff --git a/code/datums/mutations/speech.dm b/code/datums/mutations/speech.dm index 3f303535ce..5c718cf554 100644 --- a/code/datums/mutations/speech.dm +++ b/code/datums/mutations/speech.dm @@ -30,12 +30,12 @@ /datum/mutation/human/mute/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_MUTE, GENETIC_MUTATION) + ADD_TRAIT(owner, TRAIT_MUTE, GENETIC_MUTATION) /datum/mutation/human/mute/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_MUTE, GENETIC_MUTATION) + REMOVE_TRAIT(owner, TRAIT_MUTE, GENETIC_MUTATION) /datum/mutation/human/smile diff --git a/code/datums/saymode.dm b/code/datums/saymode.dm index ed6edd11ab..c4f485653e 100644 --- a/code/datums/saymode.dm +++ b/code/datums/saymode.dm @@ -27,7 +27,7 @@ switch(M.lingcheck()) if (LINGHIVE_LING) var/mob/living/L = M - if (!L.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (!HAS_TRAIT(L, CHANGELING_HIVEMIND_MUTE)) to_chat(M, msg) if(LINGHIVE_LINK) to_chat(M, msg) @@ -35,7 +35,7 @@ if(prob(40)) to_chat(M, "We can faintly sense an outsider trying to communicate through the hivemind...") if(LINGHIVE_LING) - if (user.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (HAS_TRAIT(user, CHANGELING_HIVEMIND_MUTE)) to_chat(user, "The poison in the air hinders our ability to interact with the hivemind.") return FALSE var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) @@ -52,7 +52,7 @@ to_chat(M, msg) if(LINGHIVE_LING) var/mob/living/L = M - if (!L.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (!HAS_TRAIT(L, CHANGELING_HIVEMIND_MUTE)) to_chat(M, msg) if(LINGHIVE_OUTSIDER) if(prob(40)) diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm index dd8ee1b166..0512977d1a 100644 --- a/code/datums/status_effects/buffs.dm +++ b/code/datums/status_effects/buffs.dm @@ -465,13 +465,13 @@ /datum/status_effect/hippocraticOath/on_apply() //Makes the user passive, it's in their oath not to harm! - owner.add_trait(TRAIT_PACIFISM, "hippocraticOath") + ADD_TRAIT(owner, TRAIT_PACIFISM, "hippocraticOath") var/datum/atom_hud/H = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] H.add_hud_to(owner) return ..() /datum/status_effect/hippocraticOath/on_remove() - owner.remove_trait(TRAIT_PACIFISM, "hippocraticOath") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "hippocraticOath") var/datum/atom_hud/H = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] H.remove_hud_from(owner) diff --git a/code/datums/traits/_quirk.dm b/code/datums/traits/_quirk.dm index 963afacec3..cc6dd8db3f 100644 --- a/code/datums/traits/_quirk.dm +++ b/code/datums/traits/_quirk.dm @@ -21,7 +21,7 @@ to_chat(quirk_holder, gain_text) quirk_holder.roundstart_quirks += src if(mob_trait) - quirk_holder.add_trait(mob_trait, ROUNDSTART_TRAIT) + ADD_TRAIT(quirk_holder, mob_trait, ROUNDSTART_TRAIT) START_PROCESSING(SSquirks, src) add() if(spawn_effects) @@ -35,7 +35,7 @@ to_chat(quirk_holder, lose_text) quirk_holder.roundstart_quirks -= src if(mob_trait) - quirk_holder.remove_trait(mob_trait, ROUNDSTART_TRAIT, TRUE) + REMOVE_TRAIT(quirk_holder, mob_trait, ROUNDSTART_TRAIT) SSquirks.quirk_objects -= src return ..() @@ -43,8 +43,8 @@ quirk_holder.roundstart_quirks -= src to_mob.roundstart_quirks += src if(mob_trait) - quirk_holder.remove_trait(mob_trait, ROUNDSTART_TRAIT) - to_mob.add_trait(mob_trait, ROUNDSTART_TRAIT) + REMOVE_TRAIT(quirk_holder, mob_trait, ROUNDSTART_TRAIT) + ADD_TRAIT(to_mob, mob_trait, ROUNDSTART_TRAIT) quirk_holder = to_mob on_transfer() @@ -111,7 +111,7 @@ Use this as a guideline mob_trait = TRAIT_NEARSIGHT ///This define is in __DEFINES/traits.dm and is the actual "trait" that the game tracks - ///You'll need to use "has_trait(X, sources)" checks around the code to check this; for instance, the Ageusia trait is checked in taste code + ///You'll need to use "HAS_TRAIT_FROM(src, X, sources)" checks around the code to check this; for instance, the Ageusia trait is checked in taste code ///If you need help finding where to put it, the declaration finder on GitHub is the best way to locate it gain_text = "Things far away from you start looking blurry." diff --git a/code/datums/weather/weather_types/radiation_storm.dm b/code/datums/weather/weather_types/radiation_storm.dm index 0906a7e053..f3b8118087 100644 --- a/code/datums/weather/weather_types/radiation_storm.dm +++ b/code/datums/weather/weather_types/radiation_storm.dm @@ -33,7 +33,7 @@ if(prob(40)) if(ishuman(L)) var/mob/living/carbon/human/H = L - if(H.dna && !H.has_trait(TRAIT_RADIMMUNE)) + if(H.dna && !HAS_TRAIT(H, TRAIT_RADIMMUNE)) if(prob(max(0,100-resist))) H.randmuti() if(prob(50)) diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 3af43ffb78..8506a4133a 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -100,7 +100,7 @@ //helper for getting the appropriate health status /proc/RoundHealth(mob/living/M) - if(M.stat == DEAD || (M.has_trait(TRAIT_FAKEDEATH))) + if(M.stat == DEAD || (HAS_TRAIT(M, TRAIT_FAKEDEATH))) return "health-100" //what's our health? it doesn't matter, we're dead, or faking var/maxi_health = M.maxHealth if(iscarbon(M) && M.health < 0) @@ -172,7 +172,7 @@ var/image/holder = hud_list[STATUS_HUD] var/icon/I = icon(icon, icon_state, dir) holder.pixel_y = I.Height() - world.icon_size - if(stat == DEAD || (has_trait(TRAIT_FAKEDEATH))) + if(stat == DEAD || (HAS_TRAIT(src, TRAIT_FAKEDEATH))) holder.icon_state = "huddead" else holder.icon_state = "hudhealthy" @@ -182,9 +182,9 @@ var/icon/I = icon(icon, icon_state, dir) var/virus_threat = check_virus() holder.pixel_y = I.Height() - world.icon_size - if(has_trait(TRAIT_XENO_HOST)) + if(HAS_TRAIT(src, TRAIT_XENO_HOST)) holder.icon_state = "hudxeno" - else if(stat == DEAD || (has_trait(TRAIT_FAKEDEATH))) + else if(stat == DEAD || (HAS_TRAIT(src, TRAIT_FAKEDEATH))) if(tod) var/tdelta = round(world.time - timeofdeath) if(tdelta < (DEFIB_TIME_LIMIT * 10)) @@ -242,7 +242,7 @@ var/icon/IC = icon(icon, icon_state, dir) holder.pixel_y = IC.Height() - world.icon_size holder.icon_state = "hud_imp_chem" - if(has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(src, TRAIT_MINDSHIELD)) holder = hud_list[IMPLOYAL_HUD] var/icon/IC = icon(icon, icon_state, dir) holder.pixel_y = IC.Height() - world.icon_size diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index d6513b5d40..a21d1bce35 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -64,7 +64,7 @@ Credit where due: return FALSE if(isliving(M)) var/mob/living/L = M - if(L.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(L, TRAIT_MINDSHIELD)) return FALSE if(ishuman(M) || isbrain(M) || isguardian(M) || issilicon(M) || isclockmob(M) || istype(M, /mob/living/simple_animal/drone/cogscarab) || istype(M, /mob/camera/eminence)) return TRUE diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 7b492e3a95..8f091b6372 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -26,7 +26,7 @@ return FALSE else return FALSE - if(M.has_trait(TRAIT_MINDSHIELD) || issilicon(M) || isbot(M) || isdrone(M) || is_servant_of_ratvar(M) || !M.client) + if(HAS_TRAIT(M, TRAIT_MINDSHIELD) || issilicon(M) || isbot(M) || isdrone(M) || is_servant_of_ratvar(M) || !M.client) return FALSE //can't convert machines, shielded, braindead, or ratvar's dogs return TRUE diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index d3b5e53a1b..36a5c6ede4 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -182,11 +182,11 @@ //Get the clone body ready maim_clone(H) - H.add_trait(TRAIT_STABLEHEART, "cloning") - H.add_trait(TRAIT_EMOTEMUTE, "cloning") - H.add_trait(TRAIT_MUTE, "cloning") - H.add_trait(TRAIT_NOBREATH, "cloning") - H.add_trait(TRAIT_NOCRITDAMAGE, "cloning") + ADD_TRAIT(H, TRAIT_STABLEHEART, "cloning") + ADD_TRAIT(H, TRAIT_EMOTEMUTE, "cloning") + ADD_TRAIT(H, TRAIT_MUTE, "cloning") + ADD_TRAIT(H, TRAIT_NOBREATH, "cloning") + ADD_TRAIT(H, TRAIT_NOCRITDAMAGE, "cloning") H.Unconscious(80) clonemind.transfer_to(H) @@ -361,11 +361,11 @@ if(!mob_occupant) return - mob_occupant.remove_trait(TRAIT_STABLEHEART, "cloning") - mob_occupant.remove_trait(TRAIT_EMOTEMUTE, "cloning") - mob_occupant.remove_trait(TRAIT_MUTE, "cloning") - mob_occupant.remove_trait(TRAIT_NOCRITDAMAGE, "cloning") - mob_occupant.remove_trait(TRAIT_NOBREATH, "cloning") + REMOVE_TRAIT(mob_occupant, TRAIT_STABLEHEART, "cloning") + REMOVE_TRAIT(mob_occupant, TRAIT_EMOTEMUTE, "cloning") + REMOVE_TRAIT(mob_occupant, TRAIT_MUTE, "cloning") + REMOVE_TRAIT(mob_occupant, TRAIT_NOCRITDAMAGE, "cloning") + REMOVE_TRAIT(mob_occupant, TRAIT_NOBREATH, "cloning") if(grab_ghost_when == CLONER_MATURE_CLONE) mob_occupant.grab_ghost() @@ -452,7 +452,7 @@ // brain function, they also have no limbs or internal organs. - if(!H.has_trait(TRAIT_NODISMEMBER)) + if(!HAS_TRAIT(H, TRAIT_NODISMEMBER)) var/static/list/zones = list(BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG) for(var/zone in zones) var/obj/item/bodypart/BP = H.get_bodypart(zone) diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index 00a5c8941d..39d5c3d56f 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -450,7 +450,7 @@ scantemp = "Subject's brain is not responding to scanning stimuli." playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) return - if((mob_occupant.has_trait(TRAIT_NOCLONE)) && (src.scanner.scan_level < 2)) + if((HAS_TRAIT(mob_occupant, TRAIT_NOCLONE)) && (src.scanner.scan_level < 2)) scantemp = "Subject no longer contains the fundamental materials required to create a living clone." playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) return diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index 2980c741be..9d49574317 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -76,7 +76,7 @@ if(connected && connected.is_operational()) if(connected.occupant) //set occupant_status message viable_occupant = connected.occupant - if(viable_occupant.has_dna() && !viable_occupant.has_trait(TRAIT_RADIMMUNE) && !viable_occupant.has_trait(TRAIT_NOCLONE) || (connected.scan_level == 3)) //occupant is viable for dna modification + if(viable_occupant.has_dna() && !HAS_TRAIT(viable_occupant, TRAIT_RADIMMUNE) && !HAS_TRAIT(viable_occupant, TRAIT_NOCLONE) || (connected.scan_level == 3)) //occupant is viable for dna modification occupant_status += "[viable_occupant.name] => " switch(viable_occupant.stat) if(CONSCIOUS) @@ -523,7 +523,7 @@ var/mob/living/carbon/viable_occupant = null if(connected) viable_occupant = connected.occupant - if(!istype(viable_occupant) || !viable_occupant.dna || viable_occupant.has_trait(TRAIT_RADIMMUNE) || viable_occupant.has_trait(TRAIT_NOCLONE)) + if(!istype(viable_occupant) || !viable_occupant.dna || HAS_TRAIT(viable_occupant, TRAIT_RADIMMUNE) || HAS_TRAIT(viable_occupant, TRAIT_NOCLONE)) viable_occupant = null return viable_occupant diff --git a/code/game/machinery/dna_scanner.dm b/code/game/machinery/dna_scanner.dm index 90a6b07733..7895fb8c9f 100644 --- a/code/game/machinery/dna_scanner.dm +++ b/code/game/machinery/dna_scanner.dm @@ -99,7 +99,7 @@ var/mob/living/mob_occupant = get_mob_or_brainmob(occupant) if(istype(mob_occupant)) if(locate_computer(/obj/machinery/computer/cloning)) - if(!mob_occupant.suiciding && !(mob_occupant.has_trait(TRAIT_NOCLONE)) && !mob_occupant.hellbound) + if(!mob_occupant.suiciding && !(HAS_TRAIT(mob_occupant, TRAIT_NOCLONE)) && !mob_occupant.hellbound) mob_occupant.notify_ghost_cloning("Your corpse has been placed into a cloning scanner. Re-enter your corpse if you want to be cloned!", source = src) // DNA manipulators cannot operate on severed heads or brains diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 0183fcecd4..1081cb5fa7 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -763,7 +763,7 @@ if(ishuman(user) && prob(40) && src.density) var/mob/living/carbon/human/H = user - if((H.has_trait(TRAIT_DUMB)) && Adjacent(user)) + if((HAS_TRAIT(H, TRAIT_DUMB)) && Adjacent(user)) playsound(src.loc, 'sound/effects/bang.ogg', 25, 1) if(!istype(H.head, /obj/item/clothing/head/helmet)) H.visible_message("[user] headbutts the airlock.", \ diff --git a/code/game/machinery/exp_cloner.dm b/code/game/machinery/exp_cloner.dm index 45ac999a6a..e8364d2271 100644 --- a/code/game/machinery/exp_cloner.dm +++ b/code/game/machinery/exp_cloner.dm @@ -42,11 +42,11 @@ icon_state = "pod_1" //Get the clone body ready maim_clone(H) - H.add_trait(TRAIT_STABLEHEART, "cloning") - H.add_trait(TRAIT_EMOTEMUTE, "cloning") - H.add_trait(TRAIT_MUTE, "cloning") - H.add_trait(TRAIT_NOBREATH, "cloning") - H.add_trait(TRAIT_NOCRITDAMAGE, "cloning") + ADD_TRAIT(H, TRAIT_STABLEHEART, "cloning") + ADD_TRAIT(H, TRAIT_EMOTEMUTE, "cloning") + ADD_TRAIT(H, TRAIT_MUTE, "cloning") + ADD_TRAIT(H, TRAIT_NOBREATH, "cloning") + ADD_TRAIT(H, TRAIT_NOCRITDAMAGE, "cloning") H.Unconscious(80) var/list/candidates = pollCandidatesForMob("Do you want to play as [clonename]'s defective clone?", null, null, null, 100, H) @@ -268,7 +268,7 @@ scantemp = "Unable to locate valid genetic data." playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) return - if((mob_occupant.has_trait(TRAIT_NOCLONE)) && (src.scanner.scan_level < 2)) + if((HAS_TRAIT(mob_occupant, TRAIT_NOCLONE)) && (src.scanner.scan_level < 2)) scantemp = "Subject no longer contains the fundamental materials required to create a living clone." playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) return diff --git a/code/game/machinery/harvester.dm b/code/game/machinery/harvester.dm index 1f40672e05..0042da1c92 100644 --- a/code/game/machinery/harvester.dm +++ b/code/game/machinery/harvester.dm @@ -73,7 +73,7 @@ say("Subject is not organic.") playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1) return - if(!allow_living && !(C.stat == DEAD || C.has_trait(TRAIT_FAKEDEATH))) //I mean, the machines scanners arent advanced enough to tell you're alive + if(!allow_living && !(C.stat == DEAD || HAS_TRAIT(C, TRAIT_FAKEDEATH))) //I mean, the machines scanners arent advanced enough to tell you're alive say("Subject is still alive.") playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1) return diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 911bb76bda..b0204ddeb8 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -485,7 +485,7 @@ threatcount += 4 if(shoot_unloyal) - if (!perp.has_trait(TRAIT_MINDSHIELD)) + if (!HAS_TRAIT(perp, TRAIT_MINDSHIELD)) threatcount += 4 return threatcount diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index d5de4a4898..945c60d8ba 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -446,13 +446,13 @@ var/mob/living/L = user if(!Adjacent(target)) if(selected && selected.is_ranged()) - if(L.has_trait(TRAIT_PACIFISM) && selected.harmful) + if(HAS_TRAIT(L, TRAIT_PACIFISM) && selected.harmful) to_chat(user, "You don't want to harm other living beings!") return if(selected.action(target,params)) selected.start_cooldown() else if(selected && selected.is_melee()) - if(isliving(target) && selected.harmful && L.has_trait(TRAIT_PACIFISM)) + if(isliving(target) && selected.harmful && HAS_TRAIT(L, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm other living beings!") return if(selected.action(target,params)) diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index 07152b0310..d5aff99f32 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -72,7 +72,7 @@ ..() if(ishuman(O)) var/mob/living/carbon/human/H = O - if(H.shoes && blood_state && bloodiness && !H.has_trait(TRAIT_LIGHT_STEP)) + if(H.shoes && blood_state && bloodiness && !HAS_TRAIT(H, TRAIT_LIGHT_STEP)) var/obj/item/clothing/shoes/S = H.shoes var/add_blood = 0 if(bloodiness >= BLOOD_GAIN_PER_STEP) diff --git a/code/game/objects/effects/decals/cleanable/humans.dm b/code/game/objects/effects/decals/cleanable/humans.dm index f1a1655fb4..35f06c2768 100644 --- a/code/game/objects/effects/decals/cleanable/humans.dm +++ b/code/game/objects/effects/decals/cleanable/humans.dm @@ -60,7 +60,7 @@ /obj/effect/decal/cleanable/blood/gibs/Crossed(mob/living/L) if(istype(L) && has_gravity(loc)) - playsound(loc, 'sound/effects/gib_step.ogg', L.has_trait(TRAIT_LIGHT_STEP) ? 20 : 50, 1) + playsound(loc, 'sound/effects/gib_step.ogg', HAS_TRAIT(L, TRAIT_LIGHT_STEP) ? 20 : 50, 1) . = ..() /obj/effect/decal/cleanable/blood/gibs/proc/streak(list/directions) diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm index 12a72685bb..7e8094c9e7 100644 --- a/code/game/objects/effects/mines.dm +++ b/code/game/objects/effects/mines.dm @@ -170,7 +170,7 @@ if(!victim.client || !istype(victim)) return to_chat(victim, "You feel fast!") - victim.add_trait(TRAIT_GOTTAGOREALLYFAST, "yellow_orb") + ADD_TRAIT(victim, TRAIT_GOTTAGOREALLYFAST, "yellow_orb") sleep(duration) - victim.remove_trait(TRAIT_GOTTAGOREALLYFAST, "yellow_orb") + REMOVE_TRAIT(victim, TRAIT_GOTTAGOREALLYFAST, "yellow_orb") to_chat(victim, "You slow down.") diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 9314faab27..69cb247287 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -256,7 +256,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) can_handle_hot = TRUE else if(C.gloves && (C.gloves.max_heat_protection_temperature > 360)) can_handle_hot = TRUE - else if(C.has_trait(TRAIT_RESISTHEAT) || C.has_trait(TRAIT_RESISTHEATHANDS)) + else if(HAS_TRAIT(C, TRAIT_RESISTHEAT) || HAS_TRAIT(C, TRAIT_RESISTHEATHANDS)) can_handle_hot = TRUE if(can_handle_hot) @@ -449,10 +449,10 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) return 0 /obj/item/proc/eyestab(mob/living/carbon/M, mob/living/carbon/user) - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm [M]!") return - if(user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) M = user var/is_human_victim = 0 var/obj/item/bodypart/affecting = M.get_bodypart(BODY_ZONE_HEAD) @@ -523,7 +523,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) M.adjust_blurriness(15) if(M.stat != DEAD) to_chat(M, "Your eyes start to bleed profusely!") - if(!(M.has_trait(TRAIT_BLIND) || M.has_trait(TRAIT_NEARSIGHT))) + if(!(HAS_TRAIT(M, TRAIT_BLIND) || HAS_TRAIT(M, TRAIT_NEARSIGHT))) to_chat(M, "You become nearsighted!") M.become_nearsighted(EYE_DAMAGE) if(prob(50)) diff --git a/code/game/objects/items/body_egg.dm b/code/game/objects/items/body_egg.dm index a8f5894b7c..80fc0f43fd 100644 --- a/code/game/objects/items/body_egg.dm +++ b/code/game/objects/items/body_egg.dm @@ -16,7 +16,7 @@ /obj/item/organ/body_egg/Insert(var/mob/living/carbon/M, special = 0) ..() - owner.add_trait(TRAIT_XENO_HOST, TRAIT_GENERIC) + ADD_TRAIT(owner, TRAIT_XENO_HOST, TRAIT_GENERIC) START_PROCESSING(SSobj, src) owner.med_hud_set_status() INVOKE_ASYNC(src, .proc/AddInfectionImages, owner) @@ -24,7 +24,7 @@ /obj/item/organ/body_egg/Remove(var/mob/living/carbon/M, special = 0) STOP_PROCESSING(SSobj, src) if(owner) - owner.remove_trait(TRAIT_XENO_HOST, TRAIT_GENERIC) + REMOVE_TRAIT(owner, TRAIT_XENO_HOST, TRAIT_GENERIC) owner.med_hud_set_status() INVOKE_ASYNC(src, .proc/RemoveInfectionImages, owner) ..() diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 30089f298f..99d6c874e8 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -254,7 +254,7 @@ cost = 0 if(ishuman(user)) var/mob/living/carbon/human/H = user - if (H.has_trait(TRAIT_TAGGER)) + if (HAS_TRAIT(H, TRAIT_TAGGER)) cost *= 0.5 var/charges_used = use_charges(user, cost) if(!charges_used) diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index ba4a0ffae8..55e75b3992 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -444,7 +444,7 @@ /obj/item/twohanded/shockpaddles/proc/can_defib(mob/living/carbon/H) var/obj/item/organ/brain/BR = H.getorgan(/obj/item/organ/brain) - return (!H.suiciding && !(H.has_trait(TRAIT_NOCLONE)) && !H.hellbound && ((world.time - H.timeofdeath) < tlimit) && (H.getBruteLoss() < 180) && (H.getFireLoss() < 180) && H.getorgan(/obj/item/organ/heart) && BR && !BR.damaged_brain) + return (!H.suiciding && !(HAS_TRAIT(H, TRAIT_NOCLONE)) && !H.hellbound && ((world.time - H.timeofdeath) < tlimit) && (H.getBruteLoss() < 180) && (H.getFireLoss() < 180) && H.getorgan(/obj/item/organ/heart) && BR && !BR.damaged_brain) /obj/item/twohanded/shockpaddles/proc/shock_touching(dmg, mob/H) if(req_defib) @@ -585,7 +585,7 @@ shock_touching(30, H) var/failed - if (H.suiciding || (H.has_trait(TRAIT_NOCLONE))) + if (H.suiciding || (HAS_TRAIT(H, TRAIT_NOCLONE))) failed = "[req_defib ? "[defib]" : "[src]"] buzzes: Resuscitation failed - Recovery of patient impossible. Further attempts futile." else if (H.hellbound) failed = "[req_defib ? "[defib]" : "[src]"] buzzes: Resuscitation failed - Patient's soul appears to be on another plane of existence. Further attempts futile." diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index cbbd7a387a..40f2059d25 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -52,7 +52,7 @@ add_fingerprint(user) if(istype(M) && on && user.zone_selected in list(BODY_ZONE_PRECISE_EYES, BODY_ZONE_PRECISE_MOUTH)) - if((user.has_trait(TRAIT_CLUMSY) || user.has_trait(TRAIT_DUMB)) && prob(50)) //too dumb to use flashlight properly + if((HAS_TRAIT(user, TRAIT_CLUMSY) || HAS_TRAIT(user, TRAIT_DUMB)) && prob(50)) //too dumb to use flashlight properly return ..() //just hit them in the head if(!user.IsAdvancedToolUser()) @@ -86,7 +86,7 @@ else user.visible_message("[user] directs [src] to [M]'s eyes.", \ "You direct [src] to [M]'s eyes.") - if(M.stat == DEAD || (M.has_trait(TRAIT_BLIND)) || !M.flash_act(visual = 1)) //mob is dead or fully blind + if(M.stat == DEAD || (HAS_TRAIT(M, TRAIT_BLIND)) || !M.flash_act(visual = 1)) //mob is dead or fully blind to_chat(user, "[M]'s pupils don't react to the light!") else if(M.dna && M.dna.check_mutation(XRAY)) //mob has X-ray vision to_chat(user, "[M]'s pupils give an eerie glow!") diff --git a/code/game/objects/items/devices/instruments.dm b/code/game/objects/items/devices/instruments.dm index c5ed5fb601..661d38ce6b 100644 --- a/code/game/objects/items/devices/instruments.dm +++ b/code/game/objects/items/devices/instruments.dm @@ -54,7 +54,7 @@ /obj/item/instrument/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/musicaltuner)) var/mob/living/carbon/human/H = user - if (H.has_trait(TRAIT_MUSICIAN)) + if (HAS_TRAIT(H, TRAIT_MUSICIAN)) if (!tune_time) H.visible_message("[H] tunes the [src] to perfection!", "You tune the [src] to perfection!") tune_time = 300 diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm index 632c2c4221..7baea7f488 100644 --- a/code/game/objects/items/devices/laserpointer.dm +++ b/code/game/objects/items/devices/laserpointer.dm @@ -69,7 +69,7 @@ if (!user.IsAdvancedToolUser()) to_chat(user, "You don't have the dexterity to do this!") return - if(user.has_trait(TRAIT_NOGUNS)) + if(HAS_TRAIT(user, TRAIT_NOGUNS)) to_chat(user, "Your fingers can't press the button!") return if(ishuman(user)) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 79b04c771b..34056e3a82 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -95,7 +95,7 @@ SLIME SCANNER /obj/item/healthanalyzer/attack(mob/living/M, mob/living/carbon/human/user) // Clumsiness/brain damage check - if ((user.has_trait(TRAIT_CLUMSY) || user.has_trait(TRAIT_DUMB)) && prob(50)) + if ((HAS_TRAIT(user, TRAIT_CLUMSY) || HAS_TRAIT(user, TRAIT_DUMB)) && prob(50)) to_chat(user, "You stupidly try to analyze the floor's vitals!") user.visible_message("[user] has analyzed the floor's vitals!") var/msg = "*---------*\nAnalyzing results for The floor:\n\tOverall status: Healthy\n" @@ -127,7 +127,7 @@ SLIME SCANNER var/brute_loss = M.getBruteLoss() var/mob_status = (M.stat == DEAD ? "Deceased" : "[round(M.health/M.maxHealth,0.01)*100] % healthy") - if(M.has_trait(TRAIT_FAKEDEATH) && !advanced) + if(HAS_TRAIT(M, TRAIT_FAKEDEATH) && !advanced) mob_status = "Deceased" oxy_loss = max(rand(1, 40), oxy_loss, (300 - (tox_loss + fire_loss + brute_loss))) // Random oxygen loss @@ -199,10 +199,10 @@ SLIME SCANNER msg += "\t==EAR STATUS==\n" if(istype(ears)) var/healthy = TRUE - if(C.has_trait(TRAIT_DEAF, GENETIC_MUTATION)) + if(HAS_TRAIT_FROM(C, TRAIT_DEAF, GENETIC_MUTATION)) healthy = FALSE msg += "\tSubject is genetically deaf.\n" - else if(C.has_trait(TRAIT_DEAF)) + else if(HAS_TRAIT(C, TRAIT_DEAF)) healthy = FALSE msg += "\tSubject is deaf.\n" else @@ -220,10 +220,10 @@ SLIME SCANNER msg += "\t==EYE STATUS==\n" if(istype(eyes)) var/healthy = TRUE - if(C.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(C, TRAIT_BLIND)) msg += "\tSubject is blind.\n" healthy = FALSE - if(C.has_trait(TRAIT_NEARSIGHT)) + if(HAS_TRAIT(C, TRAIT_NEARSIGHT)) msg += "\tSubject is nearsighted.\n" healthy = FALSE if(eyes.eye_damage > 30) @@ -290,7 +290,7 @@ SLIME SCANNER msg += "Body temperature: [round(M.bodytemperature-T0C,0.1)] °C ([round(M.bodytemperature*1.8-459.67,0.1)] °F)\n" // Time of death - if(M.tod && (M.stat == DEAD || ((M.has_trait(TRAIT_FAKEDEATH)) && !advanced))) + if(M.tod && (M.stat == DEAD || ((HAS_TRAIT(M, TRAIT_FAKEDEATH)) && !advanced))) msg += "Time of Death: [M.tod]\n" var/tdelta = round(world.time - M.timeofdeath) if(tdelta < (DEFIB_TIME_LIMIT * 10)) diff --git a/code/game/objects/items/dna_injector.dm b/code/game/objects/items/dna_injector.dm index d5ac5d9c52..10c81e9dbb 100644 --- a/code/game/objects/items/dna_injector.dm +++ b/code/game/objects/items/dna_injector.dm @@ -31,7 +31,7 @@ /obj/item/dnainjector/proc/inject(mob/living/carbon/M, mob/user) prepare() - if(M.has_dna() && !M.has_trait(TRAIT_RADIMMUNE) && !M.has_trait(TRAIT_NOCLONE)) + if(M.has_dna() && !HAS_TRAIT(M, TRAIT_RADIMMUNE) && !HAS_TRAIT(M, TRAIT_NOCLONE)) M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)) var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]" for(var/datum/mutation/human/HM in remove_mutations) @@ -313,7 +313,7 @@ to_chat(user, "You can't modify [M]'s DNA while [M.p_theyre()] dead.") return FALSE - if(M.has_dna() && !(M.has_trait(TRAIT_NOCLONE))) + if(M.has_dna() && !(HAS_TRAIT(M, TRAIT_NOCLONE))) M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)) var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]" var/endtime = world.time+duration diff --git a/code/game/objects/items/grenades/grenade.dm b/code/game/objects/items/grenades/grenade.dm index 32e06eb9b4..28d8739369 100644 --- a/code/game/objects/items/grenades/grenade.dm +++ b/code/game/objects/items/grenades/grenade.dm @@ -33,7 +33,7 @@ qdel(src) /obj/item/grenade/proc/clown_check(mob/living/carbon/human/user) - var/clumsy = user.has_trait(TRAIT_CLUMSY) + var/clumsy = HAS_TRAIT(user, TRAIT_CLUMSY) if(clumsy && (clumsy_check == GRENADE_CLUMSY_FUMBLE)) if(prob(50)) to_chat(user, "Huh? How does this thing work?") diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 1f3019fe65..5e19577b46 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -44,7 +44,7 @@ if(!istype(C)) return - if(iscarbon(user) && (user.has_trait(TRAIT_CLUMSY) && prob(50))) + if(iscarbon(user) && (HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50))) to_chat(user, "Uh... how do those things work?!") apply_cuffs(user,user) return diff --git a/code/game/objects/items/implants/implant_mindshield.dm b/code/game/objects/items/implants/implant_mindshield.dm index 1982740cc9..b9907cbfca 100644 --- a/code/game/objects/items/implants/implant_mindshield.dm +++ b/code/game/objects/items/implants/implant_mindshield.dm @@ -20,7 +20,7 @@ /obj/item/implant/mindshield/implant(mob/living/target, mob/user, silent = FALSE) if(..()) if(!target.mind) - target.add_trait(TRAIT_MINDSHIELD, "implant") + ADD_TRAIT(target, TRAIT_MINDSHIELD, "implant") target.sec_hud_set_implants() return TRUE @@ -49,7 +49,7 @@ to_chat(target, "You feel something interfering with your mental conditioning, but you resist it!") else to_chat(target, "You feel a sense of peace and security. You are now protected from brainwashing.") - target.add_trait(TRAIT_MINDSHIELD, "implant") + ADD_TRAIT(target, TRAIT_MINDSHIELD, "implant") target.sec_hud_set_implants() return TRUE return FALSE @@ -58,7 +58,7 @@ if(..()) if(isliving(target)) var/mob/living/L = target - L.remove_trait(TRAIT_MINDSHIELD, "implant") + REMOVE_TRAIT(L, TRAIT_MINDSHIELD, "implant") L.sec_hud_set_implants() if(target.stat != DEAD && !silent) to_chat(target, "Your mind suddenly feels terribly vulnerable. You are no longer safe from brainwashing.") diff --git a/code/game/objects/items/implants/implantchair.dm b/code/game/objects/items/implants/implantchair.dm index 36c79bd454..781e1fa562 100644 --- a/code/game/objects/items/implants/implantchair.dm +++ b/code/game/objects/items/implants/implantchair.dm @@ -185,7 +185,7 @@ objective = stripped_input(usr,"What order do you want to imprint on [C]?","Enter the order","",120) message_admins("[ADMIN_LOOKUPFLW(user)] set brainwash machine objective to '[objective]'.") log_game("[key_name(user)] set brainwash machine objective to '[objective]'.") - if(C.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(C, TRAIT_MINDSHIELD)) return FALSE brainwash(C, objective) message_admins("[ADMIN_LOOKUPFLW(user)] brainwashed [key_name_admin(C)] with objective '[objective]'.") diff --git a/code/game/objects/items/manuals.dm b/code/game/objects/items/manuals.dm index 6194c4d9ca..02d0a1c36a 100644 --- a/code/game/objects/items/manuals.dm +++ b/code/game/objects/items/manuals.dm @@ -37,7 +37,7 @@

It really is that easy! Good luck! - + "} @@ -344,14 +344,14 @@ author = "Sir John Rose" title = "Barman Recipes: Mixing Drinks and Changing Lives" page_link = "Guide_to_food_and_drinks" - + /obj/item/book/manual/wiki/robotics_cyborgs name = "Robotics for Dummies" icon_state = "borgbook" author = "XISC" title = "Robotics for Dummies" page_link = "Guide_to_robotics" - + /obj/item/book/manual/wiki/research_and_development name = "Research and Development 101" icon_state = "rdbook" @@ -401,7 +401,7 @@ author = "the City-state of Atmosia" title = "Lexica Atmosia" page_link = "Guide_to_Atmospherics" - + /obj/item/book/manual/wiki/medicine name = "Medical Space Compendium, Volume 638" icon_state = "book8" @@ -441,7 +441,7 @@ H.dropItemToGround(W) if(prob(50)) step(W, pick(GLOB.alldirs)) - H.add_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + ADD_TRAIT(H, TRAIT_DISFIGURED, TRAIT_GENERIC) H.bleed_rate = 5 H.gib_animation() sleep(3) diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index 8ed0f273e6..9162f3ed91 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -156,7 +156,7 @@ return //CIT CHANGE - ditto add_fingerprint(user) - if((user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) to_chat(user, "You club yourself over the head.") user.Knockdown(60 * force) if(ishuman(user)) diff --git a/code/game/objects/items/melee/transforming.dm b/code/game/objects/items/melee/transforming.dm index 74eb048d8a..0d39e6c847 100644 --- a/code/game/objects/items/melee/transforming.dm +++ b/code/game/objects/items/melee/transforming.dm @@ -82,6 +82,6 @@ to_chat(user, "[src] [active ? "is now active":"can now be concealed"].") /obj/item/melee/transforming/proc/clumsy_transform_effect(mob/living/user) - if(clumsy_check && user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(clumsy_check && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) to_chat(user, "You accidentally cut yourself with [src], like a doofus!") user.take_bodypart_damage(5,5) diff --git a/code/game/objects/items/pneumaticCannon.dm b/code/game/objects/items/pneumaticCannon.dm index d37ec0376a..bd301c36f7 100644 --- a/code/game/objects/items/pneumaticCannon.dm +++ b/code/game/objects/items/pneumaticCannon.dm @@ -150,7 +150,7 @@ if(tank && !tank.air_contents.remove(gasPerThrow * pressureSetting)) to_chat(user, "\The [src] lets out a weak hiss and doesn't react!") return - if(user.has_trait(TRAIT_CLUMSY) && prob(75) && clumsyCheck && iscarbon(user)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(75) && clumsyCheck && iscarbon(user)) var/mob/living/carbon/C = user C.visible_message("[C] loses [C.p_their()] grip on [src], causing it to go off!", "[src] slips out of your hands and goes off!") C.dropItemToGround(src, TRUE) diff --git a/code/game/objects/items/religion.dm b/code/game/objects/items/religion.dm index a80aa1be60..8582725cda 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/objects/items/religion.dm @@ -187,7 +187,7 @@ inspiration_available = FALSE /obj/item/banner/command/check_inspiration(mob/living/carbon/human/H) - return H.has_trait(TRAIT_MINDSHIELD) //Command is stalwart but rewards their allies. + return HAS_TRAIT(H, TRAIT_MINDSHIELD) //Command is stalwart but rewards their allies. /datum/crafting_recipe/command_banner name = "Command Banner" diff --git a/code/game/objects/items/shields.dm b/code/game/objects/items/shields.dm index 30c7115346..b641e15d90 100644 --- a/code/game/objects/items/shields.dm +++ b/code/game/objects/items/shields.dm @@ -91,7 +91,7 @@ return (active) /obj/item/shield/energy/attack_self(mob/living/carbon/human/user) - if(clumsy_check && user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(clumsy_check && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) to_chat(user, "You beat yourself in the head with [src].") user.take_bodypart_damage(5) active = !active diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index d3a3ecd5ef..cf967e25ba 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -281,12 +281,12 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list( var/hit_hand = ((user.active_hand_index % 2 == 0) ? "r_" : "l_") + "arm" if(ishuman(user)) var/mob/living/carbon/human/H = user - if(!H.gloves && !H.has_trait(TRAIT_PIERCEIMMUNE)) // golems, etc + if(!H.gloves && !HAS_TRAIT(H, TRAIT_PIERCEIMMUNE)) // golems, etc to_chat(H, "[src] cuts into your hand!") H.apply_damage(force*0.5, BRUTE, hit_hand) else if(ismonkey(user)) var/mob/living/carbon/monkey/M = user - if(!M.has_trait(TRAIT_PIERCEIMMUNE)) + if(!HAS_TRAIT(M, TRAIT_PIERCEIMMUNE)) to_chat(M, "[src] cuts into your hand!") M.apply_damage(force*0.5, BRUTE, hit_hand) @@ -312,7 +312,7 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list( /obj/item/shard/Crossed(mob/living/L) if(istype(L) && has_gravity(loc)) - if(L.has_trait(TRAIT_LIGHT_STEP)) + if(HAS_TRAIT(L, TRAIT_LIGHT_STEP)) playsound(loc, 'sound/effects/glass_step.ogg', 30, 1) else playsound(loc, 'sound/effects/glass_step.ogg', 50, 1) diff --git a/code/game/objects/items/storage/book.dm b/code/game/objects/items/storage/book.dm index b95d6a897e..c2d5ca50be 100644 --- a/code/game/objects/items/storage/book.dm +++ b/code/game/objects/items/storage/book.dm @@ -109,7 +109,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "bible", to_chat(user, "You don't have the dexterity to do this!") return - if (user.has_trait(TRAIT_CLUMSY) && prob(50)) + if (HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) to_chat(user, "[src] slips out of your hand and hits your head.") user.take_bodypart_damage(10) user.Unconscious(400) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 3904355893..73405cc3ac 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -124,7 +124,7 @@ add_fingerprint(user) /obj/item/melee/baton/attack(mob/M, mob/living/carbon/human/user) - if(status && user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(status && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) clowning_around(user) return diff --git a/code/game/objects/items/tanks/tanks.dm b/code/game/objects/items/tanks/tanks.dm index cdeb972ca1..1245b7de94 100644 --- a/code/game/objects/items/tanks/tanks.dm +++ b/code/game/objects/items/tanks/tanks.dm @@ -128,7 +128,7 @@ H.dropItemToGround(W) if(prob(50)) step(W, pick(GLOB.alldirs)) - H.add_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + ADD_TRAIT(H, TRAIT_DISFIGURED, TRAIT_GENERIC) H.bleed_rate = 5 H.gib_animation() sleep(3) diff --git a/code/game/objects/items/twohanded.dm b/code/game/objects/items/twohanded.dm index d4ec9217e7..bf63a96f05 100644 --- a/code/game/objects/items/twohanded.dm +++ b/code/game/objects/items/twohanded.dm @@ -350,7 +350,7 @@ unwield() return ..() - if(user.has_trait(TRAIT_CLUMSY) && (wielded) && prob(40)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && (wielded) && prob(40)) impale(user) return if((wielded) && prob(50)) diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index 68c4ffeee8..5f21862c17 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -71,7 +71,7 @@ adjusted_climb_time *= 2 if(isalien(user)) adjusted_climb_time *= 0.25 //aliens are terrifyingly fast - if(user.has_trait(TRAIT_FREERUNNING)) //do you have any idea how fast I am??? + if(HAS_TRAIT(user, TRAIT_FREERUNNING)) //do you have any idea how fast I am??? adjusted_climb_time *= 0.8 structureclimber = user if(do_mob(user, user, adjusted_climb_time)) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index a6a6c5f699..cbdb0750e2 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -86,7 +86,7 @@ to_chat(user, "Alt-click to [locked ? "unlock" : "lock"].") if(isliving(user)) var/mob/living/L = user - if(L.has_trait(TRAIT_SKITTISH)) + if(HAS_TRAIT(L, TRAIT_SKITTISH)) to_chat(user, "Ctrl-Shift-click [src] to jump inside.") /obj/structure/closet/CanPass(atom/movable/mover, turf/target) @@ -416,7 +416,7 @@ togglelock(user) /obj/structure/closet/CtrlShiftClick(mob/living/user) - if(!user.has_trait(TRAIT_SKITTISH)) + if(!HAS_TRAIT(user, TRAIT_SKITTISH)) return ..() if(!user.canUseTopic(src) || !isturf(user.loc)) return diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index 695395afd2..09e5510d62 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -182,7 +182,7 @@ GLOBAL_LIST_EMPTY(bodycontainers) //Let them act as spawnpoints for revenants an for(var/mob/living/M in compiled) var/mob/living/mob_occupant = get_mob_or_brainmob(M) - if(mob_occupant.client && !mob_occupant.suiciding && !(mob_occupant.has_trait(TRAIT_NOCLONE)) && !mob_occupant.hellbound) + if(mob_occupant.client && !mob_occupant.suiciding && !(HAS_TRAIT(mob_occupant, TRAIT_NOCLONE)) && !mob_occupant.hellbound) icon_state = "morgue4" // Cloneable if(mob_occupant.stat == DEAD && beeper) if(world.time > next_beep) diff --git a/code/game/objects/structures/petrified_statue.dm b/code/game/objects/structures/petrified_statue.dm index 815dd9de6d..65ffb7e2e5 100644 --- a/code/game/objects/structures/petrified_statue.dm +++ b/code/game/objects/structures/petrified_statue.dm @@ -17,7 +17,7 @@ L.buckled.unbuckle_mob(L,force=1) L.visible_message("[L]'s skin rapidly turns to marble!", "Your body freezes up! Can't... move... can't... think...") L.forceMove(src) - L.add_trait(TRAIT_MUTE, STATUE_MUTE) + ADD_TRAIT(L, TRAIT_MUTE, STATUE_MUTE) L.faction += "mimic" //Stops mimics from instaqdeling people in statues L.status_flags |= GODMODE obj_integrity = L.health + 100 //stoning damaged mobs will result in easier to shatter statues @@ -59,7 +59,7 @@ if(petrified_mob) petrified_mob.status_flags &= ~GODMODE petrified_mob.forceMove(loc) - petrified_mob.remove_trait(TRAIT_MUTE, STATUE_MUTE) + REMOVE_TRAIT(petrified_mob, TRAIT_MUTE, STATUE_MUTE) petrified_mob.take_overall_damage((petrified_mob.health - obj_integrity + 100)) //any new damage the statue incurred is transfered to the mob petrified_mob.faction -= "mimic" petrified_mob = null diff --git a/code/modules/admin/antag_panel.dm b/code/modules/admin/antag_panel.dm index 1e207909bd..1672310567 100644 --- a/code/modules/admin/antag_panel.dm +++ b/code/modules/admin/antag_panel.dm @@ -80,7 +80,7 @@ GLOBAL_VAR(antag_prototypes) var/list/result = list() if(!current) result += "No body!" - if(current && current.has_trait(TRAIT_MINDSHIELD)) + if(current && HAS_TRAIT(current, TRAIT_MINDSHIELD)) result += "Mindshielded" //Move these to mob if(iscyborg(current)) diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm index da1b404ea5..968c2d1e2f 100644 --- a/code/modules/admin/verbs/pray.dm +++ b/code/modules/admin/verbs/pray.dm @@ -34,14 +34,14 @@ deity = "Nar'Sie" else if(isliving(usr)) var/mob/living/L = usr - if(L.has_trait(TRAIT_SPIRITUAL)) + if(HAS_TRAIT(L, TRAIT_SPIRITUAL)) cross.icon_state = "holylight" font_color = "blue" prayer_type = "SPIRITUAL PRAYER" - + var/msg_tmp = msg msg = "[icon2html(cross, GLOB.admins)][prayer_type][deity ? " (to [deity])" : ""]: [ADMIN_FULLMONTY(src)] [ADMIN_SC(src)]: [msg]" - + for(var/client/C in GLOB.admins) if(C.prefs.chat_toggles & CHAT_PRAYER) to_chat(C, msg) diff --git a/code/modules/antagonists/abductor/equipment/gland.dm b/code/modules/antagonists/abductor/equipment/gland.dm index 969590402c..8a3ff2186a 100644 --- a/code/modules/antagonists/abductor/equipment/gland.dm +++ b/code/modules/antagonists/abductor/equipment/gland.dm @@ -272,10 +272,10 @@ /obj/item/organ/heart/gland/electric/Insert(mob/living/carbon/M, special = 0) ..() - owner.add_trait(TRAIT_SHOCKIMMUNE, ORGAN_TRAIT) + ADD_TRAIT(owner, TRAIT_SHOCKIMMUNE, ORGAN_TRAIT) /obj/item/organ/heart/gland/electric/Remove(mob/living/carbon/M, special = 0) - owner.remove_trait(TRAIT_SHOCKIMMUNE, ORGAN_TRAIT) + REMOVE_TRAIT(owner, TRAIT_SHOCKIMMUNE, ORGAN_TRAIT) ..() /obj/item/organ/heart/gland/electric/activate() diff --git a/code/modules/antagonists/changeling/changeling.dm b/code/modules/antagonists/changeling/changeling.dm index 7e0ae3c08c..5b0be336ff 100644 --- a/code/modules/antagonists/changeling/changeling.dm +++ b/code/modules/antagonists/changeling/changeling.dm @@ -169,7 +169,7 @@ to_chat(owner.current, "We have reached our capacity for abilities.") return - if(owner.current.has_trait(TRAIT_DEATHCOMA))//To avoid potential exploits by buying new powers while in stasis, which clears your verblist. + if(HAS_TRAIT(owner.current, TRAIT_DEATHCOMA))//To avoid potential exploits by buying new powers while in stasis, which clears your verblist. to_chat(owner.current, "We lack the energy to evolve new abilities right now.") return @@ -239,7 +239,7 @@ if(verbose) to_chat(user, "[target] is not compatible with our biology.") return - if((target.has_trait(TRAIT_NOCLONE)) || (target.has_trait(TRAIT_NOCLONE))) + if((HAS_TRAIT(target, TRAIT_NOCLONE)) || (HAS_TRAIT(target, TRAIT_NOCLONE))) if(verbose) to_chat(user, "DNA of [target] is ruined beyond usability!") return diff --git a/code/modules/antagonists/changeling/changeling_power.dm b/code/modules/antagonists/changeling/changeling_power.dm index 1d4f15ec9d..c5334265fb 100644 --- a/code/modules/antagonists/changeling/changeling_power.dm +++ b/code/modules/antagonists/changeling/changeling_power.dm @@ -68,7 +68,7 @@ if(req_stat < user.stat) to_chat(user, "We are incapacitated.") return 0 - if((user.has_trait(TRAIT_DEATHCOMA)) && (!ignores_fakedeath)) + if((HAS_TRAIT(user, TRAIT_DEATHCOMA)) && (!ignores_fakedeath)) to_chat(user, "We are incapacitated.") return 0 return 1 diff --git a/code/modules/antagonists/changeling/powers/fakedeath.dm b/code/modules/antagonists/changeling/powers/fakedeath.dm index c19eb50e7f..346d948c79 100644 --- a/code/modules/antagonists/changeling/powers/fakedeath.dm +++ b/code/modules/antagonists/changeling/powers/fakedeath.dm @@ -33,7 +33,7 @@ RV.action.Grant(user) /obj/effect/proc_holder/changeling/fakedeath/can_sting(mob/living/user) - if(user.has_trait(TRAIT_DEATHCOMA, "changeling")) + if(HAS_TRAIT_FROM(user, TRAIT_DEATHCOMA, "changeling")) to_chat(user, "We are already reviving.") return if(!user.stat) //Confirmation for living changelings if they want to fake their death diff --git a/code/modules/antagonists/changeling/powers/hivemind.dm b/code/modules/antagonists/changeling/powers/hivemind.dm index a33dab31c3..1d7382d947 100644 --- a/code/modules/antagonists/changeling/powers/hivemind.dm +++ b/code/modules/antagonists/changeling/powers/hivemind.dm @@ -10,7 +10,7 @@ action_background_icon_state = "bg_ling" /obj/effect/proc_holder/changeling/hivemind_comms/sting_action(var/mob/living/user) - if (user.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (HAS_TRAIT(user, CHANGELING_HIVEMIND_MUTE)) to_chat(user, "The poison in the air hinders our ability to interact with the hivemind.") return var/input = html_decode(stripped_input(usr, "Please choose a message to transmit.", "Changeling Hivemind", "")) @@ -47,7 +47,7 @@ GLOBAL_LIST_EMPTY(hivemind_bank) action_background_icon_state = "bg_ling" /obj/effect/proc_holder/changeling/hivemind_upload/sting_action(var/mob/living/user) - if (user.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (HAS_TRAIT(user, CHANGELING_HIVEMIND_MUTE)) to_chat(user, "The poison in the air hinders our ability to interact with the hivemind.") return var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) @@ -86,7 +86,7 @@ GLOBAL_LIST_EMPTY(hivemind_bank) /obj/effect/proc_holder/changeling/hivemind_download/can_sting(mob/living/carbon/user) if(!..()) return - if (user.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (HAS_TRAIT(user, CHANGELING_HIVEMIND_MUTE)) to_chat(user, "The poison in the air hinders our ability to interact with the hivemind.") return var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) diff --git a/code/modules/antagonists/changeling/powers/revive.dm b/code/modules/antagonists/changeling/powers/revive.dm index 514b7603fd..3404765628 100644 --- a/code/modules/antagonists/changeling/powers/revive.dm +++ b/code/modules/antagonists/changeling/powers/revive.dm @@ -37,7 +37,7 @@ if(!.) return - if(user.has_trait(CHANGELING_DRAIN) || ((user.stat != DEAD) && !(user.has_trait(TRAIT_DEATHCOMA)))) + if(HAS_TRAIT(user, CHANGELING_DRAIN) || ((user.stat != DEAD) && !(HAS_TRAIT(user, TRAIT_DEATHCOMA)))) var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) changeling.purchasedpowers -= src return FALSE diff --git a/code/modules/antagonists/changeling/powers/strained_muscles.dm b/code/modules/antagonists/changeling/powers/strained_muscles.dm index 4e8b8adbd1..baeed8b0b2 100644 --- a/code/modules/antagonists/changeling/powers/strained_muscles.dm +++ b/code/modules/antagonists/changeling/powers/strained_muscles.dm @@ -19,7 +19,7 @@ if(active) to_chat(user, "Our muscles tense and strengthen.") else - user.remove_trait(TRAIT_GOTTAGOFAST, "changeling_muscles") + REMOVE_TRAIT(user, TRAIT_GOTTAGOFAST, "changeling_muscles") to_chat(user, "Our muscles relax.") if(stacks >= 10) to_chat(user, "We collapse in exhaustion.") @@ -32,12 +32,12 @@ /obj/effect/proc_holder/changeling/strained_muscles/proc/muscle_loop(mob/living/carbon/user) while(active) - user.add_trait(TRAIT_GOTTAGOFAST, "changeling_muscles") + ADD_TRAIT(user, TRAIT_GOTTAGOFAST, "changeling_muscles") if(user.stat != CONSCIOUS || user.staminaloss >= 90) active = !active to_chat(user, "Our muscles relax without the energy to strengthen them.") user.Knockdown(40) - user.remove_trait(TRAIT_GOTTAGOFAST, "changeling_muscles") + REMOVE_TRAIT(user, TRAIT_GOTTAGOFAST, "changeling_muscles") break stacks++ diff --git a/code/modules/antagonists/changeling/powers/tiny_prick.dm b/code/modules/antagonists/changeling/powers/tiny_prick.dm index c9b48fa6fc..5a701d8a96 100644 --- a/code/modules/antagonists/changeling/powers/tiny_prick.dm +++ b/code/modules/antagonists/changeling/powers/tiny_prick.dm @@ -91,7 +91,7 @@ /obj/effect/proc_holder/changeling/sting/transformation/can_sting(mob/user, mob/living/carbon/target) if(!..()) return - if((target.has_trait(TRAIT_HUSK)) || !iscarbon(target) || (NOTRANSSTING in target.dna.species.species_traits)) + if((HAS_TRAIT(target, TRAIT_HUSK)) || !iscarbon(target) || (NOTRANSSTING in target.dna.species.species_traits)) to_chat(user, "Our sting appears ineffective against its DNA.") return 0 return 1 @@ -134,7 +134,7 @@ return if(isliving(target)) var/mob/living/L = target - if((L.has_trait(TRAIT_HUSK)) || !L.has_dna()) + if((HAS_TRAIT(L, TRAIT_HUSK)) || !L.has_dna()) to_chat(user, "Our sting appears ineffective against its DNA.") return 0 return 1 diff --git a/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm b/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm index 51521ada24..9d241148b4 100644 --- a/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm +++ b/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm @@ -32,7 +32,7 @@ if(ishuman(loc)) var/mob/living/carbon/human/H = loc if(src == H.glasses && !up) - if(H.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(H, TRAIT_BLIND)) to_chat(H, "\"You're blind, idiot. Stop embarrassing yourself.\"") return if(blind_cultist(H)) @@ -76,7 +76,7 @@ ..() if(slot != SLOT_GLASSES || up) return - if(user.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(user, TRAIT_BLIND)) to_chat(user, "\"You're blind, idiot. Stop embarrassing yourself.\"" ) return if(blind_cultist(user)) //Cultists instantly go blind @@ -115,11 +115,11 @@ var/obj/item/clothing/glasses/wraith_spectacles/WS = L.glasses desc = "[glasses_right && !WS.up ? "":""]You are [glasses_right ? "":"not "]wearing wraith spectacles[glasses_right && !WS.up ? "!":"."]
\ You have taken [W.eye_damage_done] eye damage from them.
" - if(L.has_trait(TRAIT_NEARSIGHT)) + if(HAS_TRAIT(L, TRAIT_NEARSIGHT)) desc += "You are nearsighted!
" else if(glasses_right && !WS.up) desc += "You will become nearsighted at [W.nearsight_breakpoint] eye damage.
" - if(L.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(L, TRAIT_BLIND)) desc += "You are blind!" else if(glasses_right && !WS.up) desc += "You will become blind at [W.blind_breakpoint] eye damage." @@ -153,18 +153,18 @@ qdel(src) /datum/status_effect/wraith_spectacles/proc/apply_eye_damage(mob/living/carbon/human/H) - if(H.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(H, TRAIT_BLIND)) return H.adjust_eye_damage(0.5) eye_damage_done += 0.5 if(eye_damage_done >= 20) H.adjust_blurriness(2) if(eye_damage_done >= nearsight_breakpoint) - if(!H.has_trait(TRAIT_NEARSIGHT)) + if(!HAS_TRAIT(H, TRAIT_NEARSIGHT)) to_chat(H, "Your vision doubles, then trembles. Darkness begins to close in. You can't keep this up!") H.become_nearsighted(EYE_DAMAGE) if(eye_damage_done >= blind_breakpoint) - if(!H.has_trait(TRAIT_BLIND)) + if(!HAS_TRAIT(H, TRAIT_BLIND)) to_chat(H, "A piercing white light floods your vision. Suddenly, all goes dark!") H.become_blind(EYE_DAMAGE) diff --git a/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm b/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm index 8dfadb60bc..df0083e845 100644 --- a/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm +++ b/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm @@ -110,7 +110,7 @@ if(!(BI.resistance_flags & ON_FIRE)) BI.fire_act() continue - if(is_servant_of_ratvar(L) || (L.has_trait(TRAIT_BLIND)) || L.anti_magic_check(TRUE, TRUE)) + if(is_servant_of_ratvar(L) || (HAS_TRAIT(L, TRAIT_BLIND)) || L.anti_magic_check(TRUE, TRUE)) continue if(L.stat || L.lying) continue diff --git a/code/modules/antagonists/cult/cult.dm b/code/modules/antagonists/cult/cult.dm index 9451012a04..32442ee72c 100644 --- a/code/modules/antagonists/cult/cult.dm +++ b/code/modules/antagonists/cult/cult.dm @@ -131,7 +131,7 @@ var/mob/living/carbon/human/H = current H.eye_color = initial(H.eye_color) H.dna.update_ui_block(DNA_EYE_COLOR_BLOCK) - H.remove_trait(CULT_EYES) + REMOVE_TRAIT(H, TRAIT_CULT_EYES, "valid_cultist") H.update_body() H.cut_overlays() H.regenerate_icons() @@ -225,7 +225,7 @@ var/mob/living/carbon/human/H = current H.eye_color = initial(H.eye_color) H.dna.update_ui_block(DNA_EYE_COLOR_BLOCK) - H.remove_trait(CULT_EYES) + REMOVE_TRAIT(H, TRAIT_CULT_EYES, "valid_cultist") H.cut_overlays() H.regenerate_icons() @@ -301,7 +301,7 @@ var/mob/living/carbon/human/H = cultist H.eye_color = "f00" H.dna.update_ui_block(DNA_EYE_COLOR_BLOCK) - H.add_trait(CULT_EYES) + ADD_TRAIT(H, TRAIT_CULT_EYES, "valid_cultist") H.update_body() /datum/team/cult/proc/ascend(cultist) diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 3c11351660..2f3a039e70 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -123,7 +123,7 @@ structure_check() searches for nearby cultist structures required for the invoca continue if(ishuman(L)) var/mob/living/carbon/human/H = L - if((H.has_trait(TRAIT_MUTE)) || H.silent) + if((HAS_TRAIT(H, TRAIT_MUTE)) || H.silent) continue if(L.stat) continue @@ -250,14 +250,14 @@ structure_check() searches for nearby cultist structures required for the invoca currentconversionman = convertee conversiontimeout = world.time + (10 SECONDS) convertee.Stun(100) - convertee.add_trait(TRAIT_MUTE, "conversionrune") + ADD_TRAIT(convertee, TRAIT_MUTE, "conversionrune") conversionresult = FALSE while(world.time < conversiontimeout && convertee && !conversionresult) stoplag(1) currentconversionman = null if(!convertee) return FALSE - convertee.remove_trait(TRAIT_MUTE, "conversionrune") + REMOVE_TRAIT(convertee, TRAIT_MUTE, "conversionrune") if(get_turf(convertee) != get_turf(src)) return FALSE if(!conversionresult) diff --git a/code/modules/antagonists/highlander/highlander.dm b/code/modules/antagonists/highlander/highlander.dm index 1fa37f3a51..c0246ba978 100644 --- a/code/modules/antagonists/highlander/highlander.dm +++ b/code/modules/antagonists/highlander/highlander.dm @@ -7,11 +7,11 @@ /datum/antagonist/highlander/apply_innate_effects(mob/living/mob_override) var/mob/living/L = owner.current || mob_override - L.add_trait(TRAIT_NOGUNS, "highlander") + ADD_TRAIT(L, TRAIT_NOGUNS, "highlander") /datum/antagonist/highlander/remove_innate_effects(mob/living/mob_override) var/mob/living/L = owner.current || mob_override - L.remove_trait(TRAIT_NOGUNS, "highlander") + REMOVE_TRAIT(L, TRAIT_NOGUNS, "highlander") /datum/antagonist/highlander/proc/forge_objectives() var/datum/objective/steal/steal_objective = new diff --git a/code/modules/antagonists/overthrow/overthrow_converter.dm b/code/modules/antagonists/overthrow/overthrow_converter.dm index c94a838165..23599bd01b 100644 --- a/code/modules/antagonists/overthrow/overthrow_converter.dm +++ b/code/modules/antagonists/overthrow/overthrow_converter.dm @@ -37,7 +37,7 @@ if(M == user) to_chat(user,"You cannot convert yourself!") return - if(M.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(M, TRAIT_MINDSHIELD)) to_chat(user, "This mind is too strong to convert, try to remove whatever is protecting it first!") return M.visible_message("[user] is attempting to implant [M].") diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index 90df57f48b..e10d83ffb7 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -17,7 +17,7 @@ return FALSE if(new_owner.unconvertable) return FALSE - if(new_owner.current && new_owner.current.has_trait(TRAIT_MINDSHIELD)) + if(new_owner.current && HAS_TRAIT(new_owner.current, TRAIT_MINDSHIELD)) return FALSE /datum/antagonist/rev/apply_innate_effects(mob/living/mob_override) diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index ad83ed8c13..b1aa63c242 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -43,7 +43,7 @@ holder.update_icon() /obj/item/assembly/flash/proc/clown_check(mob/living/carbon/human/user) - if(user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) flash_carbon(user, user, 15, 0) return FALSE return TRUE diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm index 58a3a5349a..a2a9fb0105 100644 --- a/code/modules/assembly/mousetrap.dm +++ b/code/modules/assembly/mousetrap.dm @@ -18,7 +18,7 @@ if(!armed) if(ishuman(usr)) var/mob/living/carbon/human/user = usr - if((user.has_trait(TRAIT_DUMB) || user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_DUMB) || HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) to_chat(user, "Your hand slips, setting off the trigger!") pulse(FALSE) update_icon() @@ -38,7 +38,7 @@ var/obj/item/bodypart/affecting = null if(ishuman(target)) var/mob/living/carbon/human/H = target - if(H.has_trait(TRAIT_PIERCEIMMUNE)) + if(HAS_TRAIT(H, TRAIT_PIERCEIMMUNE)) playsound(src, 'sound/effects/snap.ogg', 50, TRUE) armed = FALSE update_icon() @@ -70,7 +70,7 @@ if(!armed) to_chat(user, "You arm [src].") else - if((user.has_trait(TRAIT_DUMB) || user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_DUMB) || HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) var/which_hand = BODY_ZONE_PRECISE_L_HAND if(!(user.active_hand_index % 2)) which_hand = BODY_ZONE_PRECISE_R_HAND @@ -87,7 +87,7 @@ //ATTACK HAND IGNORING PARENT RETURN VALUE /obj/item/assembly/mousetrap/attack_hand(mob/living/carbon/human/user) if(armed) - if((user.has_trait(TRAIT_DUMB) || user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_DUMB) || HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) var/which_hand = BODY_ZONE_PRECISE_L_HAND if(!(user.active_hand_index % 2)) which_hand = BODY_ZONE_PRECISE_R_HAND diff --git a/code/modules/clothing/glasses/_glasses.dm b/code/modules/clothing/glasses/_glasses.dm index 7f7b3ae0ed..67d0252bb2 100644 --- a/code/modules/clothing/glasses/_glasses.dm +++ b/code/modules/clothing/glasses/_glasses.dm @@ -45,7 +45,7 @@ /obj/item/clothing/glasses/proc/thermal_overload() if(ishuman(src.loc)) var/mob/living/carbon/human/H = src.loc - if(!(H.has_trait(TRAIT_BLIND))) + if(!(HAS_TRAIT(H, TRAIT_BLIND))) if(H.glasses == src) to_chat(H, "[src] overloads and blinds you!") H.flash_act(visual = 1) diff --git a/code/modules/clothing/neck/_neck.dm b/code/modules/clothing/neck/_neck.dm index 4179e69a45..330f69ddaf 100644 --- a/code/modules/clothing/neck/_neck.dm +++ b/code/modules/clothing/neck/_neck.dm @@ -66,7 +66,7 @@ var/obj/item/organ/heart/heart = M.getorganslot(ORGAN_SLOT_HEART) var/obj/item/organ/lungs/lungs = M.getorganslot(ORGAN_SLOT_LUNGS) - if(!(M.stat == DEAD || (M.has_trait(TRAIT_FAKEDEATH)))) + if(!(M.stat == DEAD || (HAS_TRAIT(M, TRAIT_FAKEDEATH)))) if(heart && istype(heart)) heart_strength = "an unstable" if(heart.beating) diff --git a/code/modules/clothing/shoes/taeclowndo.dm b/code/modules/clothing/shoes/taeclowndo.dm index 20d9fa6b70..f2bbdf0ceb 100644 --- a/code/modules/clothing/shoes/taeclowndo.dm +++ b/code/modules/clothing/shoes/taeclowndo.dm @@ -13,7 +13,7 @@ if(!ishuman(user)) return var/mob/living/carbon/human/H = user - if(!(H.has_trait(TRAIT_CLUMSY)) && !(H.mind && H.mind.assigned_role == "Clown")) + if(!(HAS_TRAIT(H, TRAIT_CLUMSY)) && !(H.mind && H.mind.assigned_role == "Clown")) return if(slot == SLOT_SHOES) spells = new diff --git a/code/modules/events/disease_outbreak.dm b/code/modules/events/disease_outbreak.dm index f09c0481f6..f63ca39874 100644 --- a/code/modules/events/disease_outbreak.dm +++ b/code/modules/events/disease_outbreak.dm @@ -39,7 +39,7 @@ continue if(H.stat == DEAD) continue - if(H.has_trait(TRAIT_VIRUSIMMUNE)) //Don't pick someone who's virus immune, only for it to not do anything. + if(HAS_TRAIT(H, TRAIT_VIRUSIMMUNE)) //Don't pick someone who's virus immune, only for it to not do anything. continue var/foundAlready = FALSE // don't infect someone that already has a disease for(var/thing in H.diseases) @@ -51,7 +51,7 @@ var/datum/disease/D if(!advanced_virus) if(virus_type == /datum/disease/dnaspread) //Dnaspread needs strain_data set to work. - if(!H.dna || (H.has_trait(TRAIT_BLIND))) //A blindness disease would be the worst. + if(!H.dna || (HAS_TRAIT(H, TRAIT_BLIND))) //A blindness disease would be the worst. continue D = new virus_type() var/datum/disease/dnaspread/DS = D diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 6594146e81..e11fb133fd 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -36,7 +36,7 @@ if(M == user) user.visible_message("[user] swallows a gulp of [src].", "You swallow a gulp of [src].") - if(M.has_trait(TRAIT_VORACIOUS)) + if(HAS_TRAIT(M, TRAIT_VORACIOUS)) M.changeNext_move(CLICK_CD_MELEE * 0.5) //chug! chug! chug! else diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index b753a6c246..dab933ca4e 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -57,7 +57,7 @@ if(user.a_intent != INTENT_HARM || !isGlass) return ..() - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm [target]!") return diff --git a/code/modules/food_and_drinks/food.dm b/code/modules/food_and_drinks/food.dm index f9d9a3d85a..3a6d74355d 100644 --- a/code/modules/food_and_drinks/food.dm +++ b/code/modules/food_and_drinks/food.dm @@ -19,7 +19,7 @@ if(last_check_time + 50 < world.time) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(!H.has_trait(TRAIT_AGEUSIA)) + if(!HAS_TRAIT(H, TRAIT_AGEUSIA)) if(foodtype & H.dna.species.toxic_food) to_chat(H,"What the hell was that thing?!") H.adjust_disgust(25 + 30 * fraction) diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 2b37065709..d3408ca5e5 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -112,7 +112,7 @@ All foods are distributed among various categories. Use common sense. else if(fullness > (600 * (1 + M.overeatduration / 2000))) // The more you eat - the more you can eat user.visible_message("[user] cannot force any more of \the [src] to go down [user.p_their()] throat!", "You cannot force any more of \the [src] to go down your throat!") return 0 - if(M.has_trait(TRAIT_VORACIOUS)) + if(HAS_TRAIT(M, TRAIT_VORACIOUS)) M.changeNext_move(CLICK_CD_MELEE * 0.5) //nom nom nom else if(!isbrain(M)) //If you're feeding it to someone else. diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index fe05d8a5bf..927a7d2697 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -28,7 +28,7 @@ if(last_check_time + 50 < world.time) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.mind && H.mind.assigned_role == "Security Officer" || H.mind.assigned_role == "Detective" || H.mind.assigned_role == "Warden" || H.mind.assigned_role == "Head of Security" && !H.has_trait(TRAIT_AGEUSIA)) + if(H.mind && H.mind.assigned_role == "Security Officer" || H.mind.assigned_role == "Detective" || H.mind.assigned_role == "Warden" || H.mind.assigned_role == "Head of Security" && !HAS_TRAIT(H, TRAIT_AGEUSIA)) to_chat(H,"I love this taste!") H.adjust_disgust(-5 + -2.5 * fraction) GET_COMPONENT_FROM(mood, /datum/component/mood, H) diff --git a/code/modules/hydroponics/grown/nettle.dm b/code/modules/hydroponics/grown/nettle.dm index e3f8c254ac..dbcce2830b 100644 --- a/code/modules/hydroponics/grown/nettle.dm +++ b/code/modules/hydroponics/grown/nettle.dm @@ -56,7 +56,7 @@ var/mob/living/carbon/C = user if(C.gloves) return FALSE - if(C.has_trait(TRAIT_PIERCEIMMUNE)) + if(HAS_TRAIT(C, TRAIT_PIERCEIMMUNE)) return FALSE var/hit_zone = (C.held_index_to_dir(C.active_hand_index) == "l" ? "l_":"r_") + "arm" var/obj/item/bodypart/affecting = C.get_bodypart(hit_zone) diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 23823e1e18..0990ca961a 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -222,9 +222,9 @@ to_chat(user, "You feel your life being drained by the pendant...") if(do_after(user, 40, target = user)) to_chat(user, "Your lifeforce is now linked to the pendant! You feel like removing it would kill you, and yet you instinctively know that until then, you won't die.") - user.add_trait(TRAIT_NODEATH, "memento_mori") - user.add_trait(TRAIT_NOHARDCRIT, "memento_mori") - user.add_trait(TRAIT_NOCRITDAMAGE, "memento_mori") + ADD_TRAIT(user, TRAIT_NODEATH, "memento_mori") + ADD_TRAIT(user, TRAIT_NOHARDCRIT, "memento_mori") + ADD_TRAIT(user, TRAIT_NOCRITDAMAGE, "memento_mori") icon_state = "memento_mori_active" active_owner = user @@ -662,7 +662,7 @@ playsound(user, 'sound/magic/clockwork/fellowship_armory.ogg', 35, TRUE, frequency = 90000 - (active * 30000)) /obj/item/melee/transforming/cleaving_saw/clumsy_transform_effect(mob/living/user) - if(user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) to_chat(user, "You accidentally cut yourself with [src], like a doofus!") user.take_bodypart_damage(10) diff --git a/code/modules/mob/living/blood.dm b/code/modules/mob/living/blood.dm index 71a12e9ff4..815184c63d 100644 --- a/code/modules/mob/living/blood.dm +++ b/code/modules/mob/living/blood.dm @@ -16,7 +16,7 @@ /mob/living/carbon/monkey/handle_blood() - if(bodytemperature >= TCRYO && !(has_trait(TRAIT_NOCLONE))) //cryosleep or husked people do not pump the blood. + if(bodytemperature >= TCRYO && !(HAS_TRAIT(src, TRAIT_NOCLONE))) //cryosleep or husked people do not pump the blood. //Blood regeneration if there is some space if(blood_volume < BLOOD_VOLUME_NORMAL) blood_volume += 0.1 // regenerate blood VERY slowly @@ -30,10 +30,10 @@ bleed_rate = 0 return - if(bodytemperature >= TCRYO && !(has_trait(TRAIT_NOCLONE))) //cryosleep or husked people do not pump the blood. + if(bodytemperature >= TCRYO && !(HAS_TRAIT(src, TRAIT_NOCLONE))) //cryosleep or husked people do not pump the blood. //Blood regeneration if there is some space - if(blood_volume < BLOOD_VOLUME_NORMAL && !has_trait(TRAIT_NOHUNGER)) + if(blood_volume < BLOOD_VOLUME_NORMAL && !HAS_TRAIT(src, TRAIT_NOHUNGER)) var/nutrition_ratio = 0 switch(nutrition) if(0 to NUTRITION_LEVEL_STARVING) @@ -69,7 +69,7 @@ Unconscious(rand(20,60)) to_chat(src, "You feel extremely [word].") if(-INFINITY to BLOOD_VOLUME_SURVIVE) - if(!has_trait(TRAIT_NODEATH)) + if(!HAS_TRAIT(src, TRAIT_NODEATH)) death() var/temp_bleed = 0 @@ -87,7 +87,7 @@ bleed_rate = max(bleed_rate - 0.5, temp_bleed)//if no wounds, other bleed effects (heparin) naturally decreases - if(bleed_rate && !bleedsuppress && !(has_trait(TRAIT_FAKEDEATH))) + if(bleed_rate && !bleedsuppress && !(HAS_TRAIT(src, TRAIT_FAKEDEATH))) bleed(bleed_rate) //Makes a blood drop, leaking amt units of blood from the mob @@ -214,13 +214,13 @@ return "blood" /mob/living/carbon/monkey/get_blood_id() - if(!(has_trait(TRAIT_NOCLONE))) + if(!(HAS_TRAIT(src, TRAIT_NOCLONE))) return "blood" /mob/living/carbon/human/get_blood_id() if(dna.species.exotic_blood) return dna.species.exotic_blood - else if((NOBLOOD in dna.species.species_traits) || (has_trait(TRAIT_NOCLONE))) + else if((NOBLOOD in dna.species.species_traits) || (HAS_TRAIT(src, TRAIT_NOCLONE))) return return "blood" diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index 0b4d5f6098..64b75bc801 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -42,13 +42,13 @@ INVOKE_ASYNC(is_devil(src), /datum/antagonist/devil.proc/beginResurrectionCheck, src) /mob/living/carbon/human/proc/makeSkeleton() - add_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + ADD_TRAIT(src, TRAIT_DISFIGURED, TRAIT_GENERIC) set_species(/datum/species/skeleton) return 1 /mob/living/carbon/proc/Drain() become_husk(CHANGELING_DRAIN) - add_trait(TRAIT_NOCLONE, CHANGELING_DRAIN) + ADD_TRAIT(src, TRAIT_NOCLONE, CHANGELING_DRAIN) blood_volume = 0 return 1 diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 94f08280d4..de99287d41 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -93,7 +93,7 @@ if(!(SLOT_GLASSES in obscured)) if(glasses) msg += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes.\n" - else if(eye_color == BLOODCULT_EYE && iscultist(src) && HAS_TRAIT(src, CULT_EYES)) + else if(eye_color == BLOODCULT_EYE && iscultist(src) && HAS_TRAIT(src, TRAIT_CULT_EYES)) msg += "[t_His] eyes are glowing an unnatural red!\n" //ears diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 1861b5ebd0..2a75119841 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -614,7 +614,7 @@ facial_hair_style = "Shaved" hair_style = "Bald" update_hair() - add_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + ADD_TRAIT(src, TRAIT_DISFIGURED, TRAIT_GENERIC) update_damage_overlays() diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 12b1d73778..1af9dbc5f5 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -63,7 +63,7 @@ /mob/living/carbon/human/handle_traits() if(eye_blind) //blindness, heals slowly over time - if(HAS_TRAIT(src, TRAIT_BLIND, EYES_COVERED)) //covering your eyes heals blurry eyes faster + if(HAS_TRAIT_FROM(src, TRAIT_BLIND, EYES_COVERED)) //covering your eyes heals blurry eyes faster adjust_blindness(-3) else adjust_blindness(-1) @@ -332,7 +332,7 @@ HM.on_life(src) /mob/living/carbon/human/proc/handle_heart() - var/we_breath = !HAS_TRAIT(src, TRAIT_NOBREATH, SPECIES_TRAIT) + var/we_breath = !HAS_TRAIT_FROM(src, TRAIT_NOBREATH, SPECIES_TRAIT) if(!undergoing_cardiac_arrest()) return diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index b0ac43aa42..673249b186 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -54,7 +54,7 @@ /mob/living/carbon/human/IsVocal() // how do species that don't breathe talk? magic, that's what. - if(!HAS_TRAIT(src, TRAIT_NOBREATH, SPECIES_TRAIT) && !getorganslot(ORGAN_SLOT_LUNGS)) + if(!HAS_TRAIT_FROM(src, TRAIT_NOBREATH, SPECIES_TRAIT) && !getorganslot(ORGAN_SLOT_LUNGS)) return FALSE if(mind) return !mind.miming diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 1a6ef6cd2f..c9abf392a2 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -286,7 +286,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) C.put_in_hands(new mutanthands()) for(var/X in inherent_traits) - C.add_trait(X, SPECIES_TRAIT) + ADD_TRAIT(C, X, SPECIES_TRAIT) if(TRAIT_VIRUSIMMUNE in inherent_traits) for(var/datum/disease/A in C.diseases) @@ -313,7 +313,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(DIGITIGRADE in species_traits) C.Digitigrade_Leg_Swap(TRUE) for(var/X in inherent_traits) - C.remove_trait(X, SPECIES_TRAIT) + REMOVE_TRAIT(C, X, SPECIES_TRAIT) SEND_SIGNAL(C, COMSIG_SPECIES_LOSS, src) @@ -1161,13 +1161,13 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(HAS_TRAIT(H, TRAIT_FAT))//I share your pain, past coder. if(H.overeatduration < 100) to_chat(H, "You feel fit again!") - H.remove_trait(TRAIT_FAT, OBESITY) + REMOVE_TRAIT(H, TRAIT_FAT, OBESITY) H.update_inv_w_uniform() H.update_inv_wear_suit() else if(H.overeatduration >= 100) to_chat(H, "You suddenly feel blubbery!") - H.add_trait(TRAIT_FAT, OBESITY) + ADD_TRAIT(H, TRAIT_FAT, OBESITY) H.update_inv_w_uniform() H.update_inv_wear_suit() @@ -1480,7 +1480,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) "You slap [user == target ? "yourself" : "\the [target]"] in the face! ",\ "You hear a slap." ) - if (!target.HAS_TRAIT(TRAIT_NYMPHO)) + if (!HAS_TRAIT(target, TRAIT_NYMPHO)) stop_wagging_tail(target) user.do_attack_animation(target, ATTACK_EFFECT_FACE_SLAP) user.adjustStaminaLossBuffered(3) @@ -1488,7 +1488,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) else if(aim_for_groin && (target == user || target.lying || same_dir) && (target_on_help || target_restrained || target_aiming_for_groin)) user.do_attack_animation(target, ATTACK_EFFECT_ASS_SLAP) user.adjustStaminaLossBuffered(3) - if(target.has_trait(TRAIT_ASSBLASTUSA)) + if(HAS_TRAIT(target, TRAIT_ASSBLASTUSA)) var/hit_zone = (user.held_index_to_dir(user.active_hand_index) == "l" ? "l_":"r_") + "arm" user.adjustStaminaLoss(50, affected_zone = hit_zone) var/obj/item/bodypart/affecting = user.get_bodypart(hit_zone) @@ -1512,9 +1512,9 @@ GLOBAL_LIST_EMPTY(roundstart_races) ) if (target.canbearoused) target.adjustArousalLoss(5) - if (target.getArousalLoss() >= 100 && ishuman(target) && target.has_trait(TRAIT_MASO) && target.has_dna()) + if (target.getArousalLoss() >= 100 && ishuman(target) && HAS_TRAIT(target, TRAIT_MASO) && target.has_dna()) target.mob_climax(forced_climax=TRUE) - if (!target.has_trait(TRAIT_NYMPHO)) + if (!HAS_TRAIT(target, TRAIT_NYMPHO)) stop_wagging_tail(target) return FALSE @@ -1649,7 +1649,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) //dismemberment var/probability = I.get_dismemberment_chance(affecting) - if(prob(probability) || (H.has_trait(TRAIT_EASYDISMEMBER) && prob(probability))) //try twice + if(prob(probability) || (HAS_TRAIT(H, TRAIT_EASYDISMEMBER) && prob(probability))) //try twice if(affecting.dismember(I.damtype)) I.add_mob_blood(H) playsound(get_turf(H), I.get_dismember_sound(), 80, 1) @@ -1747,7 +1747,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(BP) if(damage > 0 ? BP.receive_damage(damage * hit_percent * brutemod * H.physiology.brute_mod, 0) : BP.heal_damage(abs(damage * hit_percent * brutemod * H.physiology.brute_mod), 0)) H.update_damage_overlays() - if(H.has_trait(TRAIT_MASO)) + if(HAS_TRAIT(H, TRAIT_MASO)) H.adjustArousalLoss(damage * brutemod * H.physiology.brute_mod) if (H.getArousalLoss() >= 100 && ishuman(H) && H.has_dna()) H.mob_climax(forced_climax=TRUE) @@ -1796,7 +1796,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) ///////////// /datum/species/proc/breathe(mob/living/carbon/human/H) - if(H.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(H, TRAIT_NOBREATH)) return TRUE @@ -1844,7 +1844,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) H.throw_alert("temp", /obj/screen/alert/hot, 3) // +/- 50 degrees from 310K is the 'safe' zone, where no damage is dealt. - if(H.bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !H.has_trait(TRAIT_RESISTHEAT)) + if(H.bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !HAS_TRAIT(H, TRAIT_RESISTHEAT)) //Body temperature is too hot. SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "cold") @@ -1862,7 +1862,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) H.emote("scream") H.apply_damage(burn_damage, BURN) - else if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !H.has_trait(TRAIT_RESISTCOLD)) + else if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !HAS_TRAIT(H, TRAIT_RESISTCOLD)) SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "hot") SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "cold", /datum/mood_event/cold) switch(H.bodytemperature) @@ -1881,7 +1881,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/adjusted_pressure = H.calculate_affecting_pressure(pressure) //Returns how much pressure actually affects the mob. switch(adjusted_pressure) if(HAZARD_HIGH_PRESSURE to INFINITY) - if(!H.has_trait(TRAIT_RESISTHIGHPRESSURE)) + if(!HAS_TRAIT(H, TRAIT_RESISTHIGHPRESSURE)) H.adjustBruteLoss(min(((adjusted_pressure / HAZARD_HIGH_PRESSURE) -1 ) * PRESSURE_DAMAGE_COEFFICIENT, MAX_HIGH_PRESSURE_DAMAGE) * H.physiology.pressure_mod) H.throw_alert("pressure", /obj/screen/alert/highpressure, 2) else @@ -1893,7 +1893,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(HAZARD_LOW_PRESSURE to WARNING_LOW_PRESSURE) H.throw_alert("pressure", /obj/screen/alert/lowpressure, 1) else - if(H.has_trait(TRAIT_RESISTLOWPRESSURE)) + if(HAS_TRAIT(H, TRAIT_RESISTLOWPRESSURE)) H.clear_alert("pressure") else H.adjustBruteLoss(LOW_PRESSURE_DAMAGE * H.physiology.pressure_mod) @@ -1904,7 +1904,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) ////////// /datum/species/proc/handle_fire(mob/living/carbon/human/H, no_protection = FALSE) - if(H.has_trait(TRAIT_NOFIRE)) + if(HAS_TRAIT(H, TRAIT_NOFIRE)) return if(H.on_fire) //the fire tries to damage the exposed clothes and items @@ -1972,7 +1972,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "on_fire", /datum/mood_event/on_fire) /datum/species/proc/CanIgniteMob(mob/living/carbon/human/H) - if(H.has_trait(TRAIT_NOFIRE)) + if(HAS_TRAIT(H, TRAIT_NOFIRE)) return FALSE return TRUE diff --git a/code/modules/mob/living/carbon/human/species_types/angel.dm b/code/modules/mob/living/carbon/human/species_types/angel.dm index 5122294956..c1c848106c 100644 --- a/code/modules/mob/living/carbon/human/species_types/angel.dm +++ b/code/modules/mob/living/carbon/human/species_types/angel.dm @@ -23,7 +23,7 @@ if(ishuman(H) && !fly) fly = new fly.Grant(H) - H.add_trait(TRAIT_HOLY, SPECIES_TRAIT) + ADD_TRAIT(H, TRAIT_HOLY, SPECIES_TRAIT) /datum/species/angel/on_species_loss(mob/living/carbon/human/H) if(fly) @@ -36,7 +36,7 @@ H.dna.species.mutant_bodyparts -= "wings" H.dna.features["wings"] = "None" H.update_body() - H.remove_trait(TRAIT_HOLY, SPECIES_TRAIT) + REMOVE_TRAIT(H, TRAIT_HOLY, SPECIES_TRAIT) ..() /datum/species/angel/spec_life(mob/living/carbon/human/H) diff --git a/code/modules/mob/living/carbon/human/species_types/golems.dm b/code/modules/mob/living/carbon/human/species_types/golems.dm index b790ae0489..ff90929c4b 100644 --- a/code/modules/mob/living/carbon/human/species_types/golems.dm +++ b/code/modules/mob/living/carbon/human/species_types/golems.dm @@ -74,10 +74,10 @@ /datum/species/golem/adamantine/on_species_gain(mob/living/carbon/C, datum/species/old_species) ..() - C.add_trait(TRAIT_ANTIMAGIC, SPECIES_TRAIT) + ADD_TRAIT(C, TRAIT_ANTIMAGIC, SPECIES_TRAIT) /datum/species/golem/adamantine/on_species_loss(mob/living/carbon/C) - C.remove_trait(TRAIT_ANTIMAGIC, SPECIES_TRAIT) + REMOVE_TRAIT(C, TRAIT_ANTIMAGIC, SPECIES_TRAIT) ..() //The suicide bombers of golemkind @@ -175,10 +175,10 @@ /datum/species/golem/silver/on_species_gain(mob/living/carbon/C, datum/species/old_species) ..() - C.add_trait(TRAIT_HOLY, SPECIES_TRAIT) + ADD_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) /datum/species/golem/silver/on_species_loss(mob/living/carbon/C) - C.remove_trait(TRAIT_HOLY, SPECIES_TRAIT) + REMOVE_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) ..() //Harder to stun, deals more damage, but it's even slower @@ -698,10 +698,10 @@ /datum/species/golem/cloth/on_species_gain(mob/living/carbon/C, datum/species/old_species) ..() - C.add_trait(TRAIT_HOLY, SPECIES_TRAIT) + ADD_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) /datum/species/golem/cloth/on_species_loss(mob/living/carbon/C) - C.remove_trait(TRAIT_HOLY, SPECIES_TRAIT) + REMOVE_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) ..() /datum/species/golem/cloth/check_roundstart_eligible() @@ -768,7 +768,7 @@ /obj/structure/cloth_pile/proc/revive() if(QDELETED(src) || QDELETED(cloth_golem)) //QDELETED also checks for null, so if no cloth golem is set this won't runtime return - if(cloth_golem.suiciding || cloth_golem.has_trait(TRAIT_NOCLONE)) + if(cloth_golem.suiciding || HAS_TRAIT(cloth_golem, TRAIT_NOCLONE)) QDEL_NULL(cloth_golem) return diff --git a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm index 0461fb9b79..b218b2cefc 100644 --- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm @@ -594,7 +594,7 @@ /datum/species/jelly/stargazer/proc/link_mob(mob/living/M) if(QDELETED(M) || M.stat == DEAD) return FALSE - if(M.has_trait(TRAIT_MINDSHIELD)) //mindshield implant, no dice + if(HAS_TRAIT(M, TRAIT_MINDSHIELD)) //mindshield implant, no dice return FALSE if(M in linked_mobs) return FALSE diff --git a/code/modules/mob/living/carbon/human/status_procs.dm b/code/modules/mob/living/carbon/human/status_procs.dm index 844545a748..5c20b0ce75 100644 --- a/code/modules/mob/living/carbon/human/status_procs.dm +++ b/code/modules/mob/living/carbon/human/status_procs.dm @@ -9,12 +9,12 @@ /mob/living/carbon/human/Unconscious(amount, updating = 1, ignore_canunconscious = 0) amount = dna.species.spec_stun(src,amount) - if(has_trait(TRAIT_HEAVY_SLEEPER)) + if(HAS_TRAIT(src, TRAIT_HEAVY_SLEEPER)) amount *= rand(1.25, 1.3) return ..() /mob/living/carbon/human/Sleeping(amount, updating = 1, ignore_sleepimmune = 0) - if(has_trait(TRAIT_HEAVY_SLEEPER)) + if(HAS_TRAIT(src, TRAIT_HEAVY_SLEEPER)) amount *= rand(1.25, 1.3) return ..() diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index ef5b9045ca..feb80e8d2c 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -663,7 +663,7 @@ generate/load female uniform sprites matching all previously decided variables else . += "-no_marking" - if(has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(src, TRAIT_HUSK)) . += "-husk" /mob/living/carbon/human/load_limb_from_cache() @@ -705,7 +705,7 @@ generate/load female uniform sprites matching all previously decided variables add_overlay(HD.get_limb_icon()) update_damage_overlays() - if(HD && !(has_trait(TRAIT_HUSK))) + if(HD && !(HAS_TRAIT(src, TRAIT_HUSK))) // lipstick if(lip_style && (LIPS in dna.species.species_traits)) var/mutable_appearance/lip_overlay = mutable_appearance('icons/mob/human_face.dmi', "lips_[lip_style]", -BODY_LAYER) diff --git a/code/modules/mob/living/carbon/monkey/combat.dm b/code/modules/mob/living/carbon/monkey/combat.dm index 901fb48b20..4c1c235fe1 100644 --- a/code/modules/mob/living/carbon/monkey/combat.dm +++ b/code/modules/mob/living/carbon/monkey/combat.dm @@ -119,7 +119,7 @@ cuff_resist(I) /mob/living/carbon/monkey/proc/should_target(var/mob/living/L) - if(has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(src, TRAIT_PACIFISM)) return FALSE if(enemies[L]) @@ -143,7 +143,7 @@ pickupTimer = 0 else INVOKE_ASYNC(src, .proc/walk2derpless, pickupTarget.loc) - if(Adjacent(pickupTarget) || Adjacent(pickupTarget.loc)) // next to target + if(Adjacent(pickupTarget) || Adjacent(pickupTarget.loc)) // next to target drop_all_held_items() // who cares about these items, i want that one! if(isturf(pickupTarget.loc)) // on floor equip_item(pickupTarget) @@ -167,7 +167,7 @@ battle_screech() retaliate(L) return TRUE - else + else bodyDisposal = locate(/obj/machinery/disposal/) in around if(bodyDisposal) target = L diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index 55b5d67c24..906e138b0a 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -81,7 +81,7 @@ adjust_bodytemperature(min((loc_temp - bodytemperature) / BODYTEMP_HEAT_DIVISOR, BODYTEMP_HEATING_MAX)) - if(bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !has_trait(TRAIT_RESISTHEAT)) + if(bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !HAS_TRAIT(src, TRAIT_RESISTHEAT)) switch(bodytemperature) if(360 to 400) throw_alert("temp", /obj/screen/alert/hot, 1) @@ -96,7 +96,7 @@ else apply_damage(HEAT_DAMAGE_LEVEL_2, BURN) - else if(bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !has_trait(TRAIT_RESISTCOLD)) + else if(bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !HAS_TRAIT(src, TRAIT_RESISTCOLD)) if(!istype(loc, /obj/machinery/atmospherics/components/unary/cryo_cell)) switch(bodytemperature) if(200 to 260) diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index 1ffa3316ab..f1a6b58cd1 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -147,7 +147,7 @@ threatcount += 4 //trigger look_for_perp() since they're nonhuman and very likely hostile //mindshield implants imply trustworthyness - if(has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(src, TRAIT_MINDSHIELD)) threatcount -= 1 return threatcount diff --git a/code/modules/mob/living/carbon/monkey/update_icons.dm b/code/modules/mob/living/carbon/monkey/update_icons.dm index c807251af4..6311776596 100644 --- a/code/modules/mob/living/carbon/monkey/update_icons.dm +++ b/code/modules/mob/living/carbon/monkey/update_icons.dm @@ -19,7 +19,7 @@ if(!HD) //Decapitated return - if(has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(src, TRAIT_HUSK)) return var/hair_hidden = 0 diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm index 4e5c7decc5..b2eed2d19e 100644 --- a/code/modules/mob/living/damage_procs.dm +++ b/code/modules/mob/living/damage_procs.dm @@ -101,14 +101,14 @@ if(EFFECT_SLUR) slurring = max(slurring,(effect * hit_percent)) if(EFFECT_STUTTER) - if((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) // stun is usually associated with stutter + if((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) // stun is usually associated with stutter stuttering = max(stuttering,(effect * hit_percent)) if(EFFECT_EYE_BLUR) blur_eyes(effect * hit_percent) if(EFFECT_DROWSY) drowsyness = max(drowsyness,(effect * hit_percent)) if(EFFECT_JITTER) - if((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) + if((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) jitteriness = max(jitteriness,(effect * hit_percent)) return 1 diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm index 9ef4c1567a..f238db3582 100644 --- a/code/modules/mob/living/life.dm +++ b/code/modules/mob/living/life.dm @@ -126,7 +126,7 @@ /mob/living/proc/handle_traits() //Eyes if(eye_blind) //blindness, heals slowly over time - if(!stat && !(has_trait(TRAIT_BLIND))) + if(!stat && !(HAS_TRAIT(src, TRAIT_BLIND))) eye_blind = max(eye_blind-1,0) if(client && !eye_blind) clear_alert("blind") diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index b6717f2932..0eeca1db6c 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -170,7 +170,7 @@ return 1 if(isliving(M)) var/mob/living/L = M - if(L.has_trait(TRAIT_PUSHIMMUNE)) + if(HAS_TRAIT(L, TRAIT_PUSHIMMUNE)) return 1 //If they're a human, and they're not in help intent, block pushing if(ishuman(M) && (M.a_intent != INTENT_HELP)) @@ -306,7 +306,7 @@ /mob/living/pointed(atom/A as mob|obj|turf in view()) if(incapacitated()) return FALSE - if(has_trait(TRAIT_DEATHCOMA)) + if(HAS_TRAIT(src, TRAIT_DEATHCOMA)) return FALSE if(!..()) return FALSE @@ -889,7 +889,7 @@ /mob/living/rad_act(amount) . = ..() - if(!amount || (amount < RAD_MOB_SKIN_PROTECTION) || has_trait(TRAIT_RADIMMUNE)) + if(!amount || (amount < RAD_MOB_SKIN_PROTECTION) || HAS_TRAIT(src, TRAIT_RADIMMUNE)) return amount -= RAD_BACKGROUND_RADIATION // This will always be at least 1 because of how skin protection is calculated @@ -905,7 +905,7 @@ . = ..() if(.) return - if((magic && has_trait(TRAIT_ANTIMAGIC)) || (holy && has_trait(TRAIT_HOLY))) + if((magic && HAS_TRAIT(src, TRAIT_ANTIMAGIC)) || (holy && HAS_TRAIT(src, TRAIT_HOLY))) return src /mob/living/proc/fakefireextinguish() @@ -988,7 +988,7 @@ //Updates canmove, lying and icons. Could perhaps do with a rename but I can't think of anything to describe it. //Robots, animals and brains have their own version so don't worry about them /mob/living/proc/update_canmove() - var/ko = IsKnockdown() || IsUnconscious() || (stat && (stat != SOFT_CRIT || pulledby)) || (has_trait(TRAIT_DEATHCOMA)) + var/ko = IsKnockdown() || IsUnconscious() || (stat && (stat != SOFT_CRIT || pulledby)) || (HAS_TRAIT(src, TRAIT_DEATHCOMA)) var/move_and_fall = stat == SOFT_CRIT && !pulledby var/chokehold = pulledby && pulledby.grab_state >= GRAB_NECK var/buckle_lying = !(buckled && !buckled.buckle_lying) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 0d74094d81..449bbe361f 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -137,11 +137,11 @@ user.start_pulling(src, supress_message) return - if(!(status_flags & CANPUSH) || has_trait(TRAIT_PUSHIMMUNE)) + if(!(status_flags & CANPUSH) || HAS_TRAIT(src, TRAIT_PUSHIMMUNE)) to_chat(user, "[src] can't be grabbed more aggressively!") return FALSE - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to risk hurting [src]!") return FALSE @@ -204,7 +204,7 @@ M.Feedstop() return // can't attack while eating! - if(has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(src, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE @@ -221,7 +221,7 @@ M.visible_message("\The [M] [M.friendly] [src]!") return FALSE else - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE @@ -240,7 +240,7 @@ return FALSE if (M.a_intent == INTENT_HARM) - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE @@ -266,7 +266,7 @@ return FALSE else - if(L.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(L, TRAIT_PACIFISM)) to_chat(L, "You don't want to hurt anyone!") return @@ -291,7 +291,7 @@ grabbedby(M) return FALSE if("harm") - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE M.do_attack_animation(src) @@ -315,7 +315,7 @@ SEND_SIGNAL(src, COMSIG_LIVING_ELECTROCUTE_ACT, shock_damage) if(tesla_shock && (flags_1 & TESLA_IGNORE_1)) return FALSE - if(has_trait(TRAIT_SHOCKIMMUNE)) + if(HAS_TRAIT(src, TRAIT_SHOCKIMMUNE)) return FALSE if(shock_damage > 0) if(!illusion) @@ -385,7 +385,7 @@ //called when the mob receives a bright flash /mob/living/proc/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash) - if(get_eye_protection() < intensity && (override_blindness_check || !(has_trait(TRAIT_BLIND)))) + if(get_eye_protection() < intensity && (override_blindness_check || !(HAS_TRAIT(src, TRAIT_BLIND)))) overlay_fullscreen("flash", type) addtimer(CALLBACK(src, .proc/clear_fullscreen, "flash", 25), 25) return TRUE diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 871e33349a..e2f62b054c 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -301,7 +301,7 @@ GLOBAL_LIST_INIT(department_radio_keys, list( return 1 /mob/living/proc/can_speak_vocal(message) //Check AFTER handling of xeno and ling channels - if(has_trait(TRAIT_MUTE)) + if(HAS_TRAIT(src, TRAIT_MUTE)) return 0 if(is_muzzled()) diff --git a/code/modules/mob/living/simple_animal/animal_defense.dm b/code/modules/mob/living/simple_animal/animal_defense.dm index a92c1ff9e1..793df63c87 100644 --- a/code/modules/mob/living/simple_animal/animal_defense.dm +++ b/code/modules/mob/living/simple_animal/animal_defense.dm @@ -15,7 +15,7 @@ grabbedby(M) if("harm", "disarm") - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt [src]!") return M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) @@ -29,7 +29,7 @@ /mob/living/simple_animal/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) if(user.a_intent == INTENT_HARM) - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to hurt [src]!") return FALSE ..(user, 1) diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm index 7167d87bde..5a21d33d5a 100644 --- a/code/modules/mob/living/simple_animal/bot/medbot.dm +++ b/code/modules/mob/living/simple_animal/bot/medbot.dm @@ -343,7 +343,7 @@ /mob/living/simple_animal/bot/medbot/proc/assess_patient(mob/living/carbon/C) //Time to see if they need medical help! - if(C.stat == DEAD || (C.has_trait(TRAIT_FAKEDEATH))) + if(C.stat == DEAD || (HAS_TRAIT(C, TRAIT_FAKEDEATH))) return FALSE //welp too late for them! if(!(loc == C.loc) && !(isturf(C.loc) && isturf(loc))) @@ -421,7 +421,7 @@ soft_reset() return - if(C.stat == DEAD || (C.has_trait(TRAIT_FAKEDEATH))) + if(C.stat == DEAD || (HAS_TRAIT(C, TRAIT_FAKEDEATH))) var/list/messagevoice = list("No! Stay with me!" = 'sound/voice/medbot/no.ogg',"Live, damnit! LIVE!" = 'sound/voice/medbot/live.ogg',"I...I've never lost a patient before. Not today, I mean." = 'sound/voice/medbot/lost.ogg') var/message = pick(messagevoice) speak(message) diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index ff91ca7dc3..3cc8822d02 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -343,7 +343,7 @@ /mob/living/simple_animal/hostile/construct/harvester/AttackingTarget() if(iscarbon(target)) var/mob/living/carbon/C = target - if(C.has_trait(TRAIT_NODISMEMBER)) + if(HAS_TRAIT(C, TRAIT_NODISMEMBER)) return ..() //ATTACK! var/list/parts = list() var/undismembermerable_limbs = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/headcrab.dm b/code/modules/mob/living/simple_animal/hostile/headcrab.dm index 646987b155..80e0172f45 100644 --- a/code/modules/mob/living/simple_animal/hostile/headcrab.dm +++ b/code/modules/mob/living/simple_animal/hostile/headcrab.dm @@ -43,7 +43,7 @@ // Changeling egg can survive in aliens! var/mob/living/carbon/C = target if(C.stat == DEAD) - if(C.has_trait(TRAIT_XENO_HOST)) + if(HAS_TRAIT(C, TRAIT_XENO_HOST)) to_chat(src, "A foreign presence repels us from this body. Perhaps we should try to infest another?") return Infect(target) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm index c491b3e78d..7cf8defc0f 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm @@ -558,7 +558,7 @@ Difficulty: Very Hard H.regenerate_limbs() H.regenerate_organs() H.revive(1,0) - H.add_trait(TRAIT_NOCLONE, MAGIC_TRAIT) //Free revives, but significantly limits your options for reviving except via the crystal + ADD_TRAIT(H, TRAIT_NOCLONE, MAGIC_TRAIT) //Free revives, but significantly limits your options for reviving except via the crystal H.grab_ghost(force = TRUE) /obj/machinery/anomalous_crystal/helpers //Lets ghost spawn as helpful creatures that can only heal people slightly. Incredibly fragile and they can't converse with humans @@ -721,7 +721,7 @@ Difficulty: Very Hard if(isliving(A) && holder_animal) var/mob/living/L = A L.notransform = 1 - L.add_trait(TRAIT_MUTE, STASIS_MUTE) + ADD_TRAIT(L, TRAIT_MUTE, STASIS_MUTE) L.status_flags |= GODMODE L.mind.transfer_to(holder_animal) var/obj/effect/proc_holder/spell/targeted/exit_possession/P = new /obj/effect/proc_holder/spell/targeted/exit_possession @@ -731,7 +731,7 @@ Difficulty: Very Hard /obj/structure/closet/stasis/dump_contents(var/kill = 1) STOP_PROCESSING(SSobj, src) for(var/mob/living/L in src) - L.remove_trait(TRAIT_MUTE, STASIS_MUTE) + REMOVE_TRAIT(L, TRAIT_MUTE, STASIS_MUTE) L.status_flags &= ~GODMODE L.notransform = 0 if(holder_animal) diff --git a/code/modules/mob/living/status_procs.dm b/code/modules/mob/living/status_procs.dm index 537ce8e67d..5006bd2920 100644 --- a/code/modules/mob/living/status_procs.dm +++ b/code/modules/mob/living/status_procs.dm @@ -15,7 +15,7 @@ return 0 /mob/living/proc/Stun(amount, updating = TRUE, ignore_canstun = FALSE) //Can't go below remaining duration - if(((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/stun/S = IsStun() @@ -26,7 +26,7 @@ return S /mob/living/proc/SetStun(amount, updating = TRUE, ignore_canstun = FALSE) //Sets remaining duration - if(((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/stun/S = IsStun() if(amount <= 0) if(S) @@ -41,7 +41,7 @@ return S /mob/living/proc/AdjustStun(amount, updating = TRUE, ignore_canstun = FALSE) //Adds to remaining duration - if(((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/stun/S = IsStun() @@ -63,7 +63,7 @@ return 0 /mob/living/proc/Knockdown(amount, updating = TRUE, ignore_canknockdown = FALSE) //Can't go below remaining duration - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canknockdown) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canknockdown) if(absorb_stun(amount, ignore_canknockdown)) return var/datum/status_effect/incapacitating/knockdown/K = IsKnockdown() @@ -74,7 +74,7 @@ return K /mob/living/proc/SetKnockdown(amount, updating = TRUE, ignore_canknockdown = FALSE) //Sets remaining duration - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canknockdown) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canknockdown) var/datum/status_effect/incapacitating/knockdown/K = IsKnockdown() if(amount <= 0) if(K) @@ -89,7 +89,7 @@ return K /mob/living/proc/AdjustKnockdown(amount, updating = TRUE, ignore_canknockdown = FALSE) //Adds to remaining duration - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canknockdown) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canknockdown) if(absorb_stun(amount, ignore_canknockdown)) return var/datum/status_effect/incapacitating/knockdown/K = IsKnockdown() @@ -141,7 +141,7 @@ /////////////////////////////////// DISABILITIES //////////////////////////////////// /mob/living/proc/add_quirk(quirk, spawn_effects) //separate proc due to the way these ones are handled - if(has_trait(quirk)) + if(HAS_TRAIT(src, quirk)) return if(!SSquirks || !SSquirks.quirks[quirk]) return @@ -161,42 +161,42 @@ /////////////////////////////////// TRAIT PROCS //////////////////////////////////// /mob/living/proc/cure_blind(list/sources) - remove_trait(TRAIT_BLIND, sources) - if(!has_trait(TRAIT_BLIND)) + REMOVE_TRAIT(src, TRAIT_BLIND, sources) + if(!HAS_TRAIT(src, TRAIT_BLIND)) adjust_blindness(-1) /mob/living/proc/become_blind(source) - if(!has_trait(TRAIT_BLIND)) + if(!HAS_TRAIT(src, TRAIT_BLIND)) blind_eyes(1) - add_trait(TRAIT_BLIND, source) + ADD_TRAIT(src, TRAIT_BLIND, source) /mob/living/proc/cure_nearsighted(list/sources) - remove_trait(TRAIT_NEARSIGHT, sources) - if(!has_trait(TRAIT_NEARSIGHT)) + REMOVE_TRAIT(src, TRAIT_NEARSIGHT, sources) + if(!HAS_TRAIT(src, TRAIT_NEARSIGHT)) clear_fullscreen("nearsighted") /mob/living/proc/become_nearsighted(source) - if(!has_trait(TRAIT_NEARSIGHT)) + if(!HAS_TRAIT(src, TRAIT_NEARSIGHT)) overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1) - add_trait(TRAIT_NEARSIGHT, source) + ADD_TRAIT(src, TRAIT_NEARSIGHT, source) /mob/living/proc/cure_husk(list/sources) - remove_trait(TRAIT_HUSK, sources) - if(!has_trait(TRAIT_HUSK)) - remove_trait(TRAIT_DISFIGURED, "husk") + REMOVE_TRAIT(src, TRAIT_HUSK, sources) + if(!HAS_TRAIT(src, TRAIT_HUSK)) + REMOVE_TRAIT(src, TRAIT_DISFIGURED, "husk") update_body() return TRUE /mob/living/proc/become_husk(source) - if(!has_trait(TRAIT_HUSK)) - add_trait(TRAIT_DISFIGURED, "husk") + if(!HAS_TRAIT(src, TRAIT_HUSK)) + ADD_TRAIT(src, TRAIT_DISFIGURED, "husk") update_body() . = TRUE - add_trait(TRAIT_HUSK, source) + ADD_TRAIT(src, TRAIT_HUSK, source) /mob/living/proc/cure_fakedeath(list/sources) - remove_trait(TRAIT_FAKEDEATH, sources) - remove_trait(TRAIT_DEATHCOMA, sources) + REMOVE_TRAIT(src, TRAIT_FAKEDEATH, sources) + REMOVE_TRAIT(src, TRAIT_DEATHCOMA, sources) if(stat != DEAD) tod = null update_stat() @@ -206,15 +206,15 @@ return if(!silent) emote("deathgasp") - add_trait(TRAIT_FAKEDEATH, source) - add_trait(TRAIT_DEATHCOMA, source) + ADD_TRAIT(src, TRAIT_FAKEDEATH, source) + ADD_TRAIT(src, TRAIT_DEATHCOMA, source) tod = STATION_TIME_TIMESTAMP("hh:mm:ss") update_stat() /mob/living/proc/unignore_slowdown(list/sources) - remove_trait(TRAIT_IGNORESLOWDOWN, sources) + REMOVE_TRAIT(src, TRAIT_IGNORESLOWDOWN, sources) update_movespeed(FALSE) /mob/living/proc/ignore_slowdown(source) - add_trait(TRAIT_IGNORESLOWDOWN, source) + ADD_TRAIT(src, TRAIT_IGNORESLOWDOWN, source) update_movespeed(FALSE) \ No newline at end of file diff --git a/code/modules/mob/status_procs.dm b/code/modules/mob/status_procs.dm index a1a1bbe502..606d6d4f66 100644 --- a/code/modules/mob/status_procs.dm +++ b/code/modules/mob/status_procs.dm @@ -28,7 +28,7 @@ return 0 /mob/living/proc/Unconscious(amount, updating = TRUE, ignore_canunconscious = FALSE) //Can't go below remaining duration - if(((status_flags & CANUNCONSCIOUS) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canunconscious) + if(((status_flags & CANUNCONSCIOUS) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canunconscious) var/datum/status_effect/incapacitating/unconscious/U = IsUnconscious() if(U) U.duration = max(world.time + amount, U.duration) @@ -37,7 +37,7 @@ return U /mob/living/proc/SetUnconscious(amount, updating = TRUE, ignore_canunconscious = FALSE) //Sets remaining duration - if(((status_flags & CANUNCONSCIOUS) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canunconscious) + if(((status_flags & CANUNCONSCIOUS) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canunconscious) var/datum/status_effect/incapacitating/unconscious/U = IsUnconscious() if(amount <= 0) if(U) @@ -49,7 +49,7 @@ return U /mob/living/proc/AdjustUnconscious(amount, updating = TRUE, ignore_canunconscious = FALSE) //Adds to remaining duration - if(((status_flags & CANUNCONSCIOUS) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canunconscious) + if(((status_flags & CANUNCONSCIOUS) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canunconscious) var/datum/status_effect/incapacitating/unconscious/U = IsUnconscious() if(U) U.duration += amount @@ -72,7 +72,7 @@ return 0 /mob/living/proc/Sleeping(amount, updating = TRUE, ignore_sleepimmune = FALSE) //Can't go below remaining duration - if((!has_trait(TRAIT_SLEEPIMMUNE)) || ignore_sleepimmune) + if((!HAS_TRAIT(src, TRAIT_SLEEPIMMUNE)) || ignore_sleepimmune) var/datum/status_effect/incapacitating/sleeping/S = IsSleeping() if(S) S.duration = max(world.time + amount, S.duration) @@ -81,7 +81,7 @@ return S /mob/living/proc/SetSleeping(amount, updating = TRUE, ignore_sleepimmune = FALSE) //Sets remaining duration - if((!has_trait(TRAIT_SLEEPIMMUNE)) || ignore_sleepimmune) + if((!HAS_TRAIT(src, TRAIT_SLEEPIMMUNE)) || ignore_sleepimmune) var/datum/status_effect/incapacitating/sleeping/S = IsSleeping() if(amount <= 0) if(S) @@ -93,7 +93,7 @@ return S /mob/living/proc/AdjustSleeping(amount, updating = TRUE, ignore_sleepimmune = FALSE) //Adds to remaining duration - if((!has_trait(TRAIT_SLEEPIMMUNE)) || ignore_sleepimmune) + if((!HAS_TRAIT(src, TRAIT_SLEEPIMMUNE)) || ignore_sleepimmune) var/datum/status_effect/incapacitating/sleeping/S = IsSleeping() if(S) S.duration += amount @@ -170,7 +170,7 @@ blind_minimum = 1 if(isliving(src)) var/mob/living/L = src - if(L.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(L, TRAIT_BLIND)) blind_minimum = 1 eye_blind = max(eye_blind+amount, blind_minimum) if(!eye_blind) @@ -191,7 +191,7 @@ blind_minimum = 1 if(isliving(src)) var/mob/living/L = src - if(L.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(L, TRAIT_BLIND)) blind_minimum = 1 eye_blind = blind_minimum if(!eye_blind) diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm index 006151c4eb..676774ff88 100644 --- a/code/modules/paperwork/contract.dm +++ b/code/modules/paperwork/contract.dm @@ -202,7 +202,7 @@ if(!user.mind.hasSoul) to_chat(user, "You do not possess a soul.") return 0 - if(user.has_trait(TRAIT_DUMB)) + if(HAS_TRAIT(user, TRAIT_DUMB)) to_chat(user, "You quickly scrawl 'your name' on the contract.") signIncorrectly() return 0 diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index d6d0a3dc4f..37877ffb09 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -89,7 +89,7 @@ return if(ishuman(usr)) var/mob/living/carbon/human/H = usr - if(H.has_trait(TRAIT_CLUMSY) && prob(25)) + if(HAS_TRAIT(H, TRAIT_CLUMSY) && prob(25)) to_chat(H, "You cut yourself on the paper! Ahhhh! Ahhhhh!") H.damageoverlaytemp = 9001 H.update_damage_hud() @@ -314,7 +314,7 @@ to_chat(user, "You stamp the paper with your rubber stamp.") if(P.is_hot()) - if(user.has_trait(TRAIT_CLUMSY) && prob(10)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) user.visible_message("[user] accidentally ignites [user.p_them()]self!", \ "You miss the paper and accidentally light yourself on fire!") user.dropItemToGround(P) diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index 73eadfbc45..e3ce30066a 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -65,7 +65,7 @@ update_icon() else if(P.is_hot()) - if(user.has_trait(TRAIT_CLUMSY) && prob(10)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) user.visible_message("[user] accidentally ignites [user.p_them()]self!", \ "You miss [src] and accidentally light yourself on fire!") user.dropItemToGround(P) diff --git a/code/modules/photography/camera/camera.dm b/code/modules/photography/camera/camera.dm index b3f59abfae..8c51fd31ea 100644 --- a/code/modules/photography/camera/camera.dm +++ b/code/modules/photography/camera/camera.dm @@ -124,7 +124,7 @@ var/realcooldown = cooldown var/mob/living/carbon/human/H = user - if (H.has_trait(TRAIT_PHOTOGRAPHER)) + if (HAS_TRAIT(H, TRAIT_PHOTOGRAPHER)) realcooldown *= 0.5 addtimer(CALLBACK(src, .proc/cooldown), realcooldown) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 1c05b6c11a..b77ea9d13a 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -604,7 +604,7 @@ else prot = 1 - if(prot > 0 || user.has_trait(TRAIT_RESISTHEAT) || user.has_trait(TRAIT_RESISTHEATHANDS)) + if(prot > 0 || HAS_TRAIT(user, TRAIT_RESISTHEAT) || HAS_TRAIT(user, TRAIT_RESISTHEATHANDS)) to_chat(user, "You remove the light [fitting].") else if(istype(user) && user.dna.check_mutation(TK)) to_chat(user, "You telekinetically remove the light [fitting].") diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index a7474fd8cb..542e4ecffa 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -162,7 +162,7 @@ //Exclude lasertag guns from the TRAIT_CLUMSY check. if(clumsy_check) if(istype(user)) - if (user.has_trait(TRAIT_CLUMSY) && prob(40)) + if (HAS_TRAIT(user, TRAIT_CLUMSY) && prob(40)) to_chat(user, "You shoot yourself in the foot with [src]!") var/shot_leg = pick(BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) process_fire(user, user, FALSE, params, shot_leg) @@ -220,7 +220,7 @@ firing_burst = FALSE return FALSE if(chambered && chambered.BB) - if(user.has_trait(TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. + if(HAS_TRAIT(user, TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. if(chambered.harmful) // Is the bullet chambered harmful? to_chat(user, " [src] is lethally chambered! You don't want to risk harming anyone...") return @@ -259,7 +259,7 @@ var/rand_spr = rand() if(spread) randomized_gun_spread = rand(0,spread) - if(user.has_trait(TRAIT_POOR_AIM)) //nice shootin' tex + if(HAS_TRAIT(user, TRAIT_POOR_AIM)) //nice shootin' tex bonus_spread += 25 var/randomized_bonus_spread = rand(0, bonus_spread) @@ -269,7 +269,7 @@ addtimer(CALLBACK(src, .proc/process_burst, user, target, message, params, zone_override, sprd, randomized_gun_spread, randomized_bonus_spread, rand_spr, i), fire_delay * (i - 1)) else if(chambered) - if(user.has_trait(TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. + if(HAS_TRAIT(user, TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. if(chambered.harmful) // Is the bullet chambered harmful? to_chat(user, " [src] is lethally chambered! You don't want to risk harming anyone...") return diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm index 2116f037a3..f455e0f138 100644 --- a/code/modules/projectiles/guns/ballistic/revolver.dm +++ b/code/modules/projectiles/guns/ballistic/revolver.dm @@ -351,7 +351,7 @@ clumsy_check = 0 /obj/item/gun/ballistic/revolver/reverse/can_trigger_gun(mob/living/user) - if((user.has_trait(TRAIT_CLUMSY)) || (user.mind && user.mind.assigned_role == "Clown")) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) || (user.mind && user.mind.assigned_role == "Clown")) return ..() if(process_fire(user, user, FALSE, null, BODY_ZONE_HEAD)) user.visible_message("[user] somehow manages to shoot [user.p_them()]self in the face!", "You somehow shoot yourself in the face! How the hell?!") diff --git a/code/modules/projectiles/pins.dm b/code/modules/projectiles/pins.dm index 3698eb1ede..05d6367306 100644 --- a/code/modules/projectiles/pins.dm +++ b/code/modules/projectiles/pins.dm @@ -133,7 +133,7 @@ // A gun with ultra-honk pin is useful for clown and useless for everyone else. /obj/item/firing_pin/clown/ultra/pin_auth(mob/living/user) playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1) - if(user && (!(user.has_trait(TRAIT_CLUMSY)) && !(user.mind && user.mind.assigned_role == "Clown"))) + if(user && (!(HAS_TRAIT(user, TRAIT_CLUMSY)) && !(user.mind && user.mind.assigned_role == "Clown"))) return FALSE return TRUE diff --git a/code/modules/projectiles/projectile/energy.dm b/code/modules/projectiles/projectile/energy.dm index af01a0049f..047d50beaf 100644 --- a/code/modules/projectiles/projectile/energy.dm +++ b/code/modules/projectiles/projectile/energy.dm @@ -31,7 +31,7 @@ var/mob/living/carbon/C = target if(C.dna && C.dna.check_mutation(HULK)) C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" )) - else if((C.status_flags & CANKNOCKDOWN) && !C.has_trait(TRAIT_STUNIMMUNE)) + else if((C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE)) addtimer(CALLBACK(C, /mob/living/carbon.proc/do_jitter_animation, jitter), 5) /obj/item/projectile/energy/electrode/on_range() //to ensure the bolt sparks when it reaches the end of its range if it didn't hit a target yet diff --git a/code/modules/projectiles/projectile/energy/stun.dm b/code/modules/projectiles/projectile/energy/stun.dm index db1ad403a7..895a165f49 100644 --- a/code/modules/projectiles/projectile/energy/stun.dm +++ b/code/modules/projectiles/projectile/energy/stun.dm @@ -22,7 +22,7 @@ SEND_SIGNAL(C, COMSIG_LIVING_MINOR_SHOCK) if(C.dna && C.dna.check_mutation(HULK)) C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk") - else if((C.status_flags & CANKNOCKDOWN) && !C.has_trait(TRAIT_STUNIMMUNE)) + else if((C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE)) addtimer(CALLBACK(C, /mob/living/carbon.proc/do_jitter_animation, jitter), 5) /obj/item/projectile/energy/electrode/on_range() //to ensure the bolt sparks when it reaches the end of its range if it didn't hit a target yet diff --git a/code/modules/projectiles/projectile/special/hallucination.dm b/code/modules/projectiles/projectile/special/hallucination.dm index f65ebce51f..5814e7138e 100644 --- a/code/modules/projectiles/projectile/special/hallucination.dm +++ b/code/modules/projectiles/projectile/special/hallucination.dm @@ -170,7 +170,7 @@ hal_target.stuttering += 20 if(hal_target.dna && hal_target.dna.check_mutation(HULK)) hal_target.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk") - else if((hal_target.status_flags & CANKNOCKDOWN) && !hal_target.has_trait(TRAIT_STUNIMMUNE)) + else if((hal_target.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(hal_target, TRAIT_STUNIMMUNE)) addtimer(CALLBACK(hal_target, /mob/living/carbon.proc/do_jitter_animation, 20), 5) /obj/item/projectile/hallucination/disabler diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 92d9da401b..14963a6689 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -37,7 +37,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/on_mob_life(mob/living/carbon/C) if(C.drunkenness < volume * boozepwr * ALCOHOL_THRESHOLD_MODIFIER) var/booze_power = boozepwr - if(C.has_trait(TRAIT_ALCOHOL_TOLERANCE)) //we're an accomplished drinker + if(HAS_TRAIT(C, TRAIT_ALCOHOL_TOLERANCE)) //we're an accomplished drinker booze_power *= 0.7 C.drunkenness = max((C.drunkenness + (sqrt(volume) * booze_power * ALCOHOL_RATE)), 0) //Volume, power, and server alcohol rate effect how quickly one gets drunk var/obj/item/organ/liver/L = C.getorganslot(ORGAN_SLOT_LIVER) @@ -129,7 +129,7 @@ All effects don't start immediately, but rather get worse over time; the rate is M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.AdjustSleeping(-40, FALSE) - if(!M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.Jitter(5) ..() . = 1 @@ -165,7 +165,7 @@ All effects don't start immediately, but rather get worse over time; the rate is M.drowsyness = max(0,M.drowsyness-7) M.AdjustSleeping(-40) M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, BODYTEMP_NORMAL) - if(!M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.Jitter(5) return ..() @@ -186,7 +186,7 @@ All effects don't start immediately, but rather get worse over time; the rate is to_chat(M, "[pick("You have a really bad headache.", "Your eyes hurt.", "You find it hard to stay still.", "You feel your heart practically beating out of your chest.")]") if(prob(5) && iscarbon(M)) - if(M.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(M, TRAIT_BLIND)) var/obj/item/organ/eyes/eye = M.getorganslot(ORGAN_SLOT_EYES) if(istype(eye)) eye.Remove(M) @@ -364,7 +364,7 @@ All effects don't start immediately, but rather get worse over time; the rate is shot_glass_icon_state = "shotglassgreen" /datum/reagent/consumable/ethanol/absinthe/on_mob_life(mob/living/carbon/M) - if(prob(10) && !M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(prob(10) && !HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.hallucination += 4 //Reference to the urban myth ..() @@ -640,7 +640,7 @@ All effects don't start immediately, but rather get worse over time; the rate is glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." /datum/reagent/consumable/ethanol/beepsky_smash/on_mob_life(mob/living/carbon/M) - if(M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.Stun(30, 0) //this realistically does nothing to prevent chainstunning but will cause them to recover faster once it's out of their system else M.Stun(40, 0) @@ -674,7 +674,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/manly_dorf/on_mob_add(mob/living/M) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.dna.check_mutation(DWARFISM) || H.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(H.dna.check_mutation(DWARFISM) || HAS_TRAIT(H, TRAIT_ALCOHOL_TOLERANCE)) to_chat(H, "Now THAT is MANLY!") boozepwr = 5 //We've had worse in the mines dorf_mode = TRUE @@ -1274,7 +1274,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/atomicbomb/on_mob_life(mob/living/carbon/M) M.set_drugginess(50) - if(!M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.confused = max(M.confused+2,0) M.Dizzy(10) M.slurring = max(M.slurring,50) diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index 6ec37f3ec4..ac15eb6b01 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -392,10 +392,10 @@ /datum/reagent/consumable/nuka_cola/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_GOTTAGOFAST, id) + ADD_TRAIT(L, TRAIT_GOTTAGOFAST, id) /datum/reagent/consumable/nuka_cola/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_GOTTAGOFAST, id) + REMOVE_TRAIT(L, TRAIT_GOTTAGOFAST, id) ..() /datum/reagent/consumable/nuka_cola/on_mob_life(mob/living/carbon/M) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index a4a2c8e527..102588d98e 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -253,16 +253,16 @@ /datum/reagent/drug/bath_salts/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_STUNIMMUNE, id) - L.add_trait(TRAIT_SLEEPIMMUNE, id) + ADD_TRAIT(L, TRAIT_STUNIMMUNE, id) + ADD_TRAIT(L, TRAIT_SLEEPIMMUNE, id) if(iscarbon(L)) var/mob/living/carbon/C = L rage = new() C.gain_trauma(rage, TRAUMA_RESILIENCE_ABSOLUTE) /datum/reagent/drug/bath_salts/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_STUNIMMUNE, id) - L.remove_trait(TRAIT_SLEEPIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_STUNIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_SLEEPIMMUNE, id) if(rage) QDEL_NULL(rage) ..() @@ -372,7 +372,7 @@ /datum/reagent/drug/skooma/on_mob_add(mob/living/L) . = ..() - L.add_trait(TRAIT_GOTTAGOFAST, id) + ADD_TRAIT(L, TRAIT_GOTTAGOFAST, id) L.next_move_modifier *= 2 if(ishuman(L)) var/mob/living/carbon/human/H = L @@ -383,7 +383,7 @@ /datum/reagent/drug/skooma/on_mob_delete(mob/living/L) . = ..() - L.remove_trait(TRAIT_GOTTAGOFAST, id) + REMOVE_TRAIT(L, TRAIT_GOTTAGOFAST, id) L.next_move_modifier *= 0.5 if(ishuman(L)) var/mob/living/carbon/human/H = L diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index a65a1f4adb..afa469706a 100644 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -22,7 +22,7 @@ /datum/reagent/consumable/reaction_mob(mob/living/M, method=TOUCH, reac_volume) if(method == INGEST) - if (quality && !M.has_trait(TRAIT_AGEUSIA)) + if (quality && !HAS_TRAIT(M, TRAIT_AGEUSIA)) switch(quality) if (DRINK_NICE) SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "quality_drink", /datum/mood_event/quality_nice) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 6c9f77c762..276616ff24 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -44,7 +44,7 @@ M.adjustToxLoss(-5, 0, TRUE) M.hallucination = 0 M.setBrainLoss(0) - M.remove_all_traits() + REMOVE_TRAITS_NOT_IN(M, list(SPECIES_TRAIT, ROUNDSTART_TRAIT, ORGAN_TRAIT)) M.set_blurriness(0) M.set_blindness(0) M.SetKnockdown(0, 0) @@ -136,7 +136,7 @@ M.adjustFireLoss(-power, 0) M.adjustToxLoss(-power, 0, TRUE) //heals TOXINLOVERs M.adjustCloneLoss(-power, 0) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) //fixes common causes for disfiguration + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) //fixes common causes for disfiguration . = 1 metabolization_rate = REAGENTS_METABOLISM * (0.00001 * (M.bodytemperature ** 2) + 0.5) ..() @@ -152,7 +152,7 @@ /datum/reagent/medicine/clonexadone/on_mob_life(mob/living/carbon/M) if(M.bodytemperature < T0C) M.adjustCloneLoss(0.00006 * (M.bodytemperature ** 2) - 6, 0) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) . = 1 metabolization_rate = REAGENTS_METABOLISM * (0.000015 * (M.bodytemperature ** 2) + 0.75) ..() @@ -182,7 +182,7 @@ M.adjustFireLoss(-1.5 * power, 0) M.adjustToxLoss(-power, 0, TRUE) M.adjustCloneLoss(-power, 0) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) . = 1 ..() @@ -198,7 +198,7 @@ /datum/reagent/medicine/rezadone/on_mob_life(mob/living/carbon/M) M.setCloneLoss(0) //Rezadone is almost never used in favor of cryoxadone. Hopefully this will change that. M.heal_bodypart_damage(1,1) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) ..() . = 1 @@ -702,14 +702,14 @@ var/obj/item/organ/eyes/eyes = M.getorganslot(ORGAN_SLOT_EYES) if (!eyes) return - if(M.has_trait(TRAIT_BLIND, EYE_DAMAGE)) + if(HAS_TRAIT_FROM(M, TRAIT_BLIND, EYE_DAMAGE)) if(prob(20)) to_chat(M, "Your vision slowly returns...") M.cure_blind(EYE_DAMAGE) M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(35) - else if(M.has_trait(TRAIT_NEARSIGHT, EYE_DAMAGE)) + else if(HAS_TRAIT_FROM(M, TRAIT_NEARSIGHT, EYE_DAMAGE)) to_chat(M, "The blackness in your peripheral vision fades.") M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(10) @@ -800,7 +800,7 @@ M.visible_message("[M]'s body convulses a bit, and then falls still once more.") return M.visible_message("[M]'s body convulses a bit.") - if(!M.suiciding && !(M.has_trait(TRAIT_NOCLONE)) && !M.hellbound) + if(!M.suiciding && !(HAS_TRAIT(M, TRAIT_NOCLONE)) && !M.hellbound) if(!M) return if(M.notify_ghost_cloning(source = M)) @@ -877,10 +877,10 @@ /datum/reagent/medicine/stimulants/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_GOTTAGOFAST, id) + ADD_TRAIT(L, TRAIT_GOTTAGOFAST, id) /datum/reagent/medicine/stimulants/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_GOTTAGOFAST, id) + REMOVE_TRAIT(L, TRAIT_GOTTAGOFAST, id) ..() /datum/reagent/medicine/stimulants/on_mob_life(mob/living/carbon/M) @@ -1189,10 +1189,10 @@ /datum/reagent/medicine/changelinghaste/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_GOTTAGOREALLYFAST, id) + ADD_TRAIT(L, TRAIT_GOTTAGOREALLYFAST, id) /datum/reagent/medicine/changelinghaste/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_GOTTAGOREALLYFAST, id) + REMOVE_TRAIT(L, TRAIT_GOTTAGOREALLYFAST, id) ..() /datum/reagent/medicine/changelinghaste/on_mob_life(mob/living/carbon/M) @@ -1211,10 +1211,10 @@ /datum/reagent/medicine/corazone/on_mob_add(mob/living/M) ..() - M.add_trait(TRAIT_STABLEHEART, id) + ADD_TRAIT(M, TRAIT_STABLEHEART, id) /datum/reagent/medicine/corazone/on_mob_delete(mob/living/M) - M.remove_trait(TRAIT_STABLEHEART, id) + REMOVE_TRAIT(M, TRAIT_STABLEHEART, id) ..() /datum/reagent/medicine/muscle_stimulant @@ -1242,11 +1242,11 @@ var/overdose_progress = 0 // to track overdose progress /datum/reagent/medicine/modafinil/on_mob_add(mob/living/M) - M.add_trait(TRAIT_SLEEPIMMUNE, id) + ADD_TRAIT(M, TRAIT_SLEEPIMMUNE, id) ..() /datum/reagent/medicine/modafinil/on_mob_delete(mob/living/M) - M.remove_trait(TRAIT_SLEEPIMMUNE, id) + REMOVE_TRAIT(M, TRAIT_SLEEPIMMUNE, id) ..() /datum/reagent/medicine/modafinil/on_mob_life(mob/living/carbon/M) diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index 5d1593d1e7..40242909de 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -198,10 +198,10 @@ /datum/reagent/water/holywater/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_HOLY, id) + ADD_TRAIT(L, TRAIT_HOLY, id) /datum/reagent/water/holywater/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_HOLY, id) + REMOVE_TRAIT(L, TRAIT_HOLY, id) ..() /datum/reagent/water/holywater/reaction_mob(mob/living/M, method=TOUCH, reac_volume) @@ -1243,12 +1243,12 @@ /datum/reagent/stimulum/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_STUNIMMUNE, id) - L.add_trait(TRAIT_SLEEPIMMUNE, id) + ADD_TRAIT(L, TRAIT_STUNIMMUNE, id) + ADD_TRAIT(L, TRAIT_SLEEPIMMUNE, id) /datum/reagent/stimulum/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_STUNIMMUNE, id) - L.remove_trait(TRAIT_SLEEPIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_STUNIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_SLEEPIMMUNE, id) ..() /datum/reagent/stimulum/on_mob_life(mob/living/carbon/M) @@ -1268,10 +1268,10 @@ /datum/reagent/nitryl/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_GOTTAGOFAST, id) + ADD_TRAIT(L, TRAIT_GOTTAGOFAST, id) /datum/reagent/nitryl/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_GOTTAGOFAST, id) + REMOVE_TRAIT(L, TRAIT_GOTTAGOFAST, id) ..() /////////////////////////Coloured Crayon Powder//////////////////////////// @@ -1779,10 +1779,10 @@ /datum/reagent/pax/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_PACIFISM, id) + ADD_TRAIT(L, TRAIT_PACIFISM, id) /datum/reagent/pax/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_PACIFISM, id) + REMOVE_TRAIT(L, TRAIT_PACIFISM, id) ..() /datum/reagent/bz_metabolites @@ -1795,11 +1795,11 @@ /datum/reagent/bz_metabolites/on_mob_add(mob/living/L) ..() - L.add_trait(CHANGELING_HIVEMIND_MUTE, id) + ADD_TRAIT(L, CHANGELING_HIVEMIND_MUTE, id) /datum/reagent/bz_metabolites/on_mob_delete(mob/living/L) ..() - L.remove_trait(CHANGELING_HIVEMIND_MUTE, id) + REMOVE_TRAIT(L, CHANGELING_HIVEMIND_MUTE, id) /datum/reagent/bz_metabolites/on_mob_life(mob/living/L) if(L.mind) diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index edf12a3413..8be95efb83 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -97,7 +97,7 @@ /datum/reagent/toxin/lexorin/on_mob_life(mob/living/carbon/C) . = TRUE - if(C.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(C, TRAIT_NOBREATH)) . = FALSE if(.) @@ -135,7 +135,7 @@ taste_description = "mint" /datum/reagent/toxin/minttoxin/on_mob_life(mob/living/carbon/M) - if(M.has_trait(TRAIT_FAT)) + if(HAS_TRAIT(M, TRAIT_FAT)) M.gib() return ..() @@ -180,10 +180,10 @@ /datum/reagent/toxin/ghoulpowder/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_FAKEDEATH, id) + ADD_TRAIT(L, TRAIT_FAKEDEATH, id) /datum/reagent/toxin/ghoulpowder/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_FAKEDEATH, id) + REMOVE_TRAIT(L, TRAIT_FAKEDEATH, id) ..() /datum/reagent/toxin/ghoulpowder/on_mob_life(mob/living/carbon/M) @@ -883,7 +883,7 @@ taste_description = "stillness" /datum/reagent/toxin/mimesbane/on_mob_add(mob/living/L) - L.add_trait(TRAIT_EMOTEMUTE, id) + ADD_TRAIT(L, TRAIT_EMOTEMUTE, id) /datum/reagent/toxin/mimesbane/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_EMOTEMUTE, id) + REMOVE_TRAIT(L, TRAIT_EMOTEMUTE, id) diff --git a/code/modules/research/nanites/nanite_programs/buffing.dm b/code/modules/research/nanites/nanite_programs/buffing.dm index 578e7731bb..c80c5c5d96 100644 --- a/code/modules/research/nanites/nanite_programs/buffing.dm +++ b/code/modules/research/nanites/nanite_programs/buffing.dm @@ -106,11 +106,11 @@ /datum/nanite_program/conductive/enable_passive_effect() . = ..() - host_mob.add_trait(TRAIT_SHOCKIMMUNE, "nanites") + ADD_TRAIT(host_mob, TRAIT_SHOCKIMMUNE, "nanites") /datum/nanite_program/conductive/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_SHOCKIMMUNE, "nanites") + REMOVE_TRAIT(host_mob, TRAIT_SHOCKIMMUNE, "nanites") /datum/nanite_program/mindshield name = "Mental Barrier" @@ -121,10 +121,10 @@ /datum/nanite_program/mindshield/enable_passive_effect() . = ..() if(!host_mob.mind.has_antag_datum(/datum/antagonist/rev)) //won't work if on a rev, to avoid having implanted revs - host_mob.add_trait(TRAIT_MINDSHIELD, "nanites") + ADD_TRAIT(host_mob, TRAIT_MINDSHIELD, "nanites") host_mob.sec_hud_set_implants() /datum/nanite_program/mindshield/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_MINDSHIELD, "nanites") + REMOVE_TRAIT(host_mob, TRAIT_MINDSHIELD, "nanites") host_mob.sec_hud_set_implants() \ No newline at end of file diff --git a/code/modules/research/nanites/nanite_programs/healing.dm b/code/modules/research/nanites/nanite_programs/healing.dm index df32a5d127..ab314cb33c 100644 --- a/code/modules/research/nanites/nanite_programs/healing.dm +++ b/code/modules/research/nanites/nanite_programs/healing.dm @@ -215,7 +215,7 @@ if(!iscarbon(host_mob)) //nonstandard biology return FALSE var/mob/living/carbon/C = host_mob - if(C.suiciding || C.has_trait(TRAIT_NOCLONE) || C.hellbound) //can't revive + if(C.suiciding || HAS_TRAIT(C, TRAIT_NOCLONE) || C.hellbound) //can't revive return FALSE if((world.time - C.timeofdeath) > 1800) //too late return FALSE diff --git a/code/modules/research/nanites/nanite_programs/suppression.dm b/code/modules/research/nanites/nanite_programs/suppression.dm index 3d89baba68..a6225fd337 100644 --- a/code/modules/research/nanites/nanite_programs/suppression.dm +++ b/code/modules/research/nanites/nanite_programs/suppression.dm @@ -65,11 +65,11 @@ /datum/nanite_program/pacifying/enable_passive_effect() . = ..() - host_mob.add_trait(TRAIT_PACIFISM, "nanites") + ADD_TRAIT(host_mob, TRAIT_PACIFISM, "nanites") /datum/nanite_program/pacifying/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_PACIFISM, "nanites") + REMOVE_TRAIT(host_mob, TRAIT_PACIFISM, "nanites") /datum/nanite_program/blinding name = "Blindness" @@ -93,11 +93,11 @@ /datum/nanite_program/mute/enable_passive_effect() . = ..() - host_mob.add_trait(TRAIT_MUTE, "nanites") + ADD_TRAIT(host_mob, TRAIT_MUTE, "nanites") /datum/nanite_program/mute/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_MUTE, "nanites") + REMOVE_TRAIT(host_mob, TRAIT_MUTE, "nanites") /datum/nanite_program/fake_death name = "Death Simulation" diff --git a/code/modules/research/xenobiology/crossbreeding/_clothing.dm b/code/modules/research/xenobiology/crossbreeding/_clothing.dm index 016fd95899..b8bdffbabf 100644 --- a/code/modules/research/xenobiology/crossbreeding/_clothing.dm +++ b/code/modules/research/xenobiology/crossbreeding/_clothing.dm @@ -20,14 +20,14 @@ Slimecrossing Armor /obj/item/clothing/mask/nobreath/equipped(mob/living/carbon/human/user, slot) . = ..() if(slot == SLOT_WEAR_MASK) - user.add_trait(TRAIT_NOBREATH, "breathmask_[REF(src)]") + ADD_TRAIT(user, TRAIT_NOBREATH, "breathmask_[REF(src)]") user.failed_last_breath = FALSE user.clear_alert("not_enough_oxy") user.apply_status_effect(/datum/status_effect/rebreathing) /obj/item/clothing/mask/nobreath/dropped(mob/living/carbon/human/user) ..() - user.remove_trait(TRAIT_NOBREATH, "breathmask_[REF(src)]") + REMOVE_TRAIT(user, TRAIT_NOBREATH, "breathmask_[REF(src)]") user.remove_status_effect(/datum/status_effect/rebreathing) /obj/item/clothing/glasses/prism_glasses @@ -112,11 +112,11 @@ Slimecrossing Armor /obj/item/clothing/head/peaceflower/equipped(mob/living/carbon/human/user, slot) . = ..() if(slot == SLOT_HEAD) - user.add_trait(TRAIT_PACIFISM, "peaceflower_[REF(src)]") + ADD_TRAIT(user, TRAIT_PACIFISM, "peaceflower_[REF(src)]") /obj/item/clothing/head/peaceflower/dropped(mob/living/carbon/human/user) ..() - user.remove_trait(TRAIT_PACIFISM, "peaceflower_[REF(src)]") + REMOVE_TRAIT(user, TRAIT_PACIFISM, "peaceflower_[REF(src)]") /obj/item/clothing/head/peaceflower/attack_hand(mob/user) if(iscarbon(user)) diff --git a/code/modules/research/xenobiology/crossbreeding/_misc.dm b/code/modules/research/xenobiology/crossbreeding/_misc.dm index 0784946a37..b28f1676a1 100644 --- a/code/modules/research/xenobiology/crossbreeding/_misc.dm +++ b/code/modules/research/xenobiology/crossbreeding/_misc.dm @@ -56,7 +56,7 @@ if(last_check_time + 50 < world.time) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.mind && !H.has_trait(TRAIT_AGEUSIA)) + if(H.mind && !HAS_TRAIT(H, TRAIT_AGEUSIA)) to_chat(H,"That didn't taste very good...") //No disgust, though. It's just not good tasting. GET_COMPONENT_FROM(mood, /datum/component/mood, H) if(mood) diff --git a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm index 20d879cd77..ad5bfa27dc 100644 --- a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm +++ b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm @@ -11,7 +11,7 @@ /datum/status_effect/rainbow_protection/on_apply() owner.status_flags |= GODMODE - owner.add_trait(TRAIT_PACIFISM, "slimestatus") + ADD_TRAIT(owner, TRAIT_PACIFISM, "slimestatus") owner.visible_message("[owner] shines with a brilliant rainbow light.", "You feel protected by an unknown force!") originalcolor = owner.color @@ -24,7 +24,7 @@ /datum/status_effect/rainbow_protection/on_remove() owner.status_flags &= ~GODMODE owner.color = originalcolor - owner.remove_trait(TRAIT_PACIFISM, "slimestatus") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "slimestatus") owner.visible_message("[owner] stops glowing, the rainbow light fading away.", "You no longer feel protected...") @@ -246,12 +246,12 @@ datum/status_effect/rebreathing/tick() duration = 100 /datum/status_effect/firecookie/on_apply() - owner.add_trait(TRAIT_RESISTCOLD,"firecookie") + ADD_TRAIT(owner, TRAIT_RESISTCOLD,"firecookie") owner.adjust_bodytemperature(110) return ..() /datum/status_effect/firecookie/on_remove() - owner.remove_trait(TRAIT_RESISTCOLD,"firecookie") + REMOVE_TRAIT(owner, TRAIT_RESISTCOLD,"firecookie") /datum/status_effect/watercookie id = "watercookie" @@ -260,7 +260,7 @@ datum/status_effect/rebreathing/tick() duration = 100 /datum/status_effect/watercookie/on_apply() - owner.add_trait(TRAIT_NOSLIPWATER,"watercookie") + ADD_TRAIT(owner, TRAIT_NOSLIPWATER,"watercookie") return ..() /datum/status_effect/watercookie/tick() @@ -268,7 +268,7 @@ datum/status_effect/rebreathing/tick() T.MakeSlippery(TURF_WET_WATER, min_wet_time = 10, wet_time_to_add = 5) /datum/status_effect/watercookie/on_remove() - owner.remove_trait(TRAIT_NOSLIPWATER,"watercookie") + REMOVE_TRAIT(owner, TRAIT_NOSLIPWATER,"watercookie") /datum/status_effect/metalcookie id = "metalcookie" @@ -313,11 +313,11 @@ datum/status_effect/rebreathing/tick() duration = 600 /datum/status_effect/toxincookie/on_apply() - owner.add_trait(TRAIT_TOXINLOVER,"toxincookie") + ADD_TRAIT(owner, TRAIT_TOXINLOVER,"toxincookie") return ..() /datum/status_effect/toxincookie/on_remove() - owner.remove_trait(TRAIT_TOXINLOVER,"toxincookie") + REMOVE_TRAIT(owner, TRAIT_TOXINLOVER,"toxincookie") /datum/status_effect/timecookie id = "timecookie" @@ -417,11 +417,11 @@ datum/status_effect/rebreathing/tick() duration = 30 /datum/status_effect/plur/on_apply() - owner.add_trait(TRAIT_PACIFISM, "peacecookie") + ADD_TRAIT(owner, TRAIT_PACIFISM, "peacecookie") return ..() /datum/status_effect/plur/on_remove() - owner.remove_trait(TRAIT_PACIFISM, "peacecookie") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "peacecookie") /datum/status_effect/adamantinecookie id = "adamantinecookie" @@ -515,11 +515,11 @@ datum/status_effect/rebreathing/tick() colour = "blue" /datum/status_effect/stabilized/blue/on_apply() - owner.add_trait(TRAIT_NOSLIPWATER, "slimestatus") + ADD_TRAIT(owner, TRAIT_NOSLIPWATER, "slimestatus") return ..() datum/status_effect/stabilized/blue/on_remove() - owner.remove_trait(TRAIT_NOSLIPWATER, "slimestatus") + REMOVE_TRAIT(owner, TRAIT_NOSLIPWATER, "slimestatus") /datum/status_effect/stabilized/metal id = "stabilizedmetal" @@ -580,7 +580,7 @@ datum/status_effect/stabilized/blue/on_remove() examine_text = "Their fingertips burn brightly!" /datum/status_effect/stabilized/darkpurple/on_apply() - owner.add_trait(TRAIT_RESISTHEATHANDS, "slimestatus") + ADD_TRAIT(owner, TRAIT_RESISTHEATHANDS, "slimestatus") fire = new(owner) return ..() @@ -596,7 +596,7 @@ datum/status_effect/stabilized/blue/on_remove() return ..() /datum/status_effect/stabilized/darkpurple/on_remove() - owner.remove_trait(TRAIT_RESISTHEATHANDS, "slimestatus") + REMOVE_TRAIT(owner, TRAIT_RESISTHEATHANDS, "slimestatus") qdel(fire) /datum/status_effect/stabilized/darkblue @@ -916,7 +916,7 @@ datum/status_effect/stabilized/blue/on_remove() colour = "light pink" /datum/status_effect/stabilized/lightpink/on_apply() - owner.add_trait(TRAIT_GOTTAGOFAST,"slimestatus") + ADD_TRAIT(owner, TRAIT_GOTTAGOFAST,"slimestatus") return ..() /datum/status_effect/stabilized/lightpink/tick() @@ -927,7 +927,7 @@ datum/status_effect/stabilized/blue/on_remove() return ..() /datum/status_effect/stabilized/lightpink/on_remove() - owner.remove_trait(TRAIT_GOTTAGOFAST,"slimestatus") + REMOVE_TRAIT(owner, TRAIT_GOTTAGOFAST,"slimestatus") /datum/status_effect/stabilized/adamantine id = "stabilizedadamantine" diff --git a/code/modules/research/xenobiology/crossbreeding/charged.dm b/code/modules/research/xenobiology/crossbreeding/charged.dm index b664380d9e..f3aaa62623 100644 --- a/code/modules/research/xenobiology/crossbreeding/charged.dm +++ b/code/modules/research/xenobiology/crossbreeding/charged.dm @@ -427,7 +427,7 @@ Charged extracts: else to_chat(user, "You drink the pacification potion!") if(isanimal(M)) - M.add_trait(TRAIT_PACIFISM, MAGIC_TRAIT) + ADD_TRAIT(M, TRAIT_PACIFISM, MAGIC_TRAIT) else if(iscarbon(M)) var/mob/living/carbon/C = M C.gain_trauma(/datum/brain_trauma/severe/pacifism, TRAUMA_RESILIENCE_SURGERY) diff --git a/code/modules/spells/spell_types/genetic.dm b/code/modules/spells/spell_types/genetic.dm index 37fca86f46..02d3c087f6 100644 --- a/code/modules/spells/spell_types/genetic.dm +++ b/code/modules/spells/spell_types/genetic.dm @@ -26,7 +26,7 @@ for(var/A in mutations) target.dna.add_mutation(A) for(var/A in traits) - target.add_trait(A, GENETICS_SPELL) + ADD_TRAIT(target, A, GENETICS_SPELL) active_on += target addtimer(CALLBACK(src, .proc/remove, target), duration) @@ -41,4 +41,4 @@ for(var/A in mutations) target.dna.remove_mutation(A) for(var/A in traits) - target.remove_trait(A, GENETICS_SPELL) \ No newline at end of file + REMOVE_TRAIT(target, A, GENETICS_SPELL) \ No newline at end of file diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm index 7f291be674..3073a6fcc3 100644 --- a/code/modules/station_goals/dna_vault.dm +++ b/code/modules/station_goals/dna_vault.dm @@ -258,25 +258,25 @@ var/obj/item/organ/lungs/L = H.internal_organs_slot[ORGAN_SLOT_LUNGS] L.tox_breath_dam_min = 0 L.tox_breath_dam_max = 0 - H.add_trait(TRAIT_VIRUSIMMUNE, "dna_vault") + ADD_TRAIT(H, TRAIT_VIRUSIMMUNE, "dna_vault") if(VAULT_NOBREATH) to_chat(H, "Your lungs feel great.") - H.add_trait(TRAIT_NOBREATH, "dna_vault") + ADD_TRAIT(H, TRAIT_NOBREATH, "dna_vault") if(VAULT_FIREPROOF) to_chat(H, "You feel fireproof.") S.burnmod = 0.5 - H.add_trait(TRAIT_RESISTHEAT, "dna_vault") - H.add_trait(TRAIT_NOFIRE, "dna_vault") + ADD_TRAIT(H, TRAIT_RESISTHEAT, "dna_vault") + ADD_TRAIT(H, TRAIT_NOFIRE, "dna_vault") if(VAULT_STUNTIME) to_chat(H, "Nothing can keep you down for long.") S.stunmod = 0.5 if(VAULT_ARMOUR) to_chat(H, "You feel tough.") S.armor = 30 - H.add_trait(TRAIT_PIERCEIMMUNE, "dna_vault") + ADD_TRAIT(H, TRAIT_PIERCEIMMUNE, "dna_vault") if(VAULT_SPEED) to_chat(H, "Your legs feel faster.") - H.add_trait(TRAIT_GOTTAGOFAST, "dna_vault") + ADD_TRAIT(H, TRAIT_GOTTAGOFAST, "dna_vault") if(VAULT_QUICK) to_chat(H, "Your arms move as fast as lightning.") H.next_move_modifier = 0.5 diff --git a/code/modules/surgery/advanced/brainwashing.dm b/code/modules/surgery/advanced/brainwashing.dm index f4db9ddbee..23783f1bf2 100644 --- a/code/modules/surgery/advanced/brainwashing.dm +++ b/code/modules/surgery/advanced/brainwashing.dm @@ -41,7 +41,7 @@ if(!target.mind) user.visible_message("[target] doesn't respond to the brainwashing, as if [target.p_they()] lacked a mind...") return FALSE - if(target.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(target, TRAIT_MINDSHIELD)) user.visible_message("You hear a faint buzzing from a device inside [target]'s brain, and the brainwashing is erased.") return FALSE user.visible_message("[user] successfully brainwashes [target]!", "You succeed in brainwashing [target].") diff --git a/code/modules/surgery/advanced/revival.dm b/code/modules/surgery/advanced/revival.dm index 0cd7a64235..ebda8a04e2 100644 --- a/code/modules/surgery/advanced/revival.dm +++ b/code/modules/surgery/advanced/revival.dm @@ -18,7 +18,7 @@ return FALSE if(target.stat != DEAD) return FALSE - if(target.suiciding || target.has_trait(TRAIT_NOCLONE) || target.hellbound) + if(target.suiciding || HAS_TRAIT(target, TRAIT_NOCLONE) || target.hellbound) return FALSE var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN) if(!B) diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 230347fae5..9204de3d08 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -88,7 +88,7 @@ /obj/item/bodypart/attack(mob/living/carbon/C, mob/user) if(ishuman(C)) var/mob/living/carbon/human/H = C - if(C.has_trait(TRAIT_LIMBATTACHMENT)) + if(HAS_TRAIT(C, TRAIT_LIMBATTACHMENT)) if(!H.get_bodypart(body_zone) && !animal_origin) if(H == user) H.visible_message("[H] jams [src] into [H.p_their()] empty socket!",\ @@ -221,7 +221,7 @@ //Checks disabled status thresholds /obj/item/bodypart/proc/check_disabled() - if(!can_dismember() || owner.has_trait(TRAIT_NODISMEMBER)) + if(!can_dismember() || HAS_TRAIT(owner, TRAIT_NODISMEMBER)) return if(!disabled && (get_damage(TRUE) >= max_damage)) set_disabled(TRUE) @@ -284,7 +284,7 @@ C = owner no_update = FALSE - if(C.has_trait(TRAIT_HUSK) && is_organic_limb()) + if(HAS_TRAIT(C, TRAIT_HUSK) && is_organic_limb()) species_id = "husk" //overrides species_id dmg_overlay_type = "" //no damage overlay shown when husked should_draw_gender = FALSE diff --git a/code/modules/surgery/bodyparts/dismemberment.dm b/code/modules/surgery/bodyparts/dismemberment.dm index 1a46a9dcb1..9341fb6c25 100644 --- a/code/modules/surgery/bodyparts/dismemberment.dm +++ b/code/modules/surgery/bodyparts/dismemberment.dm @@ -12,7 +12,7 @@ return FALSE if(C.status_flags & GODMODE) return FALSE - if(C.has_trait(TRAIT_NODISMEMBER)) + if(HAS_TRAIT(C, TRAIT_NODISMEMBER)) return FALSE var/obj/item/bodypart/affecting = C.get_bodypart(BODY_ZONE_CHEST) @@ -47,7 +47,7 @@ var/mob/living/carbon/C = owner if(!dismemberable) return FALSE - if(C.has_trait(TRAIT_NODISMEMBER)) + if(HAS_TRAIT(C, TRAIT_NODISMEMBER)) return FALSE . = list() var/organ_spilled = 0 diff --git a/code/modules/surgery/bodyparts/head.dm b/code/modules/surgery/bodyparts/head.dm index 1f0fa00632..46ee10a3fd 100644 --- a/code/modules/surgery/bodyparts/head.dm +++ b/code/modules/surgery/bodyparts/head.dm @@ -68,7 +68,7 @@ C = owner real_name = C.real_name - if(C.has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(C, TRAIT_HUSK)) real_name = "Unknown" hair_style = "Bald" facial_hair_style = "Shaved" diff --git a/code/modules/surgery/lipoplasty.dm b/code/modules/surgery/lipoplasty.dm index 7bc7553023..9967eba663 100644 --- a/code/modules/surgery/lipoplasty.dm +++ b/code/modules/surgery/lipoplasty.dm @@ -4,7 +4,7 @@ possible_locs = list(BODY_ZONE_CHEST) /datum/surgery/lipoplasty/can_start(mob/user, mob/living/carbon/target) - if(target.has_trait(TRAIT_FAT)) + if(HAS_TRAIT(target, TRAIT_FAT)) return 1 return 0 diff --git a/code/modules/surgery/organs/ears.dm b/code/modules/surgery/organs/ears.dm index c54d3bb532..b0a2f38c46 100644 --- a/code/modules/surgery/organs/ears.dm +++ b/code/modules/surgery/organs/ears.dm @@ -25,7 +25,7 @@ return var/mob/living/carbon/C = owner // genetic deafness prevents the body from using the ears, even if healthy - if(C.has_trait(TRAIT_DEAF)) + if(HAS_TRAIT(C, TRAIT_DEAF)) deaf = max(deaf, 1) else if(ear_damage < UNHEALING_EAR_DAMAGE) // if higher than UNHEALING_EAR_DAMAGE, no natural healing occurs. ear_damage = max(ear_damage - 0.05, 0) @@ -37,7 +37,7 @@ var/mob/living/carbon/C = owner - if(iscarbon(owner) && C.has_trait(TRAIT_DEAF)) + if(iscarbon(owner) && HAS_TRAIT(C, TRAIT_DEAF)) deaf = 1 /obj/item/organ/ears/proc/adjustEarDamage(ddmg, ddeaf) diff --git a/code/modules/surgery/organs/eyes.dm b/code/modules/surgery/organs/eyes.dm index 9f42cf0baa..98abb2528a 100644 --- a/code/modules/surgery/organs/eyes.dm +++ b/code/modules/surgery/organs/eyes.dm @@ -26,7 +26,7 @@ HMN.regenerate_icons() else eye_color = HMN.eye_color - if(HMN.has_trait(TRAIT_NIGHT_VISION) && !lighting_alpha) + if(HAS_TRAIT(HMN, TRAIT_NIGHT_VISION) && !lighting_alpha) lighting_alpha = LIGHTING_PLANE_ALPHA_NV_TRAIT see_in_dark = 8 M.update_tint() diff --git a/code/modules/surgery/organs/liver.dm b/code/modules/surgery/organs/liver.dm index ee767566e6..f666fc209b 100755 --- a/code/modules/surgery/organs/liver.dm +++ b/code/modules/surgery/organs/liver.dm @@ -25,7 +25,7 @@ //slowly heal liver damage damage = max(0, damage - 0.1) - if(filterToxins && !owner.has_trait(TRAIT_TOXINLOVER)) + if(filterToxins && !HAS_TRAIT(owner, TRAIT_TOXINLOVER)) //handle liver toxin filtration for(var/I in C.reagents.reagent_list) var/datum/reagent/pickedreagent = I diff --git a/code/modules/surgery/organs/lungs.dm b/code/modules/surgery/organs/lungs.dm index 1e22796b1b..a15ef51dda 100644 --- a/code/modules/surgery/organs/lungs.dm +++ b/code/modules/surgery/organs/lungs.dm @@ -58,7 +58,7 @@ /obj/item/organ/lungs/proc/check_breath(datum/gas_mixture/breath, mob/living/carbon/human/H) if((H.status_flags & GODMODE)) return - if(H.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(H, TRAIT_NOBREATH)) return if(!breath || (breath.total_moles() == 0)) @@ -66,7 +66,7 @@ return if(H.health >= H.crit_threshold) H.adjustOxyLoss(HUMAN_MAX_OXYLOSS) - else if(!H.has_trait(TRAIT_NOCRITDAMAGE)) + else if(!HAS_TRAIT(H, TRAIT_NOCRITDAMAGE)) H.adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) H.failed_last_breath = TRUE @@ -365,7 +365,7 @@ /obj/item/organ/lungs/proc/handle_breath_temperature(datum/gas_mixture/breath, mob/living/carbon/human/H) // called by human/life, handles temperatures var/breath_temperature = breath.temperature - if(!H.has_trait(TRAIT_RESISTCOLD)) // COLD DAMAGE + if(!HAS_TRAIT(H, TRAIT_RESISTCOLD)) // COLD DAMAGE var/cold_modifier = H.dna.species.coldmod if(breath_temperature < cold_level_3_threshold) H.apply_damage_type(cold_level_3_damage*cold_modifier, cold_damage_type) @@ -377,7 +377,7 @@ if(prob(20)) to_chat(H, "You feel [cold_message] in your [name]!") - if(!H.has_trait(TRAIT_RESISTHEAT)) // HEAT DAMAGE + if(!HAS_TRAIT(H, TRAIT_RESISTHEAT)) // HEAT DAMAGE var/heat_modifier = H.dna.species.heatmod if(breath_temperature > heat_level_1_threshold && breath_temperature < heat_level_2_threshold) H.apply_damage_type(heat_level_1_damage*heat_modifier, heat_damage_type) diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 1408bff60c..b16967b6b0 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -110,7 +110,7 @@ var/breathes = TRUE var/blooded = TRUE if(dna && dna.species) - if(has_trait(TRAIT_NOBREATH, SPECIES_TRAIT)) + if(HAS_TRAIT_FROM(src, TRAIT_NOBREATH, SPECIES_TRAIT)) breathes = FALSE if(NOBLOOD in dna.species.species_traits) blooded = FALSE diff --git a/code/modules/surgery/plastic_surgery.dm b/code/modules/surgery/plastic_surgery.dm index 3a3dd6a1dd..54482ade73 100644 --- a/code/modules/surgery/plastic_surgery.dm +++ b/code/modules/surgery/plastic_surgery.dm @@ -13,8 +13,8 @@ user.visible_message("[user] begins to alter [target]'s appearance.", "You begin to alter [target]'s appearance...") /datum/surgery_step/reshape_face/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.has_trait(TRAIT_DISFIGURED, TRAIT_GENERIC)) - target.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + if(HAS_TRAIT_FROM(target, TRAIT_DISFIGURED, TRAIT_GENERIC)) + REMOVE_TRAIT(target, TRAIT_DISFIGURED, TRAIT_GENERIC) user.visible_message("[user] successfully restores [target]'s appearance!", "You successfully restore [target]'s appearance.") else var/list/names = list() diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm b/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm index 3dfdf4dd9b..0851f3b596 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_pen.dm @@ -49,7 +49,7 @@ return to_chat(user, "This mind is already controlled by someone else!") return - if(check && gangster_mind.current.has_trait(TRAIT_MINDSHIELD)) //Check to see if the potential gangster is implanted + if(check && HAS_TRAIT(gangster_mind.current, TRAIT_MINDSHIELD)) //Check to see if the potential gangster is implanted to_chat(user, "This mind is too strong to control!") return var/mob/living/carbon/human/H = gangster_mind.current // we are sure the dude's human cause it's checked in attack() diff --git a/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm b/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm index e6ba224f8d..ce6aada0fc 100644 --- a/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm +++ b/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm @@ -367,7 +367,7 @@ unwield() return ..() - if(user.has_trait(TRAIT_CLUMSY) && (wielded) && prob(40)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && (wielded) && prob(40)) impale(user) return diff --git a/modular_citadel/code/game/objects/items/melee/misc.dm b/modular_citadel/code/game/objects/items/melee/misc.dm index 82ede048a8..6a53adcc1f 100644 --- a/modular_citadel/code/game/objects/items/melee/misc.dm +++ b/modular_citadel/code/game/objects/items/melee/misc.dm @@ -16,7 +16,7 @@ return //CIT CHANGE - ditto add_fingerprint(user) - if((user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) to_chat(user, "You club yourself over the head.") user.Knockdown(60 * force) if(ishuman(user)) diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm index cbf14e420a..52508d7803 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals.dm @@ -286,7 +286,7 @@ return if(NOGENITALS in species_traits)//golems and such return - if(H.has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(H, TRAIT_HUSK)) return var/list/genitals_to_add = list() diff --git a/modular_citadel/code/modules/mob/living/status_procs.dm b/modular_citadel/code/modules/mob/living/status_procs.dm index f646af3286..851c7438a7 100644 --- a/modular_citadel/code/modules/mob/living/status_procs.dm +++ b/modular_citadel/code/modules/mob/living/status_procs.dm @@ -1,5 +1,5 @@ /mob/living/Knockdown(amount, updating = TRUE, ignore_canknockdown = FALSE, override_hardstun, override_stamdmg) //Can't go below remaining duration - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canknockdown) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canknockdown) if(absorb_stun(isnull(override_hardstun)? amount : override_hardstun, ignore_canknockdown)) return var/datum/status_effect/incapacitating/knockdown/K = IsKnockdown() diff --git a/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm b/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm index 3da35d9c6d..2a6f03fae3 100644 --- a/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm +++ b/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm @@ -97,7 +97,7 @@ color = "#FFADFF"//PINK, rgb(255, 173, 255) /datum/reagent/drug/aphrodisiac/on_mob_life(mob/living/M) - if(M && M.canbearoused && !M.has_trait(TRAIT_CROCRIN_IMMUNE)) + if(M && M.canbearoused && !HAS_TRAIT(M, TRAIT_CROCRIN_IMMUNE)) if(prob(33)) M.adjustArousalLoss(2) if(prob(5)) @@ -119,7 +119,7 @@ overdose_threshold = 20 /datum/reagent/drug/aphrodisiacplus/on_mob_life(mob/living/M) - if(M && M.canbearoused && !M.has_trait(TRAIT_CROCRIN_IMMUNE)) + if(M && M.canbearoused && !HAS_TRAIT(M, TRAIT_CROCRIN_IMMUNE)) if(prob(33)) M.adjustArousalLoss(6)//not quite six times as powerful, but still considerably more powerful. if(prob(5)) @@ -151,7 +151,7 @@ ..() /datum/reagent/drug/aphrodisiacplus/overdose_process(mob/living/M) - if(M && M.canbearoused && !M.has_trait(TRAIT_CROCRIN_IMMUNE) && prob(33)) + if(M && M.canbearoused && !HAS_TRAIT(M, TRAIT_CROCRIN_IMMUNE) && prob(33)) if(M.getArousalLoss() >= 100 && ishuman(M) && M.has_dna()) var/mob/living/carbon/human/H = M if(prob(50)) //Less spam From 0b1da3f0254f357fb8433766e1c15f24d654315a Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Thu, 6 Jun 2019 20:50:14 +0200 Subject: [PATCH 208/370] Update uniform.dm --- .../code/modules/client/loadout/uniform.dm | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 81e17e95d3..07309ffd0d 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -73,6 +73,26 @@ category = SLOT_W_UNIFORM path = /obj/item/clothing/under/skirt/purple +/datum/gear/schoolgirlblue + name = "Blue Schoolgirl Uniform" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/schoolgirl + +/datum/gear/schoolgirlred + name = "Red Schoolgirl Uniform" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/schoolgirl/red + +/datum/gear/schoolgirlgreen + name = "Green Schoolgirl Uniform" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/schoolgirl/green + +/datum/gear/schoolgirlorange + name = "Orange Schoolgirl Uniform" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/schoolgirl/orange + /datum/gear/kilt name = "Kilt" category = SLOT_W_UNIFORM From 01e56cc00dae6dc0b0d61ea9d45393d0435ef8d1 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 6 Jun 2019 14:52:52 -0400 Subject: [PATCH 209/370] garmmer --- code/modules/food_and_drinks/food/snacks_frozen.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/food_and_drinks/food/snacks_frozen.dm b/code/modules/food_and_drinks/food/snacks_frozen.dm index e7f0509b92..febfa527ca 100644 --- a/code/modules/food_and_drinks/food/snacks_frozen.dm +++ b/code/modules/food_and_drinks/food/snacks_frozen.dm @@ -56,7 +56,7 @@ /obj/item/reagent_containers/food/snacks/snowcones/lime name = "lime flavored snowcone" - desc = "A pineapple flavord snowball in a paper cup." + desc = "A lime flavord snowball in a paper cup." icon_state = "lime_sc" list_reagents = list("nutriment" = 1, "limejuice" = 5) tastes = list("ice" = 1, "water" = 1, "limes" = 5) @@ -64,7 +64,7 @@ /obj/item/reagent_containers/food/snacks/snowcones/lemon name = "lemon flavored snowcone" - desc = "A pineapple flavord snowball in a paper cup." + desc = "A lemon flavord snowball in a paper cup." icon_state = "lemon_sc" list_reagents = list("nutriment" = 1, "lemonjuice" = 5) tastes = list("ice" = 1, "water" = 1, "lemons" = 5) @@ -72,7 +72,7 @@ /obj/item/reagent_containers/food/snacks/snowcones/apple name = "apple flavored snowcone" - desc = "A pineapple flavord snowball in a paper cup." + desc = "A apple flavord snowball in a paper cup." icon_state = "blue_sc" list_reagents = list("nutriment" = 1, "applejuice" = 5) tastes = list("ice" = 1, "water" = 1, "apples" = 5) @@ -173,8 +173,8 @@ foodtype = JUNKFOOD | SUGAR /obj/item/reagent_containers/food/snacks/snowcones/honey - name = "pwergamer flavored snowcone" - desc = "A waterd down pwergamer soda flavord snowball in a paper cup." + name = "honey flavored snowcone" + desc = "A honey flavord snowball in a paper cup." icon_state = "honey_sc" list_reagents = list("nutriment" = 1, "honey" = 5) tastes = list("pollen" = 5, "sweetness" = 5, "wax" = 1) @@ -184,4 +184,4 @@ desc = "A rainbow color snowball in a paper cup." icon_state = "rainbow_sc" list_reagents = list("nutriment" = 5, "laughter" = 25) - tastes = list("sunlight" = 5, "light" = 5, "slime" = 5, "paint" = 3, "clouds" = 3) \ No newline at end of file + tastes = list("sunlight" = 5, "light" = 5, "slime" = 5, "paint" = 3, "clouds" = 3) From 4ef2b15c69ad854c1631a0a34efd4a83ae65d2f6 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 6 Jun 2019 15:51:37 -0400 Subject: [PATCH 210/370] Update manifest.dm --- code/modules/cargo/exports/manifest.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/cargo/exports/manifest.dm b/code/modules/cargo/exports/manifest.dm index 763ca70dfe..02b060e0bf 100644 --- a/code/modules/cargo/exports/manifest.dm +++ b/code/modules/cargo/exports/manifest.dm @@ -80,13 +80,13 @@ // Paper work done correctly /datum/export/paperwork_correct - cost = 50 + cost = 150 unit_name = "correct paperwork" - export_types = list(/obj/item/paper/fluff/jobs/cargo/manifest/paperwork_correct) + export_types = list(/obj/item/folder/paperwork_correct) // Paper work not done retruned /datum/export/paperwork_incorrect cost = -500 // Failed to meet NT standers unit_name = "returned incorrect paperwork" - export_types = list(/obj/item/paper/fluff/jobs/cargo/manifest/paperwork) + export_types = list(/obj/item/folder/paperwork) From e2a3b855b854fd7a03aff0beeb679d29d03cfad6 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 6 Jun 2019 15:56:27 -0400 Subject: [PATCH 211/370] Update order.dm --- code/modules/cargo/order.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/cargo/order.dm b/code/modules/cargo/order.dm index 1f0d7d29b3..8776d8f8fc 100644 --- a/code/modules/cargo/order.dm +++ b/code/modules/cargo/order.dm @@ -97,12 +97,12 @@ return C //Paperwork for NT -/obj/item/paper/fluff/jobs/cargo/manifest/paperwork +/obj/item/folder/paperwork name = "Incomplete Paperwork" desc = "These should've been filled out four months ago! Unfinished grant papers issued by Nanotrasen's finance department. Complete this page for additional funding." icon = 'icons/obj/bureaucracy.dmi' -/obj/item/paper/fluff/jobs/cargo/manifest/paperwork_correct +/obj/item/folder/paperwork_correct name = "Finished Paperwork" desc = "A neat stack of filled-out forms, in triplicate and signed. Is there anything more satisfying? Make sure they get stamped." icon = 'icons/obj/bureaucracy.dmi' From 7f35a15020e26311c923d34ee02765ad99c2f3e5 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 6 Jun 2019 15:58:13 -0400 Subject: [PATCH 212/370] Update packs.dm --- code/modules/cargo/packs.dm | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index 479a8db0ad..83e420bce2 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -2671,16 +2671,16 @@ name = "Freelance Paper work" desc = "The Nanotrasen Primary Bureaucratic Database Intelligence (PDBI) reports that the station has not completed its funding and grant paperwork this solar cycle. In order to gain further funding, your station is required to fill out (10) ten of these forms or no additional capital will be disbursed. We have sent you ten copies of the following form and we expect every one to be up to Nanotrasen Standards." // Disbursement. It's not a typo, look it up. cost = 400 // Net of 0 credits - contains = list(/obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork, + contains = list(/obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, + /obj/item/folder/paperwork, /obj/item/pen/fountain, /obj/item/pen/fountain, /obj/item/pen/fountain, From 6fd83df81f97ff8046ca675f9e24eb80084d7123 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 6 Jun 2019 16:00:02 -0400 Subject: [PATCH 213/370] Update recipes.dm --- code/modules/crafting/recipes.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index 7d25f67580..a816412207 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -746,10 +746,10 @@ /datum/crafting_recipe/paperwork name = "Filed Paper Work" - result = /obj/item/paper/fluff/jobs/cargo/manifest/paperwork_correct - time = 90 //Takes time for people to file and complete paper work! + result = /obj/item/folder/paperwork_correct + time = 60 //Takes time for people to file and complete paper work! reqs = list(/obj/item/pen = 1, - /obj/item/paper/fluff/jobs/cargo/manifest/paperwork = 2) + /obj/item/folder/paperwork = 2) category = CAT_MISC /datum/crafting_recipe/ghettojetpack From b9b219d561e65f274d1225a0d7fc97cac7167ec2 Mon Sep 17 00:00:00 2001 From: Sishen Date: Thu, 6 Jun 2019 16:01:40 -0400 Subject: [PATCH 214/370] adds redtail --- code/game/objects/items/plushes.dm | 11 ++++++----- icons/obj/plushes.dmi | Bin 38694 -> 39216 bytes 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/code/game/objects/items/plushes.dm b/code/game/objects/items/plushes.dm index 96f17ce790..5fe6d2d442 100644 --- a/code/game/objects/items/plushes.dm +++ b/code/game/objects/items/plushes.dm @@ -591,23 +591,20 @@ desc = "An adorable stuffed toy that resembles a slime. It is practically just a hacky sack." icon_state = "plushie_slime" item_state = "plushie_slime" - attack_verb = list("blorbled", "slimed", "absorbed") + attack_verb = list("blorbled", "slimed", "absorbed", "glomped") squeak_override = list('sound/effects/blobattack.ogg' = 1) gender = FEMALE //given all the jokes and drawings, I'm not sure the xenobiologists would make a slimeboy /obj/item/toy/plush/slimeplushie/annie - name = "slime plushie" desc = "An adorable stuffed toy that resembles a slimey crewmember." icon_state = "annie" item_state = "annie" - attack_verb = list("blorbled", "slimed", "absorbed", "glomped") /obj/item/toy/plush/slimeplushie/paxton - name = "slime plushie" desc = "An adorable stuffed toy that resembles a slimey crewmember." icon_state = "paxton" item_state = "paxton" - attack_verb = list("blorbled", "slimed", "absorbed", "glomped", "CQC'd", "jabroni'd", "powergamed", "robusted", "cakehatted") + attack_verb = list("CQC'd", "jabroni'd", "powergamed", "robusted", "cakehatted") gender = MALE /obj/item/toy/plush/awakenedplushie @@ -768,6 +765,10 @@ icon_state = "ray" item_state = "ray" +/obj/item/toy/plush/mammal/redtail + icon_state = "redtail" + item_state = "redtail" + /obj/item/toy/plush/mammal/dawud icon_state = "dawud" item_state = "dawud" diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index 324c4a17eead204cfe92af3d9ca1418eeb327d99..8c0e11ef16937a0080549c91d4d7135daa38c0f2 100644 GIT binary patch delta 18043 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 delta 17517 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 Date: Thu, 6 Jun 2019 16:03:24 -0400 Subject: [PATCH 215/370] paper work icons --- code/modules/cargo/order.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/cargo/order.dm b/code/modules/cargo/order.dm index 8776d8f8fc..b576928bfe 100644 --- a/code/modules/cargo/order.dm +++ b/code/modules/cargo/order.dm @@ -101,8 +101,10 @@ name = "Incomplete Paperwork" desc = "These should've been filled out four months ago! Unfinished grant papers issued by Nanotrasen's finance department. Complete this page for additional funding." icon = 'icons/obj/bureaucracy.dmi' + icon_state = "docs_generic" /obj/item/folder/paperwork_correct name = "Finished Paperwork" desc = "A neat stack of filled-out forms, in triplicate and signed. Is there anything more satisfying? Make sure they get stamped." icon = 'icons/obj/bureaucracy.dmi' + icon_state = "docs_verified" From bdaab020f7c82fb109ad251b4d88f040bfa3cc3e Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 00:20:04 +0200 Subject: [PATCH 216/370] ports a fix. --- .../goonchat/browserassets/js/browserOutput.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/code/modules/goonchat/browserassets/js/browserOutput.js b/code/modules/goonchat/browserassets/js/browserOutput.js index 23a63d9708..6e6b0d070e 100644 --- a/code/modules/goonchat/browserassets/js/browserOutput.js +++ b/code/modules/goonchat/browserassets/js/browserOutput.js @@ -158,7 +158,16 @@ function byondDecode(message) { // The replace for + is because FOR SOME REASON, BYOND replaces spaces with a + instead of %20, and a plus with %2b. // Marvelous. message = message.replace(/\+/g, "%20"); - message = decoder(message); + try { + // This is a workaround for the above not always working when BYOND's shitty url encoding breaks. (byond bug id:2399401) + if (decodeURIComponent) { + message = decodeURIComponent(message); + } else { + throw new Error("Easiest way to trigger the fallback") + } + } catch (err) { + message = unescape(message); + } return message; } From ef7fb47e17016d4cc250dabe01cec8476917ba1b Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 00:41:19 +0200 Subject: [PATCH 217/370] port fixaloo. --- code/modules/goonchat/browserassets/js/browserOutput.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/goonchat/browserassets/js/browserOutput.js b/code/modules/goonchat/browserassets/js/browserOutput.js index 23a63d9708..a80e5ce143 100644 --- a/code/modules/goonchat/browserassets/js/browserOutput.js +++ b/code/modules/goonchat/browserassets/js/browserOutput.js @@ -361,7 +361,7 @@ function setCookie(cname, cvalue, exdays) { var d = new Date(); d.setTime(d.getTime() + (exdays*24*60*60*1000)); var expires = 'expires='+d.toUTCString(); - document.cookie = cname + '=' + cvalue + '; ' + expires; + document.cookie = cname + '=' + cvalue + '; ' + expires + "; path=/"; } function getCookie(cname) { From 5a69499927a9f257fd91c5b8fec4c115b645943a Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 01:32:15 +0200 Subject: [PATCH 218/370] Hol up, unrelated PR time, atomization. --- code/_onclick/hud/radial.dm | 75 ++++++++--- code/_onclick/hud/radial_persistent.dm | 76 ++++++++++++ code/datums/action.dm | 7 +- code/game/objects/items/RCD.dm | 165 ++++++++++++++++++------- code/game/objects/items/RCL.dm | 134 ++++++++++++++++++-- code/game/turfs/turf.dm | 2 + code/modules/power/cable.dm | 10 +- icons/mob/actions/actions_items.dmi | Bin 8842 -> 9131 bytes icons/mob/radial.dmi | Bin 3303 -> 15818 bytes 9 files changed, 393 insertions(+), 76 deletions(-) create mode 100644 code/_onclick/hud/radial_persistent.dm diff --git a/code/_onclick/hud/radial.dm b/code/_onclick/hud/radial.dm index 03b951e6bb..df91223ed1 100644 --- a/code/_onclick/hud/radial.dm +++ b/code/_onclick/hud/radial.dm @@ -1,4 +1,7 @@ #define NEXT_PAGE_ID "__next__" +#define DEFAULT_CHECK_DELAY 20 + +GLOBAL_LIST_EMPTY(radial_menus) /obj/screen/radial icon = 'icons/mob/radial.dmi' @@ -10,14 +13,19 @@ icon_state = "radial_slice" var/choice var/next_page = FALSE + var/tooltips = FALSE /obj/screen/radial/slice/MouseEntered(location, control, params) . = ..() icon_state = "radial_slice_focus" + if(tooltips) + openToolTip(usr, src, params, title = name) /obj/screen/radial/slice/MouseExited(location, control, params) . = ..() icon_state = "radial_slice" + if(tooltips) + closeToolTip(usr) /obj/screen/radial/slice/Click(location, control, params) if(usr.client == parent.current_user) @@ -30,6 +38,14 @@ name = "Close Menu" icon_state = "radial_center" +/obj/screen/radial/center/MouseEntered(location, control, params) + . = ..() + icon_state = "radial_center_focus" + +/obj/screen/radial/center/MouseExited(location, control, params) + . = ..() + icon_state = "radial_center" + /obj/screen/radial/center/Click(location, control, params) if(usr.client == parent.current_user) parent.finished = TRUE @@ -48,6 +64,9 @@ var/atom/anchor var/image/menu_holder var/finished = FALSE + var/datum/callback/custom_check_callback + var/next_check = 0 + var/check_delay = DEFAULT_CHECK_DELAY var/radius = 32 var/starting_angle = 0 @@ -57,7 +76,7 @@ var/max_elements var/pages = 1 var/current_page = 1 - + var/hudfix_method = TRUE //TRUE to change anchor to user, FALSE to shift by py_shift var/py_shift = 0 var/entry_animation = TRUE @@ -75,7 +94,7 @@ restrict_to_dir(NORTH) //I was going to parse screen loc here but that's more effort than it's worth. //Sets defaults -//These assume 45 deg min_angle +//These assume 45 deg min_angle /datum/radial_menu/proc/restrict_to_dir(dir) switch(dir) if(NORTH) @@ -91,18 +110,19 @@ starting_angle = 180 ending_angle = 45 -/datum/radial_menu/proc/setup_menu() +/datum/radial_menu/proc/setup_menu(use_tooltips) if(ending_angle > starting_angle) zone = ending_angle - starting_angle else zone = 360 - starting_angle + ending_angle - + max_elements = round(zone / min_angle) var/paged = max_elements < choices.len if(elements.len < max_elements) var/elements_to_add = max_elements - elements.len for(var/i in 1 to elements_to_add) //Create all elements - var/obj/screen/radial/new_element = new /obj/screen/radial/slice + var/obj/screen/radial/slice/new_element = new /obj/screen/radial/slice + new_element.tooltips = use_tooltips new_element.parent = src elements += new_element @@ -163,7 +183,7 @@ else E.pixel_y = py E.pixel_x = px - + //Visuals E.alpha = 255 E.mouse_opacity = MOUSE_OPACITY_ICON @@ -183,7 +203,7 @@ E.next_page = FALSE if(choices_icons[choice_id]) E.add_overlay(choices_icons[choice_id]) - + /datum/radial_menu/New() close_button = new close_button.parent = src @@ -200,7 +220,7 @@ /datum/radial_menu/proc/get_next_id() return "c_[choices.len]" -/datum/radial_menu/proc/set_choices(list/new_choices) +/datum/radial_menu/proc/set_choices(list/new_choices, use_tooltips) if(choices.len) Reset() for(var/E in new_choices) @@ -211,7 +231,7 @@ var/I = extract_image(new_choices[E]) if(I) choices_icons[id] = I - setup_menu() + setup_menu(use_tooltips) /datum/radial_menu/proc/extract_image(E) @@ -220,7 +240,7 @@ MA.layer = ABOVE_HUD_LAYER MA.appearance_flags |= RESET_TRANSFORM return MA - + /datum/radial_menu/proc/next_page() if(pages > 1) @@ -243,28 +263,49 @@ if(current_user) current_user.images -= menu_holder -/datum/radial_menu/proc/wait() +/datum/radial_menu/proc/wait(atom/user, atom/anchor, require_near = FALSE) while (current_user && !finished && !selected_choice) + if(require_near && !in_range(anchor, user)) + return + if(custom_check_callback && next_check < world.time) + if(!custom_check_callback.Invoke()) + return + else + next_check = world.time + check_delay stoplag(1) /datum/radial_menu/Destroy() Reset() hide() + QDEL_NULL(custom_check_callback) . = ..() + /* - Presents radial menu to user anchored to anchor (or user if the anchor is currently in users screen) + Presents radial menu to user anchored to anchor (or user if the anchor is currently in users screen) Choices should be a list where list keys are movables or text used for element names and return value and list values are movables/icons/images used for element icons */ -/proc/show_radial_menu(mob/user,atom/anchor,list/choices) +/proc/show_radial_menu(mob/user, atom/anchor, list/choices, uniqueid, radius, datum/callback/custom_check, require_near = FALSE, tooltips = FALSE) + if(!user || !anchor || !length(choices)) + return + if(!uniqueid) + uniqueid = "defmenu_[REF(user)]_[REF(anchor)]" + + if(GLOB.radial_menus[uniqueid]) + return + var/datum/radial_menu/menu = new - if(!user) - user = usr + GLOB.radial_menus[uniqueid] = menu + if(radius) + menu.radius = radius + if(istype(custom_check)) + menu.custom_check_callback = custom_check menu.anchor = anchor menu.check_screen_border(user) //Do what's needed to make it look good near borders or on hud - menu.set_choices(choices) + menu.set_choices(choices, tooltips) menu.show_to(user) - menu.wait() + menu.wait(user, anchor, require_near) var/answer = menu.selected_choice qdel(menu) + GLOB.radial_menus -= uniqueid return answer \ No newline at end of file diff --git a/code/_onclick/hud/radial_persistent.dm b/code/_onclick/hud/radial_persistent.dm new file mode 100644 index 0000000000..0b5e8dc356 --- /dev/null +++ b/code/_onclick/hud/radial_persistent.dm @@ -0,0 +1,76 @@ +/* + A derivative of radial menu which persists onscreen until closed and invokes a callback each time an element is clicked +*/ + +/obj/screen/radial/persistent/center + name = "Close Menu" + icon_state = "radial_center" + +/obj/screen/radial/persistent/center/Click(location, control, params) + if(usr.client == parent.current_user) + parent.element_chosen(null,usr) + +/obj/screen/radial/persistent/center/MouseEntered(location, control, params) + . = ..() + icon_state = "radial_center_focus" + +/obj/screen/radial/persistent/center/MouseExited(location, control, params) + . = ..() + icon_state = "radial_center" + + + +/datum/radial_menu/persistent + var/uniqueid + var/datum/callback/select_proc_callback + +/datum/radial_menu/persistent/New() + close_button = new /obj/screen/radial/persistent/center + close_button.parent = src + + +/datum/radial_menu/persistent/element_chosen(choice_id,mob/user) + select_proc_callback.Invoke(choices_values[choice_id]) + + +/datum/radial_menu/persistent/proc/change_choices(list/newchoices, tooltips) + if(!newchoices.len) + return + Reset() + set_choices(newchoices,tooltips) + +/datum/radial_menu/persistent/Destroy() + QDEL_NULL(select_proc_callback) + GLOB.radial_menus -= uniqueid + Reset() + hide() + . = ..() + +/* + Creates a persistent radial menu and shows it to the user, anchored to anchor (or user if the anchor is currently in users screen). + Choices should be a list where list keys are movables or text used for element names and return value + and list values are movables/icons/images used for element icons + Select_proc is the proc to be called each time an element on the menu is clicked, and should accept the chosen element as its final argument + Clicking the center button will return a choice of null +*/ +/proc/show_radial_menu_persistent(mob/user, atom/anchor, list/choices, datum/callback/select_proc, uniqueid, radius, tooltips = FALSE) + if(!user || !anchor || !length(choices) || !select_proc) + return + if(!uniqueid) + uniqueid = "defmenu_[REF(user)]_[REF(anchor)]" + + if(GLOB.radial_menus[uniqueid]) + return + + var/datum/radial_menu/persistent/menu = new + menu.uniqueid = uniqueid + GLOB.radial_menus[uniqueid] = menu + if(radius) + menu.radius = radius + menu.select_proc_callback = select_proc + menu.anchor = anchor + menu.check_screen_border(user) //Do what's needed to make it look good near borders or on hud + menu.set_choices(choices, tooltips) + menu.show_to(user) + return menu + diff --git a/code/datums/action.dm b/code/datums/action.dm index b7089279cb..f64a549b29 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -195,11 +195,16 @@ /datum/action/item_action/toggle_firemode name = "Toggle Firemode" -/datum/action/item_action/rcl +/datum/action/item_action/rcl_col name = "Change Cable Color" icon_icon = 'icons/mob/actions/actions_items.dmi' button_icon_state = "rcl_rainbow" +/datum/action/item_action/rcl_gui + name = "Toggle Fast Wiring Gui" + icon_icon = 'icons/mob/actions/actions_items.dmi' + button_icon_state = "rcl_gui" + /datum/action/item_action/startchainsaw name = "Pull The Starting Cord" diff --git a/code/game/objects/items/RCD.dm b/code/game/objects/items/RCD.dm index 7881c277ff..3eafb0fc85 100644 --- a/code/game/objects/items/RCD.dm +++ b/code/game/objects/items/RCD.dm @@ -161,13 +161,8 @@ RLD user.visible_message("[user] sets the RCD to 'Wall' and points it down [user.p_their()] throat! It looks like [user.p_theyre()] trying to commit suicide..") return (BRUTELOSS) -/obj/item/construction/rcd/verb/toggle_window_type() - set name = "Toggle Window Type" - set category = "Object" - set src in usr // What does this do? - +/obj/item/construction/rcd/verb/toggle_window_type(mob/user) var/window_type_name - if (window_type == /obj/structure/window/fulltile) window_type = /obj/structure/window/reinforced/fulltile window_type_name = "reinforced glass" @@ -175,17 +170,14 @@ RLD window_type = /obj/structure/window/fulltile window_type_name = "glass" - to_chat(usr, "You change \the [src]'s window mode to [window_type_name].") + to_chat(user, "You change \the [src]'s window mode to [window_type_name].") -/obj/item/construction/rcd/verb/change_airlock_access() - set name = "Change Airlock Access" - set category = "Object" - set src in usr +/obj/item/construction/rcd/verb/change_airlock_access(mob/user) - if (!ishuman(usr) && !usr.has_unlimited_silicon_privilege) - return ..(usr) + if (!ishuman(user) && !user.has_unlimited_silicon_privilege) + return - var/t1 = text("") + var/t1 = "" if(use_one_access) @@ -216,24 +208,23 @@ RLD t1 += "

Close

\n" - var/datum/browser/popup = new(usr, "airlock_electronics", "Access Control", 900, 500) + var/datum/browser/popup = new(user, "rcd_access", "Access Control", 900, 500) popup.set_content(t1) - popup.set_title_image(usr.browse_rsc_icon(src.icon, src.icon_state)) + popup.set_title_image(user.browse_rsc_icon(icon, icon_state)) popup.open() - onclose(usr, "airlock") + onclose(user, "rcd_access") /obj/item/construction/rcd/Topic(href, href_list) ..() if (usr.stat || usr.restrained()) return if (href_list["close"]) - usr << browse(null, "window=airlock") + usr << browse(null, "window=rcd_access") return if (href_list["access"]) toggle_access(href_list["access"]) - - change_airlock_access() + change_airlock_access(usr) /obj/item/construction/rcd/proc/toggle_access(acc) if (acc == "all") @@ -253,16 +244,77 @@ RLD if (!conf_access.len) conf_access = null -/obj/item/construction/rcd/verb/change_airlock_setting() - set name = "Change Airlock Setting" - set category = "Object" - set src in usr +/obj/item/construction/rcd/proc/get_airlock_image(airlock_type) + var/obj/machinery/door/airlock/proto = airlock_type + var/ic = initial(proto.icon) + var/mutable_appearance/MA = mutable_appearance(ic, "closed") + if(!initial(proto.glass)) + MA.overlays += "fill_closed" + //Not scaling these down to button size because they look horrible then, instead just bumping up radius. + return MA - var/airlockcat = input(usr, "Select whether the airlock is solid or glass.") in list("Solid", "Glass") +/obj/item/construction/rcd/proc/check_menu(mob/living/user) + if(!istype(user)) + return FALSE + if(user.incapacitated() || !user.Adjacent(src)) + return FALSE + return TRUE + +/obj/item/construction/rcd/proc/change_airlock_setting(mob/user) + if(!user) + return + + var/list/solid_or_glass_choices = list( + "Solid" = get_airlock_image(/obj/machinery/door/airlock), + "Glass" = get_airlock_image(/obj/machinery/door/airlock/glass) + ) + + var/list/solid_choices = list( + "Standard" = get_airlock_image(/obj/machinery/door/airlock), + "Public" = get_airlock_image(/obj/machinery/door/airlock/public), + "Engineering" = get_airlock_image(/obj/machinery/door/airlock/engineering), + "Atmospherics" = get_airlock_image(/obj/machinery/door/airlock/atmos), + "Security" = get_airlock_image(/obj/machinery/door/airlock/security), + "Command" = get_airlock_image(/obj/machinery/door/airlock/command), + "Medical" = get_airlock_image(/obj/machinery/door/airlock/medical), + "Research" = get_airlock_image(/obj/machinery/door/airlock/research), + "Freezer" = get_airlock_image(/obj/machinery/door/airlock/freezer), + "Science" = get_airlock_image(/obj/machinery/door/airlock/science), + "Virology" = get_airlock_image(/obj/machinery/door/airlock/virology), + "Mining" = get_airlock_image(/obj/machinery/door/airlock/mining), + "Maintenance" = get_airlock_image(/obj/machinery/door/airlock/maintenance), + "External" = get_airlock_image(/obj/machinery/door/airlock/external), + "External Maintenance" = get_airlock_image(/obj/machinery/door/airlock/maintenance/external), + "Airtight Hatch" = get_airlock_image(/obj/machinery/door/airlock/hatch), + "Maintenance Hatch" = get_airlock_image(/obj/machinery/door/airlock/maintenance_hatch) + ) + + var/list/glass_choices = list( + "Standard" = get_airlock_image(/obj/machinery/door/airlock/glass), + "Public" = get_airlock_image(/obj/machinery/door/airlock/public/glass), + "Engineering" = get_airlock_image(/obj/machinery/door/airlock/engineering/glass), + "Atmospherics" = get_airlock_image(/obj/machinery/door/airlock/atmos/glass), + "Security" = get_airlock_image(/obj/machinery/door/airlock/security/glass), + "Command" = get_airlock_image(/obj/machinery/door/airlock/command/glass), + "Medical" = get_airlock_image(/obj/machinery/door/airlock/medical/glass), + "Research" = get_airlock_image(/obj/machinery/door/airlock/research/glass), + "Science" = get_airlock_image(/obj/machinery/door/airlock/science/glass), + "Virology" = get_airlock_image(/obj/machinery/door/airlock/virology/glass), + "Mining" = get_airlock_image(/obj/machinery/door/airlock/mining/glass), + "Maintenance" = get_airlock_image(/obj/machinery/door/airlock/maintenance/glass), + "External" = get_airlock_image(/obj/machinery/door/airlock/external/glass), + "External Maintenance" = get_airlock_image(/obj/machinery/door/airlock/maintenance/external/glass) + ) + + var/airlockcat = show_radial_menu(user, src , solid_or_glass_choices, custom_check = CALLBACK(src,.proc/check_menu,user)) + if(!check_menu(user)) + return switch(airlockcat) if("Solid") if(advanced_airlock_setting == 1) - var/airlockpaint = input(usr, "Select the type of the airlock.") in list("Standard", "Public", "Engineering", "Atmospherics", "Security", "Command", "Medical", "Research", "Freezer", "Science", "Virology", "Mining", "Maintenance", "External", "External Maintenance", "Airtight Hatch", "Maintenance Hatch") + var/airlockpaint = show_radial_menu(user, src , solid_choices, radius = 42, custom_check = CALLBACK(src,.proc/check_menu,user)) + if(!check_menu(user)) + return switch(airlockpaint) if("Standard") airlock_type = /obj/machinery/door/airlock @@ -305,7 +357,9 @@ RLD if("Glass") if(advanced_airlock_setting == 1) - var/airlockpaint = input(usr, "Select the type of the airlock.") in list("Standard", "Public", "Engineering", "Atmospherics", "Security", "Command", "Medical", "Research", "Science", "Virology", "Mining", "Maintenance", "External", "External Maintenance") + var/airlockpaint = show_radial_menu(user, src , glass_choices, radius = 42, custom_check = CALLBACK(src,.proc/check_menu,user)) + if(!check_menu(user)) + return switch(airlockpaint) if("Standard") airlock_type = /obj/machinery/door/airlock/glass @@ -356,8 +410,8 @@ RLD playsound(src.loc, 'sound/machines/click.ogg', 50, 1) return TRUE -/obj/item/construction/rcd/New() - ..() +/obj/item/construction/rcd/Initialize() + . = ..() GLOB.rcd_list += src /obj/item/construction/rcd/Destroy() @@ -366,19 +420,46 @@ RLD /obj/item/construction/rcd/attack_self(mob/user) ..() - switch(mode) - if(1) - mode = 2 - to_chat(user, "You change RCD's mode to 'Airlock'.") - if(2) - mode = 3 - to_chat(user, "You change RCD's mode to 'Deconstruct'.") - if(3) - mode = 4 - to_chat(user, "You change RCD's mode to 'Grilles & Windows'.") - if(4) - mode = 1 - to_chat(user, "You change RCD's mode to 'Floor & Walls'.") + var/list/choices = list( + "Airlock" = image(icon = 'icons/obj/interface.dmi', icon_state = "airlock"), + "Deconstruct" = image(icon= 'icons/obj/interface.dmi', icon_state = "delete"), + "Grilles & Windows" = image(icon = 'icons/obj/interface.dmi', icon_state = "grillewindow"), + "Floors & Walls" = image(icon = 'icons/obj/interface.dmi', icon_state = "wallfloor") + ) + if(mode == RCD_AIRLOCK) + choices += list( + "Change Access" = image(icon = 'icons/obj/interface.dmi', icon_state = "access"), + "Change Airlock Type" = image(icon = 'icons/obj/interface.dmi', icon_state = "airlocktype") + ) + else if(mode == RCD_WINDOWGRILLE) + choices += list( + "Change Window Type" = image(icon = 'icons/obj/interface.dmi', icon_state = "windowtype") + ) + var/choice = show_radial_menu(user,src,choices, custom_check = CALLBACK(src,.proc/check_menu,user)) + if(!check_menu(user)) + return + switch(choice) + if("Floors & Walls") + mode = RCD_FLOORWALL + if("Airlock") + mode = RCD_AIRLOCK + if("Deconstruct") + mode = RCD_DECONSTRUCT + if("Grilles & Windows") + mode = RCD_WINDOWGRILLE + if("Change Access") + change_airlock_access(user) + return + if("Change Airlock Type") + change_airlock_setting(user) + return + if("Change Window Type") + toggle_window_type(user) + return + else + return + playsound(src, 'sound/effects/pop.ogg', 50, 0) + to_chat(user, "You change RCD's mode to '[choice]'.") /obj/item/construction/rcd/proc/target_check(atom/A, mob/user) // only returns true for stuff the device can actually work with if((isturf(A) && A.density && mode==RCD_DECONSTRUCT) || (isturf(A) && !A.density) || (istype(A, /obj/machinery/door/airlock) && mode==RCD_DECONSTRUCT) || istype(A, /obj/structure/grille) || (istype(A, /obj/structure/window) && mode==RCD_DECONSTRUCT) || istype(A, /obj/structure/girder)) diff --git a/code/game/objects/items/RCL.dm b/code/game/objects/items/RCL.dm index bc1b128c69..18be9e7c63 100644 --- a/code/game/objects/items/RCL.dm +++ b/code/game/objects/items/RCL.dm @@ -14,13 +14,14 @@ w_class = WEIGHT_CLASS_NORMAL var/max_amount = 90 var/active = FALSE - actions_types = list(/datum/action/item_action/rcl) + actions_types = list(/datum/action/item_action/rcl_col,/datum/action/item_action/rcl_gui) var/list/colors = list("red", "yellow", "green", "blue", "pink", "orange", "cyan", "white") var/current_color_index = 1 var/ghetto = FALSE lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi' var/datum/component/mobhook + var/datum/radial_menu/persistent/wiring_gui_menu /obj/item/twohanded/rcl/attackby(obj/item/W, mob/user) if(istype(W, /obj/item/stack/cable_coil)) @@ -85,6 +86,8 @@ /obj/item/twohanded/rcl/Destroy() QDEL_NULL(loaded) last = null + QDEL_NULL(mobhook) + QDEL_NULL(wiring_gui_menu) setActive(FALSE, null) // setactive(FALSE) removes mobhook return ..() @@ -115,20 +118,28 @@ if(loaded) QDEL_NULL(loaded) loaded = null + QDEL_NULL(wiring_gui_menu) unwield(user) - setActive(wielded, user) + active = wielded return TRUE return FALSE +/obj/item/twohanded/rcl/pickup(mob/user) + ..() + getMobhook(user) + + + /obj/item/twohanded/rcl/dropped(mob/wearer) ..() if(mobhook) - setActive(FALSE, mobhook.parent) + active = FALSE + QDEL_NULL(mobhook) last = null /obj/item/twohanded/rcl/attack_self(mob/user) ..() - setActive(wielded, user) + active = wielded if(!active) last = null else if(!last) @@ -137,17 +148,24 @@ last = C break -/obj/item/twohanded/rcl/proc/setActive(toggle, mob/user) - active = toggle - if (active && user) - if (mobhook && mobhook.parent != user) +obj/item/twohanded/rcl/proc/getMobhook(mob/to_hook) + if(to_hook) + if(mobhook && mobhook.parent != to_hook) QDEL_NULL(mobhook) if (!mobhook) - mobhook = user.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/trigger))) + mobhook = to_hook.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/trigger))) else QDEL_NULL(mobhook) /obj/item/twohanded/rcl/proc/trigger(mob/user) + if(active) + layCable(user) + if(wiring_gui_menu) //update the wire options as you move + wiringGuiUpdate(user) + + +//previous contents of trigger(), lays cable each time the player moves +/obj/item/twohanded/rcl/proc/layCable(mob/user) if(!isturf(user.loc)) return if(is_empty(user, 0)) @@ -156,7 +174,7 @@ if(prob(2) && ghetto) //Give ghetto RCLs a 2% chance to jam, requiring it to be reactviated manually. to_chat(user, "[src]'s wires jam!") - setActive(FALSE, user) + active = FALSE return else if(last) @@ -179,6 +197,91 @@ is_empty(user) //If we've run out, display message update_icon() +//searches the current tile for a stub cable of the same colour +/obj/item/twohanded/rcl/proc/findLinkingCable(mob/user) + var/turf/T + if(!isturf(user.loc)) + return + + T = get_turf(user) + if(T.intact || !T.can_have_cabling()) + return + + for(var/obj/structure/cable/C in T) + if(!C) + continue + if(C.cable_color != GLOB.cable_colors[colors[current_color_index]]) + continue + if(C.d1 == 0) + return C + break + return + + +/obj/item/twohanded/rcl/proc/wiringGuiGenerateChoices(mob/user) + var/fromdir = 0 + var/obj/structure/cable/linkingCable = findLinkingCable(user) + if(linkingCable) + fromdir = linkingCable.d2 + + var/list/wiredirs = list("1","5","4","6","2","10","8","9") + for(var/icondir in wiredirs) + var/dirnum = text2num(icondir) + var/cablesuffix = "[min(fromdir,dirnum)]-[max(fromdir,dirnum)]" + if(fromdir == dirnum) //cables can't loop back on themselves + cablesuffix = "invalid" + var/image/img = image(icon = 'icons/mob/radial.dmi', icon_state = "cable_[cablesuffix]") + img.color = GLOB.cable_colors[colors[current_color_index]] + wiredirs[icondir] = img + return wiredirs + +/obj/item/twohanded/rcl/proc/showWiringGui(mob/user) + var/list/choices = wiringGuiGenerateChoices(user) + + wiring_gui_menu = show_radial_menu_persistent(user, src , choices, select_proc = CALLBACK(src, .proc/wiringGuiReact, user), radius = 42) + +/obj/item/twohanded/rcl/proc/wiringGuiUpdate(mob/user) + if(!wiring_gui_menu) + return + + wiring_gui_menu.entry_animation = FALSE //stop the open anim from playing each time we update + var/list/choices = wiringGuiGenerateChoices(user) + + wiring_gui_menu.change_choices(choices,FALSE) + + +//Callback used to respond to interactions with the wiring menu +/obj/item/twohanded/rcl/proc/wiringGuiReact(mob/living/user,choice) + if(!choice) //close on a null choice (the center button) + QDEL_NULL(wiring_gui_menu) + return + + choice = text2num(choice) + + if(!isturf(user.loc)) + return + if(is_empty(user, 0)) + to_chat(user, "\The [src] is empty!") + return + + var/turf/T = get_turf(user) + if(T.intact || !T.can_have_cabling()) + return + + loaded.item_color = colors[current_color_index] + + var/obj/structure/cable/linkingCable = findLinkingCable(user) + if(linkingCable) + if(choice != linkingCable.d2) + loaded.cable_join(linkingCable, user, FALSE, choice) + last = null + else + last = loaded.place_turf(get_turf(src), user, choice) + + is_empty(user) //If we've run out, display message + + wiringGuiUpdate(user) + /obj/item/twohanded/rcl/pre_loaded/Initialize() //Comes preloaded with cable, for testing stuff . = ..() @@ -192,12 +295,21 @@ update_icon() /obj/item/twohanded/rcl/ui_action_click(mob/user, action) - if(istype(action, /datum/action/item_action/rcl)) + if(istype(action, /datum/action/item_action/rcl_col)) current_color_index++; if (current_color_index > colors.len) current_color_index = 1 var/cwname = colors[current_color_index] to_chat(user, "Color changed to [cwname]!") + if(loaded) + loaded.item_color= colors[current_color_index] + if(wiring_gui_menu) + wiringGuiUpdate(user) + else if(istype(action, /datum/action/item_action/rcl_gui)) + if(wiring_gui_menu) //The menu is already open, close it + QDEL_NULL(wiring_gui_menu) + else //open the menu + showWiringGui(user) /obj/item/twohanded/rcl/ghetto actions_types = list() diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index afe275f9b9..032c5b6511 100755 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -112,6 +112,8 @@ LC.handlecable(C, user) return C.loaded.place_turf(src, user) + if(C.wiring_gui_menu) + C.wiringGuiUpdate(user) C.is_empty(user) /turf/attackby(obj/item/C, mob/user, params) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 7b3b2ba7bd..80e05f698f 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -639,7 +639,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai // called when cable_coil is click on an installed obj/cable // or click on a turf that already contains a "node" cable -/obj/item/stack/cable_coil/proc/cable_join(obj/structure/cable/C, mob/user, var/showerror = TRUE) +/obj/item/stack/cable_coil/proc/cable_join(obj/structure/cable/C, mob/user, showerror = TRUE, forceddir)) var/turf/U = user.loc if(!isturf(U)) return @@ -654,14 +654,14 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai return - if(U == T) //if clicked on the turf we're standing on, try to put a cable in the direction we're facing + if(U == T && !forceddir) //if clicked on the turf we're standing on and a direction wasn't supplied, try to put a cable in the direction we're facing place_turf(T,user) return var/dirn = get_dir(C, user) - // one end of the clicked cable is pointing towards us - if(C.d1 == dirn || C.d2 == dirn) + // one end of the clicked cable is pointing towards us and no direction was supplied + if((C.d1 == dirn || C.d2 == dirn) && !forceddir) if(!U.can_have_cabling()) //checking if it's a plating or catwalk if (showerror) to_chat(user, "You can only lay cables on catwalks and plating!") @@ -706,7 +706,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai return - // exisiting cable doesn't point at our position, so see if it's a stub + // exisiting cable doesn't point at our position or we have a supplied direction, so see if it's a stub else if(C.d1 == 0) // if so, make it a full cable pointing from it's old direction to our dirn var/nd1 = C.d2 // these will be the new directions diff --git a/icons/mob/actions/actions_items.dmi b/icons/mob/actions/actions_items.dmi index ca380a5376e57388c4bcce2153b8b9be6b432b35..39e2ea05841ff315803975587345cbc9d77ed745 100644 GIT binary patch literal 9131 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

MbcemB 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 literal 8842 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 M07*qoM6N<$f^em4Qvd(} diff --git a/icons/mob/radial.dmi b/icons/mob/radial.dmi index ba3179a42141d35eb72c47da7b30837da5ce09b3..cfdd0e549a04e9de6df56b619c29afb9220831d4 100644 GIT binary patch literal 15818 zcmbWe1yCHp_b$4)vq*4vclX65NCXe=Bsc_@#e!RqV8JzbaDq#4cL?smSy-HXo8SN5 z_rJI5y<4wd)z0kn^mI?l>GPfQ^_i$Qn#wqsI2>(tAOr?|NLin#K_mSB`wPYI$9=O$*-G4?Rn zQn^X~@bp*Sn$FE6cM^5begHqmW#FA?&cKVu*x4?U1czsVx3O(ZRMt||ckj`9Mdd%9 zm-hq((TtuJM>>5Yb3L^s)=hRxXmy1AAB@`n9^F5&7@1~MBRvpm2!G90p3ItR87?>x z%_}-+ieYs)M69Q3{+>Z79s9eR^O)jH1vp;WuzQkSf&uj3`hsh?{tz*$0e!oD*X;m_JzKP<4F?JlCi8)H(SX-(IAqcG zbj3p9*OxH$I8%A?D>lUZju|R9f|Z*-(&0s%(&M>>`=w&OcXZEeN1IBF4)l!b0pvdx zc?g(i7h$i7c@284P?9Oq|7>$r$)=ndlWCehB&WHQ6L9PF7OS;rV|-)ZddFn)5qI>U z*8hK=TKo|>h-%;c=M>D5dQrgCZim5RxE-T=afeB5y0s(Xa)=6CdkL-X-)bj$oaK8& z{Wud{-_dP-0RYefR25{ky|Yih`}x1x>wwABFKftgGdc*%o+0Fu@)}t=mNg0I_sTY? z9nleqxm~;p*X8h*+$`43)Sb5cTT`qPNPnFo4>Z}nr;Sw#?vWF@_dn_=44`G>^8$T=YH(=URtEOvJx8`)zZ$boaJ6s z;B<9daKfx?Z!3c4;PAYr^MT)4*U%!vog`DEanfKIiJi0EIR@WTO>O-yAK#Po0n}ew zcPU2!u(F9)LrF(3?{NUKDuAzv5y~TSmjXOyk9{)-YjOiw9mGi&z7Xe*jlDgDjVY)w z!D^}p#dUb;5gC-M=8nuyMu^VudV3$6RHU91`~yv&Qn;b#rm)^SWsweQJUS%@xftNT zchIlC(@@t{=eN;rD~HNkfR>k&J$&vEXt}tms!R6A?pz+*Zy#bl+uPf>Ed`z5kQ|={ z9uC(+$zt=vmihAV5I)-5^D$7R)lEj?kW=uae-D!l-jk&5Xb1MDa;(>O9XsaYKi2+8 z^W+5%SwII^Ior=a24y1vJe8ILP?npEcH>fd%r?|&Y3rNdPnbQb(E(*Pfu77PKr9M| zPtIM$OU<i1xWYVM z(_qc<)AvZy#w?SV+d4aYeaD_u9&!gX*j;V3p48DR1{A`FQG4zA*mP<5K_Vl;WeA;? zYVh698r}ai{o|Xg5|zb|3go2w@?T;BFU0K;G=bTKm@zKi7|VL+4SfF@fm*rD%0$#J zzGdbNj&k^4$xSSf$B_7!I?2<~`lm3<%^7;Pn3Vpj5q+5UKjp|tLxKAUWDce{V@MWu zC{k{@%mVJ(Kgdk*AYe`#Q*4f+VN83ovWR|<{t_IYoB40||K7?#Z)Me%j%HOGAjAud z#K)0KP_DH9PE5D+?zdzf-dGb)Z!{G8DL7}!t!{NE_XtLM+HcFT{nxfiqyH5at6yUDZ=l9j0IlIpU?qt(kHY z$IcHB>*GL$cu-m9tey(0@J8poopiK>FGT#Kh$MR123PF1Ii_t}SBZ zr<+;e*0e^=G5afr`0PV`T#7_;lkQq+8$XbPz0DVkrJ12nw0b?I#uNab1)BLMQo`J& zez#A30;I9|NDwe7_V2_28&5>||5P{zUT6<54l@WFwNFq^oPOpNF}G>)br=)Vucq0- z)RdEzYG(8Pmx9le&I}v3u)l*q#O{BILYdhvte{m`1&s`;2Kg6u#&gw|BtNyQtlhdL zVNW2b8wLl6dQz!LXKp%IoT1Ng4j^x}_ z*I8mRGC?{91{vG2B#@V)^#_lY!}H#aU63AI+)uX8&s#6bDq@qz%P^}K@_IRCC0AO> z-nV~*hDwj{@w+C?vT0R7Vd5Tw>VQF5u2haYtuyA9SEC8~y;eNS0mOSk^+&t@%G^px z2TwkW9E@ANCcT-NM8E+P!|Qoh;+|*!v%M?u&@%j>5TeNGTyO*KcTiek{ygq+uak*d zew_4R%vm$PB!X!`oya>Ox9$L{)l+aLe5`&|u)X`VtD){(ILQUgGTZ~+e!=(KnQ>Q|uoI_4~Mn#q-Mj2|fX{n#i0q_*K2Jm>qeCC#BBFA7w?`<22~;VT2i z2C9^`{}ZHxgM%6Zr-W-`oZdWxmNe4*H9I0x_V{8(<^o~jl2nZq3Z|iPk~*+;izxcC z?cgj2&D@nE$LH~eTLy=K*^v^0Nz=a~jrQ-}zZ5yxC$aeA>w^0+2`=Tr0%T$%Yn6Q| z5PLqmb2(sih%!~leY7+;TxN7ue~uSy2;1|1@%05Y zNUa1GZ49*Q72C}dkZ4l80xFG9PMS9U6Vl{*BLMh)4)geiZ<534Q4E2jZ+|-)Q%Y*8 zW9cNFh}85F(MrmS^69h47`A`;Jks*qJ7Hgm3fFF?X_@tm7{MeQr)K+h9& zYh)I=aKxnLIz0)M;bb(bRjqLjGa*?HYUiDBKq;Byo;QF7V76_owOfO%78x2hgcSvs zaX+s`sssfFzWjK4deWhuZ0#1BU97&n$#Tq{_*6dW3o;cjehIVIIzMKy$1fR-6;xSX zoWVUsh-&N%U)6NRiYNmR!L^Ly%g}9QB_AFtt(H$F;0~*IL_?w}$)sM5M;q6JJZH7j zYt?=A)`>y5{^#$*zlh20w9s%@7GH_)&Y=U+`IVIpeg+21o?j2HY3?778{Xztl!*ulB^>!%z&=sYYq~i;IQ?nfAvq_<2h}(gf)ar2S}+Pe^|Og!Hxt1 z&_DD89FL1UGQ+~(kVec@5Gj#vk&I%saaZ2lWZCCxqTO>YAYvS5!7LCJ3ia*@U!y%= z5d|(tz>2Trj*l063!_uw@em3Qg7cfPj@RYFZru1Rr(-pV+cxCFJR2*4v+i5yH2zy& zQV)s-1JbHU^QGvZLrHbtWuP9aib#@fnwCNGz?X;&XsL=L^WGVTv#oYFOov>x7Vzy@zJ#COUA-TsS-Xt@@qfpa%efMa@>K?1 zTe^nHyf}&Ct#m{eI z!|_*p4N*JRMl8F+!qD;X39pzLoM}QX=<<+ytgfV$Y9g@m zb8o5?aV#|ny+a&b1}zce+z)G7BaX0I!#uA~kuF(DBJ0?Xy-64Es$6_a6qhis$A0`m zWR8Bw9;jcfu6K@1xDG&{dmGh$>TVA=v*-yQdlzS0u8lJxQX z0}&fef6kJy)NJ<@t`0RGtu((drD6P=Qpe~US;Qp@Rjn~7fGjj3-IOA5aEqK8pu7Hc zJmWhtYG^*TV&PU5Iw3VGgQxjx0Rd9%Su@0bGhX%3{}q?h0et^=27`k@JN_{uA8BmQ z=xeQg2%vUrfPeaoA74*t-oiM~jwi&NlS0^Gv%bDwhsM;@G+|;wlhe5E6>bEQaC~29 zz~jZq@3@~24r}g{Qcr)J*WyZ;k1~Kp+}{c|w5TLvrTm~nKVc&rH5c>q^FzbKJ(oL! zZ(BUrj50C+;F8};DeVwkn>81tm#3rBbeSM&>HA&6=>VIt^xz*q*wr)mQBqS=m)bs8 z7(I6W{rj=f!TF$RU=V9^{2RPnb4fknfRq%gnx^y%Ru)&I%h60!hJgX>1aiO9p`j7~ z)oa}c(vy>Ov`QKO{zH?)QJSUR>&S}}4j&AFi>F@Q*NlHGG z7hEFF7cr6hEiW&Z)zl=kn11}o4#=yj;<9^$x4h12O?=5g*u%?3LYdxo64e zHSgGtZ02l~cP_AF6Mt}dYSssbi)(ynWK2OVnFQ`AxQJ3-1V`Xdwmtez&$yu+X_63p zSWTp+NobkVZZX;_buXsdPEJV)Yjr;;sP3fxtQ|P^T|&eT=JKfC_2TPqVjTD9kC7r& zuc_Jn$WvnB(Z74u87=TND*qyq1|e)mM)XgR%p`)q0_5q``?zYd$Mpa~G7Wi&`u6_B z)zx)0=wX0F2XK+K@wC4{^L(frl=K}vb*dL~l!4=Y5Q<}dn{bFQ4Lh1NtiobcaA^OQ zqDM5bL*O(Dhp%ErE{pZtY#oEXVm+?jhN**B5b4G%@ty7M#LTZD6{n}>xAm)N(QoDD zk({1a787$aFX>`gaeoL)sP1)>ObNT z4gff39s2@9RWzUtHFcfaMMJ~9gNg2p!WlU?5uB3pN?TVKwdr7gfBWxz#n-{8Qy{>7 ze@s?cIl|!)wldvwf8uFXB<7O04_= zaKwpVBM!NfD7RUI)midc(PZU9+sN@#sQbyy-ugm&j|Kzrr83Rp@hcboA2^@=Q&EpB(qBGZ^p)z1%`(rK6*( zb$n)0$w+5CIEao9F*nu_^j5LG;-*TPDHG&UtJY#4Z}?U=)S_V6 z`@FdFhychM-%wduUFA5w6|kMyj1R}+b6Dba5vK6Y)oMIV+b7;#<0V7m(Asy!h>Fxw z4Guk+Uhrq*k!B)tT$8HBdEJ{@0`Yy97v^? z{Bvr4A$l%F``SpVd@cM3BO9A){d4J>Xtqjx4cL^mn^O#z1y}|_0gE7A4J0ZhRaY^UH$vY zdK3WgH>L4K=wEi&^pSoFrWX_v%HMBCn>E5+66+$lxxLbwnx2h|S4ueKOLi|QI4gu4 z+Fj@QY?!EX>W7?tIz2q2jPh1StS;~5ADzYpNKS_Chyo5#1~r-y0suDXUT3Zzu}Ch^ zu}mSVWD`G)Moi4`h{)j?iKmTEnkra8*)c3k4v>vHzhVs>di^A>ZCgz;$$^oY%0(U+ zL4+%MRz{3mA73aG9UZxTvZ!~5x$Xb}o)Ji!qAuXSAN36l$wlKs*MvGLzx};Z5pwQX zAt9#z^E8Lh?1#(F9*^AF+|+~`2=gBOjdVn&=}o?plq^y2f4iZ%r>es+KQ%oaTvWtp zWo2dOshM#BXxU#kDOx@4`p(OqG*}Kbb?YXS&gG%*ro!_EtzG)ZAb|}plL&IMSnjhH zqwc~APvrATsP*qbWh6!3az9;;9qpO)eJg9Km>msE7&6=6Cdb>II4=JTuc@ht=-UDe zy22H?`K^rq9j|VcVfgj+bvGZQ^eYk)G(V&4fO*=y2?pUsclv_6JuVd zhlsc@Dmx)$pJ=l%K}|71%dLNB-*0hKZk&uWT?#)UezEX{=kfAtGAGeG=wRZzzw!fH zW$UA@>|+;nz25&FWVhSP{E20TFUdkJtp3x&1>44<-2T-D%IW#?4QOLthQ-CGYe;f+ z{p``ejX&b$oXzySjSG?+cx(HR-gdh2n!M|;{?PegE8p zdmJJnqKTiCuh(S|NiSdiW^-(;8xjpSX~#zNd)aLzU4;~dMSybUn*d3jtP0+TL>T|^ z3JSBDoCqgIB}w^uks3mt;kW~MN#id6``Xr)h1;Y(5@To3a-%cAFavk$;8^|xgeb3q zP(wqb?D5clNV(h{(W$HyZiWs(+XM+FQtBs%ojLWL3!WWMf0|Nu6_%`(ECSQ^|K(l2SwQE%E9Z!eI zb0&w#i!@k&H@x`4?*Y^|u@f&gw{dGViwg^ZXE(m}R}hFTLRpN}c`*y*{%I9_a*WR? zS<`t!k{Lm>0e)IVgOccWjX)n^gsw>plE?;#3b*}4P$%Z_@9h~RRemP3ovaN35BY^s zybQdnNP;VYpFVMH@9Z#Hg2uz zKg_7Jm$Og+-rM~cDF+7;)C@>LM3urtm}w%vh^xgIdJrgq?Xk_5ciF#Oq7MR^-8XHF zCl>=6N+X=NMbFw;G_&;|7FV4lRN_B(cI}VsId=)mjo6GEbOBNWL}?|zKIUBbNm@S! z-z2n$@!z2wmGaC6?UgC#1ZaK2V0H8wVqin%dn zYucKXDbm~f9^8Xyh-fAYwG;*X-@hmPn$>=2_ZsTQul*rPe=MS;U>hC2o=Mkt6%l=> z7ZxyGMoK!wKl}wL`*PV}`~c-riUQk+V%KQ^;xnJ>Tz5bmOJA8@hZy#xX!mIPGkl+X z<*>1lHeviM;1B3Vf~`0o-c3LMK>&ze-ZV7CQHV6XgUTe^PHT-D1hpS*4L(!HrC&_( zQPYbD2ZBnUdy!Q9B;~C9K)YQ_tEuhZhvnt^nOHLoI#U#h9Tel4Gy5b>#Z&dtoMWiX_XhZ7m^ z!hgt1oEaHl|D2!Sa0n6BN-iQ z>>iUhFQ+}*@1bon%M^B?(h_)J{o7nr5{968pc^+T)MA74N(97nGilbcmE6m)p&3331jq! zmw~#G?%NNO`P>uGPAM@J3TpMrM4t|;S z_mL0*HH$F?1@xU|Whz&QMW_Xc=#&*UwCn)5>QorM+Vh7Wa*x7*&EWgVrsf^n;bE29 z)zxl@?4;rFPwObA(X@c?{xbExH&savn3l5ddJ7qU6Ji+f<$e8Xyb6Ip^zeDmFPeK3 zMNZ&^7^??7&Hp)?hmwM6^sCM;a$=q7v|)pnX=6d__BI1-dAhh zhbYgfGWu=u07(=V?p$sn1WA^`wBnGN23K9%+EBm!I@t^e0QiG~Mu`DMZUGmb9(h%T zNQ@&^kaH9`b8jfoB1*x|E*;uT75#valuz8++FDjwiHx7Gk{tc{^XFjVN)-s2>a@%p zBG#a|Yu*-rBsv%6F>*4XSygN*OV_^X`qAxh>&spB3aTEr|;n|U_Z4hs!w?_O6F|SaS8DMI5 zurOZ)VIx~OUvgkNOXRFg9qs`z9Q-!eqk-MHtl#V?F?f0KJGHpl+;3@(K)8LXX>Dg% z)qlC_-kXk&LbAy;DJz~3sSHHY3ipfPwxf=Y4xAl90O#HN(?<=@SLi9;%DC;Km#AmZ zufD|ZTEUqQG(&LKqwRNOK#viK5^&LdN_jyCuJO+L)wQpwQH46#fziF^c;*u*TC3D# zeit6@p@w`-NFBm77^1q2vk3g+ZRT4nTOIIIWAHf4d+yIx_Mq4rTP|cQc)I-34yBreId;6(+a%Lu`@Tw5}$UD|-!p!sBG$KIa z`bI=~24+#|@+ptAgEMR~mx-kh&41uG~xZAFw#CJ?H_v5A!3c zJ6|4-+30>NcpnY>ORvgQ>x*pBu@ckP=SfkO=X8SuJHQcNpK&OJk>@l2nQRLSx_<=y zJf{NTy=uq&A?${7c-p+NKWTL32ej&>Arab0Sn>xY1;YMbJNTdbZ6sR<-Ta;RcXHzX zQBmP~f3-J+rn2cFjo-^{gFH?!f~{t7!Zx679f|M`yDSWZ$`5 z)vsutvw_|QIg(fVw}rvHbZ9;k9}9dB%<`gJSIL@}w4?_)vd1hPm5>%S)SO%$zGe2s zo)^Iao{?{}%#7OihT7nlu$AB-N0!L(iVV|2Vt=h*LZ$I&%}ag|wBo^?1Oc$~ z+bBYLp?c493qb(!tFp&S;;HT=gD#4tK6R4p9!=V(S&hy7f#1!s=%}e3kfDh|<2NP(Nw`Pi6tRD_+ zKYesi7?wCUTfh<7oXic3E+}GrqUYB1$c5|aydOW*F7?y>&RQdKAFF=##hWo3pYOex zT$Tba2Kn#TMjE;QsBI|JnRQ()@c}?*V;PyN2@2y!I|%qQJ6z75FQdVcTJYphr?l1E zxpa^=IP#8>iOKxzPit94jk57`w^6M7!353N_IQdPLl;A9lQMRF#&ndF*3lE zV%XS3kl57rd%u0`pEbGoLlj$q;Lkg<1&F(ymr55H7%Hl&7@7JKGf&L9&wVmsCqa)i zFW^-KO6^*9S#XQ!t_>4y64J~UvF>1`mMwq`!9*;!cL&4fj#&0>Q{GDmTJyvc{9UCY zNd9sJnz_|IlQhOrG!Dz5CCw)9ooKojsy=8_DeHGUM7*Wq(JhPJUM{8nVr(Ujqh-nP zlV4!V{+dT4H8lfc@~`#K$g2qp>}%-FR*!OE!4Nk-_{U_z_DQ*=Y}a&%%Vl;Ds*02p zodCoX)6idq8t~Fi=Sth#KP-?W5YS`|@6nHL7DfOFq%I6iuvl+)rlHXU6A%y}J`xiV zUBZdm^kRNE;r#Z?YZ4#(zW1(;RX7uMi{Jb{Y3*B!ez&u?m;K!`ycdT< z0x>#bxY&s3Quvo%Z+q`k-WRbW6Z8ZKthELLK*RpLaycs(c|Ry_dta{>xb1|84`bVm zx02;j-3wmiMow0Wi6Egt(V!n{UGOE*pq4$oin5Ot1LpzbxcIc>zt*Vf<=#F1@VOfs zgSjlq#U#M(U_HHWyFP9uleovjnQ=uQz9uE%yK)`FCBSkgU!GMB)A%-rxGMX0{e5=r z|4*I^Eee?DV9Z(p(nH`j?Id_dMeA%^cY5tQEveG@oQ%A~|oyyVaao-}=ncQiHz|hbT z$lu@JOej%*;H#4?+}{2;;m13^2mTJxy1f6N724Tw>fIHtFlMc{SllM*Ys|W3 zxM@{&!SnJERCiX@#nqn{hZc75zK#1;erqe4mZY(RVG!ZWN?{sCGBcYrGZz;Qd?up) zjr?4WSZLTwdR}5T(hG~LR(?eVmQZPe<+Kz>9lV(XM|kp@Z|@fn}VjKC4Axtf3naY50zf{8-$A#G}tS>AfbD^ z*6;s`UCFG62RXF53UJV|g9x#F6UF%(fMb8c3#UD!GBaR!ya%gDt{uajuUjhqo3T0h z9)NKNRRMqr0-8emBDdJ!L<*X+8h>@GQF^ujQB_ry>?ovd&HZ1iw~}aNB781t67L7< zri5BkE3xKhW=p{gifKY6F-EHv=V@nT_1OF9oL>zny^l|I-*|4qWIo}xay z;?km0$gKf7j_ZM|HUH71a4wYY5m_=fK@AD+w$L&i%i(hyi6(Rf5E#>5Rk)vbm%W|- zY^ScSj_v*3?db3jWNT}y?THZ(5D>kw4?kxvp@wAjCFtmGt^1v03CeqUcpyi~4>6uS z2c)tmQ1#L1tcZxiRDlpeQ{C_2E5R4@tLr~kg!3#{GqbbP(}(y8_vjXKG%@|) zIVh4EnKb1ZaM4Wn=n5oMy)W^|Tj3!l&9M|trX?}u3qdR@EiG(q6&so$F&;^vf+ zk~%y))Ad*9l<(>Z*J<%6#Tup2PcZJ{_&wl$@U*9?T$u^`{{4H4(-ueqGMv}0-t?P);lDAK*GvH!kdIO+D1d0UdIRHM1UJ7`hshc1HN5opFab@aH0d` z6DVy`3!^U0F2ZCs4f(eja;P#`{DaV^simd+gC^%b67pbJzhs`>1A=vzAB*(kM0MWz zxSbO8mlqR#K88JBgXro*fMg`C1 z{v!3xb1OmPL7Ve$#fZznlBHL05&u3kMjnN+OnAARq=m#~(JElOO@sm+AA|kL5O@p6 z^pf?&P`JG1k>VMAx`*#NAzX^R{fwPqP$+kG1jof^A5n>ZrG{6pUbzemy!<9>oadn( zVPBHZx^i8dwO)Gc*zIl_8ByCkI4I1<-g)DC3g0*2)HSaG!(@(l$-^FDlpUNmGC(<2sTrvJ71|u+wki2FlO^ILX!rRAu-B}N>I*{Z zhEp0YAJ55io}^XVeyQNW$xaogtAawV<)EFGV5{f>e>*riPdkjC5LM9igW;SQM$zzPW00?=xo)Yw_Tr_TOds zk=fHoYF-7UEYcHD^@8k`#M427b`Qg;Yl-1j!v-|b#>b{`ZiH|3ocDmyD08fLO*2|`;$ zt!(17pG~=nZk?bv0tF9+lf`Lpl=+8&vOwZZlKipCw+Q(3Mwh}{X0Sv&+BQ;^mZuK? zdww|1SH6Bp7PPgt+1?C(mX#`Ch|-!rQ0C$gmE&9{BnNDFhoWtkizT6DQPDteU4Fwc z2hM6-Wd8y)DoaYA!Ty`l;6*Mgp_wXsTZqD?PXXX0z4JXG{d4wm?#$gyV;V@d;SX_@ z+%y6BgM&A;^Y#F8LI*!&yzsGz|Cm4M3tpiHxgXd7UfAPOSUip$VPL=W4j|wH6>O?# zzJYlUD;&%TpB1Bb;R3t~TBmsHFD-G!!ug?2_#un}Tm;N+XJM=ua;j1I%lunF_}`;QKgtm}lcXQ<=l>FX|-fg&W~Z-Q98$ z8tgb*vW5u=248=({Ea+O9HuAiyg!zmH0kh&ycJsSFt9?aRrXIx<|WF}jO}R+{ysEM zWJit6k0J_yq~)5Neel6uFgO910fKpLiKQ0h!yo?ItLmo>w|DS{u(t2@4P3$^G2iIu z5V^TMK}I#RMK^5~K1OHXM93gd!e)7-v*6^d^+-xLPO`ifO@d>}ox*EDjol2G5Fv|c zAfdjHbnU5`7VvlMI_3&c!t3n(1vp!B4^y7Lx*pjd|MQX%f3+L@e)K2Nr#icJhXEiA z?s&TM!1iUlh1QWY;G%kYm++!k7r-{1E_5L5@42fLe17`9vm350lh6|5Ls^LcBxI(rADWdSZ0>=I$ zj~@iN(J}$x@YiQ((og5z{xaMjJ8A0f!Sv5B^GC}+Pho+BxMvct(~y5{h98L2 z*=w;Q1wAUPi)}pT!rngdDjYupUgTQs)^XTlpI>@9+<~~FeEo)Al4Gn@n{05MR0C2az%kS1n!LR-c zVsUZt)7jdu40Ig)biffdel9%BMq_`9>f|5B!DDvJ=miDM5Q`Yp{pWfV><+t;RanyR z6wnCs&EU20u+Z$D*%HAE0tjgw&FFU{Qc6|sLFXhKmrBea^1goM4`15QldcpJN6@wc z-exs;}((HY?op{PfQ`FC*J3>cD zi(|HJiLD+MLU&0`SEr3zNI=`XIxZq8n68UAMA2O-IOR+$;MA7EMU8`l(@q8rr?)D> zBeOSE3k&Q2dIxx08LP%0c)2~m%FVq$?tM3O@It{*L94B;ZTD5vyhq^S;q~j+KFzCC zDlsODL^fS{mJL67B0@qC;{%UK9dnl$bK&_oY_Ml~MzZrLp-TkLc0qT>{}??TK~gT; z!9)3Zd7xPjyj9D=`1$L0H^)&Q4)*+(7X5{P{l!?~=H_0IG-Z%&r>&|nWve59YQ+4( zQq04}wYOMf3KX!U@enA?fR6hfr=+D_!Al@)-Xg|bBaTh@iR0LKZzy=jaz45l{)*Mq zf{iLSc9iK3Owl969@5EKHK5}tjz!`@OL-7rAd_ zs%9jBFi#eVkS?IE;O^gy?sj5D5y9s`Fw%^^2&j8}z@#3LfptpRsZ4!~O5jtN zC(P_I<1GmG`A@X?|0kiAPXe^AIjxV0DHYV!DD#-rL*yfMkKShKDIG-2Uu}%&H9Y$AXa%cQQHhW%`6QK@_x;(IGrM~2d^^=>@p@K+@sfr@InwK!aOIgG`*6AZq8J=Q>|t3CnCv{Y$D_&v*HE?xm3Ww zJ7u9l-kp-ccb_8C(gUh=$GkYA>It;H6jD}|tys-dSb+nbn!5homFefY>hDDhKB5%r zZ6JdOVo1=a+w)2D76gbDVlsKp@*<=vETA`rd=nM}g2POIZM@BC@Mqp<5;J7>aH~%@ zMXLH}SyXY>=`PJ#44{oU(7o!5wvP_8c?KWGButrWa3rTO8uF;HZw$3oT>&zKiKuxi zFz9*?1?}gT-+haZ)MaJ0A&4UpoP%garnb}k4=s|3N@sJ8K(#gUM@yrJTLw`G(s95{SNhEHkdlt<4aT`fBGHk;K==}@+ScV zet;Vxsviw2S6NxvX8PR_3-Pw))<{)(9Qo%^K-I+DhF$!wUVj8 zQI6B7jC@k7Xgyu@hEQy0+Si-{Mdo{2e!ZzOqZoJ;62)8&4ypY5_p@m#dy{U6$hC5L zME~^rNUrb@TTt37S};+Fo%uE)mBVuRVd94uP7V;bv6QTqU){eUn3#@P;cuk&3nv!{ zkhP-C1;3Xcv~J0)z@8|eqcT)(WaGUBW~>4j^vRdI{oxnMT3>*__&vk?rTCeKPf%v9olpZ&WweXLWuwm zYZECZUzv*>GB4lPn3K;v{kqbrzn}@kygaPJq?p_C49p6k!w=aD1qJ&%b3ggbL0)LT%<>&;(oGb_63L$4{y&kxqV#|}uZTu>Dtu$ZMe zG^S$xAHY#K()&hU&0Ad~1;AttA_S_~8J%PEwUIOL?IWT$c<9%)St|7i@-vI3L^35P zt8yvMroLT+v;9U!4*FB$kn~B0Jxb_|QWNUkDiRFTMUxdno_g=E@h0#6Kpr zaATmYQvAsCmybZHdt9+ecU_9E6zRxf%_4*)oDNZ;?b|3>bFp%BK)K>otlaQT7EXq$ zYngPI{PRN`wQ%7tKslLCwKa3PRMT&VM>Vp)md#5y6n@Wbn29S9S{3TNk6R+EorX*D zL)9B)$BWjSq*5^-1c5YC_0)7TV5O}qM)-OXn6nkOTC9QHe3EA3$UD7GVsw%l@1XPy zD&JF$wc?Eg21|v>KR(=;0OXQYk8ZMgC1$=h3+n2JIr2sUyBEj`^nwN~U4PTxJ?hoMpg&dpS9oyO%pgC(y;#>65NwZ03RRn^zkY1GYjEg%m_HB7H zdMi#3?2)o?(Ktp0aM(NtEtI%j1XHR%f;g~3`j2{8?7$Fv-mBr^;kIlM1@NIbDxp3ttyk3ANH1yrp}CU4J|q{X&LxzMv|XTyn_`%y*P=if?z|eWFDb@rPLIH zhr^6d@X6nN8|jcJ$l^F;xIfxij$a)>N?KsC-zP)*g)8#LSNJh7%K&=aG>)u-s{4wD zoC6~%hn~^P%Cj;$_f^qT#x!zGv!gCb40wJ34IS4g%UEc(O`LfFL6|@nYe5;w_+{*4 z+`_Cd1l)^pIl{h;_}`k`lC9Sk@s=`Q}8lhhTX}h zB$$n9kYKv;OYF}{-2uFwldKvdo5_>Xg-+djXXs7Ez{!Mnixu3SoXjgEoXZ*Txbm#0Ix*497bInbI>BzI;JlSGlzOuPA;U_fo?P)004jp1^@s6jALRO0002bdQ@0+L}hbh za%pgMX>V=-0C=30(mM`=FboFZnViCcy=rM!mWrxkfGeOV7-A6;lt4PDKxyT0c z0V=qNZ1i%$^4(iKV)@e*|`??*jq=+v44rh{bzgukFJKgZNwWpMf+k{d&(sM z01MMeL_t(|ob8>@Ya2-x$DfzYX(xDxl{A=u35))MJ?^Q`ChV~fHVZz;85n^vn1xv< z$FVlB41_=ev2-vD$w9|3|71aBD6X%4f8^Ce`6#|0{`vPH@&Ed_e{3I)&K4pR+@RtE0O)qNaNEtQ z=US=*-oE|EAYVQJz~<)W#p~Dq*)|>X;_Si2=H_OQ_%F^LT>Rzkx5oIwYFQHChYufO zlp~q=f*o()zVULNB>{$VALR1#y>Wl&_(FYLZnZkZ0WHY$-K$Ua9GFg@f8p!cCgR%N zqC*_81QZm&$I5mY^w>P#y;?^R`a~SC1QgWc$KP8C36C2NkFRV5+jhhOOZe2s<@{d3 zj5uHkuD4KI$80;|fI?Kn0fnfD0}4?Q2Na?r4k$!L98idgIG_*}aljIAD6VS1-f(z) zwXWmAJ`o2jq0Vrc48@fr4p;&X#SMqYR{-TB9C#eQS1=FXDY7>alnSc8#qm^Z!QV&^78$5sFiVLE8+k? zE}eXF_8>@nSrL~Wp9yd}ef~|J?>?~+iYulC;g3%4!r|yFs8H5nO>nonbyK%6ylF^k zjt1g0HAZZb5};s@ujD|n5djKOX?=RO|Nip3Z)3*)>c-CxV#be6>jgM}^S`L^zuLYL zHGXVbFTh({zmHskpCiYQOX~$F4j7l#3ovB|%=5iL)w4~f&nEPJ)9JH`W5FQL_Xayh zr(=Bm^5MM$0DzsN(=mNc_w#)(AKp7Km7(-;yHXT$ZCq1~D)Cz{z?2=Z*SiG(*Uqy)I$yX8?xW9jkFKcBql$qJht7-Tr2BNV zUVy1PAbqsmraHz2d_Uf1siT?7K^-~EvcYUNlUuNkCO9D8hS62%KKeYA1D3fiIv?Hk z^5MM$>exD3FTf@^pst?9pBKd(vMd|W?fBZ{LS^xbV!n7kp06n83#Y^5Y5h=DP8F>m zic5JU1Y4oBC5di>w?$KHl)iRp4fEEtORF5;tJ~Ll0si~qm#6~#)AkLm0I8c%2cz3< zadALZd2}ssJO=mK#tVK6R;^*s&D^MRtS?fo1FF8nJl`AidbgGwuugxUEvEXXs- z_a`nw-M@cY1t~iq2i*?<;8pPsP=s|`ySA7dP}NemVdbr0-M@9>|Nd!JG|2(Ev%D(a zDO<>)DC_&fZB^=k0VN&Y{#6CXkW1G!p6YPKE;zOt)s`kU#K+D7(nAbzA#%+B^bZQPr zM?dIx?mQfoD{)+13d_XBN8xd8W3|2!l3E=QJDBNE8n0vZd!2;{=}=t1*ICpFd7L`+ zG@E`s8n;S)wDkf^trg5?6$4!Nwb42sijYr%(nYD$SBR}&lMCVxqTlOOYMHlQfT=kk zon=DnfViKFkPm&S1VV-C!gTsK`eQb1w z3w4`*uVW>yx}zmnF1n4E1I35iZDO`wfT=kkz;Xp19SC2e6X6$bGXbFP>}Y-tDn2X+ z6`yULv-JW@%>i}r@mK1Ix`v1D{jTtH@cJmewp|YbAOcL%0aZ}j!Ka=l^>BD*(X$pKlv;SL+Z5Y={G3eY21mA8;jF=qL=f~IhsB&G`Tq(M8@bl5@qPjLd)_}NXW>r1c-2o~&AgWpQ zi=(cC^&Xx%)0P-9Ri9tAE<@!oDko4qcP$5xN6*b2)~5ryW@a@#=af1i|Mga>6S?Lp z_7zi=N6)q{rm8TT>Opu6uH&$YVT0~7Q}^SoZ(lL1WM7XOnbnjRhCZ5}bF`BYT(WRd_-Za&SEv)0 z$J8C;dVb7MK)3PMV2Io-{4?2nPCTw|ytw&zr9V$NAD>oVs&|h$$l>6{u6!@qx~PLWs6BtTtHxy!kl6u(Ygr!K1efS8YE6}bUT z<*8GKN)uA4;#DIQ0AYWPDaF?jvJMy`JC$o$XnE?C!D>2Ip6?A%@%y9mF>i6v?Rc#9 zCu%@^WHy^kX0zF(*SiJ$5BG(Li=R)G5~JViz;}}$$Mo}uC(TFkm$7OYtOQsT zbJ#gL9n;YPTnSGXMf2l)5j#GTW!WIhvH^{QkGL;H+$!0rbp4;c%7NFOFNCMtt6YC8 z0n&aa{L%rIbA!+sAU=s5Kehwo=hrPd2e@7&u5u@z)af>p9RF2`kS7HSbqC;Ops6{q9Oozd2f-Xr^<}F>5y}B$$B*T}SO$Jxo*)RI z{@Ak#tpBRqm|lDDjS&6|%-Uy>G}X&r7^1}!{R#%R+fX#tjHhQimX z3|jnsLYgEkK-)ZZWycEXlC%I#4p^2!i$53AB4T$x} zD8Ll^;Y_Y5f^8l~0jAUsM{_^xmPq0;GV;+JN*$0s(&wx0heJ0;;n5Xg-%WlTAC8`m zd6p(2eXJZXc0U~EW$E`ii?y&cD?V;J96ep+XAu`{2F?z+%6>Rn7v-*sLc_Y@&e5s- zf3^l;oQ_2ukh|gj=zL5wF`1673w1x$Inf~>oqT=J?{yac-N;LDAtNuQ$;a{`-3|NG+*8Q!JSHZ>V!BnLV(z}h|g&jQmp@B9S{H(b;VR1T+oyBSTF_u zOOdW0&^1%Lj0MM~F#_b7seI+-69LAhF#<$ Date: Thu, 6 Jun 2019 18:56:26 -0500 Subject: [PATCH 219/370] clarifies a few things --- code/modules/mob/say_vr.dm | 10 +++++----- .../code/modules/vore/eating/vorepanel_vr.dm | 1 + 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/say_vr.dm b/code/modules/mob/say_vr.dm index 850566f625..66444abf91 100644 --- a/code/modules/mob/say_vr.dm +++ b/code/modules/mob/say_vr.dm @@ -7,9 +7,9 @@ /mob/proc/update_flavor_text() set src in usr if(usr != src) - usr << "No." + to_chat(usr, "No.") var/msg = stripped_multiline_input(usr, "Set the flavor text in your 'examine' verb. This can also be used for OOC notes and preferences!", "Flavor Text", html_decode(flavor_text), MAX_MESSAGE_LEN*2, TRUE) - + if(!isnull(msg)) msg = copytext(msg, 1, MAX_MESSAGE_LEN) msg = html_encode(msg) @@ -18,8 +18,8 @@ /mob/proc/warn_flavor_changed() if(flavor_text && flavor_text != "") // don't spam people that don't use it! - src << "

OOC Warning:

" - src << "Your flavor text is likely out of date! Change" + to_chat(src, "

OOC Warning:

") + to_chat(src, "Your flavor text is likely out of date! Change") /mob/proc/print_flavor_text() if(flavor_text && flavor_text != "") @@ -195,7 +195,7 @@ proc/get_top_level_mob(var/mob/S) ///////////////// VERB CODE 2 /mob/living/verb/subtler() - set name = "Subtler" + set name = "Subtler Anti-Ghost" set category = "IC" if(GLOB.say_disabled) //This is here to try to identify lag problems to_chat(usr, "Speech is currently admin-disabled.") diff --git a/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm b/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm index 2ac2628d1f..6f484e7a51 100644 --- a/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm +++ b/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm @@ -57,6 +57,7 @@ /datum/vore_look/proc/gen_vui(var/mob/living/user) var/dat dat += "Remember to toggle the vore mode, it's to the left of your combat toggle. Open mouth means you're voracious!
" + dat += "Remember that your prey is blind, use audible mode subtle messages to communicate to them with posts!
" dat += "
" var/atom/userloc = user.loc if (isbelly(userloc)) From 21fd11718a196519219d59d40c040935e9887c5e Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Fri, 7 Jun 2019 12:00:06 +1200 Subject: [PATCH 220/370] Bundled glue in with compression kit PR --- .../objects/items/devices/compressionkit.dm | 2 +- code/game/objects/items/devices/glue.dm | 32 ++++++++++++++++++ code/modules/uplink/uplink_items.dm | 8 +++++ icons/obj/device.dmi | Bin 43527 -> 48714 bytes icons/obj/tools.dmi | Bin 22240 -> 20197 bytes tgstation.dme | 1 + 6 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 code/game/objects/items/devices/glue.dm diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm index cd26a06dde..507d809c14 100644 --- a/code/game/objects/items/devices/compressionkit.dm +++ b/code/game/objects/items/devices/compressionkit.dm @@ -1,7 +1,7 @@ /obj/item/compressionkit name = "bluespace compression kit" desc = "An illegally modified BSRPED, capable of reducing the size of most items." - icon = 'icons/obj/tools.dmi' + icon = 'icons/obj/device.dmi' icon_state = "compression_c" item_state = "RPED" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' diff --git a/code/game/objects/items/devices/glue.dm b/code/game/objects/items/devices/glue.dm new file mode 100644 index 0000000000..2578f5034e --- /dev/null +++ b/code/game/objects/items/devices/glue.dm @@ -0,0 +1,32 @@ +/obj/item/syndie_glue + name = "bottle of super glue" + desc = "A black market brand of high strength adhesive, rarely sold to the public. Do not ingest." + icon = 'icons/obj/device.dmi' + icon_state = "glue" + w_class = WEIGHT_CLASS_SMALL + var/uses = 1 + +/obj/item/syndie_glue/suicide_act(mob/living/carbon/M) + return //todo + +/obj/item/syndie_glue/afterattack(atom/target, mob/user, proximity) + . = ..() + if(!proximity || !target) + return + else + if(uses == 0) + to_chat(user, "The bottle of glue is empty!") + return + if(istype(target, /obj/item)) + var/obj/item/I = target + if(I.item_flags & NODROP) + to_chat(user, "[I] is already sticky!") + return + uses -= 1 + I.item_flags |= NODROP + I.desc += " It looks sticky." + to_chat(user, "You smear the [I] with glue, making it incredibly sticky!") + if(uses == 0) + icon_state = "glue_used" + name = "empty bottle of super glue" + return \ No newline at end of file diff --git a/code/modules/uplink/uplink_items.dm b/code/modules/uplink/uplink_items.dm index 8510e0c830..32259cad32 100644 --- a/code/modules/uplink/uplink_items.dm +++ b/code/modules/uplink/uplink_items.dm @@ -1256,6 +1256,14 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) item = /obj/item/compressionkit cost = 5 +/datum/uplink_item/device_tools/syndie_glue + name = "Glue" + desc = "A cheap bottle of one use syndicate brand super glue. \ + Use on any item to make it undroppable. \ + Be careful not to glue an item you're already holding!" + item = /obj/item/syndie_glue + cost = 2 + // Implants /datum/uplink_item/implants category = "Implants" diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index becb58568ff14b0a8d215f10a556f805b1a920ee..702cbf22531dd78689568c1c05844a47a404642c 100644 GIT binary patch literal 48714 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 z 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 literal 43527 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%0AVyfvXNjR(p%-l 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 PzrcO9$MBLn=0X1f>E$!X diff --git a/icons/obj/tools.dmi b/icons/obj/tools.dmi index d3d25adea41a2c6e57f179f9e7f0e8edab8f1749..8f6b844a2374f74468aba3463fe812d801fc2087 100644 GIT binary patch literal 20197 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≤r{D~6+Zx3<|`#cc?wH} zvjg>C6C-4LokmG?(Epfx)k^ogSZjw(boI|DFm7#8zET1Vb!k@R#X@)2jw}}4y4bq5=tLU=4(1fZ5s6{alz|vHRe~d z4VX@72tV9#!zOILsB0=kLw}HmQ+KwU$l*=pXXCFmN5j4Dx!I=Vl~ETspRE0waO!!K zc&uSc=s@cb-px-^OB_%cKh{kGO~nxnplh@kcaIIvJp8CNEIK0F2*W+msdWLu1S<8q wYQ7$A>vcwAPJ`c3=?M^jO#Gi=@XIf7G=gqOR>KYwlv|Z0+P~?dSjipHgxYMjTdn2)jqto|as^)g;W=qpK|`(4_gT6+$zY zthjzVCj5M0?vSwykMmc$#yax2qs5>QeOh1B72<01h~q*fcx|#GyP8O}@~%?e0%g0I zShTV~=7V`b3H&&8*W9sFc^MJ{z5i7S_KVD3zw%ZHB`d$MQ+ZP zkF(QRpIL?^RmkVF3Xc|J;knw%pdgY))e5scE$$#J>+r`m-U58}Iq&Vzht9B{JGF1X z_Od?Z&*0|!eIb9OS>d`I;;WR+PB>tj{pL;R$_x={%}d4(s^*U()Ob~z&eld$qTC+K za5RO@R>{kN@MhWPv9Royer|HrR`&F=hHFdCZhM|fSKQ7{pL_Bv95nNnsr^fprwL(x z1-M!9gpZorXLf%5(kCd$Z09n`J>~u(-k5A6a5-XLTg04ze)TyG4fT{`6nO+$>72ue zWJE%?Vh;1d67}YppFVOijtM?IPxMJQ9qB5;KfIV-!T}~6GQ4z|6tSvd3QxLON!Lj} zPq59Y;EeRZf~g?tLGSZ1KjcRCJJ}==2jftt@mp3~6D7sHDl;;FFD0reIK*RzX3XMV zO`IsOx<<=(^z`tVP5+V9XB@v+Cflv=U1ZrVLK?bE`|9=!l^-L1vuaIm4|RneU)QCr zbSHT*bv1qR`V)$nV7w;yRWbbI^yxWhTnxY)S!wl8DSN4&dg|tPJ(Ah2Sq%6YB$&ts zgoCoU+-uy)mA~dW#s_7m)1PUg*VXA1Yk#n@O`b8=*AFQ91>@7?|DfPwp8FCOgl3>7 zHLhBx$aI;ExpR%+P2sn+7{=x2aj{tPS}dP#92OZ7v6L7=acN%Myp~8{dS5)rfa%AO z^P0fY5(>U^!e0Zx&&=2&fFA?qR~dZpOPQ=F6!530Cl5b4i4c>JeDCa(?Vi2fI_Mq5 zLrHCU5!*Jz`cqJ2c`^B(nM6o8M+H7UmB9D)>sLiHGiD$oBLhfFO9P-v$%1`=(d-ZN zuu+L!p7DtZ+LL>B)xtz8V8{kGIN!|VIybRc_>LE-s6c`H;TzrUC~jn*^Vf2F?iEfa zj!I0jP9qS9J|6PEo8`l15yQeEnXBSXWfwFDy6%z^p7$DKbTZ>?h-`lR$4{h!6i#rm zb`>b6uFCrdI}59Sa$62cDJkLE*w}FVd6qDM1awg`WJ}=z!e|WRZ9#R13-(xY^);g?n=_noKQ%NxrwW9RuBaz-PfJ}zIbbBnmkPXjasiTqi;B11k8 zWo?W8(=Nk85{m=O5t77)mV|uHiqEZ3?c*3;KxZKTa5`wq#>&b!fQ=nRM_Z~Q>V{3p z9@pkpQi)--M3I!7tfr?I2BX4Dh{tE3qAh0h@F+Pzv2rLu&fve>i+8+DPD*mhE+Uj% z=f8StNM1iz@vduc_IcliumPm{U^)E;PL@)*7;H~}G#&)%lFC=HVSvUT7l4 zllL3CzwVs7ahcOzbV05-fjf**N}q7K4#>=z-5<+X9ZsfI?y%%H{X?v6IO0vW0N{p) zr-zfVwxbcdTV`{1S^j&*R}wzNdKHJ%GME&oaTdun0x(d_+p*LtBqtTO!5q^z{i3yd- zghti~4R3Cu0PkuXU^n!h;Bs3G6C^ubANL%0Rj7=4Mqcq6f%X=^O|a6WX85&CWlPi* z36g*C8)i$XqM|}dPA*!Kt!1N4gZ4{D%Wo=={h&wE<3P`%^Jv-W^r&_6nHG)7E$4P9 z)^=<&|2fwCmDN>|d?}dMjnNbmAQk?$t9Q=Ca)gzI7f>DAb-G@QRoP0HA`IvtN+OXe zg$|oml4zG{4mfMDTR6@MPe54~E&we~V@x zjg_@J^OHrSW69i^HZb2r_8@!NytM-3*Td&@=FZ!Ah(~qb1>OATvdK99fo+L39*qEwfo4f<7MLR$Mji#0x`3=S& z1ysqr*?1^@{1`$Gd^H|`)o;stMvN%z;SJsY0(x@s4*4NSd_yp8vKh z2SvL;bHKg2iPSsOf04jW`8@~3CCOx)B!DSuV7<4op5DeS9=8`6C{S;)R4-D&En5~v zxkyx6tsw@DXH4%s?%IxkdXWrzZ=jC&$R2-|dSRj%&;!T{FMo*1k_dz{%SlUfkfh=P zqC~XG;d{M-S$Cs2*e2ftXGM|Bm^?FUe+N9hB`>3>0f33~OVGzHj|8aj00ssI=$z$P zD)(lD+i;+hz!OwvM)&S+zOR*1&xw&bk-r-v7nA){7HI|Kn-DcHru7-bNe8v{Rlu$& z`R@o???WCvD)r|9c*uJ=V*?I7FX$R zv6W_I@MFNm^#B2jgpAC>>F!tI`-jQnege#?eL&BkY4wPXp8uR>E6oXHDYP}GgcvBU zX=}5o>gm~?ivjxc>01w#>jjxVi>c%3%oBQV)@{v+=cc{sPVzy(O?YMhwQ_5lcG9Fm zX4(M~xatW;v;UaM5m8t<;R3fm^LkbpSlmqU!r>Eab)*?&B zBf`Q0^7Gkh$~BACR4e9v>sUGiXn^xoh*)#fo42Mf-TY-GCv(L3=M3_gBNOVRWW{rQm-S~ zg4UY#?h&7jTY$nXT|9JPkk!0z7UVCNMJYkR-i7 zlmHi{p7c4kyjU-itIrcuS=Xn%N1+6B7*ej1TY)?v#1RMT0HC{ff%rQ#G&DSnzRb{z zM2KpP?DO3!>*g;ZlLk3Vs|RvCnLkrK>n{v&OVAj_T{^&kf&7fH^AmC+IDR~&eTz{s zki?<#8sJ8R`CR(b03bxlW=i}AV)s8$=ih*&DFRI5yp@CL_5skhuw=DDcis6Kp((2u z@6s7CvqWV`+WykTQZ!~hG_*=ZS3zJ;*40k%2NU@}FPfS&7~(%9HjzjP{vh9hT~FL; zus;GfInfmEiw3(7FQ8|s#VYb7Bp6HO?|4D~E||=^|8&Jj1N&l7b8~zU7H&>#>TAV} z9D>Hzf~v_$s!u-#D0e+}e<>E*#QxHv@uESeRLd3$=C@7F>@kXessrj1V9htQ0+Ar4Q5g{utkRd!w$&#&3B3s-m?p6}J{MIcZ zTfFDn;M#T|)uY7;(}kJ4_w{1Q{`ROvA>#Hbh;*%?b1YbMkl-pMvXu{aY`wA-Ruh8%h@G!7kf zJwj&y6@7U0G3zO18G2D_W+07o89Fv_uIZ%$b~Y*@A-Lh79_RDt&p<1L4QRCQK8k8~ zIqxztcCX%3e*jEc90uw{-l3=PUIR=cwj>sZTO@3xH*_wC-lc_w%eYZ`Ts@PDuNoF7 zDXvr7Dg{!bat`$%GQUAfzztIcsq=FxJTVZ+e&>UK8i)S-1#OJ~nrjPW5_uJsgh!;L z4_u!rJV?PZT+K5eFfiJie2Ogx#7E4~&Ym7!aT;ExjyqnBagQ>Iv8GHiz?cYJxZYlQ zkZ?Q}6eM%5qoJgv{K23^!^g*Gc6-`=7{!7pD_3!K1YKaiohs4K5Bbxh`JUVdUc9}% z{lnNsAgFNip>2_N%xG}5Uk`9ZfGqu)tLFnaMGLs1ITfn8CMEy}dWCMTbI9@E{w|Ow zVMu8Q>Tw0jW%E)hq=i;f7UnFLf@QH_K#20P-Res?>e$DJCRet%zk+tv=2GVeK9YL& zxB7ODJyaGD%wt__r_0QNo++s}i*<0>%V0P-%!+4f$iU;!=)}ZcR8&+al5aG${;UtP zv_S0)1Zb!S(FU=(3aEj!7*8Z6AKWI3)fKs*pKV}!q8NBDnZYL&zNVzmpabx;?T*~Z zX=<(>atex&j0^_KdpNIY_l)`DKTOZ?`2Yr&%a!rODLH@JFBb=qgKn#4x4V))F7-oj z@R$}_0aFpgHE#T)_`rCp-RzoesS}jp3$G1r*4EZ|_9;(}S9|z@sHCKRpf!d?;ploZ zeeTtL^dpS#l1fwG*FSnJcIDo?$}G-RHMzRa!P0qvQO_&A`P!m`C^}9wY3%^X%3jLu zK+u7?1+Z~&zTX^7C{>?cTx^U}Q&A260r#w+l@$}O%LR{+kdUok_fHO31XhW7(7|r+ z4(0L-B@h0YnD7J~1iodyiuLz|-}dI-+}u#><*Pm+1cwXu&gC;Rh-|21LE)SL04D?a z_|{KtXN>E7+2Fg%oCRI>t!4hVIO|N8WRp3?H9 zpz}O{>%UR(dn@YL(1&{0!nPB_WFf~qEOS)A8ITp~nw1-wh2MJ3OIpXgNy-p2YfLC1vK@yU z0Ejw*z#2-9%NwWuDf&SMKoCpjZtE+yR6E0$K7e1lq`+)7&MvsE4&N^4+Zu8 z``r3eGmd57vr@WWys0NF>3Qe%POfm zutR+FDK^i4OReTwPxO0Nsv?qFu!%S#KsauoRK#(3%l=Q}2hC5*$VJ6Pqppbhm*PSm#rgtYhhK66OfwZY)Xq=2 zxi^PdSXm#7i#O@+RvFU^u1$=8i7oC!tdIB~O-XvY6?ngPiXU6uZHY^dG}P5yZnme! z&d!pZ+}!LKU-T_SV4$JR3f!6wUr`%wE-o(6IcK$%Z#_Z1bJJ(xu)%T$kPFn=OFmQu zfi1m;K*W(zP(Y3wosxnJP&~I%t@%5j53Bg|=bvAbw+n6rtv_1GkVavsdT8Kk-Cb67 z-{V3L!^2v#&#zzXi?j_T3k}3`>GvnPMA2r7uik?;qv#q%-v0WtTLA$BH}^;m?8Ao- zef!f>Q;)g0h7Wuu0)!t`WjatyWm4D@25HnngM%;8GIl2l*lndxXddx%m2i8EkYB@Q z&fW?GOU`OcSsVNAlo-d!Z?!7*fffeE3YuG)C#ZfB&8+{4s0x6moOX<%@!m zSX(PRnUBETK3E35YOYqcH)B>u>KlajHcuJ!df!u@KF^FqQ|bg zrKMqlwr$kXz%)n>6$O~uQp8HrP%^JBA{ekDjRHVNvDn$&6q@~SNng(~A&EgwQUDf>jgPLJWd4+e>x~`%gwOFQL()TRd&E<}84a9zXr0R@pVw-G{hT1B zXk{?%;=Vka(VP3T?Fj%1vz>l1h{fDlNYQ+(a$Td-eSxQ#oN?nTI)N2+JiYl6yZb)< z{+5k|n)=x%E>TfxMn*;eT3`R-m(Y&E{CH1sWSh6WJ!d?}2b1@7;TWP%zHC2}wtH4v ze2D_G3ZVH|qfmXO$x{dg01FB`pFOb{PWiezJ3Ajj<4JAo0>ABh1#V1eK=9US_F6Eh24HF2C zy4*r0Sbd)qNv<#2e7|^6%e!!gSisXkj`+p;FuZTz@VX$x{!0j?EAS9HG_%$`9qgsJa;34$ni|@^mWxt0;0oo`M8HaXj1(RRO7_oMR5z^_* z;P+8Ev9QQkRum_@bSSSKJ(6hG;ut3q-yPgbe(377@)s5^ARr(B0763gW;Yu{$@5Kp zeSN7#2+!Jv<-5w}`53ax$a6Hn>+_yY0zO(a$`(V}3hIm#;iz~jKWrvC97@B&E$sprMNx;A!|yxQuEqG)W)czb($1cr{N);7mVYZ8AiFCqc( zjm6-5vAGEc{ML>Iyej&4PMiQ3a@zW#421(P+RF4B%p?(Ku@i7q_x;~p=U5fm>u)WY*o!~R9TEF9m_4Z1NlImUz1gE&OtE=zJ<$?W$*HwKwQS*Uiu+?d}WCs7O z{^S)3*thU!BEIBWrN|jB$R^vO?O3({99y3ET{T1;TUy)L@OhS54QZ2>Qrdb9Z832B zua?o=SZ00(+>NHo^nak?knvCm;RA{((CiN0k~>p=OXrEju3w8Er8pHr-t!XFD1{5T zBTohRUpbCC2aUN@H>-Mg4r1Kn8I(EP&Sg8^LGW)JOxZ>!88M95^t!N)ZkX$nNQ}sp zo^f)b0b}9iRp%d4G)^ta?Vr6U)g9@M3%~#8(KFOj^YX+Nb*DaMqqw)^FODwH*T>n5 zi|ZhQki|O$ACM^E!utM$J|67%wGv-5QM2&Pd<13>5`A8-4_W*wG1J-&yE&& z^?s|cIoBaD=)Fdb(X)+@lK3x-t}GYO%%ZojRJd-x zqXa;9Coh-2Nc_+uWri;6G*!y^imTR`hx;N1rPuqI%>oK{#IuV>2@6;aHNc-wt9WH( z%ZG=KPRg083?Lw`_CyNZyi5j1)w0Riy`{g(Q~%q zcvdP(=>z@C_RKOtw)g*WzyD4Pb#OwqVsi5GlJu=z`(jw|=?j41G4`yF;u9q3fF7A;yIOl%Ks{R?bP6*3FEW zQoemNiz28z{~FOT)%wim8m&um(?mNmEe5nJ%)wbsLd#tb3|SYTrI3stsKD=~sU{9^b?9?Hu)pXqD(dZ?p5DFb-XwuQ|FTqG z?70#rkS8ZBESxx(F6zN$V@pr0kv@8QRu2nv)TZ!gJdVUMm$BZH&_y8#!>kEK+OvUQ zbdy0||CFkaX=WnSH6+F0Ir~1Hm`U`4sUeT>lcqo%uRF3=QE_o}osZ}9Z(1~LMS5EOXNQbpN{Br@4VMCx8Ht%kSk|Ec>Y*Io8bca$bMGZeRYiFBSprhOE2MIi3M<9H?rM5KyKK=chr4gYaszsO0;qPlN6(L$|jEufF#s@Q%9hv66 z%Hj@Ax3c|qZQA850SA?Wf{O5qQ36H;SJvUlA&SxK)je)XWI*1hVrDH#&EIX#hnKp- za)b_$($IM1v9Go1;5KvhLLuGJ^%|3M$t-UD8tW;o*L$ku;9P}-tehNFaBmcLUJH3c zx0joqk}{aXH7*W3<1Ur;*9_fRG4YQUlwAnR&cWQcB+O&icGV!iDPAxTR0&)~gI~W}LH{Xs~yav9$`_f&r7O zlL77_gI!DrFeChliHAboIuY;rb7Z_0s+3C%C)i5Tffx0LTwula1|9lCw{{vDQH*#6 zv+9$swQ(s+R7CZPV4ot3ciF%Occ)4_5_wIXu20Ot*dIik&il$(@jD+{TwL6z?#$~g-^{wYY`#f9%Pm?or-6#FDql(+cabefKh02m0&JOF5*qjBHvOFm zjbek&V0v#W=Y#HW>L<^h`O9QVorY6?S`8OEV_RM2rICt+(u0Mq&)~L)m5oj((DA@Tj;i`1qQ%_$~RCLZr8TrQW z1sJdD?v?{uD~vmM?0-K;D80VOEL%hVM&CSWhB(|smn`YM-!tkb*<={)!I{WY>iB6r z!Sm(JN}4GpDyntf=N=*d=1pZ{PY=D%JR=;4iit6aDSKC#xIK}N0R`e?fcIha-ycm3e-ct4Dn0)E{vxKCYLJ2~$+C#0k1k&RZ9q^qhw|4&}E zr*fLuQ>%d4)q;X27QYJAeoW-6B-`B|jxvVPOa5Vm$Mf7RYpJUn^<5kri4InGA9Ti? zu15c!Vq`sA#US>_F#azsKma`tXlGA%Jw9UquJmjbpr^Z+7Zwz>c7>AHtyWAPB76M7 zy0s_I`|~-!@BC(D_eCBzSEH44go=y|vJm~sZh4DEK()ic0saJed+kMs1ZGdiJ@GxN11M<#0;dSoUkQ;202G zUdDr~bPL}tuZ^|rH8nBeaoE#7bKISq0qK#6iOF7>BYx&@0${BX=ecZ7uR8mqY{4BL z`8P`D@7~2feB}4Mu-jW`An%@@c`3P`O!)9#A)aHoY^1MGx?iXYOcHYE_7L4C-ThAS zm`l1Q9>2fQ`m!2dzg1fR&vn!ITM9D z7@B0La3s0gshd($1usEz_weYU^_Vwy8lIje?>KBE@xZ5#NEP+S%FTV{gWo!Sx*3hL zM6fxMjU{Dn^`vaEK76;vad|Tc{U;CZNy{y9U|=9wICpaJsXfenis(%1iPO=NbOns) zu0qvw=hV9VA{O+MJxKR2FnORxf~W20p#=x7uw%90+Dz6BcYm5FB)!F)ot;y%ByDSz z4M#rqZCCXG&{u>SK6kb6l{xQYFqb{;#}0|XzJzMuo#aqY5!46KL4uby!Uv@ApaxXE z7-*|4wp^>F1g@7Jd5;+4C2XMzZ{Lp2jJD>!4*#b;s?9$-IXM(`I{$dTrNNzn1f`fV z9c!;yF`)JObhGaF9e8@J6Nm=md9-;WJ$n0=7k2t#E`7wyE!NOeF!S_N((5{?=Ck?n_jZB^dq-q{{OTOnvEC zUdJmeAUQ(@-YO{2Hq)R;5=h=2`M1^4dtbFJ!{cov?ZPEl9);ynsUEz7l=d(+Vni`{ z*=tR05+GcHnsdpZ+VBk>z+_9;2FW#UFQ z!R?gXiNK{!h4P<=hjZ)_(%5?io-l0aNO5e~NOJ5?LD3RP z*j>r8XY_HA%Xz6alJMKb-(=A2v;E_H(Az6`52YR4_fwHOa7&F<@*I2x%@5NXQkqFY z147v%t2*IQ=k10q{raVD(MJr!C0~8f_>*h9rrc+}{}FDg-HT2hW@cHT7hP?C$GvS> z=Zq#D8`^p)sm*L~y?_4DgesW9EY-B-8&0Ejx8~H)(2zPT%jXvOWdl=Wsi-d)wW80| ziTXGpyzBhr+q{v+cuj)$+qeIO(K__1T!O8eY;n&@(1DQ$?YoTS0Jh5eyVai48{-I% zy8D&^Q6Ro=_cdj%6~GsqECcD$o+`Ei@tI5Eu{;u+$&-jK^T8 zQw@IFlPWX1_BiaboJR^VpRPK@^A^$2c>~PAu0%TqmqKZEXn)PZWp6+;;FC$s3Jg9Q zGSUrRik8^ceJmpK{qy!Q`|bXFNw7{Q1@5EixozzA2h`N23wGp;NWx$Ul8`1WL)!(e zP_Id04NJ+zV=OXK!-8qUQ*4;+=T~$2-f~ZAbx(V~yM84D&km@@K3{}IQNZ&;fXlzb z$^W|m@_#=>RFSmpC~sM|7+lU_0b3d{LJ5yh{-^(d+h9L@nAC37?aB~=yym?nsn-QFkE&4@XgH0+%p0THoroTqQp7^pd$$7+&341N~}v?-HL{s z5JpLCD|}caMv7x+eKuXEoWZcCCj5+motwq~5Wn@qXH^YU9?WoP)k((5JHA>yOwYBp zm3M^XZ(ZlQck4YyzdS;ToX7CGOZ_MM!_!Gi*PeTxhn;UqD7f2@Gc?iW&=E%GrfB#b z-3F|5r<;S)1l|r-dO6WMTHp&->M$6SNpBP>mM9F}O!JIDf_~tQccht8(Gsx*VU7WGh@+JVy;L-nLI&)bYC0SWYmQ&7H8Gx}{y$EX(U2j%v z?I5xD!ITG?Oo%NY;!Vz3=p7 zNQ;;j#|*r#56-yDaZ_NQD>5t?gQVoDtmmK1Ro$X8vifmCId!Wkerf&^)xhN;lD^#W zzO7fTWS~K4Si4%10s2FmO}GoyOxndh^@3z~4)t0vt*I|S;B3~;`|HBnpqYHI7BWA4 zXt@86ieuICm9OXm3_zj~H%?uh)aPp^z*T?|z&x9t3~|QsO~jsi(NQvXpGv-TxafEJ zN7Q#-Z>fWTtzB0ZLdGr`xAtG(lQgF&D158KIiEJP`W_6K8!;Im+vPJWy$hGi_%V($5Wk(YX*sOdF(|OIU8M?k z6N=~u=j`zevashxiE%r_LeTEn3u08Dpr}YjBkllZWmhFa+L|;UeRO^v7#T_6ps^mWv*7;sV$V~nx{ z9|?w`i?bq$db@pwgaXLUDukbbj2A1bN_zooo^B_V-NIFvkm#|Ogo*Icfu&TAzvd7V zWIW*qcuq%c5CK}9Nra7{t3J2?wo2W~;s*&MLp}c4TlxRJu<<|SzyA+%$p2Yt=2nhJ z!-3QPE#4A6;C|z9-4TE||~b>MJwJTg~;JW#-`xp`#Op0l`R2Nowonwfq6yL(?g^e19=cYzca zGU5U<-P2^E1TyR7`~(~Q+?sU1JT7^4y}>$@E`+Y&aO0y4##(|_2!KvNWpZRBO#HV_ zkFC_!9d9a1Dgh};Ae@RJkNdeQlSz?ym4$Q*uR^!AC?f&uI=Kje-#R%jfyIF1rr0la zEhM1qC#}}Bx(k6XY%*h0RL%4;Wc=^|?(X?iOnS!uFD?M(e`_ay7;>awyc^4Gkfc9%Gz@bK;~yR3thUI_WC zC@Bee9F#R=sp{zX?d-50FggX?mFjAJ+?~?M-+r+5)Tfe7q-jo{HCb8)pOAVO8P8dT z5CXe&pK;yX;?SoTteUX`SMYn+o1buUN`rj>TBoN8TJFA7b{uQFz#SaSk1idN0CmkT z8I2|R1#oq5b|1?D6?~|Z$c*rlP%TIL1%kP00)F?VNJ3x{=_>Nw*UzUvqLOjGB}n?& z>gdO6XV&^RXcZ&yu)Aml#l5DsHqntKRa&SIn>>)~>RN;8l{>j#4HcA}5xz?AS6Q!l zef<;_9Qla&B@Msxnmm|LZyOmQ0OJhkoBZTr=1w4hL}oPJ5`juX)0h3bKSX-&ZAUri z#F$B2$jE2)TPpRmcEM?TEOG1fcsQjl=+U!9Ql)>_Tu74WBr=>PZtFA{5n?3TB*^^< zd#vHlYw%oOROD*?FxyB{PoUj-FF-SD@98;_|7UpT{zQSv#zqGTu${^YEqlORkLp`e z#W99td!1B*9K_^Yq()$8(3R#NOv0ERnVz0LMcgyqQyz5wH-?}}C4|fOm>|Vm z<78m)>X@X0{n{KvkcYDfH|{wSp?;c8_VFmR?2Vqje)vOHWOC9NG#l1b+XrW!W&@=% z)`B^WTn$c{fE{P=yc_uUP}mVQ5E|lu^cOY^njoXjt7PnD8rd}ogENK^?9Rw8CaN;qa;@eB1}e?1V4#P(&{*2PL}dk8@O zoj!iyi}nAfj{cu;@NW^#e*}>V{y%TcvufUb-`ex~iSaj&ExJ;w&T23<|F)r|E{-*i z#0b_H*WcM6;z?=yv+p65?HW^fErF}M>$7QQt79cK!VJ_tJQ;K+n2t3l%BDM^y-7kf z%5NTsCjRU7C-MJ4MMR$w+@6Rs5p=JU z|F77h&bC9T{te4U^t3MVr0ZECv?Whm;*N`p^Ld8lcoJy6x|Jq@9p|=&-@m#UdPR3q z`2fQ4!Y{0cItcQOYd<6Kn+S|Ls2%yH%dAs(Q1fX2pj)m>ujiT_Eg*rkqv#(1J(K8x z6B)ckPrz9&5p!Dict?lZe;6Q^_|0%l3^U%aQ!J6Qh4uv0x>&w5Eh{NmyRfyjB_b!c zJV^!RjEW~|;&1jozSPuwk=$(7M_hb5N(o_1y*S(ctE{pwF>Fcu4yG`>Yy-lMk{z4- zO0+B6J4cfgJRU*5u+3)3Lw|Q8^uY5HrP^CcUeujUuJbgFN-(NctPAvog zH+jt=kUMS@!{gAI%kfYvD{#fr#Fy9C13mr>%UFMY+Su55bRh~yfT>Jvn&^&*rE4>} zZ_@Ql=OA=|@`>)#?1fkW!o~&YHGUdfN&+1!OxZ^#{fJamzf>}X-|-2MQD0AW>~eks zgTcsPiz2g07q?a(u}6_i=Y?pXwrtJ1xBsn=_fOC9fU{U@l5rI(#U-6)uey?o3PLcS zmZ0D4MG57~F*#WMGeLVGzMyn5w|YHx@Mcfj+Z*ggApxj#%?dx?o#t0lgA;~n7Qfmp z)jX)pEJKozkSG8}sI@9w2`E5XDjLT|X&;jPWSb2nJ|M}o6PWW$# zdA>lI{Dw%gu*VFTKn5nJi~@vG z431l|^XKXNeBO>8#m$IENYbM=Z{I8;yW1lDYUU#uiF8-N#@qUi3iJ@aW}{W0NqxQ^ zs

r9On&U!WYnUat4xgtxa|ueRk9W(9aZK#0w|6cs~>?f|%zOz(M2AQ<9hb4m!Xk zGw*r6*D-bkON6ow=m3U#9*XWCT%P^Kx{G|eN3YVi=um?r(RBUItqZxUipa!l#wX^R zyqIhhIQ4ActenusMzL6&XV0G1A%6eX0rR8Ze{F#o((s^?5?9}|=L+B510K3nFB$bm z^+|IxhzFm*IU-I5^DL1pJ37GLVmqae4{*eND?Jt6BFU&9W?PZkB*bioxn1M`6{UA@ zu(R_k$ zcDB#)%Bw1Y8*%60;Pm3v>H^q|z?zl?w9`cG@e#MvW0r9+u%fy>~x02DfygRoes7tb?ZLop9)nXRq}6t`3x}vxw zq$qE`{fc+isyw`BO>zCQfg`AjjyNoD)Fhv-7+`ko(UwZu&G59HS*0xLyLjZgap~2z zVu~QujeJw~sS&V>D4=jgZU+~oYdiapl0pUmts@f?bETa@CR;~N>5I;h0of}l!WHsT z6TWIko*PidDkRvf(oS7+e6A_pag+*8gzp_|ep~r4NuLOI-<)=`rs!>4Y;1?v`LFlA zeSOA1s;Y>HiTywjt!-#|ydA zV~_Qs3J!Zw>{xg~D=e((LBvgOvQq`Sr^Rf$YeT6>7jo{^RHSKrpgtC8RQUMypN_NI zK0X{e^Ce4FK4BM>P0y7l#AB0SVnH+W+|b;S7m|Vm941>; zw6)#CDjX0&f{_|Lrql;(JaW=!ks7?e7r&f0b-ERACKtP0jg)Mko9kJ-Q~2#1_O%|T zW(>tL^0K|N4{N@zlO^;BZtI9V8kpj+P;Z{(E6N|0m>7};K>)yV6}#%sa{6{l4X1>h z{Ct$nRr{%Q*d3(tc@qI3b-*uQaoh3BWiaMuFNo3 ziwGC#`l^hY1QpdzEkae2vbw1S<*?;m0%&dV0pL%O6%U)7q>n`Dw_2zGTwDoYn2~gU zw?}`15|LD2J``_zbFn|u3=sv4lwHL(WP4n!kMW=10Tu51IwkrIWHzwhD?MqLlUvuH z&M2Y4y@5r|M(>D7NGpIgzwpILH!|70U?Qb0app#N;o@v=AaVxo1+M=nvK5HL(`AO~ z)uQa|cv4h=6-?*nADga%vFxY|2P%H2C8_6vf?0Wa-BODGFQ+*BFHSMNTAIYi!pY8# z-5@DL1%1wYPW|J@_{3DXN~rU@YkleaX2`Ca&po*WG2(DhP3|f(tW(u<%Z*lJkE=F8@iNVCWGA#4 zEJbjO<^lHwt3qynbd*5{PBl8T|Zae#&Jj9+}un?w9|>ZhNItgcrCRe<$>f2JO|1vE63;N=JIx= z---emu7_02EG)BUOR>#A&+XSYW8Smk7i1No`+PAL@ED5lDecKqIs|wOZ!n;a<)s)I zx^3+#B%}J-LhVyKEj4=N$W`h$7_F0c*LQZ2_m|^0d5%OHE8yRsTOQ! zu%vfZ0=cwP)AR(WzwabyCxt!&AlDZBtbI*z6{{j)?JNP(uXs?8EMOY3h}m6WqF=Cd z7H*VyR-^+x%Pn=BAG;wr%VZMDb|DZyBgChD5dhxU8V10N7{XD0-9coe2E83k{U1Ns zhsPaHogT{@VtXa$@~^eu9OI9X?`T7|a}yNHk}Wq0!&o4etyDgOQ}|miX_Km{xJ9|4 zha5Aecc@RQO$ET+)%izD75f1f3#2&SFC;WH_WWRBZbhJ*#5*V;&_rIlK)?_@Y!XOK z_u1a^deDsq_RxLVV)VDY3Zel1T=%@z+?C9ru{rM{g1-xrtX|YywZs+Oi|+cQog)BG z;v`=lvjp%PD|2;sb;V&n3JbqdFLHK*Vk2C!fv#$*j3x%eLHXjJPQJ|35+VuLEyA_G zw-k6R1}Rd6KOz%#9Q=4Ad6{$6OJnR^+0guJTYiXqRHfadM&{+?YsQ3&vtWt1@TH*< zr%m+1<*L}|(SMrSlD^lz6+fpVsZ z6QupFbxvafhzx-b=gkE2Cc-~k#Pq2;ipA=(9cOLR?;75o=`YBi2(Vr+AlV&E!8JvJ zRjM==cP`J)gG$-)!)Ev`)`w?WWoF=gzgicGRWC3Q^G~EC7~+%7H2RnJ;?E}tiJ0f- zB{`R8RLKrYJ_q44ofQp7x9OX!2J6D14;8S&CCJWP1b@FuA8nhu^Y7?!7Vz;Fe)+zT z+7~3agb&OQmsa`1-C*Yr_X0}w z>SC^sItY}y-(sMnBLkXcdQXeXI8i>G4o1+3jI*3$iFa4pDPT_ibKUVq^hA^E>DIuW zc%eUd4N`N4JoAW63yV_91!iQr+G9vMM1{hk0RgYzp)NaDn4W`19rm>ej3BtsCSQDF zD_1}JdtjR2HNf|EoEhYd8;yp!mQ0p|$Q>VVu_uLTK*b?8S0lO=`w)!ekpUyVqJ(~J zJNnAsY1rbM7ye)=KAi74|0WzLqH{F|h@H?9)Ny1z^$YmV{vQ72NkNr6SQdpk^wL`j zz3bUMag${0*uM@V%-Dg@zqfH70tt4k-phOsukLY)?S^LX+8m}|1=UpTZPpP0;7(R2 zE?_{zQj_$(E%K8&=}*&4et(_j2@djy7u$u?xLzyi)e|7y0`2xp1ganDql z9zt-}Hin5$j{^up&cusxsqPKpBe;TX6eRWvciG{n%N*LPB-F+C;)eA)`1ae5f{@6^ zTllzxcj(WW5mR}a(6g>FA@DBGKn!yId5-SRK<#uDtmj+d1jPkQ=N@9J88?&vx+1@< zc#9;UYH3=mstRvWxJyWWDk>F%-2>*IH+?Y@DIFXVMQuo(1s#4iKIhvG&2!|#ej@C} zapHnc^~(&b^Z~3B`P`Da{;aFTrfnRoQ>)xBZMh%rEB;qE6-`XD)et|>L5*-C!ZyWs zS;S=oKc&tRqh^uE2$f5p^R@fM(}Rwn$G}qTL_Xd{Pl?{_0e{=HWsM9R4@FK`F`d)H z6K;7hyZrN{>IMWtD>$%T0H9mNh7&PQlJtwad{(1 zMLAurHV%#=iB(zP^Yn}xSRzCeyOeMB- zC>X8f`#%I`??vLnE4RL)>a|s2`qk`EZs3+NVK*HiQB^$3o$)0+iX%mm#>Ap-Z;It( zwhK{WB+B%vs5opP&8n*JhJ$`O9e4kZQtOUwIhZrFDnDLoEzlI;vdqFr%XONj+{DrUe!KmhrN`j#piC zIlNZ3%{w-*)>t~nmhKgEz2r~8aYx4Q?hw<(t=DZvFy568sX~bge}7b~k0xdLNgH&v zWjy`fmCm_L0NTJd?|1~c#qXtb*l!7lnzVESWukYq^`_UNXK#BSs6L^Xr5+CY*@A7l9i*4N+Pa>poVvO1tYIXCZw)Il5bIx6Xhhrh4}a(S zWWE{mC*T7J?>gaBdmYT789!CU)cX}v_g#7#d!Bba1{LtB z_{Def|1gxiDpWTC1vLN^q=9J)DxGu=J~zi202EY=q5yX{9lWvot)pX4%7LI)%AMUl z4%7NR7mxF!>q@t1yWIGwO(BRQ+G@=~gOH+azl0LokL>Ww7+pBBzM9_p`)zw5J8~F!dN&E&7pr%lq5q678_u5_MgYC!4@E?s2>^= z!@jXN%niWwl{)Jv@N8Uf#{6{o>ekx9u$ZVp25{Q#uESLYu3SO16aAj#lzmR_;@tY6jJD0B2iJ1FvySUs$*JetGu(kr5P6K;F>+;V_bpo zzZiwtOkL__6LWC06Kg4^PqJanNSap}7O^ixd|#~Ie0av5R9VW@OP89m4ixCEwh7>v)gZh!?ozQzWlH$hNF_ad}0vpOoQ={i}JVHy6fg6>3Pxz=R)w#{C9S$OE|m>jG-^@WFhYJ+J3mf-J9%_=#Qz5UMq z9+Q3p!CD!0em#n)y2FKoi2;$6QjwnQZ#|dIRMS(nDsR}{;#{aZtK%v_RuXZ$NX3)M zuyH*xab*uk>!CRxKfTi-z4M9#cwsuftlC?b`Wul4IKzax^ z-#2=J`N!!HS1 zVR6gj!v&!S)q%$7c4Uw!m}v{LNTfm-IDrcO{z!@9<6H|@Lz-7>Z!ui%^UumKT`vxA zEI;(hwOSsDZn0lqt9!#?WdO^pp8Te#AN`owA#h6@TtNz3IS)|QNtuB#JGZ)kk#5t9OZ<Y2XG zpipIPwxI0d9}e;-f3eSo??4%W7uZvcTTx zk&vjnce#U9u@6W`$AiP-|I5NZd^ilMGvoDu`x1Jq7B<(6`H^=;0F#z*p8f{?+R;Vu zuf6gQ=^XrvnLfPo#1OALUrctaL2Co*eCgt7RYuMttB5Zx23jPesl% zw8gj2c3NA>8Qhg(hIFFcI;Uz4xmWOs-+qt&QFmVdbG`LLwJxSZ$F=S1$!5QvS>t zC08=Q@4N5**|Dp7$OC9f(V_H^s!uEqB{Tj%pYeD)?-E>L#py(j8|!{OeM>_^Pw2W3 ze8z)wQRZW}jocOs^iFFs4<{Dr{`1tX~7;QX8u>9g# z(qJ#F9NDLU5bAy|+n28^usI~G<3vtEvrv)LZdo))L~5h+h2RYKwOqo-X^&v-oC!&5BWI8 zDV1*@zIVSQ{AU)Wqx!UXag@}=w?(&*`y-yL658x!;6Gd_)qK;1#l_6f_cSH=d|#$= z!*SqSeyXx}mGr&Md#t4?b9C69*g>ut(4{_J`9#>6iDxCsytOYie8^`J-9vJjB#6)| z-6_7yVnGQ^UcTRj#E~xV{7^Jb=|v95_+|qREaqLsET4@{MmhXMz&~XxMMsY-)ezOi zhvfJj@xkgyQab2SG2aXK@J!9G3W(-nG6ke*@m-nUYtW^ z6M7E;T#tav7KKhckZUHk+FEHke9>PvsH`Gc0|+7$D2Is0E6+h&Q?c=brS5?s*RIOP zjh=ja=rbH%i7VebbqK%+PJgU8uu12`xV~6Q3o}BiqL!Adb}mhYYSh;sq;~bW#wSoS z#<3j-=#?BWOhk&37Q2k9s_>wKD`$-yNHIf|x0fcjL|Eg#eFox8F{Y`1$*sP zwb0X2WeLagTZS_al2|(3O=SyJR8Oncu@U{~VT*32kBOb*`ibfxW`WnLe|F=SwX8@y z7))3alfXWNX8gUtNj=Go%hu|ZpfLzqq$Jfo^#lwr?_sHj{HN^<{eQ__JzPmxGo0aQ z6Zm?=vv4WCi%&SJ*kj93G%~EE^=*H=($>3(fu=*xF2xA2eHt2jt`^pO^m|4OFY&w@ zkA2=)gye36;5aX*47KheYtPkdwVsoaUQRO_ug)#)8T%(Ga-d&8he8{4LcGp zek15JX{}d$h13|g*>sJr1x*g+y_p!9e6`#28?$t`YXuj{Q7rbwLMGxvD!=HdV~w(J zZ-K9 zcar18i4b@bS%l02`KS%&YOI`-{A2vEgQ-7`WfB)CBq(1!-PV@~D--ev4zyNjZY+L^ zh=n=aDZp=b+GU_$mooRQ4aeJd8l$Aa=a_#zQeBrmc52n^U&bqVcF&)A_7*pKY0%TY zb97&+VLVac&K~c@>SXVucP~Gd>_VMY8oHAO(>G1qOhuiclnS_LuTM{>hqTN}V>GB2 zSoLMn8^xJ>P)bhFyL5bGUE$dB!W9=;sLP!0wex{VA|;NDz}m|G@T{G#Z+)IkonMeX zl%I41cG)_)qW=~pQai3)QGQKl_Zub)9cFRtjGewyy1AQuPSFnzj~0r$=(mj_#O^nH zcRgPikE!t*L0?BKF{a0Dfv})AuC$O|nWSsKHowJYE1&yf#-0lpO$vNPy?a4@oOJ$X z`}0q?r2Xio8(PA`Wz@BNH}rmA0t{l3fA##zy4u2KfO%27$AAo1+f>R-#>Uf2d6*AW z=9~)^x`+G(+S=N##I`d*EBiEH=cD@xu?tf$X69$^+qypd653+ng$qG-VhhYaInj+XxvCo)igC?iJVpF1$-Iz$ z?sYbA?S#J>88PMzpS-=uDYFIXXO9dl1^d6g(a}&snR9V-OQTSzQ`y0b$tG04JwELZ z^JNXhCNo#p^@D2|^kp#L22-=t)flU`sSDPva;>h|!@uK0m#pB2@%(i8Z0@-L(Q8jb z+TZIz7vJz+0XP@YF8UKbO(vt{cA{LzR^2d47qOx-QxA$Itft^OCUIzpg3cxtEYLX zXg%?oq9WPfBiR#mp$hj%Q6$Q|^1WTI+`{sn)Jk+gfNZ5u)7StsNKIBKrzJyu0_KT!>U zjd*S^0~P*D1=|zM5D`j~HlK^!=jLRc+(EFh!i|4W@kpDM(`}HIRmHAQ6f9U*ku#Zx z;Y4dS)sG=Ps+RN`tF;q}oeDJL0Q2Q~5QiII;4VuAOSR$R;PVtcO*EaF`&TUhyg zX*?HIton;2B7UyqS#(&mz$cmyRdm9QJ=6Kjq)6>7X zB!*M!H)x|`W8e6VyLV;3=}G32T+jbStrPtHIBgL*dZbp|i=Q|?u)c&}%(tdaU-|AN zp|^|wX?}F@vaw)Nihuc`?NrTVusVNlSP34@alY6Id2N<<6DuV3z-Cs!j Date: Fri, 7 Jun 2019 12:24:36 +1200 Subject: [PATCH 221/370] Resolve conflict with gangs --- icons/obj/device.dmi | Bin 48714 -> 48834 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 702cbf22531dd78689568c1c05844a47a404642c..edaafcd24090463d0ad0c303f50dc29fed2fb92f 100644 GIT binary patch delta 28849 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 R2>3_({HgkrlE-HL{|8H12$28) delta 28728 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 dj>`- From c5f79c9da89574cb6c16671af70512403947fa45 Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Fri, 7 Jun 2019 12:30:34 +1200 Subject: [PATCH 222/370] Fine i'll put it back in tools then, will that make you happy? --- .../objects/items/devices/compressionkit.dm | 2 +- code/game/objects/items/devices/glue.dm | 2 +- icons/obj/device.dmi | Bin 48834 -> 43562 bytes icons/obj/tools.dmi | Bin 20197 -> 23204 bytes 4 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm index 507d809c14..cd26a06dde 100644 --- a/code/game/objects/items/devices/compressionkit.dm +++ b/code/game/objects/items/devices/compressionkit.dm @@ -1,7 +1,7 @@ /obj/item/compressionkit name = "bluespace compression kit" desc = "An illegally modified BSRPED, capable of reducing the size of most items." - icon = 'icons/obj/device.dmi' + icon = 'icons/obj/tools.dmi' icon_state = "compression_c" item_state = "RPED" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' diff --git a/code/game/objects/items/devices/glue.dm b/code/game/objects/items/devices/glue.dm index 2578f5034e..fed582d951 100644 --- a/code/game/objects/items/devices/glue.dm +++ b/code/game/objects/items/devices/glue.dm @@ -1,7 +1,7 @@ /obj/item/syndie_glue name = "bottle of super glue" desc = "A black market brand of high strength adhesive, rarely sold to the public. Do not ingest." - icon = 'icons/obj/device.dmi' + icon = 'icons/obj/tools.dmi' icon_state = "glue" w_class = WEIGHT_CLASS_SMALL var/uses = 1 diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index edaafcd24090463d0ad0c303f50dc29fed2fb92f..55c33e5e832f86f5fcc95aad40486aab775056bd 100644 GIT binary patch literal 43562 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 Cx_|Nj diff --git a/icons/obj/tools.dmi b/icons/obj/tools.dmi index 8f6b844a2374f74468aba3463fe812d801fc2087..cfb36bb3ae419c86acf75245224774c416f76e23 100644 GIT binary patch literal 23204 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≤r{D~6+Zx3<|`#cc?wH} zvjg>C6C-4LokmG?(Epfx)k^ogSZjw(boI|DFm7#8zET1Vb!k@R#X@)2jw}}4y4bq5=tLU=4(1fZ5s6{alz|vHRe~d z4VX@72tV9#!zOILsB0=kLw}HmQ+KwU$l*=pXXCFmN5j4Dx!I=Vl~ETspRE0waO!!K zc&uSc=s@cb-px-^OB_%cKh{kGO~nxnplh@kcaIIvJp8CNEIK0F2*W+msdWLu1S<8q wYQ7$A>vcwAPJ`c3=?M^jO#Gi=@XIf7G Date: Fri, 7 Jun 2019 03:22:26 +0200 Subject: [PATCH 223/370] Enough clowning around. --- code/_globalvars/lists/flavor_misc.dm | 50 ++++++++- code/modules/client/preferences.dm | 15 ++- code/modules/client/preferences_savefile.dm | 2 + code/modules/jobs/job_types/silicon.dm | 1 + .../mob/dead/new_player/preferences_setup.dm | 2 +- code/modules/mob/living/silicon/ai/ai.dm | 101 +++++------------- code/modules/mob/living/silicon/ai/death.dm | 5 +- icons/mob/AI.dmi | Bin 396459 -> 415765 bytes 8 files changed, 96 insertions(+), 80 deletions(-) diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm index 8b0ac278cd..47b7e2ab62 100644 --- a/code/_globalvars/lists/flavor_misc.dm +++ b/code/_globalvars/lists/flavor_misc.dm @@ -40,6 +40,54 @@ GLOBAL_LIST_EMPTY(caps_list) GLOBAL_LIST_INIT(ghost_forms_with_directions_list, list("ghost")) //stores the ghost forms that support directional sprites GLOBAL_LIST_INIT(ghost_forms_with_accessories_list, list("ghost")) //stores the ghost forms that support hair and other such things +GLOBAL_LIST_INIT(ai_core_display_screens, list( + ":thinking:", + "Alien", + "Angel", + "Banned", + "Bliss", + "Blue", + "Clown", + "Database", + "Dorf", + "Firewall", + "Fuzzy", + "Gentoo", + "Glitchman", + "Gondola", + "Goon", + "Hades", + "Heartline", + "Helios", + "House", + "Inverted", + "Matrix", + "Monochrome", + "Murica", + "Nanotrasen", + "Not Malf", + "President", + "Random", + "Rainbow", + "Red", + "Red October", + "Static", + "Syndicat Meow", + "TechDemon", + "Text", + "Too Deep", + "Triumvirate", + "Triumvirate-M", + "Weird")) + +/proc/resolve_ai_icon(input) + if(!input || !(input in GLOB.ai_core_display_screens)) + return "ai" + else + if(input == "Random") + input = pick(GLOB.ai_core_display_screens - "Random") + return "ai-[lowertext(input)]" + GLOBAL_LIST_INIT(security_depts_prefs, list(SEC_DEPT_RANDOM, SEC_DEPT_NONE, SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, SEC_DEPT_SCIENCE, SEC_DEPT_SUPPLY)) //Backpacks @@ -117,7 +165,7 @@ GLOBAL_LIST_INIT(TAGGERLOCATIONS, list("Disposals", "CMO Office", "Chemistry", "Research", "RD Office", "Robotics", "HoP Office", "Library", "Chapel", "Theatre", "Bar", "Kitchen", "Hydroponics", "Janitor Closet","Genetics", - "Circuitry", "Toxins", "Dormitories", "Virology", + "Circuitry", "Toxins", "Dormitories", "Virology", "Xenobiology", "Law Office","Detective's Office")) GLOBAL_LIST_INIT(station_prefixes, world.file2list("strings/station_prefixes.txt") + "") diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 91a329c67b..a0eea344a3 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -154,6 +154,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) ) var/list/custom_names = list() + var/preferred_ai_core_display = "Blue" var/prefered_security_department = SEC_DEPT_RANDOM var/custom_species = null @@ -303,10 +304,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) old_group = namedata["group"] dat += "
" dat += "
[namedata["pref_name"]]: [custom_names[custom_name_id]] " - dat += "
" - dat += "Custom job preferences:
" - dat += "Prefered security department: [prefered_security_department]
" + dat += "

" + dat += "Custom job preferences:
" + dat += "Preferred AI Core Display: [preferred_ai_core_display]
" + dat += "Preferred Security Department: [prefered_security_department]
" dat += "
Other Roles
" //Character Appearance @@ -1939,8 +1941,13 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_loc) uplink_spawn_loc = new_loc + if("ai_core_icon") + var/ai_core_icon = input(user, "Choose your preferred AI core display screen:", "AI Core Display Screen Selection") as null|anything in GLOB.ai_core_display_screens + if(ai_core_icon) + preferred_ai_core_display = ai_core_icon + if("sec_dept") - var/department = input(user, "Choose your prefered security department:", "Security Departments") as null|anything in GLOB.security_depts_prefs + var/department = input(user, "Choose your preferred security department:", "Security Departments") as null|anything in GLOB.security_depts_prefs if(department) prefered_security_department = department diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index c2675ba867..7401a54efc 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -284,6 +284,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car var/savefile_slot_name = custom_name_id + "_name" //TODO remove this S[savefile_slot_name] >> custom_names[custom_name_id] + S["preferred_ai_core_display"] >> preferred_ai_core_display S["prefered_security_department"] >> prefered_security_department //Jobs @@ -483,6 +484,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car var/savefile_slot_name = custom_name_id + "_name" //TODO remove this WRITE_FILE(S[savefile_slot_name],custom_names[custom_name_id]) + WRITE_FILE(S["preferred_ai_core_display"] , preferred_ai_core_display) WRITE_FILE(S["prefered_security_department"] , prefered_security_department) //Jobs diff --git a/code/modules/jobs/job_types/silicon.dm b/code/modules/jobs/job_types/silicon.dm index 662f666cf1..ab963eb8f3 100644 --- a/code/modules/jobs/job_types/silicon.dm +++ b/code/modules/jobs/job_types/silicon.dm @@ -35,6 +35,7 @@ AI qdel(lateJoinCore) var/mob/living/silicon/ai/AI = H AI.apply_pref_name("ai", M.client) //If this runtimes oh well jobcode is fucked. + AI.set_core_display_icon(null, M.client) //we may have been created after our borg if(SSticker.current_state == GAME_STATE_SETTING_UP) diff --git a/code/modules/mob/dead/new_player/preferences_setup.dm b/code/modules/mob/dead/new_player/preferences_setup.dm index fc879ed7a8..353df3aa66 100644 --- a/code/modules/mob/dead/new_player/preferences_setup.dm +++ b/code/modules/mob/dead/new_player/preferences_setup.dm @@ -28,7 +28,7 @@ if(job_engsec_high) switch(job_engsec_high) if(AI_JF) - parent.show_character_previews(image('icons/mob/ai.dmi', icon_state = "AI", dir = SOUTH)) + parent.show_character_previews(image('icons/mob/ai.dmi', resolve_ai_icon(preferred_ai_core_display), dir = SOUTH)) return if(CYBORG) parent.show_character_previews(image('icons/mob/robots.dmi', icon_state = "robot", dir = SOUTH)) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index b4524a54e6..16141b4a10 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -86,12 +86,13 @@ var/datum/action/innate/deploy_last_shell/redeploy_action = new var/chnotify = 0 - + var/multicam_on = FALSE var/obj/screen/movable/pic_in_pic/ai/master_multicam var/list/multicam_screens = list() var/list/all_eyes = list() var/max_multicams = 6 + var/display_icon_override /mob/living/silicon/ai/Initialize(mapload, datum/ai_laws/L, mob/target_ai) . = ..() @@ -127,6 +128,8 @@ create_eye() apply_pref_name("ai") + set_core_display_icon() + holo_icon = getHologramIcon(icon('icons/mob/ai.dmi',"default")) spark_system = new /datum/effect_system/spark_spread() @@ -172,81 +175,33 @@ fire_stacks = 0 . = ..() +/mob/living/silicon/ai/proc/set_core_display_icon(input, client/C) + if(client && !C) + C = client + if(!input && !C?.prefs?.preferred_ai_core_display) + icon_state = initial(icon_state) + else + var/preferred_icon = input ? input : C.prefs.preferred_ai_core_display + icon_state = resolve_ai_icon(preferred_icon) + /mob/living/silicon/ai/verb/pick_icon() set category = "AI Commands" set name = "Set AI Core Display" if(incapacitated()) return + var/list/iconstates = GLOB.ai_core_display_screens + for(var/option in iconstates) + if(option == "Random") + iconstates[option] = image(icon = src.icon, icon_state = "ai-random") + continue + iconstates[option] = image(icon = src.icon, icon_state = resolve_ai_icon(option)) - var/icontype = input("Please, select a display!", "AI", null/*, null*/) in list("Clown", ":thinking:", "Monochrome", "Blue", "Inverted", "Firewall", "Green", "Red", "Static", "Red October", "House", "Heartline", "Hades", "Helios", "President", "Syndicat Meow", "Alien", "Too Deep", "Triumvirate", "Triumvirate-M", "Text", "Matrix", "Dorf", "Bliss", "Not Malf", "Fuzzy", "Goon", "Database", "Glitchman", "Murica", "Nanotrasen", "Gentoo", "Angel", "TechDemon") //CIT CHANGE - adds 'TechDemon - if(icontype == "Clown") - icon_state = "ai-clown2" - else if (icontype == ":thinking:") - icon_state = "ai-:thinking:" - else if(icontype == "Monochrome") - icon_state = "ai-mono" - else if(icontype == "Blue") - icon_state = "ai" - else if(icontype == "Inverted") - icon_state = "ai-u" - else if(icontype == "Firewall") - icon_state = "ai-magma" - else if(icontype == "Green") - icon_state = "ai-wierd" - else if(icontype == "Red") - icon_state = "ai-malf" - else if(icontype == "Static") - icon_state = "ai-static" - else if(icontype == "Red October") - icon_state = "ai-redoctober" - else if(icontype == "House") - icon_state = "ai-house" - else if(icontype == "Heartline") - icon_state = "ai-heartline" - else if(icontype == "Hades") - icon_state = "ai-hades" - else if(icontype == "Helios") - icon_state = "ai-helios" - else if(icontype == "President") - icon_state = "ai-pres" - else if(icontype == "Syndicat Meow") - icon_state = "ai-syndicatmeow" - else if(icontype == "Alien") - icon_state = "ai-alien" - else if(icontype == "Too Deep") - icon_state = "ai-toodeep" - else if(icontype == "Triumvirate") - icon_state = "ai-triumvirate" - else if(icontype == "Triumvirate-M") - icon_state = "ai-triumvirate-malf" - else if(icontype == "Text") - icon_state = "ai-text" - else if(icontype == "Matrix") - icon_state = "ai-matrix" - else if(icontype == "Dorf") - icon_state = "ai-dorf" - else if(icontype == "Bliss") - icon_state = "ai-bliss" - else if(icontype == "Not Malf") - icon_state = "ai-notmalf" - else if(icontype == "Fuzzy") - icon_state = "ai-fuzz" - else if(icontype == "Goon") - icon_state = "ai-goon" - else if(icontype == "Database") - icon_state = "ai-database" - else if(icontype == "Glitchman") - icon_state = "ai-glitchman" - else if(icontype == "Murica") - icon_state = "ai-murica" - else if(icontype == "Nanotrasen") - icon_state = "ai-nanotrasen" - else if(icontype == "Gentoo") - icon_state = "ai-gentoo" - else if(icontype == "Angel") - icon_state = "ai-angel" - else if(icontype == "TechDemon") //CIT CHANGE - adds 'TechDemon - icon_state = "ai-techdemon" + var/ai_core_icon = show_radial_menu(src, src , iconstates, radius = 42) + if(!ai_core_icon || incapacitated()) + return + to_chat(src, "Core display screen set to \"[ai_core_icon]\".") + display_icon_override = ai_core_icon + set_core_display_icon(ai_core_icon) /mob/living/silicon/ai/Stat() ..() @@ -915,9 +870,9 @@ clear_fullscreen("remote_view", 0) /mob/living/silicon/ai/revive(full_heal = 0, admin_revive = 0) - if(..()) //successfully ressuscitated from death - icon_state = "ai" - . = 1 + . = ..() + if(.) //successfully ressuscitated from death + set_core_display_icon(display_icon_override) /mob/living/silicon/ai/proc/malfhacked(obj/machinery/power/apc/apc) malfhack = null diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm index 9b982d4bd5..301d2bd218 100644 --- a/code/modules/mob/living/silicon/ai/death.dm +++ b/code/modules/mob/living/silicon/ai/death.dm @@ -4,10 +4,13 @@ . = ..() - if("[icon_state]_dead" in icon_states(src.icon,1)) + var/old_icon = icon_state + if("[icon_state]_dead" in icon_states(icon)) icon_state = "[icon_state]_dead" else icon_state = "ai_dead" + if("[old_icon]_death_transition" in icon_states(icon)) + flick("[old_icon]_death_transition", src) cameraFollow = null diff --git a/icons/mob/AI.dmi b/icons/mob/AI.dmi index dac88d62fccee3fe18f7877184e5f452765b9096..7de815211876418d3b50e1f6c0ddab82dba2dedf 100644 GIT binary patch literal 415765 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�y{|Vbwtb~-DRVS;_0@qy~qU8j<=sG#hRyuDc`I8U&R&= zhXwTZjn^k|?xOsNbAyCel+%%gi&TqdA9v<##i&OHbayV0gv|$@T*u2ZdlNThBG80` z@?IiQc24hVRF|eG**GsPT-jrl3oy>VrL!=Ly0<|+N=PbKtm~MF_nq2WP#s&nbe#6k zCG$gcOhX5sJ~p{u*0%BXlsC0Jzt+{Uw*k9kC{_Ia`y4~5(hIcG)Wf`&a|oIp*h3d< zuI2RG!#A9b)Oq|GYg8&xFW^xUkX{$-^ugE9E3XjX5eCm>S?5b#RQpDG=UDT2y6f6B z^tz*OT#t*TNLLwloO*QLarh3^wuwnG�t=*+Y)B_{~qFRBus~0|_?x^0GY*|A!zh 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

?F(gKQvUkc~thJmvDMIQuQq!SnHL7OTN&!7tw}V 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 From a6fcac55d4ab3217b3c526590b99baa18b47d1ac Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 04:05:27 +0200 Subject: [PATCH 224/370] Makes it compile. --- code/game/objects/items/RCD.dm | 32 +++++++++++++++++++++----------- code/game/objects/items/RCL.dm | 1 - code/modules/power/cable.dm | 2 +- tgstation.dme | 1 + 4 files changed, 23 insertions(+), 13 deletions(-) diff --git a/code/game/objects/items/RCD.dm b/code/game/objects/items/RCD.dm index 3eafb0fc85..38d64be99c 100644 --- a/code/game/objects/items/RCD.dm +++ b/code/game/objects/items/RCD.dm @@ -161,7 +161,17 @@ RLD user.visible_message("[user] sets the RCD to 'Wall' and points it down [user.p_their()] throat! It looks like [user.p_theyre()] trying to commit suicide..") return (BRUTELOSS) -/obj/item/construction/rcd/verb/toggle_window_type(mob/user) +/obj/item/construction/rcd/verb/toggle_window_type_verb() + set name = "RCD : Toggle Window Type" + set category = "Object" + set src in view(1) + + if(!usr.canUseTopic(src, BE_CLOSE)) + return + + toggle_window_type(usr) + +/obj/item/construction/rcd/proc/toggle_window_type(mob/user) var/window_type_name if (window_type == /obj/structure/window/fulltile) window_type = /obj/structure/window/reinforced/fulltile @@ -306,13 +316,13 @@ RLD "External Maintenance" = get_airlock_image(/obj/machinery/door/airlock/maintenance/external/glass) ) - var/airlockcat = show_radial_menu(user, src , solid_or_glass_choices, custom_check = CALLBACK(src,.proc/check_menu,user)) + var/airlockcat = show_radial_menu(user, src, solid_or_glass_choices, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE) if(!check_menu(user)) return switch(airlockcat) if("Solid") if(advanced_airlock_setting == 1) - var/airlockpaint = show_radial_menu(user, src , solid_choices, radius = 42, custom_check = CALLBACK(src,.proc/check_menu,user)) + var/airlockpaint = show_radial_menu(user, src, solid_choices, radius = 42, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE) if(!check_menu(user)) return switch(airlockpaint) @@ -357,7 +367,7 @@ RLD if("Glass") if(advanced_airlock_setting == 1) - var/airlockpaint = show_radial_menu(user, src , glass_choices, radius = 42, custom_check = CALLBACK(src,.proc/check_menu,user)) + var/airlockpaint = show_radial_menu(user, src , glass_choices, radius = 42, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE) if(!check_menu(user)) return switch(airlockpaint) @@ -421,19 +431,19 @@ RLD /obj/item/construction/rcd/attack_self(mob/user) ..() var/list/choices = list( - "Airlock" = image(icon = 'icons/obj/interface.dmi', icon_state = "airlock"), - "Deconstruct" = image(icon= 'icons/obj/interface.dmi', icon_state = "delete"), - "Grilles & Windows" = image(icon = 'icons/obj/interface.dmi', icon_state = "grillewindow"), - "Floors & Walls" = image(icon = 'icons/obj/interface.dmi', icon_state = "wallfloor") + "Airlock" = image(icon = 'icons/mob/radial.dmi', icon_state = "airlock"), + "Deconstruct" = image(icon= 'icons/mob/radial.dmi', icon_state = "delete"), + "Grilles & Windows" = image(icon = 'icons/mob/radial.dmi', icon_state = "grillewindow"), + "Floors & Walls" = image(icon = 'icons/mob/radial.dmi', icon_state = "wallfloor") ) if(mode == RCD_AIRLOCK) choices += list( - "Change Access" = image(icon = 'icons/obj/interface.dmi', icon_state = "access"), - "Change Airlock Type" = image(icon = 'icons/obj/interface.dmi', icon_state = "airlocktype") + "Change Access" = image(icon = 'icons/mob/radial.dmi', icon_state = "access"), + "Change Airlock Type" = image(icon = 'icons/mob/radial.dmi', icon_state = "airlocktype") ) else if(mode == RCD_WINDOWGRILLE) choices += list( - "Change Window Type" = image(icon = 'icons/obj/interface.dmi', icon_state = "windowtype") + "Change Window Type" = image(icon = 'icons/mob/radial.dmi', icon_state = "windowtype") ) var/choice = show_radial_menu(user,src,choices, custom_check = CALLBACK(src,.proc/check_menu,user)) if(!check_menu(user)) diff --git a/code/game/objects/items/RCL.dm b/code/game/objects/items/RCL.dm index 18be9e7c63..cea8165e02 100644 --- a/code/game/objects/items/RCL.dm +++ b/code/game/objects/items/RCL.dm @@ -88,7 +88,6 @@ last = null QDEL_NULL(mobhook) QDEL_NULL(wiring_gui_menu) - setActive(FALSE, null) // setactive(FALSE) removes mobhook return ..() /obj/item/twohanded/rcl/update_icon() diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 80e05f698f..a3dc6e7394 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -639,7 +639,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai // called when cable_coil is click on an installed obj/cable // or click on a turf that already contains a "node" cable -/obj/item/stack/cable_coil/proc/cable_join(obj/structure/cable/C, mob/user, showerror = TRUE, forceddir)) +/obj/item/stack/cable_coil/proc/cable_join(obj/structure/cable/C, mob/user, showerror = TRUE, forceddir) var/turf/U = user.loc if(!isturf(U)) return diff --git a/tgstation.dme b/tgstation.dme index 739176a457..bc38804f79 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -199,6 +199,7 @@ #include "code\_onclick\hud\picture_in_picture.dm" #include "code\_onclick\hud\plane_master.dm" #include "code\_onclick\hud\radial.dm" +#include "code\_onclick\hud\radial_persistent.dm" #include "code\_onclick\hud\revenanthud.dm" #include "code\_onclick\hud\robot.dm" #include "code\_onclick\hud\screen_objects.dm" From 455332a717e916d879ce09ade9e3c8a46387b7bd Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 04:20:15 +0200 Subject: [PATCH 225/370] movin back to the core when selecting a new display. --- code/modules/mob/living/silicon/ai/ai.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 16141b4a10..46576a357f 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -196,10 +196,11 @@ continue iconstates[option] = image(icon = src.icon, icon_state = resolve_ai_icon(option)) + view_core() var/ai_core_icon = show_radial_menu(src, src , iconstates, radius = 42) + if(!ai_core_icon || incapacitated()) return - to_chat(src, "Core display screen set to \"[ai_core_icon]\".") display_icon_override = ai_core_icon set_core_display_icon(ai_core_icon) From f8903a871e4c68de212b1eb1f9e5c7a5b093e5d2 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 04:55:05 +0200 Subject: [PATCH 226/370] Another episode of "fixing that stupid map edge bug again". --- code/game/atoms_movable.dm | 1 + code/game/turfs/space/space.dm | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index e56f6d366c..c37c120b93 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -31,6 +31,7 @@ var/atom/movable/pulling var/grab_state = 0 var/throwforce = 0 + var/can_be_z_moved = TRUE /atom/movable/vv_edit_var(var_name, var_value) var/static/list/banned_edits = list("step_x", "step_y", "step_size") diff --git a/code/game/turfs/space/space.dm b/code/game/turfs/space/space.dm index 3e7968a9d7..9ebe8f3c19 100644 --- a/code/game/turfs/space/space.dm +++ b/code/game/turfs/space/space.dm @@ -134,7 +134,7 @@ if ((!(A) || src != A.loc)) return - if(destination_z && destination_x && destination_y) + if(destination_z && destination_x && destination_y && !(A.pulledby || !A.can_be_z_moved)) var/tx = destination_x var/ty = destination_y var/turf/DT = locate(tx, ty, destination_z) @@ -157,8 +157,10 @@ A.forceMove(DT) if(AM) var/turf/T = get_step(A.loc,turn(A.dir, 180)) + AM.can_be_z_moved = FALSE AM.forceMove(T) A.start_pulling(AM) + AM.can_be_z_moved = TRUE //now we're on the new z_level, proceed the space drifting stoplag()//Let a diagonal move finish, if necessary From 38dbdf1a48e8dd285d9838abc85a4b31a57ed9b4 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Thu, 6 Jun 2019 21:55:35 -0500 Subject: [PATCH 227/370] Gives Ninjas back their Weeb speech modification --- code/modules/ninja/suit/mask.dm | 41 +++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/code/modules/ninja/suit/mask.dm b/code/modules/ninja/suit/mask.dm index 81d37886dd..2200af7cab 100644 --- a/code/modules/ninja/suit/mask.dm +++ b/code/modules/ninja/suit/mask.dm @@ -17,3 +17,44 @@ Contents: item_state = "s-ninja_mask" strip_delay = 120 resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + +/obj/item/clothing/mask/gas/space_ninja/speechModification(message) + if(copytext(message, 1, 2) != "*") + var/list/temp_message = text2list(message, " ") + var/list/pick_list = list() + for(var/i = 1, i <= temp_message.len, i++) + pick_list += i + for(var/i=1, i <= abs(temp_message.len/3), i++) + var/H = pick(pick_list) + if(findtext(temp_message[H], "*") || findtext(temp_message[H], ";") || findtext(temp_message[H], ":")) continue + temp_message[H] = ninjaspeak(temp_message[H]) + pick_list -= H + message = list2text(temp_message, " ") + + //The Alternate speech mod is now the main one. + message = replacetext(message, "l", "r") + message = replacetext(message, "rr", "ru") + message = replacetext(message, "v", "b") + message = replacetext(message, "f", "hu") + message = replacetext(message, "'t", "") + message = replacetext(message, "t ", "to ") + message = replacetext(message, " I ", " ai ") + message = replacetext(message, "th", "z") + message = replacetext(message, "is", "izu") + message = replacetext(message, "ziz", "zis") + message = replacetext(message, "se", "su") + message = replacetext(message, "br", "bur") + message = replacetext(message, "ry", "ri") + message = replacetext(message, "you", "yuu") + message = replacetext(message, "ck", "cku") + message = replacetext(message, "eu", "uu") + message = replacetext(message, "ow", "au") + message = replacetext(message, "are", "aa") + message = replacetext(message, "ay", "ayu") + message = replacetext(message, "ea", "ii") + message = replacetext(message, "ch", "chi") + message = replacetext(message, "than", "sen") + message = replacetext(message, ".", "") + message = lowertext(message) + + return message From 7aac9e62807607a098ed89bfd89a822c4a1a447a Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 06:27:04 +0200 Subject: [PATCH 228/370] Updates reagents a bit. --- code/__DEFINES/flags.dm | 3 --- code/__DEFINES/reagents.dm | 3 ++- code/_globalvars/bitfields.dm | 6 ++--- code/game/atoms.dm | 13 +++++----- code/game/machinery/limbgrower.dm | 3 +-- .../mecha/equipment/tools/medical_tools.dm | 5 ++-- code/game/objects/items/cigs_lighters.dm | 16 +++++------- code/game/objects/items/extinguisher.dm | 3 +-- .../objects/items/implants/implant_chem.dm | 3 +-- code/game/objects/items/tanks/watertank.dm | 5 ++-- code/game/objects/items/tools/weldingtool.dm | 4 +-- code/game/objects/structures/janicart.dm | 3 +-- code/game/objects/structures/mop_bucket.dm | 3 +-- .../detectivework/footprints_and_rag.dm | 2 +- code/modules/food_and_drinks/drinks/drinks.dm | 7 +++--- code/modules/food_and_drinks/food.dm | 2 +- .../modules/food_and_drinks/food/condiment.dm | 2 +- .../food_and_drinks/food/customizables.dm | 2 +- .../kitchen_machinery/deep_fryer.dm | 3 +-- .../kitchen_machinery/food_cart.dm | 4 +-- .../kitchen_machinery/icecream_vat.dm | 4 +-- .../kitchen_machinery/microwave.dm | 3 --- .../kitchen_machinery/smartfridge.dm | 3 +-- code/modules/hydroponics/fermenting_barrel.dm | 9 ++++--- code/modules/hydroponics/grown/replicapod.dm | 3 +-- code/modules/hydroponics/plant_genes.dm | 4 +-- .../integrated_electronics/passive/power.dm | 5 ++-- .../subtypes/reagents.dm | 20 +++++++++------ code/modules/paperwork/pen.dm | 5 +--- code/modules/power/cell.dm | 3 +-- .../ammunition/ballistic/shotgun.dm | 18 ++++++------- .../modules/projectiles/guns/misc/chem_gun.dm | 3 +-- .../projectile/bullets/dart_syringe.dm | 5 ++-- code/modules/reagents/chemistry/holder.dm | 25 ++++++++----------- code/modules/reagents/chemistry/readme.md | 2 +- code/modules/reagents/reagent_containers.dm | 3 ++- .../reagents/reagent_containers/dropper.dm | 2 +- .../reagents/reagent_containers/glass.dm | 11 +++----- .../reagents/reagent_containers/hypospray.dm | 8 +++--- .../reagents/reagent_containers/medspray.dm | 2 +- .../reagents/reagent_containers/spray.dm | 4 +-- .../reagents/reagent_containers/syringes.dm | 7 ++---- code/modules/reagents/reagent_dispenser.dm | 3 +-- .../modules/research/machinery/_production.dm | 3 +-- .../research/machinery/circuit_imprinter.dm | 1 - .../departmental_circuit_imprinter.dm | 1 - .../machinery/departmental_protolathe.dm | 1 - .../machinery/departmental_techfab.dm | 1 - code/modules/research/machinery/protolathe.dm | 1 - code/modules/research/machinery/techfab.dm | 1 - .../xenobiology/crossbreeding/__corecross.dm | 13 +++++++--- .../xenobiology/crossbreeding/burning.dm | 3 +-- .../xenobiology/crossbreeding/charged.dm | 3 +-- .../xenobiology/crossbreeding/chilling.dm | 3 +-- .../xenobiology/crossbreeding/industrial.dm | 3 +-- .../research/xenobiology/xenobiology.dm | 3 +-- 56 files changed, 118 insertions(+), 163 deletions(-) diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm index ad9aef5a8b..60148e0388 100644 --- a/code/__DEFINES/flags.dm +++ b/code/__DEFINES/flags.dm @@ -56,9 +56,6 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204 #define FLYING (1<<1) #define VENTCRAWLING (1<<2) -// Flags for reagents -#define REAGENT_NOREACT (1<<0) - //Fire and Acid stuff, for resistance_flags #define LAVA_PROOF (1<<0) #define FIRE_PROOF (1<<1) //100% immune to fire damage (but not necessarily to lava or heat) diff --git a/code/__DEFINES/reagents.dm b/code/__DEFINES/reagents.dm index f8f59a367f..c3682d905d 100644 --- a/code/__DEFINES/reagents.dm +++ b/code/__DEFINES/reagents.dm @@ -2,7 +2,7 @@ #define LIQUID 2 #define GAS 3 -// container_type defines +// reagents_flags defines #define INJECTABLE (1<<0) // Makes it possible to add reagents through droppers and syringes. #define DRAWABLE (1<<1) // Makes it possible to remove reagents through syringes. @@ -11,6 +11,7 @@ #define TRANSPARENT (1<<4) // Used on containers which you want to be able to see the reagents off. #define AMOUNT_VISIBLE (1<<5) // For non-transparent containers that still have the general amount of reagents in them visible. +#define NO_REACT (1<<6) // Applied to a reagent holder, the contents will not react with each other. // Is an open container for all intents and purposes. #define OPENCONTAINER (REFILLABLE | DRAINABLE | TRANSPARENT) diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm index 835a733752..c37e6fa531 100644 --- a/code/_globalvars/bitfields.dm +++ b/code/_globalvars/bitfields.dm @@ -115,9 +115,6 @@ GLOBAL_LIST_INIT(bitfields, list( "GOLIATH_RESISTANCE" = GOLIATH_RESISTANCE, "GOLIATH_WEAKNESS" = GOLIATH_WEAKNESS ), - "reagents_holder_flags" = list( - "REAGENT_NOREACT" = REAGENT_NOREACT - ), "flags_1" = list( "NOJAUNT_1" = NOJAUNT_1, "UNUSED_RESERVATION_TURF_1" = UNUSED_RESERVATION_TURF_1, @@ -158,13 +155,14 @@ GLOBAL_LIST_INIT(bitfields, list( "SMOOTH_BORDER" = SMOOTH_BORDER, "SMOOTH_QUEUED" = SMOOTH_QUEUED, ), - "container_type" = list( + "reagents_holder_flags" = list( "INJECTABLE" = INJECTABLE, "DRAWABLE" = DRAWABLE, "REFILLABLE" = REFILLABLE, "DRAINABLE" = DRAINABLE, "TRANSPARENT" = TRANSPARENT, "AMOUNT_VISIBLE" = AMOUNT_VISIBLE, + "NO_REACT" = NO_REACT, ), "car_traits" = list( "CAN_KIDNAP" = CAN_KIDNAP, diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 48596a0b6d..81e2371f9a 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -6,7 +6,6 @@ var/flags_1 = NONE var/interaction_flags_atom = NONE - var/container_type = NONE var/datum/reagents/reagents = null //This atom's HUD (med/sec, etc) images. Associative list. @@ -203,16 +202,16 @@ return is_refillable() && is_drainable() /atom/proc/is_injectable(allowmobs = TRUE) - return reagents && (container_type & (INJECTABLE | REFILLABLE)) + return reagents && (reagents.reagents_holder_flags & (INJECTABLE | REFILLABLE)) /atom/proc/is_drawable(allowmobs = TRUE) - return reagents && (container_type & (DRAWABLE | DRAINABLE)) + return reagents && (reagents.reagents_holder_flags & (DRAWABLE | DRAINABLE)) /atom/proc/is_refillable() - return reagents && (container_type & REFILLABLE) + return reagents && (reagents.reagents_holder_flags & REFILLABLE) /atom/proc/is_drainable() - return reagents && (container_type & DRAINABLE) + return reagents && (reagents.reagents_holder_flags & DRAINABLE) /atom/proc/AllowDrop() @@ -261,7 +260,7 @@ to_chat(user, desc) if(reagents) - if(container_type & TRANSPARENT) + if(reagents.reagents_holder_flags & TRANSPARENT) to_chat(user, "It contains:") if(reagents.reagent_list.len) if(user.can_see_reagents()) //Show each individual reagent @@ -274,7 +273,7 @@ to_chat(user, "[total_volume] units of various reagents") else to_chat(user, "Nothing.") - else if(container_type & AMOUNT_VISIBLE) + else if(reagents.reagents_holder_flags & AMOUNT_VISIBLE) if(reagents.total_volume) to_chat(user, "It has [reagents.total_volume] unit\s left.") else diff --git a/code/game/machinery/limbgrower.dm b/code/game/machinery/limbgrower.dm index 8a0658fd0f..a3250fe1b0 100644 --- a/code/game/machinery/limbgrower.dm +++ b/code/game/machinery/limbgrower.dm @@ -10,7 +10,6 @@ icon = 'icons/obj/machines/limbgrower.dmi' icon_state = "limbgrower_idleoff" density = TRUE - container_type = OPENCONTAINER use_power = IDLE_POWER_USE idle_power_usage = 10 active_power_usage = 100 @@ -34,7 +33,7 @@ ) /obj/machinery/limbgrower/Initialize() - create_reagents(100) + create_reagents(100, OPENCONTAINER) stored_research = new /datum/techweb/specialized/autounlocking/limbgrower . = ..() diff --git a/code/game/mecha/equipment/tools/medical_tools.dm b/code/game/mecha/equipment/tools/medical_tools.dm index 99baad11ae..ba08109427 100644 --- a/code/game/mecha/equipment/tools/medical_tools.dm +++ b/code/game/mecha/equipment/tools/medical_tools.dm @@ -257,8 +257,7 @@ /obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/Initialize() . = ..() - create_reagents(max_volume) - reagents.set_reacting(FALSE) + create_reagents(max_volume, NO_REACT) syringes = new known_reagents = list("epinephrine"="Epinephrine","charcoal"="Charcoal") processed_reagents = new @@ -274,7 +273,7 @@ /obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/critfail() ..() if(reagents) - reagents.set_reacting(TRUE) + DISABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) /obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/can_attach(obj/mecha/medical/M) if(..()) diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index 1ad7974fc1..d64f5b57b8 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -102,7 +102,6 @@ CIGARETTE PACKETS ARE IN FANCY.DM icon_state = "cigoff" throw_speed = 0.5 item_state = "cigoff" - container_type = INJECTABLE w_class = WEIGHT_CLASS_TINY body_parts_covered = null grind_results = list() @@ -123,8 +122,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/cigarette/Initialize() . = ..() - create_reagents(chem_volume) - reagents.set_reacting(FALSE) // so it doesn't react until you light it + create_reagents(chem_volume, INJECTABLE | NO_REACT) // so it doesn't react until you light it if(list_reagents) reagents.add_reagent_list(list_reagents) if(starts_lit) @@ -184,7 +182,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM qdel(src) return // allowing reagents to react after being lit - reagents.set_reacting(TRUE) + DISABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) reagents.handle_reactions() icon_state = icon_on item_state = icon_on @@ -325,7 +323,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM list_reagents = list("space_drugs" = 15, "lipolicide" = 35) /obj/item/clothing/mask/cigarette/rollie/mindbreaker - list_reagents = list("mindbreaker" = 35, "lipolicide" = 15) + list_reagents = list("mindbreaker" = 35, "lipolicide" = 15) /obj/item/cigbutt/roach name = "roach" @@ -720,8 +718,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/vape/Initialize(mapload, param_color) . = ..() - create_reagents(chem_volume) - reagents.set_reacting(FALSE) // so it doesn't react until you light it + DISABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) reagents.add_reagent("nicotine", 50) if(!icon_state) if(!param_color) @@ -790,13 +787,12 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(reagents.total_volume > 0) to_chat(user, "You empty [src] of all reagents.") reagents.clear_reagents() - return /obj/item/clothing/mask/vape/equipped(mob/user, slot) if(slot == SLOT_WEAR_MASK) if(!screw) to_chat(user, "You start puffing on the vape.") - reagents.set_reacting(TRUE) + DISABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) START_PROCESSING(SSobj, src) else //it will not start if the vape is opened. to_chat(user, "You need to close the cap first!") @@ -804,7 +800,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/vape/dropped(mob/user) var/mob/living/carbon/C = user if(C.get_item_by_slot(SLOT_WEAR_MASK) == src) - reagents.set_reacting(FALSE) + ENABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) STOP_PROCESSING(SSobj, src) /obj/item/clothing/mask/vape/proc/hand_reagents()//had to rename to avoid duplicate error diff --git a/code/game/objects/items/extinguisher.dm b/code/game/objects/items/extinguisher.dm index ddbc668c05..882a50b3ba 100644 --- a/code/game/objects/items/extinguisher.dm +++ b/code/game/objects/items/extinguisher.dm @@ -15,7 +15,6 @@ attack_verb = list("slammed", "whacked", "bashed", "thunked", "battered", "bludgeoned", "thrashed") dog_fashion = /datum/dog_fashion/back resistance_flags = FIRE_PROOF - container_type = AMOUNT_VISIBLE var/max_water = 50 var/last_use = 1 var/chem = "water" @@ -56,7 +55,7 @@ /obj/item/extinguisher/Initialize() . = ..() - create_reagents(max_water) + create_reagents(max_water, AMOUNT_VISIBLE) reagents.add_reagent(chem, max_water) diff --git a/code/game/objects/items/implants/implant_chem.dm b/code/game/objects/items/implants/implant_chem.dm index b9c85c0728..c6c8be1a83 100644 --- a/code/game/objects/items/implants/implant_chem.dm +++ b/code/game/objects/items/implants/implant_chem.dm @@ -2,7 +2,6 @@ name = "chem implant" desc = "Injects things." icon_state = "reagents" - container_type = OPENCONTAINER activated = FALSE /obj/item/implant/chem/get_data() @@ -23,7 +22,7 @@ /obj/item/implant/chem/Initialize() . = ..() - create_reagents(50) + create_reagents(50, OPENCONTAINER) GLOB.tracked_chem_implants += src /obj/item/implant/chem/Destroy() diff --git a/code/game/objects/items/tanks/watertank.dm b/code/game/objects/items/tanks/watertank.dm index 6d1ffe9eae..8f2b85098d 100644 --- a/code/game/objects/items/tanks/watertank.dm +++ b/code/game/objects/items/tanks/watertank.dm @@ -18,7 +18,7 @@ /obj/item/watertank/Initialize() . = ..() - create_reagents(volume) + create_reagents(volume, OPENCONTAINER) noz = make_noz() /obj/item/watertank/ui_action_click(mob/user) @@ -113,7 +113,6 @@ possible_transfer_amounts = list(25,50,100) volume = 500 item_flags = NOBLUDGEON | ABSTRACT // don't put in storage - container_type = OPENCONTAINER slot_flags = 0 var/obj/item/watertank/tank @@ -335,7 +334,7 @@ var/usage_ratio = 5 //5 unit added per 1 removed var/injection_amount = 1 amount_per_transfer_from_this = 5 - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER spillable = FALSE possible_transfer_amounts = list(5,10,15) diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm index 7b976a6289..54f199969f 100644 --- a/code/game/objects/items/tools/weldingtool.dm +++ b/code/game/objects/items/tools/weldingtool.dm @@ -266,10 +266,10 @@ status = !status if(status) to_chat(user, "You resecure [src] and close the fuel tank.") - container_type = NONE + DISABLE_BITFIELD(reagents.reagents_holder_flags, OPENCONTAINER) else to_chat(user, "[src] can now be attached, modified, and refuelled.") - container_type = OPENCONTAINER + ENABLE_BITFIELD(reagents.reagents_holder_flags, OPENCONTAINER) add_fingerprint(user) /obj/item/weldingtool/proc/flamethrower_rods(obj/item/I, mob/user) diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index cc9b002fa8..54b9d650d5 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -5,7 +5,6 @@ icon_state = "cart" anchored = FALSE density = TRUE - container_type = OPENCONTAINER //copypaste sorry var/amount_per_transfer_from_this = 5 //shit I dunno, adding this so syringes stop runtime erroring. --NeoFite var/obj/item/storage/bag/trash/mybag = null @@ -18,7 +17,7 @@ /obj/structure/janitorialcart/Initialize() . = ..() - create_reagents(100) + create_reagents(100, OPENCONTAINER) /obj/structure/janitorialcart/proc/wet_mop(obj/item/mop, mob/user) if(reagents.total_volume < 1) diff --git a/code/game/objects/structures/mop_bucket.dm b/code/game/objects/structures/mop_bucket.dm index 7fe9700470..e56cf3b09d 100644 --- a/code/game/objects/structures/mop_bucket.dm +++ b/code/game/objects/structures/mop_bucket.dm @@ -4,13 +4,12 @@ icon = 'icons/obj/janitor.dmi' icon_state = "mopbucket" density = TRUE - container_type = OPENCONTAINER var/amount_per_transfer_from_this = 5 //shit I dunno, adding this so syringes stop runtime erroring. --NeoFite /obj/structure/mopbucket/Initialize() . = ..() - create_reagents(100) + create_reagents(100, OPENCONTAINER) /obj/structure/mopbucket/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/mop)) diff --git a/code/modules/detectivework/footprints_and_rag.dm b/code/modules/detectivework/footprints_and_rag.dm index 9f1f2bf380..a25bc01b13 100644 --- a/code/modules/detectivework/footprints_and_rag.dm +++ b/code/modules/detectivework/footprints_and_rag.dm @@ -13,7 +13,7 @@ icon = 'icons/obj/toy.dmi' icon_state = "rag" item_flags = NOBLUDGEON - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER amount_per_transfer_from_this = 5 possible_transfer_amounts = list() volume = 5 diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 6594146e81..aa0674eecf 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -8,7 +8,7 @@ icon_state = null lefthand_file = 'icons/mob/inhands/misc/food_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/food_righthand.dmi' - container_type = OPENCONTAINER + reagent_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,15,20,25,30,50) volume = 50 @@ -152,7 +152,6 @@ possible_transfer_amounts = list() volume = 5 flags_1 = CONDUCT_1 - container_type = OPENCONTAINER spillable = TRUE resistance_flags = FIRE_PROOF isGlass = FALSE @@ -399,7 +398,7 @@ name = "soda can" lefthand_file = 'icons/mob/inhands/misc/food_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/food_righthand.dmi' - container_type = NONE + reagent_flags = NONE spillable = FALSE isGlass = FALSE @@ -423,7 +422,7 @@ /obj/item/reagent_containers/food/drinks/soda_cans/attack_self(mob/user) if(!is_drainable()) to_chat(user, "You pull back the tab of \the [src] with a satisfying pop.") //Ahhhhhhhh - container_type = OPENCONTAINER + ENABLE_BITFIELD(reagents.reagents_holder_flags, OPENCONTAINER) playsound(src, "can_open", 50, 1) spillable = TRUE return diff --git a/code/modules/food_and_drinks/food.dm b/code/modules/food_and_drinks/food.dm index f9d9a3d85a..93b8aa9717 100644 --- a/code/modules/food_and_drinks/food.dm +++ b/code/modules/food_and_drinks/food.dm @@ -4,7 +4,7 @@ /obj/item/reagent_containers/food possible_transfer_amounts = list() volume = 50 //Sets the default container amount for all food items. - container_type = INJECTABLE + reagent_flags = INJECTABLE resistance_flags = FLAMMABLE var/foodtype = NONE var/last_check_time diff --git a/code/modules/food_and_drinks/food/condiment.dm b/code/modules/food_and_drinks/food/condiment.dm index d6d744f4db..0aef697883 100644 --- a/code/modules/food_and_drinks/food/condiment.dm +++ b/code/modules/food_and_drinks/food/condiment.dm @@ -10,7 +10,7 @@ desc = "Just your average condiment container." icon = 'icons/obj/food/containers.dmi' icon_state = "emptycondiment" - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER possible_transfer_amounts = list(1, 5, 10, 15, 20, 25, 30, 50) volume = 50 //Possible_states has the reagent id as key and a list of, in order, the icon_state, the name and the desc as values. Used in the on_reagent_change(changetype) to change names, descs and sprites. diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index 7c7545869b..3eeb5b9417 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -290,7 +290,7 @@ desc = "A simple bowl, used for soups and salads." icon = 'icons/obj/food/soupsalad.dmi' icon_state = "bowl" - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER materials = list(MAT_GLASS = 500) w_class = WEIGHT_CLASS_NORMAL diff --git a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm index 5e7a3db504..23172841e4 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm @@ -28,7 +28,6 @@ God bless America. density = TRUE use_power = IDLE_POWER_USE idle_power_usage = 5 - container_type = OPENCONTAINER layer = BELOW_OBJ_LAYER var/obj/item/reagent_containers/food/snacks/deepfryholder/frying //What's being fried RIGHT NOW? var/cook_time = 0 @@ -52,7 +51,7 @@ God bless America. /obj/machinery/deepfryer/Initialize() . = ..() - create_reagents(50) + create_reagents(50, OPENCONTAINER) reagents.add_reagent("cooking_oil", 25) component_parts = list() component_parts += new /obj/item/circuitboard/machine/deep_fryer(null) diff --git a/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm b/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm index b1da39daf3..4dda9dd773 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm @@ -15,13 +15,11 @@ var/portion = 10 var/selected_drink var/list/stored_food = list() - container_type = OPENCONTAINER var/obj/item/reagent_containers/mixer /obj/machinery/food_cart/Initialize() . = ..() - create_reagents(LIQUID_CAPACIY) - reagents.set_reacting(FALSE) + create_reagents(LIQUID_CAPACIY, OPENCONTAINER | NO_REACT) mixer = new /obj/item/reagent_containers(src, MIXER_CAPACITY) mixer.name = "Mixer" diff --git a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm index 46c9907cef..58d3ef69bb 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm @@ -14,7 +14,6 @@ anchored = FALSE use_power = NO_POWER_USE layer = BELOW_OBJ_LAYER - container_type = OPENCONTAINER max_integrity = 300 var/list/product_types = list() var/dispense_flavour = ICECREAM_VANILLA @@ -65,8 +64,7 @@ . = ..() while(product_types.len < 6) product_types.Add(5) - create_reagents() - reagents.set_reacting(FALSE) + create_reagents(100, OPENCONTAINER | NO_REACT) for(var/reagent in icecream_vat_reagents) reagents.add_reagent(reagent, icecream_vat_reagents[reagent]) diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index 913fb44dae..10ecfd6e20 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -86,7 +86,6 @@ src.icon_state = "mw" src.broken = 0 // Fix it! src.dirty = 0 // just to be sure - src.container_type = OPENCONTAINER return 0 //to use some fuel else to_chat(user, "It's broken!") @@ -103,7 +102,6 @@ src.dirty = 0 // It's clean! src.broken = 0 // just to be sure src.icon_state = "mw" - src.container_type = OPENCONTAINER src.updateUsrDialog() return 1 // Disables the after-attack so we don't spray the floor/user. else @@ -124,7 +122,6 @@ src.dirty = 0 // It's clean! src.broken = 0 // just to be sure src.icon_state = "mw" - src.container_type = OPENCONTAINER else if(src.dirty==100) // The microwave is all dirty so can't be used! to_chat(user, "It's dirty!") diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index b6e3b19640..deba080ca2 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -18,8 +18,7 @@ /obj/machinery/smartfridge/Initialize() . = ..() - create_reagents() - reagents.set_reacting(FALSE) + create_reagents(100, NO_REACT) if(islist(initial_contents)) for(var/typekey in initial_contents) diff --git a/code/modules/hydroponics/fermenting_barrel.dm b/code/modules/hydroponics/fermenting_barrel.dm index b88e6e1ebb..83fc18dcb9 100644 --- a/code/modules/hydroponics/fermenting_barrel.dm +++ b/code/modules/hydroponics/fermenting_barrel.dm @@ -5,14 +5,13 @@ icon_state = "barrel" density = TRUE anchored = FALSE - container_type = DRAINABLE | AMOUNT_VISIBLE pressure_resistance = 2 * ONE_ATMOSPHERE max_integrity = 300 var/open = FALSE var/speed_multiplier = 1 //How fast it distills. Defaults to 100% (1.0). Lower is better. /obj/structure/fermenting_barrel/Initialize() - create_reagents(300) //Bluespace beakers, but without the portability or efficiency in circuits. + create_reagents(300, DRAINABLE | AMOUNT_VISIBLE) //Bluespace beakers, but without the portability or efficiency in circuits. . = ..() /obj/structure/fermenting_barrel/examine(mob/user) @@ -56,10 +55,12 @@ /obj/structure/fermenting_barrel/attack_hand(mob/user) open = !open if(open) - container_type = REFILLABLE | AMOUNT_VISIBLE + DISABLE_BITFIELD(reagents.reagents_holder_flags, DRAINABLE) + ENABLE_BITFIELD(reagents.reagents_holder_flags, REFILLABLE) to_chat(user, "You open [src], letting you fill it.") else - container_type = DRAINABLE | AMOUNT_VISIBLE + DISABLE_BITFIELD(reagents.reagents_holder_flags, REFILLABLE) + ENABLE_BITFIELD(reagents.reagents_holder_flags, DRAINABLE) to_chat(user, "You close [src], letting you draw from its tap.") update_icon() diff --git a/code/modules/hydroponics/grown/replicapod.dm b/code/modules/hydroponics/grown/replicapod.dm index 55c0da91f2..ce0ca0220b 100644 --- a/code/modules/hydroponics/grown/replicapod.dm +++ b/code/modules/hydroponics/grown/replicapod.dm @@ -7,7 +7,6 @@ species = "replicapod" plantname = "Replica Pod" product = /mob/living/carbon/human //verrry special -- Urist - container_type = INJECTABLE|DRAWABLE lifespan = 50 endurance = 8 maturation = 10 @@ -28,7 +27,7 @@ /obj/item/seeds/replicapod/Initialize() . = ..() - create_reagents(volume) + create_reagents(volume, INJECTABLE | DRAWABLE) /obj/item/seeds/replicapod/on_reagent_change(changetype) if(changetype == ADD_REAGENT) diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index 97bf2a31b9..17462c0626 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -310,10 +310,10 @@ /datum/plant_gene/trait/noreact/on_new(obj/item/reagent_containers/food/snacks/grown/G, newloc) ..() - G.reagents.set_reacting(FALSE) + ENABLE_BITFIELD(G.reagents.reagents_holder_flags, NO_REACT) /datum/plant_gene/trait/noreact/on_squash(obj/item/reagent_containers/food/snacks/grown/G, atom/target) - G.reagents.set_reacting(TRUE) + DISABLE_BITFIELD(G.reagents.reagents_holder_flags, NO_REACT) G.reagents.handle_reactions() diff --git a/code/modules/integrated_electronics/passive/power.dm b/code/modules/integrated_electronics/passive/power.dm index c849dc0e27..d4899a4621 100644 --- a/code/modules/integrated_electronics/passive/power.dm +++ b/code/modules/integrated_electronics/passive/power.dm @@ -90,7 +90,6 @@ icon_state = "chemical_cell" extended_desc = "This is effectively an internal beaker. It will consume and produce power from plasma, slime jelly, welding fuel, carbon,\ ethanol, nutriment, and blood in order of decreasing efficiency. It will consume fuel only if the battery can take more energy." - container_type = OPENCONTAINER complexity = 4 inputs = list() outputs = list("volume used" = IC_PINTYPE_NUMBER, "self reference" = IC_PINTYPE_SELFREF) @@ -101,9 +100,9 @@ var/multi = 1 var/lfwb =TRUE -/obj/item/integrated_circuit/passive/power/chemical_cell/New() +/obj/item/integrated_circuit/passive/power/chemical_cell/Initialize() ..() - create_reagents(volume) + create_reagents(volume, OPENCONTAINER) extended_desc +="But no fuel can be compared with blood of living human." diff --git a/code/modules/integrated_electronics/subtypes/reagents.dm b/code/modules/integrated_electronics/subtypes/reagents.dm index fb8fce10b2..980b614991 100644 --- a/code/modules/integrated_electronics/subtypes/reagents.dm +++ b/code/modules/integrated_electronics/subtypes/reagents.dm @@ -51,7 +51,6 @@ extended_desc = "This autoinjector can push up to 30 units of reagents into another container or someone else outside of the machine. The target \ must be adjacent to the machine, and if it is a person, they cannot be wearing thick clothing. Negative given amounts makes the injector suck out reagents instead." - container_type = OPENCONTAINER volume = 30 complexity = 20 @@ -80,6 +79,10 @@ var/transfer_amount = 10 var/busy = FALSE +/obj/item/integrated_circuit/reagent/injector/Initialize() + . = ..() + ENABLE_BITFIELD(reagents.reagents_holder_flags, OPENCONTAINER) + /obj/item/integrated_circuit/reagent/injector/on_reagent_change(changetype) push_vol() @@ -260,7 +263,6 @@ icon_state = "reagent_storage" extended_desc = "This is effectively an internal beaker." - container_type = OPENCONTAINER volume = 60 complexity = 4 @@ -272,7 +274,9 @@ activators = list("push ref" = IC_PINTYPE_PULSE_OUT) spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH - +/obj/item/integrated_circuit/reagent/storage/Initialize() + . = ..() + ENABLE_BITFIELD(reagents.reagents_holder_flags, OPENCONTAINER) /obj/item/integrated_circuit/reagent/storage/do_work() set_pin_data(IC_OUTPUT, 2, WEAKREF(src)) @@ -302,7 +306,7 @@ /obj/item/integrated_circuit/reagent/storage/cryo/Initialize() . = ..() - reagents.set_reacting(FALSE) + ENABLE_BITFIELD(reagents.flags, NO_REACT) /obj/item/integrated_circuit/reagent/storage/grinder name = "reagent grinder" @@ -501,7 +505,6 @@ desc = "Stores liquid inside the device away from electrical components. It can store up to 60u. It will heat or cool the reagents \ to the target temperature when turned on." icon_state = "heater" - container_type = OPENCONTAINER complexity = 8 inputs = list( "target temperature" = IC_PINTYPE_NUMBER, @@ -552,7 +555,6 @@ ext_cooldown = 1 volume = 100 - container_type = OPENCONTAINER complexity = 20 cooldown_per_use = 1 SECONDS @@ -571,6 +573,10 @@ var/smoke_radius = 5 var/notified = FALSE +/obj/item/integrated_circuit/reagent/smoke/Initialize() + . = ..() + ENABLE_BITFIELD(reagents.reagents_holder_flags, OPENCONTAINER) + /obj/item/integrated_circuit/reagent/smoke/on_reagent_change(changetype) //reset warning only if we have reagents now if(changetype == ADD_REAGENT) @@ -605,7 +611,6 @@ extended_desc = "This circuit can hold up to 30 units of any given chemicals. On each use, it sprays these reagents like a fire extinguisher. Requires at least 10 units of reagents to work." volume = 30 - container_type = OPENCONTAINER complexity = 20 cooldown_per_use = 6 SECONDS @@ -628,6 +633,7 @@ /obj/item/integrated_circuit/reagent/extinguisher/Initialize() .=..() + ENABLE_BITFIELD(reagents.reagents_holder_flags, OPENCONTAINER) set_pin_data(IC_OUTPUT,2, src) /obj/item/integrated_circuit/reagent/extinguisher/on_reagent_change(changetype) diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index c99b094ab0..6125ac9b82 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -151,9 +151,6 @@ /* * Sleepypens */ -/obj/item/pen/sleepy - container_type = OPENCONTAINER - /obj/item/pen/sleepy/attack(mob/living/M, mob/user) if(!istype(M)) @@ -167,7 +164,7 @@ /obj/item/pen/sleepy/Initialize() . = ..() - create_reagents(45) + create_reagents(45, OPENCONTAINER) reagents.add_reagent("chloralhydratedelayed", 20) reagents.add_reagent("mutetoxin", 15) reagents.add_reagent("tirizene", 10) diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 9fcdf091a1..b6473b8913 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -20,7 +20,6 @@ var/self_recharge = 0 //does it self recharge, over time, or not? var/ratingdesc = TRUE var/grown_battery = FALSE // If it's a grown that acts as a battery, add a wire overlay to it. - container_type = INJECTABLE|DRAINABLE /obj/item/stock_parts/cell/get_cell() return src @@ -28,7 +27,7 @@ /obj/item/stock_parts/cell/Initialize(mapload, override_maxcharge) . = ..() START_PROCESSING(SSobj, src) - create_reagents(5) + create_reagents(5, INJECTABLE | DRAINABLE) if (override_maxcharge) maxcharge = override_maxcharge charge = maxcharge diff --git a/code/modules/projectiles/ammunition/ballistic/shotgun.dm b/code/modules/projectiles/ammunition/ballistic/shotgun.dm index d57edf154d..ab463163f0 100644 --- a/code/modules/projectiles/ammunition/ballistic/shotgun.dm +++ b/code/modules/projectiles/ammunition/ballistic/shotgun.dm @@ -111,23 +111,23 @@ icon_state = "cshell" projectile_type = /obj/item/projectile/bullet/dart var/reagent_amount = 30 - var/reagent_react = TRUE + +/obj/item/ammo_casing/shotgun/dart/Initialize() + . = ..() + create_reagents(reagent_amount, OPENCONTAINER) + +/obj/item/ammo_casing/shotgun/dart/attackby() + return /obj/item/ammo_casing/shotgun/dart/noreact name = "cryostasis shotgun dart" desc = "A dart for use in shotguns. Uses technology similar to cryostasis beakers to keep internal reagents from reacting. Can be injected with up to 10 units of any chemical." icon_state = "cnrshell" reagent_amount = 10 - reagent_react = FALSE -/obj/item/ammo_casing/shotgun/dart/Initialize() +/obj/item/ammo_casing/shotgun/dart/noreact/Initialize() . = ..() - container_type |= OPENCONTAINER - create_reagents(reagent_amount) - reagents.set_reacting(reagent_react) - -/obj/item/ammo_casing/shotgun/dart/attackby() - return + ENABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) /obj/item/ammo_casing/shotgun/dart/bioterror desc = "A shotgun dart filled with deadly toxins." diff --git a/code/modules/projectiles/guns/misc/chem_gun.dm b/code/modules/projectiles/guns/misc/chem_gun.dm index 17e3bd1876..9f65c5ec24 100644 --- a/code/modules/projectiles/guns/misc/chem_gun.dm +++ b/code/modules/projectiles/guns/misc/chem_gun.dm @@ -12,7 +12,6 @@ materials = list(MAT_METAL=2000) clumsy_check = FALSE fire_sound = 'sound/items/syringeproj.ogg' - container_type = OPENCONTAINER var/time_per_syringe = 250 var/syringes_left = 4 var/max_syringes = 4 @@ -22,7 +21,7 @@ . = ..() chambered = new /obj/item/ammo_casing/chemgun(src) START_PROCESSING(SSobj, src) - create_reagents(100) + create_reagents(100, OPENCONTAINER) /obj/item/gun/chem/Destroy() . = ..() diff --git a/code/modules/projectiles/projectile/bullets/dart_syringe.dm b/code/modules/projectiles/projectile/bullets/dart_syringe.dm index 023c3b9090..94d075c789 100644 --- a/code/modules/projectiles/projectile/bullets/dart_syringe.dm +++ b/code/modules/projectiles/projectile/bullets/dart_syringe.dm @@ -6,8 +6,7 @@ /obj/item/projectile/bullet/dart/Initialize() . = ..() - create_reagents(50) - reagents.set_reacting(FALSE) + create_reagents(50, NO_REACT) /obj/item/projectile/bullet/dart/on_hit(atom/target, blocked = FALSE) if(iscarbon(target)) @@ -24,7 +23,7 @@ "You were protected against \the [src]!") ..(target, blocked) - reagents.set_reacting(TRUE) + DISABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) reagents.handle_reactions() return TRUE diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 442ef191a9..58c29f351b 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -53,7 +53,7 @@ var/list/datum/reagent/addiction_list = new/list() var/reagents_holder_flags -/datum/reagents/New(maximum=100) +/datum/reagents/New(maximum=100, new_flags) maximum_volume = maximum //I dislike having these here but map-objects are initialised before world/New() is called. >_> @@ -62,6 +62,8 @@ if(!GLOB.chemical_reactions_list) build_chemical_reactions_list() + reagents_holder_flags = new_flags + /datum/reagents/Destroy() . = ..() var/list/cached_reagents = reagent_list @@ -311,13 +313,6 @@ C.update_stamina() update_total() - -/datum/reagents/proc/set_reacting(react = TRUE) - if(react) - reagents_holder_flags &= ~(REAGENT_NOREACT) - else - reagents_holder_flags |= REAGENT_NOREACT - /datum/reagents/proc/conditional_update_move(atom/A, Running = 0) var/list/cached_reagents = reagent_list for(var/reagent in cached_reagents) @@ -333,11 +328,11 @@ update_total() /datum/reagents/proc/handle_reactions() + if(reagents_holder_flags & NO_REACT) + return //Yup, no reactions here. No siree. var/list/cached_reagents = reagent_list var/list/cached_reactions = GLOB.chemical_reactions_list var/datum/cached_my_atom = my_atom - if(reagents_holder_flags & REAGENT_NOREACT) - return //Yup, no reactions here. No siree. var/reaction_occurred = 0 do @@ -555,7 +550,7 @@ if(!D) WARNING("[my_atom] attempted to add a reagent called '[reagent]' which doesn't exist. ([usr])") return FALSE - + update_total() var/cached_total = total_volume if(cached_total + amount > maximum_volume) @@ -599,9 +594,9 @@ if(data) R.data = data R.on_new(data) - + if(isliving(my_atom)) - R.on_mob_add(my_atom) //Must occur befor it could posibly run on_mob_delete + R.on_mob_add(my_atom) //Must occur befor it could posibly run on_mob_delete update_total() if(my_atom) my_atom.on_reagent_change(ADD_REAGENT) @@ -800,10 +795,10 @@ // Convenience proc to create a reagents holder for an atom // Max vol is maximum volume of holder -/atom/proc/create_reagents(max_vol) +/atom/proc/create_reagents(max_vol, flags) if(reagents) qdel(reagents) - reagents = new/datum/reagents(max_vol) + reagents = new/datum/reagents(max_vol, flags) reagents.my_atom = src /proc/get_random_reagent_id() // Returns a random reagent ID minus blacklisted reagents diff --git a/code/modules/reagents/chemistry/readme.md b/code/modules/reagents/chemistry/readme.md index 9a9be7c5a6..20dce0e72e 100644 --- a/code/modules/reagents/chemistry/readme.md +++ b/code/modules/reagents/chemistry/readme.md @@ -230,7 +230,7 @@ By default, all atom have a reagents var - but its empty. if you want to use an 'pouring' our reagents into something else. atom/proc/is_open_container() - Checks obj/var/container_type & OPENCONTAINER. + Checks atom/var/reagents.reagents_holder_flags & OPENCONTAINER. If this returns 1 , you can use syringes, beakers etc to manipulate the contents of this object. If it's 0, you'll need to write your own custom reagent diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 98c85b875f..13e809f7cb 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -7,6 +7,7 @@ var/amount_per_transfer_from_this = 5 var/list/possible_transfer_amounts = list(5,10,15,20,25,30) var/volume = 30 + var/reagent_flags var/list/list_reagents = null var/spawned_disease = null var/disease_amount = 20 @@ -16,7 +17,7 @@ . = ..() if(isnum(vol) && vol > 0) volume = vol - create_reagents(volume) + create_reagents(volume, reagent_flags) if(spawned_disease) var/datum/disease/F = new spawned_disease() var/list/data = list("viruses"= list(F)) diff --git a/code/modules/reagents/reagent_containers/dropper.dm b/code/modules/reagents/reagent_containers/dropper.dm index 1c75c76458..efe9c378d9 100644 --- a/code/modules/reagents/reagent_containers/dropper.dm +++ b/code/modules/reagents/reagent_containers/dropper.dm @@ -6,7 +6,7 @@ amount_per_transfer_from_this = 5 possible_transfer_amounts = list(1, 2, 3, 4, 5) volume = 5 - container_type = TRANSPARENT + reagent_flags = TRANSPARENT /obj/item/reagent_containers/dropper/afterattack(obj/target, mob/user , proximity) . = ..() diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 05f30a7092..9bc6bef8a5 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -3,7 +3,7 @@ amount_per_transfer_from_this = 10 possible_transfer_amounts = list(5, 10, 15, 20, 25, 30, 50) volume = 50 - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER spillable = TRUE resistance_flags = ACID_PROOF @@ -194,13 +194,10 @@ reactions. Can hold up to 50 units." icon_state = "beakernoreact" materials = list(MAT_METAL=3000) + reagent_flags = OPENCONTAINER | NO_REACT volume = 50 amount_per_transfer_from_this = 10 -/obj/item/reagent_containers/glass/beaker/noreact/Initialize() - . = ..() - reagents.set_reacting(FALSE) - /obj/item/reagent_containers/glass/beaker/bluespace name = "bluespace beaker" desc = "A bluespace beaker, powered by experimental bluespace technology \ @@ -291,11 +288,11 @@ to_chat(user, "[src]'s contents spill all over you!") reagents.reaction(user, TOUCH) reagents.clear_reagents() - container_type = NONE + reagent_flags = NONE /obj/item/reagent_containers/glass/bucket/dropped(mob/user) . = ..() - container_type = initial(container_type) + reagent_flags = initial(reagent_flags) /obj/item/reagent_containers/glass/bucket/equip_to_best_slot(var/mob/M) if(reagents.total_volume) //If there is water in a bucket, don't quick equip it to the head diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index f59f00a4b8..82d95cea40 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -10,7 +10,7 @@ volume = 30 possible_transfer_amounts = list() resistance_flags = ACID_PROOF - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER slot_flags = ITEM_SLOT_BELT var/ignore_flags = 0 var/infinite = FALSE @@ -73,7 +73,7 @@ desc = "A modified air-needle autoinjector with a small single-use reservoir. It contains an experimental serum." icon_state = "combat_hypo" volume = 5 - container_type = NONE + reagent_flags = NONE list_reagents = list("magillitis" = 5) //MediPens @@ -88,7 +88,7 @@ amount_per_transfer_from_this = 10 volume = 10 ignore_flags = 1 //so you can medipen through hardsuits - container_type = DRAWABLE + reagent_flags = DRAWABLE flags_1 = null list_reagents = list("epinephrine" = 10) @@ -103,7 +103,7 @@ ..() if(!iscyborg(user)) reagents.maximum_volume = 0 //Makes them useless afterwards - container_type = NONE + reagent_flags = NONE update_icon() addtimer(CALLBACK(src, .proc/cyborg_recharge, user), 80) diff --git a/code/modules/reagents/reagent_containers/medspray.dm b/code/modules/reagents/reagent_containers/medspray.dm index 8631c14ac0..54a38eef86 100644 --- a/code/modules/reagents/reagent_containers/medspray.dm +++ b/code/modules/reagents/reagent_containers/medspray.dm @@ -8,7 +8,7 @@ righthand_file = 'icons/mob/inhands/equipment/hydroponics_righthand.dmi' item_flags = NOBLUDGEON obj_flags = UNIQUE_RENAME - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER slot_flags = ITEM_SLOT_BELT throwforce = 0 w_class = WEIGHT_CLASS_SMALL diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index afb985120e..d2e3f95bdc 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -7,7 +7,7 @@ lefthand_file = 'icons/mob/inhands/equipment/custodial_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/custodial_righthand.dmi' item_flags = NOBLUDGEON - container_type = OPENCONTAINER + reagent_flags = OPENCONTAINER slot_flags = ITEM_SLOT_BELT throwforce = 0 w_class = WEIGHT_CLASS_SMALL @@ -224,7 +224,7 @@ return /obj/item/reagent_containers/spray/waterflower/cyborg - container_type = NONE + reagent_flags = NONE volume = 100 list_reagents = list("water" = 100) var/generate_amount = 5 diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index b2b7ab88a7..4947ddde6f 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -13,7 +13,7 @@ var/busy = FALSE // needed for delayed drawing of blood var/proj_piercing = 0 //does it pierce through thick clothes when shot with syringe gun materials = list(MAT_METAL=10, MAT_GLASS=20) - container_type = TRANSPARENT + reagent_flags = TRANSPARENT /obj/item/reagent_containers/syringe/Initialize() . = ..() @@ -249,10 +249,7 @@ name = "cryo syringe" desc = "An advanced syringe that stops reagents inside from reacting. It can hold up to 20 units." volume = 20 - -/obj/item/reagent_containers/syringe/noreact/Initialize() - . = ..() - reagents.set_reacting(FALSE) + reagent_flags = TRANSPARENT | NO_REACT /obj/item/reagent_containers/syringe/piercing name = "piercing syringe" diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 45154a70f4..19afab2e6e 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -5,7 +5,6 @@ icon_state = "water" density = TRUE anchored = FALSE - container_type = DRAINABLE | AMOUNT_VISIBLE pressure_resistance = 2*ONE_ATMOSPHERE max_integrity = 300 var/tank_volume = 1000 //In units, how much the dispenser can hold @@ -24,7 +23,7 @@ return ..() /obj/structure/reagent_dispensers/Initialize() - create_reagents(tank_volume) + create_reagents(tank_volume, DRAINABLE | AMOUNT_VISIBLE) reagents.add_reagent(reagent_id, tank_volume) . = ..() diff --git a/code/modules/research/machinery/_production.dm b/code/modules/research/machinery/_production.dm index 6670a01284..c7d02486dd 100644 --- a/code/modules/research/machinery/_production.dm +++ b/code/modules/research/machinery/_production.dm @@ -1,7 +1,6 @@ /obj/machinery/rnd/production name = "technology fabricator" desc = "Makes researched and prototype items with materials and energy." - container_type = OPENCONTAINER layer = BELOW_OBJ_LAYER var/consoleless_interface = FALSE //Whether it can be used without a console. var/efficiency_coeff = 1 //Materials needed / coeff = actual. @@ -21,7 +20,7 @@ /obj/machinery/rnd/production/Initialize(mapload) . = ..() - create_reagents(0) + create_reagents(0, OPENCONTAINER) matching_designs = list() cached_designs = list() stored_research = new diff --git a/code/modules/research/machinery/circuit_imprinter.dm b/code/modules/research/machinery/circuit_imprinter.dm index 5a84f2f663..09cf9cda87 100644 --- a/code/modules/research/machinery/circuit_imprinter.dm +++ b/code/modules/research/machinery/circuit_imprinter.dm @@ -2,7 +2,6 @@ name = "circuit imprinter" desc = "Manufactures circuit boards for the construction of machines." icon_state = "circuit_imprinter" - container_type = OPENCONTAINER circuit = /obj/item/circuitboard/machine/circuit_imprinter categories = list( "AI Modules", diff --git a/code/modules/research/machinery/departmental_circuit_imprinter.dm b/code/modules/research/machinery/departmental_circuit_imprinter.dm index e47bd97494..53d4a21a9d 100644 --- a/code/modules/research/machinery/departmental_circuit_imprinter.dm +++ b/code/modules/research/machinery/departmental_circuit_imprinter.dm @@ -2,7 +2,6 @@ name = "department circuit imprinter" desc = "A special circuit imprinter with a built in interface meant for departmental usage, with built in ExoSync receivers allowing it to print designs researched that match its ROM-encoded department type." icon_state = "circuit_imprinter" - container_type = OPENCONTAINER circuit = /obj/item/circuitboard/machine/circuit_imprinter/department requires_console = FALSE consoleless_interface = TRUE diff --git a/code/modules/research/machinery/departmental_protolathe.dm b/code/modules/research/machinery/departmental_protolathe.dm index f91f3282d5..7fad6825fe 100644 --- a/code/modules/research/machinery/departmental_protolathe.dm +++ b/code/modules/research/machinery/departmental_protolathe.dm @@ -2,7 +2,6 @@ name = "department protolathe" desc = "A special protolathe with a built in interface meant for departmental usage, with built in ExoSync receivers allowing it to print designs researched that match its ROM-encoded department type." icon_state = "protolathe" - container_type = OPENCONTAINER circuit = /obj/item/circuitboard/machine/protolathe/department requires_console = FALSE consoleless_interface = TRUE diff --git a/code/modules/research/machinery/departmental_techfab.dm b/code/modules/research/machinery/departmental_techfab.dm index cf0e30596f..8b82fd2b37 100644 --- a/code/modules/research/machinery/departmental_techfab.dm +++ b/code/modules/research/machinery/departmental_techfab.dm @@ -2,7 +2,6 @@ name = "department techfab" desc = "An advanced fabricator designed to print out the latest prototypes and circuits researched from Science. Contains hardware to sync to research networks. This one is department-locked and only possesses a limited set of decryption keys." icon_state = "protolathe" - container_type = OPENCONTAINER circuit = /obj/item/circuitboard/machine/techfab/department /obj/machinery/rnd/production/techfab/department/engineering diff --git a/code/modules/research/machinery/protolathe.dm b/code/modules/research/machinery/protolathe.dm index ef74fec666..6acfc9ec42 100644 --- a/code/modules/research/machinery/protolathe.dm +++ b/code/modules/research/machinery/protolathe.dm @@ -2,7 +2,6 @@ name = "protolathe" desc = "Converts raw materials into useful objects." icon_state = "protolathe" - container_type = OPENCONTAINER circuit = /obj/item/circuitboard/machine/protolathe categories = list( "Power Designs", diff --git a/code/modules/research/machinery/techfab.dm b/code/modules/research/machinery/techfab.dm index 40b407ac61..332a1ccf88 100644 --- a/code/modules/research/machinery/techfab.dm +++ b/code/modules/research/machinery/techfab.dm @@ -2,7 +2,6 @@ name = "technology fabricator" desc = "Produces researched prototypes with raw materials and energy." icon_state = "protolathe" - container_type = OPENCONTAINER circuit = /obj/item/circuitboard/machine/techfab categories = list( "Power Designs", diff --git a/code/modules/research/xenobiology/crossbreeding/__corecross.dm b/code/modules/research/xenobiology/crossbreeding/__corecross.dm index d9d58083cb..1146f01f0b 100644 --- a/code/modules/research/xenobiology/crossbreeding/__corecross.dm +++ b/code/modules/research/xenobiology/crossbreeding/__corecross.dm @@ -90,12 +90,11 @@ To add a crossbreed: icon = 'icons/obj/slimecrossing.dmi' icon_state = "base" var/del_on_empty = TRUE - container_type = INJECTABLE | DRAWABLE var/list/list_reagents /obj/item/slimecrossbeaker/Initialize() . = ..() - create_reagents(50) + create_reagents(50, INJECTABLE | DRAWABLE) if(list_reagents) for(var/reagent in list_reagents) reagents.add_reagent(reagent, list_reagents[reagent]) @@ -130,10 +129,13 @@ To add a crossbreed: list_reagents = list("omnizine" = 15) /obj/item/slimecrossbeaker/autoinjector //As with the above, but automatically injects whomever it is used on with contents. - container_type = DRAWABLE //Cannot be refilled, since it's basically an autoinjector! var/ignore_flags = FALSE var/self_use_only = FALSE +/obj/item/slimecrossbeaker/autoinjector/Initialize() + . = ..() + reagents.reagents_holder_flags = DRAWABLE // Cannot be refilled, since it's basically an autoinjector! + /obj/item/slimecrossbeaker/autoinjector/attack(mob/living/M, mob/user) if(!reagents.total_volume) to_chat(user, "[src] is empty!") @@ -169,12 +171,15 @@ To add a crossbreed: list_reagents = list("slimejelly" = 50) /obj/item/slimecrossbeaker/autoinjector/peaceandlove - container_type = null //It won't be *that* easy to get your hands on pax. name = "peaceful distillation" desc = "A light pink gooey sphere. Simply touching it makes you a little dizzy." color = "#DDAAAA" list_reagents = list("synthpax" = 10, "space_drugs" = 15) //Peace, dudes +/obj/item/slimecrossbeaker/autoinjector/peaceandlove/Initialize() + . = ..() + reagents.reagents_holder_flags = NONE // It won't be *that* easy to get your hands on pax. + /obj/item/slimecrossbeaker/autoinjector/slimestimulant name = "invigorating gel" desc = "A bubbling purple mixture, designed to heal and boost movement." diff --git a/code/modules/research/xenobiology/crossbreeding/burning.dm b/code/modules/research/xenobiology/crossbreeding/burning.dm index 3b2131dd81..38362e6d64 100644 --- a/code/modules/research/xenobiology/crossbreeding/burning.dm +++ b/code/modules/research/xenobiology/crossbreeding/burning.dm @@ -7,12 +7,11 @@ Burning extracts: name = "burning extract" desc = "It's boiling over with barely-contained energy." effect = "burning" - container_type = INJECTABLE | DRAWABLE icon_state = "burning" /obj/item/slimecross/burning/Initialize() . = ..() - create_reagents(10) + create_reagents(10, INJECTABLE | DRAWABLE) /obj/item/slimecross/burning/attack_self(mob/user) if(!reagents.has_reagent("plasma",10)) diff --git a/code/modules/research/xenobiology/crossbreeding/charged.dm b/code/modules/research/xenobiology/crossbreeding/charged.dm index b664380d9e..b0cececaf4 100644 --- a/code/modules/research/xenobiology/crossbreeding/charged.dm +++ b/code/modules/research/xenobiology/crossbreeding/charged.dm @@ -8,12 +8,11 @@ Charged extracts: name = "charged extract" desc = "It sparks with electric power." effect = "charged" - container_type = INJECTABLE | DRAWABLE icon_state = "charged" /obj/item/slimecross/charged/Initialize() . = ..() - create_reagents(10) + create_reagents(10, INJECTABLE | DRAWABLE) /obj/item/slimecross/charged/attack_self(mob/user) if(!reagents.has_reagent("plasma",10)) diff --git a/code/modules/research/xenobiology/crossbreeding/chilling.dm b/code/modules/research/xenobiology/crossbreeding/chilling.dm index 25dbaa461f..f09cc7b9e0 100644 --- a/code/modules/research/xenobiology/crossbreeding/chilling.dm +++ b/code/modules/research/xenobiology/crossbreeding/chilling.dm @@ -7,12 +7,11 @@ Chilling extracts: name = "chilling extract" desc = "It's cold to the touch, as if frozen solid." effect = "chilling" - container_type = INJECTABLE | DRAWABLE icon_state = "chilling" /obj/item/slimecross/chilling/Initialize() . = ..() - create_reagents(10) + create_reagents(10, INJECTABLE | DRAWABLE) /obj/item/slimecross/chilling/attack_self(mob/user) if(!reagents.has_reagent("plasma",10)) diff --git a/code/modules/research/xenobiology/crossbreeding/industrial.dm b/code/modules/research/xenobiology/crossbreeding/industrial.dm index 2ab39eb06f..4d39d956e7 100644 --- a/code/modules/research/xenobiology/crossbreeding/industrial.dm +++ b/code/modules/research/xenobiology/crossbreeding/industrial.dm @@ -5,7 +5,6 @@ Industrial extracts: /obj/item/slimecross/industrial name = "industrial extract" desc = "A gel-like, sturdy extract, fond of plasma and industry." - container_type = INJECTABLE | DRAWABLE effect = "industrial" icon_state = "industrial_still" var/plasmarequired = 2 //Units of plasma required to be consumed to produce item. @@ -22,7 +21,7 @@ Industrial extracts: /obj/item/slimecross/industrial/Initialize() . = ..() - create_reagents(100) + create_reagents(100, INJECTABLE | DRAWABLE) START_PROCESSING(SSobj,src) /obj/item/slimecross/industrial/Destroy() diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index ca12accbed..76d444da18 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -10,7 +10,6 @@ throwforce = 0 throw_speed = 3 throw_range = 6 - container_type = INJECTABLE | DRAWABLE grind_results = list() var/Uses = 1 // uses before it goes inert var/qdel_timer = null // deletion timer, for delayed reactions @@ -39,7 +38,7 @@ /obj/item/slime_extract/Initialize() . = ..() - create_reagents(100) + create_reagents(100, INJECTABLE | DRAWABLE) /obj/item/slime_extract/on_grind() if(Uses) From 4d5332346e4cb6d1380d0fcf88d2345fd581122c Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 06:37:03 +0200 Subject: [PATCH 229/370] Compiling was too slow. --- code/modules/integrated_electronics/subtypes/reagents.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/integrated_electronics/subtypes/reagents.dm b/code/modules/integrated_electronics/subtypes/reagents.dm index 980b614991..027a03650a 100644 --- a/code/modules/integrated_electronics/subtypes/reagents.dm +++ b/code/modules/integrated_electronics/subtypes/reagents.dm @@ -306,7 +306,7 @@ /obj/item/integrated_circuit/reagent/storage/cryo/Initialize() . = ..() - ENABLE_BITFIELD(reagents.flags, NO_REACT) + ENABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT) /obj/item/integrated_circuit/reagent/storage/grinder name = "reagent grinder" From b6f35435ec3d3c0aab7b051560903d0a22930995 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 06:50:26 +0200 Subject: [PATCH 230/370] Ports the get_area conversion to define. --- code/__DEFINES/misc.dm | 3 +++ code/__HELPERS/game.dm | 6 ------ code/game/objects/items/blueprints.dm | 12 +++++------- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index be58b64f41..19710a89fe 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -218,6 +218,9 @@ GLOBAL_LIST_EMPTY(bloody_footprints_cache) //Gets the turf this atom inhabits #define get_turf(A) (get_step(A, 0)) +//Same as above except gets the area instead +#define get_area(A) (isarea(A) ? A : get_step(A, 0)?.loc) + //Ghost orbit types: #define GHOST_ORBIT_CIRCLE "circle" #define GHOST_ORBIT_TRIANGLE "triangle" diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 899ef16306..c741a08108 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -8,12 +8,6 @@ #define Z_TURFS(ZLEVEL) block(locate(1,1,ZLEVEL), locate(world.maxx, world.maxy, ZLEVEL)) #define CULT_POLL_WAIT 2400 -/proc/get_area(atom/A) - if(isarea(A)) - return A - var/turf/T = get_turf(A) - return T ? T.loc : null - /proc/get_area_name(atom/X, format_text = FALSE) var/area/A = isarea(X) ? X : get_area(X) if(!A) diff --git a/code/game/objects/items/blueprints.dm b/code/game/objects/items/blueprints.dm index ab877ff97a..699efaac2e 100644 --- a/code/game/objects/items/blueprints.dm +++ b/code/game/objects/items/blueprints.dm @@ -59,7 +59,7 @@ /obj/item/areaeditor/blueprints/attack_self(mob/user) . = ..() if(!legend) - var/area/A = get_area() + var/area/A = get_area(user) if(get_area_type() == AREA_STATION) . += "

According to \the [src], you are now in \"[html_encode(A.name)]\".

" . += "

Change area name

" @@ -140,12 +140,10 @@ legend = FALSE -/obj/item/areaeditor/proc/get_area() - var/turf/T = get_turf(usr) - var/area/A = T.loc - return A -/obj/item/areaeditor/proc/get_area_type(area/A = get_area()) +/obj/item/areaeditor/proc/get_area_type(area/A) + if(!A) + A = get_area(usr) if(A.outdoors) return AREA_SPACE var/list/SPECIALS = list( @@ -183,7 +181,7 @@ return "" /obj/item/areaeditor/proc/edit_area() - var/area/A = get_area() + var/area/A = get_area(usr) var/prevname = "[A.name]" var/str = stripped_input(usr,"New area name:", "Area Creation", "", MAX_NAME_LEN) if(!str || !length(str) || str==prevname) //cancel From 92e925f1f73d27e0690d643f9cbb97f961dd84b3 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 07:14:24 +0200 Subject: [PATCH 231/370] Stuff to fix, fools to blame. --- code/controllers/subsystem/throwing.dm | 4 ++-- code/modules/antagonists/cult/cult_items.dm | 2 +- code/modules/mob/mob_movement.dm | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/controllers/subsystem/throwing.dm b/code/controllers/subsystem/throwing.dm index de58c1a0d7..77ad712b99 100644 --- a/code/controllers/subsystem/throwing.dm +++ b/code/controllers/subsystem/throwing.dm @@ -116,7 +116,7 @@ SUBSYSTEM_DEF(throwing) return dist_travelled++ - + if (dist_travelled > MAX_THROWING_DIST) finalize() return @@ -154,7 +154,7 @@ SUBSYSTEM_DEF(throwing) /datum/thrownthing/proc/hitcheck() for (var/thing in get_turf(thrownthing)) var/atom/movable/AM = thing - if (AM == thrownthing) + if (AM == thrownthing || (AM == thrower && !ismob(thrownthing))) continue if (AM.density && !(AM.pass_flags & LETPASSTHROW) && !(AM.flags_1 & ON_BORDER_1)) finalize(hit=TRUE, target=AM) diff --git a/code/modules/antagonists/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm index 263d4b623e..6bef6fd021 100644 --- a/code/modules/antagonists/cult/cult_items.dm +++ b/code/modules/antagonists/cult/cult_items.dm @@ -990,6 +990,6 @@ continue throw_at(Next, 3, 1, D.thrower) return - throw_at(D.thrower, 7, 1, D.thrower) + throw_at(D.thrower, 7, 1, null) else ..() diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index cb532e4d5e..db08aa9376 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -8,7 +8,7 @@ if(ismob(mover)) if (mover in buckled_mobs) return TRUE - return (!mover.density || !density || lying) + return (!mover.density || !density || lying || (mover.throwing.thrower == src && !ismob(mover))) //DO NOT USE THIS UNLESS YOU ABSOLUTELY HAVE TO. THIS IS BEING PHASED OUT FOR THE MOVESPEED MODIFICATION SYSTEM. //See mob_movespeed.dm From 56be73f7e09b0e50211b15ba9058f03c7bcd680f Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 07:44:33 +0200 Subject: [PATCH 232/370] Lord Travis Hath Spoken. --- code/modules/mob/mob_movement.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index db08aa9376..33f1ec81c1 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -8,7 +8,7 @@ if(ismob(mover)) if (mover in buckled_mobs) return TRUE - return (!mover.density || !density || lying || (mover.throwing.thrower == src && !ismob(mover))) + return (!mover.density || !density || lying || (mover.throwing && mover.throwing.thrower == src && !ismob(mover))) //DO NOT USE THIS UNLESS YOU ABSOLUTELY HAVE TO. THIS IS BEING PHASED OUT FOR THE MOVESPEED MODIFICATION SYSTEM. //See mob_movespeed.dm From 4ff12eebd06d70321d0a48d1bf85f03295fa9d1e Mon Sep 17 00:00:00 2001 From: AnalWerewolf Date: Fri, 7 Jun 2019 18:10:22 +1000 Subject: [PATCH 233/370] he bork and he woof --- code/game/objects/items/plushes.dm | 7 +++++++ icons/obj/plushes.dmi | Bin 37645 -> 38772 bytes .../code/modules/client/loadout/__donator.dm | 8 +++++++- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/plushes.dm b/code/game/objects/items/plushes.dm index 28a744fbb1..8cb8cfbf30 100644 --- a/code/game/objects/items/plushes.dm +++ b/code/game/objects/items/plushes.dm @@ -840,6 +840,13 @@ icon_state = "flynn" item_state = "flynn" +/obj/item/toy/plush/mammal/dog/fritz + icon_state = "fritz" + item_state = "fritz" + attack_verb = list("barked", "boofed", "shotgun'd") + obj_flags = UNIQUE_RENAME + unique_reskin = list("Goodboye" = "fritz", "Badboye" = "fritz_bad") + /obj/item/toy/plush/catgirl name = "feline plushie" desc = "An adorable stuffed toy that resembles a feline." diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index 68c51bb4c8afefabee93e54a0b0eee281a14bcbe..ff7ba1b322c28ab208f84bd6d4515830202177b5 100644 GIT binary patch delta 17766 zcma&NWl&sQ&@Q?McPF^J69^LA3BlbR0>J|Tf^LGlyGw8g9^4%QgrLFQ2@;$E&b;S* z_s6Nab?g3EwPy`eo9M%y|T?U z<=VS+rFe#XvpRXSC`@x~Fok7&);#K+Sm^3c7uv4M zTdg*e+Z!v6H0dw=HF#XMu1j@}HFjl}jVJp&F1(0@CoO4azv%*2F}-(j(bN>4eVfB^5adsV+`2&lcx@3@4+ z$;EJpn-nO2BtT7z8WG`pKUb-<3+``Mv5!{fWbS+jXRYCB_W4%${F=#sO|9jmb@)Yx z%9Ho`PM%>;!2^R*-2dm)GFFwgk&3z%3c$_t`rUm1UG_5P2f0RTI%!Tm3uT#B5d_Pn z#*fa|#sOtX()rlBe8L(Hg zaNT!KsX;WDlhM%qxVS^4%4`2;M@aqub5pF;;q`B;`im-iNFlaX06{12SX{hrVuVYw zscvD%$*lrYp_9q#1Hpwp_hrkHWfjX4=(yX7w{h~PVZA))g|moVJoL47ix=nWaA}h* zh~2F!g!}j3i8UmzL_~b7hV4)NS@6N_&rp>tg{f-VF=>Bkrk}sOm)oi;XW-Qx{SBmZ z{rJmglN6V)8$ZX2hB$>U7u|MWH#iyN-W614(ulQqqhST=0Bv>VZdpQHG<}s5$&e z?53@aQsVJuy(8Q7(04$f&lwybqW2sC^xOyw&?uz^7T|w~A8|J)jqB#z+WvK4{7$M> zf8DT;=&oauJ#>7*J*&9x%Z0@U@aE)?6>Q1mAQVSK+hUDJTr}Kjo3;>doqyAbc&DQK zkfAFXl6Bs#>D*!D*9k>-)Cc)GB?7O z%t|H)m;{3_;q^$CppBtgZr8K!Ne0v36!3w;`fR#x2nc|$94=F8 zjl(ft&QFK>9k5H4f)n&pe;u^$f?-E0RXRZrQVF3;kly?K%O~9w`)47!H;7kHKa>ba zMCFmD84~(E=47#c%-qq_`Ehd&$tONV-A(hn!_FC-tHg|N{8ErOWK<`^r>iQ`N>ww( zs5m$^75DM?H&iJN=dVe*Jj$7GrqgwG1PdrSy;UXsZ}?vUAO@E>O*R6bXpS!X?DZX5 zQ70+iNqj;Ai+8KxO^#V^C%eRwW?(E`cYg}ieoucfY4^&f9nW)@@)BA}mcpL?uqSS| zvefqvRrv-RJ4}R{#<|@8Eq(nAW@-!vhsyq{3X%@&CTi^OA~LJnG4v@LLA%%^;og|I zqAa9zM||MUjQp&9IPNv+dxNJKBcdS;;({-j7&+WQ%u(D2ddVuwbBA65UPO$QAy^C)Q*3KMy#jn2o`P zS^9-96d#7U5r7IEZAXhmzhXu)&(7EkDuVZ}r{z%x*(EI&3g@p8Nu0XfG|ly^Dr)PY zKo9tP?EPsQLlZu0ktTxeOa70s;rMJ(pI4RHq~}zerziS1;x%fq7JW@;ej6XA#%ts? z1$;L?)ady4orOb~np7=o=p61{S1zd{Rd}dO{DX1)#eATGmt!MWwR+a@0c!q61Haqiw3eIw69cmD|9#;3%s<-Y7wgGZ)V8pg zf4Q&Yl!-&q5hULTVYSbmuIWVIGiAdOMI#uS`WVUfqL1f`QTms2@RxXK;Wg=;?tJ8E z@9E&nB1d%w`?u5B6)L*-xs0eimw!m7zo@Nr z`Vf7kleaZm@OVN(3aOFd08f|Z5CAO76=aFJrOKbb#E#oSN^Q|`=w#y!+{UekgvN zWwR^L_gwX<`Y6zxI6g3q`@2J^30vGdjhkQMiwoUb*!h~P8LaoPSR`*%^G;z5DUz<| zr_X}xqGhd9-@su_D8PA90?blI1eAu|C40Oz!snSwAtt7 zduL9@jS+-SG)c$DU0WqvZoM_Y65aONFLk-eCo>7N+@aO)-By-3!78Up3cppo)d6xZ7;a zt`-A}M`u;%l<$oFOs_7noz{Dxt`9t;9i9}NXmD1Q%l)B5$cTwrUk#hV`|vz8AMX&{ zJgsReCQ<8qRJuNCJXsLfFqn96KDK$Gn7ZUua23omo0i7K*ZuFNFXUe$%(-jEaniJo zxZJ15q170-Be}UWqw&^&f@{ ze*qwE7apkX+r}B2DgoDsr(fveC(zs~d8r`vF!vD}QaJMG>`} z<8&MTfapW*61sltf^H;M{O_TA)aB=IM*xc>1(F0&@lg#im|!M7jJ)%K)Q2`BE314J zTgCs!u>kiU%VC^<%FD6oueu)e@-E+REki2$->)b^!u&AeX0Kn2_(>J$Jo3jTMhUyzWo$*9rePgmKF-o}6SM@1!e zHKI9{JdkVwnPr1CP+fj5UdZT;-`fq>upX1QUz3-Fv=ZwYW)ls(crwMzR_*IS@w}<1 z>TQnweQ|f9x>d4u9w~N5R2?8##IIxZ4D?e3=T*}Vuzzh=yGY@>UXGvgqLhy|Z)mkc zE+?`Xjv@2O!>DR#_o(Vjec$`#XrIhQ?AipzrUcx;@83F}llC33%f;Xv4)j*;ek#FkH|8C|_!zFbO-^<<`TK zki@AM$+RT0EfHCW#G#xSVZysFhyu=w4^?yvlINAoeOdaqXKx|j4cf5R|FVCd`*i#03WuP@aDaEzx6^GN zuE6l|1`~L|B9(HWFpkdwZ-8!!yRTgGX;?TC!{*$uNRR(7nWA>`S-Bd@!$Wyo|29WG zl?wRTtV5B^ia7q)gB~U?TBW_ply%dWRy(K@pFMhvSMev_iICQey*~1_S8{ukInn_C zCB8~XdPY{_jLl?X@Jy)z&(M(2I5r@sk`aO`jT}$a{|aZDD;4bJXTm;hI6J@p`_x8r zmKQY=f?JWHE5}>8HB+X+pje`iv=sb!@EjHOXZ^{tzHCYW0I<{Sh@03@fOC63Ha&g) zzOhJ0dxFWVjGeUNcTFz16inhYFoD@8=N$;c_3Z9=e*3mtpZF5GN!P8d_{ZdB)Rc8? zjWs#Xm6S=G6U@OcPrssg6Abjk)DWsV`u#iKXfWE+Ce+`m0za@0R-vbrwZ5a{a#^h=L|gVpY4}kc zf7dO3@6NR1-8WU4l=~g;#N`CV4W>5r-H*cqw|C}4uvJp~cOPQ`Y0>KlF!7Lz{r;qZ zcMmCUK731c@~u`x$Ts@h{?h@Q8%{zU1fQ!;+P~iOCsSWpZ52!fMgkLtBe*ZKpu40R zzrh(3+SK75hS?BUN+kH-og(1P<@TL(H5(}x-G7h&H03IRDnAIQKI5PntDkv;IFMrc zZ*L-^?Eo8?)izxD=?wtXfP##q*5+WU+2>p`_0*h_asokN;e?hJ!RX9(O1Gc~c%aSG z#)rPyc|8{P<)U^qn(6vft>+mCv9hr#G9Ol9dhlOSbiTl%d`&9n^hxl-8AAyTqN&N7 z-Fk~hDe%1)E=2IdNl%U8Lz zJmC~!-mm6hnXmkFjyPpWNs)7p-4&)@OnJ~__`@v~#hcK@8U@C_gE%nj477Y3x?+qC zv!(&o6UK!1{?gE}#1o2ts6aX)tH}?`m$oS3@uxcKR9x*~bU8|F;3~ZVAa)tR-H%C@WMixi}w1^_+nwp;qjHsj+M<;OhUEF@~j>C#%j(wUJu;$ zQ^}^uC5IrNeg3C0DCiIH>%s&YgoNpGJkK#=#S@EV!$Z?-G7`(3zAary$wBa!^ zi2d9xpSF>*vvV#EnfyqA5mm2zPcID3h)?eBj6w3Xr$)=*d<|SZubG2GsC0_aFM^8$ z^>{2Gp3gbTdulQCi;w0YdV>KUvWQpWcg;T+7oHo3`q)IAB^BWgM;l@YI+5GlZvPsl zy|0i2cRKfGC_BFd6+C&zkGxQ@{i|D`Z=~RpFM5gDwO;Me!JrUIhIy($<3-m~o()VW zJh0ZYSceZ1&ij24N0hvk{NaD{ZNXWfT!y${1SZxy5tTslY-sW*XLx@_@!;Y5-|TNw z-pu)~D_s9x9-s?CHKI>)m-ILgq-LqaCF)9`3M+zjX_L-slPcyJ!Ty0^VaInz` zfa2{K-4zZnBj}%>fA#0j9|`3--|zj>B(H@eh;cBEe_^%Lfo9KNG8KS)d0yue9fO)w zHenqPN%rtA3i_`F%Dqi5EDipDUPr&QAK$K4n@;U zDLZIgULB&&-+Kk5oiX&a#|m?v zisq%6zuIs((8e)2|D$5*RIA2B`giV`WkM7LxWLXWT<%FYn4ciqpIi&>tmGxdIQSa< zZQS=6TX)jTHwp_H@bPsX($m3U)>gT`bx4PeJ{JVQl8qbRnkUS97D#0aujzyld}SmBJRrT)th+_qdh*u-xr&E0X5MWXBeHs zK|bL9ez;z}Ci23Nz~?>;yw)sck^84%O=B92K_I&O>Xi#;P27t7WH9NJ<3-|yS@d` zToHxg>*G;xswkLdGn4O^%E{fW7l;%5SU8(88JJnolk~UH0$I+)h2r3SmvJjk<1~2I zIWn~FlIv`$M(IX(&vQ2+}8 znylekJ4(D%fm&k-8tkE^R|fm`eaQd!hUM#z>P*s;j8uYtX~cI0$vxskmc)+qcU@7g z6PdrMK9x=gIg<&AV}?q3k(I6g4C`KWGL5nT%vQdYTlHr;(}S%~-yJJUcJiWL+ciIR z!2A7_`Mi5)01gYiOx%{>v zt3w-LG0g`$YNfeQZ3>;WqclI(sheEeH@t%_EztgyvQYl3Ypaoc`KT2SE!6fOMKvAl zKl+VsN6Vvq+@upqIO03u^OZJAE-qCF%o1?^AQwle%{~v81N<=z)ZsOgzI>zR>3PB}y@Jvg+0CAdx8!u-IUOO{av<8KrVc zDRKGQ;TArC^qs;Kz$9rCMw&>7PN2w5LsRe#?6d3EBsCDlkj#MwpTu}YUl@~aHtd3r z8QOU)nF2dZr&k*v{pS8~4^CamVktTu8{s1n+coz@y2Ypag1l;^DKHg;^R2fJQ< z9#7?n7NU7CsX3E{FgpC+m}^Kq6S>F^kD95wCbLN{M%BB}ZGX}rtwtL`FA*Ai%nZ{X z9Y01oi}z||-=YCXKpItD;8|1C$eU&v4P>x9QZpclDxX=b{PiGN`tCm6)BuPe7b4-9 z7(%~o$E{68{C*5ZDinIJ_(EFpYs^7;`1fx-E|ZRcVur^LLY9`61Ox;V>R;G z#Q|bIyJQ0vl$kJWs@NZn%c=L??;_SXyc$a*l9*HzqfO)be4xxt_u0_T#Y*l(-yej# z&>!mw*vPJj^>T>ErHZ|Rw7}GqnQv13)=ZKGBqFYb8y8#LoIYPR%BvBxU)Dmr{Jh_r zP`u}E>*9_fv`Hu7u5|3fOciM6FC;P7c_qao?BS@qs#0-RrwGuz`9 z_iQvQDz_Lczz=-`aS)?X>#I)G^!{jVx$6ILT8(5<%`N+;Td9LtP*6~qW+UnYCw`_M z0g*jy0(?#<5*t!B{@^1hg zUn&2Gf8kcv=m|AgW=l#DG|IW6h=5VKT?AbEmN#ebPPWnLI5sBc;ML&_1mMYt2D$1N zFSEqKzBB?-!oI*P8!<{}XRI0#P;;JymBOdKs0y4+O+g z2yek&k(iR@bIavwwM^dRwPJYx?E|cYKCqUHDMl%(;h3o5^rHCgotnP9>0<6GDJh~& znPsiZrj!dFLCGggKgz#GM;VX1Lq%xalg{7}%sF<|e)P>e2lW1Mk9aZqb4ciak+M4r zm%BWlM+$$|GuWwfre!mW{zZHI7Udr~U#=MPPd1WozMGE;t@mr4K2Zjt#VK!1b~ejOx=12Z4|jJG8HxGkyn;>_tZ z%6-0)4YPE;%>LC!LQ5B^T54)H0@uINc%%&f9?Q$R-9)-?SzTRR0)m2qh-KjbEhKRPswt2Mbbiui@2)&% zNXj$f)Fr7aq}iG&_pL@~aZ^&&DA%w~&&VhUTjdp7{rMAPTkLaB3-+I&iBT@YiT27t z+n4qmZi)rU5;`6S`j=MNXB+2r>AP8sXk(k7aq#T+`V6miIBhc5l_h4{QEmOxs_m*) zUMeMb1pFR8%WZBH!K?N0tJ7C))TBKKCxOad{uvOS2uV2 ze{;>OB6hRP_15FB{xdfOH3#^WdTVq#Bl&ybhvd>&gLN(j?63(dAU}3a6AqY~tnS(V zpoqaC+O!X0>Ym6FIR1Pau2Q{_$FV*oV;nhHr$ly1115!|4^Uh;Y~4eL<0318DAf^? zx?$kPwj0r&8!f4Cb%XB%@6X5`0ge^S)DSN9{vJ<$UDlEQADHVKvQGRJ+La$_UG4Mo z!gu)XF?A>b=-rcDhwp^R`CiF~#kS9g53`2^#rL)o)SfvWq^x`qZi;Fl}j@}~Po%;mos85#P8&~JTxeSvBDZQb4c z2?ak~r0n&M*%DI*O>DF)4Yu~ACoCa@uvQoB+JqvO$?5)y^y1>87gIn0kl6l4kARHK zw!+|7k#^d7-5fykYMX_jwfo>KjFTUi(CJ!&mVYQu|j@xp9r&q$Z2g zcjlf2D_Fse$^mxKhzJiii$+(jHJ|i#Fl>ZdepTIbQ(S2VOVEjX5o)*@4;hE(S7r2y zgvuU}Mg%^HXBqm1vl&}iSxjNOOsllhkTXoX{>Dvz>ka@$>)jX}Oca~eWzhte_;Mgf zK3AbVb2p`01x6at509ySs^w!6-?g18vh^)VUi5uKF;_D|t2{H0Q#bs42s2)IBV*$_ z&oh(iTiN|vIMY_w5QnA42-D}I${H8f@-0BC{4dnj?kODTscR@Y-#wySe7j3rLZ}__ z*27ujrO@eh1}{jWV7q~hZhuqgp99{aeffun<%w-RS2dcLHihck_cKJVx$#bXEuUno z`D?Wit{l0k=w2EJJNw;zuoRosu<@+7;kRGJ=Iu9!opGx~xw<|U3*%7r(+7)H%4T5; z68)wR?GHSRF+HAHicUV>mpc*6qPb6 zm}UE3&*}P-GWG9I&R7j4y(mlbEudL-prQxwy#PB+nz4tW;OyZdA%x$Pj$ zan>GDpPTdL9K6q3G|t!aTf(%#cm)5PEnK~&E}r(aL4um6lhVNjfB#{33{yhRHaS3y%}pR+W5dj0ts}$K=IUS?h@|W74MI*c@W^P#48BZ?r2P7*5L5B$ zi``%NM0dg;&V>oa<#*5BPC6_a8c_!<3ztD_9gp zqo?nTBwkl^PfkukJ8C;spL;U6G#Qf=ZUi=Wb>2U0gZ#KxR3S;-4wC!NM|n%M43r=x zWwa5eyp|Thj;mMsCH&O^0t>b`!e1u2SA2YXFLmFa3}3~mvEpfrof&Ulh-YcVN?!jk zjktMiWv#s=7TR%`{=$UtuAt+TS+SOOG)|gX^7Sqg0}OtGR@^6L8l_O6#>)Ob zJ6MYTe{aD5*FRZo*f1*wRe4OGau5Hp_VPQV9F;9lTca8yfc$XyQ@@f2HxA3R+K7r* zQ&S%OJ8O&%W)*f9D-?@%yYqItoewyAnpOM>0|Ej7T4?gH*Z_W^ORw?4Y{US5|0xQ({!1|+8|t(Iwm{t6+$@}&zMm6)xxXyl0dboyg|Tp6279D0#?+a}q{qXS!&qi) z=*+%Qmnh{KZ#^rFW|onm5t)n7=;6Efo2jGx?-!CS{wNdP6tiAUopcP4y8lG*>Q&$D zY_f>YP#5pw$h)Pk6ue#JfS-EN%%`T>1quI=mNuS{3+7^(nwr+zFK{waQwRK4%roWm zVJSX?2b40z$W(cL*V@YmOHrm#;^0uypp5H#eg@T8*eyhEuhL3V)*0# z>vFsl>f*%(2VkFd2R9WzxC^4Xx+Y6SYAb;niqUsEQ|KG}PhqoRA9JpY{|2cPWY$Ar zkg7Y+JW>*p-tqCu6__2%eT0{(#`;!TD$SYp50|E=D^S(2L}l)!DP`=Ex6-1b0UAk( z`5j*jzXW$PS=!hq>D+>#h_$5rBvQj);nA$@GDM`~1rJ8RfIc7B(4(d3V@92^9GLpT zPS<27oUh|}vosPLj^k+hK8dPFF7#RY$eu%7Vv4^fJDc3f+PVNH9bW?&z(;$YHykP_ z14$7+SFn%;$%9_J5s{IRO#%-O4}l(4Ma!ev@`2Go&9h6U*guuj-5pqQm~`FgQD~ax zmhI<(_>)o7#5La?B5;*EL=Jp>2Ky|f_ev5P7H}}BNodeMGKxHU^ERbY;M3) z1%nz4>GZiBN}!X+AtM{F$x6G$z_4V^g+3?ZMytKw*|AAP-pPWP?Sc#WU!zw71vfoi zU3r!u>0VPL0lbVQFX%9qvc*A@N|gAd^}x3?SKeM)uwMkUbwJsX)6MqMHPhSk@hj$B z*smW!t~P~0yU@O>$Z{vdVIzdhA8=bqiywc=2AJbW21tZ<{`yg3gt$FRK1Zsz_35Yf zmn`r6kjZYf@%pGT5NFqZ30ax~WN2Znu7?J@)V%jg&yF={qBy^pa|*w+COe@ZciF1x zHX|cue(+~tVC)&+R-JXk4^b6o1JnYf#Tj}gjGKx2>?t67J3Hr>nk9B~6=>rYV{taZ zcV8#bF4;(-!{cYEf|uwhDAW-V5$U$~TzNlk29f{c6$`||a`E&;&c9QEqmjBF92hvz z76X1d&c($*bG!NmUi*06E0dFHS=|4}%HcVBKe%yV;d7u(#~ z)+IICJsiLI{Yp*CYj1B?c^p)5bQ9_~3)!2(UDLg!%_FG`SR ztg~y(O4PcP&4G#9VwqoIC+&Iz0}`NfDoo4uMEH|@(Lh~Q-!aYl2E$;#BR{| zPSzimI&SU~k&vJUq)_#|uXNoV1M;c6OO&&YwEg408*A@0yF8Pd_{XZ8RN|$1{27q{ z(#LYUYD}_zq}`R4MiimZ74D5xUL_C0eZM@^jr={(a>o-Tv@li)Wp2&BxV+TpICp37 zt_n)lj{OP&yW&i*|5Yvg!v7Emt9HX&82a0{8NfiyGY}B<{96p7qFdKrkg2S95AK@CJm6Dh z-#hXRq{32go9DZ2Y#56uhCduOclQqu%c;cyL4T+qEbhSpi?DnT4nul?13PPLdl3Ui68s;YiIIOre8W=^F5LO!m|=nCFhG_3VoT3A{VB5ZJ_@vgll zx_EP#+2^gA^u5>cmx>37xTUtX%XStdwj1^ePsRbs*LTc+Si=kIPg4NDt8^gocKf&! ze?7Jn(ex}Q{G}h>oNni5v=kU(=e!vJNyI=D`s`M|bY+bTTIdhtEq*@412&o$*LGmb zfWj?j2$IORo(_CL-PpZ)`CWxgB^JHeAGUqF4uY8Zml62#;IAfoXFx(rD_L+(z1Od^ zv~rPVW{f27^X2w3^zX>2+QApKM0idI(`{N&XJ=KBf%G*mKorcC279~1o9x+-KJHYVtUt9`~e z^5Q#ge*V;TaEKry+USo__PWKJS_4j-k`XJbrjdlvllwhfm9Lbl zQhkOc_AtH&`op$Xqe`GwLs z!Ov%F6w~D)g6C7B(dbxmU&g0CS>9=pKRkJ=k9(GF0*R*iY8*%bRivW_qI_6C=I6^S z^|8P6t)4S85zcE@q}IEis>KfIjPGKQ$i|;Gq5m;ycWEt)WSSei{hm5CT2qCq@AdNh z`wnbm=9YMRfI*sy+VG1mim(mPf32_Q!BS_A<(^UJyYo%7W0$RVpWE*(+8SRGQha>Q zMotIVBbk_)!x0b>>o9AQ1S}M|uzjDd7xaEOkYGXG;!L?*Bn1<=+wxK-soNTO;0hHp#mGOiu=Q)qtIdZ= zfrDfBU>1%oO}WZX0ng9R-}DAXK+xWV_FJ5lPFQoBevV&qw zA>X$=zcAwy5XjKd(cMqR6-b9!^ysjC6Y&k#2W#OunHp<{Sb))sPte=RlVub@u=5jX zAT1qD+W006-?k%Uf{-^MEF*OFf@{NhA`^7y0`x?sam8Pr)3E!1QFIrZEsyKQP3xl4 zSewQB`1-@2Vr=X;B%=OGTeMDqrbi>Z_^jgHfbG+duwgfOypBhGGz zi_Qd9@%W`Ce=c&;{b#S2dDirw^N$*<9(ijMj?{>dACGFAt!pj3xp+XYNaP1^3iC!s zcy{&wBxZH{cU7t3LnN~C+smlfSR`s#yXGB-IF>oKi!~kHe?qy6#yBCFiJ?Mqw6+eB z6f=Q7LtBOO$i@A$(@JU^WK8WE*8_yRAGSVyU=$HOhQHW+cYzVw%47z;g{v~^%!CB& zO?;h#8^UdImqiW(83mJO@hHTgcz5ky8MhE1Q&)vCfFt+$pD5bVtz^$c7O)sKb$4@C zwl$Bz1ZzpedqAKu4;Eiim~qUsS}iO+-nq`hrF7&d?p3UjPnT2@nMT zyNiGE@-qKV^)Hv}ERkW(6Bh?3V71*-k+Y;_g^C2QwYqrA@|nZ`QZ@*Q$KrE0Ql6>K z*7o*vr;q2r@Noak41V@(aKCvbzg=*(Ve{oKA|fL0rguU@g6&KR=2cAB_m|7J8_?JP zJ-|$u-W(En6b^-%(r%v!!qj71--B@;b?k-RjQnt;oeZW_JIxp4k$c{0HA;ldAE0mW zd*<8RA;8!7UeB&?J;tpp2=p!P+e!Jg44>_OXvSsGCgGxlgb^8pH7J zj}~cMH)qHJ;o&IHKAA&EI@N{G?G~aSd2d%69i^y>rXEs&vHcmHSs@#+u{`I%QGFKq zyII$Qi+kZOG9ZNtR|Pd_wC&v|AtO`dlu-Gc4UPW0&{OS$2oMNM50K+bVEW+71+TU@ zc;+#q$Kx{!5bhl-s;S|8)X<{%d%l?_=w{ATQ9`a`CT~C@73t2si;UIB7cM6n1R1O%h|f=8kF#vA>-Nc)9o$s zOV?t{qkzBH;LbDLh^DgGWhQH&L&&LjzRKmlU<2l&O(4wu4hnKF?S z3q1@bsn>%g=#r9>GOTqG;HVSqmg9f~Cm*$rBv-)vkI_+Nvrsf&&%?-Yqq!3QJ)v2- zwwZP7;NV5fGg9liT86Nz@NAOxrFy;#t9D$i-rPGsmREmEcU#FA>J1s`R^qW)#Up7l zL_!?1c4)<&^vOQ^Qy(n{lv=EK2Fm$pk0b0oAtN+^C|98&(|D?=?*M^(S$&s<=b5)l+zlVkRKh6hg z)!4-h>rZ`pS|U^!l5^#n+G0M2cVQ!a12+qy`jd-y=Fh^Bcln%uBRcmU_Sg&W%y&vE@W%tdv;s-Ll7 zX{q>By;Mc_3Li}?PpXRZ)UOb1EK}7nlnXwt{cX82n3(5Mfx#rE5=?Lk%gXFd{7QOl^X}&-LWBi@20mQ>%r9SXHii6n4Hf;3g8O{d zcad#jT5GE-I*(Xz^>-i_0%%Q6XzQPuF;Rt}ocl4*(+@OWH8o0~p@3>hI~Xk8uA7Hj zu56k3*+Q+Y^2?i3Go{*HbSWs<-|D952_nxVmNstP-H+?51CDnM7xz^bu4n2nt#UPP_6)^{2bTLp- zX=D!{oPNkuRnG}9g8Mr=IBaZehs(l(_oBuaS{c>M{j3dNC7I~i9$;ilS6j;8U7y9( z6wTG}j-6<-_w$>0Ysh_tRd^(5gr^i#(;4}&Q^l!)4H&)=WxtqRGnd`Qs>yoiYP9ZP z@m?6El$=5s)P;t~(DzaNwdT;(Y$5`83kJMBD#>?n9(WzPLz2}s2*_On?6wzsxW zfRKZ;w3fJW8=J_TeYF}y@*_e~Vx6s#U!#9AKE?eA^7%YEB?4{Rdl$01eo`pgjl)QA z7k?8%RrU?6R7`?X`NA-vDEl62^rb~hGsBgt0AqL571khPicseydU_oT11ym%5XD~1 zZH=|IGQ8I`y-HcHHmtKai?mJtNKQ?Jh?a(l$kc7RB_{VG7se0=M?oG-O)-c|&D3?( zi0tC>S@I#Lz6+uwjAz)OIT*g!^EJLfBIoqq4u(;qKi;IE_8E-3W2IjQg ziYp%A9Ika+Pn~U#nHhQ7e3!Gy$&E2Iu$bzPn(Q_|O+TjL8`?y z7lDJRrsfYu#BbSmX3%H$;R2*GlQEtw%ibGU)zo)?RVCsyMbe0!3UTxFSX<6AMhfWg z#h>jpsuosm+^oE}ul@K;AKz#Qt2?xc&=5-c18S{_5o4Ff0{23W(v7U=#foVzhrb!> z_)GDNwL_>xn0;pR$v08cFbSVTsmuy!#X%r^H8+?6^pD~23Y+y;{rRJ(@2a(|v#164 zH$xQ@kZ+ik(1C*4`>u4&Zoimu_fF(_`=k};omGGgQX0tWp^_7N@(HJ1;LH2(8DnAi z+a>o&KtA@6zvRRYjld7$UBJY7_JCOC1l{CEPnZvhSSMyFiWz zgw`AJSlHPO{hD_mjLL!wCBdVkf0~5V%l7G(r3Z-d=#oZ9{y|Knm?SR7C#Y1`f%@Nu^4JUHOatLE>VA}L;fGyH=5sUd%)}CsgU6e>j zE+j=Li-_YFGnI@+FQb$@Z#=*GxdQme9i`m)yWRED$5<9YYYQd*5B zp&ldKbKHErwPFhN;rbW`2v(n-eZ?$yRZ6J+;a`Ks3ToeI+%YB+a9`-=OCVUe%mWNM z26g|D<+W&jfk^Z{(SK=ayU>hX5-z+j8&a=}WJz%>mnYb>or3gIPskVVsNGK_4l_(3wC5eJM~QK^-mkj4TSQB_9y z`k4yTN=!Z&?UZt=CUFn;wb#KwckhBdEj^7oQ$|V!DiDmsK=)8nd7{sM5!7K_udCTv zEp?RvWNbzCgse`)(6Q{?MhGkb$ z1FxGXjihClo>JB|-%N*>TZ*O2^^x`msjpWx@7+<|&36i1fu3j*-gkO>>5^xj46;vL z9SD$UN{Z+SFsnamr}X&&2VTDrn*_(2mE0Or zb*Xnsut_~!j|1N8N zZk^sZEaH5m@(YgpcjZXV(xP9ueiHZ!nD1=Pla91KK!J57OPoU{s6g|k~bCqDsz z2-D+u5qAL}55v1p9`h%Sx?t1?(^{sRCea^8uk>%-284*bpl5_ z$+q^v)fnzy;#e>q@2>}vH-^8axd;|Ah|h&N-~O?vL+Q8bzIQ@C%TvFf(z@(!xma2= ze3l-v{)01Q_#CA35`9gI^w0OyVDIRc{Eq95>G_XSxXsVMUS)`7X^orn@>0`EeY)Sz zQ-sE*_u*U67*@DQJPHnM-d@SUP%z@?e>4(7wmg;xF%j}1r-q0yWSH{d`usECy>RjY z0(>XW(8huPP7;=X0L<*{!AY7F-{4$aE8ywq`eXNPBIQ=zIQH^CHj3gzPf#Y^`|{$i zhFaLdU$7>|-7;{SF`&TkS9#dftovlsW4k-0*hW`OIs{+z`GXVqDq~S~bQsg7K;!Y| z=H{@@PEo*YGW#v@8{1z+u(>c{_Jo)7cgv1P>^=MT3p}u!$hYeTG1kj}Fb4AjOw(|r zh(o8316y8Bo6(xP-sTD;10$oOUTjh@#N=31Ay&dxY1}(S#Guehu9Elr##0yBJ zHm%2_H{s|VFtOO(_d{)|G7T=lY?A?v=F+ls?CT|yyQ7++$d}}1lcQQ;M3|&+P*lif z)QP_I7AsQ-XD91W%s-m$?`Qd`*?5VGyEoWHGu;njb_e53F9kWRb)bUz(A|ZjL#IaX zHZp(=LYfF0UQ1%6q?B2O$M!f~#}0_WYK=P(R!dif%~)gPQB7#o`})7>-yV*ui@lE` z%A3WOg`Et7NlAkyJT43g*{a#fJM-GD6x)Cy-`}BW8qQ>P(6b{-_gm7 zOLzf7BF={yCNu&~e-Lod=O3`0uhQoSsH2}LMZJUJk+G=Vqv3%alT=Lel30rGbN8i5 zfV7lUIKQe7?sf!s3@M)ltiOo`xP1C#K4$3OXXjX1+D=F-Q9xY0ak)EA-?NZLL?PcC zOHpV4;$Jq7Zx}dNsk<*;yh}p+03RSVL(1))Vjffb+52tl|V)6K2)=2G2b3&IyX+5gT$=825y;Th@ffmMlb*I4zPncxMXY-I4UAPZX@ zmH6JiBl0}!+K2x$=$-&|CL||UIypIs<tJ<9t&M0csl>q+MLNQL(X!{HTJZ(2ctZ zRWScB-z}FdrJp2K-3V)&(8rgiQWl<~FM#k>k%;S%Oa5yhilh5*rW9X5KwxLqIZTR- zEPcf$Yv9D-CM-b{ztL$TR`KWfeDznOeg2*fkwHlMOo_5IY@}aB_Zby13*BN(JXhC0 z6Eb2N8DxEC^)fPGYw49A&YE|ZU7Tc!zHIsIu5G3Mi(Y{55Qa5}b?jBiDJUQTAQ3h2 z#?C7JX7SgxAz>=tsH#_IJseX6XDm-cs7yb^%Dpa&v&t&iPwpX0wpsYDWXb+z@V zF-QtuR_-SK)>u%ltpheMEXxN9a#Xj(=r3;Kl9RI^o?)%|N0wjGe&yOudQ?E`KGoF~ z2tmOG2BMz@Pi$HOPGOT|}e+OtMJu8@KV> zGe7hAn*TNX|I$-cBXsPieX`;Nt|vHSH|5GnPEFVHhZWV;`^)RQyShHe)YONlI4)$c zyvN4r1zMWN$*?A3W7Gd$V9B7AmzT%TaOY0U+`rEExt6QWQu(osLqKDig2U7Ac8BIR zpL#yy!=0M>tQxE#4ORiSI6eIBxSrl^f-IfBH?zDcKtrVK2FeKn9%g(2(J4lemG7B= z2MR2>09&I#&9Fe!kIt|?xlSZda$y7GO&%vb!}SL`;M*KOq@-lwQCIYT&B!j4D^oX zMavXv!z32Q2u`k@)$6rhT|3FdP@{0DFA(U}D=$-b_aT4(!$9Md!=_j{?zMIVP1CpYIJA4*URreDuIrv6u+>OYmH|?%&!HB z2UBlD+-J34YlI} zN2lMZpVGW$I?p@%Q;jp%8UqE}n&o#g9uVgIHWlbU7uV;B2Chwqft#Za7#v-HaBuPR zzEkzPf{*j5195oudEk)`3#XV@^)lO(zms|M_U+YW#RZSD?=_Tl1!zp!EhzdFo&;?LE-NcLapp`*dprB5&!6jmmH-#h%$PCb!)uW}Cl*YU2P#s(u#)SH zXF#xAK+M~vV3FHEZNLS(3CsNF`!OUuKR0*J9X4Jmmz0y95s&oS?yjgx~=}fB-uig1bwApus)3yK4djcXx+H-~B)D z^W}cJ_wG5pJu_!_yQ;dn`d89>S&kT)j~GLSON)*Q06?#G@hJcx^2ajKgMZADaO;W5 zh(#DHw6qAFCgYgC$BkV{`UL~8lc6IYkZ4$ArC~bJ+y9174$>N1%z`Q1e#MQ>Nq{~S zxRfx`k-2mTb}&>h@cK!IQc%$LVs-L*@4cwky8YPp{U`Dlq`uEjS&sF>Yd^l?&>uhz zs2cOlx^WDV1y0H637?8y#P$gyO50RDkRTxJ#1kTll03G^(Tol+^qQDebW8VmPA?4H zQ@{G{i1?%ho-`DWN=Jc+ti}j7>>-%W6JbVI1#ZVqC3XH>DtcP`J)s`PWKm5eAq~ZP zRb{o^t+=&%uDY*Xp@^0*a-d-$Bwi3OAYc=9k!mnI?&iRwf^j^4I38;-?L;7s7!goo z*Mc-*;n=+~S>bY$Uxv!&>zu%aBwp{LH=2dI656c@2yc|ttcNS? zoJOC<3g+f=48*4g)oJw16ppXdBvG=#2{jaB8qCzU-riy0#XH>cc zV7eCE**hRG+~3T{+j~=(oMzcnuY~4?V!(SeXZ=3&Wv+%Z`=4GfUUr81!FU!Ty}i2+ zT>%)gmG6<5)l#ymnbAYUUowk`7*smhN#a&=_PoSmrOU>3iN;k~4-IS0`gai%n@OHQ z8}X1*1-T0{-ry)>Hq^JcET?M#m>AhH%aN}@F6pXN32*))R+!&_GGanZOks`k2};uc z^#6PN|EFUmb6IKo%CbzvL6?mc2QYmO;*geI4q@(^Y+DLhuRdYP2rc&3J5WU*@6u+` zrM3b+_D5S&vAyXN;T%zQ8{qYg1T+Ns^_we7U|Y4W4IfGuK{l*g>}OPb~2 z$<)n-*TRwT@xog$x$YntO;Z!EOCn2{nHkh~5g8IVcUW%OWE-h>Sz!ibwEJ}9nVoxP zW)v&WyKXXb6z{)S*%(knAe*;v_dKnPVSZJU%^#;9HsCIs!ecZP-ABd{Uysg`Y6bwd zVI6e9u^mKP{LDu#?8-dXDy4gL_D|6l+o+v5ltW}VSalZBd?rnu4>s@on-fkRs5Y7^ z5Ih2Jg>hLavF7!zD{mvF4$C+VJ0IgOku}XWJIjB($gjZOD2tDcABGt0J`Sd8o!@3_ zmX*z2TJ=Z8?(TBrn5V;~PH%F?C+IYvkV>Kp0kVo7$a`XFfCs-_#CdQ&TNlHPp%>3I zDdIu*mw2!!*3*J#1>P_6L69vhCapXYy|x_j-zQh4+RT51S&@{wM)xM#@q4`bZ z$C=U>P{O&bh`R`08s|20Ui#sI!NAr;6io=6y!Ts|w5`KGrIps`6h83D;>z$B+r?U!6D4t6JD#ZwIB@xHv-eTGMH7C( zXnn_dev^#_^u(@svI(JIq|#vVODDxJ@oggmMo)`1UB$Z#Co9@2IxPL?)wKm80Hmfr z(fnyG*C??>hmzI~rotB4!slbQGX zfG>xAaz7sqi&H^_iS~yEUP9fQ&t}OWb}`(UKePu zY}{$OuWg%rH$4{I_i1?bPb)5qTzhq`yDf#v(3s8di-i;KIZ=4g*m&W8?eLJ3m=JTi z)V`}{9@#9|C@$e3TKid^NSi68S|TvQae{oZbCP^63*<|as(x(+e_%MZe{y`4J(U&v z;9xP^lPa$r@U1_$X1-j19BHIo;@uvw@M}ujNORy?n%jMQgzoPjmF0%tL)tK*(7%6< zyX+Un{gc7{dvAHZbF0mp*piGtcd{xm21k*tfpXNNpZ>X!Qyk4jYFfD<0Jz>01eMdM zYncQ0;Pny5+h1X?rt?B6PflDM9FW5Jk?6dEj(Bqu6Mu{QPI zF;w(C$1awhS%HgaBG$1g2b^X<1?#`L#(!;JB&t`xzyL z921{nda-^sZbQP)=`7txHz%h_fyI~{LwLXl$i=B!Zfqo;O>d+C{leyvAa%Fd6^LcH zH5>BCYe&XC@$B8`MogIRcfw#Gt`CuvG(Cf}rUG+qXF!gal7cfgu{G=pXHIOm9SZc|L$|N(`%tOP|=yJF=6M4(~*8H>v(Vw zSiN?rW1U`6P3DP5JDO*hav`Ud@Pb0M8K%n}YTq*i=7{(wwL34_BLZl6$7mfD*X-wa zR~)=@mI3}R{`C)VwL>**lN#-gg2&Lb{!nrTAe%3)$lu-M=e8!qe0OXb2A4Yl=+n2@ zTPqGO1xiYXEgbZKQe%Sg~%TVvr20-6oLcD&B!n$&&L5Sn^m8_N^Eb09uf zb>tU8ELU!8-^5n-;*}dCSY%K^{Z>b3ZF4g(K~sDEOC4XvOX&XoF`Rd=;n-}Z6UD34 zcTe?J9!cK0zemzCY#V%Ggi=opT&!VTTf@mQr1)CPIlBCIe~4A4Q>0|icUe#8N$c($ z?CqnPJgDASTK=#A6HXrsSXVT~;;-d)HctGoR84O>_N&PGZHVqc$?WU3%_1TIdOVDF z#)zJf4o0`#D%jK-vi=aZ_a8+-(sG$M19~SjLtllRn|F0|06iTq6&cB7JUWM^Joqt} zntV2<2IGY5m|pi!Ha>Bt`&AMHrjHp^GemYJG#F-2okx^K=HsRe@9qH!PR(S=i($4Z;%6YqZfQh}~X+E}d`-hVB9hGPfIaBXP zqepQU9`iQF;s^4nt6jplV6~k#M_sRrZS|BNnC3W(&kOI0e-zQp<7GtC=IA^@~ zYR3vF##Bz+kI96^|5&VUTD1{4@-l%TbR6>Dab0B`jLYua{Z80q>C+;I&+u%WFZI_N zN9CjCMx;^kYpD8_ePxkZB#WZ@WCKy2^X2&UIPOuM`ZBs+ck3RLskHSSfMTkD7@Y`1#eT08U7oy0?TK7s+y?<4Gh&it$G_dM` z$Y|!-Y+H2vbJvF3tlrN*5(-K$B=0M2BJZpyjt!1v5um<@TK8 z1;Yr|`g3chhP}`yR&R{fdXc$iAwqNHyVc7gclP#Nau^0z$7_auB6qCtxBYi^M2`q! zEhJGKvWgJz#~@lR828HqLD_Gi@gF5S_Rq-?!sw*Ai{)pXZdt7*qLj*-)G;yD(u-Na z^5;XQCAs2ofKog`P)dN%@o&D+-gF5WusU01#p-bSJG6*z5PZyE?BD9oHVu6d7K4T) z;jM!#ZiO^OH9=*U`pS#39UCC0fw2s6NI{d#Kffo)|0$*@bbEsR;;$`A-OJQ(r>kYF zLnk7EArJAkjg_7ysB_HkQP5dcwX~t2twgtll~trYPTyO&VW*c>jfn)pi$vVXu)~Wx zVjj={-X6+`GM%S(f$sL3zZd{7;pO!;v$nQ&LVdl+-nuX)0^Lsl8nVR)bR58J@EH(^ zRp4j`Yl2lek+<3^Kfg#kCKX0pS0^+lF55#dDw^U6khb_@%lN_&ioyF8@MHAf=cX)& zGNq4JaXrUK21(;)+ld^A$O$N3hqHW_`_ot}kY?qrFF2kqov07GdH;lV0i`T2OY%Ynx5mUVri_%CJeKb`Rx8}N0EF46-Xo8N7RsU9;< z=7K*nGYoQMTpicE5d@%8H1&IcSh7{9O zA>?N#q=$tF3 zuHZb*6W8(llTp;YAUoLN?T#U%1X*MwBhs;QJAOck`*iHcF*Kp&0AIm{Y`^(jXKBxM zc4aMZd-)Bww!vJvF+btW+QpU(DjNT1-1J1{yRppPJB9jt(BjNx?_5kikQt?cTe$87^{ zyL&bqd!~rEaJ#y>F*4^fZ{A4b5{2>0L{l$mX`PZvQ{5_z&ZzYF_F`yUQP4eU_=zfw zf^uTsfyU)!+Ed3?DK!p}Ju8~k2O2H+5g7(dl1@ysXSW3VzT;Ai)k@~;?(4i;@TRBx z>>g%^bja_4&mqp;KjX&~_5iJ3xJ<|WvdtBZ@seZTTYCG>MBduDC$Ho(CNrH13tfbr zlLxK<)t{y?x*{K#!P=yR>zZWvssTUYy5^HciM>ujrb45QdLVx?-SN*KM*pw-PfwZ# z@FrxTNqEWl3Uftih+RV!3gM*kdY5QGaq+3FDzBJ$><$qC&;oDdU+b0+m+ zzkFk2@=|ep0qXq?2?3D&Iw2XiQ17Ayf9P0RwzhHc;`&G&3jdfOcsvEueQs;@AU&Cg zwX#^H2-bP-=_o|!6&CJ<1y`(nxn~~H3fKs`K5P z(|p}vG`H!ZY6u-u*^lTKjpnsjB=}!-_r%Xn9#2KNkRBfma@(Kn)u`q*C)%G=I;wh{ zo%q)j!I6iKh2b-B>pM;*daE3#>rt`EhVyRYDfM z3Ea=B;&(*cMq*V035Km=bjX9#yF`~aD)|Zj2F&A-($LU!>H4K{=Z0J6Kie?Ui?Cq1 z;FQ+P=PPaiG>0Z~fPmm-MpW>i=h|#b>^$4m4uWnocPaQlA!HxW?0F)~9DjDc>Go>3 z1$m%#(aZZ)t`vi84VGe%215{WU=f4TnztMKHfjAco5oIqpnUclE|rMglk1}eIC!gf z?xh#o68d_5h=GK3M;{UyiK3w0;CC7*`%>;i zsgLj~l@}Bg?965#JC&FCO8Nl+thwg1JF%MRmd8@S_cMj>qix6eYuLr5o}?C+C|A!D z1({;ispg|Q{H1XPDrnK1`WyrNocmo$cM;XoP`@WL++1NG;HCU=<~TQY5tgctfcO9rQ)6uC2(`XkRMC%x<6`W{a@8Ajjb6 zJ=b9@;KeOTO3JI4dr>-EetLR#Mi(0!n-Cox{b!{+f?dYino-DcT`ex{N~`3^-h(A% zE)#9lc?Z*4zMD!$`w*dJfXU1Cj2Xy+I7a9PI>_cKMtbR>p`qm!6m)lXeoL+gpT`pn z!RZxQ*-ytEW)qT4N?N@W_|qeshy1`)WdahEbxS~wmNjhM;l;`ye(EfhjWh% z9+%#v2+*ISt(8jeTj#ki4d()@Xq&#oAP0E)+db=8cUNzuoT_U&8h&}1j~dk?p~t_e zpF51i&@eEdY=1agwfRe1=$C})SN~cF^=fT!=xMP5**|LLbp|YmH;)uneuJJlnB9+j zywaYz^s}O(BF?e2E|ldpw+oh#k8p-oeeb(>?@AUmMt{`hT>H|jw2}k(nddK;(4u8; zj?Hclx~OIwMYAWfeh#QL^=&_UJxVaw91h^7ke=I3XqvThrT);}+G-tu-~g385EIhh z`pVfyez{TnmhuNcg{3F%!gZpoD~kiKPD@yI&LKwFS#R?bxzGMg$e*gsxr= zz655%hY5woFHUpO4S%gOJaNi0Q5opYxF;$bMSQB3nqMd&blk2MS#Qjr$TvQgn>v7+ zZf7bHLr&oCITG}!tz)3p;mxPYeU>(_{0gQ8KZI#-WPf(;iR{4k!A{>Czyd}8nEEE$6B#HI+q7;L+!O1nw_~ajV9$)Q`Y=1 z)*yngs6K+#aXP6@yKN#fBlw_s`DGbDT+qXFE~nmn8cyPxO5w8_Na8Y<4@DM3JE61v zcc;Bkzr@ZMw+fV2#Bi|o6 z)uEbSB~|t_#Q%}4@zW0}Sfo!`1oB<4er)45VDM0kUNSx@kV7)dGN+xV?baXYSZ?)U zbEfco_i6tUIWF3&nFpAq7h)iaK+ZUHQs5wEjkS=Km9={g(1R3k3VtQ`XNS4YkzEiI zH3@gx4l@+#WuA?SgGaWbIA)|j6d{&_(R80|5kuS0$W#z_WkqLGES@FITa{x7%rtNx zKU;H@#NE(_&~?H^%+E*n;$ZOr>b)UPhoZ~H-Z9(5=vcTD6cU0y3HrRHR^WcQ7^%Qf zUv1}JfVTc;8VuV)Yxog*!LFz&qH5`EN>*XkYWa6$bX40AeE78ZKo)HQf4E;fDBC$O z-sKPB`sn2)`b#Cma@Ec^m=@-hdeAExa$%wCfoQ#X<8dKe`Itx6^m#AG6-J=|{WTcf z9F_9`SWMgU)8`=zy&gfw2Ml2ZShtHN!JInoj2@RnC8E?34?x>(PanC<`?p$9Uj_zp zVgwIm;W!Z6p~KL_f|VUkY4t^N`BQGDY{?%XDtCAHmakWs+uN6Ed)PQQ+J=Vc@%G#j zufo3lH`L|sB>S%pbs9cPukOTa(3DsC2T3-;QBzwOqLGF2d)s*%-Eox-EDhu7s!=(YtTI|tiNvmVWG z*-zKi9;4_xUMxJv0C)nc#ub-VoVtvLHc$9da|DqA>oy`}28>9zr9Lzd*sDifNLySv z*sQ*!%`Zgun>%BOvt#&W>jH7Yz+#GU6YkNOGUKzuIe}l7a5O^8$S8k$&bgyzy|YxJ zm4)6JI`R^~7@ewKX?4uu5rJ>2wzwK6(_f_95Ul@^n< z9wQ@T2V9r}A4c$NNT(eCm=DZ9vo((l#Joa%=c$P#qT5bhEb)2oPhi|2Xl=dR;tfER zqN&*weCETVvqye=?#!Aoe!PFj?r3dW{Y=;CrGeaX#{XEyvkfFLb)NHn7$INZUdKEP zL6r%Q9v)|j4$&7TgV}?{M+xMA4tw2!4i5)+;x6*~b9CmN?NBp_vNHOIkrV_VX3+Z3 zCpIu?#XnXmZy*bOj5!GefQuMAR(fQX@U3Jj3CgL2SGy}CdM<<}UfY5rT%2=T28}!j zK!%t{SEKumJcr0hr=6Sif=QzHh%v0^16<#F#-ebgeoAON$GvrYR#jHkGEy?w{b_1k z>;Ly3-|h8+OQ&*7TA!MScY}MX?Xf{x)EOk>WF!%QK4$-&gX3R>%0flDo50grKw-_b z=r;q!AjAAF-CeF-s%Cp=X$-&2@L@9Tl@Z{sR~=XVGy|RySpT)!FI>eX&Lg1 z>{?%5*(piNnE-e%DZkT)`On>8A#+s-Hpo%@s69mlYB0Eq+(Ox;f!%%acWg(aC7i;T zn~ER|2K%T5R*;?`Hawr2zs7lQYg_Qv-?Cb==GLn|r9*|+;km$(IK|^eu({kYgBFnf zqvNaD!2NL%Rh0QN2O)PxPsoe#O6kvHzP9D^UBBWTrHCFw>7;=asr$6Ic=kghkA}QS zQOdo?D9#l9;B(PvxEk?Wm|?AhW?&nV+%9``V<3F}X%aAylTc(YML7+m^5a#oaLUu* z84zpB$o+=fZXY>If0pJ%U&|6>09q6eiZ> z5N2r*zRw6+Dya7q=)ov3KEX9FPbIOKmyhqYW*V7eQ)nngALtl;M)MafE!I3L%+mmC z^2zhU71dd4tmAk>`*3G_1KXtG2LHW|0H1R!oj7h~i%nvmXk)tl87;z3Ji>`}1k-85 z7qB$5O%ba;Y!&Wg9jApll#AHmt%Qm5v^Ee@Fmyyh0r*Kc`x;E+ zwGM?Rn`9G=`-J(? zTFqaamfPML8Fl^nLns?pYw2ACMvdR}mA&nO|0{zJeP7va_k3b&QSo>aXjyKjH8+do$(NKi|KBSOEDj$;5Vw+<*j zh0SwZ_KGC%$YD-%)e0reN;USaPmbP znPao_d1W0;?j7PX)Xi;YX0{tH3?B_;=-zJ{Tx>h~Kab)!i`IJi_-xdbZ~$3$ZwdYV z{k>peqX;&1Ly~H;N)T*5o}($}ll5hVh6c~rnBGK{WGXxhTVo_*D0szIJMrQ7r&j0r zQ`6)fQGE6>ze)rI1V(y#e|}E>uD(XBN~cLoN8=jAh2(O7IyOWLfT5*xHcy;9?K4`o z`hMpfmzISxSXc8z{;zpxAkU0uEiCeboTy5!-YG$f=oe&QG0Y@Lzf;NZ1v`DvL&GEu z+Hd(m1;E|D$ z9WK;sZum{!wRZfgFlR{B(z^oQiTOYr=~ntJ*b*9;FAELy}m z|J2EX!yte#SVVKqMnFK|i&XXi;wx7J!DUi5e)-+Q`Z0G0& zqN<2eqh?c&7o7}ek4b+Pe!|TWv$E#tCfba3rY&eTKanC`nGX?mS=i4rq>dVii(Qj? zmJ6kSc9(}vNK4Kt>qSATsSnIq*VNh=JzPJ;LN=0vkG4bzT zvZ0aD`awnehri@6+TcluGR!{;@ibcWGX1aHPyhVI#r?3O8crBU%gP$khF*l&a-@WZ z@%8GCi*wzxlNE*l&~kFB)%c-fV$z$MjLvO^LOiMu|xz%}35-rhO z5z*=c?80>u-IRef3K~e11<$bFuNYJX@4>S%hYwGWP0ztRkw2f(Ld$AjxE&>&pwxH~ zMvWXw%d zjSi}lyU{LnUea1Ln&TDYl}^^LNW_)pP&p!bmO)R9VD~m_^JCtUwhJD z*PTUMB&%@d=8iNlB>IMpTWdF?(94knAJWJ((hS|6y*-|4GcQ^;=XrK(ep;4vfxY#8 zy?KiaZNQ}FGb~{o;nsZP{rUCMP{rZNF$iTqhc;KLp&~ef(9@kx8@g1N3 zW33zkJODEGcF;9?xIW+OROUN#2j}>(3bhX9m}?7q7rPBxY}2!S|P|rI~S^iL>3Tlgs zi>!?%QH6!916$|(TWGuB1jbu}OY9Iv)DN{&+cc&tYgFM%jO;{~LnnS~d%dG7{aGKH zD^Ttq)kq9oBWP}f-#GO>^Ra+6fjmaWqH<{<1@wYXAA*%DP5*|1AHf|KHpH zw+@7V<$phO`G9TX8Z*t-MzxLH%IU(o%+Lr2(o!#nND%7mr;EEX5r^R!>#xKGOYwTQ z5Whl`Kg{*Gz?ZH{eInm@8N|HQ23jor?ozovk%j4Ae!jp$8vd(uNWXxT{ zga0}m41;UtAl>(?zuRNzE<;_W=~IG;K*`R%)zf+%01b5Ku4>HP{>kdGQUjrgu&n9V z($(!5^YQXJJue5%TGuqB;O{OHrJVbfRKn?c( zd>I*_mi~&P>OOq{w;Y?SLBu7LzY;0V;Fw~3?A~t<#P7QjPH4n43bYS9A08dGS@E;C zumJGzqA}r1nLH1VutqEfF0e+EF~tDj5mQP%RZQ>ZpFaE0cwST0%sB@{utDETGhL%W z2UYJ#eKA}+q&TIinnM-#>*#yi(9Zeoq=N+Hl7dXPh5Td}^-jROIfC<9LDBwSmC}*e zWi1#>L_jy&mcS$pjlzCxb1bZS0H_uKxceQOkr7#L+FWg?o+hkkq{(wm`2t1vXn+}m zBO^W7dmiC7z%`1lX6pj|Q`l<|{PS>5l zj}ZoX!W}M$&oRRW^>}xj=CSkK`3;p+;BMJzQ*zww*MH4^<9@2nnWoc$g ziMnl~TUuGod0bqWLvtbm<5%onbSekRD?$`uGT$%&BS<90;D9MQ5rl<>B^Q*0zQfA^ zMBl&dldi0<@BgKmEEon~BwXp@rUl7LOe`!&h2ulxzA*$JA|=DUvBYzO%H&d4o_!{% z2n{)qnWrObIYhTHSLY}~G;<3041h3MWCTRkJK2RFUy%~5u%t8p5DROES;Q2jY;1^I2Sr`KW`6Kc%8zF zPMW(0##dG{8JU?a<6zQ`^Gyac?`Py#W)~K6;kFsLJz-q!N;C)6)FL#tkUCmskah=7 zV3ca``Ab~MbN%)!>G>u{JRp)HvwgDokhL*gc7&v3i6o>^mIq0OwNmIR=+E7h{as!& z?$&#X`JB2#mA8cXn z{3T@s4S2cOs0fQSEiAfJ59Vt*DA0uaJdxTr-kgr6iF7G~wJ^IL7e3P? zp?zfHbh#;Wc`ewWHGf=6N=QTmcHP}@20VB{c6@vs5?!!DxP5#aRc2gYO~vT3KlQC& z>BtZ^U1n@h@@SbSTrq8=Z?U+40_U#fJo(EKHtdlIj1k)H)Mz|Es4foF=ChK6CA+Hy7W7+E_;w0!wuk@eucpj^LK1wMZ*cex+`ezV(xO4eA za9Up8ae+DPp;~8*2>7^^O>{1>+|l#1e0s|5sHgm5HBQ8msHuCtF}H8a{w0DwJiAFk z`hd0#{{5v&hA(@%)N!KKEbLTR=d@to)OfC4Yvnq9^YV1X8=Xx$2%d6d8?1o)jinD? zPL^??Ni;I5CGaf)UL}=TP*9+;b#pkQ{sywboiaQ$-WdzgTmMs@HisT9ZqwGx;U1~6 z1-ErEti9od23dc;_B^AeL0U!CL&AAV8r;FMoT2ErVKzKGyr;kl8`u_AUg>A-%iH_L zgqhso0hbT4a8*Khyu+Y|x&G=KzyqGt#e&zCBKTS;GrrK-rs^+D7Zc?bSFugEDphnH zOU~9$l3gD!QBqS=4~&i?(mKL3g=&|{PZ*!dn{aTa?G=Z4PB8g@dT%_?l+e{YY=UmD zJT7;&IgM)2;eK7|!{XACH#`ze#G*kfA@LHxr>2hT>5(515wYI7Ip0z(yNUE}H7CBp z;x>L992#F*qM{P_{(X+5VvPnB83mtE(afDDy}i^N9XT}th})|z5_gpGc<1vOpP!$J z%+kM9AK(Xtahto+d}fo*3!$~d0#}brpTv{c*Kgc0UT_x3q7JjsRAd+m9CQ1&e4&3T zq?A<}DoRy=wAi~$X1&hAMiKjLTQqcOL%>qSxy~qT-iis_GSuP080w-G`%Ow*q1H#9 zihvoCm*mFE=i%;PJgc4%g4>I6>1QOZtEnP}-I+2xfR>$IC1sy=r)}9CoOX(_Sqsn< zyRUYF+-wQ6x{0z5A?(yu@WuX2P9{sEdHE9C$H#|}iK%mXn&i!!H( z6#Dqs17nqQ<0u6E;jJlRFg2o-RP@|yW!RR!<6PdF>U*!nR{^UE3>v``FGBXg)0IX0$S=CsYki>&ovG?9IntG3|j1f zu{M`2_brxy6!yCt5vO zq(J+Rj~^l~Q3MQ%7X49FfXXHr6;-6L(|qLtCYLm-x7@4gfkXGVoAkcH!Svt0eY3tf zUUJ+4`zzmf^L{Krc}pYRcbIz#9S-H-a?X$8}Xx6!d1H=nX~y%vvFVQ~lBJmu+#PdV<$F+wpWEHxjP`{vEro5!0Yf zxdo{)|84Ts>*?!zyNpwc{xXeY%f`kgTVdK7{PU|-+Q^?eo#T@0-8@UOF$@6kKm1or zkbp;U{d(a%FfOxv3+w7Wt*%rdX#7im@4?x}f7K#9JdAFV|J~!op6yC6X9Pqg=m^vg zEAJ}5s(m1Pf$^eLg6rf7+c`&Ks&~1Z`LL9=G-WbP?dN(BTx6{33xFy~R%Ry69QfN7 zZ@T5xa~6jpWO8y6=!vHxtJ>=CI6^45w}8T#ij7STZMACtjg-yB$;sQZ@O>#W-Uo9a zl!(R9&P`nPGkmX8Tznoy)BIh%dc2Guf+tt(gRi!P(A`dExwSt{4Agu?@ZFaF*-=X= zHZRf*%hTVzJu~Q7;Tmei1154ndwzt{(}#6DR>xVqC(mObi$|*42h3@5a8HN%kmc9j z*t$%Sy_NZqwDQaE>@f=y4-1`*-q1O#nYf0_e3#u$;qhth_tGn!`nTu13v0v$Gt;U; zlL<=xwUIlqrU%q(C39Gb=U=!}$EDEUujg^3NZ24E3^_j|35EcV4-W$%9OA96t$l-Q z&FN;nRX;9#j=EM>Xnd{@2~5>oy`{B*iJt$|=I!}rxMHMr&uT1Jnz`Bf#>Ql>5?)V# ze>dC)M@%(zzn4f8?1b;cbLWUiNEn{2OU<6S@EvPH=&tGNUGbSGo0l3Gdnwb7tvb2e_$NW_puZwa>ofaft!q=z+oUI!S(Lz6~7!-8O4;5 zgtQ6{_?pUl=jze0(Qm%?u$57%Az51O3k-bO$2yqmhIiqaWDxe*m7eBrBtG2oOXJy7 zc}M`rAw$=nYo{Zni$1VmteBJYc_s5a$=nRS_6-CJy4&alW)ePw(N_o2>OM~v$p&iF zNWd;dO}r6bu85D?hf-0aeHU(b@(6YeM2jsn8J;ZFV1P{w{1-%qB~=CbMSt0(0s>^t&14 zGMbP(?yO^P&=MykX(IimwV3JbsiSP4pMWO0I!Ag{k|Zl2AON`|nO2KlR(%sq8T_Ba z9X%oU*Yp?|7@?lz|Ig%i*$NgX9sEViPjF1}2bJxAkAe`ueJF+BqmWQzk&1AB;W%$^QaNuLsPSA3y$siB(h=9yadP!JlhjMywgRJXKW36z?7Yz* z9^7+8!SMl?i8)qmF-jC>b?q?1{n$PPdvpV5?Q@>O>ZGeyknk>B@Qh6{P*w^0EfdtJ zd%7edxrOa)N(%^>Q8RRW&uE>ixuK&-m?}W6!hC?<+atSGfM23=AH&MAA3q&Sa4ZJaToyLT4n~XX1rX3M$YP96yn+7BSLe8r zXXR*@=;`exP*qjEmh8EU$m0h#KX zCWS@4kJJBn_7JXp`+S!gU~)#KEdB60T#K@5aDN~~joF#wnF3{)&8wnQhHrfnktS>19s@Vn%v8l>Y0_ zSZWb<$G1rZ@RJ+xIyHFSK8Z~;NvB$j-|cur^z;6?WP?tShG`oQOqQNdo6KX_xV*`p z2hjH~r@29vQ3`raO%0uSf}>-v+WT`_n9%+|K0OtesR5)^MXTk(>w%km5Qi5&Yrv`k z*xq+lmXg7ilK~9NT68>N$W&l5y|X7GEPFv9GjEc8}O3@X<5r%Pm=G&qKeF$?k%r0umLP8){r!k)}< z`E}xGfF5VfuDJLWT8ZbFp%aWbQbYL29$yj!WyON85rNMx;$bA&Qsi5+N?R?nc|TLe zA?b_lD1>aZv0b&9s_8lve10zjj&Xj*+2&ln?`iOU4f4VR0qph8Zx`S|BPnIQrNx+FPGcx)CG#AXxO6POM zaCE{G`JKJJ3Nd`&;U<*zWZykRSh7_XHz;X%OV`Mry;<_uOIpzvm}u2ud5G1b2gS2} zpatVkK}L<%FSHX@n*C?HEdZG>z29OkeX?GnbG$|^pvGGBrU+?-pvg4t<0K$?5T?i3 z`fDQdsMn693~1{86noz`{Ba2*M+FkLXJ=>UpB}=-#wNcsE3H7xw7b6EwT&?;{*vk0 zze^ep&V&@Gv`A&z@@ggX(zjz@=GepT4_AQe{Dgz+K-d6d*q7^uHSzc zvObl(&5%oH^A33l@ValS5mHbT|2wnEYj_S!q=oWX`B&Pg8dg2%n$yVAs$MdG_a8YO z{>f~JV}S{QBa1PLh|brpn-ZfE@l@U5# z?6$TxMy?||?!G0|mIZtt(8u7V=qDMT{%`Z@sxk987ED~t;auITuL6=*y7MnR&d@WE zxeSt&Z#rnO2fHocP<_ykVk22nop+W87ftSb_9`I3Vg*_v`f@TXW54UiqrRbutB6)& zm`1mSS-G*&68Uw2$?z*2o|5uajo^S`4AAM!Iu3(UQZW65N?m6D*=aQU5@M)^ino#g8Ug}~lxGyv**oY`UnG`Mb{_9W2& z|Am|R72^tnL>X;X`wcF$LsQ$|ppe`UG(>S>DeExQGb(r}Ui%sCGXx_}(k4DJvm zhnZ7nKlj@M9ze#~`B2P202kbInsyVfhVX%$!E_*N-FGa#r%wTsuntUux_&+_MOr|Y|Nm;_^ zTUe{g@c04yC-r)Cb)uTkr<7tIfwD=*4RP1eV%Z%qBh%$fv2_dOaB4b-?I%fs-~*v7 zvIAa|`wlKNEZO{E$7kXWMh$#MF4TmBd&M7(jRbml60;;PFrZPmsnM(ATDmenrTj2Y zGSw2Q!4{Ce^KXG>)lad}FwMhYdbm6hDg<_mexg&(rT%BN_7j9&7nSkU!ptNzhC33n z6jbDFkh2XTg8$LGV+i|}iit(^xJQW6b^s5^60g?S{S9H(^dVRe?h6K(lX)f@JPgEmNF3$QK?B|T(XGY-RGLYBQ!vi_eirV522%24=nk-{0fBq zYv8|L+M8~AyHue&Sqo`H(|+#3Xls9xl4>bxYB9#ZAZBP=SB~YSV%ge)AEZ8PnO>b| zTHuVrMgUM1bDqoK8FzTqHBNQ)F2agJUmXBYQc@zLpu|>I@^;>Qpj z6-dd-3+wUIow>*Ti{bXGDf2CL{0v3;>CAb)htpc!g=?+^v#B1*JN&6Zb%iFw=@k?# zQha!-53oQ%2h@M;7Dx(Pck3@#i^15+4a|aWZwbT!G&xuX6#&ZgnguSY*}e=}ycjca zI0=6M2v#sz0v?tVcU?lFX}(E*y8iu>{X+bCL?VSB_r(jQn_rkhs9L5wL6%~km7f(l z2Q(w>KYjiBhEkxun}L;8d1{5K=8;qHQ4i6$k0mX?Q5sP-DLVVE`fjXJqUdbkkJ#A@nbe` z=(^IshwYHxEG8fqQpEwaS*1j$e&R4jMs|w->t`hKhLNuNTxj6KoezxcSY%c@I&HiE c?O@U_uAhecl8rFo|84-hQP7Ytm$mT!KZVpbLI3~& diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index 70f58b3159..7dfaa4a386 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -385,4 +385,10 @@ datum/gear/darksabresheath name = "Black, Red, and Gold Coat" category = SLOT_WEAR_SUIT path = /obj/item/clothing/suit/blackredgold - ckeywhitelist = list("ttbnc") \ No newline at end of file + ckeywhitelist = list("ttbnc") + +/datum/gear/fritzplush + name = "Fritz Plushie" + category = SLOT_IN_BACKPACK + path = /obj/item/toy/plush/mammal/dog/fritz + ckeywhitelist = list("analwerewolf") \ No newline at end of file From b467d144efd84728fac9d75fed190dc127b570dc Mon Sep 17 00:00:00 2001 From: Sishen Date: Fri, 7 Jun 2019 05:53:07 -0400 Subject: [PATCH 234/370] pridebois --- code/game/objects/items/holy_weapons.dm | 5 ++++- icons/mob/back.dmi | Bin 98124 -> 98420 bytes .../mob/inhands/weapons/hammers_lefthand.dmi | Bin 1136 -> 1272 bytes .../mob/inhands/weapons/hammers_righthand.dmi | Bin 1109 -> 1254 bytes 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/holy_weapons.dm b/code/game/objects/items/holy_weapons.dm index 3fda98e074..03dc7e8120 100644 --- a/code/game/objects/items/holy_weapons.dm +++ b/code/game/objects/items/holy_weapons.dm @@ -546,6 +546,9 @@ /obj/item/nullrod/pride_hammer icon_state = "pride" + item_state = "pride" + lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi' name = "Pride-struck Hammer" desc = "It resonates an aura of Pride." force = 16 @@ -553,7 +556,7 @@ w_class = 4 slot_flags = ITEM_SLOT_BACK attack_verb = list("attacked", "smashed", "crushed", "splattered", "cracked") - hitsound = 'sound/weapons/blade1.ogg' + hitsound = 'sound/weapons/resonator_blast.ogg' /obj/item/nullrod/pride_hammer/afterattack(atom/A as mob|obj|turf|area, mob/user, proximity) . = ..() diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 6099a3f0372af2689817560c25e47031d4969806..e3c80708c3ab11d0b33731cd5ac0d71dc89a0227 100644 GIT binary patch delta 14117 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 delta 13797 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 Wrz}$Mfn0$A00004SeRg}~?Nn$CSr;3sq zr)e6mf?BdDsd1KNIN6$IBH`)crp7E`EQM@6e{rT%Fiz?*VH}0L-?Sc#mO4rr%YHDX z&KZ8$Z3@>5x9(R%>YQzFPl4O9@7LFnj|lW3Pnkkq*kt1I=CiUS`FMxqg~bz(H;%a3 z1;qOkI8U8tX&SP`dOOF|H%pzfTllVfFyJ-=0000000000u$5xr-7X-irhKi50yVeNF%X00000004jxY<}H(A8(ug=RBX7&+zc^w)uaS`IQr%?w!QX z$J^%rnda9}+&hVvkGIYLGtRG|xOWonE20%kGD=Cf8j+4 z_5Y0Xt4Q}wB7D4+i#269qjP}&C!;MW?w#b}mQk>SLSr#1ecHQJ2k+s!^*KLbK% z<+!?gpEFtO_a=gT=rEiO703Sz$GfLC#sL5T00000008WT9X`jWvB&55Bs+bMPa(>4 zd~byNcyBCW-P8-CZPPm9z5G9ae>znEToy*#zFAIiw)=l|prHTi1?T7IzP`S_tpF)> zUf=)#00DGTPE!Ct=GbNc005Jbm4JUw*aZbenJKBbR4FUC`niAu3jp65Sq`egO`iY& z1B^*TK~#90?V4?KqA(PNQNW0{R-g*%PIvA9|B)Ns2`0gtT$y&}JRdA@xhIDZ=y=*7 z0002+yI8$KghjNKS~G}EMOZ{TskOh@RD?ye7YoDC-=QMHBH6QEMN#A{r-*;l+iPE6 zgR~U%_os+d+guLorNZD(6{+`G9I`BBg9zDSEO|~^K zgHEj1&1Xxu6aE;3t5x&a((K6B=g1&+32Rpr+uN=p4#Q|LNPm7c4*7ncRmAcQ|6^{k z4$W%@000000002o*euZD!$yCQTf}k>x4|ZHFqmv)=Q8XPu_rg}MY8i4bLLB{Qr?KS zeL$bW{abgJUA`gDL{H=LPRI!qWQVdR5xXbG@-?^-TX}=GkfD4^yNgn2i1}y8kD??r1}wuo$h47$${07kv(K%ZCM|kHFHODD8_%CarI}6$6QKt zXoQ-LQOmRbl=Tot)5&;(nQTm3etH#d)idKLTG0&>UNdCgS=9gl000000Du)!>}8F^ z81uhbDMK)4jrch8zu90=7tC2BKIZ&yHW<_fbJmEDH~*Up2E{0t>#;_B8*y;T{|?%l zDNKdFJ_K_;)`-tL|C@gwf6QJC!CZ$m;`{K*|2|CPKNN;DfGB`Z+4Ss)@aLxY+<4=RR7hxP`q45C#000000KkD||6z}g zL&UcrZV}&-I7NI5;u!JKIHpHSHA^#d(J|s9kq5`mlck!SQ)7R1F5)|;=3X?*$hD?5QCEX3yBaUSLYe1f-ItY_M1C{|#uxFp{L2c}LSEFz zGtJY`Rh!z4wxoZGLUxlnT7yL~_0U!{vzU*@pe^}obyN`jwO!*28$6Vn8=1SzLfcu7 zL~75wrs-jOlY_f%IO^p&v;Y7A0002+3}3GhVG(Vm{xXP7MOZ{Tsek@rQxO(XRxwqC z)n9P``o4er$|)lC_TAUlAT0&`{V5{VHkZSDCClJX6{$w|SsdOumWn}y!{O8ZY-1Tk z_|~Bx=8I%}TLTBE3q-r3UbxEW&#%TI%S!+N0KhNfKhC)<;4RP1*#H0l07*qoM6N<$ Ef^7})xc~qF delta 888 zcmV-;1Bd+P3DpRY7Y=|30{{R3ySmp8yj->+oV(TJK zicZDCFtk^=DB`5#MBqnJWLs`gr28D$>Y7W7e}eY<7Dd|6t`v4##eu$Mk?!1yLMK}p zD1ufP3yzgmXwb!=B3Om7c=p!{T>uXfxjdf|Xhab7$AR%A{51l7zdsK2C*t)f3B+z; z<&JXpwrh#QFq#G8pI?PScfZeCV)2ImHA}2Q@tPqBf*=TjAP9mmBRL_%hJ>M0*m(+5 ze=o@l1ZIiIJcmohuIQvI%Ptl@cfPbP!U_AjdiW{4evPYa@(p>%dXmEzCMJ-f6^fjU zT@LiJ6_~J8EO3fmhqeQb>V<8_U`saX8jpHC$cr zXOC>-jSXS7b=J=vN+FXoS&!zvjYYeK4IjzO#*#Fx# z29?H~*5Y&P|LqxrOfu#sv=(2&?neIKUAdSH3QY0Yn48dAeAfQoet(%On~k{jIfz4gpb6}GC!J7Dg;55PWcMb**eUIJWB~1N4 zME|uh_aVSGC-o-?f*=TjAP9mm;M{-M!((9aorsymcP2&_--#Gnd^qwV*F?*rgoB0_ zABxJ$e;%4>Sr=e*&*IAqI2Wc^e@cY3 O0000@2Zsm From 1a5c487e22c8b01c4a4c85a26a4779ad8bd82eb5 Mon Sep 17 00:00:00 2001 From: SkullyRoberts Date: Fri, 7 Jun 2019 12:37:37 -0400 Subject: [PATCH 235/370] Ported the nudity permit from RP and made it a loadout option --- code/modules/clothing/under/miscellaneous.dm | 12 ++++++++++++ .../code/modules/client/loadout/uniform.dm | 6 ++++++ 2 files changed, 18 insertions(+) diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index bcd9642662..ecab9d8edc 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -749,3 +749,15 @@ fitted = NO_FEMALE_UNIFORM can_adjust = FALSE resistance_flags = NONE + +/obj/item/clothing/var/hides_bulges = FALSE // OwO wats this? + +/obj/item/clothing/under/permit + name = "public nudity permit" + desc = "This permit entitles the bearer to conduct their duties without a uniform. Normally issued to furred crewmembers or those with nothing to hide." + icon = 'icons/obj/card.dmi' + icon_state = "fingerprint1" + item_state = "golem" //This is dumb and hacky but was here when I got here.//No, it really isn't. Why make a new blank clothing sprite if we already have one? + body_parts_covered = 0 + +// sprite_sheets = list() //Dunno why this is here so I'm gonna comment it out and hope it still works. diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 81e17e95d3..804039a172 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -283,3 +283,9 @@ path = /obj/item/clothing/under/rank/trek/engsec/ent restricted_desc = "Engineering and Security" restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster") + +//memes +/datum/gear/nudepermit + name = "Nudity Permit" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/permit \ No newline at end of file From 6ff01f39f390947b9dff027f930d57aa108e691e Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 7 Jun 2019 11:46:02 -0500 Subject: [PATCH 236/370] Automatic changelog generation for PR #8236 [ci skip] --- html/changelogs/AutoChangeLog-pr-8236.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8236.yml diff --git a/html/changelogs/AutoChangeLog-pr-8236.yml b/html/changelogs/AutoChangeLog-pr-8236.yml new file mode 100644 index 0000000000..3e266fb6fc --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8236.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - refactor: "Added unomos, which is basically listmos except gas mixtures only use one single list for handling their gasses. This is a significant performance improvement that also offers a mild memory improvement under normal circumstances." From 5a9269db73ad2a71bab0e212ca7842ac852553ad Mon Sep 17 00:00:00 2001 From: SkullyRoberts Date: Fri, 7 Jun 2019 12:56:25 -0400 Subject: [PATCH 237/370] removed duplicate hides_bulges --- code/modules/clothing/under/miscellaneous.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index ecab9d8edc..6da7a277cb 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -750,8 +750,6 @@ can_adjust = FALSE resistance_flags = NONE -/obj/item/clothing/var/hides_bulges = FALSE // OwO wats this? - /obj/item/clothing/under/permit name = "public nudity permit" desc = "This permit entitles the bearer to conduct their duties without a uniform. Normally issued to furred crewmembers or those with nothing to hide." From 39775a08ac96073dbc3bc51288f4b24016985bea Mon Sep 17 00:00:00 2001 From: Arturlang Date: Fri, 7 Jun 2019 19:56:31 +0300 Subject: [PATCH 238/370] Update RPD.dm --- code/game/objects/items/RPD.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/RPD.dm b/code/game/objects/items/RPD.dm index 41ddc22106..0549ebc474 100644 --- a/code/game/objects/items/RPD.dm +++ b/code/game/objects/items/RPD.dm @@ -331,7 +331,7 @@ GLOBAL_LIST_INIT(transit_tube_recipes, list( //make sure what we're clicking is valid for the current category var/static/list/make_pipe_whitelist if(!make_pipe_whitelist) - make_pipe_whitelist = typecacheof(list(/obj/structure/lattice, /obj/structure/girder, /obj/item/pipe)) + make_pipe_whitelist = typecacheof(list(/obj/structure/lattice, /obj/structure/girder, /obj/item/pipe, /obj/structure/window, /obj/structure/grille)) var/can_make_pipe = (isturf(A) || is_type_in_typecache(A, make_pipe_whitelist)) . = FALSE From 57246b5c4f0bf7be4d2c8caa033850295baf9902 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 7 Jun 2019 19:36:09 +0200 Subject: [PATCH 239/370] No combat mode message if user is on help intent. --- modular_citadel/code/modules/mob/living/carbon/carbon.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_citadel/code/modules/mob/living/carbon/carbon.dm b/modular_citadel/code/modules/mob/living/carbon/carbon.dm index cd24bfc8a2..3e1c55bbf8 100644 --- a/modular_citadel/code/modules/mob/living/carbon/carbon.dm +++ b/modular_citadel/code/modules/mob/living/carbon/carbon.dm @@ -33,7 +33,7 @@ if(hud_used && hud_used.static_inventory) for(var/obj/screen/combattoggle/selector in hud_used.static_inventory) selector.rebasetointerbay(src) - if(world.time >= combatmessagecooldown && combatmode) + if(a_intent != INTENT_HELP && world.time >= combatmessagecooldown && combatmode) visible_message("[src] [resting ? "tenses up" : (prob(95)? "drops into a combative stance" : (prob(95)? "poses aggressively" : "asserts dominance with their pose"))].") combatmessagecooldown = 10 SECONDS + world.time //This is set 100% of the time to make sure squeezing regen out of process cycles doesn't result in the combat mode message getting spammed SEND_SIGNAL(src, COMSIG_COMBAT_TOGGLED, src, combatmode) From eb3e19695388e110187972f359eea4131e21649f Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Fri, 7 Jun 2019 22:52:42 +0200 Subject: [PATCH 240/370] Update mam_ears.dmi --- modular_citadel/icons/mob/mam_ears.dmi | Bin 10025 -> 10042 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/modular_citadel/icons/mob/mam_ears.dmi b/modular_citadel/icons/mob/mam_ears.dmi index f2a788d9004e0f2a9374b4087e7f6d6d5ae0c79c..1746dd04ddaea957504c93eeaa0f7034230dd7ed 100644 GIT binary patch delta 8052 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 bZb~33p#puRx?IVHfWOOj*KBJqc|ZCe3A&k@ From 87023134e0718fbee155bea172264471dc691750 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 00:37:31 -0500 Subject: [PATCH 241/370] Automatic changelog generation for PR #8538 [ci skip] --- html/changelogs/AutoChangeLog-pr-8538.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8538.yml diff --git a/html/changelogs/AutoChangeLog-pr-8538.yml b/html/changelogs/AutoChangeLog-pr-8538.yml new file mode 100644 index 0000000000..7349a31683 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8538.yml @@ -0,0 +1,4 @@ +author: "dtfe3" +delete-after: True +changes: + - rscadd: "Twintails" From ef3c0cba63ffa35abfc30313234c9be29902b8be Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:00:43 -0500 Subject: [PATCH 242/370] Automatic changelog generation for PR #8391 [ci skip] --- html/changelogs/AutoChangeLog-pr-8391.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8391.yml diff --git a/html/changelogs/AutoChangeLog-pr-8391.yml b/html/changelogs/AutoChangeLog-pr-8391.yml new file mode 100644 index 0000000000..32e837a0a6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8391.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - tweak: "replaces a sink with a autolathen" From 89d1d74d9d123e029f131297090a3f0384adf6ec Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:02:23 -0500 Subject: [PATCH 243/370] Automatic changelog generation for PR #8442 [ci skip] --- html/changelogs/AutoChangeLog-pr-8442.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8442.yml diff --git a/html/changelogs/AutoChangeLog-pr-8442.yml b/html/changelogs/AutoChangeLog-pr-8442.yml new file mode 100644 index 0000000000..e73c67c6dc --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8442.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - bugfix: "clothing needing a emag" From 2e18e963fec6e720ea37cbf9016eb28994e64936 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:03:03 -0500 Subject: [PATCH 244/370] Automatic changelog generation for PR #8432 [ci skip] --- html/changelogs/AutoChangeLog-pr-8432.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8432.yml diff --git a/html/changelogs/AutoChangeLog-pr-8432.yml b/html/changelogs/AutoChangeLog-pr-8432.yml new file mode 100644 index 0000000000..e65bfd68d3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8432.yml @@ -0,0 +1,5 @@ +author: "Ghommie" +delete-after: True +changes: + - balance: "Nukes the stunprod's 3 seconds delay." + - bugfix: "Fixes teleprods." From 24e836807d7d13b58e7347b08246448f36204eea Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:05:30 -0500 Subject: [PATCH 245/370] Automatic changelog generation for PR #8476 [ci skip] --- html/changelogs/AutoChangeLog-pr-8476.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8476.yml diff --git a/html/changelogs/AutoChangeLog-pr-8476.yml b/html/changelogs/AutoChangeLog-pr-8476.yml new file mode 100644 index 0000000000..551a443f94 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8476.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - tweak: "hierophant movment and melee attack" From 57aa92b080b04fda6911d17d12eb91f70f46d604 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:07:20 -0500 Subject: [PATCH 246/370] Automatic changelog generation for PR #8483 [ci skip] --- html/changelogs/AutoChangeLog-pr-8483.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8483.yml diff --git a/html/changelogs/AutoChangeLog-pr-8483.yml b/html/changelogs/AutoChangeLog-pr-8483.yml new file mode 100644 index 0000000000..2e3b35ca92 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8483.yml @@ -0,0 +1,4 @@ +author: "Ghommie (original PR by mrhugo13 on tgstation13)" +delete-after: True +changes: + - rscadd: "The Syndicate has decided to equip their Syndicate leaders operative (Aswell as their clown counterparts) with the new Combat Glove Plus! The new Combat Glove Plus does everything the old boring Combat Gloves does but with the added extra of learning Krav Maga upon wearing them, any other Syndicate operative who wants to get in on the action will have to pay 5tc." From 10782559c54e7ffe923fc46d71bed0cabe3a3161 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:08:02 -0500 Subject: [PATCH 247/370] Automatic changelog generation for PR #8414 [ci skip] --- html/changelogs/AutoChangeLog-pr-8414.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8414.yml diff --git a/html/changelogs/AutoChangeLog-pr-8414.yml b/html/changelogs/AutoChangeLog-pr-8414.yml new file mode 100644 index 0000000000..eaec60b3a9 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8414.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "MASON SUIT!" From 772ab1dc92694acb7d0185ea3cd9256c0d1ad516 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:09:03 -0500 Subject: [PATCH 248/370] Automatic changelog generation for PR #8500 [ci skip] --- html/changelogs/AutoChangeLog-pr-8500.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8500.yml diff --git a/html/changelogs/AutoChangeLog-pr-8500.yml b/html/changelogs/AutoChangeLog-pr-8500.yml new file mode 100644 index 0000000000..09bfbd9748 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8500.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - balance: "rebalanced stunslugs" From 642bfc1d9134a54772444db2d4e8231b125114d5 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:09:28 -0500 Subject: [PATCH 249/370] Automatic changelog generation for PR #8494 [ci skip] --- html/changelogs/AutoChangeLog-pr-8494.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8494.yml diff --git a/html/changelogs/AutoChangeLog-pr-8494.yml b/html/changelogs/AutoChangeLog-pr-8494.yml new file mode 100644 index 0000000000..2e4d7ac65e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8494.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "bone satchles" From a0067193e6066e98b77235566a5e3c32eb18efbd Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:10:13 -0500 Subject: [PATCH 250/370] Automatic changelog generation for PR #8501 [ci skip] --- html/changelogs/AutoChangeLog-pr-8501.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8501.yml diff --git a/html/changelogs/AutoChangeLog-pr-8501.yml b/html/changelogs/AutoChangeLog-pr-8501.yml new file mode 100644 index 0000000000..fba27c4d52 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8501.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "colored boxes, and more types" From 92b5afab525dfb5023bf18c4bb22272398b1130d Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:10:36 -0500 Subject: [PATCH 251/370] Automatic changelog generation for PR #8503 [ci skip] --- html/changelogs/AutoChangeLog-pr-8503.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8503.yml diff --git a/html/changelogs/AutoChangeLog-pr-8503.yml b/html/changelogs/AutoChangeLog-pr-8503.yml new file mode 100644 index 0000000000..f6c4a7dc75 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8503.yml @@ -0,0 +1,5 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - tweak: "harm and such" + - balance: "item classes" From ba849b83af2ac750a2a1497ab3bd20f9fcfb4034 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:13:39 -0500 Subject: [PATCH 252/370] Automatic changelog generation for PR #8569 [ci skip] --- html/changelogs/AutoChangeLog-pr-8569.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8569.yml diff --git a/html/changelogs/AutoChangeLog-pr-8569.yml b/html/changelogs/AutoChangeLog-pr-8569.yml new file mode 100644 index 0000000000..9a51ab1099 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8569.yml @@ -0,0 +1,4 @@ +author: "dtfe3" +delete-after: True +changes: + - tweak: "Now the fox ears are located in front of hair meaning they now behave much like cat ears, that being they are on-top of the hair layer." From 457a6bcdc15c510b98371d00e20d7d88ccd75d55 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:16:00 -0500 Subject: [PATCH 253/370] Automatic changelog generation for PR #8543 [ci skip] --- html/changelogs/AutoChangeLog-pr-8543.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8543.yml diff --git a/html/changelogs/AutoChangeLog-pr-8543.yml b/html/changelogs/AutoChangeLog-pr-8543.yml new file mode 100644 index 0000000000..1e1ce8922b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8543.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "SNOW CONES" From 886978e46bfea80a70b56d4491b4e4657a0b84b8 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:17:06 -0500 Subject: [PATCH 254/370] Automatic changelog generation for PR #8540 [ci skip] --- html/changelogs/AutoChangeLog-pr-8540.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8540.yml diff --git a/html/changelogs/AutoChangeLog-pr-8540.yml b/html/changelogs/AutoChangeLog-pr-8540.yml new file mode 100644 index 0000000000..895b80bfa6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8540.yml @@ -0,0 +1,4 @@ +author: "BurgerBB" +delete-after: True +changes: + - balance: "Ass slapping blowback from the Buns of Steel perk now deals 20 stamina damage instead of 50, and no brute damage." From 6dfde9654feedb6f7d926254e5033ceb8a75292c Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:21:30 -0500 Subject: [PATCH 255/370] Automatic changelog generation for PR #8541 [ci skip] --- html/changelogs/AutoChangeLog-pr-8541.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8541.yml diff --git a/html/changelogs/AutoChangeLog-pr-8541.yml b/html/changelogs/AutoChangeLog-pr-8541.yml new file mode 100644 index 0000000000..82e76fe74b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8541.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "items to syndie surgery bags" From a6d7e618f1649e9f92c2afee8a22808f363aaa36 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:21:43 -0500 Subject: [PATCH 256/370] Automatic changelog generation for PR #8544 [ci skip] --- html/changelogs/AutoChangeLog-pr-8544.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8544.yml diff --git a/html/changelogs/AutoChangeLog-pr-8544.yml b/html/changelogs/AutoChangeLog-pr-8544.yml new file mode 100644 index 0000000000..1641eed42e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8544.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "carts buy-able cargo" From d593d32ed4725ee5f50e2135f45eb26748975bf8 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:22:18 -0500 Subject: [PATCH 257/370] Automatic changelog generation for PR #8547 [ci skip] --- html/changelogs/AutoChangeLog-pr-8547.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8547.yml diff --git a/html/changelogs/AutoChangeLog-pr-8547.yml b/html/changelogs/AutoChangeLog-pr-8547.yml new file mode 100644 index 0000000000..51c2252138 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8547.yml @@ -0,0 +1,6 @@ +author: "Ghommie (original PRs by Naksu and XDTM)" +delete-after: True +changes: + - bugfix: "Transferring quirks now properly removes the roundstart trait from the person losing the quirk." + - bugfix: "Roundstart traits no longer block the removal of other sources of that trait." + - code_imp: "status traits are now a datum var, the accessors are now defines rather than functions." From 876850b3252c1219ebd877b6accb585f7ad71d86 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:22:54 -0500 Subject: [PATCH 258/370] Automatic changelog generation for PR #8548 [ci skip] --- html/changelogs/AutoChangeLog-pr-8548.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8548.yml diff --git a/html/changelogs/AutoChangeLog-pr-8548.yml b/html/changelogs/AutoChangeLog-pr-8548.yml new file mode 100644 index 0000000000..cd49f38686 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8548.yml @@ -0,0 +1,4 @@ +author: "dtfe3" +delete-after: True +changes: + - rscadd: "Schoolgirl outfits for the loadout menu!" From 22b634fe61ba45e1f70dcf3731cd95047cf44e83 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:23:33 -0500 Subject: [PATCH 259/370] Automatic changelog generation for PR #8549 [ci skip] --- html/changelogs/AutoChangeLog-pr-8549.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8549.yml diff --git a/html/changelogs/AutoChangeLog-pr-8549.yml b/html/changelogs/AutoChangeLog-pr-8549.yml new file mode 100644 index 0000000000..32b99d1d49 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8549.yml @@ -0,0 +1,6 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - tweak: "selling/time to craft" + - bugfix: "crafting problems, and red stamp exsplote" + - rscadd: "gives paper work sprites that are nicer" From 9314656c7cdb53113144c11652b40e4e19a0c45e Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:24:01 -0500 Subject: [PATCH 260/370] Automatic changelog generation for PR #8551 [ci skip] --- html/changelogs/AutoChangeLog-pr-8551.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8551.yml diff --git a/html/changelogs/AutoChangeLog-pr-8551.yml b/html/changelogs/AutoChangeLog-pr-8551.yml new file mode 100644 index 0000000000..738b410e26 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8551.yml @@ -0,0 +1,4 @@ +author: "tigercat2000@Paradise" +delete-after: True +changes: + - bugfix: "fixed invalid characters breaking chat output for that message" From aaf841aa7206f1af61a465312997928ce8d9428d Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:24:19 -0500 Subject: [PATCH 261/370] Automatic changelog generation for PR #8552 [ci skip] --- html/changelogs/AutoChangeLog-pr-8552.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8552.yml diff --git a/html/changelogs/AutoChangeLog-pr-8552.yml b/html/changelogs/AutoChangeLog-pr-8552.yml new file mode 100644 index 0000000000..2b63c79756 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8552.yml @@ -0,0 +1,4 @@ +author: "Ghommie (Original PR by LaKiller8)" +delete-after: True +changes: + - bugfix: "Goonchat options should now save properly." From 3b2a8fdc660e3af768f0c026c776a240e1340003 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:24:37 -0500 Subject: [PATCH 262/370] Automatic changelog generation for PR #8553 [ci skip] --- html/changelogs/AutoChangeLog-pr-8553.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8553.yml diff --git a/html/changelogs/AutoChangeLog-pr-8553.yml b/html/changelogs/AutoChangeLog-pr-8553.yml new file mode 100644 index 0000000000..e89e04537b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8553.yml @@ -0,0 +1,5 @@ +author: "Poojawa" +delete-after: True +changes: + - tweak: "tweaked the name of Sublter to distinguish its use" + - tweak: "Gave a hint for vore posting." From 3eec46a8b97d32371adedef39c607cb26f846d25 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:25:01 -0500 Subject: [PATCH 263/370] Automatic changelog generation for PR #8554 [ci skip] --- html/changelogs/AutoChangeLog-pr-8554.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8554.yml diff --git a/html/changelogs/AutoChangeLog-pr-8554.yml b/html/changelogs/AutoChangeLog-pr-8554.yml new file mode 100644 index 0000000000..8bf00955b5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8554.yml @@ -0,0 +1,10 @@ +author: "Ghommie (original PRs by Nichlas0010 and ShizCalev)" +delete-after: True +changes: + - tweak: "AI core display screen can now be set in character preferences." + - bugfix: "AI core display screen will now be restore when revived." + - spellcheck: "Corrected some inconsistent capitalization in the player preferences screen." + - imageadd: "Readded some forgotten AI sprites." + - bugfix: "Fixed Hades AI death animation not playing." + - tweak: "the AI icon-selection menu now uses a radial." + - imageadd: "Added in the death icon_states for the \"TechDemon\" AI screen." From 3d5b220c1abfbf40f29fc551cd695c5c833b5d28 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:25:39 -0500 Subject: [PATCH 264/370] Automatic changelog generation for PR #8555 [ci skip] --- html/changelogs/AutoChangeLog-pr-8555.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8555.yml diff --git a/html/changelogs/AutoChangeLog-pr-8555.yml b/html/changelogs/AutoChangeLog-pr-8555.yml new file mode 100644 index 0000000000..bb2c116dfa --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8555.yml @@ -0,0 +1,5 @@ +author: "Ghommie" +delete-after: True +changes: + - code_imp: "Ported some radials code updates." + - rscadd: "Ported the RCL wiring menu and a comfier RCD interface." From 8807e7ea1d6e8e5e4851f2c43c577e0001f8d52b Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:26:19 -0500 Subject: [PATCH 265/370] Automatic changelog generation for PR #8557 [ci skip] --- html/changelogs/AutoChangeLog-pr-8557.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8557.yml diff --git a/html/changelogs/AutoChangeLog-pr-8557.yml b/html/changelogs/AutoChangeLog-pr-8557.yml new file mode 100644 index 0000000000..601f70f2cb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8557.yml @@ -0,0 +1,4 @@ +author: "Ghommie (original pr by Dennok on tgstation)" +delete-after: True +changes: + - bugfix: "Now you don't lose your pulled thing on the z level edge." From 9953f1bae87d981c333bc12fbebd35c59f481b37 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:26:29 -0500 Subject: [PATCH 266/370] Automatic changelog generation for PR #8558 [ci skip] --- html/changelogs/AutoChangeLog-pr-8558.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8558.yml diff --git a/html/changelogs/AutoChangeLog-pr-8558.yml b/html/changelogs/AutoChangeLog-pr-8558.yml new file mode 100644 index 0000000000..6bb951f8a2 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8558.yml @@ -0,0 +1,4 @@ +author: "Ghommie (Original PR by coiax)" +delete-after: True +changes: + - refactor: "atom/var/container_type has been moved into datum/reagents/var/reagents_holder_flags. There should be no visible changes to effects." From 511377e0e1b297bd589ebe44a795708ef9fa5a17 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:26:47 -0500 Subject: [PATCH 267/370] Automatic changelog generation for PR #8559 [ci skip] --- html/changelogs/AutoChangeLog-pr-8559.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8559.yml diff --git a/html/changelogs/AutoChangeLog-pr-8559.yml b/html/changelogs/AutoChangeLog-pr-8559.yml new file mode 100644 index 0000000000..aee1727348 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8559.yml @@ -0,0 +1,4 @@ +author: "Ghommie (original PR by Naksu)" +delete-after: True +changes: + - code_imp: "get_area() is now a define rather than a proc." From 1ac9235ca29189f2c436fa54b7d6e83112372952 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:27:45 -0500 Subject: [PATCH 268/370] Automatic changelog generation for PR #8560 [ci skip] --- html/changelogs/AutoChangeLog-pr-8560.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8560.yml diff --git a/html/changelogs/AutoChangeLog-pr-8560.yml b/html/changelogs/AutoChangeLog-pr-8560.yml new file mode 100644 index 0000000000..aa1be89e09 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8560.yml @@ -0,0 +1,5 @@ +author: "Ghommie (original PR by 4dplanner)" +delete-after: True +changes: + - bugfix: "thrown objects (but not mobs) no longer hit the thrower" + - bugfix: "mirror shield rebound no longer depends on the original thrower's momentum" From e8665aef4fc5fcda346ec509deaa660b3da0e375 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:29:44 -0500 Subject: [PATCH 269/370] Automatic changelog generation for PR #8556 [ci skip] --- html/changelogs/AutoChangeLog-pr-8556.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8556.yml diff --git a/html/changelogs/AutoChangeLog-pr-8556.yml b/html/changelogs/AutoChangeLog-pr-8556.yml new file mode 100644 index 0000000000..e84af4f774 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8556.yml @@ -0,0 +1,4 @@ +author: "Poojawa" +delete-after: True +changes: + - rscadd: "Readded Ninja speech modifications with their mask" From 26ffc2ef38768a0ebc8b422ec4b4ea1626ba8efc Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 03:32:54 -0500 Subject: [PATCH 270/370] Automatic changelog generation for PR #8522 [ci skip] --- html/changelogs/AutoChangeLog-pr-8522.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8522.yml diff --git a/html/changelogs/AutoChangeLog-pr-8522.yml b/html/changelogs/AutoChangeLog-pr-8522.yml new file mode 100644 index 0000000000..eb646034fd --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8522.yml @@ -0,0 +1,4 @@ +author: "Useroth" +delete-after: True +changes: + - tweak: "The tentacle now directly puts the item in your hands, instead of toggling your throwing and tossing it at you. Tentacles suffer from ranged inaccuracies as if they were guns, I think it's enough of an inconvenience." From b2e964f1692349de695fb37a43c40089a55aee00 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 05:53:15 -0500 Subject: [PATCH 271/370] Automatic changelog generation for PR #8514 [ci skip] --- html/changelogs/AutoChangeLog-pr-8514.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8514.yml diff --git a/html/changelogs/AutoChangeLog-pr-8514.yml b/html/changelogs/AutoChangeLog-pr-8514.yml new file mode 100644 index 0000000000..f1d01a97e4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8514.yml @@ -0,0 +1,6 @@ +author: "BurgerBB" +delete-after: True +changes: + - rscadd: "Adds several new toy loot to the arcade machine." + - balance: "Rebalanced the arcade machine loot. Battlemachines now have a 0.5 second delay instead of a second delay between actions." + - bugfix: "Fixed a bug that would not allow the one in a million pulse rifle to spawn." From 40030c40bf91825c13636125280a0ce213af2c87 Mon Sep 17 00:00:00 2001 From: Sishen Date: Sat, 8 Jun 2019 07:19:11 -0400 Subject: [PATCH 272/370] lmao2reach --- code/game/objects/items/holy_weapons.dm | 1 + code/game/objects/items/melee/misc.dm | 1 + 2 files changed, 2 insertions(+) diff --git a/code/game/objects/items/holy_weapons.dm b/code/game/objects/items/holy_weapons.dm index 3fda98e074..424bf18c83 100644 --- a/code/game/objects/items/holy_weapons.dm +++ b/code/game/objects/items/holy_weapons.dm @@ -573,6 +573,7 @@ lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' slot_flags = ITEM_SLOT_BELT + reach = 2 attack_verb = list("whipped", "lashed") hitsound = 'sound/weapons/chainhit.ogg' diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index 9162f3ed91..33a48c17bb 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -20,6 +20,7 @@ slot_flags = ITEM_SLOT_BELT force = 14 throwforce = 10 + reach = 2 w_class = WEIGHT_CLASS_NORMAL attack_verb = list("flogged", "whipped", "lashed", "disciplined") hitsound = 'sound/weapons/chainhit.ogg' From fc536dcfe44ea27f160bf7a1e0f158aef083f23b Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 8 Jun 2019 14:44:40 +0200 Subject: [PATCH 273/370] Urist McSpaceman goes vigilant! Urist McSpaceman seems attentive! Urist McSpaceman looks alert! --- modular_citadel/code/modules/mob/living/carbon/carbon.dm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/modular_citadel/code/modules/mob/living/carbon/carbon.dm b/modular_citadel/code/modules/mob/living/carbon/carbon.dm index 3e1c55bbf8..b9c600603c 100644 --- a/modular_citadel/code/modules/mob/living/carbon/carbon.dm +++ b/modular_citadel/code/modules/mob/living/carbon/carbon.dm @@ -33,8 +33,11 @@ if(hud_used && hud_used.static_inventory) for(var/obj/screen/combattoggle/selector in hud_used.static_inventory) selector.rebasetointerbay(src) - if(a_intent != INTENT_HELP && world.time >= combatmessagecooldown && combatmode) - visible_message("[src] [resting ? "tenses up" : (prob(95)? "drops into a combative stance" : (prob(95)? "poses aggressively" : "asserts dominance with their pose"))].") + if(world.time >= combatmessagecooldown && combatmode) + if(a_intent != INTENT_HELP) + visible_message("[src] [resting ? "tenses up" : (prob(95)? "drops into a combative stance" : (prob(95)? "poses aggressively" : "asserts dominance with their pose"))].") + else + visible_message("[src] [pick("looks","seems","goes")] [pick("alert","attentive","vigilant","careful")]!") combatmessagecooldown = 10 SECONDS + world.time //This is set 100% of the time to make sure squeezing regen out of process cycles doesn't result in the combat mode message getting spammed SEND_SIGNAL(src, COMSIG_COMBAT_TOGGLED, src, combatmode) return TRUE From 53d5ad582056bba4255d6178314e80d03b159c4e Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 8 Jun 2019 14:45:26 +0200 Subject: [PATCH 274/370] no exclamation point. --- modular_citadel/code/modules/mob/living/carbon/carbon.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_citadel/code/modules/mob/living/carbon/carbon.dm b/modular_citadel/code/modules/mob/living/carbon/carbon.dm index b9c600603c..43931db689 100644 --- a/modular_citadel/code/modules/mob/living/carbon/carbon.dm +++ b/modular_citadel/code/modules/mob/living/carbon/carbon.dm @@ -37,7 +37,7 @@ if(a_intent != INTENT_HELP) visible_message("[src] [resting ? "tenses up" : (prob(95)? "drops into a combative stance" : (prob(95)? "poses aggressively" : "asserts dominance with their pose"))].") else - visible_message("[src] [pick("looks","seems","goes")] [pick("alert","attentive","vigilant","careful")]!") + visible_message("[src] [pick("looks","seems","goes")] [pick("alert","attentive","vigilant")].") combatmessagecooldown = 10 SECONDS + world.time //This is set 100% of the time to make sure squeezing regen out of process cycles doesn't result in the combat mode message getting spammed SEND_SIGNAL(src, COMSIG_COMBAT_TOGGLED, src, combatmode) return TRUE From ec2da508b8336f431f94fabbdf1a764687bf6647 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 8 Jun 2019 15:05:26 +0200 Subject: [PATCH 275/370] Gonna go with 25 since it won't be usable on lying people. --- code/datums/martial/krav_maga.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 40bf5b055f..3dcb785a90 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -92,7 +92,7 @@ "[A] leg sweeps you!") playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1) D.apply_damage(5, BRUTE) - D.Knockdown(40, override_stam = 45) + D.Knockdown(40, override_hardstun = 0.01, override_stam = 25) log_combat(A, D, "leg sweeped") return 1 From e1c94ef8aff4c6f7d773c0bcfcf6c574c755f632 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 8 Jun 2019 15:06:07 +0200 Subject: [PATCH 276/370] named arguments. --- code/datums/martial/krav_maga.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 3dcb785a90..f92c0dbd0d 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -92,7 +92,7 @@ "[A] leg sweeps you!") playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1) D.apply_damage(5, BRUTE) - D.Knockdown(40, override_hardstun = 0.01, override_stam = 25) + D.Knockdown(40, override_hardstun = 0.01, 25) log_combat(A, D, "leg sweeped") return 1 From 2288346876588cf5db7ddd9f219ddc23299ea7b0 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 14:05:19 -0500 Subject: [PATCH 277/370] Automatic changelog generation for PR #8566 [ci skip] --- html/changelogs/AutoChangeLog-pr-8566.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8566.yml diff --git a/html/changelogs/AutoChangeLog-pr-8566.yml b/html/changelogs/AutoChangeLog-pr-8566.yml new file mode 100644 index 0000000000..085b74e87a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8566.yml @@ -0,0 +1,4 @@ +author: "Ghommie" +delete-after: True +changes: + - tweak: "A milder combat stance message will show up if the user switch combat mode on while on help intent." From 90d0ce5897ebb10f62a9c55ecc2237f0a46a2091 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sat, 8 Jun 2019 14:05:28 -0500 Subject: [PATCH 278/370] Automatic changelog generation for PR #8567 [ci skip] --- html/changelogs/AutoChangeLog-pr-8567.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8567.yml diff --git a/html/changelogs/AutoChangeLog-pr-8567.yml b/html/changelogs/AutoChangeLog-pr-8567.yml new file mode 100644 index 0000000000..3814607aaa --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8567.yml @@ -0,0 +1,4 @@ +author: "Arturlang" +delete-after: True +changes: + - rscadd: "You can now use RPDs on windows and grilles." From e83365daed3787f1eb46e4992c599cf1589ec3d0 Mon Sep 17 00:00:00 2001 From: SkullyRoberts Date: Sat, 8 Jun 2019 17:12:51 -0400 Subject: [PATCH 279/370] Added a penis autosurgeon as rare maint loot --- code/_globalvars/lists/maintenance_loot.dm | 1 + code/modules/surgery/organs/autosurgeon.dm | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index aa1cdcb40a..efd405a4dc 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -111,5 +111,6 @@ GLOBAL_LIST_INIT(maintenance_loot, list( /obj/item/storage/pill_bottle/penis_enlargement = 2, /obj/item/clothing/shoes/wheelys = 1, /obj/item/clothing/shoes/kindleKicks = 1, + /obj/item/autosurgeon/penis = 1, "" = 3 )) diff --git a/code/modules/surgery/organs/autosurgeon.dm b/code/modules/surgery/organs/autosurgeon.dm index 787175e05d..0e3793d2e4 100644 --- a/code/modules/surgery/organs/autosurgeon.dm +++ b/code/modules/surgery/organs/autosurgeon.dm @@ -98,3 +98,8 @@ /obj/item/autosurgeon/reviver starting_organ = /obj/item/organ/cyberimp/chest/reviver + +/obj/item/autosurgeon/penis + desc = "A single use autosurgeon that contains a penis. A screwdriver can be used to remove it, but implants can't be placed back in." + uses = 1 + starting_organ = /obj/item/organ/genital/penis From 30b8d8db1a6dbf884c288f4ed670a4ed44465566 Mon Sep 17 00:00:00 2001 From: SkullyRoberts Date: Sat, 8 Jun 2019 18:38:28 -0400 Subject: [PATCH 280/370] Made the nudity permit cover genitals and boobs --- code/modules/clothing/under/miscellaneous.dm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 6da7a277cb..97e9a8f8ca 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -756,6 +756,4 @@ icon = 'icons/obj/card.dmi' icon_state = "fingerprint1" item_state = "golem" //This is dumb and hacky but was here when I got here.//No, it really isn't. Why make a new blank clothing sprite if we already have one? - body_parts_covered = 0 - -// sprite_sheets = list() //Dunno why this is here so I'm gonna comment it out and hope it still works. + body_parts_covered = CHEST|GROIN From 5cf0a9e67f54c0ab108cc05d68d66fdca9ac6c44 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 8 Jun 2019 17:30:50 -0700 Subject: [PATCH 281/370] Update carbon_defense.dm --- code/modules/mob/living/carbon/carbon_defense.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index 36e2365d6b..e96bb7f121 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -277,7 +277,7 @@ M.visible_message("[M] gives [H] a pat on the head to make [p_them()] feel better!", \ "You give [H] a pat on the head to make [p_them()] feel better!") SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "headpat", /datum/mood_event/headpat) - if(M.has_trait(TRAIT_FRIENDLY)) + if(HAS_TRAIT(M, TRAIT_FRIENDLY)) GET_COMPONENT_FROM(mood, /datum/component/mood, M) if (mood.sanity >= SANITY_GREAT) SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/besthug, M) @@ -312,7 +312,7 @@ M.visible_message("[M] hugs [src] to make [p_them()] feel better!", \ "You hug [src] to make [p_them()] feel better!") SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "hug", /datum/mood_event/hug) - if(M.has_trait(TRAIT_FRIENDLY)) + if(HAS_TRAIT(M, TRAIT_FRIENDLY)) GET_COMPONENT_FROM(mood, /datum/component/mood, M) if (mood.sanity >= SANITY_GREAT) SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/besthug, M) From 1a07f304c92bad972f80b253ac251ce244d19826 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 8 Jun 2019 17:32:36 -0700 Subject: [PATCH 282/370] Update examine.dm --- code/modules/mob/living/carbon/human/examine.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 76399147b7..d814893053 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -283,7 +283,7 @@ if(isliving(user)) var/mob/living/L = user - if(src != user && L.has_trait(TRAIT_EMPATH) && !appears_dead) + if(src != user && HAS_TRAIT(L, TRAIT_EMPATH) && !appears_dead) if (a_intent != INTENT_HELP) msg += "[t_He] seem[p_s()] to be on guard.\n" if (getOxyLoss() >= 10) @@ -297,9 +297,9 @@ if(mood.mood >= 5) //So roundstart people aren't all "happy" msg += "[t_He] seem[p_s()] to have had something nice happen to them recently.\n" SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empathH", /datum/mood_event/happy_empath, src) - if (has_trait(TRAIT_BLIND)) + if (HAS_TRAIT(src, TRAIT_BLIND)) msg += "[t_He] appear[p_s()] to be staring off into space.\n" - if (has_trait(TRAIT_DEAF)) + if (HAS_TRAIT(src, TRAIT_DEAF)) msg += "[t_He] appear[p_s()] to not be responding to noises.\n" msg += "" From 7706ec6329b65d843bbbb8259aeefefbcb4d6815 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 9 Jun 2019 02:45:14 +0200 Subject: [PATCH 283/370] I LOVE THE SMELL OF NAPALM IN THE MORNING! --- code/__DEFINES/DNA.dm | 1 + code/datums/mutations/speech.dm | 13 +++++++++++++ .../crates_lockers/closets/secure/security.dm | 1 + code/modules/clothing/head/jobs.dm | 16 ++++++++++++++++ 4 files changed, 31 insertions(+) diff --git a/code/__DEFINES/DNA.dm b/code/__DEFINES/DNA.dm index 4ed099d9e2..bfa25961a6 100644 --- a/code/__DEFINES/DNA.dm +++ b/code/__DEFINES/DNA.dm @@ -28,6 +28,7 @@ #define SWEDISH "Swedish" #define CHAV "Chav" #define ELVIS "Elvis" +#define YELLING "Yelling" #define UI_CHANGED "ui changed" #define UE_CHANGED "ue changed" diff --git a/code/datums/mutations/speech.dm b/code/datums/mutations/speech.dm index 3f303535ce..ca9289f428 100644 --- a/code/datums/mutations/speech.dm +++ b/code/datums/mutations/speech.dm @@ -230,3 +230,16 @@ ..() owner.grant_language(/datum/language/common) owner.remove_language(/datum/language/beachbum) + +/datum/mutation/human/yelling + name = "Yelling" + desc = "A mutation that forces the host to constantly yell their sentences out." + quality = MINOR_NEGATIVE + locked = TRUE + text_gain_indication = "You feel really angry." + text_lose_indication = "You feel calmer." + +/datum/mutation/human/yelling/say_mod(message) + if(message) + message = "[uppertext(replacetext(message, ".", "!"))]!" + return (message) \ No newline at end of file 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 b4cdff4224..8c06af91a4 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -106,6 +106,7 @@ new /obj/item/radio/headset/headset_sec(src) new /obj/item/clothing/suit/armor/vest/warden(src) new /obj/item/clothing/head/warden(src) + new /obj/item/clothing/head/warden/drill(src) new /obj/item/clothing/head/beret/sec/navywarden(src) new /obj/item/clothing/suit/armor/vest/warden/alt(src) new /obj/item/clothing/under/rank/warden/navyblue(src) diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index b6c5a5417a..e3a0211665 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -148,6 +148,22 @@ strip_delay = 60 dog_fashion = /datum/dog_fashion/head/warden +/obj/item/clothing/head/warden/drill + name = "warden's drill hat" + desc = "A special armored campaign hat with the security insignia emblazoned on it. Uses reinforced fabric to offer sufficient protection. Has the letters 'FMJ' enscribed on its side." + icon_state = "wardendrill" + item_state = "wardendrill" + dog_fashion = null + +/obj/item/clothing/head/warden/drill/equipped(mob/living/carbon/human/user, slot) + . = ..() + if(slot == SLOT_HEAD) + user.dna.add_mutation(YELLING) + +/obj/item/clothing/head/warden/drill/dropped(mob/living/carbon/human/user) + . = ..() + user.dna.remove_mutation(YELLING) + /obj/item/clothing/head/beret/sec name = "security beret" desc = "A robust beret with the security insignia emblazoned on it. Uses reinforced fabric to offer sufficient protection." From 6e90ea11716f54087f407551cb923221d5ff68bb Mon Sep 17 00:00:00 2001 From: dtfe3 Date: Sun, 9 Jun 2019 06:20:59 +0200 Subject: [PATCH 285/370] Update mam_ears.dmi --- modular_citadel/icons/mob/mam_ears.dmi | Bin 10042 -> 10077 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/modular_citadel/icons/mob/mam_ears.dmi b/modular_citadel/icons/mob/mam_ears.dmi index 1746dd04ddaea957504c93eeaa0f7034230dd7ed..569667a82d08d554f3000e687ec0c14a4c97adcc 100644 GIT binary patch delta 7676 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 ZzZDgnK9T!_rwRc-SFczj%PzY-{(r~9^Sb~5 delta 7704 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 From cb255b8719a1650b3e69ae5b88409eb89be934d5 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sun, 9 Jun 2019 06:54:26 +0200 Subject: [PATCH 286/370] give'r or leave'r, buddy. --- code/__DEFINES/DNA.dm | 1 - code/datums/mutations/speech.dm | 15 +------ code/modules/clothing/head/jobs.dm | 69 ++++++++++++++++++++++++++---- strings/canadian_replacement.json | 45 +++++++++++++++++++ 4 files changed, 107 insertions(+), 23 deletions(-) create mode 100644 strings/canadian_replacement.json diff --git a/code/__DEFINES/DNA.dm b/code/__DEFINES/DNA.dm index bfa25961a6..4ed099d9e2 100644 --- a/code/__DEFINES/DNA.dm +++ b/code/__DEFINES/DNA.dm @@ -28,7 +28,6 @@ #define SWEDISH "Swedish" #define CHAV "Chav" #define ELVIS "Elvis" -#define YELLING "Yelling" #define UI_CHANGED "ui changed" #define UE_CHANGED "ue changed" diff --git a/code/datums/mutations/speech.dm b/code/datums/mutations/speech.dm index 1a1e23cf56..d986672924 100644 --- a/code/datums/mutations/speech.dm +++ b/code/datums/mutations/speech.dm @@ -229,17 +229,4 @@ /datum/mutation/human/stoner/on_losing(mob/living/carbon/human/owner) ..() owner.grant_language(/datum/language/common) - owner.remove_language(/datum/language/beachbum) - -/datum/mutation/human/yelling - name = "Yelling" - desc = "A mutation that forces the host to constantly yell their sentences out." - quality = MINOR_NEGATIVE - locked = TRUE - text_gain_indication = "You feel really angry." - text_lose_indication = "You feel calmer." - -/datum/mutation/human/yelling/say_mod(message) - if(message) - message = "[uppertext(replacetext(message, ".", "!"))]!" - return (message) \ No newline at end of file + owner.remove_language(/datum/language/beachbum) \ No newline at end of file diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index e3a0211665..07817ec4e4 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -1,3 +1,8 @@ +//defines the drill hat's yelling setting +#define DRILL_DEFAULT "default" +#define DRILL_SHOUTING "shouting" +#define DRILL_YELLING "yelling" +#define DRILL_CANADIAN "canadian" //Chef /obj/item/clothing/head/chefhat @@ -149,20 +154,63 @@ dog_fashion = /datum/dog_fashion/head/warden /obj/item/clothing/head/warden/drill - name = "warden's drill hat" + name = "warden's campaign hat" desc = "A special armored campaign hat with the security insignia emblazoned on it. Uses reinforced fabric to offer sufficient protection. Has the letters 'FMJ' enscribed on its side." icon_state = "wardendrill" item_state = "wardendrill" dog_fashion = null + var/mode = DRILL_DEFAULT -/obj/item/clothing/head/warden/drill/equipped(mob/living/carbon/human/user, slot) - . = ..() - if(slot == SLOT_HEAD) - user.dna.add_mutation(YELLING) +/obj/item/clothing/head/warden/drill/screwdriver_act(mob/living/carbon/human/user, obj/item/I) + if(..()) + return TRUE + switch(mode) + if(DRILL_DEFAULT) + to_chat(user, "You set the voice circuit to the middle position.") + mode = DRILL_SHOUTING + if(DRILL_SHOUTING) + to_chat(user, "You set the voice circuit to the last position.") + mode = DRILL_YELLING + if(DRILL_YELLING) + to_chat(user, "You set the voice circuit to the first position.") + mode = DRILL_DEFAULT + if(DRILL_CANADIAN) + to_chat(user, "You adjust voice circuit but nothing happens, probably because it's broken.") + return TRUE -/obj/item/clothing/head/warden/drill/dropped(mob/living/carbon/human/user) - . = ..() - user.dna.remove_mutation(YELLING) +/obj/item/clothing/head/warden/drill/wirecutter_act(mob/living/user, obj/item/I) + if(mode != DRILL_CANADIAN) + to_chat(user, "You broke the voice circuit!") + mode = DRILL_CANADIAN + return TRUE + +/obj/item/clothing/head/warden/drill/speechModification(M) + if(copytext(M, 1, 2) != "*") + if(mode == DRILL_DEFAULT) + M = " [M]" + return trim(M) + if(mode == DRILL_SHOUTING) + M = " [M]!" + return trim(M) + if(mode == DRILL_YELLING) + M = " [M]!!" + return trim(M) + if(mode == DRILL_CANADIAN) + M = " [M]" + var/list/canadian_words = strings("canadian_replacement.json", "canadian") + + for(var/key in canadian_words) + var/value = canadian_words[key] + if(islist(value)) + value = pick(value) + + M = replacetextEx(M, " [uppertext(key)]", " [uppertext(value)]") + M = replacetextEx(M, " [capitalize(key)]", " [capitalize(value)]") + M = replacetextEx(M, " [key]", " [value]") + + if(prob(30)) + M += pick(", eh?", ", EH?") + return trim(M) /obj/item/clothing/head/beret/sec name = "security beret" @@ -217,3 +265,8 @@ name = "quartermaster's beret" desc = "This headwear shows off your Cargonian leadership" icon_state = "qmberet" + +#undef DRILL_DEFAULT +#undef DRILL_SHOUTING +#undef DRILL_YELLING +#undef DRILL_CANADIAN diff --git a/strings/canadian_replacement.json b/strings/canadian_replacement.json new file mode 100644 index 0000000000..1430ae8793 --- /dev/null +++ b/strings/canadian_replacement.json @@ -0,0 +1,45 @@ +{ + + "canadian": { + "toilet": "washroom", + "bathroom": "washroom", + "restroom": "washroom", + "coffee": "doubledouble", + "backpack": "knapsack", + "rucksack": "knapsack", + "candybar": "chocolate bar", + "about": "aboot", + "friend": "buddy", + "pal": "buddy", + "donut": "doughnut", + "faucet": "tap", + "give": "give'r", + "bar": "boozecan", + "leave": "leave'r", + "scruffle": "kerfuffle", + "couch": "chesterfield", + "sofa": "chesterfield", + "alcohol": "mickey", + "shoes": "runners", + "cigarrete": "dart", + "cig": "dart", + "color": "colour", + "armor": "armour", + "armory": "armoury", + "defense": "defence", + "honor": "honour", + "labor": "labour", + "humor": "humour", + "humorous": "humourous", + "gray": "grey", + "labeled": "labelled", + "luster": "lustre", + "inch": "centimetre", + "yard": "metre", + "tumor": "tumour", + "mile": "kilometre", + "pound": "kilogram" + } + + +} From 6bdf5f585ab7fcc25ebf95ceaca678017dc59c76 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 9 Jun 2019 00:49:40 -0500 Subject: [PATCH 287/370] fixes testicle runtimes --- .../code/modules/arousal/organs/testicles.dm | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index 0cf698392c..f108fcba97 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -45,6 +45,7 @@ linked_organ = (owner.getorganslot("penis")) if(linked_organ) linked_organ.linked_organ = src + src.size = linked_organ.size else if(linked_organ) @@ -57,20 +58,22 @@ return TRUE /obj/item/organ/genital/testicles/update_appearance() - if(owner) - if(size == 0) - size_name = "nonexistant" - if(size == 1) + switch(size) + if(0.1 to 1) size_name = "average" - if(size == 2) + if(1.1 to 2) size_name = "enlarged" - if(size >= 3) + if(2.1 to INFINITY) size_name = "engorged" - - if(!internal) - desc = "You see an [size_name] pair of testicles dangling." else - desc = "They don't have any testicles you can see." + size_name = "nonexistant" + + if(!internal) + desc = "You see an [size_name] pair of testicles." + else + desc = "They don't have any testicles you can see." + + if(owner) var/string if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"]) if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... From cac80ec8c8a2623e04f45e14721de2fbaef7152c Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 9 Jun 2019 01:43:39 -0500 Subject: [PATCH 288/370] Update laborstacker.dm --- code/modules/mining/laborcamp/laborstacker.dm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/modules/mining/laborcamp/laborstacker.dm b/code/modules/mining/laborcamp/laborstacker.dm index dd7f642243..5193545c4b 100644 --- a/code/modules/mining/laborcamp/laborstacker.dm +++ b/code/modules/mining/laborcamp/laborstacker.dm @@ -144,7 +144,12 @@ GLOBAL_LIST(labor_sheet_values) points += inp.point_value * inp.amount ..() - +/obj/machinery/mineral/stacking_machine/laborstacker/attackby(obj/item/I, mob/living/user) + if(istype(I, /obj/item/stack/sheet) && user.canUnEquip(I)) + var/obj/item/stack/sheet/inp = I + points += inp.point_value * inp.amount + return ..() + /**********************Point Lookup Console**************************/ /obj/machinery/mineral/labor_points_checker name = "points checking console" From 611aba583f11b45c80b0c0888e960f7ac7058919 Mon Sep 17 00:00:00 2001 From: Sishen Date: Sun, 9 Jun 2019 03:07:22 -0400 Subject: [PATCH 289/370] Update arcade.dm --- code/game/machinery/computer/arcade.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 13d5cff3b8..efbbe36228 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -1,6 +1,7 @@ #define ARCADE_WEIGHT_TRICK 4 #define ARCADE_WEIGHT_USELESS 2 #define ARCADE_WEIGHT_RARE 1 +#define ARCADE_WEIGHT_PLUSH 3 /obj/machinery/computer/arcade @@ -26,7 +27,7 @@ /obj/item/toy/katana = ARCADE_WEIGHT_TRICK, /obj/item/toy/minimeteor = ARCADE_WEIGHT_TRICK, /obj/item/toy/nuke = ARCADE_WEIGHT_TRICK, - /obj/item/toy/plush/random = ARCADE_WEIGHT_USELESS, + /obj/item/toy/plush/random = ARCADE_WEIGHT_PLUSH, /obj/item/toy/redbutton = ARCADE_WEIGHT_TRICK, /obj/item/toy/spinningtoy = ARCADE_WEIGHT_TRICK, /obj/item/toy/sword = ARCADE_WEIGHT_TRICK, From 3f1b7e4dd6fb32f21494639ee6b86de8a2ddf271 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 9 Jun 2019 02:23:53 -0500 Subject: [PATCH 290/370] Pacifists can nom things now, but not feed to others --- code/modules/mob/living/living_defense.dm | 12 ++++++++++++ .../code/modules/vore/eating/bellymodes_vr.dm | 9 ++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 449bbe361f..e434bc4e95 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -124,6 +124,18 @@ if(user == anchored || !isturf(user.loc)) return FALSE + //pacifist vore check. + if(user.pulling && HAS_TRAIT(user, TRAIT_PACIFISM) && user.voremode) //they can only do heals, noisy guts, absorbing (technically not harm) + if(ismob(user.pulling)) + var/mob/P = user.pulling + if(src != user) + to_chat(user, "You can't risk digestion!") + return FALSE + else + user.vore_attack(user, P, user) + return + + //normal vore check. if(user.pulling && user.grab_state == GRAB_AGGRESSIVE && user.voremode) if(ismob(user.pulling)) var/mob/P = user.pulling diff --git a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm index 542241e9f2..6b6a3d30cc 100644 --- a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm +++ b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm @@ -49,13 +49,16 @@ var/sound/pred_death = sound(get_sfx("death_pred")) var/turf/source = get_turf(owner) - ///////////////////////////// DM_HOLD ///////////////////////////// if(digest_mode == DM_HOLD) return SSBELLIES_PROCESSED //////////////////////////// DM_DIGEST //////////////////////////// else if(digest_mode == DM_DIGEST) + if(HAS_TRAIT(owner, TRAIT_PACIFISM)) //obvious. + digest_mode = DM_NOISY + return + for (var/mob/living/M in contents) if(prob(25)) if((world.time - NORMIE_HEARCHECK) > last_hearcheck) @@ -210,6 +213,10 @@ //////////////////////////DM_DRAGON ///////////////////////////////////// //because dragons need snowflake guts if(digest_mode == DM_DRAGON) + if(HAS_TRAIT(owner, TRAIT_PACIFISM)) //imagine var editing this when you're a pacifist. smh + digest_mode = DM_NOISY + return + for (var/mob/living/M in contents) if(prob(55)) //if you're hearing this, you're a vore ho anyway. if((world.time - NORMIE_HEARCHECK) > last_hearcheck) From 80659a540b29c84dd883a7bbc19eb0e96b2781b1 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 9 Jun 2019 09:59:31 -0500 Subject: [PATCH 291/370] Update modular_citadel/code/modules/arousal/organs/testicles.dm I guess Co-Authored-By: Ghom <42542238+Ghommie@users.noreply.github.com> --- modular_citadel/code/modules/arousal/organs/testicles.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index f108fcba97..0b86d58208 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -45,7 +45,7 @@ linked_organ = (owner.getorganslot("penis")) if(linked_organ) linked_organ.linked_organ = src - src.size = linked_organ.size + size = linked_organ.size else if(linked_organ) From 7b48c8899d605f6b6916d1ef04e24099d0016c39 Mon Sep 17 00:00:00 2001 From: Sishen Date: Sun, 9 Jun 2019 11:21:41 -0400 Subject: [PATCH 292/370] loadoutsahoy --- .../code/modules/client/loadout/_medical.dm | 18 ++++++++++++++++++ .../code/modules/client/loadout/head.dm | 5 +++++ .../code/modules/client/loadout/uniform.dm | 5 +++++ 3 files changed, 28 insertions(+) diff --git a/modular_citadel/code/modules/client/loadout/_medical.dm b/modular_citadel/code/modules/client/loadout/_medical.dm index a0d0e3f2b2..f0a49629e3 100644 --- a/modular_citadel/code/modules/client/loadout/_medical.dm +++ b/modular_citadel/code/modules/client/loadout/_medical.dm @@ -3,3 +3,21 @@ category = SLOT_NECK path = /obj/item/clothing/neck/stethoscope restricted_roles = list("Medical Doctor", "Chief Medical Officer") + +/datum/gear/bluescrubs + name = "Blue Scrubs" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/rank/medical/blue + restricted_roles = list("Medical Doctor") + +/datum/gear/greenscrubs + name = "Green Scrubs" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/rank/medical/green + restricted_roles = list("Medical Doctor") + +/datum/gear/purplescrubs + name = "Purple Scrubs" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/rank/medical/purple + restricted_roles = list("Medical Doctor") diff --git a/modular_citadel/code/modules/client/loadout/head.dm b/modular_citadel/code/modules/client/loadout/head.dm index bd26f44482..2d65f093bb 100644 --- a/modular_citadel/code/modules/client/loadout/head.dm +++ b/modular_citadel/code/modules/client/loadout/head.dm @@ -54,6 +54,11 @@ path = /obj/item/clothing/head/flakhelm cost = 2 +/datum/gear/bunnyears + name = "Bunny Ears" + category = SLOT_HEAD + path = /obj/item/clothing/head/rabbitears + //trek fancy Hats! /datum/gear/trekcap name = "Federation Officer's Cap (White)" diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 07309ffd0d..04c946579e 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -93,6 +93,11 @@ category = SLOT_W_UNIFORM path = /obj/item/clothing/under/schoolgirl/orange +/datum/gear/stripeddress + name = "Striped Dress" + category = SLOT_W_UNIFORM + path = /obj/item/clothing/under/stripeddress + /datum/gear/kilt name = "Kilt" category = SLOT_W_UNIFORM From e6e5e62db2af1b77acdf3ac4332f6dcc9219b2be Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 9 Jun 2019 11:50:47 -0400 Subject: [PATCH 293/370] Update briefcase.dm --- code/game/objects/items/storage/briefcase.dm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/storage/briefcase.dm b/code/game/objects/items/storage/briefcase.dm index f4f386b7d0..a1ec3f2243 100644 --- a/code/game/objects/items/storage/briefcase.dm +++ b/code/game/objects/items/storage/briefcase.dm @@ -38,7 +38,7 @@ /obj/item/storage/briefcase/lawyer folder_path = /obj/item/folder/blue -/obj/item/storage/briefcase/lawyer/family +/obj/item/storage/briefcase/lawyer/family name = "battered briefcase" desc = "An old briefcase, this one has seen better days in its time. It's clear they don't make them nowadays as good as they used to. The corners are modified with metal trim adding in weight!" @@ -79,3 +79,12 @@ new /obj/item/ammo_box/magazine/sniper_rounds/soporific(src) new /obj/item/suppressor/specialoffer(src) +/obj/item/storage/briefcase/medical + name = "medical briefcase" + icon_state = "medbriefcase" + desc = "A white with a blue cross brieface, this is ment to hold medical gear that would not be able to normally fit in a bag." + +/obj/item/storage/briefcase/medical/PopulateContents() + new /obj/item/clothing/neck/stethoscope(src) + new /obj/item/healthanalyzer(src) + ..() //In case of paperwork From 5c8f7b326fedec6bfdf67cb3643bb786e3291951 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 9 Jun 2019 12:00:46 -0400 Subject: [PATCH 294/370] Update _medical.dm --- modular_citadel/code/modules/client/loadout/_medical.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modular_citadel/code/modules/client/loadout/_medical.dm b/modular_citadel/code/modules/client/loadout/_medical.dm index a0d0e3f2b2..89d7176f03 100644 --- a/modular_citadel/code/modules/client/loadout/_medical.dm +++ b/modular_citadel/code/modules/client/loadout/_medical.dm @@ -1,3 +1,9 @@ +/datum/gear/stethoscope + name = "Medical Briefcase" + category = SLOT_HANDS + path = /obj/item/storage/briefcase/medical + restricted_roles = list("Medical Doctor", "Chief Medical Officer") + /datum/gear/stethoscope name = "Stethoscope" category = SLOT_NECK From 7c59349ad362911cbcec8fb0bca38cb5054b15ff Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 9 Jun 2019 12:02:16 -0400 Subject: [PATCH 295/370] Update medical.dm --- code/modules/vending/medical.dm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/code/modules/vending/medical.dm b/code/modules/vending/medical.dm index 5ff07cc842..5eba9b6b21 100644 --- a/code/modules/vending/medical.dm +++ b/code/modules/vending/medical.dm @@ -23,14 +23,16 @@ /obj/item/reagent_containers/glass/bottle/salglu_solution = 3, /obj/item/reagent_containers/glass/bottle/morphine = 4, /obj/item/reagent_containers/glass/bottle/toxin = 3, - /obj/item/reagent_containers/syringe/antiviral = 6) + /obj/item/reagent_containers/syringe/antiviral = 6, + /obj/item/storage/briefcase/medical = 2) contraband = list(/obj/item/reagent_containers/pill/tox = 3, /obj/item/reagent_containers/pill/morphine = 4, /obj/item/reagent_containers/pill/charcoal = 6) premium = list(/obj/item/storage/box/hug/medical = 1, /obj/item/reagent_containers/hypospray/medipen = 3, /obj/item/storage/belt/medical = 3, - /obj/item/wrench/medical = 1) + /obj/item/wrench/medical = 1, + /obj/item/storage/briefcase/medical = 2) armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) resistance_flags = FIRE_PROOF refill_canister = /obj/item/vending_refill/medical @@ -41,4 +43,4 @@ /obj/machinery/vending/medical/syndicate_access name = "\improper SyndiMed Plus" - req_access = list(ACCESS_SYNDICATE) \ No newline at end of file + req_access = list(ACCESS_SYNDICATE) From 00b3ac23f23472fe17b229af329146f43177d365 Mon Sep 17 00:00:00 2001 From: AnalWerewolf Date: Mon, 10 Jun 2019 14:53:47 +1000 Subject: [PATCH 296/370] changed the opacity of a single fucking pixel title --- icons/obj/plushes.dmi | Bin 38772 -> 38718 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index ff7ba1b322c28ab208f84bd6d4515830202177b5..2112c3511d75873378d8aecdfef3f8426c0b2464 100644 GIT binary patch delta 17510 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

8C>No>Q#-dV}tsAP|w1qSoG9ep5IQ)5dwHq z7BF8^WE9;`h{prYU_hYvLN~MWPaY{*7R4!0U-|q*|%hZ$4^- zr)Dl$kg6?Lhw4?xAuQ!pou2c>dHX!*m`8uUan^;J&p)i^NZ$(DP7}cVl!Z}M(|27E zrx0#8v3(%hZj)DI(1$K8E%+Rp9CZl$C8nL$AQsz2_Ro9Mot>;e4bTor+^gwh1k*DH zZ0J^U9`9S1zo-D>xn$k%@FkHy(E{o|$YyliF`MUGW5sRl!tZaoLn#7okb}WSUUpXM zL@M!!DRo9x12J(#@59EB{uq2jK3G$^wyX@@H?v2LE$Z}N&T!6tPG*9^hW65(rr}|4 zUn7wj5E+)=;k!Ua$n@w*n#ueHo3+1lx*Y6-P9fpCGz#7g}7Xe#a*<`5JMWuCQ}!g0+LO z*n}d(p@fAxAFi3LXpWu_P4;Jb_2;aGnQrL z#pYvNL^*~V%W$RIW;Pbcx8A4^2y1dic`f{fg2)ch3bQqq&bFzVBSh@vaSs63;c&Iq zH-LVfMR>Dp86Nc$IjKDKUFQcx?vDvq$6mRfioyf)&+0KtCo{gu3b|j~W1G2*aBEp@0?~%EW>DCh;fOX+IU{4^ zl@Y>LklbrmV~qE9*Suymg^;b9Ds( zlVIRyquoH`P(<}|Wo@M*Wb_~{U9#)3AE!Hndted=Fk9#BasI(~ee?%5Xyl-&6M)oB z%ZUk&jEt0NmEr(vze-Hk_U{sVg_dL>uRnJZt6{-9S$?fjn}WyzYcsZ@Guu9QnE~9^ zBD}mx$I8SGSoz-yI7jz-dw!=qV-jci-m|yI;56QA&V{Jze||h(t18VP=OTddinZlc zo-RYY+;pPwkR--;6Z;UW$f!l@Kz#>8It1U{F)C;%!R%0&#Q%99D@z}w)4J)H0s7Fc zO?k}ew2QyQ&tZ2L(Dw$P7|t!rD^pGp7IY}BNI{YOA&@korR7HWrlssV`c#kn009wZ z(uQhMzP3u1Ks?Z0Z#{OqD){jy_4@ukCNMlUHoYi*S>^hnQ1O#X3=l$qfvgQV0cls> zl?5hXOilP01Zzq>D?_o)3BKGc()i0+2Cxt*rEOLDF`8g^|T}(h(tkU*Om7Ds-Y<1Y)3v$@nd^S^ zMR*qrU)i$lKy|XS%S}sQ$9AI7T<2{M54Q_9)K6V7VfXi(3k&MZ7#`RPmh}L8!%N)M z8Be7c?c1Aw^(^_SABzcj7@s@Zg5rTC1=_Z#_R5|iGx{O&KB_;=F5zwSE?HkKU%3Kl+K4ri!P zI=C-LL!@iP3mcwg5d{|I?_?yFJu%%;{_aj-WcjHXi77yw^;3239i6P6Q#^n7Zfgbwd-c$V)y~JxCORw((8yPa;=XY0npk9HWI=hk zyQ3rH{JhLePGx1~y19qMXPSHh##274RcNCnXVxiZuT^^?B34n{1vfXPo&hew<6y|S zzb|I)^xF#@n>(gX6=hJ+*XMUWrn~qNL@R%bn6#C^EMSTf`_g#=KfQC$L{r$ UV!HkVO9BQ4Pgg&ebxsLQ0K%s4UjP6A delta 17565 zcma&Obx<5%@Gm;JI|O%k`y#=e;O=gL;DG=^hv4q+5*&iNy9EeAgS!QS1ZRP}dH23Q zepRn-y+2OPoZYF}K7CqFcYk_&zQJC9gRQgI0{^yAT#3i^mKF)4n4}b~S%eN3)jsK; zTIw0h7TK-KTd%j0IhZJoH5)AbF??FJsZVo>GjU^+jVl`Pj6hW=7wZ)-%{=g3xO;Ls zAbk{}j6b(}FP8r>ZQC>Vz47iaBNG+~GBakUFHe7<;E7Hl9`Jo;6|-8$SXILs8Q|jKe)kYao3qOCUarZ8R+@v) zQbnd+1m0?;>4VFSiD8LGB@p^^jv-h2JIF7ga^@Z81E0pwPAuhvKjo&SdUt8B#<4>q zm8bmXZk#)7uavsqObU}U+imYk7R4bc1)c#5nKB;%lyNa+10Qk*stmnXkZ~c z2D^AgCiKM)v2DX3`voLr$&6?Ok-MnLudb5f$*<^6Z3=Cc}GXc3lnAbvN_ zM0|o?Qlx8&nO;%X>74>&k+bRgBmSiU*Hzn!RW z&6{I=w5-_<#OhTO!uj*})CMNMR78BDmi1S|dC1Y-_b}CLg_#9la*F)nnLkbcZQ?+oV8dUa_^nL4S06OndtAF|MYln_|a5BxJ{u> ziihV=2a@i;ec*G@h2S5M3OHi}=0sYh8njrN#bLR2`%b^Sf{6E*QqxToTygzw8-S+( zQTh{ZlwAH~Hna97De(mJ{;^#;$U7j&_Z$`w(SHd9`fh~%`O@+|czgQG8aiZh;Y(s59dRaOuA1(3%{vHp zE39ZKcVN4=tMCPae@ss>=l zz$X)#a(9BZtSUxFC%L!etKRW?NjQVO9-kUaSREg;zz`)etA zFpS$kH7>;PFXv{pfo%)6aV4oR}?8tmoLeAJStiL&1UH73Ko)g`>06<-15HxKy*%V>Ku4J z(Of;Y`I~#x;%*YY(}cuCW}kMW+g$U!ZZ?S(t)MvC-oaGL!@j{1lHRqCdtMi=6{R$i z%td{J;m=&GAtP#Vc@2_dE?mnOy~2!*psc4LMyHsK-u=I zs+zMDo}jY3e(B>_6^io%mTd5P;{AWOLcmr6At}u2H^SG*E*Eg4iz=1HfG3v3n+fvl zFkc5Zs2`YM45%lV85;-LJ@w1FeNb!e>>;nJlU>aqmHv*IXzRs)CH%wqPjpqoGs|zb zUys;k7)>EY*#ct>c5++7)G#Di5V;KnQk#m@h=|YGUlVPTvMD zP(8qSXmrx$FOoSCTIh|-S{wCA9ntc-{}2x= zx*=K6TZ|g-KO25sX0NHn-@Bta5TO{#S#szU@(5ysFv(bLT)pAL_MwM!pQ-ujAg?IR zkeqmXw#o{A{kTIL5@WOb54r$X!ZblluJ zP2v-2{)|LWZ<6R4e7JqyjizXP*LT8A^q&n#`zl(0yFG(93InXCVW}rjsr$XGzwX#J zFId*wtrg(#Biu^oCWr!2MdG|l_y?lliHSH7iS)|vFaueN(*1X4m_D5y1ml5kTI<81n|%1R89g8l4C)5B!<`Sj+EtbgxSf$ zUsq*WOeN&6#K8rYFx&fo=5%sE5)5vn94!LHD#Fa0MUf3#Ml6{DajJW zH1wqpnrRKw*GE(7d{?d5YZYsmFu+4bKfD1@344q(13;C6|DD=rL?kRyDzt>Nb=H%& z37-N`P>9@&sm~;jB-=nH*0 zSB$rAX?Mb0P36%4hFMG*MNvn6K+#|v_%$(Ch(5LWYbTnK>R+d{#OzdmpC>wkjKLQ}b77qi2=9ytK(@4}0jTSZnDp#7w zjKa?Lc@1#H#PJ%%avm>n*cBQ7eMlOB$#{iO1IPPF<>2cXSWN!%I747!zaj6?NEbjE z(%^R`(yELDC9m%v2cWFbZ*xstIV0&@Y`42Q>PwN zY)MWwG4t}oM|u8e?Xoot@12bLkMhyVHOG;c+)!bFWUM?E_iL|Gd6%Et%Q!DjH>UY? zC?HlI0H{ujmD7l`vMTNE)$MA|IFq6QZ7#DK*Y4ZDa%1UudC_WSo~-V{?E2yZJ3!)7 z_Bzlvsdf)_iP_d;>o-8)l#xJGiyE3G@ylA)p)B3o^S3bH3_Gwk|FC^q_;~l^1`DrE ze}sE7u-9u5p+NuP76W+1B$09?H%Z6^Z-HL&`!AgG>6q9OqZV9HPmlLEg}iS1MWqJ9 z!$a}A;cc!)8YS?(RhK-41!3}!CmobuG|C56shei6?e-97J_oc|?~;$aQ=#pd2Logq zZ{!Z9bEN_PD?HWEjLht$Ios)^khwBLo{X+ z>6hv2xEagF21`o58wsO02bhajk#SA_UkK0_TT7tkMw(MC7x)!)snQ8;mjWyA5d4xzzzRk)!|uo^ABy!{<5r|WtR z0qSZ1a$`$P!hNs!g9qc9&%jJoa^5%GQ`b{ucc|Dj^gfLa-Q8P^Ku2lapF{K|#AWXj zz|>PJ?%T5_?gLCo>+xI4)30?RLUu7<51)@%-LVtvVemNXr2`tgzB3M#*HuGBU@Rzc zG?MEo8?sNL`4gNorAZs@qn{6jhD3t@&J=rla%X3%7S2^=A4~+ zqG9eogrQWkzXwy19Yb%ZD7;9VGVvA8##>ap)C6`M~3T_fP=Z}Jy zF6hdrFj`u?Iqi426awG+VM7JqpZ3)nO?B}=4G&j?DYj#&3*~@Fn#8 zau6L*CSMD8%@|gX7$6M^PdX+4ivna2u$Z=3y>>(kPd?XErQzs=pvh4%wv5E~ z`2!0_oR;3`4QM+FCfH>cg4NeU+V!5nqf1Nat~#3|lgmYI$G@*-_N;ApViRjrSLf}? zw$^huar8K)?WiUk}RAU_=bp-;3;H);ysi?Z%k=oG@-KSfO2~ ziTOC(D+qVtq1aYo{qs1qm;b#*aF1GfO(|UABXXSQEqb5p zBN$rRTbhX2ScE~YwvW4rIXStP$Bh2Oz?hnMftNSBR^&$y4~Ag*x-;WdaIqG)f!Ey8 zF-$tu_y_*wkwyY0kih2>?K86+_Ssi!7_HHe4@ty3>6_NC%S*4VV*@Ngj?&5q$CE8F zc-^R7F89BUvp&~|f_vQua}?d5gA1R162@N1S^w5A(KV6t$rr!I?%S+)>7tVhr9drJ zkjb*!8P6651P<8fTdv0g2^Rf7iz7(hNwx%>eqC}AsE{El9D}m;UPLvBEC-S@&Ji(K zSu%XQ`6uV=%r~a3-@lb^&o^i8A0I0rqHGy{r<=X`#6lK`0}qUTQCPB2ZQ$>R8w@Yn}JGyuzvNt{Qwk zpRac?PT5(h1wipm^xjHGs1gh=F24Eo>z9Peg5S46X<}|62_kIt-#;)rX+iUs&shpU zfjqCvsjgvd8mq9brzBfM4>{eJLY4mJSLVimU)(XT9Y~9u!ies)jG-bPJoviBldz0! z&rf%}RwFUgGb)bSSJ%fVix1v`>F4wVopHh(n@U4Sx?t44=#wKZZS`Z6D1+-}k3ZxV z0)c2-TXm`kp`dze6|6TN4|T9lFSb;!oN3pZO8?9|w@QqL0WPufidOp)j~1s$52rUm zx~q6e(2u^ve4X@r!P1*H_lw4a1b*PoM|?gS&fcjounFz5HQcNPhtMl*X%C82mTzNZPOS< z(WiKWxbIg8$rDi+z4<-vLm3T~Y$me9GC8^X%|dbfmZkGK)1kRFeaQezZIJm~TqqvS zZxyHNEMAjmlRZ=WKBeBadYpEAPrmTol<$ouT^|=*5p&bRs866{EG#|V@1CN1Cm9^Sj`Y!+<^n6G`UupZ2Ep#$5Wzd2Qv z?&U{w+qXXVKpk|;6AbNQHFYvW1-PR$*TiStNlA4JcWKR&IZz)P5%Ht#TX=Z*H0WDH z)0Zz5O({hrR)n`Lc5;Q$e>7XX`Goh!iI$5?eV3b)S&eN(B}?(&0Q$-#y>{*=@Z)Ng zVd{AHuD))`>e2*S&hmjy+Uc&8+d}7^$gNNH8m2c6jqjjC8+16MD3br;)^6-jF>cL6 z1F`!{UPBB0MgQ^L7Dz+_+2*G6zG0@`04Cs zA1lu5yo%u_dW#G6jjSQR8u8B;2)u-=QAz?-pNBo=1UY35z%O6E&~28hJ8h&F%VFce zHGK_XGl|vVE&Iozy&0|AEhyC=N^9#*9*N0F#WT(1i)?>hA(tSfs9oO;6PjTI%Z;{J zw90rK(W++@5?9=gcW{9u?-XVLMoHUnk|Y8&d?hYw>cX$!fPJqPiJ>UEWG*D+G}b%j z(u8EYaUXoj)X8Vg64+xr!!RXTkqgiqkEgY>g^ld>!5oJ91VeWAz0T!Zz9iik3a4r!Kf9vpE5iBet54zxIZeTf4{2#>OiVt4&Kr$Sb=4=BDht;2 zTYI)P!#!_4O{THO2vI9aYRzTCkB=&vaE@qXAr;%>QZe?{W;M&js`(VTA5I&l*XqFQ zCqY7fGePA?*PnsbQc<1sYYYGrm`+(Abl%)N_Ft=vCK6Z?r4^V=S->P#!97fxv42QA zGX%oRg-SRjh0^WXbLmhLDNaC1g+LyZUP(%SOgO5H{``r{Y1$Q7LjUw$$jZtJA0NN( z`-qNYoMr)=I6%Z_pJK?2JQt2d8Q0>pn)cxHE^>q2yQwTPnNck%#w>oo7sAy1kOTQt zqU=HV?NPV~?WqBumGov*KbL4ys>C~38%#@``zpn6!zfuuEaFzQb-BaE;rn^3q6Q)7 zbtBZ<-$&7uT#=_?wCBi|C7+JgmyS4clMF|YCnGS!+-4o|vy(M!E9B7ieO_M%kcx_0 zKN0LtoJzd{qc@dPL?yBfsm#=>vp>LBm=tJkf&)wgO4B^Knwx^_>$ziMf5~65f_jO= za!leXA6Rv(x9%+dF`VdXx3beSARPba83eQb!&I~x+>ifM);#;5i@I9v>M0D_}(R2@+Gh1v=hi~BazJJ>H8ni? zAk&^gsL(?NEj2X^1qDThn14rka{&Y147K}a8H9&X`VW!y#v@u=<;yUrZc_*qp%`Tb zTIdAH1gIxc@1;{~huO3e6S<;c~10N2G%PP|`wYi{f~2G_Y!e|33{$YYHvEtLA9*w233DK5X}XJ$ ztLU6VATW+xcnA85q||KRJ5D$2RkCL9HKT{G@1ZI5p^ZEYF$z&lrzB11SEYCF)D7g# zmh;w0NDyqxt?FF2rCf3GOFwG)Q~WVL$$Z)$DMsy`b^%AA#<8dFgJ0GKp#O_&%$p&A zUBckAl>K>x+||V*V#JHS;a2PUq+i)N4x zO^+ZTDlzZMci=|yH-F!(g;ApGiyC@<5AxGMX}`;eB3;gF^2}k8IP)G7F!$cyWJl7U z%ZlDjNvN6 z%r2<6_73V2xjDDdeN)u)J?AYRukAEEu)K`lOQ`pj#m&_%3y?-@l{pihb&9!}=9G zHO^@?)mb%c_u6^OMZQE)O3UL&_u3AfYXaurpU{3iWq#iQjk4!ND~3wV^&Gf8oTy&n`j2*;rAJ|iitwcH_DM-Cn3_GAIA z+vf(h&(xQ!*?vKDS-`=;LEp$oTA4?WjgwoPVJah$=V~s*nB!2~_wLWa!xJdfjelIG zZr1QpE7-G?PJ7Hj>aEi%Ft{u4-37F3kXT{_D|Fv7XX5`s1lrnt8P=X=f|^U{brBh1 zfRS&!BmGX|qL|;!+-S9%AKV-3)HMm9ldc|V5 z+YrB-m5^|EM?)v#M;r+qt^t|oV-cziCZo{LR!A*`v5uN+OV*DI6#^96PcftU#Ol29 z)B?oa+&vurF0`_U*v~UH*i63pr*81-j&N%YHfXfQ@(;p~DP?hno1FAm;ZxQ?LEM5C zEHE=&)3^Ix37uWE`4EP&cPd-p_ourE)taSz_RSd?lc?c(Wzs8ZFgXHki2SB;=K(Sr zA5{fJtBn!Yj{>)Ly$B9msL2ECTYT?%zenu}u&-gHg>q^P_IdH^v5XD2U~F#5I`dcR zRK2frbI8w+*yDG=(4_z%_s{lSep99w2c_?qJ3b*i&U+0fW`8h87KYyotHv9zkuf*C z4!BCx)nIJ2A|SWY4bzsvpAY8yjhXA8xp-+a4b^r^!D;67Ph!bIq3gpO-da$wbiLI+&Pe*vVs|gmb#$FCSqlRX zp~?$qY+_RHb#7X7Cwq7YYu4@->bTMrY4&nbRqN_ju>)vV{DIinKSuz4^^L_B`zI93 zZ}*8x33MXgdb()77CCcg@`A()c3W6z4!1=Cx!@h@=fAj^URV|j)#FL&GbkUvn#}tcef>dX(Rq8^9luVPr{`@R6gO?FA0lZqxA znmqV^VvK7u-n4z8*uJ<|x5jWAT1__QBl=M! zEyD=&`0#)O)oj0;1wB6!#=*mx{9>DcEbA+{D1@W`wroSM=Y!!M9+HY=xREh2-*ZYa zP`W(UNe7vB`N37)n{X-gpaIBOSm}8wI2ET!NFikIHoip{(DMdfN1s(C~w8(yk6@k1Wnwj z*`v56<}$!cXA5A-$JOx#6(Q@3{A0}JtADC*MxHo0J#)TV_6pu79pThP&X?PNA@g1E zg{h%%l9bcs(8R(_F%JBD2+lA9eO&N&MyjyDe1|Wf{JzqaT;cXhIww#F52G7EW~re5 zS!rSCtra!d`QuGcEEh|qP1HIZyY+IN1w_mhcW-MC$?lE0fp1vu8M0YVx4UR)mprrA z{X>ef+-|VeBuk&D@9o8EF7797YL}bE9buXfT>QT-mTo>$m(PbfAb#!hY1!~nK)|R6 zx)}jS2OkH+lzz(d)<{qsg(%7P_BIf>wPo(O(UoatdwnzuMA7#52P35$dS-TFgj^*@ zQG9t)h^>6{+5Qh)k_SPHOHrap#r;b!*^`FEBFQ+k6kkzMK^4+BGz7mY_H6>_dwn^S z!Q5;fER}oLhV) zKDsbzg8Dsl1d!itxH6J*E*z-0$U2{i6MvRQP$W6z0Q(L_`r67q0M# zh?W;y{qQ9+UwlxY$*mfQTxen;w9EwTEuzAJ`NM;D%2%M+m)zq<7~n1EJeEW%tVeM5 z)6MVE>)%UiR}FJNf8IYl1Tm=*5l0yyEaJuU_n<(n@18e`QQDQheV< z6|UmETFI<19y5DyEWusbJ3T!O>8k5id+E#M)M7|hxE0vm*HwJn1^IEVDMOQc9VHK6 zPV!f1=qW%7iWp-Kd2Ma{JvZ-)E4b?;cxEgg_&WF#W{mcmeuCVKjNvV!zJYJefl6#+#9tuA}Eg6t9 zi&iL9XJPw4GiZqZKPTY-=U0|nwoFRF)t<9wT%*5iy#0?U#$^lDHz+6YVOku2HLT^s zPC_HC4#JZ4wA817?poucd4>JuN~Plc-u(Summ~JRR@DH4z`#I&29h!=HiTE?+HZ0+ zA320Kc!tW}>o*B*{!j|cfjF;$Z7}Zc?v~EZ-!2G0KU|gUfjG@q!kE~v!+p}16B>-9 z(v#t<;mmWkwC10wN|p0Xc3u?5v&uDT;IoY;3BBmnLibi&4=$Yzf!d*i^Go`Xp+b z%O;2$3wV2XdeicmXtkvWVmths^HYJv%G%p)6@xmZ1Zeib{H6=|ZnTC7)S2IUi+Szk z?9%_qo>mLih`R*^QPI#Iyg4~JL%WpHIU?_j>olP!R}I2pZ!vQT2|z(rRnF3q#+rv% z5Qc$~aToIN_u}RzH07s8TK=!hlQG{%)J~or*}e-2?W*lDrCDsAH*(~8=x`PblZ{91 zg_Lo2GwJ^4{$Oym|x4vq&d?6;!yYX1gRO7sxG`Xr%qh) zR#{dyLZT=zzTt`CmEvrtNSpX3Us&Q7vy@hxMrj5pJeikYg^F~&;z9`+GT`GJd9o6H z%B(k$1JhpFXq)YY3v``sSH|KZu${~llPUY;!d|3L9N5JrX88MZa>%T0Yzm>=@iT-1 zd~_ChBOr1zFsZ^93YM}US@5e50umCEY0&ZUG0>-`WOXuMF*H7`b$-Pd_p6Gkw+k~K zgSIy#8db}}s`DZUZ#sIGsP>zqM1B3MKZhAOCq~rZXJg-bGU?~tvms4Ssr2@B<#geJ`sgUFK)Z*v-Dfix)< z;q(699soc~Feo7~-M)7tiL~GZ zOUzo3;I@~W8_x<%hW89{ATLAdD;ji3IpUyc6>>uIX3*QYYaefI=o5h*T@W^;4D*8w zt&GkByvhYvwwouAvqK@sK5U>ms=^sz)EGXi1$HNS`NMbFKnrZiK#8#KA1$TE2)pxS z3ncnGAHVB-&h{w?o$ghiY=|xgvG*NTkfg~$`ZkuD21tl&t)hQMPMl#g`NidebHu$3 z=_xsx>rQR2IVlm-V*oupL*L}C+Po89sG2w{pdKhKPTx0W(n>hsKn`=Tw|8-+RcgOb zi8^UH5pOGe|79BWij@R1I(eQZc!h?HOcfa!nPK<9ncs3djP!4?#mtCts2!M!Rh zwbaA#(9n^N81UU`AwCw8*E2B0?d$!ZLPn}>`S5R%_vM$zthp0$Nt47w#_%HRff>=K zJU|GHk=D1$>Y3{IY8|ZVtWH(G-jhW5Ev{>c-$pgBP_Ymbo%W7BP~6@v$Iq6X;{I@d6KWIFJuASjI;{IpD3ex*kBRF_urWPFK!Xj6nyMFnb1Z0keBej}3$+-F zTt;QQDM0Fp?w$#2QJXSWM@A~kRepuN^qVbom_Xe#VH(b7g70L@hAJwpaS$P|nI|g# zLek2PPd~s8V`y4aF_kSd2(q*#mMiRqNDaSv{fgLZUms>aR~p-r%}SaojIZOb23I>H zq5SZX&9Ld6YydQL+}@CM5ZMdiyZNbbYwLRI5fgODkSDF9^l=feK~Z)m6-49yW8+ z?>Xl_{DT{5^Yhtuc$^#js1bhUe++_VyP+lw?d{u4U?}zl2#kLDDF&meS3g*orK0}; z?wiUy;!);2IPndoK|^rcm-}5T=n|2QS{%3c508&4sKf!m0Ei&e@4*7g(0C6Q50881 zXGZ$w-@_S?4S_#50UF@4NhV)rI7=nA2#On1n(^yHwLXNt*i*( zw>Z;zH@FEe|2xha@KHE`-}x zK9YF5`@0)&Gp-xK>^wK(br8;icJF(P6c}pnvK_LYixqI#iOcLK_2JjhWYybN7XEhe3Sj_fd`0m{%2x1gmMdHbWKbjp}010jF z6u||Je*f;Ws%7fA3F7=uSG%i_KVxU=N1xS`;5Z!3c4Y_rndk0B_OHlub7q-a#W~w*UfILbQAj-)vrNK$P4VXItC4(J z86l5u4w;ik%kQ}O`O`MR5&X;;<6p)(o0k988FJW`j#*nbk0p+Fnu-y^q|wu`o^Nu} zLG$@F+G01?@Xnhfkhkux3Zn-UCimS) zln=9Iak1RW0P7py`UMjs!J+wU{e^w5U<{5qS)1gD(<7Q)%V<*~f!OF_MDD=2wEz4pq9vUE00JjjRUfZ z+P}oU*?ycBIQs1o!py#-C0F$^@a5&@t3l&?A~8Qf&(md?0{wv5*;%{w4!+)R%U8Pz zOX<8AY@irp=(ioO&rEpu_%bxKv=7tqh0@`ceY&h)Mf@TRz&bb%#-_RvW?=mCBjj%S zbQKv8?EXj+L_7=gJrq0rblLz#U zLVENew`g*LW7GJ@G3&cO>&lJqqmWGAUPZ^nAyPrhHSgHPF)grMZD?u#G37c2{gikv zmJ->?#wJu!%oOqhX&25X6A#EqFRg2oF|%*l3>5Bt-1+#PK}7U7+~xMWOZ2dIMsvs= zY_)NB7EIv5)R!695u7#;S)_1~K`?n9ms|{jd*A7uc?Sbz>8UaVvgf`06-7O{lkA(y z29~2|?r+b_cNWnZp(Tj~PZ&t-qb2IQ)hppv)(%STV+)wVQ25E%>-3;+`_U%!?6sTX zj%j7)CmK=|zQQ?IP4=lf7XR5KnzPTfTQ99V-McNqrgr5j9b95bWpII)Gz@CQYJopj zUjcR+2@nMToy9+Udt3Yy{j1e_DNd; zt4z@P9`YYv-(rUc4DdzK`^D|8=cKhIzJcXKCkel{(TjbHR(vK+G7fThfujWy%IKuE zOuj0L2^8=CWSP!+dyW(s5rO>Tn>B){TT}GXX($a-g^S3VP30v>|^!NG4Ob#?3yn%d-lF1FJJ-7Od^OUZPN!~pBJU`!=*c;Y^U zI{-AisIUX^@_kw$?bsfS*|SjiMHetk7GJ9LpiWCgNl6?T^%Ddq3Tu8`?3gOkX1k!XRwr?Jsi zYZaa%fq8|FxlQ}<@MY`^V*93grm&mve6r1zMu97fPJEsI!aINFH-F0Z+ezsgj2LLw z60lgrqo^}QLY=brXvCcjNIwNoova3y9zHAZQDqg0p8M!TU;Uw~K5@gzPxx5`if@ts zYwsuoqHy7(WXoeA0E+}_sOA?aI$0JUHT3Guzq0oKjG6!6kh$o_Xqzb|D(+&T`fBgz zs1W~$#USlk``A%~nUBva1PUW^Zk#haOuyk=SxNqborj_Pm4|yCz|5Y1^-^#vx}XSs zwg%*4N0ZD4RZ|Y%K41tEgu;{+^_4IyB^D72VX7;IxJ4&{{V6SuN6*DXVM#+}WCT&< zFo^yyZ+|`R#w-6g%uil=^9I#B2f*^Y+McufPhaTV8lH%dP@Y2MvjjARo7fl6b^AKX zNqNL#khx@KrSx30Qce2?4^=x~s+!}>zX)t9SJO3;3;A95(`s!vDc`jcol#6R1pf>g zpHov))8`?V?5Br9Aybx4PE)<%%hcoZ6EKrv1Z}r2(`D%uWrxGmFe`*rXpi~t)HR8k2;rF*}gLj>4;E)k_rU^WE1T> zKPUSC;AHF-uD5k%yhTsqAj7lzdrtF^_?xiu*+}M_**hsIsixbkjqW~i$OT*&I5TCVBo__6Q=^Up!i1Q!xA>FJT_bF zW}Ch1@%p3X2VvwgGIC*14-zUvH$eW!hFwpqnGoQVY{l{g%xMRg-hgkCnqNiR#Z-5D z)>Hx_JDR6-evMhTs>{33EQ4u1breh#5_L}X8$-T;j)5pV-lf_Yy z593fV_FOk1xw?Lme9Ud=fzcJlHEL8FI*`d&7Q*{8>j}{&=784!ltNatKQclI@)*%b zg0Q1gw2GI-5GEpOmF*STJ{5#ZW3LN3EVaKd79tyyTyVkA@AM z>?mpl7IfT8Dj#7TZ}i&FT%!CnV@T8GB%tv+i!oIeM-kOvX$aLq@72+ zu-)M4Q+~!P28YwkEFO)C-m>k@q0Jq_21;e6pg&ucD;iqYHuQc`Bjhkc)Qp=6b@%ez zSj{#;4D9m5o9{QS5mss1u6l5&`|v`S&}0P7JG6^X6G#RC>g`F96IZ_l9)z5vn^-PN zl+s;~f6~|Um*JJ@gi?wy`OX)RZKI@P5Il=gnitZDgFwW3UI;xH5Xv>p4Mb)XDlI>_Rwnj3cd5xZ01 zv*NeRiEzB#(uZWA?h3E*@ri$8X024nzP+P=2L)um8AtGGb(Ty$wZqER2koa$5|kAGk@g+yBI2p;}H zTOPwQFP10~8D)`6cxCzHt5M`!!YzhDHV&m(d7Muxv2c08G%z(&2$M2;WK`6!YARVX zK_OP2U^um2s#ga}5u4)-l+Y4b>qeEDCHDtJf5bw1TQC)_g{}bJr9I8sh6n|6#CPr6nu%BOWV>qlYCU zhv&1VRZnswue&I|7P1xC?a*Ud*syPBPF>kyI$JZZ6782 z)UX7o8#LZcx^oDw$8!A;$Aqr&;btghYxGOHt6&km_(HhL-7m{}<}*KviI9yrH%5jdL4^;; z_pc%ErL!*(=r?_iItl#SNof25FtM?PBx{j>g>`kSgrlV$j61ZAl3V-Fsh|I;NfbL~ ziX!>Jj~8z}%+e0-k|inrj-Jb$9vOw|T-yz}Wb>H>(sBF*y-kgqgTg7XOY6L$|e&-r@Hf zc@SV7aPW2HzR+e5mHZioU6>q759mffp|~JTSOlzA)|uo$FeA}n%a__eBlzRzrn_)S zWAUR;xPfU@W(~M>rtJMgrk4AM{wQtLW+9~*9WtQtLVC8YLxW^WZ*(gJ>59yJdR#l4 z5QF4DWL45R4Z_d;B`V~?IVrm2i%({UhuQw>w%%gm9*y=fj1R*Yy&>4ME5XhiT_|7y zWPj=8*tyB4gA^czAxVNZuO%~3P{^#qVR@cyVg<%xw#Od{t7oV|d#us(DW|j>`~v

jJIC$brD$ZP*eLorBP))%KUzC%B0?$= zqHh@FH$HuN1t&m2$niMGh>EWj00OQC{6lt&)du_kRm=;8s80wS5+;>L3>>g$nucLf z8b|(Z;h`)Ukd~5);8*j-*^T6iCE>G#);BQ$*N-19CX50G?47F0Itgeb3W-X#uJ$MC z`j*lO$>m$)$m<FH@g<~Zg($A2|2KwV>_w5ux@3KkZj zKV^s%nn^E#D#kCS`_=N5jML=mTVWkjx`eVcilQ^LB@nJU3SkrGivI?PX74?oE5j2I z5ZIe{36~-z%~-R|9y&F=4NugWEdu6u2e-D+S0G8_kseL zhwZQ=U1%7b3mG$x4YRzkcpDqCw)M-8W-ofkE>APYT(y1j(6QF|K_|d>48@v5EB0z+ z6oys{kf_xjz5ty+}b4+PddOw=~@8#f<73*8w0H7hunZ2 z3T5K(>+78-&0!L_@(Oq9wLDNo zVvt6GU%5=)p8H!Q)QZ27rqb)PiKkr&p+NBj-^Ehq$5EJNy|zF5`u2K((NR$sWPYGF zon#^Kb^{Sb@gFn~1*q1q4|y5O~LrscvM=W8i%b z3;jcZf*(+{HTZwUSzqItzk3%^u`CQlWiy4zZ6b4tyFE)a$5TZ?BZ82SkRM}7QiWYN zNA#8No1L!mtq&y(f}jyl5;SJ8(_JlX5wrbtzBcF=Q3sPVxV_4 zFIuKZ8z!+ZMsRZNtX{A6>e@*rh8l%KeStu)UU{M7Fw^JQ_V2x*cG3NBpFOXv4Q`LG z6O`qy`LR&qw>!`alNL^9*ekvJ@uyyw3iGn#SED=Yy%Z_56t<)SNDX? zI6D1K{gmc4(|O+6pK6@B))*+*)-1o1@qjSrx2Zt?xwt-0G;nP?4BQ-bz~JcmgL{jg z_noTW6?~je9f-rL&jXKqSUAPJs+ZZO{GH63w{Nd5D=v7HeXpUcD?nq)cHz0!jxCcm zZ`yPSIPeb~OIo;r@4B7GQ=qr*r2!Au04`H%Y`2`iVE3!~*B8xsHi@%;+t}DJFjU^u z>Ik8}(JW!GPg_T@q zJOhH|0%G1S1&iDUY6C9NO<3kX-;W{T`MJ4!?y&Jnx#Z;JFfi=gxl_Wbj#U(*vr=Kp zjSGzzfYH5Yfq%=g01Z(w@OVbzLf~;1Xq;*PnTv%PcF$vAHH%~b0#8>zmvv4FO#o)8 By^;U` From 9154b06ef13bc979f19218fc3579cbf7bcae51d3 Mon Sep 17 00:00:00 2001 From: AnalWerewolf Date: Mon, 10 Jun 2019 15:20:52 +1000 Subject: [PATCH 297/370] update my SHIT --- icons/obj/plushes.dmi | Bin 38718 -> 40011 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index 2112c3511d75873378d8aecdfef3f8426c0b2464..8e845d97105a11a05b88d0b3a93732fc20ff9a29 100644 GIT binary patch delta 19405 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 delta 18102 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 Date: Mon, 10 Jun 2019 01:23:44 -0500 Subject: [PATCH 298/370] Automatic changelog generation for PR #8562 [ci skip] --- html/changelogs/AutoChangeLog-pr-8562.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8562.yml diff --git a/html/changelogs/AutoChangeLog-pr-8562.yml b/html/changelogs/AutoChangeLog-pr-8562.yml new file mode 100644 index 0000000000..a93babfdae --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8562.yml @@ -0,0 +1,5 @@ +author: "AnalWerewolf" +delete-after: True +changes: + - rscadd: "Fritz plushie" + - rscadd: "Donor item" From 17629d4febe36f608e43a54a60cba2e56d6ba65f Mon Sep 17 00:00:00 2001 From: Poojawa Date: Mon, 10 Jun 2019 03:28:56 -0500 Subject: [PATCH 299/370] client check I guess --- 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 a70ca2a8e6..368c5ad4a8 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -348,7 +348,7 @@ if(vore_active) if(isliving(target)) var/mob/living/L = target - if(L.Adjacent(src) && L.devourable) // aggressive check to ensure vore attacks can be made + if(!client && L.Adjacent(src) && L.devourable) // aggressive check to ensure vore attacks can be made if(prob(voracious_chance)) vore_attack(src,L,src) else From 4eccc122051689895a6eebb681881bcbc808c368 Mon Sep 17 00:00:00 2001 From: Sishen Date: Mon, 10 Jun 2019 04:56:24 -0400 Subject: [PATCH 300/370] Why are we here? Just to suffer? --- code/datums/traits/negative.dm | 2 +- code/modules/clothing/gloves/color.dm | 32 ++++++++++++++++++++++++++ icons/mob/hands.dmi | Bin 8850 -> 9070 bytes icons/obj/clothing/gloves.dmi | Bin 14207 -> 14376 bytes 4 files changed, 33 insertions(+), 1 deletion(-) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 614cc65cbb..0f6d6001c5 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -60,7 +60,7 @@ if("Scientist") heirloom_type = /obj/item/toy/plush/slimeplushie if("Assistant") - heirloom_type = /obj/item/storage/toolbox/mechanical/old/heirloom + heirloom_type = /obj/item/clothing/gloves/color/yellow/cut/family if("Chaplain") heirloom_type = /obj/item/camera/spooky/family if("Captain") diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 1b20501f21..82cfd84b43 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -7,6 +7,7 @@ permeability_coefficient = 0.05 item_color="yellow" resistance_flags = NONE + var/can_be_cut = 1 /obj/item/clothing/gloves/color/fyellow //Cheap Chinese Crap desc = "These gloves are cheap knockoffs of the coveted ones - no way this can end badly." @@ -17,6 +18,7 @@ permeability_coefficient = 0.05 item_color="yellow" resistance_flags = NONE + var/can_be_cut = 1 /obj/item/clothing/gloves/color/fyellow/New() ..() @@ -30,6 +32,36 @@ . = ..() siemens_coefficient = pick(0,0,0,0.5,0.5,0.5,0.75) +/obj/item/clothing/gloves/color/yellow/cut + desc = "These gloves would protect the wearer from electric shock.. if the fingers were covered." + name = "fingerless insulated gloves" + icon_state = "yellowcut" + item_state = "yglovescut" + siemens_coefficient = 1 + permeability_coefficient = 1 + +/obj/item/clothing/gloves/color/yellow/cut/family + desc = "The old gloves your great grandfather stole from Engineering, many moons ago. They've seen some tough times recently." + name = "fingerless insulated gloves" + +/obj/item/clothing/gloves/color/yellow/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/wirecutters)) + if(can_be_cut && icon_state == initial(icon_state))//only if not dyed + to_chat(user, "You snip the fingertips off of [src].") + I.play_tool_sound(src) + new /obj/item/clothing/gloves/color/yellow/cut(drop_location()) + qdel(src) + ..() + +/obj/item/clothing/gloves/color/fyellow/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/wirecutters)) + if(can_be_cut && icon_state == initial(icon_state))//only if not dyed + to_chat(user, "You snip the fingertips off of [src].") + I.play_tool_sound(src) + new /obj/item/clothing/gloves/color/yellow/cut(drop_location()) + qdel(src) + ..() + /obj/item/clothing/gloves/color/black desc = "These gloves are fire-resistant." name = "black gloves" diff --git a/icons/mob/hands.dmi b/icons/mob/hands.dmi index c41cdf06d0cc49e8091af1e5734b0409159952d5..b69c6c88b1c9d20ba46a0f5a830f6eab4493b9c6 100644 GIT binary patch literal 9070 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 Y=B48FbG?&~cL$kXx4Kqibmz(c0kY*4lK=n! literal 8850 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 ab2N>VK7Y28DJ$FW(7$D(Q}xHar~d<$YOFZ` diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi index 619db9290dcae78ccc808e43b118948ee80f2c7c..7e0d03abd56bcd7fa2e543382d0b42845405ca2b 100644 GIT binary patch literal 14376 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 E2hBqr;{X5v literal 14207 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 oOokz@78A_>J3xR-ogq;+b7jpZ%Z7k|2m^tX Date: Mon, 10 Jun 2019 05:20:54 -0400 Subject: [PATCH 301/370] Coloring gloves? Not on my watch! --- code/datums/traits/negative.dm | 2 +- code/modules/clothing/gloves/color.dm | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 0f6d6001c5..43be1fa2a7 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -60,7 +60,7 @@ if("Scientist") heirloom_type = /obj/item/toy/plush/slimeplushie if("Assistant") - heirloom_type = /obj/item/clothing/gloves/color/yellow/cut/family + heirloom_type = /obj/item/clothing/gloves/cut/family if("Chaplain") heirloom_type = /obj/item/camera/spooky/family if("Captain") diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 82cfd84b43..0cd96eaebc 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -32,15 +32,17 @@ . = ..() siemens_coefficient = pick(0,0,0,0.5,0.5,0.5,0.75) -/obj/item/clothing/gloves/color/yellow/cut +/obj/item/clothing/gloves/cut desc = "These gloves would protect the wearer from electric shock.. if the fingers were covered." name = "fingerless insulated gloves" icon_state = "yellowcut" item_state = "yglovescut" siemens_coefficient = 1 permeability_coefficient = 1 + resistance_flags = NONE + transfer_prints = TRUE -/obj/item/clothing/gloves/color/yellow/cut/family +/obj/item/clothing/gloves/cut/family desc = "The old gloves your great grandfather stole from Engineering, many moons ago. They've seen some tough times recently." name = "fingerless insulated gloves" @@ -49,7 +51,7 @@ if(can_be_cut && icon_state == initial(icon_state))//only if not dyed to_chat(user, "You snip the fingertips off of [src].") I.play_tool_sound(src) - new /obj/item/clothing/gloves/color/yellow/cut(drop_location()) + new /obj/item/clothing/gloves/cut(drop_location()) qdel(src) ..() @@ -58,7 +60,7 @@ if(can_be_cut && icon_state == initial(icon_state))//only if not dyed to_chat(user, "You snip the fingertips off of [src].") I.play_tool_sound(src) - new /obj/item/clothing/gloves/color/yellow/cut(drop_location()) + new /obj/item/clothing/gloves/cut(drop_location()) qdel(src) ..() From d8dbad6e2e257c27db0730833cd17cc6e28ed3d9 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Mon, 10 Jun 2019 04:47:07 -0500 Subject: [PATCH 302/370] Digitigrade socks --- .../mob/living/carbon/human/species.dm | 7 +++++-- icons/mob/underwear.dmi | Bin 54625 -> 60008 bytes 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 458a319ecd..62a4d42672 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -502,10 +502,13 @@ GLOBAL_LIST_EMPTY(roundstart_races) else standing += mutable_appearance(undershirt.icon, undershirt.icon_state, -BODY_LAYER) - if(H.socks && H.get_num_legs(FALSE) >= 2 && !(DIGITIGRADE in species_traits)) + if(H.socks && H.get_num_legs(FALSE) >= 2) var/datum/sprite_accessory/socks/socks = GLOB.socks_list[H.socks] if(socks) - standing += mutable_appearance(socks.icon, socks.icon_state, -BODY_LAYER) + if(DIGITIGRADE in species_traits) + standing += mutable_appearance(socks.icon, socks.icon_state + "_d", -BODY_LAYER) + else + standing += mutable_appearance(socks.icon, socks.icon_state, -BODY_LAYER) if(standing.len) H.overlays_standing[BODY_LAYER] = standing diff --git a/icons/mob/underwear.dmi b/icons/mob/underwear.dmi index 0b63685668097377754c298ecd5905b0be20059f..cf16eb9e32579b04728d92dad5ffca995f901efc 100644 GIT binary patch literal 60008 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 literal 54625 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

9w^? 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 AcmMzZ From 7523c8607190e86fac01a5ca42650b5896b5dfc1 Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Mon, 10 Jun 2019 22:55:38 +1200 Subject: [PATCH 303/370] Wasn't I supposed to do this in January --- .../lavaland_surface_ash_walker1.dmm | 2052 ++--------------- code/modules/research/research_disk.dm | 9 + code/modules/research/techweb/_techweb.dm | 8 + 3 files changed, 202 insertions(+), 1867 deletions(-) diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm index b3a0289761..8cd329cdc3 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm @@ -1,1870 +1,188 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/template_noop, -/area/template_noop) -"ab" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 4 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ac" = ( -/obj/structure/stone_tile/block{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ad" = ( -/obj/structure/stone_tile/block{ - dir = 1 - }, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ae" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"af" = ( -/obj/structure/stone_tile/block{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ag" = ( -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ah" = ( -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ai" = ( -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"aj" = ( -/obj/structure/stone_tile/slab, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ak" = ( -/turf/closed/indestructible/riveted/boss, -/area/ruin/unpowered/ash_walkers) -"al" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"am" = ( -/obj/structure/necropolis_gate, -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/obj/effect/decal/cleanable/blood, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"an" = ( -/obj/structure/stone_tile/surrounding_tile/cracked, -/obj/structure/stone_tile/center, -/obj/structure/stone_tile/surrounding_tile{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"ao" = ( -/obj/structure/stone_tile/block/cracked, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"ap" = ( -/obj/structure/stone_tile/surrounding_tile/cracked, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/center, -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"aq" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"ar" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"as" = ( -/turf/closed/wall/mineral/wood, -/area/ruin/unpowered/ash_walkers) -"at" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/structure/stone_tile/block{ - dir = 4 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"au" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/item/flashlight/lantern, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"av" = ( -/obj/structure/stone_tile/block, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"aw" = ( -/obj/structure/stone_tile/block, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"ax" = ( -/obj/structure/stone_tile/block, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"ay" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/item/flashlight/lantern, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"az" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"aA" = ( -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/item/malf_upgrade, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aB" = ( -/obj/structure/stone_tile/block/cracked, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/item/t_scanner/adv_mining_scanner/lesser, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aC" = ( -/obj/structure/stone_tile/block/cracked, -/obj/item/storage/toolbox/syndicate, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aD" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"aE" = ( -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/structure/closet/crate/medical, -/obj/item/storage/firstaid/regular, -/obj/item/storage/firstaid/ancient, -/obj/item/reagent_containers/blood/random, -/obj/item/reagent_containers/blood/lizard, -/obj/item/reagent_containers/blood/lizard, -/obj/item/stack/sheet/cloth/ten, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aF" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"aG" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"aH" = ( -/mob/living/simple_animal/hostile/spawner/lavaland/ash_walker, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"aI" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"aJ" = ( -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/center/cracked, -/obj/structure/stone_tile/surrounding_tile, -/obj/structure/stone_tile/surrounding_tile{ - dir = 1 - }, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"aK" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile, -/mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"aL" = ( -/obj/structure/stone_tile/block{ - dir = 1 - }, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"aM" = ( -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aN" = ( -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/item/weldingtool/experimental, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aO" = ( -/obj/structure/stone_tile/surrounding/cracked{ - icon_state = "cracked_surrounding1"; - dir = 1 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aP" = ( -/obj/structure/stone_tile, -/obj/item/shard, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aQ" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/machinery/iv_drip, -/obj/item/reagent_containers/glass/beaker/waterbottle/large, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"aR" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"aS" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"aT" = ( -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/center, -/obj/structure/stone_tile/surrounding_tile{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile{ - dir = 4 - }, -/turf/open/lava/smooth{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/unpowered/ash_walkers) -"aW" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 1 - }, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"aY" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"aZ" = ( -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/effect/decal/cleanable/blood, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"ba" = ( -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"bc" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/mob/living/simple_animal/hostile/asteroid/gutlunch/guthen, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bg" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bh" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"bi" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"bj" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/item/storage/bag/plants/portaseeder, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bk" = ( -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/structure/stone_tile, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/item/stack/marker_beacon/ten, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bl" = ( -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"bm" = ( -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/item/construction/rcd/loaded, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bn" = ( -/obj/structure/closet/crate/radiation, -/obj/item/flashlight/lantern, -/obj/item/flashlight/lantern, -/obj/item/flashlight/lantern, -/obj/item/flashlight/flare, -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"bo" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/item/pickaxe, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bp" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/item/flashlight/lantern, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bq" = ( -/obj/structure/stone_tile/block{ - dir = 1 - }, -/obj/structure/stone_tile/cracked, -/obj/structure/stone_tile{ - dir = 8 - }, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"br" = ( -/obj/structure/stone_tile/slab/cracked, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bs" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile, -/obj/effect/decal/cleanable/blood, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bt" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/item/flashlight/lantern, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bv" = ( -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/structure/closet/crate, -/obj/item/flashlight/lantern, -/obj/item/flashlight/lantern, -/obj/item/flashlight/lantern, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"bw" = ( -/obj/structure/stone_tile/block{ - dir = 1 - }, -/obj/structure/stone_tile, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/item/stack/sheet/mineral/wood, -/obj/item/stack/sheet/mineral/wood, -/obj/item/stack/sheet/mineral/wood, -/obj/item/stack/sheet/mineral/wood, -/obj/item/seeds/tower, -/obj/item/seeds/tower, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bx" = ( -/obj/structure/stone_tile/slab/cracked, -/obj/effect/decal/cleanable/blood, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"by" = ( -/obj/structure/closet/crate, -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile/cracked, -/obj/item/flashlight/lantern, -/obj/item/flashlight/lantern, -/obj/item/flashlight/lantern, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bz" = ( -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/structure/stone_tile/cracked, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/machinery/the_singularitygen, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bA" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bB" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"bC" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"bD" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"bE" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bF" = ( -/obj/structure/stone_tile/slab, -/obj/effect/decal/cleanable/blood, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bG" = ( -/turf/closed/indestructible/riveted/boss/see_through, -/area/ruin/unpowered/ash_walkers) -"bI" = ( -/obj/structure/stone_tile/slab/cracked, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"bJ" = ( -/obj/structure/stone_tile/surrounding_tile, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"bL" = ( -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bM" = ( -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bN" = ( -/obj/structure/stone_tile, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bO" = ( -/obj/structure/stone_tile/cracked, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bP" = ( -/obj/structure/stone_tile/block, -/obj/item/twohanded/spear, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bQ" = ( -/obj/structure/stone_tile/block, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bR" = ( -/obj/structure/stone_tile/surrounding_tile, -/obj/structure/stone_tile/surrounding_tile{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/center, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bS" = ( -/obj/structure/stone_tile/slab, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bT" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 4 - }, -/obj/structure/stone_tile/surrounding_tile{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/center, -/obj/effect/decal/cleanable/blood, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bU" = ( -/obj/structure/stone_tile/block/cracked, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bV" = ( -/obj/structure/stone_tile/block/cracked, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bW" = ( -/obj/structure/stone_tile/surrounding_tile/cracked, -/obj/structure/ore_box, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bX" = ( -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bY" = ( -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bZ" = ( -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cb" = ( -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cd" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ce" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cf" = ( -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/closet/crate/internals, -/obj/item/pickaxe, -/obj/item/pickaxe, -/obj/item/pickaxe, -/obj/item/pickaxe, -/obj/item/pickaxe, -/obj/item/pickaxe, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cg" = ( -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ch" = ( -/obj/structure/stone_tile/surrounding_tile, -/obj/structure/stone_tile/center/cracked, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ci" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/obj/structure/stone_tile/surrounding_tile, -/obj/structure/stone_tile/center/cracked, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cj" = ( -/obj/effect/mob_spawn/human/corpse/damaged, -/obj/effect/decal/cleanable/blood, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ck" = ( -/obj/item/twohanded/spear, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cl" = ( -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/item/twohanded/spear, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cm" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cn" = ( -/obj/structure/stone_tile/block, -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"co" = ( -/obj/structure/stone_tile/block/cracked, -/obj/structure/stone_tile/block{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cp" = ( -/obj/structure/stone_tile/cracked, -/obj/structure/stone_tile/block{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"cq" = ( -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cr" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 4 - }, -/obj/structure/stone_tile/center/cracked, -/obj/structure/stone_tile/surrounding_tile/cracked, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cs" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ct" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/obj/structure/stone_tile/center, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cu" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cv" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cy" = ( -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile/cracked, -/obj/effect/decal/cleanable/blood, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cz" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/item/twohanded/spear, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cA" = ( -/obj/structure/stone_tile/slab/cracked{ - icon_state = "cracked_slab1"; - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cB" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/effect/decal/cleanable/blood, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cD" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/obj/item/flashlight/lantern, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cE" = ( -/obj/structure/stone_tile/surrounding/cracked, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cF" = ( -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/table/wood, -/obj/item/twohanded/spear, -/obj/item/storage/belt, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"cI" = ( -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cJ" = ( -/obj/item/shovel, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cK" = ( -/obj/machinery/hydroponics/soil, -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cL" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/structure/table/wood, -/obj/item/twohanded/spear, -/obj/item/scythe, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"cM" = ( -/obj/structure/stone_tile/block{ - dir = 1 - }, -/obj/structure/stone_tile/cracked, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/kitchen/knife/combat/bone, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"cN" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/table/wood, -/obj/item/twohanded/spear, -/obj/item/clothing/head/helmet/roman/legionnaire, -/turf/open/indestructible/boss, -/area/ruin/unpowered/ash_walkers) -"cO" = ( -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"cP" = ( -/obj/structure/stone_tile/block, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"cQ" = ( -/obj/structure/stone_tile/block/cracked, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"cR" = ( -/obj/structure/stone_tile/surrounding_tile/cracked, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"cT" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile/block{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"cV" = ( -/obj/structure/stone_tile/cracked, -/obj/structure/stone_tile/block{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"cW" = ( -/obj/structure/table/optable, -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/item/surgical_drapes, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cX" = ( -/obj/item/storage/box/rxglasses, -/obj/structure/stone_tile{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cY" = ( -/obj/item/seeds/glowshroom, -/obj/item/seeds/glowshroom, -/obj/structure/stone_tile/block{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/ash_walkers) -"cZ" = ( -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dd" = ( -/obj/structure/stone_tile/surrounding_tile/cracked, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"de" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"df" = ( -/obj/effect/decal/cleanable/blood, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dg" = ( -/obj/structure/bonfire/dense, -/obj/structure/stone_tile/center, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"di" = ( -/obj/effect/decal/cleanable/blood, -/obj/structure/stone_tile/block, -/obj/structure/stone_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dj" = ( -/obj/structure/stone_tile/block, -/obj/structure/stone_tile/block{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dk" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/block, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dl" = ( -/obj/structure/stone_tile/block/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/cracked, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dn" = ( -/obj/structure/stone_tile/block{ - dir = 4 - }, -/obj/structure/stone_tile/block/cracked{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"do" = ( -/obj/structure/stone_tile{ - dir = 8 - }, -/obj/structure/reagent_dispensers/watertank, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dp" = ( -/obj/item/pickaxe, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dq" = ( -/obj/item/stack/sheet/mineral/wood, -/obj/structure/stone_tile{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dr" = ( -/obj/structure/stone_tile/surrounding_tile/cracked, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/obj/structure/stone_tile/center, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ds" = ( -/obj/structure/stone_tile/block, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dt" = ( -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/surrounding_tile/cracked, -/obj/structure/stone_tile/surrounding_tile{ - dir = 8 - }, -/obj/structure/stone_tile/center, -/obj/effect/mapping_helpers/no_lava, -/obj/item/hatchet, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"du" = ( -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"dv" = ( -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/obj/effect/mob_spawn/human/corpse/damaged, -/obj/effect/decal/cleanable/blood, -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dw" = ( -/obj/item/reagent_containers/glass/bucket, -/obj/structure/stone_tile/block/cracked{ - dir = 4 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dx" = ( -/obj/item/flashlight/lantern, -/obj/structure/stone_tile/center, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dy" = ( -/obj/machinery/hydroponics/soil, -/obj/structure/stone_tile/block{ - dir = 8 - }, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dz" = ( -/obj/structure/stone_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/cracked, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"dA" = ( -/obj/machinery/hydroponics/soil, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile, -/obj/structure/stone_tile/surrounding_tile{ - dir = 4 - }, -/obj/structure/stone_tile/center, -/obj/effect/mapping_helpers/no_lava, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"dB" = ( -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 4 - }, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 1 - }, -/obj/structure/stone_tile/surrounding_tile/cracked{ - dir = 8 - }, -/obj/structure/stone_tile/center/cracked, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"dC" = ( -/obj/structure/stone_tile, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"dD" = ( -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"dE" = ( -/obj/structure/stone_tile, -/obj/structure/stone_tile/cracked{ - dir = 8 - }, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"nS" = ( -/obj/item/toy/cards/deck/syndicate, -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"Bv" = ( -/obj/structure/stone_tile{ - dir = 1 - }, -/obj/effect/mapping_helpers/no_lava, -/obj/item/cultivator, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) +"aa" = (/turf/template_noop,/area/template_noop) +"ab" = (/obj/structure/stone_tile/surrounding_tile{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ac" = (/obj/structure/stone_tile/block{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ad" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ae" = (/obj/structure/stone_tile/block/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"af" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ag" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ah" = (/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ai" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"aj" = (/obj/structure/stone_tile/slab,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ak" = (/turf/closed/indestructible/riveted/boss,/area/ruin/unpowered/ash_walkers) +"al" = (/obj/structure/stone_tile/surrounding_tile{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"am" = (/obj/structure/necropolis_gate,/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile/block/cracked{dir = 8},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"an" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile{dir = 8},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"ao" = (/obj/structure/stone_tile/block/cracked,/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"ap" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile{dir = 8},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"aq" = (/obj/structure/stone_tile/block/cracked{dir = 8},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"ar" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"as" = (/turf/closed/wall/mineral/wood,/area/ruin/unpowered/ash_walkers) +"at" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/block{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"au" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 1},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"av" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"aw" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"ax" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile{dir = 4},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"ay" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"az" = (/obj/structure/stone_tile/block{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"aA" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/item/malf_upgrade,/obj/structure/safe,/obj/item/disk/tech_disk/illegal,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aB" = (/obj/structure/stone_tile/block/cracked,/obj/structure/stone_tile{dir = 4},/obj/item/t_scanner/adv_mining_scanner/lesser,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aC" = (/obj/structure/stone_tile/block/cracked,/obj/item/storage/toolbox/syndicate,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aD" = (/obj/structure/stone_tile/block/cracked{dir = 4},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"aE" = (/obj/structure/stone_tile{dir = 4},/obj/structure/closet/crate/medical,/obj/item/storage/firstaid/regular,/obj/item/storage/firstaid/ancient,/obj/item/reagent_containers/blood/random,/obj/item/reagent_containers/blood/lizard,/obj/item/reagent_containers/blood/lizard,/obj/item/stack/sheet/cloth/ten,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aF" = (/obj/structure/stone_tile/block{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"aG" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile{dir = 8},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"aH" = (/mob/living/simple_animal/hostile/spawner/lavaland/ash_walker,/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"aI" = (/obj/structure/stone_tile/block{dir = 8},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"aJ" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/surrounding_tile{dir = 1},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"aK" = (/obj/structure/stone_tile/block/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile,/mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"aL" = (/obj/structure/stone_tile/block{dir = 1},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"aM" = (/obj/structure/stone_tile/cracked{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aN" = (/obj/structure/stone_tile{dir = 1},/obj/item/weldingtool/experimental,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aO" = (/obj/structure/stone_tile/surrounding/cracked{icon_state = "cracked_surrounding1"; dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aP" = (/obj/structure/stone_tile,/obj/item/shard,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aQ" = (/obj/structure/stone_tile/block{dir = 8},/obj/machinery/iv_drip,/obj/item/reagent_containers/glass/beaker/waterbottle/large,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"aR" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/block/cracked{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"aS" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 4},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"aT" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile{dir = 4},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) +"aW" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"aY" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"aZ" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 8},/obj/effect/decal/cleanable/blood,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"ba" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/stone_tile{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"bc" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 4},/mob/living/simple_animal/hostile/asteroid/gutlunch/guthen,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bg" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bh" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"bi" = (/obj/structure/stone_tile/block/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"bj" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/item/storage/bag/plants/portaseeder,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bk" = (/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile/cracked{dir = 8},/obj/item/stack/marker_beacon/ten,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bl" = (/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"bm" = (/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/item/construction/rcd/loaded,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bn" = (/obj/structure/closet/crate/radiation,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/flare,/obj/structure/stone_tile/block/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"bo" = (/obj/structure/stone_tile/block{dir = 8},/obj/item/pickaxe,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bp" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bq" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile{dir = 8},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"br" = (/obj/structure/stone_tile/slab/cracked,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bs" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile,/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bt" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bv" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/closet/crate,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"bw" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 8},/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/seeds/tower,/obj/item/seeds/tower,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bx" = (/obj/structure/stone_tile/slab/cracked,/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"by" = (/obj/structure/closet/crate,/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bz" = (/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile/cracked{dir = 8},/obj/machinery/the_singularitygen,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bA" = (/obj/structure/stone_tile/block{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bB" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile/block/cracked{dir = 8},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"bC" = (/obj/structure/stone_tile/block/cracked{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"bD" = (/obj/structure/stone_tile/block{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"bE" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bF" = (/obj/structure/stone_tile/slab,/obj/effect/decal/cleanable/blood,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bG" = (/turf/closed/indestructible/riveted/boss/see_through,/area/ruin/unpowered/ash_walkers) +"bI" = (/obj/structure/stone_tile/slab/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"bJ" = (/obj/structure/stone_tile/surrounding_tile,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"bL" = (/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bM" = (/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bN" = (/obj/structure/stone_tile,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bO" = (/obj/structure/stone_tile/cracked,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bP" = (/obj/structure/stone_tile/block,/obj/item/twohanded/spear,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bQ" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bR" = (/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bS" = (/obj/structure/stone_tile/slab,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bT" = (/obj/structure/stone_tile/surrounding_tile{dir = 4},/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/structure/stone_tile/center,/obj/effect/decal/cleanable/blood,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bU" = (/obj/structure/stone_tile/block/cracked,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bV" = (/obj/structure/stone_tile/block/cracked,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bW" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/ore_box,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bX" = (/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bY" = (/obj/structure/stone_tile{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"bZ" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cb" = (/obj/structure/stone_tile{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cd" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ce" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/block/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cf" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/closet/crate/internals,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cg" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ch" = (/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ci" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cj" = (/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ck" = (/obj/item/twohanded/spear,/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cl" = (/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/item/twohanded/spear,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cm" = (/obj/structure/stone_tile/block{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cn" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile/block/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"co" = (/obj/structure/stone_tile/block/cracked,/obj/structure/stone_tile/block{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cp" = (/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/block{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"cq" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cr" = (/obj/structure/stone_tile/surrounding_tile{dir = 4},/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cs" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ct" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cu" = (/obj/structure/stone_tile/block/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cv" = (/obj/structure/stone_tile/block/cracked{dir = 8},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cy" = (/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked,/obj/effect/decal/cleanable/blood,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cz" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/obj/item/twohanded/spear,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cA" = (/obj/structure/stone_tile/slab/cracked{icon_state = "cracked_slab1"; dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cB" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/decal/cleanable/blood,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cD" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/item/flashlight/lantern,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cE" = (/obj/structure/stone_tile/surrounding/cracked,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cF" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/obj/structure/table/wood,/obj/item/twohanded/spear,/obj/item/storage/belt,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"cI" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cJ" = (/obj/item/shovel,/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cK" = (/obj/machinery/hydroponics/soil,/obj/structure/stone_tile/block/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cL" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/structure/table/wood,/obj/item/twohanded/spear,/obj/item/scythe,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"cM" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile{dir = 8},/obj/structure/table/wood,/obj/item/kitchen/knife/combat/bone,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"cN" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/table/wood,/obj/item/twohanded/spear,/obj/item/clothing/head/helmet/roman/legionnaire,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) +"cO" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"cP" = (/obj/structure/stone_tile/block,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"cQ" = (/obj/structure/stone_tile/block/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"cR" = (/obj/structure/stone_tile/surrounding_tile/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"cT" = (/obj/structure/stone_tile,/obj/structure/stone_tile/block{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"cV" = (/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/block{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"cW" = (/obj/structure/table/optable,/obj/structure/stone_tile{dir = 1},/obj/item/surgical_drapes,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cX" = (/obj/item/storage/box/rxglasses,/obj/structure/stone_tile{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cY" = (/obj/item/seeds/glowshroom,/obj/item/seeds/glowshroom,/obj/structure/stone_tile/block{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) +"cZ" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/block{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dd" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"de" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile/block{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"df" = (/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dg" = (/obj/structure/bonfire/dense,/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"di" = (/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/block,/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dj" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile/block{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dk" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile/block,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dl" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dn" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile/block/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"do" = (/obj/structure/stone_tile{dir = 8},/obj/structure/reagent_dispensers/watertank,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dp" = (/obj/item/pickaxe,/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dq" = (/obj/item/stack/sheet/mineral/wood,/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dr" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ds" = (/obj/structure/stone_tile/block,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dt" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/obj/item/hatchet,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"du" = (/obj/structure/stone_tile/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"dv" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dw" = (/obj/item/reagent_containers/glass/bucket,/obj/structure/stone_tile/block/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dx" = (/obj/item/flashlight/lantern,/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dy" = (/obj/machinery/hydroponics/soil,/obj/structure/stone_tile/block{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dz" = (/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"dA" = (/obj/machinery/hydroponics/soil,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/surrounding_tile{dir = 4},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"dB" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/structure/stone_tile/center/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"dC" = (/obj/structure/stone_tile,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"dD" = (/obj/structure/stone_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"dE" = (/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"nS" = (/obj/item/toy/cards/deck/syndicate,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"Bv" = (/obj/structure/stone_tile{dir = 1},/obj/effect/mapping_helpers/no_lava,/obj/item/cultivator,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) (1,1,1) = {" -aa -aa -aa -aa -ah -ah -ah -ah -ah -ah -ah -aa -aa -nS -ah -ah -ah -aa -aa -aa -"} -(2,1,1) = {" -aa -ah -ab -aF -cV -ah -ah -bi -ah -bi -cO -ah -ah -ah -ah -ah -ah -ah -aa -aa -"} -(3,1,1) = {" -aa -aa -ah -as -as -as -as -ak -as -as -cP -ah -ah -bN -bY -dp -ah -ah -ah -aa -"} -(4,1,1) = {" -aa -aa -ah -ak -aA -aM -cY -bj -bv -ak -cP -bN -cg -cl -cq -cq -dv -ah -ah -aa -"} -(5,1,1) = {" -aa -aa -ac -as -aB -aN -aY -bk -bw -ak -cb -bZ -ch -cm -cr -bY -bL -cb -ah -ah -"} -(6,1,1) = {" -aa -aa -cT -ak -aC -cX -aO -bl -bx -bD -bS -de -bV -dg -cs -cy -bY -cq -ah -ah -"} -(7,1,1) = {" -aa -aa -ae -as -cW -aP -aZ -bm -by -ak -bV -cb -ci -bA -ct -bN -bL -cI -ah -ah -"} -(8,1,1) = {" -aa -aa -ae -as -aE -aQ -ba -bn -bz -ak -Bv -df -bX -co -bO -dq -bZ -cJ -ah -ah -"} -(9,1,1) = {" -aa -ah -ah -as -ak -as -as -as -ak -ak -cg -cb -cg -cn -bL -dr -dw -dA -dD -ah -"} -(10,1,1) = {" -aa -ai -aq -at -aF -aR -aR -bo -bA -cZ -dd -cg -cb -di -dn -ds -dx -cK -dE -ah -"} -(11,1,1) = {" -ab -aj -ak -ak -ak -ak -ak -ak -ak -bF -bE -cb -bL -co -cb -dt -dy -dB -dC -aa -"} -(12,1,1) = {" -ac -ak -ak -ak -ak -ak -ak -ak -ak -ak -bP -bL -bX -co -do -du -dz -dC -ah -aa -"} -(13,1,1) = {" -ad -ak -ak -au -aG -aS -bc -bp -ak -ak -bQ -bM -cj -dj -ah -ah -ah -ah -ah -ah -"} -(14,1,1) = {" -ae -ak -ak -av -an -aD -aJ -bq -ak -bG -bR -cd -cg -dk -cu -ah -bi -bi -bi -cO -"} -(15,1,1) = {" -ac -ak -ak -aw -ao -aH -aL -br -bB -am -bS -ce -dn -dl -ak -ak -as -ak -ak -ah -"} -(16,1,1) = {" -ac -ak -ak -ax -ap -aI -aT -bs -ak -bG -bT -cd -bX -dj -as -cz -cD -cL -as -ah -"} -(17,1,1) = {" -af -ak -ak -ay -aK -aW -bg -bt -ak -ak -bU -cg -ck -bS -cv -cA -cE -cM -as -ah -"} -(18,1,1) = {" -ac -ak -ak -ak -ak -ak -ak -ak -ak -ak -bV -bX -bN -ah -as -cB -cF -cN -ak -cP -"} -(19,1,1) = {" -ag -aj -ak -ak -ak -ak -ak -ak -ak -bI -bW -cf -ah -cp -as -as -as -ak -ak -cQ -"} -(20,1,1) = {" -aa -al -ar -az -az -az -bh -az -bC -bJ -ah -ah -ah -al -ah -ah -bC -ah -ah -cR +aaaaaaaaaaaaaaaaaaaaabacadaeacacafacagaa +aaahaaaaaaaaaaaaahaiajakakakakakakakajal +aaabahahaccTaeaeahaqakakakakakakakakakar +aaaFasakasakasasasatakakauavawaxayakakaz +ahcVasaAaBaCcWaEakaFakakaGanaoapaKakakaz +ahahasaMaNcXaPaQasaRakakaSaDaHaIaWakakaz +ahahascYaYaOaZbaasaRakakbcaJaLaTbgakakbh +ahbiakbjbkblbmbnasboakakbpbqbrbsbtakakaz +ahahasbvbwbxbybzakbAakakakakbBakakakakbC +ahbiasakakbDakakakcZbFakakbGambGakakbIbJ +ahcOcPcPcbbSbVBvcgddbEbPbQbRbSbTbUbVbWah +aaahahbNbZdecbdfcbcgcbbLbMcdcecdcgbXcfah +aaahahcgchbVcibXcgcbbLbXcjcgdnbXckbNahah +nSahbNclcmdgbAcocndicocodjdkdldjbSahcpal +ahahbYcqcrcsctbObLdncbdoahcuakascvasasah +ahahdpcqbYcybNdqdrdsdtduahahakczcAcBasah +ahahahdvbLbYbLbZdwdxdydzahbiascDcEcFasbC +aaahahahcbcqcIcJdAcKdBdCahbiakcLcMcNakah +aaaaahahahahahahdDdEdCahahbiakasasakakah +aaaaaaaaahahahahahahaaaaahcOahahahcPcQcR "} diff --git a/code/modules/research/research_disk.dm b/code/modules/research/research_disk.dm index 268e6a1be9..2ec2398d88 100644 --- a/code/modules/research/research_disk.dm +++ b/code/modules/research/research_disk.dm @@ -20,3 +20,12 @@ /obj/item/disk/tech_disk/debug/Initialize() . = ..() stored_research = new /datum/techweb/admin + +/obj/item/disk/tech_disk/illegal + name = "Illegal technology disk" + desc = "A technology disk containing schematics for syndicate inspired equipment." + materials = list() + +/obj/item/disk/tech_disk/illegal/Initialize() + . = ..() + stored_research = new /datum/techweb/syndicate diff --git a/code/modules/research/techweb/_techweb.dm b/code/modules/research/techweb/_techweb.dm index dbfca477d6..cd5a190fd6 100644 --- a/code/modules/research/techweb/_techweb.dm +++ b/code/modules/research/techweb/_techweb.dm @@ -41,6 +41,14 @@ research_points[i] = INFINITY hidden_nodes = list() +/datum/techweb/syndicate + id = "SYNDICATE" + organization = "Syndicate" + +/datum/techweb/syndicate/New() + var/datum/techweb_node/syndicate_basic/Node = new() + research_node(Node, TRUE) + /datum/techweb/science //Global science techweb for RND consoles. id = "SCIENCE" organization = "Nanotrasen" From e90fe8faf1e2eaac1fe146614e7e75acae639b5e Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Mon, 10 Jun 2019 23:50:09 +1200 Subject: [PATCH 304/370] Update lavaland_surface_ash_walker1.dmm --- .../lavaland_surface_ash_walker1.dmm | 2054 +++++++++++++++-- 1 file changed, 1869 insertions(+), 185 deletions(-) diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm index 8cd329cdc3..738148c948 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm @@ -1,188 +1,1872 @@ -"aa" = (/turf/template_noop,/area/template_noop) -"ab" = (/obj/structure/stone_tile/surrounding_tile{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ac" = (/obj/structure/stone_tile/block{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ad" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ae" = (/obj/structure/stone_tile/block/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"af" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ag" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ah" = (/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ai" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"aj" = (/obj/structure/stone_tile/slab,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ak" = (/turf/closed/indestructible/riveted/boss,/area/ruin/unpowered/ash_walkers) -"al" = (/obj/structure/stone_tile/surrounding_tile{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"am" = (/obj/structure/necropolis_gate,/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile/block/cracked{dir = 8},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"an" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile{dir = 8},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"ao" = (/obj/structure/stone_tile/block/cracked,/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"ap" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile{dir = 8},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"aq" = (/obj/structure/stone_tile/block/cracked{dir = 8},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"ar" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"as" = (/turf/closed/wall/mineral/wood,/area/ruin/unpowered/ash_walkers) -"at" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/block{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"au" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 1},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"av" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"aw" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"ax" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile{dir = 4},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"ay" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"az" = (/obj/structure/stone_tile/block{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"aA" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/item/malf_upgrade,/obj/structure/safe,/obj/item/disk/tech_disk/illegal,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aB" = (/obj/structure/stone_tile/block/cracked,/obj/structure/stone_tile{dir = 4},/obj/item/t_scanner/adv_mining_scanner/lesser,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aC" = (/obj/structure/stone_tile/block/cracked,/obj/item/storage/toolbox/syndicate,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aD" = (/obj/structure/stone_tile/block/cracked{dir = 4},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"aE" = (/obj/structure/stone_tile{dir = 4},/obj/structure/closet/crate/medical,/obj/item/storage/firstaid/regular,/obj/item/storage/firstaid/ancient,/obj/item/reagent_containers/blood/random,/obj/item/reagent_containers/blood/lizard,/obj/item/reagent_containers/blood/lizard,/obj/item/stack/sheet/cloth/ten,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aF" = (/obj/structure/stone_tile/block{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"aG" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile{dir = 8},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"aH" = (/mob/living/simple_animal/hostile/spawner/lavaland/ash_walker,/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"aI" = (/obj/structure/stone_tile/block{dir = 8},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"aJ" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/surrounding_tile{dir = 1},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"aK" = (/obj/structure/stone_tile/block/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile,/mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"aL" = (/obj/structure/stone_tile/block{dir = 1},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"aM" = (/obj/structure/stone_tile/cracked{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aN" = (/obj/structure/stone_tile{dir = 1},/obj/item/weldingtool/experimental,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aO" = (/obj/structure/stone_tile/surrounding/cracked{icon_state = "cracked_surrounding1"; dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aP" = (/obj/structure/stone_tile,/obj/item/shard,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aQ" = (/obj/structure/stone_tile/block{dir = 8},/obj/machinery/iv_drip,/obj/item/reagent_containers/glass/beaker/waterbottle/large,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"aR" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/block/cracked{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"aS" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 4},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"aT" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile{dir = 4},/turf/open/lava/smooth{initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered/ash_walkers) -"aW" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"aY" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"aZ" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 8},/obj/effect/decal/cleanable/blood,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"ba" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/stone_tile{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"bc" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 4},/mob/living/simple_animal/hostile/asteroid/gutlunch/guthen,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bg" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bh" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"bi" = (/obj/structure/stone_tile/block/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"bj" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/item/storage/bag/plants/portaseeder,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bk" = (/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile/cracked{dir = 8},/obj/item/stack/marker_beacon/ten,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bl" = (/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"bm" = (/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/item/construction/rcd/loaded,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bn" = (/obj/structure/closet/crate/radiation,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/flare,/obj/structure/stone_tile/block/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"bo" = (/obj/structure/stone_tile/block{dir = 8},/obj/item/pickaxe,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bp" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bq" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile{dir = 8},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"br" = (/obj/structure/stone_tile/slab/cracked,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bs" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile,/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bt" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bv" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/closet/crate,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"bw" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 8},/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/seeds/tower,/obj/item/seeds/tower,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bx" = (/obj/structure/stone_tile/slab/cracked,/obj/effect/decal/cleanable/blood,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"by" = (/obj/structure/closet/crate,/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/obj/item/flashlight/lantern,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bz" = (/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile/cracked{dir = 8},/obj/machinery/the_singularitygen,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bA" = (/obj/structure/stone_tile/block{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bB" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile/block/cracked{dir = 8},/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"bC" = (/obj/structure/stone_tile/block/cracked{dir = 4},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"bD" = (/obj/structure/stone_tile/block{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"bE" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bF" = (/obj/structure/stone_tile/slab,/obj/effect/decal/cleanable/blood,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bG" = (/turf/closed/indestructible/riveted/boss/see_through,/area/ruin/unpowered/ash_walkers) -"bI" = (/obj/structure/stone_tile/slab/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"bJ" = (/obj/structure/stone_tile/surrounding_tile,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"bL" = (/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bM" = (/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bN" = (/obj/structure/stone_tile,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bO" = (/obj/structure/stone_tile/cracked,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bP" = (/obj/structure/stone_tile/block,/obj/item/twohanded/spear,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bQ" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bR" = (/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bS" = (/obj/structure/stone_tile/slab,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bT" = (/obj/structure/stone_tile/surrounding_tile{dir = 4},/obj/structure/stone_tile/surrounding_tile{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/structure/stone_tile/center,/obj/effect/decal/cleanable/blood,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bU" = (/obj/structure/stone_tile/block/cracked,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bV" = (/obj/structure/stone_tile/block/cracked,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bW" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/ore_box,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bX" = (/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bY" = (/obj/structure/stone_tile{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"bZ" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cb" = (/obj/structure/stone_tile{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cd" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ce" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile/block/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cf" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/closet/crate/internals,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/item/pickaxe,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cg" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ch" = (/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ci" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cj" = (/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ck" = (/obj/item/twohanded/spear,/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cl" = (/obj/structure/stone_tile{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/item/twohanded/spear,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cm" = (/obj/structure/stone_tile/block{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cn" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile/block/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"co" = (/obj/structure/stone_tile/block/cracked,/obj/structure/stone_tile/block{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cp" = (/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/block{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"cq" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cr" = (/obj/structure/stone_tile/surrounding_tile{dir = 4},/obj/structure/stone_tile/center/cracked,/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cs" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ct" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/center,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cu" = (/obj/structure/stone_tile/block/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cv" = (/obj/structure/stone_tile/block/cracked{dir = 8},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cy" = (/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked,/obj/effect/decal/cleanable/blood,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cz" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile/cracked{dir = 1},/obj/item/twohanded/spear,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cA" = (/obj/structure/stone_tile/slab/cracked{icon_state = "cracked_slab1"; dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cB" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/decal/cleanable/blood,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cD" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/item/flashlight/lantern,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cE" = (/obj/structure/stone_tile/surrounding/cracked,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cF" = (/obj/structure/stone_tile/block{dir = 8},/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 1},/obj/structure/table/wood,/obj/item/twohanded/spear,/obj/item/storage/belt,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"cI" = (/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cJ" = (/obj/item/shovel,/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cK" = (/obj/machinery/hydroponics/soil,/obj/structure/stone_tile/block/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"cL" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile{dir = 4},/obj/structure/table/wood,/obj/item/twohanded/spear,/obj/item/scythe,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"cM" = (/obj/structure/stone_tile/block{dir = 1},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile{dir = 8},/obj/structure/table/wood,/obj/item/kitchen/knife/combat/bone,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"cN" = (/obj/structure/stone_tile,/obj/structure/stone_tile{dir = 8},/obj/structure/stone_tile{dir = 1},/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/table/wood,/obj/item/twohanded/spear,/obj/item/clothing/head/helmet/roman/legionnaire,/turf/open/indestructible/boss,/area/ruin/unpowered/ash_walkers) -"cO" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"cP" = (/obj/structure/stone_tile/block,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"cQ" = (/obj/structure/stone_tile/block/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"cR" = (/obj/structure/stone_tile/surrounding_tile/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"cT" = (/obj/structure/stone_tile,/obj/structure/stone_tile/block{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"cV" = (/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/block{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"cW" = (/obj/structure/table/optable,/obj/structure/stone_tile{dir = 1},/obj/item/surgical_drapes,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cX" = (/obj/item/storage/box/rxglasses,/obj/structure/stone_tile{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cY" = (/obj/item/seeds/glowshroom,/obj/item/seeds/glowshroom,/obj/structure/stone_tile/block{dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered/ash_walkers) -"cZ" = (/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/block{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dd" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"de" = (/obj/structure/stone_tile/block/cracked{dir = 4},/obj/structure/stone_tile/block{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"df" = (/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/cracked{dir = 8},/obj/structure/stone_tile/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dg" = (/obj/structure/bonfire/dense,/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"di" = (/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/block,/obj/structure/stone_tile/cracked{dir = 4},/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dj" = (/obj/structure/stone_tile/block,/obj/structure/stone_tile/block{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dk" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile/block,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dl" = (/obj/structure/stone_tile/block/cracked{dir = 1},/obj/structure/stone_tile/cracked,/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dn" = (/obj/structure/stone_tile/block{dir = 4},/obj/structure/stone_tile/block/cracked{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"do" = (/obj/structure/stone_tile{dir = 8},/obj/structure/reagent_dispensers/watertank,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dp" = (/obj/item/pickaxe,/obj/structure/stone_tile/cracked{dir = 1},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dq" = (/obj/item/stack/sheet/mineral/wood,/obj/structure/stone_tile{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dr" = (/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ds" = (/obj/structure/stone_tile/block,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dt" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/surrounding_tile/cracked,/obj/structure/stone_tile/surrounding_tile{dir = 8},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/obj/item/hatchet,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"du" = (/obj/structure/stone_tile/cracked{dir = 1},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"dv" = (/obj/structure/stone_tile/cracked{dir = 8},/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood,/obj/structure/stone_tile/cracked{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dw" = (/obj/item/reagent_containers/glass/bucket,/obj/structure/stone_tile/block/cracked{dir = 4},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dx" = (/obj/item/flashlight/lantern,/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dy" = (/obj/machinery/hydroponics/soil,/obj/structure/stone_tile/block{dir = 8},/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dz" = (/obj/structure/stone_tile/cracked{dir = 1},/obj/structure/stone_tile/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"dA" = (/obj/machinery/hydroponics/soil,/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile,/obj/structure/stone_tile/surrounding_tile{dir = 4},/obj/structure/stone_tile/center,/obj/effect/mapping_helpers/no_lava,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"dB" = (/obj/structure/stone_tile/surrounding_tile/cracked{dir = 4},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 1},/obj/structure/stone_tile/surrounding_tile/cracked{dir = 8},/obj/structure/stone_tile/center/cracked,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"dC" = (/obj/structure/stone_tile,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"dD" = (/obj/structure/stone_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"dE" = (/obj/structure/stone_tile,/obj/structure/stone_tile/cracked{dir = 8},/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"nS" = (/obj/item/toy/cards/deck/syndicate,/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) -"Bv" = (/obj/structure/stone_tile{dir = 1},/obj/effect/mapping_helpers/no_lava,/obj/item/cultivator,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/template_noop) +"ab" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 4 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ac" = ( +/obj/structure/stone_tile/block{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ad" = ( +/obj/structure/stone_tile/block{ + dir = 1 + }, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ae" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"af" = ( +/obj/structure/stone_tile/block{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ag" = ( +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ah" = ( +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ai" = ( +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"aj" = ( +/obj/structure/stone_tile/slab, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ak" = ( +/turf/closed/indestructible/riveted/boss, +/area/ruin/unpowered/ash_walkers) +"al" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"am" = ( +/obj/structure/necropolis_gate, +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"an" = ( +/obj/structure/stone_tile/surrounding_tile/cracked, +/obj/structure/stone_tile/center, +/obj/structure/stone_tile/surrounding_tile{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"ao" = ( +/obj/structure/stone_tile/block/cracked, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"ap" = ( +/obj/structure/stone_tile/surrounding_tile/cracked, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/center, +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"aq" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"ar" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"as" = ( +/turf/closed/wall/mineral/wood, +/area/ruin/unpowered/ash_walkers) +"at" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/structure/stone_tile/block{ + dir = 4 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"au" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/item/flashlight/lantern, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"av" = ( +/obj/structure/stone_tile/block, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"aw" = ( +/obj/structure/stone_tile/block, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"ax" = ( +/obj/structure/stone_tile/block, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"ay" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/item/flashlight/lantern, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"az" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"aA" = ( +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/item/malf_upgrade, +/obj/item/disk/tech_disk/illegal, +/obj/structure/safe, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aB" = ( +/obj/structure/stone_tile/block/cracked, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/item/t_scanner/adv_mining_scanner/lesser, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aC" = ( +/obj/structure/stone_tile/block/cracked, +/obj/item/storage/toolbox/syndicate, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aD" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"aE" = ( +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/structure/closet/crate/medical, +/obj/item/storage/firstaid/regular, +/obj/item/storage/firstaid/ancient, +/obj/item/reagent_containers/blood/random, +/obj/item/reagent_containers/blood/lizard, +/obj/item/reagent_containers/blood/lizard, +/obj/item/stack/sheet/cloth/ten, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aF" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"aG" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"aH" = ( +/mob/living/simple_animal/hostile/spawner/lavaland/ash_walker, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"aI" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"aJ" = ( +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/center/cracked, +/obj/structure/stone_tile/surrounding_tile, +/obj/structure/stone_tile/surrounding_tile{ + dir = 1 + }, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"aK" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile, +/mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"aL" = ( +/obj/structure/stone_tile/block{ + dir = 1 + }, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"aM" = ( +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aN" = ( +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/item/weldingtool/experimental, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aO" = ( +/obj/structure/stone_tile/surrounding/cracked{ + icon_state = "cracked_surrounding1"; + dir = 1 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aP" = ( +/obj/structure/stone_tile, +/obj/item/shard, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aQ" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/machinery/iv_drip, +/obj/item/reagent_containers/glass/beaker/waterbottle/large, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"aR" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"aS" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"aT" = ( +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/center, +/obj/structure/stone_tile/surrounding_tile{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile{ + dir = 4 + }, +/turf/open/lava/smooth{ + initial_gas_mix = "o2=14;n2=23;TEMP=300" + }, +/area/ruin/unpowered/ash_walkers) +"aW" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 1 + }, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"aY" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"aZ" = ( +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"ba" = ( +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"bc" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/mob/living/simple_animal/hostile/asteroid/gutlunch/guthen, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bg" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bh" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"bi" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"bj" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/item/storage/bag/plants/portaseeder, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bk" = ( +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/structure/stone_tile, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/item/stack/marker_beacon/ten, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bl" = ( +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"bm" = ( +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/item/construction/rcd/loaded, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bn" = ( +/obj/structure/closet/crate/radiation, +/obj/item/flashlight/lantern, +/obj/item/flashlight/lantern, +/obj/item/flashlight/lantern, +/obj/item/flashlight/flare, +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"bo" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/item/pickaxe, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bp" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/item/flashlight/lantern, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bq" = ( +/obj/structure/stone_tile/block{ + dir = 1 + }, +/obj/structure/stone_tile/cracked, +/obj/structure/stone_tile{ + dir = 8 + }, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"br" = ( +/obj/structure/stone_tile/slab/cracked, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bs" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile, +/obj/effect/decal/cleanable/blood, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bt" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/item/flashlight/lantern, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bv" = ( +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/structure/closet/crate, +/obj/item/flashlight/lantern, +/obj/item/flashlight/lantern, +/obj/item/flashlight/lantern, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"bw" = ( +/obj/structure/stone_tile/block{ + dir = 1 + }, +/obj/structure/stone_tile, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/item/stack/sheet/mineral/wood, +/obj/item/stack/sheet/mineral/wood, +/obj/item/stack/sheet/mineral/wood, +/obj/item/stack/sheet/mineral/wood, +/obj/item/seeds/tower, +/obj/item/seeds/tower, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bx" = ( +/obj/structure/stone_tile/slab/cracked, +/obj/effect/decal/cleanable/blood, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"by" = ( +/obj/structure/closet/crate, +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile/cracked, +/obj/item/flashlight/lantern, +/obj/item/flashlight/lantern, +/obj/item/flashlight/lantern, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bz" = ( +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/structure/stone_tile/cracked, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/machinery/the_singularitygen, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bA" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bB" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"bC" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"bD" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"bE" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bF" = ( +/obj/structure/stone_tile/slab, +/obj/effect/decal/cleanable/blood, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bG" = ( +/turf/closed/indestructible/riveted/boss/see_through, +/area/ruin/unpowered/ash_walkers) +"bI" = ( +/obj/structure/stone_tile/slab/cracked, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"bJ" = ( +/obj/structure/stone_tile/surrounding_tile, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"bL" = ( +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bM" = ( +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bN" = ( +/obj/structure/stone_tile, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bO" = ( +/obj/structure/stone_tile/cracked, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bP" = ( +/obj/structure/stone_tile/block, +/obj/item/twohanded/spear, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bQ" = ( +/obj/structure/stone_tile/block, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bR" = ( +/obj/structure/stone_tile/surrounding_tile, +/obj/structure/stone_tile/surrounding_tile{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/center, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bS" = ( +/obj/structure/stone_tile/slab, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bT" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 4 + }, +/obj/structure/stone_tile/surrounding_tile{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/center, +/obj/effect/decal/cleanable/blood, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bU" = ( +/obj/structure/stone_tile/block/cracked, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bV" = ( +/obj/structure/stone_tile/block/cracked, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bW" = ( +/obj/structure/stone_tile/surrounding_tile/cracked, +/obj/structure/ore_box, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bX" = ( +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bY" = ( +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"bZ" = ( +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cb" = ( +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cd" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ce" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cf" = ( +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/closet/crate/internals, +/obj/item/pickaxe, +/obj/item/pickaxe, +/obj/item/pickaxe, +/obj/item/pickaxe, +/obj/item/pickaxe, +/obj/item/pickaxe, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cg" = ( +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ch" = ( +/obj/structure/stone_tile/surrounding_tile, +/obj/structure/stone_tile/center/cracked, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ci" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/obj/structure/stone_tile/surrounding_tile, +/obj/structure/stone_tile/center/cracked, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cj" = ( +/obj/effect/mob_spawn/human/corpse/damaged, +/obj/effect/decal/cleanable/blood, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ck" = ( +/obj/item/twohanded/spear, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cl" = ( +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/item/twohanded/spear, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cm" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cn" = ( +/obj/structure/stone_tile/block, +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"co" = ( +/obj/structure/stone_tile/block/cracked, +/obj/structure/stone_tile/block{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cp" = ( +/obj/structure/stone_tile/cracked, +/obj/structure/stone_tile/block{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"cq" = ( +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cr" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 4 + }, +/obj/structure/stone_tile/center/cracked, +/obj/structure/stone_tile/surrounding_tile/cracked, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cs" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ct" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/obj/structure/stone_tile/center, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cu" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cv" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cy" = ( +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile/cracked, +/obj/effect/decal/cleanable/blood, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cz" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/item/twohanded/spear, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cA" = ( +/obj/structure/stone_tile/slab/cracked{ + icon_state = "cracked_slab1"; + dir = 4 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cB" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cD" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/obj/item/flashlight/lantern, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cE" = ( +/obj/structure/stone_tile/surrounding/cracked, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cF" = ( +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/table/wood, +/obj/item/twohanded/spear, +/obj/item/storage/belt, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"cI" = ( +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cJ" = ( +/obj/item/shovel, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cK" = ( +/obj/machinery/hydroponics/soil, +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cL" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/structure/table/wood, +/obj/item/twohanded/spear, +/obj/item/scythe, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"cM" = ( +/obj/structure/stone_tile/block{ + dir = 1 + }, +/obj/structure/stone_tile/cracked, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/table/wood, +/obj/item/kitchen/knife/combat/bone, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"cN" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/table/wood, +/obj/item/twohanded/spear, +/obj/item/clothing/head/helmet/roman/legionnaire, +/turf/open/indestructible/boss, +/area/ruin/unpowered/ash_walkers) +"cO" = ( +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"cP" = ( +/obj/structure/stone_tile/block, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"cQ" = ( +/obj/structure/stone_tile/block/cracked, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"cR" = ( +/obj/structure/stone_tile/surrounding_tile/cracked, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"cT" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile/block{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"cV" = ( +/obj/structure/stone_tile/cracked, +/obj/structure/stone_tile/block{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"cW" = ( +/obj/structure/table/optable, +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/item/surgical_drapes, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cX" = ( +/obj/item/storage/box/rxglasses, +/obj/structure/stone_tile{ + dir = 1 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cY" = ( +/obj/item/seeds/glowshroom, +/obj/item/seeds/glowshroom, +/obj/structure/stone_tile/block{ + dir = 4 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/ruin/unpowered/ash_walkers) +"cZ" = ( +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dd" = ( +/obj/structure/stone_tile/surrounding_tile/cracked, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"de" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"df" = ( +/obj/effect/decal/cleanable/blood, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dg" = ( +/obj/structure/bonfire/dense, +/obj/structure/stone_tile/center, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"di" = ( +/obj/effect/decal/cleanable/blood, +/obj/structure/stone_tile/block, +/obj/structure/stone_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dj" = ( +/obj/structure/stone_tile/block, +/obj/structure/stone_tile/block{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dk" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/block, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dl" = ( +/obj/structure/stone_tile/block/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/cracked, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dn" = ( +/obj/structure/stone_tile/block{ + dir = 4 + }, +/obj/structure/stone_tile/block/cracked{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"do" = ( +/obj/structure/stone_tile{ + dir = 8 + }, +/obj/structure/reagent_dispensers/watertank, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dp" = ( +/obj/item/pickaxe, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dq" = ( +/obj/item/stack/sheet/mineral/wood, +/obj/structure/stone_tile{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dr" = ( +/obj/structure/stone_tile/surrounding_tile/cracked, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/obj/structure/stone_tile/center, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ds" = ( +/obj/structure/stone_tile/block, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dt" = ( +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/surrounding_tile/cracked, +/obj/structure/stone_tile/surrounding_tile{ + dir = 8 + }, +/obj/structure/stone_tile/center, +/obj/effect/mapping_helpers/no_lava, +/obj/item/hatchet, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"du" = ( +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"dv" = ( +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/obj/effect/mob_spawn/human/corpse/damaged, +/obj/effect/decal/cleanable/blood, +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dw" = ( +/obj/item/reagent_containers/glass/bucket, +/obj/structure/stone_tile/block/cracked{ + dir = 4 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dx" = ( +/obj/item/flashlight/lantern, +/obj/structure/stone_tile/center, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dy" = ( +/obj/machinery/hydroponics/soil, +/obj/structure/stone_tile/block{ + dir = 8 + }, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dz" = ( +/obj/structure/stone_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/cracked, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"dA" = ( +/obj/machinery/hydroponics/soil, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile, +/obj/structure/stone_tile/surrounding_tile{ + dir = 4 + }, +/obj/structure/stone_tile/center, +/obj/effect/mapping_helpers/no_lava, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"dB" = ( +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 4 + }, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 1 + }, +/obj/structure/stone_tile/surrounding_tile/cracked{ + dir = 8 + }, +/obj/structure/stone_tile/center/cracked, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"dC" = ( +/obj/structure/stone_tile, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"dD" = ( +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"dE" = ( +/obj/structure/stone_tile, +/obj/structure/stone_tile/cracked{ + dir = 8 + }, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"nS" = ( +/obj/item/toy/cards/deck/syndicate, +/turf/closed/mineral/volcanic/lava_land_surface, +/area/lavaland/surface/outdoors) +"Bv" = ( +/obj/structure/stone_tile{ + dir = 1 + }, +/obj/effect/mapping_helpers/no_lava, +/obj/item/cultivator, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaabacadaeacacafacagaa -aaahaaaaaaaaaaaaahaiajakakakakakakakajal -aaabahahaccTaeaeahaqakakakakakakakakakar -aaaFasakasakasasasatakakauavawaxayakakaz -ahcVasaAaBaCcWaEakaFakakaGanaoapaKakakaz -ahahasaMaNcXaPaQasaRakakaSaDaHaIaWakakaz -ahahascYaYaOaZbaasaRakakbcaJaLaTbgakakbh -ahbiakbjbkblbmbnasboakakbpbqbrbsbtakakaz -ahahasbvbwbxbybzakbAakakakakbBakakakakbC -ahbiasakakbDakakakcZbFakakbGambGakakbIbJ -ahcOcPcPcbbSbVBvcgddbEbPbQbRbSbTbUbVbWah -aaahahbNbZdecbdfcbcgcbbLbMcdcecdcgbXcfah -aaahahcgchbVcibXcgcbbLbXcjcgdnbXckbNahah -nSahbNclcmdgbAcocndicocodjdkdldjbSahcpal -ahahbYcqcrcsctbObLdncbdoahcuakascvasasah -ahahdpcqbYcybNdqdrdsdtduahahakczcAcBasah -ahahahdvbLbYbLbZdwdxdydzahbiascDcEcFasbC -aaahahahcbcqcIcJdAcKdBdCahbiakcLcMcNakah -aaaaahahahahahahdDdEdCahahbiakasasakakah -aaaaaaaaahahahahahahaaaaahcOahahahcPcQcR +aa +aa +aa +aa +ah +ah +ah +ah +ah +ah +ah +aa +aa +nS +ah +ah +ah +aa +aa +aa +"} +(2,1,1) = {" +aa +ah +ab +aF +cV +ah +ah +bi +ah +bi +cO +ah +ah +ah +ah +ah +ah +ah +aa +aa +"} +(3,1,1) = {" +aa +aa +ah +as +as +as +as +ak +as +as +cP +ah +ah +bN +bY +dp +ah +ah +ah +aa +"} +(4,1,1) = {" +aa +aa +ah +ak +aA +aM +cY +bj +bv +ak +cP +bN +cg +cl +cq +cq +dv +ah +ah +aa +"} +(5,1,1) = {" +aa +aa +ac +as +aB +aN +aY +bk +bw +ak +cb +bZ +ch +cm +cr +bY +bL +cb +ah +ah +"} +(6,1,1) = {" +aa +aa +cT +ak +aC +cX +aO +bl +bx +bD +bS +de +bV +dg +cs +cy +bY +cq +ah +ah +"} +(7,1,1) = {" +aa +aa +ae +as +cW +aP +aZ +bm +by +ak +bV +cb +ci +bA +ct +bN +bL +cI +ah +ah +"} +(8,1,1) = {" +aa +aa +ae +as +aE +aQ +ba +bn +bz +ak +Bv +df +bX +co +bO +dq +bZ +cJ +ah +ah +"} +(9,1,1) = {" +aa +ah +ah +as +ak +as +as +as +ak +ak +cg +cb +cg +cn +bL +dr +dw +dA +dD +ah +"} +(10,1,1) = {" +aa +ai +aq +at +aF +aR +aR +bo +bA +cZ +dd +cg +cb +di +dn +ds +dx +cK +dE +ah +"} +(11,1,1) = {" +ab +aj +ak +ak +ak +ak +ak +ak +ak +bF +bE +cb +bL +co +cb +dt +dy +dB +dC +aa +"} +(12,1,1) = {" +ac +ak +ak +ak +ak +ak +ak +ak +ak +ak +bP +bL +bX +co +do +du +dz +dC +ah +aa +"} +(13,1,1) = {" +ad +ak +ak +au +aG +aS +bc +bp +ak +ak +bQ +bM +cj +dj +ah +ah +ah +ah +ah +ah +"} +(14,1,1) = {" +ae +ak +ak +av +an +aD +aJ +bq +ak +bG +bR +cd +cg +dk +cu +ah +bi +bi +bi +cO +"} +(15,1,1) = {" +ac +ak +ak +aw +ao +aH +aL +br +bB +am +bS +ce +dn +dl +ak +ak +as +ak +ak +ah +"} +(16,1,1) = {" +ac +ak +ak +ax +ap +aI +aT +bs +ak +bG +bT +cd +bX +dj +as +cz +cD +cL +as +ah +"} +(17,1,1) = {" +af +ak +ak +ay +aK +aW +bg +bt +ak +ak +bU +cg +ck +bS +cv +cA +cE +cM +as +ah +"} +(18,1,1) = {" +ac +ak +ak +ak +ak +ak +ak +ak +ak +ak +bV +bX +bN +ah +as +cB +cF +cN +ak +cP +"} +(19,1,1) = {" +ag +aj +ak +ak +ak +ak +ak +ak +ak +bI +bW +cf +ah +cp +as +as +as +ak +ak +cQ +"} +(20,1,1) = {" +aa +al +ar +az +az +az +bh +az +bC +bJ +ah +ah +ah +al +ah +ah +bC +ah +ah +cR "} From 30e77035da039eb777d760871630a649aa3ec5f6 Mon Sep 17 00:00:00 2001 From: Sishen Date: Mon, 10 Jun 2019 07:51:54 -0400 Subject: [PATCH 305/370] Update _medical.dm --- modular_citadel/code/modules/client/loadout/_medical.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modular_citadel/code/modules/client/loadout/_medical.dm b/modular_citadel/code/modules/client/loadout/_medical.dm index f0a49629e3..2bca522901 100644 --- a/modular_citadel/code/modules/client/loadout/_medical.dm +++ b/modular_citadel/code/modules/client/loadout/_medical.dm @@ -8,16 +8,16 @@ name = "Blue Scrubs" category = SLOT_W_UNIFORM path = /obj/item/clothing/under/rank/medical/blue - restricted_roles = list("Medical Doctor") + restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist") /datum/gear/greenscrubs name = "Green Scrubs" category = SLOT_W_UNIFORM path = /obj/item/clothing/under/rank/medical/green - restricted_roles = list("Medical Doctor") + restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist") /datum/gear/purplescrubs name = "Purple Scrubs" category = SLOT_W_UNIFORM path = /obj/item/clothing/under/rank/medical/purple - restricted_roles = list("Medical Doctor") + restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist") From 661f064a03417feb353d7730effcb3546049a5ba Mon Sep 17 00:00:00 2001 From: Sishen Date: Mon, 10 Jun 2019 08:15:44 -0400 Subject: [PATCH 306/370] Update _medical.dm --- modular_citadel/code/modules/client/loadout/_medical.dm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/modular_citadel/code/modules/client/loadout/_medical.dm b/modular_citadel/code/modules/client/loadout/_medical.dm index 2bca522901..ad35081792 100644 --- a/modular_citadel/code/modules/client/loadout/_medical.dm +++ b/modular_citadel/code/modules/client/loadout/_medical.dm @@ -9,15 +9,18 @@ category = SLOT_W_UNIFORM path = /obj/item/clothing/under/rank/medical/blue restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist") - + restricted_desc = "Medical" + /datum/gear/greenscrubs name = "Green Scrubs" category = SLOT_W_UNIFORM path = /obj/item/clothing/under/rank/medical/green restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist") + restricted_desc = "Medical" /datum/gear/purplescrubs name = "Purple Scrubs" category = SLOT_W_UNIFORM path = /obj/item/clothing/under/rank/medical/purple restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist") + restricted_desc = "Medical" From 400ad0b03b5acd80d26cc13176b9caa76aff1a74 Mon Sep 17 00:00:00 2001 From: Sishen Date: Mon, 10 Jun 2019 09:55:23 -0400 Subject: [PATCH 307/370] added family gavel --- code/datums/traits/negative.dm | 2 +- code/game/objects/items/courtroom.dm | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 43be1fa2a7..c7b1a34755 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -52,7 +52,7 @@ if("Atmospheric Technician") heirloom_type = /obj/item/extinguisher/mini/family if("Lawyer") - heirloom_type = /obj/item/storage/briefcase/lawyer/family + heirloom_type = /obj/item/gavelhammer/family if("Janitor") heirloom_type = /obj/item/mop if("Security Officer") diff --git a/code/game/objects/items/courtroom.dm b/code/game/objects/items/courtroom.dm index c0e81ed3d5..04ab83b106 100644 --- a/code/game/objects/items/courtroom.dm +++ b/code/game/objects/items/courtroom.dm @@ -13,6 +13,10 @@ attack_verb = list("bashed", "battered", "judged", "whacked") resistance_flags = FLAMMABLE +/obj/item/gavelhammer/family + name = "gavel hammer" + desc = "The gavel of your forefathers. Treat with care." + /obj/item/gavelhammer/suicide_act(mob/user) user.visible_message("[user] has sentenced [user.p_them()]self to death with [src]! It looks like [user.p_theyre()] trying to commit suicide!") playsound(loc, 'sound/items/gavel.ogg', 50, 1, -1) From 13853ac6bf38442d71d1d1cbbda4c64fab5a8bc5 Mon Sep 17 00:00:00 2001 From: Sishen Date: Mon, 10 Jun 2019 10:16:32 -0400 Subject: [PATCH 308/370] removes family gavel, readds briefcase --- code/datums/traits/negative.dm | 2 +- code/game/objects/items/courtroom.dm | 4 ---- code/game/objects/items/storage/briefcase.dm | 3 ++- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index c7b1a34755..43be1fa2a7 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -52,7 +52,7 @@ if("Atmospheric Technician") heirloom_type = /obj/item/extinguisher/mini/family if("Lawyer") - heirloom_type = /obj/item/gavelhammer/family + heirloom_type = /obj/item/storage/briefcase/lawyer/family if("Janitor") heirloom_type = /obj/item/mop if("Security Officer") diff --git a/code/game/objects/items/courtroom.dm b/code/game/objects/items/courtroom.dm index 04ab83b106..c0e81ed3d5 100644 --- a/code/game/objects/items/courtroom.dm +++ b/code/game/objects/items/courtroom.dm @@ -13,10 +13,6 @@ attack_verb = list("bashed", "battered", "judged", "whacked") resistance_flags = FLAMMABLE -/obj/item/gavelhammer/family - name = "gavel hammer" - desc = "The gavel of your forefathers. Treat with care." - /obj/item/gavelhammer/suicide_act(mob/user) user.visible_message("[user] has sentenced [user.p_them()]self to death with [src]! It looks like [user.p_theyre()] trying to commit suicide!") playsound(loc, 'sound/items/gavel.ogg', 50, 1, -1) diff --git a/code/game/objects/items/storage/briefcase.dm b/code/game/objects/items/storage/briefcase.dm index f4f386b7d0..002190c341 100644 --- a/code/game/objects/items/storage/briefcase.dm +++ b/code/game/objects/items/storage/briefcase.dm @@ -40,7 +40,8 @@ /obj/item/storage/briefcase/lawyer/family name = "battered briefcase" - desc = "An old briefcase, this one has seen better days in its time. It's clear they don't make them nowadays as good as they used to. The corners are modified with metal trim adding in weight!" + desc = "An old briefcase, this one has seen better days in its time. It's clear they don't make them nowadays as good as they used to. Comes with an added belt clip!" + slot_flags = ITEM_SLOT_BELT /obj/item/storage/briefcase/lawyer/family/PopulateContents() new /obj/item/stamp/law(src) From 921940115407a1796a44728e4715a163add03463 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 11 Jun 2019 14:24:16 +0300 Subject: [PATCH 309/370] Doneso --- .../components/binary_devices/pump.dm | 11 ++++++++--- .../components/binary_devices/volume_pump.dm | 11 ++++++++--- .../components/trinary_devices/filter.dm | 15 ++++++++++----- .../components/trinary_devices/mixer.dm | 18 ++++++++++++------ 4 files changed, 38 insertions(+), 17 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index abdc3ada57..7e6998b701 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -27,7 +27,12 @@ Thus, the two variables affect pump operation are set in New(): construction_type = /obj/item/pipe/directional pipe_state = "pump" - + +/obj/machinery/atmospherics/components/binary/pump/examine(mob/user) + ..() + to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") + to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + /obj/machinery/atmospherics/components/binary/pump/CtrlClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) @@ -37,7 +42,7 @@ Thus, the two variables affect pump operation are set in New(): investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/binary/pump/AltClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) @@ -46,7 +51,7 @@ Thus, the two variables affect pump operation are set in New(): to_chat(user,"You maximize the pressure on the [src].") investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") - + /obj/machinery/atmospherics/components/binary/pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index 2efff16301..f9a885651a 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -28,16 +28,21 @@ Thus, the two variables affect pump operation are set in New(): construction_type = /obj/item/pipe/directional pipe_state = "volumepump" +/obj/machinery/atmospherics/components/binary/volume_pump/examine(mob/user) + ..() + to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") + to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + /obj/machinery/atmospherics/components/binary/volume_pump/CtrlClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() - investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) - message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + investigate_log("Volume Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Volume Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index 52e8d9eb83..69c91bdd6d 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -12,24 +12,29 @@ construction_type = /obj/item/pipe/trinary/flippable pipe_state = "filter" +/obj/machinery/atmospherics/components/trinary/filter/examine(mob/user) + ..() + to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") + to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + /obj/machinery/atmospherics/components/trinary/filter/CtrlClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() - investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) - message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + investigate_log("Filter, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Filter, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/trinary/filter/AltClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") - investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) - message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + investigate_log("Filter, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Filter, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") /obj/machinery/atmospherics/components/trinary/filter/layer1 piping_layer = PIPING_LAYER_MIN diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index ba9fdf31af..8cafc083e1 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -14,25 +14,31 @@ pipe_state = "mixer" //node 3 is the outlet, nodes 1 & 2 are intakes +/obj/machinery/atmospherics/components/trinary/mixer/examine(mob/user) + ..() + to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") + to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + /obj/machinery/atmospherics/components/trinary/mixer/CtrlClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) on = !on update_icon() - investigate_log("Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) - message_admins("Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + investigate_log("Mixer, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Mixer, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/trinary/mixer/AltClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) if(user.canUseTopic(src, BE_CLOSE, FALSE,)) target_pressure = MAX_OUTPUT_PRESSURE to_chat(user,"You maximize the pressure on the [src].") - investigate_log("Pump, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) - message_admins("Pump, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") - + investigate_log("Mixer, [src.name], was maximized by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) + message_admins("Mixer, [src.name], was maximized by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") + + //node 3 is the outlet, nodes 1 & 2 are intakes /obj/machinery/atmospherics/components/trinary/mixer/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X From 355e384ba176acf4e0bc474818bdae83d2f1dff3 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 11 Jun 2019 14:31:27 +0300 Subject: [PATCH 310/370] Spacing fixes --- .../machinery/components/binary_devices/volume_pump.dm | 2 +- .../atmospherics/machinery/components/trinary_devices/mixer.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index f9a885651a..bb0b525fd8 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -42,7 +42,7 @@ Thus, the two variables affect pump operation are set in New(): investigate_log("Volume Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Volume Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index 8cafc083e1..21a02dfc63 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -28,7 +28,7 @@ investigate_log("Mixer, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Mixer, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/trinary/mixer/AltClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) From 80eb813a078bad8359cca5512ca0ac8ade6afcb1 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 11 Jun 2019 18:53:17 +0300 Subject: [PATCH 311/370] RD can now suplex a rod. Good fucking luck. --- code/game/objects/structures/flora.dm | 6 ++++++ code/modules/events/immovable_rod.dm | 21 ++++++++++++++++++++ code/modules/spells/spell_types/rod_form.dm | 1 - icons/obj/flora/pinetrees.dmi | Bin 42806 -> 43191 bytes 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index bd65a8b422..7c73a1fd8c 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -101,6 +101,12 @@ icon_state = "festivus_pole" desc = "During last year's Feats of Strength the Research Director was able to suplex this passing immobile rod into a planter." +/obj/structure/festivus/anchored + name = "suplexed rod" + desc = "A true feat of strength, almost as good as last year." + icon_state = "anchored_rod" + anchored = TRUE + /obj/structure/flora/tree/dead/Initialize() icon_state = "tree_[rand(1, 6)]" . = ..() diff --git a/code/modules/events/immovable_rod.dm b/code/modules/events/immovable_rod.dm index abf13bcab9..d9654b395d 100644 --- a/code/modules/events/immovable_rod.dm +++ b/code/modules/events/immovable_rod.dm @@ -45,6 +45,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1 throwforce = 100 density = TRUE anchored = TRUE + var/mob/living/wizard var/z_original = 0 var/destination var/notify = TRUE @@ -140,3 +141,23 @@ In my current plan for it, 'solid' will be defined as anything with density == 1 H.adjustBruteLoss(160) if(L && (L.density || prob(10))) L.ex_act(EXPLODE_HEAVY) + +obj/effect/immovablerod/attack_hand(mob/living/user) + if(ishuman(user)) + var/mob/living/carbon/human/U = user + if(U.job in list("Research Director")) + playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1) + for(var/mob/M in urange(8, src)) + if(!M.stat) + shake_camera(M, 2, 3) + if(wizard) + U.visible_message("[src] transforms into [wizard] as [U] suplexes them!", "As you grab [src], it suddenly turns into [wizard] as you suplex them!") + to_chat(wizard, "You're suddenly jolted out of rod-form as [U] somehow manages to grab you, slamming you into the ground!") + wizard.Stun(60) + wizard.apply_damage(25, BRUTE) + qdel(src) + else + U.visible_message("[U] suplexes [src] into the ground!", "You suplex [src] into the ground!") + new /obj/structure/festivus/anchored(drop_location()) + new /obj/effect/anomaly/flux(drop_location()) + qdel(src) diff --git a/code/modules/spells/spell_types/rod_form.dm b/code/modules/spells/spell_types/rod_form.dm index 06f38b8346..5a532db7ac 100644 --- a/code/modules/spells/spell_types/rod_form.dm +++ b/code/modules/spells/spell_types/rod_form.dm @@ -28,7 +28,6 @@ /obj/effect/immovablerod/wizard var/max_distance = 13 var/damage_bonus = 0 - var/mob/living/wizard var/turf/start_turf notify = FALSE diff --git a/icons/obj/flora/pinetrees.dmi b/icons/obj/flora/pinetrees.dmi index a68e0388b08e29a8ab2ee1b3ee8ea684f778f98c..3ee4a89f079ae058f7cb95726c0800aefa605aca 100644 GIT binary patch delta 26713 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 delta 26325 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 G Date: Tue, 11 Jun 2019 20:18:16 +0300 Subject: [PATCH 312/370] Fixed --- icons/mob/suit.dmi | Bin 346339 -> 348896 bytes icons/obj/clothing/suits.dmi | Bin 121724 -> 122097 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 0f3438dfc44edcf23c947aec3f57eb507764e501..b3b2f7703c96cac2e3dc38d6110472ee930e174f 100644 GIT binary patch delta 13198 zcmZ9y1ymJX)Hi-XIwYh7q(Qntq(izpq@|?0VQ3z@B@_^lZUO0(knWZcq>+%WJKyj; z-}|li|G#U^Ju_$Rz31Mu_u28=XETX#y^t`G4xu`Uo)Ytmu9Nyp3Aew6a%xGcgn;=$ zb=S)$Vj8s3`HUKOidO^aVx92m0QlX(pLjmS=oP7})A=<=C!N|p51f_AtHxLHmabbT zs_a@#e!Hu2`S(Yc{n6V;d3WA^Jj}>rD^gxSFv_<@u5@Ob<{GB2o7nH=47SJ^|6crx z?DJ!CPO@*WkQP$|o@OK#>pN z@2QoGu%Gw{Tc8f7=0Ic=4td!B0;}@x;rV!5mR!m0!|;7D)HHiZmL&qi2}RXvdB};u zGJaGe)FeyH;TcKBIcDY;g5t}(^Oq4D0`kLhl^;H)zIJ4NKTPw`dmo&(NbdvmiBdW_ zvHC4};jG-XUU?lKS4jfw3f#?8V#$k$-R%N%urT_8`trz(Hhk9{HJ6)C9FTsiRa8&$LQ@iaz{&og>a{2_#o+h}vDTeRr*rL<@z zU-b6fd<1D@Ewyv z!LQpwD{Nr*sjbh|PE29`(zGS=Wr4NBhP3Hu%o;xF8EE;feC4GJtPK~}Qk+qw8zRZUpC~KJxJHRjCsT9qeeskNob`Ivclah4Gu@;~ z%_#4yG-teK&Y*LG563H@D}H8MdI+VJG{+@A<&9OE9(Z4;mblQf=JZ$8AoymD^k$TK z%{e0ULSHOuj7YpZP5M}31Z&o%UBuD*y2xpBTS^a9IeVjd~)|2;OzRj*g&86a8>oB8Jz4j13%sMO&bvQtl~*H0_`"{_%_(2l!hGa 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%0A@DOrVrhu#+ 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 delta 10621 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∾2$%NEI@`2J%QWvf{WV@4Uwd&Ok43sooSy81$ zq^niBE2d^MZfP~O@qy3p?*|74&(L47YmgRfuz*q^S2E&vGhpAbd!i11 z%@o0_V}R{k)~%s4T=|HzGgwsRL@L$NLQk6!@f2Jo-$;uI9&9*FkTU*Bp{;Asa zF$K-|rKzO}^Kak7qkSekuqpH%TT+hPC8xGk1+BxGE>{6Z_T%H@R^);{K(f?sNF2x= z7UqW$RSVPU}%o z43f3<{lzI*Tt8QWF||Dv}x{H?LOG$Ih5sQvWnge?B4!v-d~4!}mt4i^!BAnz zWR>`PB|TpN{hBELK+_T9ZDZvsD>~Xte}5NtTHjAu%Nic`zZVz18iA3T{B_y5``N{d zgd~wguxBbUSDChl*}@$DW_ZF465ASg(RJ6~%W^lB<9LKMVF#`F_f!OG+X0s{3QZY_ z=aro`ycen>%*W)f@ZqJcvy1hPn$fGZwv&Ye4?`Tl{q%O-jCbv75-gUH@S>~GY~-8M zEe2?zVpP_XTb}QQlr`CUeI39M5})0Ky}DRuhlAF=)@kW`3jd#(pTKLEnq7CXdIy>x%bn3RHL=|1O>rKP_33b5$sRM7Yz3w#i^S7 zKwWam>)Zlk)@v(WX$LcgXs9!gxmc_6<`Ac%2l-m%E!P28Hq+fh+|AiVY{onH$yG01 zMnQO5^!?vil!tqo)1BaK&hRDtV8In1={u}nF6(df0+pY5S?^?@VaGL(ds`u!Do<^$ z4XmxZrW3QQu+I0i7msdL z!uQ+)4AS?3YbXOlNMipq7ZW5rlkjYQ zu}Pv?nw$3b*m;Hp*7Kw#p?AW$)E4mG-TfvB504Q!Lth(1!1-L%utS7x#>+zSgZfM9 z&A9n!Aw4imrWeIDAu{1zJEMsFd==N{z3RsPFZ$(H?-|lRhar)es4@_q)M6dC_V4b= zPM}a3B#rA6b4vn;`uCZ-GFY3RzV6DkbMl^?+C2;{R{5<;pgk$?hV2FIPr>JIQOf?G zqnGGzbb%4gxva>6HIv8EZ%S*k(z+&hq)nV(W!lh=+7w5m(hTnJ?Fp&<3m-8))7F)olr_<$>7AFl>cJ`}?^6 z6>t*fjwv!P$FXg`8ynxJ{_}2XYHq|*OG}HPySI0dkA#-msB$Ip)83_6c4TlD6{nRA z@PLvEzf2!KydW~=p*YB*KAEL3iuem|tpCLoOKyZxLVoM(^$-{jB?cizWar66CBht_`91|8p{%1Vu+{sZ zdJUvC2}7RuRUTE7?sw#D3h?^$0C|J-6c0ZABD~^DGCJSI`RP+K3<+&+cCSb58Upxz zSd`HC&CLSlS3iCS1s*?;?;c^Tv+V}LXC>(T?MT|)6RrS%eO0n#WkkQj(QE^IJ9Kmw zxmW#0Sco}zp;`85mi`OD(Z!X-DikSUMU{w`PphjsZ31mK87dVwMz&wyJd1K4RB7t-HAd1PZoAyEfssowI|UHSG=0Z&h`jd5s|3IdSaU(|<9iSI=*=mZ z?;fY)l2b9K<7(Dk!r~hP6@em8T~=m|uX-DHuHss#pr=x75Ia)+>fKOxw<+W*%L^cTN=8vdUWr=0%UlcPvr zJq(iCJ(0z8oz1II`ps2rL7IGA{^nl;-UwG=ffr+UatoxcJ%-px6Quimq_KF|9+}DQ z^1C+@Rf{}7f52Y>Aokr69x0e6_HxtyO_QgpcZf)tgcMUNLnP6@hYXMbIUcfN$j`S<<&PG6Z z@MYH>A?kia`vcs&$1t0KC_Z=W-~!mq@z(umf~qb{{~3$mq<(3w<8uTLg&s&cZM}%q zoSmV6v5URy55K|=r$HU3f8mEA6Bq0emzoE>ZMq6{c62Oi2AVU$H_UQMJvgva%@+FD z?clZF%<)!IeC{^%VYq=D|K7X(PC$Cb?O9LVg|+h8qo$`I z3fw7j0;c7bB-j6Dz{rcZnv;m<_;FSKW}!Pcx}a*+w%Q(sfq({>)}$7^b212kCIdV` z7C+Q~dHoDbjV>^zK&{(OdYOWM=u=au0X8}izK&i5DtW4Etcy>;{uVX}j*NaeMdk?@ zuK&FS)BL*|WN);zo9c&;ogzD1&-?Ua-!z#FG55Ru_!9BGlZqxUT|^nI_}BV{@%cI> zejMlBU%X*)4MD=P*I+QiQS)P)XY1mUx$TJHeM|#WQGBu zK|YQ7gWS#`d2d6cVEyLj>FK1&aPlH0-(!4WxJ4o)NOpgMqZeo$httvFjyepa4XX09 z-WN#28(;OyU7Qf)L#PjCx4|ZiyKbDFmK2-52^-Htw$py&l`&KWA`2d#Hd9^n+!)J{ zeemBE6J`+kFmJ4>-4)_$&UcC+gw<_#6qYtEUVOY@6402H87wEZd$Zp zP^)ZQvCl*116^Gly|oVymU^iS3W=m_x+c@FIIPY#y6a&e)_Zuf3PAL{oZOVbxC3M~ z$zr^(4(vbQr-Pn`($Y_Hy9$|&lKz3gwXvfel&}dS!21UROm8B^g({)iuwR^cEK!_y z6|<@}+^By7u-!NC0)xZDU8?rg+IUq-Vjk?hfm>EaNk{Q>H7nk$5uvI*bV55gnvXOx zL*=f-+8d2A_#S|C(tXMD@4*n^voGyqn62NCyE?Oj-zY8q zG;+(l)kPu-=x`(NerEqzAFZmqiTtk!RFqH47nx`1DwdFt5L|J`JR&gwoR7U5zJeI> z7>{H6c=QJhUmde>aMbH9b+e$KuWu$gJPzajk)QjGNJ}utTs$X&Wl4YK__do9a?SO0 zpVx)q2~VegIr7tx3z^V_J?#2wRuQ<~=G_K6DG=m}?N9tQ7ck!>4GRy)zG=kSQ-%H* za4;9Iok$BhPp1+Xi;Dx)+CR17yc0w~@&ZDCehiYA@Ev*$D~a`g`;P@~9^srViZ72; zf}77)-@hWF-Z*q69?J>RQ;E{K-0i7I2DMqOBO{ zxBQiWiNV@LMuaLZ^CgUkXsv(`F%fLS(d1CCb4iaL_`MXUAtc``YeIl*@O42VvRjdF zrx-DQazmI-frJkDz5f!1&;$T7<`pZe<4~A3EcWl&*?vu9r!8JzSe%lZK3zHqR=k5X z8cJ3VqzafnOEkhauIHXHdn<51M=e}9z zgP7g_wze15v$~fTJ}xodgMlItBM}T<6)=8f3iQ9oPYJT?qkRlK&_rz$j_^ zfc`l=Hhe9jA8<~j;Hek|9|ywY2&4l7bnj=Z!t#&{4Fc#~UA?^pjK4o1GXy1manru} zcb=4iNG3A)&Xnt+h-Knc1F%|K`9$~QI87qL$#|5S#}s!uWDH@8vGs&8rfx!1RFCx@ z#iW1nspp*e04PhB;IO>{_%=e zShz_>CS=jVAW8yLz4*sKxkrpmQI!DgL0=dNOtT01=+74^PY&M}I~>TCHSdB@vj zEm8q#PmU10U%4d-?F%6wikl*?OL>)ez{sOI^OSPO`M-j5T)=>xKJ#}cI)R~8^93OG zavIz|Lco3%gNR5Lq~4Vu7Klbf;6stJNSRle7c9;qvExvCNE_4Df8{DJOGHh!z(N|* z#jXrYqy;%RgfUQVx=-}NO*3x%i|OaV)oOd6>(n`I94)OiiPhEB@gLHDMfxzW zExG_4q)gqi>qu+ZGN5s|f4QqtCr}GA_QNFLb4$Y$R_Og5Q0$Zv@j zEXh=$B(wNMO?}W?PR2_B=L}nvyGz)YAh{C08BrZm28OBZM(ZDP+mw- z4l`LRn79=(2KhhE*ymXeLP+7#R9kSXjt#zf5}7)z;T*sDBu#UNSsl zVs)2k!0bYFSf@Q$L|>kX+H-udbwzO1k$=z#P17V|LyJv896&edDESf%sLT7ifu+aK`p=n=C?|5vPoMNXO@pnA}L=4sT7bR{TuZMgSxiHp0KlClWFC&Z3 zC;rTx=b%mTpkg4AJWcf2`%8~VS)L1E$^{k?t#n4NHAqz_BsRZh*tDoHldM0!`xqZj zXlG}4yYcG)%D+yb^l+jM&1CEdrmJJfLn@y~chEi=#)jy+KJ zqm)m_{qC)KQFbeu9(BHpwarn+jQ1rXOPNuahbIvnK0LgjB_k)>%!NKpKSecl5>0x$O%6T03x3FdlNtE{6bEO;W zH+8_mE6EEV6F<2wskeZ(6ut7P5Wc`}(`&vd^1$u@9|getD8>R`!CMzOM7!@0-8NnZ zJAnD?uOe)t>}0y~TO998`0T*x2$DO~04$VK5V`I-Eh1Rz^!Lk#!%D7>^90I@3!D3` z{I9YZKnCiHG2#5)5%mu15h=(M;0m85F;Z4h!DF@d7#Z6GaNxP^0Nuvea{bIIkYDnD zDvb#O-){N#U-v6%`fugWqo;gTtN& z3(E@`-@ZMb5ouDTC-?PbUde@L2tIGzTW7eW8a*tcTK zptOFPQ8I94<8{#Yj35L-oum%&1`ZrFRh^p7tOu?~oL@r$y45%D4qm4p7R&xBstt8D zabL+o&ccW4+NLFRb+It2w+{9JstPBx@|&&yVZ-X1wh94MeE=DX7+*KSF*xH77lIW3g#Y@r z!Mt`Bq1s*<4)&hiMhh=(<%BtYUy%ekC;HKYR}}`cyF>bp=P-cU4;%9v85OU+7GB6Z z#0RGsr6Y%jwtUW=xxR<~7$bMd_PU_)?KJ1VneEMpl`&F!C7I7vBdA1}l3Rv8(#9UW z;U}aOS1AcE^CMgigq|IT+$z0pK)qW`S(zkI(R!-YmY;|Cc9qvX@g&mGP4b&`fbV** z5Xv=MLTfQ+vpFzx9Qn1JWcaGPFOnG=!XfmR@)y7xN-YnlYa?FI=VNTJI2I`mQ$gu5@oKPs}yj3dWe!uaE5O`>&pVgQPew zIoYBBY)IzjiKMD(Z13eGa6{zzU(=a@EN1i3exU8!ebKD&i&#QoGCeDM?=YKS`1Pkb zPTXLUxx>+{1zYjfd`>qmX3?RZIm#5+DCeC-SCAoeN2URyHZa3EJ6=An($0D#B(2EyYr#ZB$OT?|Z`)xlqlnBj-M=v{PHTv&7K!WT#Wkw2quqYXn)w#B%+P z$561H_`LG%3kl0b0~xHF)?;=!Xo+k{zqFi+Y9J$7zNl}w{H6FCcy<^F@57dkThyml zR`Y%T9GnlqC&JYkmmU3;jB%T;z662aEr5Zhh`1_F5P8QZ)fvWWJmXtp8=n@R>JaDr zIwRpjg-_$$H5vtb=EbnpB{H{b8K@2@ww5^O{hePHcit;&`Ow<)eN*5LVnTiLs#&sD zw&K0fT)D&IY7(HGJYCDYOg+%9@8I^Pwa8d|@=rTm#uVYHjkNXUy2pKMexAXOk)vcp zP_|Q^wpMBFE0N}ptr6kkU{>%_t+vkh{c8yc;~L;`WdTp6;p9FC*}Z8#=qCpt;ieqT zHWq0_l=`9x(+NS|_RjlxI#&&pB-+_Pa`q7$7{fFIc<2ktAw`o`tK+`cDGyO{?oXV**;3qVfu}nxl2cHzI0dFIx=k^MQ5%c^uZQ zuR8sA^JAwWmmk<7E7;=9zZTgqM{h=rS+h?*5ygFOfUNAt^i;hLbmnhg-tY9)LdNz2 zQi}wq=QC-m3GIT&+kZ~^mW@xDAO-T|vdvN)MHUyrEKIR-5Yqz%AIl&ZgCa?z$zT4z zND@GW3k%Ns{}VtXZu~#7wSt04%Ks~x_WyYac>aHq|9?^4RbAW%nDyBHeTwqSYPcrj zk2h$SpEp+T*EBC>H0yXbGVqVE-W;-1>-bt+C4Fe(bl%^)G}S^QRR#twRGX4sTY76XqsUSqRiKNmgRxFf!bdQue-vx2h#>oC=rMc z4X`K9jWoe^_Ol`tRdSLZBX%J2-(DAUYETiETUk+207#O#K~Yiq;Fx0)FQOL~L{N&3 zs^D;;MS9vl&wP@$Y*v3UK0WU{VA{@@EYZ}_*?r#D+$>_HnpY|J#v_}N4uJFc4%G@P z8?`ZbVAc)7+m#E0| z)1RwV2i&>c39@QedmS&(T+LP*4LWO=YYav5g5PTFmdlaFbvil@vKMPyQ-1K>xwxCnj2b{!eYn5pSmcev-Qtrf1!WkF?ou1!I;&a7gy zJ2cy4H)#I<;pr=&s_LG%FVfxJDF_mRQqoe=A>AM$-OV9HX%M6YX#u6XLsF2GMx?vD zxqO@VxBlM}?@3tq?3q3LnVDziSUl?k)_pyoTU0GyTT-N4Dc)y%fkplcMR7DG|9N4X z^NNi9S@NmDeYC<$jr+VMw&V6yHCW0?6^u+QfGISzd-tDj3V6nzSXvubKa*qD_zwkM zkRqg4j}SOldrouKePpwQ61#2ewl)Z(Vk_NKGp1_W>`(hT>G?OXtGnm7nezq3#xwa& z4U3y@%0|zB?#Wn(kLBaLbLJPOE^XK8x199T%%0TNy?D|~@DWD~kls0m1W6lBklqn4 zvoSK1y4QZe1$Lw`moVcQ!?NBstAb+=^ieUo@>Z>W8-)CAy zrKKM}(2C_&mIn@C+lGgSTlK~mcFiUCT^=!pH*k$LQWL7If2h$UAsIPbu^OL%CQh~V zMi)lr6dinpaW#_&2?fbfxU+_TSx6=7uO5@<*bOgv#WaMn!aJ#I^U4c;Mt$h4yKQa4dU#-1n zsm{+#CV5e>Lpny;nDOd;#`QTi$JyhCmmEB!GFCcfIn6e|H;%&uJ$(!yU;|ua-6wNKqa&B6wzT)&Q-y*#0`v@}R6 zAaeVhTEjrzfbGeXoZ7tbyr|IA8^55xdNJIoipQB7gN(R7PY(Bo$c_nzNl~dSlNG?pI_@rA!aDX~Bp_{wGqztmpHi0aFxnA_i%1*f!)_8AJ-qNQ^q zz$zYhg|A$0<_;JB=kvvbP#}y2Ql{#CxYT;*%Xif+XfZ~p*<6z{nvYqIgrdGMl0`*{ zM<(ZYhVONx_hDSClTo9l9=Ru4DLEm5u<*wZX0f)w#YMU`9eaCfbaW{Y<(k~}ms3#4 zZD>gKRM)tgs2V=z!Mob6YEJkP!S*seC522y;mIxhqAl6D-ipT4;WywvjwKDRt*%;B zR#hR?yXvEq&GE)A+`})9Plm+~DjI2rpSI)C1oH^R``=v1;p5}GR2aj68ND?Rq`ik7 z?%*mZQNc|yl?J0V-@K6r%Ru~~C2y}Qrt;$@qIZnkeMAFa?k(8en-9KNc*|;)s84=H z8dg_GFeBI<1c5g}=&PvC$xAB3qVYeg+a(Bx{b|sfefp=*6WNk)Uya^xr#Y^L$i}d~ zJ!oFDOx|&%{fajlmxX}n1=bT6MZ044bGPen%*+ONW0~sO#s`Ou`(_}>3QCJ{s07-r zN#c1e5$W|UAK?Mwau6aa>=$`e5YP=O0jEH44-j`cl$bcN(}rFHKlVPci}`+rkTjfD zkQ$(?oBC(5=#1ZC4z2z6>O{A~EHvl79TC^78O~lldH-+6^VvCRp_65RLSJPFE zFi#-UwuLdpdW$3~A}W-lJ|c^|UwC84s&AD2r4SJxA@aP^xpCWhSA>p%W8T4Bwfb+t zZnO&x{lt{^Az)4~)&?WX3FXLCi1*`uo>*PY2jhgbVq>p8TBL3t9*zZBiQ@*QzU012 z*&WgC?YGB}u|dyxK2q(%mw`xkWWSm{1+e1Ho-=D3yJ9Oie03Co-&n{PwkV38jta%j zg(wyco{xM=K*!~egD!RW#>qm&K4QFs^)dUq=DzCwZYhI}4mlTY z^|O+hzWk%E5&nXLjh*Z9to3Su@ZUw&Q#BFTQ6Ihh0c^ET5PPK9No!*zU@Lg{D4`}A3(8=hZIXiR7 z>UvsJQ5K~ya*`c*V1bke8*o(kjDFU%LMP?9Es27Yb8M!vsUHP2{X#^`_Yy5Umw>EFAP)Y;GNu5CALxur(y zpFl-}09MtEqJsk`B%jL}e*!WhOSH9gW3R!PzxtGYgM-rfiJfA0^aqDiOwo;ULxY3e zb}tACs3v!OQ-tXWTywi>rHJi>H6^6wd5M`P;|jf=#-vg*uPcYS>E3;KHRo{T(?DEG~L-u5$~jrHKkKWX;4i75u?nx2)N-CX&e9~MWtM<*&u z<2{N4TR(+5^G6BWI{uLy$Ux`2GXr2j20~(uoZi5`8_kvF^*y&+UReR=ez{>IV+H&- zKiwQPDiSl%fZB7E=8Y#gXuMBfQcNcUva@^Xv2AQ?j3JPR`E<|tM)PU^t zCx}|ugU9C2s~>rvzHjlxMU2agtt45=safoesrhM=RbQW?TV?6I`U_uO zLjz|{7c#( zypW8+$R~BzcYUeOp0TfPsGy{~MYT=jdCi0z!X%2JL-m)r{B@Z>GO-`r@mV54d*5XL{UI(M9k{3F^UqXl=gxRKfJh@!v>%) zsi0<~@0}VdBGNuSLcZs_rT}`yTaWPD&*pswagY)&7a5= zul%_f>Lvgi{u#WPA{DR~e{fe)QicMifBeuhGc)`CV|&*(COq6-cy)}LT+AW4$AJ3{ zi6E^?sej^SkW?W3YbK_EMZ64yn1IA}93)&?D^$;_}l5Dx-%*+HP8YKDVuw5MsvhA!^q z<@L~P$ECW=3M8GlHg}qE$362C zX!1Dtz$h!HptMKu29M?K@_Td(8sT;IYI>Fzli#hoe=^D{7aeTE_olY}2(&9$67@QV zx6@-UBZya{W?-l?e^<=_1Vfl}Y9IY(uw1)p@hwsssV(%XeE3d%M_6bW(0*uTuQQMe|V579LesFQF$cJ0*5$(4PQ;HXQ;DNJcPdN~Q4x3wO_x~GtTU89Lmr~=jg1>b{|TyXrk zB&=Q`(eXVA3NEI#XP^=M*qU6;4bg%Mg4uf&uJ zT_YGa@pd3u3`9@PVLi`D7s6OB&j0lf&r*W=PL)xnHf-fzqO+Tb75-@KfO)SRE$@ei zje=4)uq=na@YC>_QDdnp0`Ao{?E52G!+3opBqR(=o6df7QGY>}y*}^i>Zt?=O`kC_ zFt*hv$-6e8f=Z z|9JK{g}{-!%PmOBGb$;)4-HKm6o<0ih+!=G{f2i@T}2g_YHq)8azAP_5le2fT%R?*2FCOBdRAglZc4N?u+9 zZ`NJ9-C&xjztM4V3-UYD8*N|uNb)UrxD`%K_Ovuiso`ml_@KPG+58D+3G2`>JtuuQ zK(XA;?XYi0VwLx@97#-AC?WcSq}x#CP`XvwL7%N~&RyjN8@X^&oaf_Dd9Tmi-U|s< zx&2mrO|q9IV%etO7<@J}qxgHs^3S*AXF@DJG7AAu$pD1mmyxYn>BOCxWIt0Td8%iT zu92)#co$aly4coVGnE$eD68MzHnC!>w=fzm8gyhGbrd9`fi)O|NS`DRIsn4cc zWt@mCgxsO}4C}fckx5s6nIxkMf+8YbZ@N+B+MuN>Vw5C-08eo|#Wj=u*Z8~PA3H>S z@APIc;lhZhqmNDfU!Qx_pLP*DolPp0+1g@Lqjvd`g?S4&W_hX-UM&ZUA(>mqMh?(P`}KG zcoet*-G4PiHs216JMmktU{+w`u;FUzVq$pm1Ve4ORQh$lGZJ#B_>-r-`Q2sbL z(8S55a3%Gih&;)I_zM@af~pHfC^IA-$A9pl;ZVqF%Q+q%%l?Y~%FVwf+3qfZ=0gaZ z)lTa?OOh>B&8n>>si~B$7uTMY6Z1j`MdSR)XcX+ zGiT8FD|%w=sR%-<`lol#sV_^uI&7i;`rIFs3GKBnBy5qmZdSnPNuqS9e)agKL|~^D zgT5)r8SN9oX!{NhP9DxdA4e$L;2sq4pHkUlKbAHpEk375IpQ6SYM^$JNbX)o5MP?~ z;uNDet@L0+fhTYYBborcieOJ=PO7iSI?m519YoC@^tGa*;@99{Xj&{8yRv2H#LW53 zi%>~iEf_n|o-sTR2S!10N#3kz{#b~R7HN+GseH0~lLMa1Pba+K;koeD^z?8^;AkVW zxO`L54=*JGZy)2!Je@dGhv&_?E-?oNw=*3oE;ZBru$xkd8_|7e6Ml#t{Q+F9F7fER z({6_m)zvOxzQx9Hr$`dRh|$?T_~;~yI!7)LRy*NP4@hx1O$)#4d|S=0XkYu_sl04M zhNPG!{|vprLF4a3L-5S1`F0sb^`i8zqnal_|0^6y*}rCRT3FiE=T!tAcky5G%-JKI zEY5Tx9=q)->{^SQk0009*PF~YdtaVS8IO*Szt7B9>CK`R4vZCD{+b-QkZJHfyxZRE z;M)d0QKEPetL(~-SpEweyv{;^bhcf&ZX ztAj@NNYVI(Vg;Lmog2}0$mrxTwN?Ta=M|x;_k9p!W=EqE5A>-kH3H4hzcNil@d)s{CA1U*y~gNck>U}`9QNC4UXk! z2XtfH+V|qXU<>4`gW2Wfc%1ZAP7CiLRjQWRup5^5%e{--L?kp-&!00eei+HlR?OG^ zrXF5I-irX!=8chJ!Z0z614HFDT63$fj-1jHqO%el7gdn7&e+%H5iPQgBJ7C_>ccgY z+;}T!s=a&5)|!_-JC^qe%AvN}3sX-WU`Z!rVo zi`wUg>B9 z$F_H(XdN}DNc+StBfOSNyh~Egh*{bt0Je7}CKO_$zwZulv?SMOOYyjMkzsw7^BE7w zdKH|_*rSt7-Iwixk&GBHs`zHdN6>rE)wH8lF@xM`t1!(5BgyZ>>h|GjyOG+PSn z4cWZH&1dR*uOo&RcGIvxbj_LF~3!a&}x=Ngc9ch*}ed@)~96v1JuhLH{qDP(fU)GLBC3k?xyBH9wTP z0e4zCtniw}MvDBoIbT@H8&eT?h2o&jiW~aQ3o?3N?75L%{K_e(tv^LF=)diP-m0mA zxfiyFN%|;#@%O_<3?2qfzOX=L7izsb*U$A)pD#BJc~fN6xF$w`oQ1cb#epPnkGP-( zaUkK`hGEO*aOj;$iff5H+H>|NCQg*`&B7xhBFf6iX?aR}S#-Fdjw9!)LHN#gKz0f= zkFgU%Hb(_qI%2TUuL3kX62k4!hW0i#Owr56EIqoku$>(Q$RNhi?TEH`}0uD!DC1M8MY~{ z%k#gEgU4wR1ZhXwDfhQgtQ9zj`SY=t6OQKNg*v(Bu3O#gMR}T|HGUDpHVcm-|GT5m zkHRw15zmG8+2K#i>}9~EC<>I>2!1zim3f=bE`ok4QGq9yiZGKj zw)gc&_9uR*^&UU`V?0FD1=hor#05_A-SSSXONu#rHUc~JR;`%ncgU}e8325ViH!|W zWZ}1yS_n`SM-g`rYeg~nAeJ$B*e3!nI>e2Ql}!vv@SP*Q^_a%-Krs7A?J+%y9(IF& z`Io_fpbcZ)iyoiO4UnmoRyMZbq<2bPes+gHe{3d6v_@VZhzXctQl z2V5O@b`pro2rE?5R0F}}{6wRDa!btY$a7$$4l_=lvQ8222Y41!S>q7OO|L7L7cdNa zgez+RcUAoNycv9UelFR(r64L@jeWA4vl`H`>UM7+QDh zyG=bGMi)mIe8hkjck!L_<33f=yX~w z{P4KFPeVt3Iel@#FE1PUbtw8(cHc2Tcz06;pt{1Ttj2t*14p*n%Zr8mz&R!-Vlf&1 z{?=-5Rej?lFj7zPD9DwQleOuXm{LmExyrcxbWuN4)ws7q?(D`t~EW;O-i_4K<&f!+E4 z|Gs*34YX1l7H8-SBZ9hka{C{-w-NR9>!IuXOY*s09Rj6MmEK1s!X~bo~}TDu~N6P{_}DacdWIQo_hPu50~_&OK8yk z9#Zc5SWxhIKfRtHBO_zPnlHt>;O*4TC&Wq{c`X0oRo2@T1k2=~z*7aO#;T^3H=5i{ zD)5z{(0VHuB6cmGU^b2X5!a1@iq-k2J#&Jt4it~O`mBhKabl5R(|^9w?W4jz4Ab0= zF>-|GTSM9=ez2^|4I&PqrU(&!$f=j;+{c?A&$Y3Cb5b7fC|_K2uz_9ib; zEu`-QtMHimW4&eZf-!`S9dWu@E*{9UhNE_2PzlyVX-f42EYYbOx$o5>G zz9UsPHeSE3b$c9k^K-3<{BSt6oS6AnD-`3pyTSp3; z4$8n(Cy7LiOK>IEC{SK|s-^{<5H??}r@6_?qhtJjon08mzyh(L06J%!923ZzN`YX} z(@%2T<~>+;)8#=I3qkO8T7LQuF)?qK9k$0CaW-0-MewL8qaKF##L9Q0{Q`;UPpmyQHgf>YZREYP<=t;n7~A#rKI0G=pG%NO8<2DxW`&lcXEJjunopc|8{$Ft~@`Jn7{kX%S9N8=0-o!KUH;Ae~o-ZV&mla#}2RSH0 zqWg#@U9zgGcuWN7C|G3TZO8rWe6Z&0?V{5_1VrobR~;EEkqLo0tU^o-QP|B`=;)TO zJ}z~a;D)1_cVXa?@p}_IB?ym;kMB@!a(hu8*^Lm_w+ec+h=UXpO~9pTkzrWIv6vfl zFLpRTS;uoSWYc`?s-~_U93M|0P&2ApG=YYRiKsLNK11|MKD=T;fTasK2Xnn9dF6Nd z`F@app*oci2m_1D5jR(eLDUYJK@?^p*TRdmFN)T(fsdq|8av`k6V(0>RciYyLi_d` z`hWjqAz|(yjdk<&ufLBvgRo(<-H`0!=PMG!G6mFE1Y{58iHvmZq&uSKwe(4Sd9Yv@ zcTAW;X^>vY^Krx-QH_e6hr9GE?GL~-U)5<92VDVu;g6Du(Bv3mjV&NxW~CE zrRVTqmIZI?_rn@a^0=HuJ`D9q+DhU7_7wOq6>Gwaca*L91c+sL5_(+N0pmx_%ElIF z)GyO~qKj`R`@z9G)P7|#&tE&=N~g9YwTtTVfzv~r<*j<)1{hY)rN zjFpp%OGnGae58u#6%wxKC0&boFV39rL5qO$0zJ*~rBA_y&7dV({^FgY=e zus+^pe8Lkl|Fb7z?05Cch_K3R*fv5?6D|-f4Ce3uv=RXeb>;m`2l|#HYR~6P0h(8S zI{gc|beav#|3<@NVq^edYi`M%IeC`)xnydKFYdQ5|KiQ{wd6PT3Ju0Q#eDEDRnoOU z$;=EgJDk*ate|zdyFNReDAJxenQL7ywFR^VkoKREXcdNoB>MTKn8{NmjlZlBqR8!c z+i#c##4u#*kMIY}}?7w+xcuD3p&270k_E?a3XNGFGW zM5&F$4W6*!I~x@tS;F8Cw#^gl&1)Pc=JLq|thW60WKX_>fvru(K0)kPE)4qtz)swuZLJ_(0xYs|Va zy1KjRU%sRQLIZzXdhM;Mrq*$fe0mf)ucgVw{y#L3Ey!q-i~!AaKY#wb2Ugtgvq=g$JQWFy!BK4e8AN{}zTI~>`}%e|xJ?5=axNCs2*SkQCVpo4 zZQs322i&p6O&cyEqHzfhhx_i;TE-&tMi&X?uR_w!1#7cUbQa_ahAS0@`|PoTsf+C$Md6Gerw;SwJt z-owOCPZ_GmEg!*ihL|O94S1sB&kj3>8+aUx$N9!U0nn zv$nSn1u_=PqXKbQ5by?#VPgRd05~26@6o02mAI~U}?m1pz|^k z2qTzGh*U@7_82ZVQX_$ABa327@Yzmkz+|wZ4d3>2xhW#ak^bUiqIzFX>!LENfc>qr zDIOFxCt|PVyQke+m_cw46T86$d#qp7o>8dnNV$(p3iQEh(KZ=e{jx7d3h^r##mO@*0N>3Nk+d$PF#|{{*HC_%Fk}L8Xa5}HYm!g9?#iI zX>eUXjaZm{BT|4dNe3*i_4mQ|qK68bA~dk}Fudx?tmXHQ$5e;Hq9X`1#BG(DE)Tt6 z*X>-R>S^IoAs369KPig#QBBgLq0RS5)vv!jT4RuZW!SKffQ++aev zy`8qWwjUgX_)>>na_A)7l0xTF*eQpgo@-!w;#XOp>|1}?BWGhW>C8fl>*ptnA)4CS z8tUJPK*N^_m&JAj4xMt?(9lr*LFXoilgHJ&5^IK@5<@cSg}`yW#~XXIu9Q{?PI9zy^ym9U0wMiZAol-=7*jeM0rNw5{f1q;QHmqz$3V zo5$UR;*4Ux{wBChA0hsW4-O4Y1_&axcXkp!OCA4p1S6Au#gaf#qo5=*l}owEV0UO@ zFfd?I02){;@YqgrPzifr!QzsWt(cHRZ$bPlC{uv8H-@?s0%R5)iItt5$jH=GG|HFt z+83SfmMlu?(~NL=!p9WIW9OeE>j~#PVS(#tuyO_@Sa3lS!gi*(b}L#TWY&*TzK3-u z)KZGf`sverPlsu&aZrHP+@uBv7D`;&nE+{VT) z?`&*>jLKv|*$V{)Mbr>KA755Y4RLgIw6%l7`WrvH02@ZvcHON%%;|=732$mHstDW? zGM-WYl2?@R)pgKxEFCWCA4U$ZsP~<9V`65OfEYfRfNI}|L)a}!R{pnd70MsG%> zMAplSiljimlZ%IqFyBbRrUFYcTln2)LoT~QwRdzxjk(o2Jwhy#S!!il+-H*9om@Xb z>+44njDM#nQiQm#eV(&>C`t@{v&GOgvJFuOg3~}y*Jb_&T=4Sy8YGZ(LqfWg1T}5t z46jNiCG$1QW6Ze+Ilce+ns7Iy(ib&N+Q*g&kXGc`jB?P>J~fso)REF@%PiK0>QFy*9= z)3Bp?+9jEqA-VU~IK`m~+ihMOKe&r8*(YHEZT1o!JS@1s1RI=%d+Q3?59*$>PLf@$ zU;@ABovke*Y=jR`lO15N8|5*++1XhyPf@@Fc~zoYK|t$wNP|Nw`UiUZxASAH$%z8x zQBM+NHkPl{jN3kUx?#XdgrS8rO>ox@O&NNQ!U)6k05%0V)e1yk;69*VzxqZG52>yr zDNxCj0h9s23{lnAo?;BB(Tn~yoh{&h&3AxM5dhE7`g-sb{;~~sqbgQ1Ga>YQLPmBA z3f3c7lzS}SJK2872oc3}JI~76UzudcincowHI3)||HuRz7rNaG3pk3#hn`!39Kg+< zM_j1@vYQ+QQ?ERxH{#;At}K&4itdL*Fe7h_6#_5Xz2XK6MWh`ZO4S6xl4muPZdxGR z+|oi1{2H4-Ot8RNRWY!YVmSC$J)!beQwJFN3Z4prkmC9!x?IzIBi+7s z83P)(3p)%J5X&e~>yN>F8DqEJZqLNp*M?B{2>{Zu`2*+k##Nuy>q+sV=eLYR&m2Nj z(X4AmW_2JkrLs#wMp3(hPiXWS&%PPI?4aBjX6AcSY?>aGsgRQO?+9U_;Rl4mGKJcA zA+Zf{W`Eas6J5`{bwgfku% ziYIJreJuQAh6dp!E6UfAVjLV;Mn*;e+Khq*>!_%xj0o+ab#?pzs}`?o7ENTaMi{#M zrGyub`~*A~skd*LOCh~0e+@m39aSqKVsnRgJqBV5qa#@#(kOXr@hT)xw2zgy|IIaz zjlQ#e{`KShR;i%e?$+!H}sTHeVv!RB|C8_8DyC)Xm9GELOECdsEd+q&hh{-{=7l9C-CgJqq0{=Vu3|bj!oz&Q#O$1@ zvI3X_L~UY5MpQvq*dxWKq6fJlKKY}d>w3ysCa)C^(Ay{-%zOcwESq;+(xa>YtO>H$ zUD1#vH{~0oQ3S%(J_%9%^lU%O7#ydh!$Zq1yQ0FYw(9SX2FI-(*Ut_wE@Zcym{F{J>E>@34N8sBxjac3`B!^_YUFfI2)RPC z1o3%Zz~bublI4RdORo<@dwOKhLM5&FC;${Zrl7R)2QT_;S>obg zM{W;G0RTw<)Riv0x4HS>V5#30#zdvigPR}*smv23eAiq<>yopOG9|K;7hh)7{NYmH z=z*nPgOrchHWer_GF3Dv#7(*#DNaS<>hGupcQ6-!kkm2;I)kXiGq&cI&|*ZWL+PdE zY=LmPkb6WwU^#-IRiV^J+$s&8cQq7m-@cXk^beq70NjB^PT>xCY5nCxU0vNMEp;7j zs*j-CWjVfz%KqAv;UtZ~uO&r?w;XHVL^rbc{GAFFZs`dE?9o4? z{1yp6vIaISsh<(J*!Z***btBdJzshqG64YrtAjGG%==AMq3FJznf+ky1OK3qZv)43 zA>aHZQDII_P9PA1xVXOlVQZ{_Q9ytUaB-YmT|?xUfB20h`Q z(xQ#k=-;BAm6vmab*2KLU^RsaWd#Gt*7@$*ef#=s=W~u^gzXem>i!#-dm%OggYECs ztZ$*lR8^5dgaSq!;6>Au$T;fnU{U5`LH_FGqAsjJ$i^lHtG;DySy@z88LXQ{lFy z9z`og0|GB8kf1BepFe-5J*xH_F@Yued3m(rygw(nyU<1p()imvD%z}1*(6F$VUM>y z3a`Y5hnxO=)NX=VtO`cj%Zzl$z-;?|x)yV6N;D#(%CjOT#9a)gncjlAl&kzO{?q4# zvanR=y?xY%fHFr6ahV=`At4{6YS_SF^*e-DvQX@Qr|3;<2Q?lgFgL&z+GMs!V@(!e zxBw}DA{g`=ltMg5#39<>1s%g1@&@V_OOk8I>CMjZUtTy-__ug-ls=E{ie0;}@pie{ zerMU;9g0aRKF0U#*)uPdn}2Ly(wyk`uv~X{|A;QS?AQlZ=9u-*iSo`FIyby+wl-K>-fb}F?q*LjL$T`B{Y z>c>zE_skA<`IEgU79nI*8Ut2KT345xfRNC6cbbR8xRq*YX{laI^Zk51jRD>fkLSKY zq2>>o6X1(2k7P?F!O?W^pG9bBn_XsLDqnsHzp?&QqtYS}j-P(`9O;9HDU|;G`jHN& z5Zbe6F(VSA2}@gBHd=nLz^*aEz{kNkq5ce#^*r<;*Z}y6+9!07I(&7n!oZYLKOAW% zdQ}e#N&makgOUeAs;U})-62~L9<|2B#eFfEo1KkNp!_u$;O(L!cG&tw+yzG=)nP+# z$DHG&se?)`?1vZq zRc{vRu~Ppu|M|p5yld$OJg4qL0YQF15zN*qdNA<=1CSz>s2>^3>GIGNbkNUfZl(fu z2b7V^-2EDle12h$-d5uknE$=SIVy|wJB(nRGM(58eIzav=sJQ)Ixe3D&zZ^WCsE&( zVp3WprZ0Jwm46ODOPS$Rr#GH^)JlRtNE(&n;o?uC@3xIAZ~6WmJrgzXjZyETJnYY~ zX+DUA4$ZGL{d~>&1B$&s{|1$}J76c{JOB91BR-|h-;q~2jD0;}Wb|*jxVX|#a?knY z@a(+3kwIc%#*0XUblGDCI_`VC1>Ob%*wpC2iridSUVq`UApjcUt&i+lb?B;=JMM^9Q^$wt{TiTF?L$iNMO)MeB>CNQ$rK^KUAgs8igO=!NgbW{#)R zzP9xOW(b|T%8#Sr6t<~Hg?k`qpiQSNXGndLDQwz-lrG{+0y}KGzr%HGIV0gTY7R>_ z4j>21hLv`^B53vmMiQ37WntTmsx$^*tBjl+8mP{1TEj(0mjEFvVI4>Zw2O^m;-N=~ z?Vx5Z^u&=me7}GY=Fmd7b!3g4T#C{gEz8l2491y2SrrwTLoc7# zSrb~4tQL76wS2K_oy6qmp3IQSeAhGs<8Ajr6NFho%;K;XpSqoi81us7+)a%iG50QT zAyPfd0fmI(McytuD%3?~ea%&IQ>W_`V(RD#=d~IVC!#`<4*iUM%9JW2pRXRM`+|~) zsOv8u+5djijgEiG1%uVw zRtZ(R62!buaAKlc=q|dXi<6U4PfXO^4b#@Oxh2Y(=+ByXws*OTJj)PbJlqR$*yrKEQ6)(fM}=F}E=jlh67; z=G(9mMf{z5bcGp`CkS9dsD{3;I=90yPdw*WM^&PUvfIG33aZJRrPm}>9Ualf26%Bo z8uVu9VLS2h=k(no`vXDr>5n|QCW9(8Z%3Uj86|++~uW&jpPgl zN8Uf;W5aEi7a$lCtr|7(eV?2XJ7j|CJgSj$)51uX^S*h3^d#nuLDv=9xk(pTu_VV?WQlsBfRS}Q5n!{bUTx=sBnJ(-RmhkCeJf34CUQJ&-e53c%DreQ%uG3Ygw7xd09Vw_K^rY# zIf?)SG-Hzrs#7Y?Ais#%i2m1;>ntj%25xXk!z+5yH_;>EdZFhyTfj_QW-NR zdGlJ!xne&Jga4+vCQ15TJbT~UYrgvH6YJ$V+CPx^YVV|cL7 z6vH({WI>|vZV+OpXWo;Fz?%2VDWghhUFT;Pf1nxV%0S&_C#2rL1_qF^dTkFJet!6; zNXa0is8Mpka^~ac1m2>$4PN+>2m1RDW;{NtbrSvc+_!Tf&ELcaqvaTe1jhtJE?Lxy zrPPmTJ;6KQmaz2FiFTnH67;*?D%d?3q4u0JbsMU->m3Y*&xcNF-L9jYfd=G4j~^GP zpxnUMp##h)+B*j<%Phqb#zNfweU2W)QOX4p@3sZ=@-ujaM12~| z71-w{9}J0%3`$x^NS>YwNE?BDO22+mpd`^q(QIPQ!UIQ{08TP&T)o14442YwO?{^A z_>sDf5&q-*w6GL}3%?s2e%uoqkaB(oVFwj~a&O9sMVf`za`HEE@7Q_ngD6xy3zb2fR?h zAa~`VRIGI9CM`2E>VQp%o`kgsDbI!FpjT?gdi!q)5j6?$$zj<9bd02O_4ntIm=!B! z$noLhd^fB=L2A_w>%-G$pU(N)sO$K{5T#I{eI92syHwMfw#yrb6EqsY)M1WjmNS%o z%RK&s7`)vwI%Z=ybGWH;8*&VIq;X`5qb}$wN}puoSmayL8Pf{;msb#YZiCY(ukwi$ zHtAhHvAD2s>oEsc{ob#;5d@wH2XIO+-f^X*VKc3;@}IEM>dHBKz;D&pC&=Yy&*L!` z`KrEi3psqT1LIEe%Vc5f`fv0?%wN)4H+~08xc)ng9+3QBq*Z{D#ID@F)|M_8IG)2F z!G3GKJmEvu^lMz{G=?o6;J&=9E~=ySIJjLVgy}TfZH+~5quiEXG^xN$x;1b`OMcjX zzua#+5Z>cDcWsxYJ-9-GX>qFf=xL4hoYw(T0sKq-H)^~G-ht2Oh5C#QCZ`|tYjbnW zW3WNa&E&q-Hb}tct4x9mC}Wk5EL~$@OP1R?LE_{zJfE`uHv^Ymb0wFJcy&I z_x}+7KT+YDs!kK{$gU!y|?f86kvuk%kfUx$;OP7mmA;{D)UUv>){&F5rtRWN8t)Pi0FRH#Ifg#D z$f#Yl9iN;e#~rWzIo{xWYf*mZ`no^K$||qwZYC*h)IgV#H+j6q%dhZPzBxX>pe~-Z3#@nW_29ewJA+KM#0X z_sWEQIt`7o=z1_6}NBE7`jnwJ! zn+1<+-6ml$ACVYkVx1wx5x*@n9|bFWnb@>N@1tAY=q(=FyFt?x_Owkat(VbV4Hstn za}D5Ck$9^S?~uY!#F=m`{<2xTvAY9JR(Z~1;Y^d+W@6Wi=NT{J8IVQ92USo7xM<@&> z5V)UT-o)l*RId;M?s|1vTH4G`V^h-@IC!C5Eyaj3n$M;0IzM!q%$d*c#!LeXWG7SX z4yn0Q;sJwrHxNa6!Y!n7-&zAaF9?+=(3%qiStnlf=H%gDw z4L{j*hRg}d_h;S+WM=$qO(3lcm`g#L|3@ke-52(|-4LwwFfF=xyvT1Z$9Kw#i~oYskVBEl@~@q} zE!u(__ZU9hRCUl}`>BKbDLJEuX%f`ldllbQ18PGEyAWs?h9scI`p%M^W z=4~lA1wRV{(1vU-L&du5`)pqLZMeJ>I>xJnYK(}0#f77N%i8AUhQG;~fmr1L1hqeC z<Kmpa#P$-?je~u@(LS^J`|NBj4uQ#>UvHfn%u^+vnHJU(!;!{;pdh ze184bc!Yu;9`xKzTpV^20YN6wgJL(i_$p(g3@l%R4U7iE;@VI>y}Gd@0}YI@VPPcE zJ>aUoyCcdJB5Vw>PwH`pO!K=!MriUHHQ91y@#Gm$ZL${E z?%tU$Zy1>slhSjF1V1i4;;ttIs1Kgp?s$x(Rw(s>Lr-PwJPM5CX48Jx%afO=@`;_l zqj3H_5Bf(O>g~nx!#nqiR-*?+{pWg37H=T9UQ{Y7Z?VB9yny^z);F*vkBm zkDL{fM1P`u<@9-XmVc9}^Ya`!3|~9o@IGeCg(uJ$^_^#)9=^_n8>FiYx3BHmQ7w%d z_VxWNuNNrx^&qCXw?u+1E@blFV8=bfr?pVob~Y!_!8c=j7*^uSCt+PdUUpk6s=t14 z|M`s#L=pG3DNq1c``3`6xEG|uD&x~2L0{Biu0Z=yjtVWbxPLpSoeJ{!g{9@kkwMfQ z5w{yh?%yHi+k-SmefyXqk}P{lhY!~i_5T0S_0>^Teb3vM4k-mhIu(#q8YCn{x&)Mz z?nW982+}2ult{O9cQ;6PcXz|P`Fz*!&zHqooO93R#@_qPerD#GXSxGDK?8e-F{R6y zFtekP7K{J>?&fBhw_ulHHvmT#{ECOB_;d}DVl!%h*$$av%hK6ug<9vyv4si@&!s6L zgtGEk2Y{TK%)@+Vl4mI23er{_bdq@S6wID4WqZ*n#Vsh^JhF&EDd)6nq@y zRu4nI^fNy`LN(8px3HIgF2Pl8pEC-4VrpNNOFLQ|MyvQO?zK!c+FvfuHKBXc`6VCq zXRnmaa@b0Euhf^L;=2{b3Jb56uygGy&sG#zd-?UOJK7CZW8<4p>>y?FjFUZohv; zV-WD&9ncZ;r}+Gj_V#3>zvFkngWs~b75npk5t|AwWSLvRz7($7!OMs9*VF9D%M@y%Fxak4k{w) z^wycn*LfRMkECwqfHgfaNkG_Y6a4FYetagbukk{|Xg;WlOu>hAP1WevE z)~Us3jbxvYkdo{uKD^6`kLG46l2wk}SX`8M2=0yj|>2@$`10n|Xn z!E7QEnPK4J`EU@k`1!a9j}Q^=>jXgx0<7i7{tK52dr?H>#p!zl|IcNx0%hC9O2Nq+ zH^_c#WjD$z*>2rlMyv4>=QvwlT!cxrqY%u#ADe4MuwV}{ zr4?sal%CSy6R;^gLhxKk?*CvQbs6^ZVH*CcoSFI#i+TK?^RnSnmUI~@sU0y@FDXv? zT6B#Pbu~4XhDge9N*~y zeb-_oz;2HaR9%}K_XquxbzuS=7;Fd$@oUfbYQS94oe3Y~cH@R+-kLLZbdz=_`1#1y`L|guWrI$xXyY0<9f7a$k3GAU%R`Y!7Bd#SvCZY4{$7 zwKzd5PL(@Xw)KWOG8isG+4e%hRD~$(5t@<*EIT`@bOWi-(!J-QeZb;!aSnoqokJJ& z4U^UVx{oG2SK>*AB3jO;p7E`-YphO1dfeFe944;caJl#dpW-V|9OH0=Uj5;@>&~l+ zi2iY*wcrmKOzkO5e{zmda8-X#qe~K=$S^?>8w(FxJyu-RsP5pU&|p-*;<&#M5i8>U zc$nkujj-dy&dzQ>m6e+6^-YR|gv1H+!^^{yBVl5h)+vh6TerH)x?84ZY*>Lrg7ebF z;i<<&>&T5J=uzkm>!9dh`!w-pZ6js!Z?HDxalhps8MH{EeOJvLbIVYER=;;? zJE8jGIYB2cg{>F|05}?8uZ^v3(A8G8wVl+UNS^~6uUqvFL;k{HgxClR?1UyM;#UW# ze-0$ZgXwGaytk1cbg;a~wzUtLtiBQiOIc+7zlgl0Z>+%od` zny4{|O*wVJA#mt1h+j9>AHMcJk<+{LjRkOc{7#H%6~$9Lrm%%tD&EV(a2a9OM*EOO zyZ&i&1Z)*w5`@?T^dLjZ&(A#9@*pm?wgo*vRANBgzgd}TPTmm(=yLPSrRpHe542O0 zAql@*z@1$1V8-v`7;)7yNodDP3gHIO6??tv_idxN^p_{leiU=z4X)Vt zp_n%1n3&6LG30Xd_bl*d63JYT=>@g9+@ovtMD_tnmxV2^tX&NZT#Ww>|$027;Qyq7-|niiq+kY_WdB4*o7D+Kjy1vLI)cu~3kPmcv?GQs z@MEsl5dr3KFdqU=4BkLti2kj;O1ikS}m~JcWYHR=Em$c zat2=HozL*kzM{iopGf{Rb4pI+9Pvxi4IqBr+~KxLrZfF?cd#UJro9~r-V3Hr&m8YT zN#!G5Z(JUHvI^L3G#@X0^O}&b5``c+RWA!COGA&}Ah_Y%C|hvO_*%IpdOrL7pGo<^ zH`8*XkQyWo)A|J2yl=>`Bw0VHADGSQgBdNpUy~^JGr;qsVkGDE@s-UVkiYR0v7ddo z%L`mJf5@fcnQ3GTH;L1+v7y)+hx>aa*cHUrPDRKb_i9bYrf*?AlXE)PpbE0v82ABT z?@w+V-h$_6yi9Kkqm~zo#3xldq7_GX%7#qJ&DBR{@g45fBU8TaxCW;ZFxz(m7w7}1 zih+6hi#_?fn^rj$hXY;!msWN)dd6Rnadg*N(aOvtRo?$@!95T(H9&wpXVD4{j1tE(?slwiit3Hf~~*%lI4xLrFOmll*18W`9TY31(Q zMfnS&Zk)`y&Xe^8xMg$vW#PI>~*3c>sE-7POKfA{r8PD^nW z5kaVh&jgkgpHfEVwibb-{9AZ9eK;o(IGA&+>A$4p<@52}wxUsW`meo6iFf-j4*kiYT@ubYx9lSuuIQ=$IOO|1F!D$FD*rXgbJlN0-Is zcdj#nKZI4<4Oi9>GH(%QU*LRiSX_7@#f4x3?158}7UN0OQ!Y}Mu2E>;y22^(U>Ycs zv}pULc=cM?UJ~j8!zs5rj+&e`S|5M=V?D2FVQEBs!U-41(y7;>w?QF{Wok@Rh}Fl` za3}S~>Y~_fta7w-hWt;!Wwzp09DUqIW(n3u05C)tyEs1OU?{N;%80!a_xW7HB@MZ| z^SAe#Z}0C9ydoRfIRmg$Oi3wH0hVh*-r#|S=pmpbq+G6p?(;n*j9|Og`A@^%rH-{w zsD~LxV_x14RApd9OPf{_6gg7d@qwRsYkV?WaBF#Wv`H0G(x{1(4SB)u`|5~9)F-?O z=h*|CClfA?pAU9;^b4BMCJ{RQ6sXYA{fOrydZKu&faQzbT=}ArM{gfM5uG!1jK??- zZeJ1~!Nv&NU){UL;*|n|sb)d(3I8EUp6@T=9=EpUZ}_6iLczq5UpcK~tvo!RQr)!| z4IAgLSJL6vE>6TZ0eEj3Pmf)+umOXA*ylU;xnH$1Pm^C_!z*|y0v&ySfb&m|(wj*) zycMtZ48YAP)h$eW!l-@5bk<0o`A_*ZDIPk~aVX63yUjakQXJ3t?}VnG(WsvVFg_zk z%%p13pn7Zh{F9ygrDtgxt}qQ;m5NpXt2ixtWqE3ONJ|JP+VS})Pk&%uiYe--^8&d0;Y1BziV(M`vz(Q565U>!$~K&_U_mz%0} zd3mzGv&sOl;vX@DWX8W`WmZIeoS@*))CHH5Z|UioP_f(!8S;!XSl*>lf~tjTtx~gI zNe}Cb8#Sy!&pJ!ssygQlGik8yc9_|0?A?bwJS_+53O?M)ht&N z7H$Zzzt`2OtOoy#gRWdzgiibL{8XNx{(#lK5L*!68UnF>@35H|_>UZQGs%K4U;cpa zdS!RxHWD)NIp(F_|{+~1eA^Omb#WN!cF=$K_eDOB~F zu4$?nF7&r&#rQtotl_OtErKp)`aj8HJ2O4~C)x5zDm#qPDuKkLNmS|}c3D#CrZdq3LcMFY30O@ac!X$8LK`-rJKcBglDX?mIAXL6u#fY`8gfbn z@G_g5;b@dzr_h5eP=d}{02x*l1cZLXdxo>;$E&_v!ogfs;RPZKmLInK>cwzr<#^T? z7d_ds6p3J`6&Oj1wZHz*jUR>QY)+7pkbdrL)uv{9&9!}2v_t1-iJ{8p9-t#wuhMlDDQ~4+*(k*vDpNcX(E`a97C&6>+8^z;d+) z3g1#X^F);nc;+6wz|(sILNqYM4;V-=n*B2*<>Vi2^$j1++~KP0qBPHr8_8c|D6!*% zj@sRrEnL!BYA!AVD#noU{>;n2T*QLp#-^rfOgN|lf6EeGjzy<(1Vc+9&qi_{`}@sQ z?Lr5Yd1$g~mb8l#boD;MBR+U9+5uwPhnu)^#XQ0=Lylk$25o7|XDB7~3s0UrS=!gx zy{~pf1v0u_nGfrB)a<~NogjFI`O&)W?lO9UZ+HFSgI(f$?^3$GvbTCtv_Ahm{H>}pMQ^|F>n)YTm1O$}d)frZq?=7EuSW5DkU3sHmnz2mHi8xa63Qb$;YoX{r7Lz^s1y?Zrzub8~Z3`kS*_O;_00 z^W86U#$}i#BRN?RoM)}k!if(zjqNdTu3Ru+WLg!+prPgP)-)x0--GMBf%o+9z zgo);Xry&Gm`)GHpH+|*msl`Ka7Br0lDRJ}dC^T-`9!$Ch+^?g&h;8kiNCA|qzs&xz zMNmpL#cUn9SA+EHeIXGr(N9{qx;pGNj@}E2qG}Tlee)e3=PavuJAxS+MV&}W8nSH; zg(UodR?i9!595O;|3T{Q57W6E7wE&`PYE|QttUnmN|CRJ!>+Hc@ULsD@Cr5V%-_L8 zIoWry&+V=wPQP4D-tpZbGC|?CN=e%cf~uYRiUPK)lSZN-)?+0e>XE6e+$h_lrhK-; z|CAgNBu$haKTLA)8Pq2he2hk?4=I!OxGgKR%I1N=IG+Z{f0jRPj4+JZJyBKQaZplX z6AVw?GxN-}oA95Jw2@70v*Vz?<1MQ^aSSEnqqw@dDr*#6VP)qcKIr^6%jj8JN(SVJ zx&{ZcEQ;|e8?VrE3)fOhi^{*Beu8=SuW?P|Mk4vwO})T*7B2ZL<_HP_1j-)v0^SMy zrSYlnf^0=`L>%mi=cm@*13!fg-xG3}8gtJ9Hfu;BT)guwlY0aHWqGHne41~A1wLeG zV9+0u%WI=2f=q%+eqzL15$dOj(c={bkC2NUUU}w*I6u0y0>^6mF%4W5tr%J^V?>z%2ab z&B@QInI^#auzWPG`==rWvIy>a2+3-9Z*5C9DB0L>XSTQhI<)IvB3(B3cf)y#ZxEE8 z5T}Y`eSEx;*6@8m_9J1l_c2o6-w*HPjO0awwF3IT^vhAi_R@=8TkT3Q$Ck2;xCl7w z>FJs5n}M*c({}vb<>HD4h{ijF#Xj80!&M7oRttxK7=e=}oCs)HEN7#gG&c2YwwV(Q z+`rA5`IL@<1s;!UorSIUUIGMZt=_V#)iq>F)u;k?xZK)!+lBzg0VLP2&=T{WcvOy4L1Ttv7_5T2J;UI zk%0G{oy~KFQM}T4H$BEO%EoZ#h7JoRVY4*VlZjt9E$-V5t#F5nNKT?5qn=Wz1Q9n7 zq6qGB69@=<#C-^wa`WA$E%YAgDFqE0;YHl8ixeViWs0WfWcXu}2emX#;F#DoTyT}=Ov#{1@XBZcM62IZx zFsMp^&r8}I2_;N)jlhrQ2_A3#3sZ179^0!7W)@=BHE-|q8pTj{qnpPjO*&VU*Eo(2 z3hLE-^YeY`7ebzwApSO61R_$q>Z)4e8_&|KmmSoe*WYND6#0E+)^!0ImAitp6ck`m zH2{Y@|KZuF2}Ho}dhWl!x^naRi^18*4X&fsWUv}3Y0|?NdpJ-n_4s4gJS@V>`}k8p z#l}`TrJWBrmo;1}Su&esIHXBZ!ReqG%=OTD%30a{T9KYA-qF(b_O!9|6mSzMc`e=( zQ1J4`;z&qo4r#3pgTU+@v1$z?3(JIaUxuP#&V8*+zMcuQU1D+FFPuQ~$&;WP-(y zro0hBNy8}2?NplA@v1mlHIT&ob5q9=#>Y0KUNJV)KuS}ztz)Sa4}W$(db^%Y%F#>&>9;D zjBC-sX6o>giZMQitLwYiJA&e(q9Qsvy6|6S+S}(MuIJBS92sk;#1Q@srzIt8Q;J{V z8-KkoIQZ~ha0uPq{b>uAd7s_@F_Xj8-u(ydFJHRdFXsHF%rkRy0}l@&Yd{|n0G*)t zu1D>6n^q=}{D~vxt_VGC|AdQmc~{1soaFKrO@ISC@IC$E?=MC66TBEj%brnsz7__( zm_%DWl6w8lcE$q(A}uX0Zq_xzMz(SKKt(Xae*J~k8&Jvqp%!EM+^imfQfNZ{#T(J* zeV?7HMIyRzXMvh7-xpsLEk<`(3o4nfaafY zH3!#*Vg+>IUAertHPB32dl-yPOUo6OHo$ebDT5r!yC5WMNtUdzL^50a1Vzqq-~Dj> z{8!!Prr?eVJ=h;$rBlJ(`cw=IPa?a0rp%G6C<3yv`Jv=pX;%lg$w@-ZzH96Xy#FG#{p6kUs0pOrW~%Cqh`um%Q~ma!dk?pb8RkV za-Lt~%h0V#!FL5jWFf$H_QNJ$7gfRfsgooj=ee7AGhwkWZc^1A^T*J@ z-<8$q+)3+`!=_IvnHA!`7AvEK+%`QP^I>4Xz}+>R-I$*r40PCQJ+7o8XsD>E1H!^+ zfz&(@2SR`Hgt-6Y=%~4~)32-RBcK*a$jL$CsKfhqJ9IacI#2(AmBL-6M?m2!0=suA z@YRvyf&F&kcL^iuYY0(i-jT-uVy;!wS*VduC?B<=MIRavMuE*@R5}<;^e~!p-e2gg z`L^R^b#(J9c?1k%V1yf+md6Ll<9^e|f9J<+C1)EC(|g~l!v7oAwu_%g?T}RITy@3x zj?LcQ8U`_Pp5cV%rIq&Q0dnYf=tEsk(#G?ck-;6a+vkPLZD9wA7d!@rhJi89rl!M+-><&DW4?3+I%cX+?E4^b016P-h(u55AH9O3ODXgWM8zqY& zS1p5`ev7|_e8zgL&}N#Z;vow`pnk$1u&t-f!K#Jm2hDb~?k1salC12Ym z$IUGBBr18*EvHpgz3>caG+(MIo`{So!3GRfn8$)UA^}13rCA}oJW}9uDp64DDBGYr zWKV|_{=1_`WOx|!a&C@Kg3&iZbof4>CPj-|y*+Frr>5tR$q8N9k{>{?6p|5PtzeJ_ zM(Itw^mZKJ>b!<;5)l5Kw#OHy#>{!k|2z2-_Qm*7Y+eAAgAqNc-=l@)RtyZSx?N-M zvPh!8M%&wm3bc0dqt0{E+MTXy!pmqSP9_$Gr&ZfJ!6L^%jzMU!S;M2LWlM9At^Bb@ zlCoELpAq0ZRT&%U1VfLQ8{{KjbwffmuB5qmF6iwa;ReV33VmC1Q=MoeFtp^MJu56I z$FY&#y>9iTf`UWD>dL^a$v=vDk29&@Bwos~Q3?`>gp~k4Kv2-#?{utYPP*2DU0gBL z`rv_|c5m)1=>_X$CTG&%^*6J2qde8+uRoSsgiUi9FI`;N45rzS!^n-+a*HG;)oF!3 zVEYqr$<%orCfnp|RY!dPr%RHUba;N0+5vNvi8qYr-cs4fG*43U46gV1ZcNAcn&G7{ z_IBz3q=1MjG!ZTYlR*Lu z!o1TBC)sO%9CtCWG8wZ{Q30KNsc&k;9&2A1?26OmE;Dj;oyL?xkMrq^%-;c(E>M35*zDolhlyZ2{d_6292 zbk$^@(*ngkNe5odHfxA96KKA811ywh8fSvPM5I{!mo??(na_C&@ex(Jq@b{XYgbxR zdU)P{_jR-nG+G{a3}}m&!`h}~Dfju!dFtF@{qgNm*nN4(BrubEf`g;u6DxV!cadDG zw)3XG11b+i<}Bc-hgs-f^V{*=*}+1Sqz`j?&12yfd^C-Wi?T@7r-TY<@iH zxnZ^jS1teFeS0C`#2~fKqL*HtpNy)|_Mx@n?ZLzPe0S$Tkwqn}nCW&*t&9<4eE7Vx z|H(5-8|His==g1aKzRC{D{(n(9o@nByY(KP+e_PuSMZ2U3s>mJxfOX-Lhq|D8CE>k z;a9<(dCVDw(+7aZO`bj+JZsf?QNe|ts>Q-ZmqZSF0Lp5k)qRw!7JPcaGD6we_t|A5 z9Ip=umY=&FtusbHd1a|<_CL+oQ&sXpL*OyYTZd1FsP|aZE+O4f<;oKMBU8g!_m@St z&I%!NjmcOOVdR576VC&GI?lc(m6gr3URe4y5mUc=*s~C8{g8$`*?7Q3mQUpia-5Ao6*F6&WLx_6?<%&s^=%#o1a-0Pa-vHx%)U{frw=xZrx5cUHG2__wu) zZ`ccCp%*+Jb!8U4Dz<}$BRq8s?kJ~~(p3hEk!0auW0aV@Cl*0&FST=|%IV}Pap~uU z#nkbo5Yx_y#fA$7Gan1;?`xBr?VMQr92zLOpe|jPq^U@<^Dyj>_Te+9F0)JOT(uRh zj=Law5tLO)o4{$IC_)MYf2b-Tyo~k?l4&SXagfi3eoD2D98BCJR+>~un0Wf^Ii;y& zuktVercp;8D@D59w+6FY^0LN*TFY)?A6s+NUPYpDaa9^_Fsyt?Q;2+7OlqOs?C!}h za&JY(5Zkpk(5$JJ$P%{kcJE>RXY{Pr&RfY%Y8Hs^CDL&q`2)qp2fM?$LSNxBXjOP- zL3yWsG8*HcD0fE=uCTs7Q8RCL%f*$a*02|n8?A_resfS{`jCs)elz@&LBsNh4Rv8U zFA5F8g9HDPkh1ktZsN&9DE4!<5eb6A@LcM%ged`+tVwp>sf1#P-L{qzsy)U zwddi`En=2bP`bs!Ll-FH^N04PdQ}k?+^QLY)Wd%MTTGiFRi@RGs$-lg$o`-f8?6+6@IYfM) z@;QauUmBw)a6L#WXT*Ec`%N|6IA#?!XfhNw8j_3{jt)whjJ=KXh(c8R{5f0e_6JUctu(k8B1}h6dZ*-v zEg?DY*Lgt<;~~U{^uzqrf0Mx5Jvmjym5;VDxGy2PI63#EBY@VvgNE5ah#x3@M_Cc%Go!7i~AqF33==he*Ag)OivH zjkVd}?~<~lOt1J?{4=$>o>&N?J2jjmFOFqp@t)fiOupcRq-6z2IfGr6TOAsXUnnG! zZ>Z0G>g~x!8VlE}fX^nlLZv=EVeKM-67ES#m6P)DNp&9jCk~VZE45@l_~4LS-mA_( z*b@)lolpvV25M(>HE=j{1;h^?2h5psV__G9a~)m>kQl00Y-DkFrx~Cf8A@iXWyJON z6i3C{w8udT!V&p+1gph{{joro;muAe%I0t*fk7tv^ZpxRo+~l?fX$w$t&xwszk0q; zXm9k&31pSjB@$cx5;Cwsqo4yat26??G0DOw9?srgykjNsEZ27X&3s1;q`^VqIw@?c zlMU_gTgTM}?Rxb-BJcSXfR3Vk$pDrM10% z8NaNTjvn$+=lY!K%}_F)P{SreD%On0%!*`?6pO?SR`UL?@v^* zi%K4TP`l#b4GtMuXuEFn@bFL2)E>a2?!LaZ{(ejV`S*uP-#yhKNjJK5Ba)v~)Gq#CSs({mGU~HSlW+Oyza!osDI^NJ9t}S|7vzhloWp-k z8A=%x5P{$qAS}xoazO3M?NMe>e>W{)VRMb2OCF+{TLdVRRkwJL!@oCF@>VsJug@s73iIHV?mI<7?2zV0++iDyKq zWb=5c%8F_Rg@uw*j)^C+6E z25CbNnXKSd!UUZyYZvmbRn*S66h~@URB9ZapvQ!gN_AG&VYFg${VX%WZY+Q_n$Irg zJ1vwfH~h#OXg#{*k3+LccWSM2>}^|Gr=mAU_0ebf4=+x?t}3T(a_JklCpiw9{`)qw z%}a5z;DQpa=UOT2?g`Y?u6{^jcecGn4+0Ou%_yNrTReec)SkEe@zUb+O)j~u;1#tmXem@6U&tEwePp-0W7?@ zW|UuhRr8ncXwtw)5dG89(Ns4^4#iZ`g_)U0+w?4Oj{{1k+s~^`Qmc6%ONoKwA+jG-q4P}A zZ@+j?B!ig;Rt*h~4(G6k`FMRB2k%g-zkGS2nHUeQf#*caM&qAs|1rs*|4RdO{jJ;^ zt}KJ>JEMvVYF^DbUocj_Z}r6;PeXCHN@ncf=a;Ly*m~PNHSBL@PqM&x6ATGHkl?n^+eOT6?{aT0p_FYM<}t&8TG zZ`%kk^U10Z(Dde{nbvIQY{M{Rt-G<`tpCIu6bpXOsBy;jkL+mCka)+$$f)1u|CCXy zE>4`xIbCbOn+cQ+y`%mREN{jRrWp-XB+7U=gRbg%R|LuP$wGQ^2$1}sNNS%_#Cy(ecSrufn< z9_vM+dYfuebFLe$24+(-Utx*&29bBMHSPx8d(5l3nLS)KmMO_3eAZR_iPxt-2!1>& zd@SSZlWQ9$wbiRiQ0bIga~*|8hwyQ~Kzg(@?w*3QT0Gan>IT=fY|{P)ZIsPgm91Tx zUoFipRP7R3_HE=wce>t6(orty)olH{tDQXPIm|59YJ){C*zjchS;bvV^qonL{qfma zPoDT2!zco&d8yUHFNdq8Z0*NIZ!?Y~yx*sI6e~{GY`G8rf{3WlPqdsQu66DzTc!rJ zuaCxJANV@i;!BH94f4iQjzz`faR`9GLB0zwo=xhl za?A#N6j`tNMFXqkngS5UaC3L3pTCW!V}Kaaa&sl?FS*8;!TI6YS$lJHswRU1@3e;$ zkPz|%IBIjj5q5Wj^>zJ}Z|nvf$hQa715X5#ABRBL&EDruvx`9;@95|qj`iZ-Ukf@j znGW+8qXmJ(&kWA=l(cYMoj*k3d<1jK@T=+)A-`)dHY%v`?So=PGpu@dhxmXc=|o;*60o{r!F1Okws3+ zZC|z+yu^$fmgFaDehPo=1t*zLRWGK_=Oz-RWeqpm)Vm}mh1-UHt{NF0_m;?ITfaG8 zA}$Iz^`wA3yLgo}(!pb34hhM#rWL(_Ym#f+rz}ah-MLTt!2*9Q8J7Y@N6Id^Y#{6> z^8^5(^mSwZZwMjBjo7JOm$RECy!@TtT~-lI_A6C3^$M|0y!XX+8?uj+ zw%i_6{F(7=J?zDs@4LIZADpR7OiYA>4621ua~$2U71T6(n%k(M2pS105QrdE75!Nd zyYzMW>Ep#=v#*ROxHAN?`*b&f{-|g{I3Tvz%=S9*-#^=L)dj~BOhYN|#Fe9bAD$c^ zACC?RgJKdup4)CGTRrsm^Yg2bm_1tQg!|POR)x1$>0_%UcwhI^W+Jq*mLF+NcVTG9 zI+dT|yuvC01v-BBEjgHgsOgeI%`6h;(x(Rp~-Yw=WjrhWOThaUY$Vy;jSj{~CZ z((;fz&eYTtZ2Qh;rGtZ4R!Y^NHOL7lWv1C~N)p8Lc46n|=Q}qO$GHm{t7IgaIEP-$JYVUyKU} zuZ7WJ|H@yrTr{+!)mZZT-y5FEpYxbB?Cw}gN+jPHC;G9vtel&rS+28v#x~E=#NiHc-MY^ zSt_oacggGa5c7X@#=+RValf_)7;+GBhlrV4nLr!P9Cy7k;Vp7@IJ!$>f4RRT z8F{vcS<9aOke`(Sav-yFbIK652!IP<`_4tRc5nbq^AyiMa`W-60P2aQrDbg^IjKb> z4`}8nw6Vwx!Y+RTv0gHc@Ki~qCE~a)lCNr6Jw*F*@GukHq$Kr)$56X+)-W+<%?Mwy zStHoS{g`eHd{LZq0>5!^XZ-nHKA`ghQIi6ZHx@G6Wvb6i#iuHvwQA^A>3Th{{JSK= zoG#TC*~_J=ZsOONZYN`EN3(+WIa5aW8zS`oa^+&4z1_0}qx?0G%yB$1EB)`*#bG5{)kFWm0`P1BD|?i;JVve&%fT!e&DHi`!5AhGp)X zZV-`mIHRcpFkGe}X95kR42;_2%IxfHtt6a`q@O?E1Krm8l07w?F=}Bt2AL>Pc}gFm z=UV`l4a~s@Y(J$8B^~xqstEl{K3y6MqVPqP8&V?g(pqMeo$`6|RTz-H^T+T9y@kPj z3%q0?hhb}H_vQu0=Yr{R%1z^&icc0vl>Db%-c(E$3Q+z1x1Dj0xC)YQ*{r4&T0J-S$FT1f_^}EH zq9Kf}iO7q2?VkCvv;wWMX*D%!Dx%}V#Oi;ocIy?U`_4CJ!OVr`3w2tLH~bRu<`bTh zkHwWJg=Tc}M+ns#*q&3LWQE$XadIuzlt90(nkr)5+KVUbn(6u3+5Wq`=HmtGoxl{A z^A)SLP>Im@u)KQ9nRpsi6J)Dz&Ye6DCEFjLygC!=Rj1UJJeMOCp!spWo6&)QQzeF3A7^`d!nHsX5XDJJ>&dP_6;43P7)PWuM~#08;B|jRSvfgMVCdcc0AEqGzVF?5C*} zJ~SY&h)x>;!L-t#L-&t5>>br(ow>aH5KmAzJ)KS*NNjlA>~TG3 zsgTntdl17@cnr?GCTQqvAgUJlxK%7&j&W06N3-EwfXey;BP6CCBo1@Q&<*a_^dEH7 zmc-`g|E%c#wMq!DxzqQx7qb}C7Q(F7P_HG_Y;8Dch8(ctfR_lE-k-ddc6ali|1tMp zrmx1SreMOq=G7T@5UB|ozR!5gYi<$^E5>ZJx4mfFT$WV0mw=t`&q;lXN_5o>R}vB{ z$NwvLhZKJC!{nnxj@!sDU|u+yKcVHZV^q@7wTR^S{z^)cu`G1Rvn879WqGwB&HRJs z<=HhcRKX&C6FB)-M$%%k0tM`$Oz5zeax1pwMI*)RYu#N9^@(fcWIy$~$ijWy*`Ajz zRP5yvfD%j&jL%wHh0i-ihD{hOTqYhr7S~W^cX3=cjv}0Glli!oXI~uM#D)AjiV7#^ zac3bz>0O30Nm0#m(`fsfy~-!q>RS;hDT5Fu*X-}Wr|Lj12==)|KftB#`Nr@l*=xzk zw47hmfv7{T9{}R!5?4z2M-T1&d;+Rah6<0Q<{Adty(2DCcf%9DCuUEdogaU2-)jbK z!F_VNKM-J#{|m8 zqN1X(l0*5JRgbH+*nI6qt&=AQQS?fq-?e(&Gv1mgO|BbgV4WwlsMuE_UFVI-MOTbd zrB_c@?p5(`8Q<^{VAn>>O+^R4W`{;|vpAPUwrUv|g%hpF{BhuEX=#-;;-p{s;N%|4 zpHnLW5s;4V?wlzc8FhtYR+w7pz@`tOY+S*wAA-Eo_iLe}<1TQ5_m^oOL9CL`kv1a1 zJ!W>dG?B+$a(njWCjiB9aq#-W-ya1x=pq7-SsaKw1zx04_D&qcsu7t%MRS?*J|C4P zMV#nBuJbWrM>rW0V&>6&-eB=VpXz*l7?QuwcLcGGecJ zxVZ2F9eKhE0fTU_i2Sm&2 z<5Hb)p=#?NQ|9L3*;*D6&kEU;$Og8Dx1gy~i57It^|bTT13T$JNU~2Zc;^vxHT2S| z>Kb&gOSpn9cG{Ed`!L`iyrh*CnERt9I8il_A=7QxXo%#S^GEpg)UIQyoP_vBMCKQ` z5|24GnFi@{7ZTE>P|>FZpnaa@@m>Du4%O;$1{Ft^<_dV*GZRjf)vjUoSxyg@LPE&< zbYQ25bh_c2`d|@fqN{c+{YpoW=OV@Y-7cHSO;JK_7>SJDp9*Lr|3pw)Ln9FeR7EUL zwaiWO`Dr|&=-@lNA~!oXdJ~>grm&EQMsE6vO^Yv!2TvW3KAkqCpP~B;vPPkWCWJm_izTi7!(w+km(QGpP@_g@RQ z2IEt7iTZckG+#p>{AhaepJ|S0zdSOgQVYP5uqA+T5t>~N?0Vv?g^;O6%>H9uU$jCXd9fGb51M)hhv zn8)&r{6L#GL?)7n#sPS&)$;@ua{bTU+}uVVQ%66rRG~4x533&TQ*J1(&dzAs+6y1< zfcPm;xt=_84khCK3^TtwDE#1{Ml|w0&kqAfwc~=4q0)2Vg1n=(9SKb+f{vN%O}-p9 zFUoZ>#}N#z_F`&{BudjOVS1}Fqd3M`(KBDWQpK&ppq;V`D4?pZ2kUEbYZv%0!wgnu9ge%8AC*Usbm2y zmD}m?_bYgiPd7pzfXVZ3TG&E~!v5N*N$z}kCj)qilnjDFo;G;Na)ZE z9+e?^UaPImUUdU+6;VC5&!^ae*GsdcwFWaOuFQyN=``jbY& z$;Bmi52zuY-FHXQj@@KrWH?Mw*g>O1&BAZ5S#j8?I)eC726FWfZV;(6V*a8~w`gQn zqY_Tn`n_PQBFB$5)CeAkQu#Gi$A+dP_Hy5{aF*5dMNA-iIE{v8u=#v>*aO+SKU+MH zDL;h>#@o<CM zmTM>H9D@4$@;w19EwC_R44|6?P2I!5%R}`25LIg{W&0{8M}?dDYdM~ShNB40T?W8~ z=*5IsxRmV?9gpR2Ah0L`E4AJJF`x5YpM?bl;m*&`r)Ol8bF(lpJxYLakc?_c5e6mX@deag zM3fnkyW&RTAO{pKErHOnHCQQ+D@JAkh0M}&yPaHrICa*11{^y$KX8<#G)}43YogvL zHtBmk$P6{AxVc@?n?ow|8PiLzd0Ci#4=ue0yE<3~hih5Kb@%+u51Aj5ahV3ht4*$| zWT4@CSI3{A?q4qt=Z~*sARn@i)`SfF=oWD_?fS<7nOi? zCc4j=X!q2Z6o(fastAHyV82g<=^Ze|5DDAa2(svv8f|B5VOk30dZ_dH1kvMoycBvRbA+XE>nR zPT?}=Kn$z`zUO>$^6Am>a#Df%7-v^wlPh=}bORka#jMh4MSf%7hk1MU!4ZNfTbo}U z6P9C^py+SL5wll5-2Gb9oy^XQ7r2vyAv#wtAFOrwKDZTCyg&EEApXX&Q1qqn>g1qn zLYorE?WPU;ck9FJEBu*-Nx#DVkXAfjly;88YFX~$>fUOHh=|B)w%9r3*CUbW+eHuaV1ndaPR*XN)xI?d zrpDYbU4v5)6)(bW{7|ilN?9^sS}<{ba-s*C3S3@Ym2(%>v%eI8Peekv>8h3ob^>=% z;~~e4UO1O&EKVB#8>z4-&ZkeG;N_JK-m^Omyi!6Mi!o*D%R?l>6n)V=(jTq&$CE_$ zD$!Ph0nl^~?d@K+&_RP{Pk?wgLoCGXak(bmBW-|})YGA;5KtS&MLE~+={fYmp`r*D#ky2%=?yj zhAHdCC}h7?vu{&-yBH{2w9iFJc%uPB$<0$vp5S$_Oky8*4`yZm(CL+9+fLDMC!xTg zAVO$v;s2F%6;N3Eqzlv28+;Ue8F9RdQ<-6bF(-Cfe%-Ea8c zw_L(EH@J6Z&Y3eO_KtldF2?`~r4e~KIUxIM02r~#8`U(Z4l8S8?J{Q_(H*MNxEq2s z8Swe9Jp^x0O~qK)@dke?$^mnJJG9U?D>+^Br>7&Dd-cGkAp_B$6NP6(^)Y*U=jKSJ zKqU$4Rz)_F?01*w2Gf!y{`e7`s#}KkMKbzEbCWPc3u>{?sdL-IFDNYJaX3MJ-OY~A zX3xVrqvhxL5`lELpYFN^gYsZr{&HIL?#`t2cWDY2yU}cwQ!^r%ZGM%pd&0#9OmMkX zR$qA3P0E!_%Bybgr$#PtetP%#NVUdy(BFDX#2)9*v;$|l)|rVe&(#QDLm8ml;6?x0 zc6Sj1VNg92e@qWYjNQZA*j)U9>n49MI#33-48=`R- zVUUfYeIexq5lCqTuvFL-q7!4F$r6V;;BWAF(>5Z4i);P&6HWHuYYA~H zg`)h)3}s!ToF5HeuSw6>daGWu=Zv1H^qZ_}_V(3%>Zc`>Q4c{m(X8B%O})EMJRgQX z+gb```+yL-aUY&~N8TXrXwrN3h4PKON!xDe={ilu2Q9t9aBle@6?M-r;^Gr(v^;2C zAQzW1vmxT@v=3?szx`%Cp5>rDedp)rAMBPZ+)wGVhrM!YyK=K~pK-QxUfs&{G;b_= z?}dGLyNYu@3nPWT-_f}s|Kaw{{f%!^MNVB^Vsx|au|u!%XLOp$A}uihnQ1Xuq}(YD zb^?u^QV!E@!XUA@_zDRL=@<87L=tq!?$C9(X(Ee>CL)5p8ys1QQj_l>sL86`3^}!N z`S?)Bq&27iQ0MS3h=hZO?3?x3hV1f6r|8VWm-Xe=Y3^^AfyrJ|Qpt^$gFChk?GWH8#O?Q%MPp*YuhoJ1FeG zbOsJA5?)g+kE(dd2Pnoy-IHN~)x=yvSP5gn$A@ajX#1Ji8Sx z;i7$Mo9hHQcd#KPeF1Q@fdDl}(vhuG&Q!i*dvECR{{z%@M!n-9;D&Q0D53yrwJ=v9 zCsJbpr7@F>5@xu&FI4SAURF`eaB@@>hPC^rGy-c_sLpjz^1KC@Do+gyd$+f@r_=E0 z{|?n?m>=v9&l>FBa=SK7Qe<+15oY+g>AYerLz>s;lgMHSCnF;RFkZg_`W28ry>HG( zW>`pIs(ivDu0!0w;{(EE4A{b5~Y=CGHMpXacgi>%6z(w zFHUw7dUe=7lCW-5vtsov+`4A9+AzxLzjQ$#kQ^R_E|eLd`s%HifdOf(luVSPru_Rf z{`cf8N`fTOx79z1ut~h&z*gf_kc0~QGwQH9RWYs9&KFAEabdRZMNm3A@+9)_L+Yjh zwPb0(zgFy;PMKEhsEbL-Jo>Dgkg(oFmJ6r0ulizSF3Y>x)c39>$2In$86tJ7VnXQf z_xz}9iN)YwB8x%0a6H0!3tMjg*X}&EdQ$o4mWNI5@pC<^-4dFS#AnT}P{q~+XIM|= zCV{C!I-~f1(Q4E}O4i$T=y-!&k%AJQxGnQfr{rmA?E{l%vu(@yaB!^S?t)bNL^$7J z`b0^_8bC=mHZjTHC#p;mHZ!9x(hc4IhWNK!MxnR2x1H;wHVVNkcY=x08PdNwgw^^( z0rrgw+`2p4|K}1wBC3{+v!#sO(Fwo@*~c*8!qa$i7^!iz@c~^~PwVpT^yI|${PRL! zPPOCNZt1`MeR;5P!+`mVcL9*ZKj`T>N55rc{4+QA5!*e2sH-g#xd;nUh221gA4XBZ zMFy=Sm5!$)7F+Mr#b%|UOcQ@(OLZj63m!YY8mb;$TD>r6eJV23QGNmIqxX}=(Yd(5 z=;p#mRLXZiZG_fWN+NbugZKjMWhm=WnAAJuQr^kmcwBG7{WdTDHmlDY(*`U16>U&K z0iOsJ7|pdGT{t9?dMN2$q|*q#8~fa}>shkH50XtCLBdNMXc2m@(q}jA?2eVdcUE!a8H_lcuPLWHmKzs`DVZa_8;AH}` zYZeO?0@*2vsfQz;oWZf=;>QK5YOXvni{sNL8!sP~xzwoH8mwekX+GD0vkzt? zAysTPSpp&3n`9Z?Efrm^T)l~Gt<@YUtZaw=Py(e4+rPcdxA#{&eOSUHEzM`!QwgmP zyPT=!=9;b6ZxlE=`B@INB*U7MeRtQ@;DlOkD%QaHyzkzf{5FEVObHpy?af$fR|Q#B zniYDc*UrO@-@|Fl4h-0!SK?WkjhLk*HXAg~UQU0$hA(juj&pK2o$Ek3-8inz%K-et zuBYQIGGoR=fh(}e|6K&+d`?A2CoD2DQfK$a#q)8C+p8-j9i5_J0mMLh;41)o5UGqr zB*{`+8jt}fgDwpi<+3&E#%QR0j#pb&PuDwM3%tu1VVLLS#ryb4-vj=atf<=TMHlJo z->^h!VFobSv6wVwW{kMJm?gPTuB5|prVB~jtr{+h?xBN~z&Ic2#$1w{a!1D zNz=S&O<3GH32#qUhJ*9|0r7V_yjf3iOmgZJamm)w$Fqp-t{^XgU}P&OMWfz*iWznL zjaX~lXK<`h_tW$cE!0h)MPA%b*vWup7$?Sha5YX?D{!Dwl~_@5S0RUvw9>(?hmFH5 zS>t)hNfR6U`rR?EJys0{t0U!gQqo<;9yYyBn8#I@1-XE*dO@&zb#!MEA@^h<-|}#) zkWzy0k1CN8#prrF3T>$3xEA|-$IH*(8GgrJIF9S@xd_*TlUJ)-3dQBxvD;UncYzWx zUwKL26RzEm*3(30Q#}pP3W(2r{`|`gey4h2p}PK`Gn%_v1rCWBN}r7M^!sx^*CJea z{JV9P0A^3$HhpH3YJ6ePNJ(kAZfWQ$fEg1NWvizzEgB~ay_ZJ#SE&y_aZ3k5K2l2y ze-IfYPq!LVcKnSkH%-h+r>aPkgpY1HrCy&p=sW3r7cE6=t81uVS=;*k`&@b2;r6{R(=#Q7x=peTyKR~0SqXSmUB_S^EiFv7Es;T`OJR)EdSN5-G8(Lb@ z*Gr#!DSiM=sn}bihe=Yjc1xC%Q-_RAMHouRy#n71IS6D1_YG^^C;$OOOsC{{^QDPq zb1MvPXy-xaUuMe1MLm4f=S1e%!jU<-fS+WX7VnRa2^k$-uu(o83^+t7)85$`gqt!T z>Hb$}>y@IkcexS{LA@ynT$sPO`>R6F-n+?RXeGHGUC-?sixhn2!wt{vl6#7b^HN7Z z4oUg)Dtc1omhQJGTAUcVcceXD)_Yx%ZnnBR;rbw$uv*DF@y`q4po}%`0^|?iIo`krxF30u;FX4n53nrO0 zv?qi@bKy~vfB%?kToB34!KG8@Hd$W_)?UZ2IAMi(+;NG2`v<4Sy`)+nYCtNcEZ9t7 zTU(z~xYdy1$M*cxf-|2g)5!7mUh14_w+E3%LmB=Ln?s~so&JTEC-OCQbx}9ERN?@3 zCkk7A$m~3n3D{XZ9_yY!GJV^8p;gSjZVY~@3zxgg*m9RMo!@7$4nfVEX#YL}L%!d| z8N1PmD(1Qu``OTl6ZSKUeP^xqIx(JiyyU#UhcmKgSgCO+f0ayfU02nk)Ws3o*km9bdI>$g?)%p1TIfQ(Q1T@%+%H~Ii^Y$BivrCo zaGkycM|j8hU$UbA zyRyrji`x;@uc(~DzRl7>F}^-GiZXqL`HIqA*tDrJX}N>%`1UYG`uY~%XHzGbBO9sQ z1C@PRZZFg(3QF_TcUR2BoFs6a2%RvO&@|lq+KqqW@CyHT&&cvT`tVD)d$9HpKYj=kaD0vec;Uu?moVn35|5GbXHij+9+gs*04z+S^I<&Tka>#Z%mBwuBOo?$ z?id~Ljrc_V??5|ifw6x_o)c7f01Ygi~E)I1FXXb3bWAMl2h2<RC4Z zqU?R=K`YTvqfu11p6;IH^ypjcrc$}VPt_bM;!%D^;UyTCbzOR#_vw>r#%S>u;OmEU z2?>$}8W&5yx<@r!tI?VEkHM|we5a$Kv7`U;1_qsa;xc~P7s%#&F{6%&&Bx=IOCCph z5^u57jfqom1dNr)g%99wd@)BriVQN0lHa!KF7MFi&bja@a9ZSWI)-* ztTC%REXow`8aAR{e%pR=_uvi*RqH2zqZj>&BawWF2r}8cDP>5DGz$uT5TM5ViC@0O zPa8%@M7%}DpehxupXTOt;+?ahB?lgKKrBf{ODlcuZER*1`~7=Ph&_{^lo-H$rV

_z1)&cI>k5G)!FET1Z!spL|LPM$bFuYTAb^bV;BAPF9W7gVI`66}~78>ND zDz4T43Mb7L? zd)t4eczBuBNacBTpV4xvGaqw9yy%RyTQ2ZY?j`weI4R$lN?9R{x_y6-C*KlfW-kIt zSe39XAi{$n0KY6NBC@)WRGpQdQ-^lDM%%?<7P#(&YLx_V$8Z{JLV-Mu3{^k$xgq{K-eR@Bqc;QQWDMOC|_C+Wr=ZaGZ-A2 zl`c|@Z!7I5KCC5^_|IkdKj=IE&7Y113<*F}%cja2PdnhqeOPJN^I84WiBL!{*h}}U z5*{l|zq@B)MfdJ+%Cc*OIwDr!f1$N;EM)MzCpY)& zL8`QP?(Wp7HCjC4t?Viq9)P*tQo=OhRd2`3RNkzb|Hm6e-9Ac8dHvOj z#vCM=x}^N>-J_9Q>8~g@9UUcWR%T}JCi<=#ePD=NndHRje(1QjKKi%Uu-+{|9r+Ik z+gT#N=)MD(a<>blja`DgAYz6WD+S4f(?h0aW_{~3Umf>^BW8MoXAy!z0$2U&txFSY zvS>1Qwshb)zN5e$Wxn|INifU(@&QzN2yZ915WRR5w|c8joUI?uEC!-{{wl{+Wo1gm zIHP5y6hq3JC&Dvhoo`6gtIAfsG-PDZmY#=IQQyHmg;Br!nH#ZJ9!fMSh1m7@={PN& z$6XipRz|lvZqjDHB_>9~NXviU_2RI!XeQFwY$r#M!(H%Pqt}o^anGKgDyU10P>{+D zG;nmZ#AhMZt#gD+P{0t*liUv<-G!qRIh*r2vb_$V)MWd6@cv=0_kI4d{Oj988by#K zribi&6`kxxlAnK>Zv|p~P|RA%<7nNpXgKOnJrXbZ3_(vG?P zK5y9V_PIHj>WRC9T_M~#uD|4dA|%2z^&nR~f@eY!wRw~C;kHMU*wYz1zTNXgkTuc? z{-VID*r{uxp5^N1CZxxx>-T1Dh3lzl+^znlZr|UG(ygsAkh}qLKlMj>X5IAr9F^6- zm0o;!^#pVh_HgvLu25ox+;4m$_~C)3l1naAxVpdo(x3?fK9mEZsO!6Ont1VB6>QVm#>v#r_dqCrKH z<|i9(GtElY)A`X@H=puBDt~5S$Ju_`?C~vG+roO^i}vA>`rqIJu`nXu3d6aB!$+7Q zmgC*g%`&g5h)14`_14J}7*x*Ge_aIzaQq#9%%YCWQ~*0*jNVeB+rX%A^$nAx*L=Iz zvoJ!jr3ilXw7$rI6?g-{+<_>>7>IeX+g#YJ$S$Z6ySNu z$lG=X28mkhW+dcoXJJhQb+X|Psg6}3D#+*b_ai!&-J?%Xl$X#0>AA<`Ps59iJjkGjAB_68vy%obWEDI;_oPnBT>b`&O5DS;cjo0|bU zm0e}&W_{P!*={_2PYRgahwXUDQaf3rO);r;m#P5I)e^jLQI==UM_Rf>f6jyKqy=MU z+iSqZ`7MI&{im{WljF>PyQHC!7j8mc^Zi~_eosAh{Aa$tsnLa%jEoG>oQ5^KUluqZ z0?Kq%)mI?=?HJx1nAHwvs_ z=Rue~QY!m5cMxB@SLBv7tU(l|A50;}Pa;_xV;U}c73r8!rYOqbwe0R$Pr-|-C2H8L zy^yJK1!t!4YTzC?FI~A@g7UJmd{$OI0fU-w1_>P<4}=cu8XDL2pCC0!Y&3T z<~INg|J32g4G}@s0(Q=<6%O5^8-r;K_owH&w;7)Hwv7%VuVCRoPHxvZ71bJ?r?(DXoDQOH9Sqw6BYs-?z2`Dt3co zW3giyJ9nnv(bzzYxS{jIw7;f$8lNKuvIRso#IANnI$RBBN;(9*B$T|EsWfktHFz;u zz!9dm48y2b;n~{uuV~=K6T4gc5{O>ukizgN@u_QR$>`~&o7OOMJ&BTa-STr`Ttc8C z9Cs&+7gK?;36K#aYpoaXg}j=E+p$l8v;+akf#7WStEb@pEg!TevNq4uu?DjmxqZ-~ z?0#7EJQSD{^H*QS|2^3;vX?p;5_c+5e-%l<<+ofJcq$w@cm3}#y_fzK-^a)49{hK6 z0~ehJBxSVD&)_P1e!fH^dt8a93@*_X^G_3(4xH9tewacfA%`g_hC@epRv;P@CQaEU zz=FiTPaq?eycQHE;*Dpf>(=eR`1rM6sfn;#92Q17=Iv9+IKl$q8%~M1Ov_Fpo4zb2 z;C6~EcRM!+9QHmI#XEa*wWT{~fT3~&B-}hV09jl77t=;fV2rhs5PxiDT#VG(y!G)V zr4dSb8r6CEDGZhiJUAZ@q?gDm-yuKJi`L4>j{M|gQx{b{yVLNaeF*hzTTR}$oKeuc zA6FrR)+i@`}*c;w`U%VvDIajGY*s^hy)!W)q4|OK;#DK zFKzAZ$$73G=lCwSe)YN^LKh$lkeOX3fD#)?Mv@ip1wkgpIPOno`oMFyUGrT!EA;M~ z7WI!z0!7&zit98T>!1BWAq`PxenIvOOEl3B+^$EC znmy_Mq5O2OA60~TCKh^j<1v|BZFYFyf0r&tJ+pM*C}91rNlzi2zbA%D*5!178}@1? z!Fm~5@L;#Gp5<^pP!l2|8sZl|^#T=V*e?Tl-Ohe_-C-mnu2EFwj0g~;bEWLZ^dZpE z(T#LUffVc%Zkw*vV@eNP;z%hxYSAFdC0ZTY%S8wDA;C)`bV%SV%4;uHarSKABpvJi zsz9v}X8NOskX~h;9hY77`(xNtr(?vb{Z`mVv^l5!u7LBHDt&=cZ3J4TUNc*l#MF7Y zR}#y%o_HFn3N%=+si%ehI&%6>UN9GIsug~9-$lJ8Ol7=1#(R{z<#_mFhqf;jp`2)) zC&Yl#n8kt-sthHYQiO;;rn1e>HqX24i=Icpl2cAx4Ask#E}3SHKiArJiukqQILoO4 z*|J&ZOh5n zPk<7xOs_=>94-XzB@cE*p?eN*X3;-Jr=|l;k7r|w4q(m@emWe2Ty@hlbbEwZexb~( z6{<%Y*4ifJJu6h3v%b1Ny|L((YC$|LfEdpIjGwOG?3QZy{Yx|Nzgv`txyxPt?pMs? zMK||0Jt;8DyOmpdcjUv_1uDw`ZpRYg&-=Q_^aC%zFg&W&MV+CTd;ht=eN+NP)muq? z-ME`>HjvzdA7gF!AL-XN((Zr&mno8e&BET;G_%2m)B{{-%jJo^7ehO+^#dj<4v>^2 z0_!rt%jJr;@_(PtCGyemUt$uCu-D@nHIV|xX8}QIbXrV!w?V< zI1VBHE-Y;c8QT_De)XxNBVgehEYZ~pnr#`ZjTEA60<+0njg=+CUov#f21hzXK|Y>$ z)^Paz6K!E^2!Vxxh6eb;uz@H#u8{58FrC;Q(qUldClNKZ_GK1$UrfOpTNA<=E1kHeV>z;K zfTBTQN{q#E{rm7_ZU*Ak;URawDgVI0fVtYl=L6+UvCy8!&Imu&Ru?a*@Mc(7pKJUU zD`Qs~U^CrcE-3>1U1mub5IyeLo2hgKMpu`|fup~lhSVPOdg1Qa}G zg4pr`*=nyV9f*jw!|m$(#8XOB(xenQW*c9whTnY!7zx$#m4x;|5%T}dBY9uMxe zZr)5mL#>Z1Gk$hJbgkQ4j^gzv5q1ayjqLk8ygPBN#(bdxLl<-7wrNEjHY z1^>z56GAN&6)`vr>S4Ro28T2mD(dPAW@d=cL*K5BTC?=ybpq4Ju9ka5tR@l-wYMt^ z=z`RId?|N#a2H-Dbn7PR?9KNQ{!Er8-6iPP8$o#@I%lgg6P*zKw2k2855`32?*!19 z6sVJCO_2|R*t;VfKRZ-?$r@iG$-UO}%_R4z*eev~z%rpF%4PVma27af^ds>XIvN}5 zUZ_PU25JBx{rJEp5R3mMj2k1$9QaLytsRoaQSB4c@~MctW=n%nFil@bdQ&djea)>| z8b2gTz!Rs;u%55OjMb85J9Poz^bi>k=Fgu$|9iMS+{{VP%gW3Y5kfa$OF3^;&Tb+_ zB)p_^EfJlV8;Q1^pIWAPm~QLx4CsC+G>4l%uO>@>w1Dw0<4vJxW;HK)Cwk1tcZwx> z+rx+XNn>H%V37FqeDl4NQ%(9U*&itY11TUN;OH`!-(XIBD>MhZy;L+bP~hO80*D%v zgTez>kr+Bg+tUp61(eS|#uEb0(N1>|sOfW2Y@cpyS;u!imxUl9dBB$9<&j9Y$c+u% zakpNhIWKu$y2$S~9d{A#0HUR{&_fUzrekK#HIJCQ&Af0<#-lvkxqjucl=(y0eE@*o ze3~|E1sOOyySw?N5ZFO(rW=jr%D>2b0+reB?z}o?OBOG1RnhZWNBau27>wmyO}MLm z-AnuzeLwR~7Y7xw3iLPh*#*)2RoDK6LL}_-b}OB&@X1Pbs{4mCw@E6>Uj79I7~v7> zze8+q|NU^vR=P|&e)Odo@hWPz5Ju={LBr45U!zl1>okVgzNF(z{)vKny{+}DKuy4j z9@P&gkxP$6`u%=JEaK1nrJlWhL0ugrGOS1*nl3^Sd3iJ@CMK}@g3QG4$;kw2emYN* z3U-RHXDt07!~y)?wIF_41W3+e!EwL|VD(oA##*OA9AXv^tj&f80_)u(j|1F08I9`D zJJq3}vg!Mo^+X>n58JDsf*Ussre(XfFp=x{FwVt}zn;#+UPN(tF>A@C>!De!ejm9X z@m;%9nS%hKN=USD;=QwT?ZFGyWUAVGhQ|tXoJYG$jWZ*{boca+txkk6Aj9}{-t%z? zwR&cJ{LjVy9B@+e(kPdMB*cs6dkC+_a;6=$qNSmHUNPzn!SOiTS2=;oeG`@hB^M`7 zVQG(Ae33@>mTcshW011{1g3LY&He!qoAai~ats0GF2cGZrdSvloIf(+BB}weL%~v8 z-ui%_L#0hof=0--Wr&}R-viHEOytaV-PT$(j3x5T;&EU5zE00y+E#pEBtfE4o14y z1Geb?qLvE{-@!skPfrh>*~+=QHy$9sUhQbKzIS)Oy$YvUrnlX$CqD3j)Ac}NW!o%Z zK&z!g@~_rEY9JXfJAYffiBc*ksXW5bqD(9_swlsK(YX5_Rug($U#)OI`AKcvA`&%a zy8}l_5dNt=%**r7u?@!B_k*#eZd!t!-Rpb4V*V;8rjHMIL`(P3;+vuuch40WJT5Jq zUz=M1RET-o4m2Hy0nT2|DV>f5AYGGP2Z0s@TB0EVr5^3$lUzAOln#}hP_6Y3z!0@-==vDCxap{T#sWXug#sGO1GAm}t^qas3-_w$~N zV}x)VzkbC;dPeKi#bVZQMC5HFLB>~lwD(pJ-RmSagYu3O?d3~qKka~(L9Jr-=ZJ`} zLnOZlWcgbL1co2}Wo#n(XyYM+Uhi1q5&sstVP_%TW5qot7hQ7->M|1b7@wM=u$S;N$yt2ltMT@670tw&`(x=&A!6)FpbiMln6DpsS+xFUN8z{!3QQLTDok zo=qeAWtfhe;)N0qMZzTZn||74uM6&am;FM7YuDa${lq>49=YU+-eKD?X+`vX#GPQY zfTKJUOwK$;RMWcqQ*%O2VRVBPRUSkj6{kwf%pbY)+Ie}3JyD0np7Ua+NW+Zf13O#lcLbrsiO=7a*s19frQzdE=SOp`%a2T29af(ea zVEL7>g{v=^a^v|mVAk5o>M6yrjRub@2p!XYrdP4&(J4PYDw*Ez2qUMKLA_{L)}9+= z`DAb>Uj-N+FUM!Y-|yXT!Fvi}1ryAA%du4li3b`|B8n-$${I0LRWpHTu_i=eqsQGy zsb{?Uty4@TmCLmAGS6W?yx!WT!VS+#lwZTjWdGW1fLaUb!L9AcVGBf;7wWi?vz82U zj2IscNLK^};l1hUeg;_26*cqPX^~$Z1~L@z*p`8O2hNmFDVxb9X^NPl{2l-jv@#d| zTM@s`B>n-Lyhnd>^bmA>p@2+px%Nh#*FUtXgmmfN@cVr&9w~p9Xk5c{IBmAVEZT<6 z4%5mnt|TKBIb!EzGk zjpYNxnQgS%7_hX1Rpa4ka*Keo^=8*e?5$ramXQeR1I@ z2B~~cJL-dDjC$gHEYcq@B7qWD($gCRXzvPq3DN0;jU*l(0UEN*2mygiYw|-PXj1qQ z0oxZ&hDls#RQz&YhGfy1nU$?Q66Q(V+xI-#{w$YyVo3OXi)|!sWFz!3SHAHP1 zRS}QT;*oZE(#OapgU4R8%+-D)fZ)KP_*X2{aJ|xum`5RkSfCdm$($>NZAB!Ti@%M6 zt|ESAVLg|;@s%UZw{B*Z`B_)@H#IFKG>PmJ^3S>4kyUgS0Rc1#WmfdSpxmt$KAgQk zQL>^h*;X$D0yz(5c?b}|GRQ9{_bt=b{NbgF;bT!o{M#abRq?A%yg@^6;`df8a@;w; z%Wcv99R3EQbbKx)Y(-3zIu3;Kpsy>(&Z)a-5PVQnKNTjS$pdRaJj> zPIvVo4vX}ejjrySg)k1X6w(cw0)y{-u}y`Wr}{!S%YR4MUEf*%6Z*grc|{bJm*J(2 zM*^f>TBcK$AJB?aIs$kKPs4Y@`hEu_NecqqG@qE_duk4Mb`LuE1yGdA`Rrdv{7ybF zo+dJ)eJ-HeB0D44={i=up$C=YUsQ2`Dop@B#9CA^&4@eC%Uk6t1Za~(W*&85Pa59l z&Tp{gYi~)MS{hH^{1vm{=far0khNm<`5au(Swn1Je+Rjl7}v$Ywa%S8v)iuH-?|{Wtv}jCq{HEtI~8%w;VFPVpGC94KDvnBh`%u~%4k9vatZ=~ayKE|#0B@_bp*T&XJb^x<@LccJJwB7O6l=~uH z3E*$3uo%kghteDnV00JqQDD_DU#3FD9Xt|-_b!&Z@`sfikx2tEk0y%d}_GD z7e4hc*rf=^hnF!5*NJ+`5gGU^>CC6*Fuy1C zPktH>nmtWfux!4`3m6h(WW&=(z*h9AtWd?sxILcISfa!VJ{jP%{_t>@Fg4+c_;Qz= z5=ZXbwofxn=B?Uop8lE|c2s5o>uP*Uy3Yk+a+ltCam(?M-~6k*_6Jv#C=t1znAr}L zO>DyGCDE(cA~rT}0lG-t!mN-ECSE!%`d{%?C@ES@yJ2It$mX5!`W`QgT;P<|gh6VPoZE5nq~unvUa#a%Ag=jDsA9^-46ysC1nqHl3^gjT$27h%5t+rPYx;5RWTCR$EFObM6-f&DQs8<_B0#-Oj;ryZeygdV0k?TRKBo2C(~ST9 zg$%zOJ%1OLO{?kg;nv9O!pK!T1|c*${O?JHY1%oTEqzo2#&6@f1Rb|jNX^@uT2vSt zA3D1pyh6B*@5@2{_Q~?= z<(r6_ON`dHJhO{NiNEVKF+`0SOX?3YJp~_O9#5~(65_6+{?IKbC>-Bu=bHh>k#O0z){whYueb9G7DE! zR$_PQA(Mjx(v&f>N%_@oW3QhwDGvd3`MfoE)`~>X%kr=9(!i7eXyz?re?tC$YJR80 zGAwWGk0AXtha!jkwD13KMp@6oAdMN1o>!71hn{X3{4WcsO&Uygaq{}AD7gR5!s_v( zKnVK(1uvwK|9dQHO6-VNfWP&rm70i7_`fTn<#<%Q|9^3k?N1nRKX3xuGI-Z~ox8Ai zl{YVNge_x(h4kyMUW+xRbj}G8=9dY@hdZPViL*>V8x&7h^vv)S!X#?cvmZ->iXLfm?2JXD$)JW%XjH$xZ^xtE%BKOTa=OKb#mY*<2 zOFtWqZ;r$x1O9U`)Rb76rKRX5YhNY*+49(qTg#O}056adDGY4qYiyQE=A0+3jenEg z9`_e{i86tES_yhD9U_uKgV_ar>*Tu?h~vTzR`1yC%n7oONvoT*|8=+OMiCi4nV^RtM6zSsxo^?GA(KLfpF*3-}LnKeC8_xH&7iiwJYIy6)eKY3Vyn3XD(vhnKr#7{`?% z!?8$xKjB)J6rU%<_$ey}C5Da&mHszb^H;)%qmm{Re}Qn%rAH7-arY|huz!zccc)8a zw?murYP+DV$VDe>b`vbk4zV&sKuCCgsfeo~m=Re*!vEbKcJ$mgPXXl;gjDX?%`Gj( zH~yR4#svMpI&<3n9D3!Jj+r`ow5Fbj~AHK<($^QmXz6U81Z2slH3c){iA!~q79=aSeAtNY!t zmil2fde=t?b0jE@3km=XtI~9!-MV&{T-fgyDXU`V=RfY`9QJXgQO?WIuY*mrqg#T=c-P0{*rmCI;$rIS`D8Rj5IDCIn5yk~szjo@~p2>1=(S+U zY`R+ghJSQwNDOw-k%}Hn3=9`HnsX*#<2R#%?N`FamOkK;MGG7b|NovpZo|cYfQi5=57vZcC2s|Q1&V}JP;j2SK z3{ldDN@<+q4EH8^;fyKqi~n>}@R}$u4J`SrCy+g?&n0T)(MT@?;Tsnsz+JF{F+j`H z9Kv0fRA5_tC>KDd2hT3zt;vWRvG2-a0*sL2sm{|i`pjU`Mbi@xYD=vD6lj>Q!-aQH zDinF$r!W2Y7z0miBw2u0WSn+oAKuMBY&v(gMOYQ#NqONABiSwE35crrFC9+BD*DSO z^hrEvI85Z2r;c3v^e@$3SlsKIbcJK%f=AQ(Z3yj9TI(Ic#O^sY2G9Anec^4dfp6Q7MRI<%v-9)q8h`FT%eGq%EN=G+>|`4l$o{kp3?0gicA|4X zJ{GGJRTI)NFvuo`{$H9^s(g<_^4nRVSdO%%x@4~9KoCuQ88viyp-L2tVe zf-pCdh??fLlhbQ({q4#R}1*4t}Y3{(Y#vqTZa)rm$fcM@+9=K&4VIc zKlx?5GVS6U9hEOa=~q~qfgK{tp^-lwapsNb@r1H*Tdsl*5JK?0{~Kx@)Km?m+@C+6 z<&DVzB#;BNo`yZx>K{K~z;_4~(V3g_`iyP=Sv`*W_)tdQL<$&+=1&6EBD;M-yffeP z+uwWJdL6K~gE#!3eIFCHbl9!jh*>*V9Ev{Uqx)nO;9A=}NODHGWz7$<)*#|xh`77)G-J&3 zx~+v>WM@-SDs9-z3myC2KiuJd+EHNz<+ZvoL%hVDu}lc`%AEYVpJC1S>#2j77;Udc-hY*)@t9x25&VA11ZN=EgceGx z29j8e+Po*&jCvH5a@E%P>J?R-O{4M`WhK$k#zt7QWy^~MSL)2rw@9S8r zh5W9-BF%Zvb9@*VD^=wGV}-g@e$r$S7;7(B!1tmp%@88x?thx~#tP|ks570yK#Rt8 z%9aKWofB6a-}HLw@>iI{2CsI}&mrrpC_-D#z^>gLWM;jdm~kEIk;pcFTDJhgz@NPf z*U63}0bK>{!*L{kHo5vYPNR$QYy)QSyvc|U~A*g18v&B z95`^VCgX__>2e}Z%FQR5eHP&t=awy27|b3S|ap_;(_B+M?J7mu&KK+R&XHjYmU{y`GjNq?PJhpP3YeH$65 zIQSON@=i2bfv^YlRqwMG^X$JRoB(ahH-;zk*zt}Dei6%6dWAfWKzD0M155*O}Dat8mA_`BMsCwRqiFo zO3R9#rDJEi#O@eMwU&i0WzEoExfP_$rb*Z^k?#vWv!eT5agqo~B z>KbGCUV@sNnG5j8f!6A}Io|G@*pdc8T#Yty#Vb^KoP`Z!9G zSsty3N;cRsmv{Yn@h*9|t`sZIiE$^l7GVq>ml=@UVe5nXEs9yHBK+qK*24_bTWec4 z$29zHzk)HX^Kg=S{v4_SE%Z+mCxWZ$W=25ktxtE%3=Es5;uPtHQ`d*X`b|`4>mNnD z8MI>%$=2BMsP|K}B()F0QZN2A)P!b1kuSaR#r6hLgd8oMpQ(AB^%fxfOovDgy_sU= z@+1Hffwxhy%g9G}(uJ?j4z@pv^Z0u(y>ymOr?01()NRhm8I#S^sOIz*kgE3&@u)U; z)OcNO+FmUq@VZe4@7ou4UHZBwo}TgOTWN1&=F}x#KN;2S^1fxnfHXJ;jWCNn;}Z>&!CX~TYj+IID-A|pu#fCn|Mm%n#5y^0F?9_ywsUM*8V{Ppfr zNX|-H+;zeuU*yTj)g$cuvXT-(k2g#Bs*ic3URi|0iuJy-J!5cDC$M%O8{6Rd`ByKo zFGb08C3Z+WN6WBStR-YN;cC{e$b8vc%^0p9J~U&jVNq~*(Yd4hBn|K4ez;7vIJislsqmzyIBNW?XK(cZb)`z86~}3; z^4r!}o7kMZ*(I~#H81}?9UK2nx|ny@9ZLMqbW0>CcqzYn-Yf0gVo{X{qcgj8(z<=u zKp|dZ4D&VYlm6R6BaCkpZV3H8#u~aDUvzb&x%RpCu@(j&t8A$Re0?57Xeh6DRLpNW zYV6ROW&y#HgNMy*ES&-Fc(dxNKv6>cn;er@xRMd`B~K+7<$mf;l>DJC)?|G4UF)T4 zsg~2v8A4d8iQZu_2FmyEnw`Ha=rCpJVG8~2t80|;E-scFn4AO4Vt@Uzc7;7ons!G$ zMu%y41x~%jniSI5g1-;GFF;j#OW3 zAz?5^^G(U~Dxm4e?{LhFqHMkDRtp8jMSAJcD-GK@-|aJ`zcj*LGkZkl{jreJ!FhF) zoqFuxX~!IpmUgzHDs`Byd^vx5il!0~%4?tL!P(x?I>e3bv6*c&Vn6{f?`8>wsnP_W z_izHFO2o)N`Azf~57QCHq%nmuZ;wYjF%C+jmdf$eH1#>&7)bN0>n6~u`|sl|A>HLc zsS8>;3;vYvy1ql%uma!A$E)sGTuQo6j8E=jf7jHIy0SH4!gLebx=KDxpEsa3xaYL1 zmeOF@M3R~Eg_Orz&4%qzaj0@H zsTszWH`CO0*6`S$)8w&H--mB zW{Gd2u8S$c$5jSe3JSzTNAS##&cu61l%Iyk0roY{;3M zZ-)dFE_9|aglt|L`dTt-vkDV-K5xjHI`-*8+Dc635aj>bdXdjfu<=8mF>v556O-Ct zTH5ObXJ$|HO{e{xpxkOt-!WFHerFA&T&hgh`lPDA-%t1^wx#7T$zRF2bmO7`C9i$- z1^yCEEj&^5KQcp6ubFXQ?dEmgI9QKN8ddt%Y5z*iaxP;K`bEOk{C8ulkh6%ZtE-@L zw~Y-Zif&7UWI`AB%Y+ZxWJv9BTTWF~)$gk3K9|-@3dA_lqSN#rpVutITIdANhtWDM z0(-_I{-!OR-p(Va>h>Kiq|(w4fun;`7qQ-g0-X84+MOedo`Mc)SPLt%=k*RV(gXC> z(tXOr&zF#kV7;*gR#bdF-dH_f?O(#KBwpJEa$XWvv<=f`J3+sTpqI4}jt}-JWW>Z0 zj*htgaYpa)HIWYvNr_+cD9lo$P!D%UHWUO&ptw=dQ~L^p$=0VvuRE!d0gUBuydy*k z$x`L0F^a!z^)B^2Z9l=>q_S#2(XzVMw+|@Q|KO6wRM`2Q3gfHy`!X&0oNQZ&C_4q# z&S#mOuPAD9_z7?SHJE9ARCHABZy7&5K(7f2!)H#kf8AXlGJ~S&bxhfQ2#GT0q+v3A zF&`1~+E^p_)H|Ezbq57t%%A0L7L>WqCK>o%6;JtZ){NZ5Zx9qtS zsN7V!y%-iyg2Bp9UPo3so zJQf$fbz~#l)dw<==SgGNTUHs~zyD4nU0eT#&3cknOYrXHSh-gW!WJgie35s#Re&S- z`-g1&e1n6L7bS{QJl`)#Ua}CAPVTF`D8EmKg9$;sX|Lt!j6eQcNxW2={ihfC_Elg(YG-A6p;u|rJLsdrlI{& zb%K5DnY`Z{%7$|9#eLNBlE7>wNex*nBP>p2XnZSIGfi|z>og(A_4)~* z(n?!{%mL{H;BF@=)!SOfS&YU! zV;s7awxXZ6u43j!8`pB+^!Y+-cosQn>nXK@T$;>}Lm`*~t&sdJ(Ke-Oc(^+|G2s-& z22e@m$FiIDI&SsjwP5t8u$#VRW!>$MrTNTBY0?(EJ1f{i-KN3*3bXKT#A{#h> z8&>#bIy~lQ7-l5B^SsI*Pfrt}7}Gz0CeMuPQ-7}2dPx5j5a8$4I(m#o5WJ3AJuy3M z0N(cXE-|E2luonUzqAc2QdF!rpCwn776SzT94&lRT6&>kzyHK&f=gt#90B7&YJWtg zVQJcWhIHfC5aKMa>X6(L`2b&|vmSJ-F5USUzMiZjE9)#iw_+)|%Zf`cI(@lyu`5Cd zAt%p_4`HLq3(%Gp?THC*7!KjTul-T2zd%Gt_`w(-^@~Py}(+zsJaXUb` z%+3765I*{g1ueT*;w-2Jn3{?}gp@<$OJvnNaxa8Bg|@V|F-t?Vs}V8isgbJ)ik(jo;Q!+Nj z>*^A7H%BFjN)-}NQ3^eL!A?FZB=a#NcBfYjCAeo|kq|lI-2~3p&GY@>8Y&FH;e~vL zEl4-=OiI)!yjb-SU;psiZ(;Iey|;FhpuWdDzw0a$VY5HXe;qC(kA(CFNmfEkBaIZt zG87|(@rvOYhmU(s>t0$m>e)7t0I%*BF$fcQH6BVTR6h})n*fVbWVv3$;Q9IaGURq; z*{P2_v~OWyflSbIJRbod$U_WGf*DlYhlT6J5;DIBcgG52_uoxe4%z4m|6meI79npX zIKL}BQodjN>p?s%xb=e=w|t-Rwi|E7e-A7fpqne8?RPz+UG<6S-xEUnv_E?lNMnbx zztw6730id=Z<(;3wA{V6S@v9MBs7Gk?L`;HrIX{lwyhx0h<2V*vCUI~qto5H!?o(2 z`B{?Z704KVewW?R#BARS*+0IaebfunQ=w$hdB0hUD=YWwj$Cu+F#2n)r@SLkQWWSF ze=GlY2fqkf;5}#sYz6IRTiVTShERB8VBQUpI>e-;>`h>Vmbxj2?4dWtpyuWOD=vlW zcL0t4)m$MWVj$x!9w)O>ypgtQ^MDcXN*y>nMz;ZMbcOg9zoi^ z-smoU!1GBTTvJ}FX~hqMA@y&}K4vvFwXIZ6OMdt@zsrsSA06FxEzEo=`JR~2+-Q5m zMX80mbbrXVr#E_i1seyvQ3&O~`D}9h)>p_D&RkyBN2+&NW5E=UOG)V`GMpzI8yq}X zYisngEgtEkS&KSxdhBw!P&$+eUGxQ7p}R%i8Hj5Ktt&=+aHDYU<8tBqhh*D}p_fkcl1O5f)Exl2H#Weerx zGrab($wo#_?mHPNY50OInl1g4H#|JaJv|ag?ROhk({4)W1l8+bZMIj3LqtK{78Rw%wTZKmc;%c)is0Y=A%3REU!?^cRJN=`mb;U_)QQ$bZERRgyRy8>cN8!AAL; z74yKDJDB!$d^uQqU}gy7)}v`P ze4^8)P4hn>_WJ4>W{4_~LobmMikalvP(g6*MzFz0$fEx?BqW4@fG*5g7SncDlLtkJPZg%|LA$bYf->%?FGn=2vs2VJA|Te64qOj;%S8zw zC7QtMOx{*kxVP&G8rlXadkWQnAH_sRb8%9xn_Cb49H(wlSaIcU*oDROfJ0dsnHcN< zyFR3R^VIn*?_O>$CpXn{K>7+ub)%zUjAXOIkj1XL+q5BiiZ_Ad|0DPl@rOX!SKasK zvxyWF+NNy8TLg9#L~y)4tjqP&(=|&W000yf`lp>t&DLhM+UKvCP2;4T?lW{0D0qU8 zGV=dbL%YK!3X^aD{n%b!u0YNs6@M$XvM_Y*Hn`)d#Hdscv}ZTP{Ta(1Llvh)GU^G% z^Jl)G3O1SE#(56$2jS7#O=?5Q+pn%L`lD%4)C@>FMH)1!V4~zRb;v2VW+togvN8{B z+fJauXu+92A7j?km_uu1Tu%TA9M78VQzw5dnA>pkSZY=mW_7&x<7ZW7+=eblX?9o! zURfIgc<*(?S1(e3QO%$BddV8ZsA!68-r)vG50CoxT=pV)hJIsi3=zj;@14Gr$4zS( z7MhKwexfedqa1*2#oln)tLSifxC_Win=+6`W8JU(@br->*3S1crilmtF(&*Q@pH6=xj7;v**I@oqeK5X z4rB&-LpxzzU0rC|(&XfZ69I?YGV%TI8ivXFd5QG8B<Hj2){^jh zseYYVq8W?e?*PDeX8#@?ardR8aHH8)^rVqqDGI}ep1LgcU=c~c6fa%)>+EaBs(pe4 z4pnJ=&KUiee@h{mxq}o5;ZLQc*gGkZJYbXciPg|$#UvU?jbRHAaT~E4bTV*BH~EMp zu_c~@<7S}D#%qQP@^kR~TG^mH1y?l87c?2*>I~dgC%EiZxU)Cz+jpyc*xxac6Z%6; zgm*r8YIV>A#sV82tIIgPpr#dXK zDSgXr+IAGVjzjkwkGr{V2OENC%zL}+vYmV?r&;eZCZv5bb|wv6mp^X$*urN#7*U+B zk7STmA88H0W7zCeU)pu_5BqSOWAPZR#$$Gx@51o$W`~!ux8#v-nJBtOrR8IRq=&v^ z*1!LFQmQ3_BAW2-+ab`DVm@@L6>OTc+N979TSear-_;+u3yTj64>OrLkQTJ~2>snx zblSi={I?0{8IAFUai<4}*Bb25<+Zn;Ub48RRQz(7*i^y}5@{D2q;GShgb@naPo19m zKE`%*h(vMrnd#hE6~Rm=h=2(k(bNe?Y6&4_39-T-w1e+x?C62R23WB=37+LN7kAb5 z5(Mc-1X*uFLJu+m$B`>9=6*nmUqJW%B9Y79fCm?HE;N5XDgONRQQv4Xh4X&%V_bTA zsY1&u3BUoX31=;P>-OzKQsLkN%Eb~6ND>X8R}Y8QW6pM%~zR*g@@Nn0oJKLQ2T4# zpq&$3TTuH^9#_NhJtF*lYfDF1KB}oK$}A{(BzT)(U~MC~+y9*FVg>(FvDdvIO=9jy z*DR%6e}tWO6Tb%f&r9;YhPhUODsoGfru!XBjoUA`NFhKm@#S1KPmMxYa53I>_|QS> z2ae@q;}j~{N9Xw0!$GPyy4?hu8wte2~Xr6y(h@L7IF^+YbzShAFX+S*JL$!73$XeVAvL`2}^S7^deb08n^?k1+DW=>DSwD;W zXuEQ_dIBggVc&ql8$!jaE(=<4f3Ftvs0g9S(>E{_66iJ1DvvXJ9ww;fM;b*hx^gc9 zHi+@E0)}wqAx4 zhMxPLOoUiitmKt@=z6P`W(xj#^gYa|)i6EXu+u|jA1VQ-cjPD)}fR_e)JQf`FxT=iGhra++R-qM7qbZdy_QbRyWDq-qRPg3y=LD^ob|^ZaFL5 zA2%Qm8yDAPTz}1$+hwFFRzGE92u@zx1EINj&vya;2r=1 z-eLYcxmd0_EZ~Z+*xAOe{Dn~A&Xig98IXT?T%gYCSge0D0bFXI{=FR|bULMDUEkyh ztggl{tLs~tRdX3L1(n=Lxdzwmksx`blws(uqlapBZwBGdg2v3GjjWxn39G9h&les< zbW7=a?;!l|zbQ*gUI~)yH|OGyt)JwXvD(2td5d^4o-#N*{ktJO_rCjmlvH;txWsqC z9?F|6)0}W1PN!T;me%O|+kj@&lJauRK|NjFU%KTKiV^|~P=@$ce9k)TntJ1|Fz=MMjZJxWVj>;(esS(^=Zv?eZ`G$v{7*3Y z@}q?Zj~muT!GC)qs?;<>@dWmSXG2cgUduCno`=9x1n*o(p2K49Um7;rr4eq`;ZQ1) zvZj}isnJjuh^Ob_6oqvQC!`K@Kg!oCABS6ARY&I!;)b%@?0apx9rdvPz)M*%9fHI} zO^{&}Q)uZwi;K%l7UZ{yKL#9AQ&C?SV_@%`E0SwyXyI)Kw=a2gM=ECf12Vs==jY8e zssU#kdT_61I~_2)E|cp_UO_*2i-lRA8Y5J1Gs9TeJgBZ*k%&a`sY#dnb;NU?AI`9i z?oQ)iQZ+scq2c3j<3_4iI-?Bs^H!gI*PrU9k$RmhT*DuwegAO}^b+OlNv4069j?o0 zcp6pCH9SAi$SM+nM)EOF#?S&y<<0p(AOD-jD&gm^sn<=(hI6R!AFG5!dg~8fYYO*j&$yehcu2a=b={{d7lH^c%dql13ERQOY-b{vbX2 z;bh$;#HE)F^$yBWONAfNPQ2tz517BceLFTq36U<-DxKDIF6uJ+Rl1AWMj77@u!%sn zQ;Wwkt?DBfnL5m4AO50xaL`-7{AZyJHpeL$7!S|0FF%wTI?^&^Z#OW-&9yxwNw3C} zBfPQL34XRSB7WA?#7E*F2>t8p^-^6{n6qN|bK5&E)_J3l}O5aV8_KIf5mAFh0JR)h`}Fwc&2~M6?(+uo+t> zpCgFZAG|2IajIiFG{QDtk?g^8h{)9SnLxK~W=?jS8Lm(C`D7>|@}9Bu?OU6TfHF_1 zUX8QgYX}JyPo_0QWz?ss4h$^pog4YI`!|eP*{T>C?^I*-vV@l%Ab4;9TrGJyWvMFa zg0q|4oK5>Rs67(e)mF|gUin{p3gs5^J{t^dXMW~<2yMSMi1H^}c`TqE?%OS$l>DN&>^aS15;V?+(}Og|DQTA>(egp1T7!*x5_4t5;hlX0to2@h_$ApLGL&G+{Jx@L& z-Yb1egYCZRXYI&FLbis}_1rBOp{A)?#dU#Mn^jsz zBjpLgu=dcEkU=YrRGjP2Z=y)iL;i6*8)CS1gZP%nGZt%@^~j7P)zLq+$wPgrPya5g zDA=rEbruMbcBc%9lmaa+Z?6ZbCAX=L<6G8^VjF;ZP|8Y)g_ ziSVM9AADOvr5#mp8!AMYf)tuVyfAA% zH$aF_<90r5q3!R}(Us~EEi3DM+MMrUNwMSCw~ansSZ2Pi0<5g<=*`q`Ry&P&n@TCa z6m&RkO34bv(+LYxI0}<%Ln^AORGZp677suB$>R@|09A*2NKy<%NVpudF-)2(GU9I^ z4R$$dq8G~vHh%7*cLrS&ahmnxB5}7>QvkoPzlIfyo0{f3f5w`IZg3UTP-IP>x-}me z!Dvmd;YOfI;>?-?#?;x)<%fSqkYRp~38j&spkp_s6_@i){A(tS0z; zTsya~alhz0#C(QRC7`wGnXIdPsI8%eoZBNIjc0za$A5A{xiaD5gCTV`wdczl2Pn%! z$L^)BJA}C*D5lX5kyR6L$j<8dJLDOypCPK}FI$LO{p)fGoAN2-%M<&%R>FI9 zzLXOS98_^nSA)D@`ym=X_hyKrnu!q$z%0{Z%+1Y8cRM$oB%=SF`K}I?o#M;%jrrJ z6vlAFRrFQ#za?~~&D-Jus(naycrhoT`Os!_9?#E)5`u$+j2a+BklEu3W+&QN-`=;_ z@tA(#|DTW4d^4#EI7`U-X*XFG_V9zIdO_f;=Qa;GP3ZuRsO<2w=f;cfNakFSO0mE8 zLLPX0G%>oMTqKnV^$6-+`Q+@3Y3X+W4uEJ^Q(rm5A}b!%AML_ONh7?$_HlRG$)}Qtqw(C#A9~r1B#l;?8<5J^@>62l?1e|@9<}_ z?QeDzHNdAeAjk3c8r=+}4sUA8I_M#mF=-V(_49lDWE1VuT9LI8b7J0%ZJY~srzV$+ zQ|m_uHbMI-&Sz-Ter8O6H>LT2Pw9p!KE9xG^w4qm{7hq1+Au*=_igDBAG1Jd&b+MM zn2Ot(z;@eeJEXwhi%uzB751k;1_h(6u{VAefI?A;9eSW2W1I>Ju<=eWfaU3k{!kpn79%8bW zWwgb?L9dlP%Q?}^L?sf$nfU2X2=ZT*mosne5aFAD|LbWWluOk`R$00Wwq7NU&H;OK z-`i5_ann;UH%|ppW?$IFk3&C}-XmDlUq$dg-<1`HbqhVT+R#luT=8Vg4k#m@#;?L& zAtBm_TKL{rKBI0x{X3&=sQK6h26I)kvZubC);KGB2THH(x2XA*917^cXJ=kH)olew zh*GS60esc2$`}5be57X;ektPkz?YP6+=$tT2uves%xRu!59|(&uE$3q?GEhzknMb8 zuP!g7m#%afep6(9{XbXC$8Npd5XGf+XZwAWf9JTiD=X@U!k(ftPHhNArbNll{Wfue zYC;7Xd*O)|A*#^#s)-yz0!9`;>ACg!TXtgfxa#jcyVrC>8C|of0`BI;;@AEc zeA0~WA1h|DWZ*#FkIA7vuE{Xf*k{9OH2M-ccnGpJWHdUUtc>X$9i3#BFoeIUsmaXJ zk^mq7qk#eWz`y`4J^lN8iZ9}Mb$ni+-Rj;ejth*v-aZ${xfZNUZRaAg?tS0FuX_++ zhf#Rr=@X41BbEwSo{GndkEBRU;!o{n~NR$FN=$< zscAbsI&FZfU^c3a#+6Cr6546^a63WI91teefQf8HuN;?>mj;iUOMJ;UUMJ!$&Q8_Y zKd7_yBvtkcMM=gOW;J~C@@kQipWl-DWch>r8!w6zBOsm7Muf8U%IpSMU+h`6O;f2Wh`L7TegK8cPY<2|tM{{AeG)ZyOi8v?YA# z^-Nk_6(A>5kd?uhd2tx$x#){QrYMPJ2YTeS%QQW&yomOdSskHAF~JT>&Mphd~c7XMGOlAk}zOca=Mbo-xQT%iH>|2J0a=({@nk~C?D zxP+>FkyiR_C$G1b-moz~pYM~84v1Sg$=qX@NVLi#qPwGXtnp?It`s%-$UsD!>2#b; zQT53hK{NvhZ7w2iqgxz0Jyyt0m&14adbq^Ik=n#ST`z zP9hdp<5TT$OXw}4WjLUk>cf-6bAGa0OGRRz#Rh~c>_Pb_RZ2VmT4STk>PqeLw6nUs zb8kaOw1}`1<+phF>$)ER>m{BDQy4Y?*{HP#40mXF-}=*d(G|JD#;#7memCyx-yW&x z%7-`EQQ3%h1jwo$?b5<&Gn)@7L-kp+vHqOx@Dh>sx=P>i%?BYK#8JW{og?-1&Snr$ ze(dyk({!6L8;e_a?`fxO8hy!AfWuc#Lv?V9sJVT0#S83i0yN5pryYyFW{Da%yxAPn zuDa46r?U|PLsd0{o~UiU!*d~Hfl@yhfMn` zb77>~ihZ&=5z#si96VaTd9~n`NCM>nk2TI>FvHJ;W%I)8&ob1GrJ$-#cK|w+8s!4Zu zo?e3q?>;dT3a_=3i;|UbF#LCx000jY_-(~XD-nnBZBxI2IPps(jb7cfT=co|BT!ub z=x1Q!#kBJh{Pz=pFkmOL{P^StEBL52-%CY8rca_j271ocyM4-eeD55o73o1xXSzfC z{-nzxUW|GmXB*u6iA1#j9v&{3rj{1M@dOZ;s_~_TE5`?Kec+Y*VWazFKzq@2a}~#lV;SDW_iWM{RO-3j40H8 z#vQkzw3P4nSd>XIGp+Twa1dDV+E}46FVnkq1&0pDd6MMeIA-whru~Q4jrS$iX(2#R z`-Ih=(C7yANU$t%)F1$=FOUI9ab?uYvcC6pIeuLb_;;qOeYdd(iFG4bK zeVb=3Njz^O;iCDwTA@N(&cD$sD?e~@&}qJ7?dOlEvmuN~3cVHKTx}*ts?3UkU zTtvcQ&8%!{r?IG6us>vFA&I%Ah}|-yQBYC5e)(_4>1Pv6agp^dnx+C5*_7#Mmlr?uvY=GSRP>u4e1ZktV&Kyl3J`@!Z;c?eUxSb*bod|J5s-FHG(` z;*5}ehSKd{xqiMX57eOb0Ib{tV9Qt>4z80$0cc;ewZ$$zPd}E>2;>mwud56!O-()&G|9ecSE>>G1u=xAo|_g%#IJVDVHpxXW#uKa#%IFw5U-aTyuaS#q0Mtl!7T6KH1`SACUwu zReeugo>L0WZ_; zoG`OEksNWV@Ws%9>e{BSOFzqao^{3+x{_BYtYd3!Brjsl(Z z_&})(?8%GhFcYM80>FHzQ%V~q(h)!4k9hor_mM!*;(w9$!be5uhqF`I009D|dACO- zcH>71uK#`7mE^9&g>vUswvi^Md?P@R zZhZLuau=t7?3^cEW*?)doeeATGvbZldr!|8?~uAxHRO80KZezd*I9LW;;MH@k$HdR&5?Q+7K` z=obR&VIU+4N{@K*UN6eI(Ov*-6|DjB0E%XLkVZY(pRF~Qh}HQ25JR+}oF|-4Akt4N zPQHxv=z*>$p`&XrDMr_qef8R!kB1w_Ty^&X%GFuFI9O`SW5veCDv2Qa`(>isTveu5 zM??LjQ1vHxQWe1DMG8**z>icv4UGflFlGX;cMSK*0)@(}FSU_ot7Af?;>v2sGO`!XK zZ{~g<)xcqI6|>?5YVMkRX2CNjmWGIHnjwJtz~*E$bWQ>I{mZB~n9FHMZ|&Db-g>Lv zOC^os?7pix1IB^;=EvI|K)bU;1WsrA%@RpvMps7Dh6>d3axA^E(9DO2I388Qnup^@ z1Uysb-%3VGWR|X*FlE3bPQKUy zKD_onMtCJ}4<%<;L#d%ij%E1)JiZWFB_*_+=H|46gD=$7)IfrM1Q>?(o0$!Urn&V+ z`zRn-g@tM9=-xq1d*}1m5)IVNT%4U7bK6!-q2E9&20RY;G@#4zcW%n-z&V|xM$1}G=m z&-?p-c76J;m-qs>oV_)33(ONyH#L}v77-xcWD^0R4+U25>^><3{-AgkS%rD$}`u=BQnXZ=fTPP>jtR`H%N#yM!=hWEFNrY$go&fCeXNdTVIXms=GGF=? zKp9e-(e3XTF6Dwf3QSQF2#SZrc&e?P_d0~pNXumV!2-yPpR4C#gUsrsjp}(xp=7QI zV9zA!vhZ2vCFrTpmeRb0r@r>7zRqkzfd0HQxK)8t1bSQV&_Ip^m6W_MDJ>ls9i2V8 zR8~+(0Jn0sR0T3V=RokIi@3Nru%n@+rDkBDXm4L3eKn)+x*k*=U0JDz_QYsuH~SW# z)97m{N2ygpV>$ZHTMX)_U@V|zG+@OIp7|OKV3`QF{^)qO<6SNFL%1L-D8OnR*egsBY%dcj3x~HIEcve$gYsti; z)k2Bd&CRVWH6Fvr!vHAiZO#+1x58y*6Gw@?E-bhq8gUNE>@l;>x73TSF-X7{B5j|Swe|Bwtvy2L{g`i_r}Ya1E_%8OXW zhQ>Vhn|$gxK?}7E_|oL;JM+*sxVeRgOvbxt>rr-+Ff+%jS2bEdG)V~u{9b4q&ihVY z&GZ%N0k9F!5!B@=-3nO?gM+3zK{%0s=pq`9V8nMT(uS>fV*pFyj2 zyDH8hmtQL#>Dn#a0Ul%l4MLQnd#B+l@6GXiaGAOmQIGO~tiZwCB;hybwRL@n*h{^^ zrIaV`b8R;btJ)Rh#gAX((B6a=XzTaKE)oKrH)(>oYjd~CTYAOOGxVaMH#9Dy)}hV` z0bRM1)@|?YPw>a|-`zh;s+?&Xkns17QKsjFU>9pjvheoRfBJR$&|gAIYB3deLV$sJxZ)ukMw)XwBk#vv3M5RNOE4 z)U!+X*}%HPuKMU)JswxbiEM1m;9F1-!*Hp6?*ePiOVMz}&tWe-l`gMad)FTW^^G$N zXnX~m_MC;!LI;QA#-H%|y_EA1TfSfE^MAOOJKYbVe~VeNI<5?i-i&RG)(pGzy-}rV z7lauwA^9Z9eV!ufW(^gQ zAj6KIsA=h>wT7Cr<&PA4@s$?RoJYw$9gXmFB;ce+=nM$m zpQ7_P-H&}H1so^$!*KbC$NY$f>fT9yNA?o12{d_z7I(E@@fc{_RklVxT9zv*5p?&Z zf;H~rC8KR$sw7)3x!%__rsEQ z{%0GCJ;MpBQCvkfPc`J77(x9zSk(~v>;yKi2Q{x_?g^3`EF*GYe_wKH>acH_Ean_> zdkxV1#)eSXM6wAba&e{n?oKpypt48>bqX_teS4M^3VP3KT3Up{?d=+xTKp@^T$JO{ zE$bHHxi_&&gRTC$h)z{r$668*)&up)#2A9jAHze?Ja~ea@*4YkO#_F+UTMhZ*531c z_j^jC^pp3&qP0@xntGEZWCHE<<;BG|fO@b%Lbdmi^T*Z#L)E$7cD2-L+*2!YkE?YF z@J!NJX_vIxO#%~;`^Kcm6Uj{#d1grc4epewE<V?tk zq-$ku{c6q6C)8zB_K@9FJY1lff9llklo`%h0)H{}8+1JSM+WHG-!)11))RUFX0C;6 zOP{eoI#vb!;Ug3F4V<247qTd`a+21ygti^mjeBGe>VZ!1oKN+=thaMC38U_E>};x^ zgAel+7^CUfto;OPiuNTSw5GS{I;AS_54m;b{%!r-M}z|6q3-uK6|s|mXWxG2>fVF* z)UDR;Qo3-4*zsvIdF|#E3*Z2`&)oO9jCKH{OLUe~dTkT;w}q$7m&j}uS1JPwS6U9P zk8S%tL%#lxaFKtm_5TZWZxf{V|A?pM82+CQsu<6k{|&T#mj3^20{?^Z|AX=WgCDP$DJ-RjnPqc}l%w*I*Mo=GNl~SZ z5FULnM93L^b`@@pgqQ@xX&D#@z>(0O291xa6p=Ob6d~co0MVm+sJCeK!iTZpU z|7#`5*K&b9`jFMIT_0`!?zX{a#?W)64yjD9VRRFU!%RVgYCG@Sstu%I4 z_`PA+=uN1)sCFPPSKDm|2t$nz_vD$apA9xu z395bXo$u!u0j=2AqzbkQ`jya~YPA>XhhEn|Lj=Ekq|g$ERgN>Ox6`g@0hz zlT5hyqFqYKGm2OcP%9vdDoK*Avb|XycYXzaZqa9l4>-WYlv4^g_+vFd@*A4PUxL zGc2*)21cu-n3dhxzt|K)&%n;<;rM;wU&dSGx1_17?04U!5MbbyeRji7IU|vychj9_ zB4MO&rY;Lu2Orzy&_w#{?#cVv)jQW~OVN=1v#x({jRmIeDG;nqskVROv**_%`iTy_ zbp8+?@06KVcc4Z&yBr;=XmNbo?kz!bTkU@BJ7$l73nVCfAdYogjS4&(z|o6eUd-7i z!QIopt(YF)(28@P!*WzUBg~{zq@kup*giOuF#r1Hi|85D8HOksEsBO$p&PsYO_#4} zXXtO?mZj~_Z_)oww=N5Wp?mKt4yxot*^^tQ8@q>FCfjr5!iiyJ=`pu-W!-lYlie;7 z(mlr;NeyAmbm70_#zLFv`dmrLq`?Wbq-P^%3v{nvk7KB5jVw*i%KDnqUB1`AB_orT z3e0zD-z~+tK$K5a7T2$JCP7_$wBiaF>5DIrW?r-BFefF=BMB;%3^ymBQ3`yQF&cNRaK%Kf$DaB>grPiUDG7f0^zxglm&zjeET5K= zyZ-V_V@?G!wl2y94p>M@GDvd9%6jklU1Ukg_iaG?G`VX)?Yyx2g)%MA?J4}j!wl%M z2tRs_GI%_`tK}U+`nmVYGR)nJ^IW~zVg<3+&&EbovGaDj}f^*ysFG<`u20$ zp))TPt#w@7I!FkihDY>sLY;H$QSYL+vD#|SZm#p9Tu-o%&Zu3lmxp_D7-~FRh5pxN04{v zu+|M(QWeFdq%ccMN|r+pzPOwOvHXTvjw~!JiXJKahSXu-&}Ld7VUXBO&IxCAw{f~T zld8Ihz?{ylgm-toHx>8gOWWt?OrG23=H{mxN&4_Vjk=z4aBzHR@ol2r*DoKKyss@? z$k{H6*04F%xnW}b1*y={(IFV5R)72a6m1gHOy2)PLcE)w{}Wx}An-b~@;Tty?lti) z!tH@uOI&)BHF>S=5Te0p;?Vl-CovCjH1V6OF+cgMdwR8S=({!Y;3Iu%E6$Xgk9u-) zlKn|s|Km2K4ZG^W7Cty3=@$;3j#b3EvqwV;X{KalRpOA8oYoaqmI(3Hvnuu;f)d`k z+BR-|#?d$@iwv3d&Ucw#>6+3@>Z&;{D%(GE^F6OF7CIa} z{UwM-%YFG3WaD7ANg(@^?a9!ceMtL=kbHSE6l( zk5kX>ord=7CruOM6G-)Mdl^i`M{_H1ukFfuZN4B5PlTU3ST&;OJifJAE0waqLn=HXGV>+|ZY>okf& zIBj(FU3WCa(EZ&_!M3Nu;y4PA=NY}<=&_f$urU;?d&8NAL|E5+bq=Mb+V<_SB_+tN z5`aJ)=?0|u1D=xKe|y{RG_RD-Hz>JJcHv$qO-4UHe2r5DIxSVMsEoGGEHnH2yl?$M zs5SykYjwuK33rI=S-I2A7VPi*J+Fq2$4fc;G<*Js2AXcYa(SVvd(Y@wtXRuhe)4Z` z$g)O6Rx<3_h$GQi8KI5oP@dvMzR|(7$S$M(Q%^UX;C4bvPA3~0*cW!+TT{u)=>G9+ zY!$*06+^!7(SZ5K3{vnyl<-i2-c%xULm81#A^KdElnuK@aZ| z^Ys-9GamW^s$t{;cbGSrRN~UpqvacL;og#ZMWujtmk|{Wk4~6AwbHso@UJ`WUJqO$T4SJ*+WcDsM)sb?L0@9C+j5fQ6 zJ0We~bmRK`!>1tr^{1~-Mvg>IK|v6_;YJ^;8z-Q*mDO%oXz22AM!RaLQ=37n4fKZ7>%s<;LP*}qiqWi+D44SN=+IH|FuC6ulkLJa2AiHxS1yRg>a0;o^=DISh zKi*VQpUf6E-RMz?`=xhqFtJ81RsfftFosXy{%Q?OVwL955c%d%I%^oF&*|oXESVu} z{Q8Bt$xxag!dT1ekh6Hw3zN26g^Gn6ARKM!zV`wxcb8-~i;Xh}cS}`jv16>C1U2u* z?oRp^{!|Uc;%e9F--VO>dhuc-$MwAV*0Gj@nGM_dF0N>4WK!(iJ6zu~0foW-CtvmM zWAar-=IbpXJTUPupWl-DhDOld{v+tEwdiNMO|a{hUD}M#&^npXH&8=S z|Egplfbl7G+n{(S29 zO@c96vPbw8@7F)S@HZ912#-8TfGCu|mdno@Op}3@n(g-d9EJ6~_g(&F5^+w~IMEGr zK3%nemX8c!EZ^A!2=u*lg;bt(ZlKE8$fuB!k!6uijgRAzk%=oPG`+(oBU?M}%Rnpmpx{Ns1lhJWXNQR*?z#go=Y^11GG=h7XF+701qsWjc12om$b)$XvJ znze>ahpn+g2M=)^H;kyQnTAadnx`+2Bq+Hxm~z`KUc(;&);U!z6XHYRL0L#W&rS_r zgE}y446&Ks?8vfD&hGf<4`au%y#1$z?qy|i8E_dDav3&(mp|jO*j7R`G6(aVKN*z)X0cD z`Wt=#$31AXfB6dPM{$4fI6v~g z!UTkE`Jw^XOj#F6K~uVNRyJ&N7iJAPEw=V=3d-9aZ|#eXP;L*7G#}e#P&~Kyf@*pT z?sF$pQAysAmvdM_I3v+awM~PZLju$o7w2?u2|dD*K7al(cwx-Mz!28fd@pd?&pDbf zr$@)Y@S9pC=8>%LL=eGmJxWVLXN+v!h=i|ib43t|t@trjo1tLoPIM{XHJl)ZKii9L zm{;`6-GVI2QmfDN7>4-cBUliZ74>NHF-Vk3A9^owM$N<;ef9*e_fMa(juj(vfImVA z*4Xg0O#E*Nabs%0-LuHIsKjPwrsHz&5 zbG}@B9E7eN>{^*oet{t#)r(J6RMrv-HvrkoiF7>XCtzILF^ZsEU5%7;xnCL zfsI^|67MVWILCi~+t4;sso9p}%Yq31qfpH@*V*=OPl+hVZ1WE52*50uwwIN8b<%V> zEkt>4hyO~;BJh9v%$m=WoVrS(x^JnJpJ(95D0KhP|8~u-hIA zC1SBRUzV#V)2>y-mHXL{#ac?VZIxei?tR~?V>BJcw;SaE#|!1?wo&FGuV{St1PV4ckxGrnuV^N{f`6Cll?*Uo!xY^ znPlR@^x`Zb&=qD8*9gn?iY(BYInxcCKW%fx*S)iIBHw3Hw0on!-uuNJj6p(sbA5dR zJ^W4e&{5U6eh^N2#caqeA|k4cgEQZXVXZs&Su1s9=WMD_x2pQRb;(^#&8%c9QNzr_ zWR0SAYC%m_iEZ`!DwhtVl24g0dS4`0&`<@7d}w!tp!t*z1ysUb1re{MGL3%0tu!ZL zZdBeOpFyXzwSxmp*jGWXHy3|bnl-JhA?uOp=};1GJCGXOaw#TFj_J4<^Idb;D=aF? z>^CE!?{GmhRuTg{ShRop_U+BTTN+djHa2XK`oQCUM45We7F0T1cPJE}m^kVP{1-`w zCDcB+h_Z{4J}c*N_iiF=7=iu2e`lDsxnhhSQ+OR<2*~dx$W<)R;lNukJm6Ri8efZ)@t~ z?agM?i=EQq{G@5aks6`%**gkO$O79gK4HW+At8aRGbUn9&V%#DNfN$W1tMOW$;k$J zU~lv&R+)Rly7jQd%;6!C{c2V@bC-C=_tx`<{M{(9-j3_6V)~){^p_uO{ICfO3=EV> zqESRM=xYm*4tB}V-MG1V8tPibcO&&7ex!#O(fkq1mF-F5d@HojV^JfKt0MiY!xDd^ zb`qnhB$lq8WbQRh7`NR#%>9tU+;k-`M-FLfz0&K_F6%+t7aa-|%lL69viG_bP!I9O z2m8E1Y017*&9yy?Y1_<+E9cu8zbFMMMuleTQfNVOiEGE5h6wAg8J*I$4jI?Bm&p?g zWaA;#6LxinO_$^ghZ}QbODcCETY`w-j*L_VaQ#hy6Z%clx=~--yTX<$A=a3I-AN(h zu30N;K5294Ng{azB6qq7@E)K5_+@W@e_*l_m%`9*pJe| z3RthUAu<0*+Oenwml&*>YV>*Wxi4(~8O9RYsHPM;(I@JjXw{BP!LLYq_%8TZUf^^%xupW{8} zM$#C=>=+mbsKL{k8x@_OMy+pJ>G=rF|G8SOrIreP$xfL%7-%I&-GQ5;TgO`?D^9C6 zuhurxg*3>*^5*xQC}lUnZ^-dvokB_&&FCuz1^L2eigIIrML$&svh^diy2J2P8k`yK ze|d1iS`&$s2XJ_t>76$`S$^|+w;PY$nedq+n(kkq-oA>^l}@JtR*orKNmQz#JpkLaBl zzztV$1-`R;%TV=|Wmy&t0sZeLBbQ}MuOozaa)R@4Y5w}VD^bSZWl00h{qy$Quw)ia zPs^mXWd4Dwk_bw30TeO6ptbB{gWd!tI5jOYcTXlqC#Mx$zUL4TUT}cM-fES$6|h~Toh5t9WVcs0HC6Ce4#fMWGS$yw zkE@FQ$yAi-X7${5VUn$^tp!wM*4)iy^);-xqL^S2V#WP+%{A3lfz#B6-bMMh?r z`*TGpZ>nj=*vFCXdtETn&=iR!7P-o(Yqa-q8*co=w~xh@&){G8^sK@m6f5#fY7V9g zM^6-KAi&hi^lV+)%N6&`12(Td_!x*J;YBTczQ04RC?BPj4?D`16M8~L@*LkqwZpu8N`;FeN;3GM8M$-GebM*M3fVn1c}F8b)FO6#d8xyns0_A zY_USiV`ATT$E+KRSih*aV6*LOQPenmX*NuWPD~uV2s!>MAwk%Fm1I0T>>gg3;W~>j zni?}5ExRbh)(N7ebZaL8(`=ZC+tUc+3yV}g%Upn`5@3HP3^?(OUEe0Rumb3DL+X`$AVhgKM@ z{tBuw!MrNHw3pk2dHHtkA|Mz<@@bwURdsVE#K#lu`-}Dd{w@0Ut+h54(2N>Oq)~&o zb%B8h%j6E>iic)GSKG$;Fdeb>6^k`OY}`3fc%^?^YK%EEp4tY)5wj{E3y0SkNd~%u z=l}5RJiSd|_C5^BY$Wv;6*cQ4Y7D}r35K$%?U=A+jKvWc?LiH%lE#9Hoo5j;+K(?7 z4?|y0T*iEV+re_3yxGrQ)biUTPe=P0I9I+;aC6DprHbge|K6$VMV*%w@BD0Z9udo} zs2F|2PPq_N0xu`|E2$9?B_n**uQli0+2DecHuWZ0eKWDmfUwP+LhZ|`n6nW zOoz7ZyZhaIHN*DNn^J-Ts+jP2AyvFv-yDZoRN1`2OXRCTvJ#RG2lttoMlw0%QZBVl z0;sS`c2ZF1d@R+rB^^JB)sQmhn+(Qn5Cd+aaIoD^Kqv!y1CIjGWC%lg; z5u<5-L269s`l8M~TC55=9Y50rDdN?++u`CsteTF-g>xOqHAd8A&1KGrjW}d?oM*1au({2oMUlhM`?QvVkeVj6Fct4mr-9;@Q z9y*#HqC{BE=v|Hw9ZG4acf~y0z4f1WHmJ?E@x-9Q`7_Lh@-|~o=|zoe2g%=SjmZx> zZ`?3cB@iUm69Gu0qP(14nLa+)c3V68i3x1|5)ZP1ZJrrhN-5nRr%OUIHq3u8zTX;q zZHI^6&R|=8tj+miAjdrOTRn6y6ggBT1p82W*xt#3{mA8Gk5edI`{w%k^y{clcj3*! zZvh*^_n~31&Hir)IU+k<_DILRz%nDi624^vioI`#B$v;o)c(k~e?b5RE95q`zS5sJ z9UAn1XPG|43ZP&{OyDuIb$jE4Tf0a)yD{MiDOp|l1)y~JoOh5PX1!u56%F#zP^rnBDWv~p>kg~f#lHsbYTj{gg?2+eltTuFcP}E(0@w~ z>H4olBqSv4H0+Wo)xI3~Q*68cJ9!Dg(6!(zRPxl|4Qzz2j?Y!Kg^q1=l^WF28_;5(7HZX|q?_2xa@Qxb#&@CyZ4;p{@qURT`U%Xg& z!Y;IXK9OIi84*3X<@WDV|IF_UTL*!{eDAsboIw7V9^Z=>HI&5=qPC9Cr{Q62Ee&w| zd5>eGqSrhCl{IMVOJwtFwvhk*<#NYnb>*$)cG2#t_Q`arR5A~GC_pjU59a=B)K#0u z31UzU(Ds~M9%mi0(BP*2G;FH1$JW#SVzeIbACJG`KUTS+Fw~BGhbJ~49#G%V(&A@i zP|>rnz_nuBgH~u*m?Y?T9j`-7zP_~jmrRlwfK2j|Pd<7ncrR=|Go7%wXq|e{{JVEUB@yQ zK67r^#`vCw8FmXNgW^4J?29azDost~Y64?hO~w1@?v7W=-Rwso-Q1fd;1O%9+5dB> z6NZUp-yZ6wXkY@HYHm3Er?}e1Riyb%KDf1&GGC36?+Wj8xZIC-1=xgy5aKs^y+y%q(eUgFFR~oB`{zP$cN{gOicByQgCVtCy$eJL+sEp5lcg zWPa08nsC=ryiWlCCjaeq7%|maPqewYe7YThZF|Jdm{$bO>N+Q>=1mA3%w{K*auExb zl16xEj1w)zQQX4B#s^b|?wkZR(=-)_&KCvJ$cN-LF(-t3jGbZ2ho0udRId;G4QHFt zw*n`<9R{r4aB|`?COqZ%h7NwIrMro$iFi4p(o_r7#z`FLwv&yISG#P|g?zTHLBsV< zcaP;x#W-{NDD;P`epa`{%$bmoR{9WfWI9r0E}@Hy*7c~xX9(xDZ{quM>{>j|10N#T z$J?_!sg2TQL>L?gQ9R@GP`6Jl84=3ZhavBB#QfyVoCl|p=2l|e=@e6VsOp4{eUHvP z;UD@n{d?c~WobjZsgzQo*yY6QTHdU3>)8}XLn+T;Y1J1euGFty4QxmAv#>;!ucuVs zz9juhhWu>Lj}qc8wabs-Boxo-whfrCb3KfLyLk4*1*PO{cOu-B5ScNda9}I$w+S<> zax2i!kPv^6MW<~B$zt7>OK}%t|3l*QzvQuTaqNceh<|6R@nG8`Lm}}92naD>9Ek8} z<*}Jnblmpv7D28`&5s|jddVQ=g!mVXj89EXO=J2tWZpt=MdjtunUeb0Jx)xD^_sMf zmi!MUDY$4qM@DR}+7(vWQY1Dt3StwHeR`y2rFrSoQYCoSmj^ZD?OB73Es~G2mXgosKI$<{* zb+q^?xFEh$+u#2xv`R_WyUz($go73bk$i@bH8id=` z^%AV#IzJ(y6<>&bD110VfO!HfA&y2jmjho5#v;BC0=zWRGP#95>33QX~<< z5{;sXan$ljyjb-%BGRF5*cSS?p@4b6@IvQZBsiWj6qrugrrtZqeEG&(MAv>ZQ`e7> zVq#+AqoZRxa85@L2|tix37%m$c$}KeLl1X64y%aYlap~sNh9={JjJJTWflJ&qr6?@kW{CdC;9oik&%x3_SB{oIE^V>)$sG=TBIv9cqU4 z!Hm2h(~HJebw7~P6by-)rPneU$*?Z%xF8|aq1>PSN|#Ue{sD!QUs@WRl|}s_QSxxH z=@@tqmJb>ZyQ9eXKc1|=WkW{*^u?dLv}rg|C{D(a^mlM zwH{aSiHNH6Dt}6YT6*+aBBQJ%uyXus@$0kjpX%fy+F0^6Z3yBA z{^M~s)d|POXg+yhQD6x5J_{>IdLcsF@nx+Chwxe8SJ8lo-RQg&vqMF~K2jy#0pwnj zP`HRj5-2;z@MOU)`P`RO$TQyaJ(z*oj`C!#q~JX+&(FJlhz2b8aMILxA0ypa|6MAh zxV^iD!MM4IO^6~gE=p^CdN9MA7(1_aBJM#!?GKSsV+=!)Hxp1%e&lDd?`^1Xe!Xu! zED9T8uo#O)v0fALpV30eUP!FKlc`=5DL|=rz*6UJiUXr`J<_n9eJZKLy8MlBISzg8`fu_K z;Wl>+F@?!&&_}50dpH97{?vQIVE?!{JYo`(mGw?R&SI_Vr?8{da8@G_P&d%T9~c<; z=2!gTUuf%>)PUxB zdGaF|m6w$!l9_GGZCQrsDCwhdnbgIA4ai>N61vA7{3-pX&NmYNO7s!a03>1Cxui5v z(CfkguZV$;FxO8*=Nq6XH8!r;Q+IxE%5)s ziIkLDcu{n{{5gp*ws4)>pUjPg(0=`*tPV9#DLojB;XK9E)m-!TYokShJrvz`kRUnp zJC1G*6p5F4`_>;M(n?-0E-vx_ZyJ|gu_hI#mHacgh-l*$eTjscnvRS2vs$D#cbRRd zyolBsT}LR3S^R0{XVvdvT9J_sQ0ZO7pX*sh(uHFIJM-;Ts5`3}Gf3RLq} zhcm=sexOnWwfJ(Jk}wzXRoK=V==;j&!pLRe?em|j126ZjLHsSK^|GHPg3S7hZ~Jt) zR9jV|70w~z0~t)&2L{W>frnAyeTMBT8T9EP1JtD{LRD&pe#6v0Jg=oCYE*=Ti4Ljb z=;*K#i?pH^vAMg1)C;;-C4E!P&q3ablqsv5x!S}VN2yR(&4&Hr6$xH8p-?YLcX;kY z-SDb{WHzoN0_av?gCGKPIdLmZ6@GvP35H^-!3j;Xzhr<|j)lt514m(oRmC zySuv)gHsa|8TIu<=jZ1ZHa5@3uRdJ(fy$uUwcuBTO&I36?2`2Hmkb$ zbs_iEmg~fpxDoR~D$f%DaR|_1>AC%P>TuZk78Zyhq5!>pn~{bNOrS*5SCeIhg<|gR zb(HK3V8n?UHp9Ow;I}I*;lK%)Jk{2_BBz4VYSDs=VKkrEC#^*$unmmrTbu+HgQ4}b`n1Kcdzi!=e zg^+@R#vxRy?A%;1ZHllYW#xyGSX5S2fcak{;790+ikccCu*@Q*0>;PHJTZ*Czn=bd z4#uu01;HA#b0#JxocY16U(ZdWi-;CIh$p{$4Hje?Dk}WSAY!?<$N%HqW;x;11mw9z6D#j*(V5)qQ6!(CuQ`C86 z9;1(Obyq{~5K<>V3DHN+@iz05`?i!w`&K&$XDAn_$;-*1!Td}$A45T~ZT`Lr0DQ-p zKP`9N*D~uGHNCo8!vcstf6TdqB?z{sry0OK`G5yB&U0_rW}fg?*1Ljy90NJ%m)t{| z*MT7%3wAZIPeU-tG7-Fhz4PQ+;v3a{Kviubz#>wCoHJlZd%n^FgkW9~v9E!v3 zUzVb?hB*XdET3Jtb=~Uw3z&#>U1Uj0}>1;Q)6VfesS_ zgh0i@s?}00n)qZ$_-nm}^BSnkOfZjubzPm+#-)N`bEZP-j#@;00g=<)FInAGd^@}O zX|V_lj=EU4cZZvsk-zv1S3ibA1g2|Sm$m=Ac6$*jk56xis07$9hV3h#cAwP=0zJnz zyRcAvZ20-*)TS5Rl^!+)1w{(46LLmI##wX*C{}6Q6VbNAY0l=_PY80~UI++~nh&Nt zYW&aP;W+sC!GHezd85iY=`LDoVrqDOwqte@RA7L4oM+UxGzLM3gj_ zQj0{BF6C9^&^wMYLoKx(x$;X}xHcaffK?D+)Jh>bEZlswSYl%CxP`P8hs(Quq*8LRuDpxlg}M_MvdC>@d;y=fgF5T z^svR}mEGAlGSy69F>m#nu0`~Vxc2;cHIh+QGuWqU^LF`Rt)r4?--Jg;e*%wk@Zmz; zbLa!x*3hNzk;|3sqg`lXX13ZHhS%SGcLQWVy+~3;<%^1m8yMG(O-*eT%-s>>7>TAU z`}?-gnRL&gbgtgT{*ryR@o%i2l*@oJVZhDGYj4)joTEs1-{N427hNM*HKOk-$MOY_ z-H!w*V3Y+jzpJ?kDWn#k6{)DKWqp5KyB(dK1&)7Q#P96tV!urxPr-Q?&>p7qW>B3K z_0kUO0^hOE=@Nfd5)-z(yzB=Sacu(w7*HIof|!g9DlQ)0%H}3Aa7Lk^+-yv3*>{^M zDfnX3kKpq?$S93zB*c%33Igc@Q%DwE-uhP>OqJ?3mI* zI+7)w1?*qdTzOGh*{8PL=V@Laug@$a$OVa^+hY{h!^Ouq%lD@AL0T>*W_poaLm1so z$lO@;=g*n8a6jw`bTYhI!Jd9!YNwm`xh)SLWa6`d9kT z?0gWLygYss*5JIa#+aUv3-~}{asNR8&R0lj6)e5B{tT{6M;iBcLW_7ady&)*C5D8) z%=fheadR4KADLJNQ~6QAIw>)c)_wNS)zYT5K7MSzyi#t@udl2YPSWFFM7@vMRm18@ zpO`0w=O-b96qNPZYU}N(=wyh_KaEC6CIj1U*FPEr*OBeKt}!t&KM@I=59yf7Ym`d_ zIyD=z+Pi^4VBrHTg^H+I*4yW#^y5-ThgC0PsZxLHZvRT2JW3p+i4@kLp#g3D>a3p?h;TlP_VnS>d6~wek!=2k`}h72 z`$==Av%$L5Ch~8eM~)orKnAoZnEUJM2nkqpS^=;e4hE3QJwa#$$~rp0f(y^irpfX( z+3os%bNIQrTA;V0e~@tS2R%L9su__0)1c!I7P6P-2XL((Ldr>l69LxJ*MB3*p~Wl8 z7>n473XTp{%rM^J<6W(}na?RHr0eS+OD93?QI71=l~Rq7k5ffgCL0tHQko%CuJX^k z^#duw>6Yh6=8lbjqg|D|!Wg&4}| z)m7ZU;NW5RXR557sksm9aY_|oP*@nSC;SSt$OGPjI$&;a#D`mMjw#_10>7hZ!yxPo$ysjhy5yZqIMaK@# zJ*WNI9*32;PLISs__yuP;)CK^i_*P#ZI)*cS}qcS1FKU}N0#*P2pQw}eByX@b@jDL zQNu2ZkP3ikss`ugNPvw5{4+|hj}U1_#=M1ykrdcOZEVAmK$S3N?Tw^Nae&tiIV5K zTX98fr8f{x*_>Zax|EQS%=gpzOh}BUx{4NQjgEqPXEZ3-@T=VfN^$hY&%|F$J0DS_ z+5R|*Qo7^@%V<#QC9TIR5#Bp^krQSzI9z6ue=Q{zUdXVYgs}%5PFM_~s>C}j{Q*l8 zd@ng>fBQgCjSznM!~|)){kR z*pIhKm;?_q7RrbIan6J(KDim?Cw`Rd6#Ir~YwhoPtHOChRm2t_aL?1;YjvLDthN!6 ztbZMgU@IeaS9oI0=D@J3tx3JM)4E^Xsi)_tmn~BVPjp z%|H0mxg-y}(Ja zeOZ^vJM|v^P&XoU`U5)28+6_!Z}Dh2U=on|C$TQAK80Q^_*;HH2MG{%GdLLt6a_H!O;d>t%Rxt4Wz8tp+_mts%!lP4U zV{N(RNKQ|;zYr*>4cZFOspPy)ok8h-ceX1Sb2TIt$3ix6{o-~06P{qKjgF35 z92F=7K_Di2oqOFmXQ=o9<`#6|-%)6UuA;xMx#ew>(s(VSOJ)grWYjVpj2~=uYFw&E-|wNymt~J; zFJIXl>M6)qh=)@@hKhmFR`0Y~$!cz*)7|^U_A;j~?o84qTuN0Q1M|MTDIx|sxM+0_ z5pv>xwL!w?Oy8u*%E}7-*e@hlLTbxcIXF2Zqb?5?n68!q5xhs6&8O=ue&nOmzjyQy zCinef+Pu*FbA?LeBMh4sWt79e4&|V+4*QER0S#V(<%LRn?-z&H$Q}6KWI$ASeK6SF zpm%vlm^O`2+w8+Wi_eWMITZvWVAV6}4IfX4PY^8{0U6V?+wPOanxC}Q7fO`axPqQTDPr>%~Fr}+zi`hVV|S+dB$laXePUidU0 zTT{mCm#-_;r4?3eP16rVo-SKP^buZW#|Cj^FS)(L*WfM!ZOD_`v*O;C3kehxc_9$Z z;&HOWsQdo6($e2sBp5!c&!#0Z{Xe5qx)xaL61n%brG`DX%~Hj=6YOh?`^wn)EZ^6Bx_cUQLO_=~hWd_$fq}uY(2`H-4^mFGCN4n|=8eYQyyZjV zYGLf`cdh^aPhs2ti}jcD*S^PQT)8G;v5_|YZ~XsD+JLROpAOU!gz*$TS1QC(Q$ix! zsquJ{A8zlyzAY|ZqviUSipK_8(JiD7niPkPOMeK|M^5IL5=pALU)gJ3XD=n@C|y@; zG(Q)Y?hJ?KUc7LltWAIe3s~Q8q~THkY(B*klX!ev9fm3gnN^hB&>+`tEO1OSqe4m=Es2RmO z_eyLI{W-7BPC2#o(GcNALhPjX`L>&q_{73e>)sW-%qF?teM>+_U0Q&UHSzs3xmBUL zGqwhkf3^F*liH~SI8+ci8O|Z{kK@&Uly4_z@Wh`LQ9=kN zek9K+LMjU^37;?h`k5L(lU%lf*adNZ{cI`+2GmF`A> z9bq7=uC>kH=gKRj{1&P_v(#yJegb1#DMf@?7<gtnk(086VGVq)P>Dp1?SV3G;Mm0jd6z@*3b}wEU`&(n3 zu6-vVf{q3X-oNJN2KdiNTT4rSy)tte+$Ve6+o%u$0Raym-)Ie}K=?^8th49B9PUT1 zI+nRP-T350?P78=6Y}|9hi4twda@wt6cK{IuH2i8Q#p31^WMSjZmB~4Xb|Jgfh7AL zsrjoLLfPG$2v33D8{tER9_tp24t{$(k-sriGARziFv=YrG_~)JMF*zaq3*807?E-* zQiobT@wVMdnKm1~W)#8%vR+9rl&5v~Fr4OlG41j338t91C9m4TkCuOTE>(?Z|M)f1 zMUba~#b{u)DxY|0s##@$Bex4T=WcMIcBkkeQrfc8t_KF*z~JB;;xmw3r0H17Ikm@V zRZScjIiF-}oP}srJxg98)hSf>2?G@s`cXEGqA`72DLi>-`Q}}Bj;b;v6A$&eJ(aB< zd%%roK`{&_@keU8+*e84#U2@iZCgi1aH683Vq|DQL?*DPsOZb_3LvB(r&{1i@FV@U zj&q-qrKYSLY|83KDGr{^3nb4MS~cnuolgNVg05-0=Xna`0ij21*WcfG z$k%Q^ECpfNmSR<5{xt4}BK(1SBwqlgif3N&aDUknX{1D+!bvigEB|aB!HI59+vdND zEaLm8)_ev4E|7M0eIus_KnIjtHl~5tKJI7!U{9yQLfH)UB9-^=pMqWKTC<`R&fzGH z_bl)UHY=A(4*GnB??~b41QB7VDQDQt>AskcovZEMZy<0{+o3-p#pgfXI(M(1$tENc zQ^nCKWUv}})4$hx>;h**Be0E3ww?K`OkgnK;9kH1zSJmUYB3SyhxngtS=S`E@7Bf%QapVuzI81U8t{=OAt6pA9I(lrHQs-8n10(3w$ zs}3SyRY&7IHV!#*7sVF#+R9Vt@rXknY^Z0a%<$*6&Blj)s9P?Z{S%l_DMKHLmV1nk)gpwL_rx#l6c{NpQh`l7uhQGm2R5YBgHHX<}LHWLHQM&!Hv!0fCqD6Br5BR08y_=v;7mTd$qq}$Q2HC+nS>Cwc1 z?);-ycAm&w;Hj?pO+K_0C5`UpJWNdRtr*=^69F@J z7Vo!%A0|iO^l_lS{}HVJJ72{35ue@VGwbJ1UF+{zj3CkO5zX-)^6RAF^obqnXqoA% z(VerF{=%?EgMV`jx*OPoT7l#)E~s}`73X(l{`!?v18Ce#c6N3ePAjR7FptXb zraZinfV!fxwwk~2Al@Yp&rcG?7sdGqu(2J|sAPRAGfYXPzZa-v!QXEvg1TC5Rg$5i zzUy9eXN|Yj+M zU>V@izS&r)c!)4U`J9;g7&go65_QhgRq(e|)cl*qyMnrWN#KJhc39mUV@z{j8KV#8 zgkcD#?<2>@U)`la(BxUAaZO+SX5a$V>%{Jsv)vXf+fLr820EnDgE@KDssikaJ|4lVr{){eCw z&ayNACSWY3X6kr{qDcP&Z@l@A4+`sx`?ty_Zx4#cyIu0w?48>hQTE&7+EMIz%^8j{ z!piQmbN6!Kt5aN{E>JZ9JruT?Qo@Jnyu$^lio&11yVym6Rr-s-o3~T%KI&$DnsJKX zA7|*4j(-Et?W^f>nQz)ArGLuZVTl|}2OZExZnwunYDn zD9j8#sPpn=q%QTYPov2yjiSK1$alW<>JE#B}VN}a9+!mzkF#x3{I!ergETAM2vCHz4N z*0O)l+%nEW>GWZN1}VV&k65urW>r<(_}1AqcUN|{jt=tZ&z-Tir%v96>T&vgzkO9^ zi3akA^t+(=Qzx%F11v&)i-?g=VWSb#Gw4ZQPJE4Zej#U9;J|*W6Vj~oasdclrP~yA z1gDha&ldAjA}1ru>&gU#&TYbAdyZ)@FD_DcU`Q#xV7_U)@-tTV1oo@P?VC z)+*w7V=En82njYVFsz9U4<{o_N!!wxFc9@nLh##Le5}69wT-kVyuW1baSBAz{%x9n z4ozw89g4q^VIGQPeu1x?%2#mQUV6+xn>%uEkOv-%Ph))zZJn68_kUNYzcq4-(IO?rjLHwy-aok}Ef(<$H*My#;jg5Xw%>oHe&b^cZz}c%;8ho?= z-p&2-Ogqwu?sdhb=hROhe`OyQ3B>5~#E?s%2>|z4xed9izg0}%5VW}sY zCnN+5)I!0|f7(jj^nt@{f2Ovy4_VpsS|Tj+W8e(L1#D}SzA{jA#?YwKZHrod?lR1f zCIbH%(!6_hb#;AzrkcF4i>cc{E)$jiT9%1Yt=QB^qrurwRO zr%!?I`V-h>v$w#y@Tq#@84HK#n3_`CR1)cB(^oe3nV>NNft~bJkLhL7&8=(cL<@W9 z%7ja}nE^#EI|eQFgv)2X8l!YiIIu^+2nH)rOBKCaV$1K6$XDl}T!{7WV=J_GGN1XF zQX-0|fUxMGNX>yY6pNpG`G+y#TkD-!zw|mn3Aur*$3(TRjt*6{jA+7g%odShKvX_a z%GVP?fL$dfrWId#Y5y6C?a$~tL(&u|wFtY)L$qkPbi_jF1pTi~AkWK23n%`Km&M~J zIW=fJ)gHAZDTBl?3kwUoSGBAGr@y{w6R8@7c;cYP;u zRgimX%(*Q#2NowUJu>YaKkWO1f8(VZ^Rck^2UQBPwma(*YlC8~AOYYVbwh~$R2Z1z z5sJanB;+F{PYn-BQ8tm2{P{Y@|7kpsW<+FN7Wl0kM$xct{Y-gS^LIv(p{~H}vp1&ZEY}8vPVS_&HY$e{f?_b+n;c2}826nrwOUj2))b zd_w1UjrIF;J4T4i<0rIwqJHb8n~wJkv+SqxeRjU7O$a9LEQW+y5asP(mhxzC>KkiB zaISqNKZn_2u|N7rA)tc>nl&4sWZ$3N&99ZupdqCeXbyHLx6w!iGxa^p)z{I{QP$Kn zJ#{QCEX-v32s)1Pa7X@7HM%Z-G9g$sM$ZcD80am~cCBwa#Wg$hJq@dpgDy%Q2qMUY z&T*dQ9L*-h@x!FrR;0-dpS?~Majkg*+uq($ihud~^^{D$c&w(T{=#I^J&7~cUa88& zpZh&AXj$O$b5^9t`HSZHb4tPc$;@wdnuswyzL=rCxzTZEngB^+?)d@}I%nN-Pca>Vm zP{;$+PsXrCe$h1A%R-e?4%c65GfnFTE2pMERK%n-&Vl+a2%kzHtLsO0u68~6 zViMQ&RMrRp8)YK#_nQ}Y3y5@#!NAI(|L7uQ<-l}V%PSr>0MR^e z^7l_?=$I;S&oeYo2y2-dd(EtSM#v36;UK@|wAjYg$dL>Ygk3$B>i$*o8AO>NdDM@* zk6w&z7bN4l1)?VH;)QJW-5C8`7$>$w?n;heqfgosnOoaA6{>nQIMf^{7CJ=r`hqkd z@%BRWJPVJK_Vu#$nH8&IR&Us^uTS1r+-k2wA_^b-xVS*qRX0Cu7He?DU>gCUj`5pV zP&_+FQjvToO6yn%dt%6!w8wvSD5>pSoWwy&VIr&#XMZ!GGlB4REqk4cYLHL5LmcCb z?v#7i*7JxMH5ZVS@yB$&JFUx< z1q0#7>&6*K4^USnA#~F_Vy}EFMWI(b67wzMB3*B1Y$MC}yy7LDdkR%X ztf(TeXlKSt%Pcn(-DI-;4kT!{UDJdYFe(?*ZuROgnWkYLSs^?tX2 zTASGRwkAkF)oieQn_;;oU0B2;*S@)Gs3F!>V*yzu>UiXT=!(L8LOYI#KV{T&S(G?9 zEfwi)W>=X$aH>~-i73x*9!KUn==)l2vOjwCs7x++;b|BW}hI+f|> z<8c-vufu8CV*TynC}>UN<>mD?mLq^T9(#ILJ<~|tT=KPyh_Evzi`ce)t2B%P+toq7 z{8B0RkW1;Z9zo7?9|Zyr#Wa}`q(4&}7Gw3M#6js4*nvTFi;J70LKOFZ(K8*I^x)}1 z_H`zUpr|MVBkOr(NB7*H1oX#KS*wRR)RVl~WH9(i79EWgm7FY}7!>oD7zskg6qPkk zQt4Eu#s$<156UB@3L2l#cUG3r((IJ-UNR{!C?kayk`{1r**PQlN&HsU)sK9zet71e zf&b`kA0B%qP)$q@W3QI0?+sX8Q&tkf%Bitd{=%|p;|)XI=0OEr+M`6kS;TX_Ciy#q zlwA>3;&HWrO&7%Y9ghTG9CGkSjo4BT&)%?-(#`ZvY&n1JO>Jgo=B7at?KS)NxW`C3 zOp#1T;Q{K1px{I1`DumPtwku)mPLhp)*^P2mNbtD(D&+pI>2>_HMAi?N{m91rP)>rZ+gj6;lMyFkrI+d(8}p5;u`IpZanmky`vZ`kFPKZlqlA zwTP`e;{UXWl7*LvWTxvN&ykB*EdN+`%4z1XM11y-u@V#m{2uaEnW;I6Fpwm`8@prK zzQFW$+}zn=w^>&B1k#5tAf`Y%*x|| zfmtWW|M?24skC$^zxJrwX|V1BDt4NE2&-4$%R7i!-yZ(d+5FDG(Q!YC-OIvO3m4{F=(Z4$;3-5hSr$-7yH%O9ZP!M2P(%R{iSdQB z6ZY5KBnMq1lP^A3R#Jc@HDI0lWL^HWw&4tIZKC4O{DhX`wk*tdV8FJDo*pC09U29= z{U|xS1hlt6E7j<`M#=%f(!`YbgSdt;r2hp=x;{xp*b354nsV@u)* zcJgVqDBg2R+5LxN2U^)sdeQEB#Bo8(bv^&7YeL-?`LkNf_^Sv-#lg*i3Lb<-E9<#z zWM`JS-PPH@9MDk0I=$-r&FH>1w0`-pb(7-0{8@W2fIP_1BMS?}1v(ayp8bqVe0wT7vWAryhnE~|I98w@hP!6devXy>}YBvxc zp1XdOt=f~P3T3iotIF!RxMgUXts;)m2HoEk+U@)m?e?#g!5)2Px;qH$Yudv$fO&2?z? z>t%lo$^Rf%yt{2Hf$(5?d3l#cqLNf8e#C;JKKU8>jQMwk)4^kN5A8#I>2LPkMnOk< z!t6&7mDFDwfLl9toB~gD72h9q68uoB9^n*Wf6Ver$ocp!s_# zdqZZi5Y^U{?DDG^a_5!cWMKQ-@|ag+FaJ4y#GB0S49R(+*R`cSABIgdCRfU3KnnoZ8^pdq*s!t7#Wo%eNq>o~%3Hf5!-abK#OA~krp3|4 zMP%4SZyY60<%>s$4j1#fHz98VWn9ZZ63kkV1@`4Q(hB%W-HOc_K3yTmGT2~8>kKkx zb)p>kgoM2Bdu#nyQB!k5`uTH2&qRWkg|MF*#nW2=kT}zL4AAe?dvvw<9MINWnymg0 zzpYkDY3bUVwCAxs0GJ(>l*A~E7WQ7s$w?ie)Q7LtU*{yUWv5izN*0HNbf*yx!~QSQ zzFc7W=@)>+4+)WaNuK>uq%X5m^RS!CJ(L!S_SD`kcLN_cj5 zcKXNj8TODjAu^^o5Ec$@^i0TUv2D45fx&-8JxKue00BT)SeWE<$@Wi&5!l#~HA$?N z78c+-Yt+euM+X-G+^M}maZFSc#w858(m_ivEL76Z*B4fq3jVZov!P2E3>zE!-&OQi zod10bXj#Yhx>`%T1h}picFY>9DL*!l|Eie#EVepmaP!c^%)!oLZOWKqPszo_WvvH# zS#Zs^GRJ&?@FOt?;w-OX!57V1d>uJvk=QbMb(I0 zpN$QR2K-#xT!UxFrD3i<-h6I^kcml+GqLD2AwIjVD(^)}2%=v`cQZC7(#hSOJ#Vl9 zuGnCR$Htw7_X)0%1|BoTTp%d?B2F`3I@!#!OgpSQ9arZ-nExKp%h9VQ2CqLap zo|Z2i9Fz*%=;@{A6&0yVl|gu6%HLg?W>W8&wM4Bre1d4tv6ecyffn1Bl=@I`>x;_LbtHjX2s0|2#y>f0Q(2rj{u}V{rYv> z&3;292)YM_xkxn@dv0%o zv_f%238>xO-80PL5q-gDJL6$!__lk8H|si)qw6^RO&9Y_`%M>mubejjd}_edI=5^> zq87dQ_)PdcAw;P<$nAkeqWExs*YTETj+VJ27_~lT$$#x?oR*VQ4Z!n4`ui2mKIw*I z$;8ky+rj{{N&Hue^T=R_2d=&+;+~S`wt63Q{wMu-L1wYNpp)npzfdRCiUWHw z@NvALdrA#8G1&2+YI7!kvrlteY{9E`&a4h@bIAA-I@w6!M6iSAqw93|7uy+U@8e1P z<)sE_9}hMI&8d5?zSk-|nW;j5gZm5y5VSyu;u}7nyJUb9-O8%DcmwiBzUHGumhU!x zoZjO4!$Qye8h(F`)hsY<>lnb2kP4ipz^#bb9krvG@tBVU0|uJu$BWgx*+2|)$wMcv)qqNu}5jyudZV$=p13w4FO zVDP9sC1Ce%O<&W8CJ}zR30;4A*4`YU&AOwEDGFG1r*lzbF{p*<6@SQhE!d{eD&?s>U6b$ybi;Ykj$X5BHA zp5UX|SNwEyPhgrD_Y^8=YKlphF!);(gz>P4@$zZ~d+aDp^VjijKe=mnuZSVPcRwzV z=1zoj0m5!r3(-O?j^LG6Y0$3@X$Dv`<7*zz+3`+Rlp7JNOL4FJtBoR^rmY{5P}l0K z<&uW|Mhdtb2^8UMy{Gp|u<|L@uti&&!xu~lpiEbP z1*lZg@85!M$LwE#DK*7Jq)yZJ)j(9&NPQ5S$VIpEJXyVe;6jr7DLuK;-7CN2Q)cH| z#Rj>AhD%Elzj7S|JQ9+y){n|vAdRMu3meBpOtD_DU*!Nc$0wp4rCWTZNmWNyMPdCPm_#acL8 z1ZrY3o@(Yy458^O_Z)oy@?l!v5^>vYVuss?MmFXe%by6AI z6knMBrs0%u$0p*bs_^TEWh=IWExaHsHjB)4l?@-|co4E=8g||CQ`ZbGt89C(N^^g` zOFp8xcZkSWa{g`|E;u@u>y&kKJN&Yvc z6XTn+)R+Yq3no#}RVkUssykLwT3YI{pc)Vt7l%VYV8VrKI0cAUIFh-o!G;sx>+A0R z*#GTSkzP~%aJiPdC~KCtlvh^rBLSz1!%9cjY-lJ%%$Q6-(cOb^KRR9V6m?_qt8Rg* zalkJ>85CJg+zeXZ8iHa8>i=ePnBfyYidy2ZItX>w?63P7>ycdm@q+#yHki;jqbeM# zBc$byDBrG2&I?@{4|laFZQ1kk5oAvx!6Pg?x)nRzUO^VA?!cOdRcD{yY#s445RrO? zMFP`RdHk-N{TlL5&n6Vfo-^3kdFZAW>u8)zx)3Hyj?TT!MU-HB}#5cMNwZ z;YR}nw%USVn?@zu-h{hd-Y4~Y-ssk&T#Z(`B5FRN^aX7Z{JB7ak8h|6DhP|>Qxfd- zq-0r|;o9?Deyh?*iOx{b+BfrAHB*xlVL6{Ir>b<=0dk?Cok$#DZ zM4&~%0MKl13uc3Ig93O7nBTa&MZKnuChYm%Wp{aEgAy}Z@u%g(RmJ@`a6Z@L9u!Lf zW>IDgsG5KU!{52)j; zI=V&TJ%sQKLMb#xKxEImFU`I%()3=q=$6e#mql5H+up@NdWcy~%ScscezVJ&`1c;< ztlt=`9CK!s0~_Qe25__Y)HDMT$lc#mt|Mk~?y>0{LWZmFYAf7^EpisT=}PaN4N^4W zdM*=@q+MYXL?O7YvoFaNWz*djmg*-Gn+-3v7l<68hs>2J_yG?^N_E}bM)^{MZO3`B zHX~oGw9Ez0HMSfT&^YwZ({K;R=C|&3K+0qa9Uw+w>+1~HG^J;j^PFqv^ z?3K-rD(gOtM2k)FU}D!v(lzARBfFL7OiXvGqFk3!LF3*LY3plQ$>(OPDM78}kiK_NaG|#= z_ZeG*>ogZ}VqUMOs{FL-DW=lYwhJ`fa~2msMq&N zTK!9}(n5SyVIgp?nwPsEtiT)gbRDtpJhQ zJFYHAMF-}Cr_Y1Gd^EOZNq&GPdxB3M{BwgzEAOvp`b4h2Vb9-V>(;wD3@oO%W0Jfe z7f$G1AAqZ>S+9QFHmEtcpIa)loe0}0CGH#Bia1f7u0sDbM$mS306oY%SGRjUxCg57 zxqqQ_r2|fnpxsdMkKUe@riVsxaB~z&mR~+!n7%--{cS5iiV?aP0wpxzB-}AntgTdK z70+W^Qpv__3Q+}p`GWa3*3L}nJ#kbm;5zbw85>hXS474ah_^KNCYAZJpMBC_W8V1m z^j)lXQQVjQ=ifc3*{bej7CWvv1ODi2u8$2QM0Scw&3kxP>UB894OG`9 zyy{MgGk&)rgrH+@h#V|*j5S;zwVKZSdkHG_q1~U_OE*)a?Nee^cN4zOFgb;I0-aYL zSy8l{*;0=I5eOcNKIJFjQ<%_-rR#kzW*)K}Uh3y}#y7fSSMgeHiaw&dJ&qO)y zTA#DH`ID+H+Puk>{-n>RZ>3khk4^Rl`0=}t*^;t^o>(S4VfW83E{xG1Y(TRiwr8yS z1_$^)J;uN1=ToPrwE#S-r?>ZaM+cBf^;OK3h^cZXb*b_8ts)rEDa29kO)WNh!@Mh=LzD^vR>ToIFCimOjIQ-`~HrUp{}G z>UBNq0{?JUTy1l_12E$QINYW9HYCu zNjq0i)X*^FR-BIBVJ8k{4Bg!a;WNP36cuC7urA-!>?4F86gCZ1RlWX)AssK)o>-0< z%>iO`temXN@2(A?Ej>0@ts7?fUdw80rAsI9 z@$vl?b2GvH?65HO0V~&z_RDTqX=#)}St}+1<#= zOiNZg<9I(G_p0wIvEWXCJ`#7qt5!-*#3dv$u_>rVr>oLyiIH33(Y8EmgaSXiUT2<+WPLa zF~_M3AwMC1BQunG+T}FTz=-yPGPTEswP^H|f^3?JEWEta2njJpV!wI2Css0dg zEFfA8vxV;7k$@KuU#!d0G%Aq+;#1z_OJ8m`Q4Y?Lo_@2-k8}KM2rzD|+0Hzb%*(^k z>WHAXF(Uu3bKv^Kap>@LVZCO}y#`7iHEmJ%bioes@BFPJE6Bpi`swm;iCL>EM4G}q zOJ&fXj;;BUrY#s-)ABWl-BAH|`dc4&T3Xt?E290>eNjgxq(9vf>HTUkVzDtXtb8|e zb=iVKh0$eZ+XyO>Ar%~*uPfnAd5?Q<5f`!b95L;WheE2 zdBj#ZkD?fEH`&U%DkZ(tfrMt=m#g9EzSVs-CzooOla1A1tl>5$(6mauo2TR2-{-_a zBmNx+4E7TWZr4}DhEtj!R86K@eTSNLsIBKtKby&8;RgOG|0PkDlr_7A*zQwSJ}^w44;#AOh}>R6(@d)EMwMWVZ+z~e zu>JcfS&)in-tGCn-A7CVZ8;U{TkLFY<AA!^r3#ie@`qp{R;Ovri<>%+jHTU##ehsW))xtY@GdtKMto!RA96#bwJ zhsVN78rEK(@4u>C>Cz9(&1K+U-8oD+fD8{PI5qVIaC{$1M5x{+#II~G4T|X3sWC%t zrX~$TVxbnsmyZvJlS{*2G6>By-+Yf{WW-Fe!*CDPMkVF&`(4EB^8xf|DS8NdoH$1> z5y3=9=2so3d2_#4lOom@cDeunyiVekQs4yF* zQJ`1LyaJn#frqE|L#hlA-}__up#(>KJNA!STw;PF`&J08?7vKpaue>|EIv-t_EOfF&e1(Snfbr(4THM$O z2BIn+Zi>@?Ohk&<8t+!G6xk?={hH)CZ65M9wxGWmQl$RC^!nw?^+s_3#3aMVSv{00Hd?T3HQkF2|a1_}b-b zO3K1`UwG6x{K_UAdc?kx+Ic79ea%8|&^ai}mI5OG)TR|)hfSDRYwK;rx&Rq1dF1_> zdqT19+|oe{w!Tj&jwd;1np@1>0lclf;lQ9RCUWYqN4j6{k|HorO0xZQF*s7VeSYw3 z@&P=pe=Uu}dR-xb?E_-V57SiZzny%KyK^YHWsFKF*^V8dp^qHf_Qw}F^~e;-XRff` za3=dasLk2lc?14%$0p#)V6GLWOU)Kp$=VU`P-8HFTJ1LFE;BorBWc_ePFxf6tADZTtw zgAWm7ZPKOV%XPE6a2fwi*i_{aULKcNnHkfWSi-PQR#jp_L4ixDvAI$c3F)5cp8=y+ z$rfnn4jYM-_dhis^uAfX)p5L2c5vt&HvbXK4q0{1k$F6jFH>AIsU1Md9>#;5+mr7m zdPMkBz3Rn`nOm7v6QRL4&rio|x$=Wom)7X5R@Vmp#vI#>`OFL}ZiG1=6JN^f(Oua- zc>NHLm(oo^i&e2DI4ZZg^Vw3aAvaNdMzbjg6V^Jce{@Xm3@(E!_Fgjyo&!10+R0J~ zH5z~l*j;wt1G$DbUS5I{L73(>n6+710SV_3!{{bwp$__d@EY1aJ&W^rI|WOp*SjNe zmq|l%pqH_(zP^AW2v{JX;{FbIadT6~*|~Z<8o-#^|Nf1?y}f-BEW$r?KgA2wEP)*w z<|<2m$sbpy0D`&!2l1lMAbx`~?=-)Uuh!}8LOvX7T0y&0sQSvXmxx!Kc1RB20aWl`+5MENkX%lUAUu5SJ}S044d2M-wIvbT`}j^~^Jf$e#D42{y=dc8RN(N*<< zHC~;&DDZXCmuH2}7DulnLW`~~EiKC`9nE$mYLe$$ovAqNUBaafXrRTWTO@Xpm(h~+ zO~s8EC4Qwr3dgm#Ij12bo)4qIJpfcsc60%E79~VzAN0Wymjuj3}g2aR!MB^D0 zdis3Yws)NPUwr}km!*n0_c9OjG&T!Hk4(X;ocf~3VCmd(@>3b?TM!-th#ioMbK)oe zR9WMU%0JUg$EBSs|1Y^NBdr{Q=6fd1F2o+>k5+;*f6edIpr1vBqTq9E|jkx@8&X(`66Uun@-Y08T z*TmO^gyaYcdVW1U+~u?W?m2%?(iF=%!&92rsUxE2cH=3L%B)(n_j!i`Q~gdcrS{dBF-Jb@e$M;-J46;DMxf6`&BK%Eyfa=7Eb*RVQEF7kM>%x)&=54b z=haIYWVrZY4Y>lkUV?lcKhKJz*ywJig0W>=n>-5bALo9+RPv-R@g~ zar3mEuYc$fMhY)N-W+giMh4Y=ys**b`<{x_%}4ddh_1;a5+@jYudEjXZ1RQt-(`s5vi--p3c6ep~v3c+A(rz@}PE1t7)f7e?rX5nW= zzDYpKp8=k{=9uQ)a*lwt~~)t<_q8a;^K~;9$A8C|GZ1;-kcYyF&NPpBU&4#quAee@9!l1jdTdVftwxl5`4{f@9RrVn%1 z|CSRM-^WwjGc=@$uMl4*H)6z+)(?WIi3eMzj3H4 z4Z-Tm8q2Y^1Quwr0H%EWnpN|Ln?Er@koZ@vW<}Bb^O&!@2;hAQF$@_ zkv-2)^TX0aF~CED{%+M>x1FD)MwYKQ>J$MC4ij%JpwVp-FfTKl6i zrjB@B#yoL}Vh;;y;kf1o;No1Ze@3OYv$Ip~2yFc*ikgm&Z6ZPw2(kyDoIOaAVa_H; zfh?*$PMpI28!hug<)O6c3>=z`p4Mht?4pF8hR#4n8~e1!jzdvtoOhKFnd#+p`VhY_vzE^$EkRR7h0-S3s~Itt_Yz_-!IAS?Qc$ zBwVmCeR(+_c2ex&Q9f-e7bS(+$W`?|0c1)}_vc6}rxbK`$=_r`DsK`0?wn0dO{I@+ z@j7kd{IsTc^S}SlUW#<#0euEw{*{kKL=|ZtyLY6S9D9$(dxMC#S|V;mAm)q3%5nA_ zV%CE1XBsdQ;O~3^UF=PEmqRkl2Djz43OaZN&heFICHrmJ{2%HHAM{2uleS18rttR8m5fw z%#;$X^paLpk`4YYH|M)HM_5iZKBOB;#zX8&3xBbFm%|X_ZitDA0r_$gP;${9KW8HZ z>55_lzLGO^-@zK&6)3n8Egi{)jj$@X9@(!Dl%QSd&46|x`l0slSI_1`m@Sl=ux=}=Hmbf6z8q@g%Orlw1P z!V#a6+o}p*8?OKhd{!000jq96k1^sP`PXvrt-s3Y(x<`Kzacea>0e&nWmce%9l$Vb zdm~U5_z`^ba|T7>nF1}5iMj~+jfdG0g}GSILClRA2gNTwBwu9%pZx=>>OMPnHdTt6cX573QG6&VvrF6`QDe@0Bx& znOd8jv%f)(2Rj_@ySz(8&ssdwAXe)KXSKa(BXfm6=Rd4(vGGYsnP94_s^6Q4v`KeR zWhoiZ;N^={*GC-{2~yoeeL+i9*9I}?(Wmw?GIeZA6^>9xsa~blBV^=)J*LvS;|kBO z#kjY5_==ScAsI0-pN3`{L;11Aj(WVqzuN*IZJ(>uUkmj^=wb0v| zR5r>egkvw*-mS!3FVucV;&>Qv|J~IW-U5RHruuC|XIh4%twrwJ6NF^9@tZ6}{ZKK{ zs9(N}xrh8wR1Mg17I*s6$1?kUEC%V${3h$%LL(vw#Kgp4x7RzR1M{HE-@6(HglmQs z0%*N|(BgT}+R-e3m~}!l(iO~w!fd!pcbuh%XXw-n5;jwhNMyTW{>TN$#1z8nWc9mT z-v|WcS)JF#tiFu1|JlJuzEqhlFD0q|D2X_U7Q)=c7F7{bsdV2W?)r5zC{TQ!#HK}U z>#`|SZGfGTa9#A7nPWBP0!-!Kgo>A)vZc9n_8D|B3t4aUC-t1Q508&kXF57Mp3dn0 z-Fz1PaAtBszPq$U4M=m6ξ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 lwH((d Date: Tue, 11 Jun 2019 12:56:46 -0500 Subject: [PATCH 313/370] Automatic changelog generation for PR #8587 [ci skip] --- html/changelogs/AutoChangeLog-pr-8587.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8587.yml diff --git a/html/changelogs/AutoChangeLog-pr-8587.yml b/html/changelogs/AutoChangeLog-pr-8587.yml new file mode 100644 index 0000000000..4b7fdeb64c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8587.yml @@ -0,0 +1,4 @@ +author: "SkullyRoberts" +delete-after: True +changes: + - rscadd: "Penis autosurgeon as rare maint loot." From d5bfe16c78e0c6177bc2b3c37d17930c6399b9dc Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Tue, 11 Jun 2019 13:13:03 -0500 Subject: [PATCH 314/370] Automatic changelog generation for PR #8599 [ci skip] --- html/changelogs/AutoChangeLog-pr-8599.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8599.yml diff --git a/html/changelogs/AutoChangeLog-pr-8599.yml b/html/changelogs/AutoChangeLog-pr-8599.yml new file mode 100644 index 0000000000..41134f4d5b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8599.yml @@ -0,0 +1,4 @@ +author: "Poojawa" +delete-after: True +changes: + - rscadd: "Pacifists can eat people for heal belly or noisy. Digestive modes are auto-swapped to noisy" From 7f3e2dd28b729649e7b3e9f46456e6f5c9b23a8e Mon Sep 17 00:00:00 2001 From: TrilbySpaseClone Date: Tue, 11 Jun 2019 18:00:08 -0400 Subject: [PATCH 315/370] Kimono Adds blue Kimono for SFox63 --- icons/mob/custom_w.dmi | Bin 33392 -> 34404 bytes icons/obj/custom.dmi | Bin 22493 -> 22775 bytes .../code/modules/client/loadout/__donator.dm | 8 +++++++- .../modules/custom_loadout/custom_items.dm | 10 ++++++++++ 4 files changed, 17 insertions(+), 1 deletion(-) diff --git a/icons/mob/custom_w.dmi b/icons/mob/custom_w.dmi index dcb36e7b47eb449d2f8dfaeb7813f2b5b86cc263..e9bbbc4d4576915dd55d4f396469d9131daccc21 100644 GIT binary patch delta 14399 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

Ij;QdFITmS0H;?eb-ETq5QM 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 delta 13379 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 Date: Tue, 11 Jun 2019 19:11:15 -0400 Subject: [PATCH 316/370] Update custom_items.dm --- modular_citadel/code/modules/custom_loadout/custom_items.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/modular_citadel/code/modules/custom_loadout/custom_items.dm b/modular_citadel/code/modules/custom_loadout/custom_items.dm index 820cbe1346..c43b8f3ce1 100644 --- a/modular_citadel/code/modules/custom_loadout/custom_items.dm +++ b/modular_citadel/code/modules/custom_loadout/custom_items.dm @@ -493,5 +493,4 @@ item_state = "kimono" icon = 'icons/obj/custom.dmi' alternate_worn_icon = 'icons/mob/custom_w.dmi' - slot_flags = SLOT_WEAR_SUIT - mutantrace_variation = NO_MUTANTRACE_VARIATION \ No newline at end of file + mutantrace_variation = NO_MUTANTRACE_VARIATION From 90e572ec0366ba4bf6981060ce6b69b60f83fc9f Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Wed, 12 Jun 2019 20:03:17 +1200 Subject: [PATCH 317/370] Honk --- code/modules/food_and_drinks/food/snacks_pie.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/food_and_drinks/food/snacks_pie.dm b/code/modules/food_and_drinks/food/snacks_pie.dm index 8264b4153e..d0f5b3cd91 100644 --- a/code/modules/food_and_drinks/food/snacks_pie.dm +++ b/code/modules/food_and_drinks/food/snacks_pie.dm @@ -53,6 +53,7 @@ H.adjust_blurriness(1) H.visible_message("[H] is creamed by [src]!", "You've been creamed by [src]!") playsound(H, "desceration", 50, TRUE) + reagents.trans_to(H,80) //Transfers the cream pies total volume of reagents to target on it if(!H.creamed) // one layer at a time H.add_overlay(creamoverlay) H.creamed = TRUE From 7b79bbcb29fb20f6c8637559a7163b32b8de4c2d Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Wed, 12 Jun 2019 21:17:31 +1200 Subject: [PATCH 318/370] Changes transfer amount to 10u instead of the full 80 --- code/modules/food_and_drinks/food/snacks_pie.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/food/snacks_pie.dm b/code/modules/food_and_drinks/food/snacks_pie.dm index d0f5b3cd91..c26ad59496 100644 --- a/code/modules/food_and_drinks/food/snacks_pie.dm +++ b/code/modules/food_and_drinks/food/snacks_pie.dm @@ -53,7 +53,7 @@ H.adjust_blurriness(1) H.visible_message("[H] is creamed by [src]!", "You've been creamed by [src]!") playsound(H, "desceration", 50, TRUE) - reagents.trans_to(H,80) //Transfers the cream pies total volume of reagents to target on it + reagents.trans_to(H,10) //Transfers the cream pies total volume of reagents to target on it if(!H.creamed) // one layer at a time H.add_overlay(creamoverlay) H.creamed = TRUE From 142d62908f928d606b9571b877fc421da51287bc Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Wed, 12 Jun 2019 21:18:56 +1200 Subject: [PATCH 319/370] Actually make it 15, the pie starts with 13u already used --- code/modules/food_and_drinks/food/snacks_pie.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/food/snacks_pie.dm b/code/modules/food_and_drinks/food/snacks_pie.dm index c26ad59496..20ad48e3b8 100644 --- a/code/modules/food_and_drinks/food/snacks_pie.dm +++ b/code/modules/food_and_drinks/food/snacks_pie.dm @@ -53,7 +53,7 @@ H.adjust_blurriness(1) H.visible_message("[H] is creamed by [src]!", "You've been creamed by [src]!") playsound(H, "desceration", 50, TRUE) - reagents.trans_to(H,10) //Transfers the cream pies total volume of reagents to target on it + reagents.trans_to(H,15) //Transfers the cream pies total volume of reagents to target on it if(!H.creamed) // one layer at a time H.add_overlay(creamoverlay) H.creamed = TRUE From 516b71ed7e9cb53d5c1a6d4412824c44328964fb Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 20:13:08 +0200 Subject: [PATCH 320/370] fixing stunbatons. --- code/game/objects/items/stunbaton.dm | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index bf7c71dddb..54e5bf033a 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -46,14 +46,15 @@ /obj/item/melee/baton/loaded //this one starts with a cell pre-installed. preload_cell_type = /obj/item/stock_parts/cell/high -/obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE) - if(!cell) +/obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE, obj/item/stock_parts/cell/external_cell) + if(!cell && !external_cell) switch_status(FALSE, TRUE) return FALSE + var/obj/item/stock_parts/cell/copper_top = external_cell ? external_cell : cell //Note this value returned is significant, as it will determine //if a stun is applied or not - . = cell.use(chrgdeductamt) - if(status && (!. || (chargecheck && cell.charge < hitcost * STUNBATON_CHARGE_LENIENCY))) + . = copper_top.use(chrgdeductamt) + if(status && (!. || (chargecheck && copper_top.charge < hitcost * STUNBATON_CHARGE_LENIENCY))) //we're below minimum, turn off switch_status(FALSE) @@ -164,16 +165,15 @@ playsound(L, 'sound/weapons/genhit.ogg', 50, 1) return FALSE var/stunpwr = stunforce + var/stuncharge = cell.charge + var/obj/item/stock_parts/cell/external_cell if(iscyborg(loc)) var/mob/living/silicon/robot/R = loc - if(!istype(R) || !R.cell || !R.cell.use(hitcost)) + external_cell = R.cell + if(!deductcharge(hitcost, FALSE, external_cell)) + stunpwr *= round(stuncharge/hitcost, 0.1) + if(stunpwr < stunforce * STUNBATON_CHARGE_LENIENCY) return FALSE - else - var/stuncharge = cell.charge - if(!deductcharge(hitcost, FALSE)) - stunpwr *= round(stuncharge/hitcost) - if(stunpwr < stunforce * STUNBATON_CHARGE_LENIENCY) - return FALSE L.Knockdown(stunpwr) L.adjustStaminaLoss(stunpwr*0.1, affected_zone = (istype(user) ? user.zone_selected : BODY_ZONE_CHEST))//CIT CHANGE - makes stunbatons deal extra staminaloss. Todo: make this also deal pain when pain gets implemented. From 368267f53d8dba78da4582a777f38fefc541af2a Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 20:31:24 +0200 Subject: [PATCH 321/370] dddddd --- code/game/objects/items/stunbaton.dm | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 54e5bf033a..f21d69fcfb 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -46,11 +46,14 @@ /obj/item/melee/baton/loaded //this one starts with a cell pre-installed. preload_cell_type = /obj/item/stock_parts/cell/high -/obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE, obj/item/stock_parts/cell/external_cell) - if(!cell && !external_cell) +/obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE) + var/obj/item/stock_parts/cell/copper_top = cell + if(iscyborg(loc)) + var/mob/living/silicon/robot/R = loc + copper_top = R.cell + if(!copper_top) switch_status(FALSE, TRUE) return FALSE - var/obj/item/stock_parts/cell/copper_top = external_cell ? external_cell : cell //Note this value returned is significant, as it will determine //if a stun is applied or not . = copper_top.use(chrgdeductamt) @@ -165,15 +168,21 @@ playsound(L, 'sound/weapons/genhit.ogg', 50, 1) return FALSE var/stunpwr = stunforce - var/stuncharge = cell.charge - var/obj/item/stock_parts/cell/external_cell + var/obj/item/stock_parts/cell/our_cell = cell if(iscyborg(loc)) var/mob/living/silicon/robot/R = loc - external_cell = R.cell - if(!deductcharge(hitcost, FALSE, external_cell)) - stunpwr *= round(stuncharge/hitcost, 0.1) - if(stunpwr < stunforce * STUNBATON_CHARGE_LENIENCY) + our_cell = R.cell + if(!our_cell) + return FALSE + var/stuncharge = our_cell.charge + deductcharge(hitcost, FALSE) + if(stuncharge < hitcost) + if(stuncharge < hitcost * STUNBATON_CHARGE_LENIENCY) + L.visible_message("[user] has prodded [L] with [src]. Luckily it din't have enough charge left.", \ + "[user] has prodded you with [src]. Luckily it din't have enough charge left.") return FALSE + stunpwr *= round(stuncharge/hitcost, 0.1) + L.Knockdown(stunpwr) L.adjustStaminaLoss(stunpwr*0.1, affected_zone = (istype(user) ? user.zone_selected : BODY_ZONE_CHEST))//CIT CHANGE - makes stunbatons deal extra staminaloss. Todo: make this also deal pain when pain gets implemented. From 4cc7636da13562d8ca8c71e0e640040d817be82c Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 22:50:09 +0200 Subject: [PATCH 322/370] fixing more. --- code/game/objects/items/stunbaton.dm | 36 +++++++++++++++++----------- code/modules/power/cell.dm | 4 ++-- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index f21d69fcfb..8a7a638539 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -46,7 +46,7 @@ /obj/item/melee/baton/loaded //this one starts with a cell pre-installed. preload_cell_type = /obj/item/stock_parts/cell/high -/obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE) +/obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE, explode = TRUE) var/obj/item/stock_parts/cell/copper_top = cell if(iscyborg(loc)) var/mob/living/silicon/robot/R = loc @@ -56,8 +56,9 @@ return FALSE //Note this value returned is significant, as it will determine //if a stun is applied or not - . = copper_top.use(chrgdeductamt) - if(status && (!. || (chargecheck && copper_top.charge < hitcost * STUNBATON_CHARGE_LENIENCY))) + + copper_top.use(min(chrgdeductamt, copper_top.charge), explode) + if(status && (!copper_top.charge || (chargecheck && copper_top.charge < (hitcost * STUNBATON_CHARGE_LENIENCY)))) //we're below minimum, turn off switch_status(FALSE) @@ -73,7 +74,8 @@ update_icon() /obj/item/melee/baton/process() - deductcharge(hitcost * 0.004, FALSE) + . = ..() + deductcharge(hitcost * 0.004, FALSE, FALSE) /obj/item/melee/baton/update_icon() if(status) @@ -96,7 +98,7 @@ if(cell) to_chat(user, "[src] already has a cell.") else - if(C.maxcharge < hitcost * STUNBATON_CHARGE_LENIENCY) + if(C.maxcharge < (hitcost * STUNBATON_CHARGE_LENIENCY)) to_chat(user, "[src] requires a higher capacity cell.") return if(!user.transferItemToLoc(W, src)) @@ -116,15 +118,19 @@ return ..() /obj/item/melee/baton/attack_self(mob/user) - if(cell && cell.charge > hitcost * STUNBATON_CHARGE_LENIENCY) - switch_status(!status) - to_chat(user, "[src] is now [status ? "on" : "off"].") - else + var/obj/item/stock_parts/cell/copper_top = cell + if(iscyborg(loc)) + var/mob/living/silicon/robot/R = loc + copper_top = R.cell + if(!copper_top || copper_top.charge < (hitcost * STUNBATON_CHARGE_LENIENCY)) switch_status(FALSE, TRUE) - if(!cell) + if(!copper_top) to_chat(user, "[src] does not have a power source!") else to_chat(user, "[src] is out of charge.") + else + switch_status(!status) + to_chat(user, "[src] is now [status ? "on" : "off"].") add_fingerprint(user) /obj/item/melee/baton/attack(mob/M, mob/living/carbon/human/user) @@ -176,10 +182,12 @@ return FALSE var/stuncharge = our_cell.charge deductcharge(hitcost, FALSE) + if(QDELETED(src)) //it was rigged + return if(stuncharge < hitcost) - if(stuncharge < hitcost * STUNBATON_CHARGE_LENIENCY) - L.visible_message("[user] has prodded [L] with [src]. Luckily it din't have enough charge left.", \ - "[user] has prodded you with [src]. Luckily it din't have enough charge left.") + if(stuncharge < (hitcost * STUNBATON_CHARGE_LENIENCY)) + L.visible_message("[user] has prodded [L] with [src]. Luckily it is out of charge.", \ + "[user] has prodded you with [src]. Luckily it is out of charge.") return FALSE stunpwr *= round(stuncharge/hitcost, 0.1) @@ -214,7 +222,7 @@ . = ..() if (!(. & EMP_PROTECT_SELF)) switch_status(FALSE) - deductcharge(1000 / severity) + deductcharge(1000 / severity, TRUE, FALSE) //Makeshift stun baton. Replacement for stun gloves. /obj/item/melee/baton/cattleprod diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index b6473b8913..5c1df573b3 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -69,8 +69,8 @@ return 100*charge/maxcharge // use power from a cell -/obj/item/stock_parts/cell/use(amount) - if(rigged && amount > 0) +/obj/item/stock_parts/cell/use(amount, can_explode = TRUE) + if(rigged && amount > 0 && can_explode) explode() return 0 if(charge < amount) From 5a35e95735f6a680f53bb7fdb6ca70601463b2ac Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 22:52:05 +0200 Subject: [PATCH 323/370] . --- code/game/objects/items/stunbaton.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 8a7a638539..8c51cbb717 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -182,7 +182,7 @@ return FALSE var/stuncharge = our_cell.charge deductcharge(hitcost, FALSE) - if(QDELETED(src)) //it was rigged + if(QDELETED(src) || QDELETED(our_cell)) //it was rigged return if(stuncharge < hitcost) if(stuncharge < (hitcost * STUNBATON_CHARGE_LENIENCY)) From 44be4ea7b49df5e29f305afb6224de194d21ba49 Mon Sep 17 00:00:00 2001 From: Arturlang Date: Wed, 12 Jun 2019 23:58:54 +0300 Subject: [PATCH 324/370] Reviewers suggestions --- .../machinery/components/binary_devices/pump.dm | 6 +++--- .../machinery/components/binary_devices/volume_pump.dm | 8 ++++---- .../machinery/components/trinary_devices/filter.dm | 6 +++--- .../machinery/components/trinary_devices/mixer.dm | 8 ++++---- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 7e6998b701..1de5b93332 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -29,9 +29,9 @@ Thus, the two variables affect pump operation are set in New(): pipe_state = "pump" /obj/machinery/atmospherics/components/binary/pump/examine(mob/user) - ..() - to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") - to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + . = ..() + to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") + to_chat(user,"You can hold Alt and click on it to maximize its pressure.") /obj/machinery/atmospherics/components/binary/pump/CtrlClick(mob/user) var/area/A = get_area(src) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index bb0b525fd8..3a2321c395 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -29,9 +29,9 @@ Thus, the two variables affect pump operation are set in New(): pipe_state = "volumepump" /obj/machinery/atmospherics/components/binary/volume_pump/examine(mob/user) - ..() - to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") - to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + . = ..() + to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") + to_chat(user,"You can hold Alt and click on it to maximize its pressure.") /obj/machinery/atmospherics/components/binary/volume_pump/CtrlClick(mob/user) var/area/A = get_area(src) @@ -42,7 +42,7 @@ Thus, the two variables affect pump operation are set in New(): investigate_log("Volume Pump, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Volume Pump, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/binary/volume_pump/layer1 piping_layer = PIPING_LAYER_MIN pixel_x = -PIPING_LAYER_P_X diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index 69c91bdd6d..ac05c94a78 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -13,9 +13,9 @@ pipe_state = "filter" /obj/machinery/atmospherics/components/trinary/filter/examine(mob/user) - ..() - to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") - to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + . = ..() + to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") + to_chat(user,"You can hold Alt and click on it to maximize its pressure.") /obj/machinery/atmospherics/components/trinary/filter/CtrlClick(mob/user) var/area/A = get_area(src) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index 21a02dfc63..fc866c3d6a 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -15,9 +15,9 @@ //node 3 is the outlet, nodes 1 & 2 are intakes /obj/machinery/atmospherics/components/trinary/mixer/examine(mob/user) - ..() - to_chat(user,"You can hold CTRL and click on it to toggle it on and off.") - to_chat(user,"You can hold ALT and click on it to maximize its pressure.") + . = ..() + to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") + to_chat(user,"You can hold Alt and click on it to maximize its pressure.") /obj/machinery/atmospherics/components/trinary/mixer/CtrlClick(mob/user) var/area/A = get_area(src) @@ -28,7 +28,7 @@ investigate_log("Mixer, [src.name], turned on by [key_name(usr)] at [x], [y], [z], [A]", INVESTIGATE_ATMOS) message_admins("Mixer, [src.name], turned [on ? "on" : "off"] by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)], [A]") return ..() - + /obj/machinery/atmospherics/components/trinary/mixer/AltClick(mob/user) var/area/A = get_area(src) var/turf/T = get_turf(src) From a29095cbe1a01043b1d7fb7a2de457ed0577ca0a Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 23:06:09 +0200 Subject: [PATCH 325/370] Penitence for the awful mistakes I have done in the refactor. --- code/game/objects/items/stunbaton.dm | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 8c51cbb717..6dcda74aaa 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -22,7 +22,11 @@ var/preload_cell_type //if not empty the baton starts with this type of cell /obj/item/melee/baton/get_cell() - return cell + var/obj/item/stock_parts/cell/our_cell = cell + if(iscyborg(loc)) + var/mob/living/silicon/robot/R = loc + our_cell = R.get_cell() + return our_cell /obj/item/melee/baton/suicide_act(mob/user) user.visible_message("[user] is putting the live [name] in [user.p_their()] mouth! It looks like [user.p_theyre()] trying to commit suicide!") @@ -47,10 +51,7 @@ preload_cell_type = /obj/item/stock_parts/cell/high /obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE, explode = TRUE) - var/obj/item/stock_parts/cell/copper_top = cell - if(iscyborg(loc)) - var/mob/living/silicon/robot/R = loc - copper_top = R.cell + var/obj/item/stock_parts/cell/copper_top = get_cell() if(!copper_top) switch_status(FALSE, TRUE) return FALSE @@ -86,9 +87,10 @@ icon_state = "[initial(name)]" /obj/item/melee/baton/examine(mob/user) - ..() - if(cell) - to_chat(user, "\The [src] is [round(cell.percent())]% charged.") + . = ..() + var/obj/item/stock_parts/cell/copper_top = get_cell() + if(copper_top) + to_chat(user, "\The [src] is [round(copper_top.percent())]% charged.") else to_chat(user, "\The [src] does not have a power source installed.") @@ -118,10 +120,7 @@ return ..() /obj/item/melee/baton/attack_self(mob/user) - var/obj/item/stock_parts/cell/copper_top = cell - if(iscyborg(loc)) - var/mob/living/silicon/robot/R = loc - copper_top = R.cell + var/obj/item/stock_parts/cell/copper_top = get_cell() if(!copper_top || copper_top.charge < (hitcost * STUNBATON_CHARGE_LENIENCY)) switch_status(FALSE, TRUE) if(!copper_top) @@ -222,7 +221,8 @@ . = ..() if (!(. & EMP_PROTECT_SELF)) switch_status(FALSE) - deductcharge(1000 / severity, TRUE, FALSE) + if(!iscyborg(loc)) + deductcharge(1000 / severity, TRUE, FALSE) //Makeshift stun baton. Replacement for stun gloves. /obj/item/melee/baton/cattleprod From 2edef99b0861e3649d12da5752db2c3d5a2a90d4 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 23:16:27 +0200 Subject: [PATCH 326/370] . --- code/game/objects/items/stunbaton.dm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 6dcda74aaa..dae9545fbb 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -22,11 +22,10 @@ var/preload_cell_type //if not empty the baton starts with this type of cell /obj/item/melee/baton/get_cell() - var/obj/item/stock_parts/cell/our_cell = cell + . = cell if(iscyborg(loc)) var/mob/living/silicon/robot/R = loc - our_cell = R.get_cell() - return our_cell + . = R.get_cell() /obj/item/melee/baton/suicide_act(mob/user) user.visible_message("[user] is putting the live [name] in [user.p_their()] mouth! It looks like [user.p_theyre()] trying to commit suicide!") From 5ba46eb51755a591027429afe49316a70ed4120f Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 23:20:34 +0200 Subject: [PATCH 327/370] Avoid runtiming. --- code/game/objects/items/stunbaton.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index dae9545fbb..d85295377c 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -58,7 +58,7 @@ //if a stun is applied or not copper_top.use(min(chrgdeductamt, copper_top.charge), explode) - if(status && (!copper_top.charge || (chargecheck && copper_top.charge < (hitcost * STUNBATON_CHARGE_LENIENCY)))) + if(status && (!(copper_top?.charge) || (chargecheck && copper_top.charge < (hitcost * STUNBATON_CHARGE_LENIENCY)))) //we're below minimum, turn off switch_status(FALSE) From 7a8eaf41acf611cf5c64dfa58e94874794bfae8e Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 23:21:42 +0200 Subject: [PATCH 328/370] another get_cell() --- code/game/objects/items/stunbaton.dm | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index d85295377c..bc5429da54 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -172,10 +172,7 @@ playsound(L, 'sound/weapons/genhit.ogg', 50, 1) return FALSE var/stunpwr = stunforce - var/obj/item/stock_parts/cell/our_cell = cell - if(iscyborg(loc)) - var/mob/living/silicon/robot/R = loc - our_cell = R.cell + var/obj/item/stock_parts/cell/our_cell = get_cell() if(!our_cell) return FALSE var/stuncharge = our_cell.charge From e2bf5b73fda098f298b4925022fe718ffba19688 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Wed, 12 Jun 2019 23:22:31 +0200 Subject: [PATCH 329/370] I'm being too careless, sorry for the many commits. --- code/game/objects/items/stunbaton.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index bc5429da54..2a22ab8c27 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -178,7 +178,7 @@ var/stuncharge = our_cell.charge deductcharge(hitcost, FALSE) if(QDELETED(src) || QDELETED(our_cell)) //it was rigged - return + return FALSE if(stuncharge < hitcost) if(stuncharge < (hitcost * STUNBATON_CHARGE_LENIENCY)) L.visible_message("[user] has prodded [L] with [src]. Luckily it is out of charge.", \ From e33c57d8ded2ec74816a1aecfe4e7b5433d0c7eb Mon Sep 17 00:00:00 2001 From: Useroth Date: Thu, 13 Jun 2019 15:19:12 +0200 Subject: [PATCH 330/370] Finally fixed the net breaking mechanics. --- .../ninja/suit/n_suit_verbs/energy_net_nets.dm | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index b7f2b78e64..2617c2a3bf 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -108,19 +108,9 @@ It is possible to destroy the net by the occupant or someone else. playsound(affecting, 'sound/effects/sparks2.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) -/obj/structure/energy_net/attackby(obj/item/I, mob/user, params) - - if(istype(user, /mob/living/carbon/alien/humanoid)) //so that aliums aren't completely cucked by nets - return attack_hand(user) - if(!I) - return - if(!I.force) - return - - return attack_hand(user) - -/*/obj/structure/energy_net/attack_paw(mob/user) - return attack_hand()*/ //How about no barehanded breaking of the net? +/obj/attack_alien(mob/living/carbon/alien/humanoid/user) + if(attack_generic(user, 15, BRUTE, "melee", 0)) //Aliens normally deal 60 damage to structures. They'd one-shot nets without this. + playsound(src.loc, 'sound/weapons/slash.ogg', 100, 1) /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) return//We only want our target to be buckled From f9c249b644a5a3a6f8e3dfa20d70150cc640b183 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 15:03:34 +0200 Subject: [PATCH 331/370] Energy net tweak to make it less clunky to use. --- .../suit/n_suit_verbs/energy_net_nets.dm | 3 ++ .../ninja/suit/n_suit_verbs/ninja_net.dm | 35 +++++++++++++------ 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 270e1f106f..e2609e8d09 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -59,6 +59,9 @@ It is possible to destroy the net by the occupant or someone else. continue H.dropItemToGround(W) + if(affecting in GLOB.alive_mob_list) //Feel free to suggest a better check if it's alive. + affecting.revive(1, 1) //Basically a full heal, including limbs/organs. + playsound(affecting, 'sound/effects/sparks4.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase/out(affecting.drop_location(), affecting.dir) diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm index 8c8f92e522..41f7b8af83 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm @@ -2,21 +2,34 @@ //Allows the ninja to kidnap people /obj/item/clothing/suit/space/space_ninja/proc/ninjanet() var/mob/living/carbon/human/H = affecting - var/mob/living/carbon/C = input("Select who to capture:","Capture who?",null) as null|mob in oview(H) + var/mob/living/carbon/C + + //If there's only one valid target, let's actually try to capture it, rather than forcing + //the user to fiddle with the dialog displaying a list of one + //Also, let's make this smarter and not list mobs you can't currently net. + var/Candidates[] + for(var/mob/mob in oview(H)) + if(!mob.client)//Monkeys without a client can still step_to() and bypass the net. Also, netting inactive people is lame. + //to_chat(H, "[C.p_they(TRUE)] will bring no honor to your Clan!") + continue + if(locate(/obj/structure/energy_net) in get_turf(mob))//Check if they are already being affected by an energy net. + //to_chat(H, "[C.p_they(TRUE)] are already trapped inside an energy net!") + continue + for(var/turf/T in getline(get_turf(H), get_turf(mob))) + if(T.density)//Don't want them shooting nets through walls. It's kind of cheesy. + //to_chat(H, "You may not use an energy net through solid obstacles!") + continue + Candidates+=mob + + if(Candidates.len == 1) + C = Candidates[1] + else + C = input("Select who to capture:","Capture who?",null) as null|mob in Candidates + if(QDELETED(C)||!(C in oview(H))) return 0 - if(!C.client)//Monkeys without a client can still step_to() and bypass the net. Also, netting inactive people is lame. - to_chat(H, "[C.p_they(TRUE)] will bring no honor to your Clan!") - return - if(locate(/obj/structure/energy_net) in get_turf(C))//Check if they are already being affected by an energy net. - to_chat(H, "[C.p_they(TRUE)] are already trapped inside an energy net!") - return - for(var/turf/T in getline(get_turf(H), get_turf(C))) - if(T.density)//Don't want them shooting nets through walls. It's kind of cheesy. - to_chat(H, "You may not use an energy net through solid obstacles!") - return if(!ninjacost(200,N_STEALTH_CANCEL)) H.Beam(C,"n_beam",time=15) H.say("Get over here!", forced = "ninja net") From 04a1c7ada40e015ac86b41ba64d5ed1db5cd8bf0 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 15:32:32 +0200 Subject: [PATCH 332/370] Energy net and capture objective tweak. --- code/game/gamemodes/objective.dm | 6 ++-- .../suit/n_suit_verbs/energy_net_nets.dm | 33 ++++++++++++++++++- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 7532d18d06..f6b1def645 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -542,6 +542,7 @@ GLOBAL_LIST_EMPTY(possible_items_special) return checking.researched_nodes.len >= target_amount /datum/objective/capture + var/captured_amount = 0 /datum/objective/capture/proc/gen_amount_goal() target_amount = rand(5,10) @@ -549,8 +550,7 @@ GLOBAL_LIST_EMPTY(possible_items_special) return target_amount /datum/objective/capture/check_completion()//Basically runs through all the mobs in the area to determine how much they are worth. - var/captured_amount = 0 - var/area/centcom/holding/A = GLOB.areas_by_type[/area/centcom/holding] + /*var/area/centcom/holding/A = GLOB.areas_by_type[/area/centcom/holding] for(var/mob/living/carbon/human/M in A)//Humans. if(M.stat == DEAD)//Dead folks are worth less. captured_amount+=0.5 @@ -573,7 +573,7 @@ GLOBAL_LIST_EMPTY(possible_items_special) if(M.stat == DEAD) captured_amount+=1 continue - captured_amount+=2 + captured_amount+=2*/ //Removed in favour of adding points on capture, in energy_net_nets.dm return captured_amount >= target_amount diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index e2609e8d09..6b01256b1b 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -59,9 +59,40 @@ It is possible to destroy the net by the occupant or someone else. continue H.dropItemToGround(W) - if(affecting in GLOB.alive_mob_list) //Feel free to suggest a better check if it's alive. + if(affecting.stat != DEAD) affecting.revive(1, 1) //Basically a full heal, including limbs/organs. + var/datum/antagonist/antag_datum + for(antag_datum in GLOB.antagonists) + if(antag_datum.owner == master) + break + + for(var/datum/objective/capture/capture in antag_datum) + if(istype(affecting, /mob/living/carbon/human)) //Humans. + if(affecting.stat == DEAD)//Dead folks are worth less. + capture.captured_amount+=0.5 + continue + capture.captured_amount+=1 + if(istype(affecting, /mob/living/carbon/monkey)) //Monkeys are almost worthless, you failure. + capture.captured_amount+=0.1 + if(istype(affecting, /mob/living/carbon/alien/larva)) //Larva are important for research. + if(affecting.stat == DEAD) + capture.captured_amount+=0.5 + continue + capture.captured_amount+=1 + if(istype(affecting, /mob/living/carbon/alien/humanoid)) //Aliens are worth twice as much as humans. + if(istype(affecting, /mob/living/carbon/alien/humanoid/royal/queen)) //Queens are worth three times as much as humans. + if(affecting.stat == DEAD) + capture.captured_amount+=1.5 + else + capture.captured_amount+=3 + continue + if(affecting.stat == DEAD) + capture.captured_amount+=1 + continue + capture.captured_amount+=2 + + playsound(affecting, 'sound/effects/sparks4.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase/out(affecting.drop_location(), affecting.dir) From 7fd2c60992817305c37254babd8d678a8401d5ec Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 15:59:54 +0200 Subject: [PATCH 333/370] Makes energy nets a bit sturdier and unbreakable with bare hands. --- .../modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 6b01256b1b..fd9ee41510 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -14,7 +14,7 @@ It is possible to destroy the net by the occupant or someone else. mouse_opacity = MOUSE_OPACITY_ICON//So you can hit it with stuff. anchored = TRUE//Can't drag/grab the net. layer = ABOVE_ALL_MOB_LAYER - max_integrity = 25 //How much health it has. + max_integrity = 45 //How much health it has. can_buckle = 1 buckle_lying = 0 buckle_prevents_pull = TRUE @@ -63,8 +63,9 @@ It is possible to destroy the net by the occupant or someone else. affecting.revive(1, 1) //Basically a full heal, including limbs/organs. var/datum/antagonist/antag_datum - for(antag_datum in GLOB.antagonists) - if(antag_datum.owner == master) + for(var/datum/antagonist/AD in GLOB.antagonists) + if(AD.owner == master) + antag_datum = AD break for(var/datum/objective/capture/capture in antag_datum) @@ -108,7 +109,8 @@ It is possible to destroy the net by the occupant or someone else. new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) /obj/structure/energy_net/attack_paw(mob/user) - return attack_hand() + //return attack_hand() //How about no barehanded breaking of the net? + return /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) return//We only want our target to be buckled From 2e5ad2f4d86405d101e15413b7281f4b20a742c4 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 16:02:40 +0200 Subject: [PATCH 334/370] Might as well crank it up a little more. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index fd9ee41510..bdc9ca9fdb 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -14,7 +14,7 @@ It is possible to destroy the net by the occupant or someone else. mouse_opacity = MOUSE_OPACITY_ICON//So you can hit it with stuff. anchored = TRUE//Can't drag/grab the net. layer = ABOVE_ALL_MOB_LAYER - max_integrity = 45 //How much health it has. + max_integrity = 50 //How much health it has. can_buckle = 1 buckle_lying = 0 buckle_prevents_pull = TRUE From df15e53cd3113648506a8e82d1b54461fa1ed822 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sat, 27 Apr 2019 21:04:24 +0200 Subject: [PATCH 335/370] Another attempt at the nets not being breakable with bare hands. Now with more consideration. --- .../ninja/suit/n_suit_verbs/energy_net_nets.dm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index bdc9ca9fdb..58183a8226 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -108,9 +108,19 @@ It is possible to destroy the net by the occupant or someone else. playsound(affecting, 'sound/effects/sparks2.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) -/obj/structure/energy_net/attack_paw(mob/user) - //return attack_hand() //How about no barehanded breaking of the net? - return +/obj/structure/energy_net/attackby(obj/item/I, mob/user, params) + + if(istype(user, /mob/living/carbon/alien/humanoid)) //so that aliums aren't completely cucked by nets + return attack_hand(user) + if(!I) + return + if(!I.force) + return + + return attack_hand(user) + +/*/obj/structure/energy_net/attack_paw(mob/user) + return attack_hand()*/ //How about no barehanded breaking of the net? /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) return//We only want our target to be buckled From 231da023ec9c073f1644172794de8ef2dc43017e Mon Sep 17 00:00:00 2001 From: Useroth Date: Sun, 28 Apr 2019 07:05:18 +0200 Subject: [PATCH 336/370] Makes the gloves actually stun people. --- code/modules/ninja/suit/gloves.dm | 2 ++ code/modules/ninja/suit/ninjaDrainAct.dm | 15 +++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/code/modules/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm index 4308120c4f..dc840d5336 100644 --- a/code/modules/ninja/suit/gloves.dm +++ b/code/modules/ninja/suit/gloves.dm @@ -37,6 +37,8 @@ var/mindrain = 200 var/maxdrain = 400 + var/stunforce = 140 //same as stunbaton, adjustable + /obj/item/clothing/gloves/space_ninja/Touch(atom/A,proximity) if(!candrain || draining) diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index 861ffb9446..45ca231a4a 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -262,3 +262,18 @@ They *could* go in their appropriate files, but this is supposed to be modular playsound(src, "sparks", 50, 1) visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!") electrocute_act(25, H) + + src.Knockdown(G.stunforce) + src.adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) + src.apply_effect(EFFECT_STUTTER, G.stunforce) + SEND_SIGNAL(src, COMSIG_LIVING_MINOR_SHOCK) + + src.lastattacker = H.real_name + src.lastattackerckey = H.ckey + log_combat(H, src, "stunned") + + playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) + + if(ishuman(src)) + var/mob/living/carbon/human/Hsrc = src + Hsrc.forcesay(GLOB.hit_appends) From 35fe334fe805c9547c4fe38b1aab613806cb6929 Mon Sep 17 00:00:00 2001 From: Useroth Date: Sun, 28 Apr 2019 07:07:48 +0200 Subject: [PATCH 337/370] Small tweak. --- code/modules/ninja/suit/ninjaDrainAct.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index 45ca231a4a..e72000598a 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -261,7 +261,7 @@ They *could* go in their appropriate files, but this is supposed to be modular spark_system.set_up(5, 0, loc) playsound(src, "sparks", 50, 1) visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!") - electrocute_act(25, H) + electrocute_act(15, H) src.Knockdown(G.stunforce) src.adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) From ee661d1eb828bb3b7b3a31d1f2f1babeeb67acfb Mon Sep 17 00:00:00 2001 From: Useroth Date: Sun, 28 Apr 2019 07:16:47 +0200 Subject: [PATCH 338/370] An afterthought regarding healing/reviving the capturees. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 58183a8226..b7f2b78e64 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -59,9 +59,6 @@ It is possible to destroy the net by the occupant or someone else. continue H.dropItemToGround(W) - if(affecting.stat != DEAD) - affecting.revive(1, 1) //Basically a full heal, including limbs/organs. - var/datum/antagonist/antag_datum for(var/datum/antagonist/AD in GLOB.antagonists) if(AD.owner == master) @@ -94,6 +91,9 @@ It is possible to destroy the net by the occupant or someone else. capture.captured_amount+=2 + affecting.revive(1, 1) //Basically a revive and full heal, including limbs/organs + //In case people who have been captured dead want to hang out at the holding area + playsound(affecting, 'sound/effects/sparks4.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase/out(affecting.drop_location(), affecting.dir) From 39bedb83416b91ec6586a49fbece4f4e408f19dc Mon Sep 17 00:00:00 2001 From: Useroth <37159550+Useroth@users.noreply.github.com> Date: Tue, 7 May 2019 06:07:19 +0200 Subject: [PATCH 339/370] Update ninjaDrainAct.dm --- code/modules/ninja/suit/ninjaDrainAct.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index e72000598a..10fce3d74e 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -263,13 +263,13 @@ They *could* go in their appropriate files, but this is supposed to be modular visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!") electrocute_act(15, H) - src.Knockdown(G.stunforce) - src.adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) - src.apply_effect(EFFECT_STUTTER, G.stunforce) + Knockdown(G.stunforce) + adjustStaminaLoss(G.stunforce*0.1, affected_zone = (istype(H) ? H.zone_selected : BODY_ZONE_CHEST)) + apply_effect(EFFECT_STUTTER, G.stunforce) SEND_SIGNAL(src, COMSIG_LIVING_MINOR_SHOCK) - src.lastattacker = H.real_name - src.lastattackerckey = H.ckey + lastattacker = H.real_name + lastattackerckey = H.ckey log_combat(H, src, "stunned") playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) From 2d977becb5b0356f43ddbe8f902bd6917a35ab8a Mon Sep 17 00:00:00 2001 From: Useroth Date: Thu, 13 Jun 2019 15:19:12 +0200 Subject: [PATCH 340/370] Finally fixed the net breaking mechanics. --- .../ninja/suit/n_suit_verbs/energy_net_nets.dm | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index b7f2b78e64..2617c2a3bf 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -108,19 +108,9 @@ It is possible to destroy the net by the occupant or someone else. playsound(affecting, 'sound/effects/sparks2.ogg', 50, 1) new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) -/obj/structure/energy_net/attackby(obj/item/I, mob/user, params) - - if(istype(user, /mob/living/carbon/alien/humanoid)) //so that aliums aren't completely cucked by nets - return attack_hand(user) - if(!I) - return - if(!I.force) - return - - return attack_hand(user) - -/*/obj/structure/energy_net/attack_paw(mob/user) - return attack_hand()*/ //How about no barehanded breaking of the net? +/obj/attack_alien(mob/living/carbon/alien/humanoid/user) + if(attack_generic(user, 15, BRUTE, "melee", 0)) //Aliens normally deal 60 damage to structures. They'd one-shot nets without this. + playsound(src.loc, 'sound/weapons/slash.ogg', 100, 1) /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) return//We only want our target to be buckled From 5e90c530e01cf2a7d32c95175fd24c7f926d2686 Mon Sep 17 00:00:00 2001 From: Useroth Date: Thu, 13 Jun 2019 15:37:18 +0200 Subject: [PATCH 341/370] Travis, you whore, compile it properly. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 2617c2a3bf..2d7e61ec08 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -109,7 +109,7 @@ It is possible to destroy the net by the occupant or someone else. new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) /obj/attack_alien(mob/living/carbon/alien/humanoid/user) - if(attack_generic(user, 15, BRUTE, "melee", 0)) //Aliens normally deal 60 damage to structures. They'd one-shot nets without this. + if(attack_generic(user, 15, BRUTE, "melee", 0)) //Aliens normally deal 60 damage to structures. They would one-shot nets without this. playsound(src.loc, 'sound/weapons/slash.ogg', 100, 1) /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) From bab2ec4789baf7824492e341ea5af825b592af51 Mon Sep 17 00:00:00 2001 From: Useroth Date: Thu, 13 Jun 2019 15:46:12 +0200 Subject: [PATCH 342/370] Travis, I fucking mean it. Compile it. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 2d7e61ec08..2617c2a3bf 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -109,7 +109,7 @@ It is possible to destroy the net by the occupant or someone else. new /obj/effect/temp_visual/dir_setting/ninja/phase(affecting.drop_location(), affecting.dir) /obj/attack_alien(mob/living/carbon/alien/humanoid/user) - if(attack_generic(user, 15, BRUTE, "melee", 0)) //Aliens normally deal 60 damage to structures. They would one-shot nets without this. + if(attack_generic(user, 15, BRUTE, "melee", 0)) //Aliens normally deal 60 damage to structures. They'd one-shot nets without this. playsound(src.loc, 'sound/weapons/slash.ogg', 100, 1) /obj/structure/energy_net/user_buckle_mob(mob/living/M, mob/living/user) From e3acef755a12cf552ea365890b333c65c4bfb1a0 Mon Sep 17 00:00:00 2001 From: Useroth <37159550+Useroth@users.noreply.github.com> Date: Thu, 13 Jun 2019 20:33:45 +0200 Subject: [PATCH 343/370] Fuck you again, Travis. Do it right this time. --- code/modules/ninja/suit/gloves.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm index dc840d5336..a01b354ca1 100644 --- a/code/modules/ninja/suit/gloves.dm +++ b/code/modules/ninja/suit/gloves.dm @@ -37,7 +37,7 @@ var/mindrain = 200 var/maxdrain = 400 - var/stunforce = 140 //same as stunbaton, adjustable + var/stunforce = 140 //Same as stunbaton, adjustable. /obj/item/clothing/gloves/space_ninja/Touch(atom/A,proximity) From 3f4d9319e9646c28e616f634a388a9c67dcb76ef Mon Sep 17 00:00:00 2001 From: Useroth <37159550+Useroth@users.noreply.github.com> Date: Thu, 13 Jun 2019 20:38:22 +0200 Subject: [PATCH 344/370] Update energy_net_nets.dm --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 2617c2a3bf..8e49c27d48 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -60,7 +60,7 @@ It is possible to destroy the net by the occupant or someone else. H.dropItemToGround(W) var/datum/antagonist/antag_datum - for(var/datum/antagonist/AD in GLOB.antagonists) + for(var/datum/antagonist/ninja/AD in GLOB.antagonists) //because only ninjas get capture objectives; they're not doable without the suit if(AD.owner == master) antag_datum = AD break From 1c45e2c6155202ada40f43348f682e91af6ec04f Mon Sep 17 00:00:00 2001 From: TrilbySpaseClone Date: Thu, 13 Jun 2019 16:02:48 -0400 Subject: [PATCH 345/370] Suggested --- .../food_and_drinks/food/snacks_pie.dm | 21 ++++++++++++++++++ .../recipes/tablecraft/recipes_pie.dm | 10 +++++++++ icons/obj/food/piecake.dmi | Bin 20411 -> 20789 bytes 3 files changed, 31 insertions(+) diff --git a/code/modules/food_and_drinks/food/snacks_pie.dm b/code/modules/food_and_drinks/food/snacks_pie.dm index 8264b4153e..f77b78d785 100644 --- a/code/modules/food_and_drinks/food/snacks_pie.dm +++ b/code/modules/food_and_drinks/food/snacks_pie.dm @@ -268,3 +268,24 @@ bonus_reagents = list("nutriment" = 4, "vitamin" = 6) tastes = list("mint" = 1, "pie" = 1) foodtype = GRAIN | FRUIT | SUGAR + +/obj/item/reagent_containers/food/snacks/pie/baklava + name = "baklava" + desc = "A delightful healthy snake made of nut layers with thin bread." + icon_state = "baklava" + slice_path = /obj/item/reagent_containers/food/snacks/baklavaslice + slices_num = 6 + bonus_reagents = list("nutriment" = 2, "vitamin" = 6) + tastes = list("nuts" = 1, "pie" = 1) + foodtype = GRAIN + +/obj/item/reagent_containers/food/snacks/baklavaslice + name = "baklava dish" + desc = "A portion delightful healthy snake made of nut layers with thin bread" + icon = 'icons/obj/food/piecake.dmi' + icon_state = "baklavaslice" + trash = /obj/item/trash/plate + filling_color = "#1E90FF" + list_reagents = list("nutriment" = 2, "vitamins" = 4) + tastes = list("nuts" = 1, "pie" = 1) + foodtype = GRAIN \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm index 8effc2599a..79d761c2e2 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm @@ -159,3 +159,13 @@ ) result = /obj/item/reagent_containers/food/snacks/pie/frostypie subcategory = CAT_PIE + +/datum/crafting_recipe/food/baklava + name = "Baklava pie" + reqs = list( + /obj/item/reagent_containers/food/snacks/butter = 1, + /obj/item/reagent_containers/food/snacks/tortilla = 4, //Layers + /obj/item/seeds/wheat/oat = 3 + ) + result = /obj/item/reagent_containers/food/snacks/pie/baklava + subcategory = CAT_PIE \ No newline at end of file diff --git a/icons/obj/food/piecake.dmi b/icons/obj/food/piecake.dmi index 16bb9bf4487b7cd2f69370c6f9b5a042d4c11411..57dda21757933c1a18855a438b534191b68305ca 100644 GIT binary patch delta 20027 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⁢%DYzt1n56|-#4XEl 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 z z-^+Y9q7o0H^3~pcdPd{ld7NnJY08dF*?&B08P&fl=dBS>oPa;oz6(H+WduUa@Womo zqUrINh-F*BafOgf-3&%3xeClM>F!QGY%g4b>CxQ%N|Te70ox zd_Hm5wHd54AEUWdPu7~9Y}364!vWFP5$qu{WS&^37)aJCBRfG3$bU(%CJQnNMSK z;+~=QmiE{Ue}6#CI%mHZBL49s{Q9YQ@kfGSe?~}Y&J!&Xgw|7V`Xd0mHG9RrmfTpD z)A+}j0wtgA8}rApV}zPTYp51Km2>q6IJD@^3HfX@jpvdiiGAIb*bg7zNc&O<=M(;I zHwW|Y<3_;!N#l1B?1v9<|KJ`ZNt*fr zCmH|AO&+`pMG4o|1OHfaU?3d^7QsSAKqIxcp2PD{*Nn%nE_wGHRj+7*cR&`4Kw~75 z?~}9~OxY2_i-!m=9^#g=9O^rK{Ln7W!EU$zr{(bfkvIW2?s$qP-$=vjUkFyKDDf=0 zVkNZWD}S-Nsqo9gLW0&)qA4u989KhAX#IMz?~+omTJic9^5h$7Y~1lwN+;IZ+DdwQ zI{Eqe@e-;<1n>u_8F`huoDXm~94O%#5Q~XYVx^{o)9FN#BzBo=s0_O3Jl958DkLkf zh;SeS8lgUJ1Ute6QIUDiDbE(I# z)9GYILS@zkDAXH}h9VT|6PLBhHgz9GzGTn6CSa0q7E884ZauM|_djs6aYH$Gu7CAV zv?^z62}8|zoBH|U%zC~)_A?JXxQUV*wq2Brwo92%n~d=?s=1ibCE`+z-)J<-p-?C` z6Uw7V7eolATE0ZWsqgCyN|VY5nt+q0BPp|C>xum=N;A;j(oXTpVgStM_!QdSUXf6% z^cfzEP;$ez|3yZd#zaa>OJ$|xy?lOOCWc%mkv<9J)K+w-5>G)BFvWN>EuU}xV#zkh z049qy;r2fNUzjXb`uwratfpG=%y$7({*QP~sQHT`lmC433-gn0(@2i?oiG|2bBHFO thQ=JC38 Date: Thu, 13 Jun 2019 22:18:13 +0200 Subject: [PATCH 346/370] port "PR to make travis use xenial and to make it work" --- .travis.yml | 5 +++- tools/ss13_genchangelog.py | 43 +++++++++++++---------------- tools/travis/build_dependencies.sh | 28 ++++++++++--------- tools/travis/install_build_tools.sh | 11 ++++---- 4 files changed, 43 insertions(+), 44 deletions(-) diff --git a/.travis.yml b/.travis.yml index 7138b23354..bef3a69ad7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,6 @@ language: generic sudo: false +dist: xenial branches: except: - ___TGS3TempBranch @@ -14,6 +15,7 @@ matrix: packages: - python3 - python3-pip + - python3-setuptools cache: directories: - tgui/node_modules @@ -43,7 +45,8 @@ matrix: - gcc-multilib - g++-7 - g++-7-multilib - - libmariadbclient-dev:i386 + - libmariadb-client-lgpl-dev:i386 + - libmariadbd-dev cache: directories: - $HOME/.cargo diff --git a/tools/ss13_genchangelog.py b/tools/ss13_genchangelog.py index 5c77063e96..b6c2e167e3 100644 --- a/tools/ss13_genchangelog.py +++ b/tools/ss13_genchangelog.py @@ -1,21 +1,16 @@ ''' Usage: $ python ss13_genchangelog.py [--dry-run] html/changelog.html html/changelogs/ - ss13_genchangelog.py - Generate changelog from YAML. - Copyright 2013 Rob "N3X15" Nelson - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -74,9 +69,9 @@ failed_cache_read = True if os.path.isfile(changelog_cache): try: with open(changelog_cache,encoding='utf-8') as f: - (_, all_changelog_entries) = yaml.load_all(f) + (_, all_changelog_entries) = yaml.load_all(f, Loader=yaml.SafeLoader) failed_cache_read = False - + # Convert old timestamps to newer format. new_entries = {} for _date in all_changelog_entries.keys(): @@ -92,10 +87,10 @@ if os.path.isfile(changelog_cache): except Exception as e: print("Failed to read cache:") print(e, file=sys.stderr) - -if args.dryRun: + +if args.dryRun: changelog_cache = os.path.join(args.ymlDir, '.dry_changelog.yml') - + if failed_cache_read and os.path.isfile(args.targetFile): from bs4 import BeautifulSoup from bs4.element import NavigableString @@ -111,7 +106,7 @@ if failed_cache_read and os.path.isfile(args.targetFile): if author.endswith('updated:'): author = author[:-8] author = author.strip() - + # Find

\n' if len(changes_added) > 0: entry_htm += author_htm if write_entry: changelog.write(entry_htm) - + with open(os.path.join(targetDir, 'templates', 'footer.html'), 'r', encoding='utf-8') as h: for line in h: changelog.write(line) - + with open(changelog_cache, 'w') as f: cache_head = 'DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.' @@ -217,4 +212,4 @@ if len(del_after): for fileName in del_after: if os.path.isfile(fileName): print(' Deleting {0} (delete-after set)...'.format(fileName)) - os.remove(fileName) + os.remove(fileName) \ No newline at end of file diff --git a/tools/travis/build_dependencies.sh b/tools/travis/build_dependencies.sh index 9e594733ea..39ec120292 100755 --- a/tools/travis/build_dependencies.sh +++ b/tools/travis/build_dependencies.sh @@ -4,6 +4,17 @@ set -e source dependencies.sh +#ensure the Dockerfile version matches the dependencies.sh version +line=$(head -n 1 Dockerfile) +if [[ $line != *"$BYOND_MAJOR.$BYOND_MINOR"* ]]; then + echo "Dockerfile BYOND version in FROM command does not match dependencies.sh (Or it's not on line 1)!" + exit 1 +#!/usr/bin/env bash + +set -e + +source dependencies.sh + #ensure the Dockerfile version matches the dependencies.sh version line=$(head -n 1 Dockerfile) if [[ $line != *"$BYOND_MAJOR.$BYOND_MINOR"* ]]; then @@ -41,19 +52,10 @@ if [ $BUILD_TOOLS = false ] && [ $BUILD_TESTING = false ]; then echo "Setting up MariaDB." rm -rf "$HOME/MariaDB" mkdir -p "$HOME/MariaDB" - wget http://mirrors.kernel.org/ubuntu/pool/universe/m/mariadb-client-lgpl/libmariadb2_2.0.0-1_i386.deb - dpkg -x libmariadb2_2.0.0-1_i386.deb /tmp/extract - rm libmariadb2_2.0.0-1_i386.deb - mv /tmp/extract/usr/lib/i386-linux-gnu/libmariadb.so.2 $HOME/MariaDB/ - ln -s $HOME/MariaDB/libmariadb.so.2 $HOME/MariaDB/libmariadb.so - rm -rf /tmp/extract - - wget http://mirrors.kernel.org/ubuntu/pool/universe/m/mariadb-connector-c/libmariadb-dev_2.3.3-1_i386.deb - dpkg -x libmariadb-dev_2.3.3-1_i386.deb /tmp/extract - rm libmariadb-dev_2.3.3-1_i386.deb - mv /tmp/extract/usr/include $HOME/MariaDB/ - #fuck what is this even? - mv $HOME/MariaDB/include/mariadb $HOME/MariaDB/include/mysql + mkdir -p "$HOME/MariaDB/include" + cp /usr/lib/i386-linux-gnu/libmariadb.so.2 $HOME/MariaDB/ + ln -s $HOME/MariaDB/libmariadb.so.2 $HOME/MariaDB/libmariadb.so + cp -r /usr/include/mariadb $HOME/MariaDB/include/ fi cd artifacts diff --git a/tools/travis/install_build_tools.sh b/tools/travis/install_build_tools.sh index 9dd73f854c..c1f91cec44 100755 --- a/tools/travis/install_build_tools.sh +++ b/tools/travis/install_build_tools.sh @@ -4,9 +4,8 @@ set -e source dependencies.sh if [ "$BUILD_TOOLS" = true ]; then - rm -rf ~/.nvm && git clone https://github.com/creationix/nvm.git ~/.nvm && (cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`) && source ~/.nvm/nvm.sh && nvm install $NODE_VERSION - pip3 install --user PyYaml -q - pip3 install --user beautifulsoup4 -q -fi; - - + source ~/.nvm/nvm.sh + nvm install $NODE_VERSION + pip3 install --user PyYaml + pip3 install --user beautifulsoup4 +fi; \ No newline at end of file From 0206a534b00294cc77130ba6040deb2872e6676a Mon Sep 17 00:00:00 2001 From: Ghommie Date: Thu, 13 Jun 2019 22:20:47 +0200 Subject: [PATCH 347/370] add in spaces. --- tools/ss13_genchangelog.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/ss13_genchangelog.py b/tools/ss13_genchangelog.py index b6c2e167e3..d70ffc7c44 100644 --- a/tools/ss13_genchangelog.py +++ b/tools/ss13_genchangelog.py @@ -1,16 +1,21 @@ ''' Usage: $ python ss13_genchangelog.py [--dry-run] html/changelog.html html/changelogs/ + ss13_genchangelog.py - Generate changelog from YAML. + Copyright 2013 Rob "N3X15" Nelson + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE From 27b7010181f3f4a26b100b099dea5b05f22443a2 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Thu, 13 Jun 2019 22:52:12 +0200 Subject: [PATCH 348/370] Proof of my asinine acts. --- tools/travis/build_dependencies.sh | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/tools/travis/build_dependencies.sh b/tools/travis/build_dependencies.sh index 39ec120292..2c24bdbaaf 100755 --- a/tools/travis/build_dependencies.sh +++ b/tools/travis/build_dependencies.sh @@ -4,17 +4,6 @@ set -e source dependencies.sh -#ensure the Dockerfile version matches the dependencies.sh version -line=$(head -n 1 Dockerfile) -if [[ $line != *"$BYOND_MAJOR.$BYOND_MINOR"* ]]; then - echo "Dockerfile BYOND version in FROM command does not match dependencies.sh (Or it's not on line 1)!" - exit 1 -#!/usr/bin/env bash - -set -e - -source dependencies.sh - #ensure the Dockerfile version matches the dependencies.sh version line=$(head -n 1 Dockerfile) if [[ $line != *"$BYOND_MAJOR.$BYOND_MINOR"* ]]; then From 84bb5d90cee512902571992717825f684bea5a80 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Thu, 13 Jun 2019 22:54:41 +0200 Subject: [PATCH 349/370] newlines. --- tools/ss13_genchangelog.py | 2 +- tools/travis/install_build_tools.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/ss13_genchangelog.py b/tools/ss13_genchangelog.py index d70ffc7c44..e97bef7684 100644 --- a/tools/ss13_genchangelog.py +++ b/tools/ss13_genchangelog.py @@ -217,4 +217,4 @@ if len(del_after): for fileName in del_after: if os.path.isfile(fileName): print(' Deleting {0} (delete-after set)...'.format(fileName)) - os.remove(fileName) \ No newline at end of file + os.remove(fileName) diff --git a/tools/travis/install_build_tools.sh b/tools/travis/install_build_tools.sh index c1f91cec44..0ea2a605ab 100755 --- a/tools/travis/install_build_tools.sh +++ b/tools/travis/install_build_tools.sh @@ -8,4 +8,4 @@ if [ "$BUILD_TOOLS" = true ]; then nvm install $NODE_VERSION pip3 install --user PyYaml pip3 install --user beautifulsoup4 -fi; \ No newline at end of file +fi; From bd35b8696cab1b3e0bc4c1d5502541d88659f1ad Mon Sep 17 00:00:00 2001 From: Useroth <37159550+Useroth@users.noreply.github.com> Date: Fri, 14 Jun 2019 12:52:03 +0200 Subject: [PATCH 350/370] Another commit to get fucking Travis going. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 8e49c27d48..13ca6f33db 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -60,7 +60,7 @@ It is possible to destroy the net by the occupant or someone else. H.dropItemToGround(W) var/datum/antagonist/antag_datum - for(var/datum/antagonist/ninja/AD in GLOB.antagonists) //because only ninjas get capture objectives; they're not doable without the suit + for(var/datum/antagonist/ninja/AD in GLOB.antagonists) /Because only ninjas get capture objectives; They're not doable without the suit. if(AD.owner == master) antag_datum = AD break From ec1ff9ada344ddb5b5f9b1d08c5a55d5d7fdf4b9 Mon Sep 17 00:00:00 2001 From: Useroth <37159550+Useroth@users.noreply.github.com> Date: Fri, 14 Jun 2019 13:05:36 +0200 Subject: [PATCH 351/370] The joy of making an error in a webedit. --- code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 13ca6f33db..c98a0440e3 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -60,7 +60,7 @@ It is possible to destroy the net by the occupant or someone else. H.dropItemToGround(W) var/datum/antagonist/antag_datum - for(var/datum/antagonist/ninja/AD in GLOB.antagonists) /Because only ninjas get capture objectives; They're not doable without the suit. + for(var/datum/antagonist/ninja/AD in GLOB.antagonists) //Because only ninjas get capture objectives; They're not doable without the suit. if(AD.owner == master) antag_datum = AD break From 7433293a3efb9bacf1768b64085ad64947a49eb3 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 14 Jun 2019 10:53:05 -0500 Subject: [PATCH 352/370] Automatic changelog generation for PR #8624 [ci skip] --- html/changelogs/AutoChangeLog-pr-8624.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8624.yml diff --git a/html/changelogs/AutoChangeLog-pr-8624.yml b/html/changelogs/AutoChangeLog-pr-8624.yml new file mode 100644 index 0000000000..598ed9b457 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8624.yml @@ -0,0 +1,4 @@ +author: "Arturlang" +delete-after: True +changes: + - bugfix: "Fixes high alert ERT suit sprites. You can see them now!" From c5e3010cfa96dba107e752708290cc8473d5490d Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 14 Jun 2019 12:01:52 -0400 Subject: [PATCH 353/370] Update misc_designs.dm --- code/modules/research/designs/misc_designs.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index e39d27efda..59df0f6e85 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -493,7 +493,7 @@ desc = "A blue print of a early model of the Meteor defence turret." id = "meteor_defence" build_type = PROTOLATHE - materials = list(MAT_METAL = 100000, MAT_GLASS = 100000, MAT_SILVER = 17500, MAT_GOLD = 15000, MAT_TITANIUM = 75000, MAT_URANIUM = 18000) //Station goal + materials = list(MAT_METAL = 50000, MAT_GLASS = 50000, MAT_SILVER = 8500, MAT_GOLD = 8500, MAT_TITANIUM = 7500, MAT_URANIUM = 7500) build_path = /obj/machinery/satellite/meteor_shield/sci category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING From f32291146b8086bebd11ec482a8fade26ea74e99 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Fri, 14 Jun 2019 12:02:55 -0400 Subject: [PATCH 354/370] Update all_nodes.dm --- code/modules/research/techweb/all_nodes.dm | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 701a83bdc9..80c597c2c0 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -212,15 +212,14 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000) export_price = 5000 -/datum/techweb_node/adv_meteor_defense - id = "adv_meteor_defense" - display_name = "Meteor Defense Research" - description = "New and improved coding and lock on tech for meteor defence!" - prereq_ids = list("basic_meteor_defense", "adv_datatheory", "emp_adv") - design_ids = list("meteor_disk") - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500) - export_price = 5000 - +//datum/techweb_node/adv_meteor_defense + //id = "adv_meteor_defense" + //display_name = "Meteor Defense Research" + //description = "New and improved coding and lock on tech for meteor defence!" + //prereq_ids = list("basic_meteor_defense", "adv_datatheory", "emp_adv") + //design_ids = list("meteor_disk") + //research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500) + //export_price = 5000 /////////////////////////Bluespace tech///////////////////////// /datum/techweb_node/bluespace_basic //Bluespace-memery From 48b4156fb6c99c36f133ee480d552f8e030c826d Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 14 Jun 2019 18:08:52 -0500 Subject: [PATCH 355/370] Automatic changelog generation for PR #8633 [ci skip] --- html/changelogs/AutoChangeLog-pr-8633.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8633.yml diff --git a/html/changelogs/AutoChangeLog-pr-8633.yml b/html/changelogs/AutoChangeLog-pr-8633.yml new file mode 100644 index 0000000000..3cbc9a78aa --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8633.yml @@ -0,0 +1,4 @@ +author: "Arturlang" +delete-after: True +changes: + - rscadd: "You can now examine pumps filters and mixers to see if you can use CTRL and Alt click on them." From a3c2ed0b5259af5ee4030d56df693f0caccb7e24 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 15 Jun 2019 02:19:57 +0200 Subject: [PATCH 356/370] fixes. --- code/game/objects/items/stunbaton.dm | 12 ++++++++---- code/game/objects/items/teleprod.dm | 5 ++--- code/modules/power/cell.dm | 6 +++--- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 2a22ab8c27..bfe630ba01 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -58,7 +58,9 @@ //if a stun is applied or not copper_top.use(min(chrgdeductamt, copper_top.charge), explode) - if(status && (!(copper_top?.charge) || (chargecheck && copper_top.charge < (hitcost * STUNBATON_CHARGE_LENIENCY)))) + if(QDELETED(src)) + return FALSE + if(status && (!copper_top || !copper_top.charge || (chargecheck && copper_top.charge < (hitcost * STUNBATON_CHARGE_LENIENCY)))) //we're below minimum, turn off switch_status(FALSE) @@ -74,7 +76,6 @@ update_icon() /obj/item/melee/baton/process() - . = ..() deductcharge(hitcost * 0.004, FALSE, FALSE) /obj/item/melee/baton/update_icon() @@ -174,6 +175,7 @@ var/stunpwr = stunforce var/obj/item/stock_parts/cell/our_cell = get_cell() if(!our_cell) + switch_status(FALSE) return FALSE var/stuncharge = our_cell.charge deductcharge(hitcost, FALSE) @@ -181,8 +183,8 @@ return FALSE if(stuncharge < hitcost) if(stuncharge < (hitcost * STUNBATON_CHARGE_LENIENCY)) - L.visible_message("[user] has prodded [L] with [src]. Luckily it is out of charge.", \ - "[user] has prodded you with [src]. Luckily it is out of charge.") + L.visible_message("[user] has prodded [L] with [src]. Luckily it was out of charge.", \ + "[user] has prodded you with [src]. Luckily it was out of charge.") return FALSE stunpwr *= round(stuncharge/hitcost, 0.1) @@ -210,7 +212,9 @@ /obj/item/melee/baton/proc/clowning_around(mob/living/user) user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \ "You accidentally hit yourself with [src]!") + SEND_SIGNAL(user, COMSIG_LIVING_MINOR_SHOCK) user.Knockdown(stunforce*3) + playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) deductcharge(hitcost) /obj/item/melee/baton/emp_act(severity) diff --git a/code/game/objects/items/teleprod.dm b/code/game/objects/items/teleprod.dm index c514e5e926..341c85fa1c 100644 --- a/code/game/objects/items/teleprod.dm +++ b/code/game/objects/items/teleprod.dm @@ -10,15 +10,14 @@ . = ..() if(!. || !istype(M) || M.anchored) return - else - SEND_SIGNAL(M, COMSIG_LIVING_MINOR_SHOCK) - do_teleport(M, get_turf(M), 15) + do_teleport(M, get_turf(M), 15) /obj/item/melee/baton/cattleprod/teleprod/clowning_around(mob/living/user) user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \ "You accidentally hit yourself with [src]!") SEND_SIGNAL(user, COMSIG_LIVING_MINOR_SHOCK) user.Knockdown(stunforce*3) + playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) if(do_teleport(user, get_turf(user), 50)) deductcharge(hitcost) else diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 5c1df573b3..3e93d9f42b 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -26,7 +26,8 @@ /obj/item/stock_parts/cell/Initialize(mapload, override_maxcharge) . = ..() - START_PROCESSING(SSobj, src) + if(self_recharge) + START_PROCESSING(SSobj, src) create_reagents(5, INJECTABLE | DRAINABLE) if (override_maxcharge) maxcharge = override_maxcharge @@ -103,9 +104,8 @@ return (FIRELOSS) /obj/item/stock_parts/cell/on_reagent_change(changetype) - rigged = !isnull(reagents.has_reagent("plasma", 5)) //has_reagent returns the reagent datum ..() - + rigged = reagents?.has_reagent("plasma", 5) ? TRUE : FALSE //has_reagent returns the reagent datum /obj/item/stock_parts/cell/proc/explode() var/turf/T = get_turf(src.loc) From 0d5c54b1b7bdd919f5217ab39f53d6f1b29098b9 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 14 Jun 2019 19:44:21 -0500 Subject: [PATCH 357/370] Automatic changelog generation for PR #8634 [ci skip] --- html/changelogs/AutoChangeLog-pr-8634.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8634.yml diff --git a/html/changelogs/AutoChangeLog-pr-8634.yml b/html/changelogs/AutoChangeLog-pr-8634.yml new file mode 100644 index 0000000000..d351579640 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8634.yml @@ -0,0 +1,5 @@ +author: "Ghommie" +delete-after: True +changes: + - bugfix: "Fixes power cells being unable to be rigged. Also prevents them from starting processing on init if they don't self recharge." + - bugfix: "Fixes many, little or otherwise, issues with the stunbaton status refactor." From c43d96e21c7ac4d38ccb3847690974ae0fc3c5e8 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 14 Jun 2019 19:50:07 -0500 Subject: [PATCH 358/370] Automatic changelog generation for PR #8611 [ci skip] --- html/changelogs/AutoChangeLog-pr-8611.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8611.yml diff --git a/html/changelogs/AutoChangeLog-pr-8611.yml b/html/changelogs/AutoChangeLog-pr-8611.yml new file mode 100644 index 0000000000..8176d10a84 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8611.yml @@ -0,0 +1,4 @@ +author: "Poojawa" +delete-after: True +changes: + - rscadd: "Added digitigrade socks of all known ones anyway." From 280e7d7d8113796894f6cdf305ee51b9fc29f052 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 15 Jun 2019 04:36:40 +0200 Subject: [PATCH 359/370] stops borgs from sprinting into negative cell charge. --- .../code/modules/mob/living/silicon/robot/robot_movement.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm b/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm index 598690590c..80598f134f 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm @@ -4,8 +4,8 @@ /mob/living/silicon/robot/Move(NewLoc, direct) . = ..() if(. && sprinting && !(movement_type & FLYING) && canmove && !resting) - if(istype(cell)) - cell.charge -= 25 + if(!(cell?.use(25))) + togglesprint() /mob/living/silicon/robot/movement_delay() . = ..() @@ -18,6 +18,8 @@ if(sprinting) playsound_local(src, 'modular_citadel/sound/misc/sprintactivate.ogg', 50, FALSE, pressure_affected = FALSE) else + if(!(cell?.charge)) + return FALSE playsound_local(src, 'modular_citadel/sound/misc/sprintdeactivate.ogg', 50, FALSE, pressure_affected = FALSE) if(hud_used && hud_used.static_inventory) for(var/obj/screen/sprintbutton/selector in hud_used.static_inventory) From 05066f241b74d33c6e4bbcd439ca8527d0c5d4c6 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 15 Jun 2019 20:33:38 +0200 Subject: [PATCH 360/370] Improving keborgs' movement, not removing. --- .../mob/living/silicon/robot/robot_movement.dm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm b/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm index 80598f134f..c7a2447be6 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm @@ -5,21 +5,23 @@ . = ..() if(. && sprinting && !(movement_type & FLYING) && canmove && !resting) if(!(cell?.use(25))) - togglesprint() + togglesprint(TRUE) /mob/living/silicon/robot/movement_delay() . = ..() if(!resting && !sprinting) . += 1 -/mob/living/silicon/robot/proc/togglesprint() //Basically a copypaste of the proc from /mob/living/carbon/human - sprinting = !sprinting +/mob/living/silicon/robot/proc/togglesprint(shutdown = FALSE) //Basically a copypaste of the proc from /mob/living/carbon/human + if(!shutdown && (!cell || cell.charge < 25)) + return FALSE + sprinting = shutdown ? FALSE : !sprinting if(!resting && canmove) if(sprinting) playsound_local(src, 'modular_citadel/sound/misc/sprintactivate.ogg', 50, FALSE, pressure_affected = FALSE) else - if(!(cell?.charge)) - return FALSE + if(shutdown) + playsound_local(src, 'sound/effects/light_flicker.ogg', 50, FALSE, pressure_affected = FALSE) playsound_local(src, 'modular_citadel/sound/misc/sprintdeactivate.ogg', 50, FALSE, pressure_affected = FALSE) if(hud_used && hud_used.static_inventory) for(var/obj/screen/sprintbutton/selector in hud_used.static_inventory) From 5c99bbbd452daa4709396a05cc47c78aed7e415b Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Sun, 16 Jun 2019 20:00:31 +1200 Subject: [PATCH 361/370] Undoing first step into scaling damage for fullmerge reasons --- code/_onclick/item_attack.dm | 1 - code/game/objects/items.dm | 2 -- 2 files changed, 3 deletions(-) diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index ec742a8dfe..d23d0905e9 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -113,7 +113,6 @@ if(I.force) //CIT CHANGES START HERE - combatmode and resting checks var/totitemdamage = I.force - totitemdamage *= I.force_mult //Compression kit uses this if(iscarbon(user)) var/mob/living/carbon/tempcarb = user if(!tempcarb.combatmode) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 0765853b9c..bfa765e393 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -109,8 +109,6 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) var/list/grind_results //A reagent list containing the reagents this item produces when ground up in a grinder - this can be an empty list to allow for reagent transferring only var/list/juice_results //A reagent list containing blah blah... but when JUICED in a grinder! - //Compression kit vars - var/force_mult = 1 /obj/item/Initialize() From e8f065661562cb69b5d147425a1e4499fa123a92 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:03:36 -0500 Subject: [PATCH 362/370] Automatic changelog generation for PR #8639 [ci skip] --- html/changelogs/AutoChangeLog-pr-8639.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8639.yml diff --git a/html/changelogs/AutoChangeLog-pr-8639.yml b/html/changelogs/AutoChangeLog-pr-8639.yml new file mode 100644 index 0000000000..f2f24d33ad --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8639.yml @@ -0,0 +1,10 @@ +author: "Useroth" +delete-after: True +changes: + - tweak: "Makes the netting much less clunky. If there's only one target you can net while you press the +button, it will just net that target instead of bringing up a list of mobs." + - tweak: "Energy nets now revive and fully heal capturees (even dead ones, after calculating points). If someone's got a scan and wants to get cloned, they can always kill themselves still." + - tweak: "Capture points are added on capture, rather than round-end, so it no longer matters whether your captures kill themselves in the holding facility or not." + - balance: "Makes the nets a bit more sturdy. (previously it took mere two welder hits to break one)" + - balance: "Makes stungloves actually stun people (currently comparably with stunbatons, adjustable). Because electrocute_act(25, H) did fuck all, stunwise, and on top of that, people in insulated gloves were completely unaffected." + - balance: "Reduced the stunglove electrocute_act value to 15 due to above. Could possibly be lowered further." From 7ed360e54f4b7d727d7974c7faf0a070c9512db4 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:04:11 -0500 Subject: [PATCH 363/370] Automatic changelog generation for PR #8645 [ci skip] --- html/changelogs/AutoChangeLog-pr-8645.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8645.yml diff --git a/html/changelogs/AutoChangeLog-pr-8645.yml b/html/changelogs/AutoChangeLog-pr-8645.yml new file mode 100644 index 0000000000..c299dcbbb5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8645.yml @@ -0,0 +1,4 @@ +author: "Ghommie" +delete-after: True +changes: + - bugfix: "Stopping borgs from sprinting into negative cell charge." From 9af1ce97f8a76b6bb118b3a8a337a8019e2337a2 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:08:50 -0500 Subject: [PATCH 364/370] Automatic changelog generation for PR #8623 [ci skip] --- html/changelogs/AutoChangeLog-pr-8623.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8623.yml diff --git a/html/changelogs/AutoChangeLog-pr-8623.yml b/html/changelogs/AutoChangeLog-pr-8623.yml new file mode 100644 index 0000000000..63f51b18eb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8623.yml @@ -0,0 +1,4 @@ +author: "Arturlang" +delete-after: True +changes: + - rscadd: "The RD can now suplex a immovable rod. Good fucking luck." From fe62b961a2c7df70d82e52b942f5869c1739d7a7 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:10:49 -0500 Subject: [PATCH 365/370] Automatic changelog generation for PR #8640 [ci skip] --- html/changelogs/AutoChangeLog-pr-8640.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8640.yml diff --git a/html/changelogs/AutoChangeLog-pr-8640.yml b/html/changelogs/AutoChangeLog-pr-8640.yml new file mode 100644 index 0000000000..b06feb4613 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8640.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "baklava" From 52db8135bc83e725d5482b41d8b4fe0630a3211f Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:11:13 -0500 Subject: [PATCH 366/370] Automatic changelog generation for PR #8605 [ci skip] --- html/changelogs/AutoChangeLog-pr-8605.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8605.yml diff --git a/html/changelogs/AutoChangeLog-pr-8605.yml b/html/changelogs/AutoChangeLog-pr-8605.yml new file mode 100644 index 0000000000..c6a601f1ca --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8605.yml @@ -0,0 +1,4 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "Medical breifcaseses" From 743ac969e67e4ca16d51e296f2f9d4612f9ea74a Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:13:10 -0500 Subject: [PATCH 367/370] Automatic changelog generation for PR #8479 [ci skip] --- html/changelogs/AutoChangeLog-pr-8479.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8479.yml diff --git a/html/changelogs/AutoChangeLog-pr-8479.yml b/html/changelogs/AutoChangeLog-pr-8479.yml new file mode 100644 index 0000000000..b6c8340527 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8479.yml @@ -0,0 +1,4 @@ +author: "Ghommie" +delete-after: True +changes: + - balance: "Buffed krav maga leg sweep stun and stamina damage. On the other hand, it's now unable to be used on already lying targets." From d91700dcfee9b9aa69e75230ff0b5f6ff4ce2f8e Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:16:15 -0500 Subject: [PATCH 368/370] Automatic changelog generation for PR #8591 [ci skip] --- html/changelogs/AutoChangeLog-pr-8591.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8591.yml diff --git a/html/changelogs/AutoChangeLog-pr-8591.yml b/html/changelogs/AutoChangeLog-pr-8591.yml new file mode 100644 index 0000000000..09eb449899 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8591.yml @@ -0,0 +1,4 @@ +author: "Ghommie (Original PR by Vile Beggar)" +delete-after: True +changes: + - rscadd: "Warden now has an added drill hat in his locker. You can change the loudness setting of it by using a screwdriver on it. Use wirecutters on it for a surprise." From 4a88cce82e410d2a0bdc96c5cd4489aae03ef805 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Sun, 16 Jun 2019 03:19:53 -0500 Subject: [PATCH 369/370] Automatic changelog generation for PR #8565 [ci skip] --- html/changelogs/AutoChangeLog-pr-8565.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-8565.yml diff --git a/html/changelogs/AutoChangeLog-pr-8565.yml b/html/changelogs/AutoChangeLog-pr-8565.yml new file mode 100644 index 0000000000..91faa4d8b6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-8565.yml @@ -0,0 +1,4 @@ +author: "Skully)" +delete-after: True +changes: + - rscadd: "Nudity Permit, a completely invisible uniform that still has pockets and such, to loadout options. It is more or less a direct port from the RP server." From 979455d86a424faa4f2eedf954e36712e838197f Mon Sep 17 00:00:00 2001 From: BlackMajor Date: Sun, 16 Jun 2019 22:10:00 +1200 Subject: [PATCH 370/370] HAHA WHOOPS --- code/game/objects/items/devices/compressionkit.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm index cd26a06dde..5ac958328d 100644 --- a/code/game/objects/items/devices/compressionkit.dm +++ b/code/game/objects/items/devices/compressionkit.dm @@ -8,7 +8,7 @@ righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' w_class = WEIGHT_CLASS_NORMAL var/charges = 5 - var/damage_multiplier = 0.2 // Changing this effects how much more or less damage a resized item will do + // var/damage_multiplier = 0.2 Not in use yet. var/mode = 0 /obj/item/compressionkit/examine(mob/user) @@ -83,7 +83,7 @@ sparks() flash_lighting_fx(3, 3, LIGHT_COLOR_CYAN) O.w_class -= 1 - O.force_mult -= damage_multiplier + // O.force_mult -= damage_multiplier charges -= 1 to_chat(user, "You successfully compress [target]! The compressor now has [charges] charges.") else

OW2 z1m>7sAH3dW{8vQsg#~x!KFJ+MS{Qrdzj1d80_>1~e@8Z*Rx8GN-;2Kte=G3ehz>!Z zv^sHa*&uE?T7*bGJo%fmBuAM22)?Q65OkG{TTV5y5K>_1iPa%L>`hYqN=|aZtlecR zo!6QN+m(U%k3{rZNY z=^PPMTjtnrNnS|ZY5o40eoD6kW|(q!JS<4MC-T&Y*hkB+#kHjvwS3UZ=int zak1mQ%<;m{TVFf~j`==ElIH6@Ic1?pJLk{Ph{b)nG+Y~FK;ieOlOHNEM*njgpn=^` zVj-FCJuPdtg+2iM+zC9bbFKcMFxy;;EiJnEd&3*;HgvXLo!z$_$P5Y0<@GsGh(YaH0-FV#N zbbP;hv!4!Qrp+5J>QK*f`CKv>s!{D4UYPVOPq>EpqD#Byb49RgE&? zZA>PnLDSPjn&ofF8 zen`a|8{GP|nv54(jC4=@XWuOKqOuO(IYJAC?3$TGV0z>c6Y|mD_n$pyUEWH;{oMbq zN1lVMeel3#fdj|=@r$=AJAIsdMz^>pv%qjOvSxdy>mKrMR3QoHvA{NU+nBh+8HYH{ z^XeFL$aUse7AwW`m34#WZ$2e{IO%4LUw;YPwGdowxP7;O(C=*jNEe$d2w)*~zn}24 zw~Gz0;58O-OV|B=_E&W=r@!nBT^LikGC{K#RzDP||7y8VK64=8C)d5S$x881dqvfl ze)p_}A2sHR+XoZgdfv>OlI}?zONf2nAC_6juMgji?X~yVAje&xiac>u^)=u+z5j~XO2+dX@&3}CeVtTBIED44DT0>c> z$CnOc0J+%>n!B4J(l%#jHT4scto3EMjY($q#*0y_A138DA!EGBG~NWls2`-yy!TF- z2N-2#2#b{zxtMnk?ERr5p<@-#$O-k$=$QAkz0v=pFei{ksz zr#<%xB#gD)^OxUD$=AWcg*=ZlI|+ATKieOJ%(CaY6(HHvaPe!u6kLIFS#Y;g2X|`p7~!(tk?w)PDk2!A%O#O0kSF8a zK0Y|`^V!K@aWU1PF{#z*ZnL{B{rJ%a!Fjg9-4BSFEm#MyEjZ5uhjV)`>DU%5^6O%} znn%X$vsVzYvEkU{_+v$w-}HwnYT{m`RwZe`3sah;xwrSWNwk6OwKG}V=;i=4@}y@5 zxaqebcnJ2Kec)e_GD!SWeltYgUT!tk@I|wXj389v|C2Tmm^;z=APu^}I(`4oPdcOC z-8OgVB9=izPd_ZGR?QE}*DU$F$oBRBMpxj$mE;&BEguScyaMD+N`3zKJ~h8tzu*Hc zZHnP#)KXxX*X&Mh`>76-=l}KDF;KgQ+#QO#!+^{;`5(;lfqC%&=_o?=I)mGmEBrG4 z?fXB;Qos*yF)|ql4F4x{qn1PD><_sH(F5@~!7gEMR2T*^SJ)(l-9MOTZHqwv z&Go4D6%i7etS9>qp2q`T=f4nh)8d06iL(DEHsim4)RQ*oA9%Jg!Mw{1zS zaIV@r_)j9};_j(JCjXkEp5FVJHua}3xN$`rq_~CKCD`9(N^Jl6_J#@gd1P~QQ!n=u zsFb*Eb=Iph>^;N50u$=DA`?*d3!L5?W2Tclf;{FZ>4QU%^B4Hs^?f)(BdA|*Y(bV# zf1AKyq0VkroE)JelNt)%-Pw<64_m6Mhx0{~P6T$;9uu0a^Pcn?PgE_0b}+4$R5*vD zH_F((pZ_I)93HW1GN&BiE*Z>!(=Q}|hc25S=T%|K?U_YHcf#0c!-V*h&{18aCb|g0 zb3l(C#1C~z*rjn9dka=6wK|(zY7kg3;|Z)hr9MZPrFtR-f4db6o?4ttfp?L1pxD~0 zHXo2-0)qc%D?aGON$6?E^R4!oM*PHo#~6PX!?4GxGq*-C+N+t&Wu@e~xyjrcyR`NC zer8%POgCZ=&5C)ff$m#KI@0q)AtojebcUjV7z?HOPx9hkrP4a*B$y!XZ7N&WOTT^$Q-{F^-ma|(Px$D@*wm5jE0-np)xwf46}a2_n5F-+e@W%Xzu9rf4s9Hq4(aU%!$5^iuF=Fw)%TaPji}ehSr}l{yyO9YBv8CU)BdS1Vqe z^k4MDR$3~$&9F-h5Ws?Y%eQ8xtr(~w`bZ`5odw_6WErB)y?O+u5%!J>{5g6ObK+$| z70Yt;>ACbk9iUQvIPY8Ujr#Au>Y?W5uIf!Lj)Mn}D=9%qKl9EyFhPH1h0fIfeqoaT zGA{4S*sXM<8;oIAP#$xdRXZh-4sz|$Kx$6MAGygiK56d&n-u!OV~!jaU-CZ%qiBl? z=}v6~Pe;^G`bE_qCxj6G@>+zOuPuO3OG;a_=@z;-fq=yTod8#Ikjrb8d#n35jDFXe zeOpmEK(!S-kA|l)OmJyw{$#WY6IL*Div;t!UGztrJDKUn_i z)5m`(L1~T%EZ`lM>vA)g{Eal^Gj|X@=%1aOGDl6KyKa6(E3f*BJE;hg`>X>Ck}>1p z+NA=9R>aTA=C)d_NrvBzlT#mX^{?!+-Z#7;j2eka8YNBV-V|f#gRFJ*L2l;O#qCTv z&Qja$5B%-{eb;B(qTk9@BJ)WH5qnX|VjgS0NP0Lk?-p$1w9Q)!z@x_W7mr!T%@^gz z4PW=?misP48Nb*Ee1}#ygnVZ+%nU5Hr8m1#@rpT~i#yKPJ-u^}>>%G%{iYxoFx5U-X_;Mz%q~#J-X^6)pn95rskFN2|*Kk>afTM{c62ywm@o0leBx5jKOx3(d_B(!CR`& zd8rDo!DM&5Uh!u(2s%=83eC5Rv~LVa2?z+`^jQu48kqdn#zA>(e~(VFzpRF>@6WG& zgq(h-Cl_o`6FSCDXz0<<&9nW{MT?*5p+5W;^g1g>)Vdwc)Bz&h+7L6T+F(90?Yr{n z|5oS{%Rk7^r#ggT>`KhD>w~*kxZp|SGP_jFIK*dA$krLG1+BgYP#?8Qv@mpu=6#TK(dVD$01Yg;a@ za61+mL8$l)^a5?LI?SNwy>j#mV_f&0Q&$RkW_3H&jDpI!=*9b3wZ~~=U4V15*ra~y z=iM46yvYjsn|;y9jt*bs)W9j?rPm7Y2U0~SZDRpD87^Up?1BHwI%y zCiG4vtVWAE(jdlX^sC8gb@REC8;uM%+! zhNkDJeQw?4GwQtKf>-?f{OmfNpHRSdcN(|`^6ik(_S519#rcq3jJfouIN3~Lg3!+E ztqwKyQ!6Z>rEvx}*$qp6PVz_(0t1`5q_(=9y2gK+EI%+eO}L|``e8~tc z1mps>t7Dj+O8U$#d}Y>obD=!-#-07`_?a)tYWaEFc~G$a$V6iCy80{QLc%-3F8-Gc z=MwmtQ<&GZzPNdU)ofe5>}|PbI%`o~vvmF&>B8l~!L}mdkUfn6xa7_IX5$sh9a|z1 zMQ9MWLl3tY-(BL0@TwITLxh=SzuH}Y>xl5t6JH3v3HgozWq{@>eSc^kz&X64qpWU~ zw^!Lui5}0Nsl=iWPXuogZlCgWTFKa3yaaM`keq#A*TdN0xM}m>{USIPvnju%f3v=v<`Wt z+Hunl=fSml98xrpb_R3Gv^kjyGr}XAvH!u6*xM+I+WJ9>9tE3*kBYVL@k|+UnJ#Ip z?AKf4nPbO%%dr_XMA&0pOHw`JrxhtyQjdAexiW$4PF7$jO~_^Q{c3$5ofVKWoExc! zTT=f!@J^cTU_3vex{}WF3$y)10D^he6yKN(nc5k!lJ;X@GW;WgFv8{20N%61ede3@ zHNF$BeQCX_z%`zhtoE>CVnTZ6dMx_Zy||_u$us>Kz1-&)kkcUH@}}ya^O|@$tvL?C zoqLKwlM6i;Da(8gDZ#bfflB?9cT{&`Vs*N#C=MouIQYhKF*TO0;^)uHh3AZW;(dRT zTSb$hUCX$@v>(?^J;LQd+|8MnE2oqcq$>Bh;;h5QfUOn(9RgmM}xEMPp{F(61fTO8%vXQ`V$+SC5 zost*+CB3$3Md;yUS=|j|T6+mrcQFF&KX-_#@=?53caB2P&Noog+Mojs>@g>ie7zJg z&zdc>zb#$+OCP;g>)%r|rXSgH+FJCseyNmI>kt(UcW=()pMPAqNOFnP=j0YL;t<;H z@;t`82?*}wqKy@YK-;g%EwAnai7G{N~Mua9!`}QZx-A0c|JbM1uiqeZ={GS?IvHd zKZ1O{^rdJ&i+>+8i-Fe<0qpSo`f+ReDmxIiKz{%H@@Y1(=12^|oR@9)l}yS`oG00<&iuO% zKV~GFCjv;|9_50gl-+tvbAh07lB+LGRUHBM8Idz=iK&i=JFGRX)%D6HV^Y#pOWGG@ zWi2?%>#~g3OM?D6zYPxYIq?-TcAV1>i66?L>bEP8gqa+IXNy^PszI;QZ045TIry0w<6Z@p8op%SFL=c;Q)-$#W!Y^y@(TP7_pp zcSldRuk49}a>G4WpVJvXZK+dp?r9Vc2`HG<&LCszR>4Bn(Fh@d3OiqOcxz2^@BXEO z1gpVFZuUAv8WyWBPICmt^k|K6Av!&)Wfx!6(E zb&WO$SsVElzGiUJJmKC-V-NT&H3J&Dz0!S4fWP%OC9>i6-G~*5l?lDQHFa0g=$~5j zU+XZz42!;6f17)opTUXR$W#``ehvHVW9>r#uK+XkT~|J@Yz>cEvbjv@u4)<>tv_|*xT&@#G&SsrC zm_Abp7agl{u$!FPP*_5I_zLA_h@C-i$C?m!?tQ#HN$Gi) z%}llYvPE1V54pG95B~vn6nRKxz*|03+WqnZl7KPl1# zDbi~|q)7+qkf4AxDS{M135bA5Q+f#rMVfR_dT$m)Iw&Qf34#>qodBV?B-8*QS$2Qt zw}0&U?(RAB&wFp)oOkcsJ8y3L%sa7xWpI~VMxIPz;#KbDXk_+6Fv9raEG?5Guy^zE z?+fNTMap*2_UMRPd(Y)&x~4U*xdm;=dpBhMqrbnr6XWwq5dS7lG{Y?>H^nyX%lM9` z+<~f^3x8Fs!Vg~PPflOU#u%h3<4c6b;V9 zy(s^+5J*@IWIzO>X`-@t_f2l`@MUap*HfeCDRRZ0Noa+E7r^zeiEsgw)|4SrgT4?| zc-N3WD5MWO;NvhejvMV16?{ukHKM6T4;J!}k;oQN!SiVro%h6TVLh6L)egO)tL-Pc za0|K7JE5OC7o-X)`sErGy<*hqks~s4i=QSCiC!xt9#q2u>K;@YH-RWOOLH0HJmYa2 zQB_gxSl$9#SHqggG)$zNV;L{RO)2g%# z6h=$*Fs8Dcs>S-dPPS#;v*C_9(&ATO-h!CEoR^q3hOgDk`!YQ>LQjMocXKkSwSl@c z+r!P|-rQ?5@9VC%)5^wLIPj9u0M|4F)`0)c1vn@9*~eLJt&!F)xR=5Y6>fdud#frD z!B?_ksQA&NX7DfD=Es8Bw@ z^{)^Di69!c&goNo-e-*eJkusxP$s<}Ql>{E(h;xC?MNQdZDqZ;=uKMKbjmdm>`tf! zJ)<-uDHAFrRiFlp2gzDz)vtlHZibPRF5c{$eQ8fxqa!C0{8uctB2b+mH!fY4!Rq?U z@{iK$L#^ST+wRYMV%5IL{_E2|A6wHrhl-cN{6|7g^*AMO6S)PNj<`UG zi{*Ou?;Gwb_YCe%%s&WKA^-XF=Q4o6Y$UXEkN4zP-M6V8^^cUBVL`S2q$yE}DW6&; zNiyGJPY{29>%{$>#KG`RAZX6_lJb9w>iqd)jOP;%`CZp`T}KfWuMqcL8!T(TWTg+# zkAst*9eMc%eHez_vt4^R{FY-yt39*B4=r#Z=)s0mZ2sE3oZP_o)NQ>u@@H`{G5TU5 ze&E4H`S(aHF+pu%MFm}3>j8Rit#9xq-D&x}`IbU)pyUs3dMskkZdwLPDSS1%a?|c> zfCBU_)}=7~C759)bID}!Osw!QuF6Av?6Ge@+Tlgs%FnxAeIF!+s4a8eQNxOQO^l>T zvwY!*K6G5?)bh)+KlU>j;ewd;V?BcTMx;K04S3fDfDxHpJL>R^MknJA-nke&#W6;5 z&Zm~OYk$6@fn{~+Ub)YLB+MjPua2<4ZxsfaS0!2D!da*nQ|b{7 zZ0V7uI^Q-{leeq$N+t1nbQ(g8Yt!)-^r+397m|F48}@x3HNZceiYVB6AYcTRNlO2t zcL^h8LjxnP%tnrG{f3&lc(avna1JBgCcP5<^ zZWXJxTW1LB6OwxXM>gS%<)@jDzgdY`Mm*_p?egaHUoXkf-Rw;a9c&tFa_9<-Jnegc zXCi|W1*<{t0~eW5nxa1G`qEA7uB=j+pb$=ANz3NlV$W(Ui}b>U)ZfA`mx0M_U4+41 z2m8DUlS~25<@~2tH=s4QB3*xA1UIPhrh8$+AKi8-TLc)c5&*o=wH*6RepWH5NB{B& zA|GYH4BgN|k=X|c^<1=+z=|HsJA?vf-yKuA={h1~gsYANQg3?!R?f=Og}Hv5D@)rM z0)+B?KN6W%3k~5V*;ZYl9LQFc!0 zqkuw}72LK(;pwqFJF*J+n&*)jKwD^$VLh%WQk9fQ+^CmJxQ6+UaT)6Sw`< zuR!f(FYzOlw%tpa<5EmJmLdoM28duB|8Tx`gy4Dt!4ErhQMqE=w?NNT(|h+WfL-N7 z?I#cP1?COvv6Bf*z`N~$!7|a^0R?FAU0$n{jJvy>9VjHJ8pnWHO@!EB$DBt+ti-E7 zGv|*~52Q`unK%5^$n{AX+kbQpC{ws66aw9BxaJ>^`lL2@Y^SV4xk0|$-IQEWefpcG zF9y3abD6AjX<$PmhfE$72v8V8|7_b=PRH~G{TviR2O9E}#K-}df0m_cao&*~=!s{> zy%>Pf&=c=C3*&_en49$pon~oys^xc}GLz#~1W3YmWLiJQXg0dNC zo|8&poN-Z9f)Iq5pOc(SE@6T)pX?;eZuobEOqVcN%^xQA^8dQ&6YwZt2~ zrU}(!qC^(i<$eT6f5x;E#2?__1HP@bX&qC27_fF4f553H2`*7z-Yq@VBLFettTwMmTzWFK|2vaMJJyhzeO85uoc;vyv{!JTIHOK& z>cOMMAFCIjZx!db0;op`b7L2{wa9;nrg7}~bY3duQciB9^!ZVzZgO?l83(9EvwPyS z&~Yn3OW5517Zr%ASROu7u0{{rt~m-7gm_JmyV}uni3QJXO7cw;9iAdE(g7WQJ- zWhktb|0Tcd&Hi%}%aoyuAGc&}OL^Bxa477_+PyDLhg+%~#3Oh0sA_RqgW)e=vn(Z| zM1p5%wEa9im+SN*ZaXK#^OZllI5df1(fb5ClF+1aBOUXT97GM~w$vcJ;e#8o&q5jc z&zBm+NX8jjx04@ij`zz=Nc`Y*ioRm{BW;yrCJ^7S?zDK*hn={-cLS&?Jv`dA_ZZ?A z5#&8|=j-8#&VXiI5|Kv6j4V72_dXw3ay9Az0a<+67FY=o@0Nah>Nr>kWTBO4=Rqw5 z7I8WW!)>oVTTQ)H_*fqsm^Vqdtx zwq)ic?hfjrsy>QWo@8T9hJXlw@HH8v(gs|cmAS2t##bFY0{4QyQ&^b7X!qOho=B#z_W_1{Mh#+1hPr0pCgtC7o?Sm~^^b z1#SDfFZ12x4O9nw`8}cy_aJ6mDZ~jHVgJxkAqb%JqjOGNeo2;C0c7NH!SmB)T~%|t zaBtOTdAZ@YL~*%?DF;4%!v*iw8KE3$-OU^~;rMYuO!`(s!|`mHaV6c-jQFiTILWUL zw9Fx(uY)P1+dz%ew0$?P+K*>}Bw)BMH?wq##G}lIz8qkV&9c2*ws>LmjM+!*$?;2m zFLGNBXfpte0#Bq~c6!{SbN!cW`vfy>nW~}{Z*513*$=vwd7|ybwa!WCwf~5)X4z&w zW!qkm^JO+z@8#?9a)abgP*M4XJ+>H$>>S+6yQ*i0y%=X$W7b+JqQ{`CZhjOH#}8w& zCpx{M9t|7aTZUtFZQay}R~`G^NYg|As#m3R&+e-Ylrq7)IK@BQL?%m9_^d=_ z<>a>h#T^T;D3ulGVrb{spfh*f#B4_dwu_VjNJR5sRGK_oYd$B^us6B6Xy19>5?=l1 z=^1XPwlTq!vs@5=pD4~eZ3HLnOYcrEYQEI=GV}(13PNG89%|F^iqU#KT}j2Y*cLD7 zd26s*$_14NW;!S6?)cvac~BCEwERv}~?H9}^SjNx3-HR>C6 za|0x(B}m&*rO~Xb%u8#}2|$uRkBWad<>uGeR&-j#eYHZ}Vt5C6+PJypaB+0Z zbW_|>?+S1gme*m@E&I$+*2Uq1)31VQNtjvgFIewE*vvEH>p`Q{%w@yTrI>xGQNa6W z8Cd44UbymJp9%e@*2@BgR~o!oc*r}0w>3>Yn#0$gkLNZ+4KS*gP|om24FQknSw^LF z?0fZwfnQHajZgs=2Tj8dBO@uZ`li)gJmLoX0D*rD^O%A(Ibl%flKH}b){U;4FWpdo ztE8`GS=87)P}A+%TcDcXBhI+^iuxHE#0;PnlbdB+)bhhFgS^8>{FE}G!mA6%sA)|ZQl#JFamr&@f*MTT{9SoXnrh_ z*y3{PZ|!kI<4Y6^q%J|^MSSNLVj&rA{*J5=BMa{ELD{Ebl?DhOQpk*{Flw!Hr8@W9 z-@g=wTf*B~yw$chmz!}q-t7Z!!Lt|iWh~$0tBEgky#`5RGtW~()C~t*rg(0rA7>6N z+s4s|QB;=QO~m#mKRP&){VnnJZ_jzl*M_NR#=noB*hP3VBCT3y>X$U)03{U57q`Pw z$MWLP&jONNZs;NkasI2)cSNa0AemWp3}9z-Cdn!XBP^_yG(4+r#OCsSmUo5ADPr(G zxX>%v>$fppMzb}1l8eh$>RlX-57v8@lcr$?62DyaPX?OtpZC< zQ~#p-aBNtBjA#=ZimMC3$EH6X>~5Bw{s66K%UfwBb z^gj-NUT+$RiY354}GK~mbg|UB^EFO$Z$H7ZGYc^4r3Dt?E zt?A@rd|d!4&5mDwRM^mER}Ww2v?E?gK?imML5>0J?=p?4gm9Fkn**z(q(&* zo=)l|?2tHiN_mR0tGE@wjzm%k#+H61PL{TPSXS)KJqR4UC zR3)LGF#XxO6HkJA@iBFfoo%Zjc{~H!YCB&lxP?LN$dL?bWt#Dw>n5=^2>0XGHLz)# znv;ey^rl)%jNw!ankcx9kOgWFyVF)gygRx?++%~7U5OoSlfcEkB!9m(s(9n;Eh=n# zr`7FD9v~GqebQ%0H*fSA+n784IfD?b42%2$KYVULnbt#=0sPI(Ir8g|w*Aa2+*oQ3 zNOgGIM|hd(@bk>C2#g?C-}iy=*RRwHXV0j5@}?mquz}h8@^X)2jWkaCaIzDhO@JuA zR0>|ncfEM4#?ESjO;qc{*G&KXpFS(n2v7dSAWEV{jx;GOnC1N!6^Sc4cZ8si@oKdc zBPQ9?3#e?52ZxvOw|wt0zhe4Z^hx35#{MD+y;ry?H=A}h;xG9@#@!7@|C-Lm2jqWj zeY@2mqv+=5^%M8_i3?gmfnH{p32h*Qz%XCbv9@75Yi$ zITV_)X9{DbaZd6wXiOg4cTqhYu3N1)^|8)IO*+I%;Y>C@%SGc&vI=8R@k zDRDz@tt@Y&kX(e9`4RkcdBj(I@DE`3PaZHvz-_`C^N1p|3fFXu9bP>y5o0Lm z{BijL!TUJ8@7bZqr($<=TEH)oe@*0yaR^i4mlDtHuN*Fll{KNYvLYh7BX+Fgr93CR2E{GKureg}Fu4=(_h zu3hDVy7ck?c%?Jr5APFFxiH*0({vScpo9u%x!1cu{>&SlqAt~KMyolUDz3_f8K&}n zH))@j@LL~pG%QN=KN#%c(MKcz%w&9}fI)v>xb3GZW(&aJx8CS#K@k%WywJ#@z|EY? zjcsC8KK^F(aEEk&#+sI0ElHMf*h}EmYP*L2Yn!haM|=CuoQ$)dyVn5qM;L|YS2k0! zxUygN-2--0#q8z{M;IX~6zi7Wv(#C0GZKj!XB`v%c4foxWpdokGBIKud=FHN)b8*KK5!2f5Kc@`UZrO;{V*B&R=;t?P6-Q}Pc+KzjU_ z#PZkXx1JuINA!WqAE^9e^H!Y_&)@Y|e2Ef>_7(daeku3>!nRSc8uQk0O{(xPE&oA% zL(DXxmkFp$#u8yMReC3m3Ul&g^^K#)vyGiqPrQxsV z_?UeU8CGZ*_Pgndp*5LM)hi!0{LA6r>b-5U8TnE1ufq$o_@F(OjNVq*gKy0g7Gw8Z zf{qs0pt0+Nl6%6l4)QqZT*0L4ARC9xm_hdqp#5xeq^(L^osF1C-+>hHDWmAolha~0 z#%K-Pti$fUKs|q4{e|74;Dv3nmw#xiEFerJ4)E4x`S)!)P|;;rzg1D>(Tb%ef(oP- z8cLIKgBHl!#Cy0vbwUFa$NJH@zqE@(#uYZN4y1D%o_ONFdcHYE2>DMz8?K0IA0m>U z(F}3p>~vlS5782G^3GOUJ96um?>ydQ_RMTV{N-E(k{G_9>7!Y?ERj$Kr7^IBP8BvT z>|0EI3^INHalr6zKB(f>FJA^QRckO@ka!fi>%RoRyUhVT-hIV#aKRLwq6PK`X>IXD zL413o3CoF>C_d96+oLtqe__gB+XRLPCDKDyzOm)&)H8rKV(^2LLW}7N+xXl15`*C* z8HY)c`M5VlE1Q}1gEG*7`**w~>B^QbgKe(sQ}d+_U%yvaH~Oy20l24lu3hg!j}ph- z36}nP^g6jOS)(WZIM6-Z)8=dvx8pS=s??D=G-lhF@ti}~7V`!I3r60;S_EhngH?;1 z+-U6+3%8_IE|q#1)D~oG00LBuDSQNk&V2=naY7x2W)>noQVV{yx;PUb2KI* zfyo$txDnK8{tAk>zhn*B^zF&Jl3_-=z+WE@twK9u>#n@p{|3j;mgM}p^%R zYgC#h{`=>$1sjs?q8hmOaryHumh_+RJ*-OY96_ZNCsrcB2@E=UqBPh|3=8=wfvOW{p52^>%{*?<1+wYhBvRbdG|vY{gc=w*47WcFe2Vvpt3*g5DXP_L1SiIZ+# zE&K3ksE{eIzMLAxtgOMNx9gk29&n0XSO!HOq3OVf1X(|1b?3si*3Nqc(|t!6k0lsM z#!76CB8mqeB%-u;v9{A_Q=S*Rt9P*fBA%;6db7d#CNIKQt;Lg(Nf;|Z$o`|(SQpLV zUMs5$<+*z)OP+|C$m-wH6pK;B>zG|U6THG|MO*=}hrZWU`kM5o9A7=LdY<Gog0D*?f`sEM=yvcXYUcuC!RMA09@UHFgcI}(=-w-j6)Qct=BAUs!{ zI|uyeHJZP?xL+QRLRyXKtx>*5bP$BYm)aH~;-n$rdEBtF(P2|`lnMwce)<^Sw*E0M zG%pZA4$|Phoo;g*&F=R46@=}8FAdcB3WDzwQ_EFs%WoDj%3sPqxguN!O#3 z<~QM1*T{$0b)*L&zBe6(;XXjYuShEHSXRRDoz7UDFwa;98u1qROfuNDii!Alr|$t| z!O~}QCoKYu;)W31-|;xFn7N5RLFq^T^Vld-a*HiSJ(*-SiV9HnWiji+I&>L zfp8wN{l_qAI>3y&xA!}F<8_&&mko9z`ZW8(%DT=)onZl!QwFM7HlOp3rqFzv^bcX< zp3_y>A(d?1}H8d!3Bh?n3(Rg@u&-H@G zj$#X@)-(-{qH#9~%J^Wgf%m|G16sU9NBs8un*MOlwBRaY?$t#o0Qf}x=dy-ch`7x? z!@O~#TyPXZMu#!?JF>aC`AHp7;`)&J&X~5Y4u$n7M)_VC3Zp;>mVY?dITKZwRlHxz z@N1Rzuco-m+eB=0)AIROgL}R*dhMTF%SZV?hdc*5}M^ph8J zBmW0@$p!0YCgc7qwjr4xLXM+s04HC!{w3%tP$q;n?=vW$DwT|XC-*y1a=BDrU;z6f zXXtY~OHFwXeL4Sy-~1A;5PK_)f(GofMA4%=fm=Gujsxf>G`53Bf$ZRlvLA6DDQYn3-LZt7NsA9W=Qo{~j^3MSSrgl#--4xnb*gD2amIA?o=eK;2qU9BS*v1Zr z2?eIW6=vi4h)*8RGq5`!E4EW~7>Eqcl1VHX5+;b1otR7oC?9$C*;@x&O($RJ%X{{I zUxJTKcj)FP~dJ|Zg#a3ZC8j;K-Mfr2) zE`*a<32dkE7A9WF-l!A1s5myVR$iJf2{;WcOSW`-EoCmez;p%p8oFoSWWqfKH zfD_ci6F7tm-gSa<7u=Jm-`SI#sdyjUohcDrK6F*A+!b^JW`0W_)*m94zOo=WW3#+9 z{|a{RfHgzdXP9!)Kdd|Be=3;99%2_p zoRvBPROK0B*sRmod*t_@xt)_d2mN>lgo+k^q5NXRzTOf5cY_pGjQ=!9P6v@42$4JD zWxCG93zyztZVdID8O(4;(K~a)c<{F7BU`$wyQvUL5`DxvK?%R*G*YOfV7&fQ=qfug zoTG~#FC=6!No&Nk5s7>A%}UUq(_`#&?+87I5Xm;yX-INo9HiJ0qpj3XW*`ew?R7^oqLg?VOHQz_V{;eGH!9L|7aH_v)OsNzUreEp)Invk}We6@_+L8`oAYquUg$QiPZfnue*F*=?&^sQp0K;5U0hAt%D!U zyfY>y>#&L163g(?bV#y%S&D^+&qz0gB0PxdBQvVxJIic6GF?{OZ@u}fC<<8{nJ!Y? zY=8q^%eFI|_VXy%s$^gzJdsVw-1fdOS*oAtBQxslaqX>-Cp=>0)~D9XM62@e^DMuf zn*L13x_vP4cd1@Z=6fpR>`d7(Q-Ln{)I~L)DJA5JlcWcS2wC(G$-T`lPTy*+iC;{6 z<4H>!$&K1w5!^a!0Rx5%4M)+hW8O13*WlXkhsTjeRmA61a(qD2|B$WWxd}bSTMfKL zV=Pu0B$eYprsL@8RIW5>B~3p~X9b5PGC&OZ$y~X0yIhn^9K%=gUVH#y2EOXSs}Q12 z+0a^zc&qg0$E~s||J>Y_T{eK$v13>kK8TG5R4Kp0><~-%6J<7=z+Oa+46s$8e0hkT zj=zuGa5h>wJ54oG#ieSzxa;CL@5O&*5|@;JfmCXe?JSEil1PN}Q`i^qSQ6}pJHOJM zKh^s1&bRUfPFA)wxqRHR>=7W4ybN=6$K^{A_*!#L){!J=oQ~ z1Ja8~nW7x9>IVi!+wuCY5pqpFHOT9=7(1P$_537VAvA`#*|`8~mOToDXg4 zSm92Zr;}UR;JfZO8)AoU;wA2UCx2IEZ1$>Sg$hfIcDnv9ediFe-l?w77Uo<7J6=G@*_ zQ4=U*<%Ai8_A(?9mc%3*SHhV17QmT*C_BuIqp>d>s|_;$X?xJ?`q?{7YbgzcesW5)6v_SUK4jf=E zRr!2*H?YKZ4(zu@N~q*QBrVIEkuq_6utBXu!R~we|dc_y%NE1ggsQ zw}+HhC(EaUOc92^G!oGB`~c%q;K$#4O+N1ubz0tGT82XyhU?Yeqx%ZJVcpa`9_v#c zx}i$kO@>ta#cu(0)WW0{c4DgX$SB@xH9Y>f^x(!IM?G!9X6gNkP@G-jqa88B>D;We zdl4@ZXa~fDOS=IsnnNAaPw#NMp#qDTZkOzPmTW~yWex5+pH2O8#5g^yer_>Gc30#+ zomgjaKH&(cpFZ~`{tUG?rdCC4_^ora$#^7Mml_1c}@25vt>pl6QijY(% zq1`sWJhrn}Dy7mLP0&JJqh~W6jy~Z-q%Jj6ee*$2yp_K6v@0kj-n}F@K8txcK$afV z{I5c#whjhiG!6{GSVZw12_Llxpf|>6{sIxL(i9Y;rx_)x0J|Jku&alUt(0e-jw}#sUwx&0@V*L*N|~Ij&Gnpf=*!%S3$p2^@kZ4Fv=h!&r@a z*XVMY#(e+HerJseC5Lb)j51IgnYp=j=d2}+rC9M**2lbwD~PJr{r=%z(i-!<_sB$+ zB1|*oI1{cGGBWvRdLaBs`Il@T(IL($KgI>4-uiREE@IRqiM`A{rAALYHHh_T&U^&O zqHi$;Dh5nO+!5=jX#Avki+-C=zPGL3+Z->Dn%>N}88}8ZC2sz>bMZSNMl}&djUP_E zKfIAiA4@vL{-{(;+arL!U8B@M@dzWrYpRP_^Q58ku%YR%3`;?(4zgTzJ3s)-$NsJ0 zY*)ROAM!dWA}?3Y=#jdz&i~N7yb8~l>k1*<@d?S;$+PeA?=r-1#$b;e`X)}l?+m*Z zCFZ8|Zol+D*3^M%%Xu?`E&8`Hr#CcFHKkm;fI}+jziA>?HSEON$^kWgELp)8{)<`9%}%T|o%Gof89i6X{J_0^c0+D7fBw^F&Go$?^5?1$I|JRNc!nq(1(&&#r=Ht&y>t+B4Z#qV2Y?Xt_=A_(y~{V#^;IGi zM<^xq-bBCD@f6bj+I6j0pOPE{cY41MsELpjOW-Uo$3rpK;X`X;^8VTI-%I5z@m%tN zk(w8yKzuFXg*obMrsSI;4WE16A5sntek~{8Pyl=y#{I@Z3L>NCc%A6_eQ@ePPu#Br zd9+Op`RbEg{j0iOH8+bZUB0+XLg}Mk+`VtcYy~F7r#zL+`x_{_nde*NCM6&Sj#kBb zVrbiIBgv6b0{bgRNj<8vi?H+ygdgkmrs=S-vYvKwCd1J^UUrmfwpjEqv2}W&7+YPj zQOrD`KoO~+ve`pbSi$x+Aj0?Hk`y0&Z_#Y=r0p(o3Uv1uxFw{GUOmjj-ev3|kV;>N zGlP%=7Gvvv6uiR-U4L6QM2iIh==ad>3wMq0Z#EQ=Y%C{tmf}kCElTHi!kPYf!N0SG zCieu8oTpjj?=O9iag-gaYnPq;7la=f;Z%9T^eDkqIPUw z<+fCg#p>eDF8>;+vS>nTTNQ)A)m% z5>gVV$01Iwz(!r%kJVWmFc2;WIiJfx-Y3}5s-Nb3R3AFIIr9Yf3p!mewdGlLu#91) z9ujv@>Tw}MO5S-WF>e#e30jgG=#&PDEs-E4-@Y>Q9e=}5yRv-ee#G@%uN#YuU|=C2 zT|EA_MW^m%Zu3wql~M;d8B-Y~HD};^|MJlX71g5pI;Rj= zx2ed0yrd%-xzCDCJ#W72C2rOGu0ZDaUv!JsJZkH#RWuC$XniW8^?F6pg(9a;h7-B#ew973;^`9sq{)Mmhc1aLIwSfY3CXKo$M+guErzmLwFsY`ogNW zBPYwLgK8jJ60a6~yt-PVnl&&BeI|_e_10He^<*yQ9ut}S@Qn5NEv!$u6;s@#R8EXc zeW#z6{Fi!{UiGX$@i^F382Tw_6VtdwxyJh_H%ksP-83_!yLDOhEx81l4D#|4&8U)s zHw1ZUbhN~Hrq?v*H4C1j_vrw5P8aPTj_1A_$I#Bv?cRjYyYQ#k-}*U=N6DB+Unjc~ z;uS}9z9dEoUV@W@({*U~CHs31v|AfXGq04`tUn22u7Xp6HkiTjudk%ovg5}tUrwb3 zci54aia3`H^YGpRb`zx%Tx(~C<4J2fX~%|Yc@N*Mu_-@! zsMeLO1yh`TX=J>2Yy2%rNX*EbzJz76=T4{W#mKHbz-9X~A{UF4!xseO6WQF7egiUN zvH07o>BlQ^E1+UKF;B6|CZBETqvKcoIKE37jHFxSNR3?*Cg7h+9HRP`+w^7up;_;y zLrSr>_ie9-L>732qnqw!IZ*a0q%@VgpK7`FDB1Hj%sk;qmRGv)iaJxS_s6v)k)-)k z1j`X~cSiV*NLi<|F-6&-z?NX%FPt5WveW`H4IS0X2~?}5u44EW`Nb=|dbbPqP~*Xv zZEw12pKuw3ZRs%tyi*~x|-Io@3EgCd(tO~y~-fDn#yKkk#g{(slp7s z`MasPK!)TFW4)?yaimIgpamHm^c{`in{)IpRI};AmK4WAyDk-p8cPCOibEb9bja+;Cne3;@Ea(fGDS4F{yQ zSpXDlhGQ^(p_K5AJOLKDiRdo`cEY^iTxd_1?xBIq>jY2`G+=%ev7)QzWgSzuEI!N5q@mmRK$eb}wTajow3r(REbxIe5GZjr$Jp;j z;Yvj|)`=*cf_J6_J-lHz^EFB5Dmx)gPL}b~=J8}Qt+zfz8CH1H3FR1nDE(Hk<@JJM z@@Ch{YWk;p7F@fvG%UPozhMhQKt}(f*F&$qhtw**nmzKCa`gMIjt{l13>51zinh!>KHNQL|*Y{Spgh>eq(m^`6Eh4p(MO?RxDB2S<+AJl5_C~odpimJZD`_|!*ujHJ) z7agTh^DCTGbu#H4cd%Qx92fD$X*#{cU*<{4d70j`qbk^}ZrMKozFV3EteDh?v=1Ng zlY9S){JiQdmJ(;~lg#kv&&JG5a&e?XQJ%(X)J6ubAae=F8?mkFQngu)qVm*7R2v81 z?VXrTlz-H;=6e(N$ku<>G{`e~ZC^M@rAqICnbUF7e|HStLF_kS^wnrhfU{>A- zh><#0aobXl*qZIJnc=^qo^3`20sdLZc)P?sa+Cw>9lx1+tk|SH+L*enH=IyX zHARs9DpyTabmP%9U!NnA1o@ZvI&kw{rlZklq7DeTLCxA0TZUh-G!i=;ZAZ%Gr+)`27& ziQ0v6ia>7fXgMQiqs0{yW*&~xsr z3;m`3>l(`kBJGZf5`(>CuhDA&s*)a|JA?9SD)67N3tD0XpXM{DUlIV0y&6OyrEMs> zZ_W-PPj~20r6lo*%-J^P_h@G4RUr2Z`QGZ9=bS}tFUDkX6?Ka2h@I&_Q?m?1xC-_# zbag-fvotzWG-}Pi^Yj}g)#LCAU8_V7W-ry`)Obq^0pB$-_{O0}s>i9*o*DVV`Z^{h z@a4{h{8JMZw_))<+hug{{g>Osjbp`%tUD8%lDy{FB-=Jp#U!UKWc=&0xqG+=c)<_u zu3l>I?T;!?f}r)TeW%&V&7zJX)#L1Wh4LR|El;i_cw48*H@bMuJ#P6%g29vaRMk1^OW%4QX!d|yOl+Ld=oDlph*W3T(Qc}3{ zgVQ6hT{xh;(MlX~VdR0~Tl1g2skv`fIsnJgypU9w7ytFs3H#z6cfg+4*B6dzYfV4R zi5XSpZmD(u8YjQlHk7An+yuNYY*pi9thQZFo-g@5{Hax#+ec(d5-X?xcZVPtkNd(w zpV~J3Ml-(e-@I5L1H(cm(I>M16wZ(J<{m<_g zeYz49AJ_Rmz6?Czl;5LN?9Yk{fjw=Qb9s<}UFTntA%7DOCB6__T@pAu8??s!dQz$m zoM5sY6)Qivlf-)bP^G+R?PD@~j?Iol@%-wggj_X8FOHDS{-pPQrRdDP-+SAcl3lc~ zV`M@ZMa_6*lcm+2)Z3}~s9|}(g&{@>D2YTpnlKC2MG|m}vHD4;r?jK3YY99}FiX~H zEu!R!kNx^Fa?e4JLCn`p5|stI73MvU^oY&v-kwX+SLA5Lxn8V}LciNsJX{LZLY{{F4&z2uA^ zn(6nvUk4#UHA|1?9U`b3;>@WAu~mk9`}8BY^ftK*J_II$wTVrcGnr0HO4p*JTrlY_#V~;S}DYs{GXRFf2TR`p@m$=gBbq ze8`L7+Pw1Ac>O;&0$rvWZ0?rw|78r7PoVkr1`70le))P(g7sg{vT4kfD+`gUg6Kq>rdUFGb!X{{sjA>$wRBh^puzbq@zon@eVWtKffe z8Z?5Fls$z##La&={l88?8%~8}(vKH>wPO{uTh%OF@CDIK!gPo6T?ne(KbZ zvknsXuv4s~l(cj+e^Ms{Gmh3iTgnB``gUcmfwGGSveFMY!&S9b zB6#LH5iTEqJ*@AzOE-BKpawoc$Ia0wQ+%BBqGkBT@0gSb%rqk56pHFN2NJO zwb}L5kG$pYQDI@kdB4)kXeE+rZea9P6V_hGb+ZbKlwt_^)wOkYq1zp}eUOSbS{d0U zB8mQfAjvkYJfe68Ia2P_;dh9~NNhgw6t-qq3Es>i(G=tcXT5*D*;L2YQK&rn1vmJ!ZwfXO$me|E+fJ>;a@%n^xCN{M(zC>8!DCgpxVU)QuU zhCV!V)<&9VidZ;X4;H}^1HK!NPMRlZTC{Drt#EqvS}le;3X%|ZP>6nA6WD!nBGX$Z zT&99#dQwVXS}lu6LA>pe7nHW(l-%>vJCawV??`L&arrh+6#%}E=XKybQC`PXFKE{l za6s3)C0%9jnj^`ibmSPQ9-?)RhSl|0mmf*t9&bh~}yHc>5;wejHl; z1%+x4RT!Tg@i;y%RRe;p2OCTaF&HY_w#!Mj!g+l#(qVlp8kH^Xe7Ho!`5V{LfC1f^ z)@Upc-weK@kywdOhJIZo8dhJ;HQ|E_Otun-a*+s5V!2~mo>p!6-6QtWOJN}El@Eq{ zpyOTSmK*4-@&vuwI87sHt8&9=0>e$bs@xN2y&^5KRD^`I-F||s{=%Bz^*1jGfTFq= zDK;+FH_WqJy?8nKO5{!2tTJSTN*w&_Olf1qDyg8dw0?w)k1z*&3N`1~{s0{BP-NH` z085c_;g*ucn4i1A8dp(dbuO9cY0@+{sE;$ieH=XpOpy`#r?@2j^N)Jq(Qv?+j@NO> z-aFHmB5-mBIf;jzXD1i>rx*D)(m(x&#msS7{f1@c-!&M;^0Sy%f`)dJ4D#1TU3H{M zR4Qy&n)qB!4*v?sbq1y1pC)=wDd%N?z;i5+iz~ogyYE_6v{C5&Xlz~(`8gVjA(Bak zXA})AfduhuLLEJ;7Y|M*LeB2Ac@Ixt6OkvS9k_XD8*-~CA0}vO$J2n6fr(OD)2IE|atGY@( zFzpXDbMGC0Hb}M|rnEA^3V!~4jA)OlYM6H=HT`eHP>S=K+;yPCMa4akFAe<16%Bp?~4BI9Cv#4BV>gR`O^G$R{KqaHt znF7^1gfXE@lEK!-%LOV$8^jbu`-mo!H>a(f9vy$fLeM(Go9JxI=e!G`VEnOnIk3gH z{|3xZyxClUH!cC)@0UdccU-G{p6AhFvvW0h+ahtNa$3|8whg_8LfA3~-$-Q6Wx0Zg z&24TWz=UYT&g(P!CnHt|?UW9;92|Wqmv9s@XyI~2=&!*-s_o3rI7KmP+^tJIJBv!g zmk;g}rx8jc1Vxuk@WvkgFQX0gY7_C4{06Q{g!q>ZBH9*ny~0Z`lheb_4PlWv*{O4) zg*om*H|7!f9xpgSo5UpeUrSFtde6-tA+6^rM<8w_w*_r0k2&`pA8>bk^2Vz(zML|C?lv(!w{d3ODB#CaYW+>CwsrQyw%G& zU0U0}1+hLf#c5vrDlH@~7^8v-T8is>_>0Z&KzH&?knQ{@atMU#fc$TAlf3kI{2Z95 zj<||U4r|y^%YP>KSqv&1_ZHgA`8ISjs7oXR7~lv>=9Z4>BW*Ky~TF;ZJKjL zR4U{6AfN4OtA=#wIk0e%HxNp|o}#9w+s<`IYHBpR+749<7tfj0L7J}fV`okspR3Ll zXSAq_R}!q2nFHZCQ3n`V&)G6wf`YpYP%fyLM6gO)j|5N7-gP{~3%u{hZv|l4=l=%) zvp`J0FY?aWkKpVn(5I{@>7NVuwa?i&kP-e1b8)@Hlm_;{8a_pWeRlnjPk4{B;qyGd z`w?&c;f9=TAsfMO36TytKbC&2uviHIEqAW(^E_B*{?s*hKL3E{;gXzw@8cE9X6`tG z{~Gt2WV=*R3wQWs?p*&2*Wn6S@Ck7C{AI2;--lrX7qI-RUu5&}C#kA$QW9wn@_%ZO zUXd7gg(jQlXZMjXpZ(M|&+mKy*F!S&uB{&NJit%--#sEAUmTq;J$}SHZ#^*V%Orm+ zAq39OuT#5zx`9t$;ri(%^j9TbBpcdiv(KjA8)9;_{FVomhCAU7&#%7AoyE&M|K#7p zUHG-v@9^6{2t^+B=)wN?Mt%c)dGt5sNdN#K07*naRGT-!XCG*;T0k^IXlaki_?xja zpe}y0cu2`c+K>jan~+0D0rBg=+4&jQ@hr(fo<2+;M8}JL<=_0K(RM|>3a&JYl=}bO zkALX+klOLR_kmZ=;mWr!(#Ibj>40IhHn|OFobl-A{|dkJZwG$%=X&1#gC9eDX!o93 zB*)rve$BVu-4q_QBs*bW21+i{{b@q|-tQ}tkjBKne&cxG2B)dVMt}bD^JzcU6vGX@~5SXgE__aCYKPEetl$cF;5?1J1~lO+1A!oLTr# zXEvyq)2jdrqcFd1?KS_N*3*YnJD^2U~ut=DTIQmV^4(T`fewsdJ@!w}u`0NIC zU~Bk`q>CGVS2m^Bwj>_Z6x*q0<2=p+hVb*cH=+c;^I-7YqIlj4vVW4`1je+&NqnxmhYE( zKK}Tc=iM0)c{$wSUIea_`SKd@d+-04%ggPhsEq$9_5M{k*iZ(smrMKGUcY?ly9GZ&gs8T8hqr^D`PXM~5B@`&)Ov`KpXCle zWBBW{!}wo({7Wggr!go6x&(SjGPT2}0Miw``WHUWzj^zkqK@RB0r7u>ciRK>kDW>J zy0?FvS-Yg{orC*k_nkBzmiOs5&x{8(&O!cryU$N;Rot%vcU4$LpJff+4TGN5=f5y)fqf!5-&cr z-(ULzg!kdWRiWGF&ENjVcPD`#wbIZ)f30eW2jJ3}l_b_@9A zHSYXD$LB77z-Rry^AFd_@r1Hyt^m|%_3=jZTb~4$oZopFfU9^x{JjnE1^D@wf!~6! z|1x~@-y{RDb52|cdHl8QoxS)e_*6==Yx^t%gbS{F%O*X4pO@lK_>@0{hb{1a%7*f* z9)ZeVoJYSGp!D!p?!Cr$KRnq@o&f$yK(AdJq3V!2PUge+t@JA&JAi}#GgD<7B<}3HU!goLa z1mXoh^Ksz)=dW>g65&RY@qTynU8JlXUMu6sAZET6z@Jv_WBa{##c zdOrPs>p%Hv{^|dtK#&y4Ig`=L2+uj=?CkUK{4UQ|A9HpM-}y;|@Vr*%{~vSj^BmWe z<@tT^@Q}O-WP&g8gUl2FkswG)ASE?Lu~;QlyQaE2s-mXnm&3jA#Ppxwwe8J#VMlMg zpN%7CR*rFm7qgfNcaNqjx~ikxC6*`^$)ZF-;xCW_sZ8Pr^ASiQFB2D!UYvX1yDtG| zKDMJBzKRr>K<4}2bAO)mz2}@;X#Gnq^-NZa8-@)`SOZ-FW(ggPTS1U4Dlc8RT^`BD79A@O6ds#Iv#ou_l~ukyH%HuIC{H5DOt$3?EYE zg;`)hNOxv1bbvOE50B8i@&c!<20=g)ya4rxpplTU)n^#VBa4lHU$Nid#HlI|?`yue zCnubbAGU41Txe^VU_5|8V^GkkkaoPk4y&U0p0S-O{~f}xhB0nZ&63hbx+d*!JUzh8 z7o|OJN*}-vK*Dc+wUQ4(NC^m!&2gTWwKCKqQm?m~%5-EuI;{V3?svahY2?VBL-Cy# zh_C!2_>qEI4OCs~5UGr-^zAbDRp*>n2;YrAUm&O0MW7Z1Q#YW!Y+sAwfw_pJ18`Ht z@5W`a^>C>CzR~Bqaa;03MIyhepOe2%-bpbf$jA@rf%yJ{={nPW*~#xhzARZ0DX5n% z@vjcp<_CTbZGWc&d0xkp93G+_V~VS8{pEjaZa5q(Wn@v zrVXkr?O!`0vabOhGaP??<(pJlL&K$0;}9zG{D=_2E%}=kuPq)u9pRX_25`uFFtq(4 zoiLY=+cSKnWYMX34eRX<^~y0g7oi&v>*tJ*hy7beL41|1K^k)5PYZT(LEf!X$v9*g zq6Mfgc!2#RND+Ks^xb!)0&N9NMHp6O(?xlCt}F@V@ZI=y>m|U0JAW^Hz;j<#f*sif zsU5+y5PIf-{G217H%r5h=qafp88QCLhWb4Rl;rqq!xCp`p=*$yrFJZP$GP3#x;mrluIceLV0+BZlG&G+5 z;6NJ`!*>I!A&N%$Er^d*)<*j6*T?t2qo7hDH1Bez{?7?J z4d~25D`bCd3}ORo_VZ_Sri8_xi)R1ayo*P4G3GkoOL!NqRb%(nW^LH|tpAAlx?&qyBKWdF`S+?fTn z0Pj~|PGx%-r2A5_@#j2VR)Mct#t+us2? z7}Eg#J|WA%8O-ySwha`?ZbI0p5G2!#hVu~3W=4@;k3#M5STl!jm2qp7g)G}Tyl4Ai z20F8t&H`rZB+1qy%v1?0VV<{Y6v6kc_Z1`u(+Y-7493d)9?dInKfreaidDCi7lehhTS##nT@_=Nw_UAO`B95>eih z6c+WfXNTfT7l{F=?Dz}A7)6E9L?{+fyaz1EI;5>Z)Tt5#(?Ekj&54(4BU_77kBmP2 z0HED&v--(jk}JOU?oJdeR#!p02CEHNjbOEw=^&1?IxI@WJ#zJvzsz|-9E$J0=$-5- z&-iOb&};~Ht0C_d**y0Sy?{J1QyBjrs0_r{eIIs2a7<=gAT~f#*_UmLva&Bre7dw9 zuKNnfue~q1jl(A+EPm|Pb|rlfTL6~}67pP*>yx4QF4U{#wS_=QK)De7Ekdki~4fe(*yI>^RY};5X|+$~w-}$=@P#njM6{^5EZRvaTYz z1f1)3vjcwszNus{-I3on<@Epale>I=beG=SC1#I?R4wsjjEsSuFx$dc9{l?p3!lSx z@~r?@;Fp^n*r~|Nv55X5QH#`T`O$8yB;%?;oHmsGISl{ug$t?I$%nz)Tz&Yp$gUz#RcOzOVZNy{>=;^`>(tj`>Y?a9 zmBbu+hCNh%$VexxEFm9(S%CI}{aMe5(p5JG?dXb*F+Vm=T}`ChSAYJs!T6ebq}c!B zOENMnBH3MFG(1hPy-2t^Be^Cl{!hawC2Q;9G3o~D;snUa=uZypDMRH?O9XM9fF;7+ z_h9uR;jOdqMGZbP@Ht$*bvkQ{HQQw5ACt>bVgsXa|Aim1KwBr0sjifyZ8+B+` zpk0;?XidSYlD24O%3eJ@MtzpN4)gbsUq_%N*Gt%2AlX`Ef8!V<+v5c5A%A-DC)on4 z>|$*!PyDsj+EKI^PI-R=`886?!X_B4}J5-!0X7LSxiAPq*rXzLO?>u6CbOXjZ*-12zY}E3(L5AY{*1CV3Ud9;D<3|I! z3%bqKk4G?_4#B$hRGe1%uyu$1TJlF;T|5icCBRJ;5UZ%gO zS^H=4_8$@QBVYkTO-LuM0e=nr3S(AC+FM|(0idjocAYeGz$rz8@nbgm71^ZC6OnE* zg{doa86jeEC!#<+Q(~Zl>1ZA_%R)q!O7^QB2~xQK{m>g{ zkX3-lwmS$RaudS}vKFjjIvVrBTmL%bZHdD2`#CsV0-qL+7<0rYtXX1c4QFWu$q@iX z^->6zUSm`A_=*h7VD;!IgfAXknEPAGb4nw?!#{t#dikh3e+1Y?hvtt zqRY`z2So?C$)!`@0H0vq*<`uY;?9k$wqLY_hq`5B4X*y~2Ca?TL-7TX^>D)&&|1s*bG{c zdR##kxrF!r5Pj&?`2I~6%cR6)Y-M+0Z|NC9AHM$x_5T)sF~gz{UnwC(be!=NuDFyT zZdwlw!*m~nEdPx=QLTZtdyZ~r6>TY0Y~=&j!wYHGa-Mf2F6PT+Fv7Wy<#_xPqerNvsVoe92XS$$C<(3D4q!|1^U`tt_76|&!Kj9F z@Mv$BQ-qxBz%`?ZQR#MCAt?P{VH@IG;Ih&j1d;pg@J2t&p!GhU%zxUP!t~Mp~u2r+d%gzMw zoT|y&KE>vrCcDu=-UfP_V0RkxA|woVKzA`=WEVr7J$xBjwRPs7k8^7M1^1uZz3Mef zD+b>X2=^8+TeF0n3NOQ_7_CWj&M3_@$~k-Q(3#E?*6za5AVs4}-69U(NbDT)nfyp7!= zv~+ez6H6VYdLg@#5G3uY1FYnsxUNG*p?G;@+>$?4MCsf>sU}}_uW_nzO1LLC93rT9 z05w6(^X##U3Ra7>hTCv!Ir)O^IZUaHRd_JgtuS3$S4Tm`n2sc17Q^Qn@0G^5-4pFj$69RhHn7;q z8{lp@IYMTr^b05|%$DAx*;}*54Kzv%>1Wn@|Aoor7VB=0)}U5FHx>0CX6w%16~xN}4E?$RT^xc3$C70M|fu_syu_|ZRwFaEFmV;dX@M|w5B z`$B}iC+q9uhezz`Kgcd7Zpw;S=A9#;C&@)lq#nIKr!cTIxcu`YT>bb(_7HFIhM`Yv zc*IByNyW(CJV)jM=x;cMy1*&>{*iHiID|V|Tt(5eHi;r>15It^cZYOjhJdT`P<*%k zId7XXa0UZ}wC$K&L8%papa$)92H)GM3H9n(THMa^Aq_PE{yY02=ejE6{)Zpl<+oQ( zBgX&#MyQ(Bc+HGJt!25;8YtQDKSw+?;H$-TqV+n1i?fs*$)^$G=?p@AZt!TWY2|Oy zvGRi=(PbeZPg%`-1um~vSzo@ygZS44$G;!)0ub3@>wnSLqPiFpXKzgi91$XHq6d06 z`&*&)&w1cv$veVuk#ZTeA2+;8ywj_tgHY! zCE;v{oi)f6T{Jb4-3Cm`r;Q5pW3mtd;DtLO_9ZA7YoYflq@Ad;Meo?3lvw|D4~Qg8 zu>!|~cX<-6V*E8HqQLmit`=5AM6DGjf{3>lf5`9e{S~^`#T|Bi`JJe$+=V-V)V5NY zW78aCwDuBawGhHxl?~|u7Xf5NDy;y*CZV}ZCD;a_GrA6Yd*qc0tN5g0ftri&>~Zy* z&^DJez~vuY;P&rYIiwI^adDA<_t)M7oe|`X1#QD^bQ6>#K+?oViWm(#OMqOnBGiCY z^5Hm(AN^|<7c-BKBKVH{qJ0ow+p8#758y)s#cJR59f%c(#E*XPlA1|SP zN*1&hu&RUv(zfrBkf*pTdPo!>%#rMql0)V9H_O<4*|Ka+E%@5m21@ci#hF)FLuVp5 z+}9faesW`X&9%Gv#}YFcK4^Cxag^pL&fS;cRC=d_48+%Dx0g7QX%QiMJT^PUk28F= zC~e^JwKiB1ZJ{9Yo} zCx-DPVfWLA9Jhy2)t)rpKz!}Vzhc`vQle070Go=F(J~LNU*T_gBC@wsdeYo#!1NJA z9XNd?p#7r96mYx*lRZ)02ja&n>nwZgSTJ5=q%*5#}P4M6P z7ADW1;LG0&`Q~RY7%IO~d^mlQD_bp&)sM5aS!I1qPA|vyWA^qmGiHg+@E%uxCjoK>VE1Bd5Aa=O{sM4zrs8HsP7Q=m6|AX_4vykM?#s^&+IVYuL36 zguZ$^{rq5jNN23F|L%y3cfuxaQBtYmuPnJE4boZ^0;W0wM=Sy8NRZ0e7Vu))*~6zW^(~a_^E9VHc`Z!8#$E@ zlT;sep6%7=9E;&wr%yDq4RsK{B0{I+ms{W(1bT`jy&BnTf3(Q%-g;iD`{A(yyxEg zAiH_Z?P<+n_&)(OAv2i%1i;+E*o@lBcW+frAF^waD>Z0cznu?>X%EA9Yix&iOEp${ zvIc*8W!ipP2okM9sjMGdMF#Q<_K$<{-EFZ#e1%^Bhunm*yXZYRfN&2?_hGG|W8ak| z{OhLLLF->|Q_CLGL*RLk4r>)N$JPr7jx4C`Q5%$|0ykVw{}A z3Pt3X`iG&ym>P=6uDd%#TtzD}0{oVC{I1ptbeES&jr8&qS3Cl0`1+^$aOpd)+^eCe zr9EIgZyPyU^^^)g>6VaVy1{;>ZF7U@%otI?uZoO6$$vFn`ZM->*JPd9(`edgHD~xF}wm;3|xoa?yz+}FTtQKj1tJ7Eu@>x=2ZS5u#L4;1a>1SjPWJIYZ zLU-iQ>t$jOze0~wsTJvekyF{8Rc4W6B?D};-n$Kn_K3f<<#8SAS)J4z2U-W>u55M;J z!FRbd8VXb-afYk54(*J5adpsIrNoHtlil0rIr$^oA*}|i2)?`dGp(+cHlZyX znX};?ex1xX9*W;oSt8#Cva(T!6^q|I9N!T{-EPL&xjNWXT`9Ld6yK2`4ci&I4l9dr ztuYvX72560VabtCZu-0$eMB@N1dVCJ?hIiw5;wQDO4lCQ{}h*w%%=Fd z2^-JE;GOJ=*A@2Pt_;MF6_<}*ki&%cftdH z+9`sc)6(lfI*82sZ zjY{M5-AZqZJ(z4+-C{w*jM2F*bvVASEh$1XEBO^L^phV;r!TT}`kXZYRTgf8c)_`+ z&6|8`q~Y?zgX=4#yNIrnCEVoIB^LR6k3*&(K`DL?Rnm)7W?m5j>f<*~T>$KjX8_be zH*DyE#u>g^L$@o+pt9kb+OvhGZTb~ePHl1OdN{sL`_++8b>x~;(%+|ww~`i?^-ra` ziMy1+g`p~}E?59R-E@LyH)dib`|~Q)*Ibobl0L!qK{5O;&HE2T z7!9GZC!jfNBafe&f_5LQui2OB`+OmMXN1_e3Eco@Q-eIOdwUgeUvu-oo`N1zZ>9Ui zaC~vE4QZljqA@hW>GZQBtO7f{am=j;(y$6pvCj78IOL~`hQIlbPXP#3=D9N%-)YL? zI`Y}|J4~nESMPE3)c^n>07*naR58JP1LcU({)Tn(yQx!#b^T5H=lYvx3*bX`#mHD&S;o z18;fWe|_yxO#WHE=!G`KY18)oO;DeJx(>?CO}hswmCN}|&*Y;hy)jU%|7D*Ii3wSw z!f!zR3P!J@RG&+O75~GflTx3q{hN!J^z(uY#h1aO#`aM_Xf%~zT!_xS9mLACB#>&; z{_aL<3@bY>4V}zD4!ymi(E6u=7RIa+(WXL7CD>*zSb1g z{Wa5pX8uTrDjQV7H59G1?+=w<#q3q?3I4HNXu#|{$GP-uywLb}JK1}svqVJ9l}9;I zUZ>7&O38J^`zdRDojZMsQI>&88c$$G+cO1^gd5uacHgIkviM`8PdU=NN*K1t89!*0 z(kK;6BoIx$`~4rdfA1TT`W8$Fun0f>*-S16)8G(1=SJ-_C(ipN#%{2l;b;G4={UMF zRcNE_b}jUi-%JCGI{@()PG`M4BS#O$*A~BQKVbv4is3Jl#clZq04aN*1`6V*Jn%_4 zp8y+J4z$0wax`^L{#TXQtGZkN9Vs@n_-wILuAFgUJ%IXemP(5jM@UcCN^9SDUis=$ zQyGio@Z(w*64*W*-+3d+ExbC1583c3gdaoJdl9s2GUnT$;=`p#y+Jf|(FgWk7g1KI zv{bgS(ty>v9awI|eFc6~*{Cp`@|ey8sxW?x$dGhiffOHK{?BWaf1!IQLwMk(0v)j8w{)jakA@ zhzbo_ce6gQm|yA*oB^UVB=pc>k~8IBr(FH`Yq3~EEB}@afznTK3h-}wtyJ+=+Mc}I zb$Q#4{#plmB`90+$q{gcsCP2b2l6D; zz>+?%6&k6R=(t3D<)BD+{9B!cyNGFaP{-#1;rXV>& zqK!qhA4uCDJL5IP68Z(u+Y|!O;TD$PD*+Q^G=js;w}aA7ZPBlsWR3(Z5`y?adEQ<* zUbA^m+>t`Z;>#!RJ^CvDRU0~8ibeM58FcLhb`}0UCBN1g6T&;^;LA_Qxgoke3Q%1Q zp2J9KOWd#)r{88>-yS*!n)kmZTUctOx9k8yz_mfaJAXP(xmL?{OTP!!kquCxRP&sH z+XuC+R}`0YxF!r%YP~poZ+CO}eP#L)Faq08<>O)Jz(M$Md;n_J`>1B|J673rMe2~Q zLEb_;{Rm1gVO>M&tWaoC%#ZIZ_m1ZL>94tU*ViU}d=5xhTC?-BQ22}cet+DQpH+Uf zkAU&NX#uRUQ@;bfCn4**-(=zBL*&=?blrV0@@CEmt9;vQqKO$l6Tr7#l>wCOy=;te zdHW>4T)hE}+pww$i7{FgXn#LphXxke>N!JUgVN?zmQHEP_ZHY5N%)qnbPQ@&7yG`x zX2U>j{aVf2M5;an|0^=B#XU@{7nOQIXzI&A~W1;bX1yFp^ix7=j*n==^5}K9F@IM3}l-MXSHWykazb+OsKt8cQ9qH!0 z0TlBKi#*zp7^08nLO!`CD_VL0naZkRmwa*UGPGO;8mO@`)Lt9S_pD@^m{_{n8UKCq zU%B_S99U}&Zy`B4U5Vkt^|x6WQVC__Mbuu1kYFJbC>zXea2`001X2p#dAY!sN*I4- zEBM~-1(MO*eC{6XCBYwDBx9|!oBw54=U2ftrIAgxUUYm%O3y~a&VRQE#Od&Dogp(m zhvwgq?>ZL>MTd!?!r15zwUKAM*pJZ$+wW&xz8+evZx$8U4>;fnzm%K3->{4VW|-dJWRjSk z3eY4u6Hs||NDoD$ri3Eb5Er9T1>%k@tp$og4lS!TeZk`XU7n)TRqy(Qq1a@W zeP&ri<@l_D_|D5~)#9!yn-508^~Ry{`}k(wzbQa zgm{Gp<3b^<2bgR7vNICBj}GmB6fOxe?HaTrXhl+oA>^BDLUG~{e9Mg#!*`W!DO?g- zVoO4$hUTk_mpbN^>$Wb#v}d;v zW~zfCn@X?7UuOB_UmO%*GbCx2AdX1P8-%7No^C+i1uOfG0!lhz;k`LZJxv#QQWElI z*Ag+}0-D_daVUPQpa~=G5%GTM%wjr?%pmnM3|m4*PT(|CIze@${U>|yq?ccN3*omE zJPHZ+#?ug}aN>ugv1WaGUsi9aR?o^h*%SFc0qzx*-_83@$k>S7ZbE04)Dt7sezmp# z6thbaZlaa8WaBC$ws^nMKOEnYTMA4?@cp8!A>|!;?%(;G%NH(i^_v?U*^n@>IvMHX z&%eR=-nfc0+C15vBo`O1yw5665oklQW$0}tX&C5E2+c67!*G13;l?CZ^%M`B{*HI; z;r*j+6M#Q4jQ6r97RQI*ckNZyea8mVB^TRtSRI^|Da6a9&AryK7uBuVIt;@ves2Z5i0V|Kc=D7{W9Nzv1HFfa-b0b+Xv-yf! z!!)onA$idDf;1<|m>y4Wp&X3wP9O!x-MD2^Z;)46kvjL|=!=l@;{deSo3nK#M2gHX^I|3Uh8`VsWn zWZ~Lz5qwvNh|C3E0c*TlT0yabr)r7rW&aD#FXwU{O+SLtV}n{%d^q=Z`t(8gZe)Wd zqQ-3LJ&|*v%6e~uu#&KJ`W*Kk^!o7al4+BTUkz^XW)uF+|NaHU+J;E#g6-eR8p|r< zA!{gg2ThAx_u=ywYuwh4y%w|mR?Dvq^9;gxo!;~NnH}+3{VxMX68^@7Bb(ksY%ld&g4Poaop~YV9$83!XQ{i_nzf`_ zu(#n(I|dhz?0Pe`-$<3<;rP zTY5wouA~^RDhkEVcCGR1Uq)aZ3a{Mzx&S_6xrR*?J3yP-*d|rhaNd#qT-)a_Hu7^p z$^8HPh-Kj%0aI}ORcOwa=Ly4@|9fnWvC*d-Yv`fszu1{Nwclswj*}+B_oj0Z{Y#+< zLqlzBlj(hLG99RcPXH<6t3ozk9rws5SBIIC1@NW%l@KC2OugI#pr*W=MqN2%FkHQH zBk#Q9MQs&df8^^GNXe)9mx>prbVw8Q8v+VyFnj4JsEUMwYD+#{ACB)d%$k)s*Y;NC zJo%K@Nk3ewL$xF1(=3o^IS5!m94Pzn4~F2mwZ|oIb30pX4dMaCeblXY8pXC%5JV`c z=-?0_58v&BS_ui!9&7|Ve7A(jR8r|0R0#k7gYy4t{FsdRatRFE3gWtWA{|n+b{ms3 z2vn-RbnSbeR~(A(PuO%&y_$eY$+xs*0WvZc<$Lua_-*gy@Y@#qz_Hdr{7Ad=1NkYc zle{k^zuQIA8@TYWi{Y2O_HLtCc^&-pp_WPOmM!VxCuJLqZzIRkoO{>p_uS|i7=o9U zJkj*MGqIe+qsaSoXNIUk6KPEa#oo=w>8Eyk@+usH2Y}$a5JcY-YM={p`e>KM4@}2-KvX<@OKf|`kyn3rgP$Ke!O^`S z7j>}XeS5h4kQ-yVO?H|b0kb(0+L8Zhl4}jqaX`JBFy0da%q3ypDG&md;XB1@mFb?) zXp)b@zoCW<8=cxsrN<%TJs}?(MwBUc8)Q-Z^QWE9yjU}rPVKVQbB1}J>=ye{djZ;t zqk944CGSRVTQx_(48p&4_badc-ARbF|HJ$1R?| z0`fZ(rq;LSx;Z9w8r}S7dHLN(w1obtC;8;(Pfd0c=J58no~J|@6EVNw=7NO$r9;if z_l8Vq&3lxF_kMgKCqc3Gr;Zl~4!{pT9LJ4^90B9@e^&=fzTA2KgdIb=mqeBvDK`Ea z!233*gd_W$2cAyxZ|lcst%*Jy1*K`e{2k{W9kUk^*tzE!|Hb8pESvcPp!uQ~zG@2u zAbGr!{oRrPZu@q|=P-O}LWN=$<0Vn~c5R1=K(T4=aqH1Fo*v5%aL%8;m=YkMV024b zD+u|Y|6KcvYC-uUvK$cSm@XknXmvZsyF=FhY2|I4=cU#-(~n?x)Z{)t96$12brcP2 zjJ0rD{pTau0ME}sEqPy576Q6kvWt%AG*@i=xxQ!<(I(p4BTFQb4JbGEwL&}t%P<~< zGXCsR;@a%|%*6uue!^Lq?G<9?f;KALkOz6)skOHbs?7MW-;s}gy9iU$VQvl#$9FMP z5fSi4xXl7Fm4g?{dHato{x#5L_-bA*gz!&*2jiDfoCDrRvB0DnWqN;;sh4}4C}rtb zb9F${uTa-e*ZF8&x0HD2CWGon}4!p7q#V#9w$?gV`B`WF#Vk*GOCN&rpoZ&5V|mtTMVar5v%-j!8bhhID> zfNvu=4NQfi$4(McGyBxEQj6XCY@P7wj}Bdb0{V;dz;%i4o!3jdVU5vOlTgkb(W!%N$~-6Wm+M!4H!UqZ z4mWM4XxLDa63Kao37f!y02M%iIBmy>E} zapa55r64vyO7gB}Xw>WD zJJPYK?7!`}(~ZIS9=7|0Bf|={y?h~C$#U_O)*Ff%`Tz-$6=yd2k1OQ)+Fu7p0_1*Q z3_p`SuX~pd{l=?`o%gwWgooqz&rng>3eP?d%Nn7fBp?3$H^&KrX%r2M?`vU@*MjnR z<3&Tya;2QMe@KkM(D*O`mZ>iJM!1Kn;Nr>IT&R`v0)nC;VD5pki;azq1KN5ZxZU+| zd`XC_IiZu3Y$*d%I>}Oc4K04Viu_4v^N0`v3rKFFthPE9?cVj8^8f=&g4oacB-E>l zC=-$Y3-7OPbRRyOXQ%7@?hg;CcQg52-!~{20=MX|ATpaxC<{S$1+lbCew4{fi?qlO zB6}TJD#2MJuVTfogJvs`qa$N)CVJ!ikNbvvx=0ZL3$bSU?YVU9oi!5K?fVuDE)8zo zJ(A)>mmBwwr5IXk%<@d%cNCwGtTErw)Vm4Ct@qVA;EziZS$~lt#kG6Z$C7-!KZYeE ziG_HQ)lppf z;W$&zLr$-W2j0lDglPhylK#h;*O-3|&7}A{ zAKze+EC<%`5+ObJ5kf+U2i9+|tfL0)B1-z>%_bcG7St0%*vaf-UHD2!As^rz_kTY} zwjN|2X#Gn->&kQY7doTsoLYZD`Eg(`A{ex499HVUW#DJ_wSjn{bS={WKP%OJ!AZR` zHJrZzAAKqwXj&^~N8ddRTYKp1mHkU@m zsU(Kc8!x3&s;KmC{4D|(QG|?`hmh=|9Hp%KKX2uCp@*AL`nq@cqlcDqiYw3*mhS^KxP0$|;JbDoY`PtM9%VEk+j^3%QQ2#Dk{~_A zIjkI8e#>oFuYT+>^s!kK%P1ODQH+g>?z2>qT!#4vNy?2MfB(3=jkGMAHMsP^#(~!$ zYWz??;+2P-LV?2{t!B4+8FYgN&VnV%D zFjR6LICX@SnNvOqq4HaipL59(aL$Huzc0`NS><6Q*=CZM<&hHSOK?VW!20-TDa;Om zA`Tj08ZLb>UU&?+F*X+LGSh1@|5By+UMeGQ_I?9EY&t@~r5^dVxN#V_3L9U}vZ)%u zcjOO11I>jXyU-?Ue@*?v36!$bWCM7s!%ssSmCz(x)(hbK@dggR^!*d59if1k$`Syr ztKX($;OQ+RsaqCooi)N?bRitSc_{wD5Io1=Ile)Wh2nSwhmUiFJo3q}g-cmm z7~k30PNC~6d+1~}3@w@c4vJMy{h=9xA`K@@JlCf?sI-rH$ait;%ExJQhK}4|;JZew_AuX0p5* z|Bw(g5cxY5PM)ce1TRQ-C(-s~R({rn3~|FVt%71J9Oqd{rJ;8V@68no0m_Pa8_+Q% z;V!}WHq9$<0S(#@FCywFnF6Xr|G4>Rhp})x_mqC(WiY-^K1A&8BqZT324e}3bFhCF zcN0vmsH_`C!hf9NgDfddbuT8rEgF*W35Jd(KxWbQh*8_WXG*wcnt&G zj>Zo?iYjHaJ&5QRf9G+FGn$nAaCNAXCm{#o=i>C;+}A)ml|SbN=KXMfD^-MiD%(#V z@4E2mKzVln~$lG-KFp@Stgso_@=MEa83KVlMRr-)U$*|+f-HHgics0!MXqSQ9*pC zsn3!nVctM?6i~n3$r&D(jx5LP0fg)dc7?CGDMHfY zgu|41t%;hX1l&$X6zK+9PE`x7zjaT3$c}KNuP^`nXujFKqGFg?gJa(XsC$O9&k{=Z zB7zyud1*MlBj2#Zzqis@7l2>%S{}ZZxe_auRst69!pVDv=g$(9){H*?EWLws+`cO*at#+}Y-rm+wl@D)eT`h`XZ{wjSA@XseT$}r?qjiz_u!om zPKZUD;>wSYzj>HB4Auqv(cZ3jopd2qzs=dRgF~P!r4V-5>CH~lnfc6_M#1Ob?H22QY}$ZO zQdVq*uHusLc*oXq@zXLw&fOvE|~+lYx{!uZ~puOO(bd3MGeap_@=@yzpxB^lica!u>Id@9eZXsodt8BKI9Bm zD^Rd$?#UnAZDeSuD|=~LCBwDkqi)2hYB@Lr&$n3IDAQO2*d~OtB!C#g4NEjdpd*xS zP-YfQg$@;B4BeEpk}@;|$>B$kg#y_g*Ny~eSVPzv<2nMZP&&e0WvtWbEaz9T6=)!S z%fruhTJPmfhg>@>iV^Jc-{>sc)fSUztFZamG=|^8rpRe5xe>gGjHX7~2fjyw`*e>v z+SF1L&N+4s#rGXv%47)ywfluLE3&@t_dJtrDYEkGRIEa`(7FCEA9h;m#2n|-RpL}?zhn1bz}dlGiuX-fhrPyUPqI}E== z)!yUb`r~!+bvE~uf2`!YXmbGH*Ef882I3!f3z2)p++Dd1#u>n~QU|?&riNNP@6k14 zppK}qoFqHI)tirP649c!AUPIak?1Xg;E6RxX2HCR*2^gBf@{gAN~lr=saF!I-Ez|5 zbwZ%LI%q|r6R21tm>KlmX|!(SE?|-&tC*X=$ao1}n*W?W$(^0wDU9#+w?^W(Xj}Os zU;(s*MmR+%0;ZMRJm&~FpL9C${S)c?!t$pH-?KFGaYqbet!wF83ks!Rj)3E({0YwV z+jA-Tq)yJhhWzf;1s!wg)DgrOiwMI8+V=!j*~;LEKBw<@fNJ=U`Q-Nx)3H$e7BZ>B zxi`0Pv*!;F7OXiBQ%j-O_wZ)vM=X^@Npbf`RmlGRq{uChIefQkxR95$wKGr!N^9l_ zxDZHtgS*El>x&KG-fQ9er3-XWKxkCj?@?9-!Z1s;?q2<+NC<4>)Ja?O7McIPc)&!7 zIE**m_yNlGzY?RNuHoI~f6gC0OLF6{ju2q?JOXsE{O{UtZ6NLbg~it?C6wmWRPg1C zH6k=iD&V3fCBL?92;}inM!puCe?Q^9(gNZ~@8n-W(WDaeh|&OW92aTpq*)?g2arBl zD#@!_X#M>O;{Dn`b*~O*O-4Wt#{VaX*V9eH z@HZGf13nS_U>l`H&iN2dF8>MhAZ`vn(yl*z45fCg7hrW51bu@zq9riY2K$1 zR@pT-8DW(XRtdUyIX4~h;oRH&^n)wu<;eBA=1fI%aoX_FgkgL0F&obe8@8RQ2F^`~ zDS0(m{&T#$^Z_zjS}49COdfMIXfuDra7HT@wGeud))2>hICqjI9dPMsk4tNC@`<5z z{)8k+))JCDP3Ac<2>+|w)3!Ie=uVq3xyMl?*VOb}m4=2Tf=oTu*+7g4L|uu_DuOS?C637Fz?*uxXT4BlEX}EanGha#zocS4{YpL0&2>j|kg=2J zV1|bPXJIHoA~|@rMrWv%BF+I5x7XeATTb_R6Y)Nrek8B0r=VI8e(Pv!M8PtyGw9)cX!udArPG4 zF2S`SxVyUrLa^X2!CiyXjT79pq5I?aX1$rWX1;IMx_{j6l3RV&?W$9!_SriwzN2Ym z25{>2c>OYXm%HJw^vCtoN7?|6bDGJF8i8Z+q)>%& zS{3kmGeeg?d(f*07Q?H?3_MNY#sY|_e4!m%ggvTx<-82Rmo|cHHwTaQ|4nj@?jfF_ zT$c50GuXbXa;vco@d#ZZ|8Fe7wIz*yfKV0mAMq>675*Fm3GZbY7w)b;gf#GuTMbSW z1N6=w!Kp&jnSU~>HfC5yz`BsL0G7N;nGsxTPxCW<&U$*-q4Ko5*cb}E_>GQi;!+uBD42;!{er<>Dsz zv+neHgr9Ud=?t&tHp zpL6eBifet#Q*NbMGohVWqV9>Af9`G>cX`i^s!s{N8<+Y^0H>U#!s1dp{-TRR5R0_? z+=@sq4xjYO8ejA|{A`)-$jIT1y*ZOYLo5(lEVDqw`mn%6IHDP+Bwh7`!64{WAx3e| zM2kn&_HLW_vuHoFnDCA3earRmlWVto{-KXIlRl43gM4F`ymItB;oUu%v5;OD{QGC;kh6nVa1u(g9sOK z8*2Od%2{`uRtXM1VVUs9kZ1GE6vx@swKzY5#3r9xo;?PUk7!DjB$PO8*+-fy?Ou<; z>qtc)07^FuDe|3N7rfnHacES;(339 zkEsFf>$Hok=8DirhD#Mq)hh%VX~X{WaJXR->0pV?OTw?K4gQa;9@V2CP&4NIUtlU- zB@XLq?c?I_>?0f2;00#-Z*DKC4)!$7wEDyqPfrS?wg$o@=a^Xs$V(DY<)(2NmV0yi zr0*|U@+&u7%x<8x6@GxBW#CT>m-CEotIjncFaOyXdhA6?if8vm zKc*E5Fj?3OIK`{dN=|=wQmgEpOyxMr`53DI8B^$8j|5zLxr8`v9{{NTxO5fd6 zhK`Tbpp_DcCCNn{B?{%sb%D52&oBYSGQI(7@Ievbw$|EwE+9Y$t)dWwrWOReQN znwk0Seamyd+TVsP0s)c(9@|-vXAJ**+wvs|PKsO7sQ{a2QLlY=sQ*2 zV+r<|VBjmk7aG(j6!I+7b7!(!{zE!*IYXL;Ba{^+33~p{oRb{LZlx4D(-okk7Gdh$ z6wlf3Gn^Q+=%*{>UBe_jiCI%`p8+qZNN_D$ z9#&j+Q=$KDuUs#dd0tgz%V3)-;ZM(-N~Y-uH=2*-zo9vklo#>ifmNNP`+%tUcF0pL ztThvYX$_C{p!56EkaZd4jP1c+O9wkEI~_-=Yt}#SYSk+t)~I&m7i}u!f?_Q{HV2s{ zvfO6r(p9rqoPx`sBu6f!N3G4`1$uMedCRimN2cadFV8k<5PbTnb!{|Byt*eOj;Ly9 z!x2n!49@({^yy)6wpd(1;f6xyJ(+W-8=K_8lhsogB8yJzmdC;x;&L%%$HWuS8!q87Kc8kndg2x`C1SX(4wB zEW5^ZB59`i0T-T&%zd4;0TOYS_~E_Q)E;frr6ElgpfaHd#7swvwL6)A8#Y6bOR8bb z8vc&DM;pIP3eOC}4^qfQRug+6Z2q|PZ@n+a#?6(kkhfRo@v&c1g<5Ex+P^WHrZ=yS2iL^GlUv>ij&Prm33u4}1aU*EHf#o1^`WYf zVTZPH!#&)$dYPMvZOA5|w`D}VTgeHNo#UtX1Z)r@UsEZsydC<%#DW9s;J3Hz*q1N%|k z7c-u5KOlO|9SO#oAat#`+Ej}V+>OCVqSET8r*p;t`{o0O{bv?mnv|xWoQ0iUYYc;C zQobkL?VeK0HuQrn4!oNc`!4o7Z@%A}rR!|xQtsJ!*tLoKQ>K%i$)AQ8oC@4pv3EEezeN33!DxAUP zR@k47U1Z)gJX#9=nYIwO^kv}Q0Wq5uR!^l%|NDM|fgY7pIYKxcbySj+-``(N&EATk zh>qE0viP|3<*Lf%YWdQ99}@XyIq58MeI6}D$4F*a4OWX-gdvg;U6(wPpc~FBqk7EF za5@Us(EZX}6k3O}NL-G>(D6M}RY?&`#9!?q@0ko(n3+9V?)qk${v zsM@dk0qC!pUAiqADoXmD(O-SVrZCKWP~VdZe1O<4eepGITlBVS8`2r;V~mSn)W7BO zs3O2zQC_9XVN22e)c}v|JhMf`bUXDQW7t`scMqv;OX1(|AXf0+ohfId*81MGRo-tH zMlV^Cg2b6AeQhfrh(~X$FfkO1Bq-;ce0|x{6%gysQi^2%eM!}&-6{lAv=yL(^1S^9={ds1-51xP(WF8_n_N6(9+UpDt>Vt zl>vy^-s>^0%a(~kNr!QD(>mW-w^QXKCgnRh#DUC*LS&L>1iXu5<=I4)67=n^->&2O z@H7;PcqK%az`&6O%I9ylJc*?Mo$pLSRAFcf=MeWI4!y_1(m{7Q1sH2;7RIzxiE z=*d_M*PjtBuzz|c#fudZ0?;~jGYmsg0>2oS5}wq~e!ulMUy z&+Vj}nmE0BeS{2_4$N*^)0H{=gXP6HoQ>6&aBR$HZGCc3i_G7C-)9Q-M>X#;?``x< zC)1PhK;YaA8cz+&Dk-+#`fYTZWPn34Wbf}Mnp28$~w`scdEPw7bwN*};U*uO) z#HQ-Xkl)wT^!9OYB|%1pm?KHL@-^0h9RdN!BzxAbCcj_~u$KBVl-d&C88VY>mEw~% zdr58E8l}WUCYi3yU&)_Qj)C_Ll`J%kQV<9#@a3*#8~!Eks5vo8T#VMaR{(n)_|6ma z5n2HIo=CI-Jl}#^a~<9UcsThIk!6Iwhw*@$QF>fSn3*sO``70N%iPa0H!nfhBJIzc zl;sp$(Gd>1%09G^y}}mUs@(?VwMWZ4R;#? zYLIqDLekF47bsSRPvEcD{ne`7mY(ETT0yErrAK~uCf|zIPX)m1AlYhosSXF3?#azt zpPGSO26}bH;Q7{gx&c!{Go#lZ459S&pB>7htL7WfO{JCX?3n_*&yJ5iUzx1wTVdFd zInC;R$I-UIw;XT#DBCK2(pC_DN&$lWij$RO3&@Z|?#;IMVqGTJ33oD(Cu%>X>L(xe zxhP)InWFP&4s}r_;U_jGBUp={T{MqB52GkGk18o4axz#s4t-15_j{H;9PxpUkEmV0 zZN#qYVMaEIjbtdL|4wWoxn3(NA-)2@q{;%`#wQu+UA^p-|+A9n8qEEO!Syj1Ai=u79+~9W&7u=jMabtyLx% zHvVAZ6*7SF$ct|5Xiq%B$k80`L}#)K7CryjqA`+nR9_Ei398>3u^S55=c9{9LNv^Q zpRvLwj`msgn=W1^Fi`9NOmp3RdHD*iL@m+l@f;nlN zu5GrQzyyKe0r=MJ?X#U9n^^qi>sK;{jti;uM|=(4eMk?CV;4_SbPO_95=+b82);br z2(`4IR*=8)6m0Yf6Wk0wF1eYyVVY0)%Xt|Al&C60Ojpb>nZ<^JT+`{<^ys57E#pql6nNroSAh*c zpHSR4pIjZ2s}`3cwYb}#Oy|Unq+K7X;OKDAtZCNc{X}u_*D<4XC|if2kD7waA0{PM z`Y2bsBlM76BqeUw97q>jT-y_oEK6ygHTZF^Xu+oh8}&LX*DEeTo$jrz?Jn?P8xmdU zm;*B@UjvvKNl_N^gpvj?O9A!SrSQrZVcw3DU+53qt?dqY`J*uJKgh$Ln-+>_{DsV{ zPr=I<(OY(FSnq)W44jO&?6*<&;Wk zm5*oUdr{+D!G(X(eU( zJIQs(KLzMHL!>8?0qlo4ew4?kCqUHlDrx>UFl6^QS_-mAf&SNFK=o*6NS0Ts#er%8kLvQ1L+LXwMGUtyF!rb{Ddam&v*x~ogM^ z3Nxptk(n5qe5V4j?7w&-EblR?8)R{T?qlQ{elMcL(KGi#KlL1wT%* zE7;VtBbHhpKY4fJ6jNZ6F|d4s`-(h(Vn$O4a0yFS>PB$!xBi!SDc%=2(IBgwk<9vc zP(WSR`gFkGBIu3a>6>pPfM|e8@O=84o_K_$EU&5vZ!1}_GU9OyqVyP(^UA6TVc9Hl zc-Xn*u-WX=m-V2LTGy2|2s^{D@fRSOEj(v4FTr;p81(20;rW(cp53e4e=uYaCwt-^ zSqYz-Weq>y*1c~_gJWy6N)r8E-vyJB@##yT zQm6h^Q~ICH*U#hnmPP9uuW1+AvKW}B5%bcY;$-#cd`aW!MIL4lr7Y;t$utG4==P}S z5j>8rZ(FOfOizj!F|?OZst{Dg?dAh5Ek2|`F0Kkj570AIoH&T6w20q&eZ+wjAdu8@ z^2RAe$37k(NY-?QH{g1}iFcNnpEGRJeO_|w3N+P|(S1~taG*SKJ$E?NfjIs}Q*aD( zmDYw&EB*vyCBfL>^3pPHB^auE3V?54Vl{MB^6cgXwA4a4_v>4ewxD*L0(|L7mO%fi zKDatFk*qHe7wk*=(y1n8&&FtSLG#JBE{a7A8W$@R!3y9d6e#wS_x|{-h!lrY%5KmH zVG52urtuWh2oP72%iTz(Y<4mySN}x%+rR`o($R(oXT!vH?^7QItLtMaNZP0X+~CEl zIT+%j^FN2qATRES-3-s38=#h(NvR?H852X{6x%&?#r7_w>CN#+396AdW~JV-LIim*u-I z!g}NS*h~KwrAP)TVLaxjAMvVia2So`-lS=j8He*lEl}~JbL8XNB$qGGMc|KDpWxcw zK;*0CF*6%;ev+yp;&8_q6?`Exwv~j(wG1EmJIaNgD#UAF9YC|0yC)Yf>1IT2JZ-vJ zc$br`J8A=!0h|$o^Wuh22%s!=&&JSf1KImH#eFf+xo;K@Qa#T^0ev#qo*tEeLl&V7 z^&sJy0b4PI>lHiJGh6=CY4LSRk{-j^PouAAdtE#xyBB-BN1*lr$X;K0#p9axAj}yK z45nxIm8!($y-s34QEh4+L!zQP0P&z#Dp`VRxHA(gu z=O4R_*S9h5Tj}c{jgt!Rdt9?71<{`Ji@4g^Ws?gt~ ziUd3_V?S?HNYRn6R{S^!nEB#auD=yA_PUR*LzUq|+jHNuX%q+yjHMgo&rK$k!NEHl zgkjwZMEn3c?DyDVodG+bbtvY{>IIDG4~uxd%T^wsoPV`&H#^a3i(+S)uTC?chdahC zR?F^|x8=Uk)^hzlrAOZbhD0nC}`C~Y-dzP5k^UOKEnHnf+YSvda+_;WP_fYB(XRp6WO}83k?{9Ugh^ z!#d=u&?%g(eE!2d%1ki#RQL4H7xoh%q_;LrhlfVAPG@PM)vNY7m!I8=i7kuj)j@lr zAsjssx#^X94YOOzKCwJYP4uy4ZBj9`txgC7CtjKO$Mf%f6`HN~gV0A;b&rkA@d%y! z*bAEuoc>4+qBAgOIRr+Fh^gb%Dy*Oe$J7Yeq$+Lwm{n;Q_Ld`s3da>zrwZ~uHI%@4 zhrpop-mbBdHB$+G2;tM8(Z28L^G}}5^V!f7hgL26!GDJPf(Daz#2ZOw#|e+gVLgVY z_QfiyxAL^-TxRQw87zcocJLzb!^tG}kdiLT%&6$NQggXwYr3K%@f;7)2%oNVV#6Xa zfVAD#>#+AjYNQT+#V8wQi1HzS+XrI!ks;ow@P;QLvvOE5iQO*1TN!oMirZ9V?nELV zgEDDdo%h-l>mZPgSR8Uf=HI6&aM@_75_ANs*G6-JNMzx1J>el$><>M1cIXQ}FfLtj zS%@)fzCRNe)O5r2E<6%w1?utj&eApCa&O1ux|dA-lYnO04z_90F2KZi zbebfldjhFAH*v>fEy<5Eh?dA0OTB5ve|M{=!m=4}Yep6xDMIWYg~vrtqm4tBFHhy~Th@OUU06FUDf zXL5K?BYLr$aGjAs>Lnk9)C&S~^8d8CHqmHQP3pX;V0X#)T0kKy_u<=jrx{pmy7b=> zI}f@jdoD(X7w7PM9+asrk`0h`1E_fG8j)o9nzJ^euKQpAs#mE4fNj4Xzv?{mhgo2t z^3|HFQ%+m+69U`u9=o?Glh~jiZdXvr65Vd~o6&N`XDRiySIZPBU__orn`c)me?m1S z1CR(%ZvgT3?Kn+Hi%qT#z5Y}_Ti;8@^)RyPdz6B9Dq;2;SDp_`!uPx~cbdI4-xO>1 zp0`?BXYFNA4}-_3kx{R;$#K}d|)0lU% zAzk%MRLpR-_OJn2Kx^-`x<5%G9rX$hSE$GkJd5q*NgEfiaCAH#f%3;J(M%F+VV@)MUi|xhTik1>{$8#%r4AU5fJ?IN{i=nL( zN!rJ6*s1FYruOOqyl<{kl*r0d9^qEQbate1r`^?0%bewo*|(TJw`Z?yyO%z|6a6*b z_Dzv>a?Rt%SZrBImhNQc{pW!4pnij|y(?pF%aHad1hw*#T_%<1q>`7#<{3zzhKQ|Myk9Rx_DrHOB{hs^sH)yU-<(QT7RnM)Jss@Y{kvK+orDR`|cM07Nb>9vk~e z{ob!+U10U-r$|o?lS*8W&E2_> z(utTjU}p5hR#CITX2rtHza>H}?mW5*?bx~T!U8)v&NfiHzP%)b*Z%o^rN=?{(4b(xwJYI})>owqkDf92t^UzR$A5w^7jNK) z3T25#(aN;Wy( zTEV4ufvEZi8A>9+qp zd0rwQNTV)(8SEQ$47%q^%_RT|`@PxO|fPl;1ZdG%vTAkX1LDDMgOBy?uUp zA1$Tyt)82&{4nxXgJig+Y1@v~?j)3sP~;I*Qa56gx>lm(UwpF0#lW>`(+hG0DCPb4z?3)Bz!UE$>zWz@B};3zvK z3;Pyygk4PB=WB98)&GztHlEh&0<>Nv$Ap(O2)uDlY(8gWm+B1L4`jOnZY81ED}RGV z6fr6OBTaRkDx%oJ7uDQ1OEi19dXwXyOJ6INS5Cfj1)=|p45xTL@3p~PlKUG6tz0tG zme*F~BpzpIGC-+Gu}uj1SeAN450YAZMj!(9$wu7i2}2|QxTMrW`C;*jyC`;pnXY&xQrvNbl3Sn5x0=6zao`iakAcDcDmd!bJq|X*!<1#iYNp$4w0s z=LFG@9Wgq4KBcaotv$KzFHX{0`_t&PwP`eFRV5=Ks{Kcm!G}C zqvP&kzeLZUv+~tV)7hj68f;=_X1v)ym|0V)-xw!%UMR3UU$hOndW=dxpVMfk)w*&67-pQ3ZV)uI4J<0qv=?vwRgh@rev)8eyiUQWVp07%;Vl zwIiFGoAdZtpcLkcF9rrGspj|B;HRKhz}b@$KK1*)Gp?p)^K$R;zrK_Vrs_)qjsD*s zAt0LIKjV(I+661tuZjEZ2`>Lt4jqlBD%HKt)`W6iC22GVz5c)3{a@Wcw|1EjbSoA} zc)&hv|EEg-{VYKC6TI~4C1M9x(6O4?%R*M~UB&;rg)-B(dz~(Wd`SMkW&hRU2K!55 zA7cIgZ1X>Rdgf4(Lij(G_I*N?uG;~Fao!ay|M$P;zlSLaky3x%|Iq#O=g+=H$0yOI zy8pf9{vSg^zrI@`T}PoA3#x(UW~}fZuUMn@#$rrVw;g0o{Gh(}G9?6i=oRR+f^ zzL*=vnO=<=2C%bB3F`p-ZelrR$#Y2-Ab`JKv>oFBg*KZDT< zX)d7==L)o1Ij{ZtTjvYaus%Ub>+%D|N8CtLC90)R@Q24BD`R%*TfLTZmdbNL-M&3` zxIfH@a^Dhxv)?9DJ)Nb3(JR<9ao}PPs&P}e80vVggWPK_Fz2-T;7gX%wh~e=Tn%`4 z1MWez5RAnvv>K^STQ8odJJ>eH8ef#saUrgr<|3*RGDLH9klL3@PIq z;|D->?F9}(?Dw}0Me|VxX^oMn0{BUF?TVX;d!MIg7_=Wf7<|&OzQp}D3tX|vQrYs$ z$olxhd09vrLm+=oCIfpDs;he`@Bq76U@O|g<1_o2!i}G;`w|F38D)mK29gC6<>Z07 z2_BZ9b+1~7x&yygd z@4DA3gLClh<2-tw^3|>0ikB6+IcN}Ks^)pvjF|f)YN6*XC{W)gxwVMbO_HteQb7mH z%$S59?K_O~cdLBit}Fhx*%q-@K@BL(Y~vNX>OIW)tt_lUK?wKnlKq&TDXD@d2Km{e zChiXdiRT{4tr1dO%vMg{<59hCCGP$l!A$w&0K~4hy7jLljas3d-=5w|Tt@9~jLS9K zzfC{d0rGVLQCmNu8n4Y#e~k7>f?FsaouE%oFdn!1;~Y}v`@~ya?(_M5s_n1TEMaCo zOqIhvyLa3Q4m-l9z@08$k)Nx6n{6;%$AC8OnY4%^s)49xF5&AVn3Z=$Inh(V`h(AH zQXkR*e7l7?J^CXbiMQ93*U(MK(#cqw;bAZ00)B8MtgwD$hJ#L&2>6u&41R3nrW$BG zPa_oj;A%C=uJ~7w;%*6|ggLkGV|{8Uy&Q`A3tJzcAGz!sxphvgT-#813Zeml({O|D zi2_t$569gUN7>i<%#d8Z6bQfd0W5O^;!el&<2eTJSgt=`%XvQ8-vnsO0Hp_ck^SHY zL(@lN^03iI*4ZC=c3(exBPp7WL)^TS)`C})I|vs9h3$>?oN`9E3Qga0g%QnUM1R|_ zFCR5gO*Ou(IW%&D7hrhn=O8c#kM&wTZ`>y7J@!^L=wp7AGTYOzOm_n z-@R!^gsc;@2tf56gPw~3Tr;sBB|IZPgA>g-0}mwVMg#B%Q6Fj#Lek19Kt#6U6^aGv z^S^STep*Yl9nBI)H#lfT%X}3(g)!Z zSx;Kv$;H#DbDcpIsXB_DcC2AP57X(+%KL}fhpAH0N63>N0*9uMNIRj?NU9Lib_7Le zqxd%Rs4Zdw27_1)URlgj#T8Wdv2U2wG+Snctk;i9fncd-*VnhA%4C%{?8aEN!L;r= zB$iK&{Nc&KsyDOopvKYjefSYT2x4;vd;tkwTV$ns&4!HUyV=I{V`RloMq@zS;4 zzE>zK`^x+yUdzS8ZoFN0TyV<(gXZNhI>G>c93 z?$4BY__z)_Cso|nP*!~2n-bL@4tC`~T*%VDW1Lk+a?&2@G1#NF`m{^qG86f6~ zTt({M!$nswW_IJ1GulSf=Kx!&>=x%@W?1}CS;UdVJ;rM1f`340Ip%N8bZ@P($huG` z$Y^P^W+AHL)loa1YOiI(t&Xc;@*vk@uYXnub+TR!-4K5NGcyIgORM{>Eb8Dv9DI6e zZDmt_*Q`_lgJ*fuFYsJ~{mjNo(RlR`@9j}UDn%ZmBU1!=-@gt>@6&P-ouFdlF(?Rc z?mmi5QF+Y|ECN81bXcSayYv#KS&)CskQQ8~Zf>M2-L!evNYA;m1sV2sQ53bq^*X(w z!})EQ1xpVv`_Z$#_?*Iy1=y}oa!1^S&0niqka+2y>ONhFC60KrO-v=&yFxT4xA7xB zDUKwa&i4ERrDztE;_^=33ke}VJ&CM?N9QR%`2?C7_ucoo#{cWTkDyMLZ2u~?x2H*S z8v}NkeJY@8-cRGwzz%Jz6{9lfS^e$HRaY4O%=8IcVDaA+ zpU)-+vQl^U1zVCTAHgQyd=Am<343#S%JLfzRtV*kv4j(=A{=QQ(9na_GR!7J{w2y5 zqeVQ#Hx<0 z#=qr@q2%zMM+x`{TSHG@8x})_I=WuO$ZCtN9z5QrB<4G+_!H-$JT>uTtd7KcnYwGb zXlr``dHpXsCLO}J2K@16TBb)z&*oMrKF%mcO-CVuv5>wsy$G2#in_WLHxJ33 z3+tH)FC0$}9`-h=kX8e~o?Q3VLNVMh)AI$GS?y~5piz69keEKtyE<@LP<>=+h-VXw zLRvCoBoZ&4D5m4b38hJVL6J}c$r6l-!d*802?Prarn~@}((v5mPlskwEHs~zjUMv4 zW9`nl{0ZR%wP1%s zJ?LmaYyJQNaLAbykrSEZZ`Cpwqv6l3va;2inb=XK*IU!^eoq2Q#~Zx?w6-xVlBC$T4R4eHK~$ggkWsH|88?!_8*}}M69Iz zoVH2#rO&85>{dMbQzE)+0YlT+rqcrrE!777kG?S@YTe;_eWRAf0V`Iqr*@ckoc zm`47?|E}n5*@MM}Wtydi+>lzaZ~pC1jbjQI)%mZtKs4kaKgFcw2&GqYWZW6Yw8n;( z_HYfuY)OctNfKhSzZ^;_M7Qp%wR5YhPH^T&Uj{m#$~ZKcc5%KcW zI;G&bWs}G|t{V14nR*Sa5d4hsZcI<=1(C^Hw)C zH90&UCebT;P4}em+&6pd*p5}XE;t(MB4RQK?3CHc9Q31(S4ajsWt`X0N?%O}r;%&f z!oxkyL`c1J=C!HxOlV#}XC~(|mT(JGCbWcj{HVy<9UfL;N^2}e+2CPfkkj)5__q#e zl%DKX9+NvN@%mFk6%hiW^_WyRlJ09tDQ)enNB#o}@@=Hqj}Bd&0=USPv?M3lItZAi zs|JGg&BmHOtfZx+$MN6l5v2_Kd^3N@9v@Vdy9zKx?MCc}2J$*8hHUL;l|7VwuszANT7K&%>S%k?xaG7KpJo3AT{Muo zdJ%X!41Ov29{Mp{x7u|ye)Vy(JUohSNLP=Cz}EM7PZs&;=2-BQ#oajDF(~Dyi++0f zsfjTWExT%8Zrp;Pn<>=@iuM(+#WDT-1f8XGj!mQWa;bxCa8j~=c<7W$K>6+Gn2UX- zy!^Q@H{>yLFk>g#>@3I2((7M6#Ru2D*^x6VouPY@oAYkCB#ojPFO_82e)3HBV|6)- zk!L?^xDm-F|I%HCiYv1X+k7K-#a4~4$#Eh7ajS9DqEA%6J?z-0*?xmg1K|G$mSS>s zf5pQ_CSe^SDD{@TYfkkw^<#od^!;|v)l!VpuT1}T1>AkXO_G-SP_1uZ(L{lgdLXxP z!_2{V%1lBkilhcXq<8@kzFM|nCc5b)lc0{dkf6a1S*@(h2it z);-IA%_aBYpn0EkR2nVnYBt;Iv`Gc1Qb^}M&e+uBX4A%!F-y{-02MUwhZo_3Fz-I{ z=CqA*V?V1fA4;no06y0c2iSq6>CHsxdy_p+Medib(;UgtR(C0`-0YMLp!IQYRm7D zUQb@J8YxaJB|`a(PwoD1-YEcKEqOEq~Hp%aY!xFw>01-1iW5mMgkP;+TkuIe@z`aNHME^RNyzek<4zVxF-gd`I2s z+2o&XA7Nnjn)8P-m@a(!^>;Ke=mso(tox*Jc~BL`XP`iX&u24wxHkB4Lfk6fOH4n# zMxVAhF9@p-{Pbu|tE}V~dbdQet$rFZC2f}icQ;p3z_s)1U&zB>ItlcP$V&}^0{4UX zF}Pw*4c@$nl|A_Pk-b9)l;RMxXXOKrEF!$o7|!A2<_$IPXVW-IVvew7Aw4+}rySGw znKq1gO}~T#`yJPs`znJ`FUCeBDi#OkIP&tng9CA4DRKLXz&f@A9(PoI>(oRP!&6$d~kX+}1z_YcG`r3H7> zl-mab=~t=WaFs^}o5HVhnx0%-Izfbe@xHnyida*sA;FC);Xnd*SWh6HbVLa)kzwq+ z8FH3kz4-BOcXMjg3(cgS(N^LZdFf29O_V>0T28dh{%hxGMlX-*psTu89{KZL*|LKd z-ho&}TdTh)&fgyTUBwpDDM0w_-A&p=3HE#^B%jl9wk#D8mzz;fet4r?F%xrU+s-2j zkbj2*v;o~XtAd%(4@da@%Bj@h7E^vC$3$RE$7?IO8?mXnz7{GlmuiYY9T)sp;IF+s zOr?*?(nCDhT(M~Wv^K>ODau;h$W#Y>yw-hMwYBw%*J~)nU_NU*e$e zvf8h1&20~Dc&ua&`|8AqWvprcHc}db#s1SB<1g`9X%wPhm-Dty&3$yTTMq+}E@2%) z-qn*Go!2tK`m(&s>2(}|;eYK;mqU@KxP2a#rt;rm^GB7mnMAW?Q(LA|UL-W(^jj@e znNLFRi~z_BY!L8rUg=`IC&KkV-ygLco3T=dDV#ItvtNIG+6Lciw&p8nsq#JS__Xuq z?=)uK4@58=)p7#I-=hv~LmC1Q<1LQh_ZfO79x)+WtQ5K|CEel@g#V6(x;IX6FSe5Vh;Gz|K z>c47c6>TfG(WV+4EL`E#+eWpg3gp*1tzK~vt^a=KSGEaBqJE|04NRg2J&-4Bo_8+f(`D?k7Vuj{q9Y85? z?PGT6Z{wWZD_FTOt}(0{oYfktktcoSLm9+kYZeSRF%PB^tF3F3Hxmx4SC)||57Zqu zwkMK5KSf+p6@Z)*A81SS0X`*$o~rh(!JRD`2cr*3L`LmO1uZci_u^o#cGR-WuYz}N0YrwRUc+xV;t{10ml(JHN zlj+UaQI4B~{6@)=EyIrw&qrO}AgxSwC9SpynBV!Ae}yJ0-_0 zOJVpWMmr1rY%#-3g&|pC4KM&oA7FwdBBSDse zgCIP8D$7aazr>I|r7jP~;Z+>l+@W(ZHL(5Z*pmFe}4!BW`C(lzr1L;T3tbawdrSv{&Iv1k19lHl@ z&r4@dCD2+V=Jux~iIksTdJfma84L}|aO7DrNEBsEV~zb-%-HGR81&e{5^D7GUYX&^ zb>~|p&q2S07ZKb$sC(kvWWVfbcwa~IoTiPfnH+Cn{J6|?#j%~g4lMBYY$xplRb}hR zcaoL-Z+&k$y>9o0KF#&yW97d?KbJ2eah^zRyr5^4vsrOuCK{QHl!Y zDlt#MYmh!7f5R_}^i;PrW$RUv*#=uMXgTb@^^zYKPgQwL1x>M{D@HR)qZX<)u15Hk z7dt0V-BBFgZ@`DX#u2(KGZv9at~+fN_b&RJ!i0$}MbWEQtoC5Mn95y;;blJmDs0dM zlPQ_?%GYE-ysCj*;TrJ}@A~_mpo)c9gh&fz`_(g2R+51vxBPbK;L#=r!KE~ZS5_7R zL~bG&|AcWPu?Jed_r|ZI-^d<^St8?^KF(ff*f(5{vx2x=`K|>dq8~jZ$plpQX+pku z>`r~@e|2;_&a-aBFNMEh!96~lepdcSby4u&Sb*g?xGR6|)Noo+wln^x12UH0-0!bd zCEV2Ia^A9nuWL@K;hoRNNGv>ujZM91!Ff<=)Yt>LUKdV*|}QeQ&am(?Xe-ot z1{yP%Qj%3tstoV3%CEXEWr*gJu zvp=sXu8+D4YFNacm!HcaYxZ*9PT5W@47=pVNR5Ki!Q5k2v2z8@(zsMOTE+%rpUPwLv zF94%JT)*=+7R<+YA$E!YML<3XDX@VeB%ne-&5}}0f`Lt2MR~ZP!S~*HfoaSTm>Gin z1itsloB8Wq@qMqS5)H!TCyc4c5-(Chg@J>*O@6+Hn2pZSPhlE)0y7CFPwI`6%E|ap zCZC+Z&Y);z#u*xXL79h4M4u3F8`LcnKLhpefm;Mtxd9Wz;dd|;`Px`VT-_9(a@`#t zywDFr;`ws+aFe;iM`W6J(Y8VL!9&EbUL#F53ur}VWRxK9j&C3}VY=7f&HII8@Fxx) zQ$5@uR25r}s%-~r252QDlya^dIa{psXrq_KlLfnwp;uNIh=YeMjcZJo@#0mM483@_Y+l186)a{t9;mokFmR}&tp^$&yzxg)4 zbgREY{054f^3;M+Trd&`Uq1+`MOD7hb=KGEF3_ zKfLfO0A56zM}g)m1@{#^4Ior&7_-9Jtd=?O>J+FskNgC;B%D0|*&29>Tni>W(P$ln zj9xvSZq%gTo8||mF|jfj13!@znc6#kKp?o(idir7b=p? zNzkw!n?jCiB-!-gSBJEdU)}N3UL>>Xv#6bPXdQ$}O!?!RKj13`D@qe0^TGXi12O%s z0aNyn!kxi%$4|2xicDB9E8o)q(zy07Vz{H=(f%6i%_ju0+YnttdhyY7pp)?ZTra_b ztC5|Ag}%i>7+Zum=92Ot~F@WynK-=qQj>EK|3e+x;h`9%y1 znTWNh%D=q&LkuM}a|Fh1dt4%Xy5hV1Dt=xO7xGlL8m*fj)3AD4B7Ln!LdNZyI@?TR zGC~5yPhCJx_x{%~Y0e+FvF^-2lv{ovn?Czmwy&=(z7u125N-x4-h8bm{N?6d8g?G4 zd$}_lA=yOw=%Q_dTS#E(0)X=g>&6+1`}HlPP3V z_hNsY<*baT|Ksyje*M8LD^~xjZl2DJ)5?qkQ&b-B<5K{=tpBbon?}edREkd?R`T%W zc!ot_3B_up`8tAcOiY;BC2kdI4Np=}=PoW44E4b_O$4a~Yo5#M|!WNFhfE z8{B~ir^Zht2T?X)e-h^BXK7BytSR{Q82qdVf1_+WT%2SBs9hUPJVVEab2dL;x)S$- zfBp4y$azR2A{cb92>&mUxTj5faGda(k8fYb7MqRNjcU z#jv6J+Bp{I;b&#|Bv9N!#^loHvSytdDl(guWY}Auty02}w_f?D!gt#zCFDo;9Bf^X zP51NHq%YL5b5S<^%1Bl`rq2W;Oc~Y2qnrv~!~5g!Knb!}4Y|1yqN`aR&l~Q21Yev9 z_*qfLfWP6NL`K|DW-rOj=E~4BzJ{vHG+u(@jBNT}`_C@0_0~B?|MN0m%m&=DbAfC7 zXn#Gi+1$aw6mV&Hrgwa|32;(^@(fVe<=h)1NgI4S_8%qV@i@;Xm#6KW4`!41dcxPF z%ceb%FV4VE=B0lHKi3sM-Bz{h;+Ql|q2A?z zf;9!zyx`7TTg~^(EN}{Zw+U9Z{uR;_*^V+aG69k0RmKl8{NeC);vMRX|Fxd`pVh(p z@4V9%NV2i~Ecr+^0IlCi$^dDeJ`j)G)z4O$@{C6x|Jcmjnx;KD%9AsSIHMT+CQlHr z6QYp-K#f6xmf*y%qIJBkoH8gISdj!p2_VHH*2pHgjzszCJQ@<5)WI8LY5SS5?zi`8buXU1+5!E8RKZn z25>fK_noH(Po#h><`-Iu=Leb>DucHF*~*hv&TU!B#Cuudyz=+G^r{43|7U^`T1c3~ z^8?KbprI^Lsj$|GoBHi}l+LFll%b;xy@^j{e0N}wgIG~N2w4KQh`lOlP%GlLKh!`U zNM5e5mK8yML{ieAd&a+pO}J|F?tt6EHyBgnptm`fy~5$tzv0>A*T}PjiPzC;1;xKc zYdaGt$cz^-6Wg{^YkP^IItH~}6zz#!XR{=pCprt?8n-UE2z&5}-h`@9vg!Wi{UuH# z?kTPf-poQi67r#mgaL$p8>o=Mow#;jc#8Zct;i(G))%MSogB)5HW*U`l-b=ql|Fz)lAz_rI{?_j&;5GlK8> zWEI&UZ{Gj8Ol=BK8m&Xrz$S7VU&(vo#xYMmUL1w|&IhwB*o2a9@%HJQFE72z_LF;T z26iS?$iW1mRrM5U;Qj_)_K*|BZTj|4| z?tNelsKnB(e4ESV{h74olUv9X6*M6Vl&pfvXtdb_W|3o@z~%}}4`@!3hXE8Ksh_Js z9VjgPUwri5EK8rS@|AtB62RtX&yuG$0D=bBW@~)9Jc)$;l}Hnz_f~&^wZ(Nxq~$1( zCiVO(5344_7O~VF4Mc>MoRkP0L`zOnA6=Ye<;ezlo7bgi6|!UV zZB!!frZKzJhFVjOL!d+>!K#wp6WD$J*8qWpALR{Tpq0xob{Mmhlhf|nzRZE{wnngA zy9rRuT}CrQkeNoD#^e*>!nYJpHos)A@!=@dPj_Wl8!5}^Xa){rAsGfUJROJ$GpT9g z^ZYZq$yjcjZ_OAD_G~(W-uj=Ddk>!{_W%9$2b@(IrUJ=%^JPx(bw(bk>^z}?-}~S^ zTc15+V0ehAH3uA!dZwN(AEmF?nY?ByfEVWjR)!7BO`w)VwdEJpa>}fsph7~%NN;Kl zdDV3grI`#MJD%YM86GHju@%68W*M8I(wbvaW{(4YOpq;G0&bVIm-;kJH_UcDjFo`u zuc0Ja%%0X_(6YU#;NAQe$z>5E-_~hm#u>|vQ*SZ3$E`*0Sh!&VkzW7xvx zNn2b`=4(e^m9j+|QEzMCv0{_Clmp1kjqvnfk7^zWpQlS&AVg^;PV=+n4ni&r6}k7| z(9VLI+6hUZj}9r@QjCicRKvu)v zR$wdMP`Mp_0cE(bJ;Kw`Jk`nPsZ&KH6JThUf%$BDSa@!zNG=K`BsS7X!v0fy;71>6!ho%nf?yo`a*}7}mw>C=fEd^qWXm~LRb$e3sHtp6|rQ`P# z#Z3>+Y24NSKh1*{%c42~>OP=%8QBepvH^8%2)1KBXFWNj0kM;uw{XyF|8w=XW8n4| zUy$4(rt(m05N?pzy&Ac!ptdjhJ4d`R@WMt+)Ej9+c3%R3xw&in+y7}3k_5(~U8?hp z4-e7G954{CP@u`&`~;t_ryC1@;nzAujGZ}xVS|~7+H1Z00w{Cs;(x{5T$(J|$5$2~ z6m^O`uMBafHAu@|0lz`hk{{YuK6LvJtFJ1kIpQ&S(m*~(5EzUiu|ZD4w>7bSXh! z2vO>eHO8(1?*dA^&`Kl3y4GfUb*sN`rVIrmTxeyTW>fOTeyIH6DB*&mX)9>$2dp9< zNNzY3d(*#0HlA0Ec-}xr{XkPi$Oni!NG-R(%4`_~3Zua&ukU&Nv{(GRk(@gR@h+`{ zkY`z0WIOls3P9Nm5eEmjEH-g`p5r#ZC*iw*p*8Qu6Va%_=zR((bY_{$t$)s7u*mah zjZGy<+W+j$W&YLYGIq)5G3P2!U6U@+AjuBbZT$Ib(0o?%TeOhW%FiM=pS#3UbJzQn zt6vqD4dBAeb*hyRlZ45p%YXOrmrmMK2)>glu&d*?KI+DRytl#X<03FfU`m+0HGFm2 z2EF!wxA82~?s-wiUia-ARE}t*;(fzz;Z?0?e5e29b}`b)97y_LHBcSIa)?sM4V6Y# z%^*;6NFcs5u8=*a{cwPireb0jS)R}WR4R`rG4|+OZ_z|ZITb* zN(A$^X19Qq2=5R=+xmkJ3>aDH0`iu8x`mKHx+}i19ym@1FI0woBl(9GK40Zo7FIJE z)`>x;Ilg#q&nNSu&iDW13mG{NEgM=YNLKWC4w03awX? z`v2nDJ>0HA6WDs+?-}2xNPhNYLn8SNv@8L$W+#XZBWh2El_v2N32BmVTOS>*)nogs z^qV@6q_$=#COZ+Zy=^#{`2pdIkiW(6j}qGPFT|CRD0r<1I&z`(imxsCq?H{p3TS~o zAFw@aSZ>AWn*D%le@}61%1~?`dKpe#-Fwr&uQ?Y%UuuD#2>A7|VR<-4SK9I2=6h~ypXhWPCvST1Q zCFov%zwW@~*)sLGN>m($!Y)`6CU!QsHSsoGz9|J!b&E5R#3hCML$n7B_E3LYRFyBH zO~}YdKz2Hv=%2f#H*sv#2??Qrx`Ed+L&Pod#5+`HG5QdvsT1)#4KPbAR}GX4yXIvV4-np(*hHo~%pgLi(L(q}2`@VD?r~`%N2h@WRyLW&A zHAG#f*H`t7KSery&cRcYr&@R}k<@NEw+oL(vtloadWIa@ZKK)AmI*Vv)X~W;U_Igc zE-RJ*sjBB`BDxg?K^`_Y?S~Z0zzs6i=V}zW_7=k+P~G6=S&3iR81O= z>tZgX4=5U>1Yp+4< zT_GY|DvloTr5=r>!;T^O6VyZ{^I zuSI}th=fFl{{-qEsi8P4jcaOV>{(CN<#j5tpIoVOC9XWU%5f5>%E?1)KO`w9m95%5 zWgoUG4=z_KUMCN`u|4*zXQnomv`cYFiWEsnBn46+)lK|iH;4xM0{G#FJe+%e_x>6n z`UlO;``V-^?NB zpH*o&B2159SxV8Q5MWa_7rs}l{T;SrkGD2jygn3*M^wqDnm0aWS870(09Ryi{HYj* zvCRf{5&SU!OnKch8vO_IyY=LgnU)zc_}Z%&)4~|>v?WO}FinT3vMl&!3FpZZ zCBi7k_Xr8+?*$ zU&&XALVGxSizG7s7@{F#t9QdUh{1cJ>@(P?w1d_SMX${@#uDcGNs(D%M>__N~oW&Q^P}|@7g!IPd zKC_qgSC2nEEz8c5kxyMlivNFzr3V`G24FAzi9~ds*W5QW|BcpP?_1ru{uXI}y`3~q zz7@e&=SzIzWfpBpJCXU_smQUHdvQ5iZEM>iI`uEA$@!yqMewuyXa3`WBw77*u*4r6 z(ZfB~5ditCMV~u!z?DF)Cq4e97R~PX-;73xA~@s{FIyug`9TPn@?n^b#Ngc42ibg_ zpcREQw*H~o6F+-|BOi!iB~B?HhKJ>Z#gT}X^LkqhjjNm6@a44sFzvKV5*hrRQN{Yd z8y_RNM%G_0bF+qC1iVfE^s14iH8e^)J%9}z0Tf&RmB`3)uQ>eV)T`Wlc?bOOp2`)W z9l^u3h&D0hGn-#38N-OO4l`;+Y0Ph$)jQcdGEfBj)S{=7+O4UJ+qDy|VV zlUV_LT`GeFxQoZ&@<9!^AmFrvjljy=i#BDMQI^swmPr^ojpa??VsU)85zMCzDa)ug zU{=$F)920+pFS<*gR8d|Ng@+v(kyWlA4=1E{SSw#9cn=pPENiG%c94$=3W2S@r;wJ z{wv4c#3Ig_&+UGi8)Gy##&~KE6XxJ5-2a+F)0L;8`~EVl4kpU~Wo5X&{zp7appN15 zB<0D#5Q~FS1{lv4lAid%aT_g5V^Ut!fzsb_B#`kev6F^@N2J_U=M<+&w_=h+$6>+x zhxun*TQp9&x;Dsy>U0gvT;P#J(LPDiEFYR21@$*c7pniX``HQFe|%2rebq=sTLg-b z!CFbial?q7rjl;OSst~X_%V6quZxg0Gl+@Tu<)?$+uu!shlx)Lv+V4at$pLg@gYY# zg?E0|hOZS1hLf5|{yURL*jx`C#w z!7a#$Hnmv{hROFg39aQ2e@7pcj``6$lW-zwb5c2IG>iiEeVY8e=A?&?2mVd zD)W>EZ<8Kq3iMDP~|9jwb_+Cy~htKrt+;BQaMuKsGzbct7m z8|=JC?2tsDOTyfHkXPtt$6zr|eKlemSdySL6f4%%VMHV27_gpCvu0hOC%P?C* z?wRP>mBH8tiq_xa_rBQ&A7c$vq6Q;nxPK&Kb`lu&b!_aYQy3yDE-#{zp`HNRO;kzL zo41~S;V`9&jOV%MQ~vY#X;Am=1W=kT@z(iC!rW(Xo&R;Z^YA=N{!OyV!Q;fxu4tv zFd24|NZN$_WeC0Twa8{d^4~1&OL(}k>U|up-;LQm5Df;qQNd<+@ti`m`C|14M}Adh ztt(ey{pB(<->!QVBO7-HesYKS{I>!g#$YQ`SSEPy#|>m9d6T?5Wf#%m>b&sllM;Qh z`JE%)0B<)F+;WxI%-JWCEq4}}K&>9+d zM?h<^aT00&$zu3jWznGeb4xGMvMX2%m;U$~jq9K1>J5JU%oDljCrC<1VQ6$aVY`D| z{El<11xJrAm9Ej4T9N1H#9P44 zjWI{S_1=Ghe8zC=%Af><1~X^m51BsDLY!j@5wwv+^oxTMY0=DbBlZv-`(aThfH&Ol zGw>U=QTI`818o>T{<@DEg#_5Hq5&HL`6un6Bn0lfAKThr6~UGfoguIF8BEt+@l5=# z`d?UbF)ei@>1js1nyg3~4x*P>EO)habLVV7+vO}Ue8=A#p<9=2t8Z7bTIkN!Rex*b z_Qg;O9xy``Zhs}+l=#(1JYP{!r}g(7ytF|*g2iYg!+$O+QP=>Q=z1AfciVQs)V}?V zw!ii5A4&t*NcA?(g5<*l%nf|v*S{Ev`m=3VH5vJ3fD2obvIYixL_6^|LkF@;i=HJV zkPxit<9{=IQ~P{J>0a=*z3&YD2@9hwNZQVIi{?OeAy_^OdpCX*`Hbn$MI{a;t8&FH zmeHiELfJ$JHsN8wNYZkmWpXZ(0{EW%_gGsSEk??)ypVf42!Z#D0&$CEc!ABaCBYB* zsUG-h00AsVhJ)*tlY{c!lXc6{V{c~Pn_u}LXb2Nb2n+EH$u~a-8ZsJwOriD<`@ZLy zWh2VZ^5%`ManXda8PZcfmNB3YHofsH?iL*IhL;|w$YVQveQ>BXV ztKIM?@yA{iKg4cF9y>p&4OCRYv|t(xPTgYDE&?r|0;C82(cxER0sHt-=0!M^ta2<_ z%_8ysqpg2SV{=yR&J6#JfB1i44b)yZ3~`IgPgZ3i4>_40_V@Ez!o2YD4KAz!@=)f{jc~9{8hdk;K?^%6x}E6f7b^uWl2+8 zETnQXUqr+^?;H;ZqbSMHO8@{M07*naRN+GPUtO2sdL6le3ZPj5dn6KLBqPAW{_mQL z`u~5wxoz*=4PVzjO-8NpTu;l;7%tJuDQCu!kKKk?fNu@Ftwwm<6CZpYs4#5%>A@0f z+g5K8j%a9 zPm zw16+>Bp1u$7hwIh!|;EQ=^Sc&c=8#Bw*DF)Tn&I}z54&=-77pIWj=vY zIm!r_#bfZ~K$5F}>(b}h954oc`r%{jS{tai2)yl@bT54MW?BoY`xCkC=a?fRvJd&D z4d0SOlSde7f`%;C-% z$H*Hu_FR#!zAM{-D_N_p52)h9DT>v<_M3+@qbF3W=0AFz3otii6%OVfkllJ$C1R3O z=U#KSv(|g#8+c{R>zH;za*i}cT~49~{Hy!Rxm_nDzyd9p*Uq;|m?X)Fr`baF_Yd~3 z#w7gk)d#ZvHG!5AK;1?lSQ}%hvXoYtdZR=;EyG5IBI7@EtcCXm=+rTJ9QSR%2I$Kg z1|L+r2#?rBqwS&oahz*|Jif_{znnkDMMSg=Jhf$3Qp?=>vXG(_#LwsKcZP64faHJ4 z`v3hPZzPai2C$S?u|rj?BY=D2>mIMsPa$s|kiWiJ@*0rEUkSgl`5X_|#%K{Cta1T- zwby3w{r*WM``eH2FK6nXsJ`2c>~&LOIW5uPG|i1M7Lphxpm)XBwukL$+pMgK#u3jL z_+D*vM-u*tDX|#&H8V+KT9-C@7Krch+wf<(~T`zD8j~%uGeb@LC zSYffdBha4fIt$-({D+As)ugM(F8aw&#*fx!{rI=SM_A+t?gLX|y=)jAig(4|@d%!( zY87l2eWWCS@`w{J{hCxgT&QpxX3a{}i)nc)RvVMvA%LTazX5F{S!KO!D6dbsi>K;;{|J zXs-}(jlOxfL(;yRcdyV@0KQin%`_$pP-~LBd=H}g^33Ha8Nfd-hOfqVJK4o&m>Gct z{cn8#pL-c5X65KtOpXBT)&8rUk1_*nr0mtl)pa4o!rF%pS_W*WTYGf0bvE_SYo0uKqu~@qmu|eVanmP5il^(fxUn zN}IGYFF9e1%|5pqz8*D_yEUZ@KU;g05kSujWC*(BgR6H?Wi#5>c99SrG!Ij+{=b30 zUFmkI#68F8ua@PiQ=^^<kMktx5gyXUoKFGQ=i#xn!M44PIL+5B3 zc%!>JKIjX_5GGWGQNNnx*2~@Sb?>hu>+f;|tucwdnR9b4R5wl7_n{-kjsF{^PhD~S zw|dq8bu&r>*?(Hbuwqi|kw}i=>~m4Q+m!CG{=p?A8Tp?Lnx6Qf?g=vI6u%qs-rZZS zIC?13@ZtS-{zF-x^d5i49qD`b{oj=()R5i0)c8wt>?}$`8D{RR0XXu-2f8w~5Ak;@TjsaDs&P|Z_gZHj~t_)gacl@X^2CHSwe`#`K zK#9l?uHIm~`?5`FSrx($A{`ou%Re(oFtqYUm#@E`U#R*cu$dA%TMS=yl|XfPxFO?y zuJuVam+#%Z#euh9+(y7!JHb2OJBLJHsU>{}S=D+U!D#&c+_pOd8WsFJcU<;Mrw{DV z6b5Uj5LeD5303Y~yMgSc?-#27&4*X~S@$jjcpIGiL%#k~oEn(sgN<<#5)x*Svm-YO z;rsOrE|xv91q=CDM6b#S+sd=El_s$!V*hb3O0_Y)N>CPv15y>w&Ss2Tgbc z*W)*5Q{))xD(%5JY-ULo#0O}#{Qup)`}&b{PUrRd6vnSV7tN4-&{k=o$6sOpi_eo( zP8Dx|oqtM1bV<1VhXX_2idl#zxW9JFT?A0aZuncW3(x-+-WWa84xmg%z--@#Mb?rs z_mT;|Nc2dwK`zWHfUlWU8u&!qXWH9zto0K+L^K-3Pq~|(;fwW%#kB3d7Wc-t4qs0# zgqWRf%g6HLMsWLh@Rzlu%;Ml7?j;jE9Y}$8Mu6;!e>-rNcj>kIGT;eUyB%AipbT64 z#@Q+zbT@H=i3;F1kY(~JJ_%(LSgycw?4o`wLpSu)3mF0UvySAYeeY4iawO!_;^0_D zgpL-`Kb-RQ_Jfz*nNF$m94WM7=onw+EaKd5TZ0oSJQ*0099*gB-_>W_0=cdK!#hj# zRga-5hKC^zrd}Rhv zwu%s72UhVe3jC`8zRC$BH0E8GW?`hP3%`3VG8z8W{R$Ze9b0&_1!taQo0k3djOZf; z>#tIYa;5}N%aVgBhRmTI9K)4wPbmKHNhF*S{{^FOl|k3*=k?f|niTt@lFK;+CYH8U z{Klovh5Wj(4yW33{Ii0TN&BmZ#3x>+ji{=XNXDS%p8+`*5!jg7{QRNb@(>%o|Mw!& z7n^bfwTgsQP1zzR0Q`J+i^Ye({Z9cnIVk1Ov*q2Ymj&Kl`>!SEQ`Nnpb50499gnNz zr5?N>ACa?l(6xPcSayyChN1Bi9BT2>(Xz{dW*rH;T~X+kd+VNn(Axl)9sbjUB}NWO zKDP^haRjiOICi#c|CPZJRhCH)JYws>Dv42zsyF_11pkg}gGV;ah&Vu^P-KH1Z0T6{aK}vr$o`b)ZG-Te;r4B;MbJ3M6US-h}EVG2%YUZ z=rA|dE2JY&C{>p5MtJXYsC6WvZ3AeISWKh!xu z(sr!5BxJGXQ&aTZo?^20@*n6{jCvo%wD{x2;nSA(B?`0s3&AheS#FX8&0oOqT6&Qp z_1`8&>c6xv5duQXV75Wy2}sdBB!!QQ1i;YiV39RQWkv2> z@)0LG?^^79fVfwI@QY7;SPY?HQ@(odepkT^*46XQwOOEzoLLAdy&e*bD+{z*F8@vy zi9oC34Ue1wqLV`pFC+MRc49B}*D^H0)P?-Q;E!fx>uxv!W2}`;FUtBrla^@a;5|r3 zirt!b`EPXH4fKeoKY0+~8;5_M_kMiXIX>Vt_w9?)t#%y5)PfrN)81DJ3wplT(6Ej6F7w z$#V4W0UxcuftE|W+3}>}j@1VYG3{iM`)j9IN~_G-O)PC}cE{^35=7n9UOS8uuRI+I z)GcpxS!NrlD1 zF*Y`zV`;6!a%5R%fu7>(_dn@*l*m&;5YA>70P7leHtz+t!Cl`&mv)&piCQ;}N{j00p1SY#hnYQ8UIz z)W@)S=Q0>L{M|Dyaaa(pY4C=yBcOIYf_CvV?cfHmP_{N&)PQ4KC2^>RNz!65jIEC} z-%k2ed*g$6p2v@mX9O7d@*F8cP4~HQLyoOKH$MTM9mP*#(;MF+MmWGXZR(?ukfTXc z7{4%Pih%T%odSLXn6Aj8Z7QCCcnA28i`9P?8T+S$TqGKSQo$uiRT84=>Ktclfm-0|LAw5OuBHz_s@Kl{I;xWp%lZ^m=1C7cA{|9ao<}%AX?39=a2a+W`A{c&+JiM zY~-&|Q~@Tqv3`j{M}WG;K)Vz~KWXz$kU1bU5>a|U^ZvLx8}O^@-tgxa8&DN|fb)NS zI$Ohx0XD7!mU}Mui?xP?zs@#qOO~j1kL~a3x;oeu3hj&%qtTtx56sQ2$`h%GtSrQJfvU$+$2>6a}~4P#5;9 zi`6OI{=?)sTT{{CD#j`&a?cd}m?)Yia!1Y*77*e|UD|uVH(*Lfv&T20IltcPTC2K; z1#BEdK50_)>%b+#oQQ?-HIm=Jk8V87%B1^Vm~rE?Pv;!*D@uOEm?Qs`bjdq^3irSJ zdHD->1jtmfh#0H=pXEW)0xS7c!Jm!@8MQs&$C7mThlheIG5l=yXoI!tWe*A1 zO7Ji*yW-ytNDBR0=({m7m>6rEA&7BCPhgN_X9mZ?2uYdaC5`iKvucX3LTh1;a7%=;25>YR*{_1|C zjny$QGXd8=mS-E;7$y05OmyU8hA$T~7)tiJEdSZ!;Fu%e;0t$3VOM;$7cJbkKaq0G z8sS@YRe6bA8u{(BuRt#&jLsATDYT5$H#eE&PRZpSckKT z<+-vm!l!}XFw}nYFmu&UWZ>8~%tZOCIs*sbZXsZeOP^-%>siJIz6`^_3!5pE%kbPt zl(m7GfcPzcc0TLG@YU&!uV0(LKcA6L9fW}BAQ3sown{uV63JfRuydL7gUz`+l)D$c zs>v0gb$mRBUjfczg#gjTaThhfYG@NxL3Tst^NB#VFYfKnx8y)2D@du7shz@xwAqA;YPGk32f^IZSLN)W+Qh&RfAf4}4GhWBld)Fk+$El5-Swatr%z z_^0q&<&m=7g4YPj-UdEBs$K=-_0RLchqSFV_nQ0YUfO>&@zGDqNc54C0D$wt;@e&~ zjY%s;t=}xCEw$e)!*reG<$EOKcSy@K5I5v=1#ThK zB*;ntS%d_7VtlY_%|$^OS0_8+_T?$#lokt8AgiaTYvFDhYxRuvYHhy`40lby0L6Vm^7 z3c;T;aB7(7NW$RMEstMGgb0p{)nCc4iW_IP3YXfC7@iv8*wBb4yJMG&L9Ai%M#WW1 z@qVbapz@F?T4rdd1aYw=NM}zUhK)<|2XmYC15rkRWTJYXv-hom>hr&bHC0OSA-SHp zvLNJFqy&VgHG8#xHdGwZ^W>1^A8LN|gxZ3UH5&za!edKQ_dbE=B3kz#rS1Ha*pB1 zA9qQ|D<@wfv?vPqzq8}5Hl=N6hT%fxUgqr=0zx)~B$;rxKh6WUkjPW%AIXnZ{1&(a zFF0MQJ139RG3_v54A#`JqKstZ7u*4J+qHp`LveBZFw!erKB_n;gOV`D8MjkNsCU?5 zx|{0X3*fuD*QWOSIbd1Q zNLCe31{XL2*&uiGAqH4q&j^Spn#}5G?X)A^r(B;*V>Vw0JIzvB<%{G1OB|JTA{oy} zxLxsEaQSD>Y3a6%$OQRZljnhHqDU^4uvT6|3@Q;I3i^s$a-Lebjnx*}e{_x4?W$!M zYK^$$uWnH?Iyfds9?TPx&oL7m7_QOaG#i`GvAoq}8OuWAZ*J~Y|7`8kBe?CV96toY zXcB9uFp*5s`Fs9Y%mH(dB#CKonkNH8)FZi>Q#G&<|Cwo~M-#C3=OrHqVhnd&Lg=YB zK*HVqus#kAV`&68)5vDo@)5tfi4?erORKpY0WSKXf=i5y5J09aOGzDUl=ymDmbPDx;7O@Obr24$oo11bsYTFmQBB_;JI0R^ z>EQWCk8?@)GY5RZo9HHyNEju(!aP&};|DYuRgiq{9rsg7U)BF~-wlJ;l@+(AbWah@MV7>{e<9`2KFNnt8-<4Ix>`3S zI&34jDFv^W-71E!PN=NdHpLo<6Yq?wEx7qNo&SD=IT(kF_g?0bxu!SL`+3?U3O#dl zYOZ1D=rSgyGzT~y*`7KM3-^8f_1g(@@d1$5Eeu)N53O}M1bX9V^={b=p9l`EZ+E{RgaRe;G=Hvp*4?(gF%ZZGMVG51^7Gk>!ZIXIVdzw%$MU+XXMTcpeox`3D zp4m2{oOdD;>hgeO8R{0Q21bqiUZDOjm{C5p%bAg9W3VQnyx}@Ub^Hmib!C8M>qPeu3T?_jYD8uT!({ZXm2V%a3op=}90j!~J?^CKCBJGrc zg$zG!u5$K;6>fb_vAG|9OpSpFxplfxU3C+qf}LvnWNmfO<0tC2ER8&s2()CDqa$ze zXs%HhKa*IF0W@akWUbM4RLOxBURiA#uvPBgan|~al5d8`UEZgHa(wE$;sJEyuThZ* zsH-2|rj{J05zj&0U}g=rZFqh4G}qUa{78r@vm|E5Gs=Y*-#~(>)hvb0ClzYR2#vSr zWG$&1Y|EgYaoGrFp|T7~sLk&UyK()~Ai@`aBt_plD;*KtiAdW1TySC|h~)OeByyXc zwJfAJ_k>@nzCy}Pk6#CB@FUZb_ok5o%~ZMdsYZP0LT|y$U~CO*X1IA*t(k%wFysvZ z%?VQl;tEW(Wj&uU*p_1{GsQdx=E2O!%PKZ}aP<;duKWTr*Z4$!(M>VD0HJAMqe2oH zj2XvTnRip?Cb)C$j>E4*tA;0q3e16Uw-3Lhq+`h1h5Z~}U%0z`{~sLVNB{O=KJse@r$5C+#z19? zq#Yq7P#YL`QGfDO5&V$y6iB8$g$bKhMx0J z_xJ`uAE#VAvY#t+kYJGhR-)Zvt$(J?!d5M$`d(-R6;whYo6-phB#XRr_S?L7X#r_# zC7g7g2Z!v2+OV+!7?O0D_D~x(3huw!?=AUHv|M2$NrNqXm?)`c%uSN`F<|U43GiTT zgl|qA=V$lc#j@#$*xtH7z$?ezwu;c}hx(zatuszF>It`2aeBA0^<|C@ALQWVI16__qifR2cR)h0{_o#i0LC%`A{hfcGC2#h*Zr6rDa$xHISY0@ z;@D6bmVBbdhNfNs-{0D)v4&ucWrYaw4U#Nt)RT^YkG^?~%MGlr_5A*fc}$ zm4AOX{4l@qYCr(wWE~D}l&Bs&#pg?RV01;IGJuBSSZMLCKXx93(e8$?D%1&weFGtX z+7T=#hULUE3cPgBwY!tc$5*-Vamr;?maZB}&em=G_h^4jCw5{T?jpB{>D*foyLAqrHZSL@H9_(B?+Fok z>BKcZ4%7xLfS+qNXfs!MDLXyAH zc468W8L<1^#2vOol{Se+LKt75J+;3Z5MswALc~m}qoE?+2yo$I1}YmuejQwd#AzT+ z3suWIhZ1fr_Qnr$AO*Q=X;tw_$m0scFn(b_^Y@&B-W+9~2clt)#~o&qWfHq6$^WrJJ_RGISN(I+3cjjD>J)M< z^&5z@W5yEIEAV8TWUWOh8YN90Nd#Jbl}8Id@!#JA{@DYEx%I(Z?z`DoR}#?RLNyH~ zTO#SSq0)xU4oQ1~iRX_{|4b_(W3UMR{o6m0^+nh5s*8ZK(3o5WDo}CbVRn>TbHJKQ z9#*>z(Yz!R%bLBjC;V*BGWfaN02*x?=Mnq}I8=fM!$h45X?s7VjRBH@Wg=Q6-HK1a z`Io~FBf8ag(f3ZZNz4SL`+U6xP#jJ4=!7!QI_;ad!#9Lm)tc zyR!r*xI2rx6JUXr$M?T=>%O}6>TONcR!wzJ_w>wkpVLQvZ)eMj<*>&&c-3h4FPw+* ze8AeD2ml4`$4Ptz5!@p#p9@ky;C*~v$*=uj2s%A*ng4Sm^|SO-Gqe}E2x_6`(X$&#e;^43-CO%5#WS>@X|U4Duj0P7 zvAzR~#(nzMpQ&n?t}h^eRtwJyev7NMhv_SsIgyAFPfKB(Uvq5-irqwNKO+BHkQYyk z#YqW055Fw+Ie9m%yJ{plVkC;Gve%{Z z_>Keuv)HCJ!|5Q(Zo_WHe0}@XI(WX5iZ=+3%)c1R8V+~_?bI_Fa>TMHk@lVUdfMu1 zKOUYQO73MZ$6tFtvUn7eWKd!=MH;3j1v3_|GVf51oPdL~KTq9bg5dLM|Ll976;&MN zBou_V*{~7h4folLS{6QqeY+aoj~!uOA=h^J;x`Lv8W$gBsu-0%>}ZUZlL;A$+}FWl zTGwqHQ}(rCQa`s#G~K;j9G}M^H>IXygl@h_V~+c-o|cm92;6yax+&td+$aVxA4*+8 zL)gIQ*%8TAU*+y2d*e*`U^6IYz$#<7_f$O4@g{o>0hNJ(}am@`zY-60Q&xdjI0rVh`366}$xzFu~yjRA6vOD3^y|Zy0 z_(&i~WgYxlIlESiF2=hRAxL!Nr1M=GX(hUW8g7c5zLe5;r$G65`z~$$O^G5^`$*rF zb{}NeYDr)&5|f@jRH4#nId|{owlU<*sfXBEG(BB=p~8*U@uHTxwvuMoS7j@I&nS|quqgWA>w{ZeBJwu8RCw z54A*OhMq8_AyY*yPi&#Zue(6DwcFwHnRAFQE|PKX152+8p$*QpY`&-6#_A~>SDwk? z7e0bk!{+b8!S8B%0GTPUil^y}H=kq#&9?kjNde%`2D`Qc>k|AT9o}naD!M`hmbZ8^ z=e^;O4GUyl;zF*Br9l3Ow`N^N@J{9*j@)d~MX0ao9K}cA*@OXqUe)uQ@X&@iaF`m+ zfDDd$1CwLcaN+nSL22|M5a}oBr8J7T@OPwfK7!KCZ=(&wEj*W|UNRmb7#EzZNexbpfF$=P8JLC2`~a>IM^9 zCiUUy0E%F(tS8NZjoC)}q_0Fo*}0kO_C4sXeZ2Y*PfnsfZroRLl$Z|t_m>L&*(avA zhgVADOikQ(Q!Si-UX~$E0KU=P=?W`pMQibHvIVUds;5VxRS>0EN&a&IBI6XXfSP{r zo4W3)u6x^5M1QA2?N+Nx8Ec{`xD=7VmnqJC%Z+hPHo90|ca=Ke!(fkYJ?%l_3baSP zNz)9-@4lc%4h5&&}aJC(AQ2WLGqv8|g*ugh~9@J;(m((ix zzU4!b-b8GkO@#TJwfzK5a{aqS#xEL*7P#lHnZ7DUX9 ztvli*cvI>+^Wieb0wU(*{J^xOxH%H*VoR(b6-SfTHPXMLLcyg}y31gs3jOlg3z6fB zK9F=!_g+YU?JlQS=H2)QoaL8z@S;_r9Q2I-DWU{bH8oGKGk+wWo)8ja^;Jk|m%^eo zT@7?h=LAFQi%PqAsz)tqk)gh^>dn(6o`=`jqY+9~!Bw*%BRx9N-*`3qs!|CWb%P+3 z^Q_o=feaK{cH2MY341?Z4K#eu4B}@xAv%ITQ_-)JPNXUlsH?ciFkwKyO-R2 zy^-P}OFqJ%o4@?no!Gvjc495^T1U4&iZb;~(Y*Op0EwM$P%{u@=fwV)lNe zac}{$nt89 zce!Al;UHO()&ibDfpk8Sqa=E~yu5-Gk?pJ3igH-f`a_4U9Z3WdmyD=F%$=4JT8DJ2 zjc_p&Uo&$aFXhdzGi)Hvk+-rJ-jGItLRpM?z&SiYM zbYRsD120d&6c1pRFkbj6kY)Umnl@XeqXEa+Hb{MO4^l80fwBwKn_(MU8%f&HyFQ(K zI^%T6k{-yI z2Hdv~Y|U*g`crFraXs6@twnIg#oTBC)jzN3BKkxE<{5V?!VHL48h*yV#_%VuX#MUU zBiQ{~%da4Tcerra6t{5vt;y1iJ9#=x83|8VQT#!%eJSdcvtAfl34fT*@ubdqc&Lh8 zqvo{IkWK&mvmnq3q~Py*2kOdv`f-|jz{J?#U5>XxA>KA(b3*{Xx1=awjJLT?{Kea! zor@5=_kvb7%3ouWvu7PDMccd_FL5Fyiv-{hQK%bMrTcvE`2$(B%}SNTi{o2n=|A?W zAPikhg*HuK+*8bC!ZgyN!YbM5wphfjr`)yk>~&u1xERVuYIX7$$wfd_=c-V#%SMBy zE5G2s%<5mfio>qya=zbn9u!y`qGmEQ8#CasW*r{dZk8!iBkM;0qS-4{ z1RHUSbC3^u+8)d5MBeQiA#=lwpb^9WTVA?^`ab#fG<@3 zk_-4PIY?ivV)VK}Q4bx2+GeqQ;N^tIW z-)Oo7yl?&EH?)_u3!)?GNrRc#LBr^!7=eqCUd>8WlF>0d!W8}}+&8BqT^S@A4U;^=*1>#wN@Mgg{?Xb{?2u1K(;WdRUBe$wO}`^_%3seeCDJEt zTpOya8ZjH>X0;3542L^gB`N)&3@UA>V&L{w$+5m2+PB!%xa%yN7?S2MOy$Y`zQCw- zphV}|hSemb^?A5R=UNW52w*P4nE<`BY(CM*ie+16FtCd#C?*MhHG{xBP`;1p8c%c>WOwU!KU`B9C;pZEE4|hA>MlGxZtk#Jeq=wVW=SXL2hHH@ zyJHE)`6LiG=4Z+9r)q^2Y~2VsX*FgkR=m?an$3>I=*h{8brshaRr%pE7@CL^fE_`q z%nD}i4t%Qs{~X$)#*R8MaNdk@)`7o3!Mjk$nRHdZtdJ655%Xgp!z2R!RPTOpIb{pP zPx)9?!=iuaHRW$(t{36M+J30MU=J_CHtQ=h$l)^E_5FTbc*(GFI4|okYFw^QLcQK` z=ps2UVU$BZCI6=QzS=@~`)tSD<^AD}r_gx+C(VntB4=j8hGI@8LBGZATid#mpY?lv zp9S{$2JjAd1@<^X9iIt6NvX;0#ON3PTq5sbRrg9eoT*_FTM&A&;axuHv&4i@buM>U$gkjM(#+uEw7l+@^q95v zbby3-`EraLOgv5Io{<@uzRh2XOO9OFzg}k9*i{||XO77%;MKgj^ntQr8@NHwIevfY zXui8zv;8JefX0(IJXX)oGX@hNiz2ym^^fx40?34L-5U03Ib4PM za;YEI?bS}eiGECJ7pP}haijXNy3)E<32xATu-(ia0Qp_eWYe|r(TR!uYtLC)48WA` z-7^(w<0(}~_TS&jBZ|MMYrOU<;~p?gDZ+|Gt@M81t#fR;k3R5oa6c2QNQ%*2FVfcZ-F7x`lHco+ z*Fi6wU|q1ZJ5Nzm5ar)k@`H=f2)Sv=o8M#(jj!a?3_MOfHqTKF$on5`{CK>ijUmd@MrI8Wc4Ac5* z`{Ddk5bmkj=HM2QLI^#aKbtYUPf*m)JPwGS2)5t(={XO0-nD>S+%+m^x<1sYh~Gfx zdD8d$N7)Bg@i9C%58BQ?KsGMVHCr>~qod6%->my}a@3y}OXf?2&Cy*2WG;5w5B@== z2?>rJD)*i}Yl{QaK5xUQ_of6$Nt(B1@p!omH<$={{_y3fvcD!phkbxB%1%8^Z9N-S z3WTv1P&+Jp^)mAp@RvvnD-NFCgpj9AySN1mK#?C3Sq#=t&0evmge$}>YA2>d68$ok zc&!nz<%?NGWww0t^-+kviFf;rwB_X2RU_MeLb{$1Fa_NJ9k=IgO^s~vKgDQDJcIoi zq;w&rbOr_fXeA1dPik4fH#2^tB1@uC0F>t{`7X?mcVCBolyEU81M1XjB9>!WK7Y)5 zpEp1+er~oyv6frxhQJKAA7ZJ)PEcwQKOvg1vq!XGj*-u+&E3+p0JD8p?y^27v-p8!uJO8+P!m^a#5n#N^S28g#zyy<8XeAo(3*r8P+)X>k(01b ze5yu#&hfN5wjh?xH#Eah!Z{`l-4?SR(o~J&8*x!|bG#f{=0vH{8!*xm{iJ}56cL9f z|6vaS6mRf(eRSWuw$o9ZOTmp3yG(m`c%@N|_R{IoeE_Ct2)uJ0^psHuX}wa3JkZct z`<><$tiP0v@j>cXYPtL3QpP3%EF1huXQCm_-;Ti@QL zLu0tp0>CuO6Q=4HWRCAVgEt$4<%3fu=Us$mhDgzh0Up6OzmXYO>X--kSV5tkk-6_hUXEi@kSV zX8Y|KdFn*Wr`eSMl*3{gAL?NABzUQcl|n_utS1lY!CM#UbLwH>KT&0xr#u3ENpR~Q$*LDS+aIWKc`z49W)HUQQ<4M0YbXHn z5Hk78LSbLi8*MA*aw=Oq#NrT*Q=O#3Qg&+lnv2GQ6xOgT#e3>+b37P#T zW0Jgg@DsuV|M95okC2L<++!uzZ{R&yn#Xk9jm=J@4xb5P7g_~H$(|O;+0R*v=J_%_ zz_u{$n($}} z!Nd6&5+cVG)B@O&8s0))ujHe%ULpG_8lScuGyd9eHsoid@+|GYk%INdIO-r zjC&cYQB`2AgOW{^QTSHozbA4v%*S#q|C@lw8a}eo(a+73?=E!tTP(p(Udejubf-z= zLCqhdFwT2%k4%OXz1SU)*g_sGniTdA4d^{nMAt>%WTSdD@u5U9JiE9hPrhu7(}P*X(=-Cp3clhd ztV^TABVBnK^WG*%G;NbdfHji-6o?DBdH7=Zu%h%aq%kT>?bCrJ?|r@id*l$OmSI&j z8z+@BqI$ifx{*QJ>n`FxOZdK1o!@J&A6;iUPF@X#J9X;XI`M8hAY_%Hy6S0w?3T4EeY!mDzWB^zP__ggnbV|I!07 zsZp135xh~^CpQDA)wkOS5e8+SI^xhHmpnzc=rm)rT;D248+2u;oX)8UM&FvojnLtN zKD4P@I5gRvRZV%pfI;0uUCvkKEM%^b-)&D*w-nLlN4w;8)hUf?d;N=-8JEy*-sG3; zAIU0!u7d)5bsm@?13*^$G%p@@4 z22ytFyCABD?v%IsFQlDa)l*QEz1m4;SUd3aT~dxHj%(Lc-_rdVm1ojZd`jrV0EQ;O z6m)piPhH=UV%5&p>9<3TEb1J=d-*zW{oKFZBeL~1>u|9@IOCa&WiceF!=&Y={Kpw4 z(VJl)iD}B)<9&}mQM}@oK+1lVy{tyJTP4Hf)KjXw72x8&uCU9ivr=e~(%@3BFowy# z?X%R4C3rL+Ho*CYc6Sjif%Q2=-Fh6wHKN_QPCupSjn^NAuU`<7TsBAOXG3@EsN_Y& zV~ji==oWRpV^7DW;;Wz5dYSg-gpN(5aa!bkdy_AmS2DtV-0A&Jp{=wtbRR9we@g-k z*Xat=G{n7alb6p$ZrDF#fzY<6ql(ssb)=4bQi#pGQ$Q~4%b4QLKwnlX-7mhof+OJB z8A&@_#RmmbSmjj=us15W#OR|2l64hAfbPd-jPe8B5V+>aqGB&*N^dF>*&?|JyaQj* z8h~qA{0?<`{$|~|%Qb+{YLl>gIOU1>-B7%X((vio6E&p7)3BF_GAdMs4*t8?qt-A`UqR;BdPhnT0E=8Wxa zz=Y#%A$P%~iEH_hifPF8EIs1C3L!J;WyigGai*0EEf^R`Ez7IQE2}tnGVH61WKPb` zX=R2l$|}$d2?GOzV#HxO_?uPb=>xJ^XmvI6tXG1dnt_1{`tyg{%LIdK=`t=L)L^4NgxJprRU9)%xn2np!$?TAP_o2V3-}sk1Ak*R`~K?f$PF z8k*A29Q%ds&COY`&*2VcFRgJa&SeU2SXjO>_ipZAs9XveegD4($n|1pPgKDdKSby!*eX!3h6h-Yg7A zHTcOiOwBB#dYl%}+bhiu0VrmER^)k{@<|ACL8U-bHU?%*A@)H~)UDGE_IW3X0OtR94nMC$`KY`JVL+>>Jy2>RyiKX8CrBfi1Jlgz(k%bt_9tRL3O>8r3?V zjNs?{`j(bI2L~*9d3h4SPnkgY6fgyO$}HGB~c>fNOyOTXeST_n+j=I0$&&xA(VsUhGDXXgS@w;e`@De+fi$JYf z!K0?8W*)^rMMY(%rY0IR;1LiM95DMeuvKU7?VVNK)c^E^aq39@3dzwYDak5=dBw`h zi-bWzI@tJsdVe{#q{ol)d!_33^kV=y`woHQP}ubwz@i9%#w$~0wbWV({(ENH+{ zn)(}Z4U&RJ&uB>$Zwo1NKe&rYMD07_7Rs)I<4e*WgfDl=wS2Ewag`%rY>ppG*_x16iGn`l5I9*H85Bsh&31AlgD}}Y5497hC@93bw{mWah zDwIsWA90oR2AY9S?+KWHGkP4n8X6DRn3&r) zyjTd7{57b5#180i0bbU0UtnN`FMF3RMX>n-3s(e>p`#BANIgkKLj0wdJDBY44LR)roLcwNMM+pmB zVYV7z*&7g1@7aswC0JWYO?8@f<8tcr7>FcbFv2EisIO0}`vZ~MGi()1|0qzMQ+N!f zUs%|fI}v5J%nye7K^-(Symf#lzkc(m1wZ*0-aN{gxq(2jPwcGM&D2sF_1Y2py5!qt zYc6z;uT@9T5N+ok;haMvSbXzxpdm6AF% z=1pEZJ9cFPV-|{W#9RpHjZ-(-Ri9q8xsT|8pkk@aT=4)Vage4dj-JBynv(u!oskU3sOg*I2y9W_*^{B z$v8)5>ofm}qZ@zb$^~zGZV-f8T-b0tt9UnDwAo2~+4`6+v<6rQe& zJT}a>sQxbI)!!>Q!;dg)NWl%{TTrsG>BpapzTc=r%0L@el488#WiOoc{DW$=u{m|_ z$BsefDy15Xa}r8r=IVZLIKQx}#Bi#0Julz#<_Qu30<~LD3jamO{ zjDE+N1CmfxaO~C|(hTx9U6YUezufJP2mqiP@-uLKQPxzjIOo@?Ls>K`a`!whW4w?* zeJ$rJeUcA=p{qJ95xRuew}5RZd2%zhUZOU zV`AXjFp{@n4lmwZ?CgX9xo#7BbVLLpFnT38s?U54`GOneGK!eH#6 z!ne;Yu|40ihv97*F@>wctWrTZeB6J=fX)%UXfDRyl=a0T_)=Yk7Z+@+n!JT+Sb2sI zng)l-oWlsNoH|ExBUHIpJHHqWld5rlwt$`Hj6JQ$Zyx}?QKk{(K;)pQw};%x{|vvi zoONbSI52dSXEhkSb^`5YczJtk83qE3jZN!<7Y_za&tr7#72ld~@5@~I`8}V6s6V@2 z1(-!)kjhU}Vy0luihU-F0Amsd?>s|O^lma(pABa4%k}!uKnz7YqKl!FPvl(p0Fujb z!-Pv3t^kFL3^f;k=p!8*K+pqFkz!1bO&NYPK*}V0HrFKH%b-6I{G)6{!Uj$A|*uF1Pqp5s&6K!!N&v7?|3fRMZkB^+m zm_CC`b(dzNdau8MTtXZET{pf%lso0`YgG_^=7($XI;^(GogN#77IQ)qcT2x{T$q;3 zF%k*74(ZZw*l&ZF5dK#O9$S}Wl)P*a0wq`F5|3F7pFb`exrhFKV<9r7QC_Scm6$B(#4ESRh5m$)NNToqjmzv2!f(b*nT z)6=5MFLaN&+42g3Mz~&|UiE+0{mL(46u)$eNfbJ%*hMaiOiD_sWn_fn_v(i86G|A; zwI8&=ZpdB9-JiB+080|acc7zg0f$D>NP2`8thEx-Qx=z$WYkQ`h+!lc2zG`mEs$1$ zrQ{5xw|D7*fb4wX6o1dMh8K4*o5CALcuP+KYatjl6kHjWE53F2;<$C9w9!ty*2Ppdn@psIf`Kq!+TH3~Iz=hW#0EvDl${%c=$-znEbKAE3&km|)zy~W%vV9AOkTxL@33o! z(0?}3B;^bwQbn45uA^oR%zhW-Cg6$RmzSGO2;{TQbs)kkkj^oGokD7I7q)WLl|?m(Lg zP3(OE)<&!EvGCSs2Bd50#LbXcw(k|;p?OBH>LcquR&t@4o>YI7UsKVdDZ*IO4ZOGN zNL<#kwx3}f9DK)(12OYJ5li5{VW)Rq_ zGG^kjqr1C++puMCxRsb~!m`)ZBQwjJf>Vm(36I6*i*C=T8nF6;i{Q4aCsJ;m(l4;N~3UT4u99oBW%!HuVf)j;W6KrXogqJS~dCuN5 zVZqL=4Fy2tiS+y@w0(9{^;~_<14_3d!$sZrvM-JHbtC#M2V%zIyk6JfC%n5C_b7Y3 zgl96Qq~r$e821SP_jlp=5>2A2_h{V7F@tmAL80)ae~36bgxiM$MA_u7W0=?B-kQe_ zLgjENnHt->4hgz4^iUp%=KjwM-)WiD(!~3_Sw5}gj>6ik=+BoE0&!eyrHI=x&stSa zHPBv{Y|XKY{>l~SuMZl>L7tac6;R(FLF!~>|3Ti07VbcL86PCO@F{J;~=_BN) zy#uQTIy4h4JT#`K2Mh4LQg9^3GHSC#zphlFXWHC_G%5M8uC?UxbM#i4A+;4YCF&{k z%PN282h;4aASxG<2E^cHCjqcHSlaVnFvyb(@G}Oj-!m!A~iGBm!cD{aCi@h zZJz17WvPc9n@j=~{yi-Fgfd$mjs!7(7J?PXyyR;<{V8BHM_uSL27&kWqJQo(KW^II zukCMkG^*e12k=2c2-ap0*46YCLe+^KG2&*(PXAmm&}F2;+>*4nN?|`~3dvBT+37>$ zaR6~vxpBV)k!~eFDY>C_%KQ>M^55lsA9T~=JImTyj1T6x6~1{cm=gghXpH3z z@M*Ow)?TxcW)VFMe8(X&<{%~R^23;Ac_bdhS;%aKz3FAigJH@NU$s`WZ2mS!6iWMPrMg~u|{mw)_zR*_pK(yIIUoQ z0qM^dhlC$Sq6p_`q-TxNNi?%J#rcrCyE}>dZ0+9rvU+p|C+^KN#|~W&-jV$^)AkE@ z{avW@nraV}61TFar%AnD%l| z1nvw#0nvF3WO{z7lQ)odZ67lh#aqca)~>j{3z}g_p$T|@*ig}U>iVW`NDL0%hXZDI z5wt}JN&Vf)dKULQ1oH37N`K+fo*pUG(~Vw$ow#qm?>!>gm`~`8hb;W90Iw+@`Bvr8O#fppV5By zV3+*UD4z>LJcAE&S(5C$DEQ1srAsPCB8GRjTZ+~PeL*mt|7MmxdvG$q z_GABUq5s~>Iq2pU8Wx5umh6*GF{7pYg3H#Ot@Gn|JxfY*02tm4rGJ)^)xBj>&K>F|wDuX;X$RLzI72cPETyR6hz>LIJv? zONjNUo???Sws)x{eEEX3A7}egcMh_j+5@o2LK@<$L6?@^gizadh6)SpHXDk`;HDzI zmuh`rvvE-OcsUN;)CT%qW5P-k&fO6%1>XPnfr;v(*%01fuP7wKT4CO2%-*>Grtlz?D|B_+>axBP^@*kYQ2m)tkaxDXPY5uF%C{DYM z7>}Q0DDnSR%`u|?{VZ0Bo{sWaH8jlJrbsMn&rpGaYp6`g=3Nkcv|0Mhvj1dl9F&Iji z>9?W9XSH-AQWbmko-`yq@crMU7QlBu(H~{M?s2ob?t>r{9j=&Suf`hVzYzleP6wAy z7u>T|Olx7#X7Qb*yK#g}itO1|mc{Fze1wszrGD^VGu4R%?hA!YQDV(;M;I;4)A@nf zubx5#cytxsOOw-*rk>C<{qAL=^xix|*rC{vb+!Tn1I6*BAPjXw9D7Yt^_?Vp=`3ru z%fW;#mv@(q)?>|OIWGSd+1&4K&CsCZSIReX{Xw0Cu0VE!Yj$o7pojuaMd0`4zR#gl zBN}fje&^`yuLO z|1EXlQY{hj*!Tdntk^odTr-q~M!GEy0(D`xcR-8_@ij!vF4&}{8NIJA2)Bw7`*6UN zk9~k6F{Hol`yX9a99qQ3h|?qj7xo}%%=we>7v|4+Fa+Zhf|d#a-uU;{#qw+y>5E0c^CnQCqk5%>*5(U*zaRw*#%T5ICgQ=fz~@r$+y$J;G>jnQb= zON8Mh`-|=qc{lqa7rpvNda$`8Ko(;=$*~{*g};f~isV!r*L}eb5cqq_2k2OErRXm& z6ctA>zO=0ZYxYE2BI|=>+|usbYQxeTW5j2U!IY4HmL|b>I4#K54e zA56TtUk@+=aCYHHDW^@##qcqu@;Se5lUaNBONg6r?$-}<>GO-~TiXhVp>nD1{XI(E ztwt}gi8R_V$RIDzog2s|y0ZEWyJ-it`Tio@*x1hrqZOgWeGQ#i9S$?p@+Z$`#{!rMO` zogWuF9cr;)RQhk#t_;&xjqWX^M4*%GQ6Y2-{~BxDF0QWWcllkj4YY0sBn&2y&jAj# z1txZ_texy99V_)T_EsHR+fIOoLm>yMk)?Q@m}VmEg~xtWECCET;e_}SB$0*+az+)l zj>RR!Oj6&DVmg(#7H})KPNZ5)&`m&YYleREV&!m3Ah01eA=jqEWSQhW4)AcYfMx|| zGs$0_JvpKrq?opZa65kGr#Sv89olxZ1hU+!FOg19;W1XWJ5)cIEO@4aV-L~OqAI7; za#+mJ54)jf9BaW_c;czF7^JvH(08?4S(8rmAa3=_1|PVfF^Owmk*#y(|L&0}^$ZY3 zrp`U-f6`jzM>X_i>zDJwqOm*ll3OnlvC=o=)|bfI!2A@o?aQF}&4)`*Vh+aXkjfNq zpEIZRYt|fXSscbNF62@_<_61)W(eJ6lLH>3kn<%o^wFxbM+lcpyKecid42yup<6kK zK`2uFDmK35QfF>lx(Vh~wY)EC9UZoY!9Ac_$;pAfE!Ww`(()|O0?tFG6$mXRQa`4# zVX50V9jyJyu8;~KCPu$U_{bHtqSEuto|SGD!*sd$A6GEE=LRCbCI`f&KYpDQDF3=# zQ`4syQWslJRy7#&Vwu`t8t55u!8YI%7^3nWuR6o0aUfB&_#wMf11&7pL$F?8w zk7Rzh+Bdwh@%UoCPpZVEi1I6E+~or^XgzGafxubRwrHm4}|D34G;q6c0i}b}HnkUnAg)(YVC>){N z?`1&l3)73D85r{`0xHq1U^91e7!1)fmTX`d{MWBm_>`UU^K!!-i27J^6HY%20ZmB3 zldYk$2jBt>oTq2sl$n2h0l0c7zX{xNg?Q#})3ojx_O$Vm|K6o=zho);su?b~`T)?C z9=Aqxj7yk4_kOvB&I6yY{+mIPB>CdIEK_K+)Jpf~mUPeF&;8JX4F1kJ@b$0ORH<;< zd3ai$zN6C1_eT$FMR^g49JKdGTL2y~do{rcgdnR1K(a*DJ1yl!W>U4X3LP0i0<1wV zUsa&4`yC`T;kSMQ6c=K)NQvNZ=FB7EA2%h}oL1CJNh>Uw`-!OA+lT5qq3O^T|JLQI z>oVar{Ib+gvHhuQ;f5lC`h{mxV57YuF?-y~_7VtbuS66_A}03c8W~9$B_j#F3-5@T zC@%ketI6r_M>cDfDc=dTvUzngb(q`}CI&m>(7y~0#R_a2jhlDrswFI594wHE>Z^u_ zqj#NR?;R>x+)6!TBV^wUB(r=In~??8yd%&cppBp2T$xBKIk)>FZvuVg__jaMUR{e8 zs+oV;QT4_#E<5E*sgo}1LoF07+cZQpI5=1Wdewgh*<;Olfb1H1FX-fZ z%_^+}5wIYaYHQp5rqFco2G@5FC4Thh*OP55NNbp80ivHtW$VfDJ~E=O6QWDa#T?on z#mN+)%#hObL-rYs^aN)P=waNEYD80TYv=}%z~t7AN#HM9XFojNcYT;)AIvO_Wha1QiBKYxQ=+a@A|2PJK1;&g`Grvop@|5} zHFAm)rO%4uGla=scKWbO# zk}4wQ*Yu8 z!)o7~nkSW=V&v0HnEn%3-E40La0qeC;#B@liUG3IFBy@yl@$??ETPe*%WHdKm`xQG zAf*OVL{Ew$EZd}4M)(3dNbH;UiNx(xr%XSwp@N-kG2s>WQy&SeXMp1{UZu3JmX|MY zNeaa?qiA&h*=hT0$@v{IM9%U3llTEXdsGrI!q1_1)|_j1O5JRK2DAll-CceLzXm4$ zw=)Ymgh6pDVM&4hS3qVG*g?r{B%_%rxI zj5Q+F_snj8O4wL=I9b;u$cGk*SE`fejq%@{MrAc}iSo8PpcHKEZ`Z+ff{wt1C&5=u zFwEWXW1-~?V#l7`b0hpzm9s3AXlrsz4rz^B()GWIg{s!tF$KxEo>-B{c;F1*XF}{G1H=aPY7jJGp)rbb`;B@gz5gg}sjiF6 zm^Y(-`28xnB`}5VkSqRd%0Dj}Lvg5D)I^#BAc8jUYl}$C^qv_y17=@of3zn=8%sD= zC)vIWh&z?1i7)lH1STFg%cH4yZwh}hx3SLG2)3gVIA!IxULF1SRz;MeKw2elD7gp6 zp=@G5lhV6n6&wdP1C&wkWvCrU=nQXt@@`Rm{YuK4Jwn4cH_de)pT}D4wQ4!zuBi|- z&xLB74dk@K4-En6=;*Bb9~MYF{K5A)Eb!IV(TM_I+O9NMQ$9-4rT8y{#ymUMz2?kx zVXd#FvvKN4G9laK#NUBvcnaHhQb$UC8ZW3Pkol?Y_Q%&Xw9!ie<{s>2t%ogBef>Jq z@3Am3%oY32jx4?crvQ6-BOp|Os!TxC zybXc;Hcsz$CvRXXsDyhG`G7iYYVE`wTq2I0?SeT zm-$z^(nb*w{6IZIMs7Rcd)2FZ4D;aEPTHDcTu$=u>vnO1yQz*VdJFRj2320~RK7|r z27Bx%kT|w>KK8ys|F;71nfhTjr)q~AFTqxF=laR-LYnpbqk@JyRwbvBgglwXL;}cd z5v7vehHd^aNuMws>;3u#vy2iN73$9)h}M2lULeXb^W#AQh;Nw5iXLd#;$#j!1+&WL z?`4=T@V7%jp_(>{1Rt0-dOm43?n(&}vQ+3Y^t@~i*WK69Cl0v|*u=fL5S=0S87w-& zwcR+a&kclHM%NBjbyb@VAp1orwf zpa?!=w<>W4E?7D{-d#ZOVw&!RRpWasm32bK{$yX-hq#2?+mNJuaJ1#bcM48@k*G#) zpH08d3y1LoMgKcvrj@!lsT-7AL`~mASacwK%Sp$1kZ%lBQ*j^TZk_JF{Dg+m2g8$2 zx+^{v%LbMbs?EjW(f(`*pc{N^UD}M?+t101rOj0>uZfa{R(U{7E2b>?`}TN@`s!&X zap3tslQEGQMGB_aL(tdfi%wqG=e5yt&nd|ziL<4f;MFPK9>`ADIbyzS>UK7)_Ud3u zSqOi9GP$^OMF2{HNi=o!WlzfIH6p$L7v|Bm#9!QJx?;{dmfExR@$YoyfY}K-Q#9u- zq))6vY_*9Vf^e4K_n7xy8xw}lF0>19b*SzdpO;`pP`U@Cp?qa=)q-+oS{ht5x+`X~)&b?>m%$%At=j<5iU_rFk zue)G);}SnkG4GUtu!}zmwqDg4@|?b8bfMu?ALWCvViGFgm!aiiD~c8&eU0e`zwg9A zCtEp6J>}>P8Nau-w;PiC^vdjW4cjdkP>LSYjq)40hTmhYCdkoRKlt9?yrbG4nwrhU zs?{za;x5PNjG3ylqRNbyFyTC#Ch$9+EhRx@ENLOGmUdl#s@bb+<`<=dZA zwrVh!+2kIkX8Y*iJcgaQ+$%IR(B1`|;7uu)<#^Z!GyU-)Dof_zw8WKsSqV+$B>;7J z>P%3V5@k+xW;wzh4<@ji2}jjN`YV{YGo`Y01NVEc0qSui^EVV-_3zLgxI#Kqit(he zV3TLpTG0pPY;UHB4@iA0^b)kRu*j!bp9e<(wk$u#N-uYuG(<^_!y#euWghjRamO8x z2YaqrvW@ElM)yZu<%IFVnQUgTH4Sn*15f~$`Z*caa|sLm&9{Htw<)RLiCK8~bC-!8 z@g;1#m7Mn=+MXZTplMdt1_<&f^oH>%#Gi*4t}TQ^l#q$%Em>~@1nKWm*W9dOl;&C2 zu$+#ZIls@rWsMp)jr`_4#EVW0rVinY)sT53`&((1@?zpAz?2`%ZPsA(v?`-DXA~(Mmj4yEAuE1ehD?_J1PeC& z%R^{w_fj|fPE|GrL%G=Ko&D_M)KuE28)ay6QQPujVQISjW7c(daLcEgs-9u}AH4ki zA3OtMT-n)tnb>?C-@pHe)ncB8o1#wNqq)W2!#}X`JnY2-wZP41#|t3C}_luhRs`8|)t(PYcdwwYBi+w?K}FYlWD zzuSL*RiUl=D_X;<`Rna#A-8XqgmN`wEN5e2b43X{_{xau=mVbSf$6GnIZM;y+r*QG zi`_7^HxyM3>daVSln6C42G{J2_;dw$00zm`A28NhJ+X?P+O6NrkS?P?v9?rS2vhZI zdPR68XgpL%hjg#`gaO}%+qb`F;1TF0KYG}JXbMaP9w8cFv=H&WG+pBj_p)%!9z z%TaeadruFErGqoOb?Z0~%_{L9tb=n84}OrZpbHg?-w*I*l7mijROEMUj#l3|A9YLq z7ydX4sXkOFlNcFS{}1tNTnOhny5;eoXkX&-szp|r(cW9+C+H^nM*2 z@`KTIslEr(1&Cd~D!HAjWvDe4X-rj}A%mwv_BD$k;zhhnF|LUk7UAS;ptYPyDx{vzz`X*h)+pV0!qPkN8HZ&e#2^by;pp+{x@17{7KP=A~OgpYY& zgEGCGs!^7MTgF#)HGNlBeL(yw3$`HHPqa_0g+sVBS~EY{ch*PW_p#a|{eN^FLU0c& z%0D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%0A6Q+B~lZFDQ(4+=HQVfb1Uh~D6%zx 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⁡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