From e7f455e7afa578093569dad9cabd2af497ed74c4 Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Sat, 2 May 2020 00:42:21 +0200 Subject: [PATCH 01/89] makes the uranium mat three times less radioactive --- code/datums/materials/basemats.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/materials/basemats.dm b/code/datums/materials/basemats.dm index f07b1d8792..f189a91353 100644 --- a/code/datums/materials/basemats.dm +++ b/code/datums/materials/basemats.dm @@ -72,7 +72,7 @@ Unless you know what you're doing, only use the first three numbers. They're in /datum/material/uranium/on_applied(atom/source, amount, material_flags) . = ..() - source.AddComponent(/datum/component/radioactive, amount / 20, source, 0) //half-life of 0 because we keep on going. + source.AddComponent(/datum/component/radioactive, amount / 60, source, 0) //half-life of 0 because we keep on going. /datum/material/uranium/on_removed(atom/source, material_flags) . = ..() From 2cbb659eb9a40c34cc9be9aafddedad037008dcd Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sun, 3 May 2020 06:15:40 +0200 Subject: [PATCH 02/89] Implementing the NO_PUBLIC_LATHE build_type flag. --- code/game/machinery/autolathe.dm | 6 +-- .../autolathe_designs_construction.dm | 4 +- ...utolathe_designs_medical_and_dinnerware.dm | 4 +- .../autolathe_designs_sec_and_hacked.dm | 38 +++++++++---------- .../autolathe_designs_tools.dm | 5 ++- .../research/designs/autoylathe_designs.dm | 6 +++ 6 files changed, 33 insertions(+), 30 deletions(-) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index edb31e9dbd..91be9e2676 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -17,7 +17,6 @@ var/list/L = list() var/list/LL = list() var/hacked = FALSE - var/hackable = TRUE var/disabled = 0 var/shocked = FALSE var/hack_wire @@ -420,8 +419,6 @@ /obj/machinery/autolathe/proc/adjust_hacked(state) hacked = state - if(!hackable && hacked) - return for(var/id in SSresearch.techweb_designs) var/datum/design/D = SSresearch.techweb_design_by_id(id) if((D.build_type & AUTOLATHE) && ("hacked" in D.category)) @@ -436,8 +433,7 @@ /obj/machinery/autolathe/secure name = "secured autolathe" - desc = "An autolathe reprogrammed with security protocols to prevent hacking." - hackable = FALSE + desc = "It produces items using metal and glass. This model was reprogrammed without some of the more hazardous designs." circuit = /obj/item/circuitboard/machine/autolathe/secure stored_research = /datum/techweb/specialized/autounlocking/autolathe/public diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_construction.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_construction.dm index ee9ee14e4a..f8cf5c1d84 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_construction.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_construction.dm @@ -112,8 +112,8 @@ /datum/design/rcd_ammo_large name = "Large Compressed Matter Cartridge" id = "rcd_ammo_large" - build_type = AUTOLATHE | PROTOLATHE + build_type = AUTOLATHE | PROTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 48000, /datum/material/glass = 32000) build_path = /obj/item/rcd_ammo/large - category = list("Tool Designs") + category = list("hacked", "Construction", "Tool Designs") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm index b62f30e041..76ec6224b8 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm @@ -8,7 +8,7 @@ /datum/design/kitchen_knife name = "Kitchen Knife" id = "kitchen_knife" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 12000) build_path = /obj/item/kitchen/knife category = list("initial","Dinnerware") @@ -140,7 +140,7 @@ /datum/design/healthanalyzer name = "Health Analyzer" id = "healthanalyzer" - build_type = AUTOLATHE | PROTOLATHE + build_type = AUTOLATHE | PROTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 500, /datum/material/glass = 50) build_path = /obj/item/healthanalyzer category = list("initial", "Medical") diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_sec_and_hacked.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_sec_and_hacked.dm index 173240e196..20a5370793 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_sec_and_hacked.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_sec_and_hacked.dm @@ -36,7 +36,7 @@ /datum/design/large_welding_tool name = "Industrial Welding Tool" id = "large_welding_tool" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 70, /datum/material/glass = 60) build_path = /obj/item/weldingtool/largetank category = list("hacked", "Tools") @@ -44,7 +44,7 @@ /datum/design/flamethrower name = "Flamethrower" id = "flamethrower" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 500) build_path = /obj/item/flamethrower/full category = list("hacked", "Security") @@ -52,7 +52,7 @@ /datum/design/rcd name = "Rapid Construction Device (RCD)" id = "rcd" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 30000) build_path = /obj/item/construction/rcd category = list("hacked", "Construction") @@ -60,7 +60,7 @@ /datum/design/rpd name = "Rapid Pipe Dispenser (RPD)" id = "rpd" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 75000, /datum/material/glass = 37500) build_path = /obj/item/pipe_dispenser category = list("hacked", "Construction") @@ -68,7 +68,7 @@ /datum/design/handcuffs name = "Handcuffs" id = "handcuffs" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 500) build_path = /obj/item/restraints/handcuffs category = list("hacked", "Security") @@ -76,7 +76,7 @@ /datum/design/receiver name = "Modular Receiver" id = "receiver" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 15000) build_path = /obj/item/weaponcrafting/receiver category = list("hacked", "Security") @@ -84,7 +84,7 @@ /datum/design/shotgun_slug name = "Shotgun Slug" id = "shotgun_slug" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 4000) build_path = /obj/item/ammo_casing/shotgun category = list("hacked", "Security") @@ -92,7 +92,7 @@ /datum/design/buckshot_shell name = "Buckshot Shell" id = "buckshot_shell" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 4000) build_path = /obj/item/ammo_casing/shotgun/buckshot category = list("hacked", "Security") @@ -100,7 +100,7 @@ /datum/design/shotgun_dart name = "Shotgun Dart" id = "shotgun_dart" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 4000) build_path = /obj/item/ammo_casing/shotgun/dart category = list("hacked", "Security") @@ -108,7 +108,7 @@ /datum/design/incendiary_slug name = "Incendiary Slug" id = "incendiary_slug" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 4000) build_path = /obj/item/ammo_casing/shotgun/incendiary category = list("hacked", "Security") @@ -116,7 +116,7 @@ /datum/design/riot_dart name = "Foam Riot Dart" id = "riot_dart" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 1125) //Discount for making individually - no box = less metal! build_path = /obj/item/ammo_casing/caseless/foam_dart/riot category = list("hacked", "Security") @@ -124,7 +124,7 @@ /datum/design/riot_darts name = "Foam Riot Dart Box" id = "riot_darts" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 50000) //Comes with 40 darts build_path = /obj/item/ammo_box/foambox/riot category = list("hacked", "Security") @@ -132,7 +132,7 @@ /datum/design/a357 name = "Revolver Bullet (.357)" id = "a357" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 4000) build_path = /obj/item/ammo_casing/a357 category = list("hacked", "Security") @@ -140,7 +140,7 @@ /datum/design/a762 name = "Rifle Bullet (7.62mm)" id = "a762" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 5000) //need seclathe for clips build_path = /obj/item/ammo_casing/a762 category = list("hacked", "Security") @@ -148,7 +148,7 @@ /datum/design/c10mm name = "Ammo Box (10mm)" id = "c10mm" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 30000) build_path = /obj/item/ammo_box/c10mm category = list("hacked", "Security") @@ -156,7 +156,7 @@ /datum/design/c45 name = "Ammo Box (.45)" id = "c45" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 30000) build_path = /obj/item/ammo_box/c45 category = list("hacked", "Security") @@ -164,7 +164,7 @@ /datum/design/c9mm name = "Ammo Box (9mm)" id = "c9mm" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 30000) build_path = /obj/item/ammo_box/c9mm category = list("hacked", "Security") @@ -172,7 +172,7 @@ /datum/design/electropack name = "Electropack" id = "electropack" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 10000, /datum/material/glass = 2500) build_path = /obj/item/electropack category = list("hacked", "Security") @@ -180,7 +180,7 @@ /datum/design/cleaver name = "Butcher's Cleaver" id = "cleaver" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 18000) build_path = /obj/item/kitchen/knife/butcher category = list("hacked", "Dinnerware") diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm index 8288ceff23..f6c31a9808 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm @@ -49,7 +49,7 @@ /datum/design/multitool name = "Multitool" id = "multitool" - build_type = AUTOLATHE | PROTOLATHE + build_type = AUTOLATHE | PROTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 50, /datum/material/glass = 20) build_path = /obj/item/multitool category = list("initial","Tools","Tool Designs") @@ -75,7 +75,7 @@ /datum/design/weldingtool name = "Welding Tool" id = "welding_tool" - build_type = AUTOLATHE + build_type = AUTOLATHE | NO_PUBLIC_LATHE materials = list(/datum/material/iron = 70, /datum/material/glass = 20) build_path = /obj/item/weldingtool category = list("initial","Tools","Tool Designs") @@ -97,6 +97,7 @@ build_path = /obj/item/screwdriver category = list("initial","Tools","Tool Designs") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE + /datum/design/wirecutters name = "Wirecutters" id = "wirecutters" diff --git a/code/modules/research/designs/autoylathe_designs.dm b/code/modules/research/designs/autoylathe_designs.dm index 0e572fee7a..c2076db121 100644 --- a/code/modules/research/designs/autoylathe_designs.dm +++ b/code/modules/research/designs/autoylathe_designs.dm @@ -562,6 +562,7 @@ materials = list(/datum/material/plastic = 4000, /datum/material/iron = 500) build_path = /obj/item/gun/ballistic/automatic/x9/toy category = list("initial", "Rifles") + build_type = TOYLATHE | NO_PUBLIC_LATHE /datum/design/foam_dart name = "Box of Foam Darts" @@ -586,6 +587,7 @@ materials = list(/datum/material/plastic = 4000, /datum/material/iron = 500) build_path = /obj/item/gun/ballistic/automatic/toy/magrifle category = list("initial", "Rifles") + build_type = TOYLATHE | NO_PUBLIC_LATHE /datum/design/foam_hyperburst name = "MagTag Hyper Rifle" @@ -618,6 +620,7 @@ materials = list(/datum/material/plastic = 4000, /datum/material/iron = 500) build_path = /obj/item/gun/ballistic/automatic/AM4C category = list("initial", "Rifles") + build_type = TOYLATHE | NO_PUBLIC_LATHE /datum/design/foam_f3 name = "Replica F3 Justicar" @@ -650,6 +653,7 @@ materials = list(/datum/material/plastic = 2000, /datum/material/iron = 250) build_path = /obj/item/gun/ballistic/automatic/toy/unrestricted category = list("initial", "Pistols") + build_type = TOYLATHE | NO_PUBLIC_LATHE /datum/design/foam_pistol name = "Foam Force Pistol" @@ -698,6 +702,7 @@ materials = list(/datum/material/plastic = 4000, /datum/material/iron = 500) build_path = /obj/item/gun/ballistic/automatic/c20r/toy/unrestricted category = list("hacked", "Rifles") + build_type = TOYLATHE | NO_PUBLIC_LATHE /datum/design/foam_l6 name = "Donksoft LMG" @@ -706,3 +711,4 @@ materials = list(/datum/material/plastic = 4000, /datum/material/iron = 500) build_path = /obj/item/gun/ballistic/automatic/l6_saw/toy/unrestricted category = list("hacked", "Rifles") + build_type = TOYLATHE | NO_PUBLIC_LATHE From 843f43b4ad972c367b9b5e26eb84edbc46ebda88 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sun, 3 May 2020 06:27:38 +0200 Subject: [PATCH 03/89] Some autolathe issue. --- code/game/machinery/autolathe.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 91be9e2676..bb3b2d068f 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -421,7 +421,9 @@ hacked = state for(var/id in SSresearch.techweb_designs) var/datum/design/D = SSresearch.techweb_design_by_id(id) - if((D.build_type & AUTOLATHE) && ("hacked" in D.category)) + if(D.build_type & stored_research.design_autounlock_skip_types) + continue + if((D.build_type & stored_research.design_autounlock_buildtypes) && ("hacked" in D.category)) if(hacked) stored_research.add_design(D) else From 76e1ee80b762f3e66dd48eda81ae61adb60e5444 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sun, 3 May 2020 07:12:41 +0200 Subject: [PATCH 04/89] Porting "Mobs now turn towards and are shifted based on grab state towards something pulling them" --- code/__DEFINES/atmospherics.dm | 4 +- code/__DEFINES/mobs.dm | 4 ++ code/datums/components/riding.dm | 7 ++++ code/game/atoms_movable.dm | 4 ++ code/game/atoms_movement.dm | 18 +++----- code/game/objects/buckling.dm | 11 ++++- .../atmospherics/machinery/pipes/manifold.dm | 2 + .../machinery/pipes/manifold4w.dm | 2 + code/modules/mob/living/living.dm | 41 +++++++++++++++++++ code/modules/mob/living/living_defense.dm | 1 + code/modules/mob/living/living_movement.dm | 14 ++++++- code/modules/mob/mob_movement.dm | 2 + 12 files changed, 92 insertions(+), 18 deletions(-) diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index e728d49956..88c1b763a5 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -255,10 +255,10 @@ //HELPERS #define PIPING_LAYER_SHIFT(T, PipingLayer) \ - if(T.dir & NORTH || T.dir & SOUTH) { \ + if(T.dir & (NORTH|SOUTH)) { \ T.pixel_x = (PipingLayer - PIPING_LAYER_DEFAULT) * PIPING_LAYER_P_X;\ } \ - if(T.dir & WEST || T.dir & EAST) { \ + if(T.dir & (WEST|EAST)) { \ T.pixel_y = (PipingLayer - PIPING_LAYER_DEFAULT) * PIPING_LAYER_P_Y;\ } diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index c89bd4843e..61850ed2fd 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -288,6 +288,10 @@ #define HUMAN_FIRE_STACK_ICON_NUM 3 +#define GRAB_PIXEL_SHIFT_PASSIVE 6 +#define GRAB_PIXEL_SHIFT_AGGRESSIVE 12 +#define GRAB_PIXEL_SHIFT_NECK 16 + #define PULL_PRONE_SLOWDOWN 0.6 #define FIREMAN_CARRY_SLOWDOWN 0 #define PIGGYBACK_CARRY_SLOWDOWN 1 diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm index 00bb392787..651acda6e1 100644 --- a/code/datums/components/riding.dm +++ b/code/datums/components/riding.dm @@ -20,6 +20,8 @@ var/ride_check_ridden_incapacitated = FALSE var/list/offhands = list() // keyed list containing all the current riding offsets associated by mob + var/del_on_unbuckle_all = FALSE + /datum/component/riding/Initialize() if(!ismovable(parent)) return COMPONENT_INCOMPATIBLE @@ -28,8 +30,11 @@ RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/vehicle_moved) /datum/component/riding/proc/vehicle_mob_unbuckle(datum/source, mob/living/M, force = FALSE) + var/atom/movable/AM = parent restore_position(M) unequip_buckle_inhands(M) + if(del_on_unbuckle_all && !AM.has_buckled_mobs()) + qdel(src) /datum/component/riding/proc/vehicle_mob_buckle(datum/source, mob/living/M, force = FALSE) handle_vehicle_offsets() @@ -194,6 +199,7 @@ ///////Yes, I said humans. No, this won't end well...////////// /datum/component/riding/human + del_on_unbuckle_all = TRUE var/fireman_carrying = FALSE /datum/component/riding/human/Initialize() @@ -261,6 +267,7 @@ user.visible_message("[AM] pushes [user] off of [AM.p_them()]!") /datum/component/riding/cyborg + del_on_unbuckle_all = TRUE /datum/component/riding/cyborg/Initialize() . = ..() diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index b86c7e9729..32dde45195 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -25,6 +25,7 @@ var/inertia_move_delay = 5 var/pass_flags = 0 var/moving_diagonally = 0 //0: not doing a diagonal move. 1 and 2: doing the first/second step of the diagonal move + var/atom/movable/moving_from_pull //attempt to resume grab after moving instead of before. var/list/client_mobs_in_contents // This contains all the client mobs within this container var/list/acted_explosions //for explosion dodging glide_size = 8 @@ -207,6 +208,7 @@ if(!Process_Spacemove(get_dir(pulling.loc, A))) return step(pulling, get_dir(pulling.loc, A)) + return TRUE /atom/movable/proc/check_pulling() if(pulling) @@ -224,6 +226,8 @@ if(pulling.anchored || pulling.move_resist > move_force) stop_pulling() return + if(pulledby && moving_diagonally != FIRST_DIAG_STEP && get_dist(src, pulledby) > 1) //separated from our puller and not in the middle of a diagonal move. + pulledby.stop_pulling() /atom/movable/Destroy(force) QDEL_NULL(proximity_monitor) diff --git a/code/game/atoms_movement.dm b/code/game/atoms_movement.dm index d418652cd8..3d2b6d9e91 100644 --- a/code/game/atoms_movement.dm +++ b/code/game/atoms_movement.dm @@ -51,13 +51,8 @@ /atom/movable/Move(atom/newloc, direct) var/atom/movable/pullee = pulling var/turf/T = loc - if(pulling) - if(pullee && get_dist(src, pullee) > 1) - stop_pulling() - - if(pullee && pullee.loc != loc && !isturf(pullee.loc) ) //to be removed once all code that changes an object's loc uses forceMove(). - log_game("DEBUG:[src]'s pull on [pullee] wasn't broken despite [pullee] being in [pullee.loc]. Pull stopped manually.") - stop_pulling() + if(!moving_from_pull) + check_pulling() if(!loc || !newloc) return FALSE var/atom/oldloc = loc @@ -130,19 +125,16 @@ if(has_buckled_mobs() && !handle_buckled_mob_movement(loc,direct)) //movement failed due to buckled mob(s) return FALSE - if(pulling && pulling == pullee) //we were pulling a thing and didn't lose it during our move. + if(pulling && pulling == pullee && pulling != moving_from_pull) //we were pulling a thing and didn't lose it during our move. if(pulling.anchored) stop_pulling() else var/pull_dir = get_dir(src, pulling) //puller and pullee more than one tile away or in diagonal position if(get_dist(src, pulling) > 1 || (moving_diagonally != SECOND_DIAG_STEP && ((pull_dir - 1) & pull_dir))) + pulling.moving_from_pull = src pulling.Move(T, get_dir(pulling, T)) //the pullee tries to reach our previous position - if(pulling && get_dist(src, pulling) > 1) //the pullee couldn't keep up - stop_pulling() - if(pulledby && moving_diagonally != FIRST_DIAG_STEP && get_dist(src, pulledby) > 1)//separated from our puller and not in the middle of a diagonal move. - pulledby.stop_pulling() - + pulling.moving_from_pull = null Moved(oldloc, direct) /atom/movable/proc/handle_buckled_mob_movement(newloc,direct) diff --git a/code/game/objects/buckling.dm b/code/game/objects/buckling.dm index 0e14af75a9..bacb8c6669 100644 --- a/code/game/objects/buckling.dm +++ b/code/game/objects/buckling.dm @@ -55,8 +55,12 @@ M.buckling = null return FALSE - if(M.pulledby && buckle_prevents_pull) - M.pulledby.stop_pulling() + if(M.pulledby) + if(buckle_prevents_pull) + M.pulledby.stop_pulling() + else if(isliving(M.pulledby)) + var/mob/living/L = M.pulledby + L.reset_pull_offsets(M, TRUE) if(!check_loc && M.loc != loc) M.forceMove(loc) @@ -137,4 +141,7 @@ "You unbuckle yourself from [src].",\ "You hear metal clanking.") add_fingerprint(user) + if(isliving(M.pulledby)) + var/mob/living/L = M.pulledby + L.set_pull_offsets(M, L.grab_state) return M diff --git a/code/modules/atmospherics/machinery/pipes/manifold.dm b/code/modules/atmospherics/machinery/pipes/manifold.dm index 77452fd6fd..aa8ee65bd8 100644 --- a/code/modules/atmospherics/machinery/pipes/manifold.dm +++ b/code/modules/atmospherics/machinery/pipes/manifold.dm @@ -28,6 +28,8 @@ /obj/machinery/atmospherics/pipe/manifold/update_icon() cut_overlays() + if(!center) + center = mutable_appearance(icon, "manifold_center") PIPING_LAYER_DOUBLE_SHIFT(center, piping_layer) add_overlay(center) diff --git a/code/modules/atmospherics/machinery/pipes/manifold4w.dm b/code/modules/atmospherics/machinery/pipes/manifold4w.dm index 1bcca8d5ae..56c0408d18 100644 --- a/code/modules/atmospherics/machinery/pipes/manifold4w.dm +++ b/code/modules/atmospherics/machinery/pipes/manifold4w.dm @@ -26,6 +26,8 @@ /obj/machinery/atmospherics/pipe/manifold4w/update_icon() cut_overlays() + if(!center) + center = mutable_appearance(icon, "manifold_center") PIPING_LAYER_DOUBLE_SHIFT(center, piping_layer) add_overlay(center) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 89f8381087..5189f47fbc 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -316,6 +316,45 @@ update_pull_movespeed() + set_pull_offsets(M, state) + +/mob/living/proc/set_pull_offsets(mob/living/M, grab_state = GRAB_PASSIVE) + if(M.buckled) + return //don't make them change direction or offset them if they're buckled into something. + var/offset = 0 + switch(grab_state) + if(GRAB_PASSIVE) + offset = GRAB_PIXEL_SHIFT_PASSIVE + if(GRAB_AGGRESSIVE) + offset = GRAB_PIXEL_SHIFT_AGGRESSIVE + if(GRAB_NECK) + offset = GRAB_PIXEL_SHIFT_NECK + if(GRAB_KILL) + offset = GRAB_PIXEL_SHIFT_NECK + M.setDir(get_dir(M, src)) + switch(M.dir) + if(NORTH) + animate(M, pixel_x = 0, pixel_y = offset, 3) + if(SOUTH) + animate(M, pixel_x = 0, pixel_y = -offset, 3) + if(EAST) + if(M.lying == 270) //update the dragged dude's direction if we've turned + M.lying = 90 + M.update_transform() //force a transformation update, otherwise it'll take a few ticks for update_mobility() to do so + M.lying_prev = M.lying + animate(M, pixel_x = offset, pixel_y = 0, 3) + if(WEST) + if(M.lying == 90) + M.lying = 270 + M.update_transform() + M.lying_prev = M.lying + animate(M, pixel_x = -offset, pixel_y = 0, 3) + +/mob/living/proc/reset_pull_offsets(mob/living/M, override) + if(!override && M.buckled) + return + animate(M, pixel_x = 0, pixel_y = 0, 1) + //mob verbs are a lot faster than object verbs //for more info on why this is not atom/pull, see examinate() in mob.dm /mob/living/verb/pulled(atom/movable/AM as mob|obj in oview(1)) @@ -328,6 +367,8 @@ stop_pulling() /mob/living/stop_pulling() + if(ismob(pulling)) + reset_pull_offsets(pulling) ..() update_pull_movespeed() update_pull_hud_icon() diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 39a94232a3..3e4fbd9625 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -264,6 +264,7 @@ update_mobility() //we fall down if(!buckled && !density) Move(user.loc) + user.set_pull_offsets(src, grab_state) return 1 /mob/living/attack_hand(mob/user) diff --git a/code/modules/mob/living/living_movement.dm b/code/modules/mob/living/living_movement.dm index ddcf3e6292..6a84162ea8 100644 --- a/code/modules/mob/living/living_movement.dm +++ b/code/modules/mob/living/living_movement.dm @@ -75,8 +75,12 @@ . = ..() - if(pulledby && moving_diagonally != FIRST_DIAG_STEP && get_dist(src, pulledby) > 1)//separated from our puller and not in the middle of a diagonal move. + if(pulledby && moving_diagonally != FIRST_DIAG_STEP && get_dist(src, pulledby) > 1 && (pulledby != moving_from_pull))//separated from our puller and not in the middle of a diagonal move. pulledby.stop_pulling() + else + if(isliving(pulledby)) + var/mob/living/L = pulledby + L.set_pull_offsets(src, pulledby.grab_state) if(active_storage && !(CanReach(active_storage.parent,view_only = TRUE))) active_storage.close(src) @@ -84,6 +88,14 @@ if(lying && !buckled && prob(getBruteLoss()*200/maxHealth)) makeTrail(newloc, T, old_direction) + +/mob/living/Move_Pulled(atom/A) + . = ..() + if(!. || !isliving(A)) + return + var/mob/living/L = A + set_pull_offsets(L, grab_state) + /mob/living/forceMove(atom/destination) stop_pulling() if(buckled) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index fdc60b30cb..adf3e349b7 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -109,6 +109,8 @@ /// Process_Grab(): checks for grab, attempts to break if so. Return TRUE to prevent movement. /client/proc/Process_Grab() if(mob.pulledby) + if((mob.pulledby == mob.pulling) && (mob.pulledby.grab_state == GRAB_PASSIVE)) //Don't autoresist passive grabs if we're grabbing them too. + return if(mob.incapacitated(ignore_restraints = 1)) move_delay = world.time + 10 return TRUE From 161da560b6ade7f9accf935859cf08987b92d84f Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Sun, 3 May 2020 07:17:18 +0200 Subject: [PATCH 05/89] Update autolathe.dm --- code/game/machinery/autolathe.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index bb3b2d068f..530f782452 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -31,7 +31,7 @@ var/selected_category var/screen = 1 - var/datum/techweb/stored_research = /datum/techweb/specialized/autounlocking/autolathe + var/datum/techweb/specialized/autounlocking/stored_research = /datum/techweb/specialized/autounlocking/autolathe var/list/categories = list( "Tools", "Electronics", From 65899bf90668d98a020fee8261572da293107ba3 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sun, 3 May 2020 19:56:00 +0200 Subject: [PATCH 06/89] Removing cargo "paperwork" and a few other bloat packs. --- .../crafting/recipes/recipes_misc.dm | 9 ------- code/game/objects/structures/loom.dm | 3 --- code/modules/cargo/exports/manifest.dm | 16 ----------- code/modules/cargo/packs/materials.dm | 8 ------ code/modules/cargo/packs/misc.dm | 27 +------------------ 5 files changed, 1 insertion(+), 62 deletions(-) diff --git a/code/datums/components/crafting/recipes/recipes_misc.dm b/code/datums/components/crafting/recipes/recipes_misc.dm index 9eb3fcaaea..cca1682723 100644 --- a/code/datums/components/crafting/recipes/recipes_misc.dm +++ b/code/datums/components/crafting/recipes/recipes_misc.dm @@ -404,15 +404,6 @@ subcategory = CAT_MISCELLANEOUS category = CAT_MISC -/datum/crafting_recipe/paperwork - name = "Filed Paper Work" - result = /obj/item/folder/paperwork_correct - time = 10 //Takes time for people to file and complete paper work! - tools = list(/obj/item/pen) - reqs = list(/obj/item/folder/paperwork = 1) - subcategory = CAT_MISCELLANEOUS - category = CAT_MISC - /datum/crafting_recipe/coconut_bong name = "Coconut Bong" result = /obj/item/bong/coconut diff --git a/code/game/objects/structures/loom.dm b/code/game/objects/structures/loom.dm index 2244742f3a..ad128b01c2 100644 --- a/code/game/objects/structures/loom.dm +++ b/code/game/objects/structures/loom.dm @@ -38,7 +38,4 @@ user.show_message("You weave \the [S.name] into a workable fabric.", MSG_VISUAL) return TRUE -/obj/structure/loom/unanchored - anchored = FALSE - #undef FABRIC_PER_SHEET \ No newline at end of file diff --git a/code/modules/cargo/exports/manifest.dm b/code/modules/cargo/exports/manifest.dm index 60515781f9..d59ef1093f 100644 --- a/code/modules/cargo/exports/manifest.dm +++ b/code/modules/cargo/exports/manifest.dm @@ -76,19 +76,3 @@ /datum/export/manifest_correct_denied/get_cost(obj/O) var/obj/item/paper/fluff/jobs/cargo/manifest/M = O return ..() - M.order_cost - -// Paper work done correctly - -/datum/export/paperwork_correct - cost = 120 // finicky number 20 x 120 = 2400 per crate - k_elasticity = 0 - unit_name = "correct paperwork" - export_types = list(/obj/item/folder/paperwork_correct) - -// Paper work not done retruned - -/datum/export/paperwork_incorrect - cost = -500 // Failed to meet NT standers - k_elasticity = 0 - unit_name = "returned incorrect paperwork" - export_types = list(/obj/item/folder/paperwork) diff --git a/code/modules/cargo/packs/materials.dm b/code/modules/cargo/packs/materials.dm index 6c1742896f..1ce3a6b084 100644 --- a/code/modules/cargo/packs/materials.dm +++ b/code/modules/cargo/packs/materials.dm @@ -129,14 +129,6 @@ /obj/item/rcd_ammo) crate_name = "rcd ammo" -/datum/supply_pack/materials/loom - name = "Loom" - desc = "A large pre-made loom." - cost = 1000 - contains = list(/obj/structure/loom/unanchored) - crate_name = "loom crate" - crate_type = /obj/structure/closet/crate/large - ////////////////////////////////////////////////////////////////////////////// ///////////////////////////// Canisters ////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// diff --git a/code/modules/cargo/packs/misc.dm b/code/modules/cargo/packs/misc.dm index dfaa6f0027..5265b2c2f6 100644 --- a/code/modules/cargo/packs/misc.dm +++ b/code/modules/cargo/packs/misc.dm @@ -87,37 +87,12 @@ crate_type = /obj/structure/closet/crate/wooden crate_name = "calligraphy crate" -/datum/supply_pack/misc/paper_work - name = "Freelance Paper work" - desc = "The Nanotrasen Primary Bureaucratic Database Intelligence (PDBI) reports that the station has not completed its funding and grant paperwork this solar cycle. In order to gain further funding, your station is required to fill out (10) ten of these forms or no additional capital will be disbursed. We have sent you ten copies of the following form and we expect every one to be up to Nanotrasen Standards." // Disbursement. It's not a typo, look it up. - cost = 700 // Net of 0 credits but makes (120 x 10 = 1200) - contains = list(/obj/item/folder/paperwork, - /obj/item/pen/fountain - ) - crate_name = "Paperwork" - -/datum/supply_pack/misc/paper_work/generate() - . = ..() - for(var/i in 1 to 9) - new /obj/item/folder/paperwork(.) ////////////////////////////////////////////////////////////////////////////// //////////////////////////////// Entertainment /////////////////////////////// ////////////////////////////////////////////////////////////////////////////// -/datum/supply_pack/misc/randombedsheets - name = "Bedsheet Crate (R)" - desc = "Snuggle up in some sweet sheets with this assorted bedsheet crate. Each set comes with eight random bedsheets for your slumbering pleasure!" - cost = 2000 - contains = list(/obj/item/bedsheet/random) - crate_name = "random bedsheet crate" - -/datum/supply_pack/misc/randombedsheets/generate() - . = ..() - for(var/i in 1 to 7) - new /obj/item/bedsheet/random(.) - /datum/supply_pack/misc/coloredsheets - name = "Bedsheet Crate (C)" + name = "Bedsheet Crate" desc = "Give your night life a splash of color with this crate filled with bedsheets! Contains a total of nine different-colored sheets." cost = 1250 contains = list(/obj/item/bedsheet/blue, From 87389243e66de7c3387061f2f61e101e3857751d Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Mon, 4 May 2020 17:30:15 +0200 Subject: [PATCH 07/89] r p g skills WIP. --- code/__DEFINES/skills/skills.dm | 22 +++++++ code/datums/skills/_skill.dm | 98 +++++++++++++++++++++++++++-- code/datums/skills/_skill_holder.dm | 21 ++++--- code/datums/skills/engineering.dm | 3 + tgstation.dme | 1 + 5 files changed, 130 insertions(+), 15 deletions(-) create mode 100644 code/datums/skills/engineering.dm diff --git a/code/__DEFINES/skills/skills.dm b/code/__DEFINES/skills/skills.dm index b97b921550..d8c37bec59 100644 --- a/code/__DEFINES/skills/skills.dm +++ b/code/__DEFINES/skills/skills.dm @@ -1,3 +1,5 @@ +#define GET_SKILL_DATUM(path) GLOB.skill_datums[path] + /// true/false #define SKILL_PROGRESSION_BINARY 1 /// numerical @@ -5,11 +7,31 @@ /// Enum #define SKILL_PROGRESSION_ENUM 3 + /// Max value of skill for numerical skills #define SKILL_NUMERICAL_MAX 100 /// Min value of skill for numerical skills #define SKILL_NUMERICAL_MIN 0 +// Values for experience skills +#define STD_XP_LVL_UP 100 +#define STD_XP_LVL_MULTI 2 +#define STD_MAX_LVL 4 + +#define RPG_MAX_LVL 100 + +#define DORF_XP_LVL_UP 400 +#define DORF_XP_LVL_MULTI 100 +#define DORF_MAX_LVL 20 // Dabbling, novice, adequate, [...], legendary +3, legendary +4, legendary +5 + +//How experience levels are calculated. +#define XP_LEVEL(std, multi, lvl) (std * (multi**lvl)) +#define DORF_XP_LEVEL(std, extra, lvl) (std*lvl+extra*(lvl*(lvl/2+0.5))) + +//level up methods defines +#define STANDARD_LEVEL_UP "standard_level_up" +#define DWARFY_LEVEL_UP "dwarfy_level_up" + // Standard values for job starting skills #define STARTING_SKILL_SURGERY_MEDICAL 35 //out of SKILL_NUMERICAL_MAX diff --git a/code/datums/skills/_skill.dm b/code/datums/skills/_skill.dm index 2dd321c4c6..f7225283cd 100644 --- a/code/datums/skills/_skill.dm +++ b/code/datums/skills/_skill.dm @@ -9,16 +9,13 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) S = new path .[S.type] = S -/proc/get_skill_datum(path) - return GLOB.skill_datums[path] - /proc/sanitize_skill_value(path, value) - var/datum/skill/S = get_skill_datum(path) + var/datum/skill/S = GET_SKILL_DATUM(path) // don't check, if we runtime let it happen. return S.sanitize_value(value) /proc/is_skill_value_greater(path, existing, new_value) - var/datum/skill/S = get_skill_datum(path) + var/datum/skill/S = GET_SKILL_DATUM(path) // don't check, if we runtime let it happen. return S.is_value_greater(existing, new_value) @@ -30,6 +27,8 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) var/name /// Our description var/desc + /// Color of the name as shown in the html readout + var/name_color = "#000000" /// Our progression type var/progression_type /// Abstract type @@ -41,6 +40,13 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) /datum/skill/proc/sanitize_value(new_value) return new_value +/** + * Sets the new value of this skill in the holder skills list. + * As well as possible feedback messages or secondary effects on value change, that's on you. + */ +/datum/skill/proc/set_skill(datum/skill_holder/H, value, mob/owner) + H.skills[type] = value + /** * Checks if a value is greater */ @@ -93,3 +99,85 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) /datum/skill/enum/sanitize_value(new_value) if(new_value in valid_values) return new_value + +/** + * Classing r p g styled skills, tiered by lvl, and current/nextlvl experience. + */ +/datum/skill/experience + abstract_type = /datum/skill/experience + var/standard_xp_lvl_up = STD_XP_LVL_UP //the standard required to level up. def: 100 + var/xp_lvl_multiplier = STD_XP_LVL_UP //standard required level up exp multiplier. def: 2 (100, 200, 400, 800 etc.) + var/max_lvl = STD_MAX_LVL + var/level_up_method = STANDARD_LEVEL_UP //how levels are calculated. + var/list/levels = list() //level thresholds, if associative, these will be preceded by tiers such as "novice" or "trained" + var/associative = FALSE //See above. + var/unskilled_tier = "Unskilled" //Only relevant for associative experience levels + +//Builds the levels list. +/datum/skill/experience/New() + . = ..() + var/max_assoc = "" + var/max_assoc_start = 1 + for(var/lvl in 1 to max_lvl) + var/value + switch(level_up_method) + if(STANDARD_LEVEL_UP) + value = XP_LEVEL(standard_xp_lvl_up, xp_lvl_multiplier, lvl) + if(DWARFY_LEVEL_UP) + value = DORF_XP_LEVEL(standard_xp_lvl_up, xp_lvl_multiplier, lvl) + value = round(value) + if(!associative) + levels += value + continue + if(max_assoc) + levels["[max_assoc] +[max_assoc_start++]"] = value + continue + var/key = LAZYACCESS(levels, lvl) + if(!key) + if(lvl == 1) //You dun goof it. + stack_trace("Skill datum [src] was set to have an associative levels list despite the latted having no key.") + associative = FALSE + levels += value + continue + max_assoc = levels[lvl-1] + levels["[max_assoc] +[max_assoc_start++]"] = value + levels[key] = value + + +/datum/skill/experience/sanitize_value(new_value) + return round(max(new_value, 0)) + +/datum/skill/experience/set_skill(datum/skill_holder/H, value, mob/owner) + var/old_value = H.skills[type] + H.skills[type] = value + if(value > old_value) + +/datum/skill/experience/standard_render_value(value) + var/current_lvl = associative ? unskilled_tier : 0 + var/current_lvl_xp_sum = 0 + var/next_lvl_xp_sum + for(var/lvl in 1 to max_lvl) + next_lvl_xp_sum = associative ? levels[levels[lvl]] : levels[lvl] + if(value < next_lvl_xp_sum) + break + current_lvl_xp_sum = next_lvl_xp_sum + current_lvl = associative ? levels[lvl] : current_lvl+1 + + return "[associative ? current_lvl : "Lvl. [current_lvl]"] ([value - current_lvl_xp_sum]/[next_lvl_xp_sum])[value > next_lvl_xp_sum ? " \[MAX!\]" : ""]" + +/datum/skill/experience/job + levels = ("Basic", "Trained", "Experienced", "Master") + associative = TRUE + +//quite the reference, no? +/datum/skill/experience/dwarfy + abstract_type = /datum/skill/experience/dwarfy + standard_xp_lvl_up = DORF_XP_LVL_UP + xp_lvl_multiplier = DORF_XP_LVL_MULTI + max_lvl = DORF_MAX_LVL + levels = list("Novice", "Adequate", "Competent", "Skilled", + "Proficient", "Talented", "Adept", "Expert", + "Professional", "Accomplished", "Great", "Master", + "High Master", "Grand Master", "Legendary") + associative = TRUE + unskilled_tier = "Dabbling" diff --git a/code/datums/skills/_skill_holder.dm b/code/datums/skills/_skill_holder.dm index 352adc46ff..71744b7d43 100644 --- a/code/datums/skills/_skill_holder.dm +++ b/code/datums/skills/_skill_holder.dm @@ -33,36 +33,37 @@ /** * Sets the value of a skill. */ -/datum/skill_holder/proc/set_skill_value(skill, value) - if(!ispath(skill)) +/datum/skill_holder/proc/set_skill_value(skill, value, owner) + if(!ispath(skill, /datum/skill)) CRASH("Invalid set_skill_value call. Use typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. - LAZYINITLIST(skills) - value = sanitize_skill_value(skill, value) + var/datum/skill/S = GET_SKILL_DATUM(path) + value = S.sanitize_value(value) if(!isnull(value)) - skills[skill] = value + LAZYINITLIST(skills) + S.set_skill(src, value, owner) return TRUE return FALSE /** * Boosts a skill to a value if not aobve */ -/datum/skill_holder/proc/boost_skill_value_to(skill, value) +/datum/skill_holder/proc/boost_skill_value_to(skill, value, mob/owner) var/current = get_skill_value(skill) if(!is_skill_value_greater(skill, current, value)) return FALSE - set_skill_value(skill, value) + set_skill_value(skill, value, owner) return TRUE /** * Automatic skill increase, multiplied by skill affinity if existing. * Only works if skill is numerical. */ -/datum/skill_holder/proc/auto_gain_experience(skill, value) +/datum/skill_holder/proc/auto_gain_experience(skill, value, mob/owner) if(!ispath(skill, /datum/skill/numerical)) CRASH("You cannot auto increment a non numerical skill!") var/current = get_skill_value(skill) var/affinity = get_skill_affinity(skill) - boost_skill_value_to(skill, current + (value * affinity)) + boost_skill_value_to(skill, current + (value * affinity), owner) /** * Generates a HTML readout of our skills. @@ -73,6 +74,6 @@ out += "" for(var/path in skills) var/datum/skill/S = GLOB.skill_datums[path] - out += "" + out += "" out += "
SkillValue
[S.name][S.standard_render_value(skills[path])]
[S.name][S.standard_render_value(skills[path])]
" return out.Join("") diff --git a/code/datums/skills/engineering.dm b/code/datums/skills/engineering.dm new file mode 100644 index 0000000000..c06accea77 --- /dev/null +++ b/code/datums/skills/engineering.dm @@ -0,0 +1,3 @@ +/datum/skill/experience/job/wiring + name = "Wiring" + desc = "How proficient and knowledged you are at wiring beyond laying cables on the floor." diff --git a/tgstation.dme b/tgstation.dme index 9aa47506d3..68ae7669f3 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -575,6 +575,7 @@ #include "code\datums\skills\_check_skills.dm" #include "code\datums\skills\_skill.dm" #include "code\datums\skills\_skill_holder.dm" +#include "code\datums\skills\engineering.dm" #include "code\datums\skills\medical.dm" #include "code\datums\status_effects\buffs.dm" #include "code\datums\status_effects\debuffs.dm" From 643ef48f0e66e52138b62844059133214f34b762 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 04:42:34 +0200 Subject: [PATCH 08/89] Macros, generic skill implementations. --- .../skills/{skills.dm => defines.dm} | 62 +++++++++++------ code/__DEFINES/skills/helpers.dm | 44 ++++++++++++ code/_onclick/item_attack.dm | 56 +++++++++++---- code/datums/mind.dm | 3 +- code/datums/skills/_skill.dm | 69 ++++++++++++------- code/datums/skills/_skill_holder.dm | 37 ++++++++-- code/datums/skills/engineering.dm | 3 +- code/datums/skills/medical.dm | 1 + code/datums/wires/_wires.dm | 37 ++++++++-- code/datums/wires/airalarm.dm | 1 + code/datums/wires/airlock.dm | 5 +- code/datums/wires/apc.dm | 1 + code/datums/wires/autolathe.dm | 1 + code/datums/wires/emitter.dm | 2 + code/datums/wires/explosive.dm | 2 + code/datums/wires/microwave.dm | 2 + code/datums/wires/mulebot.dm | 1 + code/datums/wires/particle_accelerator.dm | 2 + code/datums/wires/r_n_d.dm | 1 + code/datums/wires/radio.dm | 2 + code/datums/wires/robot.dm | 2 + code/datums/wires/suit_storage_unit.dm | 2 + code/datums/wires/syndicatebomb.dm | 2 + code/datums/wires/tesla_coil.dm | 1 + code/datums/wires/vending.dm | 1 + code/game/machinery/camera/camera_assembly.dm | 3 +- code/game/machinery/constructable_frame.dm | 1 - code/game/machinery/doors/firedoor.dm | 3 +- code/game/machinery/firealarm.dm | 4 +- code/game/machinery/shieldgen.dm | 5 +- code/game/mecha/mecha_defense.dm | 3 +- code/game/objects/items.dm | 18 ++++- .../objects/items/grenades/chem_grenade.dm | 3 +- .../game/objects/items/stacks/sheets/glass.dm | 2 +- code/game/objects/structures/ai_core.dm | 2 +- code/game/objects/structures/barsigns.dm | 3 +- .../objects/structures/windoor_assembly.dm | 3 +- .../atmospherics/machinery/airalarm.dm | 5 +- code/modules/clothing/under/_under.dm | 2 +- code/modules/hydroponics/plant_genes.dm | 3 +- code/modules/jobs/job_types/_job.dm | 2 +- code/modules/jobs/job_types/ai.dm | 2 + .../jobs/job_types/atmospheric_technician.dm | 4 ++ code/modules/jobs/job_types/chief_engineer.dm | 3 + code/modules/jobs/job_types/cyborg.dm | 2 + code/modules/jobs/job_types/roboticist.dm | 4 ++ .../jobs/job_types/station_engineer.dm | 3 + code/modules/mining/ores_coins.dm | 3 +- .../mob/living/carbon/carbon_defense.dm | 6 +- .../mob/living/carbon/human/species.dm | 15 +--- .../modules/mob/living/silicon/robot/robot.dm | 13 ++-- .../living/simple_animal/bot/construction.dm | 5 +- .../modular_computers/hardware/_hardware.dm | 3 +- code/modules/power/apc.dm | 20 +++--- code/modules/power/cable.dm | 4 +- code/modules/power/floodlight.dm | 3 +- code/modules/power/lighting.dm | 3 +- .../particle_accelerator.dm | 3 +- .../particle_accelerator/particle_control.dm | 3 +- code/modules/power/smes.dm | 5 +- .../projectiles/guns/ballistic/revolver.dm | 3 +- .../surgery/bodyparts/robot_bodyparts.dm | 15 ++-- code/modules/surgery/surgery_step.dm | 9 ++- tgstation.dme | 3 +- 64 files changed, 358 insertions(+), 178 deletions(-) rename code/__DEFINES/skills/{skills.dm => defines.dm} (51%) create mode 100644 code/__DEFINES/skills/helpers.dm diff --git a/code/__DEFINES/skills/skills.dm b/code/__DEFINES/skills/defines.dm similarity index 51% rename from code/__DEFINES/skills/skills.dm rename to code/__DEFINES/skills/defines.dm index d8c37bec59..00859bbd40 100644 --- a/code/__DEFINES/skills/skills.dm +++ b/code/__DEFINES/skills/defines.dm @@ -1,4 +1,3 @@ -#define GET_SKILL_DATUM(path) GLOB.skill_datums[path] /// true/false #define SKILL_PROGRESSION_BINARY 1 @@ -6,6 +5,8 @@ #define SKILL_PROGRESSION_NUMERICAL 2 /// Enum #define SKILL_PROGRESSION_ENUM 3 +/// Levels +#define SKILL_PROGRESSION_LEVEL 4 /// Max value of skill for numerical skills @@ -13,7 +14,35 @@ /// Min value of skill for numerical skills #define SKILL_NUMERICAL_MIN 0 -// Values for experience skills +// Standard values for job starting skills + +#define STARTING_SKILL_SURGERY_MEDICAL 35 //out of SKILL_NUMERICAL_MAX + +// Standard values for job starting skill affinities + +#define STARTING_SKILL_AFFINITY_SURGERY_MEDICAL 1.2 + +#define STARTING_SKILL_AFFINITY_WIRING_ENGI_ROBO 1.2 + +// Standard values for skill gain (this is multiplied by affinity) + +#define DEF_SKILL_GAIN 1 +#define SKILL_GAIN_SURGERY_PER_STEP 0.25 + +///Items skill_flags and other defines +#define SKILL_USE_TOOL (1<<0) +#define SKILL_TRAINING_TOOL (1<<1) +#define SKILL_ATTACK_MOB (1<<2) +#define SKILL_TRAIN_ATTACK_MOB (1<<3) +#define SKILL_ATTACK_OBJ (1<<4) +#define SKILL_TRAIN_ATTACK_OBJ (1<<5) + +///competency_threshold index defines +#define THRESHOLD_COMPETENT 1 +#define THRESHOLD_EXPERT 2 +#define THRESHOLD_MASTER 3 + +/// Level/Experience skills defines. #define STD_XP_LVL_UP 100 #define STD_XP_LVL_MULTI 2 #define STD_MAX_LVL 4 @@ -24,27 +53,18 @@ #define DORF_XP_LVL_MULTI 100 #define DORF_MAX_LVL 20 // Dabbling, novice, adequate, [...], legendary +3, legendary +4, legendary +5 -//How experience levels are calculated. -#define XP_LEVEL(std, multi, lvl) (std * (multi**lvl)) -#define DORF_XP_LEVEL(std, extra, lvl) (std*lvl+extra*(lvl*(lvl/2+0.5))) - //level up methods defines #define STANDARD_LEVEL_UP "standard_level_up" #define DWARFY_LEVEL_UP "dwarfy_level_up" -// Standard values for job starting skills +//job skill level defines +#define JOB_SKILL_UNTRAINED 0 +#define JOB_SKILL_BASIC 1 +#define JOB_SKILL_TRAINED 2 +#define JOB_SKILL_EXPERT 3 +#define JOB_SKILL_MASTER 4 -#define STARTING_SKILL_SURGERY_MEDICAL 35 //out of SKILL_NUMERICAL_MAX - -// Standard values for job starting skill affinities - -#define STARTING_SKILL_AFFINITY_SURGERY_MEDICAL 1.2 - -// Standard values for skill gain (this is multiplied by affinity) - -#define SKILL_GAIN_SURGERY_PER_STEP 0.25 - -// Misc - -/// 40% speedup at 100 skill -#define SURGERY_SKILL_SPEEDUP_NUMERICAL_SCALE(number) clamp(number / 250, 1, 2) +//other skill level defines, not an exhaustive catalogue, only contains be most relevant ones. +#define DORF_SKILL_COMPETENT 3 +#define DORF_SKILL_EXPERT 8 +#define DORF_SKILL_MASTER 12 diff --git a/code/__DEFINES/skills/helpers.dm b/code/__DEFINES/skills/helpers.dm new file mode 100644 index 0000000000..165b9091ae --- /dev/null +++ b/code/__DEFINES/skills/helpers.dm @@ -0,0 +1,44 @@ +/** + *Generic delay calculation macro for various delayed actions. + *The skill to check must be an instance, not a path or list. + */ +#define SKILL_MODIFIER(to_check, holder, target, threshold) \ + var/___value;\ + switch(to_check.progression_type){\ + if(SKILL_PROGRESSION_LEVEL){\ + ___value = LAZYACCESS(holder.skill_levels, to_check.type)\ + } else {\ + ___value = LAZYACCESS(holder.skills, to_check.type)\ + }\ + }\ + target /= (1+(___value-to_check.competency_thresholds[threshold])*to_check.competency_mults[threshold]) + +/// This is the one that accepts typepaths and lists. +#define LIST_SKILL_MODIFIER(to_check, holder, target, threshold) \ + if(!islist(to_check)){\ + SKILL_MODIFIER(GLOB.skill_datums[to_check], holder, target, threshold)\ + } else {\ + var/___sum = 0;\ + var/list/___L = to_check;\ + for(var/_S in ___L){\ + var/___value;\ + var/datum/skill/___S = GLOB.skill_datums[_S];\ + switch(___S.progression_type){\ + if(SKILL_PROGRESSION_LEVEL){\ + ___value = LAZYACCESS(holder.skill_levels, ___S.type)\ + } else {\ + ___value = LAZYACCESS(holder.skills, ___S.type)\ + }\ + }\ + ___sum += (1+(___value - ___S.competency_thresholds[threshold])*___S.competency_mults[threshold])\ + }\ + target /= (___sum/length(___L))\ + } + +//How experience levels are calculated. +#define XP_LEVEL(std, multi, lvl) (std*((multi**lvl)/(multi-1))-std/(multi-1)) //don't use 1 as multi, you'll get division by zero errors +#define DORF_XP_LEVEL(std, extra, lvl) (std*lvl+extra*(lvl*(lvl/2+0.5))) + +//More experience value getter macros +#define GET_STANDARD_LVL(lvl) XP_LEVEL(STD_XP_LVL_UP, STD_XP_LVL_MULTI, lvl) +#define GET_DORF_LVL(lvl) DORF_XP_LEVEL(DORF_XP_LVL_UP, DORF_XP_LVL_MULTI, lvl) diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 98db89a100..dbcf171663 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -111,26 +111,30 @@ return /obj/attacked_by(obj/item/I, mob/living/user) - if(I.force) + var/totitemdamage = I.force + if(I.used_skills && user.mind) + if(I.skill_flags & SKILL_ATTACK_OBJ) + LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, totitemdamage, I.skill_difficulty) + if(I.skill_flags & SKILL_TRAIN_ATTACK_OBJ) + if(!islist(I.used_skills)) + user.mind.skill_holder.boost_skill_value_to(used_skills, I.skill_gain) + else + for(var/skill in used_skills) + user.mind.skill_holder.boost_skill_value_to(skill, I.skill_gain) + if(totitemdamage) visible_message("[user] has hit [src] with [I]!", null, null, COMBAT_MESSAGE_RANGE) //only witnesses close by and the victim see a hit message. log_combat(user, src, "attacked", I) - take_damage(I.force, I.damtype, "melee", 1) + take_damage(totitemdamage, I.damtype, "melee", 1) /mob/living/attacked_by(obj/item/I, mob/living/user) - //CIT CHANGES START HERE - combatmode and resting checks - var/totitemdamage = I.force - if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) - totitemdamage *= 0.5 - if(!CHECK_MOBILITY(user, MOBILITY_STAND)) - totitemdamage *= 0.5 - //CIT CHANGES END HERE + var/totitemdamage = calculate_item_force(I, user, TRUE) if((user != src) && run_block(I, totitemdamage, "the [I.name]", ATTACK_TYPE_MELEE, I.armour_penetration, user) & BLOCK_SUCCESS) return FALSE send_item_attack_message(I, user) - I.do_stagger_action(src, user) + I.do_stagger_action(src, user, totitemdamage) if(I.force) - apply_damage(totitemdamage, I.damtype) //CIT CHANGE - replaces I.force with totitemdamage + apply_damage(totitemdamage, I.damtype) if(I.damtype == BRUTE) if(prob(33)) I.add_mob_blood(src) @@ -146,6 +150,28 @@ else return ..() +/mob/living/proc/pre_attacked_by(obj/item/I, mob/living/user, pre_attack = FALSE) + . = I.force + if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) + . *= 0.5 + if(!CHECK_MOBILITY(user, MOBILITY_STAND)) + . *= 0.5 + if(!pre_attack || !user.mind || !I.used_skills) + return + if(. && I.skill_flags & SKILL_ATTACK_MOB) + LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, ., I.skill_difficulty) + if(I.skill_flags & SKILL_TRAIN_ATTACK_MOB) + if(!islist(I.used_skills)) + user.mind.skill_holder.boost_skill_value_to(used_skills, I.skill_gain) + else + for(var/skill in used_skills) + user.mind.skill_holder.boost_skill_value_to(skill, I.skill_gain) + +/mob/living/carbon/proc/pre_attacked_by(obj/item/I, mob/living/user, pre_attack = FALSE) + . = ..() + if(!(combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) + . *= 1.5 + // Proximity_flag is 1 if this afterattack was called on something adjacent, in your square, or on your person. // Click parameters is the params string from byond Click() code, see that documentation. /obj/item/proc/afterattack(atom/target, mob/user, proximity_flag, click_parameters) @@ -183,18 +209,18 @@ return total_mass || w_class * 1.25 /// How long this staggers for. 0 and negatives supported. -/obj/item/proc/melee_stagger_duration() +/obj/item/proc/melee_stagger_duration(force_override) if(!isnull(stagger_force)) return stagger_force /// totally not an untested, arbitrary equation. - return clamp((1.5 + (w_class/7.5)) * (force / 2), 0, 10 SECONDS) + return clamp((1.5 + (w_class/7.5)) * ((force_override || force) / 2), 0, 10 SECONDS) -/obj/item/proc/do_stagger_action(mob/living/target, mob/living/user) +/obj/item/proc/do_stagger_action(mob/living/target, mob/living/user, force_override) if(!CHECK_BITFIELD(target.status_flags, CANSTAGGER)) return FALSE if(target.combat_flags & COMBAT_FLAG_SPRINT_ACTIVE) target.do_staggered_animation() - var/duration = melee_stagger_duration() + var/duration = melee_stagger_duration(force_override) if(!duration) //0 return FALSE else if(duration > 0) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 728c4fb51b..54fcbbc6aa 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -67,7 +67,7 @@ var/datum/skill_holder/skill_holder /datum/mind/New(var/key) - skill_holder = new + skill_holder = new(src) src.key = key soulOwner = src martial_art = default_martial_art @@ -80,6 +80,7 @@ if(antag_datum.delete_on_mind_deletion) qdel(i) antag_datums = null + QDEL_NULL(skill_holder) return ..() /datum/mind/proc/get_language_holder() diff --git a/code/datums/skills/_skill.dm b/code/datums/skills/_skill.dm index f7225283cd..039afacfa5 100644 --- a/code/datums/skills/_skill.dm +++ b/code/datums/skills/_skill.dm @@ -1,4 +1,4 @@ -GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) +GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) /proc/init_skill_datums() . = list() @@ -10,12 +10,12 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) .[S.type] = S /proc/sanitize_skill_value(path, value) - var/datum/skill/S = GET_SKILL_DATUM(path) + var/datum/skill/S = GLOB.skill_datums[path] // don't check, if we runtime let it happen. return S.sanitize_value(value) /proc/is_skill_value_greater(path, existing, new_value) - var/datum/skill/S = GET_SKILL_DATUM(path) + var/datum/skill/S = GLOB.skill_datums[path] // don't check, if we runtime let it happen. return S.is_value_greater(existing, new_value) @@ -33,6 +33,10 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) var/progression_type /// Abstract type var/abstract_type = /datum/skill + /// skill threshold used in generic skill modifiers calculations. + var/list/competency_thresholds = list(0, 0, 0) + /// Multiplier of the difference of the holder skill value and the selected threshold. + var/list/competency_mults = list(0, 0, 0) /** * Ensures what someone's setting as a value for this skill is valid. @@ -44,7 +48,7 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) * Sets the new value of this skill in the holder skills list. * As well as possible feedback messages or secondary effects on value change, that's on you. */ -/datum/skill/proc/set_skill(datum/skill_holder/H, value, mob/owner) +/datum/skill/proc/set_skill_value(datum/skill_holder/H, value, mob/owner) H.skills[type] = value /** @@ -67,6 +71,8 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) /datum/skill/binary abstract_type = /datum/skill/binary progression_type = SKILL_PROGRESSION_BINARY + competency_thresholds = list(FALSE, TRUE, TRUE) + competency_mults = list(0.5, 0.5, 0.5) /datum/skill/binary/sanitize_value(new_value) return new_value? TRUE : FALSE @@ -103,22 +109,23 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) /** * Classing r p g styled skills, tiered by lvl, and current/nextlvl experience. */ -/datum/skill/experience - abstract_type = /datum/skill/experience +/datum/skill/level + abstract_type = /datum/skill/level + progression_type = SKILL_PROGRESSION_LEVEL var/standard_xp_lvl_up = STD_XP_LVL_UP //the standard required to level up. def: 100 var/xp_lvl_multiplier = STD_XP_LVL_UP //standard required level up exp multiplier. def: 2 (100, 200, 400, 800 etc.) - var/max_lvl = STD_MAX_LVL + var/max_levels = STD_MAX_LVL var/level_up_method = STANDARD_LEVEL_UP //how levels are calculated. var/list/levels = list() //level thresholds, if associative, these will be preceded by tiers such as "novice" or "trained" var/associative = FALSE //See above. var/unskilled_tier = "Unskilled" //Only relevant for associative experience levels //Builds the levels list. -/datum/skill/experience/New() +/datum/skill/level/New() . = ..() var/max_assoc = "" var/max_assoc_start = 1 - for(var/lvl in 1 to max_lvl) + for(var/lvl in 1 to max_levels) var/value switch(level_up_method) if(STANDARD_LEVEL_UP) @@ -143,41 +150,57 @@ GLOBAL_LIST_INIT(skill_datums, init_skill_datums()) levels["[max_assoc] +[max_assoc_start++]"] = value levels[key] = value +/datum/skill/level/sanitize_value(new_value) + return max(new_value, 0) -/datum/skill/experience/sanitize_value(new_value) - return round(max(new_value, 0)) - -/datum/skill/experience/set_skill(datum/skill_holder/H, value, mob/owner) - var/old_value = H.skills[type] +/datum/skill/level/set_skill_value(datum/skill_holder/H, value, datum/mind/M, silent = FALSE) H.skills[type] = value - if(value > old_value) + var/new_level + for(var/k in levels) + if(value < (associative ? levels[k] : k)) + break + new_level++ + var/old_level = LAZYACCESS(H.skill_levels, type) + LAZYSET(H.skill_levels, type, new_level) + . = new_level - old_level + if(silent || !(M?.current)) + return + if(. > 0) + to_chat(M.current, "I feel like I've become more proficient at [name]!") + else if(. < 0) + to_chat(M.current, "I feel like I've become worse at [name]!") -/datum/skill/experience/standard_render_value(value) +/datum/skill/level/standard_render_value(value) var/current_lvl = associative ? unskilled_tier : 0 var/current_lvl_xp_sum = 0 var/next_lvl_xp_sum - for(var/lvl in 1 to max_lvl) + for(var/lvl in 1 to max_levels) next_lvl_xp_sum = associative ? levels[levels[lvl]] : levels[lvl] if(value < next_lvl_xp_sum) break current_lvl_xp_sum = next_lvl_xp_sum - current_lvl = associative ? levels[lvl] : current_lvl+1 + current_lvl = associative ? levels[lvl] : lvl+1 return "[associative ? current_lvl : "Lvl. [current_lvl]"] ([value - current_lvl_xp_sum]/[next_lvl_xp_sum])[value > next_lvl_xp_sum ? " \[MAX!\]" : ""]" -/datum/skill/experience/job - levels = ("Basic", "Trained", "Experienced", "Master") +/datum/skill/level/job + levels = list("Basic", "Trained", "Experienced", "Master") + competency_thresholds = list(JOB_SKILL_TRAINED, JOB_SKILL_EXPERT, JOB_SKILL_MASTER) + competency_mults = list(0.15, 0.1, 0.1) associative = TRUE //quite the reference, no? -/datum/skill/experience/dwarfy - abstract_type = /datum/skill/experience/dwarfy +/datum/skill/level/dwarfy + abstract_type = /datum/skill/level/dwarfy standard_xp_lvl_up = DORF_XP_LVL_UP xp_lvl_multiplier = DORF_XP_LVL_MULTI - max_lvl = DORF_MAX_LVL + max_levels = DORF_MAX_LVL + level_up_method = DWARFY_LEVEL_UP levels = list("Novice", "Adequate", "Competent", "Skilled", "Proficient", "Talented", "Adept", "Expert", "Professional", "Accomplished", "Great", "Master", "High Master", "Grand Master", "Legendary") + competency_thresholds = list(DORF_SKILL_COMPETENT, DORF_SKILL_EXPERT, DORF_SKILL_MASTER) + competency_mults = list(0.15, 0.1, 0.08) associative = TRUE unskilled_tier = "Dabbling" diff --git a/code/datums/skills/_skill_holder.dm b/code/datums/skills/_skill_holder.dm index 71744b7d43..d1b6b8bd0d 100644 --- a/code/datums/skills/_skill_holder.dm +++ b/code/datums/skills/_skill_holder.dm @@ -2,10 +2,18 @@ * Skill holder datums */ /datum/skill_holder + var/datum/mind/owner /// Our list of skills and values. Lazylist. Associative. Keys are datum typepaths to the skill. var/list/skills /// Same as [skills] but affinities, which are multiplied to increase amount when gaining skills. var/list/skill_affinities + /// Let's say we want to get a specific skill "level" without looping through a proc everytime. + /// Only supported by skills with tiers or levels. + var/list/skill_levels + +/datum/skill_holder/New(datum/mind/M) + . = ..() + owner = M /** * Grabs the value of a skill. @@ -17,6 +25,16 @@ return null return skills[skill] +/** + * Grabs the level of a skill. Only supported by skills with tiers or levels. + */ +/datum/skill_holder/proc/get_skill_level(skill) + if(!ispath(skill)) + CRASH("Invalid get_skill_value call. Use typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. + if(!skill_levels) + return 0 + return skill_levels[skill] + /** * Grabs our affinity for a skill. !!This is a multiplier!! */ @@ -33,37 +51,42 @@ /** * Sets the value of a skill. */ -/datum/skill_holder/proc/set_skill_value(skill, value, owner) +/datum/skill_holder/proc/set_skill_value(skill, value, silent = FALSE) if(!ispath(skill, /datum/skill)) CRASH("Invalid set_skill_value call. Use typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. - var/datum/skill/S = GET_SKILL_DATUM(path) + var/datum/skill/S = GLOB.skill_datums[skill] value = S.sanitize_value(value) if(!isnull(value)) LAZYINITLIST(skills) - S.set_skill(src, value, owner) + S.set_skill_value(src, value, owner, silent) return TRUE return FALSE /** * Boosts a skill to a value if not aobve */ -/datum/skill_holder/proc/boost_skill_value_to(skill, value, mob/owner) +/datum/skill_holder/proc/boost_skill_value_to(skill, value, silent = FALSE) var/current = get_skill_value(skill) if(!is_skill_value_greater(skill, current, value)) return FALSE - set_skill_value(skill, value, owner) + set_skill_value(skill, value, silent) return TRUE /** * Automatic skill increase, multiplied by skill affinity if existing. * Only works if skill is numerical. */ -/datum/skill_holder/proc/auto_gain_experience(skill, value, mob/owner) +/datum/skill_holder/proc/auto_gain_experience(skill, value, maximum, silent = FALSE) if(!ispath(skill, /datum/skill/numerical)) CRASH("You cannot auto increment a non numerical skill!") var/current = get_skill_value(skill) var/affinity = get_skill_affinity(skill) - boost_skill_value_to(skill, current + (value * affinity), owner) + var/target_value = current + (value * affinity) + if(maximum) + target_value = max(target_value, maximum) + if(target_value == maximum) //no more experience to gain, early return. + return + boost_skill_value_to(skill, target_value, silent) /** * Generates a HTML readout of our skills. diff --git a/code/datums/skills/engineering.dm b/code/datums/skills/engineering.dm index c06accea77..b3eeb9d57d 100644 --- a/code/datums/skills/engineering.dm +++ b/code/datums/skills/engineering.dm @@ -1,3 +1,4 @@ -/datum/skill/experience/job/wiring +/datum/skill/level/job/wiring name = "Wiring" desc = "How proficient and knowledged you are at wiring beyond laying cables on the floor." + competency_thresholds = list(JOB_SKILL_BASIC, JOB_SKILL_EXPERT, JOB_SKILL_MASTER) diff --git a/code/datums/skills/medical.dm b/code/datums/skills/medical.dm index 3b67cacb04..1b0774b0ce 100644 --- a/code/datums/skills/medical.dm +++ b/code/datums/skills/medical.dm @@ -1,3 +1,4 @@ /datum/skill/numerical/surgery name = "Surgery" desc = "How proficient you are at doing surgery." + competency_mults = list(0.025, 0.025, 0.025) // 60% surgery speed up at max value of 100. diff --git a/code/datums/wires/_wires.dm b/code/datums/wires/_wires.dm index ad24126e45..fc31cb9286 100644 --- a/code/datums/wires/_wires.dm +++ b/code/datums/wires/_wires.dm @@ -33,6 +33,9 @@ var/list/assemblies = list() // List of attached assemblies. var/randomize = 0 // If every instance of these wires should be random. // Prevents wires from showing up in station blueprints + var/req_knowledge = INFINITY //wiring skill level on which the functions are revealed. + var/req_skill = JOB_SKILL_BASIC //used in user's cutting/pulsing/mending speed calculations. + var/list/current_users //list of untrained people currently interacting with this set of wires. /datum/wires/New(atom/holder) ..() @@ -130,8 +133,20 @@ cut_wires += wire on_cut(wire, mend = FALSE) -/datum/wires/proc/cut_color(color) +/datum/wires/proc/cut_color(color, mob/living/user) + LAZYINITLIST(current_users) + if(current_users[user]) + return FALSE + if(req_skill && user?.mind) + var/level_diff = req_skill - user.mind.skill_holder.get_skill_level(/datum/skill/level/job/wiring) + if(level_diff > 0) + to_chat(user, "You begin cutting [holder]'s [color] wire...") + if(!do_after(user, 1.5 SECONDS * level_diff, target = holder) || !interactable(user)) + return FALSE + user.mind?.skill_holder.auto_gain_experience(/datum/skill/level/job/wiring, DEF_SKILL_GAIN*level_diff) + to_chat(user, "You cut [holder]'s [color] wire.") cut(get_wire(color)) + return TRUE /datum/wires/proc/cut_random() cut(wires[rand(1, wires.len)]) @@ -146,7 +161,19 @@ on_pulse(wire, user) /datum/wires/proc/pulse_color(color, mob/living/user) + LAZYINITLIST(current_users) + if(current_users[user]) + return FALSE + if(req_skill && user?.mind) + var/level_diff = req_skill - user.mind.skill_holder.get_skill_level(/datum/skill/level/job/wiring) + if(level_diff > 0) + to_chat(user, "You begin pulsing [holder]'s [color] wire...") + if(!do_after(user, 1.5 SECONDS * level_diff, target = holder) || !interactable(user)) + return FALSE + user.mind?.skill_holder.auto_gain_experience(/datum/skill/level/job/wiring, DEF_SKILL_GAIN*level_diff) + to_chat(user, "You pulse [holder]'s [color] wire.") pulse(get_wire(color), user) + return TRUE /datum/wires/proc/pulse_assembly(obj/item/assembly/S) for(var/color in assemblies) @@ -224,7 +251,7 @@ var/reveal_wires = FALSE // Admin ghost can see a purpose of each wire. - if(IsAdminGhost(user)) + if(IsAdminGhost(user) || user.mind.skill_holder.get_skill_level(/datum/skill/level/job/wiring) >= req_knowledge) reveal_wires = TRUE // Same for anyone with an abductor multitool. @@ -259,18 +286,16 @@ if("cut") I = L.is_holding_tool_quality(TOOL_WIRECUTTER) if(I || IsAdminGhost(usr)) - if(I && holder) + if(cut_color(target_wire) && I && holder) I.play_tool_sound(holder, 20) - cut_color(target_wire) . = TRUE else to_chat(L, "You need wirecutters!") if("pulse") I = L.is_holding_tool_quality(TOOL_MULTITOOL) if(I || IsAdminGhost(usr)) - if(I && holder) + if(pulse_color(target_wire, L) && I && holder) I.play_tool_sound(holder, 20) - pulse_color(target_wire, L) . = TRUE else to_chat(L, "You need a multitool!") diff --git a/code/datums/wires/airalarm.dm b/code/datums/wires/airalarm.dm index 0c4715e27e..dae92d3c42 100644 --- a/code/datums/wires/airalarm.dm +++ b/code/datums/wires/airalarm.dm @@ -1,6 +1,7 @@ /datum/wires/airalarm holder_type = /obj/machinery/airalarm proper_name = "Air Alarm" + req_knowledge = JOB_SKILL_MASTER /datum/wires/airalarm/New(atom/holder) wires = list( diff --git a/code/datums/wires/airlock.dm b/code/datums/wires/airlock.dm index b6699540c3..c2b5db9540 100644 --- a/code/datums/wires/airlock.dm +++ b/code/datums/wires/airlock.dm @@ -52,10 +52,11 @@ /datum/wires/airlock/interactable(mob/user) var/obj/machinery/door/airlock/A = holder + if(!A.panel_open) + return FALSE if(!A.hasSiliconAccessInArea(user) && A.isElectrified() && A.shock(user, 100)) return FALSE - if(A.panel_open) - return TRUE + return TRUE /datum/wires/airlock/get_status() var/obj/machinery/door/airlock/A = holder diff --git a/code/datums/wires/apc.dm b/code/datums/wires/apc.dm index dc126f612e..997c77aa51 100644 --- a/code/datums/wires/apc.dm +++ b/code/datums/wires/apc.dm @@ -1,6 +1,7 @@ /datum/wires/apc holder_type = /obj/machinery/power/apc proper_name = "APC" + req_knowledge = JOB_SKILL_MASTER /datum/wires/apc/New(atom/holder) wires = list( diff --git a/code/datums/wires/autolathe.dm b/code/datums/wires/autolathe.dm index f83bab5910..01e87228d4 100644 --- a/code/datums/wires/autolathe.dm +++ b/code/datums/wires/autolathe.dm @@ -1,6 +1,7 @@ /datum/wires/autolathe holder_type = /obj/machinery/autolathe proper_name = "Autolathe" + req_knowledge = JOB_SKILL_EXPERT /datum/wires/autolathe/New(atom/holder) wires = list( diff --git a/code/datums/wires/emitter.dm b/code/datums/wires/emitter.dm index d0e1352c0e..6d82a7db5a 100644 --- a/code/datums/wires/emitter.dm +++ b/code/datums/wires/emitter.dm @@ -1,6 +1,8 @@ /datum/wires/emitter holder_type = /obj/machinery/power/emitter + req_knowledge = JOB_SKILL_TRAINED + req_skill = JOB_SKILL_UNTRAINED /datum/wires/emitter/New(atom/holder) wires = list(WIRE_ZAP,WIRE_HACK) diff --git a/code/datums/wires/explosive.dm b/code/datums/wires/explosive.dm index 3d1ed8b746..dc4db9e85d 100644 --- a/code/datums/wires/explosive.dm +++ b/code/datums/wires/explosive.dm @@ -15,6 +15,7 @@ /datum/wires/explosive/c4 holder_type = /obj/item/grenade/plastic/c4 randomize = TRUE //Same behaviour since no wire actually disarms it + req_skill = JOB_SKILL_UNTRAINED /datum/wires/explosive/c4/interactable(mob/user) var/obj/item/grenade/plastic/c4/P = holder @@ -29,6 +30,7 @@ /datum/wires/explosive/pizza holder_type = /obj/item/pizzabox randomize = TRUE + req_skill = JOB_SKILL_MASTER /datum/wires/explosive/pizza/New(atom/holder) wires = list( diff --git a/code/datums/wires/microwave.dm b/code/datums/wires/microwave.dm index 8c74abfa46..c6e6aa13b5 100644 --- a/code/datums/wires/microwave.dm +++ b/code/datums/wires/microwave.dm @@ -1,6 +1,8 @@ /datum/wires/microwave holder_type = /obj/machinery/microwave proper_name = "Microwave" + req_knowledge = JOB_SKILL_TRAINED + req_skill = JOB_SKILL_UNTRAINED /datum/wires/microwave/New(atom/holder) wires = list( diff --git a/code/datums/wires/mulebot.dm b/code/datums/wires/mulebot.dm index a452b46830..988487727b 100644 --- a/code/datums/wires/mulebot.dm +++ b/code/datums/wires/mulebot.dm @@ -1,6 +1,7 @@ /datum/wires/mulebot holder_type = /mob/living/simple_animal/bot/mulebot randomize = TRUE + req_knowledge = JOB_SKILL_MASTER /datum/wires/mulebot/New(atom/holder) wires = list( diff --git a/code/datums/wires/particle_accelerator.dm b/code/datums/wires/particle_accelerator.dm index af89f0d6f1..b782e589dd 100644 --- a/code/datums/wires/particle_accelerator.dm +++ b/code/datums/wires/particle_accelerator.dm @@ -1,6 +1,8 @@ /datum/wires/particle_accelerator/control_box holder_type = /obj/machinery/particle_accelerator/control_box proper_name = "Particle Accelerator" + req_knowledge = JOB_SKILL_EXPERT + req_skill = JOB_SKILL_TRAINED /datum/wires/particle_accelerator/control_box/New(atom/holder) wires = list( diff --git a/code/datums/wires/r_n_d.dm b/code/datums/wires/r_n_d.dm index ea61c1779e..25d3b73fe0 100644 --- a/code/datums/wires/r_n_d.dm +++ b/code/datums/wires/r_n_d.dm @@ -1,6 +1,7 @@ /datum/wires/rnd holder_type = /obj/machinery/rnd randomize = TRUE + req_knowledge = JOB_SKILL_EXPERT /datum/wires/rnd/New(atom/holder) wires = list( diff --git a/code/datums/wires/radio.dm b/code/datums/wires/radio.dm index a1118da6d7..5db6ddd186 100644 --- a/code/datums/wires/radio.dm +++ b/code/datums/wires/radio.dm @@ -1,6 +1,8 @@ /datum/wires/radio holder_type = /obj/item/radio proper_name = "Radio" + req_knowledge = JOB_SKILL_TRAINED + req_skill = JOB_SKILL_UNTRAINED /datum/wires/radio/New(atom/holder) wires = list( diff --git a/code/datums/wires/robot.dm b/code/datums/wires/robot.dm index aa7c3cc4c3..6ede0415da 100644 --- a/code/datums/wires/robot.dm +++ b/code/datums/wires/robot.dm @@ -1,6 +1,8 @@ /datum/wires/robot holder_type = /mob/living/silicon/robot randomize = TRUE + req_knowledge = JOB_SKILL_MASTER + req_skill = JOB_SKILL_TRAINED /datum/wires/robot/New(atom/holder) wires = list( diff --git a/code/datums/wires/suit_storage_unit.dm b/code/datums/wires/suit_storage_unit.dm index eb7781203b..4387d0dc76 100644 --- a/code/datums/wires/suit_storage_unit.dm +++ b/code/datums/wires/suit_storage_unit.dm @@ -1,6 +1,8 @@ /datum/wires/suit_storage_unit holder_type = /obj/machinery/suit_storage_unit proper_name = "Suit Storage Unit" + req_knowledge = JOB_SKILL_TRAINED + req_skill = JOB_SKILL_UNTRAINED /datum/wires/suit_storage_unit/New(atom/holder) wires = list( diff --git a/code/datums/wires/syndicatebomb.dm b/code/datums/wires/syndicatebomb.dm index 53c1a1b9bc..8e1cf5002f 100644 --- a/code/datums/wires/syndicatebomb.dm +++ b/code/datums/wires/syndicatebomb.dm @@ -1,6 +1,8 @@ /datum/wires/syndicatebomb holder_type = /obj/machinery/syndicatebomb randomize = TRUE + req_skill = JOB_SKILL_EXPERT //good luck, wannabe hero. + /datum/wires/syndicatebomb/New(atom/holder) wires = list( diff --git a/code/datums/wires/tesla_coil.dm b/code/datums/wires/tesla_coil.dm index fa858a9a8f..68fe8e72fc 100644 --- a/code/datums/wires/tesla_coil.dm +++ b/code/datums/wires/tesla_coil.dm @@ -2,6 +2,7 @@ /datum/wires/tesla_coil randomize = 1 //Only one wire don't need blueprints holder_type = /obj/machinery/power/tesla_coil + req_knowledge = JOB_SKILL_TRAINED /datum/wires/tesla_coil/New(atom/holder) wires = list(WIRE_ZAP) diff --git a/code/datums/wires/vending.dm b/code/datums/wires/vending.dm index 114791e873..6c7e59c24c 100644 --- a/code/datums/wires/vending.dm +++ b/code/datums/wires/vending.dm @@ -1,6 +1,7 @@ /datum/wires/vending holder_type = /obj/machinery/vending proper_name = "Vending Unit" + req_knowledge = JOB_SKILL_EXPERT /datum/wires/vending/New(atom/holder) wires = list( diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index 1766391709..b6af0600e4 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -48,8 +48,7 @@ if(2) // State 2 if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/C = W - if(C.use(2)) + if(W.use_tool(src, user, 0, 2)) to_chat(user, "You add wires to the assembly.") state = 3 else diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index b007bc0161..5ee8223625 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -83,7 +83,6 @@ if(istype(P, /obj/item/stack/cable_coil)) if(!P.tool_start_check(user, amount=5)) return - to_chat(user, "You start to add cables to the frame...") if(P.use_tool(src, user, 20, volume=50, amount=5)) to_chat(user, "You add cables to the frame.") diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index 1b83bb4b96..28b9796bb6 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -400,12 +400,11 @@ "You begin adding wires to [src]...") playsound(get_turf(src), 'sound/items/deconstruct.ogg', 50, 1) if(do_after(user, 60, target = src)) - if(constructionStep != CONSTRUCTION_GUTTED || B.get_amount() < 5 || !B) + if(constructionStep != CONSTRUCTION_GUTTED || !B.use_tool(src, user, 0, 5)) return user.visible_message("[user] adds wires to [src].", \ "You wire [src].") playsound(get_turf(src), 'sound/items/deconstruct.ogg', 50, 1) - B.use(5) constructionStep = CONSTRUCTION_WIRES_EXPOSED update_icon() return diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index f4f308c490..4a0042e1da 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -205,11 +205,9 @@ return if(1) if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/coil = W - if(coil.get_amount() < 5) + if(!W.use_tool(src, user, 0, 5)) to_chat(user, "You need more cable for this!") else - coil.use(5) buildstage = 2 to_chat(user, "You wire \the [src].") update_icon() diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm index 34db7b0e08..6793d361b5 100644 --- a/code/game/machinery/shieldgen.dm +++ b/code/game/machinery/shieldgen.dm @@ -160,10 +160,7 @@ to_chat(user, "You need one length of cable to repair [src]!") return to_chat(user, "You begin to replace the wires...") - if(do_after(user, 30, target = src)) - if(coil.get_amount() < 1) - return - coil.use(1) + if(W.use_tool(src, user, 30, 1)) obj_integrity = max_integrity stat &= ~BROKEN to_chat(user, "You repair \the [src].") diff --git a/code/game/mecha/mecha_defense.dm b/code/game/mecha/mecha_defense.dm index 581283d339..53768fe9a9 100644 --- a/code/game/mecha/mecha_defense.dm +++ b/code/game/mecha/mecha_defense.dm @@ -220,8 +220,7 @@ return else if(istype(W, /obj/item/stack/cable_coil)) if(state == 3 && (internal_damage & MECHA_INT_SHORT_CIRCUIT)) - var/obj/item/stack/cable_coil/CC = W - if(CC.use(2)) + if(W.use_tool(src, user, 0, 2)) clearInternalDamage(MECHA_INT_SHORT_CIRCUIT) to_chat(user, "You replace the fused wires.") else diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index c8e5b15f72..9d3cc8293b 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -132,6 +132,12 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) var/list/grind_results //A reagent list containing the reagents this item produces when ground up in a grinder - this can be an empty list to allow for reagent transferring only var/list/juice_results //A reagent list containing blah blah... but when JUICED in a grinder! + ///Skills vars + var/used_skills //path/s of skill/s exercised when using this item. + var/skill_flags = NONE //better defines which tasks the the skill/s is/are exercised on. + var/skill_difficulty = THRESHOLD_COMPETENT //how difficult it's to use this item in general. + var/skill_gain = DEF_SKILL_GAIN //base skill value gain from using this item. + /obj/item/Initialize() if (attack_verb) @@ -783,7 +789,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) // Called when a mob tries to use the item as a tool. // Handles most checks. -/obj/item/proc/use_tool(atom/target, mob/living/user, delay, amount=0, volume=0, datum/callback/extra_checks) +/obj/item/proc/use_tool(atom/target, mob/living/user, delay, amount=0, volume=0, datum/callback/extra_checks, skill_gain_mult = 1, max_level = INFINITY) // No delay means there is no start message, and no reason to call tool_start_check before use_tool. // Run the start check here so we wouldn't have to call it manually. if(!delay && !tool_start_check(user, amount)) @@ -795,6 +801,9 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) play_tool_sound(target, volume) if(delay) + if(user.mind && used_skills && skill_flags & SKILL_USE_TOOL) + LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, delay, skill_difficulty) + // Create a callback with checks that would be called every tick by do_after. var/datum/callback/tool_check = CALLBACK(src, .proc/tool_check_callback, user, amount, extra_checks) @@ -819,6 +828,13 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) if(delay >= MIN_TOOL_SOUND_DELAY) play_tool_sound(target, volume) + if(user.mind && used_skills && skill_flags & SKILL_TRAINING_TOOL && skill_gain_mult) + if(!islist(used_skills)) + user.mind.skill_holder.boost_skill_value_to(used_skills, skill_gain*skill_gain_mult, GET_STANDARD_LVL(max_level)) + else + for(var/skill in used_skills) + user.mind.skill_holder.boost_skill_value_to(skill, skill_gain*skill_gain_mult, GET_STANDARD_LVL(max_level)) + return TRUE // Called before use_tool if there is a delay, or by use_tool if there isn't. diff --git a/code/game/objects/items/grenades/chem_grenade.dm b/code/game/objects/items/grenades/chem_grenade.dm index acd71c57ac..91dde2899d 100644 --- a/code/game/objects/items/grenades/chem_grenade.dm +++ b/code/game/objects/items/grenades/chem_grenade.dm @@ -97,8 +97,7 @@ to_chat(user, "You add [A] to the [initial(name)] assembly.") else if(stage == EMPTY && istype(I, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/C = I - if (C.use(1)) + if (I.use_tool(src, user, 0, 1, max_level = JOB_SKILL_BASIC)) det_time = 50 // In case the cable_coil was removed and readded. stage_change(WIRED) to_chat(user, "You rig the [initial(name)] assembly.") diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index c8ee6b05c7..1648598c4e 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -69,7 +69,7 @@ GLOBAL_LIST_INIT(glass_recipes, list ( \ if (get_amount() < 1 || CC.get_amount() < 5) to_chat(user, "You attach wire to the [name].") var/obj/item/stack/light_w/new_tile = new(user.loc) diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm index 3e35c12314..1090bae9f8 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -131,7 +131,7 @@ if(C.get_amount() >= 5) playsound(loc, 'sound/items/deconstruct.ogg', 50, 1) to_chat(user, "You start to add cables to the frame...") - if(do_after(user, 20, target = src) && state == SCREWED_CORE && C.use(5)) + if(do_after(user, 20, target = src) && state == SCREWED_CORE && C.use_tool(src, user, 0, 5)) to_chat(user, "You add cables to the frame.") state = CABLED_CORE update_icon() diff --git a/code/game/objects/structures/barsigns.dm b/code/game/objects/structures/barsigns.dm index d2fff9649d..821409c26b 100644 --- a/code/game/objects/structures/barsigns.dm +++ b/code/game/objects/structures/barsigns.dm @@ -84,7 +84,6 @@ panel_open = FALSE else if(istype(I, /obj/item/stack/cable_coil) && panel_open) - var/obj/item/stack/cable_coil/C = I if(obj_flags & EMAGGED) //Emagged, not broken by EMP to_chat(user, "Sign has been damaged beyond repair!") return @@ -92,7 +91,7 @@ to_chat(user, "This sign is functioning properly!") return - if(C.use(2)) + if(I.use_tool(src, user, 0, 2)) to_chat(user, "You replace the burnt wiring.") broken = FALSE else diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 04c3909696..4544cab3da 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -169,8 +169,7 @@ if(do_after(user, 40, target = src)) if(!src || !anchored || src.state != "01") return - var/obj/item/stack/cable_coil/CC = W - if(!CC.use(1)) + if(!W.use_tool(src, user, 0, 1)) to_chat(user, "You need more cable to do this!") return to_chat(user, "You wire the windoor.") diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index a4617462fe..0838c7b091 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -786,9 +786,8 @@ return user.visible_message("[user.name] wires the air alarm.", \ "You start wiring the air alarm...") - if (do_after(user, 20, target = src)) - if (cable.get_amount() >= 5 && buildstage == 1) - cable.use(5) + if (W.use_tool(src, user, 20, 5)) + if (buildstage == 1) to_chat(user, "You wire the air alarm.") wires.repair() aidisabled = 0 diff --git a/code/modules/clothing/under/_under.dm b/code/modules/clothing/under/_under.dm index 0d08b59be9..11fdb47eb6 100644 --- a/code/modules/clothing/under/_under.dm +++ b/code/modules/clothing/under/_under.dm @@ -32,7 +32,7 @@ /obj/item/clothing/under/attackby(obj/item/I, mob/user, params) if((has_sensor == BROKEN_SENSORS) && istype(I, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = I - C.use(1) + I.use_tool(src, user, 0, 1) has_sensor = HAS_SENSORS to_chat(user,"You repair the suit sensors on [src] with [C].") return 1 diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index ef2eff707f..b18f4396d6 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -392,8 +392,7 @@ /datum/plant_gene/trait/battery/on_attackby(obj/item/reagent_containers/food/snacks/grown/G, obj/item/I, mob/user) if(istype(I, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/C = I - if(C.use(5)) + if(I.use_tool(src, user, 0, 5, max_level = JOB_SKILL_EXPERT)) to_chat(user, "You add some cable to [G] and slide it inside the battery encasing.") var/obj/item/stock_parts/cell/potato/pocell = new /obj/item/stock_parts/cell/potato(user.loc) pocell.icon_state = G.icon_state diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index e40c278e92..e10f009cec 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -174,7 +174,7 @@ if(!starting_skills) return for(var/skill in starting_skills) - M.skill_holder.boost_skill_value_to(skill, starting_skills[skill]) + M.skill_holder.boost_skill_value_to(skill, starting_skills[skill], TRUE) //silent // do wipe affinities though M.skill_holder.skill_affinities = list() for(var/skill in skill_affinities) diff --git a/code/modules/jobs/job_types/ai.dm b/code/modules/jobs/job_types/ai.dm index efe574ab66..1395b90b39 100644 --- a/code/modules/jobs/job_types/ai.dm +++ b/code/modules/jobs/job_types/ai.dm @@ -17,6 +17,8 @@ var/do_special_check = TRUE threat = 5 + starting_skills = list(/datum/skill/level/job/wiring = GET_STANDARD_LVL(JOB_SKILL_BASIC)) + /datum/job/ai/equip(mob/living/carbon/human/H, visualsOnly, announce, latejoin, datum/outfit/outfit_override, client/preference_source = null) if(visualsOnly) CRASH("dynamic preview is unsupported") diff --git a/code/modules/jobs/job_types/atmospheric_technician.dm b/code/modules/jobs/job_types/atmospheric_technician.dm index 019e50799e..770cbe3bda 100644 --- a/code/modules/jobs/job_types/atmospheric_technician.dm +++ b/code/modules/jobs/job_types/atmospheric_technician.dm @@ -17,6 +17,10 @@ ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_ATMOSPHERICS, ACCESS_MAINT_TUNNELS, ACCESS_EXTERNAL_AIRLOCKS, ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_EMERGENCY_STORAGE, ACCESS_CONSTRUCTION, ACCESS_MINERAL_STOREROOM) + + starting_skills = list(/datum/skill/level/job/wiring = GET_STANDARD_LVL(JOB_SKILL_BASIC)) + skill_affinities = list(/datum/skill/level/job/wiring = STARTING_SKILL_AFFINITY_WIRING_ENGI_ROBO) + display_order = JOB_DISPLAY_ORDER_ATMOSPHERIC_TECHNICIAN threat = 0.5 diff --git a/code/modules/jobs/job_types/chief_engineer.dm b/code/modules/jobs/job_types/chief_engineer.dm index 0d70e872ac..bd4732f3c3 100644 --- a/code/modules/jobs/job_types/chief_engineer.dm +++ b/code/modules/jobs/job_types/chief_engineer.dm @@ -27,6 +27,9 @@ ACCESS_HEADS, ACCESS_CONSTRUCTION, ACCESS_SEC_DOORS, ACCESS_MINISAT, ACCESS_CE, ACCESS_RC_ANNOUNCE, ACCESS_KEYCARD_AUTH, ACCESS_TCOMSAT, ACCESS_MINERAL_STOREROOM) + starting_skills = list(/datum/skill/level/job/wiring = GET_STANDARD_LVL(JOB_SKILL_TRAINED)) + skill_affinities = list(/datum/skill/level/job/wiring = STARTING_SKILL_AFFINITY_WIRING_ENGI_ROBO) + display_order = JOB_DISPLAY_ORDER_CHIEF_ENGINEER blacklisted_quirks = list(/datum/quirk/mute, /datum/quirk/brainproblems, /datum/quirk/paraplegic, /datum/quirk/insanity) threat = 2 diff --git a/code/modules/jobs/job_types/cyborg.dm b/code/modules/jobs/job_types/cyborg.dm index f84bd0d8d6..d88d888aec 100644 --- a/code/modules/jobs/job_types/cyborg.dm +++ b/code/modules/jobs/job_types/cyborg.dm @@ -12,6 +12,8 @@ exp_requirements = 120 exp_type = EXP_TYPE_CREW + starting_skills = list(/datum/skill/level/job/wiring = GET_STANDARD_LVL(JOB_SKILL_BASIC)) + display_order = JOB_DISPLAY_ORDER_CYBORG /datum/job/cyborg/equip(mob/living/carbon/human/H, visualsOnly = FALSE, announce = TRUE, latejoin = FALSE, datum/outfit/outfit_override = null, client/preference_source = null) diff --git a/code/modules/jobs/job_types/roboticist.dm b/code/modules/jobs/job_types/roboticist.dm index f9f1d20d3b..d9e891f057 100644 --- a/code/modules/jobs/job_types/roboticist.dm +++ b/code/modules/jobs/job_types/roboticist.dm @@ -16,6 +16,10 @@ access = list(ACCESS_ROBOTICS, ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM, ACCESS_XENOBIOLOGY, ACCESS_GENETICS) minimal_access = list(ACCESS_ROBOTICS, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM) + starting_skills = list(/datum/skill/level/job/wiring = GET_STANDARD_LVL(JOB_SKILL_TRAINED)) + skill_affinities = list(/datum/skill/level/job/wiring = STARTING_SKILL_AFFINITY_WIRING_ENGI_ROBO) + + display_order = JOB_DISPLAY_ORDER_ROBOTICIST threat = 1 diff --git a/code/modules/jobs/job_types/station_engineer.dm b/code/modules/jobs/job_types/station_engineer.dm index 66ddc90e9b..c5280d72db 100644 --- a/code/modules/jobs/job_types/station_engineer.dm +++ b/code/modules/jobs/job_types/station_engineer.dm @@ -18,6 +18,9 @@ minimal_access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS, ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_TCOMSAT, ACCESS_MINERAL_STOREROOM) + starting_skills = list(/datum/skill/level/job/wiring = GET_STANDARD_LVL(JOB_SKILL_TRAINED)) + skill_affinities = list(/datum/skill/level/job/wiring = STARTING_SKILL_AFFINITY_WIRING_ENGI_ROBO) + display_order = JOB_DISPLAY_ORDER_STATION_ENGINEER threat = 1 diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm index c7c34b0389..a0c2cc73e8 100644 --- a/code/modules/mining/ores_coins.dm +++ b/code/modules/mining/ores_coins.dm @@ -364,12 +364,11 @@ GLOBAL_LIST_INIT(sand_recipes, list(\ /obj/item/coin/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/CC = W if(string_attached) to_chat(user, "There already is a string attached to this coin!") return - if (CC.use(1)) + if (W.use_tool(src, user, 0, 1, max_level = JOB_SKILL_BASIC)) add_overlay("coin_string_overlay") string_attached = 1 to_chat(user, "You attach a string to the coin.") diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index 9c4f0316b7..42e702c5d9 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -9,7 +9,7 @@ if(istype(src.glasses, /obj/item/clothing/glasses)) //glasses var/obj/item/clothing/glasses/GFP = src.glasses number += GFP.flash_protect - + if(istype(src.wear_mask, /obj/item/clothing/mask)) //mask var/obj/item/clothing/mask/MFP = src.wear_mask number += MFP.flash_protect @@ -77,15 +77,13 @@ SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "embedded", /datum/mood_event/embedded) /mob/living/carbon/attacked_by(obj/item/I, mob/living/user) - //CIT CHANGES START HERE - combatmode and resting checks - var/totitemdamage = I.force + var/totitemdamage = pre_attacked_by(I, user, TRUE) if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) totitemdamage *= 0.5 if(!CHECK_MOBILITY(user, MOBILITY_STAND)) totitemdamage *= 0.5 if(!(combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) totitemdamage *= 1.5 - //CIT CHANGES END HERE var/impacting_zone = (user == src)? check_zone(user.zone_selected) : ran_zone(user.zone_selected) if((user != src) && (run_block(I, totitemdamage, "the [I]", ATTACK_TYPE_MELEE, I.armour_penetration, user, impacting_zone) & BLOCK_SUCCESS)) return FALSE diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 683c3e18fd..124f862244 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1712,9 +1712,10 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) disarm(M, H, attacker_style) /datum/species/proc/spec_attacked_by(obj/item/I, mob/living/user, obj/item/bodypart/affecting, intent, mob/living/carbon/human/H) + var/totitemdamage = H.pre_attacked_by(I, user, TRUE) // Allows you to put in item-specific reactions based on species if(user != H) - if(H.run_block(I, I.force, "the [I.name]", ATTACK_TYPE_MELEE, I.armour_penetration, user, affecting.body_zone) & BLOCK_SUCCESS) + if(H.run_block(I, totitemdamage, "the [I.name]", ATTACK_TYPE_MELEE, I.armour_penetration, user, affecting.body_zone) & BLOCK_SUCCESS) return 0 if(H.check_martial_melee_block()) H.visible_message("[H] blocks [I]!") @@ -1730,16 +1731,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/armor_block = H.run_armor_check(affecting, "melee", "Your armor has protected your [hit_area].", "Your armor has softened a hit to your [hit_area].",I.armour_penetration) armor_block = min(90,armor_block) //cap damage reduction at 90% var/Iforce = I.force //to avoid runtimes on the forcesay checks at the bottom. Some items might delete themselves if you drop them. (stunning yourself, ninja swords) - //CIT CHANGES START HERE - combatmode and resting checks - var/totitemdamage = I.force - if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) - totitemdamage *= 0.5 - if(!CHECK_MOBILITY(user, MOBILITY_STAND)) - totitemdamage *= 0.5 - if(istype(H)) - if(!(H.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) - totitemdamage *= 1.5 - //CIT CHANGES END HERE var/weakness = H.check_weakness(I, user) apply_damage(totitemdamage * weakness, I.damtype, def_zone, armor_block, H) //CIT CHANGE - replaces I.force with totitemdamage @@ -1747,7 +1738,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) I.do_stagger_action(H, user) - if(!I.force) + if(!totitemdamage) return 0 //item force is zero //dismemberment diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index b389e386d4..508dc67dd7 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -427,24 +427,23 @@ else if(istype(W, /obj/item/stack/cable_coil) && wiresexposed) user.changeNext_move(CLICK_CD_MELEE) - var/obj/item/stack/cable_coil/coil = W if (getFireLoss() > 0 || getToxLoss() > 0) - if(src == user && coil.use(1)) + if(src == user) to_chat(user, "You start fixing yourself...") - if(!do_after(user, 50, target = src)) + if(!W.use_tool(src, user, 50, 1, max_level = JOB_SKILL_TRAINED)) + to_chat(user, "You need more cable to repair [src]!") return adjustFireLoss(-10) adjustToxLoss(-10) - if (coil.use(1)) + else to_chat(user, "You start fixing [src]...") - if(!do_after(user, 30, target = src)) + if(!W.use_tool(src, user, 30, 1)) + to_chat(user, "You need more cable to repair [src]!") return adjustFireLoss(-30) adjustToxLoss(-30) updatehealth() user.visible_message("[user] has fixed some of the burnt wires on [src].", "You fix some of the burnt wires on [src].") - else - to_chat(user, "You need more cable to repair [src]!") else to_chat(user, "The wires seem fine, there's no need to fix them.") diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index 6c4680a477..08fffc2cf8 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -147,9 +147,8 @@ to_chat(user, "You need one length of cable to wire the ED-209!") return to_chat(user, "You start to wire [src]...") - if(do_after(user, 40, target = src)) - if(coil.get_amount() >= 1 && build_step == 6) - coil.use(1) + if(coil.use_tool(src, user, 40, 1)) + if(build_step == 6) to_chat(user, "You wire [src].") name = "wired ED-209 assembly" build_step++ diff --git a/code/modules/modular_computers/hardware/_hardware.dm b/code/modules/modular_computers/hardware/_hardware.dm index 744db1572f..37f3fc434e 100644 --- a/code/modules/modular_computers/hardware/_hardware.dm +++ b/code/modules/modular_computers/hardware/_hardware.dm @@ -41,11 +41,10 @@ // Cable coil. Works as repair method, but will probably require multiple applications and more cable. if(istype(I, /obj/item/stack/cable_coil)) - var/obj/item/stack/S = I if(obj_integrity == max_integrity) to_chat(user, "\The [src] doesn't seem to require repairs.") return 1 - if(S.use(1)) + if(I.use_tool(src, user, 0, 1)) to_chat(user, "You patch up \the [src] with a bit of \the [I].") obj_integrity = min(obj_integrity + 10, max_integrity) return 1 diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 7eabeafcb1..977a6484b7 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -593,19 +593,15 @@ user.visible_message("[user.name] adds cables to the APC frame.", \ "You start adding cables to the APC frame...") playsound(src.loc, 'sound/items/deconstruct.ogg', 50, 1) - if(do_after(user, 20, target = src)) - if (C.get_amount() < 10 || !C) + if(C.use_tool(src, user, 20, 10) && !terminal && opened && has_electronics) + var/turf/T = get_turf(src) + var/obj/structure/cable/N = T.get_cable_node() + if (prob(50) && electrocute_mob(usr, N, N, 1, TRUE)) + do_sparks(5, TRUE, src) return - if (C.get_amount() >= 10 && !terminal && opened && has_electronics) - var/turf/T = get_turf(src) - var/obj/structure/cable/N = T.get_cable_node() - if (prob(50) && electrocute_mob(usr, N, N, 1, TRUE)) - do_sparks(5, TRUE, src) - return - C.use(10) - to_chat(user, "You add cables to the APC frame.") - make_terminal() - terminal.connect_to_network() + to_chat(user, "You add cables to the APC frame.") + make_terminal() + terminal.connect_to_network() else if (istype(W, /obj/item/electronics/apc) && opened) if (has_electronics) to_chat(user, "There is already a board inside the [src]!") diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index eecc1394de..1e2650d17f 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -495,6 +495,8 @@ By design, d1 is the smallest direction and d2 is the highest full_w_class = WEIGHT_CLASS_SMALL grind_results = list(/datum/reagent/copper = 2) //2 copper per cable in the coil usesound = 'sound/items/deconstruct.ogg' + used_skills = /datum/skill/level/job/wiring + skill_flags = SKILL_USE_TOOL|SKILL_TRAINING_TOOL /obj/item/stack/cable_coil/cyborg is_cyborg = 1 @@ -576,8 +578,6 @@ By design, d1 is the smallest direction and d2 is the highest amount += extra update_icon() - - /////////////////////////////////////////////// // Cable laying procedures ////////////////////////////////////////////// diff --git a/code/modules/power/floodlight.dm b/code/modules/power/floodlight.dm index 9fb1a1ce7d..e0b3f5f316 100644 --- a/code/modules/power/floodlight.dm +++ b/code/modules/power/floodlight.dm @@ -15,8 +15,7 @@ state = FLOODLIGHT_NEEDS_WIRES desc = "A bare metal frame looking vaguely like a floodlight. Requires wiring." else if(istype(O, /obj/item/stack/cable_coil) && (state == FLOODLIGHT_NEEDS_WIRES)) - var/obj/item/stack/S = O - if(S.use(5)) + if(O.use_tool(src, user, 0, 5)) to_chat(user, "You wire [src].") name = "wired [name]" desc = "A bare metal frame looking vaguely like a floodlight. Requires securing with a screwdriver." diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 7ad9f3a6ce..2f7f9ad729 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -118,8 +118,7 @@ return if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/coil = W - if(coil.use(1)) + if(W.use_tool(src, user, 0, 1, max_level = JOB_SKILL_TRAINED)) icon_state = "[fixture_type]-construct-stage2" stage = 2 user.visible_message("[user.name] adds wires to [src].", \ diff --git a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm index 59792b6539..e33116b02c 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm @@ -79,8 +79,7 @@ construction_state = PA_CONSTRUCTION_UNSECURED did_something = TRUE else if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/CC = W - if(CC.use(1)) + if(W.use_tool(src, user, 0, 1)) user.visible_message("[user.name] adds wires to the [name].", \ "You add some wires.") construction_state = PA_CONSTRUCTION_PANEL_OPEN diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm index af83f7ebca..957ceb986f 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_control.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm @@ -288,8 +288,7 @@ construction_state = PA_CONSTRUCTION_UNSECURED did_something = TRUE else if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/CC = W - if(CC.use(1)) + if(W.use_tool(src, user, 0, 1)) user.visible_message("[user.name] adds wires to the [name].", \ "You add some wires.") construction_state = PA_CONSTRUCTION_PANEL_OPEN diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 41ed28f0a5..85999707a2 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -125,15 +125,12 @@ to_chat(user, "You start building the power terminal...") playsound(src.loc, 'sound/items/deconstruct.ogg', 50, 1) - if(do_after(user, 20, target = src) && C.get_amount() >= 10) - if(C.get_amount() < 10 || !C) - return + if(C.use_tool(src, user, 20, 10)) var/obj/structure/cable/N = T.get_cable_node() //get the connecting node cable, if there's one if (prob(50) && electrocute_mob(usr, N, N, 1, TRUE)) //animate the electrocution if uncautious and unlucky do_sparks(5, TRUE, src) return - C.use(10) user.visible_message(\ "[user.name] has built a power terminal.",\ "You build the power terminal.") diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm index b43ac3057a..afe2b9ca3e 100644 --- a/code/modules/projectiles/guns/ballistic/revolver.dm +++ b/code/modules/projectiles/guns/ballistic/revolver.dm @@ -331,8 +331,7 @@ /obj/item/gun/ballistic/revolver/doublebarrel/improvised/attackby(obj/item/A, mob/user, params) ..() if(istype(A, /obj/item/stack/cable_coil) && !sawn_off) - var/obj/item/stack/cable_coil/C = A - if(C.use(10)) + if(A.use_tool(src, user, 0, 10, max_level = JOB_SKILL_BASIC)) slot_flags = ITEM_SLOT_BACK to_chat(user, "You tie the lengths of cable to the shotgun, making a sling.") slung = TRUE diff --git a/code/modules/surgery/bodyparts/robot_bodyparts.dm b/code/modules/surgery/bodyparts/robot_bodyparts.dm index a3f8b883b4..39e660203e 100644 --- a/code/modules/surgery/bodyparts/robot_bodyparts.dm +++ b/code/modules/surgery/bodyparts/robot_bodyparts.dm @@ -19,7 +19,7 @@ flags_1 = CONDUCT_1 icon_state = "borg_l_arm" status = BODYPART_ROBOTIC - + brute_reduction = 2 burn_reduction = 1 @@ -40,7 +40,7 @@ flags_1 = CONDUCT_1 icon_state = "borg_r_arm" status = BODYPART_ROBOTIC - + brute_reduction = 2 burn_reduction = 1 @@ -61,7 +61,7 @@ flags_1 = CONDUCT_1 icon_state = "borg_l_leg" status = BODYPART_ROBOTIC - + brute_reduction = 2 burn_reduction = 1 @@ -82,7 +82,7 @@ flags_1 = CONDUCT_1 icon_state = "borg_r_leg" status = BODYPART_ROBOTIC - + brute_reduction = 2 burn_reduction = 1 @@ -102,7 +102,7 @@ flags_1 = CONDUCT_1 icon_state = "borg_chest" status = BODYPART_ROBOTIC - + brute_reduction = 2 burn_reduction = 1 @@ -131,8 +131,7 @@ if(src.wired) to_chat(user, "You have already inserted wire!") return - var/obj/item/stack/cable_coil/coil = W - if (coil.use(1)) + if (W.use_tool(src, user, 0, 1)) src.wired = 1 to_chat(user, "You insert the wire.") else @@ -164,7 +163,7 @@ flags_1 = CONDUCT_1 icon_state = "borg_head" status = BODYPART_ROBOTIC - + brute_reduction = 5 burn_reduction = 4 diff --git a/code/modules/surgery/surgery_step.dm b/code/modules/surgery/surgery_step.dm index 7127b41ee3..23dffdea87 100644 --- a/code/modules/surgery/surgery_step.dm +++ b/code/modules/surgery/surgery_step.dm @@ -58,10 +58,9 @@ return FALSE if(tool) speed_mod = tool.toolspeed - var/skill_mod = 1 - if(user?.mind?.skill_holder) - skill_mod = SURGERY_SKILL_SPEEDUP_NUMERICAL_SCALE(user.mind.skill_holder.get_skill_value(/datum/skill/numerical/surgery)) - if(do_after(user, time * speed_mod * skill_mod, target = target)) + if(user.mind) + SKILL_MODIFIER(GLOB.skill_datums[/datum/skill/numerical/surgery], user.mind.skill_holder, speed_mod, THRESHOLD_COMPETENT) + if(do_after(user, time * speed_mod, target = target)) var/prob_chance = 100 if(implement_type) //this means it isn't a require hand or any item step. prob_chance = implements[implement_type] @@ -69,7 +68,7 @@ if((prob(prob_chance) || (iscyborg(user) && !silicons_obey_prob)) && chem_check(target) && !try_to_fail) if(success(user, target, target_zone, tool, surgery)) - user?.mind?.skill_holder?.auto_gain_experience(/datum/skill/numerical/surgery, SKILL_GAIN_SURGERY_PER_STEP) + user.mind?.skill_holder.auto_gain_experience(/datum/skill/numerical/surgery, SKILL_GAIN_SURGERY_PER_STEP) advance = TRUE else if(failure(user, target, target_zone, tool, surgery)) diff --git a/tgstation.dme b/tgstation.dme index 68ae7669f3..8245ef02f4 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -125,7 +125,8 @@ #include "code\__DEFINES\dcs\signals.dm" #include "code\__DEFINES\flags\shields.dm" #include "code\__DEFINES\misc\return_values.dm" -#include "code\__DEFINES\skills\skills.dm" +#include "code\__DEFINES\skills\defines.dm" +#include "code\__DEFINES\skills\helpers.dm" #include "code\__HELPERS\_cit_helpers.dm" #include "code\__HELPERS\_lists.dm" #include "code\__HELPERS\_logging.dm" From 0adca2d9b85767efc17fb05ceabf32c6205f16e9 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 04:45:43 +0200 Subject: [PATCH 09/89] Oh. --- code/_onclick/item_attack.dm | 10 +++++----- code/modules/mob/living/carbon/carbon_defense.dm | 2 +- code/modules/mob/living/carbon/human/species.dm | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index dbcf171663..17d1e07d91 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -114,7 +114,7 @@ var/totitemdamage = I.force if(I.used_skills && user.mind) if(I.skill_flags & SKILL_ATTACK_OBJ) - LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, totitemdamage, I.skill_difficulty) + LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, totitemdamage, I.skill_difficulty) if(I.skill_flags & SKILL_TRAIN_ATTACK_OBJ) if(!islist(I.used_skills)) user.mind.skill_holder.boost_skill_value_to(used_skills, I.skill_gain) @@ -128,7 +128,7 @@ take_damage(totitemdamage, I.damtype, "melee", 1) /mob/living/attacked_by(obj/item/I, mob/living/user) - var/totitemdamage = calculate_item_force(I, user, TRUE) + var/totitemdamage = calculate_item_force(I, user) if((user != src) && run_block(I, totitemdamage, "the [I.name]", ATTACK_TYPE_MELEE, I.armour_penetration, user) & BLOCK_SUCCESS) return FALSE send_item_attack_message(I, user) @@ -150,7 +150,7 @@ else return ..() -/mob/living/proc/pre_attacked_by(obj/item/I, mob/living/user, pre_attack = FALSE) +/mob/living/proc/pre_attacked_by(obj/item/I, mob/living/user) . = I.force if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) . *= 0.5 @@ -159,7 +159,7 @@ if(!pre_attack || !user.mind || !I.used_skills) return if(. && I.skill_flags & SKILL_ATTACK_MOB) - LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, ., I.skill_difficulty) + LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, ., I.skill_difficulty) if(I.skill_flags & SKILL_TRAIN_ATTACK_MOB) if(!islist(I.used_skills)) user.mind.skill_holder.boost_skill_value_to(used_skills, I.skill_gain) @@ -167,7 +167,7 @@ for(var/skill in used_skills) user.mind.skill_holder.boost_skill_value_to(skill, I.skill_gain) -/mob/living/carbon/proc/pre_attacked_by(obj/item/I, mob/living/user, pre_attack = FALSE) +/mob/living/carbon/pre_attacked_by(obj/item/I, mob/living/user) . = ..() if(!(combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) . *= 1.5 diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index 42e702c5d9..f1d3cf0356 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -77,7 +77,7 @@ SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "embedded", /datum/mood_event/embedded) /mob/living/carbon/attacked_by(obj/item/I, mob/living/user) - var/totitemdamage = pre_attacked_by(I, user, TRUE) + var/totitemdamage = pre_attacked_by(I, user) if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) totitemdamage *= 0.5 if(!CHECK_MOBILITY(user, MOBILITY_STAND)) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 124f862244..71cdcd3f38 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1712,7 +1712,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) disarm(M, H, attacker_style) /datum/species/proc/spec_attacked_by(obj/item/I, mob/living/user, obj/item/bodypart/affecting, intent, mob/living/carbon/human/H) - var/totitemdamage = H.pre_attacked_by(I, user, TRUE) + var/totitemdamage = H.pre_attacked_by(I, user) // Allows you to put in item-specific reactions based on species if(user != H) if(H.run_block(I, totitemdamage, "the [I.name]", ATTACK_TYPE_MELEE, I.armour_penetration, user, affecting.body_zone) & BLOCK_SUCCESS) From c34655d0940cef922da6f236e506e185ac96337b Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 04:48:49 +0200 Subject: [PATCH 10/89] Uh uh. --- code/modules/mob/living/carbon/carbon_defense.dm | 2 +- code/modules/mob/living/carbon/human/species.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index f1d3cf0356..03bfd87376 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -92,7 +92,7 @@ affecting = bodyparts[1] SEND_SIGNAL(I, COMSIG_ITEM_ATTACK_ZONE, src, user, affecting) send_item_attack_message(I, user, affecting.name) - I.do_stagger_action(src, user) + I.do_stagger_action(src, user, totitemdamage) if(I.force) apply_damage(totitemdamage, I.damtype, affecting) //CIT CHANGE - replaces I.force with totitemdamage if(I.damtype == BRUTE && affecting.status == BODYPART_ORGANIC) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 71cdcd3f38..8221134276 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1736,7 +1736,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) H.send_item_attack_message(I, user, hit_area) - I.do_stagger_action(H, user) + I.do_stagger_action(H, user, totitemdamage) if(!totitemdamage) return 0 //item force is zero From 791b05871f5effdcd13e1cb3260f958a2f64f5f0 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 05:24:40 +0200 Subject: [PATCH 11/89] Hey. --- code/_onclick/item_attack.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 17d1e07d91..36a718b4b5 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -117,9 +117,9 @@ LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, totitemdamage, I.skill_difficulty) if(I.skill_flags & SKILL_TRAIN_ATTACK_OBJ) if(!islist(I.used_skills)) - user.mind.skill_holder.boost_skill_value_to(used_skills, I.skill_gain) + user.mind.skill_holder.boost_skill_value_to(I.used_skills, I.skill_gain) else - for(var/skill in used_skills) + for(var/skill in I.used_skills) user.mind.skill_holder.boost_skill_value_to(skill, I.skill_gain) if(totitemdamage) visible_message("[user] has hit [src] with [I]!", null, null, COMBAT_MESSAGE_RANGE) @@ -128,7 +128,7 @@ take_damage(totitemdamage, I.damtype, "melee", 1) /mob/living/attacked_by(obj/item/I, mob/living/user) - var/totitemdamage = calculate_item_force(I, user) + var/totitemdamage = pre_attacked_by(I, user) if((user != src) && run_block(I, totitemdamage, "the [I.name]", ATTACK_TYPE_MELEE, I.armour_penetration, user) & BLOCK_SUCCESS) return FALSE send_item_attack_message(I, user) @@ -156,15 +156,15 @@ . *= 0.5 if(!CHECK_MOBILITY(user, MOBILITY_STAND)) . *= 0.5 - if(!pre_attack || !user.mind || !I.used_skills) + if(!user.mind || !I.used_skills) return if(. && I.skill_flags & SKILL_ATTACK_MOB) LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, ., I.skill_difficulty) if(I.skill_flags & SKILL_TRAIN_ATTACK_MOB) if(!islist(I.used_skills)) - user.mind.skill_holder.boost_skill_value_to(used_skills, I.skill_gain) + user.mind.skill_holder.boost_skill_value_to(I.used_skills, I.skill_gain) else - for(var/skill in used_skills) + for(var/skill in I.used_skills) user.mind.skill_holder.boost_skill_value_to(skill, I.skill_gain) /mob/living/carbon/pre_attacked_by(obj/item/I, mob/living/user) From ccfce7cb6498898f404948983e5ccc75d866490b Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 06:22:58 +0200 Subject: [PATCH 12/89] Makes wings/horns colors dna features instead of human defines --- code/__HELPERS/mobs.dm | 6 ++-- code/modules/client/preferences.dm | 25 ++++++------- code/modules/client/preferences_savefile.dm | 36 ++++++------------- .../mob/dead/new_player/preferences_setup.dm | 2 -- .../mob/living/carbon/human/human_defines.dm | 6 +--- .../mob/living/carbon/human/species.dm | 16 ++++----- 6 files changed, 32 insertions(+), 59 deletions(-) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index e69052ad8d..e0714a87b3 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -163,9 +163,11 @@ "tail_lizard" = pick(GLOB.tails_list_lizard), "tail_human" = "None", "wings" = "None", + "wings_color" = "FFF", "deco_wings" = "None", "snout" = pick(GLOB.snouts_list), - "horns" = pick(GLOB.horns_list), + "horns" = "None", + "horns_color" = "85615a", "ears" = "None", "frills" = pick(GLOB.frills_list), "spines" = pick(GLOB.spines_list), @@ -174,7 +176,7 @@ "caps" = pick(GLOB.caps_list), "insect_wings" = pick(GLOB.insect_wings_list), "insect_fluff" = "None", - "insect_markings" = pick(GLOB.insect_markings_list), + "insect_markings" = pick(GLOB.insect_markings_list), "taur" = "None", "mam_body_markings" = snowflake_markings_list.len ? pick(snowflake_markings_list) : "None", "mam_ears" = snowflake_ears_list ? pick(snowflake_ears_list) : "None", diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index abe43e38ae..bb3a435258 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -94,8 +94,6 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/skin_tone = "caucasian1" //Skin color var/use_custom_skin_tone = FALSE var/eye_color = "000" //Eye color - var/horn_color = "85615a" //Horn color - var/wing_color = "fff" //Wing color var/datum/species/pref_species = new /datum/species/human() //Mutant race var/list/features = list("mcolor" = "FFF", "mcolor2" = "FFF", @@ -104,8 +102,10 @@ GLOBAL_LIST_EMPTY(preferences_datums) "tail_human" = "None", "snout" = "Round", "horns" = "None", + "horns_color" = "85615a", "ears" = "None", "wings" = "None", + "wings_color" = "FFF", "frills" = "None", "deco_wings" = "None", "spines" = "None", @@ -496,7 +496,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "

Horns

" dat += "[features["horns"]]" - dat += "    Change
" + dat += "    Change
" mutant_category++ @@ -609,7 +609,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "

Decorative wings

" dat += "[features["deco_wings"]]" - dat += "    Change
" + dat += "    Change
" if(pref_species.mutant_bodyparts["insect_wings"]) if(!mutant_category) @@ -618,7 +618,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "

Insect wings

" dat += "[features["insect_wings"]]" - dat += "    Change
" + dat += "    Change
" mutant_category++ if(mutant_category >= MAX_MUTANT_ROWS) dat += "" @@ -1770,12 +1770,12 @@ GLOBAL_LIST_EMPTY(preferences_datums) features["horns"] = new_horns if("horns_color") - var/new_horn_color = input(user, "Choose your character's horn colour:", "Character Preference","#"+horn_color) as color|null + var/new_horn_color = input(user, "Choose your character's horn colour:", "Character Preference","#"+features["horns_color"]) as color|null if(new_horn_color) if (new_horn_color == "#000000") - horn_color = "#85615A" + features["horns_color"] = "85615A" else - horn_color = sanitize_hexcolor(new_horn_color) + features["horns_color"] = sanitize_hexcolor(new_horn_color) if("wings") var/new_wings @@ -1784,12 +1784,12 @@ GLOBAL_LIST_EMPTY(preferences_datums) features["wings"] = new_wings if("wings_color") - var/new_wing_color = input(user, "Choose your character's wing colour:", "Character Preference","#"+wing_color) as color|null + var/new_wing_color = input(user, "Choose your character's wing colour:", "Character Preference","#"+features["wings_color"]) as color|null if(new_wing_color) if (new_wing_color == "#000000") - wing_color = "#FFFFFF" + features["wings_color"] = "#FFFFFF" else - wing_color = sanitize_hexcolor(new_wing_color) + features["wings_color"] = sanitize_hexcolor(new_wing_color) if("frills") var/new_frills @@ -2459,9 +2459,6 @@ GLOBAL_LIST_EMPTY(preferences_datums) organ_eyes.old_eye_color = eye_color character.hair_color = hair_color character.facial_hair_color = facial_hair_color - character.horn_color = horn_color - character.wing_color = wing_color - character.skin_tone = skin_tone character.dna.skin_tone_override = use_custom_skin_tone ? skin_tone : null character.hair_style = hair_style diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 98b87f8d70..6872def704 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -5,7 +5,7 @@ // You do not need to raise this if you are adding new values that have sane defaults. // Only raise this value when changing the meaning/format/name/layout of an existing value // where you would want the updater procs below to run -#define SAVEFILE_VERSION_MAX 29 +#define SAVEFILE_VERSION_MAX 30 /* SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Carn @@ -181,7 +181,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(lickable) ENABLE_BITFIELD(vore_flags,LICKABLE) - if(current_version < 29) + if(current_version < 30) switch(features["taur"]) if("Husky", "Lab", "Shepherd", "Fox", "Wolf") features["taur"] = "Canine" @@ -190,6 +190,10 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if("Cow") features["taur"] = "Cow (Spotted)" + if(current_version < 31) + S["wing_color"] >> features["wings_color"] + S["horn_color"] >> features["horns_color"] + /datum/preferences/proc/load_path(ckey,filename="preferences.sav") if(!ckey) return @@ -421,15 +425,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(newtype) pref_species = new newtype - if(!S["features["mcolor"]"] || S["features["mcolor"]"] == "#000") - WRITE_FILE(S["features["mcolor"]"] , "#FFF") - - if(!S["features["horn_color"]"] || S["features["horn_color"]"] == "#000") - WRITE_FILE(S["features["horn_color"]"] , "#85615a") - - if(!S["features["wing_color"]"] || S["features["wing_color"]"] == "#000") - WRITE_FILE(S["features["wing_color"]"] , "#FFF") - //Character S["real_name"] >> real_name S["nameless"] >> nameless @@ -453,8 +448,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["shirt_color"] >> shirt_color S["socks"] >> socks S["socks_color"] >> socks_color - S["horn_color"] >> horn_color - S["wing_color"] >> wing_color S["backbag"] >> backbag S["jumpsuit_style"] >> jumpsuit_style S["uplink_loc"] >> uplink_spawn_loc @@ -564,15 +557,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(!custom_names[custom_name_id]) custom_names[custom_name_id] = get_default_name(custom_name_id) - if(!features["mcolor"] || features["mcolor"] == "#000") - features["mcolor"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") - - if(!features["horn_color"] || features["horn_color"] == "#000") - features["horn_color"] = "85615a" - - if(!features["wing_color"] || features["wing_color"] == "#000") - features["wing_color"] = "FFFFFF" - nameless = sanitize_integer(nameless, 0, 1, initial(nameless)) be_random_name = sanitize_integer(be_random_name, 0, 1, initial(be_random_name)) be_random_body = sanitize_integer(be_random_body, 0, 1, initial(be_random_body)) @@ -599,8 +583,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car else skin_tone = sanitize_inlist(skin_tone, GLOB.skin_tones - GLOB.nonstandard_skin_tones, initial(skin_tone)) - horn_color = sanitize_hexcolor(horn_color, 3, FALSE) - wing_color = sanitize_hexcolor(wing_color, 3, FALSE, "#FFFFFF") + features["horns_color"] = sanitize_hexcolor(features["horns_color"], 3, FALSE, "85615a") + features["wings_color"] = sanitize_hexcolor(features["wings_color"], 3, FALSE, "FFFFFF") backbag = sanitize_inlist(backbag, GLOB.backbaglist, initial(backbag)) jumpsuit_style = sanitize_inlist(jumpsuit_style, GLOB.jumpsuitlist, initial(jumpsuit_style)) uplink_spawn_loc = sanitize_inlist(uplink_spawn_loc, GLOB.uplink_spawn_loc_list, initial(uplink_spawn_loc)) @@ -714,8 +698,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car WRITE_FILE(S["shirt_color"] , shirt_color) WRITE_FILE(S["socks"] , socks) WRITE_FILE(S["socks_color"] , socks_color) - WRITE_FILE(S["horn_color"] , horn_color) - WRITE_FILE(S["wing_color"] , wing_color) + WRITE_FILE(S["horns_color"] , features["horns_color"]) + WRITE_FILE(S["wings_color"] , features["wings_color"]) WRITE_FILE(S["backbag"] , backbag) WRITE_FILE(S["jumpsuit_style"] , jumpsuit_style) WRITE_FILE(S["uplink_loc"] , uplink_spawn_loc) diff --git a/code/modules/mob/dead/new_player/preferences_setup.dm b/code/modules/mob/dead/new_player/preferences_setup.dm index 317efc2c1f..9a0d9f9242 100644 --- a/code/modules/mob/dead/new_player/preferences_setup.dm +++ b/code/modules/mob/dead/new_player/preferences_setup.dm @@ -18,8 +18,6 @@ hair_color = random_short_color() facial_hair_color = hair_color eye_color = random_eye_color() - horn_color = "85615a" - wing_color = "fff" if(!pref_species) var/rando_race = pick(GLOB.roundstart_races) pref_species = new rando_race() diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 68c312b19c..59766b03a4 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -11,7 +11,7 @@ status_flags = CANSTUN|CANKNOCKDOWN|CANUNCONSCIOUS|CANPUSH|CANSTAGGER blocks_emissive = EMISSIVE_BLOCK_UNIQUE - + //Hair colour and style var/hair_color = "000" var/hair_style = "Bald" @@ -23,10 +23,6 @@ //Eye colour var/eye_color = "000" - var/horn_color = "85615a" //specific horn colors, because why not? - - var/wing_color = "fff" //wings too - var/skin_tone = "caucasian1" //Skin tone var/lip_style = null //no lipstick by default- arguably misleading, as it could be used for general makeup diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 978976111c..aeab0042ac 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -35,10 +35,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/hair_color // this allows races to have specific hair colors... if null, it uses the H's hair/facial hair colors. if "mutcolor", it uses the H's mutant_color var/hair_alpha = 255 // the alpha used by the hair. 255 is completely solid, 0 is transparent. - - var/horn_color //specific horn colors, because why not? - var/wing_color - var/use_skintones = NO_SKINTONES // does it use skintones or not? (spoiler alert this is only used by humans) var/exotic_blood = "" // If your race wants to bleed something other than bog standard blood, change this to reagent id. var/exotic_bloodtype = "" //If your race uses a non standard bloodtype (A+, O-, AB-, etc) @@ -882,9 +878,9 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(EYECOLOR) accessory_overlay.color = "#[H.eye_color]" if(HORNCOLOR) - accessory_overlay.color = "#[H.horn_color]" + accessory_overlay.color = "#[H.dna.features["horns_color"]]" if(WINGCOLOR) - accessory_overlay.color = "#[H.wing_color]" + accessory_overlay.color = "#[H.dna.features["wings_color"]]" else accessory_overlay.color = forced_colour else @@ -938,9 +934,9 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) extra_accessory_overlay.color = "#[H.eye_color]" if(HORNCOLOR) - extra_accessory_overlay.color = "#[H.horn_color]" + extra_accessory_overlay.color = "#[H.dna.features["horns_color"]]" if(WINGCOLOR) - extra_accessory_overlay.color = "#[H.wing_color]" + extra_accessory_overlay.color = "#[H.dna.features["wings_color"]]" if(OFFSET_MUTPARTS in H.dna.species.offset_features) extra_accessory_overlay.pixel_x += H.dna.species.offset_features[OFFSET_MUTPARTS][1] @@ -979,9 +975,9 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) else extra2_accessory_overlay.color = "#[H.hair_color]" if(HORNCOLOR) - extra2_accessory_overlay.color = "#[H.horn_color]" + extra2_accessory_overlay.color = "#[H.dna.features["horns_color"]]" if(WINGCOLOR) - extra2_accessory_overlay.color = "#[H.wing_color]" + extra2_accessory_overlay.color = "#[H.dna.features["wings_color"]]" if(OFFSET_MUTPARTS in H.dna.species.offset_features) extra2_accessory_overlay.pixel_x += H.dna.species.offset_features[OFFSET_MUTPARTS][1] From 001109cfcd745589ac06c032b88a5ba2f869f193 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 20:58:44 +0200 Subject: [PATCH 13/89] About ready. --- code/__DEFINES/combat.dm | 9 +++++ code/__DEFINES/skills/defines.dm | 3 ++ code/__DEFINES/skills/helpers.dm | 40 ++++++++++--------- code/_onclick/item_attack.dm | 50 ++++++++++++++---------- code/datums/skills/_skill.dm | 34 ++++++++-------- code/datums/skills/_skill_holder.dm | 19 +++++---- code/datums/wires/_wires.dm | 10 +++-- code/game/objects/items.dm | 18 ++++----- code/game/objects/items/melee/misc.dm | 2 +- code/game/objects/items/stunbaton.dm | 2 +- code/game/objects/items/toys.dm | 5 +-- code/modules/mob/living/carbon/carbon.dm | 2 +- code/modules/power/cable.dm | 3 +- 13 files changed, 111 insertions(+), 86 deletions(-) diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm index 7de162207d..74ce8519a2 100644 --- a/code/__DEFINES/combat.dm +++ b/code/__DEFINES/combat.dm @@ -248,6 +248,15 @@ GLOBAL_LIST_INIT(shove_disarming_types, typecacheof(list( #define TOTAL_MASS_MEDIEVAL_WEAPON 3.6 //very, very generic average sword/warpick/etc. weight in pounds. #define TOTAL_MASS_TOY_SWORD 1.5 +//stamina cost defines. +#define STAM_COST_ATTACK_OBJ_MULT 1.2 +#define STAM_COST_ATTACK_MOB_MULT 0.8 +#define STAM_COST_BATON_MOB_MULT 1 +#define STAM_COST_NO_COMBAT_MULT 1.25 +#define STAM_COST_W_CLASS_MULT 1.25 +#define STAM_COST_THROW_MULT 2 + + //bullet_act() return values #define BULLET_ACT_HIT "HIT" //It's a successful hit, whatever that means in the context of the thing it's hitting. #define BULLET_ACT_BLOCK "BLOCK" //It's a blocked hit, whatever that means in the context of the thing it's hitting. diff --git a/code/__DEFINES/skills/defines.dm b/code/__DEFINES/skills/defines.dm index 00859bbd40..58b51b88e7 100644 --- a/code/__DEFINES/skills/defines.dm +++ b/code/__DEFINES/skills/defines.dm @@ -36,6 +36,9 @@ #define SKILL_TRAIN_ATTACK_MOB (1<<3) #define SKILL_ATTACK_OBJ (1<<4) #define SKILL_TRAIN_ATTACK_OBJ (1<<5) +#define SKILL_STAMINA_COST (1<<6) //Influences the stamina cost from weapon usage. +#define SKILL_THROW_STAM_COST (1<<7) +#define SKILL_COMBAT_MODE (1<<8) //The user must have combat mode on. ///competency_threshold index defines #define THRESHOLD_COMPETENT 1 diff --git a/code/__DEFINES/skills/helpers.dm b/code/__DEFINES/skills/helpers.dm index 165b9091ae..88ad481e87 100644 --- a/code/__DEFINES/skills/helpers.dm +++ b/code/__DEFINES/skills/helpers.dm @@ -13,26 +13,28 @@ }\ target /= (1+(___value-to_check.competency_thresholds[threshold])*to_check.competency_mults[threshold]) -/// This is the one that accepts typepaths and lists. -#define LIST_SKILL_MODIFIER(to_check, holder, target, threshold) \ - if(!islist(to_check)){\ - SKILL_MODIFIER(GLOB.skill_datums[to_check], holder, target, threshold)\ - } else {\ - var/___sum = 0;\ - var/list/___L = to_check;\ - for(var/_S in ___L){\ - var/___value;\ - var/datum/skill/___S = GLOB.skill_datums[_S];\ - switch(___S.progression_type){\ - if(SKILL_PROGRESSION_LEVEL){\ - ___value = LAZYACCESS(holder.skill_levels, ___S.type)\ - } else {\ - ___value = LAZYACCESS(holder.skills, ___S.type)\ - }\ - }\ - ___sum += (1+(___value - ___S.competency_thresholds[threshold])*___S.competency_mults[threshold])\ +/// This is the one that accepts typepaths and lists. if flags are enabled, an associative value check will be done. +#define LIST_SKILL_MODIFIER(list, holder, target, threshold, flags, bad_flags) \ + var/___sum = 0;\ + var/___divisor = 0;\ + for(var/_S in list){\ + if((flags && !(list[_S] & (flags))) || (bad_flags && list[_S] & (bad_flags))){\ + continue\ }\ - target /= (___sum/length(___L))\ + var/___value;\ + var/datum/skill/___S = GLOB.skill_datums[_S];\ + switch(___S.progression_type){\ + if(SKILL_PROGRESSION_LEVEL){\ + ___value = LAZYACCESS(holder.skill_levels, ___S.type)\ + } else {\ + ___value = LAZYACCESS(holder.skills, ___S.type)\ + }\ + }\ + ___sum += (1+(___value - ___S.competency_thresholds[threshold])*___S.competency_mults[threshold]);\ + ___divisor++\ + }\ + if(___divisor){\ + target /= (___sum/___divisor)\ } //How experience levels are calculated. diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 36a718b4b5..cdbab52d15 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -91,7 +91,7 @@ log_combat(user, M, "attacked", src.name, "(INTENT: [uppertext(user.a_intent)]) (DAMTYPE: [uppertext(damtype)])") add_fingerprint(user) - user.adjustStaminaLossBuffered(getweight()*0.8)//CIT CHANGE - makes attacking things cause stamina loss + user.adjustStaminaLossBuffered(getweight(user, STAM_COST_ATTACK_MOB_MULT))//CIT CHANGE - makes attacking things cause stamina loss //the equivalent of the standard version of attack() but for object targets. /obj/item/proc/attack_obj(obj/O, mob/living/user) @@ -102,7 +102,7 @@ if(IS_STAMCRIT(user)) // CIT CHANGE - makes it impossible to attack in stamina softcrit to_chat(user, "You're too exhausted.") // CIT CHANGE - ditto return // CIT CHANGE - ditto - user.adjustStaminaLossBuffered(getweight()*1.2)//CIT CHANGE - makes attacking things cause stamina loss + user.adjustStaminaLossBuffered(getweight(user, STAM_COST_ATTACK_OBJ_MULT))//CIT CHANGE - makes attacking things cause stamina loss user.changeNext_move(CLICK_CD_MELEE) user.do_attack_animation(O) O.attacked_by(src, user) @@ -112,15 +112,17 @@ /obj/attacked_by(obj/item/I, mob/living/user) var/totitemdamage = I.force + var/bad_flag = NONE + if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE) && iscarbon(user)) + totitemdamage *= 0.5 + bad_flag |= SKILL_COMBAT_MODE //blacklist combat skills. if(I.used_skills && user.mind) - if(I.skill_flags & SKILL_ATTACK_OBJ) - LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, totitemdamage, I.skill_difficulty) - if(I.skill_flags & SKILL_TRAIN_ATTACK_OBJ) - if(!islist(I.used_skills)) - user.mind.skill_holder.boost_skill_value_to(I.used_skills, I.skill_gain) - else - for(var/skill in I.used_skills) - user.mind.skill_holder.boost_skill_value_to(skill, I.skill_gain) + if(totitemdamage) + LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, totitemdamage, I.skill_difficulty, SKILL_ATTACK_OBJ, bad_flag) + for(var/skill in I.used_skills) + if(!(I.used_skills[skill] & SKILL_TRAIN_ATTACK_OBJ)) + continue + user.mind.skill_holder.auto_gain_experience(skill, I.skill_gain) if(totitemdamage) visible_message("[user] has hit [src] with [I]!", null, null, COMBAT_MESSAGE_RANGE) //only witnesses close by and the victim see a hit message. @@ -152,20 +154,20 @@ /mob/living/proc/pre_attacked_by(obj/item/I, mob/living/user) . = I.force - if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) + var/bad_flag = NONE + if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE) && iscarbon(user)) . *= 0.5 + bad_flag |= SKILL_COMBAT_MODE //blacklist combat skills. if(!CHECK_MOBILITY(user, MOBILITY_STAND)) . *= 0.5 if(!user.mind || !I.used_skills) return - if(. && I.skill_flags & SKILL_ATTACK_MOB) - LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, ., I.skill_difficulty) - if(I.skill_flags & SKILL_TRAIN_ATTACK_MOB) - if(!islist(I.used_skills)) - user.mind.skill_holder.boost_skill_value_to(I.used_skills, I.skill_gain) - else - for(var/skill in I.used_skills) - user.mind.skill_holder.boost_skill_value_to(skill, I.skill_gain) + if(.) + LIST_SKILL_MODIFIER(I.used_skills, user.mind.skill_holder, ., I.skill_difficulty, SKILL_ATTACK_MOB, bad_flag) + for(var/skill in I.used_skills) + if(!(I.used_skills[skill] & SKILL_TRAIN_ATTACK_MOB)) + continue + user.mind.skill_holder.auto_gain_experience(skill, I.skill_gain) /mob/living/carbon/pre_attacked_by(obj/item/I, mob/living/user) . = ..() @@ -205,8 +207,14 @@ return 1 /// How much stamina this takes to swing this is not for realism purposes hecc off. -/obj/item/proc/getweight() - return total_mass || w_class * 1.25 +/obj/item/proc/getweight(mob/living/user, multiplier = 1, flags = NONE) + . = (total_mass || w_class * STAM_COST_W_CLASS_MULT) * multiplier + var/bad_flag = NONE + if(iscarbon(user) && !(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) + . *= STAM_COST_NO_COMBAT_MULT + bad_flag |= SKILL_COMBAT_MODE + if(used_skills && user.mind) + LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, ., skill_difficulty, SKILL_STAMINA_COST|flags, bad_flag) /// How long this staggers for. 0 and negatives supported. /obj/item/proc/melee_stagger_duration(force_override) diff --git a/code/datums/skills/_skill.dm b/code/datums/skills/_skill.dm index 039afacfa5..acfa44389e 100644 --- a/code/datums/skills/_skill.dm +++ b/code/datums/skills/_skill.dm @@ -28,7 +28,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) /// Our description var/desc /// Color of the name as shown in the html readout - var/name_color = "#000000" + var/name_color = "#FFFFFF" /// Our progression type var/progression_type /// Abstract type @@ -62,7 +62,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) /** * Standard value "render" */ -/datum/skill/proc/standard_render_value(value) +/datum/skill/proc/standard_render_value(value, level) return value // Just saying, the choice to use different sub-parent-types is to force coders to resolve issues as I won't be implementing custom procs to grab skill levels in a certain context. @@ -77,7 +77,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) /datum/skill/binary/sanitize_value(new_value) return new_value? TRUE : FALSE -/datum/skill/binary/standard_render_value(value) +/datum/skill/binary/standard_render_value(value, level) return value? "Yes" : "No" /datum/skill/numerical @@ -93,7 +93,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) /datum/skill/numerical/sanitize_value(new_value) return clamp(new_value, min_value, max_value) -/datum/skill/numerical/standard_render_value(value) +/datum/skill/numerical/standard_render_value(value, level) return display_as_percent? "[round(value/max_value/100, 0.01)]%" : "[value] / [max_value]" /datum/skill/enum @@ -113,7 +113,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) abstract_type = /datum/skill/level progression_type = SKILL_PROGRESSION_LEVEL var/standard_xp_lvl_up = STD_XP_LVL_UP //the standard required to level up. def: 100 - var/xp_lvl_multiplier = STD_XP_LVL_UP //standard required level up exp multiplier. def: 2 (100, 200, 400, 800 etc.) + var/xp_lvl_multiplier = STD_XP_LVL_MULTI //standard required level up exp multiplier. def: 2 (100, 200, 400, 800 etc.) var/max_levels = STD_MAX_LVL var/level_up_method = STANDARD_LEVEL_UP //how levels are calculated. var/list/levels = list() //level thresholds, if associative, these will be preceded by tiers such as "novice" or "trained" @@ -132,7 +132,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) value = XP_LEVEL(standard_xp_lvl_up, xp_lvl_multiplier, lvl) if(DWARFY_LEVEL_UP) value = DORF_XP_LEVEL(standard_xp_lvl_up, xp_lvl_multiplier, lvl) - value = round(value) + value = round(value, 1) if(!associative) levels += value continue @@ -142,7 +142,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) var/key = LAZYACCESS(levels, lvl) if(!key) if(lvl == 1) //You dun goof it. - stack_trace("Skill datum [src] was set to have an associative levels list despite the latted having no key.") + stack_trace("Skill datum [src] was set to have an associative levels list despite the latter having no key value.") associative = FALSE levels += value continue @@ -170,18 +170,18 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) else if(. < 0) to_chat(M.current, "I feel like I've become worse at [name]!") -/datum/skill/level/standard_render_value(value) - var/current_lvl = associative ? unskilled_tier : 0 +/datum/skill/level/standard_render_value(value, level) + var/current_lvl = associative ? (!level ? unskilled_tier : levels[level]) : level var/current_lvl_xp_sum = 0 - var/next_lvl_xp_sum - for(var/lvl in 1 to max_levels) - next_lvl_xp_sum = associative ? levels[levels[lvl]] : levels[lvl] - if(value < next_lvl_xp_sum) - break - current_lvl_xp_sum = next_lvl_xp_sum - current_lvl = associative ? levels[lvl] : lvl+1 + if(level) + current_lvl_xp_sum = associative ? levels[levels[level]] : levels[level] + var/next_index = max(max_levels, level+1) + var/next_lvl_xp = associative ? levels[levels[next_index]] : levels[next_index] + if(next_lvl_xp > current_lvl_xp_sum) + next_lvl_xp -= current_lvl_xp_sum - return "[associative ? current_lvl : "Lvl. [current_lvl]"] ([value - current_lvl_xp_sum]/[next_lvl_xp_sum])[value > next_lvl_xp_sum ? " \[MAX!\]" : ""]" + + return "[associative ? current_lvl : "Lvl. [current_lvl]"] ([value - current_lvl_xp_sum]/[next_lvl_xp])[level == max_levels ? " \[MAX!\]" : ""]" /datum/skill/level/job levels = list("Basic", "Trained", "Experienced", "Master") diff --git a/code/datums/skills/_skill_holder.dm b/code/datums/skills/_skill_holder.dm index db9a84bb05..8b72b5c96d 100644 --- a/code/datums/skills/_skill_holder.dm +++ b/code/datums/skills/_skill_holder.dm @@ -29,8 +29,8 @@ * Grabs the level of a skill. Only supported by skills with tiers or levels. */ /datum/skill_holder/proc/get_skill_level(skill) - if(!ispath(skill)) - CRASH("Invalid get_skill_value call. Use typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. + if(!ispath(skill, /datum/skill)) + CRASH("Invalid get_skill_value call. Use skill typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. if(!skill_levels) return 0 return skill_levels[skill] @@ -39,8 +39,8 @@ * Grabs our affinity for a skill. !!This is a multiplier!! */ /datum/skill_holder/proc/get_skill_affinity(skill) - if(!ispath(skill)) - CRASH("Invalid get_skill_affinity call. Use typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. + if(!ispath(skill, /datum/skill)) + CRASH("Invalid get_skill_affinity call. Use skill typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. var/affinity = LAZYACCESS(skill_affinities, skill) if(isnull(affinity)) return 1 @@ -51,7 +51,7 @@ */ /datum/skill_holder/proc/set_skill_value(skill, value, silent = FALSE) if(!ispath(skill, /datum/skill)) - CRASH("Invalid set_skill_value call. Use typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. + CRASH("Invalid set_skill_value call. Use skill typepaths.") //until a time when we somehow need text ids for dynamic skills, I'm enforcing this. var/datum/skill/S = GLOB.skill_datums[skill] value = S.sanitize_value(value) if(!isnull(value)) @@ -75,8 +75,11 @@ * Only works if skill is numerical. */ /datum/skill_holder/proc/auto_gain_experience(skill, value, maximum, silent = FALSE) - if(!ispath(skill, /datum/skill/numerical)) - CRASH("You cannot auto increment a non numerical skill!") + if(!ispath(skill, /datum/skill)) + CRASH("Invalid set_skill_value call. Use skill typepaths.") + var/datum/skill/S = GLOB.skill_datums[skill] + if(S.progression_type != SKILL_PROGRESSION_NUMERICAL && S.progression_type != SKILL_PROGRESSION_LEVEL) + CRASH("You cannot auto increment a non numerical(experience skill!") var/current = get_skill_value(skill) var/affinity = get_skill_affinity(skill) var/target_value = current + (value * affinity) @@ -95,6 +98,6 @@ out += "" for(var/path in skills) var/datum/skill/S = GLOB.skill_datums[path] - out += "" + out += "" out += "
SkillValue
[S.name][S.standard_render_value(skills[path])]
[S.name][S.standard_render_value(skills[path], LAZYACCESS(skill_levels, path) || 0)]
" return out.Join("") diff --git a/code/datums/wires/_wires.dm b/code/datums/wires/_wires.dm index fc31cb9286..d2f719c50c 100644 --- a/code/datums/wires/_wires.dm +++ b/code/datums/wires/_wires.dm @@ -140,10 +140,12 @@ if(req_skill && user?.mind) var/level_diff = req_skill - user.mind.skill_holder.get_skill_level(/datum/skill/level/job/wiring) if(level_diff > 0) + LAZYSET(current_users, user, TRUE) to_chat(user, "You begin cutting [holder]'s [color] wire...") if(!do_after(user, 1.5 SECONDS * level_diff, target = holder) || !interactable(user)) + LAZYREMOVE(current_users, user) return FALSE - user.mind?.skill_holder.auto_gain_experience(/datum/skill/level/job/wiring, DEF_SKILL_GAIN*level_diff) + LAZYREMOVE(current_users, user) to_chat(user, "You cut [holder]'s [color] wire.") cut(get_wire(color)) return TRUE @@ -167,10 +169,12 @@ if(req_skill && user?.mind) var/level_diff = req_skill - user.mind.skill_holder.get_skill_level(/datum/skill/level/job/wiring) if(level_diff > 0) + LAZYSET(current_users, user, TRUE) to_chat(user, "You begin pulsing [holder]'s [color] wire...") if(!do_after(user, 1.5 SECONDS * level_diff, target = holder) || !interactable(user)) + LAZYREMOVE(current_users, user) return FALSE - user.mind?.skill_holder.auto_gain_experience(/datum/skill/level/job/wiring, DEF_SKILL_GAIN*level_diff) + LAZYREMOVE(current_users, user) to_chat(user, "You pulse [holder]'s [color] wire.") pulse(get_wire(color), user) return TRUE @@ -286,7 +290,7 @@ if("cut") I = L.is_holding_tool_quality(TOOL_WIRECUTTER) if(I || IsAdminGhost(usr)) - if(cut_color(target_wire) && I && holder) + if(cut_color(target_wire, L) && I && holder) I.play_tool_sound(holder, 20) . = TRUE else diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index c0c8f449e8..e781b6859c 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -133,8 +133,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) var/list/juice_results //A reagent list containing blah blah... but when JUICED in a grinder! ///Skills vars - var/used_skills //path/s of skill/s exercised when using this item. - var/skill_flags = NONE //better defines which tasks the the skill/s is/are exercised on. + var/list/used_skills //list of skills exercised when using this item. An associated bitfield indicates how the skill is exercised. var/skill_difficulty = THRESHOLD_COMPETENT //how difficult it's to use this item in general. var/skill_gain = DEF_SKILL_GAIN //base skill value gain from using this item. @@ -801,8 +800,8 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) play_tool_sound(target, volume) if(delay) - if(user.mind && used_skills && skill_flags & SKILL_USE_TOOL) - LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, delay, skill_difficulty) + if(user.mind && used_skills) + LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, delay, skill_difficulty, SKILL_USE_TOOL, NONE) // Create a callback with checks that would be called every tick by do_after. var/datum/callback/tool_check = CALLBACK(src, .proc/tool_check_callback, user, amount, extra_checks) @@ -828,12 +827,11 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) if(delay >= MIN_TOOL_SOUND_DELAY) play_tool_sound(target, volume) - if(user.mind && used_skills && skill_flags & SKILL_TRAINING_TOOL && skill_gain_mult) - if(!islist(used_skills)) - user.mind.skill_holder.boost_skill_value_to(used_skills, skill_gain*skill_gain_mult, GET_STANDARD_LVL(max_level)) - else - for(var/skill in used_skills) - user.mind.skill_holder.boost_skill_value_to(skill, skill_gain*skill_gain_mult, GET_STANDARD_LVL(max_level)) + if(user.mind && used_skills && skill_gain_mult) + for(var/skill in used_skills) + if(!(used_skills[skill] & SKILL_TRAINING_TOOL)) + continue + user.mind.skill_holder.auto_gain_experience(skill, skill_gain*skill_gain_mult, GET_STANDARD_LVL(max_level)) return TRUE diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index c2db529675..3504ed2f50 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -325,7 +325,7 @@ else target.LAssailant = WEAKREF(user) cooldown_check = world.time + cooldown - user.adjustStaminaLossBuffered(getweight())//CIT CHANGE - makes swinging batons cost stamina + user.adjustStaminaLossBuffered(getweight(user, STAM_COST_BATON_MOB_MULT)) else var/wait_desc = get_wait_description() if(wait_desc) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 0fc47f649a..8a817f6d62 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -163,7 +163,7 @@ if(status) if(baton_stun(M, user, disarming)) user.do_attack_animation(M) - user.adjustStaminaLossBuffered(getweight()) //CIT CHANGE - makes stunbatonning others cost stamina + user.adjustStaminaLossBuffered(getweight(user, STAM_COST_BATON_MOB_MULT)) else if(user.a_intent != INTENT_HARM) //they'll try to bash in the last proc. M.visible_message("[user] has prodded [M] with [src]. Luckily it was off.", \ "[user] has prodded you with [src]. Luckily it was off") diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 9291b72467..722f6178bc 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -241,11 +241,13 @@ playsound(user, activation_sound, transform_volume, 1) w_class = WEIGHT_CLASS_BULKY AddElement(/datum/element/sword_point) + total_mass = total_mass_on else to_chat(user, "[deactivation_message]") playsound(user, deactivation_sound, transform_volume, 1) w_class = WEIGHT_CLASS_SMALL RemoveElement(/datum/element/sword_point) + total_mass = initial(total_mass) update_icon() add_fingerprint(user) @@ -287,9 +289,6 @@ else return ..() -/obj/item/toy/sword/getweight() - return (active ? total_mass_on : total_mass) || w_class *1.25 - /obj/item/toy/sword/cx name = "\improper DX Non-Euplastic LightSword" desc = "A deluxe toy replica of an energy sword. Realistic visuals and sounds! Ages 8 and up." diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 69c81229a7..821b432ea5 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -199,7 +199,7 @@ to_chat(src, "You set [I] down gently on the ground.") return - adjustStaminaLossBuffered(I.getweight()*2)//CIT CHANGE - throwing items shall be more tiring than swinging em. Doubly so. + adjustStaminaLossBuffered(I.getweight(src, STAM_COST_THROW_MULT, SKILL_THROW_STAM_COST)) if(thrown_thing) visible_message("[src] has thrown [thrown_thing].") diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 1e2650d17f..a633f83b2b 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -495,8 +495,7 @@ By design, d1 is the smallest direction and d2 is the highest full_w_class = WEIGHT_CLASS_SMALL grind_results = list(/datum/reagent/copper = 2) //2 copper per cable in the coil usesound = 'sound/items/deconstruct.ogg' - used_skills = /datum/skill/level/job/wiring - skill_flags = SKILL_USE_TOOL|SKILL_TRAINING_TOOL + used_skills = list(/datum/skill/level/job/wiring = SKILL_USE_TOOL|SKILL_TRAINING_TOOL) /obj/item/stack/cable_coil/cyborg is_cyborg = 1 From 81dde7debd1f1553a94d6f896f61024fad6dae4f Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 21:04:19 +0200 Subject: [PATCH 14/89] Obligatory. --- code/_onclick/item_attack.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index cdbab52d15..88e0ad8627 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -209,6 +209,8 @@ /// How much stamina this takes to swing this is not for realism purposes hecc off. /obj/item/proc/getweight(mob/living/user, multiplier = 1, flags = NONE) . = (total_mass || w_class * STAM_COST_W_CLASS_MULT) * multiplier + if(!user) + return var/bad_flag = NONE if(iscarbon(user) && !(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) . *= STAM_COST_NO_COMBAT_MULT From 91d6faaf21a2d40f24f2c5c3beec8197ee67355b Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Tue, 5 May 2020 21:06:53 +0200 Subject: [PATCH 15/89] more obligatory changes. --- code/_onclick/item_attack.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 88e0ad8627..4d00b877a0 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -207,7 +207,7 @@ return 1 /// How much stamina this takes to swing this is not for realism purposes hecc off. -/obj/item/proc/getweight(mob/living/user, multiplier = 1, flags = NONE) +/obj/item/proc/getweight(mob/living/user, multiplier = 1, flags = SKILL_STAMINA_COST) . = (total_mass || w_class * STAM_COST_W_CLASS_MULT) * multiplier if(!user) return @@ -216,7 +216,7 @@ . *= STAM_COST_NO_COMBAT_MULT bad_flag |= SKILL_COMBAT_MODE if(used_skills && user.mind) - LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, ., skill_difficulty, SKILL_STAMINA_COST|flags, bad_flag) + LIST_SKILL_MODIFIER(used_skills, user.mind.skill_holder, ., skill_difficulty, flags, bad_flag) /// How long this staggers for. 0 and negatives supported. /obj/item/proc/melee_stagger_duration(force_override) From e9ccc3ac6225a70ab21c3f9605fbdaf0116a1acc Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Wed, 6 May 2020 01:03:54 +0200 Subject: [PATCH 16/89] Test and update. --- code/modules/mob/living/living.dm | 4 ++-- code/modules/mob/mob_movement.dm | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 5189f47fbc..4736ae5b4a 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -319,8 +319,8 @@ set_pull_offsets(M, state) /mob/living/proc/set_pull_offsets(mob/living/M, grab_state = GRAB_PASSIVE) - if(M.buckled) - return //don't make them change direction or offset them if they're buckled into something. + if(M.buckled || M.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE) + return //don't make them change direction or offset them if they're buckled into something or in combat mode. var/offset = 0 switch(grab_state) if(GRAB_PASSIVE) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index adf3e349b7..872889fd53 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -100,8 +100,7 @@ if(mob.throwing) mob.throwing.finalize(FALSE) - var/atom/movable/P = mob.pulling - if(P && !ismob(P) && P.density) + if(mob.pulling && !(combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) mob.setDir(turn(mob.dir, 180)) SEND_SIGNAL(mob, COMSIG_MOB_CLIENT_MOVE, src, direction, n, oldloc) From 94d67ab640b5d7a18c592f2aad71035ee0ce9169 Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Wed, 6 May 2020 01:15:30 +0200 Subject: [PATCH 17/89] Update mob_movement.dm --- code/modules/mob/mob_movement.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 872889fd53..a607da195a 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -100,8 +100,9 @@ if(mob.throwing) mob.throwing.finalize(FALSE) - if(mob.pulling && !(combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) - mob.setDir(turn(mob.dir, 180)) + var/mob/living/L = mob + if(L.pulling && !(L.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) + L.setDir(turn(L.dir, 180)) SEND_SIGNAL(mob, COMSIG_MOB_CLIENT_MOVE, src, direction, n, oldloc) From 106fb6496eb6d5b972ece921e0410af96d4e3c63 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Wed, 6 May 2020 05:30:54 -0400 Subject: [PATCH 18/89] Update hypospray.dm --- code/modules/reagents/reagent_containers/hypospray.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 9555f5b64b..b24e6ab733 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -207,8 +207,8 @@ #define DELUXE_SELF_SPRAY 10 #define DELUXE_SELF_INJECT 10 -#define COMBAT_WAIT_SPRAY 0 -#define COMBAT_WAIT_INJECT 0 +#define COMBAT_WAIT_SPRAY 15 +#define COMBAT_WAIT_INJECT 15 #define COMBAT_SELF_SPRAY 0 #define COMBAT_SELF_INJECT 0 From b5a4bceafb65f86a4d65dbf90b820d61c28eae0b Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Wed, 6 May 2020 17:46:15 +0200 Subject: [PATCH 19/89] Fixing some sprite issues and nit-picks. --- .../mob/living/simple_animal/friendly/cat.dm | 2 +- icons/mob/clothing/back.dmi | Bin 96843 -> 103186 bytes icons/mob/clothing/feet.dmi | Bin 23048 -> 23990 bytes icons/mob/clothing/feet_digi.dmi | Bin 29508 -> 30398 bytes icons/mob/clothing/head.dmi | Bin 223291 -> 223277 bytes 5 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 1297fddb69..7d41068020 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -87,7 +87,6 @@ pass_flags = PASSMOB mob_size = MOB_SIZE_SMALL collar_type = "kitten" - held_icon = "cat" //RUNTIME IS ALIVE! SQUEEEEEEEE~ /mob/living/simple_animal/pet/cat/Runtime @@ -99,6 +98,7 @@ gender = FEMALE gold_core_spawnable = NO_SPAWN unique_pet = TRUE + held_icon = "cat" var/list/family = list()//var restored from savefile, has count of each child type var/list/children = list()//Actual mob instances of children var/cats_deployed = 0 diff --git a/icons/mob/clothing/back.dmi b/icons/mob/clothing/back.dmi index 66a47d21f2fd7fea2ff891ed08f2dee77459f720..d307b5b6c9c75846602a46b004b9c5624de863da 100644 GIT binary patch literal 103186 zcmd432UJtf_b+jY z`w_*vXs4Gb3o)sOg)Q6s`~pu(wUyIvvGRDP zCDiJ4s^9Gqn)qv3oy$|c9PJck{;o{eEWln~SNq)G7Tru%EALCR=3l7KTxaw9!*NHw z&-P@-snj2=y^cQhW?$@{+^PI6Z;px;=@Kk;TB&J`7+U% zZ;c;}BJw=X(Xzajzkb1>?8@(9?AnN-i}lK1+o-QRvchFSm6z94q!DDCaPa)}n>48e zVZ%t(n@N(wCPN|JvV>jPme(*~N*F@M}*5vtC5cM|e z++^mJzNwej4TRfO1t+W&BSH)MM?YEKRp%RPq?4#U`(-i`$APRCPYis}W#aKt^D*sP zj$u_ro>SDtrwzXcrP0KW)8$?*`a)|u|IEkDKrkE@n?HM()5!k(AG2=nID=vBn!B=w z70;<}z)gGaJxj>iBw37$_-^-4YsGfm(0p;BuHoJn}@fKlRBzH3)A*L}<^wz|CK4cLGJ?*IrsjYC+g}hSNy%dcsSyH#NtCA zyNs`vBCp=k@ohEmFTT{)i{%tudG&y@Ki+*%-0sGMQp>{;`PKVa5 zO&E&NM(-8wGb49*Pk>80O(I?K+XHS66OV1G1qEuu7p5O*ABpfpS@eB9YxeVmMVv*k z-M!=|%F0&xY;zO_T&AwU2D^C@lmy=Iv`o?KuM{1EQ7nL;a`S6vh2F#dYkX~}3y(T&orlR>+VseUVsa((W~x}lE3t7=+9t~~d; zvjr!IkoX)wEAzLAU3T4Je zX}C2{6W!CF@TcXqqPJf|Z@3-A`~vc79;%GkQq&2^n^G=bj6lL~4E#y@vw{ss^(_uT z@GkRoFZ^QkbKexO3l{h>&-+$E#$=|YsL4e|@99Uz#>N*!MYW-T-_~bV zsi6M;el-Jwn9I0zhp~~tvo7U&%y{3O*Papx5jYN&iBs@NH5ryQA(;%7q_S*wycAu{ zX^mikp2&GY?n6R)x(~Cvl9bJ(55a|#yX}Kiu{xY`?Nj@4wY~;KdG2fvc;E)&R~+hf z7wYLL&lm^2RJ_7Z;sRy`Pw;eK2w@XFqu{Z&yekcU8#B~HT5H@f-+E)LpFKNKHWpf5 zE=5gE{o%`(bCAk7qxj5ylY~3>?y26oMNwK>+PXTFpEaa&|NgmXA)TKoO1`JLfNspq z&kwALOioP148)%&g!vKnv{Mv0hlYll9cAu4Pqo|ZfNkM_ugG4BR|7cm$&e3tu zokYjXSFRKr7bh%AE-1KWSz;vb7uIGKIZfWf4H303N3UZMk?q~x`sMBD1`BQNunjEp zi4#pTO@VJh{N`$7p4;{hJ{K0d@@w0>_k6A}|D)|B4i-5xpJZ--AJok#JUuP@LME$< zImzwdq6^aLX=c&kx8D7e_q7v+Z?^eU0TnhD z9ElP?sbiUO8IM*X2+hR@cYH=|NHKJc9%Ga9It9CG-S>vXX zAcGgbpL)$-+3U12LkXV^(W0Vc2XVQXAHgeezplntC!&iys~M9~T6zYO`i)rJU9sw; zV$PK=p2eX!uablLjX$}I*IxwHQpRouO@Btj3PHn#ra5M=ZLE|5xw*N^#m&phb`sX@ zr|l#Tr~-!a4MpPP<0+ws4%CA|ehxa#!*f!UmVb4I48%px%%`aS z=-}y?v~RDzyAXQ#>f~@;MmL(bLW9)M7t{%RVRt6r#zTkIE96$jLKQpsYtQsl8+^XB za-M?i58_$zaxLWd9HQWb3yu{P9q>XuW8>#Ph(nc~twdh~k~5s@NynEfAHu_(Z~Otj zY>%?^c{6g%_mw!K;-$Cq8d43ht44>%~N2$GfRh}JvyFv2F z-aROwFH?M=E=JbAeX*OgO@lj14*Na)f4k=9&GZ&^8T{Oxcr?$rO2Gb<3I0#+MYNpf z;jh9I0b5%y*3c-l41JQUONuTXg0R1->E-3MZ?YEj_AMpU_%n>V#C2Yy?)7>F6hODX zG4yR(;fBr3@cy*hL6W@67ORWP4CXu;6cZQH1tzT8)2D(l@!dv?bAwRfZY7Z-ZFjCu z#@t-Yl+a5Cg-u+GEzHQEWMyRqD*|RK$pVYa&o8Sm&5j?)QBWFmR{Q(H&YjP~_ejwH z-8?p>Wws?)3OQsP)^pgxorLptSe4X1)D*`@a7j>u36_cQu3W5;&rcsA8cyJfmCLW4|m-<~(niup42qgGA=HwM1OQX?%ZB<*=JTuJheEzW&;v zon1w&FX?gTXLZWNx?<_br>JE7qO&mO8&8$C&h>MHMG1!l)_!K2K7nh>_ z9m7$VF0qcOh!5B|Mqg^tvsg(-FNfGc9RBUv{!AxvD5Ngy!F_em=*!bGXU?BLe<#5* z8Ty#z3!vtWrhM2fttgBP-}Ypd>)NHANO1`q5ep~hj7 zE0@Rv9rSB?^(S2t0*mwaB$Es@>{VT3 zxdqm9(7<*w0lMkF`Z%#ERg0H8Mc%z5dC0x9Cs~04qVx9?3g?mgM1^W7>wX!}#HW}i zC5^ADuBy@FQS>@JT*?1+PjwYT>`hi!+Ul!vfg@A=|CkzIW4l>HBLKy9+q7Ag*i8o| zD|lvYQZXh!gAn&a+Hus*Mtq}Roy&=%M2ytF1_ zZdS^|!y^yaZ2(GK&C}6J{fbz%3TsjiivzH@9F8C~{P7XI)2*`Zskv?pS}$F^7r|EH zmkfKsH^M|@rPR4RJN`y}^qoY)0{`om5=Fd5?}(*+LBA1e@r8GIy*SB3B8b8tVG#XK>37pNUJCh6F*53x~rhi_R=le-V*KEa4^#F7OuN zRD`CJ=g${`+!rpa)@NsHpDX;{sT=*}Q z+|@{YZ|#zWn!0*A0DIgPd-?ty^VkL+}c=|Ha`f%m1%F_&?%{v<&d7CRV}nzTD71 zRT_4gdYtJlVSh9-C2ym-(!(^Ky=#!Z%^lW3@8|GNhU+WK;V`|E)K$UV!fdCmj*it= z3q>ihvma@0F*)2c70XXSzvH}J?f-o%@w#f<{mWBF0^rvYt)b$ddL6O2`5P;F{n*f{ z#0Lilhveo8v+(g1O%T^7=&vKK{~P}DM=u*@@aqt^RCV6)`JJ(17smE z8C!q;w8E_pnOh(gh?l3%i>a9fDeDKnAYl<#S5{W6_BW=q2n!~IiR0v(d3kx)ZMrxH zhla*1q7xJIfBUXqCGh|J^GEl~*RSU}Uj;8xuYdQBT6F<#W_I#_%-N&ue?dm;P1eIF*l=tmaYB3~!@{ZavFZZ<@aEa} zwX=)pS}fg@Q#U0f`eqAmTUlkacXbUq+O)d#^JetwR54y-o7*VVe24y~pyuOK^P=1= z#0S)#X#~?bCSY4JFfh%Wb|#sb07u&*cA;@EjpGoS^;gJ!^Rey+4H>2Vv%rkz6h-)!9#TIc?fKj$kv7=ELP7$^ z96f&2Wo5NZ4Y`lGrSi9#l97B8nLE0qqy4yjgr=*1uk&k3Z?9k=5#PD8tHDTLY`3hR z2U9x$kKb<|Qsn04H7me;86`3`(uoA0=b!@Qy*P5#!gLRr3+2WX>!25bH^pBi%T9Yy zA&#)A;te^Q+gLb}QYbuCWqWImsk0(?zqR8l6Fg^xh}b`v?bb=D^%yu5z2 zfLA{y88mc|U(C7*pE{D;QRaLbH2&yAzAsa)XR_v~j`B(|kU++&U@&sPfwbR15TFe@ zbxU>NN~?ay%Gm&XmF+HZDg|10q!pHt8J-%dUf3I-kM+5w-I@=epO{lZpM?ciXlsS$Sg| z^n355Ahy*Z6=2d2;v^AImrvn?gWjjt)Fj{){+z|4&L7ZBO5-S@neQX4^p{xOTn@8a zKzE1=YkjV?a5uqdrL_L4v55s zRgCorBg4rrr4}yq3@6JgxC6?SElEEci3=l7Ne$hIwYL0|smgv_IXbBtUS2oBb6{zk zw!s_SH57D)_uAp}*J%X`b>dJGz+r`pL%CpKV~Qsr-99f0)-ZP6hjL7}-nC$t4jPso8TQ{Nk=c*x5jc(uSTyTA{J{h ze>9gKyAaM$Ld9?rNY{FwjqABt-m7O1;4Gdh&+4u?%j+sq{+w)O2NwN{5X_@hNGLI z1Y#s~bg{^aRK!`*ZQe#SzhRYF`w3rb(<ajLh!;@IXSPgosG~z}H$Iiy$F3YPo`0$Lazf|Fbsq z3x`?FF3l$`CF5W12R@OEf9J5YlwVQD4>ez_y z8;K#8*v~98Zv(WaqM`x;bn$0={A!jsXy%AHsZa1l`RznvnYssB+tAT|$io@s zc&T7+WX!iSwablc+Nj9 zd#N>+jF4|fp3?+k9jw_%c$b%|6S?9G`?!T*=CND>Iub`zaizw`U%AG{*k$7uOcs}r z&;#Je5ga=N>C_jcRX)peN^?M&{S2t`tA{r@Hg8PTDin-ZOP+uqoxYi$ zoRT6&S|XW2jfWA3cM_?8*lNIM?WuJ4Xd{mV3MwjCZy@*Spd^ES*KX;NnGo>?m9)`Q z(CA*D+$d^z;FgM()~62<5x;;u`;c&0Fdpf3pmp9iuqxj`@paZ{wPw>2e6i|#DtJqC zON;C7vYwQTj20(E*_DdNTqG+qJlIbR`Z#jGby|GyLh-`WnYW)~$ZfY41Aq|os(N95 zhCZo4hTR1<)5qhlV*}#>FYZNbRJqYn9HjeAOl5@-UDglnBHp>|`3DA+ zrBd4VT29av@+~1G2qdUk#=K<3j?fF_z1L|_+MACYc|@|G7)Own{1rT@156-WB|PWW z!XEms#H`hFF^Pkl^{vRSpgDY1#~*PUMUxK3KL6^_TLFIcfrTf)NW3w)2e-2m{<$am zv#CQPNzv6n>lohl5+?wN`kzpT_eJ@u4BGnB`OnUoRN{U*9DZVMSpE^|IWHZ%r*^+a zUca3Gi`RvV7pYI3I%VhNbUciC@@XGPr2^#g6NpygTJFJ|Mf^J%ByRAO>}0@iLpbPz zosC*1c=SHrKLYbg)8-*!n*?k4*)Y#5w4ITeahGXvL=I@`dKaGwOhC2#Nn^Xyg<=jMG3{(p&D0$+y2l|>_wX(9X->CmD?Nje zSme#e@9bGZf2Ki?lfE~)cDlZk;#d38Pc2|!Ln1v;COb{X_Usr2gr_2ms<4Ocx%pM= zC{+*Nn)0G&=lb;Y>>Ta;t*8D0k}?&c&B@0|MOakSy+-jLtl~blyxsXCeXrN4fqaNT zx-NX>jeYv-Mn6XXv4MwI7;s(p_4VQF)NKrEzGcYV~!fCs#J$K%*d=auGk2EP$PfNFlfZGE%`3*o(ibT+=3xo z9b^H1vaBI%l9L2ta|yPESUO~flaX#$WUDSLzS-v3?cWzZu)R<;w)cp%T_wT4XM*qdv0yazuBo0=PKwl;jk91F;zuiLwlb zZkiqNXsIH?>vV$B()Z5It)@_2ANu_gk5e1cWPei>cysMLh zjX(|#8R}EoIj0S;gxOyicY#vgr|Oe$ZV%T|A_9! z(IHOt-iq~FgR^Xa7bN`vj`U4h{jj7 z5$lhI#d>tO-%|bb>Gl*qswMtxpYE4TNWgj_wGe2|NIx#SLPv^7H2qFB_W?x0G=qdw0K<#xbT?@Xo{ zRQ||9rFlN>t}`&Y{+VObJt(kVzb?VKFQUT%a`Q7Xvb~{VQVRew(R+1st12;dv;Sq` zDrXbg*`E)Qa;PwQn)r4QXR=ROQSqdSvc!+zLHwJ?_4i!zSJE3@+2+ThqN2;}Rdg%0 z{SsCWPe3#8ODLNA9F%|pO9QKEMo9^azrTO~aK1DQ2FqQKaVJ%M!eijfz3}I96O?3@ z_Z<7nH&5Ob4n9rE5{s1IoT-?KDYUNY0s4tQa|yOTQSGN#52Y#b{*8z!6W!uA2|du9 zW09|q)+ZqXG3UO0NV`5E2rK((`ZMYi-g9tBIr61N9MTJ07kUDAs2BXK zp@H&SnaoZ5{F6OJTXmrENjF_@yOz5ye+Ll{U{TV5=HIznSp>_kroO}<+6YuY=HEb; zc6+g={y^I=Aj)%(|KKE_B1ZsDad7XoAB~-@lkP-br8zJp*|1eRFG=idgFKB*`>LPG z*w;L-VbqNFOlhl)JIbZlUW3y20Me9<7-mHiO`T!JpIU0)>TTIkFl{pYTo<~hcZ6$c zlEk8JK5;JTMft&3CCC7%l@o|n?Oa5{`2KmFxj$RAvj}_{6i~Yq;r5S_Izhssh{ilz z{<00s-u>*|{nXgaT-haLI5`esy7AX#`9y#p`t^XIgSS?GrMv=qyY=H)E!$pS`_1Y4 zj_G>eub(=!>aNSETvPJW;Pk{V99y41I>mp1);hAot_ln5T5sU$>gO20T@<>f6l>xT z78Z8r?t`D}tnfSL;=r;>$@s)W`5!Jo68R5^9O%|>M*2(K>dU>Bt9D;kDsNw@U)=OJ zTNgS{Xo)}a;8%9S6pWGI--9EZjlXTHtVOqsU^@%-{O*B)TpGRbMe5JfF9^L7f)zt& zyU_nRc#f|QOG8Ohl#~HAW@RuLp+uqcZ1A*?04|7w?9`fd&iRC%-}hR`hkB2rwB~ z)X>Kj{L2oEM;L;574thE@jJMbh}Hc}jj(0{@R6_Z|GqL}AyV{-Knee95m+;B0!)mw zygY_6r>P=HmFEZ-Omy3h> zDwx^Nclz0|n^V9*&JHGur-Y#ChS%9CW^U_D4-^VDOp^%d=@eA7Ol!qQIbyN(M>$0! zA0`kcyC<+CutjkcA9m#9w{I8w#taKFoNubelR&YHJ;@Gn{^zSfkw1yPvWq&?Ki6UZ zv#B=KPYUyXnwGzCSn;G)=Gc!Z*Ydy0_YolE|F1sn@o?fCd-Dg(@F$ju`-2m^+wN5V zygPJxwB%`!S(QQPs7=OncIR10gwL#lvp&SRc3ox)_kP&PiWGaDJY5KytELt{G%~{d za>_))D)D3cn_lI^Ki9cqr|mGd{C>i__jQT zQT{?rg%yxSB$dX*kHOMWiOajZ8kYaZswutbWt z{rqXaS1Wt|{4Gy}i`hRfJt26C@}-Q^In!w)m{AC>!y?C#hguRLI^0S0^(3jO{pApX z#w9`ZY6O87G?y7()n-mI_nW0+KFYXu9w9X|A>H3I78KLi^v*r$n5q>mHim&wVMW|D zpSFYY?wrkbY-+cwNy`wHuXbPk4eIDV1w_V?DpP~qJd+=d!^ETg3b7L@l+cG$o%Jy; zhQe5b6VO&-b#rCcuz1utHnvaO^S>0#bAaVJjIMhgEgCK7wsh5GxC%MckZs|W83sr; z$IjdbBP*-kI^P4w7Z+`)X=uh`^3g&UFMgPtv(jFjV9o^$fzQBwn}5tM0c&A@dC)YL z4iepQfyF;mATscvaXRJ;Fk+2@+UT~+#I@)#c0jPWaOn~NzBKK>e{cWxHKaRu`ZJUQ z0)Af#hz~(@g&Jc-P5%rIUbIHYfKs6V;1q^bZr`RfC^Wg0r4cJmX(t)~IWBH=MdJnV z-d>NtpHh`~mLK)?Dw|S5(AcK(r`%g?irCa>OAB|H^7QrXL8TjqpF~{>*s*L=Lec@! zI!r9-dI&Xg8RB!biS{mxK=)4LNbfK}-31Th!@UtDGv@Q#kl1lSM1&HN%33KV2o(51 znt2|-*}4=?(m2^qQ%WT9fF_TFw7 z9WI^e&)0!d!*`*N<0EItW=xIpGX`{14c2I;?cRkKgW{6MUC|#E^#K0J2bgcL8!mn+qALEkCcvyV_$Gnx6 zV?|3iBEOb6)Pz{y61gsxtrp$DA^$43Yp7a1IlvAClgUR*uZf%&jsnTRv-eSh_1-!#5TE0mY>eLw7ZY~;(MhqF~LM0>hnBeQa3 zS)waxsO>a=y+C1u{K4kv=X;2%uip9Zkm0n;x~6F@v>(abr2cT~Q7}_JghT{q)~~HX z=ABCOs{tN+Nphp5-epeJNBgCi{LL}{otB25paYK|wu4XjHzF&IZ6+jd+<4z+^`;C3 zD=8^S*x-FEMA6aN={g@KJ68=u1wBI<1u!cgK&vm~eU*lM0K#qtVGdn={r6zr8C{FL zY*wMTnkKSdhUDeu7J2*j?P(U4HXF;@r|c zBH;P}?;Qv4Gu}u3A>)&XW^ug6W5eX*nV40N2C)+sn;I(UMea8a%U>vIHBv$^~3TGfNmq{yY(J~;4tP2Bzk1pvj#4;2G6IDtt>NchH^{8Tc& zRkUjIZGZnmz|l#|$Y`$I0FR%~G>DCWblck6sw>PY{YfhN^LA!(4{mw8^Az#qq~*Cv zy$je4Lkt1m4H99T+mlieMd{{<$>A5 zhfz+OKVs(Q=1ZPoZ6>Cj37gLxUF9CGbYI)7^b!&i z(-*!&4dWy*tPPsO5g}LtOa*kxA6;Jtei>19)%7cbOsHo0D*~=tNc&u+_aKzOL`Q~B z+tjq!;`5`=UX>;n&!fl3MJE8@%t8+E4rFV$%tyeSxrtQA1jEmfk#9mnPd?X#E(!^S z9Gl&N2nZ~udK)zuF)yEU0sk%9vpz|ambb{mM?_mgje+FE(8U|<@*6&%t$(}dTsb>% zW_z^sT-eq2eQ>yc|K6bWCjUP`gc&=+j=N4Q5*z85{uo!`nSsmSbIS zZH!n8FU22C3JvuyPy2KjPoK5;qz)5R`GE4cfeKcpXBQMC%sF;?ciXpnR4yoLXzaD6 zGdE`;?!=);5(sbLd>65~&*t(vy_**9+n`9Pf*UgQrFepAbE&c*T4Wa?O#?%iJmN#f z*9mvAdtQC!`LJeY7%`yM0P)Q@tf&Cq8NydHmsdHiS-Lz+4>kHUAOP`gJ)JLG+|<>z z+k0(bz$W7|9h#lpgM2ioUr|wERPQ6b*cBg`kia!T1FbLo z{VN=OS$k($7y{CGkxg^cj5V-g;$h@oG}fqAlof5L-hy8D?3Z5U`>E^~iuEnf;iu`g z6&u})>S+CErne9ka+pXcr1O>*9sZCW5cU9R;1jYI)otireX(o}rDaiNI9lOtP>WP* zJ}kgUJZXdqdTT7oxJ;062YdeCbDe_Fpz1URgORZNBk(RLC<9REfFGJe%I@?k2ICYw z-&v&OIC?!6sn>gNFQ{m6RVy(pw`TQXvtZC%=>hdSUNT#3n~;E_m2h7E1ABu z6@Q?vt`5?gpFRqnAQh%y#RdvnxRM&+D*RQHYXzsk-5>68bsy#6{1m4-IiGW{Q58>7 zsDP`ZK7?>>}7uK1l3bQKpood>_p7Mv+NIp>- zpNujJ-WmB@75}3>czasacm7v|VbWCipRuVEiW0UPX6lRTyLG=w&F@QxIk~wfRs>)& zGHd|<8&u1D3JLiN)Oln~Opse)VWr6Auh!NXvwZiLUYOxRrrv?Q$Doq{Jd^j^oR+6V zic}n*C;#ZrsFa;X;a==fyT)Ik2-f=K#7PK4IA#HCBExc(&42#r^jN)1-8pio2DxENUo63O3mo#P5!d(TGdFnruw(xs? zvWO2J7Q?o#W!s|=LEyjNLRA(4gk2dk%vecr#$UwqUruGkF7)c03LFY}?s)Dc;PGu` z_vi6LLcU3DK?_q;G~+IX5|=vwQ4iWMv&>I55`` z?gF_LEm?>r-ptj{%9}hM2;)zuveN0_V=z*$f&uI90)j{Eg&9ejw!D9GGIV@a$koxd zVvs1x#%T5QDOecZI!#oL#e6?YVRHZT-@kuHl@XX><0?-gkvLwbp>(KLPf#~Dj{gNC z03BF)_xV=miHstfE zV+%%8>vo%hc(`mA|BR;vk9hc(cb`CV9~%?euywcy|&_lN8`48~RcSXy92UT}BKyX;ryJ#bmi$VhmN zm5q%dbK}b9RY7gYZfMxJ%;sYciDc&|B84N80F3M-S(599ak%@PGBq6|rd7>uF(}zp zpUiNfa_7vlUR2d4!=DCidj;zvSr7*sg(VH`;Ru`C!@$msZu(*nI&4vY!vw)qSnp$7 zP8!Us2d3^PV2_7@FTs&A;Db*NnD!44OFw*4Lc{Q9e-GvNpf6syu&>R_E^_~ACIqdD zl6@xd>oHPot!j#&L0Fo^zmo{&el}F_Ce;uIEkka^z7L)DBu@Af(I&o z*2yL%Eqx+>ll#YD70`B20O*eblL{?ElpP2~x}ZYwolSs4)%Y(S6$tF@HxMbFkh)G# zLery_$QB<3-=dtsDkK%u7x+dW>1}|F$Tn&NSSH#BC^Atf#d-7-z@dE@-A|pTr8YcoHQk z=;1o7bIqij9(q@0OOcq6Q0#(M23rQ6GDNaDDu$!osM-)mIv>`37fPd<2(I|ICo*a^DeoxIKtFa{{s2<1#LK^T?*EWGqau3$ zvNw#{cYot+NrLk+u*lX<49e7u7>^M(DR1AaKN6?X`8U3w2u1-k(;X}daH}zpBb1iN z%<+#HW8WNaMJfb@mFr-`6bwrjhdSAX%G5`$KU(Zf5;*>@F;}F*+}`Hq_K~&-H8F3D zqy$+4IDc=qOej{_Xa?o~Yh^q!2%#sO72T^HJ|3nh3Q4cO;fM7#e# zE=?AgZz>O>xr5311yrsxc1=Q+!ACERwH`3Hh#<{F%I|KzI+WKz*8+>jTn;HHC3Q|( zdieXtfM=b$rlu2N*>X!E#wvY|e$2f>LYZk#Us4}{FRtM85}PFBr4s@oZ_81=WNe?Ze}Nr*h}wNT;UihirZ;wPh{m3+zb!CBR2 z+PVBQBenY?_65upu*t%OJ?em3*b4&x>(c<)yH$lgYKWsL{|BaCfZaa~E zlV*qg#y_cy*WTRGKTd5WM%J)(%++_H7=5fs?0_v~y+F<%YvL{PM_SPL`ZNDH!dUyf zbWY>om!(CKp9yZ5Ze1~eJ#)t5_ECUjXYo1`!z=Sv}!~~nMM>tMYo;tR)N7fiXga4t^{**3j6UjkjK=McqOwvMK1=MJ>%UwdSl8>K{*w4Y?XvAFuZzE!HK&)VE;#io zv~zfOWcsik4V;codb6$>BmmOxB*9*c~(6)Z2^f zo(BSg>A0Fk+{3hN4{HwbHu&p56nwUYavGAdEZWsP9NMmYMz|O5AW8A3@DcRy zaE?!@H2J_tZ@*pP@aoeoW@zAY+f#fh>>*g-e{P81E8b8lyBvrB7RB*rwY5@zcz|LY z@%8)peTu%%gn&O*Q~xK(b=EJ$iEJ5Fg9xkdF6exP&_RQY>4FF(x5{zh*1cl_gpXOL zg&xT9J9cm-5o#LjM^DE)48%l^YyIo(@>{JB>2ZDjauDE4F%UM*j}RL9o4MI69N!E7 zmE-TzBHFQ1GHRnh)9*pZq51bLLk)Y8e@Sgc&66&=lr}xNFsHWnw{!6H@l*BjsDHoz zo97;t84k@BqP}e&ax6BVxS$GI4(EusEE5HW8f*6iE937(OipDM3{CHYu{mqEg(k@r z?gemL_SUeB-%&HDV}w{%#$767IP6u1iuY)@6ALdjIBP^S5kLA=6)|0_;CXF&jje4g z#UCff6mT4DyXd`@Blw<$_RT2=m($FoSKl@!o=bJ5=I%d7jhN>H(-O1lSj~2pLL<)X z`fYCTM7zqaGX0?aR!;DKL9onq1iDX^JJ-|I<464(Ij0u$vZ6rNg8mP^)5QxS5#naY zU`S8TZG|9PxjwLFC5*LwaJt9-)t;HocNaJvltD+8Z!u7rA~M~D{`%nqy`H{)ma$*q zh|bi0e=|QLPSL>K{t$qXPQuv~ov8)p^PCyrwg(b1W|Y4E@ZQU`VylvZ8M2^KNl zhP>Y2MX8@Z|FO~K1%7LQZOxBD6 zaq%Zw&hPQ=Z;1aq(IS5IcE`iXmx}5zWA=W&p?wAanw{JMRa%juR6+f%1N+mX#@sT* zH6hBa^@|X8BnFA??d_HAN>MKqqOd?5xx4l%?JwI)ZVQV0E-8(9mg)ySTmPSWmT&35+|xy13phR zM8+NoxViJ)qiN;mo2(ue7VLuiw!yue(N9 zSD!q-wAy0mSN3e|6>`uI46lyHfCdhZKO-{BeLh<`J|wv2Im1AhJ9CBXL@~(Jhf3v# zoc0?$gYc%fLE<_c*(Zg5%SHisUEQ|<-wabJZvAMVD0KO<{OjJ;ou2U1TVT(L-e8j- z7+`=bO925j2zGeWG4Xt^*@uC!Es*jPu=4^c2wVfsmSYFqC3hcR_|2wC-PzH zX-5m?>3RMS$9Vjzz5K?TRM>zIN6oNrvxt2_q7X9;6dKND=L-!lNP@v*A^DiN%>t{# zja@wc5)Z#hJec^__BT)@dFTiy^3-vi1bV^C`?sz(;+D5tudEP70S~TP{BRMCinq;Q z3Zq!AV<#8xZY~9rj)=#?MV=(p+~)o4Gk`+e(4nSfhMugmyNno4q>&QwzOhw1I@;R$ zYx}tv*E5X`+UpY{iAU4qX{i$s>%>N0sdp*I1mD4n^sq6Hc+!V zgF2!{FhlY22!(_gB`JH^*CB*dDuk>p_H0?kHii({%Wg3CeGDcu z#w_=LrqAd7`+h(F|KtDo{U6`Q@A3G1Jj~pC=iGD8Irl8j*Y-RrXVMD??48Y&Et8$U ziM>{#RZ;@ZZvuZ_1j@s36exNO&QmX{U{MI_w9v1Sk)7kWM9Ll_cvm~siQXAJG82biaS0u0$ROP z*Xi@{Z0a@9FF72D4FM+uN^5RND>($A8(!<@7wv7jv{Tf7pDy37Hwp*(^HSeofwaS# z=NH59RaJA;ymtq8@`^+NK_SL-4{Lr54X~(rB1Y%I?v}w~c=E=seXsV@pLDh57#nrl z%{pDjMV(1}T7iP^oq1L*~}>1_kKs@aUg8Eh%8DliZevvUgHz6z zyL!MxZWksloH5=d!trMDtxcGkz*jNV+lS~&o;bHLHO^5%nkIH^cn5aE4k2h~(a8Y? zu7~eBFHToP{#o~h-C|r<|QlDSeN$=|ht*ikHR!gJXm~w-K zRG|876OWxtt3JSEa)_qSUCGUh zX@mw8-t>7M*S_mc;bLU%C8ynWBL1Uubs3oGtfauzMd-m;I*)PmA!+4a(}}R`Y~`{5 z51#UTC#ysB9GKjfikfxlvmm9ZdE^qV1dUdE(UvJh;4|*z$Lv$~!R4dJa-lKR?OG|W zt4&`*3Uk711_lOfy3;T4>|&|)w`uF>u&g7!0|Pj|=6FjB3|G)w@8MZ;NY-AJo!w2I z?@KhXi((cY)b4t_3<8@AYSYW5jxP600d`JfPhWZB*bti+ex);I9;ENYfher*wmvUJ4*yHlR&rm5m5dV8)8?#YBUC=H~>hleTmpxX|rN6g)O2s+t0|b?IwHvfW`Iy7v<)@>3 zGZ+Os&y_vmAi3nBX9|HT+z9j=Gvpy&;G1AqEt@>N4|!9Pt>%e&sEXvFL#n{qYtd#4 z^joF7$ZSgs5ab93@}cL2C;P=^JwE*ucBz32`fssZ8M!c)3=AXvDCo?irx!_YSH`tGb zsu%tm{N&+*_j^1MeW@Yw_Sxje8(Wv=dM~6i#tVI??-WlKH-{FILz&b3B71cG>hg47 z_x-W^WrBx2x+Okd5&`~_7+IJMq80Z-ESHZ0%jz0siP18LcyMOl!-XU@9Sf3+egD3y z>@G07-?s%e4k!rNJ+cc6b%Bi+80DT6^r=aedo10)!RI3fj8r}cgZhd16qc0|*r(o^ zyZtn0IFfQg6gLhz(QKhFyGD9FrstMOhA2BnbaqSx)q%v+`~bOL!t8(`AehE~)3@WW zlI8wh{rd7m0m8CsJC-2|EfYB*$cyoKr>E$v^@`cJsjprlhJ~3fXUT-y_$bK}JHxxD z#*rEN?2l9hyN4v;$&?D;ZOBpQmAQ?L7iybHDlJtP%2#V?MSmNl;2F`$a>1|6#eawk zup0$TyBLhp#=5(M@-5Kz=Ql^IJn|laKO+md8lQvD3Qw@LKP+je0!C{0wMRm+qH3In zIRWsH2-O<;sMFHc)-&D9187lL!6Ck!TELxY^#={@5>tYcXYW4>0UV8a7b%y`p$VNc z8t9tP9L}>xXXet7cubkn>5;N!b zKg)9)DO2NSzH*`g02J)))pZrB8^EhFw^mYPczA{9pQ!iKr)+HP>V-qe4t1T+6b)gg zJp>%4Wc;P>P*+;^=*KVS-MJVxrf9sS{Labs!vc1lk8j>Yig^Qyo|brt!kKjdU~x}5DK0rVS&Zg( z$GHC)7-cvOXpouD#~cx@o8hYdJ z^d7kbAlrO{Z71`K3y_5HFFX;mx6{{l3hW+Vgiiil$El7u%d}*6O)_p8uCnisiTgS&#=PrcU%SW0Z==WfgGe zQIit)3bF?noRGDq$zge4fw9574zATdU#@#4t`a{Fic#?@>0kRPjL&mDXCIiY4cf3* zl+KyT0rd1{bz|Is->Lf`X~0V)BHPZeu!?VfNyC+9QLg%1h~iIU2U1byE`RE;wx*)P z4f0O6G@t{4s|L08yg}EUukq{-@>mrgchL;VDxT5cOM7(r@hiZuGbDl3+^XkM-8j2Q zSnyZf{H-J6E3NqlBQ~scQ8UU{S_!i&Tdle&X>8d3L3@4?I*&**uwBjT%q8@FwcW;feb}0v~rD3+3UwQJLZGaNPXj z9?qHzyKZU+*l#QtNLz_r|41Ndm|Gm@xu0Pmou0jME8Qgb{gG?ehYudVX6PIo3b7qI zz$?&6jP7te(dPUu-mNovh*5(qyz*^4nb>Y;r!d!^X!cht^S}S-YPlNhTFqtl;Olk$ z?VW=rlq?Q6j0CqM#_%3^n=H%pj-+|M$m$f7_#ZUZ35z;QFHKLzkH3JrTWb_mTRu=~0)=hqpbE=aF!;y!EbH z7;{5`+foJ`UA3^Xx6hsL%Zs1mVl(b{S}%WNA`%VPA8%a)@1u7Lf`r?aB!kI6k+vzg zIPaJNZnou4)Tn9m$mu3Gpfk8s?MW~+Gvk%p#XgtwArQm_|93k||by<_RgB zko!{qjhb&#!eD6-%A6&B6?~Ly886?kCGBLeu`Z?Dj(94_50&;W7>~*maBz0+CEerP z0y_dnc97%SJ-XN$os2p!-#hGzi!DhCune%Zy9@qv2w@gR4k&Sl8^@K3a%E{)_99`8^&Vzz%|zCmub{QkUR8n)@5K{9w4VnebR)@&262hbEv~wJ?V9z z%`?h8ejbm9&M2a)%kQjhiklxf1cy|DdA<=q0du+vc-^Ci=}5^U~NlR zmub1IzRb$uZzUy76;GxbL99trWRqqiIKEgkU|UL=c_*DDOKCf9%4J#bn95N*EUBM- z5-@{Ff;)8jPxp)}No$C|B&<83s1uERf~Pm@Yqq(Cb4vD z0cA}=Me}TVNlT{IEoQ+VzgR+7{2IUO7Me`tKepX$5F#EW2<`~*rSNT4?c@++9uUXe z4pYfQH;Jcui(f(!q--nI_AtsMnX8R7ZyR3=|3Bt?xisj-zsW19s#i5O=y~R3bXF>= zPr*Y#D+>(0s9o^zm}8R5=748gesDycx$zSRQIp6=ki+^4Ln}9uLc9{i@M5 zMBua|RGVhAKpzg-9-IPOqt6e9Kvi6qM%v*-yVPO;fIU1}6fC5y6Th#KidWv3q8Vw7K^%AH~9)Hr$)^rr5LsI%JLUMCFXeWsFQ#_rT@WQ3ArLhq2 z&$AaHxH(Eh=rkE{1~O)KHpwsa?vgR}71Y_Jj8fAzq2MUV%=_QhjVhM?LW=E(V~WgI zIaK0M_5Sz(moq115Mki=Pm_|1V@K4~;qr^(oZUkc&aXtu8ha#y-U&lA{xXW!9k-|L zN#)|w)iEo}f4r`!vDJBP&^F(ed|sr_LPsRInYP0mI|69pm$LI1CpsdEayn7Kb*Pm{ zafl39R{0BB?0FLwfGhWpo;Bk;zoi`l-@731s=9zJA+Fht44-<4twW1wzr+P42L z)OHIkmFhjotD)d^y2^dw*^ub$XUlsBt=S0Md(Koh_`5Is-iA-p6fw|P3ymcY@6DWe zTj{nI1^7T%SAiOlXN#!UCJwRmw8XB|SF9Ko?*}V)@#VMbUUgzSzFdG(QpWp-e-8}XAZ~rwz_>F{3j#*E2l(&> z4XTKS_ZcpJv6n!8msUTZio0&yjwlA65MALr?=e3lBp~V-$o+>oSn3T^8IyWfiMcFU4F;sHS|R7n_$w2 z%^;2GH-8m%SUHA^&Hd`MG#spVkTc@_I}m=ny+SWjlYww$uyb=hkiqIc)g+7CM{|UC zm{a<*TksFlIN58ZF9g*_!@T}HMu0uT+MwQTDzyuQ;8q8o>9+)uG@$3ft|*Td1XES6 zmeP?m%wy$r`OUahS(HZ5{=#_5W08-n=8k&Z)%5fD-c9SP2FZ7C1z&2OyXG=C{qDs> z1h*eMCWp%1f3V_ovBF1^i<_T-_1Kr!sVhO38$v;2FNHv@&TMZ8oyTYOJkaWMWX-M4 z0qDw71+ML+l)PIm>g1_)uWttIr1kY8hk?_wrq7ZkQ43|_D(Y)J9_#T|dE|R)3SR~S zzt-rZNd{_#;nGyelmQ)GMft1XWL<5vlSQ{#FpXLrzaZMtI1Nr(m)zA+Vz7>p4?S&b zcxYZt!&?&mKtw*vDg0Tvx%=gvQ9rt3erYV5wLA~ zDs}W!6&hydK-hzvPzpHWHbd{La zDH!y+C(|u&({cVCACy>quT8Y|}kpJO2cZeAq^K0`p3> z^?ht+NUpB9l#jFK@%ggc1PAOCdDkX+mm-v)xJ~no5{-Ko~xthI3E3K())?UmS&keOh7PaSs8R5e!H1=_L zY=y2n%yydX>$@L#aVvbF+Ty?ygKW~Y+{U2_&vkA{(l-$$J|AhNQ`(oK2tPM+dh>3i zqpTAFCHLK4BEHWCPHCm(Y96yL$Ue^!5Wit)M$D1u0|GjYiH%${nhb$*IK@-b85P;4;8Z}YQY^{ z%^Q^0WO1(=>-p}F70j_;2Z~qy?`p^^O{d>DH+y68B#7TVP_xmha5vWXeY-+N^~ntx z)~N;sCx10japBgwJyGE-nsOxg6{7txJ{)c2y&`2a! z9huelIb(obecw_|u(PWtwg9HO5vcOqqjyIRs6z_stp9_IOjosZL;)95!{tJb}$Ne1-`t>Ug=Jk_sl zrrlW%XATJuA_~n)F8iDyx(r&!y?<}c`gR)n*5pgXP-JKuAdI zuI#N%gUyNjOTb6u?XX?tGH&3k$eje0oX?wmG1%tdhUU_puLsfRLP^92emd@&%w;!87m>Z37JIzD@P--x&;3DQzK0mf`clj|&s*$|H3dx)N2yZY( zFiVw8)Y1IlQuOLYx;l)?>AxDd4@*m5=Q-R6&Ku?@LSoBo zUmntGVaoUjFIPPasI(MOvgCbnY1~8$eYXGJMcI6TOh?68;`Z4>h!lN@85a*adyQv=+Q8resTF+;>}Bc1>S2rS@U3;iPCr& zzy1L{veIXIX!28UN$g00wO2t(4xDds+FKWpT@5K61bTh7k1AEIVX|(gcjIy)(NhGYzLyz}q)&vST0q<)%POk{l z2fXP6-?H|bE)vGcwbxA z;2F53NrS_>y@>gp`R=A+Q~~#!&oyz`clhhSvz0kTq-ldAZ7(ek3)wz_MdH_R>l{bF zyOIZzU_S%%YXhRI9z}S+-``&Iv8$nStIE2SLbufWaMmYZPc351P9;SQyKM%q(}{J3 zjo`pTN^P8YuAr*&4J+9U&YI^{mM*>A3Yv9 zkbb2qyQB!~juw41*!{6p?Xk`Cjr|SJ`Ak^9&ZpZG;Id~_hfay23w_%nnrid#r*IMP zMLdpQODa!p@-6tL+wiJtcg79eeVP8JaheC6d*eGP5g(}Y*Umq1&rzLyITh1QL(SmwUO8Zsw;r>4TFC&ZeYRiyU)anuH zz|EGU7*n%IHArBwpL-P7(BUun^6Njo00j67(d70gJ}A_@c7-r8OGbU6oRYrD4Qb0F zDP&hS8sfKKoUJ{#v5)0P=YVdE=FSmjmHNyHKKA()|M05O@2@UEqbW~?xY^vjYIVxy zenoOszAm|Y$v?t~i+_0!bzt^w+)iRI~0??*9LNggnvvHbPWOs9fFpvS{(NI4KLNXgU=fcD$CGW6_xg7OQPf*_p-{ zWu9;TNmcM)t>>178xR$Ks9IS?Mbe+l8{(5a;;}g$4R+-bmX zS+Ux4n6$pGM*70fLH^&vOMk7~>5VxZN z+k4&+DDv3Gy7Q;Sl#t8Q$c@emZJ`%}EwGy8))=fMqFZI4&4*7 z6h+!GU!_>QExB_b21{lOk}zU;%%QjgGYBzk$y60j=O!?@oRhXld@)rpP5gWdHQh&cJrRiFST<4(?*+^Hj}z zl3da$E59G@9sva52-e9#U$Vw^6A?qs#9q6QHgOucq5S9-=GDQhuen6%>_M++ zfn1^{MVpz6zThy@3iHvgW!F+hc2K3UaP3~_ndmGDW4zx=7~NwOCH^9pzO5<(IBb13 zaA#4!Y3;XF;#!&qUeUtpCyyBQ$HD@@_O9To$-V2~v2U65@NWl0b_E`@>>V1sAeacs zdlW2nFRi*heL5l!Xk0yLs5h@uf2Q0|Ou&AiYx?cbl5pUa$-CH9TGte{p95l&(O4y# zSve4A^U~8LKEb*J$~?NjyA_O`(q7V7%=@t8x4+L7I*5eo*fF~%xNq~W=xx$HoI+gZ z+r_;azV8-;Stl*62*9V>E>$HA_@rWQzE=QWjme*qfC8pq`q=7~+x^0YDJUlO0y294 z98%e2=fSgA=zrFcQ|kDUSx;5jtxgs6L{>a}5L9kAE5VkZ^^cg8F7JGuMI~^PBpAU* z)YV16wi?dyzdwPc`+=RE&XCrODyGw0N?l!jerYX~sy?geQZgbrYF{!QOa#(||AJTUG zY7^b!2feS9_Y6wt4E#Q)1#Xot+yitb4M2hV5()qL_IoZ z&YvicN4+595UY)~g8A>>?S2B>Py8ksDRFVf18F$?5#ac4pAXm=1cBI6Ul+`=1`4!E zfk8Vsj#ljjyph1KDr5~Oc@Q`g+y{(NsXq~Na{M5=&!B9be4o9bqn&Wi z9SSPBKz0iI^BR=~?uM{7o z+&hxC`)_4`Z93JXmG76U6ZEYUzf<5y6lv3XOVxwSoYF;!K=M$|kImKRJ6Ao{UG_6`nfKPA)B z3kpsz&Ro)fipIlL%s#47`I+mNJ`;bvX}T`?;Fvhcz!8jJc@##?YsImh*V!RAFYi}n z30-RFm1N)j#t6arp%Tg4g;uXv)g|xMN-=HL_E@*|Vy4t;-2HsN_;*f0iQ9_DId5wO zvvPx@mm(hNJnENT{>LZ7iR&7`H0RcbeknfX+wlDwNG?hHY4zpSsihm&u4#LEDw7E~ z)}|Z4?taQaI@U17e=jgvq^go}#t+{C5(c2WIVvl=3wi@y5*B6s)0ef%JTA^a_7+(FN@J=qcZyNu(`3RsST(=c0s{qpnJ;A)ZX6r z)3lF@@MktX+T3*78}+_mVha6alO7c(Lu;|q&DYH6vRT|F_ZieD!MDC`&}d7;*uBak z@94V$n?9Qsk5;neUf-RS1)rB~od=8Rb3w*kshVtc2wIk1S1Nc;zZwH!EQ#!sco2Pf zpiCWX^zq`7^v5G8XudZ`2+SWWY6)OIhU)Mzlaf%buD--F{5{`64w8}^5xM>pOj>5{ z%Y9=oX&`Q6m>X)*tWQ-CFQhPg5>JEP3Z6trYYzP1o8JDXDZFl^sF~dL=rj3FP-_uo z^$WQ12VF>nWLo$Nw@o0dK8l-7u3zuLOAt#9VwCFgB-un98k5B9{=BdIlx0FPb z&@5529iiNgQ*64WM8){LMw8fXE9xGnJYY2BH;0+faYyu3JN$p!iXi9s@hQiax=#F?wD!UQEg_KF|W z9o@&s94KSUk38j$LgkmNcPWVb@6q?mv}T_F8!$pmK&_JXCi>_$Rohr{;{66}xdl0X z@j{T2L%#$9fgjYL|Dfa$YZaFUUP;-*j)Q~92b`=eVO~OK7_&(xW%o3T12x|_Qg=eM zRxByEWZ{;gUj#FxHh58!wnojA`&#KH?tGh)P@}QLYG%+Q1Un_Pz$Ji=*$ab!fSuHi#hl)vfx;x!>8sC3Q#Mv>*&#& zKoO_J<&#y~SYd(N>~|TcRfPEJava>xWU$(z9`;Y~GlM$wVCU_g8~9@BpCX}k{RFZES!(Q% z{HUMmLXZAN33#2mP2@`#6*F@Bu%qW3ik5{8?W20xJ85FvX(2e{G|oRCC_(c|L^if$ zRd$zFIaE@C&=DbhrX%Z7@zK<@NGk0NiULaT%Q-578`7H}uO6DP{PWcB*W*oTW+82# zOmo1F_tK&~^JnRM->TSW=Qinn%^;w9{zSHjDD6pko}?Lej?2!SX%a=rgCSR(ELwPI zjnF%l{E#1Cq7M7j4vMU4Qf=1Pzv7%L^P5mMh>f)GpSO;suTP{|DB5-If#}%z8?+gh zo+tMow*E|eMOC@STn9AdP8Xm3J#6x0%4>3V-*Dc=K7zJZUBA4mX(oP#3LFY|IjwCE zkXi18?bOYgJQ_w1*+#rcmzPRJn@10E8V+TWJ5itB^sU_xA2zjTdeE@nw)nTWSRGbh zvvbXh>BaE#GNz)-Q#182Do@Uw*kdBe7N@yI#Ud-8X8gj^g@pf&0$8*C=eZ#^C_Seq zFKh!Y+3L+8~Ae4+CsVDohbt-g%>M^haR_T@QG=R1G3Gg!^6S zDz`h9#xFn4^}OcE+*`%m68YlT^GJPG)(3R_uWo8yKZ=Tnvd2mgnaU6HC6%(Kk4ZGE zY!Csp(hn0;%b7Ix19DjU6z_j8&C~)L@BtI-Qx$NXu_4{_awUqviCDKla1vLh>b3xf zmHDfP@f=v*kQPshPP`5qm

Ek<#kaHqPmmYF0Z9^3$Wj;tOh$P7LljM-!{PvhjhU zwbmXc&JNrR@bBV7WPNJ0o}9~Kzl@aqc|s8dB~-5JfapqV#`ul|EO$#QcA$p)1=!0$ zDw9d9?pQ~=*)bo!i-X$}6}N!}PMAugFmjBVOb~&>OWa6-0jgghRQHgdbN-RT>~EOl z<(h)eTkS@^Ff2wNSw^|EW*swL&acx!Nj#dqzcfh7N!J3A3^w5n=lEcEq(4y<$$x&HzLzDH;&^inglA{6Nmiu6nf$ zd^ycFzO>A=9b=Dmxg&$=Kxr1Y<$9yJ_7eNYkp{~OwH)_vVZgR&f)Rv7pcl|>-rzut zFV!?}!8ik&=@W-w$ImVYq#htR4j(LbrrhCty(zcSqm(&Pt4<2s13zLL^JnfqP*ckZ zh{6*8j%bcr}VKMGcw1=jLb)RVM={uDpH z9YNIawk4`MC16%ubyhBXk)FX10dEYSm5zf2h0MURZ4fA`^%M~%z@XfjL-;mwp`@po zvsdQPd)F|#)mHYY!-7J9{DS+g7-x|>@t5c2loa?%8kzWB6S;h;xl`0Kf8tXy$0hgz z-ZekK@5>l7Otj(YI|6Y)?CZ91+6+I`g@9`|=%g--Vm&#RS8hYj$yb_M%}QDcd#>DO zDy#eXK|I#XiPfjfIDU8p;ql~txN^Tkv%!v8abdYR7Yo0l{xk$ME6!FpOB|takkCy= z%$u_3fXdr{{imcI9sAKr@>A#$76%$IowA?iOZ~!6klynD?A4g!J*Ug?nP|oK%!^#! zj$W#Lw5)}1xCNK@8R1SJn3J0%Iu`yQxz+N~pq_4%Fi7b|Acdh|0?C zxU(%)z~nV?4u3ndf8-$T;(Es%s-A8kNTkj=4MoPmKEfpa!&W5F^gCWK=Pu0RUwC(+ zR=0N7FiJ!c5rQ|R@22s_0-(Vv(=y-Viqi+x4Ozz{$*p3tLW{~Dxe|Rl{KgHZOpC7* zq6S{4?ekhum2tPa5g8jWGgCH|^{PN|H)d87cr~dwcoQ}sPoeWn7hi@dqG+VL(d_yi zxISr*%afg&;f!WW6_Qu~#N}NRtJhNAx)yZx<`_+#hRYT9U%uGevT?ID_Z#E3{X_mI zpJu%;!bqo%doW!1>2#c4Lb0{>E(KK=Zr3Qyy`wv7j2#^GDu*ZIoEGEM8v4#m?KI~}P$CB3pEI@<^3LeIf}zso?mDr?_{Fv8eVb?p@R`mdka;NH(JDvrRwrHE zvlr!;u}ElTgO0qg_~kx{8C=WSe28do`6DfDmDA%;^UV@-%kG%oe50>zwQokJtE#$r zSG93NBcBspN#=Pat{+tHJAq9LI=Pj`y?+RgU7*>NONRkgwEq)-J}EPve|JnR57XW= zi0>-?n&I5PdxxK9O%0#(os$=f8H_`1r=FI)zcaWrG2m#NutYi-y;V_?#odo$R*MO5bAY@(QZ1=>bWif66U2V1r@)#%Nw>t%lG z1V49pddl2D8%9jBj?2~Ick2|nt_P11#Jj0Kje8fuHu$FFSaU?n zbj|uySd6%2VV}d1e^n5ma);NpvX+U-8g0y>9Vy8491>PR)u+F8dfE)o`+0vhNHfbs zR;qM>Ml(-Lu4(!2seXY}mtIlj6d0|T$Yj$Sm|otmIXQx0V!I96!Nk-w9BiR_w2=AX z^cfWJ`SX)PeFo^;C6!ZcY5Gqeuv`2~nliW>90FM_a(dg=eSZKB#oF*f9Q!g!>k>gY zrA7`r=7}y&i<1|F8QZ)iQB$lOQaIPA4bJ~Z6*jab>ry{0B$E;Mx>D_YHW12gGI=dF zR9Y6pV6enaxsci1d7Y}B6<}&?%o9_{^bK23tWQS!t40IQFyyr-Jy`}6Vl068tbp{} z1$U(anpnGmyq7~dFLRmrtlP=?0pXcBpf|Lyldj@2wo|L)ryPh`&iv|j24HL)UJ*s5 zCi!ab9h550VsNaB4ewtLyk%4l)Gc8shPuZhr&fnfp~idoh}M`6Edh&OkGHh@G>0{e zc*g5T)^KQ5!!37WNlHWL09D+X)2KN)6u1GhuHn>=^(WExK2tg-#%`fjv%Zh6 zlj5D7%GM1KcTVlP(4c-1*3HHu)ZS>I+2k)21~|CVyA!^tHHaiTv}08*sntHa=W7;) zHZyVy-WPnWESA+S%UPOgO#o7L;eJqi*%>+7g|Lqgp~3q@`)+nXXC|!l(1n4}tj6k9 zN;ymX!E06xs2b080fB8P!!HH686L3K?B5(o)@7@wk52XXMH@=q13mrP3S(FJiqpOC zm_Zgq9ta1*opm9OTD{h7nveTbCbY{^5&E95yVnu`cbvlletvLYe%VL2q)?;ioz7O& z9gc+=s0MnU>#Q@DKLO>smVg)+fn1r%0HXl!g-2;r?kv)=Gpm6}nv$qesGIE#T~ToV z(st{Ljh4oL1)kThdj)c)x0YLMsazg8_|Xr74E-i;wCB2pG7HF`W-h0kB6Z29lemG# zF?(gRVw75fd%&z;5aV=Rfup%?O#ZZZ9CGg zrat;d-q)2o%>_Z4lEKUL#Oo%^&X_x+DTpA^I@g>Lm_P~Y>=du#vp(hyoKI)qgzt_8 zVZ)So`)Kw_^BYbJRs6rtFOa}V5 z-~m`IMtpbH#whejs(5k>KnfcDf<;T71tF%Ko(I`U-2Rf~U`O78t=d>@mvJ%LAQBgL z@#GoUuB~m2&!6hmKPXs&w~1zFpP9KcaUk@J*%b2=hU4V*A_n{vDmg^My18DTQ5$X} ze`mnTb5DLREyvWl(b$_kRWM@wlBiy_e@%Z;6nb0-+sFrCy2ACb0OPa6|pvLEn3nmOy)Zc>=WpbHkdGue>b-PE@}YB{ZNiUi!5 zSK>BlHojMUPBZD(Vqi{~O?7Y}Ma+F;sy5r>A3fC3&yHL{q{ciJNSJ9r41B8xc$L9# z|H1RGuT~^-Lp1;d1qphYLxxh-f*r}GaU&nr7i#!N9{>mh zH07g{aRdOPj^5K|b}2g#m_2tfE$kKM6MP?{YR+q`0MJ;DV2zU?YeJRtx<#^R``wxelW z6QB??prL&pumIQ)#Jwc70Zu>|a)e|kGm_x{@^ zu<=q1f<9n*GsV=-;(9LxfsAm-AoN(#3DWw7I>Nz8Hjt9}yl(g(Ux5G20x7$2REYdS zJtV46`|yh_Rwhid*>AQyU-=(>ARl)4qub-FtyY4}hNX z$30To9!&gvkKHeT-`@3c@rkl``&%S^lhvL^$~Z9C@FIYoN;~0Or+&R>poxd?anum& zQ7Sfn5rY@Aojzm3T0~!Zc;08Wold;hxkwe=mP@7TVM-EUsG!Z=b!l+9?ix>`ElU@G{ns_V0*)D9Z4r)KZV?J=~sZL)*PkaxRMtC6W` z7KY@~gON>u6PM|ugQp|k!-v|;?fKc~9aW6yz`IqeR1%W;dsMZyi3j}l4WONh1`>fb z7#rE|^vhf)m&g`bDwfDjq!b}bh*VRmVAzDCsVMFlmAeaRij!p|U2H=EsiA5el=MO! z>HPNP0bu%G=+fZr_q+~wexaK<^CxxMedqKWi^{dDE$wApEuxqC-<6AoZ|JomJwzw^ zj|u^71yF6X5mT@Wa`l^*d{gj?f9?lA`Q}altFKVvU@f(8_m~d@ck;gRrY?Qp74V)x zfp;YnN4O--MjB8Ml2~npS>nMdT-5DPGyJQY#6~*UbaHDrf|KQZ+!r}OxAEmkmomok zYKIllKJxE5L^8PRCgYH^NZ0XT>WuPfZM7GFJ+h0+O`tCY&P#7=p878?e-Jh4 zT9aOpH5%-;s0dW&aPa|Of%2=w?%B3lF#_qzGOl*nMw6r>9u2>Z+OmO!!bG?+_+B$z7u`Pd9H9u$mD@r-mCz% z*6$$*{kQhF)>TlY7-W zei0ua{O96P9@WW3mf#sCgo5vTE4~wMY5X+>{#CJ*6w-T7i}T4P)75-7zVsdYXU*(W z^o7PfYMe0v>rVbme9zmIK0fLA<9_!)2Z9_gVPhDstS5*wMo%}F{3CDlY_1iN13k85 zx*jhj#?*mgMh(w2u(@v8e+5ZONLZIEQX~Vd5x7sm_pcnm9EbbNkHc!gy8GNi7J4L1 zPha0RWJXw}q70gGlK5Fnp8WlPO92LyT~cAD`t0JM*1l;y`~0wKw)CHArXv*l96L3z z0@Tu;$FgH466u7gy`=b%W|YU5J$G*2oZ!ze%F>5|Vq^C#NT>Zvx%+A~8;B>LfQx#? zz=P>5^!J?Ga%3gT)lbpUB zCqp+jzc@a@=Ve?58i>vqEbHmfKh@dp`YgE?Q}T>XF1(pRbu`l5UZb9k&6PIw;u%KH zPSM&L%qPkkG1zG}AvL&9U{f97qpa5q$)f!uus_ zg+DD{xKS@w@Zftn&({kZ4Y_)E=B!yj!HyaE0nWbpIRU#&H`N*cl}VGjfnk4uptmCN z?`A!kPYvp%0~&=Uox0VNobNZwGbGpJ6RKrDlH~pjGC@6Vw*~MYb7X2TIlzuRdT7Yl z*f;{{jPgGVw8hJz^}MIlhfD(j-9X%3>h>mrlRPlUe)QYZ3Rd^$|Dlv9CLz36!JeuF zkF(Y9o`OaJ2F2hDh4htet~tY=LPt<_Xi>^m?Z!nWhHY;M6ukQcd|V6%i-&{_^r4dk zs9>6Wmq+EcqM~y^jDq6KF~f~GaXa;o!><2#1%>KtVS(r@zA-kYPO*S~Zf`EAuA&sG z&on57aK-89wF{&H_icmwDAe#rx*j4EkDkEs5!AGy*Ne*E-@a)Ewo8;29)h~vkzXv_ zQ|LoZWxcOERW4k2TAMW_lM`Da)GZNj-tP&uu&6s`jm*YtA`e)M$O6kF5yz z``2saG3s>_G5E!-9DB@gJqIA6dGg9E_xZ2yckRnLet8DT6D+kz z42h=Ek6IfuKZK@WUsAMok6&Y2jlxP1GzM~Q4e?j=Fn2XQM-mnJ@*mm$zQe|`Rke#u z!*T&h%V<>cu6#-Ob)J5z0(}+B&Tdw8q;Y87d#nUI9BDx`2C-3K9#=TthF4}!F7EXc zMF8&SubP!ghLK^4H8n)_6{?fHE(Q_uvmLeb2M=^otNuj#LO>n8BjXW_Eg2<{Gz!BV8p9f&Yy@CE{MHw^R86E%f&DGx<340OZwyVgnHiiIiChk zPqlngJZ`3H^6u1y^=SLORYEsnW`v+OY+xI}`sRpW)?`BPH;Lgi%+0hDLV1%qOluu^Mg zq-;yTSUV!v6^_0$0ygQSJo~?h`wyU|qW*0Z-GG3A6h%O(Vne9{(o3*n1(9BZpdiwb z-V!S+RjJY~G%2BX2uhWXbOHpaN{0X;BxIiz-}iscH*?PUX70?Ldzle-Gg*7>wby!n z?Rh3`CQimZFx@!RdG4K^%FbZ@N=gM8Im2^;z&MM%z#t!Yy+qJ{XeR(Iuhq#H1+O1Z z*ywp2r;nyb4edwnR3JM>(~6MyGrj`UFVfu*<_azkD344DnsH2~v-x(OtFrX3)xG1! z^lJfS1N?|dpELbb`RS0G&F!I_=#syA8dij?^(IG9*4W4$NkV+1(xu=1S;${i)Y)lJ2C0@>-I9?hP@ZM^_zCGbEDHoWwoL&@7=ze~WMlDf z+IJY!)4oGqOVOHv2%oUPlyF^c4r<-`IU9tDGc#d-hNt(v*?4q8J4mc75)nVK{766R zQ>y#+O2qxCwO%D5^~p_{Ese0weiD`=sE7Vd1*HlO(bd~Qhmsf?o*cx?Mgo6Ekzc_X z#h$XOQ`Trcsm5Z?cyNE+Sz1d4qCoeU){qL5id}n!NI^M0U ztawlvBUbi4y~ULkb#n@N@g|tqp9T-_S)H)-f-41hO=b+h{^8gH@ zu$%4f;&#=THmQxfj+QmNHY;QDS(S;iVXE=IyNi#`sS;2}e-KEmxGBQH2v{Smi?;`?%|2Cbdk*J=vbvC^j~zD z(+Xm9C*{U+oE;0@nxEKWikGr`*h&u3s1*+DeFkg~hYufj+^`d+Zn&Qx<7o4#iAleM zi3FIn?JWZYxIXjraYIug7+5%~;D!e{={ab>C;8@;gi$CsQEABpzQ=ELVD;x`U#;pQ zG4-#!K)DU#LLXE2Ei7uKuc?1!S$!_Y9ejbE`mX$g&7%P_12;g+S?wToFxTbPdR4}7 zqier*Cn!IbsU2gH6poV4^wy2LU(@+0=X6PbH)T-r_8E?`C?~cW&%^y$cN;;;m1Kn@ z%iJ?u2+%=&;utH5-!kQb+!o)RMusOdf@+#B>Yp_6o4VK85nUx2yQ~w?S3VLCmf6!b)T_{itn#5F5=L)$T=;&y z(=B&;#&}NUde=wq@H5bR1>XzlkE2A5nuGRs%fFX8sy|JR7-|rBN_mlNj+E9bu2&tq z*W6K7@wtaVzs0!J5l<(!6gjj0Y#%~5uYEIbWzG!a3*lTg9((QNV-QhU-^Y!+_Rvvh+#_ez3O1kC#-y2`X3trXOMPs`6umJ)V**Q&g0V&CGM2aFUXjSBpHRywHTG{zWe_uxt1!LZ^S(mv{&kIfdq&K#H25SlD76Z*PiDWCbk^<(-##F>L03=)h^Z5;A0Tu z)Fux+P4e=7RNm)x$MsOMx}at2meH@*;@_U6X`U@>o*P%M&idu-xsV;&oDx50a5`4# z`Y-#C_Xgg_eu@ZPtw9;iba!|(Nqu>J&H;clYmb5(7P0 z^mknPmnsS>)U-dXn1Z`DG#xYQ>B5)SbNsy5M__yqn1RZiRLKr?`%2~DVXvBfw=RFu z@ggEd#HLHX<7*wUws>{JNyjWUVmNp3wQ6D;YzghT^==}Ny5d4TD^03_$ll~bw7T5 zJ^X};&gJLNqam6FmqG8Ha^AdIx-@XuAzGIn`gJz#YS7Iyi->}j6~B+0I0P_r3N+sC z{d!{Z05N_M;NQ26MAKe7(BC7a4%`NJjeT5} z{$tG~D+GZ8mRn;WBKI~CWXpiK^`rJU5gjrKov^(rKRqh2CTD|F%lSjW-7)cbuwF6; z%1zz9yLdC4@1!ZRn;YddlsfcZb#Ta$?YT;uXWF{ETi)?VTnHMwsP$W`IYr4riWj?? zB|oG#uvBc>cZzRLyZwFNDFz1zhwSX^b-0%2%>A(&YQK0a@5^Ydyw5b(SWeT|K6F?^ z|HJxp8f7B?zu zTo2H9Pq#trbt%97g)hB=aa<}|xyvRdpmW2OAW-3R{b$LxGThD-6X;>FxB2K>zFGtu z#z|{V1Se{5WIu)Xh+o^GqWX9y^sIu99X~#iv;()K;or`&ulAl@xgfp#;oaC+BXxK= ztu-ZH%Kxm7>{A$F5UOZ-d04ogF8w`@^kt<&5A{v(G0u}xfnw5(|86=5{a++pU4RmVS1iQd z8R7lDS>YJl6+^SEa(nOx&LY`Ca(Kn)(&}p-2_q9)1$9mZ9jK|0aQ#wRdKAi|9R;Ki zML_#tey==1(K&IX_)%z?O*1PSdeG#H+`fLzluzWuFQ+;baYX7f>f7F^9teh?q@}PI zI#RBTxXrALC{RTqEua7aN>aYg0yfxZGx9+9(!#x&2SS6*A33K6eO(EyL!l^Yl2^Y^ z%R6Ksd=?eZy=KVfM9f?Z%}r$0gME5h5!ET8Ha@wzBN#S9?pqu zLxA)acJT>J29=Pb<75BQ0>sYhGt*5^Xp02Rdb3*x!Nr}_bj!aDa; zKgfS-Xm!Pb?=Crh@Xz?%&%k+7f^hi||A@$_>G3~q41+~61PdcSNTs?jNA^4(ff;ZDJ~zEb$k;Gl`Zq*MD67msBC09i@rW4wiYtMB zj+xRB(F1T=`xp&kK?GHlqL7e$zbdK|d-LSH>+^drAd*i{)TUKTnP7^+pws3dXs`!5 zc=kOAvVT&mGE0SorU)V^Hg4jKtH#+ouG}Mmc_ACYWrka3Hr1Flqp- z5b4ileObp>mzZ`TFQnLZj%1wtBRxrHremz}@o<5V=0vqnu2J1{jewnW@*n*_UipcU zb&g5V&m;JTPWru6(lnCsYdY^)TgdDD^!`^F+}C}q%MZ@4(rW-B{euJGTR`@4pa?7F z_&pRhNcs67SKbb24}b_BoiCuXb9my0dQOLgcq7>}a7RpcFk&S^tKMuhIZPMvfN+(2R(3Jhon zUB{zF2Qg2&<}OD=i<6kEjRmX9rKS^N>}{TppPFA>UW}+FN@Pe6gWg%46qy2jqvx~6 z`4!AXlU1TFL>RR;&edOhw;j8-AfBDFs z$J^~kKQ$q(ES;37#Kd>BD*;NNl>uE3=bw9fslmF8p&|YZxo~^#Lw0#z8iHlb7Q&0` zlV#E6sJIww0-!XUw^mS18)j4pnDh2d8S{J`xrd4Py)w@?lq&->$+hne*e*xbhmVxgfr&7`;=de>0P#YI}tdF!v9~#!yybm>1_+P`Mix znIivcO&=OhiqQ3U8n5j8_SaBmQ6iEK0>6ICjJ(Vj__8#@G*;!FTgF{4;Q(@zpegKL z3BXsU@MIkUC704#vjAnVj5VbqHN*REr!~J~z+P`je~@i;fpZ~3ldh=f%Lm1t=dWH* z1oS#Iu?UX!U%DwE=f&?%&t5~E%5#|*m%dgVE}^u#|jajyF*V1hw};PQB^(Dnuz)x z&3$2Md-#E+j}%iN9NCFDbe0z8N<$G3^<`+YHc?*yJ==W+*$V7@&ZD?G3k(;T^Oh-5 z3t*9!)T@<#GMayVthz~+)_0h^UCwC(*!{NybCtcjLq#N|zK_uhIq)O(_!Og6L7hUt z&N5vu$F>ai*}MAEUxVRtF`en$es)&#s5S8CkM|FA5zAw5=@!Bpdf8g0 z@M=m^_v$ErN0EkmW6D^4K#qpv2(Ux*(GYX^-u&pX{jQ6(@B_vjqjtPfO{(!LJ-oUA zLwz3yu3niXz^-kPHR*qH0nkp1E_7~h_tO<2Wz!MkreAcXz<|qJDrht{h7S#S4T};@ zq-es<0e5=1#X_0ChJt=F?Iw=_yTyL_;t6|a+WYzMn7U_F3f6butJKnf3GnQ9VtLNa zuFcnNI;NW04X$G7PGk{8oT{wSKNDP4mC{;t{hfoVn!aIFU+3pi-|l_0)zfu!{n;IE zo)5N_Yahrg=0-eNXvt3ZcbkpruQXjDR9!|sremQFtMkDR4Y_&U*i@vb*}YG zTpg@7Cv*=P4t?4auPyQ7;fG`DU4u)Xe(}n#XMGfcZw1HkolxYu$I9<>R-0926~%Ni zb=BMf5(4*XuXYcjvIbFO4_1JE5r9&QsEcI}muFC)+PFDtGnd~O#Qgj6LG^FcXo!B4 z(u8!Rs!b3MSvn-1V9qoaV%K@*#9|_p4Oicu0M6#Vl*fBnAZc5FOjleq?b<>EDso}2WrRd;*(vE zTT1ACj#j-&+&zuAzr4D?7_&xRg48qDE}_wDlPfeogsFZcPHNP7LT-jpom}vWc8L7l zO)hSN-`>2cs;aH4ixEojUGvLUwGCoLeSNrq-$~5MGl$&{-Cp&3L8@qoq0rU!Q|~&_ zC^|<-KTMT_2Yhg?ef{j`0&Y(^x|^8>WZ_a@IWI9rNH|@|oSD8@p3kQ|VYGIK<>b4t zEfv*|CAZ$Ipf(qT{|yQY3Vh{Rd8=je}cqa^}EE! zxYCkd?{d`{G5w{r@0gcsR!H}~i#lnlulm`=-10UiDSIv5ezz8Me&IA8m{Jw@h=0U` zNOIe2eS=u3cb>TZIzJGwja1-C=@=U80PQf1X90uzbx8sBxSi$MsQ8CgS?vXc zyj;}l^3ZmQ*W#p|c-2SLl()iNAjYCTr+c&=yYqdl_z@d^=_)H_u76Qp*u;`=R`ltb z(*$Pr`w%A1<+kIWVMcAan$MO2_*UG$-_Kw{C*^0eC1ano?ZkB+c{P6ag5!b@WplIN zP|X#pX8&_OpzoHaKri=A`?4!3>q9Tt-kxLHk%FG#^_|`^e@)vEr03@0yn&br_IsB? ziylvA0qz)Q`TCW1d8NJ1nr+pMhL{bT#YzkJj%?BCIK3+|LmO>E{V^4yIN%U@qrI9i zpOg46QcQ~$|9|*HMFbFqjSXXooRpHm`?V)dyzx1}cui05zV>|&$&{8%yI;xf$#-s_ zdFtWe6!;`HICfBo)=ZY@nb5V8OK6A8~#%CA%9j5dak~3)`JJRpnDb;PCu7I2KSY`jYLqnWY^_9 zO{x(QKVlk0$zR15mF(@BPoQk=w>K)PL8&()+w`r*wVk5egG)mLeo2&%FQD1*XB89Y zA?u#Fo&vHOzb`K3$HYptP4?S@V-{qE8TX-(#ba}!n1?%|g;`YNgQA)IuXhpxS5AKw zx0=U30Xbg;OpOdr0!qXE0^EsRtv9fyZa00J*^n@&TTe<0=kl|^73Ka_W31dcH0;!w zZn8Lv+Lx;-9JHlZ1h&+DHZvEdCN46!L>&JB{34U=7SYRc~Rc<6x1MUQIr6vl!LzQSoIdaXWRA; zj_D=w0D2I%z!?}Hg4eKC`!%bYwZ9WZAh-B00>AgB%|YiGpk#--^kE+=h6~fYqphWd z?hUdjp56$!J@+$>WKaEwn#Yr~2ex}C!x1Fo5OBmxgL-zGq$`8i1D~<)8mxGkGDFC3 znNJA_mpGH$$ZD3Cg#ISw0`n1ag&ka*s0k!E+ zfh8O13^Rl07VV~s{I{R9VL+vjAo|Nx+_j2Wik_YqyaVM;eY9hB zPuS;5{|)3Y*+6#5eKK3aTvL8X%HQt8qW4^=BhcJf%ycb9ojP$sivpM^H=;$aG}&Y2 z!u0(}#}s$tmaf0^I)(_YU2ff62$TZim1x>tG1EsB^E~aAyILuDu6ZOk*cpBg3kX9d z+v5*6nx;|53h*$v)$ZpH3Eg#O@3>V;CV_Lcf>~>_z>yKC#e{}~$E6&KGWOuIZhXyt ziyYsK-I|Tooo?hrG`(gQI7E6hccKBPdcJg&6barHO%2?5=(i^Ic$euB$e*R@(~ zp@`u|hyF}I9uWfaEs42-(jfwJbTyUtd zxA;hdxRRyvi|5NP2)U?7nIe@4`Td4{#!==4yyx$*xO(}1&T&k}19pSvCn3>j!3i&+ zxfR9FSi;rb9NPdVvbWf4_+eprw3aFQ+0%vY?|3|N@?pcQtsa}-v=XT7$BQg^(aiv?rs8ns}p-&VGbV8Wyzewqm~Xq^|7eq zC1=aq;5V}m^*0e4@e!z?^Wa|pdo8;LY=vS)*Emv>uo?n$gTd10&wpP&K0&ADOK?Y* z-;xG2MFds@k|`|J~sU zV>7dNYxQIu94i{AB}%O-b)OSna_*ZlE2Mo<}sDk zdUDspC7{#u_}2-voU;na9@Kr9nmLOs$lS=FI9kx19z6-CSdFj+BD5T-bB79L=8!Y2 z&|8vmx>Xwey`HxT|? zk1Hgg<#j#us?A85Bj5E%VfF^u8*&aGh)Io0iKf`TW3M@c7X76nqOn*6*!(7?;}bL% z8)4!&;xPE3Zw&}(&^)KjK-FEv8wx3jcwh|&k9oh)Ky98dD|_+^UGD6-$5Rq{C0uM0 zZ1;ULlt@PS-E#;5tJ2!M-8>#pwH_w)P&z1Sfz{X@$^t^EVPP{39)~i7=s*yq=2#KaXQsK>)3gvNm6g+U}A_mOe-zw@c&KwY%ic z1Ofh`($d@);1-WtDmb4Wi4|m#mXf-r=PpZ6%%n{P9j$}QVR1^{n+fhVQEFN#^04X!a6_26^yb!9q!NEo5ZN0; zzIEdU7bq=LD4+QoeC?&=uBFD#h%NfZ4DI<80m_1fsULvad}Fgi#@y<_a5J~Ay67yr z*)~$+_08zBw0BGMaDX$@q<7Xa+24JnL07D^mai@}vUz1F(i~x;j%?NDEtsfA#mWR8 zI$>>^mzj0|-TvO8YVr42nWM7%^vhq$7G$8OW#a5?PGw35xm%a5=s!E&v|vv_{ab17 zHdBn7LEAgAYqQ7>RfjD5XCluhEhNpmf>Ce!4hiQAt>rqsf?b6 zwd{Ji+N+3(4IMB{u*`VogMd-$XoOlrJf@m$--ZvubM%8>5o)&Gc($dPGYlnDHru=ju8y*w;C zs0e9&#eMZ-Yf5A!+zBdDsod`;iKd+THXb)hp@-5>kh9B!X$uu6^hHd=18z}p9ouB| z-ukM2)ozcD^d+BJ{2##PKV{B)+a}8{;=IkHBLGj=?(qj3}`_F#WxJ z{d%u62`#MQ|E9P19+3CDGM9t~y4jz>0EV3QU+x0l>mrB#vl!e1YOc*cv`YO?Gc;k4 zbMV<`ZBiLXNCf5_jB=&wrmDZ4tP7BkqW{s@2#Bj5;cRL2RqN|+XPjl>VO#1-&+sP3 zAJRH-;J_Qe{2MTMBT`tSDgDxmLKGalJW<2<>eVadz}-UGr}KBr;lpi8QsBTyjgQRE z8b0#U3nm9Y!Uvk};LcatRehOv1u*td0;(qgMSehQ8x397b)bOgBarA~guZ5F*#br9 z8#iwj1yQ+enBRa5#(xKNb(tY>=i=w-fojE)xIEgs6ESs;9!uSG#DIV(rj>$2z#Bxd zJqxO#)LiJX#L`^=3RUJtfHb(Ol<5RSymn%uCUZs>%?kYfMfqVXqLzcx!4DqfQ4y=Ai~{e z>B)Jp={MUP7!;M#FklVa5T6GczpN^ai~j6|DVs?BFr{{5LYmuI5v1303q|P%r4^rc z&ZuBdV)d_lXVxaZGbvsCVCA9HV2U}Vq{IjCTu~rt(_g^^_ZFx!Gt!#vO*&;#?V00C znv2)lpT+opNd?lKP{Z%W5JSb>Yvi33JtHHdHMoa@jHFHfH2Y){G#8&l8Q!rQbs;ee z%43atQgZK80?4ni)s8Byb<%mB=3s===mPaVeEe;wR-XVbusvOWb9)1rHEA;Q@S;!B zx1;bk0-mHxgfM}5>hPo${k@D`W^`fU1*m}xZx+uziIX(7dHL#RbbuNcsUe}0=n+wlc`_;0B88;Vu>?4X`1=9cmK_tWeF%EXeCnN-`=*($!a$E z>|M9a(Ys@l6b7wP65H^E-7tlDXq~vouC{=f{}bu^)$7d=1>tv=SdCjwg!wu`V=EjM zC>2MCOA#=qI;GvKBBu?j!~hNRz|g(>MS5LLNdLZK=8qpg0_;=16*-j=Z*>Gvo1K%E zZUHh9vH*@i4ZWYP#3BjCMnKl?Hr`YhzMSmB8IED%&ug4_}Q~(?Ml=SW2IY918Rf_$l2z_$m&9UDj!mF$zlg1 z55qzOeJd;8ov^+XeQCLC7GQfDJ2VX|oa5dB5q8c>iy(0qAkCk7`HOh~I$I*M*bFaq@ zE>RCd5${hxnbgBgt*xO5>P94lMx!AxG1+eY>D$G_`$$2}z>z3ddINC@iKjJ(dZm+4 zm8_hc+SbC(@16vL1k36q*YV23&;?*2i{cMt4}jU~ z<;$1nob}^@6-%>UyKO(ev)tr_7-((er;rdZw=I=`5O_#yb@Qp5oKBP!xCQ&J#AeFy zXVC?eadVcCEUeHUiyB^flHZQFxBax9uC+C0dv!tpZAp+>JSB z+7d;nmz~EprYrYg4LI9n=%P66h583CLI$LB2jvS`-pj+TwHqy7VsMI@j}1VlfCNk(2{dzOHlxTa6ik++%a;^3wv{H=6EH^TeK*daWIFGKz_EEyx zr7PWVl573XVHBqoYDFP%f6Q@=EUN|vKw1wxrZBJoq!E%}P||NZkgaC|W(&Z7fA|XT z`2u|I?4HV$_amb)Fg1czDi+>51o;M9Q>oO)K;%awv0m2BlKY5&z)~_PGAyhKkmUoB zWFY(?qTz3_bU*phO1FUG-;Fe4yAiURxNDeUFqo3jnPB5FDCEa7-qZ;-*kzhi6 zpPcM8CbtZhv6AX%Qein@<)`TsgM{! zm*#yPc$00h=XkvaWMASdW#Rv=L-zkWC%-mzzR!O-D4YFxx~Nld^w#bV*^OA`|G2Q* znCv2)&RCJ1wO*V%tyBkxeP}KIyKmq0du{0L-8FJ)Ot!5NJe#)-lfX=- z=_jWrR1smD%TM!k8NVR;JkBFw4+CwL;Yn8@9rLOt_(`>;7hV--eCb-42V~86!kexf z)v0jvz)PqplbE&v&|SILS_5ynhA@%CN%X*pBSFgcSFeU&;~r$U`yV{|?#&x6Jv}{5 z;{&HppMH~_eGc@-xzHMbRomLz?++#e882W}1Dn%xZPK#SmqPlYFrnm6xiYF6`fxOa zGP%tLdG5&I^8aq&o`v0QmfdX(Xok?ryYq7pJ(nw;^5%pp#dDglyWQDZ_r!IY+%whY zvsCD!Ta^eYm{ep5YS){Gyaiq0b?z#=PFl^v2-T~X&t}U|HNsgwHXH;qMb*_UZkqou z02iQZVDA7!@fQE^jrxDGY5v4jc4)fo{i$2i9AN!1GU5e-<4%5(|HXD*D*jv9Mazc7 z=2x{nVWyjXGa_S*Q?22S_*9b(0vYnBKiD^twWDbe)tZ^9KG?j~wNNM!F%ADkmVU3z zGM*kb&9ND1T5u*R$#?gj3*@3hjMpB0ya)TBEQRs zAU|NY_5x%s#76f9Gl^nyU=#WAeZ0eL@5ZfLM}W5~f5SbX8gEQagO^K&>oU7gt19Mm zcs?70GY-EUr#J5Uz2RMO?|uB%So@XDYI19-y3z1wOpvK~Sbb14b)W3)X91=|iOcQx z>EaVO1B-j(iu}Kb&LJIo`}+F2tvQ9&P1ed!ojiH<@#Ay!3=Dv0kONW%;FbpGiyrt)26(mU_eG!%M+bop3z4-g%%%FGG^DW^0Kj~O9IucCGoLu? z=23_R$j>oAt=2CW>+RL4lmLO@dJR2ooVa1$2Vc}^ZVzQB$@{>G7Ivp+#&LOM660mJ*M>PO%GI8qN$NQtE^+?+&Dr^RoA1vV70T6IC)N9kY_qYTvykq|}|D{z}D3%hD( zcXnQS@93s?ETbzJwQuOCS?m4BBd2x>FWd=m6IXPdbXuBGp=EwjQh0Xd)C7=H0o;ff z@5dKjK^(_o5-3t_lTnk3v;&5~Fskl5#dvUJ)76;g6+*EfC}6s!%oVG*fmyl*Nd%`bRhi^LbtWupzQo) z@%1t|$F!Svzx+Ub4BbnD94siJ^m!3TOXp4#)=bsPkLCxu(@rv?}KXEfZ831Rx3s@cfJ#g+cB1ykLP zs%G|`v!w~fDMr>*wo{GDuio77aQnl5suD2}sa)muJpd8h`^} zV_z{bIR^5?o#nZY0VCN$!-oSG3@4T=fngwms0+S-MpX2YXO4;YBQc=p5|={2dJG~z zqWHqk)6gdg^Ys+$JuSDC2Ayd3;z4(7dX-~7bepUcA4vyk3n2Nmi}Vy6ypIn-@D++1OGdH(;y8B?>*dc1r_7SFDQs-68&iu5?fZhsf#qcx|m?1HX=G^&gS>p{vkY1&wiBKq%dmxkn5Uhh#;O*N%3wP6x7nvy>ECg`q zYBSb%B`4s0T$~;4&Z5#FE%p#eDj!_zkrsla*nc3fL6-wK4?yY^Vplg@u^T_}^4%qL z@8FF4DoseTgiBM;;uFJ*cFiukAn zW%AK&eyInx>S1Bw)$zh*fH$s#KotnX#Ss6x+-ufRL)VClOXyG9+4jH#+2#c`T?Hf` zzT67_0O~~7H=F{@?#Ddu=U}jZb>&$1ApVA`!@je=24dnb;r_hlk3a*fl@d zIne+h++mLpxNzM>AG7V#%0WJnaQq5Lv5OEvtnSnUf=b|4GIl@#6+QXxx(oNh0^K#r zokpK;BL&xY%N}*`(hh(V>#vPD42azYm(_i5tJRj|_O9%Ek8p$cO1*j25e$iZtY@c7 zTHXGn846QB>$Tv)-5^s^QY5BecoV0(a`SF;{OD-+T?o-pJ9I*kE-!WXwu))xR)fU? z{?c8nG171oPqA|*4a-5j|LomrD`SaJG!V50$?!?4+<*2|@MzntwRb(_>%bQnbq)Qb zuOi%FGE-XB<`Gp}+*O}%9vMV!PPA;t4K%l#c&)`C0J>a5R=Uyo`S~5wpnf81N1`4Z zfo_wws7&A1hdeo?v+eBiK;Suk{t_C1hPSO&l!K$D5lRmrEIHoJ2n{d)B;BR>(+hJy9;S8+(?%nqXP!u#Sd^OW0l&cxG5^|=mu7? zP)S*bO-gewIn$pbh}5oo?e>sQfe#x_gBh61=8%80AV>?KQd$hDdUQz=%%xGTd-C$~ z?tg!sS*dwpj3NL_%^{3mf%WIlpN4w_MJ&grl*_$o!5)CW@ll5GQ7GjV)-f%7Lmyha zOw3|9sI}!o8h!T>uAGR_AoiethFO?jK z+T!+=2mE`qJfQLecbUtbHgdvwTywHLbhys6jks>8P-9#0zH5#6e4%DSQDol!bR}?Wp-Dl=cKvHwy^VmCJM| zGDNRAK*qq$=;_OX z9h%R4jQ52!e$+@TRhXObc?u{n=~sIW-kyX#L()@UlLI@70v0iH?I{qir zAa6$W=}`3YvJ=qs{0wZnTR56`5d;ddJ37-`lId!Nfg_<4s|oC6fH?V7Wf=YqcqM@6 zY_5Gr6iw&02dVB2YBZ#OFf95u8Cwrl$>~c_K>x2OFiARGBHYCW|KWrjcB~kBk->7$ zGnKuLl2S)LC2VI15rfVTRr_0S?*HK(V$4Tv+!j2hcu4K32fFjlveV!Z=J~G1e0<;w z7nq27cTz9>bAve-mj}BHUXyj#Bf8kzi@dn&UK>b0Hy#`J?(;7WsN7WO!|=CRtfd|vu9tm0mDDX zreC%QfG_j<1`v>yg;&8Sur{Q289Dz1(eeY)dx5Sr}oQ z{)kH1cLnxX)9OTx?m%7NgCH+pEIV0{%ZIwSx*l%lAr6ne__E6{9q|Z-1|4m|igSkM z-!NROu?W@`LQ19wJxHIvt}sB6aJ8tXt9TN3tKNY*{UK9tSsn0nbqL1~ww4v-MF2lY z+#m>c4av#tOmyr!E)7qtsM@{{8Y|n44?Lp-!gEiwEbxWo%l|+0di=loPIiVCR#kp1 z9^)5BDwo%Df!bQ|qi6dt+bItSl%G6(`al-0N!3*iJgRHPu}Q8Pt#D2IB%wJR zOz)x^`K%~n#xdSj7FWPu1ctq22ZkZ%2KjIpAJzyj^QGN!Pw0+_skM~&E@K)|~j6t+zmSckSAg1)BQrFkZljevp?hazZ>U7aT-YUF8+Kg;arQ7Do#In7&gq`OT0&75LbJehY3|mZ4#KP$1dQZ_CH_kmW|z zP6;JeY-(YF87k~3dJ`GxqYlehG?XIhmTUL>@Zk=a0RU~()|LzyQ@$+djDXy79}${E2Oa9_X3 zx#w_4`{M%m4?XBD(!EZjrBP(OrG3_sZvM zp}de_>s1iZw5s!e`{T#uqeo5P7Nv9NZUC8%?<4|n{avWZKG?(Z>0vhU<#-0$u* zd2i>&h1;;XA2pX)vY&6yo?iT?+@CAmUvPsH0ereG1G;Vc5opqPhMgf>vN~V* zK(=rzhzli?jDx6=k&%3S(iRP=8Ud0$FnAVCYhvNvR7!<{fNY+R+8hZp8TsH?#DeLy zKIiQdTHDGmxwb@Y*gJMNcX%%%i@C@dP3ks2S*H@-`YhHxY6xlF!Kghn}rh2IR} z5L&+&ZoHP=A zP8qo=9sJF2Yr6?sIfP$&=415nUyIPyM7SNK6gFc_!o)B?w)H4}QTZC+~iyv<`>IU}(6cyY1|H4*OV1!7YyDpw*gDZdc?bQGqB?Ekb8gc9dcT3)u@2!nru5bp+>NC zu|tg=y2UoxBZqkaF1JCa+1@NuFZUkeBCP2c7#xLK<&;d9<6>gYIU-Y)8R+RD2&BZe zj}6^z5w{&yk+6AX{O(;cK26oD-E`Ta+ViHVNU>X@W#8~sk#=mDVN1bNqj6TuQJx1@ zrpKXqe9G%o6m)QPgb{7~u}0FHZBsYb5&PNAWvDp(%gQ+S|9ozh_z&@1VgG~Z8H!A( zrO*Nl;^=hQeq0R^5A)=9UVBrKX_n7levcrcQ066lrpvr(HQ9NbrpnAA-t^Gd<*k%q z)bZRf%Y|ySTtMuym6qv^4W^yQeI> zlDf;HR`Altd|;Y=jjFM(z-ImUzfA0O3D_u-zTI)ttn~3Skm|9uI5+YEsMXggd;W>q z40i=C?PTPt6Ygo#mLZf{(7buHL@6(ok%N`>$SCv!l4Lz}6{w=oDcd>RzI7|cHSqPj z`X~4A-Lu}4bh9jI#z@(@j)=loX^BPzu2l96OlWWCGTOiZ8ycIHQ1@V49P+zckFr*? zP(i-7qeieFj}+XcGrq+Z>l(;6UKC2`NSWS}>o=zJ9Si-g-#J;>PeOU$2_sMtzr&SE zlVM|xttfDfGjAS!R0)iGlCV#twa<#N(07~ZJ%x<4*~3#`J+F;EwyocKbqY~G9(flT z^d)en=H+)iU!T@X3+O9epvFixhzFfj2kg#e_S`ghGm$dCGJGQI5C8l)d=P4t-2Z{a zzReo8yq5^yl+RSdj&JPjV>jubsw=;Xl3bal5)QjQrukffX^!3uw$!VhLS69b%QD-0 z->M^g+s|pGGmK)se{$-ZGp@XyZ6YDzm?-{6>Ek|n4}A^fG(WLEh#dCX^LztyU!U(8 zRes0~_?Tvbnn|3Xmj~HyS~8Y#Jb-3TuuP4x*Na-R(t^ePn{ba}gsA}uBaMVVq}&aEW3xu%4P4TN z!(1ZlIL4H(-SYD)7gOLt+S#iq(NQD`W-mq#6!?qc_BtZn{ywX!jEOc}S{oc5uX@^S z|8Y1u2@3w05)Nj(TVq2v=aDY-*e6ygRq4C`;K; z>XMmV|4JNO-Lxzv!9-_)+3y)CWACEiRM;jY7CK^jsKc=zbD`zUn}>{2;JGq*um>)& zwaHV1lPXyo`j@e$dB+a8)$PEpj*2z|x*?ywz;_d<6)4dMZZVsqDCh=tUnZBb6ahYC z5qyT%+fj2Pb=VTK57QRbWU`1m?;n+G!~ecV2>>2WsC0|a2<&rp_o)*Ug6^rp$Ht(m zdc7QAF-*^;(9)UpG@|wanLwemTFq9!v~SOqfK&URp?=@L;kPYI)@&sjlvGHP?1qp^NcMH? zLiT+fTCAZ>iY$@HF4>nMYxW9*!PxhGXU5EZO`p&A_xs(?aXiQK{B_^QfiW}Jyyt!G z=lQx`=j&XyNyK-mlY1HVePJ+z(;MG0_dj!zF`(@jxwcwMc)MQ;;G;S%Y*uVy{W)V@^K0aIf zaL=+ZQB!qMYy3{{z5}+RA$lIQ{Fq3cR-aV|N5`J<4*C(g_2V(fK{mCOAVhKs+rIH6 zHwM)?Cu=c5P(wjeM2w52*)_k7Yb1;7P%IRB`QbwpNJMEd-{a~gjC=O2EpT~bl00l1`rCSv&g}a*BjrfLcD+--6Sm{@ zcx4RK47~|y_&rPa4%grT*sr@&%DRM?v z5ge6N{(|6+{{0ZQ)Pw$;;zdug6=tr`e&t=i06j9|;rpf5 zV6j7qMW&5^dgWqVGF#J4-XCdLE+CTPHqv7_Ely+Yg8z>dEDBW$L;o1z5q~!u zxTM^Anw|YQI1i-g3*4gSR!zhI9**z-?x1tSc|`ZH3|nZ^xTDmv0)J3;+DpxM(;!j7 z=Eb_2>g3aCJxC@79(tI_+Wbblxu>_xx!nup&kBM0u)n_Yw zlqLGEJc$H+n*|X9*>Vq2=4REK8R_k(z+yhGYaYb!u0m&+Jg#B#$_sXcMx}tyXf2;**cJxy0B7NKsSC{pZimsbX?}_-tPJ$i+ zw|&h|O1M^xqoToc62Iy0LaoT~*tG8p3#aS?5w;#Kx0`?FJ{R zIsU_kArnI&WMN_$s&3tCVPSJ&14;Y=a2#AFZ6^x!*z zf40}F!{Qu0ej>q1DfHfB6$y|=0KWf1A(6n90qkKz%=ETCaCSg^kB1Avx>exRKov$& zD*?c_5QM*SwZ&oN``35F*rnj3!^6p^3y)0e0@#%f4@b_WfxM|tnsI!5apY$b+B#QG zzehTOjk@sc!dIUQO`GoVEZT8l48#T>Der^yLGt}Otx75?s!i}>o_jHL?yA$^d)-DK zv4Abwa~tko+hwzNh}bV9ZsCcI`9_z3kZ7|uGZ9Fx#c(?tsaqiCMWf+uWxF&MKd+kO3Hjn$no9E?t>w+RX|7!*YUgCZI-%r4Q@QjvU^QaSH5GGU$rn@?fjbd;kCSK{1sBCYc6tvO<@>LJ?OBmWV) z->Eo%;g1Q(R@Kw1Jh)kMCw1XU+?5dt2~Pc;#R5Q(DT*1~Er~3%Box?s6TI2m3T20r z^@chW3NC$K&f_KCpxfeEf9@3|oFOPjH0fO0Miov~c4+Rg!;Z6)OSRq{>3ljERb@-7 zp@EDQIDWC3wNz$~Nm4;wjpwiK*M7~cxe~0uswINqeCxws^i!0sHtU`x2A~%F#g8~c z!%MJa13liEXT>$$?Dppw5Yc7zrjpj;nGIq!aMy!}`MZD#)|F^gAc~G%>$>FDz1DlS zp3NzE6OR!8r|dK+EAemH+3GWCXTZKU2K$SH{NMj$^tHQ~9l$fS1I*_r{@#wZvPI4# zo4u#gl+X%5{d<3Src}V|)}FlHOCivQp>m>(qEu+0M{ml>ZL#+ybX(DOLv-%tCg+S{ zCsmD5UlV-aLXkNK<5%0JdgG=;&qE{nebzkV?3zV~il$4Zu z8e{+ep)cB8h@ha_q59w&k#ph@aPp+KzkxKl$_7D&$261F&?C&=#i3b45<~IzYe1xL zs+_0|21khZraKjoMKn%_+Of_7)mRhPkRek!53DK}sw&@|-y#uG^;K6O@FEwcM$ zEEi_i3)Mjwn?*Pgqi)?t-K2nCj@q0l*2PZebFxk)hohT40Zo5{QUvz| zK192nDXxuRPh&zK**=Bhj~hOu_;`qLk3U)i@s+9|`}XW#e9fTe;N={7Y6bYi;x=n*7J6~sicksNitzj z^WJbTIR^QqHVvHeOCdGEDKymP{_h1e!GW}i05SIj**Lzq3b0x8cYUvmi@w73Hb{f3@5rHt<=Io+Ovy2T1TZS5xXRlZdo&es z8W0ep+7RTYrmV@J?j)Rn^u;TYDl{v58|pQ??34T~Q{_99(B*a*w7L2Aau06s-RH=c zFpJT5snDzU8MR0j>M#|HdoZ;$afs%^N$4FDWu#QwA+oh$@jZY1&k38zEaofLe>;5M ziI~zo53YHBp2mF@hv9}_pcAuQ!1UlA2Dq{qI-W+?qcpU@NN8@+n}Z42^Ga(=naAg! zqsfW1J}NuYgI|}1Ry5ge**^ZWk#t8j#uzEcF7lmy5-6uZMLPB(d8NgwrViK5 z5E`|Iy#p~w=o{2PQ2f#ibkBOy8grzLwO(xygl6m!Qd_He1ni-y7}zKbVHCNP6o#Csk7@nA%G2l3XZ(s8 z79+%|o`Rs=EO{jTsKBtg?&%i6EQYv~@A3JuRtsq!$B+8{s3QkdksA7En#V(XC;pA>a< z-);-}U3v+J_^({K=TH20(B@(>+mT>cTbLA59j19A2acdWKOQz00en?sk!}~-ZuQ3K&T2IaP#~35!(0)X+sI3 zp`%p&sWBLnPCGyHtF{2qnUUPxJ+x!UMq8etsLELf1lpbmkv=C*3MK(#K)54s2F@`X z*<|vcTf>HJT{*7486gc!PySFK7CMQq3Ub}F*Fc^5E z)$k{%21QElJShJyP1rSyU%z1xR1p8%YN?G#;r^xSw~Ngt>d_+88isI^o;yt9DTEAf zV5zL5SNiC%CU;ZsDq`dJe*tY$L%;FVR8&#Js;ckZHY^e_0F%$Hg+bs+I;Nb7N5+PY zg9AWhePFlHHZ)w=yZ#J7aWe6-9b~Ua0GKmo{8@c4wMi0@b zOTw}$up!Ik&O+2=qwGWgkTBOD@0mb-H+ij|D<{9{tG9NA6a)0D0FPkAcO@3Q^mcDv zX6R+AUR-9{oc|113_{GqSZsM($rkjRg2%3`p)Z|3PtmA6 zw!=zI$wbA-BlGz?96g0>EnB>!sd*C&5og(kE7QsD&eiXfLSKo5eS5UOpP(wchQ56M ze3LW%H&>8`R)i3knldSVxbE*04oVrmwZ6lU2Zg6oS!oyM3RM7&`O#KhoPG)tJ%xRr zIwyW8`6YYt4CMl4v$q%0z*Md6SjN`IrZQG(uYhofFv4rWKh5uA^VlH?qf+5BP@i<) zuiD>AP_o}nJs-qPzI~Yw`6r1)E7ZfX74E#Lg=lVXA)`+OEhLs2a}3$%Z`5$cQ=E!?*%z!=w2x z!b{ILl<)quZR<*kCry)k_pZwB3q6olWI1!jU%4XBM@Etd%s#1<hu>$`qN&oluw+pU6}uNZA;KU#OYr;PuG2pIVfHd3Z>4+OvAO*`ahQ z0YG-lVAFO%1z)*pDiu@i?0Ty$?pRybizO}O=rV_h@n?Y9jn_@PEf)Zl$q9Ft^$II? zMdwl?1W*B~(ST*Mg)vOWl1iQV`T421dGqGQQLoX>(U>05!_qjb{l*zz_cl+_>N>4? z0VZ!g(N4E{QlY0m*ORzkg}{iG(sbi)cv;(yw^!iH#mt<;L4Zo`00J9G3%!iYt;ysp%o|bp$nbv2Ay*-Uws>bAhJT4MB z;ahU^!eUH?e$|N^!R}2$USI7@1YPr96T=M`9(HrMtm+658A|%HlAKd&%SN`bz6heL zA4G!H97wQQ)gJPf4xCp^tjA~}oG4&=xB`bh$8GQ9)$Iz&H?HBdm3?QN%K2o*}!BK#XLA{IbM>*FiaRS?DOPRA~J0QU)NO=Z~t_<2Me$Uv#x+Z89HM1 zQY^3bs?WB6+wR8NcWD~GqqmT&fTYnJP(-gRa+!f4TZQ;-MUR10Wx2WQbr(3=zFrioLc$3YdP?PFPs-EB4NGVint4aJ)! z3$wJI8J4uVzpz=Uu4E*CFTp$^gCREj%7h^QyP=F{k#-h(X$pqF@)7|;2m=VA{?5{K zz2GB@>E4~xw0}T7(uo{71P(InH~;=k6i5TnN+<09?VUNRguz>OCd1y=rF=AaJGdm^zewAI}0k*o*nvp7b`$ zehx}P)`sdGR&H)#$K($NjeoJj@0YGIL*Mh`UYgq1dyAyRgTYs7-`ff((*T-U9|Fmk zRXNML2&6M~ppF0{E;B#RT!;KtvR$!_xAwbg0eB~P0aC=2ODZXxVD~=+euFkD!_8N?rkNu~)R=zw7V$=OyC~DyY{s3ue-7T$WZy};DUwfcdebuYFn%N; zZOduPmf-!pAVy9zbZH(roAqlK6xrsx9b~kgRBn|*hK45}R&a#3mTI7+zgX?XQ1JHL zD8jRaWO<#L;I4=9-qm zA!TSi8Kd5eMc0@wHWmbEJ{~GoS}gJ3Zkpo{?m2nMg z5thw$RFkFz*H*}(g;&wLn$GJkT1;3)B8FH;aJ0y8uE%I7r1rd zV(VnxaA^t!qys0wgaekSMOsiR(-kospZwoX2XMK6k>)^EH+_Wf9Nl^5x8trh$pmqh zChJL?+tHIRj3|nN?W3KCc#Ow?tXLLyvrYSk0!A=D9F8rg@_z8(C1_M7uu_vjfTYm3 z^^>M73QULU=uPbLnlGT}0!vs#7SKR0Q$qlKberoslW$%(@~!TK+^e=bt-01vC@I*# zHWObebT#d9bf=&oMd)D*JiSQDoX+~P&&i$S=$j5g8yM9XH!+i5HKgvM&!Wq`8UwjO z+5UWix~)Oj^)`2-YA?x=_oJvntI`ZJoubC_3@uk6vhee;Zny;wIk(J_4%@&%`AO(B z5Tl8^I=V-z*iM+4c$)I_v=N>a08Ybiwj}KflcAfDS;VzUm)2~DhEF6&O4{1x7P6x< zs;tA>0Wy{R-$ArrDQBn(hmZZ660HRO&#Mt+oN)Ha(+8lLuJ)$k?FvVMpvm_+(Vq8i z8DQXp)ekofzg+NQuXnqz+amoX(DmQfTD{gq{wZf+3jg=D6Ro?ff6Mt}H_nwK^S!gC zN=7AXBQ~B}PYJod*4k`A2_jy6;QDY;pL(KaLBF8+0UUKgj3#}nWakFG3GB_U0^_LE z@JVl3om17(X|3TBkxEcPe3oza&2oi{q}Rq%M*PNl-mlfQq%)eGZRQQ_XgkHh{CL^= zI=C|y4(1haS&HeSr~{LT8-G74AXl4L5dX8GGK3%ehh8P!&1s3p7Ee!8J~%YwuYNXi z^q%xuh&Jrth)MXhCLv~tz9L^2+#R0(S#>j>z^m{sR|&fOW`LP zAUK-{!;r?M2SKlkn8@3w;QKa(1D_5qAYha)TZq4=1q&FTw;P-R#EgwkPrwoRFY?*A zef)S&IPF2J^+lL1hAi~QmIvFrMBEB56oXu!NmY0{`o})VhdHzbtN!C*MJUe6f=puNcz2_yHC9=^b`WJyk4!@nFqZLOn`tg_P2PsEJwA~ zR)P|Q#xGwY_@+6;4B)u6(5-Kgh%=OKAX0gXXtQj0Fn3QZv^C+sU)xd*d$D5;aTyST zZJ8S+h%$gwZw1fC8qlS?&!Va^ko8GkK*~K^LdCqWS2w*p#4A9RD5&lGvCgHKkAWEw zQAThC8fMtQ19}(nk~{fdi${t0`Cv-%Q(0QdY^CYn%GHctGc&xZR`q|pXUXbAFTe9^Er2E7|Z1siSb-=N1| zqP&?Z8-XQSauN29JTP@oWh%bO(^IU!mkDc@b2NvXuJSZ*;Q=lMMDm>gWY~kz0a>r* z&lMtHG&VNUj1?=*b>>ytG-7LX&VEi4Zt8eDt?-IyB5T&HW!X-w#>P;Y}hg@cUObk#e2Z9XkTxB=$jw3RMf zlD!S6;XRBsXnMY~QTXW0kIHhgh#+Wxr1Sw=b%osR(XJzY%@_4&vr_d35l}m(b91){ zVaS{0SH4C*nV?c)6IFbTK1I>(pxgZAMwwdP*Zh*!r0mXqscF}Xo%8-d9#`@fuMc>A zu&r*-DkVYXvs<hJi1dF5 z87Q5@ut<4u__^f?34+6ac6f?xMEu#P5{Z82W7#E6DUb;R7g$d?-WTbUW?tearUtID zKpVGofpriq{v^LK3hzBy5~=>$aQ_?-sWo0I#3#m zn_OiX7C6zS^^X6W`u&DEl(k=AnjrMq0lmjAggR>EI7D5!ot_a){-c-YmMZR9Xg46E z|9}fZwWfB(-oyT0rzPl|nYbIq3CG@-gJz9(FP%m#RP-B!UP2xChu$ZTv?L$$chI7+ zOw$0s^JNhF@iHw9X#^7#5QwU*th_Bq^ZlCllJ2kl2))F*aiNvpDxv!3r>We(Fa1Vq z&70Q;BZvg20H#pMaX)4M=~&6PfpOzcQ`$l;n;?WJ^@i{T$>5}?IO4X8x^M)DJ9y=b zqlDPJ*4K_yrl+tjqsQrFy|;dM9AY2-=74U95>{{TJ>`%)c~@wj_`ppBdSs5r#I8__ z_;I|}?;#G;p>stGVvsejj?=0B`Iy-fo!&CIkPZAGS*I%aDy{<5j}kE9b~F z;&$y**xW?Hg9LEW!ckXPrkAIGx$Z}(_OHTtI5t2e;5pgSEi)mtJX6+_$ogI57rz%L zuheTmJBm-K2=Z#{jXf!a>J;BMwh-gGM@&nxfNU~3^h@Upj1t7_Mgk7SJ{lY(xFcQq zlaU~gBA}06%eY(wVs+_j_Tmpw+}p0_{sz{4Kt>(zBU!#unG>l(CnhY+FfNY|Q3FGl z^KT*n( z6ZNhUi~KcW;x%HcHQ}sF@?VL;RWah+b~(9X>Y=0+Rp>w>kzy}WnqZDAA(u}8uXq|-y$?zGwON&s!4l%^2uwlSeJ zMmU{=IjP%)w6G>noZW^Ey+=Am$N7G8^`Z*RC}yN*mfLpa7s`hYy8M+h5zE8x27}U| zM-vy3zDQ3=$O4d~6(m1hWFm*qA0Q~4hq7G~`4tEoEQD+Z_=*=EisKj??3x?!h#w%L zXuLG858b&%*_FVopKZ_YH<#uXyu-Bu-$xxR?bNgv95JKS zihh+9jOH?J4lMeL;!-(~f!;=Bq?KT2C_h<_=Jfvd4elY|p_k%hOOnJjDyrS_gV=!W zb@K;(J4_#h>x!8dpFgiIxAY-Icz?YnK&<#;dM)Ej+Gvu8(!Nx84>BI+r16uOGtqPV z#`GKQ#uV@PKP&i%?|S!tB8g#jv5#5>kE!Kjg~rvMNd9zfQOBon&CZzA{|(hXc`XiNQB2= z`<(GC?saK+v%_sdAl@+M9DMNBg;w%w3PjcHc*$esi$XHNqc5ep+mUxnsQ8@OReYkz zEP@Cp>Eccgo93~xaf@Bh6yGA%fqo^3k$u%na$H=77!fBE`?ye#k;i+4zh`ixoP6R3 z720OM%5y~i@QHAQJwYV>lNv;>7!p$dP*>N+>khDsmjZ?La0!C(S%XOW^mASxpgTlg znQx_~>~+z|pOH@F1HcT|i6L6&$}*S?lqdw#$NXu>Gc7+PgT4R>o#Jhq%3m7gLp^UM z!&@9|KwbP6S&*U9hoXz=>nUH#9{lDTDwc}v0@X06?!E%Dx6Re=CZ0im-_IGv%3B>3cgCw&`30y381R_DdCf6F-kif5Qcgu1UC5ZIuCDtH z@oiy2a@d>&^>`@AEpHEXp2_8ThRgDEZ2~5{dc$@PQT>=b^zPMG%P7Mn-u&P8U8u|N zkv!LkB5nBOCx>XVZLC}X`$QgDiRZlLCJ!$NMsN1bEgB#${USIj2HD1sQb6_OUW?S< z7^+m#P!xZIJw7wIs(xW%g;I&Rf|OEZ4YUw>10M4PVM-1Xjj5;*+B&FaftUvw1oFmT zRJ&z!ruOlV6H;V<-+Wif#cY;zSZbDjY}4qd*!*}by3ev{!x}^dgN;|rq{2Ah+mpyU zQ^vFVzqj&yCO5SgU7Nr#bT<=EK z^A=Zir1?n?tMpH_Pv*9S->>@ZA)?72#2w*mZo5Rb%W6U-k>*#n?LSH+R5L}1XwS2g z$u~bW5faxKIrTe2#oyUPGW; zyo|jpzaMc}p)iNCeUAjW>&VwZbC&Cxm@G@Kx{ma#J!`!Xy;Xg!c3bmO$MTN{=A1sm zWZzSER)%%jk6+^0xZYg4>AaNrQ{m8rz^Z&p#n9-?xW6EqrL8TEkWgtbVK$^a_#Qp2 zC83V_R%AI})RdpmX&{aeJ#A|#Wo}2@6x~-|)4{w{;R`Yo1mY?RfFUw`t6}f zmWlgC(?ZBZ8Zv??yd_=jY#l^Y;@R_kH*;UZ51?Q_srx{0|p^51JsL zVLAJk!8<1}$_96!g!wy{e~dmawQDR-Kc2Q7`7Zj5`CbS8$8{uo&pwLo-!Dr6Pv5>h zGjRc8c~u1l;=BD3M!s@n1$AT8n=Zx{A<*zzx2#XKgzr0vxtNAMG+TPm8Y}c*uwI`& z^CFoI?wdtgkgL|g?|Navz|76#mJxLHq%+J!hw@_hvq<#Kz1&11`1?fr4fHM8s95y< z$}`c`&MAa*qm5vy=`x&EQL8XEydwCq1_2X(Av!IWNl}|EtGfTwrRWU2ZZLFPgS--h zGAtIlEIy%*`*vWU^UzLlMg)DqT!`7fbJ80oO{=J4!=(wm%+h#&ZL-6-t!;?#t0w2z z$iB2`vm@sqzn*StHfvc0^oSYeWee&^LYmfs(g>e-_^?>(K$BO{*<6S3@Qw=oWE8o0<3f$M9Wir&84-_P?ZX*T?Ofqpp55Zfgi-Ke? zcw>kGtB8-3k79j39iI)7|CW5*hP0{3y}kb`GP0|Y7W$SC^t7^pIh>l~F7vX&SJZsb zwo55Q{XXfAGh9*4v6AC7ZDzicvm0(^bY8Og*J(6AK3m1E{@T3`^-dLiMVEcC6;l_n z_aWH+I+__-2(Vu?(do+dcj<*Wl*FgDAa#nIG&lpkhiCHz%bQR?EWr^e!Jpm?hnzv6&&h{0klzle;wsy}_0K%zE z9#LUyODIn>79H5H$Rds({84bM)5T)n5d!~w41N(4!wMwm{D3yG1^N~#9Ev1R3RHA{ z+rYrda2ZV}bA4+E9&z>MmR4&Co>H;*>)C{s>FSZScu4SSP@*-^<_u2_OIYgny)R&{y2&>8I!2s9!Ka9#KR^Mv^2NEqB2(C4rQl3spCi`gOw$^co+ zxK=~(u>@_g zpQ*tw&!yXGOhH1P=PJ4tmX&BoTYkm!@Nlcat`C3334HGCw$n!Mj|VbMQo#OrKbZn! zK+I|G{#bcYf|0oWlFylE3C&p=Wa(oU6ir9iP*OtUY{(IMEKG~MiRmby2lUVj`>&9-l#`zU14puRD@ z)epqq1eq04P`P3f-as11+=o5Uhx@bhIkq6dx~qL@umfV5ol3vIUx5SEqaiEgyCcgb zkR>oLCOVp}cS`HnbIZw*8;snWzM61tuS&)i0dK?lTxRfaNyaqWA?zyVfFCC)jL?e| z{f7Kq%W$_;)&Ot;BD<3%g`kZemm;Yv98qk>c|VMWTJkQ^^s2LckJHu+GIYkqx*cpx zda_=;U+LVJuCy-0&1ks#RY^;zr#QVMJr_hlecD!w@OE_toiD0*#<01RR}?Tdzw|J|0~@>_1?;Hh-!~z8t{Zpo zZn@>=lSPCe@Ld@oZA%L#0kd)Q6K_QxL56h5?pmM+H1Z>Xy%A89BJKHQ9Idfxuap0h zIP#R5tfB6OS>4CFvP0KLflI5osB$O5Sxnnp@ht)qPd*h?q?#{!=$e0NFA*>4>ya78 z|G=;y@}8zna`&_Ro6 z2p@3fSunpOXeR>w1}`QaB5*rsn$%sUv5}IcCF-Xu(ryz_J&_Oy++AL2>EY|af191+ z1pVJ;UpOkV0_|vs-UDq*0d@S&QcnOad<8J*Zq$kXZS%FUJYlnHU9xo37uucxx*4kV z_soQs`fu9-j?~g`1*o~T)oNuzAyIzIb=9fmv}`4lm9@1=ZTHf{Hrx1XrZ{7#Y3u-wn0`>}ydD%wd_nxOSHkB( zTc-J`BB@r>?5Z9X2*d)}>tdHNnf=}c_L_vACxO3ZZq8u?F~+VsLbsdW^~rOu%lVts z`HcH--F($2Z@T_P%y-R{kJt+9IXYi{zm6iJlt9z4JAMtksZ|wKZppyFC&N#&yCXA=CMi{Q^~!f zn_OolGx3pWMq|%4NGR_hzc}+2k`IA26uv~D6Q1CTI@UL;530)WeKkfGNRsc~+VbF* zN?$L{k?%ba1>GU$dFuk01E#|Gu^r!v9YRN-}C%PSqk;^*Z~5O-OeN)6AEN>X}yK@^z>dn zSM>6_0XlNbUi9op+uXN@g!L4+etFuBnUP2P=OL41VtDzy7MKyRhz-8QxVzO=gf|{v(Ww98oxinpYnVxY;pE-c^T_?O zTDI4RzO?=Lz$F&;C$G1X0*VseqSMuMBV9mPEF*WrtMh8LA?rZeq#8yTHKw zAKQ+rcfR#atu=!}kG9|S&7OlYGs6BsgsLu*;}fb6VDiG+zqak3hZ*7n-y|nH`OuJ7 z{V)pZB#(U^aY2=?N3vpKC8}T-uP3`-Um*z0s~11__wx4xoWLgkM($u=_}asV53fDy z<8=qX7?+Qt8+eEYO%(O^?c0DNPImSIA#yp1viNSx1bk=m@Xy(m`Z=s;U@D&PKLd5k z&d0;3rs!~gG*uAUj?}>|+%?l}UrjbUAnhAlNv^ve5Qk;L^ktRXHAzQ9w^Ge+)`*6x zOFx{yn>WonM|`aav`OdczTbCPaYFv?$KAW@Uxw~Y?#!koMJ+2`B^sRl&0aZia3wt& z+2E}OaV#C()6kHRrBwgr^s`P6vj&!+7<07oy?b;=w<$CC@>$=kuSSiOYVO3+xD0F| zz5=T+r((Y9hJvUlQ|SIOtwFxwrxi?vmY5@v%mA?t{xbp!i?*92C7OpixS`kOCR^2m zpjntli(vPh9E&Z!v1Um~(5#_*v+=Tyj%>Soa*3@tWkT{u+q>^$uhC`iK#13~kj6)W z7Lvf`B|V%vI=o5fMN9pUvTClit3~W|uw4dhxhr<9{$%Y@;kt)^rM`1OO=LKa^h~-=yPZp%>EhRp@>(8)O=by32%70r(N`G>9dv42teByW?>$<^---uT% zx;C+B8k`#Aa?!N~?zWf;eTL-~Ko3sJH?l(nVIU>k(Bc$U^g?abNU+uPO#IN0;j@T{ z8Wfi6o1#8vD=A1nj$3-Feh;k)m|t!{lN2;fZykJm@0Vu(VLVKh15`Z{CaeDj-$`y{ zb{c0ws9ViU$=Oa5yLrx;Y2|jSp>r!r_~pR!64Wdfqfj2sPM6kpE|8wMk0eHb19?;6 zP{|h(0Wo>&sM;v_*Mm*!8{B#N?}_T*9X38=$$U)ADh0!W;Qr824 zKN=uJsH*xrP};=_^C;)qJ2Zs3t1N~oJJ^3moCrC-(T!AoUIL%R7Pg=&@Pa#keDIRG zr*S%jU=f0V_(_-%9^^Bvih&pO9z2|WPi*M#OCd1$lZQr(_u4(Gt|M7AXLP2)5+7FX zdi-U4Uk-I*3Co&Z1~B!FJ*lK3O;ilP>)Zj5hmgctfz{6om)S6d4bnF!v$)|;9a1_X zIenKBXmdLKS~gx9udBgXz}!TrPfT2;+c6B!yHvPybJtJo{2r>xnMD4({ktDjpwVkN!fm&Ny7GJZ@5j_B|3%hi;ST#vGm|H%84OF%|m7Sy| z{5mZSJ0XthKF!HcCJh$zS7~WQKs?WU`#njyJaOGA?9jDVLw*~3x-MGLdoz2tyv$DJ zh5jn_9Dqe#zkheSB?heY--WaTwm6oQI6fylt=!JCcsm!8oF(N&O>?JxeAcb@c+T4& zD#$H5H6u1=Qz6pcUh0~^?Qk~i5;M+euImG^SfwZSFn9LHd=Z()nEw5r<6sW8;&s&T zC*Am&jg27nZYfM!&`2O|uJ~Sl7fO1C&B>`d<&Rc7lWfJOD$d(V`CP6plcI;$$r`3m z-sEN2zZjMcgS)$XMwx1QLNvU=Ts1)ts91GdW*btN6%U^M{#%0>WcIDsmM9__V3=|0 zQ41WvMn-KdvmF^(k^(U?F{Rz#TpdquYxPT+xspG!&x{bbB1|w5WX7%GdJ~g)$U*V1 zKypR`mu~|CMM=J+>}QTwV#AYNx$M@qgjnlr!@r8M?M!9gPnQ^Pp5o*boQW7NxzQ30 z+@IDGo&5h-L6-lIH$>9k^FS=xIt2XhPJT(;NlI0f$u`zmD0Dzbe`B2!+!%}Y$qgte z^6~tn+BuGU**%v;y{A$P5R+Ij5)~uEZX!&aWq9zsmfYoxfVRoeuWt+wFlq<;FGzq~ z4vUfV%kXEm1o3%oi`+d8lOTL4SY<5B8^^1iV#Ik*9O<#Uc4?v zTJ(Wqs9ceA`fWnuRLn}66aZbS181THTST)pmG%fvrRL?rlcuu{kXm?7;vVy%^q~zi z`09qHO|9GQ9Uu9vtgJ>6iSOQ7jU5eCdlo-g{{5z-pk`$2&;Ts)(o*oAW}3;2QtaSTQ}E< z->zrVxIT9S`P7{c`fiAUyjVM{81(T76C583^jECf3b{2fz2H{X01&vpr=z2zZEUSI_fp+x*Dw{6uctj6Ny7)bn5>S4h)+}JZJFr&!tkOY1 z()C<=Bca@p++vfWBGO+}L}zBchFid}T+Dg`$4ILsA%t1;IBdC?yZ_CdsBBJqPML%X9K57>Ow_qB( z@$j+G$(vpeKWE&eZ#a{g)Rb@H!ohCeQ;jmOAh4bbg4*vaT{v|;EAaKDx#LZq4zvpHq&a*KKTIlLYj*y?5t_Y7a_>E5vQ(slp zRrKfBHv2OKtib$u1rjNPS+O*@xA7@)NhbTxqB+%so778?&k77IjgeRToG&qNFw~(> zGLF}<%RDt6Z%HCX7cYJ>M}Gfa$DswieQOYSJequ7E$+M5cKNk@v|fpv$CSV(6CfA)2>5L2dGT$4Bzuw^P`$_qeL^-Jxn|;<6C=c zS!1bHv*gI?!DBTt$X?a{S($6LiEJ{eL;FR5^1zQ@Q`STH1VSRR{VCB_x+<|7A81@> z^?Yj#Z36PhjRi!gl0BKm$_m9HcP~J%IHU-5;*R)u7<}9eWC_vpc76&M5+plVb47r4 zAu(n1oes?G7Sy%{BtxAeN=+ndV#u8qQMYC zg&q#r?JaACWoC+%Xv7A-<^y4uf|?)Quz0O*lYd98-pZ4IgDm!XMZmyQ9tko z0*l*Y+h-#$SBZwZtf1@2Q)JD5(9Np6PR}MA$RVkm4WOEd2;_+ka z<6ouZ}|z?!3(3CbfCk( z`oAK8JeAdNoU(0qmkbAR6HF&S|ISa!bAmOkp=fU)`rJ85mCphKQxU(nIAFjw_f${S z=}_PGf5S^`+jPB(XhWG&DfV-56X&+LiD^MwQNQ~?ASFPTugu1GU-ChNiTLRFv_ctJ zQ`oZqM1idFK(YLmxz7X`v7fF|KDCyeP=*=su1Ig4_u+;wrJ4e5TxU1EFphY+{ve=| z^y9}5lFL8}$OT@78cF{91(GsjT zs^)J*1<3%_I~**fT|=7`pc=UjftuN@AX(6*OCv=&X)5XL-GUIwvG5;+h2mC_nwoLn zT$IBEUJn@~R*x7T!NSb!&ui;GTvOP_7CK-0nDS<0_zQPFZpE`3BZ1qB80Ag(jUp|MgAZ^qGdOZiM+ZW&~_EWpwE~2ks(G=PBIqo_Hs* zzjJQmI)s}%m_I;U;fcoDty|Y2#{yE19B$5Gkb2yV5x7&&8NB%voC7uP)63ld;BREI z<%#7-eY`3J@yqZi4<4}kEuigRN)RadWrpV&zr-5V_!Mjn6s|Lme3I|mH(qgNrM92H zz{bas=G@T;HdAktu#N6iih#%ZoB=J>cJX_z!XldkYviiI-LMBlUd46EN3tKO`p(}L z!Q!)?)ZMK9dWvj81duRj6pF|E1w!4)15t^LK7uq6RxGt9`P%V!L>U-`l zSddjR(saeOq~&1oWH**wu-%)3Ca%%LrR#QucUZZJM}1CsR)?r*1dN+V32BKK^M}BR zEb8-wwVDtS(vFdm!jS!EI9Ggcsf~gB=;N+IsaM1)?TLr*d6T>kNd9lsBpX=b-|eXl z8Oo(_LqkPP?Yz7^4`W2ryzI)^M)cj#N##E(pdvHY47;gN-|Q)fpC2J7=R(5-Y;ZPU zgHOC}A$G8STJW2_6i0-L*AG_< z^JUkz$3mjoLr9i9`e1XqrBYMk;7egCuI!!MQha1m#M9_V;ps_tWy(-}_*du@{ccmiyd;9epl$@?SU$62Y|SF`ltRFem_srfkIu2(wsaljGtjo z8!%9MyM|P5ujl2zj`{w%akVS%Q`w71dBgP+k;Zwsxv>yP04DRlczX|^D7vm)v`Lbb zC`rN)R7AoMBuE-0h>;+Yqo|-{QF0g%35p7e_(f zd+AGJ>yPEK>Q+BX$7S8r{WK1!*IB}($=rPG zYUWV<{IBOwoh3@hkr?=Z17B`JAM2dYQWcCCJ!4Q7r);0*UWXA^Yj-oH<5@&Tc<_39 zpFS~Ien|fn#YA0mlHZ()?ai3e8CLGt%{rge(f`B(EJt_TTK7{wviKsoZ}|&QsDmkJ zselD?N%ff)5513Ok;t6bmoHC(ERw3#>viq!dWe(n&|h*wu^-1~qMv$~w`}oWXGuCo z$8Aq*W|W`v;5Y3=6-;4D=%d##bFJZp!x^nBY)sA#VJTDx7HXEdbILo|eM#tBK$l0U zZ%Z;Y$j7{^Ntujm?3;x_l%R%&Jq~ZVO_o_h$@^pG zY4+5zV6X#VWqpwi9z++kPpAnP&cy)Bdt(1{202jfDkYddaT;-f9Uofb;LCgBw_0Oz zOG{gLys$-p=!YBwD($CR-u^W;sJtJw;T*WBqc;-CH!mZrqz$Vvem+5gRqyE(92<}u znGG-El2nrF4_Vdg4iB!`U~Y>T(Vt_|R5uwkF7*9$=7dMJJhIQw%DqGamQ}F)nYQvG zGxR9Lq;2l`-FKMYplc^#(zxX+OJ#9tl^Iw5v>W2i_YK&0#1s{|KxYC-%xbW`YO7q| ztSX0qZ(Hf#@nQ$)|0iIekQeA0?0z|rquORYLJ+qI!>x7-_awgJez;iDV zS~;{JxXyyCq-(aef@@xvZ9#NK!_A_q`zMR;+U>5L0^FKZyXQ$o-}=mAMB*pxjdM@_ zkx1E@S$B&5og)FCeEn3FPKtCDKKWv^-EQPPaav;FN(@uvk$uDXf!ijKjdtkLfSv2- zyYhL4>LHB*t8cOz0xPUbXF^&JP}gkOd>EKmeoVu5PU<%|!YW-BXB2T!k4~=Px3^dW zt{Hi;$;7Bq4*Y7dtr@t#GO&T|u?~?TQJpvo-Fvh0M0FaN4S@C$((?6H0xTv|kHfOu z10<{N8yEW-OZ9nlg(ScL{~@Sb!}mF~JYWE%dwg!gS>vp^Rm*2W*HuWe1Tx|w2ew(7 z^2y9a3!yzvh&fU+y&d-yrh&dl;~{%zuX|q&S2ZZYRxXVxUel3;NWLQ~+tqdL%j1Yw zmAQ+lNXZ+)7q}uOLp*&NlD@V?DrPT@U*6H-EIm@*bhxWs;r~d>uWR=pmZmoL72|;8 zp6BExPRr|U6!Yw}QO1+3 zAFLhv)AxSe7(w-#00|G(6aOibVZDQ&4Br@G>gvt;w)QfY&iC#;gL^i=_Zw*5^v{b- z+^v_n`z{_M4{`*FFka}@r^j#4_h>r3rX z=YF{%WWVx6HjwhAM*nTcwb8`)lm%*f&M6Mkq$2?F6;%AgGS*QMbY_y~#n0UI$4e#k zEkTky=#fL*^R61?4>ox2h@Cxq%pl(+d4F!-Fhhk3+6c9)_m_K_viso1V{Azxrg;3l z#a>j{<&$KH%~vl{6!BG-(FnYYKXR#pah9TDVtRl~@dEJr7a9ip-+j`ZIUdP7oa9_u zcuUZ|ASq5k|n!c+`T46lT?mNt1}Ukj=}`0XS%G6ys6`0x>IO$}h+ z+)zA`)HIGJ-+raXO#b}&z|sKFEfTq5-+tzK0)&n$H*e~Bcx>FK3&^ga$^%jD8=Lz7 znjxTVXxegW0^Jdh&QNkc1%hM;ZcACcm4q@3#BZ6HOq6tmJWD^8 zIhl(b(Vd0TJ{nbP(IX@4@=|BZk3t70XH%49*wuD2Hm*|PYV96c&nN9ABzRx{v4Hr_nuCq?QheMFL;v6;7o`Wp`EZS+u5frwzQx1&yPW{_hg;xP({ zA>Q$Yc3d?Bq+%X091rF@$d7`Ge5U9hXC3vU+Uxnn(#Dh=f~lCas>IsQ=+6KJ_Javr zuPE%n=bP`3gdmng^I3=KJM#tAEHscNI*A^N*&MzKlBy3qGQU0CeAMc<`ph}Y>NYt& zoqGsRYSwlimy}YQmC50s8G{Al-K?{I-_GVq%DgoFNg<~1aa*xz_LZAl^<_rGW#EQK z=4gy&=#O*zC?*&GVm;xWe|?+PW;`0qIYRN0R92iiu^?^TIc&)9$HBYw^i>&BDBTqP z;UM6>>P%8HH>5-nI66{njV&9hehVopBMi>I!82^N4C1o}CPwZMpC=fSuC1*dgTuFm zVV6O8l>uq5_5$S@op{J^2NFQ0oR}`qNGlUdGJx3Fi=)Y+45D+epkjjbm4ahQ%FYnf z4q5y;j9WD*z9zdPA493ny{1`ucuCcnPdu7RUpISXREyfX8QB%kSqX}_>l;0if5RKA zWx;vADl$4;Mx+cKY)`0)h@3x3=>z(>AV%X{s6zU}nSjedDl(Zk&D(bCq{a+}RHfdK zTmAVM#=iZTIv?t=u6^L=;QdaWldGA$&7G7v@YV3NeXlRxr7c>rbvON!Bmk9#W3D#! zZOAmGcAf{;1-nMjp6vRjma8~bupQM@QPb*prKCZIN;qid!V(gU+4VX>W^*KV8Fu|R;k^~URSvIVh7G3I_A`X@X@R~d)d9k&}P)3uA;(X0j> zm)mm|0{{Z~lQ z!DAs}t}+nt)A*&Z=3eYsi-&!ywW-@ zE?@9>$15IEXntCz0Tu??wA{WQjQd(am`(h(k6GRCj$qbu<&Up{*I+V8|c-s;hhgBRN5i z0>b?q

>*XF_@bm7E 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 wcwxW+)_S$%YY6r7K>Qb@Rvn1!BMh3jhEB literal 96843 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 diff --git a/icons/mob/clothing/feet.dmi b/icons/mob/clothing/feet.dmi index 1e09dce605f6f0bba3ca321b70324ea10162941b..038c2be05aae5d71373fe61592d12b4b206eaa42 100644 GIT binary patch literal 23990 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 VzCT*01M9H^x|#+W)oQkH{sZr7ht&W8 literal 23048 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 J6`GI2{tc7{lmGw# diff --git a/icons/mob/clothing/feet_digi.dmi b/icons/mob/clothing/feet_digi.dmi index 626c67a71c8ff83f7a451da3c153d20f2f953b78..7815f3d0a421d199a16ce21f6b99cff21108602c 100644 GIT binary patch literal 30398 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 R1)NI@Y2SIE0avqm^*{SDuw4KE literal 29508 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

kjCXLEyZj%XT}@M+gfuH<{?r~ z^hqJ0nhlngjN6GKsL-9kG0l2Cc|J|`KY*?*V>>JeNL#JfWnJezg($Uy&+Ro10Q9X; zP{rR8GRsJ_O+6O7ywv#`(0E)15)n&MwI5Xo9v|VO?ubR;X500VDf14$u|B6TIrY%L znRvk#`+UQ{+{u#K6o;u2Y10q+<#^P*2h`MrXPoPEnm+BmbJy$m0C7Md;OH%@B8N&G^JwzyDwJNF4tTcGQKN0D67^SK;Vyw5QuA3YM>} zHH(1GWuA%OfG4#*?v`Awuy}{QR(tYTvhvQ>SV45!?|Y-E`~Ttb0U1_u=!uTz z+rUr-b4@a6J}oUd42-JQ&-Fbw=B5m0si1H@nfsfec!nEyLd$t%y`sqOJa1b&BZYwA zgL^}W#25>|PwTp_HrB0oP1_WV=K}quh))b;;!Lh(Y z!q#S9M;H+4)Hb%ZyGx%nY6=3*SCwR&r(liYt*sALoJD}BF9;OE3y@4CM*lR=^RZKp8Jrl7O*{5Vx78S5@GZ{yLkB{o^ec0h|Gz`x!7Zw5nUPTKY zpb2N}KsM$Tj4fjS6occuy^f^lv+reh1_wO)5`-7PDBZkb`c&HN$s(=QRKd8vJ?8WN z=2hr76T$meO3iQg2iPgDLVL&w5NDV%T{Z*~x_$q0v^)Ht+5_u*Y7%h9s}fnQF0)AW zdpeP9%WtiOYu@^$vvT&{+FR!zrb8t~xdbKbgy{z_sR>PZ9!F}jy8VPUxw(G4Y0EZE zQ;Z8T0cO(hHpl5;_~K7er-IXOU~0!`Fn^hHqc#D;cN2eKduJY97azWLcv}`caJ&+J zWwDJs*pJpujwT|tCg4L{l7QdltD&+Aa||9nVR~idsJ$Lg=pV?-KQ%IfP2_BYxhlje zNLlN)bzy!MV!X}Q8u;6!J6;f9LU6;}Qud;|f}^8Ap@`VxBkMb{;AOcE6m$-wV8`uU}^awE_XQe=c9Xe3;#qr{WC$?lQ=Z**Gog2?DZI;vUqF*i0Vv zb~hHQc-K_Uet&EgswQ0vEtKaGY458x_R2kK3OTL+X7_Y zs#Gn*C*mb9eTN;*M$NTHajlC95wAV-4Oipj9tJ(~a1h%+@lNvRZHYHOL~|l1mf7!= zj<^8u!oj$DXsT?Pubboc(ic%ZDaRDPZM=;ALTSV7D`MJ0*V?w z_zB?aW{buqySuGTF+WOprA#$nImei**Q%Xq`V{{Qbs~rMaAAMib4l6)K#v0-V*cn6 z@kdU^zP6-KbFz0|q!~ftdU_v#SQ}JH7SLcYWuet@3*;Y$)y`R(Zvh1q1JVW{n2+21 z`lUVdQEIWlT*vb-kwK~k9qTEE^!U0yBAXQe*V00)cJ*F3I8SxjfP0@9^8)GWA{jA_* z1?rW&oHF*_VCp_^y!;!*FA3(Pqhtr2w&h(d-y6T;%^5<9PE%4ZSIv%xANQq5B99Cr zfzMq-eV^*4dZLY_r!D)q2!?;irGm6C5xEPq1=92i_V=$3UOnTlEZ$kHq3XSl3Hx_Z z+fV-1mYLnc$o>b^pZ(9U{lCE$)qg-GU5x~No5PpO&!JC5I1`MPw3vHzy4;A%DmW_ha*I`IjjWl^s@1f9~b|L z-mawOY4r5;pFS!Y+A3Itc@FSxE7v<=FWR+e%+g#06HGfKj_C~4Sv8c@Zz|SGokn|d z;z>7NzwL5?|66%)BspOQI~0_dwr$HSHXL5+GZ*gDBd@n_YR}9Aqiq3SjBs$ZJJy*oI6{rPDmdlT!(9JmtR}poE?ReJCXYR_->W%Ao(CX*URugD< za|})u2MR7L8qJcFgj2;&URN2Ahu7bLSkMG492xH2#RrG~*2%T|JWCIlal!!*$D$|4 z)qNK85||990`0$M=d5=oZ^0rf1?G@4T;uLVo{R-aO>+`7*vVRQev#DUgmV))BlOrW zzxE&2U9FUicwbWX4H1AT7GSiRq!^ccwjDt3PjnL)>LX?49~py+&EsYuPcZMUHT{X( zEBjmC1^fY<9n}@O)X@0`Up(lC?-|=&DN4#p5@M1P3;_c;e#`SxW&0y2fLG|M+TOJX zEmXXHOq4h9{RMv(3;122Mr4bgiit(ETX@k|9s+qz|M z?_?dHt;{@Mu{{wAK%{rvkqR#_-M8=c*PZZOx~4ni^LlwZO>ptt9j`VHB{nLV`P}G1 zPgj>b;J&+o9)MGW>T4!SGt10D(NH(2tMK&n+#2mEciMb7kz-^e&S;dWoa#I^dQ;=a z+6kTS>7i>a!>epuICJQh7kBaz>(uyi->{J!iW)1*L@Us$Gt7lo2~x0vxWa)#_NK_E zlwD{2aYOL1@Xm=zZ=5qQq709@`=DQTshgxTT9;A3lKFX)u>31NcWMi+3xR{`ZDY4* z-LK%x-KZP&OugRr(t|hr8NE6mT#$7>3RQ|=Qg&vRIWPa>*2a7F{};|R=MWZHjlR>J z=I=Vp((V;&liZLOv;&*Cb|F3K-L4|rVWHyP~SNLIOZX32|H1}TGuikL8OX=-N}oS53HfZ zYE56yf1Ps4%@to^m^AuGJVgKw(}?+7X{$LjD02h#g-25<^nuA89KT^?;msVCXDl4x87$CD@!IfO9NZ6h| z^6C8StNW`+GN=>pBqr-m4SfLg#87*&8?!R*q+k2mPk!MGZ}uO5@c*+%2@{R}~FOEB}ui;iwl2}5@+;8WD2-=LA20ZicwPyS8YL3>kZ5y71 z0HM6Jrs2Mxef6}~3=ghK*!y^G(Jh)@V*Fgo8~@Kt4h6ZiQ~U7Zb^>;g?HC<*T_;KQ zRCtV}C;n4>d}yhydyAegDDTO}Vzxl}%dK0tnq8PW3unk+uJ+v)^JqOWEU4#7q3aH= zB0K%8t)*oGWKxhP@!-mWfXa7z{*L3aqMoZTE_|Qtnm(=DW`S7z&@T~PWVlI1hoIh; zBo?L@?99`XlORDF$IN#QkA(6q1~cwLgy}f&ft^*ujf`@~ z-PvLL0-1lLq--sE>x-th2hsH3Cy|vWiIKfB8aY~WCg2Tv-@>0vyYZ}Y0le7jx9r{` zYIH2>#`KQJ7%y%0aW`VM&ryA&BMUKeSniKgmf%d~{ui+r*;iIVUKhvfR*o+f8#ncv zsqEEnE%K)(6q@0{K?~R-H^KpgCKQ&hyYb`HZEc1-t=*rT;w6O0JKEH%8L>;IIS2OK z5!Y(#B@$y~t;Zcn|4;=n&Gd6&zYb}x4v^7Ia}s|JCKHo3>e`*|qjg2{&i(swe0stY zsx!>)hpZTV;W^RjZT$4!*Fi;Ze?TXtfk2o}?g3lCB#?H8Id7BtzG=Q!-@}8<>vXU_ zE7+@uS;%nDK*-+apx~ew&`H|{j<~Y#;ut|#VhqqqDcQ9@4)!o zRlKfNN6GF+z0^0pM_Ki#)!W8#N93~ND~e;wao)kRxiKmDow|w4eW#rK<7ztB2W3Wn z-Rd5-jiX~c+0WJZCCglGbabhB?QoE7EGyk0((tamavmJuK~lOH0(e=t4`axC_KQ1O zVjIqK+RWI(UTk4s<57pV{BMH#l{#nY470!}Cwg;*R}}RPj@YqwI%?Q@botTRV0`8> zQREr(L?-?8dH_o0cf--py6-W=TZHG1h?vF7h1tkPq*KZ7lR5JJZ3(8umme2PxQ6o3 z>IDI4o37h-w-dwrG-h)PCe~{mV!>@)Yt%Uo!w_DE_ES%*r+DYR@G(6#8mj*IN8M>6 z*boO)*$TFQ5X{D^gLigmu5cb-R{Gf$0B3oUvD-)J578G*b~h(ZlO!P@-#^K?4yg2{ zyerpWKfx2UGYcy8@#n&oCYDv80DQ8;+qv+u{e30Uk|l+Cd)c`k6{5Bl-b7>b5)`vG zttE*+_D|@Ar6NC2w_)Al{n`6`XGN_7viAS1G3vKe-p5x>*atNgIG`OC7PdN*6RB7B z)NRYb10IR#P9C9vaO)x_YBiV5GYFADKofz2JvIiRM*&JkHC zmpvqLlP@zB6&2?P~P}XoBghHmiy1`edQ=tE2&1ZB6SaqJZ?w%Zl>d zgd|YjiV;0UzgL>3e(>(0H#9wMo}=zdgmdQYr0B?Y@co~$zUhA-US?{&px4MpA->7G zeuSGubt4VoC?*MZJReh63vY)uLEj`YwDgki^JqLM&G%DeXWD%axbIZkjzI@68_#b9fgUvir~g~#ZiapQ7pI&d!isW5>6D+sT(J7RT}MyhQ#P!O-F z9x}m8cBt+n{AmXFI}RD!^Io4l2VJ9w{tHp$qJ{<#L=kbyK|O?bIWM&sDa z?tt@&*W*UJ9-FfBS%Q#bIy>ilVK2;7wF~b6hN2>wA9BM?%Ff$psngqRMf~Ujb%IVs z$BkcWnVV=KOFc}!h&S~&xU4V8?>G)0y{DX&MD-1r11>S z*6w^ax1ZVl1YdKK;dE1Zxi70# zq=H_wI709i)twT`OjeUYPn`Eina(Dj6^X!KyJC`uiJs~{`}o1tvTn2n%Q~`0_2gKV zl=8-+Omr4UPyFXomeM&t3dpgf@M@|^nHtR~qfuH_a9k|;FC&>dV;hkgkA7FM>NC(c+0cPS8Vbe%?@-E_4~o~A4?V2cp7@MD?6KkJWqf~Q zPCTqFCqz!qb5~0^Y1Gcc)b8=U{bWOb)5&`Swy>Q(8k3I|kB#FHlQgeg8~FJVQj0DZ zqSVwp8gkn=7VAVVffY19=f1FyJt0m$Dds0jGwTYC>KAki>KCyepKY$A z!9+)U+g{V9qk?AX@fR`Ps51&3Y3!Cna*bLg_V(D~!|izcQ{tL?%uwZ@6JnQV%mk2K zn72Hiy9~1OQbzbdp3fEv3FcXWq|5`u1wkHn8P3X|^{k7*57|WdnDpFz%oNKTy0_sS z{p*@8b6>Q4{?4XkfqY4(G#P5>iQ_k>xcQpR^byRSaI9 z|9omuYK0j_Htpa&gJ>}YW>6^N4g29KSCrOJt5?U;X0@#g2P7VO(3-AX0zE#o$NX4) zx~useQ`LKywE#n{npNDzeup#a%gtS?{Fa(;u3qxRe0NAZL^{rd>;GAHvJpMH!1*%d z+s!c0P*;Sy0XL$?gM6t}g~@Sx&SuZ44Apf*{9EsRREZXka{k@g(WG*27m2lUC)M3| zVp%3=flbSlYn5eT#E@496E}kSN9w zVAd)snU3@3VIqio*uLYP<9md#p0|w@ep*AAaVC#BKO%W-b&` zncC_5ge1M|U1=i=CxDiynOwU1xTV0FJ@sY_Bz^#}cRs`Iz)i%Qe24PbrFP&0mYtC< z%`f>SJPB>t4MnB>?SFPX^TvP{Ex$IT(?#T<>GjI~*=!42PS>qSr$c1WY-s!oPaVI_+I#=_MZv`LvgId>- zM$A8w<||0xEZ4UOba)xg^h0v^2q97pgM2ai#P>yyji(DmxEU9Y7^8ZVzlC#O5<5GV z0@9|EhvEBO#gj8c4Nu01Z$XfU9?EK?x~@7wg+H-S24j%2{h{RkPTjRdfNR&WJd)8ltPOM`E9qvo1)oPLr|8gMi)^&gWP*xmmZy*UdWG`JKq_7LZdA) zIW>FTk0b^J$1jWi3SeRCf4ZK!F*|~v9&u)4_4e*;+H0XlAOhalvzHDrZeJ+-%Y{PX zA~lV#^<}=!{c~DJf{-l(_BP27FQHac8!Xj1>EPT(bna3QK zIBKhgJo>seErUp;PAp2b@7SKPP`e0g`=J*;TynbiA$Ec0J)gC}>_@}J*xGMAYTya! z_kEXhr?G`hM94;0awN7l6-!b_Sas){&Z2Al)`YPN}8;p z^*+sg{X1?FR?m2#u^b=l{I0{)`P;UQGz^j2`-*QQC~zCUy92qaUX)Nm0#dGmD}_BV zw%hf3G`8Vnn#CC;p1-%)OH009YI%MGAL7%r`#I^oecfej<+14&xD59c*=}D`B!1`& z5WIGknZGx%?QCZgNfmo_J!!ypDZ2FT zfa6YxiTbWdQJ-{k?R%&cUGbcRYfiquVc|w=3&kDa))}={p?L1RP)J7<9QN@#Xk9cPYesA9{z z%eSRH3HM?oGT?0!wEDQ8E2!z&n%xd*Tp_7L)JkG7yVOtG4Of@41ADE=w+-HIw=kNiK6MJX561W4AqnKqT>td%k(Z8{ z7Sx_wdB-&`5UT?K3+DqQiTl{WN1xUa43S8*%tldh&V)A?H4s1_f6!d>JLI?&;`@E< zM#@W@37Guy@$6^j8)Nf%>N^Dp;@vOrD4())@F z+C~{}d#s*=69Hc-@5k3zHbiST|LI6N=>FVG2>RYkty8`bpheUgpPB?7^YcT(ub61> zIYTiqmEZ%Lhd;!~9`$M&=U*f)~2Jp zas`q#-kLJfUfHHQPCZZ($Ly*RWVu?R)_x0W-PhHl}@XRhz`gmFy^4~&HN)gkEl#9~c;M%@qHv{l};{|tMl zZt#YLZ2d!jdV~1xG$n$n0Tk1K2*9o(<*v|YTjY?PYz%7$@12H@GH78zdb*N~VjIt1 zueVr?X97F(S*(NTcgrjE5=GM%27lN1^l<>S`aSw58@WTr&-Hfu*K0Xp(OO%w^NDY9 zZFQAW8nDlgyKhWR(`;Da^0~{|N()~*1|HGTE>-ecn_Xc_WC*`Fl*v=$h{A^)&S9lK;AUxtqbB#7I>c&2g1SXJM_KP(7{Hfnc{up{s z*m58QL_0I)dMrz66@d7>M3(~DV&icXcXh0K9zJKr| z+6Py4Iq7TU%FS~}g$g)t1#k=@2v$>bSdP;>WAIBJG1<24>@bNNZu#;4@i^2ZrPvMx z)2Z8^W%S^d+3}K^kY|2@W?|0ai1sI`Q43|N($$~Oz7~|?+My_Znt&FA+F;E)Zq#x6 z9v&3FzbpsBvi>eGLob2KI4**=PI||>jISdc@uw<&V5kF3m&qLB6u`Rk#K``BKZmJ` zvo`Mh4vk)o8*QB%PyIVI=9EmSepmOrztt{IRG9CDSZQ%dN{DMNeNbj*XUFp}l8Fo~ z!#edkj)?<{b%9j-kx7~kti#C`!_)by<9vFsR;;MtA^pQfEr6Hp!cdL|;v0$Q>A}#0 zslG2?uBoQUFycy^fOdz3fnO_82m5#K+&N|VyG{Xc_ikpVHwLfM1>M%WeHwD`rpZ;m z#%Hnqv`P@(ZOoOd^!uk$#KA( zi=?V7CT_Hw>Y~#6Zk$Hv?#aPzDH-WY$L78_EABzKP3*>Z@#(n3ry={2BZa+p40&ua zl{&Fs^ju;`_x`_a9VZlcH&5o1PcR%GO zRjj|{F_X4t0wNMygD2*6&P@F-04|-`B~!EzM1;< z4?Ofqf|=HXdtXMn_mfJ?tr*H$StB{DQso%Q<(b3@nk~3l^yV>`5}m0EF?s?6+XT0I zBYvZ)bDbpDnPc7NbK?R{j=6~^r6VOL<#9!$BYm_^m)Vv#&MrR8kJH=F6G$KYQ#UeT zXrKXF={wX~6*YL|Z4}hh5Go#CkUrqnd>FSpmH(cQ)=6XOVtGB7VBs zL#3&MZ>jhqWo1)*+Mue(@chK~fZVZ8BW&$M0;k2LrrrD>c@6NT8)x7btg>92mVP#P zwX%bH8|*%k!eDR2l3^Ilh~i8}dB5(}&YBohSdf3W_fBk9(VDSe5_);kFJD^kHC+3& zCOM=zJ#e4NHUsn|p_UjP{G4z<~HR#I8(M>0dbuX0t znl&0}#=&xvpzcbpsb7x{y-lxS)!y12Z1;rM@MJGtbWxtaX>?PNtMj%X_xs0vY^Cn$ zD(C0^DGFxWaz3B*B0lXubhk-+@aa9CJO}t0A{%C`us-+}V*Fe7{U7`_V=lsy6kHIS z@_lW2qe3>?+ijNhc(bmBL%zVb{zxgR(5^f>m`ur7C$Yt4g*Dc29}bf_5828`?~<@9CF zM(IncwG+kY?b%b=gGjpfy0#bdbGQRIVL#k$vBC2j-U-o0^>&PI#(4w*+nC}@R7W>2 zYlyTELa$5*)jeCVy{{vPC~kV@uiZJ1ze)kozWq}F$5lf_BduO{f8^YAhpJ~T@_#h< zol#8%UArez6%Z7q3sO{6iu7Kj3MgG^(xf*52{kko0i}zANN)ln0@5T@DFy@*P?~h4 z1PBmX2%+BL{q9}s{ndU3fk0^{DhicjU6F zS!gXivIgFcRaH##=h`x6FF#OmRx(M5?Cxf`trY3p6u>(}!QD7;M}~D*{a_~^J}@ys z9&i?pTg1J^&)LBu?1DA^eyCP84?g0a9)E!pllV|^!z|!4t7P~i(8m}-|KkUgaQss!IsPR}^E6u0a)W%x#jaynnWUxzQ8-s-7&OaSxkrUyMwUVSdRliKfrEum}JbEvOyQ`owTN5h9EQm*H_w?!n>lO5Wmoky<*Z!SMzVhHx z6{q53{%KB*p#{fX!%yNk};c;4W_Ray;@boP)@umjWyqdEN zDl@Tb;=!D3G23|ewx0!zsXOETPTNC{s_E0eCupG!0{!>->EnjH<5kvR#TG5y(PSRU z>uZS+Lx0l^P8(xeEz zS+UXdZ#U^iX3gEQ_jVu4zSfvLR>ULeu|sFqc!CSJ#09@og7 zC%=;;oaHWTjiA-mow-bm%tQXH#3yEb4HW8&DzfuQ8>S7Umm))77p^Aw(m=u`)YH=~ zSDkvDHGFG2X4{!VGmflb;Xi1Ere$;aRqBz?%qh{QrN0$Q`g4Wn3zKF}aKrO&5eIAW z*{?h!3UT{l&P!1*uR-@SCFwxG0u;`Qa*7^0;=pj2mp%Go(ZB?GdHuGX3_C6%>GfqN zXf!lEXfE%3k(w$XA`s@=GGr)+0#Q=pN;lLIzD?V()`LK9J3BkrV`+M^cnkwbrKrMy zOwBrnW233v(sT&IpWq7ey94areiz)%zL@_MKFo`t$~%tJLUR6x!KP|qkn*2~blAOs zKm?gGuGHN_yODuuz?yhnIX&!C?Jv7y)^V5iEtpMP)}_tmE`@Kk$ln7HhhTdVZ%=_a zo|S3Vu*J#b?N^d(WSHBwfsq-dM{Ssz(%>VLyu$jksnSH6n3L4a*7zo6ZQMteY2*hv zVXr{*hPf*=GgHGM#asqNACy&%$oDH*o^+3wgA+t4ZzBFA+=Mpx;%6_@A```OZiEY4 zoK!E;ezz0W)`hr>Jjq?jp7&|i5KIQI7i4~?>5B@Y{W(RxBTbWz*OJBwTS-fj{exu; zairTJ24pcFK?)}q&Y`Y-U@R-2{_cUn5LE&K#8gzTwY8@kSgpssICFGNawC>5x;%uj zOzr#oW&~}&eN%k#&CWZ!okJLkqXs)m2|1b9x%dqIypLJkP>TBXx+N{**PCq)1iYwOTrMz>EVA9IhD z`unx0EZe6x-(JRSeU0$C^jZx>d0zhhP~!OhIC0GxF*Nf;-qK~Mcf=ha*v!9K@YgUwjRtk*HwC>Y zx_$N9jl}UEBk+{3eN;1hYtv1O*DhmQ#DI+TJ2qs+%yjOCRc(NjJ|!dE_sM$KKDL6tzcUW3*{Y4v z8H!h+{w7WO$!&!=3g}Ht%mu>JcV0@0u9ldIQ>UW!Ihmy^c)hJ@YADbj`5!dG-!v!x z2>`K|{SOe~f5|2LwgQxgu28Z|6%i5PKYW<$j2ANqd;OL~B2_dxyAZ`vld}Q*p2A5@ z(PYStBVMib(aQG3V4}CNi3u+sANkPGP!|S61*!T>q96$T23jN{BBFJvo^hb&m5K7w z=L=xzQxL}2UEHFk<)N@5Y#_SKr6tP8*Rdf2f9DwxQ0mZ=QZLR0-UMNU-jb9WhU_^X zKCsMVv2y7NppNy*1GNzr$*b_8oBaGs8%;@{OG_0NO-xMEB`JM5KsUR(yG4ADKfic! zW`2HNI-P+h@9PsX6_dKP-Z49mDN0<yn=i>8a4t9Ri=h=$hPYm; zaEd=`Z=rzdxh8kr)@maTYO#x#B6laf;7l6XxpN zXN*0@J?c83b}BO)DW1{3ExO~SaTGy;R+sZ4dyHye;L;!7(X_(h7a@oz2hD8l>GTlV zF@OEB9>=eq_QX+|5xHiW#pzFeBAKC-^8;^Wo*fn(Y&v&x$Y3mzxQR*-L|uOZ>)n1- z;D=yd{Ns}Fs5ePi`9cYg>ZdofGOk-kP`E)dKFS;cdvoU&7nBt+8z^rsqA3(%*UVgs zdyu}_L4&cb4iz-;l&JPkS1)5H(6+rt11qEF>szyJM$;3+1nBez%zgRI4#rc}qp?_e zU{c=U>`7K)@;uhH&mKS9a#PTvcW2GqHl+Q8JyG@s18_=U^=9N-3}dQ|wg;;e3W(CBxtH$93@s6A8c zlIa%Lp=kkI+kGW#{ra9Jl6LuWyyopi>94h2a1;v^TwOz`3riE?Ec?K#8uW_y%5r2z zG+EK}FZr|j*gznsgLWCd;v7`E){UWM`koRU9UaoyVqSGmCuKqL>Wv$kr=FE(jrq91 zH`l)6;MUEPJ$^yKS3|Cy-yC`pfxgeQ^FxYr15JiTPLbqLtM9-j2~f1&E{cQuph<>F z?oRWOXxrAm41p4PuGxkF>llXj&wYI{h`>NWDEyxFw5G}mZbbYH4R0_rS9hYeQ3U>p zB~}T%Q7uq%Nn=l_xl}!Ru@#9#G&MFJ7fGB*aT5rae zE%l$Xv{+RU(1Z@a$k;2(&U>hM+Q_81C~XffpyzBzlwnvN1ivtSkJO$W;9%8VQ68nf zl#30|}ib`Rsk{J5R}#|K%wvjc}PumCcM56bBBlE-=f zJFi|{AotB0#a@=J6J-*4+!7t|u@q<+=kl*kK(V$G_UcSphBIV+&jBk2T>Ye~M&}D8 z%)AaTN1Wsj?%#*kujTidaJ2~t3QFv78%yATbpvRxRJxh6L$;QBV^e&?$OLz6K5+Um5Qo36Em9%;q zmFnkDoe#>$W3A8GBLAnY0c(Xd@JAARaY}E05xBIjebQcx8(({yD)qF^_{ryjeb)A$ z42`phu;cPbk&7k4$gNq05;yxM1rA6b{*89n|BEP?-6@oU?}3{VJ;BTkYn?WXFIZhx z!8~7A2qq`nkI0`lmf7W0d@-Z<;{S3VC?M>v@!@@pbE=39pZ#jz>i}$~e-2t9bVDx@ ziE~1tiBG<1K7EUz=kkuX{q^o<*Ldp7rl6@Oai|*;_ijcRrnz}On|zwMeP(p6MQuu? zhs*lw7gQNxyYuPEHPNMAeV~kOS4bG3iN|Um%Aj)M&r-&k;$ddk&QZLJJ_aFI5m%;~M4yr;cENow_&-LpZ+T*9g4l6xkW zh%}qbA1KMS49HOW-q%R`9+p8Kp8kZA42oam`Wg9MK*ak*x}*%&3W}2no$t{A2T%Tc z7}uZ(N1sw`uD4Ws6Yz;rWUYO_uCPqFv3B+Qa%fyR5we77{mK$LC2wA`!_s(BLQgHg zp3PaZX9dsl5Zf@wrB>YF*{@AHNrzvToI1^uz|4wmlDVMz#I6#wxnEWI+J7pLYV6}w{aLzgb*W`%MM{fc z%UZhHJ)Ye3gxo$&mGni_Ao;?bt_H zPBQ{#xcnTVlDM(DpQXHG&rcSAuT$0_xT1-Jeu8PenDtIPowr#VTQ>C`>BkC=#;tK~ z&ti_zmO$_woMWW32rq{pTQ@e^#ObN+Z3MJp=-K~$izqrZzo0;Vc*vkA&pEuOcG%g| zW7iiwF(`*W#VP48w^k~c3Ixeh1a!mc4K1rEd5Qnj(1Kn6LXvKpC`FQ#M!*D9pj|{2 z>z&^>vV(umB6w+E$8`e#bbhU8)6}S3gGC`;+~VUXVvl-jcVR}~iZim~r)*u|=VdL+ zC1KwNtCgu*uo9sbBO|M9sk|`F(QpSPZEd~k>E01f29p*Jx4^}@gjPQ-%N9n{*r1+6 zphhhN|H^UW)El23jRs7Jw3lPv*O~a5N`Ic@yEnx!ko^4D%VK#;pIj!%!NO0bH`qdt zhhl&Ikx*W^i()aCaT`dE*nHSy_0+XqZ=VZF2CoXAo{Hi3Xu? zzhHeojfIm7Z^*^Tl`v?j#AsU{#rjP7RHR*f#6k}PQax4y z$yeUaFX8gK1n;++!B`;eHbC%Mst{ki%CG$D5#t*NHWyyX?wEfDf*5|Bek0%kW7Jxl z5TSin177-oaksZVGDK{CUogq_CF4d#=cyMp?;h5k_55_S;ZY4gYRk?+UeYrTX~aoS zwbu5@{>Gx;W@0=RI(^PlMz28&ZhXTub&ccrqgUX@Hq6crC0DOjX;ycxkWV*97Uiqz zd;Z;9=?m$;rM6h>`eWV_Nojgo7q7pcn!{}D$!QUk1zT4+S)Qo-HP4OSvNbd8mJyzC zi?nwuX8lWw3$Tg4tc?zwwNhQUJL#htsDu}-V>CoI))MR8u1!z!s<DaNBPqd=)PLZst#4YFg@(ObZV|O1Mppd2YzD{o&r`ozEnLk~+l+pRrQ*!mUc}v^wFUz7Xv0iblU8 z*^@yJdc8p^EBev&oDfP12sy-tpt$9^>PqVUaot_us742!H7N0HvjtOE!tS7gms-Gw zPL%bPq0cr=zY{)B5LpPkv?g{nQek`crb);Q;l4;UCI<>Pyy&z?4D*}$qhHJ6zI}u* zd3wpAS3fOim*~-q885Z|%3n@P3TLROt(JDnrg`3$0>7~Eo*O?b4*OwcwWo}o?k$Hm z`*DQ4Y85QQTf2tp27I=#Ft2!g3%RJobBT2#sBqzS>%t1^#qg(|rmv~$iZS-i&iqhL z?vH`hk)fg4zn`2sd9u|-!4VELgT;QoXa;cbozk<`23dqkVSkg68rL24m{)Mu@WnCJ zG|g!-LY9eK8{c9}5ZcA%j*i$kOTne`W zd)0?@HOuUC^eHdNt>ktyE2dj~IuN;YtK|<}SI5yDA2e}Ej0N%%Ke;2>;qdzP0ZPk* z4g$sHPzb=o(63KZ`O<1`)7v>u^m&!DCY2SUO)^VmDT(HkqVOxI_ln0RvL{iY$IDS} ze|ze>ibq+n2blqEO;aC1Vy~sq%R?$FjrkmwJ}hp5Q7@!$yhTZ(rFSYe@{Q;!$E2k7 z9@UR>6LKDbDI^y0aW4K7>O!+))~wHnD_(y7fiZ(b*EVV3umwfZ)jn~$^)~LJ3 z_RAM9yyoJhctk}n^30a$V!@W)Uxw6cqN<_}rlu@F%x&w&MaqLX4e^aMOfeJ+K|9J0 z4%ZeRV#Ma>5BBy>Clg5Iqo$`v2`3yGPOK*LO}c5=yLm+STnxLiLt|!Tb>7p{6KD?k z@trS4AJ^;4TRz|G(Lx~*+#9ADF9!Z@dX*eK5}9XtynL9IfcW8*6LIaF^Ax@ORt3*` zfc)Kk+IJi0Df`WVigZ(boML+H*GL}jc)Pz^W2UaWFlNCMrGwW;i8z-nXEiytA`A~g zgSua~89gA*;O`#4&pNow)q_zY-#z1ix)Ct(*wIr%ttC!bKD_Z5sZq*y>z7b-6Fx4| zo@@;>5L+)-VPJ6K-}L_NI|r%CW!$Q*-N`qEkqV-s z-*gTdSF&K6+uN!hWpmU@V0ZwEWn*{OZ@3reOWg0^VhJTBr9VHFTRp9Hm>+bWnaU0K zFAl7CwKA&AC*8SC+^c&iC;D&WsoOqapRz+YngkK30 zHNDZ);>Pdp?os7F+0}-WJ6GQ`9N%>==2rz3mzv#s&piH+iaTs53f9a1ql54fcUw1K z%Zvi6qspTvOk3OAN!i&6IXPE@zwO?HysSd>>;8u3PQPa^dszDDhhr7^3+y$iD>JY8 ztaGpiC(CQvAL#Fg()%bOFd%1VXJr7Q($?0N$olrC@VC;Q-=Gp=A*_ooTUm29KSqua z#8)OAo(1kbD~Z2rF%sWL4OlFVbr6ONgoe)zSuK%#Mhu%%{P`;mJw`U6R*URgTV;B2 zJtOPZa@YmW+rO76?_GGaI->Ns9kYYuqEKfM3nNZ%2orr$RWq?WZ>iLMhy0=N?|Vu5 z5j=6d)?zaXCDiIaI}^wuW0R1m2hfM5jRgbD|4krlI=bnip zFvpvoLgjbw-epnpS8yzI9ynrUkZ8%v%WFRbq9cU${|qw&y3<^M$!UA`^;m?d0F%I$ zS-}B4Y;7nW7|Q#{(>VEIl*08&`QZ9>Qcrtok9UHWxVU(A{k{k(tbE&aq^C5&>7LFd zo7c}Q_o`Q4#jmCCqp;_aQfQ(ck7q2YH(>S!+ZI-$WSMG2{v3Sn z`Ut~!18OiIt;zE3P)+3|_>;Wyu>RY^+S4A$#MVR?qt8aXJBwc&r zT6w!sNKaY1uhPk>VvV9>rzCFQu|L3V7@MHJP&w=?ycax(hxeTbgv#o2D#d?XafOtPW2Q6e6@i;HHVvf71cY|FbXI=-_*- z`T{U0w;O`eLFNFCD&R( z`|1)hGT-ip7kTUle_Q8|-?^$}%5z(%>SWkX3>e)GQwlT}^e#fGFzZ1$Fwzd|?w2lK zo}KSbuJ}8)NJT+03qHQ0W^d1@)@FfRY{))gDQzVcLHD&?ER-P9%$1)RC&Xss`RT}; ziS@r10&uy92<|7^03qrk<)1r-6wEy*31%I3Ftcx&izIg zfj%82(>al+rtfU+qyx9+)$24hG}uz;r5Dq06 z-I;5xW2T%J&&nkIN!MnK~A-P@?-nW-Uo2jC_rNq^rlL=Rnyoh`;Co_ZHC`4S$e(% zUIo`a$;7Ooi7zUM`18l2;g{X2tN(k$NQ`Y&AEzOCb@-`px86R%yE)rXT)mNz6u&(@ zu{T#l+e55h7yHY;0EKf&P|oVe7=U1xq_y?)m3NO(Bb%OIFU>m35{+g{hSNfBs))E} zs0~)?Dn#tBa-C4NZoX{F%R6I`pRG9<9W`FYe$BO`J(}%E{uT(CymV=v!vX{t@Yg#$ z0o{zvZfNd1u0freAEfZ{Sg_upFYzm`9^jSsEkr&?a~$2h?Ye)> zS*Rpn#fQ|V>MCJ#4a~e^d`4{V>09ehHYa0d$44RPbU>#~@VGz@m*Yo!l9I|EZ=#nD z%8Y|{6xs&QbEldBYIGAq&W$QvN5plI zU-e_+9QM~UgdXGN$MzVex^8`JLhEzW`VC1nO-G)6gDF8=ntS0bj?2wA6LgzN*-~_+MH`(6;~p diff --git a/icons/mob/clothing/head.dmi b/icons/mob/clothing/head.dmi index 3c5dfe501246de809399f71551b3efafc5b0002e..85cb1e0c0a298c28f09a64fc7c4d8a51151f9555 100644 GIT binary patch delta 50443 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Î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 delta 50485 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 Date: Wed, 6 May 2020 23:36:40 +0200 Subject: [PATCH 20/89] Update mob_movement.dm --- code/modules/mob/mob_movement.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index a607da195a..6531df5e68 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -100,7 +100,6 @@ if(mob.throwing) mob.throwing.finalize(FALSE) - var/mob/living/L = mob if(L.pulling && !(L.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE)) L.setDir(turn(L.dir, 180)) From a09c7180cbd37e41f2cd5f4f988cbb087569a0de Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Wed, 6 May 2020 23:55:36 +0200 Subject: [PATCH 21/89] Dims the lights again. --- code/modules/power/lighting.dm | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 7ad9f3a6ce..2abd2c034e 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -193,7 +193,7 @@ var/on = FALSE // 1 if on, 0 if off var/on_gs = FALSE var/static_power_used = 0 - var/brightness = 11 // luminosity when on, also used in power calculation + var/brightness = 9 // luminosity when on, also used in power calculation var/bulb_power = 0.75 // basically the alpha of the emitted light source var/bulb_colour = "#FFF6ED" // befault colour of the light. var/status = LIGHT_OK // LIGHT_OK, _EMPTY, _BURNED or _BROKEN @@ -232,7 +232,8 @@ icon_state = "bulb" base_state = "bulb" fitting = "bulb" - brightness = 6 + brightness = 5 + nightshift_brightness = 4 bulb_colour = "#FFDDBB" desc = "A small lighting fixture." light_type = /obj/item/light/bulb @@ -274,11 +275,11 @@ spawn(2) switch(fitting) if("tube") - brightness = 11 + brightness = 9 if(prob(2)) break_light_tube(1) if("bulb") - brightness = 6 + brightness = 5 if(prob(5)) break_light_tube(1) spawn(1) @@ -361,11 +362,11 @@ set_light(0) update_icon() - active_power_usage = (brightness * 7.2) + active_power_usage = (brightness * 10) if(on != on_gs) on_gs = on if(on) - static_power_used = brightness * 14.4 * (hijacked ? 2 : 1) //20W per unit luminosity + static_power_used = brightness * 20 * (hijacked ? 2 : 1) //20W per unit luminosity addStaticPower(static_power_used, STATIC_LIGHT) else removeStaticPower(static_power_used, STATIC_LIGHT) @@ -748,7 +749,7 @@ icon_state = "ltube" base_state = "ltube" item_state = "c_tube" - brightness = 11 + brightness = 9 /obj/item/light/tube/broken status = LIGHT_BROKEN @@ -761,7 +762,7 @@ item_state = "contvapour" lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi' - brightness = 6 + brightness = 5 /obj/item/light/bulb/broken status = LIGHT_BROKEN @@ -830,7 +831,8 @@ icon = 'icons/obj/lighting.dmi' base_state = "floor" // base description and icon_state icon_state = "floor" - brightness = 6 + brightness = 5 + nightshift_brightness = 4 layer = 2.5 light_type = /obj/item/light/bulb fitting = "bulb" From 7c54da65a263b953d8838cdce4577ddfb487020d Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 7 May 2020 09:16:14 -0700 Subject: [PATCH 22/89] The great material rebalance (#12123) * haha bet * Update stock_parts.dm * ok --- code/__DEFINES/construction.dm | 2 -- code/__DEFINES/material/worth.dm | 2 ++ code/__DEFINES/research/stock_parts.dm | 5 ++++ code/game/machinery/autolathe.dm | 14 +++++++---- code/modules/mining/machine_redemption.dm | 9 ++++--- .../modules/research/machinery/_production.dm | 24 +++++++++---------- tgstation.dme | 2 ++ 7 files changed, 37 insertions(+), 21 deletions(-) create mode 100644 code/__DEFINES/material/worth.dm create mode 100644 code/__DEFINES/research/stock_parts.dm diff --git a/code/__DEFINES/construction.dm b/code/__DEFINES/construction.dm index 2f54d066a0..77ec97f47e 100644 --- a/code/__DEFINES/construction.dm +++ b/code/__DEFINES/construction.dm @@ -59,8 +59,6 @@ //let's just pretend fulltile windows being children of border windows is fine #define FULLTILE_WINDOW_DIR NORTHEAST -//The amount of materials you get from a sheet of mineral like iron/diamond/glass etc -#define MINERAL_MATERIAL_AMOUNT 2000 //The maximum size of a stack object. #define MAX_STACK_SIZE 50 //maximum amount of cable in a coil diff --git a/code/__DEFINES/material/worth.dm b/code/__DEFINES/material/worth.dm new file mode 100644 index 0000000000..db79d7317b --- /dev/null +++ b/code/__DEFINES/material/worth.dm @@ -0,0 +1,2 @@ +/// cm3 of material matter per sheet +#define MINERAL_MATERIAL_AMOUNT 2000 diff --git a/code/__DEFINES/research/stock_parts.dm b/code/__DEFINES/research/stock_parts.dm new file mode 100644 index 0000000000..457e3b632e --- /dev/null +++ b/code/__DEFINES/research/stock_parts.dm @@ -0,0 +1,5 @@ +// the clamps are just sanity checks. +/// Efficiency scaling for stock part level to material usage. All code concerning lathing and production from raw material sheet should be using this. +#define STANDARD_PART_LEVEL_LATHE_COEFFICIENT(level) clamp(1 - (level * 0.1), 0, 1) +/// Efficiency scaling for stock part level to ore factor. All code concerning lathing and production from raw ores to raw material sheets should be using this. +#define STANDARD_PART_LEVEL_ORE_COEFFICIENT(level) clamp(1 + (level * 0.125), 1, 10) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index edb31e9dbd..de92e1c249 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -62,6 +62,9 @@ /datum/material/mythril ) + /// Base print speed + var/base_print_speed = 10 + /obj/machinery/autolathe/Initialize() AddComponent(/datum/component/material_container, allowed_materials, _show_on_examine=TRUE, _after_insert=CALLBACK(src, .proc/AfterMaterialInsert)) . = ..() @@ -206,7 +209,7 @@ busy = TRUE use_power(power) icon_state = "autolathe_n" - var/time = is_stack ? 32 : 32*coeff*multiplier + var/time = is_stack ? 10 : base_print_speed * coeff * multiplier addtimer(CALLBACK(src, .proc/make_item, power, materials_used, custom_materials, multiplier, coeff, is_stack), time) else to_chat(usr, "Not enough materials for this operation.") @@ -254,10 +257,12 @@ T += MB.rating*75000 var/datum/component/material_container/materials = GetComponent(/datum/component/material_container) materials.max_amount = T - T=1.2 + var/manips = 0 + var/total_manip_rating = 0 for(var/obj/item/stock_parts/manipulator/M in component_parts) - T -= M.rating*0.2 - prod_coeff = min(1,max(0,T)) // Coeff going 1 -> 0,8 -> 0,6 -> 0,4 + total_manip_rating += M.rating + manips++ + prod_coeff = STANDARD_PART_LEVEL_LATHE_COEFFICIENT(total_manip_rating / (manips? manips : 1)) /obj/machinery/autolathe/examine(mob/user) . += ..() @@ -440,6 +445,7 @@ hackable = FALSE circuit = /obj/item/circuitboard/machine/autolathe/secure stored_research = /datum/techweb/specialized/autounlocking/autolathe/public + base_print_speed = 20 /obj/machinery/autolathe/toy name = "autoylathe" diff --git a/code/modules/mining/machine_redemption.dm b/code/modules/mining/machine_redemption.dm index 2f6e8a9b7c..a7b7a84b27 100644 --- a/code/modules/mining/machine_redemption.dm +++ b/code/modules/mining/machine_redemption.dm @@ -37,16 +37,19 @@ /obj/machinery/mineral/ore_redemption/RefreshParts() var/ore_pickup_rate_temp = 15 var/point_upgrade_temp = 1 - var/ore_multiplier_temp = 1 + var/avg_bin_level = 0 + var/bins = 0 for(var/obj/item/stock_parts/matter_bin/B in component_parts) - ore_multiplier_temp = 0.65 + (0.35 * B.rating) + avg_bin_level = B.rating + bins++ for(var/obj/item/stock_parts/manipulator/M in component_parts) ore_pickup_rate_temp = 15 * M.rating for(var/obj/item/stock_parts/micro_laser/L in component_parts) point_upgrade_temp = 0.65 + (0.35 * L.rating) + avg_bin_level /= bins? bins : 1 + ore_multiplier = STANDARD_PART_LEVEL_ORE_COEFFICIENT(avg_bin_level) ore_pickup_rate = ore_pickup_rate_temp point_upgrade = point_upgrade_temp - ore_multiplier = round(ore_multiplier_temp, 0.01) /obj/machinery/mineral/ore_redemption/examine(mob/user) . = ..() diff --git a/code/modules/research/machinery/_production.dm b/code/modules/research/machinery/_production.dm index 2159e9eba3..6fca686f90 100644 --- a/code/modules/research/machinery/_production.dm +++ b/code/modules/research/machinery/_production.dm @@ -61,7 +61,8 @@ popup.open() /obj/machinery/rnd/production/proc/calculate_efficiency() - efficiency_coeff = 1 + var/total_manip_rating = 0 + var/manips = 0 if(reagents) //If reagents/materials aren't initialized, don't bother, we'll be doing this again after reagents init anyways. reagents.maximum_volume = 0 for(var/obj/item/reagent_containers/glass/G in component_parts) @@ -72,11 +73,10 @@ for(var/obj/item/stock_parts/matter_bin/M in component_parts) total_storage += M.rating * 75000 materials.set_local_size(total_storage) - var/total_rating = 0 for(var/obj/item/stock_parts/manipulator/M in component_parts) - total_rating += M.rating - total_rating = max(1, total_rating) - efficiency_coeff = total_rating + total_manip_rating += M.rating + manips++ + efficiency_coeff = STANDARD_PART_LEVEL_LATHE_COEFFICIENT(total_manip_rating / (manips? manips : 1)) /obj/machinery/rnd/production/examine(mob/user) . = ..() @@ -113,7 +113,7 @@ // these types don't have their .materials set in do_print, so don't allow // them to be constructed efficiently var/ef = efficient_with(being_built.build_path) ? efficiency_coeff : 1 - return round(A / max(1, all_materials[mat] / ef)) + return round(A / max(1, all_materials[mat] * ef)) /obj/machinery/rnd/production/proc/efficient_with(path) return !ispath(path, /obj/item/stack/sheet) && !ispath(path, /obj/item/stack/ore/bluespace_crystal) @@ -155,24 +155,24 @@ var/coeff = efficient_with(D.build_path) ? efficiency_coeff : 1 var/list/efficient_mats = list() for(var/MAT in D.materials) - efficient_mats[MAT] = D.materials[MAT]/coeff + efficient_mats[MAT] = D.materials[MAT] * coeff if(!materials.mat_container.has_materials(efficient_mats, amount)) say("Not enough materials to complete prototype[amount > 1? "s" : ""].") return FALSE for(var/R in D.reagents_list) - if(!reagents.has_reagent(R, D.reagents_list[R]*amount/coeff)) + if(!reagents.has_reagent(R, D.reagents_list[R] * amount * coeff)) say("Not enough reagents to complete prototype[amount > 1? "s" : ""].") return FALSE materials.mat_container.use_materials(efficient_mats, amount) materials.silo_log(src, "built", -amount, "[D.name]", efficient_mats) for(var/R in D.reagents_list) - reagents.remove_reagent(R, D.reagents_list[R]*amount/coeff) + reagents.remove_reagent(R, D.reagents_list[R] * amount * coeff) busy = TRUE if(production_animation) flick(production_animation, src) - var/timecoeff = D.lathe_time_factor / efficiency_coeff - addtimer(CALLBACK(src, .proc/reset_busy), (30 * timecoeff * amount) ** 0.5) - addtimer(CALLBACK(src, .proc/do_print, D.build_path, amount, efficient_mats, D.dangerous_construction, usr), (32 * timecoeff * amount) ** 0.8) + var/timecoeff = D.lathe_time_factor * efficiency_coeff + addtimer(CALLBACK(src, .proc/reset_busy), (20 * timecoeff * amount) ** 0.5) + addtimer(CALLBACK(src, .proc/do_print, D.build_path, amount, efficient_mats, D.dangerous_construction, usr), (20 * timecoeff * amount) ** 0.5) return TRUE /obj/machinery/rnd/production/proc/search(string) diff --git a/tgstation.dme b/tgstation.dme index c954e7cb2e..d61a1c4ef9 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -125,8 +125,10 @@ #include "code\__DEFINES\dcs\signals.dm" #include "code\__DEFINES\flags\shields.dm" #include "code\__DEFINES\mapping\maploader.dm" +#include "code\__DEFINES\material\worth.dm" #include "code\__DEFINES\misc\return_values.dm" #include "code\__DEFINES\mobs\slowdowns.dm" +#include "code\__DEFINES\research\stock_parts.dm" #include "code\__DEFINES\skills\skills.dm" #include "code\__HELPERS\_cit_helpers.dm" #include "code\__HELPERS\_lists.dm" From 2a33060c9847972c93336d95e9ee179048fae94d Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 7 May 2020 10:44:45 -0700 Subject: [PATCH 23/89] Update world.dm --- code/game/world.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/game/world.dm b/code/game/world.dm index 94cfb0baca..10431e4af9 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -8,8 +8,9 @@ GLOBAL_LIST(topic_status_cache) //This happens after the Master subsystem new(s) (it's a global datum) //So subsystems globals exist, but are not initialised /world/New() - if(fexists("byond-extools.dll")) - call("byond-extools.dll", "maptick_initialize")() + var/extools = world.GetConfig("env", "EXTOOLS_DLL") || "./byond-extools.dll" + if (fexists(extools)) + call(extools, "maptick_initialize")() enable_debugger() world.Profile(PROFILE_START) From 86fc39a77738f2376a8601df8a0c5aff7f4cd617 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 7 May 2020 17:55:25 -0400 Subject: [PATCH 24/89] le sigh --- code/game/objects/items/stacks/medical.dm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index adc4970175..19c15b309b 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -59,6 +59,9 @@ self_delay = 20 grind_results = list(/datum/reagent/medicine/styptic_powder = 10) +/obj/item/stack/medical/bruise_pack/one + amount = 1 + /obj/item/stack/medical/bruise_pack/heal(mob/living/M, mob/user) if(M.stat == DEAD) to_chat(user, " [M] is dead. You can not help [M.p_them()]!") @@ -134,6 +137,9 @@ singular_name = "sterilized medical gauze" self_delay = 5 +/obj/item/stack/medical/gauze/adv/one + amount = 1 + /obj/item/stack/medical/gauze/cyborg custom_materials = null is_cyborg = 1 @@ -151,6 +157,9 @@ self_delay = 20 grind_results = list(/datum/reagent/medicine/silver_sulfadiazine = 10) +/obj/item/stack/medical/ointment/one + amount = 1 + /obj/item/stack/medical/ointment/heal(mob/living/M, mob/user) if(M.stat == DEAD) to_chat(user, " [M] is dead. You can not help [M.p_them()]!") From 80687bb17f01b43da3fa8031da3335722abb4dfa Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Thu, 7 May 2020 18:00:50 -0400 Subject: [PATCH 25/89] Update recipes_misc.dm --- code/datums/components/crafting/recipes/recipes_misc.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/datums/components/crafting/recipes/recipes_misc.dm b/code/datums/components/crafting/recipes/recipes_misc.dm index 49d7a8dfea..8ee893b2e5 100644 --- a/code/datums/components/crafting/recipes/recipes_misc.dm +++ b/code/datums/components/crafting/recipes/recipes_misc.dm @@ -117,7 +117,7 @@ /datum/crafting_recipe/upgraded_gauze name = "Improved Gauze" - result = /obj/item/stack/medical/gauze/adv + result = /obj/item/stack/medical/gauze/adv/one time = 1 reqs = list(/obj/item/stack/medical/gauze = 1, /datum/reagent/space_cleaner/sterilizine = 10) @@ -126,7 +126,7 @@ /datum/crafting_recipe/bruise_pack name = "Bruise Pack" - result = /obj/item/stack/medical/bruise_pack + result = /obj/item/stack/medical/bruise_pack/one time = 1 reqs = list(/obj/item/stack/medical/gauze = 1, /datum/reagent/medicine/styptic_powder = 10) @@ -134,8 +134,8 @@ subcategory = CAT_TOOL /datum/crafting_recipe/burn_pack - name = "Brun Ointment" - result = /obj/item/stack/medical/ointment + name = "Burn Ointment" + result = /obj/item/stack/medical/ointment/one time = 1 reqs = list(/obj/item/stack/medical/gauze = 1, /datum/reagent/medicine/silver_sulfadiazine = 10) From 835753a02db657cd0e825a475bc12464389109cc Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Fri, 8 May 2020 02:14:07 +0200 Subject: [PATCH 26/89] ! --- code/datums/components/mood.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index cd9e89a5d8..d32d0d4f2e 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -201,7 +201,7 @@ if(old_sanity > 1 && sanity == 1) RegisterSignal(master, COMSIG_MOB_SKILL_GET_AFFINITY, .proc/on_get_skill_affinity) - else if(old_sanity == 1 && sanity < 1) + else if(old_sanity == 1 && sanity > 1) UnregisterSignal(master, COMSIG_MOB_SKILL_GET_AFFINITY) //update_mood_icon() From ddb50e2845597f4c677d12f7c17d22dcbb232b3d Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Fri, 8 May 2020 02:24:49 +0200 Subject: [PATCH 27/89] colors. --- code/__DEFINES/colors.dm | 1 + code/datums/skills/_skill.dm | 2 +- code/datums/skills/engineering.dm | 1 + code/datums/skills/medical.dm | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index cc2cd8834a..3d15412efe 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -43,6 +43,7 @@ #define COLOR_RED_GRAY "#B4696A" #define COLOR_PALE_BLUE_GRAY "#98C5DF" #define COLOR_PALE_GREEN_GRAY "#B7D993" +#define COLOR_PALE_ORANGE "#FFC066" #define COLOR_PALE_RED_GRAY "#D59998" #define COLOR_PALE_PURPLE_GRAY "#CBB1CA" #define COLOR_PURPLE_GRAY "#AE8CA8" diff --git a/code/datums/skills/_skill.dm b/code/datums/skills/_skill.dm index 459a47a06c..f52945536f 100644 --- a/code/datums/skills/_skill.dm +++ b/code/datums/skills/_skill.dm @@ -28,7 +28,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) /// Our description var/desc /// Color of the name as shown in the html readout - var/name_color = "#FFFFFF" + var/name_color = "#F0F0F0" // White on dark surface. /// Our progression type var/progression_type /// Abstract type diff --git a/code/datums/skills/engineering.dm b/code/datums/skills/engineering.dm index 4cae3f9f63..59c9436e46 100644 --- a/code/datums/skills/engineering.dm +++ b/code/datums/skills/engineering.dm @@ -1,5 +1,6 @@ /datum/skill/level/job/wiring name = "Wiring" desc = "How proficient and knowledged you are at wiring beyond laying cables on the floor." + name_color = COLOR_PALE_ORANGE competency_thresholds = list(JOB_SKILL_BASIC, JOB_SKILL_EXPERT, JOB_SKILL_MASTER) skill_flags = SKILL_USE_MOOD|SKILL_TRAIN_MOOD|SKILL_USE_TOOL|SKILL_TRAINING_TOOL diff --git a/code/datums/skills/medical.dm b/code/datums/skills/medical.dm index 1b0774b0ce..aaae1236a6 100644 --- a/code/datums/skills/medical.dm +++ b/code/datums/skills/medical.dm @@ -1,4 +1,5 @@ /datum/skill/numerical/surgery name = "Surgery" desc = "How proficient you are at doing surgery." + name_color = COLOR_PALE_BLUE_GRAY competency_mults = list(0.025, 0.025, 0.025) // 60% surgery speed up at max value of 100. From 4041fce0f7473706fdb09c14acb45aecda87bce7 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Fri, 8 May 2020 02:30:57 +0200 Subject: [PATCH 28/89] whops. --- code/datums/wires/airlock.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/wires/airlock.dm b/code/datums/wires/airlock.dm index 60ccf891dd..2b13344cc6 100644 --- a/code/datums/wires/airlock.dm +++ b/code/datums/wires/airlock.dm @@ -1,7 +1,7 @@ /datum/wires/airlock holder_type = /obj/machinery/door/airlock proper_name = "Generic Airlock" - req_skill = JOB_SKILL_UNSKILLED //Training wheel, as per request. + req_skill = JOB_SKILL_UNTRAINED //Training wheel, as per request. var/wiretype /datum/wires/airlock/secure From 3dfef3c393c1cc83c70fdbca4e013f92fbc70895 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Fri, 8 May 2020 02:50:14 +0200 Subject: [PATCH 29/89] . --- code/game/objects/items.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index d40f01959f..949ed050f5 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -134,7 +134,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) ///Skills vars //list of skill PATHS exercised when using this item. An associated bitfield can be set to indicate additional ways the skill is used by this specific item. - var/list/datum/skill/used_skills. + var/list/datum/skill/used_skills var/skill_difficulty = THRESHOLD_COMPETENT //how difficult it's to use this item in general. var/skill_gain = DEF_SKILL_GAIN //base skill value gain from using this item. From 192c0dcc1a9c8860e2a1577d8b7e64b7dc3564ab Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Fri, 8 May 2020 03:35:29 +0200 Subject: [PATCH 30/89] Demodularizing the arousal module. --- .../code => code}/modules/arousal/arousal.dm | 0 .../code => code}/modules/arousal/genitals.dm | 0 .../arousal/genitals_sprite_accessories.dm | 14 +++++++------- .../modules/arousal/organs/breasts.dm | 2 +- .../modules/arousal/organs/penis.dm | 2 +- .../modules/arousal/organs/testicles.dm | 2 +- .../modules/arousal/organs/vagina.dm | 2 +- .../modules/arousal/organs/womb.dm | 2 +- .../modules/arousal/toys/dildos.dm | 2 +- .../icons => icons}/obj/genitals/breasts.dmi | Bin .../obj/genitals/breasts_onmob.dmi | Bin .../icons => icons}/obj/genitals/dildo.dmi | Bin .../icons => icons}/obj/genitals/effects.dmi | Bin .../icons => icons}/obj/genitals/hud.dmi | Bin .../icons => icons}/obj/genitals/onahole.dmi | Bin .../icons => icons}/obj/genitals/penis.dmi | Bin .../obj/genitals/penis_onmob.dmi | Bin .../obj/genitals/taur_penis_onmob.dmi | Bin .../obj/genitals/testicles.dmi | Bin .../obj/genitals/testicles_onmob.dmi | Bin .../icons => icons}/obj/genitals/vagina.dmi | Bin .../obj/genitals/vagina_onmob.dmi | Bin .../modules/reagents/reagents/cit_reagents.dm | 4 ++-- tgstation.dme | 18 +++++++++--------- 24 files changed, 24 insertions(+), 24 deletions(-) rename {modular_citadel/code => code}/modules/arousal/arousal.dm (100%) rename {modular_citadel/code => code}/modules/arousal/genitals.dm (100%) rename {modular_citadel/code => code}/modules/arousal/genitals_sprite_accessories.dm (85%) rename {modular_citadel/code => code}/modules/arousal/organs/breasts.dm (98%) rename {modular_citadel/code => code}/modules/arousal/organs/penis.dm (97%) rename {modular_citadel/code => code}/modules/arousal/organs/testicles.dm (97%) rename {modular_citadel/code => code}/modules/arousal/organs/vagina.dm (97%) rename {modular_citadel/code => code}/modules/arousal/organs/womb.dm (84%) rename {modular_citadel/code => code}/modules/arousal/toys/dildos.dm (98%) rename {modular_citadel/icons => icons}/obj/genitals/breasts.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/breasts_onmob.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/dildo.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/effects.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/hud.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/onahole.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/penis.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/penis_onmob.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/taur_penis_onmob.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/testicles.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/testicles_onmob.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/vagina.dmi (100%) rename {modular_citadel/icons => icons}/obj/genitals/vagina_onmob.dmi (100%) diff --git a/modular_citadel/code/modules/arousal/arousal.dm b/code/modules/arousal/arousal.dm similarity index 100% rename from modular_citadel/code/modules/arousal/arousal.dm rename to code/modules/arousal/arousal.dm diff --git a/modular_citadel/code/modules/arousal/genitals.dm b/code/modules/arousal/genitals.dm similarity index 100% rename from modular_citadel/code/modules/arousal/genitals.dm rename to code/modules/arousal/genitals.dm diff --git a/modular_citadel/code/modules/arousal/genitals_sprite_accessories.dm b/code/modules/arousal/genitals_sprite_accessories.dm similarity index 85% rename from modular_citadel/code/modules/arousal/genitals_sprite_accessories.dm rename to code/modules/arousal/genitals_sprite_accessories.dm index 1cea2dd916..1140a1d3ec 100644 --- a/modular_citadel/code/modules/arousal/genitals_sprite_accessories.dm +++ b/code/modules/arousal/genitals_sprite_accessories.dm @@ -9,7 +9,7 @@ //DICKS,COCKS,PENISES,WHATEVER YOU WANT TO CALL THEM /datum/sprite_accessory/penis - icon = 'modular_citadel/icons/obj/genitals/penis_onmob.dmi' + icon = 'icons/obj/genitals/penis_onmob.dmi' name = "penis" //the preview name of the accessory color_src = "cock_color" alt_aroused = TRUE @@ -22,13 +22,13 @@ /datum/sprite_accessory/penis/knotted icon_state = "knotted" name = "Knotted" - taur_icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi' + taur_icon = 'icons/obj/genitals/taur_penis_onmob.dmi' taur_dimension_x = 64 /datum/sprite_accessory/penis/flared icon_state = "flared" name = "Flared" - taur_icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi' + taur_icon = 'icons/obj/genitals/taur_penis_onmob.dmi' taur_dimension_x = 64 /datum/sprite_accessory/penis/barbknot @@ -38,7 +38,7 @@ /datum/sprite_accessory/penis/tapered icon_state = "tapered" name = "Tapered" - taur_icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi' + taur_icon = 'icons/obj/genitals/taur_penis_onmob.dmi' taur_dimension_x = 64 /datum/sprite_accessory/penis/tentacle @@ -55,7 +55,7 @@ //Testicles /datum/sprite_accessory/testicles - icon = 'modular_citadel/icons/obj/genitals/testicles_onmob.dmi' + icon = 'icons/obj/genitals/testicles_onmob.dmi' icon_state = "testicle" name = "testicle" //the preview name of the accessory color_src = "balls_color" @@ -66,7 +66,7 @@ //Vaginas /datum/sprite_accessory/vagina - icon = 'modular_citadel/icons/obj/genitals/vagina_onmob.dmi' + icon = 'icons/obj/genitals/vagina_onmob.dmi' name = "vagina" color_src = "vag_color" alt_aroused = TRUE @@ -104,7 +104,7 @@ //BREASTS BE HERE /datum/sprite_accessory/breasts - icon = 'modular_citadel/icons/obj/genitals/breasts_onmob.dmi' + icon = 'icons/obj/genitals/breasts_onmob.dmi' name = "breasts" color_src = "breasts_color" diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/code/modules/arousal/organs/breasts.dm similarity index 98% rename from modular_citadel/code/modules/arousal/organs/breasts.dm rename to code/modules/arousal/organs/breasts.dm index 213ebb049a..0989966638 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/code/modules/arousal/organs/breasts.dm @@ -5,7 +5,7 @@ name = "breasts" desc = "Female milk producing organs." icon_state = "breasts" - icon = 'modular_citadel/icons/obj/genitals/breasts.dmi' + icon = 'icons/obj/genitals/breasts.dmi' zone = BODY_ZONE_CHEST slot = ORGAN_SLOT_BREASTS size = BREASTS_SIZE_DEF // "c". Refer to the breast_values static list below for the cups associated number values diff --git a/modular_citadel/code/modules/arousal/organs/penis.dm b/code/modules/arousal/organs/penis.dm similarity index 97% rename from modular_citadel/code/modules/arousal/organs/penis.dm rename to code/modules/arousal/organs/penis.dm index e1b8dc0dba..7b20c0e7ce 100644 --- a/modular_citadel/code/modules/arousal/organs/penis.dm +++ b/code/modules/arousal/organs/penis.dm @@ -2,7 +2,7 @@ name = "penis" desc = "A male reproductive organ." icon_state = "penis" - icon = 'modular_citadel/icons/obj/genitals/penis.dmi' + icon = 'icons/obj/genitals/penis.dmi' zone = BODY_ZONE_PRECISE_GROIN slot = ORGAN_SLOT_PENIS masturbation_verb = "stroke" diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/code/modules/arousal/organs/testicles.dm similarity index 97% rename from modular_citadel/code/modules/arousal/organs/testicles.dm rename to code/modules/arousal/organs/testicles.dm index 5fb1c75ad0..bfb5c99a55 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/code/modules/arousal/organs/testicles.dm @@ -2,7 +2,7 @@ name = "testicles" desc = "A male reproductive organ." icon_state = "testicles" - icon = 'modular_citadel/icons/obj/genitals/testicles.dmi' + icon = 'icons/obj/genitals/testicles.dmi' zone = BODY_ZONE_PRECISE_GROIN slot = ORGAN_SLOT_TESTICLES size = BALLS_SIZE_MIN diff --git a/modular_citadel/code/modules/arousal/organs/vagina.dm b/code/modules/arousal/organs/vagina.dm similarity index 97% rename from modular_citadel/code/modules/arousal/organs/vagina.dm rename to code/modules/arousal/organs/vagina.dm index cdc7dc4927..5c8bbeea98 100644 --- a/modular_citadel/code/modules/arousal/organs/vagina.dm +++ b/code/modules/arousal/organs/vagina.dm @@ -1,7 +1,7 @@ /obj/item/organ/genital/vagina name = "vagina" desc = "A female reproductive organ." - icon = 'modular_citadel/icons/obj/genitals/vagina.dmi' + icon = 'icons/obj/genitals/vagina.dmi' icon_state = ORGAN_SLOT_VAGINA zone = BODY_ZONE_PRECISE_GROIN slot = "vagina" diff --git a/modular_citadel/code/modules/arousal/organs/womb.dm b/code/modules/arousal/organs/womb.dm similarity index 84% rename from modular_citadel/code/modules/arousal/organs/womb.dm rename to code/modules/arousal/organs/womb.dm index 7f91310e3e..386f407a26 100644 --- a/modular_citadel/code/modules/arousal/organs/womb.dm +++ b/code/modules/arousal/organs/womb.dm @@ -1,7 +1,7 @@ /obj/item/organ/genital/womb name = "womb" desc = "A female reproductive organ." - icon = 'modular_citadel/icons/obj/genitals/vagina.dmi' + icon = 'icons/obj/genitals/vagina.dmi' icon_state = "womb" zone = BODY_ZONE_PRECISE_GROIN slot = ORGAN_SLOT_WOMB diff --git a/modular_citadel/code/modules/arousal/toys/dildos.dm b/code/modules/arousal/toys/dildos.dm similarity index 98% rename from modular_citadel/code/modules/arousal/toys/dildos.dm rename to code/modules/arousal/toys/dildos.dm index 58245c0c5f..5cb6d47118 100644 --- a/modular_citadel/code/modules/arousal/toys/dildos.dm +++ b/code/modules/arousal/toys/dildos.dm @@ -4,7 +4,7 @@ /obj/item/dildo name = "dildo" desc = "Floppy!" - icon = 'modular_citadel/icons/obj/genitals/dildo.dmi' + icon = 'icons/obj/genitals/dildo.dmi' force = 0 hitsound = 'sound/weapons/tap.ogg' throwforce = 0 diff --git a/modular_citadel/icons/obj/genitals/breasts.dmi b/icons/obj/genitals/breasts.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/breasts.dmi rename to icons/obj/genitals/breasts.dmi diff --git a/modular_citadel/icons/obj/genitals/breasts_onmob.dmi b/icons/obj/genitals/breasts_onmob.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/breasts_onmob.dmi rename to icons/obj/genitals/breasts_onmob.dmi diff --git a/modular_citadel/icons/obj/genitals/dildo.dmi b/icons/obj/genitals/dildo.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/dildo.dmi rename to icons/obj/genitals/dildo.dmi diff --git a/modular_citadel/icons/obj/genitals/effects.dmi b/icons/obj/genitals/effects.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/effects.dmi rename to icons/obj/genitals/effects.dmi diff --git a/modular_citadel/icons/obj/genitals/hud.dmi b/icons/obj/genitals/hud.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/hud.dmi rename to icons/obj/genitals/hud.dmi diff --git a/modular_citadel/icons/obj/genitals/onahole.dmi b/icons/obj/genitals/onahole.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/onahole.dmi rename to icons/obj/genitals/onahole.dmi diff --git a/modular_citadel/icons/obj/genitals/penis.dmi b/icons/obj/genitals/penis.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/penis.dmi rename to icons/obj/genitals/penis.dmi diff --git a/modular_citadel/icons/obj/genitals/penis_onmob.dmi b/icons/obj/genitals/penis_onmob.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/penis_onmob.dmi rename to icons/obj/genitals/penis_onmob.dmi diff --git a/modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi b/icons/obj/genitals/taur_penis_onmob.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi rename to icons/obj/genitals/taur_penis_onmob.dmi diff --git a/modular_citadel/icons/obj/genitals/testicles.dmi b/icons/obj/genitals/testicles.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/testicles.dmi rename to icons/obj/genitals/testicles.dmi diff --git a/modular_citadel/icons/obj/genitals/testicles_onmob.dmi b/icons/obj/genitals/testicles_onmob.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/testicles_onmob.dmi rename to icons/obj/genitals/testicles_onmob.dmi diff --git a/modular_citadel/icons/obj/genitals/vagina.dmi b/icons/obj/genitals/vagina.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/vagina.dmi rename to icons/obj/genitals/vagina.dmi diff --git a/modular_citadel/icons/obj/genitals/vagina_onmob.dmi b/icons/obj/genitals/vagina_onmob.dmi similarity index 100% rename from modular_citadel/icons/obj/genitals/vagina_onmob.dmi rename to icons/obj/genitals/vagina_onmob.dmi diff --git a/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm b/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm index d2a063fd4e..280a5eebfa 100644 --- a/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm +++ b/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm @@ -28,7 +28,7 @@ gender = PLURAL density = 0 layer = ABOVE_NORMAL_TURF_LAYER - icon = 'modular_citadel/icons/obj/genitals/effects.dmi' + icon = 'icons/obj/genitals/effects.dmi' icon_state = "semen1" random_icon_states = list("semen1", "semen2", "semen3", "semen4") @@ -59,7 +59,7 @@ gender = PLURAL density = 0 layer = ABOVE_NORMAL_TURF_LAYER - icon = 'modular_citadel/icons/obj/genitals/effects.dmi' + icon = 'icons/obj/genitals/effects.dmi' icon_state = "fem1" random_icon_states = list("fem1", "fem2", "fem3", "fem4") blood_state = null diff --git a/tgstation.dme b/tgstation.dme index d61a1c4ef9..800d22df26 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -1561,6 +1561,15 @@ #include "code\modules\antagonists\wizard\equipment\soulstone.dm" #include "code\modules\antagonists\wizard\equipment\spellbook.dm" #include "code\modules\antagonists\xeno\xeno.dm" +#include "code\modules\arousal\arousal.dm" +#include "code\modules\arousal\genitals.dm" +#include "code\modules\arousal\genitals_sprite_accessories.dm" +#include "code\modules\arousal\organs\breasts.dm" +#include "code\modules\arousal\organs\penis.dm" +#include "code\modules\arousal\organs\testicles.dm" +#include "code\modules\arousal\organs\vagina.dm" +#include "code\modules\arousal\organs\womb.dm" +#include "code\modules\arousal\toys\dildos.dm" #include "code\modules\assembly\assembly.dm" #include "code\modules\assembly\bomb.dm" #include "code\modules\assembly\doorcontrol.dm" @@ -3304,15 +3313,6 @@ #include "modular_citadel\code\modules\admin\chat_commands.dm" #include "modular_citadel\code\modules\admin\holder2.dm" #include "modular_citadel\code\modules\admin\secrets.dm" -#include "modular_citadel\code\modules\arousal\arousal.dm" -#include "modular_citadel\code\modules\arousal\genitals.dm" -#include "modular_citadel\code\modules\arousal\genitals_sprite_accessories.dm" -#include "modular_citadel\code\modules\arousal\organs\breasts.dm" -#include "modular_citadel\code\modules\arousal\organs\penis.dm" -#include "modular_citadel\code\modules\arousal\organs\testicles.dm" -#include "modular_citadel\code\modules\arousal\organs\vagina.dm" -#include "modular_citadel\code\modules\arousal\organs\womb.dm" -#include "modular_citadel\code\modules\arousal\toys\dildos.dm" #include "modular_citadel\code\modules\client\client_defines.dm" #include "modular_citadel\code\modules\client\client_procs.dm" #include "modular_citadel\code\modules\client\preferences.dm" From 51081fcb1a063de3cd5718423ba22fcd2c848452 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 7 May 2020 18:36:08 -0700 Subject: [PATCH 31/89] ok (#12083) --- code/__DEFINES/MC.dm | 17 ++++++++++------- code/controllers/admin.dm | 12 +++++++++--- code/controllers/master.dm | 16 +++++++++++++++- code/modules/mob/mob.dm | 2 +- 4 files changed, 35 insertions(+), 12 deletions(-) diff --git a/code/__DEFINES/MC.dm b/code/__DEFINES/MC.dm index 65be8258a1..bad64846d6 100644 --- a/code/__DEFINES/MC.dm +++ b/code/__DEFINES/MC.dm @@ -25,35 +25,38 @@ //SubSystem flags (Please design any new flags so that the default is off, to make adding flags to subsystems easier) //subsystem does not initialize. -#define SS_NO_INIT 1 +#define SS_NO_INIT (1<<0) //subsystem does not fire. // (like can_fire = 0, but keeps it from getting added to the processing subsystems list) // (Requires a MC restart to change) -#define SS_NO_FIRE 2 +#define SS_NO_FIRE (1<<1) //subsystem only runs on spare cpu (after all non-background subsystems have ran that tick) // SS_BACKGROUND has its own priority bracket -#define SS_BACKGROUND 4 +#define SS_BACKGROUND (1<<2) //subsystem does not tick check, and should not run unless there is enough time (or its running behind (unless background)) -#define SS_NO_TICK_CHECK 8 +#define SS_NO_TICK_CHECK (1<<3) //Treat wait as a tick count, not DS, run every wait ticks. // (also forces it to run first in the tick, above even SS_NO_TICK_CHECK subsystems) // (implies all runlevels because of how it works) // (overrides SS_BACKGROUND) // This is designed for basically anything that works as a mini-mc (like SStimer) -#define SS_TICKER 16 +#define SS_TICKER (1<<4) //keep the subsystem's timing on point by firing early if it fired late last fire because of lag // ie: if a 20ds subsystem fires say 5 ds late due to lag or what not, its next fire would be in 15ds, not 20ds. -#define SS_KEEP_TIMING 32 +#define SS_KEEP_TIMING (1<<5) //Calculate its next fire after its fired. // (IE: if a 5ds wait SS takes 2ds to run, its next fire should be 5ds away, not 3ds like it normally would be) // This flag overrides SS_KEEP_TIMING -#define SS_POST_FIRE_TIMING 64 +#define SS_POST_FIRE_TIMING (1<<6) + +/// Show in stat() by default even if SS_NO_FIRE +#define SS_ALWAYS_SHOW_STAT (1<<7) //SUBSYSTEM STATES #define SS_IDLE 0 //aint doing shit. diff --git a/code/controllers/admin.dm b/code/controllers/admin.dm index 19fef28597..28803f0979 100644 --- a/code/controllers/admin.dm +++ b/code/controllers/admin.dm @@ -3,9 +3,7 @@ name = "Initializing..." var/target -INITIALIZE_IMMEDIATE(/obj/effect/statclick) - -/obj/effect/statclick/Initialize(mapload, text, target) //Don't port this to Initialize it's too critical +/obj/effect/statclick/New(loc, text, target) //Don't port this to Initialize it's too critical . = ..() name = text src.target = target @@ -33,6 +31,14 @@ INITIALIZE_IMMEDIATE(/obj/effect/statclick) usr.client.debug_variables(target) message_admins("Admin [key_name_admin(usr)] is debugging the [target] [class].") +/obj/effect/statclick/misc_subsystems/Click() + if(!usr.client.holder) + return + var/subsystem = input(usr, "Debug which subsystem?", "Debug nonprocessing subsystem") as null|anything in (Master.subsystems - Master.statworthy_subsystems) + if(!subsystem) + return + usr.client.debug_variables(subsystem) + message_admins("Admin [key_name_admin(usr)] is debugging the [subsystem] subsystem.") // Debug verbs. /client/proc/restart_controller(controller in list("Master", "Failsafe")) diff --git a/code/controllers/master.dm b/code/controllers/master.dm index db828539af..cdbea1de85 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -28,6 +28,8 @@ GLOBAL_REAL(Master, /datum/controller/master) = new // List of subsystems to process(). var/list/subsystems + /// List of subsystems to include in the MC stat panel. + var/list/statworthy_subsystems // Vars for keeping track of tick drift. var/init_timeofday @@ -65,6 +67,9 @@ GLOBAL_REAL(Master, /datum/controller/master) = new //used by CHECK_TICK as well so that the procs subsystems call can obey that SS's tick limits var/static/current_ticklimit = TICK_LIMIT_RUNNING + /// Statclick for misc subsystems + var/obj/effect/statclick/misc_subsystems/misc_statclick + /datum/controller/master/New() if(!config) config = new @@ -87,6 +92,11 @@ GLOBAL_REAL(Master, /datum/controller/master) = new _subsystems += new I Master = src + // We want to see all subsystems during init. + statworthy_subsystems = subsystems.Copy() + + misc_statclick = new(null, "Debug") + if(!GLOB) new /datum/controller/global_vars @@ -257,10 +267,14 @@ GLOBAL_REAL(Master, /datum/controller/master) = new var/list/tickersubsystems = list() var/list/runlevel_sorted_subsystems = list(list()) //ensure we always have at least one runlevel var/timer = world.time + statworthy_subsystems = list() for (var/thing in subsystems) var/datum/controller/subsystem/SS = thing if (SS.flags & SS_NO_FIRE) + if(SS.flags & SS_ALWAYS_SHOW_STAT) + statworthy_subsystems += SS continue + statworthy_subsystems += SS SS.queued_time = 0 SS.queue_next = null SS.queue_prev = null @@ -603,7 +617,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new stat("Byond:", "(FPS:[world.fps]) (TickCount:[world.time/world.tick_lag]) (TickDrift:[round(Master.tickdrift,1)]([round((Master.tickdrift/(world.time/world.tick_lag))*100,0.1)]%)) (Internal Tick Usage: [round(MAPTICK_LAST_INTERNAL_TICK_USAGE,0.1)]%)") stat("Master Controller:", statclick.update("(TickRate:[Master.processing]) (Iteration:[Master.iteration]) (TickLimit: [round(Master.current_ticklimit, 0.1)])")) - + stat("Misc Subsystems", misc_statclick) /datum/controller/master/StartLoadingMap() //disallow more than one map to load at once, multithreading it will just cause race conditions diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index b5dc25e4dc..ce3b8bf3d2 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -593,7 +593,7 @@ GLOBAL_VAR_INIT(exploit_warn_spam_prevention, 0) stat("Failsafe Controller:", "ERROR") if(Master) stat(null) - for(var/datum/controller/subsystem/SS in Master.subsystems) + for(var/datum/controller/subsystem/SS in Master.statworthy_subsystems) SS.stat_entry() GLOB.cameranet.stat_entry() if(statpanel("Tickets")) From aaa31c24ce4c37e4ddf14b3c15da52a3ab6fbf38 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Fri, 8 May 2020 04:02:31 +0200 Subject: [PATCH 32/89] Demodularizing a few sprite assets. --- code/game/objects/items/handcuffs.dm | 5 ++--- code/game/objects/items/stunbaton.dm | 3 --- .../food_and_drinks/food/snacks_meat.dm | 3 --- .../food_and_drinks/food/snacks_other.dm | 2 -- .../food/snacks_sandwichtoast.dm | 1 - .../food_and_drinks/food/snacks_sushi.dm | 8 -------- code/modules/reagents/reagent_dispenser.dm | 1 - .../inhands/equipment/security_lefthand.dmi | Bin 1411 -> 1521 bytes .../inhands/equipment/security_righthand.dmi | Bin 1381 -> 1502 bytes icons/obj/food/burgerbread.dmi | Bin 35339 -> 35824 bytes icons/obj/food/food.dmi | Bin 73495 -> 77270 bytes icons/obj/items_and_weapons.dmi | Bin 129438 -> 133201 bytes icons/obj/objects.dmi | Bin 105827 -> 105092 bytes .../icons/mob/inhands/stunsword_left.dmi | Bin 570 -> 403 bytes .../icons/mob/inhands/stunsword_right.dmi | Bin 553 -> 400 bytes modular_citadel/icons/obj/food/food.dmi | Bin 5346 -> 0 bytes .../icons/obj/items_and_weapons.dmi | Bin 557 -> 0 bytes modular_citadel/icons/obj/objects.dmi | Bin 1025 -> 0 bytes modular_citadel/icons/obj/stunsword.dmi | Bin 1763 -> 0 bytes 19 files changed, 2 insertions(+), 21 deletions(-) delete mode 100644 modular_citadel/icons/obj/food/food.dmi delete mode 100644 modular_citadel/icons/obj/items_and_weapons.dmi delete mode 100644 modular_citadel/icons/obj/objects.dmi delete mode 100644 modular_citadel/icons/obj/stunsword.dmi diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 1e0a6ce6dc..8a4dfdf09f 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -118,7 +118,7 @@ righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi' custom_materials = list(/datum/material/iron=150, /datum/material/glass=75) breakouttime = 300 //Deciseconds = 30s - cuffsound = 'sound/weapons/cablecuff.ogg' + cuffsound = 'sound/weapons/cablecuff.ogg' /obj/item/restraints/handcuffs/cable/attack_self(mob/user) to_chat(user, "You start unwinding the cable restraints back into coil") @@ -130,7 +130,7 @@ user.put_in_hands(coil) coil.color = color to_chat(user, "You unwind the cable restraints back into coil") - + /obj/item/restraints/handcuffs/cable/red color = "#ff0000" @@ -225,7 +225,6 @@ /obj/item/restraints/handcuffs/fake/kinky name = "kinky handcuffs" desc = "Fake handcuffs meant for erotic roleplay." - icon = 'modular_citadel/icons/obj/items_and_weapons.dmi' icon_state = "handcuffgag" item_state = "kinkycuff" diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 0fc47f649a..08ec561ab6 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -232,11 +232,8 @@ /obj/item/melee/baton/stunsword name = "stunsword" desc = "not actually sharp, this sword is functionally identical to a stunbaton" - icon = 'modular_citadel/icons/obj/stunsword.dmi' icon_state = "stunsword" item_state = "sword" - lefthand_file = 'modular_citadel/icons/mob/inhands/stunsword_left.dmi' - righthand_file = 'modular_citadel/icons/mob/inhands/stunsword_right.dmi' /obj/item/melee/baton/stunsword/get_belt_overlay() if(istype(loc, /obj/item/storage/belt/sabre)) diff --git a/code/modules/food_and_drinks/food/snacks_meat.dm b/code/modules/food_and_drinks/food/snacks_meat.dm index c7c74fb560..a612bfaa54 100644 --- a/code/modules/food_and_drinks/food/snacks_meat.dm +++ b/code/modules/food_and_drinks/food/snacks_meat.dm @@ -57,7 +57,6 @@ /obj/item/reagent_containers/food/snacks/sushi_basic name = "funa hosomaki" desc = "A small cylindrical kudzu skin, filled with rice and fish." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_basic" bonus_reagents = list(/datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 4) @@ -69,7 +68,6 @@ /obj/item/reagent_containers/food/snacks/sushi_adv name = "funa nigiri" desc = "A peace of carp lightly placed on some rice." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_adv" bonus_reagents = list(/datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 6) @@ -81,7 +79,6 @@ /obj/item/reagent_containers/food/snacks/sushi_pro name = "funa nigiri" desc = "A well prepared peace of the best of the carp fillet placed on rice. Looks fancy and fresh!" - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_pro" bonus_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 2) diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm index 6feb2df524..2463ed3ced 100644 --- a/code/modules/food_and_drinks/food/snacks_other.dm +++ b/code/modules/food_and_drinks/food/snacks_other.dm @@ -215,7 +215,6 @@ /obj/item/reagent_containers/food/snacks/tobiko name = "tobiko" desc = "Spider eggs wrapped in a thin salted Kudzu pod" - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_egg" list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 2) filling_color = "#FF3333" // R225 G051 B051 @@ -558,7 +557,6 @@ /obj/item/reagent_containers/food/snacks/riceball name = "onigiri" desc = "A ball of rice with some light salt and a wrap of Kudzu skin." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "riceball" list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/sodiumchloride = 2) tastes = list("rice" = 3, "salt" = 1) diff --git a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm index 3cc4cfe63f..9096429228 100644 --- a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm +++ b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm @@ -136,7 +136,6 @@ /obj/item/reagent_containers/food/snacks/tuna_sandwich name = "tuna sandwich" desc = "Both a salad and a sandwich in one." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "tunasandwich" trash = /obj/item/trash/plate bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 3) diff --git a/code/modules/food_and_drinks/food/snacks_sushi.dm b/code/modules/food_and_drinks/food/snacks_sushi.dm index d16ca79001..3757759daf 100644 --- a/code/modules/food_and_drinks/food/snacks_sushi.dm +++ b/code/modules/food_and_drinks/food/snacks_sushi.dm @@ -3,7 +3,6 @@ /obj/item/reagent_containers/food/snacks/sushi_rice name = "Sushi Rice" desc = "A bowl of sticky rice for making sushi." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushi_rice" list_reagents = list(/datum/reagent/consumable/sodiumchloride = 5) tastes = list("rice" = 5, "salt" = 1) @@ -12,7 +11,6 @@ /obj/item/reagent_containers/food/snacks/sea_weed name = "Sea Weed Sheet" desc = "A thin, light salt sheet of plant mater. This is commenly used in sushi recipes," - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sea_weed" list_reagents = list(/datum/reagent/consumable/sodiumchloride = 2) tastes = list("plants" = 2, "salt" = 1) @@ -21,7 +19,6 @@ /obj/item/reagent_containers/food/snacks/tuna name = "Canned Tuna" desc = "A small can of tuna fish beloved by felines." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "tuna_can" //trash = /obj/item/trash/tuna_used //I dont know if I like this idea - A Masked Cat list_reagents = list(/datum/reagent/consumable/sodiumchloride = 5, /datum/reagent/mercury = 2) @@ -32,7 +29,6 @@ /obj/item/reagent_containers/food/snacks/sushie_basic name = "Funa Hosomaki" desc = "A small cylindrical filled with rice and fish." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_basic" bonus_reagents = list(/datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 1) @@ -44,7 +40,6 @@ /obj/item/reagent_containers/food/snacks/sushie_adv name = "Funa Nigiri" desc = "A pice of carp lightly placed on some rice." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_adv" bonus_reagents = list(/datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 2) @@ -56,7 +51,6 @@ /obj/item/reagent_containers/food/snacks/sushie_pro name = "Funa Nigiri" desc = "A well prepared pice of the best of the carp fillet placed on rice. Looks fancy and fresh!" - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_pro" bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 8, /datum/reagent/consumable/nutriment/vitamin = 1) @@ -68,7 +62,6 @@ /obj/item/reagent_containers/food/snacks/tobiko name = "Tobiko" desc = "Spider eggs wrapped in a thin salted Kudzu pod" - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_egg" list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/nutriment/vitamin = 2) filling_color = "#FF3333" // R225 G051 B051 @@ -78,7 +71,6 @@ /obj/item/reagent_containers/food/snacks/riceball name = "Onigiri" desc = "A ball of rice with some light salt and a wrap of Kudzu skin." - icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "riceball" list_reagents = list(/datum/reagent/consumable/nutriment = 5, /datum/reagent/consumable/sodiumchloride = 2) tastes = list("rice" = 4, "salt" = 1) diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 1e687816ff..54ec327fdb 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -211,7 +211,6 @@ /obj/structure/reagent_dispensers/keg name = "keg" desc = "A keg." - icon = 'modular_citadel/icons/obj/objects.dmi' icon_state = "keg" /obj/structure/reagent_dispensers/keg/mead diff --git a/icons/mob/inhands/equipment/security_lefthand.dmi b/icons/mob/inhands/equipment/security_lefthand.dmi index 01f8e2ca2723580b014b77ebd9046ffea70cdee6..d5b32d7c37f8803999488f21d2058476979e964a 100644 GIT binary patch delta 1462 zcmV;n1xfmY3-JpjiBL{Q4GJ0x0000DNk~Le000310002s2m=5B0NbBPVgLXDnUN(= ze+~`~FD@=>YHCzcQX3l^GBPqND=X5{(mFai_4Vh)#l<9&|5;R2Ha0dcE-pbmJtQI` zNJvP=DjxuV|D*^AZ4?wKDJlPeK(oKoKtMq9sE3~b0004WQchCV=-0C=2@(#;NnFbn|Te=~cE1@6Ybs}}Gtr+-zAgVnb?94ttg;z)sOO2_y*SFm1I6imcTs zOB(cHDP&3O#Q;mZ`;oOUT~sPz8u@73DAdrcay^=US|w{i)-1g7f4;Vs zLR1Ej8VREAg^m#7{Tw(q-_v<9MJ)_2KHq44^G{{GsPfMby#WSPsy7Ob-3$N#1U5-T zK~#90?b&T#+B_7;ai)N>xhc+}C{(;r}?Whaz&y|v0 z8=Jjyo$cP{hWh#bxk9p_^R**1ARpBh;GHWbyEeMLRy@W6>_bz?uL60000000000;Pd%m7>yKOv*$~b4eN5`-Z+qXs zwz>lEOka47p8q;cH>O{03rhWb&k@vmXJ+6f@UhQ#Cq?=MgD-)Pe109?K-%X600000 z03eZ_x&MZ)_W!QG{_b=PV3ae*AbJFR*RooA%++7uxlg_N(kjkYs4eP*Mwf)^H zt7igo()qdImvwb`PCDgEZI%0HH>Cq^otDZM%~j>>8Ai<_#VpgFSfo7aOE88P$!{sv z=~d)ZJpp^IU)Jz>%f7)BIm!QhJ~jChsIodJC>iNH)n5Vc%(UDkf61)+2><{900000 zR?%Sp-=Fpe6$2V+a4`GxK}ZMY16~C7F_B{V0UdDmAK1qf25$M!wd>0l0{*8o!oV&6 zU|=a;2na|?N4maDU$FQ7)185#VYF#9e=`gZ#o@y!9cVxshesoEd~_6}_)+aUFgzTI zMGi-!7-!%p&OutHfBXc<4Ty09hDUOGt%x0nv;RE1{wF}}z)I~uuTwYytF-^+iPA;@ z00000008)8veX5nb}V%uR#%$P-QyFt%IsLbe$gH+Imu*s2eRTWvJ*q$;t4Y3oEk>W zR597fcs!o%BJak@f=xN36J*Fa6^oQd_3Ldh*?4@G&HWgAf41aV?Vcb*&bjvloGYKd zV5Tp;ESuYZD?6J%4yxtF6J*Yj>euf6-I=;J&4JpMb)>ROQ{hx&U)_$@5iJ7Vi>l0_hWu z_17Q(00000m@}QmpZYq{ket%=LA@>Q%(sd9V=- z0C=2@(#;COFboIqbNdu!yNh2}FEWuGf7~lb*QIM**OoOZ^Xc96CP;V7AASjhBp1ii zxvWHSDft72h~9~V*ss={J+UD(h254j1K1k+hDefNDl=_mG~~U_IBRf-b0cSZkUh-x z=111jwMl8DYt&uqB(%^javi#ETqJ8r-X)cqR*9&t%k)jEuJ)c{Qbte~36k!Ge}NFv z^8$o0-7^ewOj_u}Ka-17ReZkV4O@|)XDOI>-T(jt*-1n}RCt{2*?&{pFbsg<4BA3A z7_?)B(9)K{_)Wk6$6MIlMiR@hlsKg1-sdmy*|HQn;SMDU00000K<$fi%(C7dr9*ql zG0S>Ol>L!2G}_m1ADla$xOwbNf5z$!{Bxzqu7kt0THz=?JW%f+nmhhF77ENqwHtWn zijiFhlQbz;I7-rqp}@f0@wf5B8Jy&!+6}yO#mKIsW1+y~BklI#xndTEE9#%CsxLo5 zDW?7egLC)9cToS8@z2#odAp)jF|TOv@{f!&7V{$m000000000O5TP?Se<(s{ZdlyT z+`zb7xf`Dgw3JUqQYiZC2X?wcB44-;EaO6>R(x>i5?e`UwI60001h9-a1`K*y%DVOKbv zP5VxvQ$w#W8G3y``c9x@f7Iuv_z&`#Vbm-_n6~}9GcgHy)EB`RyexQr?fQ4^Pw*`H zX$@W!tgr9>UHkn5+IN5CE23rT`|6+iUCKXC+OmXHHfA2qEG^wx{;IEqJ zG@Y5li?tZyl+$Zap;KRd6l*ueH(wQJ?xy#ao4!aP!2c*dwhH~TbrrhlUCb?qCD%1qY@(QzZmf6x!pm+lcDXiAw_<9wi!nLZxIr@{}ef3KqEzIhhZ)|clYoM4aj zHDG=ukwke+000000002&eksR9pP>7Ab1Mwq-sl!v`fz>uZ5XXm_2KReqh^XQ_lD6D zWgqTNOhO*juQ!BgTA;EI_uxIjhv3@aOkePlN2!+k$KX1BA5O|oTU~IbK9HHZ4<}zy zt-#Dk@3KhQe{_=GlSr?iB~XVx?Fj+^0000006Xg`Nh>31K4w|3j~tz%5BL0%R`SSy ze|c7K;h*b9j!x{&RnvGC3Vbyb=$-3Ej!x5sd)jWD0=HZJ9re$3BS)v`!sX9d7&M%q zf36rgE?t4{Q;v5;mZ(iuGp#82|vN{Q(Q$J$=$lkK6zN002ov JPDHLkV1i_9egXgh diff --git a/icons/mob/inhands/equipment/security_righthand.dmi b/icons/mob/inhands/equipment/security_righthand.dmi index d2126fe22f94abdb7ceebeb7b9061d5f7f89afc2..1c8c9b0dfb0f4f364b96a7dd8ffe64c69ce093bd 100644 GIT binary patch delta 1426 zcmV;D1#SA}3f>DPiBL{Q4GJ0x0000DNk~Le000310002s2m=5B0NbBPVgLXDnUN(- zW)2PxFD@Gtr+-zAgVnb?94ttg;z)sOO2_y*SFm1I6imcTsOB(cHDP&3O#Q;mZ`;oOU zT~sPz8u@73DAdrcay^=US|w{i)6G0Gw;T1?0 z6$BANNQeYPR0JyW{txE{ON)f*p6+q>ME>uR>BDqqcfGJE000000N7w}^2EwVo(6wy z*vbO50kMXb)`|YM?s{ybhI-s~f7k0HKZ5Bk z+VAiA2!&(+=Phr$e;0m%cKZVW00000pfQK}GuIE&TQuPC<56Pf(MMsh^@D%(7L7Pc zyq=i%@*uTEL(;D2n7;=bNJtV#3LYf2Xwav88Pb8jMWejebI#2Q$yU(@`p|Nng3Jg=|(3S?{1IQu6+j*Zmtv}nPm zKLG#$00000z~(p^rDTmxYHokfpwom4j!w11wdJHVXq5kg`ur~rd$9rY9Y^l@oekP> zI&xfZq|GlJx*D{>^P$qdf8uhY4aVmF_Q)1E{&84yW}Rz%CZA1GyLZ6!+_r)7`BXfc zD7)#p@pNi>2F7R8sT4O+cGG!d#}gm~PO9DX_8lnkpc-@*N)Qj?E1sKgFGs31dmKEEk*JC3!#N%oM{sn~R4Q!nQp3{%000000000`qq4YmL|<3&?lQ3kUmX_^V?9Nl zD~s~xn>qU1O&Q*RR%V%``u@Xwfgj&96j@Q-{MNC6TX_LunPq>H?x*8t+HY zT_*YwY@6?&!Gt4E0{{R3001`6VqyJbyox)m0~Wu63kd#Isq%LLz1x5^sc!@SqP>f2 zU7ia+tJ1R#+I6lJ@Me_vNGGLaqJD@fO+Yh2fsH7fJz-Sj3%cgr7s z34|mU$J4p2L~$wk1BQs+iG$d$)|@@DAv1;DmNNs`8v2Gvl3*$`ZDlm%z0EjlaENmw zXL^u5%=P9+*3z{}X{2k^UF#&Y&@OTvx^7$~Yf0WEm6}$GsIJTOO{%W;o?=o)e^3?) zlJ13p5YqDkgfQJR4023b=)*sgi&Is6zT*vBk)LNNn0MX)00X#5L_t(|obB1$Qrkcb zfMGX~7z*W(LU162P$-AtkoSMP+DvaqEUmO&li2*Invh;J)%eE3UZ{HBT%4m{oqIDC_6UgKUQy0%%N>dR$t%OJT{O+ zT~1M7<@vM7k7#^}6!rBzo|n8nw#i$TqJC&s^Vn^^K>z>%008i%PBwjjmYtlAH+_Vb zjp?xS#;2P;LF;~R`T(t?f5ZQp{3LvqAkv;APLt`tnfY{bq?#jCz;uUA=69{%V5oqh z!%ffcn$$OGGX3$qKJp_Pwau)_{LcOg%CUhQo)Ut--yi@00002rf;f3wUFhhDZhR^n ze08CtBRX*^wZ5Pau+Aqjyppp)Ia7A5$O`e~(K*il(utP`riPoR6=qeD^U!X(Jhd}$jh|R}+X||8! z<0^}~zYghpe*gdg00000003E5q=;3MOwIZ2k#@zUBluEkL|mv`SnTHZlyCRdlrk^+CAcexj(hTo0tZx4*d<*w;?V# z`fH;@Z-2@b@fGxZ`{m%s4m)Jl^Zoz;00000fDZZ7QtZ~af4et_-rv>#yZ`6qFZH)+ zWM~BWU@jm>+H zmJy__J3Tg#!&Ab?GJ^EHKJp`)tb|i|1ZjT-<=8+DPYJj12(sHZ2mk;80001NpFDeU zM8A~r?lhhPeWKXGTAt;vZ|3N?*Sx+%ElstlImZz0lk#Nmjt1Z52E{bhrUdLmxKHwI zxwJn*FUzIWpq!@Klz@FkwaRsa5oxqd4$%#IA5nLjG>@ob2)Dxfk#VO<^O0%5_uoXs hQj-5B008(_{sGatJur6;&u0Jt002ovPDHLkV1lB|bL#*A diff --git a/icons/obj/food/burgerbread.dmi b/icons/obj/food/burgerbread.dmi index 5ee3db49e930a1855e38715648606bee6753e48b..414930ac253952b0da12a2111be9b190176d918d 100644 GIT binary patch delta 17478 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 TO62QRw@UGL^XsQ#%7Yl)Le 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 TW{8yl00000NkvXXu0mjfe2bUg delta 17009 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

q_ZaWX_(saCrg1eTn1ghEsf~jFZbOLZYUG8< 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∈ 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