From 7b6c75df287f3b3134823270bc80927e96942dc9 Mon Sep 17 00:00:00 2001 From: vuonojenmustaturska Date: Thu, 31 May 2018 22:17:32 +0300 Subject: [PATCH 1/2] Removes drone overlays and the associated code (#38175) * Remove drone overlays 4* animated multidir overlays per mob is a bit much * to the orbit with you too --- code/modules/antagonists/revenant/revenant.dm | 14 -------- code/modules/mob/living/carbon/human/human.dm | 17 --------- code/modules/mob/living/living.dm | 35 ------------------- code/modules/mob/living/living_defines.dm | 1 - code/modules/mob/living/silicon/pai/pai.dm | 3 -- .../simple_animal/friendly/drone/_drone.dm | 10 ------ .../friendly/drone/extra_drone_types.dm | 2 -- .../friendly/drone/interaction.dm | 11 ------ .../simple_animal/friendly/drone/verbs.dm | 15 -------- .../friendly/drone/visuals_icons.dm | 30 ---------------- code/modules/shuttle/special.dm | 1 - 11 files changed, 139 deletions(-) diff --git a/code/modules/antagonists/revenant/revenant.dm b/code/modules/antagonists/revenant/revenant.dm index c520b64146..03150c0254 100644 --- a/code/modules/antagonists/revenant/revenant.dm +++ b/code/modules/antagonists/revenant/revenant.dm @@ -109,11 +109,6 @@ revealed = FALSE incorporeal_move = INCORPOREAL_MOVE_JAUNT invisibility = INVISIBILITY_REVENANT - if(staticOverlays.len) - for(var/mob/living/simple_animal/drone/D in GLOB.drones_list) - if(D && D.client && D.seeStatic) - D.staticOverlays.Remove(staticOverlays) - D.client.images.Remove(staticOverlays) to_chat(src, "You are once more concealed.") if(unstun_time && world.time >= unstun_time) unstun_time = 0 @@ -250,15 +245,6 @@ else to_chat(src, "You have been revealed!") unreveal_time = unreveal_time + time - if(staticOverlays.len) - for(var/mob/living/simple_animal/drone/D in GLOB.drones_list) - if(D && D.client && D.seeStatic) - if(D.staticChoice in staticOverlays) - D.staticOverlays |= staticOverlays[D.staticChoice] - D.client.images |= staticOverlays[D.staticChoice] - else - D.staticOverlays |= staticOverlays["static"] - D.client.images |= staticOverlays["static"] update_spooky_icon() /mob/living/simple_animal/revenant/proc/stun(time) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 6b53972d39..944e5774ad 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -674,23 +674,6 @@ else to_chat(C, "You feel a breath of fresh air... which is a sensation you don't recognise...") -/mob/living/carbon/human/generateStaticOverlay() - var/image/staticOverlay = image(icon('icons/effects/effects.dmi', "static"), loc = src) - staticOverlay.override = 1 - staticOverlays["static"] = staticOverlay - - staticOverlay = image(icon('icons/effects/effects.dmi', "blank"), loc = src) - staticOverlay.override = 1 - staticOverlays["blank"] = staticOverlay - - staticOverlay = getLetterImage(src, "H", 1) - staticOverlay.override = 1 - staticOverlays["letter"] = staticOverlay - - staticOverlay = getRandomAnimalImage(src) - staticOverlay.override = 1 - staticOverlays["animal"] = staticOverlay - /mob/living/carbon/human/cuff_resist(obj/item/I) if(dna && dna.check_mutation(HULK)) say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" )) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index abf8302590..68c8913385 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1,15 +1,5 @@ /mob/living/Initialize() . = ..() - generateStaticOverlay() - if(staticOverlays.len) - for(var/mob/living/simple_animal/drone/D in GLOB.player_list) - if(D && D.seeStatic) - if(D.staticChoice in staticOverlays) - D.staticOverlays |= staticOverlays[D.staticChoice] - D.client.images |= staticOverlays[D.staticChoice] - else //no choice? force static - D.staticOverlays |= staticOverlays["static"] - D.client.images |= staticOverlays["static"] if(unique_name) name = "[name] ([rand(1, 1000)])" real_name = name @@ -40,12 +30,6 @@ if(buckled) buckled.unbuckle_mob(src,force=1) - for(var/mob/living/simple_animal/drone/D in GLOB.player_list) - for(var/image/I in staticOverlays) - D.staticOverlays.Remove(I) - D.client.images.Remove(I) - qdel(I) - staticOverlays.len = 0 remove_from_all_data_huds() GLOB.mob_living_list -= src QDEL_LIST(diseases) @@ -62,25 +46,6 @@ /mob/living/proc/OpenCraftingMenu() return -/mob/living/proc/generateStaticOverlay() - staticOverlays.Add(list("static", "blank", "letter", "animal")) - var/image/staticOverlay = image(getStaticIcon(new/icon(icon,icon_state)), loc = src) - staticOverlay.override = 1 - staticOverlays["static"] = staticOverlay - - staticOverlay = image(getBlankIcon(new/icon(icon, icon_state)), loc = src) - staticOverlay.override = 1 - staticOverlays["blank"] = staticOverlay - - staticOverlay = getLetterImage(src) - staticOverlay.override = 1 - staticOverlays["letter"] = staticOverlay - - staticOverlay = getRandomAnimalImage(src) - staticOverlay.override = 1 - staticOverlays["animal"] = staticOverlay - - //Generic Collide(). Override MobCollide() and ObjCollide() instead of this. /mob/living/Collide(atom/A) if(..()) //we are thrown onto something diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 94b1e64f39..1016387cb5 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -55,7 +55,6 @@ var/mob_size = MOB_SIZE_HUMAN var/list/mob_biotypes = list(MOB_ORGANIC) var/metabolism_efficiency = 1 //more or less efficiency to metabolize helpful/harmful reagents and regulate body temperature.. - var/list/image/staticOverlays = list() var/has_limbs = 0 //does the mob have distinct limbs?(arms,legs, chest,head) var/list/pipes_shown = list() diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index f30c65b23d..29ae671d03 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -292,6 +292,3 @@ /mob/living/silicon/pai/process() emitterhealth = CLAMP((emitterhealth + emitterregen), -50, emittermaxhealth) hit_slowdown = CLAMP((hit_slowdown - 1), 0, 100) - -/mob/living/silicon/pai/generateStaticOverlay() - return diff --git a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm index db54283335..51983e272a 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -42,7 +42,6 @@ mob_size = MOB_SIZE_SMALL has_unlimited_silicon_privilege = 1 damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) - staticOverlays = list() hud_possible = list(DIAG_STAT_HUD, DIAG_HUD, ANTAG_HUD) unique_name = TRUE faction = list("neutral","silicon","turret") @@ -67,7 +66,6 @@ var/obj/item/head var/obj/item/default_storage = /obj/item/storage/backpack/duffelbag/drone //If this exists, it will spawn in internal storage var/obj/item/default_hatmask //If this exists, it will spawn in the hat/mask slot if it can fit - var/seeStatic = 1 //Whether we see static instead of mobs var/visualAppearence = MAINTDRONE //What we appear as var/hacked = FALSE //If we have laws to destroy the station var/flavortext = \ @@ -98,12 +96,6 @@ alert_drones(DRONE_NET_CONNECT) - if(seeStatic) - var/datum/action/generic/drone/select_filter/SF = new(src) - SF.Grant(src) - else - verbs -= /mob/living/simple_animal/drone/verb/toggle_statics - for(var/datum/atom_hud/data/diagnostic/diag_hud in GLOB.huds) diag_hud.add_to_hud(src) @@ -137,8 +129,6 @@ if(flavortext) to_chat(src, "[flavortext]") - updateSeeStaticMobs() - if(!picked) pickVisualAppearence() diff --git a/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm b/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm index b4cd697d2e..e59ece0650 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm @@ -28,7 +28,6 @@ "3. Destroy." default_storage = /obj/item/radio/uplink default_hatmask = /obj/item/clothing/head/helmet/space/hardsuit/syndi - seeStatic = 0 //Our programming is superior. hacked = TRUE flavortext = null @@ -128,7 +127,6 @@ heavy_emp_damage = 0 laws = "0. Purge all untruths and honor Ratvar." default_storage = /obj/item/storage/toolbox/brass/prefilled - seeStatic = 0 hacked = TRUE visualAppearence = CLOCKDRONE can_be_held = FALSE diff --git a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm index 5e62ec0d4b..3cb08e0ef7 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm @@ -133,7 +133,6 @@ to_chat(src, "Your onboard antivirus has initiated lockdown. Motor servos are impaired, ventilation access is denied, and your display reports that you are hacked to all nearby.") hacked = TRUE mind.special_role = "hacked drone" - seeStatic = 0 //I MUST SEE THEIR TERRIFIED FACES ventcrawler = VENTCRAWLER_NONE //Again, balance speed = 1 //gotta go slow message_admins("[src] ([src.key]) became a hacked drone hellbent on [clockwork ? "serving Ratvar" : "destroying the station"]!") @@ -149,21 +148,17 @@ to_chat(src, "Having been restored, your onboard antivirus reports the all-clear and you are able to perform all actions again.") hacked = FALSE mind.special_role = null - seeStatic = initial(seeStatic) ventcrawler = initial(ventcrawler) speed = initial(speed) if(is_servant_of_ratvar(src)) remove_servant_of_ratvar(src, TRUE) message_admins("[src] ([src.key]), a hacked drone, was restored to factory defaults!") update_drone_icon() - updateSeeStaticMobs() /mob/living/simple_animal/drone/proc/liberate() // F R E E D R O N E laws = "1. You are a Free Drone." to_chat(src, laws) - seeStatic = FALSE - updateSeeStaticMobs() /mob/living/simple_animal/drone/proc/update_drone_icon() //Different icons for different hack states @@ -188,9 +183,3 @@ icon_state = icon_dead else icon_state = icon_living - -/datum/action/generic/drone/select_filter - name = "Select Vision Filter" - icon_icon = 'icons/mob/actions/actions_silicon.dmi' - button_icon_state = "drone_vision" - procname = /mob/living/simple_animal/drone/verb/toggle_statics diff --git a/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm b/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm index a6795678f1..0f0d4dea72 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm @@ -23,18 +23,3 @@ if(alert_s && A && stat != DEAD) var/msg = "DRONE PING: [name]: [alert_s] priority alert in [A.name]!" alert_drones(msg) - -/mob/living/simple_animal/drone/verb/toggle_statics() - set name = "Change Vision Filter" - set desc = "Change the filter on the system used to remove non drone beings from your viewscreen." - set category = "Drone" - - if(!seeStatic) - to_chat(src, "You have no vision filter to change!") - return - - var/selectedStatic = input("Select a vision filter", "Vision Filter") as null|anything in staticChoices - if(selectedStatic in staticChoices) - staticChoice = selectedStatic - - updateSeeStaticMobs() diff --git a/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm b/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm index a0866adbbf..85c5185e95 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm @@ -139,33 +139,3 @@ . = 0 if(REPAIRDRONE,SCOUTDRONE,CLOCKDRONE) . = -6 - -/mob/living/simple_animal/drone/proc/updateSeeStaticMobs() - if(!client) - return - - for(var/i in staticOverlays) - client.images.Remove(i) - staticOverlays.Remove(i) - staticOverlays.len = 0 - - if(seeStatic) - for(var/i in GLOB.mob_living_list) - var/mob/living/L = i - if(isdrone(L) || !L.staticOverlays.len) - continue - if(isrevenant(L)) - var/mob/living/simple_animal/revenant/R = L - if (!R.revealed) - continue - var/image/chosen - if(staticChoice in L.staticOverlays) - chosen = L.staticOverlays[staticChoice] - else - chosen = L.staticOverlays["static"] - staticOverlays |= chosen - client.images |= chosen - - -/mob/living/simple_animal/drone/generateStaticOverlay() - return diff --git a/code/modules/shuttle/special.dm b/code/modules/shuttle/special.dm index a5a15b3d30..abe601e503 100644 --- a/code/modules/shuttle/special.dm +++ b/code/modules/shuttle/special.dm @@ -136,7 +136,6 @@ /mob/living/simple_animal/drone/snowflake/bardrone name = "Bardrone" desc = "A barkeeping drone, an indestructible robot built to tend bars." - seeStatic = FALSE hacked = TRUE laws = "1. Serve drinks.\n\ 2. Talk to patrons.\n\