From cca2cc5a23acebf20b9ee845232bb6ed38f59d75 Mon Sep 17 00:00:00 2001 From: Neerti Date: Fri, 29 Dec 2017 01:12:32 -0500 Subject: [PATCH] Adds Berserk --- code/__defines/xenoarcheaology.dm | 3 +- code/_onclick/hud/screen_objects.dm | 1 + .../gamemodes/changeling/powers/enrage.dm | 33 ++++ code/game/objects/items.dm | 11 +- code/modules/admin/verbs/debug.dm | 8 +- code/modules/clothing/head/misc_special.dm | 67 ++++++- code/modules/mob/_modifiers/modifiers.dm | 19 ++ code/modules/mob/_modifiers/modifiers_misc.dm | 182 ++++++++++++++++++ code/modules/mob/living/bot/bot.dm | 3 + code/modules/mob/living/carbon/human/human.dm | 8 + code/modules/mob/living/living.dm | 41 +++- code/modules/mob/living/silicon/ai/ai.dm | 5 + .../mob/living/silicon/robot/drone/drone.dm | 3 + code/modules/mob/living/silicon/robot/life.dm | 1 + .../modules/mob/living/silicon/robot/robot.dm | 3 + .../living/simple_animal/aliens/hivebot.dm | 2 +- .../mob/living/simple_animal/animals/bear.dm | 22 ++- .../mob/living/simple_animal/simple_animal.dm | 3 + .../living/simple_animal/slime/subtypes.dm | 4 + code/modules/mob/login.dm | 1 + code/modules/mob/mob.dm | 10 +- code/modules/tension/tension.dm | 131 +++++++++++++ .../xenoarcheaology/artifacts/artifact.dm | 11 ++ .../xenoarcheaology/effects/berserk.dm | 43 +++++ .../xenoarcheaology/finds/find_spawning.dm | 31 +++ .../xenoarcheaology/finds/finds_defines.dm | 2 + code/modules/xenobio/items/extracts.dm | 9 +- icons/mob/head.dmi | Bin 186541 -> 186976 bytes icons/mob/modifier_effects.dmi | Bin 14624 -> 14742 bytes icons/mob/screen_spells.dmi | Bin 64004 -> 64464 bytes icons/obj/clothing/hats.dmi | Bin 98071 -> 98914 bytes polaris.dme | 4 + 32 files changed, 646 insertions(+), 15 deletions(-) create mode 100644 code/game/gamemodes/changeling/powers/enrage.dm create mode 100644 code/modules/mob/_modifiers/modifiers_misc.dm create mode 100644 code/modules/tension/tension.dm create mode 100644 code/modules/xenoarcheaology/effects/berserk.dm diff --git a/code/__defines/xenoarcheaology.dm b/code/__defines/xenoarcheaology.dm index b6af0d0681..b8b781795f 100644 --- a/code/__defines/xenoarcheaology.dm +++ b/code/__defines/xenoarcheaology.dm @@ -33,7 +33,8 @@ #define ARCHAEO_REMAINS_ROBOT 33 #define ARCHAEO_REMAINS_XENO 34 #define ARCHAEO_GASMASK 35 -#define MAX_ARCHAEO 35 +#define ARCHAEO_ALIEN_ITEM 36 +#define MAX_ARCHAEO 36 #define DIGSITE_GARDEN 1 #define DIGSITE_ANIMAL 2 diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 35ef300978..015bff5672 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -10,6 +10,7 @@ name = "" icon = 'icons/mob/screen1.dmi' layer = 20.0 + appearance_flags = TILE_BOUND|PIXEL_SCALE|NO_CLIENT_COLOR unacidable = 1 var/obj/master = null //A reference to the object in the slot. Grabs or items, generally. var/datum/hud/hud = null // A reference to the owner HUD, if any. diff --git a/code/game/gamemodes/changeling/powers/enrage.dm b/code/game/gamemodes/changeling/powers/enrage.dm new file mode 100644 index 0000000000..00b2193c86 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/enrage.dm @@ -0,0 +1,33 @@ +/datum/power/changeling/enrage + name = "Enrage" + desc = "We evolve modifications to our mind and body, allowing us to call on intense periods of rage for our benefit." + helptext = "Berserks us, giving massive bonuses to fighting in close quarters for thirty seconds, and losing the ability to \ + be accurate at ranged while active. Afterwards, we will suffer extreme amounts of exhaustion for a period of two minutes, \ + during which we will be much weaker and slower than before. We cannot berserk again while exhausted. This ability requires \ + a significant amount of nutrition to use, and cannot be used if too hungry. Using this ability will end most forms of disables." + enhancedtext = "The length of exhaustion after berserking is reduced to one minute, from two, and requires half as much nutrition." + ability_icon_state = "ling_berserk" + genomecost = 2 + allowduringlesserform = 1 + verbpath = /mob/living/proc/changeling_berserk + +// Makes the ling very upset. +/mob/living/proc/changeling_berserk() + set category = "Changeling" + set name = "Enrage (30)" + set desc = "Causes you to go Berserk." + + var/datum/changeling/changeling = changeling_power(30,0,100) + if(!changeling) + return 0 + + var/modifier_to_use = /datum/modifier/berserk/changeling + if(src.mind.changeling.recursive_enhancement) + modifier_to_use = /datum/modifier/berserk/changeling/recursive + to_chat(src, "We optimize our levels of anger, which will avoid excessive stress on ourselves.") + + if(add_modifier(modifier_to_use, 30 SECONDS)) + changeling.chem_charges -= 30 + + feedback_add_details("changeling_powers","EN") + return 1 \ No newline at end of file diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index bd3eb7fe31..51f8ab993b 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -234,7 +234,9 @@ // apparently called whenever an item is removed from a slot, container, or anything else. /obj/item/proc/dropped(mob/user as mob) ..() - if(zoom) zoom() //binoculars, scope, etc + if(zoom) + zoom() //binoculars, scope, etc + appearance_flags &= ~NO_CLIENT_COLOR // called just as an item is picked up (loc is not yet changed) /obj/item/proc/pickup(mob/user) @@ -259,8 +261,11 @@ // note this isn't called during the initial dressing of a player /obj/item/proc/equipped(var/mob/user, var/slot) layer = 20 - if(user.client) user.client.screen |= src - if(user.pulling == src) user.stop_pulling() + if(user.client) + user.client.screen |= src + if(user.pulling == src) + user.stop_pulling() + appearance_flags |= NO_CLIENT_COLOR return //Defines which slots correspond to which slot flags diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 02c3fbc7b6..660f2255c4 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -31,6 +31,12 @@ return var/weapon_attack_speed = user.get_attack_speed(I) / 10 var/weapon_damage = I.force + var/modified_damage_percent = 1 + + for(var/datum/modifier/M in user.modifiers) + if(!isnull(M.outgoing_melee_damage_percent)) + weapon_damage *= M.outgoing_melee_damage_percent + modified_damage_percent *= M.outgoing_melee_damage_percent if(istype(I, /obj/item/weapon/gun)) var/obj/item/weapon/gun/G = I @@ -53,7 +59,7 @@ qdel(P) var/DPS = weapon_damage / weapon_attack_speed - to_chat(user, "Damage: [weapon_damage]") + to_chat(user, "Damage: [weapon_damage][modified_damage_percent != 1 ? " (Modified by [modified_damage_percent*100]%)":""]") to_chat(user, "Attack Speed: [weapon_attack_speed]/s") to_chat(user, "\The [I] does [DPS] damage per second.") if(DPS > 0) diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 97c5ae4a6d..07eb5a3f63 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -6,6 +6,7 @@ * Pumpkin head * Kitty ears * Holiday hats + Crown of Wrath */ /* @@ -201,4 +202,68 @@ desc = "It's a festive christmas hat, in green!" icon_state = "santahatgreen" item_state_slots = list(slot_r_hand_str = "santahatgreen", slot_l_hand_str = "santahatgreen") - body_parts_covered = 0 \ No newline at end of file + body_parts_covered = 0 + +/* + * Xenoarch/Surface Loot Hats + */ + +// Triggers an effect when the wearer is 'in grave danger'. +// Causes brainloss when it happens. +/obj/item/clothing/head/psy_crown + name = "broken crown" + desc = "A crown-of-thorns with a missing gem." + var/tension_threshold = 150 + var/cooldown = null // world.time of when this was last triggered. + var/cooldown_duration = 3 MINUTES // How long the cooldown should be. + var/flavor_equip = null // Message displayed to someone who puts this on their head. Drones don't get a message. + var/flavor_unequip = null // Ditto, but for taking it off. + var/flavor_drop = null // Ditto, but for dropping it. + var/flavor_activate = null // Ditto, for but activating. + var/brainloss_cost = 3 // Whenever it activates, inflict this much brainloss on the wearer, as its not good for the mind to wear things that manipulate it. + +/obj/item/clothing/head/psy_crown/proc/activate_ability(var/mob/living/wearer) + cooldown = world.time + cooldown_duration + to_chat(wearer, flavor_activate) + to_chat(wearer, "The inside of your head hurts...") + wearer.adjustBrainLoss(brainloss_cost) + +/obj/item/clothing/head/psy_crown/equipped(var/mob/living/carbon/human/H) + ..() + if(istype(H) && H.head == src && H.is_sentient()) + processing_objects += src + to_chat(H, flavor_equip) + +/obj/item/clothing/head/psy_crown/dropped(var/mob/living/carbon/human/H) + ..() + processing_objects -= src + if(H.is_sentient()) + if(loc == H) // Still inhand. + to_chat(H, flavor_unequip) + else + to_chat(H, flavor_drop) + +/obj/item/clothing/head/psy_crown/Destroy() + processing_objects -= src + return ..() + +/obj/item/clothing/head/psy_crown/process() + if(isliving(loc)) + var/mob/living/L = loc + if(world.time >= cooldown && L.is_sentient() && L.get_tension() >= tension_threshold) + activate_ability(L) + + +/obj/item/clothing/head/psy_crown/wrath + name = "red crown" + desc = "A crown-of-thorns set with a red gemstone that seems to glow unnaturally. It feels rather disturbing to touch." + description_info = "This has a chance to cause the wearer to become extremely angry when in extreme danger." + icon_state = "wrathcrown" + flavor_equip = "You feel a bit angrier after putting on this crown." + flavor_unequip = "You feel calmer after removing the crown." + flavor_drop = "You feel much calmer after letting go of the crown." + flavor_activate = "An otherworldly feeling seems to enter your mind, and it ignites your mind in fury!" + +/obj/item/clothing/head/psy_crown/wrath/activate_ability(var/mob/living/wearer) + ..() + wearer.add_modifier(/datum/modifier/berserk, 30 SECONDS) \ No newline at end of file diff --git a/code/modules/mob/_modifiers/modifiers.dm b/code/modules/mob/_modifiers/modifiers.dm index 7164396f29..7c005838d1 100644 --- a/code/modules/mob/_modifiers/modifiers.dm +++ b/code/modules/mob/_modifiers/modifiers.dm @@ -19,6 +19,7 @@ var/light_range = null // How far the light for the above var goes. Not implemented yet. var/light_intensity = null // Ditto. Not implemented yet. var/mob_overlay_state = null // Icon_state for an overlay to apply to a (human) mob while this exists. This is actually implemented. + var/client_color = null // If set, the client will have the world be shown in this color, from their perspective. // Now for all the different effects. // Percentage modifiers are expressed as a multipler. (e.g. +25% damage should be written as 1.25) @@ -43,6 +44,7 @@ var/metabolism_percent // Adjusts the mob's metabolic rate, which affects reagent processing. Won't affect mobs without reagent processing. var/icon_scale_percent // Makes the holder's icon get scaled up or down. var/attack_speed_percent // Makes the holder's 'attack speed' (click delay) shorter or longer. + var/pain_immunity // Makes the holder not care about pain while this is on. Only really useful to human mobs. /datum/modifier/New(var/new_holder, var/new_origin) holder = new_holder @@ -52,6 +54,11 @@ origin = weakref(holder) ..() +// Checks if the modifier should be allowed to be applied to the mob before attaching it. +// Override for special criteria, e.g. forbidding robots from receiving it. +/datum/modifier/proc/can_apply(var/mob/living/L) + return TRUE + // Checks to see if this datum should continue existing. /datum/modifier/proc/check_if_valid() if(expire_at && expire_at < world.time) // Is our time up? @@ -66,8 +73,14 @@ holder.update_modifier_visuals() if(icon_scale_percent) // Correct the scaling. holder.update_transform() + if(client_color) + holder.update_client_color() qdel(src) +// Override this for special effects when it gets added to the mob. +/datum/modifier/proc/on_applied() + return + // Override this for special effects when it gets removed. /datum/modifier/proc/on_expire() return @@ -114,15 +127,21 @@ // If we're at this point, the mob doesn't already have it, or it does but stacking is allowed. var/datum/modifier/mod = new modifier_type(src, origin) + if(!mod.can_apply(src)) + qdel(mod) + return if(expire_at) mod.expire_at = world.time + expire_at if(mod.on_created_text) to_chat(src, mod.on_created_text) modifiers.Add(mod) + mod.on_applied() if(mod.mob_overlay_state) update_modifier_visuals() if(mod.icon_scale_percent) update_transform() + if(mod.client_color) + update_client_color() return mod diff --git a/code/modules/mob/_modifiers/modifiers_misc.dm b/code/modules/mob/_modifiers/modifiers_misc.dm new file mode 100644 index 0000000000..0a02f6b096 --- /dev/null +++ b/code/modules/mob/_modifiers/modifiers_misc.dm @@ -0,0 +1,182 @@ +// File for modifier defines that don't fit anywhere else. Since this is a misc file, it's doomed to get filled with everything like all the others. + + +/* + Berserk is a modifier that grants vastly increased melee capability for a short period of time, easily allowing the +holder to do more than twice the damage they would normally do, as it both increases outgoing melee damage, and +reduces their attack delay. The screen will also turn deep red and the holder will get larger in size. + +The modifier also gives some defenses, in that it gives additional max health (this can bite them in the ass later since +its not permanent), makes them move slightly faster, cancels disabling effects when it triggers, and reduces the power of +future disables by a very large amount. It also suppresses pain until it expires, however berserking while under massive pain +is likely to cause them to pass out when exhaustion hits. + +Due to the intense rage felt by the holder, the focus needed to use ranged weapons is lost, making accuracy with them +massively reduced. The holder also feels less of a need to evade attacks and will be easier to hit. + +Berserk can be extended by having another instance try to affect the holder while in the middle of a berserk. + +After the modifier expires, a second modifier representing exhaustion is placed, which inflicts massive maluses and prevents +further berserks until it expires. This generally means that someone getting caught while exhausted will be much easier to fight, +as they will be much slower, attack slower, do less melee damage, be easier to hit, and disabling effects will affect them harder. + +Berserking causes the holder to feel hungrier. If they are starving, this modifier cannot be applied. Diona cannot +be berserked, or those who are suffering from exhaustion. Non-Drone Synthetics that receive the berserk modifier will +instead get a version that has no benefits, but will not cost nutrition or cause exhaustion. Drones cannot receive berserk, as +they are emotionless automatrons. + +Berserk is a somewhat rare modifier to obtain freely (and for good reason), however here are ways to see it in action; +- Red Slimes will berserk if they go rabid. +- Red slime core reactions will berserk slimes that can see the user in addition to making them go rabid. +- Red slime core reactions will berserk prometheans that can see the user. +- Bears will berserk when losing a fight. +- Changelings can evolve a 2 point ability to use a changeling-specific variant of Berserk, that replaces the text with a 'we' variant. +Recursive Enhancement allows the changeling to instead used an improved variant that features less exhaustion time and less nutrition drain. +- Xenoarch artifacts may have forced berserking as one of their effects. This is especially fun if an artifact that makes hostile mobs is nearby. +Will cause three brainloss in those affected due to the artifact meddling with their mind. +- A rare alien artifact might be found on the Surface, or obtained from Xenoarch, that causes berserking when it thinks +the wearer is in danger, however in addition to the usual drawbacks, each use causes three brainloss in the user, due to how +the artifact triggers the rage. + +*/ + +/datum/modifier/berserk + name = "berserk" + desc = "You are filled with an overwhelming rage." + client_color = "#FF0000" // Make everything red! + mob_overlay_state = "berserk" + + on_created_text = "You feel an intense and overwhelming rage overtake you as you go berserk!" + on_expired_text = "The blaze of rage inside you has ran out." + stacks = MODIFIER_STACK_EXTEND + + // The good stuff. + slowdown = -1 // Move a bit faster. + attack_speed_percent = 0.66 // Attack at 2/3 the normal delay. + outgoing_melee_damage_percent = 1.5 // 50% more damage from melee. + max_health_percent = 1.5 // More health as a buffer, however the holder might fall into crit after this expires if they're mortally wounded. + disable_duration_percent = 0.25 // Disables only last 25% as long. + icon_scale_percent = 1.2 // Look scarier. + pain_immunity = TRUE // Avoid falling over from shock (at least until it expires). + + // The less good stuff. + accuracy = -5 // Aiming requires focus. + accuracy_dispersion = 3 // Ditto. + evasion = -3 // Too angry to dodge. + + var/nutrition_cost = 150 + var/exhaustion_duration = 2 MINUTES // How long the exhaustion modifier lasts after it expires. Set to 0 to not apply one. + var/last_shock_stage = 0 + + +// For changelings. +/datum/modifier/berserk/changeling + on_created_text = "We feel an intense and overwhelming rage overtake us as we go berserk!" + on_expired_text = "The blaze of rage inside us has ran out." + +// For changelings who bought the Recursive Enhancement evolution. +/datum/modifier/berserk/changeling/recursive + exhaustion_duration = 1 MINUTE + nutrition_cost = 75 + + +/datum/modifier/berserk/on_applied() + if(ishuman(holder)) // Most other mobs don't really use nutrition and can't get it back. + holder.nutrition = max(0, holder.nutrition - nutrition_cost) + holder.visible_message("\The [holder] descends into an all consuming rage!") + + // End all stuns. + holder.SetParalysis(0) + holder.SetStunned(0) + holder.SetWeakened(0) + holder.setHalLoss(0) + holder.lying = 0 + holder.update_canmove() + + // Temporarily end pain. + if(ishuman(holder)) + var/mob/living/carbon/human/H = holder + last_shock_stage = H.shock_stage + H.shock_stage = 0 + +/datum/modifier/berserk/on_expire() + if(exhaustion_duration > 0 && holder.stat != DEAD) + holder.add_modifier(/datum/modifier/berserk_exhaustion, exhaustion_duration) + + if(prob(last_shock_stage)) + to_chat(holder, "You pass out from the pain you were suppressing.") + holder.Paralyse(5) + + if(ishuman(holder)) + var/mob/living/carbon/human/H = holder + H.shock_stage = last_shock_stage + +/datum/modifier/berserk/can_apply(var/mob/living/L) + if(L.stat) + to_chat(L, "You can't be unconscious or dead to berserk.") + return FALSE // It would be weird to see a dead body get angry all of a sudden. + + if(!L.is_sentient()) + return FALSE // Drones don't feel anything. + + if(L.has_modifier_of_type(/datum/modifier/berserk_exhaustion)) + to_chat(L, "You recently berserked, and cannot do so again while exhausted.") + return FALSE // On cooldown. + + if(L.isSynthetic()) + L.add_modifier(/datum/modifier/berserk_synthetic, 30 SECONDS) + return FALSE // Borgs can get angry but their metal shell can't be pushed harder by just being mad. Same for Posibrains. + + if(ishuman(L)) + var/mob/living/carbon/human/H = L + if(H.species.name == "Diona") + to_chat(L, "You feel strange for a moment, but it passes.") + return FALSE // Happy trees aren't affected by blood rages. + + if(L.nutrition < nutrition_cost) + to_chat(L, "You are too hungry to berserk.") + return FALSE // Too hungry to enrage. + + return ..() + +/datum/modifier/berserk/tick() + if(holder.stat == DEAD) + expire(silent = TRUE) + + +// Applied when berserk expires. Acts as a downside as well as the cooldown for berserk. +/datum/modifier/berserk_exhaustion + name = "exhaustion" + desc = "You recently exerted yourself extremely hard, and need a rest." + + on_created_text = "You feel extremely exhausted." + on_expired_text = "You feel less exhausted now." + stacks = MODIFIER_STACK_EXTEND + + slowdown = 2 + attack_speed_percent = 1.5 + outgoing_melee_damage_percent = 0.6 + disable_duration_percent = 1.5 + evasion = -2 + +/datum/modifier/berserk_exhaustion/on_applied() + holder.visible_message("\The [holder] looks exhausted.") + + +// Synth version with no benefits due to a loss of focus inside a metal shell, which can't be pushed harder just be being mad. +// Fortunately there is no exhaustion or nutrition cost. +/datum/modifier/berserk_synthetic + name = "recklessness" + desc = "You are filled with an overwhelming rage, however your metal shell prevents taking advantage of this." + client_color = "#FF0000" // Make everything red! + mob_overlay_state = "berserk" + + on_created_text = "You feel an intense and overwhelming rage overtake you as you go berserk! \ + Unfortunately, your lifeless body cannot benefit from this. You feel reckless..." + on_expired_text = "The blaze of rage inside your mind has ran out." + stacks = MODIFIER_STACK_EXTEND + + // Just being mad isn't gonna overclock your body when you're a beepboop. + accuracy = -5 // Aiming requires focus. + accuracy_dispersion = 3 // Ditto. + evasion = -3 // Too angry to dodge. diff --git a/code/modules/mob/living/bot/bot.dm b/code/modules/mob/living/bot/bot.dm index c839b506fa..e166573811 100644 --- a/code/modules/mob/living/bot/bot.dm +++ b/code/modules/mob/living/bot/bot.dm @@ -296,6 +296,9 @@ /mob/living/bot/proc/explode() qdel(src) +/mob/living/bot/is_sentient() + return FALSE + /******************************************************************/ // Navigation procs // Used for A-star pathfinding diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 3788735d76..ec45ac0df3 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1511,12 +1511,20 @@ /mob/living/carbon/human/can_feel_pain(var/obj/item/organ/check_organ) if(isSynthetic()) return 0 + for(var/datum/modifier/M in modifiers) + if(M.pain_immunity == TRUE) + return 0 if(check_organ) if(!istype(check_organ)) return 0 return check_organ.organ_can_feel_pain() return !(species.flags & NO_PAIN) +/mob/living/carbon/human/is_sentient() + if(get_FBP_type() == FBP_DRONE) + return FALSE + return ..() + /mob/living/carbon/human/is_muzzled() return (wear_mask && (istype(wear_mask, /obj/item/clothing/mask/muzzle) || istype(src.wear_mask, /obj/item/weapon/grenade))) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 4bea07f479..15de0b93d9 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1013,6 +1013,9 @@ default behaviour is: /mob/living/proc/equip_post_job() return +// Used to check if something is capable of thought, in the traditional sense. +/mob/living/proc/is_sentient() + return TRUE /mob/living/update_transform() // First, get the correct size. @@ -1025,4 +1028,40 @@ default behaviour is: var/matrix/M = matrix() M.Scale(desired_scale) M.Translate(0, 16*(desired_scale-1)) - src.transform = M \ No newline at end of file + animate(src, transform = M, time = 10) + +// This handles setting the client's color variable, which makes everything look a specific color. +// This proc is here so it can be called without needing to check if the client exists, or if the client relogs. +/mob/living/update_client_color() + if(!client) + return + + var/list/colors_to_blend = list() + for(var/datum/modifier/M in modifiers) + if(!isnull(M.client_color)) + colors_to_blend += M.client_color + + if(colors_to_blend.len) + var/final_color + if(colors_to_blend.len == 1) // If it's just one color we can skip all of this work. + final_color = colors_to_blend[1] + + else // Otherwise we need to do some messy additive blending. + var/R = 0 + var/G = 0 + var/B = 0 + + for(var/C in colors_to_blend) + var/RGB = hex2rgb(C) + R = between(0, R + RGB[1], 255) + G = between(0, G + RGB[2], 255) + B = between(0, B + RGB[3], 255) + final_color = rgb(R,G,B) + + if(final_color) + var/old_color = client.color // Don't know if BYOND has an internal optimization to not care about animate() calls that effectively do nothing. + if(final_color != old_color) // Gonna do a check just incase. + animate(client, color = final_color, time = 10) + + else // No colors, so remove the client's color. + animate(client, color = null, time = 10) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index b48a1609d9..c8afb9b0d1 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -791,5 +791,10 @@ var/list/ai_verbs_default = list( if(rig) rig.force_rest(src) +/mob/living/silicon/ai/is_sentient() + // AI cores don't store what brain was used to build them so we're just gonna assume they can think to some degree. + // If that is ever fixed please update this proc. + return TRUE + #undef AI_CHECK_WIRELESS #undef AI_CHECK_RADIO diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index 93605228c0..872d5302c4 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -67,6 +67,9 @@ var/list/mob_hat_cache = list() hat.loc = get_turf(src) ..() +/mob/living/silicon/robot/drone/is_sentient() + return FALSE + /mob/living/silicon/robot/drone/construction icon_state = "constructiondrone" law_type = /datum/ai_laws/construction_drone diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index 574a4a0a7f..4b492a9498 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -13,6 +13,7 @@ handle_actions() handle_instability() // For some reason borg Life() doesn't call ..() + handle_modifiers() handle_light() if(client) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 379a79f222..2cb4b05b3f 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -1085,3 +1085,6 @@ src << "Hack attempt detected." return 1 return + +/mob/living/silicon/robot/is_sentient() + return braintype != "Drone" \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/aliens/hivebot.dm b/code/modules/mob/living/simple_animal/aliens/hivebot.dm index aefe91b371..0a7fcd7613 100644 --- a/code/modules/mob/living/simple_animal/aliens/hivebot.dm +++ b/code/modules/mob/living/simple_animal/aliens/hivebot.dm @@ -1,6 +1,6 @@ // Hivebots are tuned towards how many default lasers are needed to kill them. // As such, if laser damage is ever changed, you should change this define. -#define LASERS_TO_KILL *40 +#define LASERS_TO_KILL *30 // Default hivebot is melee, and a bit more meaty, so it can meatshield for their ranged friends. /mob/living/simple_animal/hostile/hivebot diff --git a/code/modules/mob/living/simple_animal/animals/bear.dm b/code/modules/mob/living/simple_animal/animals/bear.dm index ea8398afc2..29c4fd9219 100644 --- a/code/modules/mob/living/simple_animal/animals/bear.dm +++ b/code/modules/mob/living/simple_animal/animals/bear.dm @@ -11,8 +11,8 @@ intelligence_level = SA_ANIMAL cooperative = 1 - maxHealth = 60 - health = 60 + maxHealth = 120 + health = 120 turns_per_move = 5 see_in_dark = 6 stop_when_pulled = 0 @@ -43,9 +43,20 @@ meat_type = /obj/item/weapon/reagent_containers/food/snacks/bearmeat - var/stance_step = 0 +// var/stance_step = 0 -/mob/living/simple_animal/hostile/bear/handle_stance() +/mob/living/simple_animal/hostile/bear/handle_stance(var/new_stance) + // Below was a bunch of code that made this specific mob be 'alert' and will hurt you when it gets closer. + // It's commented out because it made infinite loops and the AI is going to be moved/rewritten sometime soon (famous last words) + // and it would be better if this 'alert before attacking' behaviour was on the parent instead of a specific type of mob anyways. + + // Instead we're just gonna get angry if we're dying. + ..(new_stance) + if(stance == STANCE_ATTACK || stance == STANCE_ATTACKING) + if((health / maxHealth) <= 0.5) // At half health, and fighting someone currently. + add_modifier(/datum/modifier/berserk, 30 SECONDS) + + /* switch(stance) if(STANCE_TIRED) stop_automated_movement = 1 @@ -87,6 +98,7 @@ return else ..() + */ /mob/living/simple_animal/hostile/bear/update_icons() ..() @@ -103,7 +115,7 @@ . = ..() if(.) custom_emote(1,"stares alertly at [.]") - handle_stance(STANCE_ALERT) +// handle_stance(STANCE_ALERT) /mob/living/simple_animal/hostile/bear/PunchTarget() if(!Adjacent(target_mob)) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 231db2866a..910ecc36f6 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -1474,6 +1474,9 @@ return set_target(new_target) +/mob/living/simple_animal/is_sentient() + return intelligence_level != SA_PLANT && intelligence_level != SA_ROBOTIC + //Commands, reactions, etc /mob/living/simple_animal/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "", var/italics = 0, var/mob/speaker = null, var/sound/speech_sound, var/sound_vol) ..() diff --git a/code/modules/mob/living/simple_animal/slime/subtypes.dm b/code/modules/mob/living/simple_animal/slime/subtypes.dm index c064048945..496ac92eff 100644 --- a/code/modules/mob/living/simple_animal/slime/subtypes.dm +++ b/code/modules/mob/living/simple_animal/slime/subtypes.dm @@ -468,6 +468,10 @@ enrage() // How dare you try to control the red slime. say("Grrr...!") +/mob/living/simple_animal/slime/red/enrage() + ..() + add_modifier(/datum/modifier/berserk, 30 SECONDS) + /mob/living/simple_animal/slime/green desc = "This slime is radioactive." diff --git a/code/modules/mob/login.dm b/code/modules/mob/login.dm index e29f6cdffa..51f3e4f22a 100644 --- a/code/modules/mob/login.dm +++ b/code/modules/mob/login.dm @@ -46,5 +46,6 @@ client.perspective = MOB_PERSPECTIVE reload_fullscreen() // Reload any fullscreen overlays this mob has. add_click_catcher() + update_client_color() //set macro to normal incase it was overriden (like cyborg currently does) winset(src, null, "mainwindow.macro=macro hotkey_toggle.is-checked=false input.focus=true input.background-color=#D3B5B5") diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index f911ba94c5..a40d71af83 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1117,4 +1117,12 @@ mob/proc/yank_out_object() if(!check_has_body_select()) return var/obj/screen/zone_sel/selector = mob.zone_sel - selector.set_selected_zone(next_in_list(mob.zone_sel.selecting,zones)) \ No newline at end of file + selector.set_selected_zone(next_in_list(mob.zone_sel.selecting,zones)) + +// This handles setting the client's color variable, which makes everything look a specific color. +// This proc is here so it can be called without needing to check if the client exists, or if the client relogs. +// This is for inheritence since /mob/living will serve most cases. If you need ghosts to use this you'll have to implement that yourself. +/mob/proc/update_client_color() + if(client && client.color) + animate(client, color = null, time = 10) + return \ No newline at end of file diff --git a/code/modules/tension/tension.dm b/code/modules/tension/tension.dm new file mode 100644 index 0000000000..913f1d2dff --- /dev/null +++ b/code/modules/tension/tension.dm @@ -0,0 +1,131 @@ +// This code is used to give a very rough estimate of how screwed an individual player might be at any given moment when fighting monsters. +// You could use this to have an effect trigger when someone is in serious danger, or as a means for an AI to guess which mob needs to die first. +// The idea and the code structure was taken from Dungeon Crawl Stone Soup. + +/atom/movable/proc/get_threat(var/mob/living/threatened) + return 0 + + +/atom/movable/proc/guess_threat_level(var/mob/living/threatened) + return 0 + +/mob/living/simple_animal + var/threat_level = null // Set this if you want an explicit danger rating. + +/mob/living/simple_animal/guess_threat_level(var/mob/living/threatened) + if(threat_level) // If they have a predefined number, use it. + return threat_level + // Otherwise we need to guess how scary this thing is. + var/threat_guess = 0 + + // First lets consider their attack ability. + var/potential_damage = 0 + if(!ranged) //Melee damage. + potential_damage = (melee_damage_lower + melee_damage_upper) / 2 + else + if(projectiletype) + var/obj/item/projectile/P = new projectiletype(src) + if(P.nodamage || P.taser_effect) // Tasers are somewhat less scary. + potential_damage = P.agony / 2 + else + potential_damage = P.damage + if(P.damage_type == HALLOSS) // Not sure if any projectiles do this, but can't be too safe. + potential_damage /= 2 + // Rubber bullets, I guess. + potential_damage += P.agony / 2 + + if(rapid) // This makes them shoot three times per cycle. + potential_damage *= 3 + + qdel(P) + threat_guess += potential_damage + + // Then consider their defense. + threat_guess += getMaxHealth() / 5 // 100 health translates to 20 threat. + + return threat_guess + +/mob/living/get_threat(var/mob/living/threatened) + if(stat) + return 0 + + +/mob/living/simple_animal/get_threat(var/mob/living/threatened) + . = ..() + + if(!hostile) + return 0 // Can't hurt anyone. + + if(incapacitated(INCAPACITATION_DISABLED)) + return 0 // Can't currently hurt you if it's stunned. + + var/friendly = threatened.faction == faction + + var/threat = guess_threat_level() + + // Hurt entities contribute less tension. + threat *= health + threat /= getMaxHealth() + + // Allies reduce tension instead of adding. + if(friendly) + threat = -threat + + else + if(threatened.invisibility > see_invisible) + threat /= 2 // Target cannot be seen by src. + if(invisibility > threatened.see_invisible) + threat *= 2 // Target cannot see src. + + // Handle statuses. + if(confused) + threat /= 2 + + if(has_modifier_of_type(/datum/modifier/berserk)) + threat *= 2 + + // Handle ability to harm. + // Being five tiles away from some spiders is a lot less scary than being in melee range of five spiders at once. + if(!ranged) + threat /= max(get_dist(src, threatened), 1) + + return threat + + + +// Gives a rough idea of how much danger someone is in. Meant to be used for PvE things since PvP has too many unknown variables. +/mob/living/proc/get_tension() + var/tension = 0 + var/list/potential_threats = list() + + // First, get everything threatening to us. + for(var/thing in view(src)) + if(isliving(thing)) + potential_threats += thing + if(istype(thing, /obj/machinery/porta_turret)) + potential_threats += thing + + var/danger = FALSE + // Now to get all the threats. + for(var/atom/movable/AM in potential_threats) + var/tension_from_AM = AM.get_threat(src) + tension += tension_from_AM + if(tension_from_AM > 0) + danger = TRUE + + if(!danger) + return 0 + + // Tension is roughly doubled when about to fall into crit. + var/max_health = getMaxHealth() + tension *= 2 * max_health / (health + max_health) + + // Being unable to act is really tense. + if(incapacitated(INCAPACITATION_DISABLED) && !lying) + tension *= 10 + return tension + + if(confused) + tension *= 2 + + return tension diff --git a/code/modules/xenoarcheaology/artifacts/artifact.dm b/code/modules/xenoarcheaology/artifacts/artifact.dm index 2bb6434553..2db3107c01 100644 --- a/code/modules/xenoarcheaology/artifacts/artifact.dm +++ b/code/modules/xenoarcheaology/artifacts/artifact.dm @@ -48,6 +48,17 @@ if(prob(25)) my_effect.trigger = pick(TRIGGER_WATER, TRIGGER_ACID, TRIGGER_VOLATILE, TRIGGER_TOXIN) +/obj/machinery/artifact/proc/choose_effect() + var/effect_type = input(usr, "What type do you want?", "Effect Type") as null|anything in typesof(/datum/artifact_effect) - /datum/artifact_effect + if(effect_type) + my_effect = new effect_type(src) + if(alert(usr, "Do you want a secondary effect?", "Second Effect", "No", "Yes") == "Yes") + var/second_effect_type = input(usr, "What type do you want as well?", "Second Effect Type") as null|anything in typesof(/datum/artifact_effect) - list(/datum/artifact_effect, effect_type) + secondary_effect = new second_effect_type(src) + else + secondary_effect = null + + /obj/machinery/artifact/process() var/turf/L = loc if(!istype(L)) // We're inside a container or on null turf, either way stop processing effects diff --git a/code/modules/xenoarcheaology/effects/berserk.dm b/code/modules/xenoarcheaology/effects/berserk.dm new file mode 100644 index 0000000000..a221c9104c --- /dev/null +++ b/code/modules/xenoarcheaology/effects/berserk.dm @@ -0,0 +1,43 @@ +/datum/artifact_effect/berserk + name = "berserk" + effect_type = EFFECT_PSIONIC + +/datum/artifact_effect/berserk/proc/apply_berserk(var/mob/living/L) + if(!istype(L)) + return FALSE + + if(!L.is_sentient()) + return FALSE // Drons are presumably deaf to any psionic things. + + if(L.add_modifier(/datum/modifier/berserk, 30 SECONDS)) + to_chat(L, "An otherworldly feeling seems to enter your mind, and it ignites your mind in fury!") + L.adjustBrainLoss(3) // Playing with berserking alien psychic artifacts isn't good for the mind. + to_chat(L, "The inside of your head hurts...") + return TRUE + else + if(L.has_modifier_of_type(/datum/modifier/berserk)) // Already angry. + to_chat(L, "An otherworldly feeling seems to enter your mind again, and it fans your inner flame, extending your rage.") + else // Exhausted or something. + to_chat(L, "An otherworldly feeling seems to enter your mind, and you briefly feel an intense anger, but \ + it quickly passes.") + return FALSE + +/datum/artifact_effect/berserk/DoEffectTouch(var/mob/toucher) + if(toucher && isliving(toucher)) + apply_berserk(toucher) + return TRUE + +/datum/artifact_effect/berserk/DoEffectAura() + if(holder) + var/turf/T = get_turf(holder) + for(var/mob/living/L in range(src.effectrange,T)) + if(prob(10)) + apply_berserk(L) + return TRUE + +/datum/artifact_effect/berserk/DoEffectPulse() + if(holder) + var/turf/T = get_turf(holder) + for(var/mob/living/L in range(src.effectrange,T)) + apply_berserk(L) + return TRUE \ No newline at end of file diff --git a/code/modules/xenoarcheaology/finds/find_spawning.dm b/code/modules/xenoarcheaology/finds/find_spawning.dm index f6a4200654..051a67c542 100644 --- a/code/modules/xenoarcheaology/finds/find_spawning.dm +++ b/code/modules/xenoarcheaology/finds/find_spawning.dm @@ -409,6 +409,37 @@ new_item = new /obj/item/clothing/mask/gas/poltergeist(src.loc) else new_item = new /obj/item/clothing/mask/gas(src.loc) + if(36) + // Alien stuff. + apply_prefix = FALSE + apply_material_decorations = FALSE + + var/list/alien_stuff = list( + /obj/item/device/multitool/alien, + /obj/item/stack/cable_coil/alien, + /obj/item/weapon/crowbar/alien, + /obj/item/weapon/screwdriver/alien, + /obj/item/weapon/weldingtool/alien, + /obj/item/weapon/wirecutters/alien, + /obj/item/weapon/wrench/alien, + /obj/item/weapon/surgical/FixOVein/alien, + /obj/item/weapon/surgical/bone_clamp/alien, + /obj/item/weapon/surgical/cautery/alien, + /obj/item/weapon/surgical/circular_saw/alien, + /obj/item/weapon/surgical/hemostat/alien, + /obj/item/weapon/surgical/retractor/alien, + /obj/item/weapon/surgical/scalpel/alien, + /obj/item/weapon/surgical/surgicaldrill/alien, + /obj/item/weapon/cell/device/weapon/recharge/alien, + /obj/item/clothing/suit/armor/alien, + /obj/item/clothing/head/helmet/alien, + /obj/item/clothing/head/psy_crown/wrath + ) + + var/new_type = pick(alien_stuff) + new_item = new new_type(src.loc) + item_type = new_item.name + var/decorations = "" if(apply_material_decorations) source_material = pick("cordite","quadrinium",DEFAULT_WALL_MATERIAL,"titanium","aluminium","ferritic-alloy","plasteel","duranium") diff --git a/code/modules/xenoarcheaology/finds/finds_defines.dm b/code/modules/xenoarcheaology/finds/finds_defines.dm index 060119c7ce..29516d763a 100644 --- a/code/modules/xenoarcheaology/finds/finds_defines.dm +++ b/code/modules/xenoarcheaology/finds/finds_defines.dm @@ -76,6 +76,7 @@ var/global/list/finds_as_strings = list( 100;ARCHAEO_TELEBEACON, 100;ARCHAEO_TOOL, 100;ARCHAEO_STOCKPARTS, + 100;ARCHAEO_ALIEN_ITEM, 75;ARCHAEO_SHARD, 75;ARCHAEO_RODS, 75;ARCHAEO_UNKNOWN, @@ -111,6 +112,7 @@ var/global/list/finds_as_strings = list( 50;ARCHAEO_CULTROBES, 50;ARCHAEO_CULTBLADE, 50;ARCHAEO_GASMASK, + 50;ARCHAEO_ALIEN_ITEM, 25;ARCHAEO_HANDCUFFS, 25;ARCHAEO_BEARTRAP, 25;ARCHAEO_TOOL) diff --git a/code/modules/xenobio/items/extracts.dm b/code/modules/xenobio/items/extracts.dm index 42ca365773..6f0554debe 100644 --- a/code/modules/xenobio/items/extracts.dm +++ b/code/modules/xenobio/items/extracts.dm @@ -564,12 +564,19 @@ if(S.stat || S.docile || S.rabid) continue + S.add_modifier(/datum/modifier/berserk, 30 SECONDS) + if(S.client) // Player slimes always have free will. - to_chat(S, "An intense wave of rage almost overcomes you, but you remain in control of yourself.") + to_chat(S, "An intense wave of rage is felt from inside, but you remain in control of yourself.") continue S.enrage() + for(var/mob/living/carbon/human/H in view(get_turf(holder.my_atom))) + if(H.species.name == "Promethean") + H.add_modifier(/datum/modifier/berserk, 30 SECONDS) + to_chat(H, "An intense wave of rage is felt from inside, but you remain in control of yourself.") + log_and_message_admins("Red extract reaction (enrage) has been activated in [get_area(holder.my_atom)]. Last fingerprints: [holder.my_atom.fingerprintslast]") playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 75, 1) diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index 9c09ef2993759ec9afd454e4ee87408994d005e0..8992f9d2c6bbb715a9a6ed4d0dc11ea60bd8b87f 100644 GIT binary patch delta 10680 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 r&}*88|Gf-^|Bb9JfHbDj{SY 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

tq=C^T<1zNdQIzQA%$oG7G;1?-ix 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 z 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 qB!wkhZ#>TBXX<7ylo8ZOg*| delta 13665 zcmZvicUV(hyXF&ufC8b2NbgZl0!WkI2~FuQ(u>l2M-pM9AVoStP^5Q|-dm`O6d{Bv z9R#FGiB$G_zSs_)eS&5{8CI!|gR+Uz30CUQxel^Aep}V|b<|U7JeaP64$TW_)5lf@W@W{M)!wfxTCI!jc9vZ*T}TZBV~`9`8A90B5!ia zITLSVsc1K`!n}e z8q5Kx_7|3!^c|kK3!EnFm%e zi-i~E6xQme;Zn~B*AF)5kNzwVzK}d?8vs8Z+qH4~*>E*^C+&p`tIV2UugC1AJ&92E z3oXLG%GgEAa~I~$;)8PEpJ=O|F;Q8o^=G6EuW_`?Ab9vUyk@Lt7851X*ErH;CYP$SU$|c6guHy$E|v55H)g-uUZFs* z0naPb^1_WU;CjrWX~QIM8|i79)bjyB#*T8=O}*!W2lc*HXe(3k6%KJoE`#`xUQ^>A z5oNJp(>za)Q-|3kLwUk4nBT<#;{o6g#cu$q|pfS+}rG}At0*L|dzFmc+ zF`iDb<5>q67&+bPukm*g7Wms*PwMHxVAk7IVqaoV5+yY*IbDQ|18VDeRWL* z9P#$cHBsQ>KPDg$XyqqieKdSDn6~tXB@5LN2Or!L#momh`~gDQ8~97ia?W0eDI3`d z@=3WcvTz+r;|5aVbJ(1w;&MINYf**-_u)G^|qY&}RLBAPUF_L z7Vi}m#-nG9$K2}&@-`0aug8fD@you5-fXOUIhJm3Fo?Gl-?n?Nv0|cX_9~-rGZ6ZF zSa(&=Z)!ZpL1Hj^axfGYXgI&f-=*ikpRAXF4=?K-d?NBJFHWl14&{F@&UK&CJr+g- z3^i2peQ@sNvojOib(Uf;h06ArSk_sx{W-)QxF+VJ4DN*C)Hn>eJhUsi4o7oR{bMgP z@uP7V+UlSW-Bo%2^fGN9PtkLg&8Gg$)SDPlZpHu1#E-@RT?d~xKZEp4C@PKCE0+5>l6@Ub*b>QdaXVk< z@I`UKCE-&@g{BjJAE`PCnyov?e7VsZQ^T6$@a+&$>4y<>Ig_%ixiOY?$0PRwfCp`+ z8Li>6p$TI)fr54158}5xs`qo3L6f^XCXKR_*reQ0yy8Z(?|Eds&k7G!!q!y;N+F%W z_r8S7TchoF1-06=$en%(q#W&m944(?L!Ujz{|9DqLITv^vpC*TpNxCc z7@K=U9I)CDiXkvkqV0o>1{a6))3dbl;3?#pNRuZRadiha=(O`!&oMD++{6=9LvCslH~8b>+VA(@?|< z5s2oRg5wFY#Q27yXE|8L?Kaqqr8a!x_UJ?>+{`;LirdVkx3?SswD*J$_)_{OEV!ay z8BQm0pEFI5){<+i=XtT#6Vngw82RDb{4dF{j*4&iE9AaUJy3scA8p7@C!@wlYeFeH z=I1zAJ9(i_ssqWA{-iZAbWh|JBI`5fk7qKjZ^y;vT$C0`S7nEe#1&`{VA~20$Z*0B zK#aw`pIfn+*9O~xE=F_D;~Tpn)*+xs<*+%APO8{0RYy`{5Qu|>DKuI@ARht(Ek*Z! zrH7J%Kq2HklG&NsFbJsgJ>xLgr05)6-3cOA`7S=+62uPk6-?p$9#SS1qzxTy4vn0W zR2h98ZHT;k-J)1U>+zx4*~CA=(Ki!EFoxlgkeYXX$uYp-|Fz5LDJkapkwFdT`52k` zkCyL5Ox$^;T=rLG)h_Z_%rTD}*E@=e*0V;x9Gx5;?TFnh_2Qy!F&K2b(bF(&9O6Uv zqE6?nTAwjB!~)g^Od) z&Ll6An%2DiD*2RGSw{MbvPxL{TJluAdu5s4vn*(HI};g_bMf?~2(^)$M{x1A*0&|? zCAXxskJS;YJ&v4ao&M(zi;Kf=9@J^Ho7$ zvwLAS>eEMz#3uOmbF1QHs0x@m@**uvX%QmoE1lG?B0@mM-%0qd# z7}Lm*D)WokVJtqr@zlcRTG*UDxH?rF()CN`!YpClZCDEED$z@#XjfA-xGKz6s}Aq z*o>slP~|tH(k42ASAF5B9~g5A1QKhQ(q%IqY5s9&rjRk)qJ@3znl8CcQxu-~Fat7x zNoEIrZ^@XZli4ARwy3p89mTke5RuQGms3t;Dt_Cl3chQap-#O1HYvzcTct-U2tE69 zJ`WR>jU^Ucr;C52 zE3%N2Irj1;zHBPeLys$sEBXzx6l1l;)=PM{7Y@(G1}@zM<^uQAW5=gIMA}TI%W`Z5 zw8}?ndWDEZ2sdi0aS5VHzh#%pCpXJzl|I-#{#itVTWCcGYdn@5OGA|--1mL=LyGIZ zhSd3vl92pj2H@DF!&%4uM|EJ_hOwPC!)Hm%G~`XwDO~Y!m{opp6%&`+Dr#($Bz@7e za3|*l)$kWIdd`KVZJ#medkW+Y%gYH(Vs6)rI#F0Kh8tnMwy|qbuWc$Ng_}`88RZ6H z6aKO8>HYv~a?~Qr^D4xr6ua}A?1R<(xdul;2MVz)lZLz%SbDe~ zNWp=W2j6-7&XpQylNGx%y_N(v3`=pt#DSi`3dDLk;*QE?FtMj58vGzGo+2E7H4x)EB8R!C)y~h z{(1cd+v1bNol?R?1gsiw``~$bobS4eu>t#c(z-@Ozo}(;9e&rt`BIBPI}I9q*;lp{ zOls~iI_}k^+A}yQ<(+Xf(8}WGUP-AOLcZ^p=9xXD(CP>2k6j%}>HeCW z7wJ@a+F#lbGs&nX5R>*6p@!_=Q^z|Aa~=)9SB}F}nJVQ!&6u#xFBoFtLH8h`sX)UB zE3}w<*qs_wrSg<2e?3`}zNP0sw7MzBK_Js?dWpXmfzH2$)GwJIkP^h1L-Bz?=4o$; z{9LVak92mXbeQ2ADuT+|nH2eu`X|Rk+d4BTd@05FcspaE)hxOm|4pmD756kvaKkds z*$drX&Mb0yV^wmo`muvS?N$Ptxxsg#&tp}SaQasr*porR1RtP~Z}Vy90Bo3@==M4y zQEkG)AR^Nwo!>6pA;YJfCqD1|ePAtdQQ*Y=dRHuIFQ!%5AeEMhoBjXKb(z=xqzCg2 z(>D*_?QTyJ<7!?)_WzbTi^N4+&WN3%X0)X7nn(E9%V6gbUufTU=@ip{$PV~_(awFb zc)#d1+dJ?}d!*CU#=cXXe@vmy{qeKs6Vfx86{-MDf7pl?9pW$3+42yW&Q3Iy_CmH` zi{GL#?c^;j%qUN5l~EZ!jz7LpJz13}=2xAb7$uQyNkN_R`KPnr9#b5Jk_PE+XaY=B zTBOnPq9o6%bh%#K5QP;k`b%W0h{5&5C8mWwNCN%cr-AM2Vz<-ryqX{9{?i&yp`;!0 z+1N=ZM@$NIi;}d;-2vOOTOEw1W38i7D$1W#lVJf({6xIt{Nei>{&wzW0DvC2LX?|n zF_u3ky`h_VztL);aQ4t+bLz<8>|L-<{O0=6;NE`QwziEgv(hGavjgJ{c!J|pUo%amb&y8^U zcvr^yEA|PO-{hMO#&_YdfUdyrH@4@Rck^PA47i&b$~zP7>9X$<&#!Q`u9@K2t!gc6 zlJUE^+1nx<7P*ZcM<)hpKMZA9;>(w(F$i)~K@ATiJSN; zB-uM<{J5LYF>|%OLA-N z+jb*aAo}t{Bi(>Mh0`Xq7Nsz{UBI+mIcn!z(S@wopX@_VKH*l8n@MYaE$2{nh~7X+ zrm1`cP|=go2dFs{$F9`FP)-qCcCGw7&fr&aIs#7 zxpc2NpzO=Y{N~~M`soFVCZmYJYNwj}fPPI8HY;oFWU=Vz*E7xdc)p9{C*RS76BfA? z{SA%$tw#1oRhfG9``wT2V|}~l%a5t zs2yrO+c56n95exf(G=i!l+R28tw?jLT~);XIBWTvlLA#-MbdVGC5F8XGUYHW?dfqO z=G0>CU}>3_{^v|6;QgbUV_VDb|y<4>_&=l<^Hj&C)4Q%`6}m27jDU zVrM2WaqA?6YhC`HUvXc{iP9%oiY*X#?w;&Y^^?vNOw9OL$JG#l(H=dX^_k%}HM_+M z=#FbYVqEt2i#L5zMMc73CAp1a#$_X|Wwpxf_5*K)Qs?e@=!(B<9{wV2+l0ZhpV44^SzIu2{XnSMW&IC&r7fe1lqpJ%*+Hd z*~b>g#%hn`ZrzTO>wfTbbp1(97IQ&iKdbZnSPq^)R&)lbp8Ua2p&+ph4M_kbUb=ra ziYU(+_2;5J-SX}*VK#8aU$02#&K(Nl#U98l3N8*!4eoC~2qFO7LTKcqT$0GsR;YsG z`!`QzhE8Pt(Jgr2cZ(ez#;+sR)2ou%Sndw`X-$_{uXTQ9swr867O2?&J)oJwZ;X@Zv#%2!rbJbw>Jf&JWD?<%P2BMU30y^wD}3&lisv6PmkEMXlAkR3)&OKi_aG~CcF&_Tya7!v1bp_ zgg`FPst+)FRdZG4z|vGxLK2ROVpb!)kz|Lo>O;KNUq9ZdGZME8KleFPJ)%{ECXuq{ znfKl4e}SjSKOaEvJ=L}EUeHLNDxQua^Y?yr3kAgC4kT3D;a!9k(metfwIx2~<`fV4}Po~AI3 zzpUD(>d3rH?;V0NbBhpZRCMw#YMnepN+8ZO<|MTE@;;o0a503{+SG>u>YtGcLZhSh zlw7@SE1pgs^BCna*lOy)MlZO4I205DqbK1NmL-H+7LptU?OmZ3pkM}pIweCOM1%;L z=&wAJEeDZ1dk{!XA?&HSb%-{!BFdU(2CPvKlQ05?-z<(2s8F=WHIJ^*iB zXwZ_ipckM}Pepitk?0?#rWo_)eO2khky_>aEp4gl`CL+5Q`K8#B1Q^(R+yP^2LQaU zoYF$RcyxG-j5>g->|d4Id@C<x`YxTC|`T)4)f&^3YXj zqc%XbWT$75Zsr?u|0TDM#qFm`Ul*1Zxak_MZu$bX#8YE*!cUQ2n>7S?JahfM@48wY zjG=TdO$s=oa0tX91FLwj-cG(MO@q;iXYy(%g|Zy`V!v>d38Idbm)UY6RFLHME4kKB z1MTEw`|HeYZmx0P*<=+@3V9{=!=nyr5b>gcoSiK}(6Ea3*Jp7C8HTNh#Z`^D$8OL|(BOoqsUr?UJXP zPoy*p=^I-W!yU&o5Z`>9Wt1zhj_I5DHs)5Wb#y6Alw+>|`>IS?k{Dbt^o^Ig=+H7J ztKQ+WsT}rFU?V1n-uoO0f9=Ho@SkzmR?OEMgJ*kE+5ZigdSAkwiuyLxszrQefvh$i z1+li?aOV>fdtXN{uJJ?F#548#<~_`TpwaItx%OgJoyev7?GQ_fO8xZ;8!X4FuW?KY zp6;x#>wQcv9ZP3RhL}{qTlbF+8aTxZ4qwgEpiezuT}qEI#-~ORFr~`RQPlRf<6uu0 z>A;z3|bTM1v`O<7mDXVGE#N>>K~hL zrpyU6;^JzEnxKNWxJ=n2KPsGZq~-1)Svgztm713v?u=kA-sMJ~KPAc6`ZvtLYZE*} zxyaIgqSS#{<(vpnewXe>kCC}2J=ASMFrS&In4{}9ld?nKa*u%t@=g9heA1BV;$)LU zab9ZHt733kp+7{0H?PQndIurk?$MampiWqW1tS~THg!j^Z`chJu}l2V2pgzoGO-tEObI5@21=1 zDWxot$5_^yyfeUxxQ@~eYOJwDe;iW(=^M00U2`2o()VJofD9ZSxV!r6>6&5 zs>P95INwLG9$%RTmI=8!&(M^R(t3vh`o$)cx$yXyH+G9lwqgodtT)T&LYoqx2~i2> zl)qngeQw5W%z7$-K(q|zAgBKj>c~XO96>F6!T)U^(mY)OgO(^L)Y`OH?`m*Kd@`LjBGguVCj`1k z@KZ=0HWwC7B6+EAL`SfGI+R_#K(s~Wm~DCCG2iph!xOzoqYlTjBg7%?TqL4bj5MQe zC)`2#!ouBp$pjdzDSy9y9#5$G%neioY~sHh1nA7mNczm9RBWl#kG8DWw?PfHBnR^% zy-z5056Yd`S(1Z|Fy^GRuLIk!n*3D`UtD>ewl=z_xw7t`?bB>Q@2ZoM>IE2E`DG_w zMRI*Ont$X>M>P*)IF_O&&t2w8J3b93}x*K-hGuz7+ESBiu1`|=}z=K7DcJD*_l&)Iw-vIZ>}=7 z*$3ZIt&|iJGqoU@T!tgNeYcB!%sL7mLVY90LE$e2M*YrQMLTp#Mt&D6NGzNB$SV=6 zy%R`H+t(dPkA9eo@R8%gumUibS9*At5jJEoyelzGM1+4@&P`k_tZ$md2gEp z+^|H+d^3}}GqB?j-`A2dGJZj~9^y=8CxA#^Sw+hHDN(HJ1i>SkEKI9!d>KlauB~2q z>UC%1tG4{@r@=?e+R_=_;DT{`YLn^f+E1T%$<2S>Ej{J-&<%6ZvR*#%63IB#!14WkX%Vv%LTh zf}8T80rT3)>@J*@HC8-9LZNv1c@v4dVQAm$bD5IG`M9Haiep}E$eFg!%y}#%iRFRI zV)1kyC)#mQopWoCSCtpRjB{5zYF;Zk4#=Cx3s1jPBLRR}@pSOZ@iGEQ1r7$N`cbJr zy~;5})XCodNg3tfV~BVh_Ou@Qf#NG$qK8Aj7&@ZpQP4bSzGeY5l^Ky~zUGuC?2l3HDNoovKZpnWnZQG0cmnOR{qg_tHWS z$)YB>T1BHx?Ui6b=6n8IU#X8@t;HPiV|Ar-4~k<-VG>)TZ+_6m)TQ&rAUVx;6|Hfz z{;}Ht{fb?`<%isiSxG4!7~^QW+J=w9f`hR)K%ylAQKoBSHNr+9ZRpk{&ztYMO%A%L ziF}<5s&+fQ8o2D720xe1I_kJ8*j&6?5bI9=N~UI~(rb2ddU3AhvHQb`SWToenI?eX z(B?N(<*&MWgRh~IGc`6C6CN6AMXuJwkP^#c7uu?{XKUuEOfKc#fENU=1#bJ?;h$jv z2m(b7m0$sQ1EFSwgai;sSLK;5={UTY34uT1|Q~FOOuiy4-wjC;#1ftRKDC8dG$?e&f z{=>DhHz%CifRP1XWDQ|DHP!v;wM`s0^DS%RBWp8X>%|@wACKnWK8KKg;u#e--n5CI z^NL4I&U{!d7ha9- z=Z&b%i?_w{^=xU!Ym?8$1Akk9*3G4EUeT)+p`><9-#t<66}EpSuYRk=l} z7qJ25^=uf-l_BzZqZW2I1u_tnc;+2@R%Ng?_O56=Yk~I6*;l*bWvn*{J)1eczvrg3 z-=E|R*%B!a0&-_N7S4VtY41PO@|@k=Td4E6IAtpk9uBen&8IpUd9Ii!{%2}8bzXlW7+L$*by*Z4{2gHOB7EuE17-~19UTH zOho$04GOzxo^phsO@Girhi<{@yr|Z3he; zxSO+{zQoI|;-zJ$*=ry*j-Mhu+2wwIM$$Fy{vKQ`SglOW9>&M1me!_TFwbAUlgwt5 ze3qd|@pJDpnTX}~Q}`9dz5))M0p!qtK)+tzWT5)@TVEndN+f82=l|vw!dFhw>z39c zAxj1Nj}b?}8-|#3nX5<>>W!D~tRs4)V|&kWQvRYrAynHZOX81#x%I$}k>&H<_VWey z3k$P~+qk3U(Q=3>A`r!j9pmlc1W`?1*!Zr$)z@r1-vz#$?_PeH0WEr*$fG+@n-i_d zRX?m2Zq!xz)_vX(yqeq#F$>)8P}}&UcLc(xZ#FOPHCA3+u;+FBL7f8dhJ#693jLV# z4I5oc2DrQ#dl-)v$*ONtwdcv(mnA2bOF#bGf*tN4=MotGRUNU2qVKaIBdxP0_uX#52(E&8rc*CMSLX|HyE=?9oTeN7jU?9q#XC4mRV%^3E91L{~v=6C-TD3!cVn zvR0_nV7%;!4|TV{Eh{I>w^3_%JEsXT7<?AOfBXO%-(+sDai0P-pfhEhcxsqav#7COk2@;?j=?(vvuQ6fS)Ln$n2h= zX+!cTk0r$@9mW6F8@kt&V-%mf%Ic?eVLDq_ppAOTr*@VQN=?wif<=_aa~F@xDJf7z zwZ}a0Ng(#O%NEz^j*G}`-L3D(P<__2uwcu)&Cz{~a#sDrD;HMKdH`(~O97-(Z7spz z*ElgNrM`jUB{r3MXc=syu_7mn|%-A)3XGq8#61xWsbDZfoSteV+WS_skg z74tL96UUm@=`$D!_YbS9x_-tBR24fpdypEy+GE8EwPN;hhea!6l5;H$_d*ToihZDG zTi&4)+c$SUtY^}^&%cmH2al@AA049%^|2O#Mv=Wlzcg$J|-e zBvdt9>6p5bGe3VDZzyxav2gtx>a_B3mgYS@&6?TP5=`FV5B+pBSmMJA@_*AguT1?l ztxj^0NmQgfpJtXF;azKpX?hZg8p8dy)zrV~o`v8y{8k2pu3;-3DH%y+H%HNbD@)mA z)gPJwBch!P2iO}EzYFqRK$z7m#?oI_3I0m-2g@O0lINRF9(C#2$8xuem1nMdvj{Cg zNO>ZEEKq%}a`vb7I5n*E{h2lo4^JMuOk&0@95kzMcb0UBy4)Su1!#{O6XcU2&X`&y zqTO@FI7^~I4v^p}F7-D*%TLCvj-s1O*2^J)8tT#_!lqJWqL8QckDVW@z^wri-Zd0v zpeP%TdJuv>UU3a6;$esGz_UWpkmuJ0wHvTmwWPI#0XV1W4_dRpa1yJT4HvAfgr_Ak zRxh{l50k7+LIrB*GIW(KvhfeStjvhxdGgk|RWzH?L2H0Q;$GO)yNhvODGlWfIFOYW z5x~%p4}~M1bW!OriKw(zk}TH30RH zL{pM4>Ua-rLU^uPuI5EO5rF&`8nDl|XD6RCNr?Ev$*QYagHmQuE3Ch(Dz=&i24x;# z;{wi6gYwb~yOppGX;Ql7GOSYnvcRe&Y;r3&>6g`7q z&l@`$U);+p{Qk=wfS+1OX2WGyEuvR>!5|LWN*3K=UH#N{(O9=ipttP_1`JYo`vmG3 zv}boZE0r9$e+X|D=E?qwj2qrR`sB}7Vt-TjfF-{E4^w8LhFgiP6V>ixd|sOad>5JmrS+05xiG5seb1txaGt)VmrW6z}{4jU-6J|%p6$h|I$srzAj`xbTGRRz-#B$(UWKr?SBda2}yl6 z_f%^hks0T%pNty+p0AAd3ARIj|eGuJ!xRpH8RZ-xqWI^dRkohZ*o;Ah(x+x=$m zOtFP%;m?oA(i7S~UpHSrh0*EXyVaWdCwaKJ46!MrH8nIf`N;)Bos$fLjC%{YV2jdNfrZs5wiuISBIcC3(0-%Rt+QXwS3+MG*fHW7{g zM2R>dU=E<;%qp@@b@u~z* zac`rO;)BbF2TUDsj0xe8jeanIAHWsgMUocjn{^b3RCYx81$)vtJkPkb1^SHm;9=Zfmq0KL&DU30!^;aoA8y~CpZ%sv))|=%d2Iyw z=M3{XSSKG}X7foZmbkkL98H$-@D-F>_-SjLaS;n<;x<%0r0<-FZhjKT`&4|K@ZHsq z6%(gG70s(GkqusE$`oPb8*1rZiobr`Y$}i1JsHZCvwz|Z5h7ZE+UF}rf~-mMLmCrH zU%GtDov04DfH{_r^$osd@{6XAom`i_qXOSqcMwM~-Ty06@SZYt7 z-!|jd5D=(U*C8d*;1`fT4oLB6br*aGS2DMs+@=_bLQ*GcesoXVM(e-0Kz?d@tQtz4 zS-7dl&FG}Lh{iWO@lxaPR*NiSP5{5W-at4{(ikQSl9q;)_V?H)k_(&!eGJQY$WDch zL}!}QW8lIzF)Sffp5aoOdfT?myZ6wPW@A6qMmTAklJ~?g8vx^bk-FvSvq#YxRi&iE zU@(UY&q{5`TC+cw+?1XIwNk{Y6fp%f;T@-0{&$bhT538G`IxhpyiH3gjFhVJol+3) zMu5t1TTx95DMLj@Iu6!Td#6XCAc#cR&xYsKPj4J=-y+QECVWEuK4zmtHJ;nb1zEP3 zIh+S$G-^%)%+9!)+%(yuguBd;%^R`Z>VC^xt(UsDUwbi#BI>XO@hwtl|w-8bM6m4Zh<7=1U&eg@b5xeH_y|^{D?rGfI=72)dwq4){fl6M_gOPpvcEle?4o3 zj^fop~Xx0XW!e=t>6Af5TxL`6hfv; zS&EP0Ewza+y$#|Jx3KIFB0kPi`BctB6@GTN=TF_kpznnoh4bWi0EB}#p*R$wCFa`{jhpj ziQc037VW?JX1+6X=brnXch1aP&htFy1|5P1Pe8F;#2yvgFGyJ>?KsyA7-lnGC?Xa8 zXT58&{@^QeN&&?&hXA0xDuvW|j)bwjYJcgB1fa?e;tL;A_*D4XM~Up;F!)K!4kCV7TJ@KXW5dcwnWIibMR>y%$<)k`A4>OU{QhvP@6>!yW~VBC5Nn^I4~N4))#N!A zh2}93*&-!uT}J{Mcj{`te|Bd4DS9GMqB_0P`r{>E`uUmug?F_gYIEXVJ9498_5uiQ zIv-U13`8DFGe^n=Cz7|bvv0mwA~^__j4(QUz6YA(n_7dJD>yK0UC?;u31^g4FDGae zV|)(6uda`A3IbmbaElqTAS$Z=*h%Oge&VZi;&d1-GZ;42m_9tr)IFKBb~jrCH>{Mr z?rUeDr)lKSgV#RS)xOCx1Wxdg^a1pq(o6Do4LVtlWaV?a2x_AA!U6Ji>g6Riy9j8Q&nxwFxG{dj&dSH*Irgye)yMt10!wD z358xH_|C#>to(iO2q&5KS_;c3^cBbS$*|9$1qo0W`hOk46rhCXE4RU4+#e zO^Q4T{Bv(3JF|q%gEoC2s;a~poDJwU*Ec`oPNcy4JqAfpJTPTKpxhkYpUtkg`fRA+ zJm1RwRi|u!)gZ-`i68AY&Lyr!+nw@?I#rd&!Gz-{U3|@7Quv&JqJ`vYwuuedF0)Se zQ7lDF`w7| z_I1bAG!}6E_3Y$G!&-&pnW^dHm607ibD``+$M-%d_;ij&a1Wv?@yGfruO-qOMCy@` z%D9+`CY`>=XSuxn{%pGj?=)^0;i)>C=T~9dJbe8uC%ueVc{4>!-IHCcHHQ(Cn+tIL zcCK~D*+UneU~YeA+L~@Oahj?Qi;bn-4wqF+q7<=M|8Vxfe(Tm2NFi?RPX_f5){o_H zwx3|kn|vN>l9T-6P3R%jwIcr>XYglhNAvK|^&ylYr?;a%nd#5Q(^hx0r_Y{oxqEoz zm6Qm%$$#oL9lCY$LfYG|v$6uh9rAtyfc>kf^g9>JwN!A1(v1!~RHQ7a)HBp~Cp={I zz6BlIqJ(!o-mo57&9EL9+tF=U@3b@Mxm8?UvBT0R^;Sz_U0Y(k$m_Q2d}UILq-ZT0 z1?ZwfQy7-;)3Xf5#m&v(GDpwq3wn~l*2AIuHVY)PGOMVd zNC)IkER!?5(9 zS1hUJnLfD+4iKcVS3bM{x+m;E{>CDK_kTF@O8@*6vrw_)r4w!`7{5N@jIp1(S9AI~ zF;RPLY;0*|1*Wd94iOY|1Yj*E+p~&wTZGcj{b}~fTX(lsFV+tt>(JbaT)(oux_Zgy z?9{m&FuIU46B8b8xL(*{*TKcc`nC!WbCOK;s`PS37=te)xW`iKW%tNY58kIOTd8}T z(`{j5g%rp>zWTkR4TH71mBH+ngJ{?kgup&?#C-_y_@(piU+v|MKbu^%;wAQN1Dkx zJYNE0L2k@!{#*jr9J?_(J6k(l9NNit13beoe+X-<-TJ_Mnq3S(I38U9Jux=sv9+}g z%Y!Ew5~e-Tg$+PMN^&yOY|W}G-;O9h|IndJ<=*Mtu0>p=k=o4|Q7Yb$xuticP$kr& zcotXCkc#W|#ZU6?g@e~`z8d@8my%5FU#G-RU$lOHb2#mXwA@@!Z1bo5v0sjgA!c(u z^Uo0w5a259&@7+uINP^9e0N!xikf*TX1^UoMfMS*KtuyfV+CpWL`0&~(jHV+RpGG! zHXqqxp7C4w^1lXjhRcaGW)Y9K!N^hkI8T*2xLWBC&`*oDvjgoOY{{M`dQ~A343p9d z8F&)3wdGu8Fwe&QIeJ98Z61B-QR@t0(+%UKb(UgnZmtutBKyJ00@Ebw1j56^gT~(6 zefaR9X(?dLePR4B7b05TYX2-kjEq920UfUmB#XxcN{ovUz&-q4ow#)vTs&L$TUs47 zM?aZ~YJ^yo)gU$w?a7#ChVrlVuG*kKZ+rbwee-X7i(g5D3VUfSlyY_) zy7*;b&7)>`?3hu}@2B=e!6j84Y0dRIJPhdX>tjfu#`Y|5hD`o;mU6C59Z)!rBs^3Y zy#gn9v;{eeqe1D@BGE9!`{|_v`8|=NSjLL`+VP=LQMTvDTXNSI2Pw5@XR8_K%`I48 z@qtaj6|`SR_)Y54oEw#=Vs+d+JgspPe!MYF+ZohSpCDY!QB=9PM1zVh;P|0Xzy|8> zASS3s`G6(_!c{x-t~jHLI73!IP%wcIe5`64k=;PLkz}b!>K9ghi zcw7u`<(>~L`r@lYj?}}1JM5(xea{;z0=4jbsknBs2-^EXZ9&Vb?{RG#!u<=^0v=!) zgcQ7GixFdSl_hUyvv)^@rMwQ%MItu1TV(|6cT4M=n(*z*Jfc?ERfDt`W15>kHjWnd zd|Vr+{TJoIG2|Si;FvBKi|#G&#XX~ zWH~~yUH@~FSc#7CBTfpO)()ECYe{W;yV^@Ffnx^S4r#71*Mu(1GooMJhWe%S&WN~x)sQdITds1j>9b z7Z*6fYKm)OMGjUC>a?FBh#)vA`u&(5HHCC7c+~qyeah^WlpFT%-E;1PkdAT5DfV8e!v#ZzWssquEGwRe^0{xtc;3}@1H{W>w8`RtNpTgLJ%_L*~1 zwqRWrx->~E6iS=2?-#FdVylears6=T^C`X;erkiw*IoFKvc2t$(-4mLlwmC@Dq^A{ zQ&CZ2Vq#+F;v)U{Q|Zkc0U1nml|e)m&HuL-#h-4h}Nk7AkxCjOeFy!A%^uJ&~p?K4Oos( z*BBKHi5ScrVcx6Koo6hsnkWNh_)yDmVuVx(2k-ZvR?xRimzc01Es#gLfBY`KcJ8!M znkeWKJV+guJP|~P<%v`Zjb(X``uq1U108S+ipS%J9m|`8X#-Qz<@zefTAx$e| zMmt>E{6jmC=8kr%XJhzjVW&UQlFi4MafH_Tev!NK<-y9{a+1{}F+f4y&5cP#6(~YB zhK){M7EbqFoV8e-fByWrxB(p+dh@^D-Wy83zV)G@p_vtXQ}o2633@Rz<|b2yi^lC; z$B5!tM?&6gBl#Y4c%dTU0XFl*rv>!97p=}1493&jTW{*9(Cv82E8n%_|Ai=5qP~cr zi_HI}2j5$XJ~&Kh190kUFbi)A6=HdNhzf4WvuEBlb7CVbEbLWSt+po;DVRMnG0~;f z1#i-Y@bHi|zldp@AN16FVr7+4iLDy#8~&B^FI5uqz9rAAf(ZZ;0Z$Sc8XC$nN+2rn zpB6Eit`AH}VR=z@Do&)IdMEK<|El*cke{C){8iTE+h5?Q$I646n!1IxfSxRY_Vc5q zr>bgpx6}&j>(P^wrpuEOj*N(eFpUEG`Eg0oJa2KrLCqN#WzRE5p z_ESMwne#B-Rg+wNmgpU03IVNOo8Q|wnW`GxG%-m}W3ln<+zPOvGb}Lcjn;IW0Kwuv zoFq?gdH|9NbazPPl^h{~&1ExuYuM@Izv-%q{OuV20-;viMIN#L}i zwVs^0-M3H)34X;;ktE96U;S~Mnv?Y&1&E1dV4N2TFTXy1?(c5GGVmPu59c+@z0SF9W3Hjq*7ADQ`V`L?4b}U|`T+azRy3R`pvQ+NlJSU5;SueFyyr^mc>8Id$B++c1{lS)yY+B zgwx*T&ys>wH%)i_mUv~qw;>n=uq!Bl0|+hi&~aR-wY4>wQ19vK>HplUtk{Hwg<+N) z)e{$Qe|^^`=(TJtHsj&~MTE;x)Ys4;i;9YZLZNf6kD+(L68{uKPede7d&eoJad23# zEl;vPgPbd3&|Z+hts{ejnWL-%hGya^v}!C=o`=VJ?;aH9=BgP2A@j$Zc+Ms7@)g9A zyH}`QudmX++Gx(nc%pNOR*wV6m&d62$G)4I(rjtuP?7vGGuL9{7Km~cp?gqc5gM$9 z^!J5Y@3~f3NR09TD_;}K2{8Wluk79K?JmDP`n*1QSqe)N`dZ^={VmI|>PFIhEeey= zq~n-#Iwh;rq)9;eUhWHCXUOA(5pJAO*bPd?IcAHay2i%)IYU}LK6Ma<=H_PDUoS#= zv$C>ACnm^kw86gFYfts%xrr7Q7JSz7k^+jJr>iq&1;gLM&`srer&ODhA{dbw-tGET z@DE<7iFv>?dEV|dPk}|%4==l-SvmcWv2q8I&+2@u5C9VF-Ds(u6A)x~O3^G(}u7ct>>&B%AR1-ZUUVjfAOjGG%uL?~R zdj+f6H)zbVUW!QHFv?2q3^J)YH}tY{mL zq9pV)BfB)SGNPnIy9SY8dpk3umI|0I@nJe8QKG&2WoH)(qX|(31C)svTeoLJx*0gyl{4nSxI>>4_W4WS_MgnUI@8FdK$>4pB&eb(Gq+|n&3<5hojwl_ zpIABkU2B0pA2D3)tXl=lt!HgYkF-HAlIPKnLbNvllH2}s z&fmy+xncZD5Igpg%j@o@h1CefVSfO%0TfT=8VMoitm}NgZ_XaUc@i6F4i`Ns? tJL39?z5l-R^S2@ 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 az?e1EJ(DNMNHGr%ABHOr delta 21643 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 aJ3V7QR1><49}t7U$4K8?uU5x3{(k}OBT**+ diff --git a/polaris.dme b/polaris.dme index 4fafbdefa6..cd2810c362 100644 --- a/polaris.dme +++ b/polaris.dme @@ -403,6 +403,7 @@ #include "code\game\gamemodes\changeling\powers\endoarmor.dm" #include "code\game\gamemodes\changeling\powers\enfeebling_string.dm" #include "code\game\gamemodes\changeling\powers\engorged_glands.dm" +#include "code\game\gamemodes\changeling\powers\enrage.dm" #include "code\game\gamemodes\changeling\powers\epinephrine_overdose.dm" #include "code\game\gamemodes\changeling\powers\escape_restraints.dm" #include "code\game\gamemodes\changeling\powers\extract_dna_sting.dm" @@ -1633,6 +1634,7 @@ #include "code\modules\mob\update_icons.dm" #include "code\modules\mob\_modifiers\cloning.dm" #include "code\modules\mob\_modifiers\modifiers.dm" +#include "code\modules\mob\_modifiers\modifiers_misc.dm" #include "code\modules\mob\_modifiers\traits.dm" #include "code\modules\mob\_modifiers\traits_phobias.dm" #include "code\modules\mob\dead\death.dm" @@ -2248,6 +2250,7 @@ #include "code\modules\tables\rack.dm" #include "code\modules\tables\tables.dm" #include "code\modules\tables\update_triggers.dm" +#include "code\modules\tension\tension.dm" #include "code\modules\turbolift\_turbolift.dm" #include "code\modules\turbolift\turbolift.dm" #include "code\modules\turbolift\turbolift_areas.dm" @@ -2290,6 +2293,7 @@ #include "code\modules\xenoarcheaology\artifacts\gigadrill.dm" #include "code\modules\xenoarcheaology\artifacts\replicator.dm" #include "code\modules\xenoarcheaology\effects\badfeeling.dm" +#include "code\modules\xenoarcheaology\effects\berserk.dm" #include "code\modules\xenoarcheaology\effects\cellcharge.dm" #include "code\modules\xenoarcheaology\effects\celldrain.dm" #include "code\modules\xenoarcheaology\effects\cold.dm"