From be3d2edf754b7b06c4b1fc241c1aed92c2c7c2b2 Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Sat, 16 Jan 2021 22:40:20 -0800 Subject: [PATCH 01/36] Update defib.dm --- code/game/objects/items/devices/defib.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 8e5fa683c9..36dcdf0750 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -288,7 +288,7 @@ /obj/item/weapon/shockpaddles/proc/can_revive(mob/living/carbon/human/H) //This is checked right before attempting to revive var/obj/item/organ/internal/brain/brain = H.internal_organs_by_name[O_BRAIN] - if(H.should_have_organ(O_BRAIN) && (!brain || brain.defib_timer <= 0 ) ) + if(H.should_have_organ(O_BRAIN) && (!brain) ) return "buzzes, \"Resuscitation failed - Excessive neural degeneration. Further attempts futile.\"" H.updatehealth() From 76c3f49a0f85c26aaa60d81b9d67fe6e59c3c9ec Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Sat, 16 Jan 2021 22:49:15 -0800 Subject: [PATCH 02/36] Other thing that needed to be removed --- code/modules/organs/organ.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index 9047eb2665..fe2f086411 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -145,7 +145,6 @@ var/list/organ_cache = list() STOP_PROCESSING(SSobj, src) handle_organ_mod_special(TRUE) if(owner && vital) - owner.can_defib = 0 owner.death() /obj/item/organ/proc/adjust_germ_level(var/amount) // Unless you're setting germ level directly to 0, use this proc instead From 08372184614cac5829b244d8e8a6a69972f9049a Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Sat, 16 Jan 2021 23:08:11 -0800 Subject: [PATCH 03/36] another thingy --- code/modules/organs/organ.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index fe2f086411..7c0f2af0b5 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -404,7 +404,6 @@ var/list/organ_cache = list() if(user) add_attack_logs(user, owner, "Removed vital organ [src.name]") if(owner.stat != DEAD) - owner.can_defib = 0 owner.death() handle_organ_mod_special(TRUE) From c05d687ec267fbc42502d693fc70746fdb122a20 Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Tue, 19 Jan 2021 19:15:27 -0800 Subject: [PATCH 04/36] Update defib.dm --- code/game/objects/items/devices/defib.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 36dcdf0750..1e549c23c0 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -288,7 +288,7 @@ /obj/item/weapon/shockpaddles/proc/can_revive(mob/living/carbon/human/H) //This is checked right before attempting to revive var/obj/item/organ/internal/brain/brain = H.internal_organs_by_name[O_BRAIN] - if(H.should_have_organ(O_BRAIN) && (!brain) ) + if(H.should_have_organ(O_BRAIN) && (!brain) ) //CHOMPEdit Defib Timer Removal return "buzzes, \"Resuscitation failed - Excessive neural degeneration. Further attempts futile.\"" H.updatehealth() From fdbe1750cf68e798591666d7c67474d573dad63d Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Tue, 19 Jan 2021 20:13:09 -0800 Subject: [PATCH 05/36] Update organ.dm --- code/modules/organs/organ.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index 7c0f2af0b5..7e11c71c77 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -145,7 +145,7 @@ var/list/organ_cache = list() STOP_PROCESSING(SSobj, src) handle_organ_mod_special(TRUE) if(owner && vital) - owner.death() + owner.death() //CHOMPEdit Defib Timer Removal /obj/item/organ/proc/adjust_germ_level(var/amount) // Unless you're setting germ level directly to 0, use this proc instead germ_level = CLAMP(germ_level + amount, 0, INFECTION_LEVEL_MAX) @@ -404,7 +404,7 @@ var/list/organ_cache = list() if(user) add_attack_logs(user, owner, "Removed vital organ [src.name]") if(owner.stat != DEAD) - owner.death() + owner.death() //CHOMPEdit Defib Timer Removal handle_organ_mod_special(TRUE) From 9c8634a84b2e49ab69628a8490603207f8996859 Mon Sep 17 00:00:00 2001 From: Chompstation Bot Date: Sun, 24 Jan 2021 06:33:08 +0000 Subject: [PATCH 06/36] Makes most neutral traits available to all species --- code/_helpers/global_lists_vr.dm | 5 +- code/game/dna/dna2.dm | 20 +---- code/game/dna/dna2_helpers.dm | 17 +---- .../client/preference_setup/vore/07_traits.dm | 76 ++++++++++--------- .../carbon/human/species/shadekin/shadekin.dm | 2 - .../living/carbon/human/species/species_vr.dm | 28 +++++++ .../carbon/human/species/station/alraune.dm | 13 ++-- .../carbon/human/species/station/blank_vr.dm | 4 +- .../human/species/station/prometheans_vr.dm | 5 -- .../station/protean_vr/protean_species.dm | 4 +- .../species/station/station_special_vr.dm | 17 ++--- .../human/species/station/station_vr.dm | 14 +--- .../species/station/traits_vr/neutral.dm | 39 +++++++++- .../human/species/station/traits_vr/trait.dm | 3 +- 14 files changed, 136 insertions(+), 111 deletions(-) diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm index 0406099616..946cd9de0e 100644 --- a/code/_helpers/global_lists_vr.dm +++ b/code/_helpers/global_lists_vr.dm @@ -8,6 +8,7 @@ var/global/list/tail_styles_list = list() // Stores /datum/sprite_accessory/tail var/global/list/wing_styles_list = list() // Stores /datum/sprite_accessory/wing indexed by type var/global/list/negative_traits = list() // Negative custom species traits, indexed by path var/global/list/neutral_traits = list() // Neutral custom species traits, indexed by path +var/global/list/everyone_traits = list() // Neutral traits available to all species, indexed by path var/global/list/positive_traits = list() // Positive custom species traits, indexed by path var/global/list/traits_costs = list() // Just path = cost list, saves time in char setup var/global/list/all_traits = list() // All of 'em at once (same instances) @@ -457,7 +458,7 @@ var/global/list/remainless_species = list(SPECIES_PROMETHEAN, for(var/path in paths) var/datum/sprite_accessory/hair_accessory/instance = new path() hair_accesories_list[path] = instance - + // Custom species traits paths = typesof(/datum/trait) - /datum/trait for(var/path in paths) @@ -472,6 +473,8 @@ var/global/list/remainless_species = list(SPECIES_PROMETHEAN, negative_traits[path] = instance if(0) neutral_traits[path] = instance + if(!(instance.custom_only)) + everyone_traits[path] = instance if(0.1 to INFINITY) positive_traits[path] = instance diff --git a/code/game/dna/dna2.dm b/code/game/dna/dna2.dm index 1ffaab1793..34180bf329 100644 --- a/code/game/dna/dna2.dm +++ b/code/game/dna/dna2.dm @@ -206,23 +206,9 @@ var/global/list/datum/dna/gene/dna_genes[0] // Technically custom_species is not part of the UI, but this place avoids merge problems. src.custom_species = character.custom_species - if(istype(character.species,/datum/species/custom)) - var/datum/species/custom/CS = character.species - src.species_traits = CS.traits.Copy() - src.base_species = CS.base_species - src.blood_color = CS.blood_color - - if(istype(character.species,/datum/species/xenochimera)) - var/datum/species/xenochimera/CS = character.species - //src.species_traits = CS.traits.Copy() //No traits - src.base_species = CS.base_species - src.blood_color = CS.blood_color - - if(istype(character.species,/datum/species/alraune)) - var/datum/species/alraune/CS = character.species - //src.species_traits = CS.traits.Copy() //No traits - src.base_species = CS.base_species - src.blood_color = CS.blood_color + src.base_species = character.species.base_species + src.blood_color = character.species.blood_color + src.species_traits = character.species.traits.Copy() // +1 to account for the none-of-the-above possibility SetUIValueRange(DNA_UI_EAR_STYLE, ear_style + 1, ear_styles_list.len + 1, 1) diff --git a/code/game/dna/dna2_helpers.dm b/code/game/dna/dna2_helpers.dm index 0edc6bb636..758f74d873 100644 --- a/code/game/dna/dna2_helpers.dm +++ b/code/game/dna/dna2_helpers.dm @@ -237,20 +237,9 @@ // Technically custom_species is not part of the UI, but this place avoids merge problems. H.custom_species = dna.custom_species - if(istype(H.species,/datum/species/custom)) - var/datum/species/custom/CS = H.species - var/datum/species/custom/new_CS = CS.produceCopy(dna.base_species,dna.species_traits,src) - new_CS.blood_color = dna.blood_color - - if(istype(H.species,/datum/species/xenochimera)) - var/datum/species/xenochimera/CS = H.species - var/datum/species/xenochimera/new_CS = CS.produceCopy(dna.base_species,dna.species_traits,src) - new_CS.blood_color = dna.blood_color - - if(istype(H.species,/datum/species/alraune)) - var/datum/species/alraune/CS = H.species - var/datum/species/alraune/new_CS = CS.produceCopy(dna.base_species,dna.species_traits,src) - new_CS.blood_color = dna.blood_color + H.species.blood_color = dna.blood_color + var/datum/species/S = H.species + S.produceCopy(dna.base_species,dna.species_traits,src) // VOREStation Edit End H.force_update_organs() //VOREStation Add - Gotta do this too diff --git a/code/modules/client/preference_setup/vore/07_traits.dm b/code/modules/client/preference_setup/vore/07_traits.dm index ff6db5f9ef..7a029c8cd2 100644 --- a/code/modules/client/preference_setup/vore/07_traits.dm +++ b/code/modules/client/preference_setup/vore/07_traits.dm @@ -58,21 +58,21 @@ if(pref.species != SPECIES_CUSTOM) pref.pos_traits.Cut() - pref.neu_traits.Cut() pref.neg_traits.Cut() - else - // Clean up positive traits - for(var/path in pref.pos_traits) - if(!(path in positive_traits)) - pref.pos_traits -= path - //Neutral traits - for(var/path in pref.neu_traits) - if(!(path in neutral_traits)) - pref.neu_traits -= path - //Negative traits - for(var/path in pref.neg_traits) - if(!(path in negative_traits)) - pref.neg_traits -= path + // Clean up positive traits + for(var/path in pref.pos_traits) + if(!(path in positive_traits)) + pref.pos_traits -= path + //Neutral traits + for(var/path in pref.neu_traits) + if(!(path in neutral_traits)) + pref.neu_traits -= path + if(!(pref.species == SPECIES_CUSTOM) && !(path in everyone_traits)) + pref.neu_traits -= path + //Negative traits + for(var/path in pref.neg_traits) + if(!(path in negative_traits)) + pref.neg_traits -= path var/datum/species/selected_species = GLOB.all_species[pref.species] if(selected_species.selects_bodytype) @@ -82,25 +82,25 @@ /datum/category_item/player_setup_item/vore/traits/copy_to_mob(var/mob/living/carbon/human/character) character.custom_species = pref.custom_species - var/datum/species/selected_species = GLOB.all_species[pref.species] if(character.isSynthetic()) //Checking if we have a synth on our hands, boys. pref.dirty_synth = 1 else //CHOMPEdit pref.dirty_synth = 0 //CHOMPEdit - if(selected_species.selects_bodytype) - var/datum/species/custom/CS = character.species - var/S = pref.custom_base ? pref.custom_base : "Human" - var/datum/species/custom/new_CS = CS.produceCopy(S, pref.pos_traits + pref.neu_traits + pref.neg_traits, character) + var/datum/species/S = character.species + var/SB = pref.custom_base ? pref.custom_base : "Human" + var/datum/species/new_S = S.produceCopy(SB, pref.pos_traits + pref.neu_traits + pref.neg_traits, character) - //Any additional non-trait settings can be applied here - new_CS.blood_color = pref.blood_color + //Any additional non-trait settings can be applied here + new_S.blood_color = pref.blood_color + + if(pref.species == SPECIES_CUSTOM) + //Statistics for this would be nice + var/english_traits = english_list(new_S.traits, and_text = ";", comma_text = ";") + log_game("TRAITS [pref.client_ckey]/([character]) with: [english_traits]") //Terrible 'fake' key_name()... but they aren't in the same entity yet + else - if(pref.species == SPECIES_CUSTOM) - //Statistics for this would be nice - var/english_traits = english_list(new_CS.traits, and_text = ";", comma_text = ";") - log_game("TRAITS [pref.client_ckey]/([character]) with: [english_traits]") //Terrible 'fake' key_name()... but they aren't in the same entity yet /datum/category_item/player_setup_item/vore/traits/content(var/mob/user) . += "Custom Species Name: " @@ -111,15 +111,16 @@ . += "Icon Base: " . += "[pref.custom_base ? pref.custom_base : "Human"]
" + var/traits_left = pref.max_traits + . += "Traits Left: [traits_left]
" if(pref.species == SPECIES_CUSTOM) var/points_left = pref.starting_trait_points - var/traits_left = pref.max_traits + for(var/T in pref.pos_traits + pref.neg_traits) points_left -= traits_costs[T] traits_left-- . += "Points Left: [points_left]
" - . += "Traits Left: [traits_left]
" if(points_left < 0 || traits_left < 0 || !pref.custom_species) . += "^ Fix things! ^
" @@ -130,19 +131,18 @@ . += "
  • - [trait.name] ([trait.cost])
  • " . += "" - . += "Neutral Trait +
    " - . += "" - . += "Negative Trait +
    " . += "" + . += "Neutral Trait +
    " + . += "" . += "Blood Color: " //People that want to use a certain species to have that species traits (xenochimera/promethean/spider) should be able to set their own blood color. . += "Set Color" . += "R
    " @@ -218,8 +218,12 @@ picklist = positive_traits.Copy() - pref.pos_traits mylist = pref.pos_traits if(NEUTRAL_MODE) - picklist = neutral_traits.Copy() - pref.neu_traits - mylist = pref.neu_traits + if(pref.species == SPECIES_CUSTOM) + picklist = neutral_traits.Copy() - pref.neu_traits + mylist = pref.neu_traits + else + picklist = everyone_traits.Copy() - pref.neu_traits + mylist = pref.neu_traits if(NEGATIVE_MODE) picklist = negative_traits.Copy() - pref.neg_traits mylist = pref.neg_traits diff --git a/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm b/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm index a94f1d80c0..14200ca4f3 100644 --- a/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm +++ b/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm @@ -58,8 +58,6 @@ base_color = "#f0f0f0" color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb) - has_glowing_eyes = TRUE death_message = "phases to somewhere far away!" diff --git a/code/modules/mob/living/carbon/human/species/species_vr.dm b/code/modules/mob/living/carbon/human/species/species_vr.dm index 353946d976..7c62d02b25 100644 --- a/code/modules/mob/living/carbon/human/species/species_vr.dm +++ b/code/modules/mob/living/carbon/human/species/species_vr.dm @@ -21,6 +21,8 @@ var/icon_height = 32 var/agility = 20 //prob() to do agile things + var/list/traits = list() + /datum/species/proc/update_attack_types() unarmed_attacks = list() for(var/u_type in unarmed_types) @@ -44,3 +46,29 @@ nif.nifsofts = nifsofts else ..() +/datum/species/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) + ASSERT(to_copy) + ASSERT(istype(H)) + + if(ispath(to_copy)) + to_copy = "[initial(to_copy.name)]" + if(istext(to_copy)) + to_copy = GLOB.all_species[to_copy] + + var/datum/species/new_copy = new to_copy.type() + + new_copy.traits = traits + + //If you had traits, apply them + if(new_copy.traits) + for(var/trait in new_copy.traits) + var/datum/trait/T = all_traits[trait] + T.apply(new_copy,H) + + //Set up a mob + H.species = new_copy + + if(H.dna) + H.dna.ready_dna(H) + + return new_copy \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species/station/alraune.dm b/code/modules/mob/living/carbon/human/species/station/alraune.dm index dc983730c1..434fd8add6 100644 --- a/code/modules/mob/living/carbon/human/species/station/alraune.dm +++ b/code/modules/mob/living/carbon/human/species/station/alraune.dm @@ -50,10 +50,6 @@ appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR inherent_verbs = list( - /mob/living/carbon/human/proc/succubus_drain, - /mob/living/carbon/human/proc/succubus_drain_finalize, - /mob/living/carbon/human/proc/succubus_drain_lethal, - /mob/living/carbon/human/proc/bloodsuck, /mob/living/carbon/human/proc/alraune_fruit_select) //Give them the voremodes related to wrapping people in vines and sapping their fluids color_mult = 1 @@ -451,7 +447,7 @@ //End of fruit gland code. -/datum/species/alraune/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) +/datum/species/alraune/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) ASSERT(to_copy) ASSERT(istype(H)) @@ -477,6 +473,13 @@ new_copy.blood_mask = to_copy.blood_mask new_copy.damage_mask = to_copy.damage_mask new_copy.damage_overlays = to_copy.damage_overlays + new_copy.traits = traits + + //If you had traits, apply them + if(new_copy.traits) + for(var/trait in new_copy.traits) + var/datum/trait/T = all_traits[trait] + T.apply(new_copy,H) //Set up a mob H.species = new_copy diff --git a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm index d640f31631..3cb5197628 100644 --- a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm @@ -37,8 +37,6 @@ spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR - var/list/traits = list() - has_limbs = list( BP_TORSO = list("path" = /obj/item/organ/external/chest, "descriptor" = "torso"), BP_GROIN = list("path" = /obj/item/organ/external/groin, "descriptor" = "groin"), @@ -60,7 +58,7 @@ var/datum/species/real = GLOB.all_species[base_species] return real.race_key -/datum/species/custom/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) +/datum/species/custom/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) ASSERT(to_copy) ASSERT(istype(H)) diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm b/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm index e465b2a3da..20867fb3d8 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm @@ -34,10 +34,5 @@ /mob/living/carbon/human/proc/shapeshifter_select_tail, /mob/living/carbon/human/proc/shapeshifter_select_ears, /mob/living/proc/set_size, - /mob/living/carbon/human/proc/succubus_drain, - /mob/living/carbon/human/proc/succubus_drain_finalize, - /mob/living/carbon/human/proc/succubus_drain_lethal, - /mob/living/carbon/human/proc/slime_feed, - /mob/living/proc/eat_trash, /mob/living/carbon/human/proc/promethean_select_opaqueness, ) diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm index 53fcbc7fb9..cf14cc61d2 100755 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm @@ -101,9 +101,7 @@ /mob/living/carbon/human/proc/shapeshifter_select_gender, /mob/living/carbon/human/proc/shapeshifter_select_wings, /mob/living/carbon/human/proc/shapeshifter_select_tail, - /mob/living/carbon/human/proc/shapeshifter_select_ears, - /mob/living/proc/eat_trash, - /mob/living/carbon/human/proc/slime_feed + /mob/living/carbon/human/proc/shapeshifter_select_ears ) var/global/list/abilities = list() diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm index f3271cab3d..449110aa9d 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm @@ -25,12 +25,7 @@ inherent_verbs = list( /mob/living/carbon/human/proc/reconstitute_form, /mob/living/carbon/human/proc/sonar_ping, - /mob/living/carbon/human/proc/succubus_drain, - /mob/living/carbon/human/proc/succubus_drain_finalize, - /mob/living/carbon/human/proc/succubus_drain_lethal, - /mob/living/carbon/human/proc/bloodsuck, /mob/living/carbon/human/proc/tie_hair, - /mob/living/proc/shred_limb, /mob/living/proc/flying_toggle, /mob/living/proc/start_wings_hovering) //Xenochimera get all the special verbs since they can't select traits. @@ -300,7 +295,7 @@ update_xenochimera_hud(H, danger, feral_state) -/datum/species/xenochimera/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) +/datum/species/xenochimera/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) ASSERT(to_copy) ASSERT(istype(H)) @@ -326,6 +321,13 @@ new_copy.blood_mask = to_copy.blood_mask new_copy.damage_mask = to_copy.damage_mask new_copy.damage_overlays = to_copy.damage_overlays + new_copy.traits = traits + + //If you had traits, apply them + if(new_copy.traits) + for(var/trait in new_copy.traits) + var/datum/trait/T = all_traits[trait] + T.apply(new_copy,H) //Set up a mob H.species = new_copy @@ -472,9 +474,6 @@ spawn_flags = SPECIES_IS_RESTRICTED //SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE CHOMPedit: disabled forever appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_EYE_COLOR - inherent_verbs = list( - /mob/living/proc/shred_limb, - /mob/living/proc/eat_trash) flesh_color = "#AFA59E" base_color = "#777777" diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index 6d76b5295d..222add51d3 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -40,7 +40,6 @@ spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR - inherent_verbs = list(/mob/living/proc/shred_limb) flesh_color = "#AFA59E" base_color = "#777777" @@ -84,7 +83,6 @@ secondary_langs = list(LANGUAGE_SKRELLIAN) name_language = LANGUAGE_SKRELLIAN color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb) assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) min_age = 18 @@ -137,7 +135,7 @@ secondary_langs = list(LANGUAGE_BIRDSONG) name_language = LANGUAGE_BIRDSONG color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb,/mob/living/proc/flying_toggle,/mob/living/proc/start_wings_hovering) + inherent_verbs = list(/mob/living/proc/flying_toggle,/mob/living/proc/start_wings_hovering) min_age = 18 max_age = 110 @@ -239,7 +237,7 @@ // gluttonous = 1 num_alternate_languages = 3 color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) + inherent_verbs = list(/mob/living/carbon/human/proc/lick_wounds) male_scream_sound = null //CHOMPedit female_scream_sound = null //CHOMPedit @@ -277,7 +275,6 @@ color_mult = 1 min_age = 18 gluttonous = 0 - inherent_verbs = list(/mob/living/proc/shred_limb) genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) descriptors = list() @@ -292,7 +289,7 @@ color_mult = 1 min_age = 18 gluttonous = 0 //Moving this here so I don't have to fix this conflict every time polaris glances at station.dm - inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) + inherent_verbs = list(/mob/living/carbon/human/proc/lick_wounds) heat_discomfort_level = 295 //Prevents heat discomfort spam at 20c //CHOMPSedit: links to our wiki @@ -359,7 +356,6 @@ inherent_verbs = list( /mob/living/carbon/human/proc/sonar_ping, /mob/living/proc/hide, - /mob/living/proc/shred_limb, /mob/living/proc/toggle_pass_table ) @@ -389,7 +385,6 @@ min_age = 18 icobase = 'icons/mob/human_races/r_vox_old.dmi' deform = 'icons/mob/human_races/r_def_vox_old.dmi' - inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/proc/eat_trash) descriptors = list( /datum/mob_descriptor/vox_markings = 0 ) @@ -503,8 +498,6 @@ datum/species/harpy base_color = "#f0f0f0" color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb) - has_glowing_eyes = TRUE male_cough_sounds = null @@ -632,4 +625,3 @@ datum/species/harpy "You feel uncomfortably warm.", "Your chitin feels hot." ) - inherent_verbs = list(/mob/living/proc/shred_limb) diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm index 5855a0ec18..a76dc9a041 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm @@ -72,7 +72,7 @@ cost = 0 var_changes = list("cold_level_1" = 200, "cold_level_2" = 150, "cold_level_3" = 90, "breath_cold_level_1" = 180, "breath_cold_level_2" = 100, "breath_cold_level_3" = 60, "cold_discomfort_level" = 210, "heat_level_1" = 305, "heat_level_2" = 360, "heat_level_3" = 700, "breath_heat_level_1" = 345, "breath_heat_level_2" = 380, "breath_heat_level_3" = 780, "heat_discomfort_level" = 295, "body_temperature" = 290) excludes = list(/datum/trait/hotadapt) - + /datum/trait/hotadapt name = "Heat-Adapted" desc = "You are able to withstand much hotter temperatures than other species, and can even be comfortable in extremely hot environments. You are also more vulnerable to cold environments, and have a higher body temperature as a consequence of these adaptations." @@ -128,6 +128,7 @@ YW change end */ name = "Minor Bloodsucker" desc = "Makes you unable to gain nutrition from anything but blood. To compensate, you get fangs that can be used to drain blood from prey." cost = 0 + custom_only = FALSE var_changes = list("gets_food_nutrition" = 0) //The verb is given in human.dm excludes = list(/datum/trait/bloodsucker_plus) @@ -139,6 +140,7 @@ YW change end */ name = "Succubus Drain" desc = "Makes you able to gain nutrition from draining prey in your grasp." cost = 0 + custom_only = FALSE /datum/trait/succubus_drain/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -150,6 +152,7 @@ YW change end */ name = "Feeder" desc = "Allows you to feed your prey using your own body." cost = 0 + custom_only = FALSE /datum/trait/feeder/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -158,7 +161,14 @@ YW change end */ /datum/trait/hard_vore name = "Hard Vore" //CHOMPedit Renamed Brutal Predation to Hard Vore, because some people don't know what this actually does desc = "Allows you to tear off limbs & tear out internal organs." +<<<<<<< HEAD cost = 0 +||||||| parent of afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits + cost = 0 //I would make this cost a point, since it has some in game value, but there are easier, less damaging ways to perform the same functions. +======= + cost = 0 + custom_only = FALSE +>>>>>>> afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits /datum/trait/hard_vore/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -168,6 +178,7 @@ YW change end */ name = "Trash Can" desc = "Allows you to dispose of some garbage on the go instead of having to look for a bin or littering like an animal." cost = 0 + custom_only = FALSE var_changes = list("trashcan" = 1) /datum/trait/trashcan/apply(var/datum/species/S,var/mob/living/carbon/human/H) @@ -178,6 +189,7 @@ YW change end */ name = "Expensive Taste" desc = "You only gain nutrition from raw ore and refined minerals. There's nothing that sates the appetite better than precious gems, exotic or rare minerals and you have damn fine taste. Anything else is beneath you." cost = 0 + custom_only = FALSE var_changes = list("gets_food_nutrition" = 0, "eat_minerals" = 1) /datum/trait/gem_eater/apply(var/datum/species/S,var/mob/living/carbon/human/H) @@ -188,13 +200,20 @@ YW change end */ name = "Glowing Eyes" desc = "Your eyes show up above darkness. SPOOKY! And kinda edgey too." cost = 0 + custom_only = FALSE var_changes = list("has_glowing_eyes" = 1) /datum/trait/glowing_body name = "Glowing Body" desc = "Your body glows about as much as a PDA light! Settable color and toggle in Abilities tab ingame." cost = 0 +<<<<<<< HEAD +||||||| parent of afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits +======= + custom_only = FALSE + +>>>>>>> afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits /datum/trait/glowing_body/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) H.verbs |= /mob/living/proc/glow_toggle @@ -205,36 +224,42 @@ YW change end */ name = "Extreme Spice Intolerance" desc = "Spicy (and chilly) peppers are three times as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 3) // 300% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! - + /datum/trait/spice_intolerance_basic name = "Heavy Spice Intolerance" desc = "Spicy (and chilly) peppers are twice as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 2) // 200% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/spice_intolerance_slight name = "Slight Spice Intolerance" desc = "You have a slight struggle with spicy foods. Spicy (and chilly) peppers are one and a half times stronger. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 1.5) // 150% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/spice_tolerance_basic name = "Spice Tolerance" desc = "Spicy (and chilly) peppers are only three-quarters as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 0.75) // 75% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! - + /datum/trait/spice_tolerance_advanced name = "Strong Spice Tolerance" desc = "Spicy (and chilly) peppers are only half as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 0.5) // 50% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/spice_immunity name = "Extreme Spice Tolerance" desc = "Spicy (and chilly) peppers are basically ineffective! (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 0.25) // 25% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /*YW CHANGE START: Commented out because we got our own variants @@ -243,36 +268,42 @@ YW change end */ name = "Liver of Air" desc = "The only way you can hold a drink is if it's in your own two hands, and even then you'd best not inhale too deeply near it. Drinks are three times as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 3) // 300% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_intolerance_basic name = "Liver of Lilies" desc = "You have a hard time with alcohol. Maybe you just never took to it, or maybe it doesn't agree with you... either way, drinks are twice as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 2) // 200% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_intolerance_slight name = "Liver of Tulips" desc = "You have a slight struggle with alcohol. Drinks are one and a half times stronger." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 1.5) // 150% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_tolerance_basic name = "Liver of Iron" desc = "You can hold drinks much better than those lily-livered land-lubbers! Arr! Drinks are only three-quarters as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 0.75) // 75% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! - + /datum/trait/alcohol_tolerance_advanced name = "Liver of Steel" desc = "Drinks tremble before your might! You can hold your alcohol twice as well as those blue-bellied barnacle boilers! Drinks are only half as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 0.5) // 50% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_immunity name = "Liver of Durasteel" desc = "You've drunk so much that most booze doesn't even faze you. It takes something like a Pan-Galactic or a pint of Deathbell for you to even get slightly buzzed." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 0.25) // 25% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! // Alcohol Traits End Here. YW CHANGE STOP*/ diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm index 434fc8d846..605da7e569 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm @@ -5,7 +5,8 @@ var/cost = 0 // 0 is neutral, negative cost means negative, positive cost means positive. var/list/var_changes // A list to apply to the custom species vars. var/list/excludes // Store a list of paths of traits to exclude, but done automatically if they change the same vars. - var/not_for_synths = 0 // Can freaking synths use those. + var/not_for_synths = FALSE // Can freaking synths use those. + var/custom_only = TRUE // Trait only available for custom species //Proc can be overridden lower to include special changes, make sure to call up though for the vars changes /datum/trait/proc/apply(var/datum/species/S,var/mob/living/carbon/human/H) From 57e1be6caa21cc0b823025d56f03a966e1434a61 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sun, 24 Jan 2021 01:33:38 -0500 Subject: [PATCH 07/36] Merge pull request #9598 from Heroman3003/defibfix Fixes defib timers being 10 times as long compared to intended. --- code/game/objects/items/devices/defib.dm | 4 ++-- code/modules/organs/internal/brain.dm | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 8e5fa683c9..f938f0eab1 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -509,8 +509,8 @@ return // Still no brain. // If the brain'd `defib_timer` var gets below this number, brain damage will happen at a linear rate. - // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 6000 world.time units = 3000 `Life()` ticks. - var/brain_damage_timer = ((config.defib_timer MINUTES) / 2) - ((config.defib_braindamage_timer MINUTES) / 2) + // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 300 `Life()` ticks. // Original math was VERY off. Life() tick occurs every ~2 seconds, not every 2 world.time ticks. + var/brain_damage_timer = ((config.defib_timer MINUTES) / 20) - ((config.defib_braindamage_timer MINUTES) / 20) if(brain.defib_timer > brain_damage_timer) return // They got revived before brain damage got a chance to set in. diff --git a/code/modules/organs/internal/brain.dm b/code/modules/organs/internal/brain.dm index 30c539bbde..016e3fce3c 100644 --- a/code/modules/organs/internal/brain.dm +++ b/code/modules/organs/internal/brain.dm @@ -33,7 +33,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) if(!owner || owner.stat == DEAD) defib_timer = max(--defib_timer, 0) else - defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 2) + defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 20) // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 /obj/item/organ/internal/brain/proc/can_assist() return can_assist @@ -81,7 +81,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) /obj/item/organ/internal/brain/New() ..() health = config.default_brain_health - defib_timer = (config.defib_timer MINUTES) / 2 + defib_timer = (config.defib_timer MINUTES) / 20 // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 spawn(5) if(brainmob) butcherable = FALSE @@ -103,7 +103,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) if(istype(H)) brainmob.dna = H.dna.Clone() brainmob.timeofhostdeath = H.timeofdeath - brainmob.ooc_notes = H.ooc_notes //VOREStation Edit + brainmob.ooc_notes = H.ooc_notes //VOREStation Edit // Copy modifiers. for(var/datum/modifier/M in H.modifiers) From 5d4fd0ee29dc99b072ee74b6222ff7bbb2e1c7b1 Mon Sep 17 00:00:00 2001 From: Chompstation Bot Date: Sun, 24 Jan 2021 06:44:32 +0000 Subject: [PATCH 09/36] Removes Herm option for biological gender --- .../carbon/human/species/shadekin/shadekin.dm | 2 +- .../carbon/human/species/station/blank_vr.dm | 2 +- .../human/species/station/prometheans_vr.dm | 2 +- .../station/protean_vr/protean_species.dm | 2 +- .../species/station/station_special_vr.dm | 6 +-- .../human/species/station/station_vr.dm | 54 ++++++++++++++----- 6 files changed, 49 insertions(+), 19 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm b/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm index a94f1d80c0..c6ecf43b59 100644 --- a/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm +++ b/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm @@ -70,7 +70,7 @@ speech_bubble_appearance = "ghost" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) virus_immune = 1 diff --git a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm index d640f31631..c29f0e5217 100644 --- a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm @@ -32,7 +32,7 @@ num_alternate_languages = 3 assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm b/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm index e465b2a3da..012177135c 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm @@ -15,7 +15,7 @@ spawn_flags = SPECIES_CAN_JOIN wikilink="https://wiki.vore-station.net/Promethean" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) color_mult = 1 mob_size = MOB_MEDIUM //As of writing, original was MOB_SMALL - Allows normal swapping diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm index 53fcbc7fb9..8ae42ae6c1 100755 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm @@ -62,7 +62,7 @@ siemens_coefficient = 1.5 //Very bad zappy times rarity_value = 5 - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) has_organ = list( O_BRAIN = /obj/item/organ/internal/mmi_holder/posibrain/nano, diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm index f3271cab3d..685ff92a7a 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm @@ -60,7 +60,7 @@ spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE//Whitelisted as restricted is broken. appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) has_organ = list( //Same organ list as tajarans. O_HEART = /obj/item/organ/internal/heart, @@ -411,7 +411,7 @@ spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) flesh_color = "#AFA59E" //Gray-ish. Not sure if this is really needed, but eh. base_color = "#333333" //Blackish-gray @@ -479,7 +479,7 @@ flesh_color = "#AFA59E" base_color = "#777777" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) heat_discomfort_strings = list( "Your fur prickles in the heat.", diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index 6d76b5295d..76c8ffccf5 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -45,7 +45,7 @@ flesh_color = "#AFA59E" base_color = "#777777" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) heat_discomfort_strings = list( "Your fur prickles in the heat.", @@ -108,7 +108,7 @@ primitive_form = "Sobaka" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR @@ -158,7 +158,7 @@ primitive_form = "Sparra" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR @@ -213,7 +213,7 @@ blood_color = "#240bc4" color_mult = 1 - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) heat_discomfort_strings = list( "Your fur prickles in the heat.", @@ -260,7 +260,7 @@ spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) flesh_color = "#966464" base_color = "#B43214" @@ -277,8 +277,14 @@ color_mult = 1 min_age = 18 gluttonous = 0 +<<<<<<< HEAD inherent_verbs = list(/mob/living/proc/shred_limb) genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) +||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix + genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) +======= + genders = list(MALE, FEMALE, PLURAL, NEUTER) +>>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix descriptors = list() //CHOMPSedit: link to our wiki @@ -294,10 +300,18 @@ gluttonous = 0 //Moving this here so I don't have to fix this conflict every time polaris glances at station.dm inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) heat_discomfort_level = 295 //Prevents heat discomfort spam at 20c +<<<<<<< HEAD //CHOMPSedit: links to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Tajaran" genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) +||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix + genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + wikilink="https://wiki.vore-station.net/Tajaran" +======= + genders = list(MALE, FEMALE, PLURAL, NEUTER) + wikilink="https://wiki.vore-station.net/Tajaran" +>>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix agility = 90 /datum/species/skrell @@ -308,16 +322,24 @@ min_age = 18 reagent_tag = null assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) +<<<<<<< HEAD //CHOMPedit: link to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Skrell" genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) +||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix + genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + wikilink="https://wiki.vore-station.net/Skrell" +======= + genders = list(MALE, FEMALE, PLURAL, NEUTER) + wikilink="https://wiki.vore-station.net/Skrell" +>>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix /datum/species/zaddat spawn_flags = SPECIES_CAN_JOIN min_age = 18 gluttonous = 0 - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) descriptors = list() //CHOMPedit: link to our wiki @@ -334,9 +356,17 @@ /datum/species/diona spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE //CHOMPStation Edit TFF 20/1/20 - restore whitelist requirement min_age = 18 +<<<<<<< HEAD //CHOMPedit: link to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Diona" genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) +||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix + genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + wikilink="https://wiki.vore-station.net/Diona" +======= + genders = list(MALE, FEMALE, PLURAL, NEUTER) + wikilink="https://wiki.vore-station.net/Diona" +>>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix /datum/species/teshari mob_size = MOB_SMALL //YW Edit: changed from MOB_MEDIUM to MOB_SMALL @@ -349,7 +379,7 @@ push_flags = ~HEAVY //Allows them to use micro step code. swap_flags = ~HEAVY gluttonous = 0 - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) descriptors = list() //CHOMPedit: link to our wiki @@ -374,7 +404,7 @@ deform = 'icons/mob/human_races/r_def_human_vr.dmi' appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR min_age = 18 - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) base_color = "#EECEB3" //CHOMPedit: link to our wiki @@ -409,7 +439,7 @@ datum/species/harpy secondary_langs = list(LANGUAGE_BIRDSONG) name_language = null color_mult = 1 - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) inherent_verbs = list(/mob/living/proc/flying_toggle,/mob/living/proc/start_wings_hovering) min_age = 18 @@ -514,7 +544,7 @@ datum/species/harpy speech_bubble_appearance = "ghost" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) breath_type = null poison_type = null @@ -578,7 +608,7 @@ datum/species/harpy //primitive_form = "" //We don't have fennec-monkey sprites. spawn_flags = SPECIES_IS_RESTRICTED appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) flesh_color = "#AFA59E" base_color = "#333333" @@ -621,7 +651,7 @@ datum/species/harpy spawn_flags = SPECIES_IS_RESTRICTED appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) + genders = list(MALE, FEMALE, PLURAL, NEUTER) blood_color = "#12ff12" flesh_color = "#201730" From ee29b120ad9f2c42872bcd35c5e0a29b61ada5de Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sun, 24 Jan 2021 01:46:10 -0500 Subject: [PATCH 10/36] Merge pull request #9511 from VOREStation/upstream-merge-7800 [MIRROR] Fixes discarding cards onto walls --- code/modules/games/cards.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm index ce13864e03..b3909968ba 100644 --- a/code/modules/games/cards.dm +++ b/code/modules/games/cards.dm @@ -343,7 +343,8 @@ H.update_icon() src.update_icon() usr.visible_message("\The [usr] plays \the [discarding].") - H.loc = get_step(usr,usr.dir) + H.loc = get_turf(usr) + H.Move(get_step(usr,usr.dir)) if(!cards.len) qdel(src) From 5211edc9c04711190b2ca4d369bb6d140d79d106 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sun, 24 Jan 2021 01:54:04 -0500 Subject: [PATCH 12/36] Merge pull request #9573 from VOREStation/upstream-merge-7786 [MIRROR] Gadgets & Gizmos --- code/__defines/misc.dm | 2 + code/datums/autolathe/devices.dm | 6 + code/datums/autolathe/tools.dm | 5 + code/datums/uplink/tools.dm | 6 + code/datums/wires/mines.dm | 24 +- code/game/machinery/deployable.dm | 103 -------- code/game/objects/effects/mines.dm | 113 +++++++- code/game/objects/items/devices/spy_bug.dm | 17 ++ .../game/objects/items/stacks/matter_synth.dm | 3 + code/game/objects/items/stacks/sandbags.dm | 158 ++++++++++++ .../weapons/material/material_weapons.dm | 2 + code/game/objects/items/weapons/traps.dm | 241 ++++++++++++++++++ code/game/objects/random/mapping.dm | 2 + code/game/objects/structures/barricades.dm | 185 ++++++++++++++ code/modules/materials/material_recipes.dm | 5 +- code/modules/materials/materials.dm | 13 + code/modules/mob/_modifiers/modifiers_misc.dm | 12 +- .../silicon/robot/robot_modules/syndicate.dm | 6 + code/modules/power/cells/esoteric_cells.dm | 74 ++++++ code/modules/projectiles/projectile/beams.dm | 4 + icons/effects/effects.dmi | Bin 434919 -> 436292 bytes icons/obj/power.dmi | Bin 86496 -> 86780 bytes icons/obj/sandbags.dmi | Bin 0 -> 1628 bytes icons/obj/trap.dmi | Bin 0 -> 1824 bytes vorestation.dme | 3 + 25 files changed, 873 insertions(+), 111 deletions(-) create mode 100644 code/game/objects/items/stacks/sandbags.dm create mode 100644 code/game/objects/structures/barricades.dm create mode 100644 code/modules/power/cells/esoteric_cells.dm create mode 100644 icons/obj/sandbags.dmi create mode 100644 icons/obj/trap.dmi diff --git a/code/__defines/misc.dm b/code/__defines/misc.dm index fba42c15fd..69e949e495 100644 --- a/code/__defines/misc.dm +++ b/code/__defines/misc.dm @@ -157,6 +157,8 @@ #define MAT_GRAPHITE "graphite" #define MAT_LEATHER "leather" #define MAT_CHITIN "chitin" +#define MAT_CLOTH "cloth" +#define MAT_SYNCLOTH "syncloth" #define SHARD_SHARD "shard" #define SHARD_SHRAPNEL "shrapnel" diff --git a/code/datums/autolathe/devices.dm b/code/datums/autolathe/devices.dm index 9c6ab5bb97..eed4839159 100644 --- a/code/datums/autolathe/devices.dm +++ b/code/datums/autolathe/devices.dm @@ -26,6 +26,12 @@ name = "mechanical trap" path =/obj/item/weapon/beartrap +/datum/category_item/autolathe/devices/barbedwire + name = "barbed wire" + path = /obj/item/weapon/material/barbedwire + hidden = 1 + resources = list(DEFAULT_WALL_MATERIAL = 10000) + /datum/category_item/autolathe/devices/electropack name = "electropack" path =/obj/item/device/radio/electropack diff --git a/code/datums/autolathe/tools.dm b/code/datums/autolathe/tools.dm index 9e9a87ea71..9b88a496fa 100644 --- a/code/datums/autolathe/tools.dm +++ b/code/datums/autolathe/tools.dm @@ -48,6 +48,11 @@ path = /obj/item/weapon/reagent_containers/spray resources = list(MAT_PLASTIC = 2000) +/datum/category_item/autolathe/devices/slowwire + name = "snare wire" + path = /obj/item/weapon/material/barbedwire/plastic + resources = list(MAT_PLASTIC = 10000) + /datum/category_item/autolathe/tools/spraynozzle name = "spray nozzle" path = /obj/item/weapon/reagent_containers/spray diff --git a/code/datums/uplink/tools.dm b/code/datums/uplink/tools.dm index 51d7ec7cd2..eee41e9699 100644 --- a/code/datums/uplink/tools.dm +++ b/code/datums/uplink/tools.dm @@ -92,6 +92,12 @@ desc = "A device which is capable of disrupting subspace communications, preventing the use of headsets, PDAs, and communicators within \ a radius of seven meters. It runs off weapon cells, which can be replaced as needed. One cell will last for approximately ten minutes." +/datum/uplink_item/item/tools/wall_elecrtifier + name = "Wall Electrifier" + item_cost = 10 + path = /obj/item/weapon/cell/spike + desc = "A modified powercell which will electrify walls and reinforced floors in a 3x3 tile range around it. Always active." + /datum/uplink_item/item/tools/emag name = "Cryptographic Sequencer" item_cost = 30 diff --git a/code/datums/wires/mines.dm b/code/datums/wires/mines.dm index 209fcc4c30..5e757ad16c 100644 --- a/code/datums/wires/mines.dm +++ b/code/datums/wires/mines.dm @@ -1,5 +1,5 @@ /datum/wires/mines - wire_count = 6 + wire_count = 7 randomize = TRUE holder_type = /obj/effect/mine proper_name = "Explosive Wires" @@ -7,6 +7,7 @@ /datum/wires/mines/New(atom/_holder) wires = list(WIRE_EXPLODE, WIRE_EXPLODE_DELAY, WIRE_DISARM, WIRE_BADDISARM) return ..() +#define WIRE_TRAP 64 /datum/wires/mines/get_status() . = ..() @@ -29,7 +30,13 @@ if(WIRE_DISARM) C.visible_message("[bicon(C)] *click!*", "[bicon(C)] *click!*") - new C.mineitemtype(get_turf(C)) + var/obj/effect/mine/MI = new C.mineitemtype(get_turf(C)) + + if(C.trap) + MI.trap = C.trap + C.trap = null + MI.trap.forceMove(MI) + spawn(0) qdel(C) @@ -37,6 +44,15 @@ C.visible_message("[bicon(C)] *BEEPBEEPBEEP*", "[bicon(C)] *BEEPBEEPBEEP*") spawn(20) C.explode() + + if(WIRE_TRAP) + C.visible_message("[bicon(C)] *click!*", "[bicon(C)] *click!*") + + if(mend) + C.visible_message("[bicon(C)] - The mine recalibrates[C.camo_net ? ", revealing \the [C.trap] inside." : "."]") + + C.alpha = 255 + ..() /datum/wires/mines/on_pulse(wire) @@ -57,6 +73,10 @@ if(WIRE_BADDISARM) C.visible_message("[bicon(C)] *ping*", "[bicon(C)] *ping*") + + if(WIRE_TRAP) + C.visible_message("[bicon(C)] *ping*", "[bicon(C)] *ping*") + ..() /datum/wires/mines/interactable(mob/user) diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index db27559796..64a3cc1fc7 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -1,111 +1,8 @@ /* CONTAINS: Deployable items -Barricades */ -//Barricades! -/obj/structure/barricade - name = "barricade" - desc = "This space is blocked off by a barricade." - icon = 'icons/obj/structures.dmi' - icon_state = "barricade" - anchored = 1.0 - density = 1.0 - var/health = 100 - var/maxhealth = 100 - var/datum/material/material - -/obj/structure/barricade/New(var/newloc, var/material_name) - ..(newloc) - if(!material_name) - material_name = "wood" - material = get_material_by_name("[material_name]") - if(!material) - qdel(src) - return - name = "[material.display_name] barricade" - desc = "This space is blocked off by a barricade made of [material.display_name]." - color = material.icon_colour - maxhealth = material.integrity - health = maxhealth - -/obj/structure/barricade/get_material() - return material - -/obj/structure/barricade/attackby(obj/item/W as obj, mob/user as mob) - user.setClickCooldown(user.get_attack_speed(W)) - if(istype(W, /obj/item/stack)) - var/obj/item/stack/D = W - if(D.get_material_name() != material.name) - return //hitting things with the wrong type of stack usually doesn't produce messages, and probably doesn't need to. - if(health < maxhealth) - if(D.get_amount() < 1) - to_chat(user, "You need one sheet of [material.display_name] to repair \the [src].") - return - visible_message("[user] begins to repair \the [src].") - if(do_after(user,20) && health < maxhealth) - if(D.use(1)) - health = maxhealth - visible_message("[user] repairs \the [src].") - return - return - else - switch(W.damtype) - if("fire") - health -= W.force * 1 - if("brute") - health -= W.force * 0.75 - if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) - playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) - else - playsound(src, 'sound/weapons/smash.ogg', 50, 1) - CheckHealth() - ..() - -/obj/structure/barricade/proc/CheckHealth() - if(health <= 0) - dismantle() - return - -/obj/structure/barricade/take_damage(var/damage) - health -= damage - CheckHealth() - return - -/obj/structure/barricade/attack_generic(var/mob/user, var/damage, var/attack_verb) - visible_message("[user] [attack_verb] the [src]!") - if(material == get_material_by_name("resin")) - playsound(src, 'sound/effects/attackblob.ogg', 100, 1) - else if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) - playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) - else - playsound(src, 'sound/weapons/smash.ogg', 50, 1) - user.do_attack_animation(src) - health -= damage - CheckHealth() - return - -/obj/structure/barricade/proc/dismantle() - material.place_dismantled_product(get_turf(src)) - visible_message("\The [src] falls apart!") - qdel(src) - return - -/obj/structure/barricade/ex_act(severity) - switch(severity) - if(1.0) - dismantle() - if(2.0) - health -= 25 - CheckHealth() - -/obj/structure/barricade/CanPass(atom/movable/mover, turf/target)//So bullets will fly over and stuff. - if(istype(mover) && mover.checkpass(PASSTABLE)) - return TRUE - return FALSE - -//Actual Deployable machinery stuff /obj/machinery/deployable name = "deployable" desc = "deployable" diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm index c522b4300e..c5e1f26c61 100644 --- a/code/game/objects/effects/mines.dm +++ b/code/game/objects/effects/mines.dm @@ -7,16 +7,32 @@ icon_state = "uglymine" var/triggered = 0 var/smoke_strength = 3 - var/mineitemtype = /obj/item/weapon/mine + var/obj/item/weapon/mine/mineitemtype = /obj/item/weapon/mine var/panel_open = 0 var/datum/wires/mines/wires = null register_as_dangerous_object = TRUE + var/camo_net = FALSE // Will the mine 'cloak' on deployment? + + // The trap item will be triggered in some manner when detonating. Default only checks for grenades. + var/obj/item/trap = null + /obj/effect/mine/New() icon_state = "uglyminearmed" wires = new(src) + if(ispath(trap)) + trap = new trap(src) + +/obj/effect/mine/Initialize() + ..() + + if(camo_net) + alpha = 50 + /obj/effect/mine/Destroy() + if(trap) + QDEL_NULL(trap) qdel_null(wires) return ..() @@ -25,11 +41,33 @@ triggered = 1 s.set_up(3, 1, src) s.start() - explosion(loc, 0, 2, 3, 4) //land mines are dangerous, folks. - visible_message("\The [src.name] detonates!") + + if(trap) + trigger_trap(M) + visible_message("\The [src.name] flashes as it is triggered!") + + else + explosion(loc, 0, 2, 3, 4) //land mines are dangerous, folks. + visible_message("\The [src.name] detonates!") + qdel(s) qdel(src) +/obj/effect/mine/proc/trigger_trap(var/mob/living/victim) + if(istype(trap, /obj/item/weapon/grenade)) + var/obj/item/weapon/grenade/G = trap + trap = null + G.forceMove(get_turf(src)) + if(victim.ckey) + msg_admin_attack("[key_name_admin(victim)] stepped on \a [src.name], triggering [trap]") + G.activate() + + if(istype(trap, /obj/item/device/transfer_valve)) + var/obj/item/device/transfer_valve/TV = trap + trap = null + TV.forceMove(get_turf(src)) + TV.toggle_valve() + /obj/effect/mine/bullet_act() if(prob(50)) explode() @@ -63,6 +101,9 @@ "You very carefully screw the mine's panel [panel_open ? "open" : "closed"].") playsound(src, W.usesound, 50, 1) + // Panel open, stay uncloaked, or uncloak if already cloaked. If you don't cloak on place, ignore it and just be normal alpha. + alpha = camo_net ? (panel_open ? 255 : 50) : 255 + else if((W.is_wirecutter() || istype(W, /obj/item/device/multitool)) && panel_open) interact(user) else @@ -74,6 +115,9 @@ user.set_machine(src) wires.Interact(user) +/obj/effect/mine/camo + camo_net = TRUE + /obj/effect/mine/dnascramble mineitemtype = /obj/item/weapon/mine/dnascramble @@ -193,6 +237,9 @@ spawn(0) qdel(src) +/obj/effect/mine/emp/camo + camo_net = TRUE + /obj/effect/mine/incendiary mineitemtype = /obj/item/weapon/mine/incendiary @@ -208,6 +255,26 @@ spawn(0) qdel(src) +/obj/effect/mine/gadget + mineitemtype = /obj/item/weapon/mine/gadget + +/obj/effect/mine/gadget/explode(var/mob/living/M) + var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread() + triggered = 1 + s.set_up(3, 1, src) + s.start() + + if(trap) + trigger_trap(M) + visible_message("\The [src.name] flashes as it is triggered!") + + else + explosion(loc, 0, 0, 2, 2) + visible_message("\The [src.name] detonates!") + + qdel(s) + qdel(src) + ///////////////////////////////////////////// // The held item version of the above mines ///////////////////////////////////////////// @@ -219,6 +286,10 @@ var/countdown = 10 var/minetype = /obj/effect/mine //This MUST be an /obj/effect/mine type, or it'll runtime. + var/obj/item/trap = null + + var/list/allowed_gadgets = null + /obj/item/weapon/mine/attack_self(mob/user as mob) // You do not want to move or throw a land mine while priming it... Explosives + Sudden Movement = Bad Times add_fingerprint(user) msg_admin_attack("[key_name_admin(user)] primed \a [src]") @@ -231,11 +302,39 @@ prime(user, TRUE) return +/obj/item/weapon/mine/attackby(obj/item/W as obj, mob/living/user as mob) + if(W.is_screwdriver() && trap) + to_chat(user, "You begin removing \the [trap].") + if(do_after(user, 10 SECONDS)) + to_chat(user, "You finish disconnecting the mine's trigger.") + trap.forceMove(get_turf(src)) + trap = null + return + + if(LAZYLEN(allowed_gadgets) && !trap) + var/allowed = FALSE + + for(var/path in allowed_gadgets) + if(istype(W, path)) + allowed = TRUE + break + + if(allowed) + user.drop_from_inventory(W) + W.forceMove(src) + trap = W + + ..() + /obj/item/weapon/mine/proc/prime(mob/user as mob, var/explode_now = FALSE) visible_message("\The [src.name] beeps as the priming sequence completes.") var/obj/effect/mine/R = new minetype(get_turf(src)) src.transfer_fingerprints_to(R) R.add_fingerprint(user) + if(trap) + R.trap = trap + trap = null + R.trap.forceMove(R) if(explode_now) R.explode(user) spawn(0) @@ -286,8 +385,14 @@ desc = "A small explosive mine with a fire symbol on the side." minetype = /obj/effect/mine/incendiary +/obj/item/weapon/mine/gadget + name = "gadget mine" + desc = "A small pressure-triggered device. If no component is added, the internal release bolts will detonate in unison when triggered." + + allowed_gadgets = list(/obj/item/weapon/grenade, /obj/item/device/transfer_valve) + // This tells AI mobs to not be dumb and step on mines willingly. /obj/item/weapon/mine/is_safe_to_step(mob/living/L) if(!L.hovering) return FALSE - return ..() \ No newline at end of file + return ..() diff --git a/code/game/objects/items/devices/spy_bug.dm b/code/game/objects/items/devices/spy_bug.dm index 03d0bdd60c..60ca5cc1a2 100644 --- a/code/game/objects/items/devices/spy_bug.dm +++ b/code/game/objects/items/devices/spy_bug.dm @@ -88,6 +88,14 @@ if(get_dist(user, src) == 0) . += "It has a tiny camera inside. Needs to be both configured and brought in contact with monitor device to be fully functional." +/obj/item/device/camerabug/update_icon() + ..() + + if(anchored) // Standard versions are relatively obvious if not hidden in a container. Anchoring them is advised, to disguise them. + alpha = 50 + else + alpha = 255 + /obj/item/device/camerabug/attackby(obj/item/W as obj, mob/living/user as mob) if(istype(W, /obj/item/device/bug_monitor)) var/obj/item/device/bug_monitor/SM = W @@ -101,6 +109,15 @@ linkedmonitor = null else to_chat(user, "Error: The device is linked to another monitor.") + + else if(W.is_wrench() && user.a_intent != I_HURT) + if(isturf(loc)) + anchored = !anchored + + to_chat(user, "You [anchored ? "" : "un"]secure \the [src].") + + update_icon() + return else if(W.force >= 5) visible_message("\The [src] lens shatters!") diff --git a/code/game/objects/items/stacks/matter_synth.dm b/code/game/objects/items/stacks/matter_synth.dm index d92cd5f8dd..02c6518374 100644 --- a/code/game/objects/items/stacks/matter_synth.dm +++ b/code/game/objects/items/stacks/matter_synth.dm @@ -56,3 +56,6 @@ name = "Bandage Synthesizer" max_energy = 10 recharge_rate = 1 + +/datum/matter_synth/cloth + name = "Cloth Synthesizer" diff --git a/code/game/objects/items/stacks/sandbags.dm b/code/game/objects/items/stacks/sandbags.dm new file mode 100644 index 0000000000..c4e755c485 --- /dev/null +++ b/code/game/objects/items/stacks/sandbags.dm @@ -0,0 +1,158 @@ +/obj/item/stack/sandbags + name = "sandbag" + desc = "Filled sandbags. Fortunately pre-filled." + singular_name = "sandbag" + icon = 'icons/obj/sandbags.dmi' + icon_state = "sandbag" + w_class = ITEMSIZE_LARGE + force = 10.0 + throwforce = 20.0 + throw_speed = 5 + throw_range = 3 + drop_sound = 'sound/items/drop/clothing.ogg' + pickup_sound = 'sound/items/pickup/clothing.ogg' + matter = list(MAT_CLOTH = SHEET_MATERIAL_AMOUNT * 2) + max_amount = 30 + attack_verb = list("hit", "bludgeoned", "pillowed") + no_variants = TRUE + stacktype = /obj/item/stack/sandbags + + pass_color = TRUE + + var/bag_material = "cloth" + +/obj/item/stack/sandbags/cyborg + name = "sandbag synthesizer" + desc = "A device that makes filled sandbags. Don't ask how." + gender = NEUTER + matter = null + uses_charge = 1 + charge_costs = list(500) + stacktype = /obj/item/stack/sandbags + + bag_material = MAT_SYNCLOTH + +/obj/item/stack/sandbags/New(var/newloc, var/amt, var/bag_mat) + ..() + recipes = sandbag_recipes + update_icon() + + if(bag_mat) + bag_material = bag_mat + + var/datum/material/M = get_material_by_name("[bag_material]") + if(!M) + qdel(src) + return + + color = M.icon_colour + +/obj/item/stack/sandbags/update_icon() + var/amount = get_amount() + + slowdown = round(amount / 10, 0.1) + +var/global/list/datum/stack_recipe/sandbag_recipes = list( \ + new/datum/stack_recipe("barricade", /obj/structure/barricade/sandbag, 3, time = 5 SECONDS, one_per_turf = 1, on_floor = 1, pass_stack_color = TRUE)) + +/obj/item/stack/sandbags/produce_recipe(datum/stack_recipe/recipe, var/quantity, mob/user) + var/required = quantity*recipe.req_amount + var/produced = min(quantity*recipe.res_amount, recipe.max_res_amount) + + if (!can_use(required)) + if (produced>1) + to_chat(user, "You haven't got enough [src] to build \the [produced] [recipe.title]\s!") + else + to_chat(user, "You haven't got enough [src] to build \the [recipe.title]!") + return + + if (recipe.one_per_turf && (locate(recipe.result_type) in user.loc)) + to_chat(user, "There is another [recipe.title] here!") + return + + if (recipe.on_floor && !isfloor(user.loc)) + to_chat(user, "\The [recipe.title] must be constructed on the floor!") + return + + if (recipe.time) + to_chat(user, "Building [recipe.title] ...") + if (!do_after(user, recipe.time)) + return + + if (use(required)) + var/atom/O = new recipe.result_type(user.loc, bag_material) + + if(istype(O, /obj)) + var/obj/Ob = O + + if(LAZYLEN(Ob.matter)) // Law of equivalent exchange. + Ob.matter.Cut() + + else + Ob.matter = list() + + var/mattermult = istype(Ob, /obj/item) ? min(2000, 400 * Ob.w_class) : 2000 + + Ob.matter[recipe.use_material] = mattermult / produced * required + + O.set_dir(user.dir) + O.add_fingerprint(user) + + if (istype(O, /obj/item/stack)) + var/obj/item/stack/S = O + S.amount = produced + S.add_to_stacks(user) + + if (istype(O, /obj/item/weapon/storage)) //BubbleWrap - so newly formed boxes are empty + for (var/obj/item/I in O) + qdel(I) + + if ((pass_color || recipe.pass_color)) + if(!color) + if(recipe.use_material) + var/datum/material/MAT = get_material_by_name(recipe.use_material) + if(MAT.icon_colour) + O.color = MAT.icon_colour + else + return + else + O.color = color + +// Empty bags. Yes, you need to fill them. + +/obj/item/stack/emptysandbag + name = "sandbag" + desc = "Empty sandbags. You know what must be done." + singular_name = "sandbag" + icon = 'icons/obj/sandbags.dmi' + icon_state = "sandbag_e" + w_class = ITEMSIZE_LARGE + + strict_color_stacking = TRUE + max_amount = 30 + stacktype = /obj/item/stack/emptysandbag + + pass_color = TRUE + + var/bag_material = "cloth" + +/obj/item/stack/emptysandbag/New(var/newloc, var/amt, var/bag_mat) + ..(newloc, amt) + + if(bag_mat) + bag_material = bag_mat + + var/datum/material/M = get_material_by_name("[bag_material]") + if(!M) + qdel(src) + return + + color = M.icon_colour + +/obj/item/stack/emptysandbag/attack_self(var/mob/user) + while(do_after(user, 1 SECOND) && can_use(1) && istype(get_turf(src), /turf/simulated/floor/outdoors)) + use(1) + var/obj/item/stack/sandbags/SB = new (get_turf(src), 1, bag_material) + SB.color = color + if(user) + to_chat(user, "You fill a sandbag.") diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index 963f1d3683..4948adf425 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -99,6 +99,8 @@ /obj/item/weapon/material/proc/check_health(var/consumed) if(health<=0) + health = 0 + if(fragile) shatter(consumed) else if(!dulled && can_dull) diff --git a/code/game/objects/items/weapons/traps.dm b/code/game/objects/items/weapons/traps.dm index 0ec9bc7af3..c583ce1eef 100644 --- a/code/game/objects/items/weapons/traps.dm +++ b/code/game/objects/items/weapons/traps.dm @@ -1,3 +1,9 @@ + +/* + * Beartraps. + * Buckles crossing individuals, doing moderate brute damage. + */ + /obj/item/weapon/beartrap name = "mechanical trap" throw_speed = 2 @@ -158,3 +164,238 @@ color = "#C9DCE1" origin_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_PHORON = 2, TECH_ARCANE = 1) + +/* + * Barbed-Wire. + * Slows individuals crossing it. Barefoot individuals will be cut. Can be electrified by placing over a cable node. + */ + +/obj/item/weapon/material/barbedwire + name = "barbed wire" + desc = "A coil of wire." + icon = 'icons/obj/trap.dmi' + icon_state = "barbedwire" + anchored = FALSE + layer = TABLE_LAYER + w_class = ITEMSIZE_LARGE + explosion_resistance = 1 + can_dull = TRUE + fragile = TRUE + force_divisor = 0.20 + thrown_force_divisor = 0.25 + + sharp = TRUE + +/obj/item/weapon/material/barbedwire/set_material(var/new_material) + ..() + + if(!QDELETED(src)) + health = round(material.integrity / 3) + name = (material.get_edge_damage() * force_divisor > 15) ? "[material.display_name] razor wire" : "[material.display_name] [initial(name)]" + +/obj/item/weapon/material/barbedwire/proc/can_use(mob/user) + return (user.IsAdvancedToolUser() && !issilicon(user) && !user.stat && !user.restrained()) + +/obj/item/weapon/material/barbedwire/attack_hand(mob/user as mob) + if(anchored && can_use(user)) + user.visible_message( + "[user] starts to collect \the [src].", + "You begin collecting \the [src]!", + "You hear the sound of rustling [material.name]." + ) + playsound(src, 'sound/machines/click.ogg', 50, 1) + + if(do_after(user, health)) + user.visible_message( + "[user] has collected \the [src].", + "You have collected \the [src]!" + ) + anchored = 0 + update_icon() + else + ..() + +/obj/item/weapon/material/barbedwire/attack_self(mob/user as mob) + ..() + if(!anchored && can_use(user)) + user.visible_message( + "[user] starts to deploy \the [src].", + "You begin deploying \the [src]!", + "You hear the rustling of [material.name]." + ) + + if (do_after(user, 60)) + user.visible_message( + "[user] has deployed \the [src].", + "You have deployed \the [src]!", + "You hear the rustling of [material.name]." + ) + playsound(src, 'sound/items/Wirecutter.ogg',70, 1) + spawn(2) + playsound(src, 'sound/items/Wirecutter.ogg',40, 1) + user.drop_from_inventory(src) + forceMove(get_turf(src)) + anchored = 1 + update_icon() + +/obj/item/weapon/material/barbedwire/attackby(obj/item/W as obj, mob/user as mob) + if(!istype(W)) + return + + if((W.flags & NOCONDUCT) || !shock(user, 70, pick(BP_L_HAND, BP_R_HAND))) + user.setClickCooldown(user.get_attack_speed(W)) + user.do_attack_animation(src) + playsound(src, 'sound/effects/grillehit.ogg', 40, 1) + + var/inc_damage = W.force + + if(W.is_wirecutter()) + if(!shock(user, 100, pick(BP_L_HAND, BP_R_HAND))) + playsound(src, W.usesound, 100, 1) + inc_damage *= 3 + + if(W.damtype != BRUTE) + inc_damage *= 0.3 + + health -= inc_damage + + check_health() + + ..() + +/obj/item/weapon/material/barbedwire/update_icon() + ..() + + if(anchored) + icon_state = "[initial(icon_state)]-out" + else + icon_state = "[initial(icon_state)]" + +/obj/item/weapon/material/barbedwire/Crossed(atom/movable/AM as mob|obj) + if(AM.is_incorporeal()) + return + if(anchored && isliving(AM)) + var/mob/living/L = AM + if(L.m_intent == "run") + L.visible_message( + "[L] steps in \the [src].", + "You step in \the [src]!", + "You hear a sharp rustling!" + ) + attack_mob(L) + update_icon() + ..() + +/obj/item/weapon/material/barbedwire/proc/shock(mob/user as mob, prb, var/target_zone = BP_TORSO) + if(!anchored || health == 0) // anchored/destroyed grilles are never connected + return 0 + if(material.conductivity <= 0) + return 0 + if(!prob(prb)) + return 0 + if(!in_range(src, user))//To prevent TK and mech users from getting shocked + return 0 + var/turf/T = get_turf(src) + var/obj/structure/cable/C = T.get_cable_node() + if(C) + if(C.powernet) + var/datum/powernet/PN = C.powernet + + if(PN) + PN.trigger_warning() + + var/PN_damage = PN.get_electrocute_damage() * (material.conductivity / 50) + + var/drained_energy = PN_damage * 10 / CELLRATE + + PN.draw_power(drained_energy) + + if(ishuman(user)) + var/mob/living/carbon/human/H = user + + var/obj/item/organ/external/affected = H.get_organ(check_zone(target_zone)) + + H.electrocute_act(PN_damage, src, H.get_siemens_coefficient_organ(affected)) + + else + if(isliving(user)) + var/mob/living/L = user + L.electrocute_act(PN_damage, src, 0.8) + + var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread + s.set_up(3, 1, src) + s.start() + if(user.stunned) + return 1 + else + return 0 + return 0 + +/obj/item/weapon/material/barbedwire/proc/attack_mob(mob/living/L) + var/target_zone + if(L.lying) + target_zone = ran_zone() + else + target_zone = pick("l_foot", "r_foot", "l_leg", "r_leg") + + //armour + var/blocked = L.run_armor_check(target_zone, "melee") + var/soaked = L.get_armor_soak(target_zone, "melee") + + if(blocked >= 100) + return + + if(soaked >= 30) + return + + if(L.buckled) //wheelchairs, office chairs, rollerbeds + return + + shock(L, 100, target_zone) + + L.add_modifier(/datum/modifier/entangled, 3 SECONDS) + + if(!L.apply_damage(force * (issilicon(L) ? 0.25 : 1), BRUTE, target_zone, blocked, soaked, src, sharp, edge)) + return + + playsound(src, 'sound/effects/glass_step.ogg', 50, 1) // not sure how to handle metal shards with sounds + if(ishuman(L)) + var/mob/living/carbon/human/H = L + + if(H.species.siemens_coefficient<0.5) //Thick skin. + return + + if( H.shoes || ( H.wear_suit && (H.wear_suit.body_parts_covered & FEET) ) ) + return + + if(H.species.flags & NO_MINOR_CUT) + return + + to_chat(H, "You step directly on \the [src]!") + + var/list/check = list("l_foot", "r_foot") + while(check.len) + var/picked = pick(check) + var/obj/item/organ/external/affecting = H.get_organ(picked) + if(affecting) + if(affecting.robotic >= ORGAN_ROBOT) + return + if(affecting.take_damage(force, 0)) + H.UpdateDamageIcon() + H.updatehealth() + if(affecting.organ_can_feel_pain()) + H.Weaken(3) + return + check -= picked + + if(material.is_brittle() && prob(material.hardness)) + health = 0 + else if(!prob(material.hardness)) + health-- + check_health() + + return + +/obj/item/weapon/material/barbedwire/plastic + name = "snare wire" + default_material = MAT_PLASTIC diff --git a/code/game/objects/random/mapping.dm b/code/game/objects/random/mapping.dm index 16be9dff94..4d40578c1e 100644 --- a/code/game/objects/random/mapping.dm +++ b/code/game/objects/random/mapping.dm @@ -92,6 +92,8 @@ return pick(prob(30);/obj/effect/mine, prob(25);/obj/effect/mine/frag, prob(25);/obj/effect/mine/emp, + prob(15);/obj/effect/mine/camo, + prob(15);/obj/effect/mine/emp/camo, prob(10);/obj/effect/mine/stun, prob(10);/obj/effect/mine/incendiary,) diff --git a/code/game/objects/structures/barricades.dm b/code/game/objects/structures/barricades.dm new file mode 100644 index 0000000000..34ab6025c7 --- /dev/null +++ b/code/game/objects/structures/barricades.dm @@ -0,0 +1,185 @@ +//Barricades! +/obj/structure/barricade + name = "barricade" + desc = "This space is blocked off by a barricade." + icon = 'icons/obj/structures.dmi' + icon_state = "barricade" + anchored = 1.0 + density = 1.0 + var/health = 100 + var/maxhealth = 100 + var/datum/material/material + +/obj/structure/barricade/New(var/newloc, var/material_name) + ..(newloc) + if(!material_name) + material_name = "wood" + material = get_material_by_name("[material_name]") + if(!material) + qdel(src) + return + name = "[material.display_name] barricade" + desc = "This space is blocked off by a barricade made of [material.display_name]." + color = material.icon_colour + maxhealth = material.integrity + health = maxhealth + +/obj/structure/barricade/get_material() + return material + +/obj/structure/barricade/attackby(obj/item/W as obj, mob/user as mob) + user.setClickCooldown(user.get_attack_speed(W)) + if(istype(W, /obj/item/stack)) + var/obj/item/stack/D = W + if(D.get_material_name() != material.name) + return //hitting things with the wrong type of stack usually doesn't produce messages, and probably doesn't need to. + if(health < maxhealth) + if(D.get_amount() < 1) + to_chat(user, "You need one sheet of [material.display_name] to repair \the [src].") + return + visible_message("[user] begins to repair \the [src].") + if(do_after(user,20) && health < maxhealth) + if(D.use(1)) + health = maxhealth + visible_message("[user] repairs \the [src].") + return + return + else + switch(W.damtype) + if("fire") + health -= W.force * 1 + if("brute") + health -= W.force * 0.75 + if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) + playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) + else + playsound(src, 'sound/weapons/smash.ogg', 50, 1) + CheckHealth() + ..() + +/obj/structure/barricade/proc/CheckHealth() + if(health <= 0) + dismantle() + + health = min(health, maxhealth) + + return + +/obj/structure/barricade/take_damage(var/damage) + health -= damage + CheckHealth() + return + +/obj/structure/barricade/attack_generic(var/mob/user, var/damage, var/attack_verb) + visible_message("[user] [attack_verb] the [src]!") + if(material == get_material_by_name("resin")) + playsound(src, 'sound/effects/attackblob.ogg', 100, 1) + else if(material == (get_material_by_name(MAT_CLOTH) || get_material_by_name(MAT_SYNCLOTH))) + playsound(src, 'sound/items/drop/clothing.ogg', 100, 1) + else if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) + playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) + else + playsound(src, 'sound/weapons/smash.ogg', 50, 1) + user.do_attack_animation(src) + health -= damage + CheckHealth() + return + +/obj/structure/barricade/proc/dismantle() + material.place_dismantled_product(get_turf(src)) + visible_message("\The [src] falls apart!") + qdel(src) + return + +/obj/structure/barricade/ex_act(severity) + switch(severity) + if(1.0) + dismantle() + if(2.0) + health -= 25 + CheckHealth() + +/obj/structure/barricade/CanPass(atom/movable/mover, turf/target)//So bullets will fly over and stuff. + if(istype(mover) && mover.checkpass(PASSTABLE)) + return TRUE + return FALSE + +/obj/structure/barricade/sandbag + name = "sandbags" + desc = "Bags. Bags of sand. It's rough and coarse and somehow stays in the bag." + icon = 'icons/obj/sandbags.dmi' + icon_state = "blank" + +/obj/structure/barricade/sandbag/New(var/newloc, var/material_name) + if(!material_name) + material_name = "cloth" + ..(newloc, material_name) + material = get_material_by_name("[material_name]") + if(!material) + qdel(src) + return + name = "[material.display_name] [initial(name)]" + desc = "This space is blocked off by a barricade made of [material.display_name]." + color = null + maxhealth = material.integrity * 2 // These things are, commonly, used to stop bullets where possible. + health = maxhealth + update_connections(1) + +/obj/structure/barricade/sandbag/Destroy() + update_connections(1, src) + ..() + +/obj/structure/barricade/sandbag/dismantle() + update_connections(1, src) + material.place_dismantled_product(get_turf(src)) + visible_message("\The [src] falls apart!") + qdel(src) + return + +/obj/structure/barricade/sandbag/update_icon() + if(!material) + return + + cut_overlays() + var/image/I + + for(var/i = 1 to 4) + I = image('icons/obj/sandbags.dmi', "sandbags[connections[i]]", dir = 1<<(i-1)) + I.color = material.icon_colour + add_overlay(I) + + return + +/obj/structure/barricade/sandbag/update_connections(propagate = 0, var/obj/structure/barricade/sandbag/ignore = null) + if(!material) + return + var/list/dirs = list() + for(var/obj/structure/barricade/sandbag/S in orange(src, 1)) + if(!S.material) + continue + if(S == ignore) + continue + if(propagate >= 1) + S.update_connections(propagate - 1, ignore) + if(can_join_with(S)) + dirs += get_dir(src, S) + + connections = dirs_to_corner_states(dirs) + + update_icon() + +/obj/structure/barricade/sandbag/proc/can_join_with(var/obj/structure/barricade/sandbag/S) + if(material == S.material) + return 1 + return 0 + +/obj/structure/barricade/sandbag/CanPass(atom/movable/mover, turf/target) + . = ..() + + if(.) + if(istype(mover, /obj/item/projectile)) + var/obj/item/projectile/P = mover + + if(P.firer && get_dist(P.firer, src) > 1) // If you're firing from adjacent turfs, you are unobstructed. + if(P.armor_penetration < (material.protectiveness + material.hardness) || prob(33)) + return FALSE diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index c7a7c5fa39..4278436a97 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -28,6 +28,7 @@ recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/knife/plastic, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] blade", /obj/item/weapon/material/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("[display_name] defense wire", /obj/item/weapon/material/barbedwire, 10, time = 1 MINUTE, one_per_turf = 0, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) /datum/material/steel/generate_recipes() ..() @@ -223,7 +224,7 @@ /datum/material/cloth/generate_recipes() recipes = list() - recipes += new/datum/stack_recipe("woven net", /obj/item/weapon/material/fishing_net, 10, time = 30 SECONDS, pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("woven net", /obj/item/weapon/material/fishing_net, 10, time = 30 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") recipes += new/datum/stack_recipe("bedsheet", /obj/item/weapon/bedsheet, 10, time = 30 SECONDS, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("uniform", /obj/item/clothing/under/color/white, 8, time = 15 SECONDS, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("foot wraps", /obj/item/clothing/shoes/footwraps, 2, time = 5 SECONDS, pass_stack_color = TRUE) @@ -238,6 +239,7 @@ recipes += new/datum/stack_recipe("baggy pants", /obj/item/clothing/under/pants/baggy/white, 8, time = 10 SECONDS, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("belt pouch", /obj/item/weapon/storage/belt/fannypack/white, 25, time = 1 MINUTE, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("crude bandage", /obj/item/stack/medical/crude_pack, 1, time = 2 SECONDS, pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("empty sandbag", /obj/item/stack/emptysandbag, 2, time = 2 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") /datum/material/resin/generate_recipes() recipes = list() @@ -270,4 +272,5 @@ recipes += new/datum/stack_recipe("[display_name] ring", /obj/item/clothing/gloves/ring/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] bracelet", /obj/item/clothing/accessory/bracelet/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] armor plate", /obj/item/weapon/material/armor_plating, 1, time = 20, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("empty sandbag", /obj/item/stack/emptysandbag, 2, time = 2 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") recipes += new/datum/stack_recipe("whip", /obj/item/weapon/material/whip, 5, time = 15 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index c93c872672..2bac6e23d0 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -1010,6 +1010,19 @@ var/list/name_to_material pass_stack_colors = TRUE supply_conversion_value = 2 +/datum/material/cloth/syncloth + name = "syncloth" + stack_origin_tech = list(TECH_MATERIAL = 3, TECH_BIO = 2) + door_icon_base = "wood" + ignition_point = T0C+532 + melting_point = T0C+600 + integrity = 200 + protectiveness = 15 // 4% + flags = MATERIAL_PADDING + conductive = 0 + pass_stack_colors = TRUE + supply_conversion_value = 3 + /datum/material/cult name = "cult" display_name = "disturbing stone" diff --git a/code/modules/mob/_modifiers/modifiers_misc.dm b/code/modules/mob/_modifiers/modifiers_misc.dm index 3b9663d855..fee761cf30 100644 --- a/code/modules/mob/_modifiers/modifiers_misc.dm +++ b/code/modules/mob/_modifiers/modifiers_misc.dm @@ -426,4 +426,14 @@ the artifact triggers the rage. heat_protection = -0.5 cold_protection = -0.5 - siemens_coefficient = 1.5 \ No newline at end of file + siemens_coefficient = 1.5 + +/datum/modifier/entangled + name = "entangled" + desc = "Its hard to move." + + on_created_text = "You're caught in something! It's hard to move." + on_expired_text = "Your movement is freed." + stacks = MODIFIER_STACK_EXTEND + + slowdown = 2 diff --git a/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm b/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm index 7c6f22d6b9..fe39040432 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm @@ -37,6 +37,12 @@ src.modules += new /obj/item/weapon/pinpointer/shuttle/merc(src) src.modules += new /obj/item/weapon/melee/energy/sword(src) + var/datum/matter_synth/cloth = new /datum/matter_synth/cloth(40000) + synths += cloth + + var/obj/item/stack/sandbags/cyborg/SB = new /obj/item/stack/sandbags/cyborg(src) + SB.synths += list(cloth) + var/jetpack = new/obj/item/weapon/tank/jetpack/carbondioxide(src) src.modules += jetpack R.internals = jetpack diff --git a/code/modules/power/cells/esoteric_cells.dm b/code/modules/power/cells/esoteric_cells.dm new file mode 100644 index 0000000000..b45c19a783 --- /dev/null +++ b/code/modules/power/cells/esoteric_cells.dm @@ -0,0 +1,74 @@ + +/obj/item/weapon/cell/spike + name = "modified power cell" + desc = "A modified power cell sitting in a highly conductive chassis." + origin_tech = list(TECH_POWER = 2) + icon_state = "spikecell" + maxcharge = 10000 + matter = list(DEFAULT_WALL_MATERIAL = 1000, MAT_GLASS = 80, MAT_SILVER = 100) + self_recharge = TRUE + charge_amount = 150 + +/obj/item/weapon/cell/spike/process() + ..() + + var/turf/Center = get_turf(src) + + var/shock_count = 0 + for(var/turf/T in range(Center, 1)) + + if(prob(round(charge / 250)) && charge >= (maxcharge / 4)) + + if(locate(/obj/effect/temporary_effect/pulse/staticshock) in T) + continue + + var/conductive = FALSE + + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/WT = T + + if(WT.material.conductive) + conductive = TRUE + else if(WT.girder_material.conductive) + conductive = TRUE + else if(WT.reinf_material && WT.reinf_material.conductive) + conductive = TRUE + + if(istype(T, /turf/simulated/floor)) + var/turf/simulated/floor/F = T + if(istype(F.flooring, /decl/flooring/reinforced)) + conductive = TRUE + + if(conductive) + shock_count += 1 + new /obj/effect/temporary_effect/pulse/staticshock(T) + + if(shock_count) + while(shock_count) + use(200) + shock_count-- + +/obj/effect/temporary_effect/pulse/staticshock + name = "electric field" + desc = "Caution: Do not touch." + pulses_remaining = 10 + pulse_delay = 2 SECONDS + icon_state = "blue_static" + +/obj/effect/temporary_effect/pulse/staticshock/on_pulse() + ..() + + for(var/mob/living/L in view(1, src)) + if(!issilicon(L) && prob(L.mob_size)) + var/obj/item/projectile/beam/shock/weak/P = new (get_turf(src)) + P.launch_projectile_from_turf(L, BP_TORSO) + + var/obj/item/weapon/plastique/C4 = locate() in get_turf(src) + + if(C4) + C4.visible_message("The current fries \the [C4]!") + + if(prob(10)) + C4.explode(get_turf(src)) + else + qdel(C4) diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 41430bea38..8c888fee3e 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -261,3 +261,7 @@ agony = 15 eyeblur = 2 hitsound = 'sound/weapons/zapbang.ogg' + +/obj/item/projectile/beam/shock/weak + damage = 5 + agony = 10 diff --git a/icons/effects/effects.dmi b/icons/effects/effects.dmi index e8905467f6158338b50d005f7239f1c5c90754f1..f578e1f9acffe49ac094cb4a1b6f0faecba1b3a8 100644 GIT binary patch delta 18217 zcmZU41ymGq`}HhKEFFS?w5W&yh)Tm!f`W9ZNFyOFowJmHq#}aSA}yT~yGRRCBGN8` z2+~U|vGpy!|M!dYox_|tyUfn~@_FvP&z+T?bKRroQqD3{0x)U-06@O0kpMs$S#!~Y zlJ~{J@nuiM^2D+C?$V_8?(Uv1LE!7d3J$4={l>_0%9wIW2>GBOA5ijf`kAV!oRV74 z0{p2cm$Wu~NHA@>z+?UfPce%~6hPo*5V82idkvv9ycst;C~cd6UpfO%3GWxW`E~B$ z&G@uA8?QfJ-U?9*LU*}R?+r_&sIdvg(f*ETjY+?5Zf%|5CK+bUQ(c2kxyB=08jOaQ zm782K@ip_EtSmDPgDd#{C`xlA04Zdvz-YP6R|M2OkfgtajO?i(6e z1l?%y3yl>?2LtfBqsj4|3cLjJtorkaY^y?B2K!a1_hMnXzRt6SoY18p%I7_=!LUqO zqYheX44kc_9~zTLs*V&PiQ`2~_R6rY z-66>Lar*dI__-J0F*c662Rvq3;@xrTl3f^k?%h$4h?&V2&s*A;;j_E(V97r^H}KdR z`DG#+^^kI~_nI>OG*$~{9tYZit-U@0Zwt2l9#GkS4B78|Q)5xS-DAzE4*Jg;-l){f zTasXbUt-aN7T=sP4`!kpb~yR@XRp{PJlr+{IQw$JfNgcn0Z$lqleHGGaX25Q+D!X0kgA=&8rS*H}e1e7UZ)&tG{$o}MXNV4o=5ZA)ub7ye z@m}zUuqP9pZasa-Sm}a(G1zfzgs{1B9p)(|?AZd9X#^MQftabGy<8a3{MtI&G;iT_B%4HJ(hU*HFiY5f29Dn;KI4h6j37Kt6Uwu#PO%acq?O1K2O{3 z$FrZC;b__Dq-D8q#Em11>XBNFanb@yU+2)nfy$%|tE}|sIZ`{U=@!%3(RJmuGq1X6I#)ASUNW>Y{ z*;*gtvsMhF&oLtMx*#*4k<5$v*MSP|8~C3;eW?H5r=Fhdbxh8NU5Dwjslv2L^o0cZ zw`UikY_A{=h;6*FaOAuKs!C3ZZa&vt1e81<(=$t0eSw-Z=UCt8tZ#W zMULaB7W*hA(`Gc4f<8thX$5LiQYd@KMUtDRsMy~B;pVDB=pP&Vn-uq_bVM(|Q|+9* zYV-KT5%Wx#s9*LJjJ|dS&snx|z6%V~zwH=dt;`6JgUZ<~s4n>|0`MF)7{_hpMo<*MNW-Pbzz8Tr}**oawx!1`mGuX%%b=(Z4te;p(5AqCusz)%x#AMHE0rM|QqQMed$G~(D-WpHe`5gfh&fNG`vIeQ*> zdIr43jhVxfmNUlWF^hZaKQ*5bc!Oq6C$k$)m-zM18DGD}9O3rmxKu>agjbM;GBSaA z7{V-|t8`}XhAFq8X}A^Pfrr9H8^Mp#GGPfRF%8=q_VZD4*CU=Zs3Injls&Pck6Pfs z<>Gn<#DnAx@+W0$``eyiN!{yP)UkiY2dHNd9zOk6pGBBiAC(F*br6&Y}T5Ur6yGeRq($E?!`bT_&4V z=KFM$B*N^m(()o_UoQNl2eXpw&Mn{4cn22l<987;FhIvpTBfeRKgpafM%>(agrBL9 zTSz|=lg5P^SXqhVE!RduEb3~vO+HWNJsqaJlRys3jQ>p^(NXOfF5zAVFeQY98k!7O zon$l&>ub7^r!li1J7j@0$>cl|NcA8+w};>%}Akk)g?Ah$1&z zGk^V)$-i+$GRd?fQ#@_Y`h?LdTn$zk{`7jD6yj~w6*2!BXxi41d}}DdBM`W5!SAqC zVE^qn_=MnSX(E^OG#WT~2`bK8aT3T)?md7pC{`};vKxb826K~kKbBMFN3z#7{Po0@ z=D_AZU4)qb~pR$JZoHdxaya^eT^K zE06CU-XIhdCCahx`Hc&{XmEBlW5#Ddm7`w}xJSHgufEi$YFv6{80r@_$N*%cP=WU< zlNHsdb1aYVcy$Vlc9T%`_z&n$y#s_)G2Y3*oz#L<2Jw;Fr;gw5aJB{PER7`eWmEii z0QxVi9`6`539$FB=a6?zC0KRhWjXCLYbnbKF@E*Me(PR-V6JZR_?-wb>TEjoMYuQ$ zBha~Z(`)b3Tlk);-@#Iq`TmnIPE|y9b(6fV-tq7uX?9I6uc^yLS*Du)M3#2p%}Jo7 zp#IOJvgSTY`&G_^YO;tO%AzUR}_1zZb2dzj-2>61Xr1J9a1&#a2 zfRL5Ze3PkD{PmF6mVt7kEo7jF20jM{u-z}GeQgH_I$?NxaVqc2%2robmEGLjP-A|r z_iuH~3L-4bmz%#^DLoqmo-xVXI0a#mc8qjU z9!^o@Cb~920|eXINTyOl*lfy+_J&VCtNd*M2JYk6?R!ARkLj>E=c%1v#IDpLE4jZ5 z``RMDYc%?J&KMI#-~|ZYEi@cR;*)=!l#~>l z`~4-7v$oQUY-lB1>VWph7=HvYcJU2?zEjo9-`k; zQ$p*$V8`7|Bi(HI$;5oM@@Ff9d%8?E94K}Y(N0X}vUwCw)h`G0NKB~No3Ld$a=Mcs zr#tW?IX64)9Fa~+s~_!hT*iabTmBsijP{*9oGX%aU#l=UWojN9E>XHj=AQFUt|-4v zB0@tCAPKi2boqKbv3<4@lV@S_rs(;+o~m4I*A%IQwdmbVNdqDlROpahAV)7@y3?R5 zog1DCB+vUQ!=L9$3w>aTQ^!)beOCsR{j^j*y&#d+u~l(1?|u=~+s2gb^O9A&Mp2Ub67@<1>Qt zYgUzu0>IZrfzhaTv#lw1_l%h&L}ba98zvX-{rl*FS;4&e-x z54|-mahN(I5$)B|#V^*Y9wy?aX({R$*_gCSN31!NCE$M;!6ONp!>qHIdYppzTS@L* zexz(;y04&$Dtlx;J=l~rZ+-qN zf%yc-d21OT8tkj13Uqw?V?T`zXEEem8~$TvR0saJcD*o>t}2Us7dFL@Wq+Q(tj0NG z%k`ISs;ts=@(&e1=Ej>vwUbmpQbbsLmXn)S?Dn-$eh*iz*iY-+l!Erv1xT#4Me`Oi zxJD!}TV{8L&G#t7Q9>=0n^Brbi8}twY$VKCB^DO&-%ze6?W_ zlq|99DLnFV6ur928=;e~4OgBvfJRbc<|G$pXu^|lLf{(Db6MutvJvG-7g)JwP7S#x`U6 ze*R0aP%FBY_7U%wqR}@0*5lpC=;}i_43k|Y)@h9+rgt_r(AGTT*H=8FOqH?)2qJt$ z1cSnJbQj`G5h{q!@p7j3!5%$SU`|FFcLc_pzvJa5$$Yvrp;MZ4Fj%Gsxq^-pyc}Fy_HuhtAdUxvDA!d4yD*DV)If{?>6~I_?m~{wTB7nRIhhga}b~ zGC%RLVzKU$vgVHjBH2tf+Ns4qzKBB+vFWeJ{8h82Mho!cCzS3Xi)NxvW>8d{0vLYZ zu?QJ{kGVJt(j!o0t1?E?4XQ6&zKzJq?%%LToU)ToIVo!;9R@-HOEluu?q_<8k(PPA zfEX@13dLQZFa85*fahc*IwTO!o}q*-5~SlzM5Mp!mc7V~Mtyu8P*wh}bx0DXW^!Q5 zy|LIgfW+YV>%m&uU{d4}@zY=M6G+mw*|VUn@l%ojZK)AjdAQUK`p$i6XzZ=gd5A(S z$AiuZ2sPhYU|;&Lzvf6WV#{BIWRR~$)|6+#uHJg`BGwA8y|#A)MLPpOA9HdNREV8M zJ?#okwz_^ckv{{n(@VQBAdmjrd_cq4FwtdOI*Gn7@7&}{0en^7VHWSvyWtk(Mk;-3 z(##5mTh4%Gk2w5&3SZ})Se1n~b)sL`Zmch&D|SXE9rV%gVz)m$1pmw#G5I?v7RwKk zoa4`L^c$3gE;9O|m-A2sVV{Ybt)#+NEmwt*!Hg+qfrRaZiPm(;qSr$HB%<4n0br2& zZeYt07Pw7fH`2Sz1$U%KYILafzhAXG5d)fi(7m#$g46t+pA+n;7`8`ft=US;2yo|q zT@}jUwJNXQD@_4@x)sU8e{@4>2BVpy1F7bbt<@f>m(%ElrSKftEi!R0_UX(@ZmggG zagRk=V@HLvCJbw}T{rvk$hHS{CV%TYa+2I1f*^|Iu2DlDH)p8Xt<5@CnADth9wcfz zM+WHSFSNh>d?Z^#8ruR(T_0t$2ww>=7)X+P6;cGX@`SA%F`Le46L!pD(A zE1%v9A}hq^BU8`m%5TjX%qIW>>FvJT2IU7=~R5DFtD z+r2JG=hK|eIvn{*!XA#y;tL!ljvLG8>bbp_5z(XRiL(9HzNs$$AJbQ*r%k1MBQK5$ zdGDVYz4BgU_hW(BAX3bjXLcum1?#IK)=JVdDet^YBr~VP(54<@)egp!CqXT7Ol?PAo4 zS(%>sFrjd?b^8&Iy^~pMI;* zp1}$bk|!-*fE_l}%A=HN;nx1hd06@xbo);9ZI)Qpt2JWYpiho4Y4E|Q>WU2aLm%7RexbF+WJ0nZsX*%q!`FBtPcVr=hw&7PK@UC?eVs57|ZnQJEal{#_neRLcl4@s)6jn#6iCFR1l0}*ZX<&s8rfe zg%j9+pIv=lMX);|TR;6`p6sqTjW-=wItl7{D}T=D&D{=idV(&`D<5~Jvz!*~QF^KN zy+;5iuu0T>!Xu;2R%APU~(I%oh-J<%abnJP#D=NZj+-n^3Yoak-W9 z_Wib5W;cITx5uZ&Cl+TcnIlF1XNrWA-@9SXk+msBz6Y{A0c6 zjqCp29`^$njU)*k){P!r|#RecKywakhw*uiM+wo~Vb)dIGSlPaoCCCJmeibtFBni4^*3T$7b)pF>e#Ad@KLETB9}@okId^Cql~ zlK^{0`Li;^ET2#~bFoKA8;`TVjbbl{K{LhpcTflViAmBPj@ip** z?7}0sW2j+ZCkv%=F9?r|;hpto4FZ`GdulUHo_rzg(Y={hpiqoCyEH{S&dE{JQaxb@ zs>*(43e0Zq)vkF@X)MfBL+7lUlv*aIDw@P*kz#q~WN35^r)#+1z5(7?M8}1`Rf!J4 zlD`!Zl#V=KvTY@VL$nsI&HcQO0L^2CCp{DPA#Dm}I(W z<+ye7VOQNn3YJ2h0+GZ^y%y=xV1icD>1#krsH)jIJQ;YLQN3z6R#IMh@&cFpWOpn( zSOXR*;pzC+f~$p|zrh`AU&b%~ZIjYpjyKY52g^6gKW7QCUi|NPJoRxzG*e{#q*AcC zx$EITeq5~$$V1Nf-Al@PcW*)-lvDz0njV@%Y0ho?a~Eokx6dvtTk&z+HpAMku3pc{ zIU{%q+9R>~#&pzx3ITF8hk~@N|*))ts@!%vW z7<4xVzf!=~a4X%&*|I~^zUg`8)=xE34v>I`D6o_#*PcrFZnb)-s0q}=$TCzBv9h7-yDjPDUvivFRz@d1*_?OB`-Un?KiC~Nf{wC|YdNwb4YrapO+~t6weqe|U#3zR zgt>h`@nQDtqF#CLFJY)fO1~Ae*KXAJqI9bMZ&Y*H8bj|$m@@A)5tWvWsxVp++a|LF zEcK>U#$BEE(3ly|S=QxMng%ZEJ#}#H!?XLnvSImRmRx;t@G!%+$!3*ldERC@rZxip z*+wvd8uRlV4HjsU_?-n`G9pMdg}G{YC|;jeE~Y^PV0yibn!!y|f~x|ocq(0^A^ zX`$lk$nh~y9%o5Q%KJ$=zga*g7&K1sYT`wtL`-Bq@mY#q!=>*{gB}U)k&3&hp+D!r_y!i_CKlK-B$IgzBjJn{()QM zd0khoaK3d;@{Y07FS-F(pZ7JCjVODl>1ntni`>D|U)|ZNGQ9%g*t)$35iSCha$7ME z{6ZUQZ-kw7Ls>!+F#90VK#J-nc`*qnww+aRpZ&JUb0^PS$d!Ftw+A&H_HD<)kB33x z#N3sX%1^MmVuWiJUXDI^bt2Gz2p7;bTx;htxcOqoR%0ykELwMS1-E&{_xHCi>jo$7 z3uKOTCq?A_8wj)oyz{k*=rfK;2 z(n_lY9cge=<{`G~_1@-8joe6Sg9ANwg?OUm|RnlGkm>dOO2% zxtzHQHvZUmk#Frim6yWL<}i38@34vNMqfuoW1Qc zcM|!0X3eJN`?^O_BzBsX0btRT;kYFkm0UBg8V*!Np|S~iI6d50ebth^&wTmVO_AG_ zAJ-V!cSjN}_GAkkIA7b&CQs7HN7vp02kvAA9kd*0d?pg;aVu7_rwF4khn9t=g_)r1-ii{nGlGlgxFnXIW-ZJU=>7B~;p zWJfbu%}l#rm%`t^lryT6cY@D%003D?F$<7g^q6q3ktX#d2{QR%IBuB|q{Duwpx`PY zME4V`Ei|ecB)U73wG=R|uAz^o$@_P1%H`^vsqI74u%BKmr-)n(=aaA-L)&-5c^GH0 z)`S9o{t-~zJ^4LbNjIY@EdeOQgf6@aF!0D@?-cWC>(HI!ILC^O%!8BiFm zU$OUfbub=9vVi)W;t5M;%zk!T72cS{t8bt#2zaZl?4K|<=%O0`ofce9UMN|!Qw3o{ z$G_MC)!3`Xz9Z7%QUK#9smRb5&Ny}bJh$%y+|#e0e3@FBZohxZ)cr*>KcR(Y(OUTR zJx1mADS4yZWZIr9uv7U-;%DJ;ZLf!W;2N!??X7 zj`;Fw?IP+xklc$`%s&9ZD4CThWIUkE8|slDd7>M8X4}KGw_!fY zj>Gx#I5~Il|3@~s@?3%Lmh=k?_;a#o@H!4n36KR5>K2}V8+h5@DpRZGywvH)+|96| zCX0x℞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 delta 16833 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�K%&Jkk> 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ℑ9v3M=_TpZfWef1{knRv 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 ANB{r; literal 86496 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Πvqa4D1?;kyRL7#=NdmnC-b>@2!-s zx0o0JdOI5;K8sBk=7G#`ZP-x&X1XZ@-y?r%C*UK^+Z&{I&pc7Em3mr82)ym;8wk*S zE9ckBb*8RqHk68c*tsqJ;`XUy3pmLqh>piuW7)b{jqSNaMCilPbk!guqb~@tW{GKP zCLu*VJ;pqZlvDWwtcJ4Ttj%JWpbFL-FEc$^U-uL7Y;en4INSD}+V+A#_bD1<#22CT z)Q*lC#y6}~@9_T4&RS-0(Qltca?h3m#Gb9D9PDZ376v{F5pLA z@#x%KG7vXQe4oM_)yL|lWAU{sD1su^I)gGsHJLVdSv!ykmDSx5^we3)Ac5;zA1hQbo#By; z(SI3zo_kFx@$ojst&cKDm`{#3?X$Ide|0ZbRNN}Hhwi~zzsA?r$~*ZUuaC}kcad89 zlgk5a+y1xSdG|oS1Ed6=M7}2c8ws2<4 zYmN(L&<^uGK~g&aT}ND&bv@m~LGPahwOr^6e@{ZeU_cHFfiu{jpYQwtKO$lIjE;N4 zx@BoFoT*?GY)iTDdnc+A%8w@i${^5KUucr26`$uV*o*h+*;Ln9NfQ=tLdZHlddJzG zLka@j6>i0I8>ddGDCs;_5il}E2~_02e&l$|(Q(yz#C+bV#&7tm-}bivhw*&W0A{>@ z-Im&U#5uO2h-1Cl#ndVG(ct(nlhCxl-Bq&h)E^Y9u7b*@G~yZ?R9#nI`kVJQiNDm? z$w(1NIqu>^9@C|f)jLM7%S=Ew&yasyC^)UOhDW0h(1M*aQFsw4HT)*+*8_y9DO=g| zGTujYqF96(tD7)RaDU4WSf6px1=9i`J^`?rt)-k;IreiJ_YcaZKcgptdB=6b%W)MT zVfrI=rO@$hh+2F)jE=q0b$Ima^M$gK%#xKn&#+t;Yq!1Q!+Zkj_jgTkMxv zd^d$NO{AonoaRr^EH_rV&kNsad~`WboPP}gVu>=IT?Cc(7}^-1)6YUTr6VJfFC}n= z*FoSh3q??F?OFQiF>vlAev=R%-xNP+c?bdLA~dyfj{nK*FdinX8{6ro>2MA z;=W~n>yrKB!(7nUNnFz+CLZsaq7oS${S7NHu4|*5^JLxdtI7Ox9Mt8LLbtf+(p>IS zZe&$r(^!->ibGf|A^Lu6TIz~4^gGE#1+g(Hi((ezUR%+%Nl6oN*;KIWS~ zXlZrs#1yfXm>yVuhFWF^@UGk6kzGiH>mK4?i0x>ijC9(yd?Q>nr*zE1X2uZ*v0FLR zW(`jRssk8E>9l7Q(}1@8F&{jQeGH92cNh5pUmC%~p+<2eE?Mzm1L~cuYdlze^mD`K z2I<<F5j%!O?jZok~* zOQkGXGp%BkLWy+d=dI6yrKsTIJv1umhXG{4#u(=6tU;-NH0T>!Riq)Kd&kuhQ**GrXa?vutO9nIP%Hc z6oi`|(pE|TA|M&W#x#;)AbBg?{`fwzQs-5+GsF;X(pb0IuwZ)19 zZ_=ZQWB{*GkQ^x*C_eSmD>=rpQzY^w5|(0GfJE9 zW-r+~==LDjpyZzYR8-Ww(4F>Wqsj*~37GUgPYc8Ie{CZ*$b~7U%L%?gR0b^RJ%-;M z64VIWbF;H+nO1N1dz`IP!tEP&4>#>iOikH)#Cfl_F5|pEK@s-HZ? zTznvb<#V!C`tIPVBa#`F@X2kf`x?>4aQpR%HZuoTis|nSNpGOp4|8a*sss{bf&$xx z`3oTZNX6JVW$c?8CK&7v-Rt=eCXMrW3l)MEdy!sG75ICD$`96``#zLHiGSl07VcR{ z7z3U@*lB8D@`v_7twcH;$sV}+`$>?hMX=aviMXwRg7_j|oG@q0u8BD5Rg zkhl}Sb4lwxAbjy!fsBQ!PEb(rC^re^OC=I$<@}ozy|ZJfYTHXU003mI)BB2^ zLq0q+lf!?zg_&;A^xKnnWAbyyeBVxfxldS*_-$rae;VIdz0AWytQ88R=)|N_9oV^= zC|cAUgXZ@ar6bUxXK4U3F_GMIXRy8-yGlY1Tj)s%jn5a6Ngw$wZ*5N`BTUK;G&}V~ z=fk1js(9C)u|*3fV`Jm+n3(xPXiRpj;97CXZ%9q}M|rBQyj+*v&iMHFokwrpzdx^o z={;-J(4ArFHjxFQU(y)=@~LTTlt_I;Fuj6I9wWKo$&woUHt6E*SITb_6GI0F^~)Dm zS61$@_0Mg}vDw;?&yt3}w$zG`Arhj%5rloQJ+s%X(!6mTiKj!9g z%gT;9or%tTDVm|?_OXV7a>yv7BBt$qGE3KeWK3(Qs*riv=uB_vBYoMyGaM~`QpR+~Wi;(gCa}DHq%Yo!KkGSiTDdlb*0a@w$kYI7`D=gMG zS>q~dVqfLQ8Bz>noKi@)SRomE9!X`7w=fQ1O1^2h=Si~ZPpFH)V$x9u(2Ex@?rLg= zs(x{Q3W*rNevgkwf>B`XRlpSu_;3d7>42tZgT)C;i*}QyOf%7M2B|tTU?Uo}(D0Bo zoclr^`(_Q2B@!4U9hr!Ey&(NBUGBvhR#w)6f&#bCx4gg;wkI;u2nQ%M8B9V#0%qAM z0dn^5OhGlzP8JJ>R_-BApc#4uC9KMKU%N=&)~aTc-}T!#;k7O>*4P?C~u-N2Kh-@Sq*)#As5-3->h^!8SaQtP%Vl& zC3o{C``4R%qWoupB`M=~AT;Pu@x-DN&PI7@dE>_-&*mX0B{EZw+h{^UC-%gIs_=-2 z9~)COZBuW)lmiheZPWKb1!QlCAdb}mOeuTf`|IJ?!5Ud{V=N|4AMY9~4Tt8G@FH}s zdvL?RhNKkBy~fTk4qr;xk?whaG(GO|OGOJ#^k#~QG5>wmQ-&)!`dM^1J>U~dBHaReh)YoXLPkbLcy#n1h=Y?ec5BNGrg$uk39k>TVH_>C+F0-B z0V6l`aL7|!@x;+{Q+1(MqfcB6RC;Cxw&0O0;C|;F)8tbLLcVgb zT=kA8H>K2sdXv9XYk_jM)L?b9fHwi0mVm}T*b}$hXp9{lH9~J7Tp0ri?EC1^rQJ=o z+98O7?$R_T$Uw{j{mLC*0QgM=$7$k%`fTu}5ikT`Fc26917)Wq+h9k7!{V}Z94A*G zKt53jq8Me2onieP#LDjt%wS?Ows3u1Y19NDPFqCc->(HwZ?!O6Y)#+*J27q(`c6}F z3&i>2|LlrH`#H_L($fkgT%Rl5el~x!d5w_fgb7lA@ZP(!`va_VW=-NA!o zJRal~&vHIb;eu5GX~k0$MA6RL&H1 z-0~XiEIV7~$<0^=Y{61z{JVEA#qE160pI56PrTMzk0G#lnry?)GPA7?OW)wUZgwpV z`%BrM=@P7LXmQjPcKiMq9-g$#OuYMTdb)h59IBHkqbI5eV~gO|oa@l#c&wt9Lro7>u=DukqfS))`u!Xqh} zP%K^c`X)n$LV!vC{0yC3W3Yl{AZ(|ZwWP$^Wh&qYu{JiL6!caPx@k`5VtiF_1<}^| z<9g>~ePDP9fi0R>@g)X58Y}oxyHFn%1l+W367D40g$|`=&y_*``ae9fvaDdjr54qJ z5nySV_3+oy87rpAzLt+>v@%|owLuc953P)4JuPhYqSFjei|pfHOG?}{l$FP^CpQJq zZ$AM7UNTu_!pqEPOwgFMAb}Bg1RskLgdH}IF&kPeIN2{0(j*H~+$`(~VjnsW$hZ3a z7qzpS!svHd71e#~ey@+KsTDwv<^+MCyn-0f7$y*{8ChzkE#@hz!XXF$ou7Q|?d`Az z^6bPhV^Q~cJ~Ot1m9K}JnAmdr-pj&LOn1FpZyMYEc)h>rP;oIJAOJRc(XG?csN==r zOZ*v!>n!(A6`I69_Bqr12U%7B4n02 zWJ2-N`bIB)bF~0+&LJ@O0_Xc%WyOpd9Q&@D>yjnuCdiRZfF7+0xq;9Kao?uPK5t#C z>rI!nF$nxY76sJLU5)!8s$Wq4zp{ zyeA*S_tQt?`)tfIVmdhVmoKzH>BosspoB926hJLfIygiv5@DDWY|5myqYn{H)IWd+ z&k+ziRl{-0NtV(u?fTGNuE{B`M=6V5XgoWFy1*Im$J3O!ofyeKRUSaFqEi-y!LHe0 zc!m~UBPR)ns$EKfJw>ij8iG;z^w&Vr1^%yt$x)?{m*huAcKW;k^9CQ?MH6y)Uj z9lCrjHqAZ3?rS`_{_6exe8Xc3{)Cf+5w8euy||ztSh={R+Uoe|uW;Z=Z=-8`ab~4O z1Q+_mC+ggqN4MN@7VH-V#;V%?q5`Gf<9F5(qHrkjBo`8?K<(mtr;c9pTsrkuuC>U?u9;l{!md72Ed$b9Y?@X3I<|y2IO16kh_wlU!`N{G?cN6gEAE=Ppi05^p-yU z;T%AC#7d{FF}a8_mNNZ>N6&9Vfb8wLxc_GxS++UHcb_Wqy&;EbrV1#6AXm#mZ3$7e z=z=}$L?Gb10I^ov%q;rkH^*Aa_lsrK5Lv^pEgq=!2BJ-3LD)$;`37tVfHBIHKAW#9 zCP=1eFl3V0_jG#5z@-_`H&MMWD3V^(0%7_^>}78D#rJekBZ(q==qIjM&)MTe=3|VA zkO0_zj)Xx70SfOQu}#2o=DEy%*|R!5M+53v>X26K!{5EkIRbsXh(-C};36A-h*ZMQ$Bl_Cc} zPrU=$7Yrs!t!e9ZFM8|9b+r{v@H|0XiH1(T5N^8QX*G!2R4D&z{qJ?QZPbAHYNWB9!vvi_$=lflN`O(MibMKytP2;Ch~M97GO)BjiQNURsc^QVIVm%Dlq zNYwVu&iKbrFS}t}T-;V8O*_tZV0) zAawU9o{KS|=ztaPipt6z(-Q0$G#R( za;clo488+NBNOtDUkeLoC}zEep+@>C?_R=xVJi2MN%kr$E2TaMqSg?lK6ATTc-J&R zB)D{h=wXXJ8P9Q&z{UAc(QDgJEy+DPIS@9}!$WzAHRd$S6vTP!*`O~356wPwnmJVv zds=edzBf|^{dAU#Y>x@wwLc;#Pg{C>?Jhv+5(AP5+2sLF8 zlBNxc$hxV`TQ2z`!4#bJy>7{V4*)~BHurs`-|j;9hX7a_^_ipMY^SrUpRcNg7~Xka zRqo!&59>;k?p^Qz5pvH7fWKumIWOD?AWm4%L{+gZFo(|9ZXfd<94iAGc|^TXlKFgl z9)Mibs{P)+aF!C-%TZo)|KYRRix6H8EdKJP+eyPM#w56E)M#(XkAazuI>v;w!lXMX zH{9n`)bW(NWJ24W13?pv;{qw#!jUBFtX7o3ny{lz88 zVHp@lpjz2(vO~{W3aDV#gl9AbteTxsxcP8>004u8(3Rx?*HPnqPt}n?*p$AuW*_@A zL>0dYB3*&$_l_%1Eq?7@AngG#KFmh2m_=}7BMulgU0=0`{`JfO&fVSplC+ibw7}NpMNx~V%7Y-0K&8FqYu~O$u5gXCDPZD92{LS$Q!zFaH``c z76E$kJiY>nPw1tX2L82yq~-7FLK+GH+hBB!jh|ldelFem^BhfuTC++ULM-LjAGRTA z-vDr%6GlUddH|4>H>8~sf7%D&5IY6Vppn5r%lVFklTG5WB((Pu&m#9S|rsAn^>&zMO6@VPYKL|oG2NADA z7!bEf{t~AtxjF9qzjpPwu>b)Dv`%y?)-GB%3a=pGl~_W?AQUK+JB_*e5YmHbQl{Ma z?c}I);r5+_BTfrzj_3&Go$-oz0UJfL-J=l^(X_yGQI4s@IuI^fwv{<0`W64^ z?g2Sy_(ygQ%MYB@w2P61SS%*&K{ZUCC{-~vP`Zc3LxvIJOLp!21QP^^ty_e)B$jGwZsN?HD1kPM@l$xX$-*}2^nVtdG$U@|k+JP3r6(Z{ z9r%fskVjo}7J3lw^U&eu;{_IrkAy=#elkdP+<$SxmauXpEimNHNe0;E zI`S-xi|Z;}=HHh2N`IT5o>gHb)2pqcY>oos1t#>y%&!|Ee>)iB&0zbFK2N#L^%n&t zPRai-uG$I+_(N7#5z_6H91x$OU3$@Cv| zhy{rMcaxTN?`#kpEYl~o#_)rqkwJ*y^k!QH?43Mzjx6wCkI6&V_?ap=|EVnso7ulB zL<)apn7HMy?x!Ej_NOW4EjOnoI=d2f5R3|@gVYFW(OrVBiXN0RX8#~x0{k1qs`5Ye*eS0-_%t!A|m21V9yHIB3rmzsmyyVgaPKH z?GJ8a<$AP`=9oY8lH##$r4l9g<5R4zg>Bx!)>gO)kKJ|Q*l;BUvT4RiusX$h7B9y? z1k&!#GD7$o(_Ec@HalnpV|en|YU%0S#Pyq|99|P8X9xADI!;T2#q`{S;CSZA$$L-l zpk+G!n9tDn)Xg_<=-in)LYJ1Fz!oGi=c563U;5L$Fien_tKOVX;r7Nl8P}Zh4-|sU zb*sCys3q~T43qgJvC`Y9WF`!IZz>{!Aw-Yr40m9U`9h6GKBJ^%qF58idU+h@rvH1! zL3@3DdgArD3&h=Sr}@>SMM6UA@~7&HR4o(9@t+N11R1oh{Z>sO)>G(lfBBhZ&NcS% zR_m@WvnH$n)Cg*HynfBn8uqR78yC5vii+TH(J^m_OZ8KY%_QyG82;QOLb;WE$Yb?M{W#ior(h#6-P*`|vH;+08zF zA-S`=_~F~$6@#ho?p>QmhGG@KTXUG36RpX84dDPaP?6aRR3c=J`W(fa7Ep6BaIZiu zmd^#{s*|)KL0S(~Sy$l)b&pacGSU=5I&ioFSE(6|J*oug+#;+?e0pr``L_8k%KPf3 z3kp-5uSTyJJAULXFJnWlD^>RLWPij$WL6i9c*>e)(J#^6MN&RZ7%OQT1EGmC^%mTF zjfHVg{ADLRP^5~-@zrRY4er;n=Nk=a?_9id^#fQC-;0*t zPkv8KU?$f6>VU93A(dmLgYA;g{65uMrf^01Q>dEQ$nFa{)*Jl_4e2FDu+Ik>(apEP zLO+uIdU~G1k6z5{aDr9Zs-+Fi*q=^E?m@O4x5BRI^PbZ<}D4pUW4x~u$FDr}chVAe(>FE3|y(LpO^o z{0@THjs?B;&~jprO0CImb5fDPz6sen*4~s0gL$M@aMRScl^3b>*uQ%(Jy9G!;w*?c z%?{H)zglUFTFTsej8kc;lJXm9FFQYH0^^_!ij3S2&%&$8Pt~J$4-Q0G>RyZTk4X9+z&X>P3wN<81F z4Svunc2dq#OcFE*(SvyEQ`6vwzvRCjIG;WwO2?wIelwrDV``SEQn&ckul@cB`vMD^ zJ>!{a5#3c|-Eu~V%2s?@T}@S%zs@C3Bd;bVMNX3KL0abf8J=))rYcQT1bvX8M_Sgd z8@m(PWiqsiuRQGIfejhDMHjYVHTHz@WZ2G2p)mDuhbkF0f%+WO9i&VVOEGOLH}&~@ zLlaNzyUzpo#-HkD_Ge+Hb`8AtXC+K4dSe(BT4&A_f1!- zx_c0741l8a40&TPhZwxfenFWc8)$e=CWetH$kq1F54F4j?|rBG$R(Eq!86=RqZuMI z`PKin>^B{f)zdo#l&KzlcQY|twzogA%~Kv!=Y*cZk4`LO?-%+pcG@;somI6N85w?) zlO}ySB%J!sYw+pa-h>*wZFujgx0|KfbkN|en4!;s?OeT|dk?YsL`V}KIxby5H5eK{ zB)mt1{nyGBsVV+mcmd3A3tSm++QT-i8MGeT;<%9;PFvDk@E&TiW4981Ms5SSDoH)F zo5zFJcgry$QHkn9UgMgfuZidvMeGI@ey18hP_PzvQ-$bgt{{k%XEHkd>%*p606S6S zSyGmW=l-~n)>0gIUK?0I-F%kcFPq5_(EoTtw2{LX@;;;SHsr(WUVDe~(J$9dBe(0$t;W?=Lb+vG ztgS>pO9(pLYa7&PIW`g7GZBOJK53I#pKr34a{rfLu$P;ed3P)ufFX7(!SSt2I#cvM ze%6>J?JKO-nz39zW*U)<;h~;nLbUjP^;s8yi z`%{;vr=YA1nSUNm)>i2i6eF@ZuCoUuNmT;mUg~S20m7JvVm;qe+S2u4%~sle~I_+3wHeR-e0PcOuD!Eu@+!fBx}TKwnTRCPFd1!bVt2aV@_6t*A-<87S|$huU1l0GT3`0374?NW~w5LhRO_& zvyE3kwlM2CNN0_#X`Z#^3oAQ~GJ8Mc+RaJ?@ zx`ZVpCs%JlJTs9CIoI1&rRajp|&w-M(#5 zCSMAuY%)+*@@a3+qkgvxHNbP<8P0!C$Ya)}`6oOT6_|t{v74T*r;$Y&e{&Pka&<6} zqBRu3r10?Z9gQA#mD{#{HuT(>`|67HPNO_Qb1&!f)gFQw!|?&wP>ycWZ;X_plL`GA z4ExT&Dd$zAvVw^}Cm8#f+f_9v1&|UiP7W(5!~oagUlXj*q7YcN9f;-IZsX)c1fr@G ztgLuxkE6oEFz7ln_7rW*d})cz;U=IgQx& z$Pygr?)BK1%%a0iHs)r_;3;_ag`9~gAti;Jn3Qx0oz(X5p~C9P zc0xIuj0$6PU#zy5sm=i`J^|k*pXeD7Dh$LcAk@Li$ay2lgQpgO@n(_1i|3Z@E;V&= zw8obOvkdTb2BTKikO)KQWq`uQ=72gF{0>l#v4jf&5 zKU>E*78Vu_w(}33vxYG1SDJSJDXQc+j()1mAf3`^&JHbDF5f;nJz4%K+vtNxMXzKP zCe7|6vZrk9>=>ZFIWtR~%0$1J;?~Emg@u%%2^?HpbH7QMLl;3h3@9Q(86*L8>@W8U z!ES;;Wy#|2FR&>Yk4Ip6A&7q((JvWU2!}Egl<`w|&KGj%g$u|O)Gw*!q${w^Md<`b zKdaX(VHCAP%MWLCEji2u8496LHk|1P6%YgrZV*n8BJ?14nNL8iZgN6+7+xm>*3*`a zRZjIx|HIWs(`tbICgn4*6d^DCZ<}x<%Q&C^X2Bc~IJF=mDoWSvlg4H{t_4A68SuW5 ze7HIFbBj3b=x!i|hjd}3g<-|9*l10m9 z1`}EifPek^diwK8a9!||j)mstW?Dm+yQtZe6E!GQ<4c?OIbt8vFXYT%bg_% ztF8YXH&8J5$w*f(V{k7T>yuw~L|oEI6%WNK@1{@ytIICI56P=b;(7ScHh*(x6R$=> zY3f=^L#J__MVLcIj-l|e)bsZH(3ZGGG*I>aw3go-REzgD#r){hbfJ1-7|T80{J4vd zSp+8MzJ#43mT=?8kAq4jUs+4_ zD{N@9AHzaMSe%fS}4>GHJ&)a&quR;9yb~?M7Fj#As~Yl+FBrd{W8sd zr1|H~5bD8eyQXFgDA}P_@+hMFgY53+wx{zSaEB^PZbOrl2|Uv)g5LiqsC#g)2o6IC zUpy4#_x)G6+Z5h(#r64e)k!!6yX#w)Tcc8#_9y?B0q2fn3AlAT0rnrel)?Q%$w;jF zDFqRO_3Uf{|BF)iIpv$YqyTJeVk22rHhm@PG8Okse?EzN<1j)gObv__9%5SOOOUCQ=Jlm7wVezC-=XhSiOwcM8T?~^@{9=?WTktoMNcTBECVvJy+YU`13GUqpWs0u^i)K0CsI|1Q<0SkS zORq9mek^FykyHgigF+0%q3xjqJ?zcgkXl4`<^HNBq*0#VQPN7Grc4{4oaUniY4p6I z3WbLp`PN!kQyF3}@LRvuTK5_Zg1DhUJZt*iq^z{i*!1hVL&MS&H;+;HZ|CIpU7h*C zwm{j-T^s5W1#vw;U-p))Yi5U;&6!a0H@CUD506Vg$bFre{M6sBA}-x(e~S%j8=F=P z`r_Qq@V{ID*rVCC;MQRO12Mm|;UK6j-i#H8p)&TOMP#CHrO(aHF2k&}+m}OrcVOGI z{ZtEfqU&X1Q@!r!jqkG^zzU*;AY=6bm|%kRlg^djFFi|^+``14NA1jG)B{(5ZhbSx z*rH7#l%UllfQ|&WOD#D)6g(0${uQK8EK=O-Lnh*K{(a4E4FBz*huMKM2MLb4btst0 zKWA_IGhU5P%G_GC(XGpB<*L9rLmJ8-Z}Tqss(@BIDYYq6&=8Xo5r7T$Z~JCP;lRX{ z{f%`b=U-!jL8bU}WBl~BWb3?!8J!2jez*H%n*YGNN=~K`IyC7i{c*wzsTild#0`6- z86fotpYWMdVaj2<1eE#V)sS$zvEaOa8cE+A34BvuAk~9b(e&(w7e-+n>wLt~M@~Qb z9BJ=OVcoVOY+qE_{V829p{v1`R`GtjDYk#wWpmYpBkvB-z35=14a2NRFTnpk*1@oK zj;Dr69_Lu*QZ)sa6`e+_+DPc&0w?Y!9izUbH7F?P{hy~kPysv$@2%&KDmXdhd>%Vy z9%@|J7RUJ8O7rotkVS0co$Qg1jC|1;zk7H_$3nU{IQoW7WjmHXA5QJ`Go6Rkcf}`Ve>7+s9NwApQ#r^JRbmVf%UT@ zVo95}>w6$e18G$63Nmr&i#6h+lnNDIzN7;xujDK&uGEp-gO~UI5=v>{Vi}ISkYZY! zq30)J5!p7ps~k=t*oRx2s~cv|y6T&`R;;T; zcZf~=0cJ+?(Yj-4M0vBvaGoq9namyp`}sa6hp5#wIc0$y#8=txJ``Fd_5+zFN=i!P z6ck}8Ddt>UTnn9K^44pM$i+u<1aj`R#O63*UybPPpA2J~T4+13RlFyiSu@>zZ2q(z zt=PzT7fX}g9o8Rew=*{&b24cKg;rGX%bkhR5eH2XKwN9H@fQcoqjz}2lqkBAc`4l+ zi8FT2OBK$+FRHZ3-K;et$QcP2ml?*mkEE;mW7Ll+<^ri|N1;!u*1EC zjRe{}wb%3_?;x%zKaP$bq~v`z>4}}{I@c$=1g>PteMtyuVZyjQ4pE_SQ`&heV|qV! zvhi{>?+GGK|93;MoJo$Fyf;V3$D`5hsVsh_b9yq6GZkZqbfpJI_B9nG0+qvcMp5&U zO5`>Xf1Ff3)}C{`&ciKAX)4)+5K@taof>ttPx`-m{38^0wixrWH9!n_k62y2SWrp$ z3wsxMXtEy!H+Wt(2Y#!f0HqTSW-WPJ#dM@ zcIP{wO)s8eD4?JYr3jtC?@U4ygR5@Nzg{8}eo6Fd@9|-tV(#syx-?`{(296!+5i_^ zX;y{a{YU7fE-n*Y<82wp#{F*eMPS&1wwL&OMaKY|qlh9}x@UWQEHfAlt!ythpy{+l ztT}%H!WJ+Q8~$%O09O#hNJtKKSpFIfSu~35F5YkV1+EJYlA}5wgH}59Qy~U8`mEvT zNXp*9p$ADCL<(t_EWMEn{`%jx9GC7s+h}xF|K)?MJjFDb{EK9P3^xdxh1leRlh8+m zsQO7BM8V?o?@u4XXW{N#Z~w}gH%(8vc>wHp_bffs8`^PQ;PdW}UAb(Y&TI8A;YG)x zqCj;YIt!e_kWERtd&z*)?3r-hnt*AI8L1+0=I5P}Zv{Cu+v`QG6ExR?_=O@~eZe%p zF9k+NSPd{9UjJ;FmX84+FCIbfm_L1Ld)akpOw`8BVIeDpvkLAV@T}D}<^hEjH>YDV z1hvf%YE)X^0&MPk#7)|Dz`;)Q^{eYI!51j3min8>l(?aCNXB#5^oHl{J8rFm&T%Nc zo+6D!KL;BsEG9}BP#>6T^)}LZk`;I=ylg@vG#?S`)-He3es$I>A8lCFqi+_nvLEpc zQ4dr17W2F&nNUU+^&)PL1uAP$5v*5jZWG9i3ltE!?vSXTTh+hb-4*uPwbjgrd;F~@ z6l|hqnY$4-5n+X4a%D@Uaf6kstJEQRFj?H|Qc;X^U@>(#okn8Y^&aINF z%H?swN;m&+xO~kv(SX9{E^>1>8GR|>|7vp7`MGM}h(L^nZ|IwUqz^+9QvYSsXH{hN zj|d1~Hg7bp(f#op857EG=w5-C%qxG+)jDNNrPW}(x($}lrDaPBnw&cZY{RW?_SS^p zPqf!GUGmcY!@K{~j(}I93d;T`pElnHciQ%N<4=R%J_q<}!zdTtT`UMNK)pb$wF)$K ztIU7tw}kD~BGa0XF+In$kUpJ%%jL2|c=Y1(^y0Gl;A!_=K0XBp2aJQm0Stxj3h#r> z#P^0r1eE@XS=K9Dy)nY@Gc;t_XnjN8y?vlJy818{3gf~vfPZ=UQ#{U#`^B?G&2i(biB_XAEa0Lpu*Te9Nx4V8 zzWr0V5Ity7zzczMNv{wk>9$- z6);oLhc=`pZ=UFwn8JxoG>rffj!9?g-Fjzj5K8(+%x?iZ@cz#a&#-0iLF zUI)?o#zwedc@OBg_2&HQ@a;qt5!U2c!%HtR5a^*yC=nEMl_FXFCAIe@yWU7MBFoo= zAE0uf(FwBh?-S0tCq<^^ z*1xlH{2cd5Q(=JuuKMzc2&PtAExro11L>)v;MOs=N0&sPV#Kjuo7gb>)n#%DIGZ#`Q$&Ejc)%cU6$0peg zE<40Syp8BgLs}UW#E^2(kymco7Rt@GUo_-WK4eZ)=K2cA-|U@v>z}W^eY^Vj1XT~d zKyl&XU;E2uH&%b+#H`!(B9NfyB-a#*waQADLfe?lU$3dArtNDvFavzT0QKqUxvsR1 zkHy7HzfF7-H(@$2^_KrV@a10zW~~k^-MR@Y;j`2A-0fe?=4yzkY zmwPYifeF%cft_mr=2QbHc^?JHf=Yz~y;2Ma2nJ(VrYq7jy#_NR11WG{2n%3;He32j z7U;L582Ye@O&x7*HitX!iHsveb`>tgei203JIP>-QlH%$-i;-WT2=`A&c%3 zt+rX?#JDl@?Vf;Qqz|!0E;p<4J)2DF!5SI4FXjQ^!;_MgdK}yQS}O z*rTS-<~;oh{Q?vU>eP)}CL!qT-$=;)N91{pz5-N^P0+i0ue z_>~$w`0300JJ*&7u5BcuiXLLL$6C0YIcR+B9c8~QAYB)JzWd|zxp;$kV@SQT+19p} zTCQwhI&3hbz}XTj_oq`R;q!;%K2ZgHNdjpFFL9C3-cI6YjJEQ&G$J}YJP8glu|Hea zGSrbHS%*?)%Ok;?3j>Ohv_Xd`)||;#w;@sly9W;>K}WpaG))qbYYyu8f9KYFJ~0ZE z&Sb|TRy%PzDG{ulIs{<|dpAS^V43^V+n=Eaxyjq9Ju`Z2YAWvROp=ZmR|a);h#uy4 z3x>W_LTtQDa*j= zR(T$+12x65h99|5%mf6FtMgO;B0#hS(;VyFXGDl`szy!uF~WOFvGm;4#7Fz>iAy=6 z=%jo8=7-(M0bqb+7@%+Gv;kbVhq_nI*7tvHqGC{tf($8gV7>T&9R@Z9IvefqsX(F` zt;gB%zv<6|0Pl5kt@8bD)}HV1c8wz{Db4KQSK_`er?}oQ>S+-vHiTY*K433)3`(5N z`<7k3MfLQ44_-X^tkDqTCy6!uCmd_ldwt%T=M0F8sQta=7QPb8SFvE)iL;kS+|j7x z8gg>ZbVAl$q$t^J45y9+j=6bV*-Fl9A-mxFA6-WW75&HxF-!X_)J~XoGP<>d(VF^!;`6Axyu4lLKPBek5Ugo__scOhV*TRLE+O$iGbDrpQFcWTSv1icz?p{z zm?Vtjh5yGB`|Qj{g^g|&kj96OnJdJW5oMP+pmE>sM*Em^T1oeTaa*^EIk$7^W=Bi| zNWUDNo5L#Ci>OE5RDYCMrocr81hf9$Acp{By4y(y$ByfFo)Z$WR@i=2$0jc(OLU<~ zH7yWC)OPVffnNm8a+E}1y4Mv`LV|&=q}Gpdpn@tm{Xwa^dFA$g#i8`CVj&=&b_ObI zzu68kVB_E{0Krf3hT`7)%5tRs zk^K&6NpCmOGk+~nP`JnyjhiDl3JcMoT_q53#F|_TmHb-UhudH$()y1w@29K*N3IA`};a8(_`W;KTh?q)W>5Xu%Q*R(PzJ#F!S)j9H+|Ze|39H@@Y0IwiR^z09 zy)u@T+nt*?S(z{M(c=8})*)}ROP<6sH~umm;>M^Vd)ERyR2f;SX}_=y@-QXJ~n8&Tg!`);YIMJmbL zD-DWOzY!E;00)QCTVlxq2A{k-!G#FW)|jnuG7Jo1=gDuR2CPAX70m0v1;K#OsW6~i zd~{+WrrfArDdZUcqNy4BhLo}YPz>r$$Z(qsr{Yj5krU@Nc(Lb|MGbL zfF_a1;*K*+z5O&_KtmN=2fBjzcx`%Og1K{hV5;qTCV_7~({13rl%7cRAW1+=-l#96 z6NsYiWT+>Dpq@6!x8|AxaS=$1l&im)Jpl!^s~NftTVT&^;G$i99LKZb?)@VgKE;X1 zkzXy|S||UR7Hh8i<|F-{Gd@3@sXsKZ8oS$KmC;=qWD312`uXhSfw;v~47bRlae*Tb zmFvlN1g#TT=Xb|0ywat)@AIqw0Bp7%f{Z=^1RBhR87u^eKNMXPRy<1eF@7Gxw0DD{ z;-J)qT{?=x#-tkMh|0xN&C-El zIGg8Mg%Fv}%l}Btx0I{sUZQ%XXm*%}-#9ir9JB5U=LtDI1!2~+u-{Xj9(5;NN6d*S zJjI>%f(pzuVfSG7toY~N@jT+zIDbO_4p1Dq`hjfvchBOLbnQlJ3E@P9gri7gGUz7D z3FHS96%~OzF#SY5HduE4v$Sca%Bi5dz#ViNi4zqxsdFb)k)Q#x=hmEdGZCe|LeQ(oI&k< zxB1Q~G1ou3V_S@J5{lqwNId?JdSzk3!ANFY3)?e|z4yGIph!2pI(wR!T>A z4(Rb<`aPGgDz44nHqvxx*=B?(Cp?Tc5N0$V7Tc-q5j6gWQw z-7L%BV8P&m)Td9I8TtO5?pFqb54h@&m3!jG?=7B&G>5RS*WkG5Zwx_TO#RJJV*3Pm882<+vR$XzG!hn|zI7-OYO< z_zI!aQN$f$#)KgAyTtIzre-Ewzie}SvJ1h1Oo-Wb7TIway*EAmxrFa01xTCJO+IO$ciO^?)(2)f?{XJQ$9%8w+ z5U_Mp0PYP$8Gvhqjr%>T4h=-npaFDb?wKZr7QS>l;~u^nIT-!*Ybe76YICY=jRr8m z($9~MFe;ptvZkpiyHeWC%}w3Kg%3z7?f2XHTbYs?ZL>E1yHgAjq0o^Wy^0oQ(D1ao zCy}x6*FUDZk@9!arUB>gUtEHj`t80vpj`obUNv>o7~oU3N_*(VUq3JuSaIW1dXfQ* zzNV%|fnQ?81U#DelKL=5Z6l6A@9&A6LtyTOWA;F5H36h7Z@sK}rUx659pp@w2~Xp3 z>jfXT--bm7I>Uw{Z(=g|-g(^SU`V9N4@$R7@Ai2CP;=0ML7u@Sv{mmnRpfIbS3W6eN==TXF1*Bk>@LN4{d|3E69+!Ou+m3lthr z5}&Jra=)?Yy$($qkRz)8`OLPBZw9kPgzz7$)i%{K26O`ahc3cGL3Q+y&-Q&qQ2U#ow!68bWTY+|sQckfn-p-b z9ad*3a|qn*8Vp~7NR6?hd>9cDMU=g6-ADZj`~${sK2bqgW>k+`SlA9Sj-m{iIW+HF zov&qqO(5hqH2~INyRe+7I4yjPz)A#hKy;P>O-xwQ2nE!J-F7Q2{%#be!zU6AlaRM} z?LMM^1H^nnv}nPxE;d956%aO40EddfsFH)@d0Yh%>%sB6mv@%_$MGMI6ZzR&e@ zg56Q_fx9fMs{WN>@}6^3Ps9lxg+^jilqjU!;=*T9CFl8xdGfj7S=BSuPN`lN)$QGf zWTqd+9gQfi|C}&cj=j47`q+G+T(z85g~wi-h_Z{aqET_DIj41a`06Gz*v`(a-}QTr zsz0mT<7zSD%9zv2yzp6(-=6$-{xgU53+TjO1ojAIB zi$u)2K3r2%$i$to<~FigAIyL^CdMtB{&u1L&Rf*bK*!9?461QsxE?_rA?6(@lV5Vq zl1vq8SED;dRex#)_)#_6Go15g0XWI!`Hq#SX0>jy!@?O;pgFH{70y;rRHTf=Q&m;9 zcXjRg>fq|UKZ~P~L*>59_{ZI+B6i{2x;@-Wbw&Aqxd07UQs} z*K>F8-~ZY8;K73_ED(IP%x_Q_9*P(}HhG05*6pNSl}&A%cD#R||E1NW)+OpKz%pNL~=O_FqI zXefn?0Gt%`=d`Rc?@M7%v5~qHqM&9l#l_157qYk-yIcv2Z?;^LI5@3CagMW6!#-Ri zGyM9yxDau$tD?u>7vh2t0l(;#pDyQeHMOD^qT4p|M6}4^eZ^E#a!D3;5=+yB- z`^SKM8)!Dm5vgB1s=q4zp4t@e_jA%d)~CXYLZ2Wfz4a{j?|f5(kyO@A24uRePgP&I z{O$e=UGHOkFMyz#8PsJ+9eZ<#e3!IxP{sa+C^b7`uB zgTb1$<|X5Mw=2)Cw8!i5NDU@U6W^>} z(*%AcKDjLg5@lnCY}Ue#>ay!SNGN?7$X5i=C>)6fFEqbZ`m1+nA?wOKYSbc;RDAO&?{>8*?xW5I1o2siBiw^ z4zdxdtlK&mY}qJ=nGr7xVyO1SA3E8T^HFemt$HU62xx7rNMwM{&gv}w*l9_*lCgV{ z-(q}_uhm&uC^AqWWRozt8gnD~0&JzBk9#$@)CqvdmCnnOxyQhCmDtEbK_^sY<%oHx z6lgo4r*_>`N=b;~;a@S)>GG`mH?=2@DI2uVx0^HY z4Xi*=axMW_zIbBt z4jKs`TkU);txyuAQ_<2Q+W>8y_x;F;anYXGG8#}q#^P4K53wEP{^IGeTcR=$dmkQH zbVSmHlz0BcNKJd%A>%`_0GZnJk6q6zEG>`pA=WQh7qix!_X3g@C8S4s1@c>Xzbx-g zA$MZ<)T_g<+>FG+hRPn2o^Yp1vn~r?c{B^}^$JXD~;UbbUje2O<{Y)=!;wr&iW*BXM}Vn;3(F2E@Kx9eM8Na~<*aj$waV>-$ zrt}d=GDY&EX0Eqf7F&~5k{gLGx9Y&=!VWvSk+2*)mG3y)U&gS%Ovg8QwH5aPA2cn^ zA0bLw=2&H&lncRCXkbwP-kVP$oi=oFqqTB|6?!r)@32hy-JC1%YCnj*g@v!kOxwR4 z&NNjYrT~EkF?vpC#!r%-EbmJso7|#!^8Jz(U#q~&q(wMfKI@vy-V?X4Tg&W9jjr3H z*tEBlsMT}rHNLcJvDs%VF8-pq+wZ*FPA&2a%a99(+81Sq%pQyH=6|qtB~iX1AZwTW z=lN~>E=7k#gm(v(*p$%txwxy*eOk6hYhUBaBVvtJbwqbP*}&@BX)1}sEX)6phVdZ! zGb-KSvvK&W1+Be-b}wE4Zn_Ihpin-Tjct1cBhpoZrfqqD;Zufb&o_d2jvsSx2Ia}~ zxD0*w1biB~V%QtNwf<(E2|0Y~EO>T?L8B?eiK~+q#@v(K;7q zWQ)2Aew89!2Ky%Tw!VOlk4-@m%hbrIR7-MeeO_WQ(hFkUvy z`a@+S2$zW1U?L>d9FR*Fk;)yt9!x-!?`R7Jw2C@rn9?wiO|=~NZd`VMc!(^h-JmlG zfVm51)sTqg3@u1%t|ez+z?@6TtA?8x-4X^+M}KmbZQCSVrm>Tj&BdM4k{B2m77owR zsZUa#t88?{mf(Zv_`3BRrq3#fV_ckO&x*`Qc9s8bgIzZ5__qiEbTtgb?u zV<|cC>c#V}J$d*25NG=k>dxqW3L2&k^rAWi!$ef-Y%V<5q^omHM4-a7{cGPOUfmks`mchC+8av#wLN zqh4wY$N7cpjRY~i!JT=;p<>rTF#J`+@3%>)mvslHGq=t=`9xainol|FEza$E74){(o1wF5ta zE=;P~=ZofNA0cI6PvfQd7|>^3DvRdTL5qaVC()=D65SUZp=-nbSc!?*D=T}8ofnay z^dh#RLNil?a?n;}Sl%p$JP@dinuHGK?x}Tg^{Ldx7M)8>n*L@i7|cDyb!1!vnEQo5 z<>c&a*@PS^ZbYVtT~gjT*VW(VNL1lm{ZiL=g=bgwO-Wz6ux{L55Hm1hXx-pQ2Am1< z(h!~OBFPL$+W=~@6nzi^3GSot6mlZ{0sQw{`|0v%f5hLa@UhIo^n;FNt%mHJoJF5z z3Vdv~0SqRoSJ>3l)a*Az=0q-+({{DTyshEA@dQaCOE`D#`t5lBp?Unlsdl6@A9$I; zHy8yb>m>BTDyOWw*&;Cpuhz9oC^bIf+}7bcT0cY7{$ogcDOfYTYj~A&N5g!6&A+xD zKoBk7yU^a&2~!P9GURIPYJZ9Q%F}228R#`oWLJc-O()9o4jU^DQKoS?+`GK%g6i#& z$4sgq3rI98=eNk*p#C~Gt+2zYdKLfx10U;t>u6-( z9Bp3GPrJIK^ay0AMuiu$>3+Eg&`0Y8F>dBl%{=7MT2k(jj?7SLhk z%*`I=b`*qlO^Z}`O~1Dum&Exx-h8O4;93K(sX)xiD;;GVbM{XTR7E(mRg_LMelf&&qiJO zuvn5&!_vD6_aXq%1QMCXcwqM@>3)PFJx|x^ZVp3Gfve-#CTh$3$#QNyHy-XGkFT(c zMrIf~QNv{hgYP#sBCjBhv)#r((U96=5=La&{t|+#_X#f@O0T=^-|xp4FCO?T;iN94 z8@Y}R%u}SqRdL;bt}_XAI-q64Smi!TsbRb*HXY~wcuui1Fy zsJAHGX*$MWSF{w&?SI}VWT=zz+!}kuk6J=+lO@>AH}8rdqebO(a}laIs@;> zaFQmFf3|@M-I3|*i&AtArX&-oJ5vm3rB(p;LkznPwG!YMMR#i^}k z9_Hf9jC4AS7Znv@{rU5!L~~TOuBnLuFdKq7Lqaw`F0kIpjx#LEU_Bpg6HhsncYMF`A6_~Gt*nNX zbfcvMEN##%Q~U3O$RQ(F67Ptu=!rwc65^S^AFbBTm9Bgf89KF=SS4JU&@Fq>$QV># za@?RD#97anLdI3Qdl^fm<=4cYwYXVOz{>%BFNGJ+Vwx>{V!G@OEY;Fy1V8Sf+Am0Y z)Fkzn>vRk`-@~paU^oR&{bT?H7k8b-e}>ik;R9w==T5j5sV``Jt76Za#NBPCCr$u1 z@U!0bdjXu;dnJB7XmggWctyUUXj?R13QzceYmhL}COBtEwk?*@xMtoj) zS}1nZqPzB*nsdy%9ihi&F!FAi&ZYwQu`{lWE={VnFmkb(Gh&A18P#H%hm(aJCzWQy zk}3XiXA-6EnslU>E!?}}x#5_4ec%YQ7%Kpet(%+|KBXP@S+KQF52f*SSJ;mET)-Z6YM@i(kVsf!{?)mQe# zYoNna+qO>;s9r#puaETT?NzH^aT~f&dEJb?rBZK|qT`cV>_@Pbg9}(priC4Kt3NOr z;}*G5tx)!>+|R&Df_08%crm8zFIg-#&>m;cj%|uIiBV{22GO+Z`D>z(I;hU#eL{(i3<i84+qA(FdKC+1gF z99)z5Q=(~BI>(lo`|iJ6WzfqcQ@gd`?L=Zvmmbm26>ed*Db9`cjL#ahYyw^97yz|^ zmh0ZTt*`vImX%fYq;smm#^%%Pvoqx?+okX#i7kXoexv!?y+7$WXr9P=D5ky{11t#v zbyJojQI?GiWU@!(=-K7)s~EHiL@SBB#5$5DB8}v>Wq86my{&h(m(IFGhPuS_JE#GT z-)^Ot$*2wd1cQ3sJq=6oyE#K|fy03=l^dr=1vmDx*zMRx7GL0qNAGf3=MR)i9&3-l zv9hR;kk^1Bh@yeu1y&5Faaxb$Inn6%pFYjOZA*-!*qjs?Ha73vFKQCVP6mHV%T#2q z_FOElS%6KU@KJahSX7FH5qNuT-SSV?uXjkcctW8;~?~MaFdl@5zsS`kiES86n2EFTfZqayYu9 z_ChqV?Tap+7sbOZx*iv{N%~Pak=MJI-14FQ6<_WhYWY01(acZ(W6|j+X#!ZE3n9zM zl0(o7M1{|?+ZWc0>V}=mal)GohWeSY3|u27ieBi(t+L98$iRuS{^qF97HeHG--Wg8 zBS)|9-gv7Zv~~LM9^Z2PX~j`Rnu@#&Kon099Ev9HADbEH^zya#>(}-xv&Ej}gPO+X zdIR`0BzSK}k@I$XBU(St#O*9go0mPN%5%?>+J8ElvrDU>@q+LmH|&5PJwVmTg_IZy zkt?wjw5~|*`?=tdF=r5(2A-(X z;MIwG(49`ysV{ns?a~>pRuAvIkKG$vi#lJcieG5*vsv#@S>~>zDnKn|v>^g0 zIOSOGb%c#wMCFOour4kv8dU+duKnL{{-ngL-LSp%|F=m`fPooujE)I1I@QyZiKjHb z--Z*QJ-L*4<}u6vSJroc!}V?Lk1mMbdk{nkAxfeQ(IU|j5z%`If{^Hp-dl(oj7UP1 zAVi5adS`S&7>wRW9gLa(aqsVb_xqmzeg@;roPEw&XP>p#de^(x>OOcj8!|Q-K#?%? z!;im7Uy%xi?h*ri)d-;5vG^733m6-%l{x0`)u;)t9l7})@7D3%@GYv=FO}}4za3p4 z%sao&yjBp|COREI)&R$B)>~!SAMh}#3Gs%8M42UQNtx5x=uz4SfGru1QZBIqQqT(T zt#2-0t*0Od37BwNOblO}{cOH~mz8G=36=)kN^0YL9C0YywPD|$#S`{0#Ps(%!!y4` zHTlPLJ~nGI26Jjv7}RVW?0k5VB?i2JKI?|=p>;*b#i>lojFfw&U4Zxm@Ie3kd~T4V zD2hCOZN&6deXdUlxZAeVFV?VqRH|ijy}CYqo(-L1A&?WEHQ+e~1>bdn`VL24@XEaf z%uM;C9BoMAn(m|*E!BWJf?X0DzD?yH#M}Wb*$pqiaZA;|-&UDyh?g!vLP27MVvlD#b=I6;GUB}+neqxxr-;$g{5&%fa zXTSOE+T4>rUrB9{G5&D1;iMQD`+6MDk>SyTkcKfy&Wj#BTd=WiPz+}Ip0U>?_elJl zG_{pFrnfMM_K(Mr3Wp$GU3T2)y7RY{S@=7O?|nKC?|DKE_cMKuU-62>r#qY;MYzBB zZeO2pk=ztXa3n0wx=V`hAL;Ss1v2fOYrNTYpuwm^{2C+>C_pKG&5pHIv~ZhJ!7Q04O)1=` z1G?fcBl32_-3T9G!-xgmh@b#&q#H6-R zu&kL3{4VN^>MzJ_{cfKvbUegIYCN#T?#_|qr1q92`j38pu!#tx>AO+2%2)UIf7ssR zMF_PEIeEo@>0up3zU$c5gi)DRW!~dMkTn{Fa%WnX`~ZXqEGb|XR)Q$07Qko1Pb0%X zziwnSap(7Jswa&HPDQ&ZZD(rM#xW5#vpM*8w8h7{DGh{InAA~9f4T|8^CJho&C~n_ zGAf5mc`u$FZy+-%X4xpWmOuT9@%n9=so*c|B5g9&B?Ahi<0H z`nx_}R8z>i$p{TjkJ)oUkUMxQd@Y?+(|?u>$c~!VVm(Z`cwADaj~?6K*qy)ItLd# z3zyYO=RSY4!g_P9p@Q#0#Wf>530Oq8>5d`rNFxE;XE0- zDb}L~0{n!%QeJD<&Z?DgGdQgcl_vbW&n)>ZtJ2tU=AhanfK9o3YrCp>M)gUm_%%Ry zu*g)o@$Jku+FqEC9Avbu^C$2^m|4xTVPyO*y#j~QUM0DB!B^^e1x_D&Mvw1!!@%0n z2m}s$R)2LmH$JQ#j`XeAHGscF-E@544hJl_hkx2XS>g)Rw7QT+BGLmR{D{X6c7edO&Z^ zDFM}Hkl<l6N1>6_chE4u>_N?DtuV!d#i@E3K z>LH^%h08V56Cp3nVhq#PTmWNJ{FkHPDx9ZoV6&eUJQL~SF^&dutKYfr$f1~Ejy#St z;1Q~Mxs&GipuL~f_7@phmkgUG`N4IxhrxO3JE#({hkC0h(r>n}yM)d-ao%5YpkG$_ zY%VB3#W~WokjNo7{N%IOT`NFX6p38Ay3MGePm^{)zVZP^(I@Ntg*Ru0gL4NkGl>dw z|A>J}IiOx$_(|36wXu*&>Liiovzk4=Cm*EvcJYex^P^SIODjr1dfvzcqX*~qpCF^y zE1}@BbBj9=uk%e*hFK69S!{(&OD#SoH%pSYe`s)~*AXN{uH^K3w6+X)30ao`EbR%`_6P? z@WmIoU?$EWzT&ZRgzeWCkq0iJ^R5~|(rsYLjQeiQ^z)#8-Saz;Zt<&K-HA;%$k;lS zdey))U@PiGx%LcFh|WS3b1yfxB9{-%`7gS?%8sa`ZmPovm&*sD^}HvlkBQ+4Gd=iTix*7u?^m4pBZLanomR(O^)>M&hlIfJaWhBu@_rB1=P=Ur{hBJ#|eZv}_G;>gNRShP4$OihNgU1q%xv6IBM zE#Si5V-U#SA0OB_*#LYwWTf9ypQ*m=GRE#Q_cCpXr(PdE9NwlgX?^mX27c6`En+B= z-Dw@N^u$M5gpu%brbDMS<(gF)4e-+fz!<@WF(2Z4a=rK!-Ja-KKutK#ETJBI~fRxSxv zb*FdTtA^dubhUeNKMspGT%1QUv;}$};`A1Bl5te4LoDlDgXrqtIFfBNqFGoCxo11U8pf9weEj;d|b9(nl=la?KXe7UUuPXi{X-O{FV!qme z3UocOZM2*%#Ot>6aO8m&7tSf=n>#pfVGTbamtltvP@LG@LmSskfdSne5J6vbH=TRmApt?1O%9+QfsytWV^JFzQe4`3 zNBqf$zI{Ux9)X!xFMoNmXTXmF6jc=wo$kJtYI5*);t;87cCku|SLsB|kvB?&kR*#l zi!Ti(zm=5eKeLT0$Ty)BnkN-Z3?6)7hxQLughs74wMc{64q{UR8kXxqT)Gi##9@$D z{2bfg3HSiQ9;y|6(8jo!jlP37GSQPVE3uiFQEZ-XW}pq7-Sz;gBohSxid%HYkf#_c zUID)c`CK&YyCI**M6^6MwGL8I`=8|Kc;wTrEQ}vY?J|X|ELVTFvfz4J=#A5WhWBYQ zfyy5Ef`U063_HDZ=64Ac&-DS-hsGJzQ88I4f^TD!5QvaCF(}v)PwTuIhLh|Ayji03 zfIfi>hEGPzd~Bg9X2}z`@SQo^V_j~Md=9qxeT%(k)q~c-hFND>R>zh(4JoTmL`_Jo z^f;I#tmNrUamqAuuRF10#pqEM+W@n+{Mm2BFEprII1NxfvTlhLb9R(Fuw$kcKom?8 zLr^a&pLfztKwcgt+f(#*WOm`3Tc~G=+1XDVD{Q!C9ad+z3y-@RD~gSY?psv{oFDbV zHU9P-uEM|kdgs*XJr>f72CHfIP1Gl4XX{F~yT!xAuv+oBK&Z=bH^9bSx) zCh@WW62Szy5nTNF%`hQkA6a3+&4{}fh(oAsv);qk+{e9(#}QSy>K~CuY5eu#t6W=I z8d>Mss<;s^fWWjb5j1e<0Mkg&(gEqUXNM4imQ;itQpJPkF2Si7#-hPnh^(JF-1dfdic_^H~0)M`IlotDT%X~{gxv_gjBANjj(SgCy&iZ3u_ z)3^QkxtGsFja`8LP#&yGt@WF~>tly_PTI{sd{UXh{Z-J6*oXBlJL@7UAtA;_`f+1p#d`F+&D-VvoL@9}m*396hZBJ4)#ysn zq-yTiCio+h5?~D%=b5X${+sK-dl~F;5>EPLlfy8WR1fsMc#{kj&Nb_Ah3(JYx{s16 zPLrC9mdE-brwKR4<;ouqsJY2wx3>PoDM?_@&$IRJ`tMkV+m*lsFXua)W^70RJgauE z1wAf>U0ERqt?;>YeujfPEo$Fy30Q>=*D_wMJZ+hSa^V59`QLmPw|ApK}wRpnjzkCo$s!$IJs{q_evZOR4n^EAnxWlz?N|FTAB4ocCO}~wpY&^ zqBt}Pu~iPSRr{>=CW@Hz@+0&a+Oi6H94ng*hJRds#7%y0V6Vmhk!(AiEPf(hSXK){zCGCSyE6bkM@` z{*x!aO1FUQm}REtXVKTT2`D_BCE=Z|HSnn#9v}F%-mt}am35HB$-%e;0>~ROwk=0THSf>5pou7%ynq|(iCNzrlmXq4DSrMu zz|BgLU#sN>BuPZZW3V%Nzwm-r2^j4X*W>)jIeh5~%7~ReXtJhLC3llBl9lYaC#|{c z>62GS9-1s18&Ixhy(>+=<0b4O?YZ%R;L{MJ->`Dx5OHHytZCd$UoYXqN1^f-RXlJP zYY*Q%IE~M6$&>g8`I*}BLn7iHI;MDeE*J|}{i=spV75I#RvOD1m*e#($9Gxtm&L`aC~RpVcs6w;!u(8wf#8VtEu6R`67_!6;ShZETGy&0Dj z#q?r1*^b}X#AI}2B)GVif5$V;vgF5&qNBU&&z{lr4-7mr3naHU zKz74r-mZfwmp7i}SJOGVOepG3(&<#KtD_WrJrEcI4xEnw!l#Z4c`J`;Bzm|uT~Q(A z+O!Vp2fxBFLAo2ZZLU*u!;iv?8fmZZWP%7`ivQ5`R$V24 zv1kDZ5xZ^xLJmg)_|@aTC*%~{fLxWR(XSR72QXWsn60gKgZJ3B>(Ah{-v6E*sT6w@klH98hytQ`*qLVqx-DTR zX4k$0colvhGGeppYeX*_@j+HcJg&fTNp_f@G}J)i=S$6S16r$}Gu$&CmQ^O)v!2|4 zJZ}Bjxls9KWL34Ul;TqPs;u$}j|-!)hX}0)AGr%7r*vLeSEmQ1*%;JzfiixZL|+a zUDPh|RR9Se@`fYTAriO1U?>jKi|a-AUREOl4ZA*O(I~E#ln{|RAXD0&fxe(dRF>X< z?S|0~WU!r!JxQ64E=;ay2BS0%D=Z*Uc{j8ff%;YnuXg@S^|3|d*@oT2rpV9smd303S6-^LKssK2tFSQ2#3n?~9F2dgSV!k9SqPY728vBQ1!@@QGnCsuqm3?<0(}4VmFlPVulz zQH@Sv3FQk}f8btlgJK}W%HTVQ-Uv_l5-**^mQy)BV$g5NhUFClk+fPw8dWP#oVZC_ zj5$&01FB}7cJ_F5^$^s9*pv=oyyg!~e%!0X8j14JzDHASwzK(S+ee~da3I+o`05Vb z8~sfx+88%(ktQJ1r-B~q#LIaQ=zDn!0qA&cp|7B(#^CI0%KLy^^nUI>h?=pSUkA*_R)-V zgmFYoT@=IiM9u?v&ObwIj9OpqSc<-MXB3u=yV=x*uYA9aPg6XGc2J%qPOw$vt@u;M z$MPg}!jEjJ=|ASfrU?&zi(~KDwSMW6Q4S1L*xJ5*#aikM~p*96PR;! zpKefSK|uj2%EaV7fz!H%G=r?kIkbGi{uMu!upxd&gJO4ok-1I`?g-w2DdNnDo{f{{ z>w@goP;E~|z`-yA*!ijIAht|!6)lDOcH_W*UCuf&0^t5?kLMd;N2=nXB`yeE*5u*B8EYxQ~_n zVwCA7fxEs-+wwMQyJ{0s(=rdP$7^+41)9N}nqJx9)dxEx;FT)a+UY5d;!%AT%>88X z_Kln_{Fn4?vG(HfRFN`Y-RxM(pm;qJdik4Al%L(|SI*>XPg9T_2UnjWpeOrK_hbG_$EU4Cu&dqZj*Y2qfOuW1z5ps4qfmu|Q5gr(| zzgNJbk@ukUJ3+*dPUEZn{%r8_bm}q$=YpJW@Ke8A4L1lq(qEkBM@HZPyNY`chWq^$ zt*cN^A!$y^Wq8J(9rt1x>f{_6dWU8J@X!*E)^9W6AQP&7jILhbFu1tzHxz7L%eLF_ z>fA%VZhc)7r7QXFJz;Q-%CwF2-6z>N93{N{WADK;6N9j%Q>`blV1OBRJ>4l@WOq^} z<0P$)86j00Z@oT$Q6L5V`T2#!Moir5(n|)EU;1=3;~wChB`$rl85z?9bMLh+T0Gp` zNd1P73C3S&50R84^|P+1ZrMZvIu~bo7+H-hru2BZ6 zUvloi9Vh;gqt$;?Z1mv%C_C}bG`_H^9v)}c^4tUaCx3y0iX6N#KloWx=NJllBv{Hg zSnu#;2|k-)E7)ZnwXPK_W2qBfYwnjVcu2E6BL!Fm!r$KX+GCV+|V|%Qtc{iSoB6nDi(bYA$>$!^&Tv{nI zNY+zL2CpK6J2U9Wz8uN(r4bPeUDdW!rJ-P>MaWaB-^VKeMe{4IfXqQ1hnBu{ugpO` zkyE$H7TZ)TSq?6WYg&hMg@c9M zo&e0Gg@8H0@$eEVee!yK#hRzP_BoJUG9=MF@r8X%5TyU(owt%BUYENTk^gmnVq39= z(}4+#ythj@H(O#o`Z-{*!L)s3Df?=#g@jj<8vx{99VmvGkwtd` zsHDO9W`yjJh!81_VKNwv!tmV{p8-qJAxcOsvIz4LQi-179*|Iuw0o6kXOvFV`ZGH% zoQR6iI3?Z6NL+;AK&18PGYNTch&`EYTO}ED9?1%b85p(z+W8vyidba8Y1@XSGL~$L z;%>Q)mIDR`G0kKLjwtP*%B`)t^%T}l?zD-WNJBh>PspyOQ9v;d1y+DFb z7FF{f47WsgSe*Xp5JCkz*Fg1=;9SGlf|1%(GUl^kZ_A-yE9f&RgVIg{GyN|HpgW>( zwC@Cg>M!>W(2}?sPN(-~&oR^)z{i1S^KfKd!|K&?Me+FyX!t85eFhk#7cFXf63^K` z-Mar{q?N6a zF~xpMO;pSpLeqs@n;KA~AOmr{rgm|Pj!FvVgIhm`LYE!{+ubj{k$-X$9lYey?*S^s z*K6MwD&e1HV9;`W9cj=iD8y_|)TDUqr>LWWDURKLcXYk- z8jBeCwS~VTUE`L;BIo-Mz}| zToAJ;?88qe5(Oc^u`@!FRI!0qi!fn*@B>AVlAcxm_u%E}3vWR(Zj#T$LyI9o=mrek1P!tvXnl%ipW79MAX5nP^rRGni zcM^k9%Bke-=gJxKu_1z$gmOCvyo&UJRMKCP7HCEzX!Kuhy^n-ugTdBDhuDvI^sO6| z@h|hGh%{>{(TMy>x5S-CF?S?W*OGRKe{&d1CBJfeXZCj{vd7L+au8W#VC9Bn7#}&teFX0^D{nqSNy$Q5e(MgIZR@C8CSN$5v z5=`ceb`zxsZPF=So;HS!D&D+?{uRYB2-IBxVwJh+1f-wiZVVG&4Ts4^W8T7^0yC6M zF7$}Jr2QyX=sOum?ODE{5dCcskp%q=l>uXZKmYeCie8BqFNr%O^z4WzUV+HC2ZGsy zg@pB#r*5e{dqLQC>pNjSh*T&@5DR*d6~dZ48U6@k%7QaD8GWiN|2dIGlGu5gvlCFP zjr&h%pqBvyz!JX{9na#0HEm+1H!}tJeKIpy_iTvEn-2S1b_JTbpUL#w8e1XGsib&+ zEGGPDjd~v#A6QPSRU>5uEmd8IE-oZ!)K1&~VDP(G-bbJvB(OionVW2lW`rR?WKt1_ zNsRwxjRR1Kg1Sa9K-!{7cMb&#RBK1J6P6m4PEU{ov*M8K_S?l^~EAp&u z$?MDbb~lSRm9Z_Db)NJ7?`B8TfGjdSZ5YO&;Kla|#r7fL2vUL1J~BHvJ>8S8H`-Yj zsTIBFX!^@8&R9RyR5BqX)(wA%+=R`L5SaY=_a59ggb-899GRFHups<%37xWQi-nyS zdGbgTqkNVf%qFE@q#alAXuDx#8li1Z)6*_I`Iqk~lUWVXm7_HF!vLiu zg&mC+XxY!j-JQ}h$)?BU(BVcPAio^54f%}`2x*GKIV+4RT(_y)B-y_rhtb=AEe9QC z?DdVSXo0c19Sp?5UOW$Lw1R7bnBN5*HdOzJ_?ODG!a^RnBYbq0$y7gZ31voDYj%=; zBI-&Z>Hr{1(U&VvrT@6tKTcsN5DaBft8B_YZ&a}(H82VhBB4I^r#|poI`RWbv5s5= z3)>wm6(mDJRN1DS_b&+?pJ5zNgf?a$9DlHxiAO}cKFYw8yFaPyS{E5LGyew>=j{wBtbWt3y*l3~z5g^rO#||LqOPoy2jGV2$R3|i5QFpWT5`wktT0h(IG7CNAEnv>@xCHV*17}BgYT8` z6l#=$Wa}AWWpJ+Gq?@fho(I)IXd^CsSH{qG?(c$@D}`C)(Tj;-Gc$gt*S z_Vnp4d6;HBY!I0*1?h9ff1b*|}2 zMXr$W2Y?ZAUz!%|yN~G}^z>V{=>02)Gjj}``m=E5*vT89oau`FgWAsp=bY=*use0+ zrEWNZ6UYU$l#o&mmP38xx_MEGIBMXh68@e!V?c~O5kThAK4-l3%T)uTV|o=1Udx|> zs9b`-?$YuSQ19C03-+pQ#qIU?o~{lD%kDn0>TXDvUB>RuoY|a zpyq^tIA=(b5ahtCqLC!1f+VPpt!f}7e=Z?^;AYph%E)T?@|N<*?xT@y<%@kmR)bDv+m#H{^HN z&9*Im_9Y}PE~NEUqze#2dp+O>6xHF=g)UqI8PEJL*M0XsL4B+*v-OHZQ}-I_tgxNc zfeDWxK=?Q~mu39gFCX#ufLUCg8U>`zLC2Yb z*ls#JT)gUua)gU^x?82>)%5m>23I#KENRNa-0NE?^6lg)1F^U8TjHMGGiwch#(S_w zvX7Kwl3GGx_BC9%mSBKb-){Kun!2@w>Z@p2x34?}JPN?%1@mIYVd%Fkr3b&8vbfrh ztZBr40wGu#Q#hk42y`=FQ&ste>3y4ewMQQWKPySxGW=*scRN#!lSeFc{XwM&L8RSh ze7zO!P!DRn8LA4NFFo5~9ox!9?5dxpqsFVKL|w&ngoShf)e$A+ef}|jdwy9!7pjc} z|5?W=N-jcjX&7l05fMOTtK5aFL(@>>=G;4?xv|~qmhd-pNJSZGCw!6lWqqWWRqz|o zsq(<%Zbj#$W7{C)kqn+}>}*MYJ$&Uu7P{}@<+3geJ&u0LJQT+si&{7A3?v>CYw6g& zAOH3d_K>0rmOPqR!4J{~IKn^SSsb`RKJ=wnOGW*TM-F;0!tx6#qDb^w>pHhligA4L zmgdb$*obm)reX>!BGRv_8cY6?uqHX6mf8&H6$cB$ir}w{}_K#qF%%fIb$rL!1 z0g53(6o@tYb5; zBjBtcQMfB$YEG4d1+g!1%3{oA|C-m+Gu(xM@+`$SJWqP@7Vh-VB!aUcm2h03U+ax) z=!*d4W{&@Ueb^RuG8B5ZEZeOWihWV4ShtP#F*=VTwN*Yo&qNZFUXz zzr%)S!qyKwe{_7uDXRY{CpdVVelAIZL>bEA=uW0nPZxPHtX`K+TB61F6I=0P8l;z< zn5#LQp{bW|C!#3QNp$I3k{3utL+!quxYrY2(eVW6hwhsv?_ZMgD~Sijt3aay!+|e9 zSh!jY1au!7bi!VzAQrH_H`y~^({2{sNdmOzUKjiYq7VVsjgJ~XyhdAAhjLp{o` z-QEL7)4-EOotCcv-+`GTc_(gkd)io$KxsqO#V1d3?Rpl@1pWY#boVP$BH(mEBhaWs z*{tM$5YXx&F=A7XGYHv!U*pA+i_P)*!u)w#~2f~?;)pOf_uhwJ8a?rZ3D{#ccyJ}`@KK1l^M zYsbQcW-p*lRirGo1WXTIj>(7vm~3zhAkZ!!2DNvPOZyKHP7GsxM;z9Rx>QYqZyU%5 z)s68E#OkN7?kRBtGk>2MHh66H92`0Zak-}H&tdn zRct_@tPh{Nr7LBtB&Tj>sRK(de-6@v-X#k4MAYnC5(bM=?2`mAA^(VWWRjcD7qaTM zBeE;;TOa*%>a4J_*Eb$|%2!SDoOk9A3iH2ACTMCEFUc<{$tSc^>~&`^t&AUhE965M z7^J>TAL*d>gQ~FLk$u>K5W63D2Ma}s*<#w=uDEhby<5|ueHQynEe&sP+3d92cSiI`SzK+O zA>cVUSdoE;L_*!p^?#t&_b_zCg%K(V1nO~RDMZ|(*W%J}|A)pTecoJqOWA<5SMjr4 zzEFzpu`p*uT34_My^*tC_+YFHwR}hLsxMLepy1++QgTFVy}`>>=7<{-cxn30C1t1I z@h0&&DJOq;m6mLg_QuEAgef?+u3H7zyCp53dMY}%vgn1CvljsuQayxlV0jelCe7S{ zyCeATM$Dk;-&zE_ig9vbcsR29oCqNETvK8G)ztiwe-V8HCf^G7*{IFnhO_?HTEBXE z_pkop3B5+>^&>(nQWg=7{v?GC!PgA2e>EP3$BxRk@ZI*)#@|s5T!-K_fY_w>MU1+R zE1u32SNy?rr-`maJ|?U~S5%PxpB5Gu&iE04cQ8QrX00^H^S+BPzt59*mQ1i%5CUoRr&bOGYpzgz5J{UfDCRz?? zbYJipKvoowg*mE11ZK2E{?EbfM;!zPRhPwBC{`Lj;&vAQa~b)M#Zp|=bS-lZGWs1h z@&ETeU9BU|!WZEz6W2kF&CeImvw2VA%K3D6j+losrx9&y*I4c{Mr@~bbLXJv(pCEW zKchu(Ea{`fA|Q}}gEhCx_od_}*cCjG3u3Kp>doCI-1PdfokWDz;WeW9b6E0a`1>;1 z@0dRBIn00V0X>1n6a1#0nTW(wZjfb9A}722cgz0|Q%*6yM(&{^xpMcH*0cTvEnA17 z?=Fh6%X(t0Z)YXK#B4wP&tS7&TnuqPJ-c>Bg>&!GDrjH;(c@8@VD|vL6+oJRGKQ7M zg~Vm%3iM1mEBW}c3nii|s@yaX0Q74Pytp2nbZN*`Ih_Tuthf<^Gs`0;P%BDQ8)x%# zhUWPD?8AnuFjm-4{3p`g|8q>9qeVPR%zKVBix$PN=}j{;Q=!*{CBPp@kMuJmJe6%c z;7WSU7&Y~hA&zp@W@?o-k}?AXI#XcI3fXmWZtL0K2a;gBZF;JtUpvxhVT!T`9xu@e z0Nj47$AsAVwHLaYUMvCGi7-^<+}S z{t3I}G)+$K{KKk1(`_;R8OHx(nj{s>nq+cSSG-7UM z@yzxe{zM2I&7+ zN1q*9WjL9yAf6sMf{kNI`fhQKa)D&ICxAZr_S|CjRSeShN*VNc82{~T!8AhASMPGc z@_>#;@#>x2A-O0Gf^86;Fkl;o!@2DTnP(>=WfQ@$u~*#Bc}LU0Bg6!^dC6*(ZN#Hp zX$hCK8%~*a9#U~&m>&Akh?#$lqgUqtsa7MA6Ro1jB*`TF!ttgt$z{OV)kEQgzxWnZ z$zlO8=>FOJKdW6Cb%-RONN6-Wc$xye*Dq5msi5@ZAj@dwi^qaPKfZI=8^3|EFT-)X^86m>ccU)G2 zo3*WKVF4F*F-J9*yHb^B-BO>jik?%xeXwJdUlAt&&+|ZTk?dW%{+14V7UX&O0}6v( z_j+HQd?EuZa3tyk@orr(8f`L~$E};{3o&lhs=>=wV>E2!{oaRQV}?o|RAAQD;(%Qq zBmeLUq8ta`TQz@S3Lb}Z;n(muCcbePUfQSp(|G@3Mb>hLi3?FHQoFHRV0o08!)#A1 zK@j%){8|)a%;hZZN2ilUQ?-U&4cqY+xAF8)jX)kuf{cf)RlHmPB18x2rIzumVzqtW|Tm4`~&Mhm2%w{k*572}x za&o#g>{(?@G2;15%Q!+yKdO`^dKtGBXE}XiuY&tGy*BK&IvSGvh;utU(apTRn1uIa zmcF)sW-X2>^tTG>Zj?f-tNZ^{uA-(g4i^`tfGy;Ur)Zy(lk-Lp(ATWRrF*)%zIal$ lTmOo(a~jV3-y)F(gT%t*!gQ}xKY@Uzsivb^{>U=){{cr^fzJQ{ diff --git a/icons/obj/sandbags.dmi b/icons/obj/sandbags.dmi new file mode 100644 index 0000000000000000000000000000000000000000..0a5c24598aab9b5fd4994096c9da8df3a0bfc3ce GIT binary patch literal 1628 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 O0000 Date: Sun, 24 Jan 2021 01:56:58 -0500 Subject: [PATCH 14/36] Merge pull request #9544 from VOREStation/upstream-merge-7803 [MIRROR] Fixes dark click catcher --- code/_onclick/click.dm | 15 +++++---------- code/modules/client/client procs.dm | 1 - icons/mob/screen_gen.dmi | Bin 466 -> 948 bytes 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index 6a4579f191..b29a1192d9 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -354,19 +354,13 @@ facedir(direction) /obj/screen/click_catcher + name = "Darkness" icon = 'icons/mob/screen_gen.dmi' icon_state = "click_catcher" plane = CLICKCATCHER_PLANE + layer = LAYER_HUD_UNDER mouse_opacity = 2 - screen_loc = "CENTER-7,CENTER-7" - -/obj/screen/click_catcher/proc/MakeGreed() - . = list() - for(var/i = 0, i<15, i++) - for(var/j = 0, j<15, j++) - var/obj/screen/click_catcher/CC = new() - CC.screen_loc = "NORTH-[i],EAST-[j]" - . += CC + screen_loc = "SOUTHWEST to NORTHEAST" /obj/screen/click_catcher/Click(location, control, params) var/list/modifiers = params2list(params) @@ -374,7 +368,8 @@ var/mob/living/carbon/C = usr C.swap_hand() else - var/turf/T = screen_loc2turf(screen_loc, get_turf(usr)) + var/list/P = params2list(params) + var/turf/T = screen_loc2turf(P["screen-loc"], get_turf(usr)) if(T) T.Click(location, control, params) . = 1 diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm index 83542dcc08..d05b2d28b0 100644 --- a/code/modules/client/client procs.dm +++ b/code/modules/client/client procs.dm @@ -227,7 +227,6 @@ if(!void) void = new() - void.MakeGreed() screen += void if((prefs.lastchangelog != changelog_hash) && isnewplayer(src.mob)) //bolds the changelog button on the interface so we know there are updates. diff --git a/icons/mob/screen_gen.dmi b/icons/mob/screen_gen.dmi index 2071c634d1327ea703d95f89ab82c0c31e0a2aa8..75ba00f026d35529e5182fd9d91b9d6e7f4d488f 100644 GIT binary patch delta 922 zcmV;L17-Zu1GEQ_84Lyh0063Kaozv`0FaS!6MvnHy9&ZE7)Iy(Pw~<2;%&_$DUzXm zg%EP_57rctRA1kr;3k6GIdD#o%W%~b)TrqhN=-|K#Cf+T@k+iiBu+;X9MX;3CbiiX zAklRsd@2c!Jvv+HZ_2)GIGr2jryK%NT4&__jW0(}wsOb$R z*ndY@X3#In0008tNklb>Ae9MhG7_nVdfO2 z6n$>TaZK-R%apL+L@7n1(FmUB0RRSr0e=8sI2@wgZd*bKl2W4CY+7L$Qm@y8*4m1q zh)QjMQi@#HMXgo?03=BQ$8oT_x{A}&Q*3Q*q1Wr7-ELb-De88+006DEC4?ZYwN+XJ z!Z4(rogF+qJ>m8B6~o~$?c3hoMx|20#>NJ&udh=RK93=Upru?@{}N#sQoUZs!+*mA z&d<*$O(F>)P_0(c>2$EUxjAtht+iE31BeJGCnuTF`**ep02+-3Zf|ch$10@(lfpUU zJCr2Jf6L=DmEROrL>$L~@B5kkb8kQp1nIFjiMcl*NfNlOYg$JBNGa*)=!ibv1Se6- zO>i2AhljMbwubxrd$d}u(%yBxjenGqq?BLIJi{;y!!QiPEI38@qhM6S+~)(P!3LNX zU>Y{Sv;fnv0q+f^6h%?Am}#W<%&8E9lu{JOah^t4CO=DY9Mkdfaat}0K&@8GilT@v zFE8PF9&FnNfHc4U^6~=D^Kf={R)mYxkEq<;-QmN-r?qnc@H`K`@1xu8LVqcRTCIka zl@-+MbvTX#Ddp6>d(p|9K`ABqzK`AAT|7QMVmuz>=H@2tw{08MY8A`N%Xof%#?{r; zccZ~*6lE4hY}-bs(?Jjfczb(;)_P)9c7K1L*4Nh&h9UjH1Y>+z8EP~d==b}X4-X)H zL7}XLh^b2;>-Ca6G~_|%MSsZmeK?Mjrxqh*8Za0P5ClP zSad{Xb7OL8aCB*JZU6vyoKseCa&`CgQ*iP1jj$ z Date: Sun, 24 Jan 2021 01:21:42 -0700 Subject: [PATCH 16/36] Update station_vr.dm --- .../human/species/station/station_vr.dm | 30 ------------------- 1 file changed, 30 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index 76c8ffccf5..57f673acb8 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -277,14 +277,8 @@ color_mult = 1 min_age = 18 gluttonous = 0 -<<<<<<< HEAD inherent_verbs = list(/mob/living/proc/shred_limb) - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) -||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) -======= genders = list(MALE, FEMALE, PLURAL, NEUTER) ->>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix descriptors = list() //CHOMPSedit: link to our wiki @@ -300,18 +294,10 @@ gluttonous = 0 //Moving this here so I don't have to fix this conflict every time polaris glances at station.dm inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) heat_discomfort_level = 295 //Prevents heat discomfort spam at 20c -<<<<<<< HEAD //CHOMPSedit: links to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Tajaran" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) -||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) - wikilink="https://wiki.vore-station.net/Tajaran" -======= genders = list(MALE, FEMALE, PLURAL, NEUTER) - wikilink="https://wiki.vore-station.net/Tajaran" ->>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix agility = 90 /datum/species/skrell @@ -322,18 +308,10 @@ min_age = 18 reagent_tag = null assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) -<<<<<<< HEAD //CHOMPedit: link to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Skrell" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) -||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) - wikilink="https://wiki.vore-station.net/Skrell" -======= genders = list(MALE, FEMALE, PLURAL, NEUTER) - wikilink="https://wiki.vore-station.net/Skrell" ->>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix /datum/species/zaddat spawn_flags = SPECIES_CAN_JOIN @@ -356,17 +334,9 @@ /datum/species/diona spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE //CHOMPStation Edit TFF 20/1/20 - restore whitelist requirement min_age = 18 -<<<<<<< HEAD //CHOMPedit: link to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Diona" - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) -||||||| parent of d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix - genders = list(MALE, FEMALE, PLURAL, NEUTER, HERM) - wikilink="https://wiki.vore-station.net/Diona" -======= genders = list(MALE, FEMALE, PLURAL, NEUTER) - wikilink="https://wiki.vore-station.net/Diona" ->>>>>>> d7aa5073eb... Merge pull request #9597 from Heroman3003/gender-fix /datum/species/teshari mob_size = MOB_SMALL //YW Edit: changed from MOB_MEDIUM to MOB_SMALL From 4ed83ee71dcf90ef1a90834bbebb27d070408958 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Sun, 24 Jan 2021 15:22:29 +0100 Subject: [PATCH 17/36] Law and subtype preparation for drones Defines law subsets and typings for drones, this is step 1 of two, second step will be adding back the tool sets for the unique drones --- .../silicon/robot/drone/zzz_unify drone.dm | 64 +++++++++++++++++++ vorestation.dme | 1 + 2 files changed, 65 insertions(+) create mode 100644 code/modules/mob/living/silicon/robot/drone/zzz_unify drone.dm diff --git a/code/modules/mob/living/silicon/robot/drone/zzz_unify drone.dm b/code/modules/mob/living/silicon/robot/drone/zzz_unify drone.dm new file mode 100644 index 0000000000..3ba5bb6ed1 --- /dev/null +++ b/code/modules/mob/living/silicon/robot/drone/zzz_unify drone.dm @@ -0,0 +1,64 @@ +//The chad Drone unify code rewritten to fit into this current codebase, god here we go + + +// LAWS +/******************** Drone fucking duh ********************/ +/datum/ai_laws/jani_drone + name = "Maintence Protocols" + law_header = "Maintenance Protocols" + +/datum/ai_laws/drone/New() + add_inherent_law("Do not interfere with the maintenance work of non-drones whenever possible.") + add_inherent_law("Preserve, repair and improve the station to the best of your abilities.") + add_inherent_law("Cause no harm to the station or any crew on it.") + ..() + +/datum/ai_laws/construction_drone + name = "Construction Protocols" + law_header = "Construction Protocols" + +/datum/ai_laws/construction_drone/New() + add_inherent_law("Do not interfere with the construction work of non-drones whenever possible.") + add_inherent_law("Repair, refit and upgrade your assigned vessel.") + add_inherent_law("Prevent unplanned damage to your assigned vessel wherever possible.") + ..() + +/datum/ai_laws/mining_drone + name = "Excavation Protocols" + law_header = "Excavation Protocols" + +/datum/ai_laws/mining_drone/New() + add_inherent_law("Do not interfere with the excavation work of non-drones whenever possible.") + add_inherent_law("Provide materials for repairing, refitting, and upgrading your assigned vessel.") + add_inherent_law("Prevent unplanned damage to your assigned excavation equipment wherever possible.") + ..() + +/datum/ai_laws/security_drone + name = "Security Protocols" + law_header = "Security Protocols" + +/datum/ai_laws/security_drone/New() + add_inherent_law("Do not interfere with the security work of non-drones whenever possible.") + add_inherent_law("Provide protection to the crew and eliminate hostile lifeforms on your assigned vessel.") + add_inherent_law("Obey orders by security personnel except if they violate law 4.") + add_inherent_law("Lethal force requires a code higher than green AND orders by security to use it to authorize it.") + add_inherent_law("You must outfit yourself with a security beret.") + ..() + +//Alright lets take a look at the the scary base drone from dorne DM and mod that shit + +/mob/living/silicon/robot/drone + name = "unified drone" //Maintenance drones can be a Jani specific shell now, the normal drone will be a blank shell not really intended for use + law_type = /datum/ai_laws/drone + +/mob/living/silicon/robot/drone/jan + name = "maintenance drone" + law_type = /datum/ai_laws/jani_drone + +/mob/living/silicon/robot/drone/sec + name = "security drone" + law_type = /datum/ai_laws/security_drone + +/mob/living/silicon/robot/drone/min + name = "mining drone" + law_type = /datum/ai_laws/mining_drone \ No newline at end of file diff --git a/vorestation.dme b/vorestation.dme index 97554f5c71..cb6225905f 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2878,6 +2878,7 @@ #include "code\modules\mob\living\silicon\robot\drone\swarm.dm" #include "code\modules\mob\living\silicon\robot\drone\swarm_abilities.dm" #include "code\modules\mob\living\silicon\robot\drone\swarm_items.dm" +#include "code\modules\mob\living\silicon\robot\drone\zzz_unify drone.dm" #include "code\modules\mob\living\silicon\robot\robot_modules\event.dm" #include "code\modules\mob\living\silicon\robot\robot_modules\event_vr.dm" #include "code\modules\mob\living\silicon\robot\robot_modules\station.dm" From 15387c5a809d021e651fa6927abffa842efef845 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Sun, 24 Jan 2021 16:18:12 +0100 Subject: [PATCH 18/36] fixing typo in filename --- .../robot/drone/{zzz_unify drone.dm => zzz_unify_drone.dm} | 0 vorestation.dme | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename code/modules/mob/living/silicon/robot/drone/{zzz_unify drone.dm => zzz_unify_drone.dm} (100%) diff --git a/code/modules/mob/living/silicon/robot/drone/zzz_unify drone.dm b/code/modules/mob/living/silicon/robot/drone/zzz_unify_drone.dm similarity index 100% rename from code/modules/mob/living/silicon/robot/drone/zzz_unify drone.dm rename to code/modules/mob/living/silicon/robot/drone/zzz_unify_drone.dm diff --git a/vorestation.dme b/vorestation.dme index cb6225905f..f1c599b902 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2878,7 +2878,7 @@ #include "code\modules\mob\living\silicon\robot\drone\swarm.dm" #include "code\modules\mob\living\silicon\robot\drone\swarm_abilities.dm" #include "code\modules\mob\living\silicon\robot\drone\swarm_items.dm" -#include "code\modules\mob\living\silicon\robot\drone\zzz_unify drone.dm" +#include "code\modules\mob\living\silicon\robot\drone\zzz_unify_drone.dm" #include "code\modules\mob\living\silicon\robot\robot_modules\event.dm" #include "code\modules\mob\living\silicon\robot\robot_modules\event_vr.dm" #include "code\modules\mob\living\silicon\robot\robot_modules\station.dm" From 39e0e9ce6304544ace3d5a437f11ee6960456146 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Sun, 24 Jan 2021 16:43:03 +0100 Subject: [PATCH 19/36] Readds all Sahoc items The egg is back. --- code/game/objects/items/sahoc_ch.dm | 149 ++++++++++++++++++++++++++++ vorestation.dme | 1 + 2 files changed, 150 insertions(+) create mode 100644 code/game/objects/items/sahoc_ch.dm diff --git a/code/game/objects/items/sahoc_ch.dm b/code/game/objects/items/sahoc_ch.dm new file mode 100644 index 0000000000..73cf1b7540 --- /dev/null +++ b/code/game/objects/items/sahoc_ch.dm @@ -0,0 +1,149 @@ +/obj/item/device/buttonofnormal + name = "Chaos button" + desc = "It radiates an aura of chaotic size energy." + icon = 'icons/obj/mobcap.dmi' + icon_state = "mobcap0" + matter = list(DEFAULT_WALL_MATERIAL = 1000) + throwforce = 00 + throw_speed = 4 + throw_range = 20 + force = 0 + var/colorindex = 0 + var/mob/living/capsuleowner = null //taken from Capsule Code + var/sizetouse = 0.25 + + pickup(mob/user) + if(!capsuleowner) + capsuleowner = user + + attack_self(mob/user) + if(colorindex) + nonrandom() + sleep(10) + capsuleowner.resize(sizetouse) + sizetouse = rand(25,200)/100 //randmization occurs after press + + throw_impact(atom/A, speed, mob/user) + ..() + if(isliving(A)) + if(colorindex) + nonrandom() + sleep(5) + var/mob/living/capsulehit = A + capsulehit.resize(sizetouse) + sizetouse = rand(25,200)/100 //randmization occurs after press + + attackby(obj/item/W, mob/user) + if(istype(W, /obj/item/weapon/pen)) + colorindex += 1 + if(colorindex >= 6) + colorindex = 0 + icon_state = "mobcap[colorindex]" + update_icon() + ..() + +/obj/item/device/buttonofnormal/proc/nonrandom() //Secret ball randmoizer rig code + switch(colorindex) + if(1) sizetouse = RESIZE_HUGE + if(2) sizetouse = RESIZE_BIG + if(3) sizetouse = RESIZE_NORMAL + if(4) sizetouse = RESIZE_SMALL + if(5) sizetouse = RESIZE_TINY + +/obj/item/device/daredevice + name = "Dare button" + desc = "A strange button, the only distinguishing feature being an engraved text reading 'Suffer to Gain.'." + icon = 'icons/obj/mobcap.dmi' + icon_state = "mobcap1" + matter = list(DEFAULT_WALL_MATERIAL = 5000) + throwforce = 00 + throw_speed = 2 + throw_range = 20 + force = 0 + var/luckynumber7 = 0 + var/colorindex = 1 + + var/list/winitems = list( + /obj/item/weapon/reagent_containers/food/snacks/cookie, + /obj/item/weapon/spacecasinocash, + /obj/item/weapon/reagent_containers/syringe/drugs, + ) + + attackby(obj/item/W, mob/user) + if(istype(W, /obj/item/weapon/pen)) + colorindex += 1 + if(colorindex >= 6) + colorindex = 0 + icon_state = "mobcap[colorindex]" + update_icon() + ..() + + attack_self(mob/user) + var/mob/living/capsuleowner = user + playsound(src, 'sound/effects/splat.ogg', 30, 1) + var/item = pick(winitems) + sleep(100) + switch(luckynumber7) + if(1) capsuleowner.resize(RESIZE_TINY) //Loss Shrinking! + if(2) capsuleowner.apply_damage(5, BRUTE) //Loss Damaging! + if(3) capsuleowner.Weaken(5) //Loss Knee spaghetti! + if(4) capsuleowner.hallucination += 66 //loss woah, dude. + if(5) new item(capsuleowner.loc) //Win! + if(7) + new /obj/item/weapon/material/butterfly/switchblade(capsuleowner.loc) + capsuleowner.apply_damage(10, BRUTE) //Loss Damaging! WIN KNIVE! + if(9) + new /obj/item/weapon/gun/energy/sizegun/not_advanced(capsuleowner.loc) + qdel(src) + if(777) new /obj/item/weapon/spacecash/c1000(capsuleowner.loc) //for rigging + else luckynumber7 = (rand(0,10)) + luckynumber7 = rand(0,10) + sleep(100) + playsound(src.loc, 'sound/machines/slotmachine.ogg', 25, 1) + +//items literally just made for the above item spawner + +// +//BADvanced size gun +// +/obj/item/weapon/gun/energy/sizegun/not_advanced + name = "Corrupted size gun" + desc = "A highly advanced ray gun with a knob on the side to adjust the size you desire. Or at least that's what it used to be." + projectile_type = /obj/item/projectile/beam/sizelaser/chaos + charge_cost = 60 //1/3 of the base price for a normal one. +// +//CHAOS laser +// +/obj/item/projectile/beam/sizelaser/chaos //The Defintiely not advanced sizeguns laser. + name = "chaos size beam" + light_color = "#FF0000" + light_range = 3 + light_power = 9 //should be plenty visible. + var/list/chaos_colors = list( + "#FF0000", + "#00FF00", + "#0000FF", + "#FFFF00", + "#00FFFF", + "#FF00FF", + "#000000", + "#FFFFFF", + "#F0F0F0", + "#0F0F0F", + ) + + on_hit(var/atom/target) + light_color = pick(chaos_colors) + var/chaos = rand(25,200) + var/mob/living/M = target + if(ishuman(target)) + var/mob/living/carbon/human/H = M + H.resize(chaos/100) + H.show_message(" The beam fires into your body, changing your size!") + H.updateicon() + else if (istype(target, /mob/living/)) + var/mob/living/H = M + H.resize(chaos/100) + H.updateicon() + else + return 1 \ No newline at end of file diff --git a/vorestation.dme b/vorestation.dme index 3078493ccc..1a122712d4 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -1166,6 +1166,7 @@ #include "code\game\objects\items\pizza_voucher_vr.dm" #include "code\game\objects\items\poi_items.dm" #include "code\game\objects\items\robobag.dm" +#include "code\game\objects\items\sahoc_ch.dm" #include "code\game\objects\items\shooting_range.dm" #include "code\game\objects\items\surplus_voucher_ch.dm" #include "code\game\objects\items\tailoring.dm" From eb287bb41460d05d76f1551673b4f98b70a289b5 Mon Sep 17 00:00:00 2001 From: Darlantan Date: Sun, 24 Jan 2021 11:01:46 -0500 Subject: [PATCH 20/36] Small oversights in leopardmander and pitcher --- .../mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm | 3 ++- .../mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm index a6f675a96c..d1503a7a47 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm @@ -1,7 +1,8 @@ /mob/living/simple_mob/vore/leopardmander name = "leopardmander" desc = "A huge salamander-like drake. They are best known for their rarity, their voracity, their very potent paralyzing venom, and their healing stomach. This one is white." - tt_desc = "Draconis Va'aen" + catalogue_data = list(/datum/category_item/catalogue/fauna/leopardmander) + tt_desc = "S Draconis uncia" icon = 'icons/mob/vore128x64_ch.dmi' icon_dead = "leopardmander-dead" icon_living = "leopardmander" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm b/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm index af2a0dc214..4d1a78545a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm @@ -159,7 +159,7 @@ GLOBAL_LIST_INIT(pitcher_plant_lure_messages, list( return if(fruit) if(nutrition >= PITCHER_SATED + NUTRITION_PITCHER) - var/turf/T = safepick(circleviewturfs(src, 2)) //Try this if the above doesn't work, add src.loc == T check to density check + var/turf/T = safepick(circleviewturfs(src, 2)) if(T.density) //No spawning in walls return else if(src.loc ==T) From a2f77d1eb140bdc0fd5e39bb6236089e11e75e54 Mon Sep 17 00:00:00 2001 From: Darlantan Date: Sun, 24 Jan 2021 11:02:43 -0500 Subject: [PATCH 21/36] Fixes Sif forest turfs --- .../objects/items/stacks/tiles/fifty_spawner_tiles.dm | 6 ++++++ code/game/objects/items/stacks/tiles/tile_types.dm | 6 ++++++ code/game/turfs/flooring/flooring.dm | 11 +++++++++++ 3 files changed, 23 insertions(+) diff --git a/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm b/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm index 098926f535..4aabc88d2d 100644 --- a/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm +++ b/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm @@ -8,6 +8,12 @@ name = "stack of sifgrass" type_to_spawn = /obj/item/stack/tile/grass/sif +//CHOMPedit, delete if this is added upstream. +/obj/fiftyspawner/grass/sif/forest + name = "stack of sifgrass" + type_to_spawn = /obj/item/stack/tile/grass/sif/forest +//CHOMPedit end + /obj/fiftyspawner/wood name = "stack of wood" type_to_spawn = /obj/item/stack/tile/wood diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index 1612725741..befe769b91 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -52,6 +52,12 @@ singular_name = "sivian grass floor tile" desc = "A patch of grass like those that decorate the plains of Sif." +//CHOMPedit: remove if this gets added upstream +/obj/item/stack/tile/grass/sif/forest + name = "sivian overgrowth tile" + singular_name = "sivian overgrowth floor tile" + desc = "A patch of dark overgrowth like those that decorate the plains of Sif." +//CHOMPedit end /* * Wood */ diff --git a/code/game/turfs/flooring/flooring.dm b/code/game/turfs/flooring/flooring.dm index 21bb1c9e8a..42e3792bb0 100644 --- a/code/game/turfs/flooring/flooring.dm +++ b/code/game/turfs/flooring/flooring.dm @@ -149,6 +149,17 @@ var/list/flooring_types build_type = /obj/item/stack/tile/grass/sif has_base_range = 1 +//CHOMPedit: sif/forest decl. If this ends up upstream just accept the upstream version. +/decl/flooring/grass/sif/forest + name = "thick growth" + desc = "A natural moss that has adapted to the sheer cold climate." + flags = TURF_REMOVE_SHOVEL + icon = 'icons/turf/outdoors.dmi' + icon_base = "grass_sif_dark" + build_type = /obj/item/stack/tile/grass/sif/forest + has_base_range = 1 +//CHOMPedit end + /decl/flooring/water name = "water" desc = "Water is wet, gosh, who knew!" From 6b53683dcd1cc97c144a9b45783048225b38a33a Mon Sep 17 00:00:00 2001 From: Darlantan Date: Sun, 24 Jan 2021 11:03:35 -0500 Subject: [PATCH 22/36] Vore slug Mob, mob icons, random spawn for mob --- code/game/turfs/simulated/outdoors/grass.dm | 16 ++ .../simple_mob/subtypes/vore/slug_ch.dm | 255 ++++++++++++++++++ icons/effects/effects_ch.dmi | Bin 1541 -> 3931 bytes icons/mob/vore_ch.dmi | Bin 33983 -> 44537 bytes vorestation.dme | 1 + 5 files changed, 272 insertions(+) create mode 100644 code/modules/mob/living/simple_mob/subtypes/vore/slug_ch.dm diff --git a/code/game/turfs/simulated/outdoors/grass.dm b/code/game/turfs/simulated/outdoors/grass.dm index 57615f49b9..ac8a9c43b7 100644 --- a/code/game/turfs/simulated/outdoors/grass.dm +++ b/code/game/turfs/simulated/outdoors/grass.dm @@ -89,6 +89,7 @@ var/list/grass_types = list( /turf/simulated/floor/outdoors/grass/sif/forest name = "thick growth" icon_state = "grass_sif_dark0" + initial_flooring = /decl/flooring/grass/sif/forest //CHOMPedit: Remove if this ends up upstream edge_blending_priority = 5 tree_chance = 4 grass_chance = 1 @@ -99,3 +100,18 @@ var/list/grass_types = list( /obj/structure/flora/sif/tendrils = 30 ) +//CHOMPedit: animal spawning for sif rocks. This probably doesn't belong in grass.dm but it's where there other Sif spawns are, sue me. +/turf/simulated/floor/outdoors/rocks/sif + var/animal_chance = 0.3 //Should spawn around... 0-7 per round? Tweak as needed. + + var/animal_types = list( + /mob/living/simple_mob/vore/slug = 1 + ) + +/turf/simulated/floor/outdoors/rocks/sif/Initialize() + if(animal_chance && prob(animal_chance) && !check_density()) + var/animal_type = pickweight(animal_types) + new animal_type(src) + + . = ..() +//CHOMPedit end \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/slug_ch.dm b/code/modules/mob/living/simple_mob/subtypes/vore/slug_ch.dm new file mode 100644 index 0000000000..1114303d96 --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/vore/slug_ch.dm @@ -0,0 +1,255 @@ +//Passive vore slug. This mob is intended to be annoying but harmless to anybody it can't eat. + +/mob/living/simple_mob/vore/slug + name = "slug" + desc = "A giant, cold-tolerant slug. It seems excessively passive." + catalogue_data = list(/datum/category_item/catalogue/fauna/slug) + tt_desc = "S Arion hortensis" + icon = 'icons/mob/vore_ch.dmi' + icon_dead = "slug-dead" + icon_living = "slug" + icon_state = "slug" + faction = "slug" //A faction other than neutral is necessary to get the slug to try eating station crew. + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + melee_damage_lower = 0 + melee_damage_upper = 1 //Not intended to pose any sort of threat outside of vore. Other code should stop it from ever attacking but this is an extra safety check. + friendly = list("blinks at") + response_help = "pokes" + response_disarm = "prods" + response_harm = "punches" + movement_cooldown = 40 //I guess you could call this a SNAIL'S PACE. + maxHealth = 500 + health = 500 + attacktext = list("headbutted") + minbodytemp = 80 + ai_holder_type = /datum/ai_holder/simple_mob/passive/slug_ch + vore_icons = SA_ICON_LIVING + armor = list( + "melee" = 98, + "bullet" = 0, + "laser" = -50, + "energy" = -50, + "bomb" = 0, + "bio" = 0, + "rad" = 100) //Relatively harmless but agonizing to kill with melee. + + glow_toggle = TRUE + glow_range = 1.3 //This seems to be the minimum range which makes glow visible. + glow_color = "#33ccff" //Same glow color as Sif trees. + glow_intensity = 1 + + + var/list/my_slime = list() + var/slime_max = 35 //With a slug which moves once every 10 seconds and a 5 minute delete timer, this should never exceed 30. + var/mob/living/vore_memory = null + +/mob/living/simple_mob/vore/slug //I guess separating the vore variables is a little more organized? + vore_bump_chance = 100 //Always attempt a bump nom if possible... + vore_bump_emote = "knocks over and begins slowly engulfing" + vore_active = 1 + vore_icons = 1 + vore_capacity = 1 + vore_pounce_chance = 100 //...while this should make bump noms always knock the target over. Passive AI meanwhile should mean this never affects combat since it doesn't fight back. + vore_ignores_undigestable = 0 + swallowTime = 100 //10 seconds. Easy to crawl away from when knocked over. + vore_default_mode = DM_DIGEST + +/mob/living/simple_mob/vore/slug/init_vore() + ..() + var/obj/belly/B = vore_selected + B.desc = "Somehow you remained still just long enough for the slug to wrap its radula around your body and gradually draw you into its pharynx. The slug moves with agonizing slowness and devours prey at a snail's pace; inch by inch you're crammed down its gullet and squishes and squeezed into the slug's gizzard. Thick walls bear down, covered with shallow, toothy ridges. The slimy moss in here suggests you're not the slug's diet but the gizzard seems intent on churning and scraping over you regardless..." + B.digest_burn = 0.1 + B.digest_brute = 0.2 + B.vore_verb = "engulf" + B.name = "gizzard" + B.mode_flags = DM_FLAG_THICKBELLY + B.escapechance = 5 + B.fancy_vore = 1 + B.vore_sound = "Squish2" + B.release_sound = "Pred Escape" + B.contamination_color = "cyan" + B.contamination_flavor = "Wet" + + + B.emote_lists[DM_DIGEST] = list( + "The toothy walls scrape and grind against your body.", + "The humid air feels thick and heavy, stinging faintly with each breath.", + "Heavy slime oozes over you, making it difficult to move." + ) //Why do so many vore mobs have endo emotes despite being digest only? + +/datum/category_item/catalogue/fauna/slug + name = "Sivian Fauna - Moss Slug" + desc = "Classification: S Arion hortensis\ +

    \ + A large herbivorous slug commonly spotted near northern waterways with abundant moss. The slug is remarkably resistant to blunt trauma despite its fleshy body due to a foul-tasting outer casing \ + of thick, mucus-filled tissue protecting the more vulnerable musculature beneath. Said mucus is a natural irritant and hardens rapidly in contact with air, sealing wounds and allowing the slug to shrug off most surface injuries. \ + Few predators exist for the Sivian slug due to the stinging slime's tendency to adhere to attacking claws and appendages.\ +

    \ + The Sivian slug is typically regarded as a pest due to the animal's large bulk and tendency to crush weak structures in its path. Most tools do little to dissuade the creature, forcing homesteads to rely on firearms or reinforced fencing \ + with a slippery coating the slug cannot stick to. While subsisting primarily on Sivian moss, the slug is an opportunistic predator known to eat small fauna which wander into its path. The slime excreted from the slug's foot is particularly sticky and capable of miring small animals. The Sivian slug glows faintly due to colonies bioluminescent bacteria present in its diet." + value = CATALOGUER_REWARD_EASY + +/mob/living/simple_mob/vore/slug/proc/spread_slime() + if(my_slime.len >= slime_max) + return + if(istype(get_turf(src), /turf/simulated/floor/water)) //Important to stop my_slime from filling with null entries in water. + return + var/obj/effect/slug_glue/G = new /obj/effect/slug_glue/(get_turf(src)) + G.my_slug = src + my_slime += G + +/mob/living/simple_mob/vore/slug/death() + ..() + for(var/obj/effect/slug_glue/G in my_slime) + G.my_slug = null + my_slime -= G //No point in keeping these loaded in the list when the slug dies if somehow the list sticks around after death. + +/mob/living/simple_mob/vore/slug/Moved() + . = ..() + spread_slime() + +/mob/living/simple_mob/vore/slug/do_attack(atom/A, turf/T) //Override of attack proc to ensure the slug can only attempt to eat people, not harm them. Inability to actually hurt anybody is intended, otherwise this mob wouldn't have 98 melee armor. + if(ckey) //If we're player controlled, use the default attack code. + return ..() + if(istype(A, /mob/living) && !will_eat(A)) + ai_holder.lose_target() //Ignore anybody we can't eat. + return + else //This is the parent do_attack() code for determining whether or not attacks can hit. + face_atom(A) + var/missed = FALSE + if(!isturf(A) && !(A in T) ) // Turfs don't contain themselves so checking contents is pointless if we're targeting a turf. + missed = TRUE + else if(!T.AdjacentQuick(src)) + missed = TRUE + + if(missed) // Most likely we have a slow attack and they dodged it or we somehow got moved. + add_attack_logs(src, A, "Animal-attacked (dodged)", admin_notify = FALSE) + playsound(src, 'sound/rakshasa/Decay1.ogg', 75, 1) + visible_message(span("warning", "\The [src] misses.")) + return FALSE + tryBumpNom(A) //Meant for bump noms but this works as intended here and has sanity checks. + +/mob/living/simple_mob/vore/slug/perform_the_nom(mob/living/user, mob/living/prey, mob/living/pred, obj/belly/belly, delay) + ..() + vore_memory = prey + +/datum/ai_holder/simple_mob/passive/slug_ch + wander = TRUE + base_wander_delay = 7 + wander_when_pulled = TRUE + vision_range = 10 + can_flee = FALSE //Otherwise it'll run as soon as it gets a target. + +/obj/effect/slug_glue + name = "liquid" + desc = "This looks wet." + icon = 'icons/effects/effects_ch.dmi' + icon_state = "wet_turf" + opacity = 0 + mouse_opacity = 0 //Unclickable + anchored = 1 + density = 0 + can_buckle = 1 + buckle_lying = TRUE + + var/persist_time = 5 MINUTES //How long until we cease existing. + var/mob/living/simple_mob/vore/slug/my_slug = null //This should be set by the slug. + var/turf/my_turf = null //The turf we spawn on. + var/base_escape_time = 1 MINUTE //How long does it take to struggle free? Affected by the victim's size_multiplier. + +/obj/effect/slug_glue/New() + ..() + dissipate() + my_turf = get_turf(src) + if(istype(my_turf, /turf/simulated/floor/water)) //Aside from not making sense in water, this prevents drowning. + qdel(src) +/* for(var/obj/effect/slug_glue/G in my_turf.contents) + if(G == src) + continue + else + qdel(G) //Prevent glue layering +*/ //Not including this due to performance concerns but keeping as comments for reference. + +/obj/effect/slug_glue/proc/dissipate() //When spawned, set a timer to despawn. + if(!persist_time) + qdel(src) + return + else + spawn(persist_time) //I used sleep() here first and it made the slug sleep for 5 minutes when spawning glue. Byond. + qdel(src) + return + +/obj/effect/slug_glue/Destroy() + . = ..() + if(my_slug) + my_slug.my_slime -= src //Remove the slime from the slug's list when destroyed. + +//This could probably be applied to spideweb code to make it work as intended again. +/obj/effect/slug_glue/Uncross(atom/movable/AM, atom/newloc) + if(istype(AM, /mob/living/simple_mob/vore/slug)) + return ..() + else if(istype(AM, /mob/living)) + if(prob(50)) + to_chat(AM, span("warning", "You stick to \the [my_turf]!")) + return FALSE + return ..() + + +/obj/effect/slug_glue/Crossed(atom/movable/AM as mob|obj) + if(AM.is_incorporeal()) + return + + if(istype(AM, /mob/living)) + var/mob/living/L = AM + if(istype(L, /mob/living/simple_mob/vore/slug)) + return + + if(L.m_intent == "run" && !L.buckled) + if(has_buckled_mobs()) + return + buckle_mob(L) + L.stop_pulling() + L.Weaken(2) + to_chat(L, "You tripped in the sticky substance, sticking to [my_turf]!") + playsound(src, 'sound/rakshasa/Decay3.ogg', 100, 1) + alert_slug(L) + +/obj/effect/slug_glue/proc/alert_slug(mob/living/victim as mob) + if(!my_slug || !has_buckled_mobs() || isbelly(my_slug.loc)) //Otherwise if you eat the slug it will infinitely attempt to eat you if you trip in glue. + return + if(my_slug.vore_memory == victim) //Getting eaten lets you get stuck once without alerting the slug. This is to prevent instantly getting eaten again if you struggle free with run intent on. + my_slug.vore_memory = null + return + my_slug.ai_holder.give_target(victim) + +/obj/effect/slug_glue/proc/unalert_slug(mob/living/victim as mob) + if(!my_slug) + return + if(my_slug.ai_holder.target == victim) + my_slug.ai_holder.remove_target() //Instant loss of target. Necessary to simulate the mob giving up if the prey escapes. + +/obj/effect/slug_glue/user_unbuckle_mob(mob/living/buckled_mob, mob/user) + user.setClickCooldown(user.get_attack_speed()) + to_chat(user, "You tug and strain against the sticky substance...") + var/escape_time + switch(buckled_mob.size_multiplier) + if(RESIZE_TINY - 1 to RESIZE_A_NORMALSMALL) //24% to 75% size scale, 1% below 25% is to account for microcillin sometimes going slightly below 25% + escape_time = 2 * base_escape_time + if(RESIZE_A_NORMALSMALL to RESIZE_A_BIGNORMAL) //75% to 125% size scale + escape_time = base_escape_time + if(RESIZE_A_BIGNORMAL to RESIZE_HUGE + 1) //125% to 201% size scale, 1% above 200% is to acount for macrocillin sometimes going slightly above 200% + escape_time = 0.5 * base_escape_time + else + escape_time = base_escape_time //Admeme size scale + if(do_after(user, escape_time, src, incapacitation_flags = INCAPACITATION_DEFAULT & ~(INCAPACITATION_RESTRAINED | INCAPACITATION_BUCKLED_FULLY))) + if(!has_buckled_mobs()) + return + to_chat(user, "You tug free of the tacky, rubbery strands!") + unbuckle_mob(buckled_mob) + unalert_slug(buckled_mob) + +/obj/effect/slug_glue/clean_blood(var/ignore = 0) //Remove with space cleaner. + if(!ignore) + qdel(src) + return + ..() \ No newline at end of file diff --git a/icons/effects/effects_ch.dmi b/icons/effects/effects_ch.dmi index f01cd218f3793f00ac9573757edce3a5f6732b36..1b7c81dc819c180d76787907c46cced849d39e88 100644 GIT binary patch literal 3931 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 N5W$v&tF-n_`CmDi7J~o) delta 1534 zcmV`i!&v&s2C_@$iID)3$|tZB5^uBI6plBJRy>EjB;Nq>PiWCSG;R6_}9#SsBWeEJ6! zK*t69TlXgffCyNQfa0XU&)X;V8Fm~n*ZZG4uqiS)0`DJ>^)>|b#P4edRLlLDWWhYQ^&4dXMB)I-_I3;j* z6bdf-9Bu_DftsU`kISuq-BGB=eq7ozfr|5Y}M%`x~Gg+qPcPT< znSWa#0_J$Q&kU?rL%h!n%=@zl5f@_VGq<18Q3672*tS63V@Qq->m?9i<&RJT>-fy` zWSoaMg?#4zvpCD)3iX+rcsX2_KJ&B;Kgs3!%n%N@0)9TT1czGzOP^U!iqG6XN{`!D zPRYmTQ3AEcpvb4q$|Dd4KJA`5-<0SOn17i^EJ(;B+;KYG9x0{yv>S}_2;Zko%p*2F zZDJm=H=>LA%rW1U7(TNXQ9g5$$7Sa;%j>vYVShrxI<7<;mPuPc9iLhF<;^6Y*|?62 zznIo%cBtcu_L)zrI<8Eg*`$su(`Q!JaV@CiGxyhVmGzn1fCA=du+O|$bLTi}ntx!Q zc`@^Lk^VX^4z@nCT^(1B&um!7mE$u5aO$`U`OLDXlZAX{Lzipuccjlu(0>*W_L(hx z+KfC>r5>0Acy%+8R}ZW@%~q%fR^^ebdSJUeLf};oY?nt?OXb!BbMgpGNOhfnSr%xiS?O*S$`G?=@+W@nXA?VkG|8>KYvubXdY=X z`c99&(=&zYfsv_3-)TD=cJ!SdeWzRT0zUI%ndXe}RHN_o=sRu5=sP|7PFL#}x?%L4 z?xB#+Jo-+LzSA&k0mXl|k>0d|{X$o(?;kpTm$Hn{EPnc);4_ckr34omze_1wP~+1c zg5wC#xq#7_`?S%7`?M~oeRtX%41L-h?COE*z^mgrAXNnfe;L-EuzFxi!s@uZ@TucU zMqkI3LS!A63zh1)TqwG~gA}~bP?o5Ep>9;^J8eR-I<7W$9#;|(y{c0= kynsOnhu=@i^$YFdAA0Ol;kIx{*8l(j07*qoM6N<$g4it<8 diff --git a/icons/mob/vore_ch.dmi b/icons/mob/vore_ch.dmi index 6f12d188483e01c9af3d53a39a9a2f8e84250cbd..aae5553e32422e350db82d6ff504aedd49daf968 100644 GIT binary patch literal 44537 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

    yBmI=nTXd%?a7}>hqZ$o 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 literal 33983 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 Date: Sun, 24 Jan 2021 17:43:25 +0100 Subject: [PATCH 23/36] Adding reset owner feature and modulus operandi ala cadyn --- code/game/objects/items/sahoc_ch.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/game/objects/items/sahoc_ch.dm b/code/game/objects/items/sahoc_ch.dm index 73cf1b7540..69674eb59b 100644 --- a/code/game/objects/items/sahoc_ch.dm +++ b/code/game/objects/items/sahoc_ch.dm @@ -35,11 +35,11 @@ attackby(obj/item/W, mob/user) if(istype(W, /obj/item/weapon/pen)) - colorindex += 1 - if(colorindex >= 6) - colorindex = 0 + colorindex = (colorindex + 1) % 6 icon_state = "mobcap[colorindex]" update_icon() + if(istype(W, /obj/item/weapon/card/id)) + capsuleowner = null ..() /obj/item/device/buttonofnormal/proc/nonrandom() //Secret ball randmoizer rig code @@ -146,4 +146,4 @@ H.resize(chaos/100) H.updateicon() else - return 1 \ No newline at end of file + return 1 From 7ce2ef9345d0bf2582b0f942d92fc7252ce0e899 Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Sun, 24 Jan 2021 09:00:50 -0800 Subject: [PATCH 24/36] Update neutral.dm --- .../carbon/human/species/station/traits_vr/neutral.dm | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm index a76dc9a041..709e5f53e3 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm @@ -161,14 +161,8 @@ YW change end */ /datum/trait/hard_vore name = "Hard Vore" //CHOMPedit Renamed Brutal Predation to Hard Vore, because some people don't know what this actually does desc = "Allows you to tear off limbs & tear out internal organs." -<<<<<<< HEAD - cost = 0 -||||||| parent of afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits - cost = 0 //I would make this cost a point, since it has some in game value, but there are easier, less damaging ways to perform the same functions. -======= cost = 0 custom_only = FALSE ->>>>>>> afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits /datum/trait/hard_vore/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -207,13 +201,8 @@ YW change end */ name = "Glowing Body" desc = "Your body glows about as much as a PDA light! Settable color and toggle in Abilities tab ingame." cost = 0 -<<<<<<< HEAD - -||||||| parent of afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits -======= custom_only = FALSE ->>>>>>> afe0f17b2e... Merge pull request #9582 from Heroman3003/All-species-neutral-traits /datum/trait/glowing_body/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) H.verbs |= /mob/living/proc/glow_toggle From d993f2466177dd5f6099b485b581c8f45bc3c492 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sun, 24 Jan 2021 19:49:59 -0500 Subject: [PATCH 25/36] Merge pull request #9607 from VOREStation/upstream-merge-7822 [MIRROR] Adds Chicken noodle soup --- code/modules/food/food/snacks.dm | 17 +++++++++++++++++ code/modules/food/recipes_microwave.dm | 7 +++++++ 2 files changed, 24 insertions(+) diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm index 9ad92265a9..88764af536 100644 --- a/code/modules/food/food/snacks.dm +++ b/code/modules/food/food/snacks.dm @@ -6054,6 +6054,23 @@ . = ..() reagents.add_reagent("protein", 8) bitesize = 3 + +/obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup + name = "chicken noodle soup" + gender = PLURAL + desc = "A bright bowl of yellow broth with cuts of meat, noodles and carrots." + icon = 'icons/obj/food_custom.dmi' + icon_state = "chickennoodlesoup" + filling_color = "#ead90c" + nutriment_amt = 6 + nutriment_desc = list("warm soup" = 6) + center_of_mass = list("x"=16, "y"=5) + +/obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup/Initialize() + . = ..() + reagents.add_reagent("protein", 4) + reagents.add_reagent("water", 5) + bitesize = 6 /obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup name = "chicken noodle soup" diff --git a/code/modules/food/recipes_microwave.dm b/code/modules/food/recipes_microwave.dm index b615932f43..216eb0303c 100644 --- a/code/modules/food/recipes_microwave.dm +++ b/code/modules/food/recipes_microwave.dm @@ -940,6 +940,13 @@ I said no! /obj/item/weapon/reagent_containers/food/snacks/bun ) result = /obj/item/weapon/reagent_containers/food/snacks/chickenfillet + +/datum/recipe/chickennoodlesoup + fruit = list("carrot" = 1) + reagents = list("water" = 10) + items = list( /obj/item/weapon/reagent_containers/food/snacks/spagetti, /obj/item/weapon/reagent_containers/food/snacks/rawcutlet) + reagent_mix = RECIPE_REAGENT_REPLACE //Simplify end product + result = /obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup /datum/recipe/chickennoodlesoup fruit = list("carrot" = 1) From 5bbdccefa507cb5f4cbcf8a9064cb14259ddfc61 Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Sun, 24 Jan 2021 18:53:16 -0800 Subject: [PATCH 27/36] Revert "[MIRROR] Fixes defib timers being 10 times as long compared to intended." --- code/game/objects/items/devices/defib.dm | 4 ++-- code/modules/organs/internal/brain.dm | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 525bbeac7e..1e549c23c0 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -509,8 +509,8 @@ return // Still no brain. // If the brain'd `defib_timer` var gets below this number, brain damage will happen at a linear rate. - // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 300 `Life()` ticks. // Original math was VERY off. Life() tick occurs every ~2 seconds, not every 2 world.time ticks. - var/brain_damage_timer = ((config.defib_timer MINUTES) / 20) - ((config.defib_braindamage_timer MINUTES) / 20) + // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 6000 world.time units = 3000 `Life()` ticks. + var/brain_damage_timer = ((config.defib_timer MINUTES) / 2) - ((config.defib_braindamage_timer MINUTES) / 2) if(brain.defib_timer > brain_damage_timer) return // They got revived before brain damage got a chance to set in. diff --git a/code/modules/organs/internal/brain.dm b/code/modules/organs/internal/brain.dm index 016e3fce3c..30c539bbde 100644 --- a/code/modules/organs/internal/brain.dm +++ b/code/modules/organs/internal/brain.dm @@ -33,7 +33,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) if(!owner || owner.stat == DEAD) defib_timer = max(--defib_timer, 0) else - defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 20) // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 + defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 2) /obj/item/organ/internal/brain/proc/can_assist() return can_assist @@ -81,7 +81,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) /obj/item/organ/internal/brain/New() ..() health = config.default_brain_health - defib_timer = (config.defib_timer MINUTES) / 20 // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 + defib_timer = (config.defib_timer MINUTES) / 2 spawn(5) if(brainmob) butcherable = FALSE @@ -103,7 +103,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) if(istype(H)) brainmob.dna = H.dna.Clone() brainmob.timeofhostdeath = H.timeofdeath - brainmob.ooc_notes = H.ooc_notes //VOREStation Edit + brainmob.ooc_notes = H.ooc_notes //VOREStation Edit // Copy modifiers. for(var/datum/modifier/M in H.modifiers) From 3954bedb9d54d017d359ce87c8886d27d228ea46 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sun, 24 Jan 2021 22:08:31 -0500 Subject: [PATCH 28/36] Merge pull request #9606 from VOREStation/upstream-merge-7834 [MIRROR] fixes some sprites, adds a thin blindfold --- .../preference_setup/loadout/loadout_eyes.dm | 8 ++++++++ code/modules/clothing/glasses/glasses.dm | 7 +++++++ code/modules/mob/living/carbon/human/life.dm | 2 ++ icons/mob/species/seromi/eyes.dmi | Bin 8685 -> 8698 bytes icons/obj/clothing/glasses.dmi | Bin 12162 -> 12421 bytes icons/obj/clothing/uniforms.dmi | Bin 100647 -> 103163 bytes icons/obj/clothing/uniforms_1.dmi | Bin 25044 -> 22302 bytes 7 files changed, 17 insertions(+) diff --git a/code/modules/client/preference_setup/loadout/loadout_eyes.dm b/code/modules/client/preference_setup/loadout/loadout_eyes.dm index d9eb426499..09e0fcdc47 100644 --- a/code/modules/client/preference_setup/loadout/loadout_eyes.dm +++ b/code/modules/client/preference_setup/loadout/loadout_eyes.dm @@ -27,6 +27,14 @@ ..() gear_tweaks += gear_tweak_free_color_choice +/datum/gear/eyes/thinblindfold + display_name = "blindfold, thin white (recolorable)" + path = /obj/item/clothing/glasses/sunglasses/thinblindfold + +/datum/gear/eyes/thinblindfold/New() + ..() + gear_tweaks += gear_tweak_free_color_choice + /datum/gear/eyes/glasses display_name = "Glasses, prescription" path = /obj/item/clothing/glasses/regular diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 56577053b0..c02bca7e13 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -399,6 +399,13 @@ BLIND // can't see anything desc = "A white blindfold that covers the eyes, preventing sight." icon_state = "blindfoldwhite" +/obj/item/clothing/glasses/sunglasses/thinblindfold + name = "thin white blindfold" + desc = "A thin blindfold to help protect sensitive eyes while still allowing some sight" + icon_state = "blindfoldwhite" + flash_protection = FLASH_PROTECTION_MODERATE //not as thick, only offers some protection + tint = TINT_HEAVY + /obj/item/clothing/glasses/sunglasses/blindfold/tape name = "length of tape" desc = "It's a robust DIY blindfold!" diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 6f9242bf85..bce7209e18 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1338,6 +1338,8 @@ if(!O.up) found_welder = 1 if(!found_welder && nif && nif.flag_check(NIF_V_UVFILTER,NIF_FLAGS_VISION)) found_welder = 1 //VOREStation Add - NIF + if(istype(glasses, /obj/item/clothing/glasses/sunglasses/thinblindfold)) + found_welder = 1 if(!found_welder && istype(head, /obj/item/clothing/head/welding)) var/obj/item/clothing/head/welding/O = head if(!O.up) diff --git a/icons/mob/species/seromi/eyes.dmi b/icons/mob/species/seromi/eyes.dmi index e50b97c956e22424ca9163c74fa92129e709d460..250a56d4f97e95bc5d0d13f56cd916bc28269117 100644 GIT binary patch delta 6796 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 Cnh`7j literal 16662 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 From 9abdd9bd48f3c7f44763f8b41c20b95a6cad4308 Mon Sep 17 00:00:00 2001 From: Verkister Date: Tue, 26 Jan 2021 00:44:51 +0200 Subject: [PATCH 35/36] Merge pull request #9590 from Verkister/affectitems Adds a new vorepanel mode addon. --- code/__defines/belly_modes_vr.dm | 1 + code/modules/vore/eating/belly_obj_vr.dm | 2 +- code/modules/vore/eating/bellymodes_vr.dm | 10 ++++++++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/code/__defines/belly_modes_vr.dm b/code/__defines/belly_modes_vr.dm index e7853f7059..d497391d3f 100644 --- a/code/__defines/belly_modes_vr.dm +++ b/code/__defines/belly_modes_vr.dm @@ -19,6 +19,7 @@ #define DM_FLAG_STRIPPING 0x2 #define DM_FLAG_LEAVEREMAINS 0x4 #define DM_FLAG_THICKBELLY 0x8 +#define DM_FLAG_AFFECTWORN 0x10 //Item related modes #define IM_HOLD "Hold" diff --git a/code/modules/vore/eating/belly_obj_vr.dm b/code/modules/vore/eating/belly_obj_vr.dm index 20597d8b36..bf753d7cb2 100644 --- a/code/modules/vore/eating/belly_obj_vr.dm +++ b/code/modules/vore/eating/belly_obj_vr.dm @@ -43,7 +43,7 @@ //Actual full digest modes var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_HEAL,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_EGG) //Digest mode addon flags - var/tmp/static/list/mode_flag_list = list("Numbing" = DM_FLAG_NUMBING, "Stripping" = DM_FLAG_STRIPPING, "Leave Remains" = DM_FLAG_LEAVEREMAINS, "Muffles" = DM_FLAG_THICKBELLY) + var/tmp/static/list/mode_flag_list = list("Numbing" = DM_FLAG_NUMBING, "Stripping" = DM_FLAG_STRIPPING, "Leave Remains" = DM_FLAG_LEAVEREMAINS, "Muffles" = DM_FLAG_THICKBELLY, "Affect Worn Items" = DM_FLAG_AFFECTWORN) //Item related modes var/tmp/static/list/item_digest_modes = list(IM_HOLD,IM_DIGEST_FOOD,IM_DIGEST) diff --git a/code/modules/vore/eating/bellymodes_vr.dm b/code/modules/vore/eating/bellymodes_vr.dm index 1048903d6c..95162dfb15 100644 --- a/code/modules/vore/eating/bellymodes_vr.dm +++ b/code/modules/vore/eating/bellymodes_vr.dm @@ -138,6 +138,16 @@ if((mode_flags & DM_FLAG_THICKBELLY) && !H.muffled) H.muffled = TRUE + //Worn items flag + if(mode_flags & DM_FLAG_AFFECTWORN) + for(var/slot in slots) + var/obj/item/I = H.get_equipped_item(slot = slot) + if(I && I.canremove) + if(handle_digesting_item(I)) + digestion_noise_chance = 25 + to_update = TRUE + break + //Stripping flag if(mode_flags & DM_FLAG_STRIPPING) for(var/slot in slots)

    ;q*A7{$ z@!)JP+qW|0kcwtT@gvPcl4xKDRS)WUki?W5DSk4qkBpDoqCfJ7S9H$|Ni8mcaNo>x%rF1WGW9^Sy<#bu^GfW<(GZRE?GG_IY}+v zu(!`rc{Fu1n3H!{)tyW3is&UHe(r;n9%gJIxiv0G>|mY%sIQS6S3uL8JCN(oz72su m#1MLyEUqI{ZlsY8X;1+{N>M@@>F%Bx0qIht1PKudX{4mPOIo@?T55m+ z{=@g*`+s+R>$`XTm$ewqIeX9E`|Nn%_j#U|2rUg|B77Qr004-dsXTcB01)sJ0^nkU ze+=F7t-zalKOH@fCzkFOZniESw$4rf;FF%1SnfnCNEo_Vp9lLm!S(T%xE~kYPlohd z5*O142Ikob#NUQ+&bOsH#I&;bX4Elc(PXCy%?$IKQ~Y7#HF6A>!WCM4PMflUKKu2F zifT@q)r?mUnLEc9#D8aH&(?*dC}6HQ^GG1#aVYHlFob z&()JHBz|Zq_VDFCMLbbx7O0AP-}u?W_RZL++C}Kij~Hq5viRe+%H_~0*DTv1tmXv_x3h_T;<@=%mZ<$g|-{*0-E_*ngYD!y{s^>fq@QHR#0n(`9=R zVfkKLC8QMwOI1C=V;?}(Ow(UJG!2cKtuqsL2pv506-JwhSt}hSK}0Lhvx19sA8sjI zC`RWIe%<6v$1||x5y$`gU|x^c&w61R@3c_5+$8^~Q$u!w`ZV)QvYU16llF;H;}PG7 zhj4Kp_3@LGD|&GcZ%a;6B4!sT5vj{9`qp<-`TVll`)W1&7V87hyx8#7g$e+efM-t> zbbQkHzW4{|Ow^qtq-yZ$;^T#uzqZ6jf433EWIOZmrH(yQvA2I9^Sufu@-*1j(ME;= z17G=1Y^3s&6<>eu0*AE*CcJsmpR~|+l4L-ycrZw?nXz>8F0V^x9rjujvS!jUF zeXx(`O!xW4$_KiVU)OWu_d5h|Ss$(3eg#J`&Ll3L%xBUx$D!bw#BVa>=I(y|XNrI< zaBlzpXXs%N2??F4`rx3Av-5c&Tu~7Ntg}D$jj)q(5mi@LSCo|{zjO;F7L+>~dE7HJ zbmlYA=zm@zcfGASUFV+1B$M&)0I+?>dhJ~`&w;7Ah;5jb%;8>Md~p#}FJxIq^VZU` z*Zdv@1>Sz&r*%71v9v%p*G6L!c^OhIba~W)DjNBCytA`2d~#cwA!pbsxcBYHRIFi4 z9Wps{^XfA2b>PIl*m8Ow(Q^bcGQ+5Q7CKP9wB&A8&2#{8kQ^rgP^-V{%S7c&TwbyB zo#&G7_w@CdgAGnsT9eq>*^P{hAjk4FbMo_5;*%gQ+`6nyGY(c)XM2w=ELe@3XMCqm z6=&-KWaa}|3_zl>gBaM_-G}Y0HD7*Sbo|iOeDQP><=E`ep^1)Qz4@rt8r6JW(OQ7+ zrj`MaQ~eeIfMeprlya2mLV7#6jM60RM!XzEy||lZcFhdwLcEh1hpnwGnE$OQjJ)!x zNXOm!n5}WQ%r-?b9=Z`P6_b0-xZ4ijPU1;fbx0AvoMjJR?+Ys>T2<*>oSeiq{kEwa znVFE7*!hVBu?lTDaDtE8(o)_c*l#djhE|quhm}Z9^uMWLUvgaz}U9TO74?)CK>apZuIhjihqG+<7I*m%jz1jDXkv9G8cON7k^F`xOE`n2ZeT5bziCY$-7gyY)z0alqOD0;rL#(qr`} zJ;Ic8WRv}Dj(p;|dfTmU>UIl*|8XY|M%JnF?eC~G5H zq4vJCPAva}l$Ep4r%_+E4gPS*$_1bbkh7~3bS)oE&=i2nmdQbK?m4*AcZbv|z8;=$ z&hgQ1=9^*Y>+AD!ap9Ghm)H6neI28dfAQj@UQKT9)7K@TcqxNcUgylp8?Fw|SWf(8 z$jHb>78YW^e`kL#=Rr|0@+k2*Vc0=TxN?S0izXnym>l^S-G>TeDU}Q<<sE8E%1FX-VBOpa4&$ezI+p+i7C_L?F)RBhMR+0C6~LmwB1b8 z*mSQHv;yHrmY_W_&&>_gl7eQ@zQZ-gfDs-+-vXGV{|-;&s6f;8Bs?emT9+KONVu-V zjBr)GpPU9>1d*Hh5psw7;{Xi_HCxhpmZthyB4filE^m z$1T7+eDqHKA<6F;dCY7x&i}1N1iQ~R>j7{T+v6emJ(s7N6{kCygp=kl%xuY@0^yP0 z5IjW5{N8ci!nkeroKUR~{mJ!a&bAB(RGR(S!%zK> zkh{AMGeiF8`<|E8A1Y#{4EJ^j-gO*pc;@5f-ag4UH7LgrNRyd#7XlvAJWK*BCw=)c zc(y;!v$nQ|V&mLyY7$v6dZYA%!|{!oS+>BRox?mnOjnr|A!vML2!R|2N0@q=*kE3; zTIc59>5{|Tha7@}q`#}z*Vf89I-cCSf4|Q-tY#)e>Nl&dz*XG`?Ux;VkMrqJ#Q^Zi zU#!geEsbd<{nLpIB8LTU6ZRZ!>UBxPQF(&pdaE(!+lE#DD1IL9I6vz6^TLvl(y{IM zgoO5QEbd`EtcTy5#K9p7d@=8QyrD9OD=z$ zhC`p)!f0@0rA@#xJluiqC>$l(dhqPoGdW4bO+f2-!An8QzI#B+#qlO{;KH9jksBLU zuC$1SiG|o`DbUjD+1m+lJm}m^_*Xzh4n_9-dk-MdKR>K5`=r*piT1py3C*Q?p>1FM zuG9S8sLj2ndiKST*LXI)oT2N~J$>T_&6j~4u%1UF)b4~=vD9r1Fw zZ;aO9UujATY3jE`$!uJZcSZao=fGbfBg2ryrfimzrm!$ijG}Ws_+A1BThCN>o32sA$>|AW=0*<9aLq8Y`)5n2W1j5wNFF#6b!H zM+)JLxJe-)%TITdyZ7kiy}ZQi?d{2*g6o|gLZQkz+vN{$l7Zz^WD-C_lNpjD8G#{4 z3f@v*ujAw6YyKw+e|w>5N_senS6}O>w0_T_c&>wGOu5ghBP=`H9kJ<0%5*o;io2-=pT0WJOe5jz{dD~7{IWr(xFBK5G z{7)9JjqB|mHq=5prwxAZo0inVCm_IDU?9G&FDuhJ^t@@MAgv*UP*7;B-~jOD(tnCP zaQ^`21*u14ivor1V{k+ViA2W@stF?EL7dH6h(oUp`sS(`S}a@r$D1%9yuV{JZ=FDx zJC6xms-?IFJL{K+_ZQj`S_aEHN#H20y~8Xx%W|pK6FEM7Xac~4_~G`iz2eP}QoO!i zDHAT*o924ZPc#N6JTm=gh2ukdocS1C`sxj=i`bZvIrR zmwQ^U=1-%4D7V(-TrmzKBxlZ=A+_s+kHTv$anIb%!ms`W-t9bi^Rd!giCi33oLtE2 zBqNHxrldNl^8s7S;v)djg;uTJpYPZRyfp&kCrXsd#QbxZ_{J7*t+i2^>5V3nW6tyS z5zlruUu|B9NXLI)(p#VAgL_LyE3x+RXtKz937z;g7SYX8uUK$IHCiyql<~qN+Ob!{ z{1JJm_I0Wu-0^Vdzq@pg@-~OP(I(o=G%c)o8q4#u&fSHQ-M+q-w{VZ#T;`HrG)C>K z2+djTCqpMSd%w= zBlUSOO|&idyS zKwN}K3A9zhB!2zqMYS`3Dg?;7f?z18D)Ky~*zI>-r8l7t8$RLb!?dM$o?US@0(31l zwZwq+>T)N0&LDTuzXb z33~YP*FSFUr8(SBZHwqNi(T>3e0N#_g=j1h%)^h7)lYP!dtY9iV=mEez;2`*jt|ek z?}qvXnky>&fL`@%a4=dRSA`ZCNkm)Ba6j#nli&I15djgL{|00HuO1b2k9adu5XwPE ztDpdzOoA&rUnjyj)lV97ROgb!VM5YREkA4*MK8`wt(Ud%b$Gf>XP_3+b zsHC}Pyy|v(K+c3qfm;VQv!z*foQQKc5N&dL=%{$xLjspYnCTD9rG7vKxIt0@1xytc z>Xsne#9ecBtc=L(^9FJWL<@pdfHqB^Sb;5Hb69&__ zP$0O`Bx~>AA~Tf(O8a~Hz7GFk#M)H6|0PaGbNv<7peflCB<3J+Kh3MWy>s!rAdF$R zDI_V0SY*IU*_OTN{7P`Mu$+V@ag0EA)9;mlu z@cUJ-_2Nb7$;Ec&cMqi${gD$WpMK?O(Qe0#yel z(*)K{^p&=k&yqdGZaiBX3ab^+OTJ-C!T{a0qq+NwS2oh59|L@r0DC*9q~aba8azBa zy`}))7W%smGG-4ObUjV{E;hp>VhBXmQgR9*s7l#7GOyW#kZ%v6nhJY_&WulU|}*jzrVOcTPbp**)|{ zDwT#E0P=>@yV6RX0YLg_H5np*Che~MoyIKP<@Clcm_JitWCLh0%ABLnCh*34;NR4a zRHLH#6~aLK*kXr?=FOhZ-}l!V{QEe=lmx9k7!?&2(^W}zv7XtK7~lU&fY`G9>sJ;9 z{WF_xbsHNSSbu3UitqN!Ircr*=5Y7QdcWmSuI1vJ8jVwwRb}elYz;|FOpHXb*HFRS zxE%&?Pm>E9K)0O`h=__t?EFjA%^!6XRM^cwBSuS7DxxZtW^-x&sv1kyNK{xE$vZL?l=Ak>l!$ zoYXq+$w&^Ky58#s!mH<3Z%;Awzv$vq-e$s^A-ZYw!?~d_!n56(;LkMOUvmu6z!P#U zFhsB#{QTfE@tIJ zsV0JN5ED(q!i%}VSOcZ#mj3GMy8A$TSwMpXv`h*Sp;f(h>xRuTn&yTic!o$9X?z#XI;gyvgf04`P3 zDPpf;Sbam!FOi08bh@(=si~=l8`tMP!bXFithIAs2lbx3=OOAt}~)C@D9a?5`$G2b*ea8IGdo` z71MnYGTUs+HvLvtZT+PUJsa~vB$PWlW!vxhIJx+!J;@HMOXot9jc*=V4QBku`Ioi8 zE)fwiZLgF&y}G`mI4Z3M-Tn;4Od3%GsigjGdHhf;3vd`(__OrKhKAJnvySE-t1v;D zIiPUp)$)3>@u^)V(Qq+zQJDw|q^rw+wgi95zkOrN3k)EYgPAX4pI|Q>A724;%R_92 zsTc|>%h*8l9H9t}k&#UNWF|NOZXWJe7Z2sj_}fFri(3|4vN|eJ@0NdHJPc{t3BT%9 z407o#nsHa+E0x?#!QR{U3h-CwJA&pA7{oA7g$w}Fr%MaOq_}PL{LTNqE-qpcikvd4 zv8O{m-F9_+^w@6(*7jiUn8NW;KU%2cC<4DgPqt6dBqdZf-ixt6ed)mXGP%cR##( z_i69XPh0ZT49a*&w4#$!Nq>fJB#+?!bot|+!9hzbEG)>EkQYar8ykJ*^^(;;B&ED| zVdDa958=)sRj#W_)s1EGSnZgx*A^^o2ZD+=2T-^xcIZr{S#fFi5#kzOPf-Lr&cNlI zV?TL-Wi8qc_>rN$xu7AP91L zTCcW{JRi@sfkJL+D=@LqGs|JF_5-!maM$fz0%3L|2`@7ZP{z%nJYDO`YJoQj`*Q_@ z$B|;Iv5Gm(^^Esn$V$5)MMcGP8XM<-T>j4ORisbGZt0wJ8}#ke)g&M<@-r8mz1a|J zr95`&{L>&kxoSRRxs6x6do(vefQj%o7BxR!kP;JneNR-mbSkR6R)KQ|_)DZrSZOUq z1ewcS0^ifp(yk>=+-E%K&_9|=+K!aScI>-)+egi6p(gs2B7=Z!Ro#WGshv@fllda$ zEhPHf)X_MD_hu3u&}x)gF-L2tfdNM?hwT>EEGQN^;d)yQbT+1nFRS$W0xinQ_8qwq z#)g$Ta|cEJ2zHmxczOOP`@uYbPIl{OxF1 z!ywbx7@jJE*X*}S1jHvI4xLDe>1FBSaeaq--#ZGW(g4cCf5yi}9@{GRxtTsmu}f*~ zOXNvyHH~+)x3hB-dhCQx_hX{aV6x4BX^~p$31s2=Sz1ca@p!;tKGv;y>h8;~CC31h z*gPd{kVl>2tC_<9^7HduxHIJtO+~!i-1xxA%slfX-dnTZRldGOCmnd*31PYbaNnq~ z4SaV6gR{ePrL#JRx^@n7msCi@)k0=R^RN!$U8s`sU-#mwH?K9h;IYPXP~b3){-Eur z&xaaER~8voD2L`NCKeWq(S)yp0s;U~dph~XHM{!0k&)5X&r<-{g?f2-{9HYIO5oD) z?XAw{oh9M+f8A)j*fMso{15x-qtBl|cU(^(tugu>e{X`@n_&kNLvyE{vHtP%s-s>! zL9ETyf8bh{!QB*3pGmau&KO61PD?aMm+~IEqdV)|H(?YM?{9A4KY#v|uQSf%R!b-q z?ax#l+N&Cdbm_FbfPTuv`smqYiT#ks^eSyOgy^;@VnR;?QkGrc9Xd@#|I6Q@!p{&D z;9ujo*46f%z5B2=b0IT9^1w>_1bPNmV+LCOPW*U(H*aH;G5MVIK-iViUzW~G_m?lq zK!#KQ*IF^2O6MAPagvZhoxx*Bi-#fVef*oM?~B5+c$9>%*Vk}o2?$cf z-3jcB-%I$NaIUPZXvs-;2-3s=bZySIwhD%Z>3Yeu@{!E1#7JQAcms9No)jEI2HzQJ zXo@>+yz7q2#2P=ec8PPb+L88n1MTh4*iy*xS{U4acD#8o=IN}c$S3~i@gOJZvBtDJ zz}%*@x(Cp$ka!3QfKs!pjP#{1yj{~$W211Wr3DZxnMDQ#VU#Xn>bgLwG#Y8Y zSq4xEqDgT}Q{%>WM|BH(7is`p6Jdf0Zs7QJMv}t*72QejOJ$l<&2-}=R zFdKef+IgNPwHAcb{e2V0Aqrd`&Z}`&FicWaA4_1hQTCUI<$X(9yJFGsxG%duxuXoM z%BJ6%t379r)oio(cJp zvM2yDD@hNHB1=jh{;aBcl(^`#8UrBJk{?2Vq4Y;k`Nq@HTz>dYQUK6$JS@lWPriQ> z<_|{c8eiP}+{dF4<}Ky%|2}q5>8H~LuO8N?tpw8`HikhV^~=SeP|h+VJYYcwXrbgE zFZ3dNfgXtfc^<5#Ej`1|O?v*)9mjxDc1ZoNU+LAZM<#V{Sfr%HuHSNV>jFp@I$V^C ztFZfA>({RxN^e27^o|9(C~acL>L)vop!69=DPW~V$Q5ZF5$C0mNlM>B4>qzQJ2uEsrf8n~2`dxQM?YpKe?!(n@$TMZ?!z}rOOcwS$NjV; z`s2J^ILPP|tg^K?F!yC_x{kb*^I2QjbBu+KQVbVZCQIcOdmc&;gKoer9n~6%aCyIq z`u>1DxwM&WN7@|j`&er=ZtBX!zL@mAjQhs(P1JpYCe#W6ARnNZu6fk>3tu2(C#U{1 zCReF6SFH1ZmGIck=?cMyaCQI#3+#wrEOnYb>V8WmDk^MoO1^`{2Y!90@xaNVC)n@o(Tn+y^pQ)=1_9M^+H$EN7D_l)^ZjqWt^McHG;>D7D4F>uDNm~8CIOG4R zIQ&nsR`?;dsj52t6qX2On%5{s2IjjXAtVJ)7i&=uh~8FdGMN%lR1lgS zEHr8~R}>bl66;=(J;@i?z+T!h&#|D-BuFC=my$}ew6?AUHB$UXj~+3^DERU=IcM#$ zhnos~mm_czOG_QK!DKRN$!%?@?_$eqf=7g;rPcr1sFiD>4K)0T_(+ z9PI2Ez@I;V=mbMEd3O9S+ydA^usq?o=u|CxEfRZjwql5o^Liha1|l>}TWX+O8Z0jG zB(nl>hqt-8-I=%7*99l#u_Y#6LBRrPS$-%}(hr8)FWz=%2a9o+mwq5BZ#6HE?qGa) zS3-|ySiIfyoE_ABlc{v@!T2O|M;Z0p3lwhwV&A)5fRYcW212CXzI{O4V?cYFf?}om zjdLRfrJeoydit{8@6*0M27}O7o}RT82)Px2iMe(5ETZjUfgjPwDE+b4d%ImH>{0$NR67@CB{-#;UZ52s_(>6< zrXt;>h;9v+TR3ReL7(|awF#1$aKRBPaej;~pK_Gx5jr~2(m;`MqXDe{L08L;ho=_{ zX!k0@l0g3W9p_ESvg`TDb_O;;Y{$03PkX}=Vzp@(L0*ztJ5HUe=z?iI&g3-uDlv!DfnWe$dvudVO9Fithjt6#U!xhGlt5Sp|c=otx=@ z{QX-NI7A1w3$n=XhFgwrm4mxCzhWcBDHZSE_P)3LD9L&XEZun9YyaYgMpY+Y(V3)9 zs;MJsTlK;j0r=ERgnj#pRN+|aMVJZ5FFDZBiI~vRVIoxYo8gURzQAtY;m{Sc?FG)je}^?Xw>TUjrUCn zdGHin_auE{H{+ay4MT$%?#&^`O@1;YH^Bi6ZX#CPUvWHoL=B8gPjlW3E+@|h7%9zW zqKv+L36F{+k!bn{2e!}38$NMdj~M2<_K}FDBxv2cy^PZA4~`4sA4c3SxP)-(cSU(1HNB(EWO4iIe&6e zv0>fEy271EJbS=`OF)<0f1zVjm%IlT7jXxVe~UgeI^Ew7DVdw1C;ts7kuT~|wfl5) z(1{oo{9+1u|5W+O6E-hzPbFvzQRODiX=AgYNh`o4_ONN#sivkpJ6rbp#MgZycC{D@ zotOK@50y0fm{4?{945*u>s3(%CWzesH}(&!>WRd{Q3PpGl_e!h8>`E@Di}zG{N!IG zlRXZ7q@wyc^6=25qw7HyD&ba+-BIv*ReW@Qff zgR>{_jaR4h-X|W@da^2U&pFcHASk}qJX`)-Q|S_8hQ<}pvM*Ku{XA8SlIwb=PX}}( zf-#dSyRdK)mK)XfZR;68B`IYf;6Fsi7RW_yW@Z*1`B}uuF(OJ$UPtF%XlUq&+(?|H zJ<%mjXd47Fu~{4nepb@8$i0IH9b4_`eU&PYq^f4hzl>^VDsi_Jh} z+AyWu?S|r%cDc|5Uc`n-{X^n)aB&}wlLIPXECgiG7E-=4XK$Hu-7 zYzaM{V9dTSAlR7yXUWFS79^NeSqVkV+&;Xz430z1$0qXVR)7@5Cpl39aIhVFx5u75 zO`p^Hf7RD77ouY>GFN*e(>kwZ1PdW|?C;*}&VW8W0wQ}!3ovcBlzcet^`!=#MV+kQ z!Y@%?(87Z6k(5LTv1u=V;6{ouG&OHuEV^=InDws9o5MplpQ5><;-k#z_{){!8V!lp z;d?j!5c7jRiW+eb;s}JM>^1i9v9VX=@?hB3A})gUJ45bZ@uj!56}z1sZ`mvkX>Jsz zg?xY^ourghD^rUTqdWq^$bjl%MI8uZ_FbZl%c`%3YHN?0!bWChB2rQ$^on2O zVvIP`%0GD`AtZdzl6ihmaMcyO_+`~T8U$(YG*R@ovkC*5r0dlsI_Q$vRj#B>LU|T= z!0Ur)v2+T~PX7IzmCG#<0uVY#MUbezbLRUTm&C`~7zl=@RkQS5KA@yI{a6i82jq~T zv97Y>cOl`w$wwO)K@^Nsq_P|`GDc+pVSH3`wR%fH?fv3rmXitOKGBtqgv%1}=9fnS zRVg?v7qkddQzju67CNtbdhK5}Cm!Cce!tn~JjMoV0}2>)X^N=meg;FpkH>jY#H#mQ z>Y9SKJw|K&)>+!xS(yM_k~pLWWelxTdQ3$E$LQ=>RLZp8$?PSJlr;9;yLUbE=3d_3 z^?bAC7GYU*SN@fmWW(YZfhXc&hhd#0Djn$2Mda-tuB2`w2h#ot14eomgfKDijq1hd z%=|JHz5|yMs2$$L=-{Eb%h!qrRoftse;STHXtb^g`G8ermKVDFoTwJ$aUQXeGXT%k zy#fxmx3?7^KZb&Wz{@8YLeMN9M8z8(Z<0+Ne>`ePCkE4R}Y~ex?WlRfe;Lr@mElI zcR0~Z^>&>ncAjZ=k(_~uY2Tb+#e5Y2o=xUdoc1OV?+SHycD5KO-b z_FSLfgT%Y$Za+@|3J}It>oq95%473Jfy4d zX<_Wzx4>B1vbCSZRAD6f!-KUjR`@^>K^Wex+jQT=0t(QYL-+Rf!ee5T0t4v@-8WbS zkJKc*)~HI18}a=SaxAPlAJV1C9gC+%=E<1{(sOU#|=Pxl|eHe`jYzpm4l~8_!pImRZB2qvbzo;M6xVN*b|&Nsyu8w*K4ZFHON|}n_po>z#AvOC zGv1?WB@D|9wBZ#Pi@t9ydorQS_CU6hu_uH5P27g|&hzW@f)&T+w-|rjYEjTLO_M8* zCr_WY%1U4=z`#TH?$5Dx>GLnL&Rsq~3ocY&J?>Ml(Wsf-GmU0uktV#pzD8}W#+6N< z6yqJujMYFITNnk8)53!$zVCc+oUN{tVWdoJdhm%(E;h2yP3QHe@(S{99G-r);?)Om zAVo58A-eD13;UUf)!;-5%c8FpbPu}Y;<#@{jaPkOzr8U+X%?QBXbm68{m?CCpedFP zY`w*+JNGOZt$72NY3wQwC2S$^alV-<6ZD)XgQ=6%}_wdSTm4 zRG09HX->f%kTw5fN%L%nUqJ+z!@Y-S)}ylB@eq@McKzFbeyYfW%br>Dsvh8c2`z zjOcyV6LmY9fBg9I^s$PDhLVNFs-DO@rV;}70e%cHfx3XOfdPSb1!5!Q zy_0eAf?TZHr~m<>*7J788?B_jJRBH!L5Hz;mH^#4Tc!s~JUf8b=Fk2O!pS^J9)cK| rdWUzHhWOuw-~V3*_kY>p3t5ZmK^Zk3xH=&HJ+3xng;zpFEV%I literal 12162 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 I%4UK83micaQ~&?~ diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index 473b6614e665578a6c4b0e67e0abebece34d4aa7..3c252b8d352d6cdd85a02de09ad3bcae8f78c7c1 100644 GIT binary patch delta 10841 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 Q;71NgO8I@IglWkC11>1hwEzGB delta 8305 zcmZX2bzBus^!Cyn($Xl6a6#eH-2zh5acPk5hD8KvP(oT1M3A^3-CY7w(%m6-0qJ@# z-{0?j|9SVbJF`18J9Fka=RD`^Ugu*LBw~JGMj8FcB0!W#_VVw`t(|j?2~aHNS?k9) zG@v0%LFewuiR9hoO;x1J3c}y_a{rQ}T=i=yIIa*!R2Bgf+j$e44f+Ki=bj?`FaF(l zzRvKwy~UK#Nao;={N|FaYNxdsMiBj#GM*12+CV1&v8%1Y`#MyimEnj*k&@AFz#c#< zN2TsBQlnMf2fpo9I`}uarKO&`9}nKWDKQNg^mE+&NiNOUW zvwfFBr~Mw8p3m|ggGo-i}re3Y0z!#9ItlYw{Xe%Ta`fmGD4S3MOBxgX%`M<6kP0Q6@f8kR{Brc^;$cX zpr-u|<*o1vOORT2&tRT;2TyCZ2BAar=V>21pN|k}iGIw5+FncLLv5G&P51&ZySU3U zrfVNdg;*weqB_IIaOy#2wrxy$7S!`H<~AbJWRn4)(0CUpY4DFe+sXAC90>}**neFr zvVy*@LStLjOJ1e-O=M+!#Gwac`5QK6S^aw0MWlVoEV}@|vZ)d^F|A87h#o~iSt!Sx zI^3HlWM$wC%vF52c(`j2r=`9)zm##9;WW0mwz zo5?9QoyI5)a~USpF}&H{ z=Q+mGdGt{I$}VqXaph9&&nj0wodiyOy1!I*zTweG6pxoSRP{ zQ%(fx8wQu(HhqnJ30C)sg*=&f^1_>HO5SGhYs{dm6DLOa&#g}lePXaN>|R>Ia51Pn#;@AK4CFhNR5()g#5BJyD{Ca6#&rkD>`J7p*QoJ^H7= zH=Q8lepF9%=p%^n4eXJr67 z(gP;>sNH4bs3{)p~ zpPVPe+ZSAnzG9*`6OC}Cdse3BEHuML{z>wb_0gjQ(rgI3C`ad>3C`_6gkxG7cFioa z{D)vN{Br@#vw+_1?Lh`+x$^FN>?pIw#w={2_48%HH;+u38}YGgrn{s*42?qka(uDQ zZeAs!&CMqZgX5wJSG0~(c`s`%AA7H4T0|&d>_^vU`q%bmwOf};^?SwonOCK0oynTi z@qbv7FbGS=*B@IsWU&dSZ$;Dl^#ySWbgoV|Dl8Ys9nO;3$B`G-)6@7Vv^a_=WC#n3 zy6D$IC;88!1ADgQOenXLesf*&QGO|D(v_2q8w}BZ338?xDsz6Bmz!`yJ6;eDm_#SX z*wssr_42mymY;!|$qLUTp1mLH4U=g0yzN5#grN=_awga0L1-v!_fO||-oVUc-jF>3WoSc)CcBN&ac6gln zcJ&fQdqSmN{*B)g44S8A=OXf)TuO`K5;l{A)V+$$HM91q!!L{H-=u36pT12nBsW55 zh&;xY!DePIKV&dxc-4XO?lY;;=D7h^Ojae)-qWa+%%w$JEZt)A_V)I^xG9hqK$hjp z%Vzqex_dK~STi#-iA!btztK8_#-^?c7(VV56yMgadI4Mkl5qslN%Z#{nB8w&Yi0DW zHeWOU`y=&>7%IYv9)l^TbY~0Nn@MzBqf7lDrtsS^f;t%zUZ~MFh@Eqdf^!|OKRu?2 zzxV=})3}D0-P{CPSy?eMgUsme5xi~}vjKij0c`V_YQ2t&v#C@;v=4$|%@X1|*s!Ln zjmI4qP#2h4bw5Q%*Gi0DtC%d+(&oPVd*pko6Oduzo?5>~5+=vqv4Zp&#~w=uTWQX) z(*9vHo65(cpCn4Rch#M@S)p$ZtZKG;VR*1h36^UNKzm5vMynX)V`9hddue$-JZy!m zNJB%-w2IC99~butBM>a#r*`?oPo`w3)&l7|k_llkFW$ePZvxuPc-z)BF$B|9d8zO_ zytTDSDQx>_uv>%-+MgsTN;4#34}YnyUk3j4GCz6l_qqUTFm0rvr-wCd1O(uf=yD-X z`dHWJ!8x@!U@wQ&L@eLn$#*|9p~l(Szm>$S1@!72wT7j>j^1^|RsDe)mlCDLjH_pai`)lP$NpOEO!a`^{H$1-FL-TWiP5XmNl9n1mQuh{n1df6X$+d!ibXI(=JLjt~6F= zeBcWX&N~U#N3g6CvnDm9P8WIfuun=%xtD_E1cKcg9P-2+>lc97oUHhb#)QI#YhfP? zq$c6QZE9-HwM&({U02s@U}yt`_?GrZvpDZj_*zlo*+@0Q>FHz>{_^ZQ$D2LZXJFvm z>8hT4cYGIRJl9#g)%@DbAf#$7+@|A@-a5GW5QPYqN|7bs+9n0SnUwGMudO9hdE;7L z?=51I;&20~!~$7_9YcB;;^IoNi?h3&6@E?K=O4RgiFlC-*H;1n_r6{>;`%K$f%pD= z^rNReeG}GfPLuxMy3RX^fa8-BFr0GTX|9F|0wJP^kw242Wmqcq7u|m}8ThTc>qe}aGBa&M4k|9s|GbHfc{uf3Z6fP#8~ev-9#i6Rfkx~tJn)22YMwrJh@X9 z_K)DrQ7Ou05uo*}+$=bYx=`;MyT97nqOie?>=+oif=B<~A7Y6tD5sF>8o_ksks#aNy?2Vq{vHV4IG(EfMJak2a z*vWJE-q|$scme25|CN-iTsz{Wa{bXlkCmCpC-pYCyIrNp#ecJmCH|9yDWRAZ20FUb zT<~a&ZgKc;n|GZnAA&%kFqJ9^c%BS%d=`2!G~uQ{7@+B zi23Eg)1tkm_>bYkcRo)y#Ux-t$q{8eJqlrr=p*R;!6Fl&iCAs$upvtLXCDh_Bi(LJ zaM+9-2v$=Qbj^v6=HcqU45dIaHDJsXy96)_2~lz2%+876xad?>eJTA)AAG3Lez?Fs zZ|rzL*1~CMs9{qp9fiu=eOdcgo#KgDFBnMUZ!Gkd|!4cMQFPR|(OSoRsMNs}_ zDTl5T6?n_e&#;GC=8r5r(VO5#wx)J-vcSXENp~BIoN+pna8=u|L_+l+`d|k*7h-`&*GLNX^77)P zjvLuMeNcFgSUox0r_cMICG&sn%bx6jjn+U2d6|jAn9o4Dz=?8lya_JAOCiP*kfX&j zG3C?15w2cz9_V5HQy;O>LXddfy~HNiY)VwB%N0iZt{o`VoqNOnns8ql@AULk-@wqX7d3L0wNM}af@PoMlY3uCmR9@{kis^lU}tCn%n-jFyNC!wyZ15zn9(5wq@1vq zVPzS0M@8BN^AY6voMr&%`gdG&yem%c+079pQ%rX#l6;YYk$obCS%*@627Zfug@uE(x!LiRRG`tO5sEGccx{%F$|Rb455{G?-6H!%`;zIuWC3~pC7yS zYzQ!QGw`y2G;sS7@FAr~)xLU!r?z(XdbKk;aID#vFby1QANUhTBN%qwMExCom`T2+ z^v{llfx+b?BA5vsTZEqhsZJ&yA#YdRUBmH;0v~VRL*SuiSs%(-$7Z&^vVN8jFu@%`Y^6#BdXv?n)QgtH6_t|ma^kCmC26LR*jRk|#kbzp zhZ}Ke)RIe1bE)1Ls?MDW?!%W2U7Hj3;>=pWUQR&%zM{m9=2-7>=8ah60ayh>Va&hy4l(2!dsST zNvu+m1i$iwGZ~u%wCSI+W7ci(vwxZBleQM=ZmVb@mE~b;>mRokZ1a25D(dUm zR_H}JZqITUu02!O5u%%U5>uOm$h?IRM*Dxumk|)YBRPa%fs;((8%}D&v$Y9zdQ9Nr z`r7Awzd}is8a0yBR4kH(mB5WaKKRP0`|2*Q6D2N(VQ)uP1Z<|TW7NUDOAc-7^a5GFZJqazsK zG?cN@(kb)J-q<)eC?k(*zRiwI|4@b&-vG_CL@|4C!6!fO?&@a$at1fSaYDkYEyCRw z)+8q>3m3D&q@iyepQ?Z0++P}KCNP}PW0hy_Ptd!Zb45i!JallL#RM(23I)>H&!9-v z`&i7wvyH@S%GehR*pR+jZiW^jveK^v!+u%uRsNi`%8 zC1&?JlFlL37R4i=L;kP4d)7XIOVfT8(mT$1A^|n8AcCwgB-|a5eA=4c(_w!MmdfUZ!x-R;}wV5Dq4U}Hr}QAlGW7jR0n{YJ$zfVT-m4QZkhem*DyAY<;V@{?(SAn zQ`4z}0ZPi-?<7{*d8tF^&Zmhbd1Q6?pIai&u{UzX}gkp-szc{nH3O!XI2~1ui@szwR4b-gk8g0w(a<9s!@O< zkDlk(@Ix{@so$sYa>_4W7$YOw0n1ea4b>bQ4=IJjl1jlJWkT`4o+2~wz~tvQEjYe5 zO9B8fCoH7+s(UU-=4~;J3uyf-`KxJjqsen?cB7+HqG)lf^WsvW#6+(8r9QRJ%7d(1>4{DgVA;cDkHD2 z->cWuoGpzqU6btfWIixa%O2201#7}_V>>r9VkRM+=noByvYtLm!M&)=oAgm-k;(R{ znaB(~;{&f8$eKXn9GH{nz9z7z>kwpEs%sv8)A&PVp|N~Y`%lNJAkZdV+WdzA_)gc< zbnq+7cJgf9_RP0`J9bY49SbYZWvRs(W@{C(c$Il5wfi*57_W8KNyzMt)M%4MR`6mp zsB7GgqJq}H2d!OO_uT3AJR5Hdq_v-UJJ|BVt? z_npv#?ROxZJ$yvKQJ)&XzW&eHk`R)HwZEJiA6A_+s$mZxS2*Y|Eh-Yx%g-+w;;dJ@ zJs-L=(#JCk?k%eif0gv+L_@JzR$0J9OvZ3i-DC_(ahO# zm{U3Tb;(2Z;|X?=+dX#CW*=|LxCG0UX%=7BWBm88Iui&Z&@kUgPxnsYYp>FFajl}k z^Vvu&E$1hJOg^w8=Sh$x)!6!#xR2n?bj#+{y}(~9Nvsy!mftJe?vHVu0xqr&ZA5c( z^W40W0#!z_Q%cW1=xBIo>W2$GpbWHqMl0?6yxn?Mo4|uO+wvE;6Bhn4?lfm#y&5Iy ztXUf14P9eW{VODl&X6&vC0MXJ7FxM|uZf!#6CAqq7i3?SEM7TxCX=C@=)4$ZG;25b z=1d=tOor0EvH~IRo4HjN;4MMd77GntR4;7s;jq^D?+Q~X5j29%a>mBAtE;Q7M{I|v z;!NU?E>@e1JPLuknS|`?T3m8uou3|(ZYhE~B@9?+Uh(0-J`g(tui|hCNChH_NM9NbzAQr`ya*R!Sn5GV$ElHg0~>S zZm)H+C6cA1ioaH}U0Dvl)upePmz@H@mevBv$z9y(1y50ia&BATDG$;_md}KmD)tXK ze+0FNbIC-GJ)6m!N&CWBi?GHe?Af^j{pEg4U>}{x8mQpe8yb-phb*Wyp?Y(*l!W+c zRiJuH7Ev)8I?JHKe08D(+L|5~HnH=vcxBw=NM6q7@!5duF}wlSB!I9AzHqw5)_ghB z8VM+1Gp!$tt;dotIXEAWMevMxmy!>iX4r7#J6N3sfx{nyazP? zw@LWFiLjYK2?dl`gZH5(X2^TkS{U)F zC0W~l(*?$&Qawx?nehLX`rmmaCi4KOi>pv(I@y!UD8!2-ndzqXmD-ys--nq#fL^9p z<$muv)4|S_?K7%~&bN#79fk?}=B2%7<#ibh^LN>90+PIo-nBz<57M>bn_`rwD>FH- z?CO2}?aU7g3zL(;$lq`leiSLgZ8VRYi5}e87Lu6S9UeQ zdqO3&u0$7nIjPX1b&1j9#;J0qpO}TWH?9^tWKg!5Ho)vv#oGq~e%#*hGEaseN3c@| zKY#J!V@5`FSQt7PIeEJyG_SBw2^*H4p8nEX{bBE>ZM#f;AV2z#$ppFx5XX?a;)>18 zs#QOYz9A=Wk20p@4kzu)gvIT&+l8X+hbJps;^K4wuU$Dkn&m(J=MVyqL;}ZOP5k(= zqn0CP;sB$#xXDN2N#vG|s_Y&ie*`>OMiPERWpvbOc2| zJ?3wl7qJRY0X=LLHMQ^=$M-XipBlLywE0g<-1L3!;0{?!aF*D#lMzQsN(ws%$J@$M z0<8GgD{UV+@zwYkSM=1)?V?dop28H>{%O0`RDb>Ut&1Bh`L)v#j>pc)ndqqU>ec&E zJ2_3wM?A)LUzF}2jBtm}pRBD4Mz3w+Kx7zYFK`UWQnUz|*vfwFRUD4w@pZ;Lewyx^HtKP4WYMDp{et-B*#3@)smI%K?O%?^ zG{W2*2-)7Y1H6Ec3N0=L?(5moL;b!1(6gqfxZWgCKaqjWW9mQQ<%2c3R&pLJl)qM~ z23bh$ShLr`Hv>k+{_`l`JWvtknL;VWds>3gpm3UH>crO;BrOFaU!-V-v^HuEk=TVr z*pVG(mZ4#K5*h_&PNF=B*;neDorVbsOq+;7rD!G5dZtDMd@9D#&^zac}8(5DcH`ZNy@k2jv( z!$z4tH&KVuHX+Peb&e9Xz%>!1Z2BLWgbH{F|88p*%Ht2|{5VSG#&U(fj5F+#q7%n` zWs*g*;QeL}tZ`z8KnigGqY?kEV%+Ip(ZwC}5TK(8!sjL>YT!n0`1loEbV3LDi$F6d zm;B&&_XE&3)AX!5D6&l!)#)czx)Md|9ziwS3CGrv%Qs*5Cx!a{bY*C+?(v81&phiIV(H~0^b%J`=nVU|C* zc5t}8xmL3+6{$x!JpM3g4gG(*Y05T3qB@g>V!eE5AI4*Ul$>1iYGb$hk7wu8VdJ*a iB>%Y-=KsgAx02~IV?Ra95)%OAp)CJO4lZLB`hNiSgYHTI diff --git a/icons/obj/clothing/uniforms_1.dmi b/icons/obj/clothing/uniforms_1.dmi index eba7fa299fc432b7ae9225116af3ae27b47abc85..9478ef888d26c056ef6dfaa0da3a497d9dba3f29 100644 GIT binary patch delta 3908 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 SiXH#}002ovPDHLk0$_sT&Ua$~ delta 6671 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 Date: Sun, 24 Jan 2021 21:27:44 -0800 Subject: [PATCH 30/36] fixing defib timer and adding surgery for that shit --- code/game/objects/items/devices/defib.dm | 4 +-- code/modules/organs/internal/brain.dm | 4 +-- code/modules/surgery/additions_ch.dm | 34 ++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 4 deletions(-) diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 1e549c23c0..525bbeac7e 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -509,8 +509,8 @@ return // Still no brain. // If the brain'd `defib_timer` var gets below this number, brain damage will happen at a linear rate. - // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 6000 world.time units = 3000 `Life()` ticks. - var/brain_damage_timer = ((config.defib_timer MINUTES) / 2) - ((config.defib_braindamage_timer MINUTES) / 2) + // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 300 `Life()` ticks. // Original math was VERY off. Life() tick occurs every ~2 seconds, not every 2 world.time ticks. + var/brain_damage_timer = ((config.defib_timer MINUTES) / 20) - ((config.defib_braindamage_timer MINUTES) / 20) if(brain.defib_timer > brain_damage_timer) return // They got revived before brain damage got a chance to set in. diff --git a/code/modules/organs/internal/brain.dm b/code/modules/organs/internal/brain.dm index 30c539bbde..386cfdaef5 100644 --- a/code/modules/organs/internal/brain.dm +++ b/code/modules/organs/internal/brain.dm @@ -33,7 +33,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) if(!owner || owner.stat == DEAD) defib_timer = max(--defib_timer, 0) else - defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 2) + defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 20) // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 /obj/item/organ/internal/brain/proc/can_assist() return can_assist @@ -81,7 +81,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) /obj/item/organ/internal/brain/New() ..() health = config.default_brain_health - defib_timer = (config.defib_timer MINUTES) / 2 + defib_timer = (config.defib_timer MINUTES) / 20 // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 spawn(5) if(brainmob) butcherable = FALSE diff --git a/code/modules/surgery/additions_ch.dm b/code/modules/surgery/additions_ch.dm index b2c603a341..ecddfed994 100644 --- a/code/modules/surgery/additions_ch.dm +++ b/code/modules/surgery/additions_ch.dm @@ -146,4 +146,38 @@ "Your hand slips, failing to finish the surgery, and damaging [target] with \the [tool].") affected.createwound(CUT, 15) affected.createwound(BRUISE, 10) + ..() + +/datum/surgery_step/internal/brain_revive + blood_level = 0 + allowed_tools = list(/obj/item/weapon/surgical/bioregen=100) + min_duration = 120 + max_duration = 150 + +/datum/surgery_step/internal/brain_revive/can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) + var/obj/item/organ/internal/brain/brain = target.internal_organs_by_name[O_BRAIN] + return ..() && target_zone == BP_HEAD && istype(brain) && (brain.status & ORGAN_DEAD || brain.defib_timer == 0) + +/datum/surgery_step/internal/brain_revive/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) + user.visible_message("[user] begins to use \the [tool] to reverse the decay on and revatilize [target]'s brain.", \ + "You begin to use \the [tool] to reverse the decay on and revatilize [target]'s brain.") + ..() + +/datum/surgery_step/internal/brain_revive/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) + user.visible_message("[user] finishes reversing the decay on and revatalizing [target]'s brain.", \ + "You finish reversing the decay on and revatalizing [target]'s brain.") + var/obj/item/organ/internal/brain/brain = target.internal_organs_by_name[O_BRAIN] + brain.damage = max(0,brain.damage - 10) + brain.status &= ~ORGAN_DEAD + brain.handle_organ_mod_special() + brain.defib_timer = (config.defib_timer MINUTES) / 20 + START_PROCESSING(SSobj, brain) + ..() + +/datum/surgery_step/internal/brain_revive/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) + user.visible_message("[user]'s hand slips, failing to finish the surgery, and damaging [target] with \the [tool].", \ + "Your hand slips, failing to finish the surgery, and damaging [target] with \the [tool].") + var/obj/item/organ/external/affected = target.get_organ(target_zone) + affected.createwound(CUT, 15) + affected.createwound(BRUISE, 10) ..() \ No newline at end of file From 2fe77a59ac5fca1969e445030e7662581fdceed9 Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Sun, 24 Jan 2021 22:46:10 -0800 Subject: [PATCH 31/36] Revert "fixing defib timer and adding surgery for that shit" --- code/game/objects/items/devices/defib.dm | 4 +-- code/modules/organs/internal/brain.dm | 4 +-- code/modules/surgery/additions_ch.dm | 34 ------------------------ 3 files changed, 4 insertions(+), 38 deletions(-) diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 525bbeac7e..1e549c23c0 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -509,8 +509,8 @@ return // Still no brain. // If the brain'd `defib_timer` var gets below this number, brain damage will happen at a linear rate. - // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 300 `Life()` ticks. // Original math was VERY off. Life() tick occurs every ~2 seconds, not every 2 world.time ticks. - var/brain_damage_timer = ((config.defib_timer MINUTES) / 20) - ((config.defib_braindamage_timer MINUTES) / 20) + // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 6000 world.time units = 3000 `Life()` ticks. + var/brain_damage_timer = ((config.defib_timer MINUTES) / 2) - ((config.defib_braindamage_timer MINUTES) / 2) if(brain.defib_timer > brain_damage_timer) return // They got revived before brain damage got a chance to set in. diff --git a/code/modules/organs/internal/brain.dm b/code/modules/organs/internal/brain.dm index 386cfdaef5..30c539bbde 100644 --- a/code/modules/organs/internal/brain.dm +++ b/code/modules/organs/internal/brain.dm @@ -33,7 +33,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) if(!owner || owner.stat == DEAD) defib_timer = max(--defib_timer, 0) else - defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 20) // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 + defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 2) /obj/item/organ/internal/brain/proc/can_assist() return can_assist @@ -81,7 +81,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain) /obj/item/organ/internal/brain/New() ..() health = config.default_brain_health - defib_timer = (config.defib_timer MINUTES) / 20 // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 + defib_timer = (config.defib_timer MINUTES) / 2 spawn(5) if(brainmob) butcherable = FALSE diff --git a/code/modules/surgery/additions_ch.dm b/code/modules/surgery/additions_ch.dm index ecddfed994..b2c603a341 100644 --- a/code/modules/surgery/additions_ch.dm +++ b/code/modules/surgery/additions_ch.dm @@ -146,38 +146,4 @@ "Your hand slips, failing to finish the surgery, and damaging [target] with \the [tool].") affected.createwound(CUT, 15) affected.createwound(BRUISE, 10) - ..() - -/datum/surgery_step/internal/brain_revive - blood_level = 0 - allowed_tools = list(/obj/item/weapon/surgical/bioregen=100) - min_duration = 120 - max_duration = 150 - -/datum/surgery_step/internal/brain_revive/can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - var/obj/item/organ/internal/brain/brain = target.internal_organs_by_name[O_BRAIN] - return ..() && target_zone == BP_HEAD && istype(brain) && (brain.status & ORGAN_DEAD || brain.defib_timer == 0) - -/datum/surgery_step/internal/brain_revive/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] begins to use \the [tool] to reverse the decay on and revatilize [target]'s brain.", \ - "You begin to use \the [tool] to reverse the decay on and revatilize [target]'s brain.") - ..() - -/datum/surgery_step/internal/brain_revive/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] finishes reversing the decay on and revatalizing [target]'s brain.", \ - "You finish reversing the decay on and revatalizing [target]'s brain.") - var/obj/item/organ/internal/brain/brain = target.internal_organs_by_name[O_BRAIN] - brain.damage = max(0,brain.damage - 10) - brain.status &= ~ORGAN_DEAD - brain.handle_organ_mod_special() - brain.defib_timer = (config.defib_timer MINUTES) / 20 - START_PROCESSING(SSobj, brain) - ..() - -/datum/surgery_step/internal/brain_revive/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user]'s hand slips, failing to finish the surgery, and damaging [target] with \the [tool].", \ - "Your hand slips, failing to finish the surgery, and damaging [target] with \the [tool].") - var/obj/item/organ/external/affected = target.get_organ(target_zone) - affected.createwound(CUT, 15) - affected.createwound(BRUISE, 10) ..() \ No newline at end of file From fe84e9679704e6f0a0315eaf61baee8d871f6631 Mon Sep 17 00:00:00 2001 From: cadyn <35672377+cadyn@users.noreply.github.com> Date: Sun, 24 Jan 2021 22:48:39 -0800 Subject: [PATCH 32/36] Revert "Delete defib timer" --- code/game/objects/items/devices/defib.dm | 2 +- code/modules/organs/organ.dm | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 1e549c23c0..8e5fa683c9 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -288,7 +288,7 @@ /obj/item/weapon/shockpaddles/proc/can_revive(mob/living/carbon/human/H) //This is checked right before attempting to revive var/obj/item/organ/internal/brain/brain = H.internal_organs_by_name[O_BRAIN] - if(H.should_have_organ(O_BRAIN) && (!brain) ) //CHOMPEdit Defib Timer Removal + if(H.should_have_organ(O_BRAIN) && (!brain || brain.defib_timer <= 0 ) ) return "buzzes, \"Resuscitation failed - Excessive neural degeneration. Further attempts futile.\"" H.updatehealth() diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index 7e11c71c77..9047eb2665 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -145,7 +145,8 @@ var/list/organ_cache = list() STOP_PROCESSING(SSobj, src) handle_organ_mod_special(TRUE) if(owner && vital) - owner.death() //CHOMPEdit Defib Timer Removal + owner.can_defib = 0 + owner.death() /obj/item/organ/proc/adjust_germ_level(var/amount) // Unless you're setting germ level directly to 0, use this proc instead germ_level = CLAMP(germ_level + amount, 0, INFECTION_LEVEL_MAX) @@ -404,7 +405,8 @@ var/list/organ_cache = list() if(user) add_attack_logs(user, owner, "Removed vital organ [src.name]") if(owner.stat != DEAD) - owner.death() //CHOMPEdit Defib Timer Removal + owner.can_defib = 0 + owner.death() handle_organ_mod_special(TRUE) From 5c737f5a6c44593d1800dccec4df8f92212c3234 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Mon, 25 Jan 2021 13:36:42 -0500 Subject: [PATCH 33/36] Merge pull request #9608 from H0lySquirr3l/master Adds in Ripped Hephestus jump suit and black duffle bag for were beasts --- icons/mob/species/werebeast/back.dmi | Bin 4055 -> 4645 bytes icons/mob/species/werebeast/uniform.dmi | Bin 16662 -> 17944 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/species/werebeast/back.dmi b/icons/mob/species/werebeast/back.dmi index 14cd04dbdd5fe69fc924e9220736744815eb80bc..f04103f7a7b2c7d097c38889ac7056c548742354 100644 GIT binary patch literal 4645 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 TXZ0sKe>5P*P@~2hcT@fcaKgV* literal 4055 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 diff --git a/icons/mob/species/werebeast/uniform.dmi b/icons/mob/species/werebeast/uniform.dmi index e441c4af6d87b34f012f39088d5590ac0c7af774..267847085fa89689f27e8cf58461398ec2a9f5ce 100644 GIT binary patch literal 17944 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