From 78c1b51f811523ce922ecfd9b6c01b412a2f1916 Mon Sep 17 00:00:00 2001 From: Atermonera Date: Tue, 21 Mar 2017 00:12:53 -0700 Subject: [PATCH 1/8] Languages with NO_STUTTER won't use autohiss anymore --- code/modules/mob/living/autohiss.dm | 2 ++ html/changelogs/Atermonera - Autohiss.yml | 24 +++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 html/changelogs/Atermonera - Autohiss.yml diff --git a/code/modules/mob/living/autohiss.dm b/code/modules/mob/living/autohiss.dm index ae756f6a5fc..3a3bddd9b3f 100644 --- a/code/modules/mob/living/autohiss.dm +++ b/code/modules/mob/living/autohiss.dm @@ -59,6 +59,8 @@ /datum/species/proc/handle_autohiss(message, datum/language/lang, mode) if(!autohiss_basic_map) return message + if(lang.flags & NO_STUTTER) // Currently prevents EAL, Sign language, and emotes from autohissing + return message if(autohiss_exempt && (lang.name in autohiss_exempt)) return message diff --git a/html/changelogs/Atermonera - Autohiss.yml b/html/changelogs/Atermonera - Autohiss.yml new file mode 100644 index 00000000000..1c5e0d37c20 --- /dev/null +++ b/html/changelogs/Atermonera - Autohiss.yml @@ -0,0 +1,24 @@ +################################ +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Atermonera + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +changes: + - bugfix: "EAL, Sign language, and emotes will no longer use autohiss" From 17bd2d341a5cccc95a8568cece900015d994a179 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Tue, 21 Mar 2017 09:44:02 -0400 Subject: [PATCH 2/8] Makes the 'Spawn Character' verb include custom items Only really works if you pick the option to put them in the mob, because the proc that spawns custom items is based on that, and I don't really want to rework the custom items system for such a small fix. --- code/modules/admin/verbs/randomverbs.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index d94535918fa..8497ffa9ebd 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -471,8 +471,10 @@ Traitors and the like can also be revived with the previous role mostly intact. antag_data.place_mob(new_character) //If desired, apply equipment. - if(equipment && charjob) - job_master.EquipRank(new_character, charjob, 1) + if(equipment) + if(charjob) + job_master.EquipRank(new_character, charjob, 1) + equip_custom_items(new_character) //If desired, add records. if(records) From e6098840ec1a0dc943e32a4e038db8ef8249c3d6 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Tue, 21 Mar 2017 13:07:00 -0400 Subject: [PATCH 3/8] Fix runtime while eating Don't divide by zero. If it has no flavors, this stays 0, then you try to divide by it. --- .../Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 3ec5f5c1f15..95f661d7a54 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -28,9 +28,10 @@ var/totalFlavor = 0 for(var/taste in data) totalFlavor += data[taste] - for(var/taste in data) - if(data[taste]/totalFlavor < 0.1) - data -= taste + if(totalFlavor) //Let's not divide by zero for things w/o taste + for(var/taste in data) + if(data[taste]/totalFlavor < 0.1) + data -= taste /datum/reagent/nutriment/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(!injectable) From b571ed9c6654558c51f4f19d6b074665f5d07eef Mon Sep 17 00:00:00 2001 From: Neerti Date: Mon, 6 Mar 2017 12:59:14 -0500 Subject: [PATCH 4/8] Continues work on the surface map --- code/game/machinery/doors/airlock.dm | 12 + code/game/objects/effects/zone_divider.dm | 20 + code/game/objects/structures/door_assembly.dm | 10 + code/game/turfs/simulated/floor_types.dm | 39 ++ code/game/turfs/simulated/outdoors/dirt.dm | 2 +- code/game/turfs/simulated/outdoors/grass.dm | 17 +- .../game/turfs/simulated/outdoors/outdoors.dm | 2 +- code/game/turfs/simulated/outdoors/snow.dm | 2 +- code/game/turfs/simulated/wall_types.dm | 8 +- code/game/turfs/simulated/water.dm | 44 +- code/modules/materials/material_recipes.dm | 2 + code/modules/materials/materials.dm | 8 +- code/modules/planet/sif.dm | 36 +- code/modules/planet/weather.dm | 15 +- icons/obj/doors/door_assembly.dmi | Bin 38997 -> 41812 bytes icons/obj/doors/shuttledoors.dmi | Bin 0 -> 12844 bytes icons/obj/doors/shuttledoors_vertical.dmi | Bin 0 -> 13704 bytes icons/turf/areas.dmi | Bin 36822 -> 36924 bytes icons/turf/outdoors.dmi | Bin 45022 -> 187661 bytes icons/turf/shuttle.dmi | Bin 53858 -> 54697 bytes icons/turf/voidcraft_walls.dmi | Bin 0 -> 4476 bytes icons/turf/wall_masks.dmi | Bin 59149 -> 61204 bytes maps/southern_cross/southern_cross-3.dmm | 463 ++++++++++++ maps/southern_cross/southern_cross-5.dmm | 660 ++++++++++++++++++ maps/southern_cross/southern_cross.dm | 2 + maps/southern_cross/southern_cross_areas.dm | 38 + polaris.dme | 1 + 27 files changed, 1351 insertions(+), 30 deletions(-) create mode 100644 code/game/objects/effects/zone_divider.dm create mode 100644 icons/obj/doors/shuttledoors.dmi create mode 100644 icons/obj/doors/shuttledoors_vertical.dmi create mode 100644 icons/turf/voidcraft_walls.dmi create mode 100644 maps/southern_cross/southern_cross-3.dmm create mode 100644 maps/southern_cross/southern_cross-5.dmm create mode 100644 maps/southern_cross/southern_cross_areas.dm diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index eabab210c43..4e25d8888c8 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -329,6 +329,18 @@ secured_wires = 1 assembly_type = /obj/structure/door_assembly/door_assembly_highsecurity +/obj/machinery/door/airlock/voidcraft + name = "voidcraft hatch" + desc = "It's an extra resilient airlock intended for spacefaring vessels." + icon = 'icons/obj/doors/shuttledoors.dmi' + explosion_resistance = 20 + assembly_type = /obj/structure/door_assembly/door_assembly_voidcraft + +// Airlock opens from top-bottom instead of left-right. +/obj/machinery/door/airlock/voidcraft/vertical + icon = 'icons/obj/doors/shuttledoors_vertical.dmi' + assembly_type = /obj/structure/door_assembly/door_assembly_voidcraft/vertical + /* About the new airlock wires panel: * An airlock wire dialog can be accessed by the normal way or by using wirecutters or a multitool on the door while the wire-panel is open. This would show the following wires, which you can either wirecut/mend or send a multitool pulse through. There are 9 wires. diff --git a/code/game/objects/effects/zone_divider.dm b/code/game/objects/effects/zone_divider.dm new file mode 100644 index 00000000000..5adabf318c3 --- /dev/null +++ b/code/game/objects/effects/zone_divider.dm @@ -0,0 +1,20 @@ +// This artificially splits a ZAS zone, useful if you wish to prevent massive super-zones which can cause lag. +/obj/effect/zone_divider + name = "zone divider" + icon = 'icons/mob/screen1.dmi' + icon_state = "x3" + invisibility = 101 //nope, can't see this + anchored = 1 + density = 0 + opacity = 0 + +/obj/effect/zone_divider/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) + // Special case to prevent us from being part of a zone during the first air master tick. + // We must merge ourselves into a zone on next tick. This will cause a bit of lag on + // startup, but it can't really be helped you know? + if(air_master && air_master.current_cycle == 0) + spawn(1) + air_master.mark_for_update(get_turf(src)) + return 0 + return !air_group // Anything except zones can pass + diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index 834eadc2a45..d038b592fa7 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -107,6 +107,16 @@ airlock_type = "/highsecurity" glass = -1 +/obj/structure/door_assembly/door_assembly_voidcraft + base_icon_state = "voidcraft" + base_name = "voidcraft hatch" + airlock_type = "/voidcraft" + glass = -1 + +/obj/structure/door_assembly/door_assembly_voidcraft/vertical + base_icon_state = "voidcraft_vertical" + airlock_type = "/voidcraft/vertical" + /obj/structure/door_assembly/multi_tile icon = 'icons/obj/doors/door_assembly2x1.dmi' dir = EAST diff --git a/code/game/turfs/simulated/floor_types.dm b/code/game/turfs/simulated/floor_types.dm index 0d3e43bbfa7..5da00154826 100644 --- a/code/game/turfs/simulated/floor_types.dm +++ b/code/game/turfs/simulated/floor_types.dm @@ -19,6 +19,34 @@ density = 1 blocks_air = 1 +/turf/simulated/shuttle/wall/voidcraft + name = "voidcraft wall" + icon = 'icons/turf/voidcraft_walls.dmi' + icon_state = "voidcraft_wall_alone" + var/stripe_color = null // If set, generates a colored stripe overlay. Accepts #XXXXXX as input. + +/turf/simulated/shuttle/wall/voidcraft/red + stripe_color = "#FF0000" + +/turf/simulated/shuttle/wall/voidcraft/blue + stripe_color = "#0000FF" + +/turf/simulated/shuttle/wall/voidcraft/green + stripe_color = "#00FF00" + +/turf/simulated/shuttle/wall/voidcraft/New() + ..() + update_icon() + +/turf/simulated/shuttle/wall/voidcraft/update_icon() + var/list/icon_states = icon_states(src.icon) + if(("[icon_state]_stripe" in icon_states) && stripe_color) + overlays.Cut() + var/image/I = image(icon = src.icon, dir = src.dir, icon_state = "[icon_state]_stripe") + if(stripe_color) + I.color = stripe_color + overlays.Add(I) + /turf/simulated/shuttle/floor name = "floor" icon_state = "floor" @@ -41,4 +69,15 @@ oxygen = 0 nitrogen = MOLES_N2STANDARD + MOLES_O2STANDARD +/turf/simulated/shuttle/floor/voidcraft + name = "voidcraft tiles" + icon_state = "voidcraft_floor" + +/turf/simulated/shuttle/floor/voidcraft/dark + name = "voidcraft tiles" + icon_state = "voidcraft_floor_dark" + +/turf/simulated/shuttle/floor/voidcraft/light + name = "voidcraft tiles" + icon_state = "voidcraft_floor_light" diff --git a/code/game/turfs/simulated/outdoors/dirt.dm b/code/game/turfs/simulated/outdoors/dirt.dm index 1d735d81be2..4d142050726 100644 --- a/code/game/turfs/simulated/outdoors/dirt.dm +++ b/code/game/turfs/simulated/outdoors/dirt.dm @@ -2,5 +2,5 @@ name = "dirt" desc = "Quite dirty!" icon_state = "dirt-dark" - edge_blending_priority = 1 + edge_blending_priority = 2 turf_layers = list(/turf/simulated/floor/outdoors/rocks) \ No newline at end of file diff --git a/code/game/turfs/simulated/outdoors/grass.dm b/code/game/turfs/simulated/outdoors/grass.dm index 98b7d3dfba4..6693c458746 100644 --- a/code/game/turfs/simulated/outdoors/grass.dm +++ b/code/game/turfs/simulated/outdoors/grass.dm @@ -6,7 +6,7 @@ var/list/grass_types = list( /turf/simulated/floor/outdoors/grass name = "grass" icon_state = "grass" - edge_blending_priority = 3 + edge_blending_priority = 4 turf_layers = list( /turf/simulated/floor/outdoors/rocks, /turf/simulated/floor/outdoors/dirt @@ -16,8 +16,14 @@ var/list/grass_types = list( /turf/simulated/floor/outdoors/grass/sif name = "growth" icon_state = "grass_sif" - edge_blending_priority = 3 + edge_blending_priority = 4 grass_chance = 0 + var/tree_chance = 2 + +/turf/simulated/floor/outdoors/grass/sif/New() + if(tree_chance && prob(tree_chance)) + new /obj/structure/flora/tree/sif(src) + ..() /turf/simulated/floor/outdoors/grass/New() if(prob(50)) @@ -33,10 +39,11 @@ var/list/grass_types = list( name = "thick grass" icon_state = "grass-dark" grass_chance = 80 - //tree_prob = 20 - edge_blending_priority = 4 + //tree_chance = 20 + edge_blending_priority = 5 /turf/simulated/floor/outdoors/grass/sif/forest name = "thick growth" icon_state = "grass_sif_dark" - edge_blending_priority = 4 \ No newline at end of file + edge_blending_priority = 5 + tree_chance = 10 \ No newline at end of file diff --git a/code/game/turfs/simulated/outdoors/outdoors.dm b/code/game/turfs/simulated/outdoors/outdoors.dm index 0ee844f3207..da694061571 100644 --- a/code/game/turfs/simulated/outdoors/outdoors.dm +++ b/code/game/turfs/simulated/outdoors/outdoors.dm @@ -55,7 +55,7 @@ var/list/outdoor_turfs = list() /turf/simulated/floor/outdoors/mud name = "grass" icon_state = "mud_dark" - edge_blending_priority = 2 + edge_blending_priority = 3 /turf/simulated/floor/outdoors/rocks name = "rocks" diff --git a/code/game/turfs/simulated/outdoors/snow.dm b/code/game/turfs/simulated/outdoors/snow.dm index 474bdb171c0..16678d7c988 100644 --- a/code/game/turfs/simulated/outdoors/snow.dm +++ b/code/game/turfs/simulated/outdoors/snow.dm @@ -1,7 +1,7 @@ /turf/simulated/floor/outdoors/snow name = "snow" icon_state = "snow" - edge_blending_priority = 5 + edge_blending_priority = 6 movement_cost = 2 turf_layers = list( /turf/simulated/floor/outdoors/rocks, diff --git a/code/game/turfs/simulated/wall_types.dm b/code/game/turfs/simulated/wall_types.dm index fe45a776921..25d6afb4156 100644 --- a/code/game/turfs/simulated/wall_types.dm +++ b/code/game/turfs/simulated/wall_types.dm @@ -45,4 +45,10 @@ ..(newloc,"titanium") /turf/simulated/wall/durasteel/New(var/newloc) - ..(newloc,"durasteel", "durasteel") \ No newline at end of file + ..(newloc,"durasteel", "durasteel") + +/turf/simulated/wall/wood/New(var/newloc) + ..(newloc,"wood") + +/turf/simulated/wall/sifwood/New(var/newloc) + ..(newloc,"alien wood") \ No newline at end of file diff --git a/code/game/turfs/simulated/water.dm b/code/game/turfs/simulated/water.dm index cad62cc8de2..77eb419ed13 100644 --- a/code/game/turfs/simulated/water.dm +++ b/code/game/turfs/simulated/water.dm @@ -3,12 +3,12 @@ name = "shallow water" desc = "A body of water. It seems shallow enough to walk through, if needed." icon = 'icons/turf/outdoors.dmi' - icon_state = "water_shallow" + icon_state = "seashallow" // So it shows up in the map editor as water. + var/water_state = "water_shallow" var/under_state = "rock" edge_blending_priority = -1 movement_cost = 4 outdoors = TRUE - var/movement_message = "You are slowed considerably from the water as you move across it." // Displayed to mobs crossing from one water tile to another. var/depth = 1 // Higher numbers indicates deeper water. /turf/simulated/floor/water/New() @@ -17,6 +17,7 @@ /turf/simulated/floor/water/update_icon() ..() // To get the edges. This also gets rid of other overlays so it needs to go first. + icon_state = water_state var/image/floorbed_sprite = image(icon = 'icons/turf/outdoors.dmi', icon_state = under_state) underlays.Add(floorbed_sprite) update_icon_edge() @@ -43,8 +44,6 @@ L.update_water() if(!istype(oldloc, /turf/simulated/floor/water)) to_chat(L, "You get drenched in water from entering \the [src]!") - else - to_chat(L, "[movement_message]") AM.water_act(5) ..() @@ -63,7 +62,6 @@ under_state = "abyss" edge_blending_priority = -2 movement_cost = 8 - movement_message = "You swim forwards." depth = 2 /turf/simulated/floor/water/pool @@ -72,6 +70,11 @@ under_state = "pool" outdoors = FALSE +/turf/simulated/floor/water/deep/pool + name = "deep pool" + desc = "Don't worry, it's not closed." + outdoors = FALSE + /mob/living/proc/can_breathe_water() return FALSE @@ -93,4 +96,33 @@ /mob/living/water_act(amount) adjust_fire_stacks(amount * 5) for(var/atom/movable/AM in contents) - AM.water_act(amount) \ No newline at end of file + AM.water_act(amount) + +var/list/shoreline_icon_cache = list() + +/turf/simulated/floor/water/shoreline + name = "shoreline" + desc = "The waves look calm and inviting." + icon_state = "shoreline" + water_state = "rock" // Water gets generated as an overlay in update_icon() + depth = 0 + +/turf/simulated/floor/water/shoreline/corner + icon_state = "shorelinecorner" + +// Water sprites are really annoying, so let BYOND sort it out. +/turf/simulated/floor/water/shoreline/update_icon() + underlays.Cut() + overlays.Cut() + ..() // Get the underlay first. + var/cache_string = "[initial(icon_state)]_[water_state]_[dir]" + if(cache_string in shoreline_icon_cache) // Check to see if an icon already exists. + overlays += shoreline_icon_cache[cache_string] + else // If not, make one, but only once. + var/icon/shoreline_water = icon(src.icon, "shoreline_water", src.dir) + var/icon/shoreline_subtract = icon(src.icon, "[initial(icon_state)]_subtract", src.dir) + shoreline_water.Blend(shoreline_subtract,ICON_SUBTRACT) + + shoreline_icon_cache[cache_string] = shoreline_water + overlays += shoreline_icon_cache[cache_string] + diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index 3adb5c6458a..4bc6c814eec 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -71,6 +71,8 @@ new/datum/stack_recipe("airtight hatch assembly", /obj/structure/door_assembly/door_assembly_hatch, 4, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("maintenance hatch assembly", /obj/structure/door_assembly/door_assembly_mhatch, 4, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("high security airlock assembly", /obj/structure/door_assembly/door_assembly_highsecurity, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("voidcraft airlock assembly horizontal", /obj/structure/door_assembly/door_assembly_voidcraft, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("voidcraft airlock assembly vertical", /obj/structure/door_assembly/door_assembly_voidcraft/vertical, 4, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("emergency shutter", /obj/structure/firedoor_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("multi-tile airlock assembly", /obj/structure/door_assembly/multi_tile, 4, time = 50, one_per_turf = 1, on_floor = 1), \ )) diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index fb3af280150..6475ae694a9 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -591,7 +591,7 @@ var/list/name_to_material stack_type = /obj/item/stack/material/wood icon_colour = "#824B28" integrity = 50 - icon_base = "solid" + icon_base = "wood" explosion_resistance = 2 shard_type = SHARD_SPLINTER shard_can_repair = 0 // you can't weld splinters back into planks @@ -612,6 +612,12 @@ var/list/name_to_material stack_type = null shard_type = SHARD_NONE +/material/wood/sif + name = "alien wood" +// stack_type = /obj/item/stack/material/wood/sif + icon_colour = "#0099cc" // Cyan-ish + stack_origin_tech = list(TECH_MATERIAL = 2, TECH_BIO = 2) // Alien wood would presumably be more interesting to the analyzer. + /material/cardboard name = "cardboard" stack_type = /obj/item/stack/material/cardboard diff --git a/code/modules/planet/sif.dm b/code/modules/planet/sif.dm index edc169d50e8..7b95d387bf5 100644 --- a/code/modules/planet/sif.dm +++ b/code/modules/planet/sif.dm @@ -72,25 +72,35 @@ var/datum/planet/sif/planet_sif = null var/new_brightness = (Interpolate(low_brightness, high_brightness, weight = lerp_weight) ) * weather_light_modifier - var/list/low_color_list = hex2rgb(low_color) - var/low_r = low_color_list[1] - var/low_g = low_color_list[2] - var/low_b = low_color_list[3] + var/new_color = null + if(weather_holder && weather_holder.current_weather && weather_holder.current_weather.light_color) + new_color = weather_holder.current_weather.light_color + else + var/list/low_color_list = hex2rgb(low_color) + var/low_r = low_color_list[1] + var/low_g = low_color_list[2] + var/low_b = low_color_list[3] - var/list/high_color_list = hex2rgb(high_color) - var/high_r = high_color_list[1] - var/high_g = high_color_list[2] - var/high_b = high_color_list[3] + var/list/high_color_list = hex2rgb(high_color) + var/high_r = high_color_list[1] + var/high_g = high_color_list[2] + var/high_b = high_color_list[3] - var/new_r = Interpolate(low_r, high_r, weight = lerp_weight) - var/new_g = Interpolate(low_g, high_g, weight = lerp_weight) - var/new_b = Interpolate(low_b, high_b, weight = lerp_weight) + var/new_r = Interpolate(low_r, high_r, weight = lerp_weight) + var/new_g = Interpolate(low_g, high_g, weight = lerp_weight) + var/new_b = Interpolate(low_b, high_b, weight = lerp_weight) - var/new_color = rgb(new_r, new_g, new_b) + new_color = rgb(new_r, new_g, new_b) + spawn(1) + update_sun_deferred(2, new_brightness, new_color) + +/datum/planet/proc/update_sun_deferred(var/new_range, var/new_brightness, var/new_color) + set background = 1 + set waitfor = 0 var/i = 0 for(var/turf/simulated/floor/T in outdoor_turfs) - T.set_light(2, new_brightness, new_color) + T.set_light(new_range, new_brightness, new_color) i++ if(i % 30 == 0) sleep(1) diff --git a/code/modules/planet/weather.dm b/code/modules/planet/weather.dm index d4d13d7a409..14318a1d7f0 100644 --- a/code/modules/planet/weather.dm +++ b/code/modules/planet/weather.dm @@ -8,6 +8,7 @@ #define WEATHER_HAIL "hail" #define WEATHER_WINDY "windy" #define WEATHER_HOT "hot" +#define WEATHER_BLOOD_MOON "blood moon" // For admin fun or cult later on. /datum/weather_holder var/datum/planet/our_planet = null @@ -53,6 +54,8 @@ current_weather.process_effects() /datum/weather_holder/proc/update_icon_effects() + set background = 1 + set waitfor = 0 if(current_weather) for(var/turf/simulated/floor/T in outdoor_turfs) if(T.z in our_planet.expected_z_levels) @@ -86,7 +89,8 @@ WEATHER_BLIZZARD = new /datum/weather/sif/blizzard(), WEATHER_RAIN = new /datum/weather/sif/rain(), WEATHER_STORM = new /datum/weather/sif/storm(), - WEATHER_HAIL = new /datum/weather/sif/hail() + WEATHER_HAIL = new /datum/weather/sif/hail(), + WEATHER_BLOOD_MOON = new /datum/weather/sif/blood_moon() ) planetary_wall_type = /turf/unsimulated/wall/planetary/sif roundstart_weather_chances = list( @@ -107,6 +111,7 @@ var/temp_high = T20C var/temp_low = T0C var/light_modifier = 1.0 // Lower numbers means more darkness. + var/light_color = null // If set, changes how the day/night light looks. var/transition_chances = list() // Assoc list var/datum/weather_holder/holder = null @@ -266,3 +271,11 @@ L.apply_damage(rand(5, 10), BRUTE, target_zone, amount_blocked, used_weapon = "hail") to_chat(L, "The hail raining down on you [L.can_feel_pain() ? "hurts" : "damages you"]!") + +/datum/weather/sif/blood_moon + name = "blood moon" + light_modifier = 0.5 + light_color = "#FF0000" + transition_chances = list( + WEATHER_BLOODMOON = 100 + ) diff --git a/icons/obj/doors/door_assembly.dmi b/icons/obj/doors/door_assembly.dmi index 3721d37a581933a2743b7ea12a57bf16450b460f..6c91045161cd813b67669fb36bf92b7780663684 100644 GIT binary patch delta 21940 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 delta 19103 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 K&t;ucLK6UkvJ$xf diff --git a/icons/obj/doors/shuttledoors.dmi b/icons/obj/doors/shuttledoors.dmi new file mode 100644 index 0000000000000000000000000000000000000000..85c1d0534319c7ea143c473c9db6cb5f9223d741 GIT binary patch literal 12844 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 Wt}gp00{;a9Qjk%SE|E0+^#1^O`oio0 literal 0 HcmV?d00001 diff --git a/icons/obj/doors/shuttledoors_vertical.dmi b/icons/obj/doors/shuttledoors_vertical.dmi new file mode 100644 index 0000000000000000000000000000000000000000..c4eb67826d60a7c2ec2920312eb11d3280663352 GIT binary patch literal 13704 zcmc(`XH-*R)FygDq)AtlP6DVPAYF=-&_PfEm7;)vbfkmykWiE^AR;1473m#BL3;1K zSLwaiK*F5p_kA;W?#!&a=FeS=kao^n_q+G=JbNcZ^N|Y0WyZ?@08rdlReTHp5IFup zLIeN+Z9qO6e8b`ORL@n>+{M({+R@e8!5#oSzT|zVvuO|@f7^5PB>2dt`Afv&hYnQ+ ziP8e!k%sitO=?*mt?ZbAv7Rr4}Z;g^rY-9Q!(^VqGna30;1sJ(R=IriPVo6M& z6Z$giR2zS(%DzCeL-lK;4!}*M?4QlxKBnGU8 z7`V9tX&=+7J6eP+U3+eMd!g@Rlzjd`W>sD#*|r5vB--K5Ytt=7k&69_z198aw`Jz^ zJwL_5E_7iQi!Hr2ce7*`e;AmPJj2y8OGji)wY$E5(QSZ!SQ?#a6hA|n*G>QRE|yxs z`v#LjzFwN}?E@o<7u4b@+kLM?B5vn%y@}F=HRUpo8yQ_(cMD=%LpIDnR4kNM16=ca z000i$SCo6|@n!R?mMzmr{Px8Mdi_|gjw?YQDNL{3E>7b^TAm);PD#`u{^pQ z=f_2QIecl;OBmtzZE~4wUo;Jsw34l#_bsXk9f6w_o46+1YlxXrvVE4Eywls6TE~Z zNFEM2?k(Im6Dp6G@xB?qp}^i35+BdN6-uD}Rk-^QZ1L-ALJ#VDQkTWf`98m~^B%>) zvA5*)>!bXFGGX@Jg&l*(cOc->R(H?H?0 z`uYUTggO9c&TsJ^Qd$QW=jXqjoS&k*r}e%nc9OK_qPSy)Tp8F8uPL=9>HTv4Hjw@{ zDx*IvvLK8_M|t#eI?77E(rNQNsNBA4&Ejl&Yl|)xoY_O~v)==5iw7CsryE^*kYpi> z89C0MS2s39$kF;({DOb}&ak}M-+u*jb{5r@&(7-Lo}K_cgUh@*q26ry`TI2nMoDaP zK@AsAA&YMkI=-_wZMwPHYoR?h2S9@@IIa(Og_b!?RWOWImXm_Z_imys7jYqjN`CF@ zU2_;uWJHO(G*MZ8J2jh3$vm?eYLdC;?*wu5s(6Na_3Fv?))wSKA8>r-Gx|gALbK1( zvms}DYJ%3OfBF6`;@$CA2>;X@$=31jb;VdY_bod0SYC0??YikIw}zz@v#+f4w_l`X zlhL!VG<0?@rbe9KgN#*QQxcQ`_eA(uoa<$g4z@F1SSc|m9FtHz03o>x18gO7Tg!6E0DH~}o3kV1VKgoDxYHgim27Bb{<~G-# zuC5$6o`(ZX)OW7YsY9qzkk@Tup|bW~CF#$s8r4s}rRU%03}&bNH!#Fmut4HDH$-Zs ztiAZ_HCH850byZbdKfGyyIVWA%W<#wtLhEPr+Ifib49JgxI_KTiun;lkJm&oP6Ur0 z8p?9V%8ORoY@lq`vk%0DVBwJ<7x2 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 SIq(-&zQamCxg^T8Q5T=W00BsjR*liYTD8 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 IVRo!0wNtG@F)hQS1HmW5krXtLX##< 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�-5{Tr4g(#(8Czbfrb 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

?DI8oHobWWE+_Pgci?R$2UMNVou0mv} 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 literal 45022 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 delta 26981 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 Y*2H9uVZ6w07zX|z@9C*Z=?k diff --git a/icons/turf/voidcraft_walls.dmi b/icons/turf/voidcraft_walls.dmi new file mode 100644 index 0000000000000000000000000000000000000000..26f6eef2810cbb9e381dad2866f3f17ad2d1b534 GIT binary patch literal 4476 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

l!A%v9y25A0mk(c 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

l-Bpd! zfopDau7jZurz`G|smZ3i{&vnd5~-KKj6haU$m~VVEW7*V16Py#r|kwus~X1cc+e-n z#=P_*m{+>*6`zJ<-Nm-Y4MUxeo{Sud7HElXE9(}JKlW(899b&~Q2`u>#trretCSbz zx^y%-c>J7#t3%rMBhJ#{Wh*m$N$jF?q=u7;lX*;m^NHn>;UViLJK!L=(bQ1?_0o3} zZ@yYZMm(5#s*JfrhVC7p<~MHUT^LY?|0YIHZiPUlDOpOEZSom%9{eP7 zpX5|0`z_J-sF{^|huS4DCg`ExK5Q0p^$0%c(MfggO1fz^?Nvicm{KGh_%o$cG#;V? zsM~3&hV;vWoh`m$gZMEMrJ~L3_n6jMi`pYgPUae8LUX|dZZn>QbtcPIZ1AuB{~jSs zHpZ)_TVGT%K_?|S>$qQe@)|?)|HAC551oCKy}Q3__k_dxQ?T`DEcLSkX|~GouN7ug zZs5WRrH{Ob?>iZ(O?)_9iXYv3T5)V0u0N`AY7gWD$6l6mswW&0+&mJU5j50vGUsmT zS|A21-;OyA=mirRJ4GFVqn`Y9_*{qozBMlj#j+()^3?Y2e2HUi5CP>EBLn%lo$};} z_GM14SH>bJk&2iHy4EEH)knAw`$KoZXj}_t5pzH3p~1{>uX%k8-ZfOEcSfAOH+Pl|n=JQ|&Qg(VCz! zfb>s5)>IiMdj5s*rGnH{+7xM9c%%Yrx+*}?z{!tO-DZk_G;VAA#;l#Ur=Kd1y!qk5 zoLpqTyp+>O8P&tRBI#gL0-%BTdSwkcV?At*2znMo?oMaG%}wo!R-3}yj%mt=wLR+e zRQHp@Z9v4?S8)PaRqd#c8%32f+=<9=eg#Ne6Ab4hHb6Ua(5qx7W-}4XRMG`()%$Zg zKvhjv(JKAq@cHdaZX#J=EG8!WNOWS|qG0@jQPE&(Wm!}cB{B^x@OY&^^RS}c#uUO=@L6DD2zHoLeETXZ1lcQA2*KGchjnSfz^^eZd!g7B=o3m64EvF@O{FxZO z{ZM7^t4a#7jhwDE8k^CPwU$tJyY@e0{dkCVSs|nRCUa-FFeo7Reawdq{dKzxVn%wx zvPyjtkvTQynmw)D=RjTH^!O=$HW=~SKYVJ%iN=YwCruX@D}OmFE0qqE0(+3l@E-(@ z&@i8HWD5HH1d^I4Z-5|6`YfHTm(2Qq8O=-Dkzc*9{4l_t=e&?EZBL2kOz2aD*aCXX z=?5tpYIkV9Ve%_4;P&-`lJvvbbhE*X6|o18;~U%1OaQ{$IKuNe7D55;Kxt@oXz%_C znfJ8>DzOBFx`Qw??!~n-|3{2M#XKpOP{1_l7mGtNT=O!iX7VY85wpz8FYgb2>dKF2 z&TFP?yX5Wr4Q0f2d{8=IBv?<`0+@l|XJ=wB0fz?LLNMS(RP9*21%twp_qLIr3LY_g zrH=Y|?9iJ`A4XWZRfl4q(JEhv7F#ie$9SqLlo0=y5rBgpsjf~n6V zI=_d1xME;-L;SA+3VfTXCut-m@L^=ZjLU-oU}PbEag{mn;UmF)C8L(dPN8L8Vv|{x zjniLH_`I@h9m)&b#6Lk$(A$2z3E*ouPd_;bBIDGOOmwv!Ry4 z)-UYhvzdwV}d>K2uthfFaJ<9f@fQzjIGi|8P6-!Q^!YU*}4KpNoDN5dpNozS8KB0AH zrh<7(G`+x>m_gC3bWV4l4F%!bwR&Tqxjx5jFjVydzDd^TAj!UUQ+HWUHfe`Nc0lz_ z$?ry3GOGk;7E=`Uc@jN=SzV>?;zk;uF`e^p&j*WZVg1Sjd z^A|P7E+0Kbjltv4UZvEiq#N~y)M(+qm)}NyWFOAuitjcKEc;3e3?9g*IUWxQb0!!LPlN=X#UQb^JJIcA_D*`#(47Mh(;^oJ<|A zUcm}M;lH_T&>VW?tAT}B@qb^|h*{by%(OcEU@-E7)b~O-;dWiLKT1>O1wKLfoQM0L z%f;1Gxc3+`%wFQ-MRiNVTOG&07^oihB;iU6lOndqYO@k_^{o{d2yZ)|col*A_r*;d zM~=+p+fh}OWm;XUk+pYyf@>~PJ@?@L>OVtQK3wF2gn-pdI=_`eI?vg3_)0F4DM(|* z`r|2xCi%3*{<+*-J>|7c^U{x4F4eimch&rVW-p3kHvki>ZAkLpYq`n2 z$*#o+=tu-ra}H>j2=DeS&$(q0)onZM{PSLMH?{~(<>y%mRoi%tsMnu==ND{~(dlavdLr|k6$B?dw{&fbp66L8n*$9P1aTFFP@iMBLx z-HmG(1wL&{&>Wk%!ylCX>D&!^s?3kt7G`()hrvv|>b7&#UE;0vKX=O$$Q;9E#Oj`*H`&-L+tXy&zQ|l zbZB1F9=pQL{gO>Y`mhESapMMTFm=m{^gkIBrkw>mi{@Y_p3=1?q z^sxn*R=Zjhm%MJb;-3=tDGoKpRIx2P%&Nk_KC!c8-A`0oT|r`!jtjW^?^t8~QLyz9jzo*%)Dx~S9IZTS?FO&HYT?e3 zT*he+mjJxb@#EuvlLQ(~cXSZLYfxSejmKwO~)Zi9Z{67gbRY92R z%ADD3sB!9+>(`}YsJj_-DdL6HQ7Qc+gBl6T3( G_x}LZ$5 Date: Tue, 21 Mar 2017 19:38:47 -0400 Subject: [PATCH 5/8] Adds engineering + science crates (#3072) * Adds engineering + scicrates. * Enables the science crate * Updates engineering crate icons. * Inflatables don't need security. * fixes RCD crates --- code/datums/supplypacks/atmospherics.dm | 2 +- code/datums/supplypacks/engineering.dm | 27 +++++++------ code/datums/supplypacks/robotics.dm | 20 +++++----- .../structures/crates_lockers/crates.dm | 37 ++++++++++++++++-- icons/obj/storage.dmi | Bin 72674 -> 74416 bytes 5 files changed, 59 insertions(+), 27 deletions(-) diff --git a/code/datums/supplypacks/atmospherics.dm b/code/datums/supplypacks/atmospherics.dm index 4d097c43702..ee53af377c9 100644 --- a/code/datums/supplypacks/atmospherics.dm +++ b/code/datums/supplypacks/atmospherics.dm @@ -11,7 +11,7 @@ name = "Inflatable barriers" contains = list(/obj/item/weapon/storage/briefcase/inflatable = 3) cost = 20 - containertype = /obj/structure/closet/crate + containertype = /obj/structure/closet/crate/engineering containername = "Inflatable Barrier Crate" /datum/supply_packs/atmos/canister_empty diff --git a/code/datums/supplypacks/engineering.dm b/code/datums/supplypacks/engineering.dm index e42b1d17940..3ab678e175c 100644 --- a/code/datums/supplypacks/engineering.dm +++ b/code/datums/supplypacks/engineering.dm @@ -18,7 +18,7 @@ name = "Superconducting Magnetic Coil" contains = list(/obj/item/weapon/smes_coil) cost = 75 - containertype = /obj/structure/closet/crate + containertype = /obj/structure/closet/crate/engineering containername = "Superconducting Magnetic Coil crate" /datum/supply_packs/eng/electrical @@ -30,7 +30,7 @@ /obj/item/weapon/cell/high = 2 ) cost = 10 - containertype = /obj/structure/closet/crate + containertype = /obj/structure/closet/crate/engineering/electrical containername = "Electrical maintenance crate" /datum/supply_packs/eng/mechanical @@ -42,7 +42,7 @@ /obj/item/clothing/head/hardhat ) cost = 10 - containertype = /obj/structure/closet/crate + containertype = /obj/structure/closet/crate/engineering containername = "Mechanical maintenance crate" /datum/supply_packs/eng/fueltank @@ -61,34 +61,35 @@ /obj/item/weapon/paper/solar ) cost = 20 - containertype = /obj/structure/closet/crate + containertype = /obj/structure/closet/crate/engineering containername = "Solar pack crate" /datum/supply_packs/eng/engine name = "Emitter crate" contains = list(/obj/machinery/power/emitter = 2) cost = 10 - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering containername = "Emitter crate" access = access_ce /datum/supply_packs/eng/engine/field_gen name = "Field Generator crate" contains = list(/obj/machinery/field_generator = 2) - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering containername = "Field Generator crate" access = access_ce /datum/supply_packs/eng/engine/sing_gen name = "Singularity Generator crate" contains = list(/obj/machinery/the_singularitygen) - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering containername = "Singularity Generator crate" access = access_ce /datum/supply_packs/eng/engine/collector name = "Collector crate" contains = list(/obj/machinery/power/rad_collector = 3) + containertype = /obj/structure/closet/crate/secure/engineering containername = "Collector crate" /datum/supply_packs/eng/engine/PA @@ -103,7 +104,7 @@ /obj/structure/particle_accelerator/power_box, /obj/structure/particle_accelerator/end_cap ) - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering containername = "Particle Accelerator crate" access = access_ce @@ -111,7 +112,7 @@ contains = list(/obj/item/weapon/circuitboard/shield_gen) name = "Bubble shield generator circuitry" cost = 30 - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering containername = "bubble shield generator circuitry crate" access = access_ce @@ -119,7 +120,7 @@ contains = list(/obj/item/weapon/circuitboard/shield_gen_ex) name = "Hull shield generator circuitry" cost = 30 - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering containername = "hull shield generator circuitry crate" access = access_ce @@ -127,7 +128,7 @@ contains = list(/obj/item/weapon/circuitboard/shield_cap) name = "Bubble shield capacitor circuitry" cost = 30 - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering containername = "shield capacitor circuitry crate" access = access_ce @@ -169,7 +170,7 @@ name = "P.A.C.M.A.N. portable generator parts" cost = 25 containername = "P.A.C.M.A.N. Portable Generator Construction Kit" - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering access = access_tech_storage contains = list( /obj/item/weapon/stock_parts/micro_laser, @@ -182,7 +183,7 @@ name = "Super P.A.C.M.A.N. portable generator parts" cost = 35 containername = "Super P.A.C.M.A.N. portable generator construction kit" - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/engineering access = access_tech_storage contains = list( /obj/item/weapon/stock_parts/micro_laser, diff --git a/code/datums/supplypacks/robotics.dm b/code/datums/supplypacks/robotics.dm index 90d05fbbdcf..c6c07b2d5d4 100644 --- a/code/datums/supplypacks/robotics.dm +++ b/code/datums/supplypacks/robotics.dm @@ -20,7 +20,7 @@ /obj/item/weapon/cell/high = 2 ) cost = 10 - containertype = /obj/structure/closet/crate/secure/gear + containertype = /obj/structure/closet/crate/secure/science containername = "Robotics assembly" access = access_robotics @@ -56,7 +56,7 @@ name = "Morpheus robolimb blueprints" contains = list(/obj/item/weapon/disk/limb/morpheus) cost = 20 - containertype = /obj/structure/closet/crate/secure/gear + containertype = /obj/structure/closet/crate/secure/science containername = "Robolimb blueprints (Morpheus)" access = access_robotics @@ -64,7 +64,7 @@ name = "Xion robolimb blueprints" contains = list(/obj/item/weapon/disk/limb/xion) cost = 20 - containertype = /obj/structure/closet/crate/secure/gear + containertype = /obj/structure/closet/crate/secure/science containername = "Robolimb blueprints (Xion)" access = access_robotics @@ -79,7 +79,7 @@ name = "Ward-Takahashi robolimb blueprints" contains = list(/obj/item/weapon/disk/limb/wardtakahashi) cost = 35 - containertype = /obj/structure/closet/crate/secure/gear + containertype = /obj/structure/closet/crate/secure/science containername = "Robolimb blueprints (Ward-Takahashi)" access = access_robotics @@ -87,7 +87,7 @@ name = "Zeng Hu robolimb blueprints" contains = list(/obj/item/weapon/disk/limb/zenghu) cost = 35 - containertype = /obj/structure/closet/crate/secure/gear + containertype = /obj/structure/closet/crate/secure/science containername = "Robolimb blueprints (Zeng Hu)" access = access_robotics @@ -95,7 +95,7 @@ name = "Bishop robolimb blueprints" contains = list(/obj/item/weapon/disk/limb/bishop) cost = 70 - containertype = /obj/structure/closet/crate/secure/gear + containertype = /obj/structure/closet/crate/secure/science containername = "Robolimb blueprints (Bishop)" access = access_robotics @@ -103,7 +103,7 @@ name = "Vey-Med robolimb blueprints" contains = list(/obj/item/weapon/disk/limb/veymed) cost = 70 - containertype = /obj/structure/closet/crate/secure/gear + containertype = /obj/structure/closet/crate/secure/science containername = "Robolimb blueprints (Vey-Med)" access = access_robotics @@ -115,7 +115,7 @@ /obj/item/weapon/circuitboard/mecha/ripley/peripherals ) cost = 25 - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/science containername = "APLU \"Ripley\" Circuit Crate" access = access_robotics @@ -126,7 +126,7 @@ /obj/item/weapon/circuitboard/mecha/odysseus/main ) cost = 25 - containertype = /obj/structure/closet/crate/secure + containertype = /obj/structure/closet/crate/secure/science containername = "\"Odysseus\" Circuit Crate" access = access_robotics @@ -140,7 +140,7 @@ ) name = "Random APLU modkit" cost = 200 - containertype = /obj/structure/closet/crate + containertype = /obj/structure/closet/crate/science containername = "heavy crate" /datum/supply_packs/randomised/robotics/exosuit_mod/durand diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 62a3c64e48e..add1bd2c2ae 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -283,9 +283,9 @@ /obj/structure/closet/crate/rcd name = "\improper RCD crate" desc = "A crate with rapid construction device." - icon_state = "crate" - icon_opened = "crateopen" - icon_closed = "crate" + icon_state = "engi_crate" + icon_opened = "engi_crateopen" + icon_closed = "engi_crate" /obj/structure/closet/crate/rcd/New() ..() @@ -427,6 +427,20 @@ icon_opened = "hydrosecurecrateopen" icon_closed = "hydrosecurecrate" +/obj/structure/closet/crate/secure/engineering + desc = "A crate with a lock on it, painted in the scheme of the station's engineers." + name = "secure engineering crate" + icon_state = "engi_secure_crate" + icon_opened = "engi_secure_crateopen" + icon_closed = "engi_secure_crate" + +/obj/structure/closet/crate/secure/science + name = "secure science crate" + desc = "A crate with a lock on it, painted in the scheme of the station's scientists." + icon_state = "scisecurecrate" + icon_opened = "scisecurecrateopen" + icon_closed = "scisecurecrate" + /obj/structure/closet/crate/secure/bin name = "secure bin" desc = "A secure bin." @@ -499,6 +513,23 @@ icon_opened = "largermetalopen" icon_closed = "largermetal" +/obj/structure/closet/crate/engineering + name = "engineering crate" + icon_state = "engi_crate" + icon_opened = "engi_crateopen" + icon_closed = "engi_crate" + +/obj/structure/closet/crate/engineering/electrical + icon_state = "engi_e_crate" + icon_opened = "engi_crateopen" + icon_closed = "engi_e_crate" + +/obj/structure/closet/crate/science + name = "science crate" + icon_state = "scicrate" + icon_opened = "scicrateopen" + icon_closed = "scicrate" + /obj/structure/closet/crate/hydroponics name = "hydroponics crate" desc = "All you need to destroy those pesky weeds and pests." diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi index d51f126865ef502a851e6eaab56985fb0a2ceb12..834b9f20b9f773b1b8c1cc3ccc59aeb350d32151 100644 GIT binary patch delta 14441 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 M`&y<{$~f@<00^#G!vFvP From 9660186dfd692546dc55c9ad3b06f962c097777e Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 22 Mar 2017 15:30:07 -0400 Subject: [PATCH 6/8] Not So Simple Animals (#3103) * Merge two not-really conflicts Thanks git, that whitespace conflict was super important? * DME merge * Added defines for mobs used by simple animals. * Lost a slime along the way * Disable debug settings * HONK!!! * Remove redundant hostile decls * Replace loc= with forceMove in old SA code I guess I should think of the children. --- code/__defines/mobs.dm | 14 +- .../gamemodes/technomancer/spells/control.dm | 2 +- .../spells/summon/summon_creature.dm | 2 +- code/game/machinery/doors/airlock.dm | 11 +- .../structures/crates_lockers/largecrate.dm | 2 +- code/modules/events/rogue_drones.dm | 4 +- code/modules/hydroponics/seed_datums.dm | 2 +- code/modules/mob/hear_say.dm | 10 +- code/modules/mob/living/bot/bot.dm | 5 + .../{hostile => aliens}/alien.dm | 376 ++-- .../{hostile => aliens}/creature.dm | 145 +- .../{hostile/retaliate => aliens}/drone.dm | 73 +- .../{hostile => aliens}/faithless.dm | 163 +- .../{hostile => aliens}/hivebot.dm | 218 +-- .../{hostile => aliens}/mimic.dm | 389 ++--- .../simple_animal/{ => aliens}/shade.dm | 111 +- .../simple_animal/{hostile => animals}/bat.dm | 154 +- .../{hostile => animals}/bear.dm | 297 ++-- .../{hostile => animals}/carp.dm | 105 +- .../{friendly => animals}/cat.dm | 182 +- .../{friendly => animals}/corgi.dm | 444 ++--- .../{friendly => animals}/crab.dm | 88 +- .../{friendly => animals}/farm_animals.dm | 550 +++--- .../simple_animal/animals/giant_spider.dm | 239 +++ .../{hostile => animals}/goose.dm | 45 +- .../{friendly => animals}/lizard.dm | 39 +- .../{friendly => animals}/mouse.dm | 266 +-- .../simple_animal/{ => animals}/parrot.dm | 1516 +++++++++-------- .../{friendly => animals}/penguin.dm | 16 +- .../{friendly => animals}/slime.dm | 126 +- .../{friendly => animals}/spiderbot.dm | 65 +- .../{friendly => animals}/tomato.dm | 40 +- .../{hostile => animals}/tree.dm | 111 +- .../simple_animal/{ => animals}/worm.dm | 398 +++-- .../mob/living/simple_animal/borer/borer.dm | 2 +- .../simple_animal/borer/borer_powers.dm | 2 +- .../simple_animal/constructs/soulstone.dm | 4 +- .../living/simple_animal/friendly/mushroom.dm | 0 .../simple_animal/hostile/giant_spider.dm | 223 --- .../living/simple_animal/hostile/hostile.dm | 8 - .../hostile/retaliate/retaliate.dm | 49 - .../{hostile/retaliate => humanoids}/clown.dm | 86 +- .../simple_animal/{ => humanoids}/head.dm | 32 +- .../simple_animal/{ => humanoids}/kobold.dm | 27 +- .../simple_animal/humanoids/mechamobs.dm | 94 + .../{hostile => humanoids}/pirate.dm | 120 +- .../{hostile => humanoids}/russian.dm | 121 +- .../{hostile => humanoids}/syndicate.dm | 355 ++-- .../mob/living/simple_animal/simple_animal.dm | 1101 +++++++++--- code/modules/mob/mob.dm | 5 +- code/modules/mob/mob_helpers.dm | 2 +- code/modules/mob/transform_procs.dm | 2 +- .../reagents/reagent_containers/glass.dm | 2 +- .../xenoarcheaology/artifacts/autocloner.dm | 2 +- polaris.dme | 64 +- 55 files changed, 4658 insertions(+), 3851 deletions(-) rename code/modules/mob/living/simple_animal/{hostile => aliens}/alien.dm (95%) rename code/modules/mob/living/simple_animal/{hostile => aliens}/creature.dm (94%) rename code/modules/mob/living/simple_animal/{hostile/retaliate => aliens}/drone.dm (88%) rename code/modules/mob/living/simple_animal/{hostile => aliens}/faithless.dm (85%) rename code/modules/mob/living/simple_animal/{hostile => aliens}/hivebot.dm (90%) rename code/modules/mob/living/simple_animal/{hostile => aliens}/mimic.dm (86%) rename code/modules/mob/living/simple_animal/{ => aliens}/shade.dm (65%) rename code/modules/mob/living/simple_animal/{hostile => animals}/bat.dm (73%) rename code/modules/mob/living/simple_animal/{hostile => animals}/bear.dm (65%) rename code/modules/mob/living/simple_animal/{hostile => animals}/carp.dm (82%) rename code/modules/mob/living/simple_animal/{friendly => animals}/cat.dm (52%) rename code/modules/mob/living/simple_animal/{friendly => animals}/corgi.dm (96%) rename code/modules/mob/living/simple_animal/{friendly => animals}/crab.dm (84%) rename code/modules/mob/living/simple_animal/{friendly => animals}/farm_animals.dm (89%) create mode 100644 code/modules/mob/living/simple_animal/animals/giant_spider.dm rename code/modules/mob/living/simple_animal/{hostile => animals}/goose.dm (55%) rename code/modules/mob/living/simple_animal/{friendly => animals}/lizard.dm (95%) rename code/modules/mob/living/simple_animal/{friendly => animals}/mouse.dm (89%) rename code/modules/mob/living/simple_animal/{ => animals}/parrot.dm (95%) rename code/modules/mob/living/simple_animal/{friendly => animals}/penguin.dm (94%) rename code/modules/mob/living/simple_animal/{friendly => animals}/slime.dm (96%) rename code/modules/mob/living/simple_animal/{friendly => animals}/spiderbot.dm (97%) rename code/modules/mob/living/simple_animal/{friendly => animals}/tomato.dm (83%) rename code/modules/mob/living/simple_animal/{hostile => animals}/tree.dm (85%) rename code/modules/mob/living/simple_animal/{ => animals}/worm.dm (95%) delete mode 100644 code/modules/mob/living/simple_animal/friendly/mushroom.dm delete mode 100644 code/modules/mob/living/simple_animal/hostile/giant_spider.dm delete mode 100644 code/modules/mob/living/simple_animal/hostile/hostile.dm delete mode 100644 code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm rename code/modules/mob/living/simple_animal/{hostile/retaliate => humanoids}/clown.dm (84%) rename code/modules/mob/living/simple_animal/{ => humanoids}/head.dm (92%) rename code/modules/mob/living/simple_animal/{ => humanoids}/kobold.dm (82%) create mode 100644 code/modules/mob/living/simple_animal/humanoids/mechamobs.dm rename code/modules/mob/living/simple_animal/{hostile => humanoids}/pirate.dm (80%) rename code/modules/mob/living/simple_animal/{hostile => humanoids}/russian.dm (79%) rename code/modules/mob/living/simple_animal/{hostile => humanoids}/syndicate.dm (67%) diff --git a/code/__defines/mobs.dm b/code/__defines/mobs.dm index bcd85b53be1..1dc64363558 100644 --- a/code/__defines/mobs.dm +++ b/code/__defines/mobs.dm @@ -26,11 +26,13 @@ #define BORGXRAY 0x4 #define BORGMATERIAL 8 -#define STANCE_IDLE 1 -#define STANCE_ALERT 2 -#define STANCE_ATTACK 3 -#define STANCE_ATTACKING 4 -#define STANCE_TIRED 5 +#define STANCE_IDLE 1 // Looking for targets if hostile. Does idle wandering. +#define STANCE_ALERT 2 // Bears +#define STANCE_ATTACK 3 // Attempting to get into attack position +#define STANCE_ATTACKING 4 // Doing attacks +#define STANCE_TIRED 5 // Bears +#define STANCE_FOLLOW 6 // Following somone +#define STANCE_BUSY 7 // Do nothing on life ticks (Other code is running) #define LEFT 1 #define RIGHT 2 @@ -139,7 +141,7 @@ #define INCAPACITATION_STUNNED 8 #define INCAPACITATION_FORCELYING 16 //needs a better name - represents being knocked down BUT still conscious. #define INCAPACITATION_KNOCKOUT 32 - +#define INCAPACITATION_NONE 0 #define INCAPACITATION_DEFAULT (INCAPACITATION_RESTRAINED|INCAPACITATION_BUCKLED_FULLY) #define INCAPACITATION_KNOCKDOWN (INCAPACITATION_KNOCKOUT|INCAPACITATION_FORCELYING) diff --git a/code/game/gamemodes/technomancer/spells/control.dm b/code/game/gamemodes/technomancer/spells/control.dm index 8b30eb0f14a..90b134b38fc 100644 --- a/code/game/gamemodes/technomancer/spells/control.dm +++ b/code/game/gamemodes/technomancer/spells/control.dm @@ -39,7 +39,7 @@ /mob/living/simple_animal/hostile/carp, /mob/living/simple_animal/hostile/scarybat, /mob/living/simple_animal/hostile/viscerator, - /mob/living/simple_animal/hostile/retaliate/malf_drone, + /mob/living/simple_animal/hostile/malf_drone, /mob/living/simple_animal/hostile/giant_spider, /mob/living/simple_animal/hostile/hivebot, /mob/living/simple_animal/hostile/diyaab, //Doubt these will get used but might as well, diff --git a/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm b/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm index e60d8e8d3ab..7cf36ebabfb 100644 --- a/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm +++ b/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm @@ -22,7 +22,7 @@ "Chick" = /mob/living/simple_animal/chick, "Crab" = /mob/living/simple_animal/crab, "Parrot" = /mob/living/simple_animal/parrot, - "Goat" = /mob/living/simple_animal/hostile/retaliate/goat, + "Goat" = /mob/living/simple_animal/retaliate/goat, "Cat" = /mob/living/simple_animal/cat, "Kitten" = /mob/living/simple_animal/cat/kitten, "Corgi" = /mob/living/simple_animal/corgi, diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index eabab210c43..19996d7ed03 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -37,7 +37,16 @@ /obj/machinery/door/airlock/attack_generic(var/mob/user, var/damage) if(stat & (BROKEN|NOPOWER)) if(damage >= 10) - if(src.density) + if(src.locked || src.welded) + visible_message("\The [user] begins breaking into \the [src] internals!") + if(do_after(user,10 SECONDS,src)) + src.locked = 0 + src.welded = 0 + update_icon() + open(1) + if(prob(25)) + src.shock(user, 100) + else if(src.density) visible_message("\The [user] forces \the [src] open!") open(1) else diff --git a/code/game/objects/structures/crates_lockers/largecrate.dm b/code/game/objects/structures/crates_lockers/largecrate.dm index d8de10bf185..c0d27cad1cf 100644 --- a/code/game/objects/structures/crates_lockers/largecrate.dm +++ b/code/game/objects/structures/crates_lockers/largecrate.dm @@ -72,7 +72,7 @@ /obj/structure/largecrate/animal/goat name = "goat crate" - held_type = /mob/living/simple_animal/hostile/retaliate/goat + held_type = /mob/living/simple_animal/retaliate/goat /obj/structure/largecrate/animal/cat name = "cat carrier" diff --git a/code/modules/events/rogue_drones.dm b/code/modules/events/rogue_drones.dm index 1e3f9fcac94..b597837d17b 100644 --- a/code/modules/events/rogue_drones.dm +++ b/code/modules/events/rogue_drones.dm @@ -16,7 +16,7 @@ else num = rand(2,6) for(var/i=0, i 0) @@ -99,12 +92,12 @@ //sometimes our targetting sensors malfunction, and we attack anyone nearby if(prob(disabled ? 0 : 1)) - if(hostile_drone) + if(hostile) src.visible_message("\blue \icon[src] [src] retracts several targetting vanes, and dulls it's running lights.") - hostile_drone = 0 + hostile = 0 else src.visible_message("\red \icon[src] [src] suddenly lights up, and additional targetting vanes slide into place.") - hostile_drone = 1 + hostile = 1 if(health / maxHealth > 0.9) icon_state = "drone3" @@ -151,18 +144,18 @@ ..() //ion rifle! -/mob/living/simple_animal/hostile/retaliate/malf_drone/emp_act(severity) +/mob/living/simple_animal/hostile/malf_drone/emp_act(severity) health -= rand(3,15) * (severity + 1) disabled = rand(150, 600) - hostile_drone = 0 + hostile = 0 walk(src,0) -/mob/living/simple_animal/hostile/retaliate/malf_drone/death() +/mob/living/simple_animal/hostile/malf_drone/death() ..(null,"suddenly breaks apart.") qdel(src) -/mob/living/simple_animal/hostile/retaliate/malf_drone/Destroy() - //some random debris left behind +/mob/living/simple_animal/hostile/malf_drone/Destroy() + //More advanced than the default S_A loot system, for visual effect and random tech levels. if(has_loot) var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread s.set_up(3, 1, src) diff --git a/code/modules/mob/living/simple_animal/hostile/faithless.dm b/code/modules/mob/living/simple_animal/aliens/faithless.dm similarity index 85% rename from code/modules/mob/living/simple_animal/hostile/faithless.dm rename to code/modules/mob/living/simple_animal/aliens/faithless.dm index dd20145b385..0b41471c329 100644 --- a/code/modules/mob/living/simple_animal/hostile/faithless.dm +++ b/code/modules/mob/living/simple_animal/aliens/faithless.dm @@ -1,83 +1,82 @@ -/mob/living/simple_animal/hostile/faithless - name = "Faithless" - desc = "The Wish Granter's faith in humanity, incarnate" - icon_state = "faithless" - icon_living = "faithless" - icon_dead = "faithless_dead" - speak_chance = 0 - turns_per_move = 5 - response_help = "passes through" - response_disarm = "shoves" - response_harm = "hits" - speed = 8 - maxHealth = 50 - health = 50 - - harm_intent_damage = 10 - melee_damage_lower = 5 - melee_damage_upper = 5 - attacktext = "gripped" - attack_sound = 'sound/hallucinations/growl1.ogg' - - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - speed = 4 - - faction = "faithless" - -/mob/living/simple_animal/hostile/faithless/Process_Spacemove(var/check_drift = 0) - return 1 - -/mob/living/simple_animal/hostile/faithless/FindTarget() - . = ..() - if(.) - audible_emote("wails at [.]") - -/mob/living/simple_animal/hostile/faithless/AttackingTarget() - . =..() - var/mob/living/L = . - if(istype(L)) - if(prob(12)) - L.Weaken(3) - L.visible_message("\the [src] knocks down \the [L]!") - -/mob/living/simple_animal/hostile/faithless/cult - faction = "cult" - supernatural = 1 - -/mob/living/simple_animal/hostile/faithless/cult/cultify() - return - -/mob/living/simple_animal/hostile/faithless/cult/Life() - ..() - check_horde() - - - - -/mob/living/simple_animal/hostile/faithless/strong - maxHealth = 100 - health = 100 - - harm_intent_damage = 5 - melee_damage_lower = 7 - melee_damage_upper = 20 - - -/mob/living/simple_animal/hostile/faithless/strong/cult - faction = "cult" - supernatural = 1 - -/mob/living/simple_animal/hostile/faithless/cult/cultify() - return - -/mob/living/simple_animal/hostile/faithless/cult/Life() - ..() +/mob/living/simple_animal/hostile/faithless + name = "Faithless" + desc = "The Wish Granter's faith in humanity, incarnate" + icon_state = "faithless" + icon_living = "faithless" + icon_dead = "faithless_dead" + + faction = "faithless" + maxHealth = 50 + health = 50 + speed = 8 + + turns_per_move = 5 + response_help = "passes through" + response_disarm = "shoves" + response_harm = "hits" + + harm_intent_damage = 10 + melee_damage_lower = 5 + melee_damage_upper = 5 + + attacktext = "gripped" + attack_sound = 'sound/hallucinations/growl1.ogg' + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + speak_chance = 0 + +/mob/living/simple_animal/hostile/faithless/Process_Spacemove(var/check_drift = 0) + return 1 + +/mob/living/simple_animal/hostile/faithless/set_target() + . = ..() + if(.) + audible_emote("wails at [target_mob]") + +/mob/living/simple_animal/hostile/faithless/PunchTarget() + . = ..() + var/mob/living/L = . + if(istype(L)) + if(prob(12)) + L.Weaken(3) + L.visible_message("\the [src] knocks down \the [L]!") + +/mob/living/simple_animal/hostile/faithless/cult + faction = "cult" + supernatural = 1 + +/mob/living/simple_animal/hostile/faithless/cult/cultify() + return + +/mob/living/simple_animal/hostile/faithless/cult/Life() + ..() + check_horde() + +/mob/living/simple_animal/hostile/faithless/strong + maxHealth = 100 + health = 100 + + harm_intent_damage = 5 + melee_damage_lower = 7 + melee_damage_upper = 20 + + +/mob/living/simple_animal/hostile/faithless/strong/cult + faction = "cult" + supernatural = 1 + +/mob/living/simple_animal/hostile/faithless/cult/cultify() + return + +/mob/living/simple_animal/hostile/faithless/cult/Life() + ..() check_horde() \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/hivebot.dm b/code/modules/mob/living/simple_animal/aliens/hivebot.dm similarity index 90% rename from code/modules/mob/living/simple_animal/hostile/hivebot.dm rename to code/modules/mob/living/simple_animal/aliens/hivebot.dm index e358f3e69ac..9770d61efea 100644 --- a/code/modules/mob/living/simple_animal/hostile/hivebot.dm +++ b/code/modules/mob/living/simple_animal/aliens/hivebot.dm @@ -1,107 +1,111 @@ -/obj/item/projectile/hivebotbullet - damage = 10 - damage_type = BRUTE - -/mob/living/simple_animal/hostile/hivebot - name = "Hivebot" - desc = "A small robot" - icon = 'icons/mob/hivebot.dmi' - icon_state = "basic" - icon_living = "basic" - icon_dead = "basic" - health = 15 - maxHealth = 15 - melee_damage_lower = 2 - melee_damage_upper = 3 - attacktext = "clawed" - projectilesound = 'sound/weapons/Gunshot.ogg' - projectiletype = /obj/item/projectile/hivebotbullet - faction = "hivebot" - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - speed = 4 - -/mob/living/simple_animal/hostile/hivebot/range - name = "Hivebot" - desc = "A smallish robot, this one is armed!" - ranged = 1 - -/mob/living/simple_animal/hostile/hivebot/rapid - ranged = 1 - rapid = 1 - -/mob/living/simple_animal/hostile/hivebot/strong - name = "Strong Hivebot" - desc = "A robot, this one is armed and looks tough!" - health = 80 - ranged = 1 - - -/mob/living/simple_animal/hostile/hivebot/death() - ..() - visible_message("[src] blows apart!") - new /obj/effect/decal/cleanable/blood/gibs/robot(src.loc) - var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread - s.set_up(3, 1, src) - s.start() - qdel(src) - return - -/mob/living/simple_animal/hostile/hivebot/tele//this still needs work - name = "Beacon" - desc = "Some odd beacon thing" - icon = 'icons/mob/hivebot.dmi' - icon_state = "def_radar-off" - icon_living = "def_radar-off" - health = 200 - maxHealth = 200 - status_flags = 0 - anchored = 1 - stop_automated_movement = 1 - var/bot_type = "norm" - var/bot_amt = 10 - var/spawn_delay = 600 - var/turn_on = 0 - var/auto_spawn = 1 - proc - warpbots() - - - New() - ..() - var/datum/effect/effect/system/smoke_spread/smoke = new /datum/effect/effect/system/smoke_spread() - smoke.set_up(5, 0, src.loc) - smoke.start() - visible_message("\red The [src] warps in!") - playsound(src.loc, 'sound/effects/EMPulse.ogg', 25, 1) - - warpbots() - icon_state = "def_radar" - visible_message("\red The [src] turns on!") - while(bot_amt > 0) - bot_amt-- - switch(bot_type) - if("norm") - new /mob/living/simple_animal/hostile/hivebot(get_turf(src)) - if("range") - new /mob/living/simple_animal/hostile/hivebot/range(get_turf(src)) - if("rapid") - new /mob/living/simple_animal/hostile/hivebot/rapid(get_turf(src)) - spawn(100) - qdel(src) - return - - - Life() - ..() - if(stat == 0) - if(prob(2))//Might be a bit low, will mess with it likely - warpbots() - +/mob/living/simple_animal/hostile/hivebot + name = "Hivebot" + desc = "A small robot" + icon = 'icons/mob/hivebot.dmi' + icon_state = "basic" + icon_living = "basic" + icon_dead = "basic" + + faction = "hivebot" + maxHealth = 15 + health = 15 + speed = 4 + + melee_damage_lower = 2 + melee_damage_upper = 3 + + attacktext = "clawed" + projectilesound = 'sound/weapons/Gunshot.ogg' + projectiletype = /obj/item/projectile/hivebotbullet + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + +/mob/living/simple_animal/hostile/hivebot/range + name = "Hivebot" + desc = "A smallish robot, this one is armed!" + ranged = 1 + +/mob/living/simple_animal/hostile/hivebot/range/rapid + rapid = 1 + +/mob/living/simple_animal/hostile/hivebot/strong + name = "Strong Hivebot" + desc = "A robot, this one is armed and looks tough!" + health = 80 + ranged = 1 + +/mob/living/simple_animal/hostile/hivebot/death() + ..() + visible_message("[src] blows apart!") + new /obj/effect/decal/cleanable/blood/gibs/robot(src.loc) + var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread + s.set_up(3, 1, src) + s.start() + qdel(src) + +/mob/living/simple_animal/hostile/hivebot/tele//this still needs work + name = "Beacon" + desc = "Some odd beacon thing" + icon = 'icons/mob/hivebot.dmi' + icon_state = "def_radar-off" + icon_living = "def_radar-off" + + health = 200 + maxHealth = 200 + status_flags = 0 + + anchored = 1 + wander = 0 + stop_automated_movement = 1 + + var/bot_type = "norm" + var/bot_amt = 10 + var/spawn_delay = 600 + var/turn_on = 0 + var/auto_spawn = 1 + proc + warpbots() + + + New() + ..() + var/datum/effect/effect/system/smoke_spread/smoke = new /datum/effect/effect/system/smoke_spread() + smoke.set_up(5, 0, src.loc) + smoke.start() + visible_message("\red The [src] warps in!") + playsound(src.loc, 'sound/effects/EMPulse.ogg', 25, 1) + + warpbots() + icon_state = "def_radar" + visible_message("\red The [src] turns on!") + while(bot_amt > 0) + bot_amt-- + switch(bot_type) + if("norm") + new /mob/living/simple_animal/hostile/hivebot(get_turf(src)) + if("range") + new /mob/living/simple_animal/hostile/hivebot/range(get_turf(src)) + if("rapid") + new /mob/living/simple_animal/hostile/hivebot/range/rapid(get_turf(src)) + spawn(100) + qdel(src) + return + + + Life() + ..() + if(stat == 0) + if(prob(2))//Might be a bit low, will mess with it likely + warpbots() + +/obj/item/projectile/hivebotbullet + damage = 10 + damage_type = BRUTE diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/aliens/mimic.dm similarity index 86% rename from code/modules/mob/living/simple_animal/hostile/mimic.dm rename to code/modules/mob/living/simple_animal/aliens/mimic.dm index 4764dcd5479..6f0dbd9d3b5 100644 --- a/code/modules/mob/living/simple_animal/hostile/mimic.dm +++ b/code/modules/mob/living/simple_animal/aliens/mimic.dm @@ -1,195 +1,196 @@ -// -// Abstract Class -// - -/mob/living/simple_animal/hostile/mimic - name = "crate" - desc = "A rectangular steel crate." - icon = 'icons/obj/storage.dmi' - icon_state = "crate" - icon_living = "crate" - - meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat - response_help = "touches" - response_disarm = "pushes" - response_harm = "hits" - speed = 4 - maxHealth = 250 - health = 250 - - harm_intent_damage = 5 - melee_damage_lower = 8 - melee_damage_upper = 12 - attacktext = "attacked" - attack_sound = 'sound/weapons/bite.ogg' - - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - - faction = "mimic" - move_to_delay = 8 - -/mob/living/simple_animal/hostile/mimic/FindTarget() - . = ..() - if(.) - audible_emote("growls at [.]") - -/mob/living/simple_animal/hostile/mimic/death() - ..() - qdel(src) - -// -// Crate Mimic -// - - -// Aggro when you try to open them. Will also pickup loot when spawns and drop it when dies. -/mob/living/simple_animal/hostile/mimic/crate - - attacktext = "bitten" - - stop_automated_movement = 1 - wander = 0 - var/attempt_open = 0 - -// Pickup loot -/mob/living/simple_animal/hostile/mimic/crate/initialize() - ..() - for(var/obj/item/I in loc) - I.loc = src - -/mob/living/simple_animal/hostile/mimic/crate/DestroySurroundings() - ..() - if(prob(90)) - icon_state = "[initial(icon_state)]open" - else - icon_state = initial(icon_state) - -/mob/living/simple_animal/hostile/mimic/crate/ListTargets() - if(attempt_open) - return ..() - return view(src, 1) - -/mob/living/simple_animal/hostile/mimic/crate/FindTarget() - . = ..() - if(.) - trigger() - -/mob/living/simple_animal/hostile/mimic/crate/AttackingTarget() - . = ..() - if(.) - icon_state = initial(icon_state) - -/mob/living/simple_animal/hostile/mimic/crate/proc/trigger() - if(!attempt_open) - visible_message("[src] starts to move!") - attempt_open = 1 - -/mob/living/simple_animal/hostile/mimic/crate/adjustBruteLoss(var/damage) - trigger() - ..(damage) - -/mob/living/simple_animal/hostile/mimic/crate/LoseTarget() - ..() - icon_state = initial(icon_state) - -/mob/living/simple_animal/hostile/mimic/crate/LostTarget() - ..() - icon_state = initial(icon_state) - -/mob/living/simple_animal/hostile/mimic/crate/death() - - var/obj/structure/closet/crate/C = new(get_turf(src)) - // Put loot in crate - for(var/obj/O in src) - O.loc = C - ..() - -/mob/living/simple_animal/hostile/mimic/crate/AttackingTarget() - . =..() - var/mob/living/L = . - if(istype(L)) - if(prob(15)) - L.Weaken(2) - L.visible_message("\the [src] knocks down \the [L]!") - -// -// Copy Mimic -// - -var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/cable, /obj/structure/window, /obj/item/projectile/animate) - -/mob/living/simple_animal/hostile/mimic/copy - - health = 100 - maxHealth = 100 - var/mob/living/creator = null // the creator - var/destroy_objects = 0 - var/knockdown_people = 0 - -/mob/living/simple_animal/hostile/mimic/copy/New(loc, var/obj/copy, var/mob/living/creator) - ..(loc) - CopyObject(copy, creator) - -/mob/living/simple_animal/hostile/mimic/copy/death() - - for(var/atom/movable/M in src) - M.loc = get_turf(src) - ..() - -/mob/living/simple_animal/hostile/mimic/copy/ListTargets() - // Return a list of targets that isn't the creator - . = ..() - return . - creator - -/mob/living/simple_animal/hostile/mimic/copy/proc/CopyObject(var/obj/O, var/mob/living/creator) - - if((istype(O, /obj/item) || istype(O, /obj/structure)) && !is_type_in_list(O, protected_objects)) - - O.loc = src - name = O.name - desc = O.desc - icon = O.icon - icon_state = O.icon_state - icon_living = icon_state - - if(istype(O, /obj/structure)) - health = (anchored * 50) + 50 - destroy_objects = 1 - if(O.density && O.anchored) - knockdown_people = 1 - melee_damage_lower *= 2 - melee_damage_upper *= 2 - else if(istype(O, /obj/item)) - var/obj/item/I = O - health = 15 * I.w_class - melee_damage_lower = 2 + I.force - melee_damage_upper = 2 + I.force - move_to_delay = 2 * I.w_class - - maxHealth = health - if(creator) - src.creator = creator - faction = "\ref[creator]" // very unique - return 1 - return - -/mob/living/simple_animal/hostile/mimic/copy/DestroySurroundings() - if(destroy_objects) - ..() - -/mob/living/simple_animal/hostile/mimic/copy/AttackingTarget() - . =..() - if(knockdown_people) - var/mob/living/L = . - if(istype(L)) - if(prob(15)) - L.Weaken(1) +// +// Abstract Class +// + +/mob/living/simple_animal/hostile/mimic + name = "crate" + desc = "A rectangular steel crate." + icon = 'icons/obj/storage.dmi' + icon_state = "crate" + icon_living = "crate" + + faction = "mimic" + + maxHealth = 250 + health = 250 + speed = 4 + move_to_delay = 8 + + response_help = "touches" + response_disarm = "pushes" + response_harm = "hits" + + harm_intent_damage = 5 + melee_damage_lower = 8 + melee_damage_upper = 12 + attacktext = "attacked" + attack_sound = 'sound/weapons/bite.ogg' + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat + +/mob/living/simple_animal/hostile/mimic/set_target() + . = ..() + if(.) + audible_emote("growls at [.]") + +/mob/living/simple_animal/mimic/death() + ..() + qdel(src) + +// +// Crate Mimic +// + +// Aggro when you try to open them. Will also pickup loot when spawns and drop it when dies. +/mob/living/simple_animal/hostile/mimic/crate + + attacktext = "bitten" + + stop_automated_movement = 1 + wander = 0 + var/attempt_open = 0 + +// Pickup loot +/mob/living/simple_animal/hostile/mimic/crate/initialize() + ..() + for(var/obj/item/I in loc) + I.forceMove(src) + +/mob/living/simple_animal/hostile/mimic/crate/DestroySurroundings() + ..() + if(prob(90)) + icon_state = "[initial(icon_state)]open" + else + icon_state = initial(icon_state) + +/mob/living/simple_animal/hostile/mimic/crate/ListTargets() + if(attempt_open) + return ..() + else + return ..(1) + +/mob/living/simple_animal/hostile/mimic/crate/set_target() + . = ..() + if(.) + trigger() + +/mob/living/simple_animal/hostile/mimic/crate/PunchTarget() + . = ..() + if(.) + icon_state = initial(icon_state) + +/mob/living/simple_animal/hostile/mimic/crate/proc/trigger() + if(!attempt_open) + visible_message("[src] starts to move!") + attempt_open = 1 + +/mob/living/simple_animal/hostile/mimic/crate/adjustBruteLoss(var/damage) + trigger() + ..(damage) + +/mob/living/simple_animal/hostile/mimic/crate/LoseTarget() + ..() + icon_state = initial(icon_state) + +/mob/living/simple_animal/hostile/mimic/crate/LostTarget() + ..() + icon_state = initial(icon_state) + +/mob/living/simple_animal/hostile/mimic/crate/death() + var/obj/structure/closet/crate/C = new(get_turf(src)) + // Put loot in crate + for(var/obj/O in src) + O.forceMove(C) + ..() + +/mob/living/simple_animal/hostile/mimic/crate/PunchTarget() + . =..() + var/mob/living/L = . + if(istype(L)) + if(prob(15)) + L.Weaken(2) + L.visible_message("\the [src] knocks down \the [L]!") + +// +// Copy Mimic +// + +var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/cable, /obj/structure/window, /obj/item/projectile/animate) + +/mob/living/simple_animal/hostile/mimic/copy + + health = 100 + maxHealth = 100 + var/mob/living/creator = null // the creator + var/destroy_objects = 0 + var/knockdown_people = 0 + +/mob/living/simple_animal/hostile/mimic/copy/New(loc, var/obj/copy, var/mob/living/creator) + ..(loc) + CopyObject(copy, creator) + +/mob/living/simple_animal/hostile/mimic/copy/death() + + for(var/atom/movable/M in src) + M.forceMove(get_turf(src)) + ..() + +/mob/living/simple_animal/hostile/mimic/copy/ListTargets() + // Return a list of targets that isn't the creator + . = ..() + return . - creator + +/mob/living/simple_animal/hostile/mimic/copy/proc/CopyObject(var/obj/O, var/mob/living/creator) + + if((istype(O, /obj/item) || istype(O, /obj/structure)) && !is_type_in_list(O, protected_objects)) + + O.forceMove(src) + name = O.name + desc = O.desc + icon = O.icon + icon_state = O.icon_state + icon_living = icon_state + + if(istype(O, /obj/structure)) + health = (anchored * 50) + 50 + destroy_objects = 1 + if(O.density && O.anchored) + knockdown_people = 1 + melee_damage_lower *= 2 + melee_damage_upper *= 2 + else if(istype(O, /obj/item)) + var/obj/item/I = O + health = 15 * I.w_class + melee_damage_lower = 2 + I.force + melee_damage_upper = 2 + I.force + move_to_delay = 2 * I.w_class + + maxHealth = health + if(creator) + src.creator = creator + faction = "\ref[creator]" // very unique + return 1 + return + +/mob/living/simple_animal/hostile/mimic/copy/DestroySurroundings() + if(destroy_objects) + ..() + +/mob/living/simple_animal/hostile/mimic/copy/PunchTarget() + . =..() + if(knockdown_people) + var/mob/living/L = . + if(istype(L)) + if(prob(15)) + L.Weaken(1) L.visible_message("\the [src] knocks down \the [L]!") \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/shade.dm b/code/modules/mob/living/simple_animal/aliens/shade.dm similarity index 65% rename from code/modules/mob/living/simple_animal/shade.dm rename to code/modules/mob/living/simple_animal/aliens/shade.dm index f8ed654b958..d74dec5b307 100644 --- a/code/modules/mob/living/simple_animal/shade.dm +++ b/code/modules/mob/living/simple_animal/aliens/shade.dm @@ -1,52 +1,59 @@ -/mob/living/simple_animal/shade - name = "Shade" - real_name = "Shade" - desc = "A bound spirit" - icon = 'icons/mob/mob.dmi' - icon_state = "shade" - icon_living = "shade" - icon_dead = "shade_dead" - maxHealth = 50 - health = 50 - universal_speak = 1 - speak_emote = list("hisses") - emote_hear = list("wails","screeches") - response_help = "puts their hand through" - response_disarm = "flails at" - response_harm = "punches" - melee_damage_lower = 5 - melee_damage_upper = 15 - attacktext = "drained the life from" - minbodytemp = 0 - maxbodytemp = 4000 - min_oxy = 0 - max_co2 = 0 - max_tox = 0 - speed = -1 - stop_automated_movement = 1 - status_flags = 0 - faction = "cult" - status_flags = CANPUSH - -/mob/living/simple_animal/shade/cultify() - return - -/mob/living/simple_animal/shade/Life() - ..() - OnDeathInLife() - -/mob/living/simple_animal/shade/attackby(var/obj/item/O as obj, var/mob/user as mob) //Marker -Agouri - if(istype(O, /obj/item/device/soulstone)) - var/obj/item/device/soulstone/S = O; - S.transfer_soul("SHADE", src, user) - return - -/mob/living/simple_animal/shade/proc/OnDeathInLife() - if(stat == 2) - new /obj/item/weapon/ectoplasm (src.loc) - for(var/mob/M in viewers(src, null)) - if((M.client && !( M.blinded ))) - M.show_message("\red [src] lets out a contented sigh as their form unwinds. ") - ghostize() - qdel(src) - return +/mob/living/simple_animal/shade + name = "Shade" + real_name = "Shade" + desc = "A bound spirit" + icon = 'icons/mob/mob.dmi' + icon_state = "shade" + icon_living = "shade" + icon_dead = "shade_dead" + + faction = "cult" + + maxHealth = 50 + health = 50 + speed = -1 + + response_help = "puts their hand through" + response_disarm = "flails at" + response_harm = "punches" + + melee_damage_lower = 5 + melee_damage_upper = 15 + attacktext = "drained the life from" + + minbodytemp = 0 + maxbodytemp = 4000 + min_oxy = 0 + max_co2 = 0 + max_tox = 0 + + stop_automated_movement = 1 + wander = 0 + status_flags = 0 + + speak_chance = 5 + universal_speak = 1 + speak_emote = list("hisses") + emote_hear = list("wails","screeches") + + loot_list = list(/obj/item/weapon/ectoplasm = 100) + +/mob/living/simple_animal/shade/cultify() + return + +/mob/living/simple_animal/shade/attackby(var/obj/item/O as obj, var/mob/user as mob) + if(istype(O, /obj/item/device/soulstone)) + var/obj/item/device/soulstone/S = O; + S.transfer_soul("SHADE", src, user) + return + ..() + +/mob/living/simple_animal/shade/death() + ..() + for(var/mob/M in viewers(src, null)) + if((M.client && !( M.blinded ))) + M.show_message("\red [src] lets out a contented sigh as their form unwinds. ") + + ghostize() + qdel(src) + return diff --git a/code/modules/mob/living/simple_animal/hostile/bat.dm b/code/modules/mob/living/simple_animal/animals/bat.dm similarity index 73% rename from code/modules/mob/living/simple_animal/hostile/bat.dm rename to code/modules/mob/living/simple_animal/animals/bat.dm index 9ce3a08a280..d7ed8e5f403 100644 --- a/code/modules/mob/living/simple_animal/hostile/bat.dm +++ b/code/modules/mob/living/simple_animal/animals/bat.dm @@ -1,76 +1,78 @@ -/mob/living/simple_animal/hostile/scarybat - name = "space bats" - desc = "A swarm of cute little blood sucking bats that looks pretty upset." - icon = 'icons/mob/bats.dmi' - icon_state = "bat" - icon_living = "bat" - icon_dead = "bat_dead" - icon_gib = "bat_dead" - speak_chance = 0 - turns_per_move = 3 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - response_help = "pets the" - response_disarm = "gently pushes aside the" - response_harm = "hits the" - speed = 4 - maxHealth = 20 - health = 20 - - harm_intent_damage = 10 - melee_damage_lower = 3 - melee_damage_upper = 3 - attacktext = "bites" - attack_sound = 'sound/weapons/bite.ogg' - - //Space carp aren't affected by atmos. - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - - environment_smash = 1 - - faction = "scarybat" - var/mob/living/owner - -/mob/living/simple_animal/hostile/scarybat/New(loc, mob/living/L as mob) - ..() - if(istype(L)) - owner = L - -/mob/living/simple_animal/hostile/scarybat/Process_Spacemove(var/check_drift = 0) - return ..() //No drifting in space for space carp! //original comments do not steal - -/mob/living/simple_animal/hostile/scarybat/FindTarget() - . = ..() - if(.) - emote("flutters towards [.]") - -/mob/living/simple_animal/hostile/scarybat/Found(var/atom/A)//This is here as a potential override to pick a specific target if available - if(istype(A) && A == owner) - return 0 - return ..() - -/mob/living/simple_animal/hostile/scarybat/AttackingTarget() - . =..() - var/mob/living/L = . - if(istype(L)) - if(prob(15)) - L.Stun(1) - L.visible_message("\the [src] scares \the [L]!") - -/mob/living/simple_animal/hostile/scarybat/cult - faction = "cult" - supernatural = 1 - -/mob/living/simple_animal/hostile/scarybat/cult/cultify() - return - -/mob/living/simple_animal/hostile/scarybat/cult/Life() - ..() - check_horde() +/mob/living/simple_animal/hostile/scarybat + name = "space bats" + desc = "A swarm of cute little blood sucking bats that looks pretty upset." + icon = 'icons/mob/bats.dmi' + icon_state = "bat" + icon_living = "bat" + icon_dead = "bat_dead" + icon_gib = "bat_dead" + + faction = "scarybat" + + maxHealth = 20 + health = 20 + turns_per_move = 3 + speed = 4 + + response_help = "pets the" + response_disarm = "gently pushes aside the" + response_harm = "hits the" + + harm_intent_damage = 10 + melee_damage_lower = 3 + melee_damage_upper = 3 + environment_smash = 1 + + attacktext = "bites" + attack_sound = 'sound/weapons/bite.ogg' + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + var/mob/living/owner + +/mob/living/simple_animal/hostile/scarybat/New(loc, mob/living/L as mob) + ..() + if(istype(L)) + owner = L + +/mob/living/simple_animal/hostile/scarybat/Process_Spacemove(var/check_drift = 0) + return ..() + +/mob/living/simple_animal/hostile/scarybat/set_target() + . = ..() + if(.) + emote("flutters towards [.]") + +/mob/living/simple_animal/hostile/scarybat/ListTargets() + . = ..() + if(owner) + return . - owner + +/mob/living/simple_animal/hostile/scarybat/PunchTarget() + . =..() + var/mob/living/L = . + if(istype(L)) + if(prob(15)) + L.Stun(1) + L.visible_message("\the [src] scares \the [L]!") + +/mob/living/simple_animal/hostile/scarybat/cult + faction = "cult" + supernatural = 1 + +/mob/living/simple_animal/hostile/scarybat/cult/cultify() + return + +/mob/living/simple_animal/hostile/scarybat/cult/Life() + ..() + check_horde() diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/animals/bear.dm similarity index 65% rename from code/modules/mob/living/simple_animal/hostile/bear.dm rename to code/modules/mob/living/simple_animal/animals/bear.dm index f4de3b6054f..9d1da5e08b8 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/animals/bear.dm @@ -1,172 +1,125 @@ -//Space bears! -/mob/living/simple_animal/hostile/bear - name = "space bear" - desc = "RawrRawr!!" - icon_state = "bear" - icon_living = "bear" - icon_dead = "bear_dead" - icon_gib = "bear_gib" - speak = list("RAWR!","Rawr!","GRR!","Growl!") - speak_emote = list("growls", "roars") - emote_hear = list("rawrs","grumbles","grawls") - emote_see = list("stares ferociously", "stomps") - speak_chance = 1 - turns_per_move = 5 - see_in_dark = 6 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/bearmeat - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "pokes" - stop_automated_movement_when_pulled = 0 - maxHealth = 60 - health = 60 - melee_damage_lower = 20 - melee_damage_upper = 30 - - //Space bears aren't affected by atmos. - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - var/stance_step = 0 - - faction = "russian" - -//SPACE BEARS! SQUEEEEEEEE~ OW! FUCK! IT BIT MY HAND OFF!! -/mob/living/simple_animal/hostile/bear/Hudson - name = "Hudson" - desc = "" - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "pokes" - -/mob/living/simple_animal/hostile/bear/Life() - . =..() - if(!.) - return - - if(loc && istype(loc,/turf/space)) - icon_state = "bear" - else - icon_state = "bearfloor" - - switch(stance) - - if(STANCE_TIRED) - stop_automated_movement = 1 - stance_step++ - if(stance_step >= 10) //rests for 10 ticks - if(target_mob && target_mob in ListTargets(10)) - stance = STANCE_ATTACK //If the mob he was chasing is still nearby, resume the attack, otherwise go idle. - else - stance = STANCE_IDLE - - if(STANCE_ALERT) - stop_automated_movement = 1 - var/found_mob = 0 - if(target_mob && target_mob in ListTargets(10)) - if(!(SA_attackable(target_mob))) - stance_step = max(0, stance_step) //If we have not seen a mob in a while, the stance_step will be negative, we need to reset it to 0 as soon as we see a mob again. - stance_step++ - found_mob = 1 - src.set_dir(get_dir(src,target_mob)) //Keep staring at the mob - - if(stance_step in list(1,4,7)) //every 3 ticks - var/action = pick( list( "growls at [target_mob]", "stares angrily at [target_mob]", "prepares to attack [target_mob]", "closely watches [target_mob]" ) ) - if(action) - custom_emote(1,action) - if(!found_mob) - stance_step-- - - if(stance_step <= -20) //If we have not found a mob for 20-ish ticks, revert to idle mode - stance = STANCE_IDLE - if(stance_step >= 7) //If we have been staring at a mob for 7 ticks, - stance = STANCE_ATTACK - - if(STANCE_ATTACKING) - if(stance_step >= 20) //attacks for 20 ticks, then it gets tired and needs to rest - custom_emote(1, "is worn out and needs to rest." ) - stance = STANCE_TIRED - stance_step = 0 - walk(src, 0) //This stops the bear's walking - return - - - -/mob/living/simple_animal/hostile/bear/attackby(var/obj/item/O as obj, var/mob/user as mob) - if(stance != STANCE_ATTACK && stance != STANCE_ATTACKING) - stance = STANCE_ALERT - stance_step = 6 - target_mob = user - ..() - -/mob/living/simple_animal/hostile/bear/attack_hand(mob/living/carbon/human/M as mob) - if(stance != STANCE_ATTACK && stance != STANCE_ATTACKING) - stance = STANCE_ALERT - stance_step = 6 - target_mob = M - ..() - -/mob/living/simple_animal/hostile/bear/Process_Spacemove(var/check_drift = 0) - return //No drifting in space for space bears! - -/mob/living/simple_animal/hostile/bear/FindTarget() - . = ..() - if(.) - custom_emote(1,"stares alertly at [.]") - stance = STANCE_ALERT - -/mob/living/simple_animal/hostile/bear/LoseTarget() - ..(5) - -/mob/living/simple_animal/hostile/bear/AttackingTarget() - if(!Adjacent(target_mob)) - return - custom_emote(1, pick( list("slashes at [target_mob]", "bites [target_mob]") ) ) - - var/damage = rand(melee_damage_lower, melee_damage_upper) - - if(ishuman(target_mob)) - var/mob/living/carbon/human/H = target_mob - var/dam_zone = pick(BP_TORSO, BP_L_HAND, BP_R_HAND, BP_L_LEG, BP_R_LEG) - var/obj/item/organ/external/affecting = H.get_organ(ran_zone(dam_zone)) - H.apply_damage(damage, BRUTE, affecting, H.run_armor_check(affecting, "melee"), sharp=1, edge=1) - return H - else if(isliving(target_mob)) - var/mob/living/L = target_mob - L.adjustBruteLoss(damage) - return L - //else if(istype(target_mob,/obj/mecha)) - //var/obj/mecha/M = target_mob - //M.attack_animal(src) - //return M - - - - - - - - - - - - - - - - - - - - - - - - - +//Space bears! +/mob/living/simple_animal/hostile/bear + name = "space bear" + desc = "RawrRawr!!" + icon_state = "bear" + icon_living = "bear" + icon_dead = "bear_dead" + icon_gib = "bear_gib" + + faction = "russian" + cooperative = 1 + + maxHealth = 60 + health = 60 + turns_per_move = 5 + see_in_dark = 6 + stop_when_pulled = 0 + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "pokes" + + melee_damage_lower = 20 + melee_damage_upper = 30 + + //Space bears aren't affected by atmos. + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + speak_chance = 1 + speak = list("RAWR!","Rawr!","GRR!","Growl!") + speak_emote = list("growls", "roars") + emote_hear = list("rawrs","grumbles","grawls") + emote_see = list("stares ferociously", "stomps") + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/bearmeat + + var/stance_step = 0 + +/mob/living/simple_animal/hostile/bear/handle_stance() + switch(stance) + if(STANCE_TIRED) + stop_automated_movement = 1 + stance_step++ + if(stance_step >= 10) //rests for 10 ticks + if(target_mob && target_mob in ListTargets(10)) + handle_stance(STANCE_ATTACK) //If the mob he was chasing is still nearby, resume the attack, otherwise go idle. + else + handle_stance(STANCE_IDLE) + + if(STANCE_ALERT) + stop_automated_movement = 1 + var/found_mob = 0 + if(target_mob && target_mob in ListTargets(10)) + if(!(SA_attackable(target_mob))) + stance_step = max(0, stance_step) //If we have not seen a mob in a while, the stance_step will be negative, we need to reset it to 0 as soon as we see a mob again. + stance_step++ + found_mob = 1 + src.set_dir(get_dir(src,target_mob)) //Keep staring at the mob + + if(stance_step in list(1,4,7)) //every 3 ticks + var/action = pick( list( "growls at [target_mob]", "stares angrily at [target_mob]", "prepares to attack [target_mob]", "closely watches [target_mob]" ) ) + if(action) + custom_emote(1,action) + if(!found_mob) + stance_step-- + + if(stance_step <= -20) //If we have not found a mob for 20-ish ticks, revert to idle mode + handle_stance(STANCE_IDLE) + if(stance_step >= 7) //If we have been staring at a mob for 7 ticks, + handle_stance(STANCE_ATTACK) + + if(STANCE_ATTACKING) + if(stance_step >= 20) //attacks for 20 ticks, then it gets tired and needs to rest + custom_emote(1, "is worn out and needs to rest." ) + handle_stance(STANCE_TIRED) + stance_step = 0 + walk(src, 0) //This stops the bear's walking + return + else + ..() + +/mob/living/simple_animal/hostile/bear/update_icons() + ..() + if(!stat) + if(loc && istype(loc,/turf/space)) + icon_state = "bear" + else + icon_state = "bearfloor" + +/mob/living/simple_animal/hostile/bear/Process_Spacemove(var/check_drift = 0) + return + +/mob/living/simple_animal/hostile/bear/FindTarget() + . = ..() + if(.) + custom_emote(1,"stares alertly at [.]") + handle_stance(STANCE_ALERT) + +/mob/living/simple_animal/hostile/bear/PunchTarget() + if(!Adjacent(target_mob)) + return + custom_emote(1, pick( list("slashes at [target_mob]", "bites [target_mob]") ) ) + + var/damage = rand(melee_damage_lower, melee_damage_upper) + + if(ishuman(target_mob)) + var/mob/living/carbon/human/H = target_mob + var/dam_zone = pick(BP_TORSO, BP_L_HAND, BP_R_HAND, BP_L_LEG, BP_R_LEG) + var/obj/item/organ/external/affecting = H.get_organ(ran_zone(dam_zone)) + H.apply_damage(damage, BRUTE, affecting, H.run_armor_check(affecting, "melee"), sharp=1, edge=1) + return H + else if(isliving(target_mob)) + var/mob/living/L = target_mob + L.adjustBruteLoss(damage) + return L + else + ..() diff --git a/code/modules/mob/living/simple_animal/hostile/carp.dm b/code/modules/mob/living/simple_animal/animals/carp.dm similarity index 82% rename from code/modules/mob/living/simple_animal/hostile/carp.dm rename to code/modules/mob/living/simple_animal/animals/carp.dm index 8708b1009e3..b8813c8a614 100644 --- a/code/modules/mob/living/simple_animal/hostile/carp.dm +++ b/code/modules/mob/living/simple_animal/animals/carp.dm @@ -1,55 +1,52 @@ - - -/mob/living/simple_animal/hostile/carp - name = "space carp" - desc = "A ferocious, fang-bearing creature that resembles a fish." - icon_state = "carp" - icon_living = "carp" - icon_dead = "carp_dead" - icon_gib = "carp_gib" - speak_chance = 0 - turns_per_move = 5 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat - response_help = "pets the" - response_disarm = "gently pushes aside the" - response_harm = "hits the" - speed = 4 - maxHealth = 25 - health = 25 - - harm_intent_damage = 8 - melee_damage_lower = 15 - melee_damage_upper = 15 - attacktext = "bitten" - attack_sound = 'sound/weapons/bite.ogg' - - //Space carp aren't affected by atmos. - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - - break_stuff_probability = 15 - - faction = "carp" - -/mob/living/simple_animal/hostile/carp/Process_Spacemove(var/check_drift = 0) - return 1 //No drifting in space for space carp! //original comments do not steal - -/mob/living/simple_animal/hostile/carp/FindTarget() - . = ..() - if(.) - custom_emote(1,"nashes at [.]") - -/mob/living/simple_animal/hostile/carp/AttackingTarget() - . =..() - var/mob/living/L = . - if(istype(L)) - if(prob(15)) - L.Weaken(3) +/mob/living/simple_animal/hostile/carp + name = "space carp" + desc = "A ferocious, fang-bearing creature that resembles a fish." + icon_state = "carp" + icon_living = "carp" + icon_dead = "carp_dead" + icon_gib = "carp_gib" + + faction = "carp" + maxHealth = 25 + health = 25 + speed = 4 + turns_per_move = 5 + + response_help = "pets the" + response_disarm = "gently pushes aside the" + response_harm = "hits the" + + harm_intent_damage = 8 + melee_damage_lower = 15 + melee_damage_upper = 15 + attacktext = "bitten" + attack_sound = 'sound/weapons/bite.ogg' + + //Space carp aren't affected by atmos. + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat + +/mob/living/simple_animal/hostile/carp/Process_Spacemove(var/check_drift = 0) + return 1 //No drifting in space for space carp! //original comments do not steal + +/mob/living/simple_animal/hostile/carp/set_target() + . = ..() + if(.) + custom_emote(1,"nashes at [.]") + +/mob/living/simple_animal/hostile/carp/PunchTarget() + . =..() + var/mob/living/L = . + if(istype(L)) + if(prob(15)) + L.Weaken(3) L.visible_message("\the [src] knocks down \the [L]!") \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/animals/cat.dm similarity index 52% rename from code/modules/mob/living/simple_animal/friendly/cat.dm rename to code/modules/mob/living/simple_animal/animals/cat.dm index 868bafd7ccf..808ebdb8fa6 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/animals/cat.dm @@ -6,55 +6,44 @@ item_state = "cat2" icon_living = "cat2" icon_dead = "cat2_dead" + + hostile = 1 //To mice, anyway. + investigates = 1 + specific_targets = 1 //Only targets with Found() + run_at_them = 0 //DOMESTICATED + view_range = 5 + + turns_per_move = 5 + see_in_dark = 6 + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + + min_oxy = 16 //Require atleast 16kPA oxygen + minbodytemp = 223 //Below -50 Degrees Celcius + maxbodytemp = 323 //Above 50 Degrees Celcius + + holder_type = /obj/item/weapon/holder/cat + mob_size = MOB_SMALL + + speak_chance = 1 speak = list("Meow!","Esp!","Purr!","HSSSSS") speak_emote = list("purrs", "meows") emote_hear = list("meows","mews") emote_see = list("shakes their head", "shivers") - speak_chance = 1 - turns_per_move = 5 - see_in_dark = 6 + say_maybe_target = list("Meow?","Mew?","Mao?") + say_got_target = list("MEOW!","HSSSS!","REEER!") + + meat_amount = 1 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "kicks" + var/turns_since_scan = 0 - var/mob/living/simple_animal/mouse/movement_target var/mob/flee_target - min_oxy = 16 //Require atleast 16kPA oxygen - minbodytemp = 223 //Below -50 Degrees Celcius - maxbodytemp = 323 //Above 50 Degrees Celcius - holder_type = /obj/item/weapon/holder/cat - mob_size = MOB_SMALL /mob/living/simple_animal/cat/Life() - //MICE! - if((src.loc) && isturf(src.loc)) - if(!stat && !resting && !buckled) - for(var/mob/living/simple_animal/mouse/M in loc) - if(!M.stat) - M.splat() - visible_emote(pick("bites \the [M]!","toys with \the [M].","chomps on \the [M]!")) - movement_target = null - stop_automated_movement = 0 - break - - ..() - - for(var/mob/living/simple_animal/mouse/snack in oview(src,5)) - if(snack.stat < DEAD && prob(15)) - audible_emote(pick("hisses and spits!","mrowls fiercely!","eyes [snack] hungrily.")) - break - - if(!stat && !resting && !buckled) - turns_since_scan++ - if (turns_since_scan > 5) - walk_to(src,0) - turns_since_scan = 0 - - if (flee_target) //fleeing takes precendence - handle_flee_target() - else - handle_movement_target() + . = ..() + if(!.) return if(prob(2)) //spooky var/mob/observer/dead/spook = locate() in range(src,5) @@ -68,104 +57,60 @@ var/atom/A = pick(visible) visible_emote("suddenly stops and stares at something unseen[istype(A) ? " near [A]":""].") -/mob/living/simple_animal/cat/proc/handle_movement_target() - //if our target is neither inside a turf or inside a human(???), stop - if((movement_target) && !(isturf(movement_target.loc) || ishuman(movement_target.loc) )) - movement_target = null - stop_automated_movement = 0 - //if we have no target or our current one is out of sight/too far away - if( !movement_target || !(movement_target.loc in oview(src, 4)) ) - movement_target = null - stop_automated_movement = 0 - for(var/mob/living/simple_animal/mouse/snack in oview(src)) //search for a new target - if(isturf(snack.loc) && !snack.stat) - movement_target = snack - break + handle_flee_target() - if(movement_target) - stop_automated_movement = 1 - walk_to(src,movement_target,0,3) +/mob/living/simple_animal/cat/PunchTarget() + if(istype(target_mob,/mob/living/simple_animal/mouse)) + var/mob/living/simple_animal/mouse/mouse = target_mob + mouse.splat() + visible_emote(pick("bites \the [mouse]!","toys with \the [mouse].","chomps on \the [mouse]!")) + return mouse + else + ..() + +/mob/living/simple_animal/cat/Found(var/atom/found_atom) + if(istype(found_atom,/mob/living/simple_animal/mouse) && SA_attackable(found_atom)) + return found_atom /mob/living/simple_animal/cat/proc/handle_flee_target() //see if we should stop fleeing - if (flee_target && !(flee_target.loc in view(src))) + if (flee_target && !(flee_target in ListTargets(view_range))) flee_target = null - stop_automated_movement = 0 + GiveUpMoving() - if (flee_target) + if (flee_target && !stat && !buckled) + if (resting) + lay_down() if(prob(25)) say("HSSSSS") stop_automated_movement = 1 walk_away(src, flee_target, 7, 2) -/mob/living/simple_animal/cat/proc/set_flee_target(atom/A) - if(A) - flee_target = A - turns_since_scan = 5 - -/mob/living/simple_animal/cat/attackby(var/obj/item/O, var/mob/user) - . = ..() - if(O.force) - set_flee_target(user? user : src.loc) - -/mob/living/simple_animal/cat/attack_hand(mob/living/carbon/human/M as mob) - . = ..() - if(M.a_intent == I_HURT) - set_flee_target(M) +/mob/living/simple_animal/cat/react_to_attack(var/atom/A) + if(A == src) return + flee_target = A + turns_since_scan = 5 /mob/living/simple_animal/cat/ex_act() . = ..() - set_flee_target(src.loc) - -/mob/living/simple_animal/cat/bullet_act(var/obj/item/projectile/proj) - . = ..() - set_flee_target(proj.firer? proj.firer : src.loc) - -/mob/living/simple_animal/cat/hitby(atom/movable/AM) - . = ..() - set_flee_target(AM.thrower? AM.thrower : src.loc) + react_to_attack(src.loc) //Basic friend AI /mob/living/simple_animal/cat/fluff var/mob/living/carbon/human/friend var/befriend_job = null -/mob/living/simple_animal/cat/fluff/handle_movement_target() - if (friend) - var/follow_dist = 4 - if (friend.stat >= DEAD || friend.health <= config.health_threshold_softcrit) //danger - follow_dist = 1 - else if (friend.stat || friend.health <= 50) //danger or just sleeping - follow_dist = 2 - var/near_dist = max(follow_dist - 2, 1) - var/current_dist = get_dist(src, friend) - - if (movement_target != friend) - if (current_dist > follow_dist && !istype(movement_target, /mob/living/simple_animal/mouse) && (friend in oview(src))) - //stop existing movement - walk_to(src,0) - turns_since_scan = 0 - - //walk to friend - stop_automated_movement = 1 - movement_target = friend - walk_to(src, movement_target, near_dist, 4) - - //already following and close enough, stop - else if (current_dist <= near_dist) - walk_to(src,0) - movement_target = null - stop_automated_movement = 0 - if (prob(10)) - say("Meow!") - - if (!friend || movement_target != friend) - ..() - /mob/living/simple_animal/cat/fluff/Life() - ..() - if (stat || !friend) - return - if (get_dist(src, friend) <= 1) + . = ..() + if(!. || ai_inactive || !friend) return + + var/friend_dist = get_dist(src,friend) + + if (friend_dist <= 4) + if(stance == STANCE_IDLE) + if(set_follow(friend)) + handle_stance(STANCE_FOLLOW) + + if (friend_dist <= 1) if (friend.stat >= DEAD || friend.health <= config.health_threshold_softcrit) if (prob((friend.stat < DEAD)? 50 : 15)) var/verb = pick("meows", "mews", "mrowls") @@ -213,6 +158,7 @@ item_state = "cat" icon_living = "cat" icon_dead = "cat_dead" + befriend_job = "Chief Medical Officer" /mob/living/simple_animal/cat/kitten name = "kitten" diff --git a/code/modules/mob/living/simple_animal/friendly/corgi.dm b/code/modules/mob/living/simple_animal/animals/corgi.dm similarity index 96% rename from code/modules/mob/living/simple_animal/friendly/corgi.dm rename to code/modules/mob/living/simple_animal/animals/corgi.dm index 1b5cd7e37e8..8f4adf8e540 100644 --- a/code/modules/mob/living/simple_animal/friendly/corgi.dm +++ b/code/modules/mob/living/simple_animal/animals/corgi.dm @@ -1,217 +1,227 @@ -//Corgi -/mob/living/simple_animal/corgi - name = "\improper corgi" - real_name = "corgi" - desc = "It's a corgi." - icon_state = "corgi" - icon_living = "corgi" - icon_dead = "corgi_dead" - speak = list("YAP", "Woof!", "Bark!", "AUUUUUU") - speak_emote = list("barks", "woofs") - emote_hear = list("barks", "woofs", "yaps","pants") - emote_see = list("shakes its head", "shivers") - speak_chance = 1 - turns_per_move = 10 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/corgi - meat_amount = 3 - response_help = "pets" - response_disarm = "bops" - response_harm = "kicks" - see_in_dark = 5 - mob_size = 8 - - var/obj/item/inventory_head - var/obj/item/inventory_back - -//IAN! SQUEEEEEEEEE~ -/mob/living/simple_animal/corgi/Ian - name = "Ian" - real_name = "Ian" //Intended to hold the name without altering it. - gender = MALE - desc = "It's a corgi." - var/turns_since_scan = 0 - var/obj/movement_target - response_help = "pets" - response_disarm = "bops" - response_harm = "kicks" - -/mob/living/simple_animal/corgi/Ian/Life() - ..() - - //Feeding, chasing food, FOOOOODDDD - if(!stat && !resting && !buckled) - turns_since_scan++ - if(turns_since_scan > 5) - turns_since_scan = 0 - if((movement_target) && !(isturf(movement_target.loc) || ishuman(movement_target.loc) )) - movement_target = null - stop_automated_movement = 0 - if( !movement_target || !(movement_target.loc in oview(src, 3)) ) - movement_target = null - stop_automated_movement = 0 - for(var/obj/item/weapon/reagent_containers/food/snacks/S in oview(src,3)) - if(isturf(S.loc) || ishuman(S.loc)) - movement_target = S - break - if(movement_target) - stop_automated_movement = 1 - step_to(src,movement_target,1) - sleep(3) - step_to(src,movement_target,1) - sleep(3) - step_to(src,movement_target,1) - - if(movement_target) //Not redundant due to sleeps, Item can be gone in 6 decisecomds - if (movement_target.loc.x < src.x) - set_dir(WEST) - else if (movement_target.loc.x > src.x) - set_dir(EAST) - else if (movement_target.loc.y < src.y) - set_dir(SOUTH) - else if (movement_target.loc.y > src.y) - set_dir(NORTH) - else - set_dir(SOUTH) - - if(isturf(movement_target.loc) ) - UnarmedAttack(movement_target) - else if(ishuman(movement_target.loc) && prob(20)) - visible_emote("stares at the [movement_target] that [movement_target.loc] has with sad puppy eyes.") - - if(prob(1)) - visible_emote(pick("dances around","chases their tail")) - spawn(0) - for(var/i in list(1,2,4,8,4,2,1,2,4,8,4,2,1,2,4,8,4,2)) - set_dir(i) - sleep(1) - -/obj/item/weapon/reagent_containers/food/snacks/meat/corgi - name = "Corgi meat" - desc = "Tastes like... well you know..." - -/mob/living/simple_animal/corgi/attackby(var/obj/item/O as obj, var/mob/user as mob) //Marker -Agouri - if(istype(O, /obj/item/weapon/newspaper)) - if(!stat) - for(var/mob/M in viewers(user, null)) - if ((M.client && !( M.blinded ))) - M.show_message("\blue [user] baps [name] on the nose with the rolled up [O]") - spawn(0) - for(var/i in list(1,2,4,8,4,2,1,2)) - set_dir(i) - sleep(1) - else - ..() - -/mob/living/simple_animal/corgi/regenerate_icons() - overlays = list() - - if(inventory_head) - var/head_icon_state = inventory_head.icon_state - if(health <= 0) - head_icon_state += "2" - - var/icon/head_icon = image('icons/mob/corgi_head.dmi',head_icon_state) - if(head_icon) - overlays += head_icon - - if(inventory_back) - var/back_icon_state = inventory_back.icon_state - if(health <= 0) - back_icon_state += "2" - - var/icon/back_icon = image('icons/mob/corgi_back.dmi',back_icon_state) - if(back_icon) - overlays += back_icon - - return - - -/mob/living/simple_animal/corgi/puppy - name = "\improper corgi puppy" - real_name = "corgi" - desc = "It's a corgi puppy." - icon_state = "puppy" - icon_living = "puppy" - icon_dead = "puppy_dead" - -//pupplies cannot wear anything. -/mob/living/simple_animal/corgi/puppy/Topic(href, href_list) - if(href_list["remove_inv"] || href_list["add_inv"]) - usr << "\red You can't fit this on [src]" - return - ..() - - -//LISA! SQUEEEEEEEEE~ -/mob/living/simple_animal/corgi/Lisa - name = "Lisa" - real_name = "Lisa" - gender = FEMALE - desc = "It's a corgi with a cute pink bow." - icon_state = "lisa" - icon_living = "lisa" - icon_dead = "lisa_dead" - response_help = "pets" - response_disarm = "bops" - response_harm = "kicks" - var/turns_since_scan = 0 - var/puppies = 0 - -//Lisa already has a cute bow! -/mob/living/simple_animal/corgi/Lisa/Topic(href, href_list) - if(href_list["remove_inv"] || href_list["add_inv"]) - usr << "\red [src] already has a cute bow!" - return - ..() - -/mob/living/simple_animal/corgi/Lisa/Life() - ..() - - if(!stat && !resting && !buckled) - turns_since_scan++ - if(turns_since_scan > 15) - turns_since_scan = 0 - var/alone = 1 - var/ian = 0 - for(var/mob/M in oviewers(7, src)) - if(istype(M, /mob/living/simple_animal/corgi/Ian)) - if(M.client) - alone = 0 - break - else - ian = M - else - alone = 0 - break - if(alone && ian && puppies < 4) - if(near_camera(src) || near_camera(ian)) - return - new /mob/living/simple_animal/corgi/puppy(loc) - - - if(prob(1)) - visible_emote(pick("dances around","chases her tail")) - spawn(0) - for(var/i in list(1,2,4,8,4,2,1,2,4,8,4,2,1,2,4,8,4,2)) - set_dir(i) - sleep(1) - -//Technically this should be like, its own file or something or a subset of dog but whatever. Not a coder. -/mob/living/simple_animal/corgi/tamaskan - name = "\improper tamaskan" - real_name = "tamaskan" - desc = "It's a tamaskan." - icon_state = "tamaskan" - icon_living = "tamaskan" - icon_dead = "tamaskan_dead" - -/mob/living/simple_animal/corgi/tamaskan/spice - name = "Spice" - real_name = "Spice" //Intended to hold the name without altering it. - gender = FEMALE - desc = "It's a tamaskan, the name Spice can be found on its collar." - var/turns_since_scan = 0 - var/obj/movement_target - response_help = "pets" - response_disarm = "bops" - response_harm = "kicks" \ No newline at end of file +//Corgi +/mob/living/simple_animal/corgi + name = "\improper corgi" + real_name = "corgi" + desc = "It's a corgi." + icon_state = "corgi" + icon_living = "corgi" + icon_dead = "corgi_dead" + + run_at_them = 0 + turns_per_move = 10 + + response_help = "pets" + response_disarm = "bops" + response_harm = "kicks" + + see_in_dark = 5 + mob_size = 8 + + speak_chance = 1 + speak = list("YAP", "Woof!", "Bark!", "AUUUUUU") + speak_emote = list("barks", "woofs") + emote_hear = list("barks", "woofs", "yaps","pants") + emote_see = list("shakes its head", "shivers") + + meat_amount = 3 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/corgi + + var/obj/item/inventory_head + var/obj/item/inventory_back + +//IAN! SQUEEEEEEEEE~ +/mob/living/simple_animal/corgi/Ian + name = "Ian" + real_name = "Ian" //Intended to hold the name without altering it. + gender = MALE + desc = "It's a corgi." + var/turns_since_scan = 0 + var/obj/movement_target + response_help = "pets" + response_disarm = "bops" + response_harm = "kicks" + +/mob/living/simple_animal/corgi/Ian/Life() + ..() + + //Not replacing with SA FollowTarget mechanics because Ian behaves... very... specifically. + + //Feeding, chasing food, FOOOOODDDD + if(!stat && !resting && !buckled) + turns_since_scan++ + if(turns_since_scan > 5) + turns_since_scan = 0 + if((movement_target) && !(isturf(movement_target.loc) || ishuman(movement_target.loc) )) + movement_target = null + stop_automated_movement = 0 + if( !movement_target || !(movement_target.loc in oview(src, 3)) ) + movement_target = null + stop_automated_movement = 0 + for(var/obj/item/weapon/reagent_containers/food/snacks/S in oview(src,3)) + if(isturf(S.loc) || ishuman(S.loc)) + movement_target = S + break + if(movement_target) + stop_automated_movement = 1 + step_to(src,movement_target,1) + sleep(3) + step_to(src,movement_target,1) + sleep(3) + step_to(src,movement_target,1) + + if(movement_target) //Not redundant due to sleeps, Item can be gone in 6 decisecomds + if (movement_target.loc.x < src.x) + set_dir(WEST) + else if (movement_target.loc.x > src.x) + set_dir(EAST) + else if (movement_target.loc.y < src.y) + set_dir(SOUTH) + else if (movement_target.loc.y > src.y) + set_dir(NORTH) + else + set_dir(SOUTH) + + if(isturf(movement_target.loc) ) + UnarmedAttack(movement_target) + else if(ishuman(movement_target.loc) && prob(20)) + visible_emote("stares at the [movement_target] that [movement_target.loc] has with sad puppy eyes.") + + if(prob(1)) + visible_emote(pick("dances around","chases their tail")) + spawn(0) + for(var/i in list(1,2,4,8,4,2,1,2,4,8,4,2,1,2,4,8,4,2)) + set_dir(i) + sleep(1) + +/obj/item/weapon/reagent_containers/food/snacks/meat/corgi + name = "Corgi meat" + desc = "Tastes like... well you know..." + +/mob/living/simple_animal/corgi/attackby(var/obj/item/O as obj, var/mob/user as mob) //Marker -Agouri + if(istype(O, /obj/item/weapon/newspaper)) + if(!stat) + for(var/mob/M in viewers(user, null)) + if ((M.client && !( M.blinded ))) + M.show_message("\blue [user] baps [name] on the nose with the rolled up [O]") + spawn(0) + for(var/i in list(1,2,4,8,4,2,1,2)) + set_dir(i) + sleep(1) + else + ..() + +/mob/living/simple_animal/corgi/regenerate_icons() + overlays = list() + + if(inventory_head) + var/head_icon_state = inventory_head.icon_state + if(health <= 0) + head_icon_state += "2" + + var/icon/head_icon = image('icons/mob/corgi_head.dmi',head_icon_state) + if(head_icon) + overlays += head_icon + + if(inventory_back) + var/back_icon_state = inventory_back.icon_state + if(health <= 0) + back_icon_state += "2" + + var/icon/back_icon = image('icons/mob/corgi_back.dmi',back_icon_state) + if(back_icon) + overlays += back_icon + + return + + +/mob/living/simple_animal/corgi/puppy + name = "\improper corgi puppy" + real_name = "corgi" + desc = "It's a corgi puppy." + icon_state = "puppy" + icon_living = "puppy" + icon_dead = "puppy_dead" + +//pupplies cannot wear anything. +/mob/living/simple_animal/corgi/puppy/Topic(href, href_list) + if(href_list["remove_inv"] || href_list["add_inv"]) + usr << "\red You can't fit this on [src]" + return + ..() + + +//LISA! SQUEEEEEEEEE~ +/mob/living/simple_animal/corgi/Lisa + name = "Lisa" + real_name = "Lisa" + gender = FEMALE + desc = "It's a corgi with a cute pink bow." + icon_state = "lisa" + icon_living = "lisa" + icon_dead = "lisa_dead" + response_help = "pets" + response_disarm = "bops" + response_harm = "kicks" + var/turns_since_scan = 0 + var/puppies = 0 + +//Lisa already has a cute bow! +/mob/living/simple_animal/corgi/Lisa/Topic(href, href_list) + if(href_list["remove_inv"] || href_list["add_inv"]) + usr << "\red [src] already has a cute bow!" + return + ..() + +/mob/living/simple_animal/corgi/Lisa/Life() + ..() + + if(!stat && !resting && !buckled) + turns_since_scan++ + if(turns_since_scan > 15) + turns_since_scan = 0 + var/alone = 1 + var/ian = 0 + for(var/mob/M in oviewers(7, src)) + if(istype(M, /mob/living/simple_animal/corgi/Ian)) + if(M.client) + alone = 0 + break + else + ian = M + else + alone = 0 + break + if(alone && ian && puppies < 4) + if(near_camera(src) || near_camera(ian)) + return + new /mob/living/simple_animal/corgi/puppy(loc) + + + if(prob(1)) + visible_emote(pick("dances around","chases her tail")) + spawn(0) + for(var/i in list(1,2,4,8,4,2,1,2,4,8,4,2,1,2,4,8,4,2)) + set_dir(i) + sleep(1) + +//Technically this should be like, its own file or something or a subset of dog but whatever. Not a coder. +/mob/living/simple_animal/corgi/tamaskan + name = "\improper tamaskan" + real_name = "tamaskan" + desc = "It's a tamaskan." + icon_state = "tamaskan" + icon_living = "tamaskan" + icon_dead = "tamaskan_dead" + + retaliate = 1 //Tamaskans are bigass dogs, okay? + +/mob/living/simple_animal/corgi/tamaskan/spice + name = "Spice" + real_name = "Spice" //Intended to hold the name without altering it. + gender = FEMALE + desc = "It's a tamaskan, the name Spice can be found on its collar." + var/turns_since_scan = 0 + var/obj/movement_target + response_help = "pets" + response_disarm = "bops" + response_harm = "kicks" diff --git a/code/modules/mob/living/simple_animal/friendly/crab.dm b/code/modules/mob/living/simple_animal/animals/crab.dm similarity index 84% rename from code/modules/mob/living/simple_animal/friendly/crab.dm rename to code/modules/mob/living/simple_animal/animals/crab.dm index 5b57bad674a..acb95ac64c6 100644 --- a/code/modules/mob/living/simple_animal/friendly/crab.dm +++ b/code/modules/mob/living/simple_animal/animals/crab.dm @@ -1,42 +1,46 @@ -//Look Sir, free crabs! -/mob/living/simple_animal/crab - name = "crab" - desc = "A hard-shelled crustacean. Seems quite content to lounge around all the time." - icon_state = "crab" - icon_living = "crab" - icon_dead = "crab_dead" - mob_size = MOB_SMALL - speak_emote = list("clicks") - emote_hear = list("clicks") - emote_see = list("clacks") - speak_chance = 1 - turns_per_move = 5 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "stomps" - stop_automated_movement = 1 - friendly = "pinches" - mob_size = 5 - var/obj/item/inventory_head - var/obj/item/inventory_mask - -/mob/living/simple_animal/crab/Life() - ..() - //CRAB movement - if(!ckey && !stat) - if(isturf(src.loc) && !resting && !buckled) //This is so it only moves if it's not inside a closet, gentics machine, etc. - turns_since_move++ - if(turns_since_move >= turns_per_move) - Move(get_step(src,pick(4,8))) - turns_since_move = 0 - regenerate_icons() - -//COFFEE! SQUEEEEEEEEE! -/mob/living/simple_animal/crab/Coffee - name = "Coffee" - real_name = "Coffee" - desc = "It's Coffee, the other pet!" - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "stomps" +//Look Sir, free crabs! +/mob/living/simple_animal/crab + name = "crab" + desc = "A hard-shelled crustacean. Seems quite content to lounge around all the time." + icon_state = "crab" + icon_living = "crab" + icon_dead = "crab_dead" + + wander = 0 + stop_automated_movement = 1 + turns_per_move = 5 + mob_size = MOB_SMALL + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "stomps" + friendly = "pinches" + + speak_chance = 1 + speak_emote = list("clicks") + emote_hear = list("clicks") + emote_see = list("clacks") + + var/obj/item/inventory_head + var/obj/item/inventory_mask + +/mob/living/simple_animal/crab/Life() + ..() + //CRAB movement, I'm not porting this up to SA because... "sideways-only movement" var nothanks + if(!ckey && !stat) + if(isturf(src.loc) && !resting && !buckled) //This is so it only moves if it's not inside a closet, gentics machine, etc. + lifes_since_move++ + if(lifes_since_move >= turns_per_move) + Move(get_step(src,pick(4,8))) + lifes_since_move = 0 + regenerate_icons() + +//COFFEE! SQUEEEEEEEEE! +/mob/living/simple_animal/crab/Coffee + name = "Coffee" + real_name = "Coffee" + desc = "It's Coffee, the other pet!" + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "stomps" diff --git a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm b/code/modules/mob/living/simple_animal/animals/farm_animals.dm similarity index 89% rename from code/modules/mob/living/simple_animal/friendly/farm_animals.dm rename to code/modules/mob/living/simple_animal/animals/farm_animals.dm index 68578ca08ed..fc21fbddfde 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/animals/farm_animals.dm @@ -1,268 +1,282 @@ -//goat -/mob/living/simple_animal/hostile/retaliate/goat - name = "goat" - desc = "Not known for their pleasant disposition." - icon_state = "goat" - icon_living = "goat" - icon_dead = "goat_dead" - speak = list("EHEHEHEHEH","eh?") - speak_emote = list("brays") - emote_hear = list("brays") - emote_see = list("shakes its head", "stamps a foot", "glares around") - speak_chance = 1 - turns_per_move = 5 - see_in_dark = 6 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - meat_amount = 4 - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "kicks" - faction = "goat" - attacktext = "kicked" - health = 40 - melee_damage_lower = 1 - melee_damage_upper = 5 - var/datum/reagents/udder = null - -/mob/living/simple_animal/hostile/retaliate/goat/New() - udder = new(50) - udder.my_atom = src - ..() - -/mob/living/simple_animal/hostile/retaliate/goat/Life() - . = ..() - if(.) - //chance to go crazy and start wacking stuff - if(!enemies.len && prob(1)) - Retaliate() - - if(enemies.len && prob(10)) - enemies = list() - LoseTarget() - src.visible_message("\blue [src] calms down.") - - if(stat == CONSCIOUS) - if(udder && prob(5)) - udder.add_reagent("milk", rand(5, 10)) - - if(locate(/obj/effect/plant) in loc) - var/obj/effect/plant/SV = locate() in loc - SV.die_off(1) - - if(locate(/obj/machinery/portable_atmospherics/hydroponics/soil/invisible) in loc) - var/obj/machinery/portable_atmospherics/hydroponics/soil/invisible/SP = locate() in loc - qdel(SP) - - if(!pulledby) - var/obj/effect/plant/food - food = locate(/obj/effect/plant) in oview(5,loc) - if(food) - var/step = get_step_to(src, food, 0) - Move(step) - -/mob/living/simple_animal/hostile/retaliate/goat/Retaliate() - ..() - if(stat == CONSCIOUS) - visible_message("[src] gets an evil-looking gleam in their eye.") - -/mob/living/simple_animal/hostile/retaliate/goat/Move() - ..() - if(!stat) - for(var/obj/effect/plant/SV in loc) - SV.die_off(1) - -/mob/living/simple_animal/hostile/retaliate/goat/attackby(var/obj/item/O as obj, var/mob/user as mob) - var/obj/item/weapon/reagent_containers/glass/G = O - if(stat == CONSCIOUS && istype(G) && G.is_open_container()) - user.visible_message("[user] milks [src] using \the [O].") - var/transfered = udder.trans_id_to(G, "milk", rand(5,10)) - if(G.reagents.total_volume >= G.volume) - user << "\red The [O] is full." - if(!transfered) - user << "\red The udder is dry. Wait a bit longer..." - else - ..() -//cow -/mob/living/simple_animal/cow - name = "cow" - desc = "Known for their milk, just don't tip them over." - icon_state = "cow" - icon_living = "cow" - icon_dead = "cow_dead" - icon_gib = "cow_gib" - speak = list("moo?","moo","MOOOOOO") - speak_emote = list("moos","moos hauntingly") - emote_hear = list("brays") - emote_see = list("shakes its head") - speak_chance = 1 - turns_per_move = 5 - see_in_dark = 6 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - meat_amount = 6 - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "kicks" - attacktext = "kicked" - health = 50 - var/datum/reagents/udder = null - -/mob/living/simple_animal/cow/New() - udder = new(50) - udder.my_atom = src - ..() - -/mob/living/simple_animal/cow/attackby(var/obj/item/O as obj, var/mob/user as mob) - var/obj/item/weapon/reagent_containers/glass/G = O - if(stat == CONSCIOUS && istype(G) && G.is_open_container()) - user.visible_message("[user] milks [src] using \the [O].") - var/transfered = udder.trans_id_to(G, "milk", rand(5,10)) - if(G.reagents.total_volume >= G.volume) - user << "\red The [O] is full." - if(!transfered) - user << "\red The udder is dry. Wait a bit longer..." - else - ..() - -/mob/living/simple_animal/cow/Life() - . = ..() - if(stat == CONSCIOUS) - if(udder && prob(5)) - udder.add_reagent("milk", rand(5, 10)) - -/mob/living/simple_animal/cow/attack_hand(mob/living/carbon/M as mob) - if(!stat && M.a_intent == I_DISARM && icon_state != icon_dead) - M.visible_message("[M] tips over [src].","You tip over [src].") - Weaken(30) - icon_state = icon_dead - spawn(rand(20,50)) - if(!stat && M) - icon_state = icon_living - var/list/responses = list( "[src] looks at you imploringly.", - "[src] looks at you pleadingly", - "[src] looks at you with a resigned expression.", - "[src] seems resigned to its fate.") - M << pick(responses) - else - ..() - -/mob/living/simple_animal/chick - name = "\improper chick" - desc = "Adorable! They make such a racket though." - icon_state = "chick" - icon_living = "chick" - icon_dead = "chick_dead" - icon_gib = "chick_gib" - speak = list("Cherp.","Cherp?","Chirrup.","Cheep!") - speak_emote = list("cheeps") - emote_hear = list("cheeps") - emote_see = list("pecks at the ground","flaps its tiny wings") - speak_chance = 2 - turns_per_move = 2 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - meat_amount = 1 - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "kicks" - attacktext = "kicked" - health = 1 - var/amount_grown = 0 - pass_flags = PASSTABLE | PASSGRILLE - mob_size = MOB_MINISCULE - -/mob/living/simple_animal/chick/New() - ..() - pixel_x = rand(-6, 6) - pixel_y = rand(0, 10) - -/mob/living/simple_animal/chick/Life() - . =..() - if(!.) - return - if(!stat) - amount_grown += rand(1,2) - if(amount_grown >= 100) - new /mob/living/simple_animal/chicken(src.loc) - qdel(src) - -var/const/MAX_CHICKENS = 50 -var/global/chicken_count = 0 - -/mob/living/simple_animal/chicken - name = "\improper chicken" - desc = "Hopefully the eggs are good this season." - icon_state = "chicken" - icon_living = "chicken" - icon_dead = "chicken_dead" - speak = list("Cluck!","BWAAAAARK BWAK BWAK BWAK!","Bwaak bwak.") - speak_emote = list("clucks","croons") - emote_hear = list("clucks") - emote_see = list("pecks at the ground","flaps its wings viciously") - speak_chance = 2 - turns_per_move = 3 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - meat_amount = 2 - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "kicks" - attacktext = "kicked" - health = 10 - var/eggsleft = 0 - var/body_color - pass_flags = PASSTABLE - mob_size = MOB_SMALL - -/mob/living/simple_animal/chicken/New() - ..() - if(!body_color) - body_color = pick( list("brown","black","white") ) - icon_state = "chicken_[body_color]" - icon_living = "chicken_[body_color]" - icon_dead = "chicken_[body_color]_dead" - pixel_x = rand(-6, 6) - pixel_y = rand(0, 10) - chicken_count += 1 - -/mob/living/simple_animal/chicken/death() - ..() - chicken_count -= 1 - -/mob/living/simple_animal/chicken/attackby(var/obj/item/O as obj, var/mob/user as mob) - if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/grown)) //feedin' dem chickens - var/obj/item/weapon/reagent_containers/food/snacks/grown/G = O - if(G.seed && G.seed.kitchen_tag == "wheat") - if(!stat && eggsleft < 8) - user.visible_message("\blue [user] feeds [O] to [name]! It clucks happily.","\blue You feed [O] to [name]! It clucks happily.") - user.drop_item() - qdel(O) - eggsleft += rand(1, 4) - else - user << "\blue [name] doesn't seem hungry!" - else - user << "[name] doesn't seem interested in that." - else - ..() - -/mob/living/simple_animal/chicken/Life() - . =..() - if(!.) - return - if(!stat && prob(3) && eggsleft > 0) - visible_message("[src] [pick("lays an egg.","squats down and croons.","begins making a huge racket.","begins clucking raucously.")]") - eggsleft-- - var/obj/item/weapon/reagent_containers/food/snacks/egg/E = new(get_turf(src)) - E.pixel_x = rand(-6,6) - E.pixel_y = rand(-6,6) - if(chicken_count < MAX_CHICKENS && prob(10)) - processing_objects.Add(E) - -/obj/item/weapon/reagent_containers/food/snacks/egg/var/amount_grown = 0 -/obj/item/weapon/reagent_containers/food/snacks/egg/process() - if(isturf(loc)) - amount_grown += rand(1,2) - if(amount_grown >= 100) - visible_message("[src] hatches with a quiet cracking sound.") - new /mob/living/simple_animal/chick(get_turf(src)) - processing_objects.Remove(src) - qdel(src) - else - processing_objects.Remove(src) +//goat +/mob/living/simple_animal/retaliate/goat + name = "goat" + desc = "Not known for their pleasant disposition." + icon_state = "goat" + icon_living = "goat" + icon_dead = "goat_dead" + + faction = "goat" + + health = 40 + turns_per_move = 5 + see_in_dark = 6 + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + + melee_damage_lower = 1 + melee_damage_upper = 5 + attacktext = "kicked" + + speak_chance = 1 + speak = list("EHEHEHEHEH","eh?") + speak_emote = list("brays") + emote_hear = list("brays") + emote_see = list("shakes its head", "stamps a foot", "glares around") + + meat_amount = 4 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + var/datum/reagents/udder = null + +/mob/living/simple_animal/retaliate/goat/New() + udder = new(50) + udder.my_atom = src + ..() + +/mob/living/simple_animal/retaliate/goat/Life() + . = ..() + if(.) + if(stat == CONSCIOUS) + if(udder && prob(5)) + udder.add_reagent("milk", rand(5, 10)) + + if(locate(/obj/effect/plant) in loc) + var/obj/effect/plant/SV = locate() in loc + SV.die_off(1) + + if(locate(/obj/machinery/portable_atmospherics/hydroponics/soil/invisible) in loc) + var/obj/machinery/portable_atmospherics/hydroponics/soil/invisible/SP = locate() in loc + qdel(SP) + + if(!pulledby) + var/obj/effect/plant/food + food = locate(/obj/effect/plant) in oview(5,loc) + if(food) + var/step = get_step_to(src, food, 0) + Move(step) + +/mob/living/simple_animal/retaliate/goat/react_to_attack() + . = ..() + if(.) + visible_message("[src] gets an evil-looking gleam in their eye.") + +/mob/living/simple_animal/retaliate/goat/Move() + ..() + if(!stat) + for(var/obj/effect/plant/SV in loc) + SV.die_off(1) + +/mob/living/simple_animal/retaliate/goat/attackby(var/obj/item/O as obj, var/mob/user as mob) + var/obj/item/weapon/reagent_containers/glass/G = O + if(stat == CONSCIOUS && istype(G) && G.is_open_container()) + user.visible_message("[user] milks [src] using \the [O].") + var/transfered = udder.trans_id_to(G, "milk", rand(5,10)) + if(G.reagents.total_volume >= G.volume) + user << "\red The [O] is full." + if(!transfered) + user << "\red The udder is dry. Wait a bit longer..." + else + ..() +//cow +/mob/living/simple_animal/cow + name = "cow" + desc = "Known for their milk, just don't tip them over." + icon_state = "cow" + icon_living = "cow" + icon_dead = "cow_dead" + icon_gib = "cow_gib" + + health = 50 + turns_per_move = 5 + see_in_dark = 6 + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + attacktext = "kicked" + + speak_chance = 1 + speak = list("moo?","moo","MOOOOOO") + speak_emote = list("moos","moos hauntingly") + emote_hear = list("brays") + emote_see = list("shakes its head") + + meat_amount = 6 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + var/datum/reagents/udder = null + +/mob/living/simple_animal/cow/New() + udder = new(50) + udder.my_atom = src + ..() + +/mob/living/simple_animal/cow/attackby(var/obj/item/O as obj, var/mob/user as mob) + var/obj/item/weapon/reagent_containers/glass/G = O + if(stat == CONSCIOUS && istype(G) && G.is_open_container()) + user.visible_message("[user] milks [src] using \the [O].") + var/transfered = udder.trans_id_to(G, "milk", rand(5,10)) + if(G.reagents.total_volume >= G.volume) + user << "\red The [O] is full." + if(!transfered) + user << "\red The udder is dry. Wait a bit longer..." + else + ..() + +/mob/living/simple_animal/cow/Life() + . = ..() + if(stat == CONSCIOUS) + if(udder && prob(5)) + udder.add_reagent("milk", rand(5, 10)) + +/mob/living/simple_animal/cow/attack_hand(mob/living/carbon/M as mob) + if(!stat && M.a_intent == I_DISARM && icon_state != icon_dead) + M.visible_message("[M] tips over [src].","You tip over [src].") + Weaken(30) + icon_state = icon_dead + spawn(rand(20,50)) + if(!stat && M) + icon_state = icon_living + var/list/responses = list( "[src] looks at you imploringly.", + "[src] looks at you pleadingly", + "[src] looks at you with a resigned expression.", + "[src] seems resigned to its fate.") + M << pick(responses) + else + ..() + +/mob/living/simple_animal/chick + name = "\improper chick" + desc = "Adorable! They make such a racket though." + icon_state = "chick" + icon_living = "chick" + icon_dead = "chick_dead" + icon_gib = "chick_gib" + + health = 1 + turns_per_move = 2 + + pass_flags = PASSTABLE | PASSGRILLE + mob_size = MOB_MINISCULE + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + attacktext = "kicked" + + speak_chance = 2 + speak = list("Cherp.","Cherp?","Chirrup.","Cheep!") + speak_emote = list("cheeps") + emote_hear = list("cheeps") + emote_see = list("pecks at the ground","flaps its tiny wings") + + meat_amount = 1 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + var/amount_grown = 0 + +/mob/living/simple_animal/chick/New() + ..() + pixel_x = rand(-6, 6) + pixel_y = rand(0, 10) + +/mob/living/simple_animal/chick/Life() + . =..() + if(!.) + return + if(!stat) + amount_grown += rand(1,2) + if(amount_grown >= 100) + new /mob/living/simple_animal/chicken(src.loc) + qdel(src) + +var/const/MAX_CHICKENS = 50 +var/global/chicken_count = 0 + +/mob/living/simple_animal/chicken + name = "\improper chicken" + desc = "Hopefully the eggs are good this season." + icon_state = "chicken" + icon_living = "chicken" + icon_dead = "chicken_dead" + + health = 10 + turns_per_move = 3 + pass_flags = PASSTABLE + mob_size = MOB_SMALL + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + attacktext = "kicked" + + speak_chance = 2 + speak = list("Cluck!","BWAAAAARK BWAK BWAK BWAK!","Bwaak bwak.") + speak_emote = list("clucks","croons") + emote_hear = list("clucks") + emote_see = list("pecks at the ground","flaps its wings viciously") + + meat_amount = 2 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + var/eggsleft = 0 + var/body_color + +/mob/living/simple_animal/chicken/New() + ..() + if(!body_color) + body_color = pick( list("brown","black","white") ) + icon_state = "chicken_[body_color]" + icon_living = "chicken_[body_color]" + icon_dead = "chicken_[body_color]_dead" + pixel_x = rand(-6, 6) + pixel_y = rand(0, 10) + chicken_count += 1 + +/mob/living/simple_animal/chicken/death() + ..() + chicken_count -= 1 + +/mob/living/simple_animal/chicken/attackby(var/obj/item/O as obj, var/mob/user as mob) + if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/grown)) //feedin' dem chickens + var/obj/item/weapon/reagent_containers/food/snacks/grown/G = O + if(G.seed && G.seed.kitchen_tag == "wheat") + if(!stat && eggsleft < 8) + user.visible_message("\blue [user] feeds [O] to [name]! It clucks happily.","\blue You feed [O] to [name]! It clucks happily.") + user.drop_item() + qdel(O) + eggsleft += rand(1, 4) + else + user << "\blue [name] doesn't seem hungry!" + else + user << "[name] doesn't seem interested in that." + else + ..() + +/mob/living/simple_animal/chicken/Life() + . =..() + if(!.) + return + if(!stat && prob(3) && eggsleft > 0) + visible_message("[src] [pick("lays an egg.","squats down and croons.","begins making a huge racket.","begins clucking raucously.")]") + eggsleft-- + var/obj/item/weapon/reagent_containers/food/snacks/egg/E = new(get_turf(src)) + E.pixel_x = rand(-6,6) + E.pixel_y = rand(-6,6) + if(chicken_count < MAX_CHICKENS && prob(10)) + processing_objects.Add(E) + +/obj/item/weapon/reagent_containers/food/snacks/egg/var/amount_grown = 0 +/obj/item/weapon/reagent_containers/food/snacks/egg/process() + if(isturf(loc)) + amount_grown += rand(1,2) + if(amount_grown >= 100) + visible_message("[src] hatches with a quiet cracking sound.") + new /mob/living/simple_animal/chick(get_turf(src)) + processing_objects.Remove(src) + qdel(src) + else + processing_objects.Remove(src) diff --git a/code/modules/mob/living/simple_animal/animals/giant_spider.dm b/code/modules/mob/living/simple_animal/animals/giant_spider.dm new file mode 100644 index 00000000000..ed692ab237f --- /dev/null +++ b/code/modules/mob/living/simple_animal/animals/giant_spider.dm @@ -0,0 +1,239 @@ + +#define SPINNING_WEB 1 +#define LAYING_EGGS 2 +#define MOVING_TO_TARGET 3 +#define SPINNING_COCOON 4 + +//basic spider mob, these generally guard nests +/mob/living/simple_animal/hostile/giant_spider + name = "giant spider" + desc = "Furry and black, it makes you shudder to look at it. This one has deep red eyes." + icon_state = "guard" + icon_living = "guard" + icon_dead = "guard_dead" + + faction = "spiders" + maxHealth = 200 + health = 200 + pass_flags = PASSTABLE + move_to_delay = 6 + speed = 3 + + stop_when_pulled = 0 + turns_per_move = 5 + see_in_dark = 10 + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "punches" + + melee_damage_lower = 15 + melee_damage_upper = 20 + heat_damage_per_tick = 20 + cold_damage_per_tick = 20 + + speak_chance = 5 + speak_emote = list("chitters") + emote_hear = list("chitters") + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat + + var/busy = 0 + var/poison_per_bite = 5 + var/poison_chance = 10 + var/poison_type = "spidertoxin" + +//nursemaids - these create webs and eggs +/mob/living/simple_animal/hostile/giant_spider/nurse + desc = "Furry and black, it makes you shudder to look at it. This one has brilliant green eyes." + icon_state = "nurse" + icon_living = "nurse" + icon_dead = "nurse_dead" + + maxHealth = 40 + health = 40 + + melee_damage_lower = 5 + melee_damage_upper = 10 + poison_per_bite = 7 + poison_type = "stoxin" + + var/fed = 0 + var/atom/cocoon_target + +//hunters have the most poison and move the fastest, so they can find prey +/mob/living/simple_animal/hostile/giant_spider/hunter + desc = "Furry and black, it makes you shudder to look at it. This one has sparkling purple eyes." + icon_state = "hunter" + icon_living = "hunter" + icon_dead = "hunter_dead" + + maxHealth = 120 + health = 120 + move_to_delay = 4 + + melee_damage_lower = 10 + melee_damage_upper = 20 + + poison_per_bite = 5 + +/mob/living/simple_animal/hostile/giant_spider/New(var/location, var/atom/parent) + get_light_and_color(parent) + ..() + +/mob/living/simple_animal/hostile/giant_spider/PunchTarget() + . = ..() + if(isliving(.)) + var/mob/living/L = . + if(L.reagents) + L.reagents.add_reagent(poison_type, poison_per_bite) + if(prob(poison_chance)) + L << "You feel a tiny prick." + L.reagents.add_reagent(poison_type, poison_per_bite) + +/mob/living/simple_animal/hostile/giant_spider/nurse/PunchTarget() + . = ..() + if(ishuman(.)) + var/mob/living/carbon/human/H = . + if(prob(5)) + var/obj/item/organ/external/O = pick(H.organs) + if(!(O.robotic >= ORGAN_ROBOT)) + var/eggcount + for(var/obj/I in O.implants) + if(istype(I, /obj/effect/spider/eggcluster)) + eggcount ++ + if(!eggcount) + var/eggs = PoolOrNew(/obj/effect/spider/eggcluster/small, list(O, src)) + O.implants += eggs + H << "The [src] injects something into your [O.name]!" + +/mob/living/simple_animal/hostile/giant_spider/handle_stance() + . = ..() + if(ai_inactive) return + + switch(stance) + if(STANCE_IDLE) + //1% chance to skitter madly away + if(!busy && prob(1)) + /*var/list/move_targets = list() + for(var/turf/T in orange(20, src)) + move_targets.Add(T)*/ + stop_automated_movement = 1 + walk_to(src, pick(orange(20, src)), 1, move_to_delay) + spawn(5 SECONDS) + stop_automated_movement = 0 + walk(src,0) + +/mob/living/simple_animal/hostile/giant_spider/nurse/proc/GiveUp(var/C) + spawn(10 SECONDS) + if(busy == MOVING_TO_TARGET) + if(cocoon_target == C && get_dist(src,cocoon_target) > 1) + cocoon_target = null + busy = 0 + stop_automated_movement = 0 + +/mob/living/simple_animal/hostile/giant_spider/nurse/Life() + . = ..() + if(!. || ai_inactive) return + + if(stance == STANCE_IDLE) + var/list/can_see = view(src, 10) + //30% chance to stop wandering and do something + if(!busy && prob(30)) + //first, check for potential food nearby to cocoon + for(var/mob/living/C in can_see) + if(C.stat) + cocoon_target = C + busy = MOVING_TO_TARGET + walk_to(src, C, 1, move_to_delay) + //give up if we can't reach them after 10 seconds + GiveUp(C) + return + + //second, spin a sticky spiderweb on this tile + var/obj/effect/spider/stickyweb/W = locate() in get_turf(src) + if(!W) + busy = SPINNING_WEB + src.visible_message("\The [src] begins to secrete a sticky substance.") + stop_automated_movement = 1 + spawn(40) + if(busy == SPINNING_WEB) + new /obj/effect/spider/stickyweb(src.loc) + busy = 0 + stop_automated_movement = 0 + else + //third, lay an egg cluster there + var/obj/effect/spider/eggcluster/E = locate() in get_turf(src) + if(!E && fed > 0) + busy = LAYING_EGGS + src.visible_message("\The [src] begins to lay a cluster of eggs.") + stop_automated_movement = 1 + spawn(50) + if(busy == LAYING_EGGS) + E = locate() in get_turf(src) + if(!E) + PoolOrNew(/obj/effect/spider/eggcluster, list(loc, src)) + fed-- + busy = 0 + stop_automated_movement = 0 + else + //fourthly, cocoon any nearby items so those pesky pinkskins can't use them + for(var/obj/O in can_see) + + if(O.anchored) + continue + + if(istype(O, /obj/item) || istype(O, /obj/structure) || istype(O, /obj/machinery)) + cocoon_target = O + busy = MOVING_TO_TARGET + stop_automated_movement = 1 + walk_to(src, O, 1, move_to_delay) + //give up if we can't reach them after 10 seconds + GiveUp(O) + + else if(busy == MOVING_TO_TARGET && cocoon_target) + if(get_dist(src, cocoon_target) <= 1) + busy = SPINNING_COCOON + src.visible_message("\The [src] begins to secrete a sticky substance around \the [cocoon_target].") + stop_automated_movement = 1 + walk(src,0) + spawn(50) + if(busy == SPINNING_COCOON) + if(cocoon_target && istype(cocoon_target.loc, /turf) && get_dist(src,cocoon_target) <= 1) + var/obj/effect/spider/cocoon/C = new(cocoon_target.loc) + var/large_cocoon = 0 + C.pixel_x = cocoon_target.pixel_x + C.pixel_y = cocoon_target.pixel_y + for(var/mob/living/M in C.loc) + if(istype(M, /mob/living/simple_animal/hostile/giant_spider)) + continue + large_cocoon = 1 + fed++ + src.visible_message("\The [src] sticks a proboscis into \the [cocoon_target] and sucks a viscous substance out.") + M.forceMove(C) + C.pixel_x = M.pixel_x + C.pixel_y = M.pixel_y + break + for(var/obj/item/I in C.loc) + I.forceMove(C) + for(var/obj/structure/S in C.loc) + if(!S.anchored) + S.forceMove(C) + large_cocoon = 1 + for(var/obj/machinery/M in C.loc) + if(!M.anchored) + M.forceMove(C) + large_cocoon = 1 + if(large_cocoon) + C.icon_state = pick("cocoon_large1","cocoon_large2","cocoon_large3") + busy = 0 + stop_automated_movement = 0 + + else + busy = 0 + stop_automated_movement = 0 + +#undef SPINNING_WEB +#undef LAYING_EGGS +#undef MOVING_TO_TARGET +#undef SPINNING_COCOON diff --git a/code/modules/mob/living/simple_animal/hostile/goose.dm b/code/modules/mob/living/simple_animal/animals/goose.dm similarity index 55% rename from code/modules/mob/living/simple_animal/hostile/goose.dm rename to code/modules/mob/living/simple_animal/animals/goose.dm index 0f2c4af6117..217ea0b0246 100644 --- a/code/modules/mob/living/simple_animal/hostile/goose.dm +++ b/code/modules/mob/living/simple_animal/animals/goose.dm @@ -1,5 +1,3 @@ - - /mob/living/simple_animal/hostile/goose name = "space goose" desc = "That's no duck. That's a space goose. You have a bad feeling about this." @@ -7,15 +5,18 @@ icon_living = "goose" icon_dead = "goose_dead" icon_gib = "generic_gib" - speak_chance = 0 + + faction = "geese" + + maxHealth = 15 + health = 15 + speed = 4 + turns_per_move = 5 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + response_help = "pets the" response_disarm = "gently pushes aside the" response_harm = "hits the" - speed = 4 - maxHealth = 15 //nothing an unarmed crewmember shouldn't be able to stomp into the dirt, if they're alone. - health = 15 harm_intent_damage = 5 melee_damage_lower = 5 //they're meant to be annoying, not threatening. @@ -23,12 +24,34 @@ attacktext = "pecked" attack_sound = 'sound/weapons/bite.ogg' - break_stuff_probability = 5 + //SPACE geese aren't affected by atmos. + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 - faction = "geese" + speak_chance = 10 + speak = list("HONK!") + emote_hear = list("honks loudly!") + emote_see = list() + say_understood = list() + say_cannot = list() + say_maybe_target = list("Honk?") + say_got_target = list("HONK!!!") + reactions = list() -/mob/living/simple_animal/hostile/goose/FindTarget() + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + +/mob/living/simple_animal/hostile/goose/set_target() . = ..() if(.) - custom_emote(1,"flaps and honks at [.]!") \ No newline at end of file + custom_emote(1,"flaps and honks at [.]!") + +/mob/living/simple_animal/hostile/goose/Process_Spacemove(var/check_drift = 0) + return diff --git a/code/modules/mob/living/simple_animal/friendly/lizard.dm b/code/modules/mob/living/simple_animal/animals/lizard.dm similarity index 95% rename from code/modules/mob/living/simple_animal/friendly/lizard.dm rename to code/modules/mob/living/simple_animal/animals/lizard.dm index fe1ab1dcd05..5c986d21bba 100644 --- a/code/modules/mob/living/simple_animal/friendly/lizard.dm +++ b/code/modules/mob/living/simple_animal/animals/lizard.dm @@ -1,17 +1,22 @@ -/mob/living/simple_animal/lizard - name = "Lizard" - desc = "A cute tiny lizard." - icon = 'icons/mob/critter.dmi' - icon_state = "lizard" - icon_living = "lizard" - icon_dead = "lizard-dead" - speak_emote = list("hisses") - health = 5 - maxHealth = 5 - attacktext = "bitten" - melee_damage_lower = 1 - melee_damage_upper = 2 - response_help = "pets" - response_disarm = "shoos" - response_harm = "stomps on" - mob_size = MOB_MINISCULE +/mob/living/simple_animal/lizard + name = "Lizard" + desc = "A cute tiny lizard." + icon = 'icons/mob/critter.dmi' + icon_state = "lizard" + icon_living = "lizard" + icon_dead = "lizard-dead" + + health = 5 + maxHealth = 5 + mob_size = MOB_MINISCULE + + response_help = "pets" + response_disarm = "shoos" + response_harm = "stomps on" + + attacktext = "bitten" + melee_damage_lower = 1 + melee_damage_upper = 2 + + speak_chance = 1 + speak_emote = list("hisses") diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/animals/mouse.dm similarity index 89% rename from code/modules/mob/living/simple_animal/friendly/mouse.dm rename to code/modules/mob/living/simple_animal/animals/mouse.dm index cd545e0a87d..43b12961bd6 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/animals/mouse.dm @@ -1,130 +1,136 @@ -/mob/living/simple_animal/mouse - name = "mouse" - real_name = "mouse" - desc = "It's a small rodent." - icon_state = "mouse_gray" - item_state = "mouse_gray" - icon_living = "mouse_gray" - icon_dead = "mouse_gray_dead" - speak = list("Squeek!","SQUEEK!","Squeek?") - speak_emote = list("squeeks","squeeks","squiks") - emote_hear = list("squeeks","squeaks","squiks") - emote_see = list("runs in a circle", "shakes", "scritches at something") - pass_flags = PASSTABLE - speak_chance = 1 - turns_per_move = 5 - see_in_dark = 6 - maxHealth = 5 - health = 5 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "stamps on" - density = 0 - var/body_color //brown, gray and white, leave blank for random - layer = MOB_LAYER - min_oxy = 16 //Require atleast 16kPA oxygen - minbodytemp = 223 //Below -50 Degrees Celcius - maxbodytemp = 323 //Above 50 Degrees Celcius - universal_speak = 0 - universal_understand = 1 - holder_type = /obj/item/weapon/holder/mouse - mob_size = MOB_MINISCULE - - can_pull_size = ITEMSIZE_TINY - can_pull_mobs = MOB_PULL_NONE - -/mob/living/simple_animal/mouse/Life() - ..() - if(!stat && prob(speak_chance)) - for(var/mob/M in view()) - M << 'sound/effects/mousesqueek.ogg' - - if(!ckey && stat == CONSCIOUS && prob(0.5)) - stat = UNCONSCIOUS - icon_state = "mouse_[body_color]_sleep" - wander = 0 - speak_chance = 0 - //snuffles - else if(stat == UNCONSCIOUS) - if(ckey || prob(1)) - stat = CONSCIOUS - icon_state = "mouse_[body_color]" - wander = 1 - else if(prob(5)) - audible_emote("snuffles.") - -/mob/living/simple_animal/mouse/lay_down() //Simply turns sprite into sleeping and back upon using "Rest". - ..() - icon_state = resting ? "mouse_[body_color]_sleep" : "mouse_[body_color]" - -/mob/living/simple_animal/mouse/New() - ..() - - verbs += /mob/living/proc/ventcrawl - verbs += /mob/living/proc/hide - - if(name == initial(name)) - name = "[name] ([rand(1, 1000)])" - real_name = name - - if(!body_color) - body_color = pick( list("brown","gray","white") ) - icon_state = "mouse_[body_color]" - item_state = "mouse_[body_color]" - icon_living = "mouse_[body_color]" - icon_dead = "mouse_[body_color]_dead" - desc = "It's a small [body_color] rodent, often seen hiding in maintenance areas and making a nuisance of itself." - -/mob/living/simple_animal/mouse/proc/splat() - src.health = 0 - src.stat = DEAD - src.icon_dead = "mouse_[body_color]_splat" - src.icon_state = "mouse_[body_color]_splat" - layer = MOB_LAYER - if(client) - client.time_died_as_mouse = world.time - - -/mob/living/simple_animal/mouse/Crossed(AM as mob|obj) - if( ishuman(AM) ) - if(!stat) - var/mob/M = AM - M << "\blue \icon[src] Squeek!" - M << 'sound/effects/mousesqueek.ogg' - ..() - -/mob/living/simple_animal/mouse/death() - layer = MOB_LAYER - if(client) - client.time_died_as_mouse = world.time - ..() - -/* - * Mouse types - */ - -/mob/living/simple_animal/mouse/white - body_color = "white" - icon_state = "mouse_white" - -/mob/living/simple_animal/mouse/gray - body_color = "gray" - icon_state = "mouse_gray" - -/mob/living/simple_animal/mouse/brown - body_color = "brown" - icon_state = "mouse_brown" - -//TOM IS ALIVE! SQUEEEEEEEE~K :) -/mob/living/simple_animal/mouse/brown/Tom - name = "Tom" - desc = "Jerry the cat is not amused." - -/mob/living/simple_animal/mouse/brown/Tom/New() - ..() - // Change my name back, don't want to be named Tom (666) - name = initial(name) - -/mob/living/simple_animal/mouse/cannot_use_vents() - return +/mob/living/simple_animal/mouse + name = "mouse" + real_name = "mouse" + desc = "It's a small rodent." + icon_state = "mouse_gray" + item_state = "mouse_gray" + icon_living = "mouse_gray" + icon_dead = "mouse_gray_dead" + + maxHealth = 5 + health = 5 + + turns_per_move = 5 + see_in_dark = 6 + universal_understand = 1 + + mob_size = MOB_MINISCULE + pass_flags = PASSTABLE + can_pull_size = ITEMSIZE_TINY + can_pull_mobs = MOB_PULL_NONE + layer = MOB_LAYER + density = 0 + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "stamps on" + + min_oxy = 16 //Require atleast 16kPA oxygen + minbodytemp = 223 //Below -50 Degrees Celcius + maxbodytemp = 323 //Above 50 Degrees Celcius + + speak_chance = 1 + speak = list("Squeek!","SQUEEK!","Squeek?") + speak_emote = list("squeeks","squeeks","squiks") + emote_hear = list("squeeks","squeaks","squiks") + emote_see = list("runs in a circle", "shakes", "scritches at something") + + holder_type = /obj/item/weapon/holder/mouse + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + var/body_color //brown, gray and white, leave blank for random + +/mob/living/simple_animal/mouse/Life() + . = ..() + if(!. || ai_inactive) return + + if(prob(speak_chance)) + for(var/mob/M in view()) + M << 'sound/effects/mousesqueek.ogg' + + if(!ckey && stat == CONSCIOUS && prob(0.5)) + stat = UNCONSCIOUS + icon_state = "mouse_[body_color]_sleep" + wander = 0 + speak_chance = 0 + //snuffles + + else if(stat == UNCONSCIOUS) + if(ckey || prob(1)) + stat = CONSCIOUS + icon_state = "mouse_[body_color]" + wander = 1 + else if(prob(5)) + audible_emote("snuffles.") + +/mob/living/simple_animal/mouse/New() + ..() + + verbs += /mob/living/proc/ventcrawl + verbs += /mob/living/proc/hide + + if(name == initial(name)) + name = "[name] ([rand(1, 1000)])" + real_name = name + + if(!body_color) + body_color = pick( list("brown","gray","white") ) + icon_state = "mouse_[body_color]" + item_state = "mouse_[body_color]" + icon_living = "mouse_[body_color]" + icon_dead = "mouse_[body_color]_dead" + icon_rest = "mouse_[body_color]_sleep" + desc = "It's a small [body_color] rodent, often seen hiding in maintenance areas and making a nuisance of itself." + +/mob/living/simple_animal/mouse/proc/splat() + src.health = 0 + src.stat = DEAD + src.icon_dead = "mouse_[body_color]_splat" + src.icon_state = "mouse_[body_color]_splat" + layer = MOB_LAYER + if(client) + client.time_died_as_mouse = world.time + + +/mob/living/simple_animal/mouse/Crossed(AM as mob|obj) + if( ishuman(AM) ) + if(!stat) + var/mob/M = AM + M << "\blue \icon[src] Squeek!" + M << 'sound/effects/mousesqueek.ogg' + ..() + +/mob/living/simple_animal/mouse/death() + layer = MOB_LAYER + if(client) + client.time_died_as_mouse = world.time + ..() + +/* + * Mouse types + */ + +/mob/living/simple_animal/mouse/white + body_color = "white" + icon_state = "mouse_white" + +/mob/living/simple_animal/mouse/gray + body_color = "gray" + icon_state = "mouse_gray" + +/mob/living/simple_animal/mouse/brown + body_color = "brown" + icon_state = "mouse_brown" + +//TOM IS ALIVE! SQUEEEEEEEE~K :) +/mob/living/simple_animal/mouse/brown/Tom + name = "Tom" + desc = "Jerry the cat is not amused." + +/mob/living/simple_animal/mouse/brown/Tom/New() + ..() + // Change my name back, don't want to be named Tom (666) + name = initial(name) + +/mob/living/simple_animal/mouse/cannot_use_vents() + return diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/animals/parrot.dm similarity index 95% rename from code/modules/mob/living/simple_animal/parrot.dm rename to code/modules/mob/living/simple_animal/animals/parrot.dm index 36a1ac186ab..d388939fcdd 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/animals/parrot.dm @@ -1,757 +1,761 @@ -/* Parrots! - * Contains - * Defines - * Inventory (headset stuff) - * Attack responces - * AI - * Procs / Verbs (usable by players) - * Sub-types - */ - -/* - * Defines - */ - -//Only a maximum of one action and one intent should be active at any given time. -//Actions -#define PARROT_PERCH 1 //Sitting/sleeping, not moving -#define PARROT_SWOOP 2 //Moving towards or away from a target -#define PARROT_WANDER 4 //Moving without a specific target in mind - -//Intents -#define PARROT_STEAL 8 //Flying towards a target to steal it/from it -#define PARROT_ATTACK 16 //Flying towards a target to attack it -#define PARROT_RETURN 32 //Flying towards its perch -#define PARROT_FLEE 64 //Flying away from its attacker - - -/mob/living/simple_animal/parrot - name = "\improper Parrot" - desc = "The parrot squaks, \"It's a Parrot! BAWWK!\"" - icon = 'icons/mob/animal.dmi' - icon_state = "parrot_fly" - icon_living = "parrot_fly" - icon_dead = "parrot_dead" - pass_flags = PASSTABLE - mob_size = MOB_SMALL - - speak = list("Hi","Hello!","Cracker?","BAWWWWK george mellons griffing me") - speak_emote = list("squawks","says","yells") - emote_hear = list("squawks","bawks") - emote_see = list("flutters its wings") - - speak_chance = 1//1% (1 in 100) chance every tick; So about once per 150 seconds, assuming an average tick is 1.5s - turns_per_move = 5 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/cracker/ - - response_help = "pets" - response_disarm = "gently moves aside" - response_harm = "swats" - stop_automated_movement = 1 - universal_speak = 1 - - var/parrot_state = PARROT_WANDER //Hunt for a perch when created - var/parrot_sleep_max = 25 //The time the parrot sits while perched before looking around. Mosly a way to avoid the parrot's AI in life() being run every single tick. - var/parrot_sleep_dur = 25 //Same as above, this is the var that physically counts down - var/parrot_dam_zone = list(BP_TORSO, BP_HEAD, BP_L_ARM, BP_R_ARM, BP_L_LEG, BP_R_LEG) //For humans, select a bodypart to attack - - var/parrot_speed = 5 //"Delay in world ticks between movement." according to byond. Yeah, that's BS but it does directly affect movement. Higher number = slower. - var/parrot_been_shot = 0 //Parrots get a speed bonus after being shot. This will deincrement every Life() and at 0 the parrot will return to regular speed. - - var/list/speech_buffer = list() - var/list/available_channels = list() - - //Headset for Poly to yell at engineers :) - var/obj/item/device/radio/headset/ears = null - - //The thing the parrot is currently interested in. This gets used for items the parrot wants to pick up, mobs it wants to steal from, - //mobs it wants to attack or mobs that have attacked it - var/atom/movable/parrot_interest = null - - //Parrots will generally sit on their pertch unless something catches their eye. - //These vars store their preffered perch and if they dont have one, what they can use as a perch - var/obj/parrot_perch = null - var/obj/desired_perches = list(/obj/structure/frame, /obj/structure/displaycase, \ - /obj/structure/filingcabinet, /obj/machinery/teleport, \ - /obj/machinery/computer, /obj/machinery/clonepod, \ - /obj/machinery/dna_scannernew, /obj/machinery/telecomms, \ - /obj/machinery/nuclearbomb, /obj/machinery/particle_accelerator, \ - /obj/machinery/recharge_station, /obj/machinery/smartfridge, \ - /obj/machinery/suit_storage_unit) - - //Parrots are kleptomaniacs. This variable ... stores the item a parrot is holding. - var/obj/item/held_item = null - - -/mob/living/simple_animal/parrot/New() - ..() - if(!ears) - var/headset = pick(/obj/item/device/radio/headset/headset_sec, \ - /obj/item/device/radio/headset/headset_eng, \ - /obj/item/device/radio/headset/headset_med, \ - /obj/item/device/radio/headset/headset_sci, \ - /obj/item/device/radio/headset/headset_cargo) - ears = new headset(src) - - parrot_sleep_dur = parrot_sleep_max //In case someone decides to change the max without changing the duration var - - verbs.Add(/mob/living/simple_animal/parrot/proc/steal_from_ground, \ - /mob/living/simple_animal/parrot/proc/steal_from_mob, \ - /mob/living/simple_animal/parrot/verb/drop_held_item_player, \ - /mob/living/simple_animal/parrot/proc/perch_player) - - -/mob/living/simple_animal/parrot/death() - if(held_item) - held_item.loc = src.loc - held_item = null - walk(src,0) - ..() - -/mob/living/simple_animal/parrot/Stat() - ..() - stat("Held Item", held_item) - -/* - * Inventory - */ -/mob/living/simple_animal/parrot/show_inv(mob/user as mob) - user.set_machine(src) - if(user.stat) return - - var/dat = "

" - if(ears) - dat += "
Headset: [ears] (
Remove)" - else - dat += "
Headset: Nothing" - - user << browse(dat, text("window=mob[];size=325x500", name)) - onclose(user, "mob[real_name]") - return - -/mob/living/simple_animal/parrot/Topic(href, href_list) - - //Can the usr physically do this? - if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr)) - return - - //Is the usr's mob type able to do this? - if(ishuman(usr) || issmall(usr) || isrobot(usr)) - - //Removing from inventory - if(href_list["remove_inv"]) - var/remove_from = href_list["remove_inv"] - switch(remove_from) - if("ears") - if(ears) - if(available_channels.len) - src.say("[pick(available_channels)] BAWWWWWK LEAVE THE HEADSET BAWKKKKK!") - else - src.say("BAWWWWWK LEAVE THE HEADSET BAWKKKKK!") - ears.loc = src.loc - ears = null - for(var/possible_phrase in speak) - if(copytext(possible_phrase,1,3) in department_radio_keys) - possible_phrase = copytext(possible_phrase,3,length(possible_phrase)) - else - usr << "\red There is nothing to remove from its [remove_from]." - return - - //Adding things to inventory - else if(href_list["add_inv"]) - var/add_to = href_list["add_inv"] - if(!usr.get_active_hand()) - usr << "\red You have nothing in your hand to put on its [add_to]." - return - switch(add_to) - if("ears") - if(ears) - usr << "\red It's already wearing something." - return - else - var/obj/item/item_to_add = usr.get_active_hand() - if(!item_to_add) - return - - if( !istype(item_to_add, /obj/item/device/radio/headset) ) - usr << "\red This object won't fit." - return - - var/obj/item/device/radio/headset/headset_to_add = item_to_add - - usr.drop_item() - headset_to_add.loc = src - src.ears = headset_to_add - usr << "You fit the headset onto [src]." - - clearlist(available_channels) - for(var/ch in headset_to_add.channels) - switch(ch) - if("Engineering") - available_channels.Add(":e") - if("Command") - available_channels.Add(":c") - if("Security") - available_channels.Add(":s") - if("Science") - available_channels.Add(":n") - if("Medical") - available_channels.Add(":m") - if("Mining") - available_channels.Add(":d") - if("Cargo") - available_channels.Add(":q") - - if(headset_to_add.translate_binary) - available_channels.Add(":b") - else - ..() - - -/* - * Attack responces - */ -//Humans, monkeys, aliens -/mob/living/simple_animal/parrot/attack_hand(mob/living/carbon/M as mob) - ..() - if(client) return - if(!stat && M.a_intent == I_HURT) - - icon_state = "parrot_fly" //It is going to be flying regardless of whether it flees or attacks - - if(parrot_state == PARROT_PERCH) - parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched - - parrot_interest = M - parrot_state = PARROT_SWOOP //The parrot just got hit, it WILL move, now to pick a direction.. - - if(M.health < 50) //Weakened mob? Fight back! - parrot_state |= PARROT_ATTACK - else - parrot_state |= PARROT_FLEE //Otherwise, fly like a bat out of hell! - drop_held_item(0) - return - -//Mobs with objects -/mob/living/simple_animal/parrot/attackby(var/obj/item/O as obj, var/mob/user as mob) - ..() - if(!stat && !client && !istype(O, /obj/item/stack/medical)) - if(O.force) - if(parrot_state == PARROT_PERCH) - parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched - - parrot_interest = user - parrot_state = PARROT_SWOOP | PARROT_FLEE - icon_state = "parrot_fly" - drop_held_item(0) - return - -//Bullets -/mob/living/simple_animal/parrot/bullet_act(var/obj/item/projectile/Proj) - ..() - if(!stat && !client) - if(parrot_state == PARROT_PERCH) - parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched - - parrot_interest = null - parrot_state = PARROT_WANDER //OWFUCK, Been shot! RUN LIKE HELL! - parrot_been_shot += 5 - icon_state = "parrot_fly" - drop_held_item(0) - return - - -/* - * AI - Not really intelligent, but I'm calling it AI anyway. - */ -/mob/living/simple_animal/parrot/Life() - ..() - - //Sprite and AI update for when a parrot gets pulled - if(pulledby && stat == CONSCIOUS) - icon_state = "parrot_fly" - if(!client) - parrot_state = PARROT_WANDER - return - - if(client || stat) - return //Lets not force players or dead/incap parrots to move - - if(!isturf(src.loc) || !canmove || buckled) - return //If it can't move, dont let it move. (The buckled check probably isn't necessary thanks to canmove) - - -//-----SPEECH - /* Parrot speech mimickry! - Phrases that the parrot hears in mob/living/say() get added to speach_buffer. - Every once in a while, the parrot picks one of the lines from the buffer and replaces an element of the 'speech' list. - Then it clears the buffer to make sure they dont magically remember something from hours ago. */ - if(speech_buffer.len && prob(10)) - if(speak.len) - speak.Remove(pick(speak)) - - speak.Add(pick(speech_buffer)) - clearlist(speech_buffer) - - -//-----SLEEPING - if(parrot_state == PARROT_PERCH) - if(parrot_perch && parrot_perch.loc != src.loc) //Make sure someone hasnt moved our perch on us - if(parrot_perch in view(src)) - parrot_state = PARROT_SWOOP | PARROT_RETURN - icon_state = "parrot_fly" - return - else - parrot_state = PARROT_WANDER - icon_state = "parrot_fly" - return - - if(--parrot_sleep_dur) //Zzz - return - - else - //This way we only call the stuff below once every [sleep_max] ticks. - parrot_sleep_dur = parrot_sleep_max - - //Cycle through message modes for the headset - if(speak.len) - var/list/newspeak = list() - - if(available_channels.len && src.ears) - for(var/possible_phrase in speak) - - //50/50 chance to not use the radio at all - var/useradio = 0 - if(prob(50)) - useradio = 1 - - if(copytext(possible_phrase,1,3) in department_radio_keys) - possible_phrase = "[useradio?pick(available_channels):""] [copytext(possible_phrase,3,length(possible_phrase)+1)]" //crop out the channel prefix - else - possible_phrase = "[useradio?pick(available_channels):""] [possible_phrase]" - - newspeak.Add(possible_phrase) - - else //If we have no headset or channels to use, dont try to use any! - for(var/possible_phrase in speak) - if(copytext(possible_phrase,1,3) in department_radio_keys) - possible_phrase = "[copytext(possible_phrase,3,length(possible_phrase)+1)]" //crop out the channel prefix - newspeak.Add(possible_phrase) - speak = newspeak - - //Search for item to steal - parrot_interest = search_for_item() - if(parrot_interest) - visible_emote("looks in [parrot_interest]'s direction and takes flight") - parrot_state = PARROT_SWOOP | PARROT_STEAL - icon_state = "parrot_fly" - return - -//-----WANDERING - This is basically a 'I dont know what to do yet' state - else if(parrot_state == PARROT_WANDER) - //Stop movement, we'll set it later - walk(src, 0) - parrot_interest = null - - //Wander around aimlessly. This will help keep the loops from searches down - //and possibly move the mob into a new are in view of something they can use - if(prob(90)) - step(src, pick(cardinal)) - return - - if(!held_item && !parrot_perch) //If we've got nothing to do.. look for something to do. - var/atom/movable/AM = search_for_perch_and_item() //This handles checking through lists so we know it's either a perch or stealable item - if(AM) - if(istype(AM, /obj/item) || isliving(AM)) //If stealable item - parrot_interest = AM - visible_emote("turns and flies towards [parrot_interest]") - parrot_state = PARROT_SWOOP | PARROT_STEAL - return - else //Else it's a perch - parrot_perch = AM - parrot_state = PARROT_SWOOP | PARROT_RETURN - return - return - - if(parrot_interest && parrot_interest in view(src)) - parrot_state = PARROT_SWOOP | PARROT_STEAL - return - - if(parrot_perch && parrot_perch in view(src)) - parrot_state = PARROT_SWOOP | PARROT_RETURN - return - - else //Have an item but no perch? Find one! - parrot_perch = search_for_perch() - if(parrot_perch) - parrot_state = PARROT_SWOOP | PARROT_RETURN - return -//-----STEALING - else if(parrot_state == (PARROT_SWOOP | PARROT_STEAL)) - walk(src,0) - if(!parrot_interest || held_item) - parrot_state = PARROT_SWOOP | PARROT_RETURN - return - - if(!(parrot_interest in view(src))) - parrot_state = PARROT_SWOOP | PARROT_RETURN - return - - if(in_range(src, parrot_interest)) - - if(isliving(parrot_interest)) - steal_from_mob() - - else //This should ensure that we only grab the item we want, and make sure it's not already collected on our perch - if(!parrot_perch || parrot_interest.loc != parrot_perch.loc) - held_item = parrot_interest - parrot_interest.loc = src - visible_message("[src] grabs the [held_item]!", "\blue You grab the [held_item]!", "You hear the sounds of wings flapping furiously.") - - parrot_interest = null - parrot_state = PARROT_SWOOP | PARROT_RETURN - return - - walk_to(src, parrot_interest, 1, parrot_speed) - return - -//-----RETURNING TO PERCH - else if(parrot_state == (PARROT_SWOOP | PARROT_RETURN)) - walk(src, 0) - if(!parrot_perch || !isturf(parrot_perch.loc)) //Make sure the perch exists and somehow isnt inside of something else. - parrot_perch = null - parrot_state = PARROT_WANDER - return - - if(in_range(src, parrot_perch)) - src.loc = parrot_perch.loc - drop_held_item() - parrot_state = PARROT_PERCH - icon_state = "parrot_sit" - return - - walk_to(src, parrot_perch, 1, parrot_speed) - return - -//-----FLEEING - else if(parrot_state == (PARROT_SWOOP | PARROT_FLEE)) - walk(src,0) - if(!parrot_interest || !isliving(parrot_interest)) //Sanity - parrot_state = PARROT_WANDER - - walk_away(src, parrot_interest, 1, parrot_speed-parrot_been_shot) - parrot_been_shot-- - return - -//-----ATTACKING - else if(parrot_state == (PARROT_SWOOP | PARROT_ATTACK)) - - //If we're attacking a nothing, an object, a turf or a ghost for some stupid reason, switch to wander - if(!parrot_interest || !isliving(parrot_interest)) - parrot_interest = null - parrot_state = PARROT_WANDER - return - - var/mob/living/L = parrot_interest - - //If the mob is close enough to interact with - if(in_range(src, parrot_interest)) - - //If the mob we've been chasing/attacking dies or falls into crit, check for loot! - if(L.stat) - parrot_interest = null - if(!held_item) - held_item = steal_from_ground() - if(!held_item) - held_item = steal_from_mob() //Apparently it's possible for dead mobs to hang onto items in certain circumstances. - if(parrot_perch in view(src)) //If we have a home nearby, go to it, otherwise find a new home - parrot_state = PARROT_SWOOP | PARROT_RETURN - else - parrot_state = PARROT_WANDER - return - - //Time for the hurt to begin! - var/damage = rand(5,10) - - if(ishuman(parrot_interest)) - var/mob/living/carbon/human/H = parrot_interest - var/obj/item/organ/external/affecting = H.get_organ(ran_zone(pick(parrot_dam_zone))) - - H.apply_damage(damage, BRUTE, affecting, H.run_armor_check(affecting, "melee"), sharp=1) - visible_emote(pick("pecks [H]'s [affecting].", "cuts [H]'s [affecting] with its talons.")) - - else - L.adjustBruteLoss(damage) - visible_emote(pick("pecks at [L].", "claws [L].")) - return - - //Otherwise, fly towards the mob! - else - walk_to(src, parrot_interest, 1, parrot_speed) - return -//-----STATE MISHAP - else //This should not happen. If it does lets reset everything and try again - walk(src,0) - parrot_interest = null - parrot_perch = null - drop_held_item() - parrot_state = PARROT_WANDER - return - -/* - * Procs - */ - -/mob/living/simple_animal/parrot/movement_delay() - if(client && stat == CONSCIOUS && parrot_state != "parrot_fly") - icon_state = "parrot_fly" - ..() - -/mob/living/simple_animal/parrot/proc/search_for_item() - for(var/atom/movable/AM in view(src)) - //Skip items we already stole or are wearing or are too big - if(parrot_perch && AM.loc == parrot_perch.loc || AM.loc == src) - continue - - if(istype(AM, /obj/item)) - var/obj/item/I = AM - if(I.w_class < ITEMSIZE_SMALL) - return I - - if(iscarbon(AM)) - var/mob/living/carbon/C = AM - if((C.l_hand && C.l_hand.w_class <= ITEMSIZE_SMALL) || (C.r_hand && C.r_hand.w_class <= ITEMSIZE_SMALL)) - return C - return null - -/mob/living/simple_animal/parrot/proc/search_for_perch() - for(var/obj/O in view(src)) - for(var/path in desired_perches) - if(istype(O, path)) - return O - return null - -//This proc was made to save on doing two 'in view' loops seperatly -/mob/living/simple_animal/parrot/proc/search_for_perch_and_item() - for(var/atom/movable/AM in view(src)) - for(var/perch_path in desired_perches) - if(istype(AM, perch_path)) - return AM - - //Skip items we already stole or are wearing or are too big - if(parrot_perch && AM.loc == parrot_perch.loc || AM.loc == src) - continue - - if(istype(AM, /obj/item)) - var/obj/item/I = AM - if(I.w_class <= ITEMSIZE_SMALL) - return I - - if(iscarbon(AM)) - var/mob/living/carbon/C = AM - if(C.l_hand && C.l_hand.w_class <= ITEMSIZE_SMALL || C.r_hand && C.r_hand.w_class <= ITEMSIZE_SMALL) - return C - return null - - -/* - * Verbs - These are actually procs, but can be used as verbs by player-controlled parrots. - */ -/mob/living/simple_animal/parrot/proc/steal_from_ground() - set name = "Steal from ground" - set category = "Parrot" - set desc = "Grabs a nearby item." - - if(stat) - return -1 - - if(held_item) - src << "\red You are already holding the [held_item]" - return 1 - - for(var/obj/item/I in view(1,src)) - //Make sure we're not already holding it and it's small enough - if(I.loc != src && I.w_class <= ITEMSIZE_SMALL) - - //If we have a perch and the item is sitting on it, continue - if(!client && parrot_perch && I.loc == parrot_perch.loc) - continue - - held_item = I - I.loc = src - visible_message("[src] grabs the [held_item]!", "\blue You grab the [held_item]!", "You hear the sounds of wings flapping furiously.") - return held_item - - src << "\red There is nothing of interest to take." - return 0 - -/mob/living/simple_animal/parrot/proc/steal_from_mob() - set name = "Steal from mob" - set category = "Parrot" - set desc = "Steals an item right out of a person's hand!" - - if(stat) - return -1 - - if(held_item) - src << "\red You are already holding the [held_item]" - return 1 - - var/obj/item/stolen_item = null - - for(var/mob/living/carbon/C in view(1,src)) - if(C.l_hand && C.l_hand.w_class <= ITEMSIZE_SMALL) - stolen_item = C.l_hand - - if(C.r_hand && C.r_hand.w_class <= ITEMSIZE_SMALL) - stolen_item = C.r_hand - - if(stolen_item) - C.remove_from_mob(stolen_item) - held_item = stolen_item - stolen_item.loc = src - visible_message("[src] grabs the [held_item] out of [C]'s hand!", "\blue You snag the [held_item] out of [C]'s hand!", "You hear the sounds of wings flapping furiously.") - return held_item - - src << "\red There is nothing of interest to take." - return 0 - -/mob/living/simple_animal/parrot/verb/drop_held_item_player() - set name = "Drop held item" - set category = "Parrot" - set desc = "Drop the item you're holding." - - if(stat) - return - - src.drop_held_item() - - return - -/mob/living/simple_animal/parrot/proc/drop_held_item(var/drop_gently = 1) - set name = "Drop held item" - set category = "Parrot" - set desc = "Drop the item you're holding." - - if(stat) - return -1 - - if(!held_item) - usr << "\red You have nothing to drop!" - return 0 - - if(!drop_gently) - if(istype(held_item, /obj/item/weapon/grenade)) - var/obj/item/weapon/grenade/G = held_item - G.loc = src.loc - G.prime() - src << "You let go of the [held_item]!" - held_item = null - return 1 - - src << "You drop the [held_item]." - - held_item.loc = src.loc - held_item = null - return 1 - -/mob/living/simple_animal/parrot/proc/perch_player() - set name = "Sit" - set category = "Parrot" - set desc = "Sit on a nice comfy perch." - - if(stat || !client) - return - - if(icon_state == "parrot_fly") - for(var/atom/movable/AM in view(src,1)) - for(var/perch_path in desired_perches) - if(istype(AM, perch_path)) - src.loc = AM.loc - icon_state = "parrot_sit" - return - src << "\red There is no perch nearby to sit on." - return - -/* - * Sub-types - */ -/mob/living/simple_animal/parrot/Poly - name = "Poly" - desc = "Poly the Parrot. An expert on quantum cracker theory." - speak = list("Poly wanna cracker!", ":e Check the singlo, you chucklefucks!",":e Wire the solars, you lazy bums!",":e WHO TOOK THE DAMN HARDSUITS?",":e OH GOD ITS FREE CALL THE SHUTTLE") - -/mob/living/simple_animal/parrot/Poly/New() - ears = new /obj/item/device/radio/headset/headset_eng(src) - available_channels = list(":e") - ..() - -/mob/living/simple_animal/parrot/say(var/message) - - if(stat) - return - - var/verb = "says" - if(speak_emote.len) - verb = pick(speak_emote) - - - var/message_mode="" - if(copytext(message,1,2) == ";") - message_mode = "headset" - message = copytext(message,2) - - if(length(message) >= 2) - var/channel_prefix = copytext(message, 1 ,3) - message_mode = department_radio_keys[channel_prefix] - - if(copytext(message,1,2) == ":") - var/positioncut = 3 - message = trim(copytext(message,positioncut)) - - message = capitalize(trim_left(message)) - - if(message_mode) - if(message_mode in radiochannels) - if(ears && istype(ears,/obj/item/device/radio)) - ears.talk_into(src,sanitize(message), message_mode, verb, null) - - - ..(message) - - -/mob/living/simple_animal/parrot/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "",var/italics = 0, var/mob/speaker = null) - if(prob(50)) - parrot_hear(message) - ..(message,verb,language,alt_name,italics,speaker) - - - -/mob/living/simple_animal/parrot/hear_radio(var/message, var/verb="says", var/datum/language/language=null, var/part_a, var/part_b, var/part_c, var/mob/speaker = null, var/hard_to_hear = 0) - if(prob(50)) - parrot_hear("[pick(available_channels)] [message]") - ..(message,verb,language,part_a,part_b,speaker,hard_to_hear) - - -/mob/living/simple_animal/parrot/proc/parrot_hear(var/message="") - if(!message || stat) - return - speech_buffer.Add(message) - -/mob/living/simple_animal/parrot/attack_generic(var/mob/user, var/damage, var/attack_message) - - var/success = ..() - - if(client) - return success - - if(parrot_state == PARROT_PERCH) - parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched - - if(!success) - return 0 - - parrot_interest = user - parrot_state = PARROT_SWOOP | PARROT_ATTACK //Attack other animals regardless - icon_state = "parrot_fly" +/* Parrots! + * Contains + * Defines + * Inventory (headset stuff) + * Attack responces + * AI + * Procs / Verbs (usable by players) + * Sub-types + */ + +/* + * Defines + */ + +//Parrot is too snowflake for me to rewrite right now, someone should make it use the new +//simple_animal movement stuff. -Aro + +//Only a maximum of one action and one intent should be active at any given time. +//Actions +#define PARROT_PERCH 1 //Sitting/sleeping, not moving +#define PARROT_SWOOP 2 //Moving towards or away from a target +#define PARROT_WANDER 4 //Moving without a specific target in mind + +//Intents +#define PARROT_STEAL 8 //Flying towards a target to steal it/from it +#define PARROT_ATTACK 16 //Flying towards a target to attack it +#define PARROT_RETURN 32 //Flying towards its perch +#define PARROT_FLEE 64 //Flying away from its attacker + + +/mob/living/simple_animal/parrot + name = "\improper Parrot" + desc = "The parrot squaks, \"It's a Parrot! BAWWK!\"" + icon = 'icons/mob/animal.dmi' + icon_state = "parrot_fly" + icon_living = "parrot_fly" + icon_dead = "parrot_dead" + + turns_per_move = 5 + pass_flags = PASSTABLE + mob_size = MOB_SMALL + + response_help = "pets" + response_disarm = "gently moves aside" + response_harm = "swats" + stop_automated_movement = 1 + universal_speak = 1 + + speak_chance = 2 + speak = list("Hi","Hello!","Cracker?","BAWWWWK george mellons griffing me") + speak_emote = list("squawks","says","yells") + emote_hear = list("squawks","bawks") + emote_see = list("flutters its wings") + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/cracker + + var/parrot_state = PARROT_WANDER //Hunt for a perch when created + var/parrot_sleep_max = 25 //The time the parrot sits while perched before looking around. Mosly a way to avoid the parrot's AI in life() being run every single tick. + var/parrot_sleep_dur = 25 //Same as above, this is the var that physically counts down + var/parrot_dam_zone = list(BP_TORSO, BP_HEAD, BP_L_ARM, BP_R_ARM, BP_L_LEG, BP_R_LEG) //For humans, select a bodypart to attack + + var/parrot_speed = 5 //"Delay in world ticks between movement." according to byond. Yeah, that's BS but it does directly affect movement. Higher number = slower. + var/parrot_been_shot = 0 //Parrots get a speed bonus after being shot. This will deincrement every Life() and at 0 the parrot will return to regular speed. + + var/list/speech_buffer = list() + var/list/available_channels = list() + + //Headset for Poly to yell at engineers :) + var/obj/item/device/radio/headset/ears = null + + //The thing the parrot is currently interested in. This gets used for items the parrot wants to pick up, mobs it wants to steal from, + //mobs it wants to attack or mobs that have attacked it + var/atom/movable/parrot_interest = null + + //Parrots will generally sit on their pertch unless something catches their eye. + //These vars store their preffered perch and if they dont have one, what they can use as a perch + var/obj/parrot_perch = null + var/obj/desired_perches = list(/obj/structure/frame, /obj/structure/displaycase, \ + /obj/structure/filingcabinet, /obj/machinery/teleport, \ + /obj/machinery/computer, /obj/machinery/clonepod, \ + /obj/machinery/dna_scannernew, /obj/machinery/telecomms, \ + /obj/machinery/nuclearbomb, /obj/machinery/particle_accelerator, \ + /obj/machinery/recharge_station, /obj/machinery/smartfridge, \ + /obj/machinery/suit_storage_unit) + + //Parrots are kleptomaniacs. This variable ... stores the item a parrot is holding. + var/obj/item/held_item = null + + +/mob/living/simple_animal/parrot/New() + ..() + if(!ears) + var/headset = pick(/obj/item/device/radio/headset/headset_sec, \ + /obj/item/device/radio/headset/headset_eng, \ + /obj/item/device/radio/headset/headset_med, \ + /obj/item/device/radio/headset/headset_sci, \ + /obj/item/device/radio/headset/headset_cargo) + ears = new headset(src) + + parrot_sleep_dur = parrot_sleep_max //In case someone decides to change the max without changing the duration var + + verbs.Add(/mob/living/simple_animal/parrot/proc/steal_from_ground, \ + /mob/living/simple_animal/parrot/proc/steal_from_mob, \ + /mob/living/simple_animal/parrot/verb/drop_held_item_player, \ + /mob/living/simple_animal/parrot/proc/perch_player) + + +/mob/living/simple_animal/parrot/death() + if(held_item) + held_item.forceMove(src.loc) + held_item = null + walk(src,0) + ..() + +/mob/living/simple_animal/parrot/Stat() + ..() + stat("Held Item", held_item) + +/* + * Inventory + */ +/mob/living/simple_animal/parrot/show_inv(mob/user as mob) + user.set_machine(src) + if(user.stat) return + + var/dat = "

Inventory of [name]

" + if(ears) + dat += "
Headset: [ears] (Remove)" + else + dat += "
Headset: Nothing" + + user << browse(dat, text("window=mob[];size=325x500", name)) + onclose(user, "mob[real_name]") + return + +/mob/living/simple_animal/parrot/Topic(href, href_list) + + //Can the usr physically do this? + if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr)) + return + + //Is the usr's mob type able to do this? + if(ishuman(usr) || issmall(usr) || isrobot(usr)) + + //Removing from inventory + if(href_list["remove_inv"]) + var/remove_from = href_list["remove_inv"] + switch(remove_from) + if("ears") + if(ears) + if(available_channels.len) + src.say("[pick(available_channels)] BAWWWWWK LEAVE THE HEADSET BAWKKKKK!") + else + src.say("BAWWWWWK LEAVE THE HEADSET BAWKKKKK!") + ears.forceMove(src.loc) + ears = null + for(var/possible_phrase in speak) + if(copytext(possible_phrase,1,3) in department_radio_keys) + possible_phrase = copytext(possible_phrase,3,length(possible_phrase)) + else + usr << "\red There is nothing to remove from its [remove_from]." + return + + //Adding things to inventory + else if(href_list["add_inv"]) + var/add_to = href_list["add_inv"] + if(!usr.get_active_hand()) + usr << "\red You have nothing in your hand to put on its [add_to]." + return + switch(add_to) + if("ears") + if(ears) + usr << "\red It's already wearing something." + return + else + var/obj/item/item_to_add = usr.get_active_hand() + if(!item_to_add) + return + + if( !istype(item_to_add, /obj/item/device/radio/headset) ) + usr << "\red This object won't fit." + return + + var/obj/item/device/radio/headset/headset_to_add = item_to_add + + usr.drop_item() + headset_to_add.forceMove(src) + src.ears = headset_to_add + usr << "You fit the headset onto [src]." + + clearlist(available_channels) + for(var/ch in headset_to_add.channels) + switch(ch) + if("Engineering") + available_channels.Add(":e") + if("Command") + available_channels.Add(":c") + if("Security") + available_channels.Add(":s") + if("Science") + available_channels.Add(":n") + if("Medical") + available_channels.Add(":m") + if("Mining") + available_channels.Add(":d") + if("Cargo") + available_channels.Add(":q") + + if(headset_to_add.translate_binary) + available_channels.Add(":b") + else + ..() + + +/* + * Attack responces + */ +//Humans, monkeys, aliens +/mob/living/simple_animal/parrot/attack_hand(mob/living/carbon/M as mob) + ..() + if(client) return + if(!stat && M.a_intent == I_HURT) + + icon_state = "parrot_fly" //It is going to be flying regardless of whether it flees or attacks + + if(parrot_state == PARROT_PERCH) + parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched + + parrot_interest = M + parrot_state = PARROT_SWOOP //The parrot just got hit, it WILL move, now to pick a direction.. + + if(M.health < 50) //Weakened mob? Fight back! + parrot_state |= PARROT_ATTACK + else + parrot_state |= PARROT_FLEE //Otherwise, fly like a bat out of hell! + drop_held_item(0) + return + +//Mobs with objects +/mob/living/simple_animal/parrot/attackby(var/obj/item/O as obj, var/mob/user as mob) + ..() + if(!stat && !client && !istype(O, /obj/item/stack/medical)) + if(O.force) + if(parrot_state == PARROT_PERCH) + parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched + + parrot_interest = user + parrot_state = PARROT_SWOOP | PARROT_FLEE + icon_state = "parrot_fly" + drop_held_item(0) + return + +//Bullets +/mob/living/simple_animal/parrot/bullet_act(var/obj/item/projectile/Proj) + ..() + if(!stat && !client) + if(parrot_state == PARROT_PERCH) + parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched + + parrot_interest = null + parrot_state = PARROT_WANDER //OWFUCK, Been shot! RUN LIKE HELL! + parrot_been_shot += 5 + icon_state = "parrot_fly" + drop_held_item(0) + return + + +/* + * AI - Not really intelligent, but I'm calling it AI anyway. + */ +/mob/living/simple_animal/parrot/Life() + ..() + + //Sprite and AI update for when a parrot gets pulled + if(pulledby && stat == CONSCIOUS) + icon_state = "parrot_fly" + if(!client) + parrot_state = PARROT_WANDER + return + + if(client || stat) + return //Lets not force players or dead/incap parrots to move + + if(!isturf(src.loc) || !canmove || buckled) + return //If it can't move, dont let it move. (The buckled check probably isn't necessary thanks to canmove) + + +//-----SPEECH + /* Parrot speech mimickry! + Phrases that the parrot hears in mob/living/say() get added to speach_buffer. + Every once in a while, the parrot picks one of the lines from the buffer and replaces an element of the 'speech' list. + Then it clears the buffer to make sure they dont magically remember something from hours ago. */ + if(speech_buffer.len && prob(10)) + if(speak.len) + speak.Remove(pick(speak)) + + speak.Add(pick(speech_buffer)) + clearlist(speech_buffer) + + +//-----SLEEPING + if(parrot_state == PARROT_PERCH) + if(parrot_perch && parrot_perch.loc != src.loc) //Make sure someone hasnt moved our perch on us + if(parrot_perch in view(src)) + parrot_state = PARROT_SWOOP | PARROT_RETURN + icon_state = "parrot_fly" + return + else + parrot_state = PARROT_WANDER + icon_state = "parrot_fly" + return + + if(--parrot_sleep_dur) //Zzz + return + + else + //This way we only call the stuff below once every [sleep_max] ticks. + parrot_sleep_dur = parrot_sleep_max + + //Cycle through message modes for the headset + if(speak.len) + var/list/newspeak = list() + + if(available_channels.len && src.ears) + for(var/possible_phrase in speak) + + //50/50 chance to not use the radio at all + var/useradio = 0 + if(prob(50)) + useradio = 1 + + if(copytext(possible_phrase,1,3) in department_radio_keys) + possible_phrase = "[useradio?pick(available_channels):""] [copytext(possible_phrase,3,length(possible_phrase)+1)]" //crop out the channel prefix + else + possible_phrase = "[useradio?pick(available_channels):""] [possible_phrase]" + + newspeak.Add(possible_phrase) + + else //If we have no headset or channels to use, dont try to use any! + for(var/possible_phrase in speak) + if(copytext(possible_phrase,1,3) in department_radio_keys) + possible_phrase = "[copytext(possible_phrase,3,length(possible_phrase)+1)]" //crop out the channel prefix + newspeak.Add(possible_phrase) + speak = newspeak + + //Search for item to steal + parrot_interest = search_for_item() + if(parrot_interest) + visible_emote("looks in [parrot_interest]'s direction and takes flight") + parrot_state = PARROT_SWOOP | PARROT_STEAL + icon_state = "parrot_fly" + return + +//-----WANDERING - This is basically a 'I dont know what to do yet' state + else if(parrot_state == PARROT_WANDER) + //Stop movement, we'll set it later + walk(src, 0) + parrot_interest = null + + //Wander around aimlessly. This will help keep the loops from searches down + //and possibly move the mob into a new are in view of something they can use + if(prob(90)) + step(src, pick(cardinal)) + return + + if(!held_item && !parrot_perch) //If we've got nothing to do.. look for something to do. + var/atom/movable/AM = search_for_perch_and_item() //This handles checking through lists so we know it's either a perch or stealable item + if(AM) + if(istype(AM, /obj/item) || isliving(AM)) //If stealable item + parrot_interest = AM + visible_emote("turns and flies towards [parrot_interest]") + parrot_state = PARROT_SWOOP | PARROT_STEAL + return + else //Else it's a perch + parrot_perch = AM + parrot_state = PARROT_SWOOP | PARROT_RETURN + return + return + + if(parrot_interest && parrot_interest in view(src)) + parrot_state = PARROT_SWOOP | PARROT_STEAL + return + + if(parrot_perch && parrot_perch in view(src)) + parrot_state = PARROT_SWOOP | PARROT_RETURN + return + + else //Have an item but no perch? Find one! + parrot_perch = search_for_perch() + if(parrot_perch) + parrot_state = PARROT_SWOOP | PARROT_RETURN + return +//-----STEALING + else if(parrot_state == (PARROT_SWOOP | PARROT_STEAL)) + walk(src,0) + if(!parrot_interest || held_item) + parrot_state = PARROT_SWOOP | PARROT_RETURN + return + + if(!(parrot_interest in view(src))) + parrot_state = PARROT_SWOOP | PARROT_RETURN + return + + if(in_range(src, parrot_interest)) + + if(isliving(parrot_interest)) + steal_from_mob() + + else //This should ensure that we only grab the item we want, and make sure it's not already collected on our perch + if(!parrot_perch || parrot_interest.loc != parrot_perch.loc) + held_item = parrot_interest + parrot_interest.forceMove(src) + visible_message("[src] grabs the [held_item]!", "\blue You grab the [held_item]!", "You hear the sounds of wings flapping furiously.") + + parrot_interest = null + parrot_state = PARROT_SWOOP | PARROT_RETURN + return + + walk_to(src, parrot_interest, 1, parrot_speed) + return + +//-----RETURNING TO PERCH + else if(parrot_state == (PARROT_SWOOP | PARROT_RETURN)) + walk(src, 0) + if(!parrot_perch || !isturf(parrot_perch.loc)) //Make sure the perch exists and somehow isnt inside of something else. + parrot_perch = null + parrot_state = PARROT_WANDER + return + + if(in_range(src, parrot_perch)) + src.forceMove(parrot_perch.loc) + drop_held_item() + parrot_state = PARROT_PERCH + icon_state = "parrot_sit" + return + + walk_to(src, parrot_perch, 1, parrot_speed) + return + +//-----FLEEING + else if(parrot_state == (PARROT_SWOOP | PARROT_FLEE)) + walk(src,0) + if(!parrot_interest || !isliving(parrot_interest)) //Sanity + parrot_state = PARROT_WANDER + + walk_away(src, parrot_interest, 1, parrot_speed-parrot_been_shot) + parrot_been_shot-- + return + +//-----ATTACKING + else if(parrot_state == (PARROT_SWOOP | PARROT_ATTACK)) + + //If we're attacking a nothing, an object, a turf or a ghost for some stupid reason, switch to wander + if(!parrot_interest || !isliving(parrot_interest)) + parrot_interest = null + parrot_state = PARROT_WANDER + return + + var/mob/living/L = parrot_interest + + //If the mob is close enough to interact with + if(in_range(src, parrot_interest)) + + //If the mob we've been chasing/attacking dies or falls into crit, check for loot! + if(L.stat) + parrot_interest = null + if(!held_item) + held_item = steal_from_ground() + if(!held_item) + held_item = steal_from_mob() //Apparently it's possible for dead mobs to hang onto items in certain circumstances. + if(parrot_perch in view(src)) //If we have a home nearby, go to it, otherwise find a new home + parrot_state = PARROT_SWOOP | PARROT_RETURN + else + parrot_state = PARROT_WANDER + return + + //Time for the hurt to begin! + var/damage = rand(5,10) + + if(ishuman(parrot_interest)) + var/mob/living/carbon/human/H = parrot_interest + var/obj/item/organ/external/affecting = H.get_organ(ran_zone(pick(parrot_dam_zone))) + + H.apply_damage(damage, BRUTE, affecting, H.run_armor_check(affecting, "melee"), sharp=1) + visible_emote(pick("pecks [H]'s [affecting].", "cuts [H]'s [affecting] with its talons.")) + + else + L.adjustBruteLoss(damage) + visible_emote(pick("pecks at [L].", "claws [L].")) + return + + //Otherwise, fly towards the mob! + else + walk_to(src, parrot_interest, 1, parrot_speed) + return +//-----STATE MISHAP + else //This should not happen. If it does lets reset everything and try again + walk(src,0) + parrot_interest = null + parrot_perch = null + drop_held_item() + parrot_state = PARROT_WANDER + return + +/* + * Procs + */ + +/mob/living/simple_animal/parrot/movement_delay() + if(client && stat == CONSCIOUS && parrot_state != "parrot_fly") + icon_state = "parrot_fly" + ..() + +/mob/living/simple_animal/parrot/proc/search_for_item() + for(var/atom/movable/AM in view(src)) + //Skip items we already stole or are wearing or are too big + if(parrot_perch && AM.loc == parrot_perch.loc || AM.loc == src) + continue + + if(istype(AM, /obj/item)) + var/obj/item/I = AM + if(I.w_class < ITEMSIZE_SMALL) + return I + + if(iscarbon(AM)) + var/mob/living/carbon/C = AM + if((C.l_hand && C.l_hand.w_class <= ITEMSIZE_SMALL) || (C.r_hand && C.r_hand.w_class <= ITEMSIZE_SMALL)) + return C + return null + +/mob/living/simple_animal/parrot/proc/search_for_perch() + for(var/obj/O in view(src)) + for(var/path in desired_perches) + if(istype(O, path)) + return O + return null + +//This proc was made to save on doing two 'in view' loops seperatly +/mob/living/simple_animal/parrot/proc/search_for_perch_and_item() + for(var/atom/movable/AM in view(src)) + for(var/perch_path in desired_perches) + if(istype(AM, perch_path)) + return AM + + //Skip items we already stole or are wearing or are too big + if(parrot_perch && AM.loc == parrot_perch.loc || AM.loc == src) + continue + + if(istype(AM, /obj/item)) + var/obj/item/I = AM + if(I.w_class <= ITEMSIZE_SMALL) + return I + + if(iscarbon(AM)) + var/mob/living/carbon/C = AM + if(C.l_hand && C.l_hand.w_class <= ITEMSIZE_SMALL || C.r_hand && C.r_hand.w_class <= ITEMSIZE_SMALL) + return C + return null + + +/* + * Verbs - These are actually procs, but can be used as verbs by player-controlled parrots. + */ +/mob/living/simple_animal/parrot/proc/steal_from_ground() + set name = "Steal from ground" + set category = "Parrot" + set desc = "Grabs a nearby item." + + if(stat) + return -1 + + if(held_item) + src << "\red You are already holding the [held_item]" + return 1 + + for(var/obj/item/I in view(1,src)) + //Make sure we're not already holding it and it's small enough + if(I.loc != src && I.w_class <= ITEMSIZE_SMALL) + + //If we have a perch and the item is sitting on it, continue + if(!client && parrot_perch && I.loc == parrot_perch.loc) + continue + + held_item = I + I.forceMove(src) + visible_message("[src] grabs the [held_item]!", "\blue You grab the [held_item]!", "You hear the sounds of wings flapping furiously.") + return held_item + + src << "\red There is nothing of interest to take." + return 0 + +/mob/living/simple_animal/parrot/proc/steal_from_mob() + set name = "Steal from mob" + set category = "Parrot" + set desc = "Steals an item right out of a person's hand!" + + if(stat) + return -1 + + if(held_item) + src << "\red You are already holding the [held_item]" + return 1 + + var/obj/item/stolen_item = null + + for(var/mob/living/carbon/C in view(1,src)) + if(C.l_hand && C.l_hand.w_class <= ITEMSIZE_SMALL) + stolen_item = C.l_hand + + if(C.r_hand && C.r_hand.w_class <= ITEMSIZE_SMALL) + stolen_item = C.r_hand + + if(stolen_item) + C.remove_from_mob(stolen_item) + held_item = stolen_item + stolen_item.forceMove(src) + visible_message("[src] grabs the [held_item] out of [C]'s hand!", "\blue You snag the [held_item] out of [C]'s hand!", "You hear the sounds of wings flapping furiously.") + return held_item + + src << "\red There is nothing of interest to take." + return 0 + +/mob/living/simple_animal/parrot/verb/drop_held_item_player() + set name = "Drop held item" + set category = "Parrot" + set desc = "Drop the item you're holding." + + if(stat) + return + + src.drop_held_item() + + return + +/mob/living/simple_animal/parrot/proc/drop_held_item(var/drop_gently = 1) + set name = "Drop held item" + set category = "Parrot" + set desc = "Drop the item you're holding." + + if(stat) + return -1 + + if(!held_item) + usr << "\red You have nothing to drop!" + return 0 + + if(!drop_gently) + if(istype(held_item, /obj/item/weapon/grenade)) + var/obj/item/weapon/grenade/G = held_item + G.forceMove(src.loc) + G.prime() + src << "You let go of the [held_item]!" + held_item = null + return 1 + + src << "You drop the [held_item]." + + held_item.forceMove(src.loc) + held_item = null + return 1 + +/mob/living/simple_animal/parrot/proc/perch_player() + set name = "Sit" + set category = "Parrot" + set desc = "Sit on a nice comfy perch." + + if(stat || !client) + return + + if(icon_state == "parrot_fly") + for(var/atom/movable/AM in view(src,1)) + for(var/perch_path in desired_perches) + if(istype(AM, perch_path)) + src.forceMove(AM.loc) + icon_state = "parrot_sit" + return + src << "\red There is no perch nearby to sit on." + return + +/* + * Sub-types + */ +/mob/living/simple_animal/parrot/Poly + name = "Poly" + desc = "Poly the Parrot. An expert on quantum cracker theory." + speak = list("Poly wanna cracker!", ":e Check the singlo, you chucklefucks!",":e Wire the solars, you lazy bums!",":e WHO TOOK THE DAMN HARDSUITS?",":e OH GOD ITS FREE CALL THE SHUTTLE") + +/mob/living/simple_animal/parrot/Poly/New() + ears = new /obj/item/device/radio/headset/headset_eng(src) + available_channels = list(":e") + ..() + +/mob/living/simple_animal/parrot/say(var/message) + + if(stat) + return + + var/verb = "says" + if(speak_emote.len) + verb = pick(speak_emote) + + + var/message_mode="" + if(copytext(message,1,2) == ";") + message_mode = "headset" + message = copytext(message,2) + + if(length(message) >= 2) + var/channel_prefix = copytext(message, 1 ,3) + message_mode = department_radio_keys[channel_prefix] + + if(copytext(message,1,2) == ":") + var/positioncut = 3 + message = trim(copytext(message,positioncut)) + + message = capitalize(trim_left(message)) + + if(message_mode) + if(message_mode in radiochannels) + if(ears && istype(ears,/obj/item/device/radio)) + ears.talk_into(src,sanitize(message), message_mode, verb, null) + + + ..(message) + + +/mob/living/simple_animal/parrot/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "",var/italics = 0, var/mob/speaker = null) + if(prob(50)) + parrot_hear(message) + ..(message,verb,language,alt_name,italics,speaker) + + + +/mob/living/simple_animal/parrot/hear_radio(var/message, var/verb="says", var/datum/language/language=null, var/part_a, var/part_b, var/part_c, var/mob/speaker = null, var/hard_to_hear = 0) + if(prob(50)) + parrot_hear("[pick(available_channels)] [message]") + ..(message,verb,language,part_a,part_b,speaker,hard_to_hear) + + +/mob/living/simple_animal/parrot/proc/parrot_hear(var/message="") + if(!message || stat) + return + speech_buffer.Add(message) + +/mob/living/simple_animal/parrot/attack_generic(var/mob/user, var/damage, var/attack_message) + + var/success = ..() + + if(client) + return success + + if(parrot_state == PARROT_PERCH) + parrot_sleep_dur = parrot_sleep_max //Reset it's sleep timer if it was perched + + if(!success) + return 0 + + parrot_interest = user + parrot_state = PARROT_SWOOP | PARROT_ATTACK //Attack other animals regardless + icon_state = "parrot_fly" return success \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/penguin.dm b/code/modules/mob/living/simple_animal/animals/penguin.dm similarity index 94% rename from code/modules/mob/living/simple_animal/friendly/penguin.dm rename to code/modules/mob/living/simple_animal/animals/penguin.dm index b843013c396..40c085a72f7 100644 --- a/code/modules/mob/living/simple_animal/friendly/penguin.dm +++ b/code/modules/mob/living/simple_animal/animals/penguin.dm @@ -5,15 +5,21 @@ icon_living = "penguin" icon_dead = "penguin_dead" icon_gib = "generic_gib" - speak_chance = 0 - turns_per_move = 5 + maxHealth = 20 health = 20 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + turns_per_move = 5 + response_help = "pets" response_disarm = "pushes aside" response_harm = "hits" + harm_intent_damage = 5 - melee_damage_upper = 15 melee_damage_lower = 10 - attacktext = "pecked" \ No newline at end of file + melee_damage_upper = 15 + attacktext = "pecked" + + speak_chance = 0 + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat diff --git a/code/modules/mob/living/simple_animal/friendly/slime.dm b/code/modules/mob/living/simple_animal/animals/slime.dm similarity index 96% rename from code/modules/mob/living/simple_animal/friendly/slime.dm rename to code/modules/mob/living/simple_animal/animals/slime.dm index 77d52741ae2..7d5fa16dab2 100644 --- a/code/modules/mob/living/simple_animal/friendly/slime.dm +++ b/code/modules/mob/living/simple_animal/animals/slime.dm @@ -1,59 +1,69 @@ -/mob/living/simple_animal/slime - name = "pet slime" - desc = "A lovable, domesticated slime." - icon = 'icons/mob/slimes.dmi' - icon_state = "grey baby slime" - icon_living = "grey baby slime" - icon_dead = "grey baby slime dead" - speak_emote = list("chirps") - health = 100 - maxHealth = 100 - response_help = "pets" - response_disarm = "shoos" - response_harm = "stomps on" - emote_see = list("jiggles", "bounces in place") - var/colour = "grey" - -/mob/living/simple_animal/slime/science - name = "Kendrick" - colour = "rainbow" - icon_state = "rainbow baby slime" - icon_living = "rainbow baby slime" - icon_dead = "rainbow baby slime dead" - -/mob/living/simple_animal/slime/science/initialize() - ..() - overlays.Cut() - overlays += "aslime-:33" - -/mob/living/simple_animal/adultslime - name = "pet slime" - desc = "A lovable, domesticated slime." - icon = 'icons/mob/slimes.dmi' - health = 200 - maxHealth = 200 - icon_state = "grey adult slime" - icon_living = "grey adult slime" - icon_dead = "grey baby slime dead" - response_help = "pets" - response_disarm = "shoos" - response_harm = "stomps on" - emote_see = list("jiggles", "bounces in place") - var/colour = "grey" - -/mob/living/simple_animal/adultslime/New() - ..() - overlays += "aslime-:33" - -/mob/living/simple_animal/adultslime/death() - var/mob/living/simple_animal/slime/S1 = new /mob/living/simple_animal/slime (src.loc) - S1.icon_state = "[src.colour] baby slime" - S1.icon_living = "[src.colour] baby slime" - S1.icon_dead = "[src.colour] baby slime dead" - S1.colour = "[src.colour]" - var/mob/living/simple_animal/slime/S2 = new /mob/living/simple_animal/slime (src.loc) - S2.icon_state = "[src.colour] baby slime" - S2.icon_living = "[src.colour] baby slime" - S2.icon_dead = "[src.colour] baby slime dead" - S2.colour = "[src.colour]" +/mob/living/simple_animal/slime + name = "pet slime" + desc = "A lovable, domesticated slime." + icon = 'icons/mob/slimes.dmi' + icon_state = "grey baby slime" + icon_living = "grey baby slime" + icon_dead = "grey baby slime dead" + + maxHealth = 100 + health = 100 + + response_help = "pets" + response_disarm = "shoos" + response_harm = "stomps on" + + speak_chance = 1 + speak_emote = list("chirps") + emote_see = list("jiggles", "bounces in place") + + var/colour = "grey" + +/mob/living/simple_animal/slime/science + name = "Kendrick" + colour = "rainbow" + icon_state = "rainbow baby slime" + icon_living = "rainbow baby slime" + icon_dead = "rainbow baby slime dead" + +/mob/living/simple_animal/slime/science/initialize() + ..() + overlays.Cut() + overlays += "aslime-:33" + +/mob/living/simple_animal/adultslime + name = "pet slime" + desc = "A lovable, domesticated slime." + icon = 'icons/mob/slimes.dmi' + icon_state = "grey adult slime" + icon_living = "grey adult slime" + icon_dead = "grey baby slime dead" + + maxHealth = 200 + health = 200 + + response_help = "pets" + response_disarm = "shoos" + response_harm = "stomps on" + + speak_chance = 1 + emote_see = list("jiggles", "bounces in place") + + var/colour = "grey" + +/mob/living/simple_animal/adultslime/New() + ..() + overlays += "aslime-:33" + +/mob/living/simple_animal/adultslime/death() + var/mob/living/simple_animal/slime/S1 = new /mob/living/simple_animal/slime (src.loc) + S1.icon_state = "[src.colour] baby slime" + S1.icon_living = "[src.colour] baby slime" + S1.icon_dead = "[src.colour] baby slime dead" + S1.colour = "[src.colour]" + var/mob/living/simple_animal/slime/S2 = new /mob/living/simple_animal/slime (src.loc) + S2.icon_state = "[src.colour] baby slime" + S2.icon_living = "[src.colour] baby slime" + S2.icon_dead = "[src.colour] baby slime dead" + S2.colour = "[src.colour]" qdel(src) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm b/code/modules/mob/living/simple_animal/animals/spiderbot.dm similarity index 97% rename from code/modules/mob/living/simple_animal/friendly/spiderbot.dm rename to code/modules/mob/living/simple_animal/animals/spiderbot.dm index 6ef066a2574..1bb202d1a03 100644 --- a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm +++ b/code/modules/mob/living/simple_animal/animals/spiderbot.dm @@ -1,11 +1,35 @@ /mob/living/simple_animal/spiderbot + name = "spider-bot" + desc = "A skittering robotic friend!" + icon = 'icons/mob/robots.dmi' + icon_state = "spiderbot-chassis" + icon_living = "spiderbot-chassis" + icon_dead = "spiderbot-smashed" + + health = 10 + maxHealth = 10 + + wander = 0 + speed = -1 //Spiderbots gotta go fast. + pass_flags = PASSTABLE + mob_size = MOB_SMALL + + response_help = "pets" + response_disarm = "shoos" + response_harm = "stomps on" + + melee_damage_lower = 1 + melee_damage_upper = 3 + attacktext = "shocked" min_oxy = 0 max_tox = 0 max_co2 = 0 minbodytemp = 0 maxbodytemp = 500 - mob_size = MOB_SMALL + + speak_chance = 1 + speak_emote = list("beeps","clicks","chirps") var/obj/item/device/radio/borg/radio = null var/mob/living/silicon/ai/connected_ai = null @@ -15,31 +39,8 @@ var/list/req_access = list(access_robotics) //Access needed to pop out the brain. var/positronic - name = "spider-bot" - desc = "A skittering robotic friend!" - icon = 'icons/mob/robots.dmi' - icon_state = "spiderbot-chassis" - icon_living = "spiderbot-chassis" - icon_dead = "spiderbot-smashed" - - wander = 0 - - health = 10 - maxHealth = 10 - - attacktext = "shocked" - melee_damage_lower = 1 - melee_damage_upper = 3 - - response_help = "pets" - response_disarm = "shoos" - response_harm = "stomps on" - var/emagged = 0 var/obj/item/held_item = null //Storage for single item they can hold. - speed = -1 //Spiderbots gotta go fast. - pass_flags = PASSTABLE - speak_emote = list("beeps","clicks","chirps") /mob/living/simple_animal/spiderbot/New() ..() @@ -87,7 +88,7 @@ src.mmi = O src.transfer_personality(O) - O.loc = src + O.forceMove(src) src.update_icon() return 1 @@ -122,7 +123,7 @@ user << "You swipe your access card and pop the brain out of \the [src]." eject_brain() if(held_item) - held_item.loc = src.loc + held_item.forceMove(src.loc) held_item = null return 1 else @@ -171,7 +172,7 @@ if(mmi) var/turf/T = get_turf(loc) if(T) - mmi.loc = T + mmi.forceMove(T) if(mind) mind.transfer_to(mmi.brainmob) mmi = null real_name = initial(real_name) @@ -201,7 +202,7 @@ if(camera) camera.status = 0 - held_item.loc = src.loc + held_item.forceMove(src.loc) held_item = null gibs(loc, null, null, /obj/effect/gibspawner/robot) //TODO: use gib() or refactor spiderbots into synthetics. @@ -226,7 +227,7 @@ "You launch \the [held_item]!", \ "You hear a skittering noise and a thump!") var/obj/item/weapon/grenade/G = held_item - G.loc = src.loc + G.forceMove(src.loc) G.prime() held_item = null return 1 @@ -235,7 +236,7 @@ "You drop \the [held_item].", \ "You hear a skittering noise and a soft thump.") - held_item.loc = src.loc + held_item.forceMove(src.loc) held_item = null return 1 @@ -264,7 +265,7 @@ for(var/obj/item/I in view(1, src)) if(selection == I) held_item = selection - selection.loc = src + selection.forceMove(src) visible_message("\The [src] scoops up \the [held_item].", \ "You grab \the [held_item].", \ "You hear a skittering noise and a clink.") @@ -284,4 +285,4 @@ return /mob/living/simple_animal/spiderbot/binarycheck() - return positronic \ No newline at end of file + return positronic diff --git a/code/modules/mob/living/simple_animal/friendly/tomato.dm b/code/modules/mob/living/simple_animal/animals/tomato.dm similarity index 83% rename from code/modules/mob/living/simple_animal/friendly/tomato.dm rename to code/modules/mob/living/simple_animal/animals/tomato.dm index e0574ba9254..ea133a85818 100644 --- a/code/modules/mob/living/simple_animal/friendly/tomato.dm +++ b/code/modules/mob/living/simple_animal/animals/tomato.dm @@ -1,18 +1,22 @@ -/mob/living/simple_animal/tomato - name = "tomato" - desc = "It's a horrifyingly enormous beef tomato, and it's packing extra beef!" - icon_state = "tomato" - icon_living = "tomato" - icon_dead = "tomato_dead" - speak_chance = 0 - turns_per_move = 5 - maxHealth = 15 - health = 15 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/tomatomeat - response_help = "prods" - response_disarm = "pushes aside" - response_harm = "smacks" - harm_intent_damage = 5 - melee_damage_upper = 15 - melee_damage_lower = 10 - attacktext = "mauled" \ No newline at end of file +/mob/living/simple_animal/hostile/tomato + name = "tomato" + desc = "It's a horrifyingly enormous beef tomato, and it's packing extra beef!" + icon_state = "tomato" + icon_living = "tomato" + icon_dead = "tomato_dead" + + faction = "plants" + maxHealth = 15 + health = 15 + turns_per_move = 5 + + response_help = "prods" + response_disarm = "pushes aside" + response_harm = "smacks" + + harm_intent_damage = 5 + melee_damage_upper = 15 + melee_damage_lower = 10 + attacktext = "mauled" + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/tomatomeat diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/animals/tree.dm similarity index 85% rename from code/modules/mob/living/simple_animal/hostile/tree.dm rename to code/modules/mob/living/simple_animal/animals/tree.dm index 1c438d2bc8b..bf97641248e 100644 --- a/code/modules/mob/living/simple_animal/hostile/tree.dm +++ b/code/modules/mob/living/simple_animal/animals/tree.dm @@ -1,56 +1,57 @@ -/mob/living/simple_animal/hostile/tree - name = "pine tree" - desc = "A pissed off tree-like alien. It seems annoyed with the festivities..." - icon = 'icons/obj/flora/pinetrees.dmi' - icon_state = "pine_1" - icon_living = "pine_1" - icon_dead = "pine_1" - icon_gib = "pine_1" - speak_chance = 0 - turns_per_move = 5 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat - response_help = "brushes" - response_disarm = "pushes" - response_harm = "hits" - speed = -1 - maxHealth = 250 - health = 250 - - pixel_x = -16 - - harm_intent_damage = 5 - melee_damage_lower = 8 - melee_damage_upper = 12 - attacktext = "bitten" - attack_sound = 'sound/weapons/bite.ogg' - - //Space carp aren't affected by atmos. - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - - faction = "carp" - -/mob/living/simple_animal/hostile/tree/FindTarget() - . = ..() - if(.) - audible_emote("growls at [.]") - -/mob/living/simple_animal/hostile/tree/AttackingTarget() - . =..() - var/mob/living/L = . - if(istype(L)) - if(prob(15)) - L.Weaken(3) - L.visible_message("\the [src] knocks down \the [L]!") - -/mob/living/simple_animal/hostile/tree/death() - ..(null,"is hacked into pieces!") - new /obj/item/stack/material/wood(loc) +/mob/living/simple_animal/hostile/tree + name = "pine tree" + desc = "A pissed off tree-like alien. It seems annoyed with the festivities..." + icon = 'icons/obj/flora/pinetrees.dmi' + icon_state = "pine_1" + icon_living = "pine_1" + icon_dead = "pine_1" + icon_gib = "pine_1" + + faction = "carp" //Trees can be carp friends? + maxHealth = 250 + health = 250 + speed = -1 + + turns_per_move = 5 + + response_help = "brushes" + response_disarm = "pushes" + response_harm = "hits" + + harm_intent_damage = 5 + melee_damage_lower = 8 + melee_damage_upper = 12 + attacktext = "bitten" + attack_sound = 'sound/weapons/bite.ogg' + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat + + pixel_x = -16 + +/mob/living/simple_animal/hostile/tree/FindTarget() + . = ..() + if(.) + audible_emote("growls at [.]") + +/mob/living/simple_animal/hostile/tree/PunchTarget() + . =..() + var/mob/living/L = . + if(istype(L)) + if(prob(15)) + L.Weaken(3) + L.visible_message("\the [src] knocks down \the [L]!") + +/mob/living/simple_animal/hostile/tree/death() + ..(null,"is hacked into pieces!") + new /obj/item/stack/material/wood(loc) qdel(src) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/worm.dm b/code/modules/mob/living/simple_animal/animals/worm.dm similarity index 95% rename from code/modules/mob/living/simple_animal/worm.dm rename to code/modules/mob/living/simple_animal/animals/worm.dm index e8663339c10..dfb8a5a195b 100644 --- a/code/modules/mob/living/simple_animal/worm.dm +++ b/code/modules/mob/living/simple_animal/animals/worm.dm @@ -1,200 +1,198 @@ -/mob/living/simple_animal/space_worm - name = "space worm segment" - desc = "A part of a space worm." - icon = 'icons/mob/animal.dmi' - icon_state = "spaceworm" - icon_living = "spaceworm" - icon_dead = "spacewormdead" - status_flags = 0 - - speak_emote = list("transmits") //not supposed to be used under AI control - emote_hear = list("transmits") //I'm just adding it so it doesn't runtime if controlled by player who speaks - - response_help = "touches" - response_disarm = "flails at" - response_harm = "punches the" - - harm_intent_damage = 2 - - maxHealth = 30 - health = 30 - - universal_speak =1 - - stop_automated_movement = 1 - animate_movement = SYNC_STEPS - - minbodytemp = 0 - maxbodytemp = 350 - min_oxy = 0 - max_co2 = 0 - max_tox = 0 - - a_intent = I_HURT //so they don't get pushed around - - environment_smash = 2 - - speed = -1 - - var/mob/living/simple_animal/space_worm/previous //next/previous segments, correspondingly - var/mob/living/simple_animal/space_worm/next //head is the nextest segment - - var/stomachProcessProbability = 50 - var/digestionProbability = 20 - var/flatPlasmaValue = 5 //flat plasma amount given for non-items - - var/atom/currentlyEating //what the worm is currently eating - var/eatingDuration = 0 //how long he's been eating it for - - head - name = "space worm head" - icon_state = "spacewormhead" - icon_living = "spacewormhead" - icon_dead = "spacewormdead" - - maxHealth = 20 - health = 20 - - melee_damage_lower = 10 - melee_damage_upper = 15 - attacktext = "bitten" - - animate_movement = SLIDE_STEPS - - New(var/location, var/segments = 6) - ..() - - var/mob/living/simple_animal/space_worm/current = src - - for(var/i = 1 to segments) - var/mob/living/simple_animal/space_worm/newSegment = new /mob/living/simple_animal/space_worm(loc) - current.Attach(newSegment) - current = newSegment - - update_icon() - if(stat == CONSCIOUS || stat == UNCONSCIOUS) - icon_state = "spacewormhead[previous?1:0]" - if(previous) - set_dir(get_dir(previous,src)) - else - icon_state = "spacewormheaddead" - - Life() - ..() - - if(next && !(next in view(src,1))) - Detach() - - if(stat == DEAD) //dead chunks fall off and die immediately - if(previous) - previous.Detach() - if(next) - Detach(1) - - if(prob(stomachProcessProbability)) - ProcessStomach() - - update_icon() - - return - - Destroy() //if a chunk a destroyed, make a new worm out of the split halves - if(previous) - previous.Detach() - ..() - - Move() - var/attachementNextPosition = loc - if(..()) - if(previous) - previous.Move(attachementNextPosition) - update_icon() - - Bump(atom/obstacle) - if(currentlyEating != obstacle) - currentlyEating = obstacle - eatingDuration = 0 - - if(!AttemptToEat(obstacle)) - eatingDuration++ - else - currentlyEating = null - eatingDuration = 0 - - return - - update_icon() //only for the sake of consistency with the other update icon procs - if(stat == CONSCIOUS || stat == UNCONSCIOUS) - if(previous) //midsection - icon_state = "spaceworm[get_dir(src,previous) | get_dir(src,next)]" //see 3 lines below - else //tail - icon_state = "spacewormtail" - set_dir(get_dir(src,next)) //next will always be present since it's not a head and if it's dead, it goes in the other if branch - else - icon_state = "spacewormdead" - - return - - proc/AttemptToEat(var/atom/target) - if(istype(target,/turf/simulated/wall)) - var/turf/simulated/wall/W = target - if((!W.reinf_material && eatingDuration >= 100) || eatingDuration >= 200) //need 20 ticks to eat an rwall, 10 for a regular one - W.dismantle_wall() - return 1 - else if(istype(target,/atom/movable)) - if(istype(target,/mob) || eatingDuration >= 50) //5 ticks to eat stuff like airlocks - var/atom/movable/objectOrMob = target - contents += objectOrMob - return 1 - - return 0 - - proc/Attach(var/mob/living/simple_animal/space_worm/attachement) - if(!attachement) - return - - previous = attachement - attachement.next = src - - return - - proc/Detach(die = 0) - var/mob/living/simple_animal/space_worm/newHead = new /mob/living/simple_animal/space_worm/head(loc,0) - var/mob/living/simple_animal/space_worm/newHeadPrevious = previous - - previous = null //so that no extra heads are spawned - - newHead.Attach(newHeadPrevious) - - if(die) - newHead.death() - - qdel(src) - - proc/ProcessStomach() - for(var/atom/movable/stomachContent in contents) - if(prob(digestionProbability)) - if(istype(stomachContent,/obj/item/stack)) //converts to plasma, keeping the stack value - if(!istype(stomachContent,/obj/item/stack/material/phoron)) - var/obj/item/stack/oldStack = stomachContent - new /obj/item/stack/material/phoron(src, oldStack.get_amount()) - qdel(oldStack) - continue - else if(istype(stomachContent,/obj/item)) //converts to plasma, keeping the w_class - var/obj/item/oldItem = stomachContent - new /obj/item/stack/material/phoron(src, oldItem.w_class) - qdel(oldItem) - continue - else - new /obj/item/stack/material/phoron(src, flatPlasmaValue) //just flat amount - qdel(stomachContent) - continue - - if(previous) - for(var/atom/movable/stomachContent in contents) //transfer it along the digestive tract - previous.contents += stomachContent - else - for(var/atom/movable/stomachContent in contents) //or poop it out - loc.contents += stomachContent - - return +/mob/living/simple_animal/space_worm + name = "space worm segment" + desc = "A part of a space worm." + icon = 'icons/mob/animal.dmi' + icon_state = "spaceworm" + icon_living = "spaceworm" + icon_dead = "spacewormdead" + + + maxHealth = 30 + health = 30 + speed = -1 + + status_flags = 0 + universal_speak = 1 + stop_automated_movement = 1 + wander = 0 + animate_movement = SYNC_STEPS + + response_help = "touches" + response_disarm = "flails at" + response_harm = "punches the" + + harm_intent_damage = 2 + + minbodytemp = 0 + maxbodytemp = 350 + min_oxy = 0 + max_co2 = 0 + max_tox = 0 + + environment_smash = 2 + + speak_emote = list("transmits") //not supposed to be used under AI control + emote_hear = list("transmits") //I'm just adding it so it doesn't runtime if controlled by player who speaks + + var/mob/living/simple_animal/space_worm/previous //next/previous segments, correspondingly + var/mob/living/simple_animal/space_worm/next //head is the nextest segment + + var/stomachProcessProbability = 50 + var/digestionProbability = 20 + var/flatPlasmaValue = 5 //flat plasma amount given for non-items + + var/atom/currentlyEating //what the worm is currently eating + var/eatingDuration = 0 //how long he's been eating it for + + head + name = "space worm head" + icon_state = "spacewormhead" + icon_living = "spacewormhead" + icon_dead = "spacewormdead" + + maxHealth = 20 + health = 20 + + melee_damage_lower = 10 + melee_damage_upper = 15 + attacktext = "bitten" + + animate_movement = SLIDE_STEPS + + New(var/location, var/segments = 6) + ..() + + var/mob/living/simple_animal/space_worm/current = src + + for(var/i = 1 to segments) + var/mob/living/simple_animal/space_worm/newSegment = new /mob/living/simple_animal/space_worm(loc) + current.Attach(newSegment) + current = newSegment + + update_icon() + if(stat == CONSCIOUS || stat == UNCONSCIOUS) + icon_state = "spacewormhead[previous?1:0]" + if(previous) + set_dir(get_dir(previous,src)) + else + icon_state = "spacewormheaddead" + + Life() + ..() + + if(next && !(next in view(src,1))) + Detach() + + if(stat == DEAD) //dead chunks fall off and die immediately + if(previous) + previous.Detach() + if(next) + Detach(1) + + if(prob(stomachProcessProbability)) + ProcessStomach() + + update_icon() + + return + + Destroy() //if a chunk a destroyed, make a new worm out of the split halves + if(previous) + previous.Detach() + ..() + + Move() + var/attachementNextPosition = loc + if(..()) + if(previous) + previous.Move(attachementNextPosition) + update_icon() + + Bump(atom/obstacle) + if(currentlyEating != obstacle) + currentlyEating = obstacle + eatingDuration = 0 + + if(!AttemptToEat(obstacle)) + eatingDuration++ + else + currentlyEating = null + eatingDuration = 0 + + return + + update_icon() //only for the sake of consistency with the other update icon procs + if(stat == CONSCIOUS || stat == UNCONSCIOUS) + if(previous) //midsection + icon_state = "spaceworm[get_dir(src,previous) | get_dir(src,next)]" //see 3 lines below + else //tail + icon_state = "spacewormtail" + set_dir(get_dir(src,next)) //next will always be present since it's not a head and if it's dead, it goes in the other if branch + else + icon_state = "spacewormdead" + + return + + proc/AttemptToEat(var/atom/target) + if(istype(target,/turf/simulated/wall)) + var/turf/simulated/wall/W = target + if((!W.reinf_material && eatingDuration >= 100) || eatingDuration >= 200) //need 20 ticks to eat an rwall, 10 for a regular one + W.dismantle_wall() + return 1 + else if(istype(target,/atom/movable)) + if(istype(target,/mob) || eatingDuration >= 50) //5 ticks to eat stuff like airlocks + var/atom/movable/objectOrMob = target + contents += objectOrMob + return 1 + + return 0 + + proc/Attach(var/mob/living/simple_animal/space_worm/attachement) + if(!attachement) + return + + previous = attachement + attachement.next = src + + return + + proc/Detach(die = 0) + var/mob/living/simple_animal/space_worm/newHead = new /mob/living/simple_animal/space_worm/head(loc,0) + var/mob/living/simple_animal/space_worm/newHeadPrevious = previous + + previous = null //so that no extra heads are spawned + + newHead.Attach(newHeadPrevious) + + if(die) + newHead.death() + + qdel(src) + + proc/ProcessStomach() + for(var/atom/movable/stomachContent in contents) + if(prob(digestionProbability)) + if(istype(stomachContent,/obj/item/stack)) //converts to plasma, keeping the stack value + if(!istype(stomachContent,/obj/item/stack/material/phoron)) + var/obj/item/stack/oldStack = stomachContent + new /obj/item/stack/material/phoron(src, oldStack.get_amount()) + qdel(oldStack) + continue + else if(istype(stomachContent,/obj/item)) //converts to plasma, keeping the w_class + var/obj/item/oldItem = stomachContent + new /obj/item/stack/material/phoron(src, oldItem.w_class) + qdel(oldItem) + continue + else + new /obj/item/stack/material/phoron(src, flatPlasmaValue) //just flat amount + qdel(stomachContent) + continue + + if(previous) + for(var/atom/movable/stomachContent in contents) //transfer it along the digestive tract + previous.contents += stomachContent + else + for(var/atom/movable/stomachContent in contents) //or poop it out + loc.contents += stomachContent + + return diff --git a/code/modules/mob/living/simple_animal/borer/borer.dm b/code/modules/mob/living/simple_animal/borer/borer.dm index dfcefb28a18..f6a0fa3010d 100644 --- a/code/modules/mob/living/simple_animal/borer/borer.dm +++ b/code/modules/mob/living/simple_animal/borer/borer.dm @@ -158,7 +158,7 @@ if(host.mind) borers.remove_antagonist(host.mind) - src.loc = get_turf(host) + src.forceMove(get_turf(host)) reset_view(null) machine = null diff --git a/code/modules/mob/living/simple_animal/borer/borer_powers.dm b/code/modules/mob/living/simple_animal/borer/borer_powers.dm index a95a22b948a..de4bfd4c5b6 100644 --- a/code/modules/mob/living/simple_animal/borer/borer_powers.dm +++ b/code/modules/mob/living/simple_animal/borer/borer_powers.dm @@ -105,7 +105,7 @@ src.host = M src.host.status_flags |= PASSEMOTES - src.loc = M + src.forceMove(M) //Update their traitor status. if(host.mind) diff --git a/code/modules/mob/living/simple_animal/constructs/soulstone.dm b/code/modules/mob/living/simple_animal/constructs/soulstone.dm index 08160f257f7..05087c40368 100644 --- a/code/modules/mob/living/simple_animal/constructs/soulstone.dm +++ b/code/modules/mob/living/simple_animal/constructs/soulstone.dm @@ -131,7 +131,7 @@ qdel(animation) var/mob/living/simple_animal/shade/S = new /mob/living/simple_animal/shade( T.loc ) - S.loc = src //put shade in stone + S.forceMove(src) //put shade in stone S.status_flags |= GODMODE //So they won't die inside the stone somehow S.canmove = 0//Can't move out of the soul stone S.name = "Shade of [T.real_name]" @@ -167,7 +167,7 @@ U << "Capture failed!: The soul stone has already been imprinted with [src.imprinted]'s mind!" return - T.loc = src //put shade in stone + T.forceMove(src) //put shade in stone T.status_flags |= GODMODE T.canmove = 0 T.health = T.maxHealth diff --git a/code/modules/mob/living/simple_animal/friendly/mushroom.dm b/code/modules/mob/living/simple_animal/friendly/mushroom.dm deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm deleted file mode 100644 index 52704d85cd9..00000000000 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ /dev/null @@ -1,223 +0,0 @@ - -#define SPINNING_WEB 1 -#define LAYING_EGGS 2 -#define MOVING_TO_TARGET 3 -#define SPINNING_COCOON 4 - -//basic spider mob, these generally guard nests -/mob/living/simple_animal/hostile/giant_spider - name = "giant spider" - desc = "Furry and black, it makes you shudder to look at it. This one has deep red eyes." - icon_state = "guard" - icon_living = "guard" - icon_dead = "guard_dead" - speak_emote = list("chitters") - emote_hear = list("chitters") - speak_chance = 5 - turns_per_move = 5 - see_in_dark = 10 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "punches" - stop_automated_movement_when_pulled = 0 - maxHealth = 200 - health = 200 - melee_damage_lower = 15 - melee_damage_upper = 20 - heat_damage_per_tick = 20 - cold_damage_per_tick = 20 - var/poison_per_bite = 5 - var/poison_chance = 10 - var/poison_type = "spidertoxin" - faction = "spiders" - var/busy = 0 - pass_flags = PASSTABLE - move_to_delay = 6 - speed = 3 - -//nursemaids - these create webs and eggs -/mob/living/simple_animal/hostile/giant_spider/nurse - desc = "Furry and black, it makes you shudder to look at it. This one has brilliant green eyes." - icon_state = "nurse" - icon_living = "nurse" - icon_dead = "nurse_dead" - maxHealth = 40 - health = 40 - melee_damage_lower = 5 - melee_damage_upper = 10 - poison_per_bite = 7 - var/atom/cocoon_target - poison_type = "stoxin" - var/fed = 0 - -//hunters have the most poison and move the fastest, so they can find prey -/mob/living/simple_animal/hostile/giant_spider/hunter - desc = "Furry and black, it makes you shudder to look at it. This one has sparkling purple eyes." - icon_state = "hunter" - icon_living = "hunter" - icon_dead = "hunter_dead" - maxHealth = 120 - health = 120 - melee_damage_lower = 10 - melee_damage_upper = 20 - poison_per_bite = 5 - move_to_delay = 4 - -/mob/living/simple_animal/hostile/giant_spider/New(var/location, var/atom/parent) - get_light_and_color(parent) - ..() - -/mob/living/simple_animal/hostile/giant_spider/AttackingTarget() - . = ..() - if(isliving(.)) - var/mob/living/L = . - if(L.reagents) - L.reagents.add_reagent(poison_type, poison_per_bite) - if(prob(poison_chance)) - L << "You feel a tiny prick." - L.reagents.add_reagent(poison_type, poison_per_bite) - -/mob/living/simple_animal/hostile/giant_spider/nurse/AttackingTarget() - . = ..() - if(ishuman(.)) - var/mob/living/carbon/human/H = . - if(prob(5)) - var/obj/item/organ/external/O = pick(H.organs) - if(!(O.robotic >= ORGAN_ROBOT)) - var/eggcount - for(var/obj/I in O.implants) - if(istype(I, /obj/effect/spider/eggcluster)) - eggcount ++ - if(!eggcount) - var/eggs = PoolOrNew(/obj/effect/spider/eggcluster/small, list(O, src)) - O.implants += eggs - H << "The [src] injects something into your [O.name]!" - -/mob/living/simple_animal/hostile/giant_spider/Life() - ..() - if(!stat) - if(stance == STANCE_IDLE) - //1% chance to skitter madly away - if(!busy && prob(1)) - /*var/list/move_targets = list() - for(var/turf/T in orange(20, src)) - move_targets.Add(T)*/ - stop_automated_movement = 1 - walk_to(src, pick(orange(20, src)), 1, move_to_delay) - spawn(50) - stop_automated_movement = 0 - walk(src,0) - -/mob/living/simple_animal/hostile/giant_spider/nurse/proc/GiveUp(var/C) - spawn(100) - if(busy == MOVING_TO_TARGET) - if(cocoon_target == C && get_dist(src,cocoon_target) > 1) - cocoon_target = null - busy = 0 - stop_automated_movement = 0 - -/mob/living/simple_animal/hostile/giant_spider/nurse/Life() - ..() - if(!stat) - if(stance == STANCE_IDLE) - var/list/can_see = view(src, 10) - //30% chance to stop wandering and do something - if(!busy && prob(30)) - //first, check for potential food nearby to cocoon - for(var/mob/living/C in can_see) - if(C.stat) - cocoon_target = C - busy = MOVING_TO_TARGET - walk_to(src, C, 1, move_to_delay) - //give up if we can't reach them after 10 seconds - GiveUp(C) - return - - //second, spin a sticky spiderweb on this tile - var/obj/effect/spider/stickyweb/W = locate() in get_turf(src) - if(!W) - busy = SPINNING_WEB - src.visible_message("\The [src] begins to secrete a sticky substance.") - stop_automated_movement = 1 - spawn(40) - if(busy == SPINNING_WEB) - new /obj/effect/spider/stickyweb(src.loc) - busy = 0 - stop_automated_movement = 0 - else - //third, lay an egg cluster there - var/obj/effect/spider/eggcluster/E = locate() in get_turf(src) - if(!E && fed > 0) - busy = LAYING_EGGS - src.visible_message("\The [src] begins to lay a cluster of eggs.") - stop_automated_movement = 1 - spawn(50) - if(busy == LAYING_EGGS) - E = locate() in get_turf(src) - if(!E) - PoolOrNew(/obj/effect/spider/eggcluster, list(loc, src)) - fed-- - busy = 0 - stop_automated_movement = 0 - else - //fourthly, cocoon any nearby items so those pesky pinkskins can't use them - for(var/obj/O in can_see) - - if(O.anchored) - continue - - if(istype(O, /obj/item) || istype(O, /obj/structure) || istype(O, /obj/machinery)) - cocoon_target = O - busy = MOVING_TO_TARGET - stop_automated_movement = 1 - walk_to(src, O, 1, move_to_delay) - //give up if we can't reach them after 10 seconds - GiveUp(O) - - else if(busy == MOVING_TO_TARGET && cocoon_target) - if(get_dist(src, cocoon_target) <= 1) - busy = SPINNING_COCOON - src.visible_message("\The [src] begins to secrete a sticky substance around \the [cocoon_target].") - stop_automated_movement = 1 - walk(src,0) - spawn(50) - if(busy == SPINNING_COCOON) - if(cocoon_target && istype(cocoon_target.loc, /turf) && get_dist(src,cocoon_target) <= 1) - var/obj/effect/spider/cocoon/C = new(cocoon_target.loc) - var/large_cocoon = 0 - C.pixel_x = cocoon_target.pixel_x - C.pixel_y = cocoon_target.pixel_y - for(var/mob/living/M in C.loc) - if(istype(M, /mob/living/simple_animal/hostile/giant_spider)) - continue - large_cocoon = 1 - fed++ - src.visible_message("\The [src] sticks a proboscis into \the [cocoon_target] and sucks a viscous substance out.") - M.loc = C - C.pixel_x = M.pixel_x - C.pixel_y = M.pixel_y - break - for(var/obj/item/I in C.loc) - I.loc = C - for(var/obj/structure/S in C.loc) - if(!S.anchored) - S.loc = C - large_cocoon = 1 - for(var/obj/machinery/M in C.loc) - if(!M.anchored) - M.loc = C - large_cocoon = 1 - if(large_cocoon) - C.icon_state = pick("cocoon_large1","cocoon_large2","cocoon_large3") - busy = 0 - stop_automated_movement = 0 - - else - busy = 0 - stop_automated_movement = 0 - -#undef SPINNING_WEB -#undef LAYING_EGGS -#undef MOVING_TO_TARGET -#undef SPINNING_COCOON diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm deleted file mode 100644 index 6269bd4634e..00000000000 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ /dev/null @@ -1,8 +0,0 @@ -/mob/living/simple_animal/hostile - faction = "hostile" - break_stuff_probability = 10 - stop_automated_movement_when_pulled = 0 - destroy_surroundings = 1 - a_intent = I_HURT - hostile = 1 - \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm deleted file mode 100644 index ac352edd1a7..00000000000 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm +++ /dev/null @@ -1,49 +0,0 @@ -/mob/living/simple_animal/hostile/retaliate - var/list/enemies = list() - -/mob/living/simple_animal/hostile/retaliate/Found(var/atom/A) - if(isliving(A)) - var/mob/living/L = A - if(!L.stat) - stance = STANCE_ATTACK - return L - else - enemies -= L - else if(istype(A, /obj/mecha)) - var/obj/mecha/M = A - if(M.occupant) - stance = STANCE_ATTACK - return A - -/mob/living/simple_animal/hostile/retaliate/ListTargets() - if(!enemies.len) - return list() - var/list/see = ..() - see &= enemies // Remove all entries that aren't in enemies - return see - -/mob/living/simple_animal/hostile/retaliate/proc/Retaliate() - ..() - var/list/around = view(src, 7) - - for(var/atom/movable/A in around) - if(A == src) - continue - if(isliving(A)) - var/mob/living/M = A - if(!attack_same && M.faction != faction) - enemies |= M - else if(istype(A, /obj/mecha)) - var/obj/mecha/M = A - if(M.occupant) - enemies |= M - enemies |= M.occupant - - for(var/mob/living/simple_animal/hostile/retaliate/H in around) - if(!attack_same && !H.attack_same && H.faction == faction) - H.enemies |= enemies - return 0 - -/mob/living/simple_animal/hostile/retaliate/adjustBruteLoss(var/damage) - ..(damage) - Retaliate() diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm b/code/modules/mob/living/simple_animal/humanoids/clown.dm similarity index 84% rename from code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm rename to code/modules/mob/living/simple_animal/humanoids/clown.dm index 5a6a7e57688..5bf310b1655 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm +++ b/code/modules/mob/living/simple_animal/humanoids/clown.dm @@ -1,39 +1,47 @@ -/mob/living/simple_animal/hostile/retaliate/clown - name = "clown" - desc = "A denizen of clown planet" - icon_state = "clown" - icon_living = "clown" - icon_dead = "clown_dead" - icon_gib = "clown_gib" - speak_chance = 0 - turns_per_move = 5 - response_help = "pokes" - response_disarm = "gently pushes aside" - response_harm = "hits" - speak = list("HONK", "Honk!", "Welcome to clown planet!") - emote_see = list("honks") - speak_chance = 1 - a_intent = I_HURT - stop_automated_movement_when_pulled = 0 - maxHealth = 75 - health = 75 - speed = -1 - harm_intent_damage = 8 - melee_damage_lower = 10 - melee_damage_upper = 10 - attacktext = "attacked" - attack_sound = 'sound/items/bikehorn.ogg' - - min_oxy = 5 - max_oxy = 0 - min_tox = 0 - max_tox = 1 - min_co2 = 0 - max_co2 = 5 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 270 - maxbodytemp = 370 - heat_damage_per_tick = 15 //amount of damage applied if animal's body temperature is higher than maxbodytemp - cold_damage_per_tick = 10 //same as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp - unsuitable_atoms_damage = 10 +/mob/living/simple_animal/hostile/clown + name = "clown" + desc = "A denizen of clown planet" + icon_state = "clown" + icon_living = "clown" + icon_dead = "clown_dead" + icon_gib = "clown_gib" + + faction = "clown" + maxHealth = 75 + health = 75 + speed = -1 + move_to_delay = 2 + + run_at_them = 0 + cooperative = 1 + + turns_per_move = 5 + stop_when_pulled = 0 + + response_help = "pokes" + response_disarm = "gently pushes aside" + response_harm = "hits" + + harm_intent_damage = 8 + melee_damage_lower = 10 + melee_damage_upper = 10 + attacktext = "attacked" + attack_sound = 'sound/items/bikehorn.ogg' + + min_oxy = 5 + max_oxy = 0 + min_tox = 0 + max_tox = 1 + min_co2 = 0 + max_co2 = 5 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 270 + maxbodytemp = 370 + heat_damage_per_tick = 15 //amount of damage applied if animal's body temperature is higher than maxbodytemp + cold_damage_per_tick = 10 //same as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp + unsuitable_atoms_damage = 10 + + speak_chance = 1 + speak = list("HONK", "Honk!", "Welcome to clown planet!") + emote_see = list("honks") diff --git a/code/modules/mob/living/simple_animal/head.dm b/code/modules/mob/living/simple_animal/humanoids/head.dm similarity index 92% rename from code/modules/mob/living/simple_animal/head.dm rename to code/modules/mob/living/simple_animal/humanoids/head.dm index 88a9f3d6cae..f0e8b8abde4 100644 --- a/code/modules/mob/living/simple_animal/head.dm +++ b/code/modules/mob/living/simple_animal/humanoids/head.dm @@ -5,16 +5,23 @@ icon_state = "crab" icon_living = "crab" icon_dead = "crab_dead" - speak_emote = list("clicks") - emote_hear = list("clicks") - emote_see = list("clacks") + + wander = 0 + stop_automated_movement = 1 universal_speak = 1 - speak_chance = 1 turns_per_move = 5 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + response_help = "pets" response_disarm = "gently pushes aside" response_harm = "punches" + + speak_chance = 1 + speak_emote = list("clicks") + emote_hear = list("clicks") + emote_see = list("clacks") + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + var/list/insults = list( "Man you suck", "You look like the most retarded douche around", @@ -32,22 +39,15 @@ "Say \"what\" again. Say \"what\" again. I dare you. I double-dare you, motherfucker. Say \"what\" one more goddamn time.", "Ezekiel 25:17 ,The path of the righteous man is beset on all sides by the iniquities of the selfish and the tyranny of evil men. Blessed is he who in the name of charity and good will shepherds the weak through the valley of darkness, for he is truly his brother's keeper and the finder of lost children. And I will strike down upon thee with great vengeance and furious anger those who attempt to poison and destroy my brothers. And you will know my name is the Lord... when I lay my vengeance upon thee.", "Did you notice a sign out in front of my house that said \"Dead Nigger Storage\"?") - stop_automated_movement = 1 /mob/living/simple_animal/head/Life() - if(stat == DEAD) - if(health > 0) - icon_state = icon_living - stat = CONSCIOUS - density = 1 - return - else if(health < 1) - Die() - else if(health > maxHealth) - health = maxHealth + . = ..() + if(!. || ai_inactive) return + for(var/mob/A in viewers(world.view,src)) if(A.ckey) say_something(A) + /mob/living/simple_animal/head/proc/say_something(mob/A) if(prob(85)) return diff --git a/code/modules/mob/living/simple_animal/kobold.dm b/code/modules/mob/living/simple_animal/humanoids/kobold.dm similarity index 82% rename from code/modules/mob/living/simple_animal/kobold.dm rename to code/modules/mob/living/simple_animal/humanoids/kobold.dm index 3e52a408747..8f3ce0d28c0 100644 --- a/code/modules/mob/living/simple_animal/kobold.dm +++ b/code/modules/mob/living/simple_animal/humanoids/kobold.dm @@ -6,25 +6,34 @@ icon_state = "kobold_idle" icon_living = "kobold_idle" icon_dead = "kobold_dead" - //speak = list("You no take candle!","Ooh, pretty shiny.","Me take?","Where gold here...","Me likey.") - speak_emote = list("mutters","hisses","grumbles") - emote_hear = list("mutters under it's breath.","grumbles.", "yips!") - emote_see = list("looks around suspiciously.", "scratches it's arm.","putters around a bit.") - speak_chance = 15 + + run_at_them = 0 + cooperative = 1 + turns_per_move = 5 see_in_dark = 6 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/monkey + response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" - minbodytemp = 250 + min_oxy = 16 //Require atleast 16kPA oxygen minbodytemp = 223 //Below -50 Degrees Celcius maxbodytemp = 323 //Above 50 Degrees Celcius + speak_chance = 5 + speak = list("You no take candle!","Ooh, pretty shiny.","Me take?","Where gold here...","Me likey.") + speak_emote = list("mutters","hisses","grumbles") + emote_hear = list("mutters under it's breath.","grumbles.", "yips!") + emote_see = list("looks around suspiciously.", "scratches it's arm.","putters around a bit.") + + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/monkey + /mob/living/simple_animal/kobold/Life() - ..() - if(prob(15) && turns_since_move && !stat) + . = ..() + if(!.) return + + if(prob(5)) flick("kobold_act",src) /mob/living/simple_animal/kobold/Move(var/dir) diff --git a/code/modules/mob/living/simple_animal/humanoids/mechamobs.dm b/code/modules/mob/living/simple_animal/humanoids/mechamobs.dm new file mode 100644 index 00000000000..79f389821e7 --- /dev/null +++ b/code/modules/mob/living/simple_animal/humanoids/mechamobs.dm @@ -0,0 +1,94 @@ +/mob/living/simple_animal/hostile/mecha + name = "syndicate gygax" + desc = "Well that's forboding." + icon = 'icons/mecha/mecha.dmi' + icon_state = "darkgygax" + icon_living = "darkgygax" + icon_dead = "darkgygax-broken" + + faction = "syndicate" + maxHealth = 300 + health = 300 + speed = 7 + move_to_delay = 8 + + run_at_them = 0 + cooperative = 1 + investigates = 1 + firing_lines = 1 + + turns_per_move = 5 + stop_when_pulled = 0 + + response_help = "taps on" + response_disarm = "knocks on" + response_harm = "uselessly hits" + + harm_intent_damage = 0 + melee_damage_lower = 35 + melee_damage_upper = 35 + attacktext = "slashed" + attack_sound = 'sound/weapons/bladeslice.ogg' + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + unsuitable_atoms_damage = 0 + + ranged = 1 + rapid = 1 + projectiletype = /obj/item/projectile/beam + projectilesound = 'sound/weapons/laser.ogg' + + speak_chance = 1 + speak = list("Know what we need? More meatshields.", + "Glad I finally got a mech.", + "I'll stomp those NanoTrasen dogs into paste.", + "Glad I didn't become a line chef.", + "This anti-fog visor is nice...", + "Did I refill the air tank?") + emote_hear = list("humms ominously","whirrs softly","grinds a gear") + emote_see = list("looks around the area","turns from side to side") + say_understood = list() + say_cannot = list() + say_maybe_target = list("Just my sensors?","Detecting something?","Is that...?","What was that?") + say_got_target = list("ENGAGING!!!","CONTACT!!!","TARGET SPOTTED!","FOUND ONE!") + reactions = list() + + var/datum/effect/effect/system/spark_spread/sparks + var/wreckage = /obj/effect/decal/mecha_wreckage/gygax/dark + +/mob/living/simple_animal/hostile/mecha/New() + ..() + sparks = new (src) + sparks.set_up(3, 1, src) + +/mob/living/simple_animal/hostile/mecha/Destroy() + qdel(sparks) + ..() + +/mob/living/simple_animal/hostile/mecha/Life() + . = ..() + if(!.) return + if((health < maxHealth*0.3) && prob(10)) + sparks.start() + +/mob/living/simple_animal/hostile/mecha/bullet_act() + ..() + sparks.start() + +/mob/living/simple_animal/hostile/mecha/death() + ..(0,"is explodes!") + sparks.start() + explosion(get_turf(src), 0, 0, 1, 3) + qdel(src) + new /obj/effect/decal/mecha_wreckage/gygax/dark(get_turf(src)) + +/mob/living/simple_animal/hostile/mecha/Move() + ..() + playsound(src,'sound/mecha/mechstep.ogg',40,1) diff --git a/code/modules/mob/living/simple_animal/hostile/pirate.dm b/code/modules/mob/living/simple_animal/humanoids/pirate.dm similarity index 80% rename from code/modules/mob/living/simple_animal/hostile/pirate.dm rename to code/modules/mob/living/simple_animal/humanoids/pirate.dm index 3fbbe40aa63..02d1a8eb72b 100644 --- a/code/modules/mob/living/simple_animal/hostile/pirate.dm +++ b/code/modules/mob/living/simple_animal/humanoids/pirate.dm @@ -1,56 +1,66 @@ -/mob/living/simple_animal/hostile/pirate - name = "Pirate" - desc = "Does what he wants cause a pirate is free." - icon_state = "piratemelee" - icon_living = "piratemelee" - icon_dead = "piratemelee_dead" - speak_chance = 0 - turns_per_move = 5 - response_help = "pushes" - response_disarm = "shoves" - response_harm = "hits" - speed = 4 - stop_automated_movement_when_pulled = 0 - maxHealth = 100 - health = 100 - - harm_intent_damage = 5 - melee_damage_lower = 30 - melee_damage_upper = 30 - attacktext = "slashed" - attack_sound = 'sound/weapons/bladeslice.ogg' - - min_oxy = 5 - max_oxy = 0 - min_tox = 0 - max_tox = 1 - min_co2 = 0 - max_co2 = 5 - min_n2 = 0 - max_n2 = 0 - unsuitable_atoms_damage = 15 - var/corpse = /obj/effect/landmark/mobcorpse/pirate - var/weapon1 = /obj/item/weapon/melee/energy/sword/pirate - - faction = "pirate" - -/mob/living/simple_animal/hostile/pirate/ranged - name = "Pirate Gunner" - icon_state = "pirateranged" - icon_living = "pirateranged" - icon_dead = "piratemelee_dead" - projectilesound = 'sound/weapons/laser.ogg' - ranged = 1 - projectiletype = /obj/item/projectile/beam - corpse = /obj/effect/landmark/mobcorpse/pirate/ranged - weapon1 = /obj/item/weapon/gun/energy/laser - - -/mob/living/simple_animal/hostile/pirate/death() - ..() - if(corpse) - new corpse (src.loc) - if(weapon1) - new weapon1 (src.loc) - qdel(src) +/mob/living/simple_animal/hostile/pirate + name = "Pirate" + desc = "Does what he wants cause a pirate is free." + icon_state = "piratemelee" + icon_living = "piratemelee" + icon_dead = "piratemelee_dead" + + faction = "pirate" + maxHealth = 100 + health = 100 + speed = 4 + + run_at_them = 0 + cooperative = 1 + investigates = 1 + firing_lines = 1 + returns_home = 1 + reacts = 1 + + turns_per_move = 5 + stop_when_pulled = 0 + + response_help = "pushes" + response_disarm = "shoves" + response_harm = "hits" + + harm_intent_damage = 5 + melee_damage_lower = 30 + melee_damage_upper = 30 + attacktext = "slashed" + attack_sound = 'sound/weapons/bladeslice.ogg' + + min_oxy = 5 + max_oxy = 0 + min_tox = 0 + max_tox = 1 + min_co2 = 0 + max_co2 = 5 + min_n2 = 0 + max_n2 = 0 + unsuitable_atoms_damage = 15 + + loot_list = list(/obj/item/weapon/melee/energy/sword/pirate = 100) + + var/corpse = /obj/effect/landmark/mobcorpse/pirate + +/mob/living/simple_animal/hostile/pirate/ranged + name = "Pirate Gunner" + icon_state = "pirateranged" + icon_living = "pirateranged" + icon_dead = "piratemelee_dead" + + ranged = 1 + projectiletype = /obj/item/projectile/beam + projectilesound = 'sound/weapons/laser.ogg' + + loot_list = list(/obj/item/weapon/gun/energy/laser = 100) + + corpse = /obj/effect/landmark/mobcorpse/pirate/ranged + +/mob/living/simple_animal/hostile/pirate/death() + ..() + if(corpse) + new corpse (src.loc) + qdel(src) return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/russian.dm b/code/modules/mob/living/simple_animal/humanoids/russian.dm similarity index 79% rename from code/modules/mob/living/simple_animal/hostile/russian.dm rename to code/modules/mob/living/simple_animal/humanoids/russian.dm index ee99318c153..96ff3a5177d 100644 --- a/code/modules/mob/living/simple_animal/hostile/russian.dm +++ b/code/modules/mob/living/simple_animal/humanoids/russian.dm @@ -1,55 +1,66 @@ -/mob/living/simple_animal/hostile/russian - name = "russian" - desc = "For the Motherland!" - icon_state = "russianmelee" - icon_living = "russianmelee" - icon_dead = "russianmelee_dead" - icon_gib = "syndicate_gib" - speak_chance = 0 - turns_per_move = 5 - response_help = "pokes" - response_disarm = "shoves" - response_harm = "hits" - speed = 4 - stop_automated_movement_when_pulled = 0 - maxHealth = 100 - health = 100 - harm_intent_damage = 5 - melee_damage_lower = 15 - melee_damage_upper = 15 - attacktext = "punched" - a_intent = I_HURT - var/corpse = /obj/effect/landmark/mobcorpse/russian - var/weapon1 = /obj/item/weapon/material/knife - min_oxy = 5 - max_oxy = 0 - min_tox = 0 - max_tox = 1 - min_co2 = 0 - max_co2 = 5 - min_n2 = 0 - max_n2 = 0 - unsuitable_atoms_damage = 15 - faction = "russian" - status_flags = CANPUSH - - -/mob/living/simple_animal/hostile/russian/ranged - icon_state = "russianranged" - icon_living = "russianranged" - corpse = /obj/effect/landmark/mobcorpse/russian/ranged - weapon1 = /obj/item/weapon/gun/projectile/revolver/mateba - ranged = 1 - projectiletype = /obj/item/projectile/bullet - projectilesound = 'sound/weapons/Gunshot.ogg' - casingtype = /obj/item/ammo_casing/spent - - -/mob/living/simple_animal/hostile/russian/death() - ..() - if(corpse) - new corpse (src.loc) - if(weapon1) - new weapon1 (src.loc) - qdel(src) - return \ No newline at end of file +/mob/living/simple_animal/hostile/russian + name = "russian" + desc = "For the Motherland!" + icon_state = "russianmelee" + icon_living = "russianmelee" + icon_dead = "russianmelee_dead" + icon_gib = "syndicate_gib" + + faction = "russian" + maxHealth = 100 + health = 100 + speed = 4 + + run_at_them = 0 + cooperative = 1 + investigates = 1 + firing_lines = 1 + returns_home = 1 + reacts = 1 + + turns_per_move = 5 + stop_when_pulled = 0 + status_flags = CANPUSH + + response_help = "pokes" + response_disarm = "shoves" + response_harm = "hits" + + harm_intent_damage = 5 + melee_damage_lower = 15 + melee_damage_upper = 15 + attacktext = "punched" + + min_oxy = 5 + max_oxy = 0 + min_tox = 0 + max_tox = 1 + min_co2 = 0 + max_co2 = 5 + min_n2 = 0 + max_n2 = 0 + unsuitable_atoms_damage = 15 + + loot_list = list(/obj/item/weapon/material/knife = 100) + + var/corpse = /obj/effect/landmark/mobcorpse/russian + +/mob/living/simple_animal/hostile/russian/ranged + icon_state = "russianranged" + icon_living = "russianranged" + + ranged = 1 + projectiletype = /obj/item/projectile/bullet + casingtype = /obj/item/ammo_casing/spent + projectilesound = 'sound/weapons/Gunshot.ogg' + + loot_list = list(/obj/item/weapon/gun/projectile/revolver/mateba = 100) + + corpse = /obj/effect/landmark/mobcorpse/russian/ranged + +/mob/living/simple_animal/hostile/russian/death() + ..() + if(corpse) + new corpse (src.loc) + qdel(src) + return diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/humanoids/syndicate.dm similarity index 67% rename from code/modules/mob/living/simple_animal/hostile/syndicate.dm rename to code/modules/mob/living/simple_animal/humanoids/syndicate.dm index 694e95b4340..eebc6c9571b 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/humanoids/syndicate.dm @@ -1,163 +1,192 @@ -/mob/living/simple_animal/hostile/syndicate - name = "\improper Syndicate operative" - desc = "Death to the Company." - icon_state = "syndicate" - icon_living = "syndicate" - icon_dead = "syndicate_dead" - icon_gib = "syndicate_gib" - speak_chance = 0 - turns_per_move = 5 - response_help = "pokes" - response_disarm = "shoves" - response_harm = "hits" - speed = 4 - stop_automated_movement_when_pulled = 0 - maxHealth = 100 - health = 100 - harm_intent_damage = 5 - melee_damage_lower = 10 - melee_damage_upper = 10 - attacktext = "punched" - a_intent = I_HURT - var/corpse = /obj/effect/landmark/mobcorpse/syndicatesoldier - var/weapon1 - var/weapon2 - min_oxy = 5 - max_oxy = 0 - min_tox = 0 - max_tox = 1 - min_co2 = 0 - max_co2 = 5 - min_n2 = 0 - max_n2 = 0 - unsuitable_atoms_damage = 15 - environment_smash = 1 - faction = "syndicate" - status_flags = CANPUSH - -/mob/living/simple_animal/hostile/syndicate/death() - ..() - if(corpse) - new corpse (src.loc) - if(weapon1) - new weapon1 (src.loc) - if(weapon2) - new weapon2 (src.loc) - qdel(src) - return - -///////////////Sword and shield//////////// - -/mob/living/simple_animal/hostile/syndicate/melee - melee_damage_lower = 20 - melee_damage_upper = 25 - icon_state = "syndicatemelee" - icon_living = "syndicatemelee" - weapon1 = /obj/item/weapon/melee/energy/sword/red - weapon2 = /obj/item/weapon/shield/energy - attacktext = "slashed" - status_flags = 0 - -/mob/living/simple_animal/hostile/syndicate/melee/attackby(var/obj/item/O as obj, var/mob/user as mob) - if(O.force) - if(prob(80)) - var/damage = O.force - if (O.damtype == HALLOSS) - damage = 0 - health -= damage - visible_message("\red \b [src] has been attacked with the [O] by [user]. ") - else - visible_message("\red \b [src] blocks the [O] with its shield! ") - //user.do_attack_animation(src) - else - usr << "\red This weapon is ineffective, it does no damage." - visible_message("\red [user] gently taps [src] with the [O]. ") - - -/mob/living/simple_animal/hostile/syndicate/melee/bullet_act(var/obj/item/projectile/Proj) - if(!Proj) return - if(prob(65)) - src.health -= Proj.damage - else - visible_message("\red [src] blocks [Proj] with its shield!") - return 0 - - -/mob/living/simple_animal/hostile/syndicate/melee/space - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - icon_state = "syndicatemeleespace" - icon_living = "syndicatemeleespace" - name = "Syndicate Commando" - corpse = /obj/effect/landmark/mobcorpse/syndicatecommando - speed = 0 - -/mob/living/simple_animal/hostile/syndicate/melee/space/Process_Spacemove(var/check_drift = 0) - return - -/mob/living/simple_animal/hostile/syndicate/ranged - ranged = 1 - rapid = 1 - icon_state = "syndicateranged" - icon_living = "syndicateranged" - casingtype = /obj/item/ammo_casing/spent - projectilesound = 'sound/weapons/Gunshot_light.ogg' - projectiletype = /obj/item/projectile/bullet/pistol/medium - - weapon1 = /obj/item/weapon/gun/projectile/automatic/c20r - -/mob/living/simple_animal/hostile/syndicate/ranged/space - icon_state = "syndicaterangedpsace" - icon_living = "syndicaterangedpsace" - name = "Syndicate Commando" - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - corpse = /obj/effect/landmark/mobcorpse/syndicatecommando - speed = 0 - -/mob/living/simple_animal/hostile/syndicate/ranged/space/Process_Spacemove(var/check_drift = 0) - return - - - -/mob/living/simple_animal/hostile/viscerator - name = "viscerator" - desc = "A small, twin-bladed machine capable of inflicting very deadly lacerations." - icon = 'icons/mob/critter.dmi' - icon_state = "viscerator_attack" - icon_living = "viscerator_attack" - pass_flags = PASSTABLE - health = 15 - maxHealth = 15 - melee_damage_lower = 15 - melee_damage_upper = 15 - attacktext = "cut" - attack_sound = 'sound/weapons/bladeslice.ogg' - faction = "syndicate" - min_oxy = 0 - max_oxy = 0 - min_tox = 0 - max_tox = 0 - min_co2 = 0 - max_co2 = 0 - min_n2 = 0 - max_n2 = 0 - minbodytemp = 0 - -/mob/living/simple_animal/hostile/viscerator/death() - ..(null,"is smashed into pieces!") - qdel(src) +/mob/living/simple_animal/hostile/syndicate + name = "syndicate operative" + desc = "Death to the Company." + icon_state = "syndicate" + icon_living = "syndicate" + icon_dead = "syndicate_dead" + icon_gib = "syndicate_gib" + + faction = "syndicate" + maxHealth = 100 + health = 100 + speed = 4 + + run_at_them = 0 + cooperative = 1 + investigates = 1 + firing_lines = 1 + returns_home = 1 + reacts = 1 + + turns_per_move = 5 + stop_when_pulled = 0 + status_flags = CANPUSH + + response_help = "pokes" + response_disarm = "shoves" + response_harm = "hits" + + harm_intent_damage = 5 + melee_damage_lower = 10 + melee_damage_upper = 15 + environment_smash = 1 + attacktext = "punched" + + min_oxy = 5 + max_oxy = 0 + min_tox = 0 + max_tox = 1 + min_co2 = 0 + max_co2 = 5 + min_n2 = 0 + max_n2 = 0 + unsuitable_atoms_damage = 15 + + speak_chance = 1 + speak = list("Fuckin' NT, man.", + "When are we gonna get out of this chicken-shit outfit?", + "Wish I had better equipment...", + "I knew I should have been a line chef...", + "Fuckin' helmet keeps fogging up.", + "Anyone else smell that?") + emote_hear = list("sniffs","coughs","taps his foot") + emote_see = list("looks around","checks his equipment") + say_understood = list() + say_cannot = list() + say_maybe_target = list("What's that?","Is someone there?","Is that...?","Hmm?") + say_got_target = list("ENGAGING!!!","CONTACT!!!","TARGET SPOTTED!","FOUND ONE!") + reactions = list("Hey guys, you ready?" = "Fuck yeah!") + + var/corpse = /obj/effect/landmark/mobcorpse/syndicatesoldier + +/mob/living/simple_animal/hostile/syndicate/death() + ..() + if(corpse) + new corpse (src.loc) + qdel(src) + return + +///////////////Sword and shield//////////// + +/mob/living/simple_animal/hostile/syndicate/melee + icon_state = "syndicatemelee" + icon_living = "syndicatemelee" + + melee_damage_lower = 20 + melee_damage_upper = 25 + attacktext = "slashed" + + status_flags = 0 + + loot_list = list(/obj/item/weapon/melee/energy/sword/red = 100, /obj/item/weapon/shield/energy = 100) + +/mob/living/simple_animal/hostile/syndicate/melee/attackby(var/obj/item/O as obj, var/mob/user as mob) + if(O.force) + if(prob(20)) + visible_message("\The [src] blocks \the [O] with its shield!") + if(user) + react_to_attack(user) + return + else + ..() + else + usr << "This weapon is ineffective, it does no damage." + visible_message("\The [user] gently taps [src] with \the [O].") + +/mob/living/simple_animal/hostile/syndicate/melee/bullet_act(var/obj/item/projectile/Proj) + if(!Proj) return + if(prob(35)) + visible_message("\red [src] blocks [Proj] with its shield!") + if(Proj.firer) + react_to_attack(Proj.firer) + return + else + ..() + +/mob/living/simple_animal/hostile/syndicate/melee/space + name = "syndicate commando" + icon_state = "syndicatemeleespace" + icon_living = "syndicatemeleespace" + + speed = 0 + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + corpse = /obj/effect/landmark/mobcorpse/syndicatecommando + +/mob/living/simple_animal/hostile/syndicate/melee/space/Process_Spacemove(var/check_drift = 0) + return + +/mob/living/simple_animal/hostile/syndicate/ranged + icon_state = "syndicateranged" + icon_living = "syndicateranged" + + ranged = 1 + rapid = 1 + projectiletype = /obj/item/projectile/bullet/pistol/medium + casingtype = /obj/item/ammo_casing/spent + projectilesound = 'sound/weapons/Gunshot_light.ogg' + + loot_list = list(/obj/item/weapon/gun/projectile/automatic/c20r = 100) + +/mob/living/simple_animal/hostile/syndicate/ranged/space + name = "syndicate sommando" + icon_state = "syndicaterangedpsace" + icon_living = "syndicaterangedpsace" + + speed = 0 + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + corpse = /obj/effect/landmark/mobcorpse/syndicatecommando + +/mob/living/simple_animal/hostile/syndicate/ranged/space/Process_Spacemove(var/check_drift = 0) + return + +/mob/living/simple_animal/hostile/viscerator + name = "viscerator" + desc = "A small, twin-bladed machine capable of inflicting very deadly lacerations." + icon = 'icons/mob/critter.dmi' + icon_state = "viscerator_attack" + icon_living = "viscerator_attack" + + faction = "syndicate" + maxHealth = 15 + health = 15 + + pass_flags = PASSTABLE + + melee_damage_lower = 15 + melee_damage_upper = 15 + attack_sound = 'sound/weapons/bladeslice.ogg' + attacktext = "cut" + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + +/mob/living/simple_animal/hostile/viscerator/death() + ..(null,"is smashed into pieces!") + qdel(src) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 44d17e9212b..1179dc889f2 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -1,3 +1,8 @@ +#define ai_log(M,V) if(debug_ai) ai_log_output(M,V) + +//Talky things +#define try_say_list(L) if(L.len) say(pick(L)) + /mob/living/simple_animal name = "animal" icon = 'icons/mob/animal.dmi' @@ -5,84 +10,114 @@ maxHealth = 20 mob_bump_flag = SIMPLE_ANIMAL - mob_swap_flags = MONKEY|SLIME|SIMPLE_ANIMAL - mob_push_flags = MONKEY|SLIME|SIMPLE_ANIMAL + mob_swap_flags = MONKEY|SLIME|HUMAN + mob_push_flags = MONKEY|SLIME|HUMAN - var/show_stat_health = 1 //does the percentage health show in the stat panel for the mob + //Settings for played mobs + var/show_stat_health = 1 // Does the percentage health show in the stat panel for the mob + var/ai_inactive = 0 // Set to 1 to turn off most AI actions - var/icon_living = "" - var/icon_dead = "" - var/icon_gib = null //We only try to show a gibbing animation if this exists. + //Mob icon settings + var/icon_living = "" // The iconstate if we're alive, required + var/icon_dead = "" // The iconstate if we're dead, required + var/icon_gib = null // The iconstate for being gibbed, optional + var/icon_rest = null // The iconstate for resting, optional - var/list/speak = list() - var/speak_chance = 0 - var/list/emote_hear = list() //Hearable emotes - var/list/emote_see = list() //Unlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps + //Mob talking settings + universal_speak = 0 // Can all mobs in the entire universe understand this one? + var/has_langs = list(LANGUAGE_GALCOM)// Text name of their language if they speak something other than galcom. They speak the first one. + var/speak_chance = 0 // Probability that I talk (this is 'X in 200' chance since even 1/100 is pretty noisy) + var/reacts = 0 // Reacts to some things being said + var/list/speak = list() // Things I might say if I talk + var/list/emote_hear = list() // Hearable emotes I might perform + var/list/emote_see = list() // Unlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps + var/list/say_understood = list()// List of things to say when accepting an order + var/list/say_cannot = list() // List of things to say when they cannot comply + var/list/say_maybe_target = list()// List of things to say when they spot something barely + var/list/say_got_target = list()// List of things to say when they engage a target + var/list/reactions = list() // List of "string" = "reaction" and things they hear will be searched for string. - var/turns_per_move = 1 - var/turns_since_move = 0 - universal_speak = 0 //No, just no. - var/meat_amount = 0 - var/meat_type - var/stop_automated_movement = 0 //Use this to temporarely stop random movement or to if you write special movement code for animals. - var/wander = 1 // Does the mob wander around when idle? - var/stop_automated_movement_when_pulled = 1 //When set to 1 this stops the animal from moving when someone is pulling it. + //Mob movement settings + var/wander = 1 // Does the mob wander around when idle? + var/wander_distance = 3 // How far the mob will wander before going home (assuming they are allowed to do that) + var/returns_home = 0 // Mob knows how to return to wherever it started + var/turns_per_move = 1 // How many life() cycles to wait between each wander mov? + var/stop_when_pulled = 1 // When set to 1 this stops the animal from moving when someone is pulling it. + var/follow_dist = 2 // Distance the mob tries to follow a friend + var/obstacles = list() // Things this mob refuses to move through + var/speed = 0 // Higher speed is slower, negative speed is faster. + var/obj/item/weapon/card/id/myid// An ID card if they have one to give them access to stuff. + var/turf/home_turf // Set when they spawned, they try to come back here sometimes. - //Interaction - var/response_help = "tries to help" - var/response_disarm = "tries to disarm" - var/response_harm = "tries to hurt" - var/harm_intent_damage = 3 + //Mob interaction + var/response_help = "tries to help" // If clicked on help intent + var/response_disarm = "tries to disarm" // If clicked on disarm intent + var/response_harm = "tries to hurt" // If clicked on harm intent + var/harm_intent_damage = 3 // How much an unarmed harm click does to this mob. + var/meat_amount = 0 // How much meat to drop from this mob when butchered + var/obj/meat_type // The meat object to drop + var/list/loot_list = list() // The list of lootable objects to drop, with "/path = prob%" structure + var/recruitable = 0 // Mob can be bossed around + var/recruit_cmd_str = "Hey," // The thing you prefix commands with when bossing them around - //Temperature effect - var/minbodytemp = 250 - var/maxbodytemp = 350 - var/heat_damage_per_tick = 3 //amount of damage applied if animal's body temperature is higher than maxbodytemp - var/cold_damage_per_tick = 2 //same as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp - var/fire_alert = 0 + //Mob environment settings + var/minbodytemp = 250 // Minimum "okay" temperature in kelvin + var/maxbodytemp = 350 // Maximum of above + var/heat_damage_per_tick = 3 // Amount of damage applied if animal's body temperature is higher than maxbodytemp + var/cold_damage_per_tick = 2 // Same as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp + var/fire_alert = 0 // 0 = fine, 1 = hot, 2 = cold - //Atmos effect - Yes, you can make creatures that require phoron or co2 to survive. N2O is a trace gas and handled separately, hence why it isn't here. It'd be hard to add it. Hard and me don't mix (Yes, yes make all the dick jokes you want with that.) - Errorage - var/min_oxy = 5 - var/max_oxy = 0 //Leaving something at 0 means it's off - has no maximum - var/min_tox = 0 - var/max_tox = 1 - var/min_co2 = 0 - var/max_co2 = 5 - var/min_n2 = 0 - var/max_n2 = 0 - var/unsuitable_atoms_damage = 2 //This damage is taken when atmos doesn't fit all the requirements above - var/speed = 0 //LETS SEE IF I CAN SET SPEEDS FOR SIMPLE MOBS WITHOUT DESTROYING EVERYTHING. Higher speed is slower, negative speed is faster + var/min_oxy = 5 // Oxygen in moles, minimum, 0 is 'no minimum + var/max_oxy = 0 // Oxygen in moles, maximum, 0 is 'no maximum' + var/min_tox = 0 // Phoron min + var/max_tox = 1 // Phoron max + var/min_co2 = 0 // CO2 min + var/max_co2 = 5 // CO2 max + var/min_n2 = 0 // N2 min + var/max_n2 = 0 // N2 max + var/unsuitable_atoms_damage = 2 // This damage is taken when atmos doesn't fit all the requirements above - //LETTING SIMPLE ANIMALS ATTACK? WHAT COULD GO WRONG. Defaults to zero so Ian can still be cuddly - var/melee_damage_lower = 0 - var/melee_damage_upper = 0 - var/attacktext = "attacked" - var/attack_sound = null - var/friendly = "nuzzles" - var/environment_smash = 0 - var/resistance = 0 // Damage reduction + //Hostility settings + var/hostile = 0 // Do I even attack? + var/retaliate = 0 // I respond to damage against specific targets. + var/view_range = 7 // Scan for targets in this range. + var/specific_targets = 0 // Only use Found() targets, ignore others. + var/investigates = 0 // Do I investigate if I saw someone briefly? + var/attack_same = 0 // Do I attack members of my own faction? + var/cooperative = 0 // Do I ask allies to help me? + var/assist_distance = 25 // Radius in which I'll ask my comrades for help. + var/supernatural = 0 // If the mob is supernatural (used in null-rod stuff for banishing?) + var/grab_resist = 75 // Chance of me resisting a grab attempt. - //Null rod stuff - var/supernatural = 0 - var/purge = 0 + //Attack ranged settings + var/ranged = 0 // Do I attack at range? + var/shoot_range = 7 // How far away do I start shooting from? + var/rapid = 0 // Three-round-burst fire mode + var/firing_lines = 0 // Avoids shooting allies + var/projectiletype // The projectiles I shoot + var/projectilesound // The sound I make when I do it + var/casingtype // What to make the hugely laggy casings pile out of - //Pulling hostile mob vars down - var/stance = STANCE_IDLE //Used to determine behavior - var/mob/living/target_mob - var/attack_same = 0 - var/ranged = 0 - var/rapid = 0 - var/projectiletype - var/projectilesound - var/casingtype - var/move_to_delay = 4 //delay for the automated movement. - var/list/friends = list() - var/break_stuff_probability = 0 - var/destroy_surroundings = 0 - var/shuttletarget = null - var/enroute = 0 - var/ai_inactive = 0 // Set to 1 to turn off most AI actions in Life() + //Mob melee settings + var/melee_damage_lower = 2 // Lower bound of randomized melee damage + var/melee_damage_upper = 6 // Upper bound of randomized melee damage + var/attacktext = "attacked" // "You are [attacktext] by the mob!" + var/friendly = "nuzzles" // What mobs do to people when they aren't really hostile + var/attack_sound = null // Sound to play when I attack + var/environment_smash = 0 // How much environment damage do I do when I hit stuff? + //Special attacks + var/spattack_prob = 0 // Chance of the mob doing a special attack (0 for never) + var/spattack_min_range = 0 // Min range to perform the special attacks from + var/spattack_max_range = 0 // Max range to perform special attacks from + + //Attack movement settings + var/run_at_them = 1 // Don't use A* pathfinding, use walk_to + var/move_to_delay = 4 // Delay for the automated movement (deciseconds) + var/destroy_surroundings = 1 // Should I smash things to get to my target? + + //Damage resistances + var/resistance = 0 // Damage reduction for all types var/list/resistances = list( HALLOSS = 0, BRUTE = 1, @@ -92,97 +127,217 @@ CLONE = 0 ) - var/hostile = 0 + //Scary debug things + var/debug_ai = 0 // Logging level for this mob (1,2,3) + var/path_display = 0 // Will display the path in green when pathing + var/path_icon = 'icons/misc/debug_group.dmi' // What icon to use for the overlay + var/path_icon_state = "red" // What state to use for the overlay + var/icon/path_overlay // A reference to restart + + ////// These are used for inter-proc communications so don't edit them manually ////// + var/stance = STANCE_IDLE // Used to determine behavior + var/stop_automated_movement = 0 // Use this to temporarely stop random movement or to if you write special movement code for animals. + var/lifes_since_move = 0 // A counter for how many life() cycles since move + var/shuttletarget = null // Shuttle's here, time to get to it + var/enroute = 0 // If the shuttle is en-route + var/purge = 0 // A counter used for null-rod stuff + var/mob/living/target_mob // Who I'm trying to attack + var/mob/living/follow_mob // Who I'm recruited by + var/mob/living/list/friends = list() // People who are immune to my wrath, for now + var/mob/living/simple_animal/list/faction_friends = list() // Other simple mobs I am friends with + var/turf/list/walk_list = list()// List of turfs to walk through to get somewhere + var/astarpathing = 0 // Am I currently pathing to somewhere? + var/stance_changed = 0 // When our stance last changed (world.time) + var/last_target_time = 0 // When we last set our target, to prevent juggles + var/last_follow_time = 0 // When did we last get asked to follow someone? + var/last_helpask_time = 0 // When did we last call for help? + var/follow_until_time = 0 // Give up following when we reach this time (0 = never) + var/annoyed = 0 // Do people keep distract-kiting us? + ////// ////// ////// /mob/living/simple_animal/New() ..() verbs -= /mob/verb/observe + home_turf = get_turf(src) + path_overlay = new(path_icon,path_icon_state) + move_to_delay = max(2,move_to_delay) //Protection against people coding things incorrectly and A* pathing 100% of the time + for(var/L in has_langs) + languages |= all_languages[L] + if(languages.len) + default_language = languages[1] + + if(cooperative) + var/mob/living/simple_animal/first_friend + for(var/mob/living/simple_animal/M in living_mob_list) + if(M.faction == src.faction) + first_friend = M + break + if(first_friend) + faction_friends = first_friend.faction_friends + faction_friends |= src + else + faction_friends |= src + +/mob/living/simple_animal/Destroy() + home_turf = null + path_overlay = null + default_language = null + target_mob = null + follow_mob = null + if(myid) + qdel(myid) + myid = null + + if(faction_friends.len) //This list is shared amongst the faction + faction_friends -= src + + friends.Cut() //This one is not + walk_list.Cut() + languages.Cut() + ..() + +//Client attached /mob/living/simple_animal/Login() if(src && src.client) src.client.screen = list() src.client.screen += src.client.void + ai_inactive = 1 + handle_stance(STANCE_IDLE) + src.client << "Mob AI disabled while you are controlling the mob." ..() +//Client detatched +/mob/living/simple_animal/Logout() + if(src && !src.client) + spawn(15 SECONDS) //15 seconds to get back into the mob before it goes wild + if(src && !src.client) + ai_inactive = initial(ai_inactive) //So if they never have an AI, they stay that way. + ..() + +//For debug purposes! +/mob/living/simple_animal/proc/ai_log_output(var/msg = "missing message", var/ver = 1) + if(ver <= debug_ai) + log_debug("SA-AI: ([src]:[x],[y],[z])(@[world.time]): [msg] ") + +//Should we be dead? /mob/living/simple_animal/updatehealth() - return + //Alive, becoming dead + if((stat < DEAD) && (health <= 0)) + death() + + //Dead, becoming alive + else if((stat >= DEAD) && (health > 0)) + dead_mob_list -= src + living_mob_list += src + stat = CONSCIOUS + density = 1 + + //Overhealth + else if(health > maxHealth) + health = maxHealth + +/mob/living/simple_animal/update_icon() + ..() + //Awake and normal + if((stat == CONSCIOUS) && (!icon_rest || !resting)) + icon_state = icon_living + + //Resting or KO'd + else if(((stat == UNCONSCIOUS) || resting) && icon_rest) + icon_state = icon_rest + + //Dead + else if(stat >= DEAD) + icon_state = icon_dead + + //Backup + else + icon_state = initial(icon_state) /mob/living/simple_animal/Life() ..() //Health - if(stat == DEAD) - if(health > 0) - icon_state = icon_living - dead_mob_list -= src - living_mob_list += src - stat = CONSCIOUS - density = 1 - else - walk(src, 0) + updatehealth() + if(stat >= DEAD) return 0 - - if(health <= 0) - death() - return - - if(health > maxHealth) - health = maxHealth - handle_stunned() handle_weakened() handle_paralysed() handle_supernatural() + handle_atmos() //Atmos + update_icon() + ai_log("Life() - stance=[stance] ai_inactive=[ai_inactive]", 4) //Movement - if(!client && !stop_automated_movement && wander && !anchored && !ai_inactive) - if(isturf(src.loc) && !resting && !buckled && canmove) //This is so it only moves if it's not inside a closet, gentics machine, etc. - turns_since_move++ - if(turns_since_move >= turns_per_move) - if(!(stop_automated_movement_when_pulled && pulledby)) //Soma animals don't move when pulled - var/moving_to = 0 // otherwise it always picks 4, fuck if I know. Did I mention fuck BYOND - moving_to = pick(cardinal) - dir = moving_to //How about we turn them the direction they are moving, yay. - Move(get_step(src,moving_to)) - turns_since_move = 0 + if(!ai_inactive && !stop_automated_movement && wander && !anchored) //Allowed to move? + handle_wander_movement() //Speaking - if(!client && speak_chance) - if(rand(0,200) < speak_chance) - if(speak && speak.len) - if((emote_hear && emote_hear.len) || (emote_see && emote_see.len)) - var/length = speak.len - if(emote_hear && emote_hear.len) - length += emote_hear.len - if(emote_see && emote_see.len) - length += emote_see.len - var/randomValue = rand(1,length) - if(randomValue <= speak.len) - say(pick(speak)) - else - randomValue -= speak.len - if(emote_see && randomValue <= emote_see.len) - visible_emote("[pick(emote_see)].") - else - audible_emote("[pick(emote_hear)].") + if(!ai_inactive && speak_chance && stance == STANCE_IDLE) // Allowed to chatter? + handle_idle_speaking() + + //Stanceyness + if(!ai_inactive) + handle_stance() + + //Resisting out of things + if(!ai_inactive && incapacitated(INCAPACITATION_DEFAULT) && stance != STANCE_IDLE) + resist() + + return 1 + +// Peforms the random walk wandering +/mob/living/simple_animal/proc/handle_wander_movement() + if(isturf(src.loc) && !resting && !buckled && canmove) //Physically capable of moving? + lifes_since_move++ //Increment turns since move (turns are life() cycles) + if(lifes_since_move >= turns_per_move) + if(!(stop_when_pulled && pulledby)) //Some animals don't move when pulled + var/moving_to = 0 // otherwise it always picks 4, fuck if I know. Did I mention fuck BYOND + moving_to = pick(cardinal) + dir = moving_to //How about we turn them the direction they are moving, yay. + Move(get_step(src,moving_to)) + lifes_since_move = 0 + +// Handles random chatter, called from Life() when stance = STANCE_IDLE +/mob/living/simple_animal/proc/handle_idle_speaking() + if(rand(0,200) < speak_chance) + if(speak && speak.len) + if((emote_hear && emote_hear.len) || (emote_see && emote_see.len)) + var/length = speak.len + if(emote_hear && emote_hear.len) + length += emote_hear.len + if(emote_see && emote_see.len) + length += emote_see.len + var/randomValue = rand(1,length) + if(randomValue <= speak.len) + try_say_list(speak) else - say(pick(speak)) - else - if(!(emote_hear && emote_hear.len) && (emote_see && emote_see.len)) - visible_emote("[pick(emote_see)].") - if((emote_hear && emote_hear.len) && !(emote_see && emote_see.len)) - audible_emote("[pick(emote_hear)].") - if((emote_hear && emote_hear.len) && (emote_see && emote_see.len)) - var/length = emote_hear.len + emote_see.len - var/pick = rand(1,length) - if(pick <= emote_see.len) + randomValue -= speak.len + if(emote_see && randomValue <= emote_see.len) visible_emote("[pick(emote_see)].") else audible_emote("[pick(emote_hear)].") + else + try_say_list(speak) + else + if(!(emote_hear && emote_hear.len) && (emote_see && emote_see.len)) + visible_emote("[pick(emote_see)].") + if((emote_hear && emote_hear.len) && !(emote_see && emote_see.len)) + audible_emote("[pick(emote_hear)].") + if((emote_hear && emote_hear.len) && (emote_see && emote_see.len)) + var/length = emote_hear.len + emote_see.len + var/pick = rand(1,length) + if(pick <= emote_see.len) + visible_emote("[pick(emote_see)].") + else + audible_emote("[pick(emote_hear)].") - - //Atmos +// Handle interacting with and taking damage from atmos +// TODO - Refactor this to use handle_environment() like a good /mob/living +/mob/living/simple_animal/proc/handle_atmos() var/atmos_suitable = 1 var/atom/A = src.loc @@ -235,23 +390,55 @@ if(!atmos_suitable) adjustBruteLoss(unsuitable_atoms_damage) - //Hostility - if(!stat && !client && hostile && !ai_inactive) - switch(stance) - if(STANCE_IDLE) - target_mob = FindTarget() +// For setting the stance WITHOUT processing it +/mob/living/simple_animal/proc/set_stance(var/new_stance) + stance = new_stance + stance_changed = world.time + ai_log("set_stance() changing to [new_stance]",2) - if(STANCE_ATTACK) - if(destroy_surroundings) - DestroySurroundings() - MoveToTarget() +// For proccessing the current stance, or setting and processing a new one +/mob/living/simple_animal/proc/handle_stance(var/new_stance) + if(ai_inactive) + stance = STANCE_IDLE + return - if(STANCE_ATTACKING) - if(destroy_surroundings) - DestroySurroundings() - AttackTarget() + if(new_stance) + set_stance(new_stance) - return 1 + switch(stance) + if(STANCE_IDLE) + target_mob = null + a_intent = I_HELP + annoyed = max(0,annoyed--) + + //Yes I'm breaking this into two if()'s for ease of reading + //If we ARE ALLOWED TO + if(returns_home && home_turf && !astarpathing && (world.time - stance_changed) > 10 SECONDS) + if(get_dist(src,home_turf) > wander_distance) + move_to_delay = initial(move_to_delay)*2 //Walk back. + GoHome() + else + stop_automated_movement = 0 + + //Search for targets while idle + if(hostile) + FindTarget() + if(STANCE_FOLLOW) + annoyed = 15 + FollowTarget() + if(follow_until_time && world.time > follow_until_time) + LoseFollow() + return + if(hostile) + FindTarget() + if(STANCE_ATTACK) + annoyed = 50 + a_intent = I_HURT + RequestHelp() + MoveToTarget() + if(STANCE_ATTACKING) + annoyed = 50 + AttackTarget() /mob/living/simple_animal/proc/handle_supernatural() if(purge) @@ -273,16 +460,20 @@ /mob/living/simple_animal/bullet_act(var/obj/item/projectile/Proj) if(!Proj) return + ai_log("bullet_act() I was shot by: [Proj.firer]",2) if(Proj.taser_effect) stun_effect_act(0, Proj.agony) - if(Proj.nodamage) - return + if(!Proj.nodamage) + adjustBruteLoss(Proj.damage) + + if(Proj.firer) + react_to_attack(Proj.firer) - adjustBruteLoss(Proj.damage) return 0 +// When someone clicks us with an empty hand /mob/living/simple_animal/attack_hand(mob/living/carbon/human/M as mob) ..() @@ -290,10 +481,10 @@ if(I_HELP) if (health > 0) - M.visible_message("\blue [M] [response_help] \the [src]") + M.visible_message("[M] [response_help] \the [src].") if(I_DISARM) - M.visible_message("\blue [M] [response_disarm] \the [src]") + M.visible_message("[M] [response_disarm] \the [src].") M.do_attack_animation(src) //TODO: Push the mob away or something @@ -302,6 +493,9 @@ return if (!(status_flags & CANPUSH)) return + if(!incapacitated(INCAPACITATION_ALL) && (stance != STANCE_IDLE) && prob(grab_resist)) + M.visible_message("[M] tries to grab [src] but fails!") + return var/obj/item/weapon/grab/G = new /obj/item/weapon/grab(M, src) @@ -311,16 +505,21 @@ G.affecting = src LAssailant = M - M.visible_message("\red [M] has grabbed [src] passively!") + M.visible_message("[M] has grabbed [src] passively!") M.do_attack_animation(src) + ai_log("attack_hand() I was grabbed by: [M]",2) + react_to_attack(M) if(I_HURT) adjustBruteLoss(harm_intent_damage) - M.visible_message("\red [M] [response_harm] \the [src]") + M.visible_message("[M] [response_harm] \the [src]!") M.do_attack_animation(src) + ai_log("attack_hand() I was hit by: [M]",2) + react_to_attack(M) return +// When somoene clicks us with an item in hand /mob/living/simple_animal/attackby(var/obj/item/O, var/mob/user) if(istype(O, /obj/item/stack/medical)) if(stat != DEAD) @@ -344,9 +543,10 @@ visible_message("[user] gently taps [src] with \the [O].") else O.attack(src, user, user.zone_sel.selecting) + ai_log("attackby() I was weapon'd by: [user]",2) + react_to_attack(user) /mob/living/simple_animal/hit_with_weapon(obj/item/O, mob/living/user, var/effective_force, var/hit_zone) - visible_message("\The [src] has been attacked with \the [O] by [user].") if(O.force <= resistance) @@ -360,9 +560,23 @@ damage *= 2 purge = 3 adjustBruteLoss(damage) + ai_log("hit_with_weapon() I was h_w_weapon'd by: [user]",2) + react_to_attack(user) return 0 +// When someone throws something at us +/mob/living/simple_animal/hitby(atom/movable/AM) + ..() + if(AM.thrower) + react_to_attack(AM.thrower) + +//SA vs SA basically +/mob/living/simple_animal/attack_generic(var/mob/attacker) + ..() + if(attacker) + react_to_attack(attacker) + /mob/living/simple_animal/movement_delay() var/tally = 0 //Incase I need to add stuff other than "speed" later @@ -380,9 +594,28 @@ if(statpanel("Status") && show_stat_health) stat(null, "Health: [round((health / maxHealth) * 100)]%") +/mob/living/simple_animal/lay_down() + ..() + if(resting && icon_rest) + icon_state = icon_rest + else + icon_state = icon_living + /mob/living/simple_animal/death(gibbed, deathmessage = "dies!") - icon_state = icon_dead - density = 0 + density = 0 //We don't block even if we did before + walk(src, 0) //We stop any background-processing walks + + if(faction_friends.len) + faction_friends -= src + + if(loot_list.len) //Drop any loot + for(var/path in loot_list) + if(prob(loot_list[path])) + new path(get_turf(src)) + + spawn(3) //We'll update our icon in a sec + update_icon() + return ..(gibbed,deathmessage) /mob/living/simple_animal/ex_act(severity) @@ -407,18 +640,21 @@ /mob/living/simple_animal/adjustFireLoss(damage) health = Clamp(health - damage, 0, maxHealth) +// Check target_mob if worthy of attack (i.e. check if they are dead or empty mecha) /mob/living/simple_animal/proc/SA_attackable(target_mob) + ai_log("SA_attackable([target_mob])",3) if (isliving(target_mob)) var/mob/living/L = target_mob - if(!L.stat && L.health >= 0) - return (0) + if(!L.stat) + return 1 if (istype(target_mob,/obj/mecha)) var/obj/mecha/M = target_mob if (M.occupant) - return (0) - return 1 + return 1 + ai_log("SA_attackable([target_mob]): no",3) + return 0 -/mob/living/simple_animal/say(var/message) +/mob/living/simple_animal/say(var/message,var/datum/language/language) var/verb = "says" if(speak_emote.len) verb = pick(speak_emote) @@ -431,7 +667,7 @@ return verb /mob/living/simple_animal/put_in_hands(var/obj/item/W) // No hands. - W.loc = get_turf(src) + W.forceMove(get_turf(src)) return 1 // Harvest an animal's delicious byproducts @@ -459,12 +695,58 @@ /mob/living/simple_animal/ExtinguishMob() return - //Hostile procs moved down -/mob/living/simple_animal/proc/FindTarget() +//We got hit! Consider hitting them back! +/mob/living/simple_animal/proc/react_to_attack(var/mob/living/M) + if(stat || M == target_mob) return //Not if we're dead or already hitting them + if(M in friends || M.faction == faction) return //I'll overlook it THIS time... + ai_log("react_to_attack([M])",1) + if(retaliate && set_target(M)) + handle_stance(STANCE_ATTACK) + return M + return 0 + +/mob/living/simple_animal/proc/set_target(var/mob/M) + ai_log("SetTarget([M])",2) + if(!M || (world.time - last_target_time < 5 SECONDS) && target_mob) + ai_log("SetTarget() can't set it again so soon",3) + return 0 + + var/turf/seen = get_turf(M) + + if(investigates && (annoyed < 10)) + try_say_list(say_maybe_target) + face_atom(seen) + annoyed += 14 + sleep(1 SECOND) //For realism + + if(M in ListTargets(view_range)) + try_say_list(say_got_target) + target_mob = M + last_target_time = world.time + return M + else if(investigates) + spawn(1) + WanderTowards(seen) + + return 0 + +// Set a follow target, with optional time for how long to follow them. +/mob/living/simple_animal/proc/set_follow(var/mob/M, var/follow_for = 0) + ai_log("SetFollow([M]) for=[follow_for]",2) + if(!M || (world.time - last_target_time < 4 SECONDS) && follow_mob) + ai_log("SetFollow() can't set it again so soon",3) + return 0 + + follow_mob = M + last_follow_time = world.time + follow_until_time = !follow_for ? 0 : world.time + follow_for + return 1 + +//Scan surroundings for a valid target +/mob/living/simple_animal/proc/FindTarget() var/atom/T = null - stop_automated_movement = 0 - for(var/atom/A in ListTargets(10)) + for(var/atom/A in ListTargets(view_range)) if(A == src) continue @@ -473,6 +755,8 @@ if(F) T = F break + else if(specific_targets) + return 0 if(isliving(A)) var/mob/living/L = A @@ -480,52 +764,342 @@ continue else if(L in friends) continue + else if(!SA_attackable(L)) + continue else - if(!L.stat) - stance = STANCE_ATTACK - T = L - break + T = L + break else if(istype(A, /obj/mecha)) // Our line of sight stuff was already done in ListTargets(). var/obj/mecha/M = A - if (M.occupant) - stance = STANCE_ATTACK + if(!SA_attackable(M)) + continue + if((M.occupant.faction != src.faction) || attack_same) T = M break + + //You found one! + if(T) + ai_log("FindTarget() found [T]!",1) + if(set_target(T)) + handle_stance(STANCE_ATTACK) + return T - +//Used for special targeting or reactions /mob/living/simple_animal/proc/Found(var/atom/A) return +//Requesting help from like-minded individuals +/mob/living/simple_animal/proc/RequestHelp() + if(!cooperative || ((world.time - last_helpask_time) < 10 SECONDS)) + return + + ai_log("RequestHelp() to [faction_friends.len] friends",2) + last_helpask_time = world.time + for(var/mob/living/simple_animal/F in faction_friends) + if(F == src) continue + if(get_dist(src,F) <= F.assist_distance) + spawn(0) + if(F) //They could have died by now and some mobs delete themselves on death + ai_log("RequestHelp() to [F]",3) + F.HelpRequested(src) + +//Someone wants help? +/mob/living/simple_animal/proc/HelpRequested(var/mob/living/simple_animal/F) + if(!(stance == STANCE_IDLE) || stat) + ai_log("HelpRequested() by [F] but we're busy/dead",2) + return + if(get_dist(src,F) <= follow_dist) + ai_log("HelpRequested() by [F] but we're already here",2) + return + + if(set_follow(F, 10 SECONDS)) + handle_stance(STANCE_FOLLOW) + +//Move to a target (or near if we're ranged) /mob/living/simple_animal/proc/MoveToTarget() - stop_automated_movement = 1 - if(!target_mob || SA_attackable(target_mob)) - stance = STANCE_IDLE - if(target_mob in ListTargets(10)) - if(ranged) - if(get_dist(src, target_mob) <= 6) - OpenFire(target_mob) - else - walk_to(src, target_mob, 1, move_to_delay) - else - stance = STANCE_ATTACKING - walk_to(src, target_mob, 1, move_to_delay) + if(incapacitated(INCAPACITATION_DISABLED)) + ai_log("MoveToTarget() Bailing because we're disabled",2) + return -/mob/living/simple_animal/proc/AttackTarget() - - stop_automated_movement = 1 - if(!target_mob || SA_attackable(target_mob)) + //If we were chasing someone and we can't anymore, give up. + if(!target_mob || !SA_attackable(target_mob)) + ai_log("MoveToTarget() Losing target at top",2) LoseTarget() + return + + //Don't wander + stop_automated_movement = 1 + move_to_delay = initial(move_to_delay) + + //We recompute our path every time we're called if we can still see them + if(target_mob in ListTargets(view_range)) + + //Recompute the path if we were using one since we can still see them. + if(astarpathing) + ForgetPath() + + //Find out where we're getting to + var/get_to = ranged ? shoot_range-1 : 1 //Shoot range -1 just because we don't want to constantly get kited + var/distance = get_dist(src,target_mob) + ai_log("MoveToTarget() [src] [get_to] [distance]",2) + + //We're here! + if(distance <= get_to) + ai_log("MoveToTarget() [src] attack range",2) + handle_stance(STANCE_ATTACKING) + return + + //We're just setting out, making a new path, or we can't path with A* + if(!walk_list.len) + ai_log("SA: MoveToTarget() pathing to [target_mob]",2) + + //GetPath failed for whatever reason, just smash into things towards them + if(run_at_them || !GetPath(get_turf(target_mob),get_to)) + + //We try the built-in way to stay close + walk_to(src, target_mob, get_to, move_to_delay) + ai_log("MoveToTarget() walk_to([src],[target_mob],[get_to],[move_to_delay])",3) + + //Break shit in their direction! LEME SMAHSH + var/dir_to_mob = get_dir(src,target_mob) + face_atom(target_mob) + DestroySurroundings(dir_to_mob) + ai_log("MoveToTarget() DestroySurroundings([get_dir(src,target_mob)])",3) + + //We have a path! We aren't already pathing it! + if(!astarpathing && walk_list.len) + ai_log("MoveToTarget() going to start a path",2) + spawn(1) + + //Do the path! + var/result = WalkPath(target_thing = target_mob, target_dist = get_to) + ai_log("MoveToTarget() WalkPath r:[result]",2) + + //WalkPath failed, either interrupted for recalc, or something else + if(!result) + return + + //WalkPath either got close enough or we ran out of path + else + spawn(1) + ai_log("MoveToTarget() resetting",2) + MoveToTarget() + + //We can't see them, and we don't have a path we're trying to follow to find them + else if(!astarpathing) + ai_log("MoveToTarget() Losing target at bottom",2) + LoseTarget() //Just forget it. + +//Follow a target (and don't attempt to murder it horribly) +/mob/living/simple_animal/proc/FollowTarget() + ai_log("FollowTarget() [follow_mob]",1) + //If we were chasing someone and we can't anymore, give up. + if(!follow_mob || follow_mob.stat) + ai_log("FollowTarget() Losing follow at top",2) + LoseFollow() + return + + if(incapacitated(INCAPACITATION_DISABLED)) + ai_log("FollowTarget() Bailing because we're disabled",2) + return + + if((get_dist(src,follow_mob) <= follow_dist)) + ai_log("FollowTarget() Already at target",2) + return + + move_to_delay = initial(move_to_delay) + var/start_distance = get_dist(src,follow_mob) + + //Bad pathing + if(run_at_them) + walk_to(src, follow_mob, follow_dist, move_to_delay) + ai_log("FollowTarget() walk_to([src],[target_mob],2,[move_to_delay])",3) + spawn(3 SECONDS) + if(src && follow_mob && (stance == STANCE_FOLLOW) && (get_dist(src,follow_mob) >= start_distance)) + ai_log("FollowTarget() walk_to not making headway, giving up",3) + LoseFollow() + + //Good pathing + else + GetPath(get_turf(follow_mob),follow_dist) + if(!astarpathing && walk_list.len) + spawn(1) + ai_log("FollowTarget() A* path getting underway",2) + //Do the path! + var/result = WalkPath(target_thing = follow_mob, target_dist = follow_dist) + ai_log("FollowTarget() WalkPath r:[result]",3) + + else + ai_log("FollowTarget() GetPath can't path, giving up",3) + LoseFollow() + +//Just try one time to go look at something. Don't really focus much on it. +/mob/living/simple_animal/proc/WanderTowards(var/turf/T) + if(!T) return + ai_log("WanderTowards() [T.x],[T.y]",1) + + stop_automated_movement = 1 + GetPath(T,1) + + if(run_at_them || !walk_list.len) + ai_log("WanderTowards() walk_to getting underway",2) + walk_to(src, T, 1, move_to_delay) + else + if(!astarpathing) + spawn(1) + ai_log("WanderTowards() A* path getting underway",2) + WalkPath(target_thing = T, target_dist = 1) + +//A* now, try to a path to a target +/mob/living/simple_animal/proc/GetPath(var/turf/target,var/get_to = 1,var/max_distance = world.view*6) + ai_log("GetPath([target],[get_to],[max_distance])",2) + ForgetPath() + var/list/new_path = AStar(get_turf(loc), target, /turf/proc/CardinalTurfsWithAccess, /turf/proc/Distance, min_target_dist = get_to, max_node_depth = max_distance, id = myid, exclude = obstacles) + + if(new_path && new_path.len) + walk_list = new_path + if(path_display) + for(var/turf/T in walk_list) + T.overlays |= path_overlay + else return 0 - if(!(target_mob in ListTargets(10))) - LostTarget() + + return walk_list.len + +//Walk along our A* path, target_thing allows us to stop early if we're nearby +/mob/living/simple_animal/proc/WalkPath(var/atom/target_thing, var/target_dist = 1, var/proc/steps_callback = null, var/every_steps = 4) + ai_log("WalkPath() (steps:[walk_list.len])",2) + if(!walk_list || !walk_list.len) + return + + astarpathing = 1 + var/step_count = 0 + var/failed_steps = 0 + while(1) + //We're supposed to stop + if(!astarpathing || incapacitated(INCAPACITATION_DISABLED)) + astarpathing = 0 + ai_log("WalkPath() was interrupted",2) + return 0 + //Finished the path + if(!walk_list.len) + astarpathing = 0 + ai_log("WalkPath() exited naturally",2) + return 1 + if(failed_steps >= 3) + astarpathing = 0 + ai_log("WalkPath() failed too many steps",2) + return 0 + + //Take a step + if(!MoveOnce()) + ai_log("WalkPath() failed a step",3) + failed_steps++ + else + ai_log("WalkPath() took a step",3) + failed_steps = 0 + step_count++ + + //If we have a particular target we care about, look for them + if(target_thing && (get_dist(src,target_thing) <= target_dist)) + ai_log("WalkPath() returning due to proximity",2) + return target_thing + + //If we have a callback + if(steps_callback && (step_count >= every_steps)) + ai_log("WalkPath() doing callback",3) + call(steps_callback)() + + //And wait for the time to our next step + sleep(move_to_delay) + +//Take one step along a path +/mob/living/simple_animal/proc/MoveOnce() + if(!walk_list.len) + return + + if(path_display) + var/turf/T = src.walk_list[1] + T.overlays -= path_overlay + + step_towards(src, src.walk_list[1]) + if(src.loc != src.walk_list[1]) + ai_log("MoveOnce() step_towards returning 0",3) return 0 - if(get_dist(src, target_mob) <= 1) //Attacking - AttackingTarget() + else + walk_list -= src.walk_list[1] + ai_log("MoveOnce() step_towards returning 1",3) return 1 -/mob/living/simple_animal/proc/AttackingTarget() +//Forget the path entirely +/mob/living/simple_animal/proc/ForgetPath() + ai_log("ForgetPath()",2) + if(path_display) + for(var/turf/T in walk_list) + T.overlays -= path_overlay + astarpathing = 0 + walk_list.Cut() + +//Giving up on moving +/mob/living/simple_animal/proc/GiveUpMoving() + ai_log("GiveUpMoving()",1) + ForgetPath() + walk(src, 0) + stop_automated_movement = 0 + +//Return home, all-in-one proc (though does target scan and drop out if they see one) +/mob/living/simple_animal/proc/GoHome() + if(!home_turf) return + if(astarpathing) ForgetPath() + ai_log("GoHome()",1) + var/close_enough = 2 + var/look_in = 250 + if(GetPath(home_turf,close_enough,look_in)) + stop_automated_movement = 1 + spawn(1) + if(WalkPath()) //If we made it without interruption + ai_log("GoHome() got home",2) + GiveUpMoving() //Go back to wandering + +//Get into attack mode on a target +/mob/living/simple_animal/proc/AttackTarget() + stop_automated_movement = 1 + if(!target_mob || !SA_attackable(target_mob)) + LoseTarget() + return 0 + if(!(target_mob in ListTargets(view_range))) + LostTarget() + return 0 + + ai_log("AttackTarget() vs. [target_mob]",1) + var/distance = get_dist(src, target_mob) + face_atom(target_mob) + + //Hadoooooken! + if(prob(spattack_prob) && (distance >= spattack_min_range) && (distance <= spattack_max_range)) + ai_log("AttackTarget() special",3) + if(SpecialAtkTarget()) //Might not succeed/be allowed, do something else. + return 1 + //AAAAH! + if(distance <= 1) + ai_log("AttackTarget() melee",3) + PunchTarget() + return 1 + //Open fire! + else if(ranged && (distance <= shoot_range)) + ai_log("AttackTarget() ranged",3) + ShootTarget(target_mob) + return 1 + //They ran away! + else + ai_log("AttackTarget() out of range!",3) + handle_stance(STANCE_ATTACK) + return 0 + +//Attack the target in melee +/mob/living/simple_animal/proc/PunchTarget() if(!Adjacent(target_mob)) return if(isliving(target_mob)) @@ -537,30 +1111,17 @@ M.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) return M -/mob/living/simple_animal/proc/LoseTarget() - stance = STANCE_IDLE - target_mob = null - walk(src, 0) - -/mob/living/simple_animal/proc/LostTarget() - stance = STANCE_IDLE - walk(src, 0) - - -/mob/living/simple_animal/proc/ListTargets(var/dist = 7) - var/list/L = hearers(src, dist) - - for (var/obj/mecha/M in mechas_list) - if (M.z == src.z && get_dist(src, M) <= dist) - L += M - - return L - -/mob/living/simple_animal/proc/OpenFire(target_mob) +//The actual top-level ranged attack proc +/mob/living/simple_animal/proc/ShootTarget() var/target = target_mob - visible_message("\red [src] fires at [target]!", 1) - var/tturf = get_turf(target) + + if(firing_lines && !CheckFiringLine(tturf)) + step_rand(src) + face_atom(tturf) + return 0 + + visible_message("[src] fires at [target]!", 1) if(rapid) spawn(1) Shoot(tturf, src.loc, src) @@ -579,11 +1140,34 @@ if(casingtype) new casingtype - stance = STANCE_IDLE - target_mob = null - return + return 1 +//Check firing lines for faction_friends (if we're not cooperative, we don't care) +/mob/living/simple_animal/proc/CheckFiringLine(var/turf/tturf) + if(!tturf) return + var/turf/list/crosses = list() + var/this_turf = get_turf(src) + + while(this_turf != tturf) + this_turf = get_step(this_turf,get_dir(this_turf,tturf)) + crosses += this_turf + + for(var/mob/living/FF in faction_friends) + if(FF.loc in crosses) + return 0 + + for(var/mob/living/F in friends) + if(F.loc in crosses) + return 0 + + return 1 + +//Special attacks, like grenades or blinding spit or whatever +/mob/living/simple_animal/proc/SpecialAtkTarget() + return 0 + +//Shoot a bullet at someone /mob/living/simple_animal/proc/Shoot(var/target, var/start, var/user, var/bullet = 0) if(target == start) return @@ -598,18 +1182,62 @@ A.launch(target) return -/mob/living/simple_animal/proc/DestroySurroundings() - if(prob(break_stuff_probability)) - for(var/dir in cardinal) // North, South, East, West - for(var/obj/structure/window/obstacle in get_step(src, dir)) - if(obstacle.dir == reverse_dir[dir]) // So that windows get smashed in the right order - obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) - return - var/obj/structure/obstacle = locate(/obj/structure, get_step(src, dir)) - if(istype(obstacle, /obj/structure/window) || istype(obstacle, /obj/structure/closet) || istype(obstacle, /obj/structure/table) || istype(obstacle, /obj/structure/grille)) - obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) +//We can't see the target +/mob/living/simple_animal/proc/LoseTarget() + ai_log("LoseTarget() [target_mob]",2) + target_mob = null + handle_stance(STANCE_IDLE) + GiveUpMoving() +//Target is no longer valid (?) +/mob/living/simple_animal/proc/LostTarget() + handle_stance(STANCE_IDLE) + GiveUpMoving() +//Forget a follow mode +/mob/living/simple_animal/proc/LoseFollow() + ai_log("LoseFollow() [target_mob]",2) + follow_mob = null + handle_stance(STANCE_IDLE) + GiveUpMoving() + +//Find me some targets +/mob/living/simple_animal/proc/ListTargets(var/dist = view_range) + var/list/L = hearers(src, dist) + + for(var/obj/mecha/M in mechas_list) + if ((M.z == src.z) && (get_dist(src, M) <= dist) && (isInSight(src,M))) + L += M + + return L + +//Break through windows/other things +/mob/living/simple_animal/proc/DestroySurroundings(var/direction) + if(!direction) + direction = pick(cardinal) //FLAIL WILDLY + + var/turf/problem_turf = get_step(src, direction) + + ai_log("DestroySurroundings([direction])",3) + for(var/obj/structure/window/obstacle in problem_turf) + if(obstacle.dir == reverse_dir[dir]) // So that windows get smashed in the right order + ai_log("DestroySurroundings() directional window hit",3) + obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) + return + + var/obj/structure/obstacle = locate(/obj/structure, problem_turf) + if(istype(obstacle, /obj/structure/window) || istype(obstacle, /obj/structure/closet) || istype(obstacle, /obj/structure/table) || istype(obstacle, /obj/structure/grille)) + ai_log("DestroySurroundings() generic structure hit [obstacle]",3) + obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) + return + + for(var/obj/machinery/door/baddoor in problem_turf) //Required since firelocks take up the same turf + if(baddoor.density) + ai_log("DestroySurroundings() door hit [baddoor]",3) + baddoor.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) + return + +//Check for shuttle bumrush /mob/living/simple_animal/proc/check_horde() return 0 if(emergency_shuttle.shuttle.location) @@ -626,6 +1254,7 @@ enroute = 0 stop_automated_movement = 0 +//Shuttle bumrush /mob/living/simple_animal/proc/horde() var/turf/T = get_step_to(src, shuttletarget) for(var/atom/A in T) @@ -647,6 +1276,7 @@ if(!src.stat) horde() +//Touches a wire, etc /mob/living/simple_animal/electrocute_act(var/shock_damage, var/obj/source, var/siemens_coeff = 1.0, var/def_zone = null) shock_damage *= siemens_coeff if (shock_damage < 1) @@ -659,6 +1289,7 @@ s.set_up(5, 1, loc) s.start() +//Shot with taser/stunvolver /mob/living/simple_animal/stun_effect_act(var/stun_amount, var/agony_amount, var/def_zone, var/used_weapon=null) var/stunDam = 0 var/agonyDam = 0 @@ -669,4 +1300,26 @@ if(agony_amount) agonyDam += agony_amount * 0.5 - adjustFireLoss(agonyDam) \ No newline at end of file + adjustFireLoss(agonyDam) + +//Commands, reactions, etc +/mob/living/simple_animal/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "", var/italics = 0, var/mob/speaker = null, var/sound/speech_sound, var/sound_vol) + ..() + if(reacts && speaker && (message in reactions) && (!hostile || isliving(speaker)) && say_understands(speaker,language)) + var/mob/living/L = speaker + if(L.faction == faction) + spawn(10) + face_atom(speaker) + say(reactions[message]) + +//Just some subpaths for easy searching +/mob/living/simple_animal/hostile + faction = "not yours" + hostile = 1 + retaliate = 1 + stop_when_pulled = 0 + destroy_surroundings = 1 + +/mob/living/simple_animal/retaliate + retaliate = 1 + destroy_surroundings = 1 diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 95a96f03c88..a161062f1ef 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -706,12 +706,13 @@ /mob/proc/facedir(var/ndir) - if(!canface() || client.moving || world.time < client.move_delay) + if(!canface() || (client && (client.moving || (world.time < client.move_delay)))) return 0 set_dir(ndir) if(buckled && buckled.buckle_movable) buckled.set_dir(ndir) - client.move_delay += movement_delay() + if(client) + client.move_delay += movement_delay() return 1 diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 2f788862f82..4327840a478 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -535,7 +535,7 @@ proc/is_blind(A) if(. == SAFE_PERP) return SAFE_PERP - if(!istype(src, /mob/living/simple_animal/hostile/retaliate/goat)) + if(!istype(src, /mob/living/simple_animal/retaliate/goat)) threatcount += 4 return threatcount diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 269dbd4f30b..ccf46782163 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -304,7 +304,7 @@ return 1 if(ispath(MP, /mob/living/simple_animal/shade)) return 1 - if(ispath(MP, /mob/living/simple_animal/tomato)) + if(ispath(MP, /mob/living/simple_animal/hostile/tomato)) return 1 if(ispath(MP, /mob/living/simple_animal/mouse)) return 1 //It is impossible to pull up the player panel for mice (Fixed! - Nodrak) diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 483defc3985..ed27e1a259b 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -36,7 +36,7 @@ /obj/machinery/disease2/incubator, /obj/machinery/disposal, /mob/living/simple_animal/cow, - /mob/living/simple_animal/hostile/retaliate/goat, + /mob/living/simple_animal/retaliate/goat, /obj/machinery/computer/centrifuge, /obj/machinery/sleeper, /obj/machinery/smartfridge/, diff --git a/code/modules/xenoarcheaology/artifacts/autocloner.dm b/code/modules/xenoarcheaology/artifacts/autocloner.dm index 89c653516f9..5f56ece8ee3 100644 --- a/code/modules/xenoarcheaology/artifacts/autocloner.dm +++ b/code/modules/xenoarcheaology/artifacts/autocloner.dm @@ -37,7 +37,7 @@ /mob/living/simple_animal/slime, /mob/living/simple_animal/crab, /mob/living/simple_animal/mouse, - /mob/living/simple_animal/hostile/retaliate/goat) + /mob/living/simple_animal/retaliate/goat) //todo: how the hell is the asteroid permanently powered? /obj/machinery/auto_cloner/process() diff --git a/polaris.dme b/polaris.dme index 353899627c9..508a608512d 100644 --- a/polaris.dme +++ b/polaris.dme @@ -1678,45 +1678,45 @@ #include "code\modules\mob\living\silicon\robot\drone\drone_manufacturer.dm" #include "code\modules\mob\living\silicon\robot\drone\drone_say.dm" #include "code\modules\mob\living\simple_animal\corpse.dm" -#include "code\modules\mob\living\simple_animal\parrot.dm" -#include "code\modules\mob\living\simple_animal\shade.dm" #include "code\modules\mob\living\simple_animal\simple_animal.dm" -#include "code\modules\mob\living\simple_animal\worm.dm" +#include "code\modules\mob\living\simple_animal\aliens\alien.dm" +#include "code\modules\mob\living\simple_animal\aliens\creature.dm" +#include "code\modules\mob\living\simple_animal\aliens\drone.dm" +#include "code\modules\mob\living\simple_animal\aliens\faithless.dm" +#include "code\modules\mob\living\simple_animal\aliens\hivebot.dm" +#include "code\modules\mob\living\simple_animal\aliens\mimic.dm" +#include "code\modules\mob\living\simple_animal\aliens\shade.dm" +#include "code\modules\mob\living\simple_animal\animals\bat.dm" +#include "code\modules\mob\living\simple_animal\animals\bear.dm" +#include "code\modules\mob\living\simple_animal\animals\carp.dm" +#include "code\modules\mob\living\simple_animal\animals\cat.dm" +#include "code\modules\mob\living\simple_animal\animals\corgi.dm" +#include "code\modules\mob\living\simple_animal\animals\crab.dm" +#include "code\modules\mob\living\simple_animal\animals\farm_animals.dm" +#include "code\modules\mob\living\simple_animal\animals\giant_spider.dm" +#include "code\modules\mob\living\simple_animal\animals\goose.dm" +#include "code\modules\mob\living\simple_animal\animals\lizard.dm" +#include "code\modules\mob\living\simple_animal\animals\mouse.dm" +#include "code\modules\mob\living\simple_animal\animals\parrot.dm" +#include "code\modules\mob\living\simple_animal\animals\penguin.dm" +#include "code\modules\mob\living\simple_animal\animals\slime.dm" +#include "code\modules\mob\living\simple_animal\animals\spiderbot.dm" +#include "code\modules\mob\living\simple_animal\animals\tomato.dm" +#include "code\modules\mob\living\simple_animal\animals\tree.dm" +#include "code\modules\mob\living\simple_animal\animals\worm.dm" #include "code\modules\mob\living\simple_animal\borer\borer.dm" #include "code\modules\mob\living\simple_animal\borer\borer_captive.dm" #include "code\modules\mob\living\simple_animal\borer\borer_powers.dm" #include "code\modules\mob\living\simple_animal\borer\say.dm" #include "code\modules\mob\living\simple_animal\constructs\constructs.dm" #include "code\modules\mob\living\simple_animal\constructs\soulstone.dm" -#include "code\modules\mob\living\simple_animal\friendly\cat.dm" -#include "code\modules\mob\living\simple_animal\friendly\corgi.dm" -#include "code\modules\mob\living\simple_animal\friendly\crab.dm" -#include "code\modules\mob\living\simple_animal\friendly\farm_animals.dm" -#include "code\modules\mob\living\simple_animal\friendly\lizard.dm" -#include "code\modules\mob\living\simple_animal\friendly\mouse.dm" -#include "code\modules\mob\living\simple_animal\friendly\mushroom.dm" -#include "code\modules\mob\living\simple_animal\friendly\penguin.dm" -#include "code\modules\mob\living\simple_animal\friendly\slime.dm" -#include "code\modules\mob\living\simple_animal\friendly\spiderbot.dm" -#include "code\modules\mob\living\simple_animal\friendly\tomato.dm" -#include "code\modules\mob\living\simple_animal\hostile\alien.dm" -#include "code\modules\mob\living\simple_animal\hostile\bat.dm" -#include "code\modules\mob\living\simple_animal\hostile\bear.dm" -#include "code\modules\mob\living\simple_animal\hostile\carp.dm" -#include "code\modules\mob\living\simple_animal\hostile\creature.dm" -#include "code\modules\mob\living\simple_animal\hostile\faithless.dm" -#include "code\modules\mob\living\simple_animal\hostile\giant_spider.dm" -#include "code\modules\mob\living\simple_animal\hostile\goose.dm" -#include "code\modules\mob\living\simple_animal\hostile\hivebot.dm" -#include "code\modules\mob\living\simple_animal\hostile\hostile.dm" -#include "code\modules\mob\living\simple_animal\hostile\mimic.dm" -#include "code\modules\mob\living\simple_animal\hostile\pirate.dm" -#include "code\modules\mob\living\simple_animal\hostile\russian.dm" -#include "code\modules\mob\living\simple_animal\hostile\syndicate.dm" -#include "code\modules\mob\living\simple_animal\hostile\tree.dm" -#include "code\modules\mob\living\simple_animal\hostile\retaliate\clown.dm" -#include "code\modules\mob\living\simple_animal\hostile\retaliate\drone.dm" -#include "code\modules\mob\living\simple_animal\hostile\retaliate\retaliate.dm" +#include "code\modules\mob\living\simple_animal\humanoids\clown.dm" +#include "code\modules\mob\living\simple_animal\humanoids\head.dm" +#include "code\modules\mob\living\simple_animal\humanoids\kobold.dm" +#include "code\modules\mob\living\simple_animal\humanoids\mechamobs.dm" +#include "code\modules\mob\living\simple_animal\humanoids\pirate.dm" +#include "code\modules\mob\living\simple_animal\humanoids\russian.dm" +#include "code\modules\mob\living\simple_animal\humanoids\syndicate.dm" #include "code\modules\mob\living\voice\voice.dm" #include "code\modules\mob\new_player\login.dm" #include "code\modules\mob\new_player\logout.dm" From ae68468861e82713d5d96a3e0fc5fce2944f31b9 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 22 Mar 2017 17:09:04 -0400 Subject: [PATCH 7/8] Allow AI to use custom holograms (#3114) * Compound icon generator proc Why didn't this exist before? Am I missing something? I need manipulatable icons of existing atoms including their overlays. Is there some easier way to get them than this...? * Polaris Portion of AI Upgrade --- code/_helpers/icons.dm | 20 +++ code/modules/mob/living/silicon/ai/ai.dm | 151 ++++++++++++----------- 2 files changed, 101 insertions(+), 70 deletions(-) diff --git a/code/_helpers/icons.dm b/code/_helpers/icons.dm index cabf7c04b37..c971b22dace 100644 --- a/code/_helpers/icons.dm +++ b/code/_helpers/icons.dm @@ -793,6 +793,26 @@ proc // Creates a single icon from a given /atom or /image. Only the first argu alpha_mask.Blend(image_overlay,ICON_OR)//OR so they are lumped together in a nice overlay. return alpha_mask//And now return the mask. +//getFlatIcon but generates an icon that can face ALL four directions. The only four. +/proc/getCompoundIcon(atom/A) + var/icon/north = getFlatIcon(A,defdir=NORTH,always_use_defdir=1) + var/icon/south = getFlatIcon(A,defdir=SOUTH,always_use_defdir=1) + var/icon/east = getFlatIcon(A,defdir=EAST,always_use_defdir=1) + var/icon/west = getFlatIcon(A,defdir=WEST,always_use_defdir=1) + + //Starts with a blank icon because of byond bugs. + var/icon/full = icon('icons/effects/effects.dmi', "icon_state"="nothing") + + full.Insert(north,dir=NORTH) + full.Insert(south,dir=SOUTH) + full.Insert(east,dir=EAST) + full.Insert(west,dir=WEST) + qdel(north) + qdel(south) + qdel(east) + qdel(west) + return full + /mob/proc/AddCamoOverlay(atom/A)//A is the atom which we are using as the overlay. var/icon/opacity_icon = new(A.icon, A.icon_state)//Don't really care for overlays/underlays. //Now we need to culculate overlays+underlays and add them together to form an image for a mask. diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 5c5c3b0ab74..1aa424ea887 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -545,82 +545,93 @@ var/list/ai_verbs_hidden = list( // For why this exists, refer to https://xkcd.c return var/input - if(alert("Would you like to select a hologram based on a crew member or switch to unique avatar?",,"Crew Member","Unique")=="Crew Member") + var/choice = alert("Would you like to select a hologram based on a (visible) crew member, switch to unique avatar, or load your character from your character slot?",,"Crew Member","Unique","My Character") - var/personnel_list[] = list() + switch(choice) + if("Crew Member") + var/list/targets = trackable_mobs() + if(targets.len) + input = input("Select a crew member:") as null|anything in targets //The definition of "crew member" is a little loose... + //This is torture, I know. If someone knows a better way... + if(!input) return + var/new_holo = getHologramIcon(getCompoundIcon(targets[input])) + qdel(holo_icon) + holo_icon = new_holo - for(var/datum/data/record/t in data_core.locked)//Look in data core locked. - personnel_list["[t.fields["name"]]: [t.fields["rank"]]"] = t.fields["image"]//Pull names, rank, and image. + else + alert("No suitable records found. Aborting.") - if(personnel_list.len) - input = input("Select a crew member:") as null|anything in personnel_list - var/icon/character_icon = personnel_list[input] - if(character_icon) - qdel(holo_icon)//Clear old icon so we're not storing it in memory. - holo_icon = getHologramIcon(icon(character_icon)) - else - alert("No suitable records found. Aborting.") + if("My Character") + if(!client || !client.prefs) return + var/mob/living/carbon/human/dummy/dummy = new () + //This doesn't include custom_items because that's ... hard. + client.prefs.dress_preview_mob(dummy) + sleep(1 SECOND) //Strange bug in preview code? Without this, certain things won't show up. Yay race conditions? + dummy.regenerate_icons() - else - var/icon_list[] = list( - "default", - "floating face", - "carp", - "ian", - "runtime", - "poly", - "pun pun", - "male human", - "female human", - "male unathi", - "female unathi", - "male tajara", - "female tajara", - "male tesharii", - "female tesharii", - "male skrell", - "female skrell" - ) - input = input("Please select a hologram:") as null|anything in icon_list - if(input) + var/new_holo = getHologramIcon(getCompoundIcon(dummy)) qdel(holo_icon) - switch(input) - if("default") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo1")) - if("floating face") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo2")) - if("carp") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo4")) - if("ian") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"corgi")) - if("runtime") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"cat")) - if("poly") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"parrot_fly")) - if("pun pun") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"punpun")) - if("male human") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holohumm")) - if("female human") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holohumf")) - if("male unathi") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holounam")) - if("female unathi") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holounaf")) - if("male tajara") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotajm")) - if("female tajara") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotajf")) - if("male tesharii") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotesm")) - if("female tesharii") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotesf")) - if("male skrell") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holoskrm")) - if("female skrell") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holoskrf")) + qdel(dummy) + holo_icon = new_holo - return + else //One from the dmi. + var/icon_list[] = list( + "default", + "floating face", + "carp", + "ian", + "runtime", + "poly", + "pun pun", + "male human", + "female human", + "male unathi", + "female unathi", + "male tajara", + "female tajara", + "male tesharii", + "female tesharii", + "male skrell", + "female skrell" + ) + input = input("Please select a hologram:") as null|anything in icon_list + if(input) + qdel(holo_icon) + switch(input) + if("default") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo1")) + if("floating face") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo2")) + if("carp") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo4")) + if("ian") + holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"corgi")) + if("runtime") + holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"cat")) + if("poly") + holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"parrot_fly")) + if("pun pun") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"punpun")) + if("male human") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holohumm")) + if("female human") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holohumf")) + if("male unathi") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holounam")) + if("female unathi") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holounaf")) + if("male tajara") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotajm")) + if("female tajara") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotajf")) + if("male tesharii") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotesm")) + if("female tesharii") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotesf")) + if("male skrell") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holoskrm")) + if("female skrell") + holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holoskrf")) //Toggles the luminosity and applies it by re-entereing the camera. /mob/living/silicon/ai/proc/toggle_camera_light() From be36363a2361b504e8b1fb8a2eb781c1178f46dd Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 22 Mar 2017 17:11:55 -0400 Subject: [PATCH 8/8] Ports several Paradise sound emotes (#3039) * Ports several Paradise sound emotes * Comment out scream MORE. * Remove goonsounds, references --- code/modules/mob/living/carbon/human/emote.dm | 107 +++++++++++++++--- .../carbon/human/species/outsider/vox.dm | 8 ++ .../living/carbon/human/species/species.dm | 9 ++ .../human/species/station/prometheans.dm | 3 + sound/effects/fingersnap.ogg | Bin 0 -> 7235 bytes sound/effects/mob_effects/f_cougha.ogg | Bin 0 -> 23677 bytes sound/effects/mob_effects/f_coughb.ogg | Bin 0 -> 20962 bytes .../effects/mob_effects/f_machine_cougha.ogg | Bin 0 -> 24397 bytes .../effects/mob_effects/f_machine_coughb.ogg | Bin 0 -> 21201 bytes .../effects/mob_effects/f_machine_sneeze.ogg | Bin 0 -> 18137 bytes sound/effects/mob_effects/f_sneeze.ogg | Bin 0 -> 17841 bytes sound/effects/mob_effects/m_cougha.ogg | Bin 0 -> 22585 bytes sound/effects/mob_effects/m_coughb.ogg | Bin 0 -> 22329 bytes sound/effects/mob_effects/m_coughc.ogg | Bin 0 -> 16702 bytes .../effects/mob_effects/m_machine_cougha.ogg | Bin 0 -> 24159 bytes .../effects/mob_effects/m_machine_coughb.ogg | Bin 0 -> 23642 bytes .../effects/mob_effects/m_machine_coughc.ogg | Bin 0 -> 22627 bytes sound/effects/mob_effects/machine_sneeze.ogg | Bin 0 -> 18562 bytes sound/effects/mob_effects/sneeze.ogg | Bin 0 -> 19565 bytes sound/effects/slime_squish.ogg | Bin 0 -> 12231 bytes sound/voice/shriekcough.ogg | Bin 0 -> 12101 bytes sound/voice/shrieksneeze.ogg | Bin 0 -> 11882 bytes 22 files changed, 109 insertions(+), 18 deletions(-) create mode 100644 sound/effects/fingersnap.ogg create mode 100644 sound/effects/mob_effects/f_cougha.ogg create mode 100644 sound/effects/mob_effects/f_coughb.ogg create mode 100644 sound/effects/mob_effects/f_machine_cougha.ogg create mode 100644 sound/effects/mob_effects/f_machine_coughb.ogg create mode 100644 sound/effects/mob_effects/f_machine_sneeze.ogg create mode 100644 sound/effects/mob_effects/f_sneeze.ogg create mode 100644 sound/effects/mob_effects/m_cougha.ogg create mode 100644 sound/effects/mob_effects/m_coughb.ogg create mode 100644 sound/effects/mob_effects/m_coughc.ogg create mode 100644 sound/effects/mob_effects/m_machine_cougha.ogg create mode 100644 sound/effects/mob_effects/m_machine_coughb.ogg create mode 100644 sound/effects/mob_effects/m_machine_coughc.ogg create mode 100644 sound/effects/mob_effects/machine_sneeze.ogg create mode 100644 sound/effects/mob_effects/sneeze.ogg create mode 100644 sound/effects/slime_squish.ogg create mode 100644 sound/voice/shriekcough.ogg create mode 100644 sound/voice/shrieksneeze.ogg diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 56e71d931a0..7908914eedf 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -25,7 +25,8 @@ message = "is strumming the air and headbanging like a safari chimp." m_type = 1 - if("ping", "beep", "buzz", "yes", "no") + //Machine-only emotes + if("ping", "beep", "buzz", "yes", "no", "rcough", "rsneeze") if(!isSynthetic()) src << "You are not a synthetic." @@ -54,6 +55,18 @@ else if(act == "no") display_msg = "emits a negative blip" use_sound = 'sound/machines/synth_no.ogg' + else if(act == "rcough") + display_msg = "emits a robotic cough" + if(gender == FEMALE) + use_sound = pick('sound/effects/mob_effects/f_machine_cougha.ogg','sound/effects/mob_effects/f_machine_coughb.ogg') + else + use_sound = pick('sound/effects/mob_effects/m_machine_cougha.ogg','sound/effects/mob_effects/m_machine_coughb.ogg', 'sound/effects/mob_effects/m_machine_coughc.ogg') + else if(act == "rsneeze") + display_msg = "emits a robotic sneeze" + if(gender == FEMALE) + use_sound = 'sound/effects/mob_effects/machine_sneeze.ogg' + else + use_sound = 'sound/effects/mob_effects/f_machine_sneeze.ogg' if (param) message = "[display_msg] at [param]." @@ -62,6 +75,17 @@ playsound(src.loc, use_sound, 50, 0) m_type = 1 + //Promethean-only emotes + if("squish") + if(!species.bump_flag == SLIME) //That should do, yaya. + src << "You are not a slime thing!" + return + + playsound(src.loc, 'sound/effects/slime_squish.ogg', 50, 0) //Credit to DrMinky (freesound.org) for the sound. + message = "blinks." + m_type = 1 + + if ("blink") message = "blinks." m_type = 1 @@ -202,14 +226,20 @@ src.sleeping += 10 //Short-short nap m_type = 1 - if ("cough") + if("cough", "coughs") if(miming) message = "appears to cough!" m_type = 1 else - if (!muzzled) + if(!muzzled) message = "coughs!" m_type = 2 + if(gender == FEMALE) + if(species.female_cough_sounds) + playsound(src, pick(species.female_cough_sounds), 120) + else + if(species.male_cough_sounds) + playsound(src, pick(species.male_cough_sounds), 120) else message = "makes a strong noise." m_type = 2 @@ -456,13 +486,17 @@ message = "trembles in fear!" m_type = 1 - if ("sneeze") - if (miming) + if("sneeze", "sneezes") + if(miming) message = "sneezes." m_type = 1 else - if (!muzzled) + if(!muzzled) message = "sneezes." + if(gender == FEMALE) + playsound(src, species.female_sneeze_sound, 70) + else + playsound(src, species.male_sneeze_sound, 70) m_type = 2 else message = "makes a strange noise." @@ -565,18 +599,59 @@ else message = "sadly can't find anybody to give daps to, and daps [get_visible_gender() == MALE ? "himself" : get_visible_gender() == FEMALE ? "herself" : "themselves"]. Shameful." - if ("scream") - if (miming) + if("slap", "slaps") + m_type = 1 + if(!restrained()) + var/M = null + if(param) + for(var/mob/A in view(1, null)) + if(param == A.name) + M = A + break + if(M) + message = "slaps [M] across the face. Ouch!" + playsound(loc, 'sound/effects/snap.ogg', 50, 1) + else + message = "slaps [get_visible_gender() == MALE ? "himself" : get_visible_gender() == FEMALE ? "herself" : "themselves"]!" + playsound(loc, 'sound/effects/snap.ogg', 50, 1) + + if("scream", "screams") + if(miming) message = "acts out a scream!" m_type = 1 else - if (!muzzled) - message = "screams!" + if(!muzzled) + message = "[species.scream_verb]!" m_type = 2 + /* Removed, pending the location of some actually good, properly licensed sounds. + if(gender == FEMALE) + playsound(loc, "[species.female_scream_sound]", 80, 1) + else + playsound(loc, "[species.male_scream_sound]", 80, 1) //default to male screams if no gender is present. + */ else message = "makes a very loud noise." m_type = 2 + if("snap", "snaps") + m_type = 2 + var/mob/living/carbon/human/H = src + var/obj/item/organ/external/L = H.get_organ("l_hand") + var/obj/item/organ/external/R = H.get_organ("r_hand") + var/left_hand_good = 0 + var/right_hand_good = 0 + if(L && (!(L.status & ORGAN_DESTROYED)) && (!(L.splinted)) && (!(L.status & ORGAN_BROKEN))) + left_hand_good = 1 + if(R && (!(R.status & ORGAN_DESTROYED)) && (!(R.splinted)) && (!(R.status & ORGAN_BROKEN))) + right_hand_good = 1 + + if(!left_hand_good && !right_hand_good) + to_chat(usr, "You need at least one hand in good working order to snap your fingers.") + return + + message = "snaps [get_visible_gender() == MALE ? "his" : get_visible_gender() == FEMALE ? "her" : "their"] fingers." + playsound(loc, 'sound/effects/fingersnap.ogg', 50, 1, -3) + if("swish") src.animate_tail_once() @@ -597,18 +672,14 @@ return if ("help") - src << {"blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough, cry, custom, deathgasp, drool, eyebrow, fastsway/qwag, -frown, gasp, giggle, glare-(none)/mob, grin, groan, grumble, handshake, hug-(none)/mob, laugh, look-(none)/mob, moan, mumble, nod, pale, point-atom, -raise, salute, shake, shiver, shrug, sigh, signal-#1-10, smile, sneeze, sniff, snore, stare-(none)/mob, stopsway/swag, sway/wag, swish, tremble, twitch, -twitch_v, vomit, whimper, wink, yawn"} + src << "blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough, cry, custom, deathgasp, drool, eyebrow, fastsway/qwag, \ + frown, gasp, giggle, glare-(none)/mob, grin, groan, grumble, handshake, hug-(none)/mob, laugh, look-(none)/mob, moan, mumble, nod, pale, point-atom, \ + raise, salute, scream, sneeze, shake, shiver, shrug, sigh, signal-#1-10, slap-(none)/mob, smile, sneeze, sniff, snore, stare-(none)/mob, stopsway/swag, sway/wag, swish, tremble, twitch, \ + twitch_v, vomit, whimper, wink, yawn. Synthetics: beep, buzz, yes, no, rcough, rsneeze, ping" else src << "\blue Unusable emote '[act]'. Say *help for a list." - - - - if (message) log_emote("[name]/[key] : [message]") custom_emote(m_type,message) diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm index 1a9a986dd1d..ef6bf12729b 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -22,6 +22,14 @@ speech_sounds = list('sound/voice/shriek1.ogg') speech_chance = 20 + scream_verb = "shrieks" + male_scream_sound = 'sound/voice/shriek1.ogg' + female_scream_sound = 'sound/voice/shriek1.ogg' + male_cough_sounds = list('sound/voice/shriekcough.ogg') + female_cough_sounds = list('sound/voice/shriekcough.ogg') + male_sneeze_sound = 'sound/voice/shrieksneeze.ogg' + female_sneeze_sound = 'sound/voice/shrieksneeze.ogg' + warning_low_pressure = 50 hazard_low_pressure = 0 diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index b6f69959d9a..6ea0ed68898 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -50,6 +50,15 @@ var/num_alternate_languages = 0 // How many secondary languages are available to select at character creation var/name_language = LANGUAGE_GALCOM // The language to use when determining names for this species, or null to use the first name/last name generator + //Soundy emotey things. + var/scream_verb = "screams" + var/male_scream_sound //= 'sound/goonstation/voice/male_scream.ogg' Removed due to licensing, replace! + var/female_scream_sound //= 'sound/goonstation/voice/female_scream.ogg' Removed due to licensing, replace! + var/male_cough_sounds = list('sound/effects/mob_effects/m_cougha.ogg','sound/effects/mob_effects/m_coughb.ogg', 'sound/effects/mob_effects/m_coughc.ogg') + var/female_cough_sounds = list('sound/effects/mob_effects/f_cougha.ogg','sound/effects/mob_effects/f_coughb.ogg') + var/male_sneeze_sound = 'sound/effects/mob_effects/sneeze.ogg' + var/female_sneeze_sound = 'sound/effects/mob_effects/f_sneeze.ogg' + // Combat vars. var/total_health = 100 // Point at which the mob will enter crit. var/list/unarmed_types = list( // Possible unarmed attacks that the mob will use in combat, diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans.dm b/code/modules/mob/living/carbon/human/species/station/prometheans.dm index e7b4588e8fe..e239b8118c0 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans.dm @@ -28,6 +28,9 @@ var/datum/species/shapeshifter/promethean/prometheans breath_type = null poison_type = null + male_cough_sounds = list('sound/effects/slime_squish.ogg') + female_cough_sounds = list('sound/effects/slime_squish.ogg') + gluttonous = 1 virus_immune = 1 blood_volume = 560 diff --git a/sound/effects/fingersnap.ogg b/sound/effects/fingersnap.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f7046403513dad1bfa059f5113b8dc6e800c8389 GIT binary patch literal 7235 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 literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/f_cougha.ogg b/sound/effects/mob_effects/f_cougha.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f53e0f5bd2c95f2a299cc5f0d32e61f1ce65d1b1 GIT binary patch literal 23677 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 Y=$<$Mfqfz&NEWya5!HoI{Xf?K0Wd$e&;S4c literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/f_coughb.ogg b/sound/effects/mob_effects/f_coughb.ogg new file mode 100644 index 0000000000000000000000000000000000000000..2626f8d6621a61640f98caee01a18836c77a002e GIT binary patch literal 20962 zcmeFZby$^8*C;%D)1`nkh?{Pt8{8lu-5?;{EuErUO1itG8>FQ~q!A>f8$?A)ltxs( z8~r`cdA|31uXE0Io$LGW4EG)<*37zR#jG`Pt8Qzn4dCFPkfQT9an`u*1fzv{KXkXS z_qZy8%U1mZ;`SG~1*U%0^55aAB@D_LK8@lfHo5#SApz}gR~!(8zP+m*x4OG6!pYu3 z?+*fmB7%>Hmyd^!habVJ?(Aak>Tc~}?c&LH)!{AZXYFG7(8}6fQpMccQc##%NRXSC zhv%yO-(F!DfB$8ZxvK{Q*iZvr6+|CuJYE+7LIBJd*{&toD6$nN=d=2yCo5c~`gkJJ zlOy^lETeh*{}mwwtVjVs2PjsY*uu|>4x^&B6fCjsd7}1eBBcndNX<1-obF?0OP7+y z5=WO&HYRKW0}O~X0I5J1N}_cYS%lMtQ9#i%8uvlE(rkBJ_OiSnT)sg>unON+QIeY2 zR#{=J*fwk9xC|aw<9j6)-f2C{npc>{k32?2H?#kVaQ=(~0lkY1CZ!dj4E9y`;cO-8 z?od~MhlKzrXqez$0*PWB$#5Oby9q}115V8wf)o65+B&MbQ1CLo?`=Kn?KSHiXpkQI zpe4|tCG^2usPSp2IYrn%&spH=>DBXR=m;3dV-QW>Iff$c|^)?{SKC|Ti^Vk@qTK}&fq}?DpKti+} zaHAP;W0cck9B}8v`a|JC0Pz&5#o6aBaL+?vz(WFh?s>`%C9AwUQn~&wCS0){03 zpBv2(L=7#jNq52f9+I;js_quk8C)=y~;!P&ph#44ZHhuRv9XMQegC4o{A$yqE-tvY}E`$sIw zO|nPdh^|8|A{Me7TXBq`)VWpm*LOHqW&c%tkPzR@=P3Gff)IhRm=+{-C3H!&o^jWb z@^}Z?ifChE<(0~VHMA&Miamq=j2r<#2;mbU`QDP+fTh@jVzG2R*sH$gF zY^Sz|@Gd?tB*mP9kQB!>ea`i$5mj(3ZkjRVC{ET=Vk`cuQ4muRR`Jr9lz)^YEZzMr zTPdU!|H-&-jAKMMC;sCZ`%a@t%mh6Xd|cZ6lDay&_r0AB(!3U5h8oX#tLM zhy7Q<`nTo)NNGa;=wz}*H19xmu$m0cUk3k6bKFP<5@?1J7?tZ8Ro`>II}lJm6qvXn zrzxPSO=>(r>NQDbtu16cDQG>ZYd!64J>P8o;ANme^FIpnS8Y~jz5YXUu2h6xG5--3k(=SMtP!d95t$XO z1x{~kcG~`z&%ZV2o;xG-K$;`x&iEgi)5S}37t*GBPSwM|W0ahL2PJ4t9y(xWMF_dKLgQ3Gs51pu(YAXe4uI7F%x=&?T(6omQ@+rZ! z0T_)c8jUgA zIN&G|7hgdbFq3jr%!RcyZbms~?H@=fJN3C=`_16*P<#J*d=yyCxqITQdW7#2W*8*h>S zey2hOVgN)EtqdUlLLt!_22j=pxmW-sTKm!d_uc&Om;M)oFcd2Q&kFR(Txo{kv6cqN zL{2<21E7lLONAtXT>-r-8hveWfQC+ zCn$nm07??&Zu*trj2%MbW{oVchePHCB0I(v*@f(sIIn5g4JrWyBj{QeN&Vzkz#0kp zPZe+7IEN2qHAz&pb&b{PcQ?)SYQWBNQ5k*>BY#0D_ zQv~|yV~2)Sp@Rd++p|oz7!loMlu_dSob5qOS4;u9H{~RjS3XX1A}{18t0@hoLuD+* zRuEivl9m`$b`5ekJRy*xWG$I5*&dMpkpqFi0P-)jBc0TEh;{yun-p}dU9l^d1tPa% zVu@ca3*@&tBo_TG$&?uThx&fG|Ipao7~;kip_qoRcvN0dfeYm(Awq>-`MVVrJKfD! z^q=)IU%VpzPFoj5cQ0$omMinki3fnXD*)`Z=3XI51$AAJp@U!9%Me~{Hpu6~q$?tn zQD6&=|9^`=3nQ&h0;-V=-Ctk8KQLOx;WWz|d z<_{2qpfYGEhDLaF#mRu0fr&23aR@X=27$e7;_28=3 zv09MrlZSHMw4r5H6LVp7;#FBy(+qvG7GFP!Hk8T?;pso6u&mUj zts)8!NX!r+S1Yk1>^~LKkb4R7jMDO775O2FT5q8iR}~OCrsAo;Em*HSVWskaR}?2F zYyD}9{l`UymZDdlDlsIx$y!jmPzc9g-x(qZE`;Mxg%Y%6C6U4TTalay!4>~g0U?6= z|EB^%1aeM2mJkVG*w}v;oL6~l?7w>< zT?~KPgR8xeE3^1?=Rk_)-esb+qP)Dc(F48vMpl>aE>kXZE}vcYUFKdkgplqVr*XHl&5>A`0UGOujCBgoPOD~ z__BH0BQ1jL=H*uYi>2m8-lEGLj$2#4_9a{Hty6o)$1>a=hGMd8xp!XwI=I*zJ=_dB z*vr@0UyD1j^(Iv$9^Nt z=au*!Cdx@u3mHZ$vYwSJp(_5T_KA%2znYcnoQcGJHd=;vY%0hBz~OmsVTp!-%BngONwkB@_6P~hV<$FI|0Pk!#4pQH5rWe4d_P(9z~{fHyb8PUP+ z`THW`4iR+kZz3%5q|7SUQ8B!jd6)F&VS&qT)|!q>m%E3X5ByR+w(GY)X05Z9PG^RS zm&SKA_{y;#H!3!uGcunFa;6A!7cI}2yD5rArJ=}%u=1){G0o-`G)^{dOZDl!efRp; zozkz#XFo437vDSIaPyxfes`CNppFctkz1~ z^vVPqflbC`2pXm z-jX_HnqG%N;dHFlEsi)D281q#ZjPq0<58y0sr31N^%O^UHJbQLb^HAqy#NqjpwLY3 zbc1USH?A?ww-r^AttFir8KE7_EB@)_uhUY0}N%#T)!?$CqM8V#){V8E;mIiBJ`jBQ^$?Y?J)U>&1MB z=L;RXav>4k@WS21%Pp!X|6|7YpFS<%GPI?BsY)>tH3_&k#%arcB1|}NgX@!K?I`Y3 z3nT|TAZ3E1S#sh8^Y{SlQoi7g82jW$>k1ca_>w@|QaVSNfA`VqIJ-qd_9P}7w!!ns z<`Or~l}Y2xSB|j;zU59gm72z})rnKi9yjQ&8oPbSExa>|@!M%-0Oci*B!peNX-mkD z(f-S^VlMC67CGDih_yAQOB>k`zkD6CzNlk^k~Xqh^Db3>^X)MJ7UXGh&$F}bPGJ`m z#~xZkV#Lp1Ouno+laBI1FncQ!)*YJMSvv%=MSBCASx(O~s0&Z$UobaKMmHHtM!tYHiL|znQx2t~|_J z#xb+lv?jNXZrPWYR%{b;97k>U0^XW4$1xFVEf-qbxVfX zY*WN2%^Q#zPE?Z0rgZ!FaolXvgJmO<4B=|1TnX_t-3G!ASv|}RP3Bc3eNNG&9YA4h z-gE)|AG113d>gQIm8eNtuS`)pv42buDZ|I{r?1%GAE<;dz=)$((foe>v8SZLP275gQni5Dd0tfkK23&gKGiNxgghs6F7Ge@ z9ND`Y=dJHcUtH)@<0hpB4!rDtgYI)Qq&oXNw{oye-SVRHva{J))Frjm|51R)sP0aQ zx`) zyY=po{zU8P8@Qugl?FawO(y8a<4nbP)Vg!~>B17DKSZq;PhlwGac!Yvu7(Uekqmn? zSUj#iKxMMAk-t)5qThT^uF1{$?KeJ;Qh?b(Cua!0!L9UffYxEkn7(K))2^`MC}1}s zvw&h&qqbu2qNitHpsV>=)NR3N-nN);UawxLW?~?d;CB&y*7c9Sp2ltW$vJzxdbqf& zz~VNLYGQiuVttUtHM&Qra%0kC%;~uhFJ51parXP~wXYKGV`3kmv#UI8a!s)Lk%c}T zZ-T-~aZjDRSFX4ES`A@P-(c_lvV=R7{i&9%6(eKpOny*iLTS!-&z>U$7KM5ShYl-c z&d$)pd)dSBVee%O<82&5RI}^-w2}PMVB}ntvB!Qfhuqt2qnoz)yAB&)jYj4(nr@Jx zQ_=QEMzR;L5Dw(3#YVXpI>J+W>9<3+6v?6v8aU{aF}OhC96~#1d<|Lo8Xt062YKw^ z3@D8^#fX+vnIzEl`+R948*&M^PRSDGQ_=G0MEHKJz96t*m({~xU8AZ8EE;jq5a(RcEy@xk~>cp z4_jwf$$xct9mlMG?>#u>?|T$TphY~BQ)QiD$mktVq7rbwnU`;o#lAr10p6}Rr=@E> zNwl=LAh5bUI$as7v~F_rl@_&dFC$&Kugi%?=UD_$U>u`T7vw4{?=7>4G}NlDnu?tg zRO}(N4vjMqZ;yf_du;k0jnT%hYX-`q>9HLsA}#AaOFmqlYj5;z$FWuxOif8coCppc zNR2NoWQ_)>9AbtH-8Gp-^OO)_(VqAs^R={IuR!n3V2~t0IeckYGJg|9Cs^#Iq8rNrhL8{oQvog3Nq{TJ84do>fEc$ng!En+m-;ie z&qA$|@qr4!afXelNIQb>qK39Q|c&_!6JuHBTzB^}JX+x4>8)p3@0aNm4OH0>M zj=%i9xx_kgc@gt$wv~Wxen3tML**Qqa_D!r?cWjMlcBP?VQp_+BhD*^?xy;tQD1KF zW+dZk`XsC?kcsRygMC4Zfjr6w* zA`YAYC3lBY&?^J%;2z1y^2R6dBH1zo>K>$tTg}Bwx1H_%dhnU(*ZKRn*~$)rx98YA z$}7rePo!QWDmD9?#q-eN?5oi$aq}|xab!dw+!OPNxIjl2KcbAHE=s>J|%o#n+_BHQsQm;RxwdXqsfR2_avqB zwwt^WcQNcKI?!iEDHNgDSpm@d&@Ng6^a*(ndJBjQEYW$wEq1T^)^>_pFW$_%Wp8w8 ztFJe*D_+?{N9;N$%Jzk(N|5+!`-dRBT~|M?)eP$*M=H zs7OZKbkfA^?5B!en_2uMSLze{Oc>?jcC5}AyBvQ4U<@hu!pAT-GsugUEZ@eVC~hp=1H^i?43$OWd1WO-nR%$bMwD;_5AJl#&j%LQy>AbcIry^u z$vih%5TE;3-NtJ5)?Q07`wp%_$(xUmVd?6Ec2@z43^4W$uKwZ-_-OUm+*X`G(~|C) zrD{zhVJ*9kd3Ezse^*FQoiRKJ%Z zijB-TGWoTMu^9}KCSvD-?PQeQ{DC?^$0xaW8I#z6v_PM9RX0F+^&y;o&fn z{vh$20Q5G0yT&Wai=73nrxi%n=>Y;0tgsdjT=Tw|=Wu_{r}Mk}iGu7#_(GJ;TZ@-A zP0ym+q+Y`S#YdB04hsFz0{-yz^-^uQi}1i(vXRi9^(6c*q3<&z*qTe}kM8E{Lc&$= z>^F8l%&RlBIk1Z^?2`|;+_uzxsG?RbIuqX8W*S)cah;g1P#RDE#l+}p@SwN%A!7*2 z5Di28WjdMGy-rE=J;7hw@ihLy?)XcfuBc@?02si;KBJWNXWmir^Iy4bp?@@I%b%# z>|cJOEuY+05;A;FD5pv8=1c0w5!`tV#M5#Lia4$465$nSHGG;MNf@jZuhK7ajtzUf zRkj^TU4wznP@#uHK-(oy(7-wN#RABD1wQ2}zi6B&w~?lqXTkTm7>dKBWwo1>deh=% zQ?Iegvz6y$**gCoq(xorgdj2X_?i{4%OW#_qvZ(`t7TAcpzZK+0OYmq5)H%QFb+hd z{6L^srQYW%GI+N>KtTJIu5dyS-_!n0&0Yo)4xJIw1|am$RS~4-pO^WwJ#uxl_aX7R zE9GVMb&_MzKLc9j>cq>g&>!))oDMuSC62bOy>#X5Swn9X_PTi+Ryt#D`vHWYRv+m8z4x771v(A`iLG*Y+n5Pn^os+J>xr~o2L(-SRRjGP_9rque^{Q4(tB-AuCoX zQ{dDgFjJA=M*q7!7t1bV`E+GYMY^=O%-4!H%ErbL$h=l_$?vpzwp__Lywg9u^$Uyq zt4Cy(6OkJ{Nd>St5*B-N3EtM4ByVX|T{O!(u|0L17){*>AP^Bgj%3hPs%}HCy9dk` zi@K2H#&T7(DDymM($lM%R<3(^&+wfU+i~%<8?j#*x2|rSvksi zfw7N`9?94N-L$FMz{Ep#D;Sb+MM=F8EyHSj1?RUtc<}qqL1M-|(zGdgOZTVT7zPt_2lk0+n{jUWOif4^#izx48wc z?-{+j-%6Esn-1FqOMiq2m>1kD zidiw+;VY*0F=b?!Bu+~6WCAt4^KaVRaYuVGzaOH9?~ZP03|ZZ*qJf+L5GLWNw^3YJ zyvMGvtz5u*pIELkK=o_Unr zNh8^n732BdMLu_=Mh9Xpb>djlOKa*&f-=Kmr-3g3tk3QleL84uFAG-=@2bbOG6QCb z0C;vlhp`#x7W90O+3T_(<-Bnrzx{m18ikY(sLX!i;VjU4>xPdiDwEOE(S!dMe8d4) z4qR{H@h(=*-QF90xwgEO^N!yX;`hq1gvBNq6;_e`Q1XrNu|y2q@{=__wX zJ8AivEovwzdw=r9L$%b(&L^`1@-x}TQsVZhaXv$ynq5QcBn^#u6+TworNX#^f(4{Y zmg@*L*f4u&!qb2lT-W)zJ{&Jnelt!LsISij1<=yiWpJ(1e`<<&!#^$B2nsd(Y zOZ<3@oXN?LzeF>9#$fk+v?Hm1?!q0fKg9!xQxigY>v+aeGc?tdFzgcNWgSr%dS04b zA9Q|IU(CY}9?bFajLF9F5TOYMDXlt8R*wjF(d2L4~nZw!D~z zK~{DjWA{4&yW(g5&!^r4d^621Ez$?I`h|)-yfT!ZS*M^`PBxlXfr3?#Tbj3>Fo0HAyvUNF?M}bTJ;>5gz*5iA`S;F zS@&nGKOCKZQhw-JTH~bGeAv8Y$7}LDL+Nm_k27D~FlA5Rd{-akY)F4pdzVb>;ERR$ z*~Qr*vBZf04}O4?0;T(J*+*Nn&6}ooO^4VLbfrj$)E}1PEsflCk6l~wJYb%_Fj_8{ z^YBUTEzK0I7^Oi7Hw4k9e{=~ez;{;F9Jt&mj+_@BYdh(9QBIrt;I918o(mr(`|FG? z`w~%!L-#ZxgJnVW=i5mn(QRX>y|y2}Pqx}CGt0O9X7wLu1&;Y7mR`q3jdwHP4I>$o znZ2b66_Mk7>}kpL9IBo=&jJ+m`06vOO1p@mjkFRTIzXt!j*r>!xyV75TcX{*kZO{6 zVgOpRsXxI)ym3GWhd4yNy-iOfpK7CEzteyE&E#PaBiFyxseZ?XM`Cn5%s%BDp7P;8 zqDW4O;&yUbs zd(pv%UGj~(b*A#zkUjZNO?B7brta#iVSW;3sg+6QKi6p`*x9eeC@xJlmb?iyBj->DdpS_I5dp#|Fy$rOZiT!zyP2q2I=8!e*!5 z%1)8Gy%7LOz^k5-Hi_qX*u2M@YtlPH7AJocn7K ziQhHbzV1b$$1~Tf}jHR@E;A{1s20?Gk7p zY+idWZft5?Z?Khtp?JgW^2W77sO5AITpyy>#A1o@YkpyifOpM((uZeq96*Qg2WPHEdX>j4*8?P?b1uTe1gp52_&B)acaiOo#7Ccds%n)mYBzlKk#F^{ zM<3{LednHIGavcW@SU0XEJt` zrStdCpQmo~y5FWVx7E@^yw@uv;;FZ{KQMU+dCzp&5AK(kQ<*(7$W8FcfDa~Pzw_IL z;h7;Zj#4zjil^8_kS@@KFRVypb2Xa zO~Zx+?c0#J^!Nf66RBmQ-LKwR)8_X#zRtDvTaczmHTsvY*6r<*G86$ao z%+TBE*s<#x9yn&-R2lV$dWrWueWhq*O!q1aSbsP#l2y7nVJH*YMcQo#S#wN9vML2> zQuMohL8ptHx(^%n9{F&cq|3tF7Dy0(vX9^PQ!NT0pbvef+ETgz(W&ctt$}jv_yCS? zX`9tDvlLy_`{ZG&Ca#$>;)()YP6Jj_oBAKdj>i=R?3kSQ>IyYb@~PW)q`nQFa;C2k z7ohj%A#GLf3v$bgr-5VMXx)XcTTahmLXH?fzawKjaeF0TbIX1C_^_%h@$Di@>y$(O zOiP9CF88VaJE7Cc-_zaiX$5?wCN!NocOny;@o1+ttK`5E&b<>4;VImxyPI__ZZj&6 zHXi{eZeFm*@Md*5zmP~Xqo%q~G1*vUsrQ#RX2vtoRc`(J_fz_&Z``%j&4t0kGlj^f z2;fJzoJ>hcY0SNg>>!?!sdL!C{i--(mg>@n4sh3n8xIg#(&+JEp(ak z*yT82czL3&g8mqlCTAQ`#oD|g{y>HCYZk^4zJxJ8{3GesBto!-CHtfYFKJDntP$_- z>W2+9C%B(y}c0bWdU0~@a>k;P1C4IZ!w)d9oy`!D8 z`NWqg#=!+gvz_-`^w-eTIgGk>`K)`J#FYZ8bdi>tf`)z345r-24(53Y7*!bWaNYB; zLa%j>iR#5mX5H9lxde`IckCsNw6$lF=#A3uYV#b`{+vg%^pX|Zk=vcwW35()P(=Nrmcz>~ zM)7+h;#tnM?4dRBU-J?S`X(~q{b0;Si?Nw!WieG932x>B-b{ncxM@i0#pA$ll&K(` zAWCn-6eUC^YpTGwVrYs(Mg}umbbNqTB&I7&d{UwytwmF*)j?UfSWHBXVfirQ(~yG0 zWMzd~(b9;YwmSriVLBgevEx-k0cA zBjyZeT|pDPQLm(sm3Vex(?w!O+wn^U+`y8&A#aLynqPE>Q_;jT_!m_+elOoT#!;*{ zB1Xa7&>5FSKR4}W#7vKWRHj|pQ0m=8oW6MLxUyG?k?u8P6B;RPI?9u64cgnK4q9$- zVvgHdQ6%-h{UVv|Tj4k$T8*b}A`;)0YNh*x9b}5idXkBusNZ}uk)lxzhS5JE(?{*h zcAb82uN#?{y+8wb5e_@vFC>4kt54;k5%&0m(;tTDG-%Luai`hXq*{GsuBkI6CR}OR z-0g9hxioj;&T*@BOf|u2UtIk(l-!xmaNPFf#mljs7hfWH-%rzIc|5V3Epwcyh%7xB zq{pl_)Ws$DeR=v&Zi6aAlik0%fIXFF$efIY?5j~4EdR`*Cv%VUG$~ZhDbLli6^1nD zA=6h|$kXQ`luFU29vU@};Z-JU2!U%wyk26&(Bc!Hs?aMcfHr0T>XZhb%&or3P!QPI z)DP*RbP@G~UlI%=;&Hn4=dvRu1dw>&v|tpOTZ49rR$IJj^Czmbb?uBUh0*U*C}8kD zV%LPrcsu6L=fjiSCZfJ)*Pomr?*KEImrHk6L-gyft{X0IvDat9K|K(y=fvv+@}@i{ z(b1d?!+XyKt*K1mj|3O-Z@I&Fu1}nop4)FCB6Kh(X69yoqk+y072A86k6KChkJr%^ zzHXiT=wun<1}*v>vdc6LFt8A zN($UOJ8lMRH;FHL+?CtgLlxrowLF-p{L=bCkw`R7&Prk$d|H$=MX&qyBOTgh@|F-P zzny8X;ZH6g{3}z9LAq3v23|Lp0$T-wMz(zq9pGz4^MJhk@l^I$SAjsy9J-MyUH!;W z?fLL>qfbHs-!Uo7%w+Rrsi>ZQGjRJ@Pn?j^EnlJ)Oal`|Ik}>D4PYQ|faGO6j(8jr z{CI>mo$xSR=sp1P7@(HI94TaG0iBFIf+z5&TDw{q#NuNJJhyR(2QWbE7yS}Ghc)t@ zry{s_g+cSyO}6?^Yq_^(bWsjcrccBrj=mgz3Cxbk7sU$vR@eObfwX@at4Br#&YU&# z)6J>2eUGogU;U=3Z7A

X)1tn{rs*sqwB|c~REtT!vf$+k9nn4q_NcVsqt_wtb!?Pot?s1!?Vg{yc+_ zXLO|UtQv97Z)x>YLvi_f>_itk-Y`xZXngnOo3&skNLSR3q<{RVF?{M2e{AR2nzcX) zguE+rZPc-@so$(Z-3X@)cn3!?TEJC0Z<$5lGDQ#uxb4Z^%&#*df6#3H2BDH2Tac+e zh1L~ZLX7MT`0`;+Q-Et(>SnuN2Iau7H#hx`JSU^170#f;B0FHL@Q{Rd*!kx>?4@6+ zhs(~SQL_gR?yl)30!ANnnzyWZ#w1}1;IV#k0NMylyn|B^XS%kBZt;ehxbMrfR!ogJ zp9@R?Bx?xJq||Ed7O~&oujYpF^Y6Wn<#iQ@q5ACl223V}TFct)ceO8tb~W5Gg}k0> z2wP_|=UF6oeXB-tbKDAUc#|9%a4%rA;zHla_ZWzwKyjG7s>!YhOvHo)oBMH|r3&?o z#`hjxyn*x#V{iKbusgf+>FbwNpZ%|+DPM{As(V&gxUBiVSR6$yClu~^{5&%j=ddhE z5H@&pSVy*{x1f5L>js*&L77E|01N{ujB_&f}NCZ*_PzB*h<%Y1Rp z!+RCYwWOli_5f@i-DrVh((31v#Sr8^bUdKVm)s*c&O&p)O-u7O2!7`GqvKwFX7uA9 zzA5Fja|>{N7_f`{EDQ7>tPKKU6!J3<>P;R6Cwi|8bS_RCE)XD{_?UV<(10sbMroM3 zyBM`FHkiX_s&;=n<0mG-#yEc)cxLl>4!?oUj&5+ImwQM6?QD7ptXbC_?7uPlVJCiR z#Oa>wa;Kx^=eo(;LjijR-Jr<{vuLrjksRKeN-m-j5_it}dslF#H7QRGDe;S*b58Ue z9ns@S#n1Bq-fI@TxN_Fi+T)GEM&+bB_*xr+#kBS1gGT~7hG>+&9&3`x5-P;xP>#Oc4>B z%gXK}#0VV{YbMwdD9W`2Gu2u)gS8Dbz}T-lXUIoa9UqC9iqq(8Q82O}XN`gBXF;l3 zOM`@%ps7eQLKQ4 z6+DIkC_5Gc9xG(uB3VN-*Xij?aF|-*asFh5zaX~kYd*@h3`vDDW_qD^vR6p>I3Z)Q zVrE7O4mP#|IJdyiLz&(>>)6s>^>rP#x$UCZK=(qw!mm9yDd4eRM!SB}*AdOvzxw8% z$JqWVo0*}p3%<4DB9BQa*m=8b!l#iYEZv4WUGv2G$yEE4m%)oIt&C`QfWl{RsS;Ks z!7LUC<;-L5K~VNdQbR`x%-Bh?I5_voiJkDZjG6ayc)s?seEvFoEdqp-n3N_E>wkWpYRu zwgPqH@K?)+iKDriquR-l`Q(%(zY7h8_nP*OH`b(RH9kn0j(I*0`i@STP}yJ77kgK?)9NH7? zw3-tqC(@kIbCde)jNb$_Sa2rbS%e>AV)uo3<*g?VvsERhPJQmC4VOB+7EKqCJp1sw(Ct@K zOK_!)PV6Iu`|?Jf(F$|2|CH1G*PrJ}w_f~`OxiXqrQN%;dYe3k#oX87-E-{g)+9(w zW9_#k^sSNE6(;UpFHe?K(1pNFz&V$S$yx2$$}+s-CaQsk;E=N;+ETErsIS0veH^-Q zZ>KEkeVvUUyw0A=j;5kSFGG_)Lix4n%zbj}U%RC{BxS1~^nXS@T%kn43rM76`GD7} zGFU9z2NF`r?c~DmRRofflIM-J)#I3UcILIuGpMfvfcqks%_R5J?04eebaT37fcl;* z{(SR>nHojtgiR2DePY&VcQf(-eW@X;5+t<*PA|SRVm23rfX%`ynDDh?;$pAu;Ac&^_B77XcA%$kLW~1j0x<=QH)%Hng@UbddQbi`^=PcWnb{oh zDyc>z=hb~}#o^tk&iUsrC8~d#4LsV_zC&cNAHR4j6K6~_5x>)0cCp44chE>)SI;e) zVHog8x3pwA;g^`O7n%7f&^xsG19FEZn(dtRT~4>Tl$0G}(-gbCmN!(jE%77=Jn z|F@G(mp~Tdc#kWwWPSk+&paGp=e=eBO{7Ics^t(reDZ;U2caaw2REga0Hevbn%?mo zc%UZ}lj`K@Mh9&+DB%EP;sN0rx`-O+#iaaL8lN4rpV%<_8uK~|&_Xn9%1?+W>6w(I z$&J$^+}02}hW;k9JP^Y*Rk(Zs#fjo~WG6Z|Z5B}Kh# zDY|lHA3c^v_DGEh?cma_cw$&&p{&ZYy1cTErE|1r+vcILuR@pkvm*!9#eE8}o2!C* z&5fD{!_XmvMmb4Sr+{1)AXX3&e1>*plO7B6mwj;Km8x)FvCf)>wd{z6+v1F89bP_d z!6D4@-n#R0GVsq`u)Q9^@_>QzzD-pLF8;NpF2Iodr6i0(RSw%u{EN9+KCuc~*L%8C z&#`W}FZV4P0NkVRXJXV6CQ4Tw3@(?2T>*~$oZrK9trb2ggLnIID z2Q%IGn;0_H#3uL)4r8CUx&&}Q|F1x*R$TalkK?_ahD;nOYD7FtOIJiWzEu=19(GWDQBr2!|5c{vwKTB-hDJO8>L`cD&(k~H zJ|R9>4EWu{v4GMbkB+dcapbasiHU>+Gu0%G$n04?$n2<8xu((M`bhyR4UC&L&()@r zqUu=5fS9`qk`3)H~(Zv&+J5zaGE0IGYT1xhP)WzOery`Mlg@R_^<)UwWy} zaxB^URp z6#8%5NAK8FS%NWZZJ|}gG+7sX6@bs^X+3V|DUoNqBUv`gA=69s!)Cn10Ck`D4al5a zmfyIve~@GPOX9=zQ=zRVhUc>jKQ4Us`{?~oo2(yCpzjx6Ja>CAR$>>u^#25n2y*vb z-Zs6o2^G_RRf`C1#rs#4Sj95>k9(Km!;F$j6ch15M(>|r!!*ZAE<4X;q4)y+rO9GC zXPQj7r*Snqu?zW}?QdU4wVNx;DCfzXtha}(PNJKsKjYVU%Gr$)<>t)V2)OivNhl2P zKz_f9H~;p7w2hf?_B?Z$xES*AxZG)`JhQ$Lf5&s4caVIB>>ZOmnE!81Mn23Y!kvIp z);Y~u$l6xm6g~@_aH!#{goCXLJOO@Ze6B69ph&=?@$23~Owb~$tNR-O z!123Bb{N}iN87g5wt}Pv0RaO5@O+to6>yrL-iEz>-8lBe{8U>?eWlAgLv+-L`O}A9 zaoRlVnRME~t#9uP>!#0#$G0SOF7=OC&hz}8`Lc8B&-|$QyTnd#$nV3kKW^{SEgo_c zv)NUND=ALd&Ne zXy{p}5&->X<9E89_knR!b2Q)K98=60V~Cw#7YBhC z0{~=5H~@wM2nJ99o@cyoTZje#{*14srD!GqegFXb_U=6P{pZ=-k^0_IA8Ktis>aMr zGXMbS+zkLIXK+XR$JtVgGQ+8b^0B`l^CxRg=sohZmL~PsPpdxv^1OU;)mvxS@Y!M~ zKVB<8fBxoK`o?z-EnoQT`|kVi-gnXEx5Vd@^Ia+{*WJ~!|IQZMvxPmo&zGH5e$NfH z5fka?56nCeTeW?qZzuPCSAFkFxSFgJJuUMA(|mEDvXb#d!wPo78UJh=x8k#6003!S<4_m?K4^SjdkN(LK%Mb+j1}4q0N(%r zn&Pql7Hwl2p{8v#tC)5a{_Ez$zVr2ovgE%grF ze%=1eO?3*~2x_|bnH1r-QziT8$?jmA*FC7AA~ps!_I*0@Ga}LqneX#l-uplN6t}%y z?9GP;IvZT?KZmdT1C$Jjn3w7#w}+4AifwR(bzR&z5jAr-Fta)QlifKq2!`_{KzA~0 zx$glspEATXMW*ZmSDgMccNx>b3RdU9YNZXpSkkVMFBGt&E~^;2u?pRjLO8>cz!hgP z#=wB{;Gr1%T13&~Al*I@q)i$zM1OQfd0x?lbjh&}O5P4(;0wAli1NE5z zqI&g61waDcH(bZofY<=ccgD*)23iAv_ruRGuC_=aEjgQUD$>@rZQHiB8qGAb%On8M zmq|~X{BYUX+{vSv$JN2v+VH=Vu|r?qWp=%7XYWYXon5PIUfAxH7h*M6S@|m8YOQ!B zK^$HWs{@7B62E7eRm+3~yevI&B(ELW5-SlQL3>(ub`8QQOsgFASYn83PBcn9he7R; zY(3>{*3p@H7-!FPW5nxDmwG0f7h!dIcY2~`T7(GG*ezSaEw6MM^;lhT3MWh~#i%`s zVhc=TBs*w3kd4Yj7*S3cDW)Rg6ehwJc2W)`o27s-Fcx+MmN3egsKyc{RiOeAlU1D! zH9?q&mw#;u?KgVPHBcl(%07k5q zR$tujlmC9e;{d*8yj}a-n8XEA!%vHG@cYZ{@_rCfjn0043Q__}Fz z-TKpVx&8F~)A`HYcWv)|c4#G0XI}jDi(kH2_2Mu8@2B&!l)6ke>0^(7dwA+tEU!=e z`ThU-ch0gdYxCd#v%EK}{eL2AI=wy}=j#h!++s>WTk~e^-=CB8^pxJ`|MMw^p59(w z-wN+rhQ&2Boh4uQ#u{WzIyo$HWV9}BX!jKKs1nOlX}v$Yy83-~B}|+4GMY;Fj<53u z>oT1Gd3!{u(!GEF&!8|0HEB63=Xsw|HKpn~>7LT`RXN}5&eL-~_vOyB3wm^4UpP?N z!#-KEoX}p@rGzYJ4a2a^n6kjKs-{;Npodj>!_F0(clh`5!4&{NWgNL_n3@`6?+TcV zRWLx~wwa1w5h*#fOnizG${V{jWwV@bnpCf~v0j1Q24ra_xnJjwLZp-qunZtapj z1Jl!29ynL3QDgeWszOrw4kT_Zj+q-u7^H z<>Bh;%JcE@0l@ok)9*7q00RK;*Qnz;NYKRWc0Ui!1JXM#tIAY z^s#mEJ+Fc*SO3$+`)}uGFx~T!|4!#4VbI+zyb?Uhn`i$er6T@Lbph&O;^O5jtn1^1 za(A)4{$~M{I!a7LR7^xnL>$GZ>v7A)%g4dj;g%o&`GjoH&*7Gxr@e!Zyp~OXouriT zB}rjX5s~xpe`kf^{Qb|bboDw6;6npMwNQPS$rNJ%$N{kC;wOFJsLo%KUdR`enXYzT z>Jy32OpouQw@Vc5|5t{Ru%`h42{3#FNl!M^UB_jd=y{WT3S?Y#q{~ov3HmEC1ic45 zcDG8KO5JXa^K;{qnBqX70cbV$yVM5fnQa_<3_X;^GW!g&m*x5p3X~T_5{eC?qO`<5 z7C+FD{aF4aN%j+8)1(rSP}3_7Ezz0lcC}r&mUn!|Wj1sF$q4?u2MT%?C0qu3awYup z>ErlIGku_`{=OCpV4&9os;SiKPpL3$c~r;?l!S1~lwHinYF<&6M`xd8vU zfKb!SyXMbAO`qL0pTBE)c-MwL=AY|l=Hq6;G|h1M-(P6w zK>>hwE*{?{qu54}Jy!k*`t;flc*PqFy}77R2k zeIfo;;=e0F9pVbtP}!5&dt)-B+3N)r)H%~V@kTkkZ55e0e=z7i&aevMl7Bd>uOMqO z+jm@@IJ@L;DTp!$ucqP^RL8KHOWMz11NC!xm5o>N#snH`I+?vu-bM|T;?r|@o7;^3 z&i4;lRNTxR?~!>Ajfj7nA|{UPPQR9u{vATZ3=I4U+G zc%D_i7?<6ye?fkgSQMgSK}m>;?>BGc`_{^+xs^1}nq4SKH_+fO`O8rdQc?CPint7a zm?S3CXPCbX;)?%7+%DGy1F$oNKphv_5#h1R>4^Zv_o zq04jkt>|L@D`EYca{$CN(SLX{-8NBlAU8@!iQq4S|HV1p)B~x^L#bSv4P4r<1joKh z=fSlvYeK5m^OBp32=DR;$YqyYTEJ-!~A8N+p+S3vcU>^d&0Ki&t>FZ!pO4}5fctvM? z^_R?j7P236pI9Wurf^z`?$ zg{F*PQxgBI1+9V=S3yfalH~t9{WojrOTu*jV=c6VHrh!0|9qwYJH!8l!2cEk5Q)P` zp&zYMA^Qb5Mj8fUSJ7!G^<4>!o$0RJZALAs6%$%HvTVHRe{lySV82V;W|bo=B}kDV z%g39Da{0IJ2v9*#Lq615?Yv>L=U;RUJ;<&WRVl$#v@2Y0I@+aI!lv@Se>e;P7#JSF z0IFg1zn|%e8YKYIY4)a&exa7;00S5Y(|kMt(j0)(|Asa~{+HC@z3~FP*U- zRK%A6=}(oz-hv~0%KFsWhQ^kUR!uTC#huqxLed3(-pSZ@c zaDX_777}eVL`#V6D3u5cZM2ls*zFAr1o%q`l?1pS8Yrrj6dQmob)tNNKe+$ z7|Mj|cuVY|ez^|}WT84zNa65h8I| zTUoi?+j0*7Ie(jlbKq~cV0G$%#pFtA{C89SpX3k2Kw~iE|5zxO5^eq|c@zGp)$%{>m;XOY^JZ=}&DR0__+13r zH2S`HHCG-@5-uHM10}#GfUvF@C%VOzo~EHeqm(Ga$NezFETKjzP87eS__dk4DD8v{ zUSV;%Spt8{2M9q>9rP+@7DVhN>1OwYTIh4!*&(dCL3MWG8qH80^eS$G8f{SB(>{8) z`zm}n=I5<$HIn@6zM4;G%#D zKUochpw4a(EpXc3ujn^}2#3HS@xIVZy6-p+K+8)5G&j8>FM~0y%@YDTR?Hv7v_Uo` zM0)+_6n0Km2F3Kg5SgK(&n>ZH{67tfka`K>jKS_-4TaHZ2E)*Z^9E=+?vmGkNAR6% z!WtF-ZYW7lH~2Fa|Bs3cnWE>KDkVg_=?2iayU-ecb!P}5gwPs)8Z;o2m0F45Z$o+- z)UV{9252E@{(l;vg`jEvj(`g1D)__mzUPHMdBu4Ny8WB~Z76{jf-3)3oi7C4{xjd7 zh0+ZK{@y~{FXDXn;}j5jsUu!12Un#Q(?b8@S;#^o$9vi|YgU!$Gpw#&bM+eIMnUns zIv#toiKYWeaadg=FA|?0x8iQ1KuP9<45g7w17h0?qJD{@sxs?FN(1!JmK_NIfYUd;Mo=c)om|$qdD(Z5|lrj#jVF zn4&AsL@n*%_Q$pFu6$ej@$*o;snHR$IjWu3z^%9cjoRGFl{DtvUdbB*tBbfGn8)t2 zJoB9!uo(s#cUI)&k@jVkCEzy!_TBKX7PmkV9pSqkU{9-e)`^F@cWCY~;3-Ak{q1bR zwecC?BgrlbdtCHp4BXY~4OyNf7M|UYnO?-LhnZBttchQAvbyh&s(e8UA&{F*HUJAp zr^;Jb;cck^X$kNKXN3j`;doI~dcVceGswQRZg;o7Ml>*7Q0j-DB&sljr$;~J`V9uN zN8Gl=S*ML6iL9~(8Fls`4q%bsB_JPwGAPYDTJ%4|(&$ma-Cn%aOxBa~*%BO8AOf8o z;cddnzxNhT8C#QYPFpda&X_R;uu<;VndF#`nep>ri_t{j=S78;Q~S4h{@gnw=8>Q8 zFz|X@I6LZiBN93|a+=)alJ6;dVBe43-Kk-^((3otzbnbjZh=Yq?D!e6K!UH@OtNn3 zR2KQ-@ms0N$!}Qpa51-rmJM>PXzjAqw0*9VsxGBeNh!bN zXbeMR&w-28h_k`L_(L8xlm!f*7OE+RiQnKy+vNXf?BVY-Yaxx09YBbbiZFn)FAUXw zlX%TrO%>x`3O*Dr-Qih#-P<{K>2tSx_?J6ZzXYVha`-4EEKz4X((j0j?*ctF zCOnVH-S4Dsj%P7anR_^ydXOf2)7tRC_7Q8K_DtA-)UAj|Su_DT=4Y4HWR<(9*Jvz# zDk*&l8E<7Jr&(|QNZR@-h)T~wt{k@Z@IE>&sf+4%d?o9w|N8a!iLRlWtpmhThTB15 zaJ$eO?$Ih1{XoUYPYVgRTYw>1jT^s|vhy%=rj~893X1f|0goj1T^g!iOkqb+N0GS4 zx0hIOrW#g%A75bz46V878oxW7Uz6h6tmBl?ayQb!C9`4G0N}5#dlMN)@x^}lg5N7g zC&!w4%juS`rn+dT6IDe%okMlyz11ThW}SS_Jl06$%DdIj?$<`M2k#x94jz2VdHDE} zZ|>RQ2ma76iJRQ4uH}sdp7_fEe{Ce8< z{LpUG@~b=rHC3w(Ufnr>1r;^Rjs0t?m(M=9$Y14+-)ZIJwB`ovnt%)&3-)AeT2sq&nvsy@d>6}gSwF1AnYm>-`e zsHsS*We+s)DY{H9CUB_xTz9qp2~+=x2cjvx>+h=%4=qs3@T(Bcwp2u;jbs&$zPx9D z`VdDFY+f0w+?WpukoRzUBjNVi-rUb+?F^Mv#lACr?t|@&)``xXE|#vY=(|Z)&Pj10 zA=UV~PkbffHmutcyfrm8!JFVAs;LfpVi{cSy`I`sRK4* zC(Xa5LAkKl2|t5vcg@FYxp6Br^ipFOzSz1-LYI$R-tzA%jiz2yAs(UWd#Yc8r8*^r zbWcCp9^-qfF6=r7MACVrjvBox4ho_`xAd&lc{-_28mkVUY4v!0*yC%23%zJ^y1!ak zS@h7?L#;#35pH?^RfmfIV4Vof-ks{%txQ5K04;cVrWawDcCxV>du^8O$st{7O=2c~US7z%dc}Y62F5OK#cNu_k=OD?d<*?0FrGUZEB_Z`YWnS(K z+M~s{BkiB`u>j1s0K7#D^8_8{JC5RSY(I$~=q|R!&im%Oa>d@*{vubR`nk2s??8o@ z&*MY4!WBgm9~<~&NZBw)TpL#~xhtg9zb!V#7M#M$_i+67 zTvZI^*~P097PZ5}5i=t4X>e&H$*ULjr6t@!X&vCR2hJdl5F^8cX$2^NW<>9AhhY2w z$j323q%eY>%P=%GFO~?6FtMHj6KnzC``HOCW)o7ZFv5Uu1`xu?M3eyrVDE||^pLlP z2nEGcUFu&r@Z2d(}?L%vT*v&5QWA9}v=34%?BH~YNgIoS|<`0i(544D7 z&Zct&b1tZgswsThWwy93<`Q@{c`G-U)iD5bn*s9}7D%+n3`5pqvh8@9=5p}@15`oD9 zdrw-yZ4+^jN`fXuuM?qR%*=xkcUY|TVAjEmG3DptQ?Pe?)R!w&g@c@wL4=A&FQ^LW zaElCGCP)F4*a(ckMC;_in@zZ0NIsmz2?Dl;J}5@e1GGIrvz^Od@D!xL01gU5}{MzcVy;Soe z!&jEVSA3xi5P%)BHE}HIR;Tf?RHKiN;U`jD1sS&ZK)hArrra!Zs;PO_llCSt$5q@1 zJljn>D>Qh~rdze$bG2_)0WS7UQdGDWEd}`qjbyH*yq@m0l;1*#tPxVoZLs%iksn3w z;{0Yw0lsU1AOWu(9~b6O0TT+w<5WF8yn~tb!ZvzGdmOAFt2Ga9W|)gJ>lDUQ3)`ju z>)W)dy4tJ)(*q(nU|CDe1Xcix%b5f7*KslraUsTsQhx-Va}ghm3w+bSd~VkL)2kCI~1X_#$J`e}h&}kRn#bYF8Gt3#_ zLxu{5U!(wX&VgDyjGP`E13<7Ema%?F3?s-DM1v7tu7lBp0CE_4kP^=1Kp5v_$Rd4E zDkXS~1Bes`81-@jiPRmo`x}WZZwJ;lgg*tiSo2nJRC~QQJOA`pKoAO~=2}EVQ+d zzOPG-u}`c>Mpmw(qW1z;O#)6Yvz4S&@pcDj>Z%M};IUnP+ci}6IF)SL{JkV1{jSx- zN;YZqqqHu&5`AbtNFes4)4Kwqf1g`dLex9RliZWYkjZ6)NQocf3PqgR8>?!#<0QFr z4QQ$odlG8KTcyD{_)8CFEA>EL_qUa`2pntCd2$%i=wFvoSxNoSTSxq`tV-#b3@K)B zMJ*MrWG@?hVWKQBE>k-+L>0>+6r*_&d^P^wiAAgsGVzI$?88M;(2Yp65&~d?k6*A# zHA{SJ`+=|hxF*J>m-Xgn*0O=ONp4C$3y0k8yg&We_DIS<55i$#ki|M^?IoO1)=N%c z&y0}y8at1JZzwr0*a5Hr@N-`sqCFBq)>B8|W%(b=BOc+d32qaEC3<7+3X-Qny_Q|Z z(x-RTm~8Qn><*-RvVylMSf9f{+iyCqb+F z?%b*Di91`k&vxm<=9S|d?OW4M*J=-M`F4FQxA$4Nbh_|n?BU0U24C;#RBMOOH~%;s zYMu+;cxy=SyyPT{x*M^6IHIY$Kx>^H znOXGdTezA4Gmiu3QZVOxD%Q+t=LZ#LnCL;wYXmR_q?kUWI70?;9rr+El3SoSj$xaW z%k(#zWigUOpf$~vYiV3Nx}`z2U1L*u!oRX-lv8^XHvSEW7IH?~A(@+2cokQ;ZnA!q1U-my zbeu_CuXsevK^+wr9rfDywE-8FAlK!yJRpjL!BSYvTkPI=NOlQvVXK;eHYH&U=)?zh zgd!To{H3dN7)=#q{R9U*&0dchj(bIBJ# zr3T|$H{|-HtaH#w;nf>TW3l0jzT&~w$%|h7FRm%=X_~8|IwZvHEc-N1E`iskw@iK= z>=S1(bc?sdGH}k94!wxwQ?n$p&Q|28J@e0@wO1kN97Ooh31oXNIi=qYlo{?_l(|ZA zamg@DBqJgpcgxxX>CMH}P}xxs{M0Y^^S9G9*B2i2{ZlE6$scBUu<3UN-w~09W?bQ#Qv4|6FpL+O3mU2HZDLOQR0(h~0F8izMx9i>Q5)R)Q?U4qYy zh?}3pJs{va-w*BIYcFFItWpB>+eiobS}59K>KMiCiy|`A;2*!qKXD}Iev|VvzxzgS z8EMb*&XUgJ&%&Xfwb+jOQ;H?DlY{iw4=)ISslTn#Cm&)MSC)-HyWvzwevBKlhjtak> zjjo|n8n!Q2e)uct?0B}P3>P0+9DLwJna;R*-J85A#b9x;NP1t3ZgIToayP$hvUjZG zq4co+o=bt>OSPv`bxHXLtKJ18bd6&Ep^Cn=%ARLV`Q;h2Anl1zM!Qc|>8J56N5T@S z$__7e!El+G&kliaN+hi?g4(bsm@Mzt!YtT|%orN6`gMJ_N=dGbDI!L=vc2^{iwuxV z=B1EFd~R?Xyh^$KSa4tZo%jXRT}F$WK|VQx4p+tDD6?#}Z!&V6r12C=t%>Z$#`C1+ znJ?)bE7J&Q$GC1Cyd-tDF;N5jQ3YER+Z?t(rm$+Q7KueNi|KFcg)o&4B*4&{NZGX#mPh>u9bNa!B*iBaUCO_d6*P(US6_Z0P=;OeF6_C& z2D3&^?tp@b@$W3W>jb}>XQe@NI9tYyGLo5U>&Qe-_+mE<^}zn+@e98@w1RPszZM^? z2T}2r5?YgqOnNci*PtxUq*SXDCU`QhpQgivE0cppDZ}G+ab!O%XV~l#bNzq>97Y*_ z0oq$MykDuE@P!hqrRBCaa@gvzzhB8}?ZmL$`W?gROVpItB2 zu8{yd>w?NM9FEZ&TN3+TY&J|E@=z@wRWllXEaWT4*)2OQ56M6A(b;?)i-0ltkstGL zRz+kd^q0R~F3pJZUjLNu0&sCt6+|4F+)UKotaf}+3RRa8?jENZ;x3Q;038_u!NFlK zc}y{UQtr(>@ym=3WU2yfKHa16UGk5a#tKM)FY(|N39FLvb@%FP*2=ioO)r6c(8r12fs5Bz&cgY zE2Q-8ej)A%Odr_=u!L@LB;Oq%69zngM%>Gg@p*Jfj_n84tFXX%=3!kuKQoGr*t&YY zg0Pd$-$bLcF~1vTO~CR%?26I(n!p z4jJV9V7(?>Wpd(;pDttSK5LUmkWh$PYKhw2&(F&qYgs%|xHQVL- zYBu`?wz7s0O>QkXq}UZn1;d?T&WQ4tgj%6Z&o^%^aPP8@d*hfgDzufZ3y*DC;^~D& zCCPh!!op2B3yEiNox#G0?1QIeq(qH_f;l}fgCP5y(P|xlxi!$4pW;l~THiy4C!Q6q z0zNQ&AG{CkwnQng_1hz|?ALGg?dPu+m6e`+`61|I_jS^as0UHL5*5yH-{Izy2!#9i1l*4apmefa?lzyMq=sU@ASEE&bEq02*F+-lNro* z?m&cMAj6Hm!#jDH11I*D!XPljy~T3Fkll=`x`=4ZB{BMn>x_`7^2I*xaJo4B^R#o+ zOV@%)pbFFAfVTPdASO?t(lXpNIKirV$8(Tou0$mWEe}y2NICRhB(Mgbk?zqsB}^7O z&+E$3iwz@s+!r$nuROd8Vi{1=_t4KU@y)I!Ae6ujS- z^=A^yn`9wkMqm`ez5?vr+0Xqx=d5a$q`KNGR+c*{_EgVT>Uz-yb5v^huC@r~yN&yzPCOasJPX zF>9-9TO_WC_Y{0%dEGNLkCsEFH|36dv-l^O+A$KPWez$^FcFN&tNrVq?NS9@T$9RD zD$Lwb{3IKSuJ;exLhz}nQkvi)CPAT zuk{KV5KHT|{!a10(7+1zlekYrnRLN(w?+F22Vjln5Nn>13Ca1$48BEFuDBTxAJNVc*zJ70dt?o)$4qK7Q@Vt za+O{08QdCC;6Q`v!v!En0JkOr$lycn6%*F*EsP>{wijg0ftzvBA4VnO`Ywktrr#bb z^uNk9ig|8bHez7k90U0yC-;k9`TEV165bL96!_y zonpoIT_Nxa4sQ?|5q^_$q`~#=>ozsW4C;A2Q-*{>us`x zS+5+ppAd|9EI(K2@QZ%LJO^|jS+IQr#_-t|nCd`yp;)tq;!dpMmIM~dEqU(a%8*gn z)5j$p%(=^b*8m1-nrVq5#~Z*4ONYZ@i$pisMl|Es+wYAtE8+lq1ws@UbcKOFON2qK zDMQM`IKT(ezEUA?{-pj!tCGsn%}h+8@lM400xHbwm21u%OsaU{}X+o9a-$7PCmb6l}g<;#AVha{_O*Wn+P$*>JLi2 zkInR7NF+8~ZTcy#8iTR}7*39eg#5*uJtsO5O8gQBhvfFTiX0~mtnb))Qer&uN#b2D znniYem1Y@}Ff>(?%;hdnqy%_eFHhv<<-0hFFB~UYZ8Ld(dN)|g$!ZlH%Na`t6bNAK zXc2|6S#zVWlR^#lGVfX4AdH|9B%V<4k2NNeRRm353%?KbGIwR4js0VIM!bOY=s4=hU^&@(yX;8p~ z1F$}`KcKZ?coEl~J0!BkUSS?ZP2LeZ^LacRdR)xhu;fxQNl=8GOq7fJlcRFSleaSj zd*t1eA0ap6=?nqDklyYK(&R9pIy_xl-{2t+r4SeP|ztet^ zP90|>e;ADmTZFt#a2zK+jPk6!Y_)T_@e)PH;YVu)k7t%&+cDyG6W8U81a!)ahlW16 zq^C6QaHDWx3p*s7TsEbb$2|!B;t@uq${N*-UTho@wn1-3QB}Cs&WyI}XjwSufMp;G z{187M5T_lxlsVL1bU{q#z%g7fF|aa~;`f~T^ok4PH%Hy1@8=QNQUIHEeGYTi3FyI+ zf7P&29tE-UW>kKYz%VkrQN@T~0~U}dP*+XP1TtU}7_A}c@e1?@A+2$rkoZWAwA}3) zX7DzPwXJ$e4=+-L4!nokp!4o2rUI`d$cb3LMGJWm>&XR5`^C`CnDG7)B8rNnlTz>^DrT*|RB6;KIVtLPK0}qIp(`k#3 zv$H*ypSZ`!J~Xl7;K)MaS}p!-ST2{?RvH&{yCFdAa(i2t+!WrAlwjYL%;^YL#nBww zRRgZukvAe5rH5W0?b3A{*Iah}M67)Mt-$ucjm|~M=RV`NJSV#-qNqV%)5Q7hJCGuY=oksG*%|nRhA#&ytTS5oW0o zh1&Wfr@Gi1xwy)-YG_;nskn32uVx1GoDcf8iPZJV<}{WbY=-nh|3&`wG}OAV{mnU+A%4pnQ^pCfcOO zW`IcNhob}-8ZfjXSYOdn>qtOqiUA_2>=FNbAA`Pg4qNaiCgj{6aLu8QV?MinrhjIA zW_#wQuCA_p?YgytmF*ekEDQ<_iTh30)s!I?uX#WB1y0Z}nKJ+TyJ&KvSiCSi;7)Pf zTh;2!rc7vO_h9;tNuOxdg$=PW0DdiX)yjhFI=X#z9-g~U@Z#s|?7H4> zKb3!y=R7%F?(}ikTaB6s|7f+-k-pPvr(;lCXFW-*w7fq_@KUzYx!nZhX|mIeO@TcL za%1Ken{0PV;yC~64u8#8RiZdpd(OLHL>w(%KiX`VM2aG^9(cjm(%8VXl4r3;@*+Bs zFhPqFI5M`^En|P->0Rl@#oN*fl8SH#=-rMRyX(3Jl<1qdJan(eu+JjGh|y%qJkTK; zg9xW2)q-HlsH1Ttf}9u);}d{1%$45TG-!@s5waolg7-MH(>Mb_kkjkEzZSv>!O-Ld zE8Zaag8~sGVAqNU2srf+^As;~#rfj{5zG@cTn?&e_Pem%U~2?9fk?X`2?EAiZgHIM zs#pQfkM4T^$~C_7etKor5fdnQ*IH!wel)p%RA}NSzrJb6g843f9k9}V z3x6=Hs#EmT;dS87Qt#2qC*`t*^@mZ-2H+t%wg%UY^L9(8{X)cJUGrc3-`*}g?7BfU z;if6}u=51pEk#_%>hE+(qGwSF)!DP7N>L+E{0H`9|IUgj{KNL*=6! z;)?KZ$H3lOtu5Z}Htsb}KEHk*#s&}9Z@tx|@Ahq1_A5?U=&~BoN*mxt6?7J?YzBTE zCiBedzJCzb!nP}tOqqE-s%1w;TaUXDUJq~XJk?!!hlKNyVCRr2Cqc2dbO^{h7a8k6 zC*X>Z9MFlhHA>{2aFNKl0l$?ji0FMiWv%NeDYk);;~$-VFyKP>_y7eEBy{TL$a zVlAw`l35BqN)6Bhd`9dP7A*#8-p;lMASQR$-5fINfe{Y~;s2Cg!4Kcl-o-?c(xQT{|jJwO>fx2F6loyOuy7OWf zTr`!@eE#`W0{!Ugn2bdg-QNmgp3^BqOOX&`J2 z0j~T){L%xn@GW|bu-ae+US>XWCDyedx)H`AfmlIayH!9)UNDcQfSHm>?5 zr5GH1!Rs&+Tu|3<1_KPJYoHe!KQ{HIT|}8HNU*gW*O3X^yAi|QILW3 zYGJiTL*VB;mdxOVOe+=zsvqvoVZXUT&W>#Yr@bU+?CGrQ_3i{S=hb;mgmYdzDS6My zL;rK^{p+1BvZWz=Ukuwyw%Nts&quuo1E;k~I`1)Z-AsmETzi>6WUV-BDMj9{nf>s0 zu0An(XPSBUuoY1&TaPN0u}WHSXP7hZd%yD`Y+QP5-F^Dtoxk=#Q@bY>I?9{5kP+ykWzAeb10 zHOb?*FLZFZ1FGr!!JWgP$h0BJjislmudg+pEHr;@c4kqkTwZ?q(nZ@VVSC5^9W`!% zkoSvkt+U!VFOLko*vpB^WBmI}Bgai*GhR0Wx(D=_v->2-O`qwS1zYd4j_j?qb-JXl z;Utg8Wn(vf{Fs$kM++{i#;^sT8Gig)JA=K$DO*E0>d?2)Tzw*pDPx`uhf&o?!p|Zv z@BZ$7v{<9x<@+;MY-WyV=5(HM_`oyBDv9&xWOFyX?&#QG_eJE*>8I`DQCZE?I^`?j z-DG^L;Z5u-qGiV^npe* zR$Vf-{IN3AhP|BoKet!k9k%}t_i#Kret17FdP_24M3y%`!4A~VbzKbmvEa$pI1=X0 z^pnhwQE@JKmV^CK+MdGW<2U4{6g5fBR(Y|FY?XFp&uj6Qj+s4?wpxpe{UPCJ>h3bb zGq>ZKcjk=_dNMwKk$TQjh4)dGr+Vv#@{&)ghUEntzkm+EyYHJKPA(ssqm`|>cWx>J zm=P(C)3(kq%y}zdKhEsr7PUUA>nqn=BMhr_8~y}3hd-`yBZcP!?cPG+)a zzEEJ4)x=T~k^bo$iI_SiUu`iUESQri8VbY|QduuCU`QoE%_U~ifrv6#LDs9j9Hw4` z_PrThW=IFzKRD8oYaD33U*G+lYO+q2`oy>Gc1-^T1eo;e%Em3llM}p9uAg(upcd$f zpaJ=NWD5E|KtGMdBZa+Ugb$*LS$WF<9EDpjhz9Pkv_{fKu)@R?|6Cu2hJg?CkQx*R znYmyop`;>el5S?P+k%q+_3kRKF%C{WUT&?FK9vG=T%SoDXu%A>lQAKb+%HUR@zCF# zh3PZb-Ao>G^1xmK7bR5Lvno zQ>F$OYa9#_7Jw^^>(iwAm(!e1CpipXkmXG(wklak<>#NSGwiRD0njvjSFWS|``xDs zcupkWCExt;$P?$S_8|G#faVe5PSwF7K;Awg$9(mD{q^>Y`l)l#y46MdJB$k1L`Vh? zmBa66L4iJGl?JWjw#Y&$>iSDiI;Wo@BrXAPMF^= z>$0+gqVAfcK0DXnmnmg)OkciMDm*PLs?D1e0qC(`kiV$8q+LWM0y|3&c67E6lb5$o zsL4nxZan>EV*a(0A>KLc1NFC5g|}47bJS^EH6z-W3!~a-W6Q5W-lW3rC&jSH|jLnY#yT`%>b=Ii8pC=sX3{I{hiyg<{ zkQVXx!(yYCNoVn;bzcwtw%>*b-g22d{ahL-pL;=f zNnU&62H0(BlfMxZ^bU#!Vt+LWh3S`ZP8<7t!q0m-+(BKhtix-ST_Z{>I;lA$5m^)y zp8>;aMn1*oF!vTn-#VGMOiiy93HA;y0i8UKMw= zN+j#p<}TZU4qZU3@VEpNB}CtRt&1-wi_SN_H&<%_SijlEMGqvWn(ZCG(cIp;uqd}2 z{`hRjyvzRVIJZQYwqyJIosN#ZA7|q%!-_TTPP(Rn!9~eQVTw3tq=;DHEYx1>1R3NyV0Qf^})jnS1wylVgL-C?2#a$kLOma%!`%Sp>q#FCn>* zm|JkYd3bs(N7eTNBiH8E60f|%wOFlvkKNUc$4i2V36XMcx^xL;c;lTw4lydflQODX zTwGQJ!{DyaVPODkOO`(3U^0=+&ikB*o~dBgZ-V2qr=9Z4lqytn(23$T_DSc9WieU) zfOwH4-AR$gYqA6be6B!o04evkNJ#D@R!G1u8}~DS{%Re34rXO3ECO=`yY=eoV?kVr z{(0j?jyO?T7=&mRL-JIOu8wx9DxWM|}mCo_6dp#R_Sq?>lX79%YOmnHz zTHzpU`j8ZiN)0pw1&WZ3oztQuG6aB?cR?UcLqAXRl7Y-fQEc%yfd_HX{XJ%h zsm+9DaV`Xh{W>Kzl~YBwcIEeI+sNThaFi5ZuDJ5yipa(8J(4o~AuCW%GT8uAEzhmT zpSmp=A&|4EgsA1q_kp9Q6~A6zC%`H0Taujr(D(Hhi5EL~gap~Egjy$G==M4XxL0q#)TFE4~I3Q2PhHzW_=sW#=UPjGmeG^kP#a(3p*mIaEo zVlJML5b=qoQ9P+?vEg_Sy#>?pji3hT?jJ`NPo8uC{{A8-nDMKlty`CY2(2&C68TGF z#HlEGM6K`4SO;rLl@7Iia9I%}ZJsT|X;b)+^uvy$A5%VWBHm@p7+`ZVYR#r$5_Fir z-l0ne{9biZlMJT0v7gH^@~uKfxvvp;CSPFUA%zLjeY!dqaO}hPsI?S67A{r0PecX} zkYDT$4(6+xzON;vwXH_( zX1K5*IB}nSZzX>gTPQMJ1&iBHR3ndrB2wq!%-~%J!sHrP!!8pSE{Icv=xSRJu}gy6 z*1Zqk(zIIxAQZ65tS_X0zh|7oHZH@>o$^e7s*%=iYC|c$?~4=wBNjiV?EU%~=4J1E zjrHOoXvcW<$|16;0rtj40+1jo{If;0_0V@gE{PX)FQ6~vAb3)41_O%Wk;I2j7;@X_ z+oe3sXgHUYAGWu7YcegpykFVJvLrQJV!J<;6nB@7U4Y~ilZc#p5}%Q4;BREqfrmgEQ*(_?%3nkr zRWW3GoX$R=GW*Ez-ITV#?V+sG6=BBu6v9OFu*YW)iQ7`qbB?GzVSp!?f3LP>7lVIQ zgpUg?=e?k0!Z=u|Z{eVdi`&*;7Suv{N=zXbm&Ue z(CHUJURv%gXKI-NhPCbeW2Yv2@!xa%H!ZGfyjD!g46|VG6?^h#u+6rPswz~!iu3n5 zS|VKonQDIjLk~m0m??vtxgw{M{a5ZElVXiY>w8!7Xu>3boA>tnw)|x+O~~v)A_AI} zCc50^j|(-f%z>8pb8|$#(yDA2o(3q@WwdGzqon#f-ADR@gj&9DgSwH;O2RGl_(de; ziBKPw3DXi3%3Q!>H?+! zUD)GTC97+t*@KJ>%(Nz;fkh>~J^nxM#6kwUlz8RwYD{+~O^KAJQDkSusk9ISfBPg0 zp6?v{5Gaj)M=i0%eqFJj4m;`ez#ARP(k79AJ1Pv;NPOQ<1py`+5Oc5YoYB7uS(br9 zv%;t0Z%l$dM!CEmfo7-UG~9x;P8;Vf1}qvTo2~@j`W2ibdE=(gfgyXdMyyQwjqTOt zS1+KwkQ|eNXMq~#c61vU&Av{(jqKCV`=M_zo*+)OF=lB>QKht>FZ&2h^qbfQP)*vg zKk%yxrUGYup#Hh3<%N{mV7*T?xMS%)7?s%ytxm6Bq6|4=nIRKH^xfs$U*7$l>{p@; zNL3&>$VrkY50rEp+>k)gyuB`4O0}3%U`)W7VyUi+CE(t~n}_`eV8wg@zShpbMc1mJ z+2eXqW8Lx_k2P&V)X=GWrdccfT&L2PnWkt$g8d#uDos4Cl&G}*$-KjXx1$;@#5N-N z0mp2`kn6trA!Xxc_4~d?cB2yaATUuC=BdT>#x_;6La*v`#vN?o?zxmz*7ipVh%d{) z@#R(NZoAziKd+6g^eUgGFe&R+(Xn8*#tk6|=zN&~tJmrh7UmwkpxI0VeYv~>LcG5# z1>-E@!wf@TnF$AL+DvZDHxEVGC*PEMV)gu!3^s4lK}J8G&qT_{J6TB4)FmT|Xt09S zs0Bu*$^_>GHowI{PRXISpm9TAcHQ{u)YHaiku%O1Sn~$#KY;}=ngVV zQGK>9xR+6tYIk0WT;p>zq!ytur0-{w;Y*6Pc8^;K&TV2&kq_`L5k)GXQTV^1mKtcDH{TiAPNsSGej~_8{EM%9~ZlY# z|GX}i<>W2cR0mACc8P- za3tnHa~7#{(^WN*AkT^8IHi?Ea}}Q&X^wa&O$V<6|EriLhS~Zw>z`X&B#HLzjC@0ToCMbb6xM! zCK^PVWd?lAs`}w1OP6l*w{zV%o_NbB4*#0@%hq~G} z3d4TkH&%zuPMZ!^OD=wyI>BDE;FF$ZEW4iiQu3C~uO}vW==J}$zcJ@;si_Bl(x5V0 zJ_!6stEJs?0K4Cql=UpJdV9$bYuW|WXAb0`L+M(%&(LTq-(046PwrZi0Dnd|=1xEg zCYS3J^|O?+a28CR&eX(J9$`%ugAo2R{SlAhxNNV19C_l-Zo7x$rCt@rjA6y+Gi|?f zJc_G#)w!h^SC@rIa^S6f&1V6UwTZoLXjJqK;+nq-I8h5<6p{cy zSirCz!MKE^q|RJ5=bCkjqln%%<`*shy-||alWmJ&NFmXyTt|f%G&g)p@GJkLEr#n< zXE#{}Uf+F%Lq4TI-pAqQxQ~N4i{>O>M_jlN!(V#nOu%^vY~OYP>7rIxDF=>EpG@sE-3P8Q8O?}yhuV3F_Uz^&MJ?URdseB6BQHNo|7Wx0kvNLNmUI>QCdiwJgM zl~p~L6}EFHYJ>HRtA5BA-_uP`Wv`w?Kn~Db5TX*O`D#IbYf9VPCpmVn&C6?C z@I;FQkOwxQo6nmV+q|7<2owvF*-y?cUVQgYZcR3NKuNj^1VY!WW7y$VI?y=Y?+DJ^ zdyj04fw6Men)As5EiG_pcKLg8AP|@B`JN7T5=jq1CRGvOHjI9E9b@L?HrrK7&kPEq zuoV-e(jSOxNPoPF<@jvT+(SWB;#(Cb5>QCoC~uGE4-|2yExNC4NE|DNmpxSY6lQ{u zgSY(X-%L2BOZ%AO=o|aT$3|YOh;x9|@e&khS)EzT+I1W&*B%#oTWyH9=T%>NtADWS z+M^iIVxS>oS}=qgy71Pb4E8@TYBI zPUj^3QI}xT3+8IjLKpM&GBW9RG(o72Z_2MOu)vjHfmh374f){UwEcQ3unM5guVKOY zpv{t2g!gO%{pjx$K-YkbAx1LQ=UV1@y0))p9TS)KtgEe9aIfAVl-WAyEL0?3$|39C z^w!OG((N|>vHl3VY@7`HCQI~HXri9$!kK;|?t~=iKbpam!%ge|#=UkKt)r}@rZ^zR zQpE^HFJB5tZ@vn}VyKC2NGD^6x2dLD%1GvbbOJW&<7dvM4=K{MDU6~=8N3D>-z?4p zq7s$YxQj|(nnf0(Z+d)%1pZG&z-<2)J%rSMDgq+MffCNP2uUQJ!u81HNbcy`k@At{ zks|^6|B7cmRrqxCEquj`H5R%mu9IlJ%V*OPP7AHu4Y(tM=ElM(C02{qv&b>b;3A3CF3x^+66kHqH`Nj83O&pBZ ziZp%d$J-1$o&3aV(PB-x8l{T;gv8LN-c4TE^u2RR{8xCSY7PWjy9Q*vmec+nu*J}U z16$|Tr#TL%_sp4;widJ8B4<7b*wmn}W@By*2d1-3XXn+nfDQpDzyNh0Bwm(7f2ki= zp3O-JhQnm+>(G#$(0w@u@|j1Gubs5PM}}1Z15tN4^(wq?h9#|cTh3o=W`0kgu2ul~ zf_(RGg=9Awz@e8ew<)1aaxn7+K?PAUm-U-!slfm!M-il9YaqhjV1uT05qLxvC0(a0 z0)=dZW-jggO+Jz}z+iSF2nk0ZhwYL2Em8j4P$^Gor1ccgM-Y*vM(PPSM5#eiOfN8l z=KnHDc-qXw&$bF@IOwk5llE$FahALlbF2vwK;`R;Ygyh^aW5Wsaa}Tw|EVLQfllbic!3D<2J$2`kDQxldH8$d?;q~XO&xO>32~7-5EYZN7JyydNxKKGurnHm?k#tY-*kSHy~fy3 zSEzy001wD&j)C6iJ+v&U7vOL74LYb8b8uQ1C{pMDr3Pe8cwvW%Fv|$2aTjpIOH4rV z93tch+JOseWsFmWz>)d~b3U3Djxtp+L??mvD=dgCyeddA0mR0Jy}7HOZ5W;@rx5J8 z&q8G&k^#m7H`wBp3vLvs@Bs->Du__6d?=C$(%qr}{;)}C^^=EO(U4642F|vKkB%9K zf@#5fM&N>^b|6?7m@-HEzIFq~7eL)HQ2JRoouG~^vNkd?8Ds#D^q(is^Vvp3Pu^N@ z4wf%GVg9%;5sMviLoTZVP&vcr()ASOPkw5@le~R@0HdplA|rmp{x(M;AZySssvrf%WhNYiBt(Y$=?^`)~W#fxt)^%GpD<+93(&xCpX z^jp1hi93=5Uib{nHXRXK-$A4k;Fb|-nQ880N;qAc3_C|@b@kChIO3o;R*Ki)=2r6v zp{E+;>p%l};5P@@4W!O@WTC!{3bDKi>*r#5Up=I2a9~2RZg_wP<@^QGT5}ZZHWB=B z03-554rwrm97s3w1Q4G?lr`N5B4A-1I#>jky!kRi?fNs;`Nyn;AsR%1q=rqfFo?-g z2N0YEd4wV3*#LA(f^1e-CRld?LkpJ%ohr3={mtcp!b=toQ^UugV`UZq59WISo>K&| zSODPshMurXP0-CMNf5uJ>hCfy**)=GJfZqF7aa{=5rN32yBNKzWY8bP+Ha&ds8uYb zyWk=7#v}{~7$$)*>*CL5bMZQdiqXoY^-f9riIugQ+l4h&68r&Qvy$tcFvxmM7gYLU z@JEzf$Q~jX7QLkQ)y8=;!95gfI0{SnD+oKVf|4|dAV^5%BGFf&g4ofWbJf&Sw7xQ& z)MS~TkHSTL!(S;ygdd;0qHNe`8>HCZTMAVH_<0XwVu_Vsq&FcZ-H9>f_?C=i5f@;d-Mb}JHkn(0+^Zrrl=qS zDIDR-xzSU|)o0Fm(D1)tJ??W1NGMbT%}z**F_9v92>?6;#$iZDhmc6%lik?&A*!Ni zD%}peeO>1vOJDv;{?6V|#Qn>o)Ve=+@gPkmKP_Nd>LuRKDbqk6Zs6*Lyf!pSYq*5D zjx1A;1ittQkDtApX<0o`-CjF*bYGQcw0mN5|DO1w_==nY``W%Q6Qcp(cdkMIo_`uX zsg0{X6jWaS3!y_(IA~!_5P*i%Tf%M0e)5If>ubYRpOj3 zwM@m)wLu+4iM)10%RPZ-0C_>hLf)AGeG_{SdJ)OiEA*RD1u!PPJF)T6iwIM+!sWV& zQEd$x+7l7tGatS@kFwvuL2?Q|5o$BbsC#hXFWu56OF$ zSKah~UN%3YB0)S$##;os?xk!6g&ssiYrmX0;*m>9m=u*3|IVJ^dJWg_Rp_O(HMHl@ zpV`LLFy|1b&Z{uEU9kStzq9K`uFh?~_}DMePba$N-}?-DIDHbfIezFj;ghkHdPYot zfJ(O5YDGKY4cFNCT*O1Pg-6G2pXJFKxz6ZwGYLu4el0}&75(GBpXkNMXbQdrCIuIE z-Hu=R(O>Cl3x;aj7!uq2jvDY6)tZ*yawII?=El?P#L!87#&h$F#-$|j!<7p=vCpme zp4Js;lSL(yoMhZbLofAAOw(+0bU(7tvNGOdvObabGZ{mFo>ldQFi@p3-XsWau!+Fu zUtrvBD2bqDChY1gNAo&@hpK|iTSs*dPqg!?QCIO)iKI3tj8+V`mf{)iJ0a@^XxO;+ zs-GvY23q=;JlvUiD1CZPXNIY-cHEoNWJ7bb^z800qbAdpjr7~Y{icE8b3F$#v*#$@ zH-}A&9;$2?THa~@$ZqGU`G8+=PV(_vqtAV{b@*k!ecX#5<<7~l@y#@UD72uFd^OaCpFo;VJ?~yt+PFLF^%`HQaqsq z?5FwnbomDVt!;f!z zD~SYXGGXnX?nD?wUA4?Uc|vZ@)0k^0yr3Wo&L78Xp{ae4kiu9y~mExYi_lbQp@Rzj(BdA6(Y%`CeU|HzW72JZ)i^GDmUCt-qk` z&Z}rq5&eQKqLTcCDpRiR<6$(}qe@nwY4p?I(MMteH!T?5)5^~p@OYd145dm`lm8x- z$h^(V+>2thoYWEe6K7y@RD4kWaBHJp-%r-a(FAMwOUk4+SI2OO7*(QN+;?#0{l7of zU0YL&uCMkK>^rvX4ap29-zkzN-%p?Dg42sGDdlwdrMUT#$dosM6I+`HsTm5Bz~6$7_MxtHAqZE*enM5_XixTA4~b| zY{)&u!^1O!lF_tYuPkd`|ECVyaSR#|3^_UB`zj{t0gJCVX|8^NKd^!cyM0Qbr8?jO z%(_a~3Xoa*f7LLvJy$i|boxl4YPx!6X9~bGQFGlVc+GYwcZ;_@j1B`mS|Vh5Xc+&$ F`X6BnQ7!-g literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/f_machine_coughb.ogg b/sound/effects/mob_effects/f_machine_coughb.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b70b6d16c144f63b7cf88f480fd825a74872e77b GIT binary patch literal 21201 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 <#S_kp7%;o zDKDO(3S2^k$Y3s&g{)1Eee(t7TmXoM4=|<2lkrf2UqSLFTHFPn$d9MGaFAsIT^6(g z3Ja*O1|$@94WjM<&NoH@UDq0r!D=Y9xC3q%0J$KJjXIyoM8_74xFCMQl6D5tEZesE z&ILLk%4Re(23khJd-!SE0O%qG=-$-!;tSLPr5ClFrz{U@>;$Ti zjS8yyx@e083k#^TD-;t|kvr#d0!W5X_<=SdjNEg9;f%)IQ8sX#i&>@-ay|o*MG_7> zJU2bZnT4g4*USMHB>;brC5sFw(*UV^7w`wkeE$Abw@>=N`xX!o!w`K2OKSpQOwNxC z?@_8#dJc_+h`01pC!$t(OK;9EdZv4R;wTerY;940vGxij?JohXWu0p9gIiO%?b% zYK{g(Y~pUZ7wPC_qVd2h1<2-fB-Be7yK&z4LRe-%}Ot zJT*y`5u@xYTUrAZ60e^W*)}DU;;sl!@NheNH!#lGR-KW*tYLzfDBaBlXc>H$Ywk%rRkji8j}&^0MeS749!R<`9O{Dsc#0nFLmzqU1Sd9rX~&y zYp@-7FwX`+_$wW+15=8srZESsqx+L>$m4ECITlz>rN@_KXuo%d0u0MT$^+(^y5Z7M zHIc8=O0|xoaXP&I45k3bRTQDqDXSbckuKxf9-6Khthzj{QnMpKTjQMclzC`^jY6(C z9({dik2*k`1EXWJ(=UYlcHLU}>|EJnDN)A#0XSos8R(%tFx~t0gf`Fl1839Xy+Dc> zAaGe?fIh(nH&^(z8v3O2G;;Q%_^`Aty7c>r;ACZ*{2Exn(Jo)URXn5$vOqPFl|(-2 z%%$xTVLWu zLEHe4Jaz$b5HCldauXyTxUtbiA^8}4>3S`cDI#p#Imqb{gcyq?R8}|#Kpdxl#s`Qb zsML)6qUThJrT*f9h8X%i+Rj-)ZC_^Fi#rYsCVAeAMFaTO9aaV@i^6oYe~u6e|5AR? zV<^mWLF*iQR$_p%vca%2l@AXL9*a(&-kFDq_#Gi|VdU0jhrX{z^e;!8F%@r#5m`;S z7r5{iKPl%@nah{|MBD56;g_t}gS_=5USV=f@`N*#=$&0GeaBhw;L*dQ`58Q9ugV&f z>J_vzGIKyE%e-MRt_JPk&T;U9u=}Qa0J$D0b&z3GS|VYO`i<@%3Xr&}-RCS5qHu5* zx>w;6@ttA3v<{O}gzNi^ywa$L7S}Fg5l1L67zi>0aQ}wA#Yn~7eu9~8Jc^LT${{O+ zW0Hj=VL;BpTPUPxj9DXO+mNm=Ezb?I66Iq(I2eflBttmzP68Chv;?xQCJLCz^JZ~h zW%Vx1UI~}6;p66aM&=4ipqcHj#%*ac!z;1CJ-G6*r(VRb(EDe#_$mF@^Pg^{{H{L4 z+#mZB3zP!Hy1HFG5|;o@;7(j6q!;Y~2I z8-X)o2tg9%AO+MMiy%$itnEAq%Ts|{01t-u$zywBHp8|sKsY@GY3B}X*vUNq#Bv~} zz;@d9Uu+YLt7mSF;Fil4dCPapd&_G}Z%cp6VasaEbj#D&bf3Ag$=wYMrTgT1%=*Pc zo0Vl<2b^E0;LS8Tl^=ZUc@+B-@v(@JwPNP2nm)#j6>FjI76%muKH&C29eXJLh8I4P z0;uyCe6Shk5vz|w`#dkGJZXmozWq2c$9?)oRQSxX2Xllyn?LF3**0&lvq2B((`UvT z(<`H`b-lG@?flx*&UC3W4BTC3jF_P7&cvLB2_4LCf3f8jLksTxc zp!Lh8u!+T27_7iH_E9O&3{E0NAm{3v@6IO=tVt>P4E@Y?eaG;4^usB4g~_!y)jzja zrzC=Lqrl$ir;*KT1&QMQI5JI5RTZLJ17{vURQGu)CAco}v>?>`{9TnpW{sB(zEdu} zQtTXhSCFf&oZ;kRd~4qGyV#{J^BdQlor3;65>_WAxw*K!`lCx;kVH>?`E3E13B*4W&9^JcVIQxP1S$69=PGCXh=%Hn+rIAZ zH2G#$AA~w%5b1HuSFec95F$rK5gFeD5)(P#9zT@@@KcXEmti!eXs=(E*!%)$a{4wA z3&EUlMEc44$2rXyu!$Rel{z=|!TG|Q<7{%e`vYUmjND20G!EOkosRgL67+%%kbv{< z@0K?8G%ph2pVm3dMPx6xd%y+-mTT#R+Ox>p9;2G-+LY%nIJNbLq%ULcMP`rk2 zDusDMHtxV=49%{!xi^A2{lE^gI><@5y*TNxp}NX^>&FRWQRfpxzU3%Bk`Uh3*1^Wc z%u${h3n&OfQ_F9~S29+)ReAAK=6=78r3G}Oe=&lWAR{W!8&QiXS^%ijVLF^dIrwrY zN6`Tgfdz($b)eR?Olim*@kCOZun>c01UXzpHeMz=(w+ z`T>fMmJNY0$a#622;H%B5MaUrC%jDvGJrgf(A##R5jM;hsS`s!r4xB844bx@=x71BsJsj3s0+?YT1{ao@!{_;+W^2k2yRddq@V)CGai&_&eT3rgP)t z7B1#BHm;21U}pHvSJtWfg~|Rd(3GlKry>fxa=Az1Mcr&}<>#wKteD*A*vc}$Id5|AL%Bz(Wf zqX%Wj`>~CJh{6PbojO_Z6AgAuIx_*%3=ulb0ll=RP@*Vn6(T`J0UG{w6kW3@+X_}k zc}VN1;a~61&qPP_t~0GI^ocTMX#)(VSwn@4D7{?h!SQXS4OvzLj}{VHA!2~W7_9zc zSB!lwb1u3YANwK~4I{4QQqB6f=T8|Tm))GgzW;uS)xLUXd?juAgx_zgMrEhXZ2_QD zcBc$$l(1aOrMAq!Lb(&v~Re2qBhnJ*kH0k{{b3Ea`3HM#m-SdzHGjLUDc^ej>3 zJh8bR(nfM=ETp3gO7aF&wcacw7;R8`38&T7Me@TgJlPXNyI)_;H(*b#+3Wbk@c8UW zwd`w9b}$1hADB#ShV5?Td#o4=P9$kH*oU*? zKinc6JH!YWa0CiMe5T6alQ+yj8$(cqXu}aNQ~@t=LZS1N;Y2YIx41HYt?IC5kTt_a z&$*`d4MTObrM2a~lQ#3K2y(3q_J7Ma+*>xdj5QJ)^iN{=EG|D)&UZ5GH*p09HV2g4OTKM$qm(j8$7KWE73@P?!^@8#cn?4q>&iWFpg4 z&-c#;SD%ZGqya>%%Lk)#gITnMB=P+q4}n8&VP3rr4s!#gN~0^-^t@4p02ABzrAIrE zU^@WwrWyHgwb-!(hz8Ce_-LL%(W=25=Zm2sQD$k>-d>$&cJ(2h3Pm>-MM=02PrG+P zW7&aE*a8)ag(85a(h~qbP|Gdtt!WVNrJes^;6f=3iw*E`g2VieK_GgT5tOWZMn9h) z4Jop9Z5m5|cJY+WXU#%MS(w>9GV@~J+naKGgB&9E7KyBy|6qN9ZE}5_d~y_YO4`)E zQ#HMVH=^$+9lRD#=1wzm0g2tOG2cY6;S4p#SQ4Af*NPgnCw#Re!U|+#Kp7UuuiO`^ zDQ~8RW#RkPq3A%+mQXf5-xZGzhL>0Xcgz)=T_8%O_SF;%ISMTfnpHp-aO5);fbxPR z0Vu!uLRyEzEAo{O5}LG^1(raN=Ol5`A;S4df}k=;LK zT_cv$>#M~V{`YEtU9u|HYkD4SMba-Z$2rXeeUb@ zn0>yBG!NhLYio|P*T#i9ziY<&tM+~B_}c$l`tFIWn2{a%_U$@q+>f;nC1RO^8XNh0 z4<6VJ9l;V~{XhD@W3;P^f855m@lA%LJ&RiXU{ZKU029UqgfQ>ec&JealigRhOzdRebgY$z}P|cpPP9 zHw6vq9SZoB^RQ~uZ&N4vbp+kKr%V$JBqTW$DrG5kOoDq*=VT$AfHnuNH=*^*a({Sm za(ovH-aW8){<~UwSE9HYJ>3CuBLE&qPk`OkF%NdQiUM=buz*Nop?$`Tfw@PB@eK(F z{<=F}vx65>D)?1mDW-lxD2>s7+oR?4es!#j-NEgmn_GVKNbDcNh40Pcl_oH-yeE~rSF^S zq>dLFKNM(LdQOeeR;MwLBV5gDzW*98A}s9@Uf6S`V)!Sze`ep~k*k=3Y5eD9=C!p% zOUCY#QiNPxo0!9tDyGHn-&tw%Hr7T=?DdKpXN1`Nsn^P{=EM(y2!&xfCtCctRF)hx z{iRf3br5T+0ZwT&!k0;MBN&01_6%X&%SYXL;%2!LpPYG|7yB zN-+X+m@G3XGu154$I@jUWNX}rDIoHjHu95M(9)c=Pw5cfuGt3=F&>hKetj!8uBdPV zXV-1eC>s#aYye6L$l>PRfK%>nbd>S=6r=gC&xV8VkDxC%9sG5j)#SAEM33u6c--CB z{0lL*@h*C<2M-%v$Vucpw}*uvaV|AZm+p#?z2+A7tZ;Bi?(qdn{6U0f^*C-|i9tufuNHpoOD>Wpto&ix&%6&bNq9Ubg%uXa#_zP8(k^|_oIt;%n= z(d{xO>)osJa#@^}q~JrgbJoL8HMSgvBHabyJ$!QnIQdXPk1G0BBg$XOtknDRR>JX{ zQTMT}HQ}8X&SDPSDAZ)&vPJhh8K|}=kX2O>*C_{FiUv$WK$Z&x!#T~*gaJ*h9YuTu z0ags+=wK$t*q}0vRdULx1iCUEuqy-Na0MXlX(lUk*leJ$s~cmHy&DB3a=^0tfm;WS z6WNTi7$*Sl3-0Hue)>ByH{@$Lk+_0tTYwj~6AJW$AWDn|&%bN0bCAk#65X;BWWqU*3fEU~syHkw_ z(DBi;^*i?MQZQ~k{B{{?ekOxO{5hdlPw!`V5ar!|VAj$0w&(lrrqQwoJ_P#@w^T{3 zM-a_e5_MF$+BK|-z=+WEcevUtfsZ%7WPXnf*6_FL=#4(e2AlJB|x3d%7#lKmW#aybv0GiK~50{uQ&H9`g*J zpT71+Q5d*+I|J99_oMra6tnvpM}k<$l6#C)zo~fAY#YSCM~m&Tpa+wh%zF;ZR7xTK zfqw2s73f};@e;!YM^AgXONZAsz(kri*n0!xQ?i+K;K3IMldt}H-U+Jedm48y_wHyq zepl%01FJDQ7jvU@tBKp-_thWZuWx~ti0q6=+V(AMZ<2G5mO6zjogLlWo!t=Ef-w>k z;efaoC|kCOv%z=Eb<1W%;(>R&`H_aDHQgTU-bb%rH{ZKhKZ3;kUCc26@&^;%{*<~P z@~zwN_W;k3-K3??v0IH-nO@!1*(w&_$!(XQk`tHV!I)x^qRLaR+|PF(U-y>P;Dhso zueE30eVl${%(r`WMV~mQe|?60vrT7@vVUN95cAIGrvh$&)!Hjp zpK+z?y|--`mm`zNntb1#%mc?q#D^qJ?=G~=K_MYla>;G8Vl{FVp=Vos-{%EGi5ib> z?#k8ph`$KPm8v>){yYkI0;(%dd|6Q;t(2ik=VVUVXSKJXDY>qEup_8*oD}AaSuPi_ z-K&yW&ck}3Dfq;7Ye)4vpQGt4rvCU4C&qI_A}kq7m|aX!P=(@A4fn3x8^Rocey<)A zgD!Je1S@@=wf9nwhmC^|v;#%1iTl z86(PACQ88G5z7n{L&}v6GR>tPdKVKQYV> z@y5}Te$neAQZs985181#Rf=kItfD-37~1oDT2Ra_VzRwyL>#Mcd!O&lk+nx2|zPo3O<#CT2?<>E5M!W>!@5|fHrKbnI z*4R@l@g+TxE511(3!@0_Q8HsYmY_o2DHSJS-EtKDDjFsn8c<&V-zNn%l^!`;X){GZJ63+!2pRg1O zKnF$=fb0W%j-o9O1DV++Bu2R48+Ps%D-ZE#|R4)M=CL?saRN-*h4 zZ}~gKaiC;l5P*7MOoCiKAOdj}MGk--vIB02%!P&tzI<8Gbtcda&1`VR=@0Z_Km1TS zRb#T>$a|O)Dm0mT@zq2U;sgR9n&Wc@O0Y3IV&m|o@2Lu9k)6Yba4MWc>*`h!nRJl^ z0tqEfJ*#-?c-<*nU%rNP*h)2)3A1=|x#))3hfZci^7U?pL6yBV3Gbtyh7b$Wr@lps zRGC#u6> z$cBZ+Dcyb_g2g~^Teb}^iCG#j+Atvpaug55ga&BX4n<~IgYP8+QWx%u8<~t08jaP0 zMI(TNh|0hiX(dg|vITb+6GM}tTue8+&vBJ|OptOCg-RO|ZVKaX_uhrT#?X1GwWC5S z!LP?OiXRs$l+BDBHa%9T6y4QpK)CoR0>etOU}t&MuwPWmJuY1G!ml?v;W(K!yC$;B z<#1Hi%MK64Zvi{4F0y(B&e*?OQBJhgHrBp)V2M{vCM_qz1=ZWgK#J4{XvCW&^bkw; zEL)OD6#KEJa6<+}qd?;=kir3nakH2JA;jxU8by)TE+n2N;9z&adl;Qk1M1I%Tko(4 zhOyKDcxpG8WaO2$X2~Up6Y$G!$Vgc+)Ch7Z`6uVqO!arSHJM42s@B z_(}-hu>2W6#YsBn>l;C^ZDsJt-eZ+j;EVE>T%@4x0C=Qx(EqzfN@h&xWB$efV}sz} zlLK2OdmEl6xg1fR6Ffv$^BqBP)QvGL=>y;2`q1KT6`LT73Nch~(0kt2Ht7~~Sy;yw zfz(q7#sT>tu(>KsJIBzQ&)I`doHZl4JD^Ax^D!;P9@;Y*--h!8sdj+oxJ@5WSa`s@ zbrcYAdP_!=&v?Bad<#*S;TsUsGN9oJh=`C}#O}*xaE9-wRzaMa?`@oE1_1LBMMuLs z0em0OFM>0^WC~jT;~j}Wf(@Y;IHblau_9hp8pIeTPBgyK4xq01pus9aEiT3QbLSB z`SOEvA&Kl-Z#?xc7G6rpR%Dsmcbu~wdI9m~pOTAhSRT&S^?SQC{`CSw4?~Ak zfgY=(7;FCilAIIYOw1$tS}cUT+L|y`(UU1D&L)*I-r|`TFQJ9*>H^85mX6{nM17K5 zFq;~h<_;~EVn<{i|G-TP7j z+dE9?uM15cme;lVMpu(JH2k$(m|Th}@B?ER5HHGMAJc)`2thYj{1kcE?7(pRK@lmT zqUjh;m%%=?gLL+D7D{ydRBI^6AHdL2HtC*nujcq%1ApwEjr>M@mCQO#up*+ALdka% z5VHV=9aH8X6@?s^EAfr3vVy<8iDAV7Cve3Jh4XcmGMPgT<`j`5N>gzZ%nJ}TcCr4f zS#98wp4%D#A*3W@KWD(fLopx28~6%?I$mG4l_g=#!vibwLkXo0J$ z`QRa7Be2*W#6A9Af`jeYeRSug<|+LYBPSGh(oT2;JaC-E2B@Z-$S^(XfuYata3AOA zn@Egc0DCgISa2xnzS~U5!3rSDN#}u@_t)Z`i-eW8JoT>Cme3RYLYmuH1egI=G9m-Z zpUCPAy;#M+Zh%djhPh3R7*uj)x-IW>z!2F>8YYklWc*<-wj)|6bZ${3FI|&zGHSjh z<{UD^YaXhCoRug6a5qM0p&*o9_nWu!Y|TkQPc`GxmxoR{KYt)OIeP2o$OEm?=tWL8 z56zL(v&VE^mJOUev0)gm?3x`FV9Xw8M#88n^i%-Tx!m}lH(Lu%rx#zkWX5Y+(5`p8 zNl#CtAm(Uz_`xFw^{ySfr@ZzxDty6WzQbcGa`(~;+lNK!idjVC#1Ah{pT4tl@`Ik9 zwVuV-n7X>#ra&Fkv&mjnR0#yo36-GD^Vrl-V;b6jw2nfC3cWjTihTv}{7} z6QjvlNn|$%R1d?>Uh!VTD+W`Qr7>d%Yx(z;nGA7XzIxU_1UbKEL7Lb&G81(rqQW;n z$#Fgu%RPIh81V%HrNxB`RHL=?wX#k?Gt1X8A2;R2T#YAhq|4B1jpsDeuMgl+a1WqK zgPG|1#s!VUnbtyXX;W} z59wV<)%`2F2TzI!f6$hvH(fkGx%0|RanYvZ93S2i;B_Fz2E;fhrAp|Wt9-BmwCGn; zFV`qTk{4&p|U7%dtDt(N7^Ref<-^!DMdF86zg#$ZTF=1Kc80Z!<1SYJ0@_*AjP{;XKO^&bh?Rnc@@|nQL&3z%F<5j1lW_*EL0Q6Q1 z;&4WVGyroZB+{QDh?&xeEBDSNB@{8q!eUCzz%)T#3p63}!#<3n#1t1$(!=3EE10}H zr@=btvd?gW%`cKGz9FII9wGwz@VI zWTR-qvj=tR-h7$`&mS$AE_UN;YN$RL;E5G?!H@=>Vf9lbc?D8B1lc*YBBaLA2&;>N z_b2xQ=lHxg9lp2v#Q1;5@hMipfh4&Okb+(Pstf`ydAZl#DbDQI;{ut(gy$F0l&W|= zbiucuEA&+waX!r#J5dH`#-b~D=eQ#$eRuts0_AB>?)(fE+CRbtJi;r_SWcS5DJas9 zZP}`s0LGsw{cPgm^aEr*{)g>uObu|gLroS&gv>`xMXhqs0%X`%*?o0}?SL%%ToEh%{~Kp(!8nC?32z4 z?+g!^sd{}50KUi#So&@pR}~6uKFMo8vZ)QixZ(T1>(ox`+cxO2mb|96 z#g$4m7d_Nxn{GDHUti~IZ2RF86^wIxAi@h7T417mVW(n;_1Dlc?$tWdFV#;T)xq}eV!xhuF_FAqq>FZX)QYdV?n{0w! zlSHrH?SNj;GmhBs4mg01SV{nVS_6?D;`DDI(uGTgkCcz4vGOCa8l*Ga@HKxl<~&KC z=XK1u!5l=XLk?EqZY)J-1w|H=?tYswA16XQOtUZM!da6aXv)HqNe;NL0MYDeLGW&4 z8_T+dn5n(zaV=Ti>n9s04eF5DkYdBgC6x zy|sHweT#p~9Pz6t(xLyo6sLJ-I@pFm^_X~%OKn*6bBikVsWa1Zt&cU0qqjC+{)#J^ z-dxwMkI!X`wOAP*|M{c--BoRgTukF|p*S>``61?}s>!u$Q*vhCmiIoD9DKKH>T+vz zN9^~wxQz$Ud5N>J>Nksy-a7ViK&0AP(YXK7i>3Vuh2`oy7JuBnSQyIZpJSj;-Zjk9 zZwz!)Ggb%D&A-;shWh$wbn`)~ptZk~9k}@Q7;5EWGL_}A!3h3ZW~%hv2)?2&FLOOB z=yfQ(`BDa(idD)gOp~FE5y7JYp#{o{CenSnvigQsQfSSv?_NYe}CV@p*^ofTk{dNx$S?cM0s#J!X0X0zDoVUiZ>+Cr? zt&)%#|B?}qiavdqJt1;p;^iyB0-vv9UkaCqRv#^LF?Tw|!CVxhC1>+ir{j#a$vsxH zUv1O3McUgx7taPCtmIU`$Mx9Q+FbSY_qtI0=+42_@4E-lt|84B7!>@H$juHp$c}GS z$ILLnai>%*kDTp~FJhtXq@Ikc1CdPRcd=08Z%Z~0F7h!HX3ATf-5Xw95AF~BWS?sG zJ7=!ffBp2q(tDb#{*d4h@RcO)GuC(N!}emU2AxxU)IVTSSOPw7>9kEe0Ht?XBd24) ztNfwQt5gC)urTstKy&a~B>-RY{M)*8I6QwGoes!LM3NJVVW`v(qrsyxaYbJP7&d{*7caqH0&?VFD@kId|E zdh=`RxPGSy_vheT90Ig(e zo$6A>TW~qh|MR_D@o@(W3JV)Cp>Rwb3s44HDdrr2YZ&2d%ym$c4rOt`7$sI%g&d07 z58vP*(;Nr@zR6FHzuzAd3ahM(F$x_*Bm(O*LmXmCz7R!LB@|i%W%xODCGxo`2t|4% z0A?lDB*2WAWQ!TmpI*H@C8_RSI`ORLV}aPLhP22NOe2+q z2Q;?30POnRearN0z-dpRvrTQ^jW1 z!7-IDv!=~jXK%?B|Be^?5=#9pC9wKwMSf1Um3Cl8ydU5<_pp?Of>WKmCK}UoN_Q9Y zN(yJyd_$iSzA_XbvG{IM;2>>{pvyAy9(#+8JR?9gvvt-GH$r8js6wt-OBNavAqylH za;<|ox-Q(6|FHbg;5S2dFrkN5>LH^k*I@|Mpk{{dKZn3O&}*K|q_A$oSOTT6Z>wr# z4}K&z-Sd#nH=c&a9@ihnCu`0tf3>p-$>KkS26X)$rR(iuH_KDf91J}cR1nK1{rL+( z4*N0`Hn=y#y4Z>D*WqEEU;AGYYK!jZ%AO1od#l`jQ0Rr;=F0~M7t0RK9{m0O=~8RS zk?*g{rK+C(KH1sfzw4b9S$Os);rF_Z<#|Bfj73KlTiL(=GNQz3I~T=&Ex3Lu_R{f5 zE$x+1(sJ&=_syNFYBc&0Vcw$6DIgZgGT>mSX90zM3$xK65Jn#>Jv|-JS|s|tE@JIB zUb)Y}?fb2Y|{$t|~WDMGr* zb;=$lY1<^Y-sfO zZTdB}S=B-wMDoYUs~?+dsNr5wo$)p^^;JPJp(W^ZL-p@FyWIMnI;Ewax?%qLb$)vr z=A_t!`>%Bz2M#y58Fxp-X5a>i;acX3_4uBqjC-Muz#!ACsx6R=_1{(Imx=^Ek@Yqi0@h!}lt%o$xd)8;hhm zsScdtDic70iXh0kkAlbo`DZ~EdbSXT>7?ve6_aa+BdEy0%V>%zMar<|Heh_#YLS&_ zwuypSw}&8tJpeRdPYg^CVcQdJ53to>8f;j&-{b)-KnPMmB?`a{Gk;*%igRS&Wu-%+ zM@VI$YrXpcDvV408Ry;U*QtvChJ+5FnKV$c_It@1ez?pvusRHCBt2MVef5Vw@}tMq zWzz71r4G)=+&!iC+7$vg>;uKUp%kCxZtl}(TQ;b7O#Wt5q$7Nxf5OmLr>To^%jizI zspXU8Z9B*GiEF@vI8`h#Ji?$Rs)N|-sldSza2nQYjx$qY4=I5Tc`l5-1BOA^3`8P! zdT*@_2Sl&Sk^A-vUa_|;=-WOQmPg!xj}5kQl?2gc$bqvEMj*%)?^7Vu8g zg-jJ-gNh)T0Z97LhUQy$7b|~9_(_{DTLkGST)YfyQ?pr5 zPuw`9Pdhb!srg!M+qRs*ul3{pReqksQ9EBzGa+w&{)IW$+YVtaj!VPsj9!)QjwS0o z3U&7H%Rlpfx1)v>2WKKYFa1`2K&KO03?mbvnEsR@C34&LC%;37P)s(-%RP%7E zm3ZLmyU3^P7;>L7=g^}^13PQObAs&W%YrZl05aV}jQXZf-j9T3$BN}r{LgDuJP<=(iCW&NlA0%_x*LN%%q72ipl-f>=zRDPsGm+uoV*{W=rs&t9 zTNwOs9$5)cvX@u|cF;g^wGEow>0$Z4cg*_kh?!R@bq92H6KwYwYTM1ZS}n&FwO(Mg zL7*9?hOyyhLV_Iwu{B-Sv#;*Ine+i&JJ69j4|r zHR(UAB#jOB(&s+JTVE>5A73diugTr4v!U#3ZheSzH0Sw2D<2x8Au>>M^si_BU4| zmuVkLb=*%(mG_~eiq->bh{w_pm)gc&P7sbY+GY5+Z?p&)&Vm!>aJZF69u9 zSzPj?<;BF+PoEV>R}E%<%UY48m;9@xvA~{Lm%SRzTxgclN|$3o$>ZkhAFK4%4{x4&CGRlIA3{GvAh(4ce5mx(D$nrupd zdbVJA$0hXXC4L1h!>vzE^-2UO*iBcREIz*9E#~OyoP*qDj;WBw3w^4gRUJo)BfVeq z{zmkkG0qM#Ih%{*k@odPZ{^%!W;WfJKS+IRba&b^FFQ2G*@Cgre=i|6>)reti}|*` zy^nZ&uNNqOe|NF6(Tz|~j;cIZcvf!Zd`I%I?7`t%W(to~GCRiGKM8RGKbp0-@a-iV z7HG3)n@#C;S>LNX1wjw#-MS%5Df(zw65)^HJir`g5hDT~Kp%vV>e_&|c7VVTK%znm zBmM-><~cy**Qd%BJ}Y8J1+Yk^Atze<_VSRkrt*VOZZlxmK_`iKSFlOhk885lchSFp z&z=ct*~&DN$g*X!AI*Y38=E3M|JN7(8j;&)u{zMlI8De+bA0nQcv`YjA}p%hJ(gz^ zp4}Reke^y2u0{rEOt(g4c}E_c4jo!4q$kxkS|P%O^WSYXFG~CJMqj-Yqc)RI?X7<; zW6H)CVAXauGJ8)kGi^QpgRaYk5!cOv;Q>6}0=F1-aq_({q4(lCfrcQ;o=jx^S?G4S zkj!r%psv7ith9EfXfkC|y1`%07M)yrZGp$T|HQWy8;f0LHOGU_5R1et*;k(2pIEGP zDrIGHJfw0WaW!>jgPe>oG*`bXj4n1MY5jtRlsH69A_85=*kG;Nmg*Upze}K}c6LcoY+glex z&9ES>nx39snq+C|-(Yr5!i3FKnM_e0-=ZAk*a`zp?9QrklsP0gMy(Nib(GuT|h*76{Yvyu^>f2 zirBzjzJvar=Y8(`-F5G`)?MF!_pHeR4 z&t3GgzZ=%u!_n*y0<0ERLQGsjOhQZ&%YWI&*Tc`>CBVfuP~hynNWq_~l8KrE2y&hs ztho3(U3GTxSI~6`c9K3XDj_2(E+%$1*#QqE`qAOi6Gq$%aQTAtIgZWz84 z{}NdbeVKb$l0?G|SV1glG;$s|UxF}f1_6&d<+`_<(satHh^v&!TmE%VyC;!9>u^*wOg8v)a@dxigG zq<_|d1>Z#(&ge|7j5wQ~AW)U-4^H)WSy%uME)&p5LuoalCK_3$=D06^5H_Tfo|9BF zHqkQ$pCDWFV3(EPpq1bV%iK8YjtI++IP29o+s|EH=Il3OJvU1WTIEDUe>SRpshg?@`d^e!tCUqDgq73Hb*Elmeo&w*g8# z@~i$|$<;F3<$s@W?xTVL4y5JCHI|WU+-gSLBmTl9e<(Z(fIP(+2@m;8X#_}(1jvI) zBT#iLQ+Mh_m+D_kIAc2i;KW&muCa`P)G!iR@Rv3ZP*@4jTLDRNMv?#Z6ZJ=4z=d!W zxn_If5t6A6f5?Idr^S>aRFHo$fdGWkSJ?d7{Et(zl=(X)HK>Axz66s3zRsH5fP{3`O2{nWYwa}oJKsNIQDav)-6y*Vj!1Y~;MGZL3zoh*7amWMp0)jV@xg(7b6CX; z7e!+uQs9m#jw+4}w!k}-871PQ0u^kxQ`EIgW|EwGf0I}46r1)RiA5s1* z#TDs^g5&(nlM)lcXIb6AwA^9C0JREI9F$^VX;6x9x9%1P)XQpmRkki$2~}nqX$w^T z)hLjuSm#tFIO88BiO=;P7q|y%#eXvH9rp|k>)d~&nfEM)v^-#%lMpeMR4_F$H4pZ& z%n5qd9%s86^l~NQ<;v|V4DtV6u>P$%0H`#ve{?d_FX{B>prt^knyCvk; zmz#Kxkhn)k;ZMl+NXW14Eb|_(KkWM7rhjXWhCer$K+RF}=l&1P=@n;D0kx?~SnuQC zH7d-31PxSU_)i7^KyNBi=g&T3Xe6>^B)w!LVrruBzt$MAcS%ZbK?)>n7632;z^jU? z#c)bm$5hz_C3l3@Aj^=A+M6J2AT5+hwEh|sf0F$KK51ciX zMB0XpICiQ@z-f=J)V#AtYXQ(hL8j>b9!Eg$oD_~u0Y|6yxA*@n z2N6jb5`pQTX+T7CCXhL)e{g|VdL`9xQs7DQfByVWa2ZNNF8>EEoRl8UMDPC`)Bl~} z|5D(8O94>CA(Y^cUb&P*2#S}10JpYr=~%6IQg|oJck-c3x^x>B^zu~sBn$u24)B2e zAQj3cPgO;lDn(UHG85zRZ$lEmhJhW$Ah70H$6nvR{q;s*JQ2B*ekA5kK z+W+~>;Q;^-Ap!6J-8k;w?^Lcy3ji|d&X%Bkp_%Ri0q`!C#Uucb?h?lKKcD9Rd+UEg z2*L9Mz^yV1dOwy4Xo{01E?t=1-V)G*g)-q#kTYQD+1oKo@z9g-OF8oZ)WpDsA8KM= z%J7v;cBMzz=rv)T1=Tbc&d0?Ss>!#>xh64pta|e={PC7$E~a_zFQbT%Tb8|&6^sO z)0vHvnJy06$@V zF=7p6L~TTk_>+{-J(Y@jo>7w*|RzMkt<%Gal8{ z){=p>1&~m2XZCJw?O}i08U0s+9G;yK|FEkUq_?Ng{2S0&fnGYhGZRlcaVl*aj}e zOIW)TY-=3Cc->axFR(uA^?D#JuoIxuxMby2*UDR-oPO3;*SgG^X(Ta>G6qZev0}rY zF-~>jdsZ2={a@IOML=LLP!_nHZ`TZ4fr3Nol6+faDKlW27{DpW05~3u5+9=}y+b)E z0~`JiV>&?}5){4RGYLDBE29cb04QeI*fUS80`aFq2{bQ3o-sQ8tD`hF-Dn&fan=E% zoIA|NR=kvnU$6>> zA0m#w0gTSBYIb+vMPW9xL$)N!2xaPM3l(@)it$s^$o!74f5wC z!~qZl;;+MbR!1QIUX0*${)`9CE=JCdMI{FH&#aKgEzLEZqSEJOC8RINTsYs^(=##u zY+-(?|LMjAz+`%ZUJWR#N9*s{8xtS z%q+WN$?NcsR1a5k*5y=9PREL1_%5z@typl1dw&T|&bg%28+x7I=$m062=AVj(doNE4 zgv*R)@gejFlRZ-!}T%{c=IXtC)dhG?#5 zLC>lk93tZPOy5hyWCZ~u)zr%J10N+eihaD)4Y~36#bmyT7g(q)~F#()6l1i${GOhnoNI-79I`=lAa3cHlb zg=do}I0#^O_fM>RkmoDt^`TeaE#SQV(QD-ntQ*e-^x77iFyQb+Dc%0EnGKz^El<4pu&>*WUm*v+nx zXLAD|-y1%O^bL3^!5aLa%4{WN>KlImMqJOhw3d6tE3?etV7Iu@2UUIKN3ktNIndDc z^9Rc!12qq0uPU-^C8yn9!Ji^uHsj3%NeN%^0j%im?h5XcdQ+oY@MqGpi#br*lJv$V z+jD$;4u#UsuNFj{4|B~8VyNbb+H&+`NSaD&yYXf@^}JyUSmlt5mkC@df^>ZHbYmw;e3rSGfv;fGbKMpI>Wg;7O!;cWIDn5L@hueqNV!O)Vj&g|8q5+5Hh;UOq$gT*^e<`_0H zIM8OQYu4#@0bi`op?rTc$W+RqXPyM`;fU>$W3+33_%rgRD@<(ish}jOeaM=3dvnOt z*E?(5g;Tc&H<9APR`)Zl=8&y;R4J9Ayl1j)=)SMt=F`<`@IY-lnsva)CHp*cFpZdg z^sLDGkz`7MV&U<0&Lny3xBa!dV+x_`V+yZ^KbP|JeYtlChUJPAKv>c639TlsrkbU134`RD$u8Q*c85q=M-u=CbgD*exOls zyf2s_aoz@&J~(b^82UkKQLnR}pvxVV z^^23cIt1$~P(wIY7m2TZwnj<%kp4)@&gq$hH(KHQ#^%ZD0*{@<$7;uY5phqdb{%I< z$-{l3j3~wjNn(Y*#5ydro6;?a6*P*-W955w79L!^#s&4CUA3H|4lUgu{C`U+c|1Wyp(KnJ-w{*ZfWyOo+3hdymr zeSYa#J&>p7DUlh}fX+hF$fhFt?YW52E&YM7{WLksfEM(SWX>WRr8riy5*_4KkE7Bi zD7<_8{#Km*Y|US+pF%?|#+N;sJ}ZfLeV zRKRdD!16Yivj|8`i6#5s(`pL=z6n9o38uOZ3+tH7?iu#LKy<4PSM1YL8=iD2;U|et z73T(C76`#Jq=c>9;p8|17@jaHkuiL(5BAk(5KP3-_wF!orNxqa10 zn3c_7Tu$kdeb2Y9T}_~7EM)P?#MWw49+-5mcX_UHhA$;OnUmm2@bIq15Qm$xFg=>R zkh6lh+j9*b-xu((JUe2$^hpX?`>os)yv6upyIPLJOx$9G9BAPs&IS-z&2n zy{lWY+skPpPLA>L$6eitv||;g2JFlxpP6?QUlFf=dB+qHXpuBQtVvxR;$BJ?}PT zEXa}i+#rrW*%7yVgP4tqQmIMFR}GrN0hMN@e-HTfmb$x4%#zL;r*!WGAzhWkIzJr| z3RAq9%*{#M@{>QcQV#)ZdOp|9)Tvc=;DERVczEX9M5^p!>bP<5a5QSYR^Bver|{k= z5;pTmt8=f^A}Mr!_u#b7+XM_HpGLp&qiDS;#IHrMa@*x8Y3{_BPVwUDCv+qG`(Ua0B2rHy&~U{>yCgeuxqz^@>sW%U>4);az4d zO>d*gQf*Vu>Qb;UecCA#lPnGh@Z;cOgdeMBye5VF>G83&c`)ddcr|4fR(o?cY27vZ z1l=s2%;WVju)f7Kjy3p4$}5@kmyXxol@yC~vmt zIso>uVyh{t^E9c#;_3q~^feOH%>WPvo#Kx|>Yj^@Y&7ZZV#(K%Iz*%+Mw+~cpX|c` z8ax9L6lGOsj{{;0j9ECczEV>D5T*y%LRdy^HYK`&D^Cn4Ft=FP);Ig@@V_HDq&Hws zMbf0TfQ|NG0{nf2ErVLZyX-|@DX**BEL7C+f(7NuWWDi?RA(%zvDrJ~4Gj|T>F+VBeawbN@*_bvoj~?h z=wwWMG7>Pf=%O=)*49$9g;zhZ$$5MJ80C@8=6wn1jUYiG2x-KDRwh!>1VN}A(vgdE zAvh8qjbQe61_THIz+xW_e$nYC`T~i(#nN!DAI z;kw>yHEl4C<6LmOW_4?YhL$?*_C;Dd!A??@?FQWoB%Nc0k3>xH%CVbWOs*mpN|VvA zSpc#W?WI6~zZ++ZVjwTqF4kbRmS@Pq?eP^l13FU7E}j_ z^+`(jXCFXgQ+$%~nxJ8ck3zugdx@X~C?|&o0KkFudz0}bj~!sX?A6*algT}F){T&M zstWB(08na04tezkv+QT$I09fjmG4U2(X*;yq)_sguzsCmoOxC0wp5eX2p+db7Urp5 z|LM@{WhdhX3WrwTX<+rbJ!X@SIi{BFwCcsFODfRQ=WSdg5GagQqjAmoR@JoQC>+Ot zv$l0A*}SA|oW4BpPF5kKpPp5>TQHVZb}5#}MI%vCFD@Ta4K=jK!tvDF5XU(A7s}FH zWY}o4Ry!J+lFH>&8Ffx6GDkW9PfPkN_K3&}k_-XZR#~3=#lM2ZJc|>ydCkIN_ zQb7UtrH4+e>JFjq97GSS3&K(Or2M`_1!yh78Uu4W=`yJs?PaqWRHya z>_~mQ?Tyv*AJ6;jwhf^9*wiFvS)H`sWcYIv9Q(b7rmWM$gqNBebK;d%lX@jhQ(?WF z^rLt(2BjDaRtkd@S|Z2ZB?#^uTVV}9>1(g*=Y#saH^ zY~*o9HUf|>S{h>D_7aKeD($LM!yAkZw85um^>Y~=ikJ1iTTPbml;XSv zV?d))a|C8tAaWeb$!(}>ym(bD0*aT_(9lb^sN=3Gu)2Ic*WBTg{Eyvg-n%_CbooDH zu=}dib7b_h_dgNYm%0vips!-4Ys=2{Q$lGVy<0n0LS$H7i`#rT#D1O0Nw|$z8=P5V z6lu5CYel1PH$I8!SQrBhBW>H-HA?(*{fmuC>Ppg-o9LHj?PBHpF0Z*0RIsY~Ld7qy zXaqMR99wui&s|HU4>iV;62l18jfg05aii4Vzu zIqplKcLah0!Y6JVY6>r5A%S%&dCwig&Eebl22b0u7riC~Kg2gq>v2rgwel!m=5&GS z*=s9gVFOyiI^kKIahS@1{>e8k2{r)i5TDl7=Fz&Pq$a9j;T-sezl5ANBxVp(=hDkn zZ&!iEl?*AnyQtrXAZIfneikurvX$t<35+t-;)HjBkYsmQTK-)@ymBB!RE^tel4BWz z7TjPG&c>>%w#7j|{UBKnr--KOV(ok5fJrd(7VW^%amm=h`HxNmmZ|sxeD&3O70Ck> z&b!Sv3MUsex`cRcJ3oVKDKD|mh(nz!xoG91_{v<-?+HXrIaz_?z_eN>!Lf@>LLFID zCQ#tno?9b#gQQ3?CSYq!^5Z)IQ%+w z1r(R)3zM;$jZ&gMXGFRMy2Jsa+i=GR6nFwQe2`uYUqTF+%yr>t<_s_@9C$)df?&cb z->Rpk?}d_RlU58)sg4O3g8@v4io>U@LlEat(;vnR-=i*4+hC6nDGZvAsU_}>5t2(- zos!o&-*BfMRnX~}+~TEU{l9{ zMhsY}CE?vko|c?u#>cz&jt=AkU9)BMnY3sHHr)HIY79^J%M8D!Wk>tkIcS(iRq&k0F1G~XZdM0T+5YKZ`D(B@lXtdP1 zPPE}f!rr|GH_xdo7{p4xan7}=BA`gbNc*D*o;0a~xpwzW#Bt*C9#L6IJgLb544`HN z2ExB`OM0Te8nXx05ZidO2ir3mBttA(^@)LhE)H`3>*C<-qgQJny&m1<%;2-7rw4m4 z=U;4Y9-M5fuIxvWwGz-0{`Qu#2H%ihh#MH)!yE)2C$|+BO70epw}d+8i;;1=x5_3v zO@`+NQgs_PF-n*&r#<)ON|>L`D7Vw>c zGCNYjfc3G-G!h(Kzg>(zNKo=Qkv&9VG^bJQu$|+B3Jw9`ZLaRoYtXIzY3ouzH-99K z9%;<_*_K{ZHB8DQ@R452RFymcV+>+5(e zLIr0fXFe@`kFxgfB6M;^wFqNu$(jzvT-7bgw;Z{Wg0$#496I%a1wK&Y0PIsOn3j|# z#cZmxN+x60i6}=UAR56b1I@-lS(N5^(%=xH8mwT_@$q11ZRk;6r5aG-3D^r!9nHht zp~Yj9<*e`-oV7W%kD!WUe>*4S4)LJdBS!z^X_^CnL91k49lyY7Hic*G@mCSsbjLqF z1{yx9vrM#V@PCc!xkWsJ@-g${B~i7h@q757h(rr&iuy1-lBOIUKc+?#yC%9x$D=9U zEJilvqQsTCpgc?r$Yq%91~xdwrX+7SNMup-oYbztfO{TJU9KFExUQMJq1^S2U03dX zPRBNw6E~z}l`ppqf3ijzohw9WK=d`w1^!mBhos)7poZV_jSkg<7k5t1iEQ-;n9ch` zvc~0~(&VIhK<}8+l<}#)nmfN4?z#kC#6Q3HMT?GlxXjwp2{n`C^5gt&vqjZulAMt~ zhgzcap*NHGn>?ane)|0*4Xs9!V2dV_ddB6+Lcs&o%qA8x@u7TsDH)m}F(Z`5c&dOM z4_%EoAW@i#l5Qa8b~c}LZRyj6pyA|r`f7>0ePTo@6_ZS4_~7s;4-(C&?e*)(8vXn%&hnVhq$`POBm?9qQPum`SGz3D=K3AdBf5aal{GUBA(syi z*G4o4F$WAEuoteVZh4=ad=(RU1Mc)GhFBu~in=!xSa+Np1+3Aohvy2p0f z#KH)QKJ5|S?DPbn%;*Za3PWNJwQ*x>gRw)9n`?zTde^+Ylc03(LBdx2&y)+Ax$1(R9?nn;TWOQZqjtT`P z7R?(Gt#*29lOX{l^bWl9tEZXt{A^7t(A!G^eimg3BXun#7QXC!1n%ES4eIto!dQAB z8UK38h-ebppJZc0UL*`bLQuLW%c zDo1LDr)pt8n>d|&8DyKSWT*5#OYOdSey@G`-WSUez;&dek0K>ra#0>12NXY%i8s~LX~p)W$276|tM@uP_ISRQxP;}?z2m@CzRoKe709=-rA+nO zH}>}5Ef##!d8-rKmb$t0SWVE_qOs!?r^>HM=y9PvPZ0+5AXN7!uEWZh5gcQlNxZC1RtTm|8)a=4$O`acV}H$UEBSY=y1>lt0P0sZNHG?ptnmDJ_wMuR_DX53*=ip)AX|i9yfBP~XoU$tstZHG zFW&@D%Pc4$azUI*69;A6XTeda^0qyV35Vo^V*MZ7T4QgPZJzlBF}secGkaCty&3BQ>Y2MIvI$VXUZcCBAaFt7$__IthrHN&MbyK2Q)oj9RgSe)3uM&ah zjb;x_O=(BV76WP9o)xnwsqS(wE6Kp%xQym%fhZ@-XI4eh7lGt9r6v*5!G~l5nN1Wb zf!WqPjR8^t#4jXB0ix!5x55gAkgOB~6K*7R3>hsM>aA)F(Xzrl1fIVt8a*d|U3HPH zD=;c^RoyJ6AJem81P}p^V)i;G2qv{aG=HMtstgpMPF9=c;iL!1fJpGTBXOj&uDSH# zl-#XSubS-KYyS4}=);BF^bc#^+{fGiJYX8bdG8+eK7o6{dD4iYd-KkGeW@Ou=P7Na z`r?jJRnJ>oK;MaPw!_i`(tS>{M0!%5n%xeFI$K)WYk8we+8*w@4~rfVY9W$93uAZg z(e|;#{eY?x2tMS-_>gBH%9!45(Tgdj?!;*R;J}{t`BTovKkg+UIAF1r_gRJWUl`ye z!@!8oTYUumh$vT#lB$}iiOX+tZTI(01dDP41}Gs(UAIJDRHGPkzFQu>NKCEZCE^JN zeQmt+gFW6iS))Ji-Eum7OPSwUS@KIFW>s@#n1tUpxYZA@xchuqcbYU8s;@ckJiB%{ z>=}d|VX7lJ)pbi&9OTn6Rb6P2O;PpIGE7T2XdJ`1Y|2@vDL^I+=cAswyE!o6xKyGc zRio{O>U=seizrWx8&pg9sC5gLDn3+UPWas92B6!_+b!GfcA?dj^z%~{G2E-g)+NCg zPNWN|C~2{Ga*ukIFXuk8iRi!HnoH6z5~;5V_(ROB5`dY+4hmi`Ox>Ih7uG_m%&HLr zh+())49uZfFXLZdUepocgmaPO`+!(0eqh740=B--y&7d#N%509Vzu-OY3m@YCzD~= z-}vS=sa~EH+6(m91|RG583EAU!jv>KpSp9|YrirEOKBnnhQ15tu2YybQ{!q8JlAhk znb_Ru8jzZ;j^`Gfe@LGe{#3#(K>#gb)(y+0=zsj!rzXhgg2kxz)4lad9_7;Vr^t3c zGpFOYj_eMIyzaVWQ7zMYu@; zT+EZprJ*F>`&M}s*U24|fnKK4$SyoYyq9xPT65_w6(9_YzYl5j|KMNQM$}+Q6LAAN zXa;oN5HB(B3udd*3~___APpU=%ie->{J>_`(~wg|2JvnaH=c9x!x}@L5ZWe61mKPa zu(YyWdI%}s`LgDOIGki0C^f+Jug&KBfcn1h^BFmBYvlir~^MyJ31vd zwM7atmGIx^AnCzE;euEIYlQ7xaRqR*%FyC92a{I1-#UUMP zhS&Q}MB=d3rKvf;v2igsM}@mjmoH3WPJ={<`Mp|%1d~i-u+`4maW<_=9#X{Cx9Q6{ zM(-i?wm2lmONU!R1!>I%Y>C#22FmVam$KPIHDz_2)7)&+c9Jo4X!T=ch&nu*3b}8;-{`=#4UL<#k_MLF0G(o^fy@@TGNgS}S zd6B{NyW3yEp5{3V1)jBvb_~Y^vzH~i-8UTFK?VS`rSDKyfMPAt2i!SKtHywi2yMA8 zH|1dboCTjE?t}Lc{JO-R&0Z8SbdeX@@5#d+=yTv{MEWhC>vs(iKwS+b)BzAA93UbDK_nUT z)yfL-#NeI(KerKY&omME6UJ~B-XQTwOqYIrXKiI=dAPNyuC}tSvZ1cFxwWOGbG@_W zRSafLd*#_lP4fKid|Aj1=klK7F9z!G=P6@k<(lViROO38xj$>Zp$+2qzn(@JreAC* zvgn*jPnxLA<5{HJ6_8q@0~o#>*eRXE19O>7Ky!Str=w$jBG)ZGOMr|oR(GetGn;6G zOlvUTE}<-|e44IZl`2qw<|Mj+xF_G|W798G{Uib>#Hed|3&3k}6B^6ayk4Qc)Uti^ z!D~@rkpBLe27<)ovCUv4gIhEnkHu5F&5{uePonJ-m5F+xLe)d;6k>RBgef^5fhG$H*120B8UMQ#@>g|WTG|*#8n~0 zHYEw#(Q5PsM--#M*@8s)4bzC=>y6b3=M<%E?`YwaqRCIxOQIh4NPeB@F=MY=wGx(m zCGwpsK}q)(FT5o?+px|~ClHBRQrmp=`1x22kp#OGU6+_nC1f5)Wa=Re#dCDyxDHtt zzg68)Thn+XmZ$5q)`iWJBrb`~C6zW61YVPF)kK|(<)^@C0d?YTrOslGNf7E3ND_4~ zeXbEv78*hK0B@l>R?Ms-)+FqH8v}@?fLf~$*yWk*!`M&yL**%+u#m#!MPWaB+qaaj zKaze@cpe_=SSBnfh|NoQIh;?5s0dZxS*Z%JiQxT|QNS>+>~o0laLF&Tndq_%#Oera z*~7$Kzj?rEnCu0eG$?TEwf8G9Z;^Rqr__Nv+$pO<$HE ztn8{m31lkNYeLZE>2hNL$E-_Q0_0BNDh2SUS5rjDh9}K(K1kl(t($qFyCk;xi%}o^ zZjKlaU|Ui$KE4H|XT|r4M#vC}BLM1UuJy*07<(~xzy|n5K%UTve~J4VDi{UsQs&br&&#R{?9~a z0;0W*KP4yRiAq>*&2d$XB&((M`ojhsRf02>Qd6C%M@VPVz$TL+)7(H2RGjpANbR08 zWR}_I;-d$9RkwrVMFq98)*(n@fcCvB5d}gJ6VE9>gqR5gJTXRP!@$9L1PBCl9{eycNo~HKc|q-T(9=E$Nia*WcBDwJetF zAkLWLX*47vXvz9EHZZRt*wtmVj=Zw2j+x1MHMOKkubYDM$=#gvI!`V^Zgv|BrVq}8 zv&6*i+>TFHe-W7X1kdSr5YUD<10rT_OR4MvPrO2LZ z;!afp$kec;F&tkER|gKx3_yT1eb!7dwkUgGETu2X0U}oUk`9e_i2|%QAi!gDIzVqtM6^aF-}s%HuC z*@nTSq;yr3&e6O#4-S3*j?S{fpc|b|3Ggza8wo^N_PAFUCr7C#heK0aCkAalZ17TF zuON0x-hy4R->HC6dKntckSDcpRNny zGZxc2AvwlEopzPeSpv^Lztc}BWVk+y|s4Ky3FC@(pa%=MRccC!Wcz@{x zl3p#bcDrm*8Ae&Mgid(UeG>HG@#9)&E^^X_XtC=^lTupRK+k1YyloBH3U|Vf>H9BT z$pF&YF|wMvPGZ=cST8ruk&BcO_}NHJrj8cF0%EB^37Gl!c(o6LsI`bE$|IrN0Y~Cr7P`3t$*_j{IKx0u>R# zuY_lMa%-wa%NZf1=g~zKY4SJihooDa+Pn=Xzh>8P;NDWBd=V!wt>jJpUca$kdjbVO zHbo^W2e9J^$3&n>Qfy{2=Ee%Kf3Z|X7C&Qc827Lkir+CoBI9RtKGhyM-KHyO`M!BE znwOW+;w_u`i1ky|J-pIISv;fBMA>~>QUnk5 zIGu?y3|Gg(FKy;Q%;X-te%vJw?}gF=n8kCXcsjBU@Q%ccyY~SV1b0)AxNTF~oO|v5 zDhfDkHg;xKJXe-;ayqKi^evG|NfJUjTJhr5(dXb-(hnMMGb>jxmb<-d(-m~P<2pYm zb^jf7b1q!YXf(CDX*rNbL>V<86>eRYkg&r(edcyxD{Uk3iLqA2 z8%OzmNO(}l0EGiyVbis_mx=wm0L9XK+hV1oW!eDsz@{t2iyY~XVky1tswFlae1Uizdnc#kTta} zq3WGi=Ix7;&>yNnXfuPfVJ^S~b zzw#>c(`0g(J)mf&`npa4=m>tHG$(muJ~89f#)U1$~-FQ)+bnKao`NiWkNgZ+Nb;@?#n0qEJf{r;^}HI)@&Y!~7JO*ZaO)4Gl)ihAub48j4dGQ76b5=ARIl zzr#7Js@Mum;Ahg2*Yr-~wiDfr%#N*yHri9+E|dT~^h1&Mb+SD8m_g07Q@+j(&}H@= z774ANk5zcW(w87BZ!=5H>@rEp;bD3?_j$0K`OIB)NueiHDwo5ZteQ$*^J4Xip<JIcMe^BI)hM%npmxF@4IkHARfUNv6D09ovVY@f;=`I4Aip&PVT)qC)fY%-M%1a z+owgq;_dWRKcIdyjPV*z=V!&FR9)z(RY^8{10}u|)jheM zF}f1ZM3l>cH&!desjR~QB6|uT3ZNL&f|P0WZuIh%NJqKOvVFsl$%7%2v5vySl=h!5 zDZIojGZmYwq4*p-9+I!T`0hbzknR?0XI7hN=5QBjoWlwEGWPCkrb}c*^y=dG&i4<( zkLJqfE!K61TZ1x2fAoCv;qVNuk!j}3vt#)&lWDmd{^=GEA^h})I|qH}tZ@TdRq3sL zoSja3+GXC@CYlE3$0q}2ZEttwVqnBJNZmt}7|w+OxE2Fb12*&l+WE}Olrs>#B9J=g zV}lQb9`dw|K#3JiD;n>-p)lwPxe0sru2ZmSm9W_}{cS;9*U&4pn8JUtU1b0Tlr46) z*(F_R41T8c^EcJ@ccU@wAElxNpX)QOe{Jw)fveCz+=%~WGW=%TF*jCLWki*4e5Ic! zhEt1{g2q_(q~*on<>mOmj4UwbUFE^iRsEI;W;s{6>)f!0dUDW*g8>L#_TI0iS2rLL z+Z3}%Hj=x?*g+fC9?neQe0)V)aQ#Xx+v-TCuqa3 zhxDkf_`MyN*bNcmN^a6#AJ%8X@-I)Wy)95bx%(nkI+&|Tx9l=nR^VJ(0OYn7w#r}o zW8C%6RFeVc4a7!XwM}?ZDD*`Q+Pid(2_E~xLrZVpROxaQu=NXLIwsUrkx4kIuX4qp zd;6<@BP^m{G?-hvj!3CBL@wTZ(p`PwQ}52xo_62VY%xLjQx$?b5i1aBqMO}D} zZHi-j@)|N7g>-HhIU(1GSwg=VFBZ=A zqO92a(H90Y<}2k;@l)n6$^LnRed~8uXZ#JmyQLXFFaQ3IcKaE5@sq zu2%*6TE9H_p8vh}=Zl7wA3_=lW_NOF?0ok`A1(5RTv4mp@GI$a0i%5VCw?=$%e(1a zn@|vcbo0ZfS-&C47mJhk3LY1fZRF)qZU6k4p*zQErG=TtwS{=dJU@%6KDTlA0i>+qTfSA-R{+I(MtOzWsrS2kwU%fCd2{`8t&eA$a^RM)HkTECif`A5iM59uY3c-JO;{Jv#bGJ_Tu7 z?s>IeL|l_{@5!aH>4O_mS(gua_l1ddSO{>t~uD)V?a=TNP51;6G z(X7gHQVGGgf3HbZ;aR~;@#p!b?|1t+H^-D|ZANjeN}N(cIV)YIK&0sneHN-~FG{Q8 z-ZBPRXwkB*j0y>oD#swEyYBm8V79zp__aKRX@r!pmsmHG(;j`>gZ+K^UyKbS0;;617Zu@Q=QmP z-p8C7u5NF2!+j?$R#1u8gOBrR2VR9;4*%{bNBC|#{hBd%zeq(TYS?c2<&*7xyVbC{ z9OR3s#IXm}1X_5Yr(0$dN4;b=xj2mhi6M!pD+Gb2I5~=ZuM_ zSLDiie;Y(ET|vGH)%$=U^<#gTU)JDXw$77YaZC8yO}Uq%_!?K4uW#pPNo5NumL{oC zON)(>3k{bR0#S}Wj7V&1>ne1>nygCI+a}9-U94X}-u6a8u-1n8G=Yn>%Q! zhxx$l2E6uCVs}%>TjvRPouCl+Q_Y z;~~bk92yLC#P2Dpm)ACN11wiMzvTtWF<9^JTsP-z*SwN!z5C+hsLr>Nhg7O;O9J6_ zRjwa0B@dp{H1`Z=e_zijG&+dTxOegGRI6mjPsL5tB=SXSQG7_30w5g{5@@`_tFS`Z z{Cnr#ieB)ukW$IY^_%7{!7n3Rb9?RpVULdw&tYZ@hKuI!zNPy4?3}podt3bN4-PUM zP<3^`80vU(A_QX#40vqvXi}a%h}Dz%!DgQ6qsy^?rp>K<`dY8hZ82GcLg^Jt`p^ZbR>x+Iz}EGTr=M>5f~Ye zf=O+f-&q^p%_)GiZLT`q)V;RTSwh0^TH;PtJIob@BDvj=T{R~M2Y#8z3vmEaZ@QH9 z%B4YKKO25ew<7JyJoD~RYVn8)#mo3OK~np={a3F(#dqJGe(!VR%g-#uyE!Z0FKpkm z8+??p#k-!PNBDWi$(z9+Uw2gYU0=4K?&O!N@XOAf?DtdWV>Jg~cip4SxJ5*LV&>{I zeR^Bj??sp~EUWdUL*1*W`U4fl#Jb`!nJ4_`_ih9Vv*7cbt=43_m+r_}{~*-smA*YC z`}}j(f3u6oy5E3bh1D!eABFh_eQa_=pZ;djp~1)(ikZqSr^YXXk5bnB3!EY;W?uYo zS4Btw)C)UZTI?4Gj+YrCBQ0_--2M5r{buMMGO4G%@THWlvGK~o-@h+h+57!5IO6e> z$lo{D_afH!ZU&3@=$N_OdDV8)&Ub8J;?9%bkB{Mm;a|K8P{Dy>iDsDXaUHa0k>(iQ>`SR}X R6&qWKvw-TgI9&_D{|8%SJ-Gk? literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/f_sneeze.ogg b/sound/effects/mob_effects/f_sneeze.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e6c4a49ade829909e818884364156411eeb6b732 GIT binary patch literal 17841 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 literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/m_cougha.ogg b/sound/effects/mob_effects/m_cougha.ogg new file mode 100644 index 0000000000000000000000000000000000000000..146beefdf87398050c4d118ecac8d5c83e405c26 GIT binary patch literal 22585 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 literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/m_machine_cougha.ogg b/sound/effects/mob_effects/m_machine_cougha.ogg new file mode 100644 index 0000000000000000000000000000000000000000..3e803f64b1e910f2ec71e3cfbcb614f935e21adb GIT binary patch literal 24159 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 YB{ctM4_+^QcB#LHPQ?E+zW-wX0a*tap#T5? literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/m_machine_coughb.ogg b/sound/effects/mob_effects/m_machine_coughb.ogg new file mode 100644 index 0000000000000000000000000000000000000000..d12870709228625cce1428c654dee899186a6985 GIT binary patch literal 23642 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 literal 0 HcmV?d00001 diff --git a/sound/effects/mob_effects/sneeze.ogg b/sound/effects/mob_effects/sneeze.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e7587bab20fa3e3c1c415ff47f64244955e07af9 GIT binary patch literal 19565 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 UoxQD^ZQ|CCNoF5#OV literal 0 HcmV?d00001 diff --git a/sound/voice/shriekcough.ogg b/sound/voice/shriekcough.ogg new file mode 100644 index 0000000000000000000000000000000000000000..15dc2e3873cbdadab627d42d786cb1368e02c0fe GIT binary patch literal 12101 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 VD^_Q`J@L8c?$EOGm%mtp{{x!-=m-D+ literal 0 HcmV?d00001 diff --git a/sound/voice/shrieksneeze.ogg b/sound/voice/shrieksneeze.ogg new file mode 100644 index 0000000000000000000000000000000000000000..9b1a5d1cca7358bb03a4dc45298215b51881c160 GIT binary patch literal 11882 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 NSEhl$qoQ%S{{wT&d&K|% literal 0 HcmV?d00001