diff --git a/code/WorkInProgress/virus2/base.dm b/code/WorkInProgress/virus2/base.dm index f0d6f4d78c0..6676ac73bec 100644 --- a/code/WorkInProgress/virus2/base.dm +++ b/code/WorkInProgress/virus2/base.dm @@ -1,6 +1,6 @@ /obj/virus // a virus instance that is placed on the map, moves, and infects - invisibility = 100 + invisibility = INVISIBILITY_LEVEL_ONE00 var/datum/disease2/disease diff --git a/code/defines/area/Space Station 13 areas.dm b/code/defines/area/Space Station 13 areas.dm index 5ad38fda35a..0f3e6cdbef7 100644 --- a/code/defines/area/Space Station 13 areas.dm +++ b/code/defines/area/Space Station 13 areas.dm @@ -26,6 +26,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station icon_state = "unknown" layer = 10 mouse_opacity = 0 + invisibility = INVISIBILITY_LIGHTING var/lightswitch = 1 var/area_lights_luminosity = 9 //This gets assigned at area creation. It is used to determine how bright the lights in an area should be. At the time of writing the value that it gets assigned is rand(6,9) - only used for light tubes diff --git a/code/defines/mob/living/living.dm b/code/defines/mob/living/living.dm index 8e6d241673a..93f4bfd8782 100644 --- a/code/defines/mob/living/living.dm +++ b/code/defines/mob/living/living.dm @@ -6,3 +6,4 @@ var/now_pushing = null var/cameraFollow = null var/tod = null // Time of death + see_invisible = SEE_INVISIBLE_LIVING \ No newline at end of file diff --git a/code/game/asteroid/artifacts.dm b/code/game/asteroid/artifacts.dm index a955848eff8..7f4fa0ff004 100644 --- a/code/game/asteroid/artifacts.dm +++ b/code/game/asteroid/artifacts.dm @@ -82,7 +82,7 @@ var/global/list/spawned_surprises = list() user.mutations.Add(XRAY) user.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS) user.see_in_dark = 8 - user.see_invisible = 2 + user.see_invisible = SEE_INVISIBLE_LEVEL_TWO if (!(COLD_RESISTANCE in user.mutations)) user.mutations.Add(COLD_RESISTANCE) diff --git a/code/game/dna.dm b/code/game/dna.dm index 3286a1d26ca..a671248db25 100644 --- a/code/game/dna.dm +++ b/code/game/dna.dm @@ -425,7 +425,7 @@ M.mutations = list() M.see_in_dark = 2 - M.see_invisible = 0 + M.see_invisible = SEE_INVISIBLE_LIVING if (isblockon(getblock(M.dna.struc_enzymes, 1,3),1)) M.disabilities |= NEARSIGHTED @@ -460,7 +460,7 @@ M << "\blue The walls suddenly disappear." M.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS) M.see_in_dark = 8 - M.see_invisible = 2 + M.see_invisible = SEE_INVISIBLE_LEVEL_TWO M.mutations.Add(XRAY) if (isblockon(getblock(M.dna.struc_enzymes, 9,3),9)) M.disabilities |= NERVOUS diff --git a/code/game/gamemodes/events/ninja_equipment.dm b/code/game/gamemodes/events/ninja_equipment.dm index 0a92cba6dcb..ad152e5cb6f 100644 --- a/code/game/gamemodes/events/ninja_equipment.dm +++ b/code/game/gamemodes/events/ninja_equipment.dm @@ -1266,7 +1266,7 @@ ________________________________________________________________________________ U << "Switching mode to Thermal Scanner." if(2) mode=3 - U.see_invisible = 0 + U.see_invisible = SEE_INVISIBLE_LIVING U.sight &= ~SEE_MOBS U << "Switching mode to Meson Scanner." if(3) diff --git a/code/game/gamemodes/events/space_ninja.dm b/code/game/gamemodes/events/space_ninja.dm index 3dde2854cd3..f849bf77356 100644 --- a/code/game/gamemodes/events/space_ninja.dm +++ b/code/game/gamemodes/events/space_ninja.dm @@ -581,7 +581,7 @@ As such, it's hard-coded for now. No reason for it not to be, really. //Allows the mob to grab a stealth icon. /mob/proc/NinjaStealthActive(atom/A)//A is the atom which we are using as the overlay. - invisibility = 2//Set ninja invis to 2. + invisibility = INVISIBILITY_LEVEL_TWO//Set ninja invis to 2. var/icon/opacity_icon = new(A.icon, A.icon_state) var/icon/alpha_mask = getIconMask(src) var/icon/alpha_mask_2 = new('icons/effects/effects.dmi', "at_shield1") diff --git a/code/game/machinery/Beacon.dm b/code/game/machinery/Beacon.dm index 8f528ecdb2a..7000471dfff 100644 --- a/code/game/machinery/Beacon.dm +++ b/code/game/machinery/Beacon.dm @@ -15,7 +15,7 @@ ..() var/turf/T = loc Beacon = new /obj/item/device/radio/beacon - Beacon.invisibility = 100 + Beacon.invisibility = INVISIBILITY_MAXIMUM Beacon.loc = T hide(T.intact) @@ -44,7 +44,7 @@ if(!Beacon) var/turf/T = loc Beacon = new /obj/item/device/radio/beacon - Beacon.invisibility = 100 + Beacon.invisibility = INVISIBILITY_MAXIMUM Beacon.loc = T if(Beacon) if(Beacon.loc != loc) diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 17e8159ba13..535c3fea002 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -15,7 +15,7 @@ icon_state = "grey_target_prism" anchored = 1 layer = 3 - invisibility = 2 // the turret is invisible if it's inside its cover + invisibility = INVISIBILITY_LEVEL_TWO // the turret is invisible if it's inside its cover density = 1 use_power = 1 // this turret uses and requires power idle_power_usage = 50 // when inactive, this turret takes up constant 50 Equipment power @@ -326,7 +326,7 @@ Status: []
"}, if(!anchored) anchored = 1 - invisibility = 2 + invisibility = INVISIBILITY_LEVEL_TWO icon_state = "[lasercolor]grey_target_prism" user << "You secure the exterior bolts on the turret." cover=new/obj/machinery/porta_turret_cover(src.loc) // create a new turret. While this is handled in process(), this is to workaround a bug where the turret becomes invisible for a split second @@ -1032,7 +1032,7 @@ Status: []
"}, if(!Parent_Turret.anchored) Parent_Turret.anchored = 1 - Parent_Turret.invisibility = 2 + Parent_Turret.invisibility = INVISIBILITY_LEVEL_TWO Parent_Turret.icon_state = "grey_target_prism" user << "You secure the exterior bolts on the turret." else diff --git a/code/game/machinery/turrets.dm b/code/game/machinery/turrets.dm index 5c53b407975..b1b8c71b8f9 100644 --- a/code/game/machinery/turrets.dm +++ b/code/game/machinery/turrets.dm @@ -44,7 +44,7 @@ var/enabled = 1 anchored = 1 layer = 3 - invisibility = 2 + invisibility = INVISIBILITY_LEVEL_TWO density = 1 var/lasers = 0 var/lasertype = 1 @@ -251,7 +251,7 @@ src.cover.icon_state = "turretCover" spawn(10) if (popping==-1) - invisibility = 2 + invisibility = INVISIBILITY_LEVEL_TWO popping = 0 /obj/machinery/turret/bullet_act(var/obj/item/projectile/Proj) diff --git a/code/game/magic/cultist/runes.dm b/code/game/magic/cultist/runes.dm index 893717d067a..8b9fd520e86 100644 --- a/code/game/magic/cultist/runes.dm +++ b/code/game/magic/cultist/runes.dm @@ -206,7 +206,7 @@ var/list/sacrificed = list() usr << "\red The world beyond flashes your eyes but disappears quickly, as if something is disrupting your vision." else usr << "\red The world beyond opens to your eyes." - usr.see_invisible = 15 + usr.see_invisible = SEE_INVISIBLE_OBSERVER usr.seer = 1 return return fizzle() @@ -411,7 +411,7 @@ var/list/sacrificed = list() D.visible_message("\red [D] slowly dissipates into dust and bones.", \ "\red You feel pain, as bonds formed between your soul and this homunculus break.", \ "\red You hear faint rustle.") - ghost.invisibility = 10 + ghost.invisibility = INVISIBILITY_OBSERVER ghost.key = D.key D.dust() return diff --git a/code/game/objects/devices/scanners.dm b/code/game/objects/devices/scanners.dm index c57e92fb3e8..ce30397a0ce 100644 --- a/code/game/objects/devices/scanners.dm +++ b/code/game/objects/devices/scanners.dm @@ -58,7 +58,7 @@ MASS SPECTROMETER M.invisibility = 0 spawn(2) if(M) - M.invisibility = 2 + M.invisibility = INVISIBILITY_LEVEL_TWO /obj/item/device/healthanalyzer diff --git a/code/game/objects/grenades/chem_grenade.dm b/code/game/objects/grenades/chem_grenade.dm index c5c4069ac44..7fbda2b62da 100644 --- a/code/game/objects/grenades/chem_grenade.dm +++ b/code/game/objects/grenades/chem_grenade.dm @@ -204,7 +204,7 @@ src.reagents.reaction(A, 1, 10) - invisibility = 100 //Why am i doing this? + invisibility = INVISIBILITY_MAXIMUM //Why am i doing this? spawn(50) //To make sure all reagents can work del(src) //correctly before deleting the grenade. else diff --git a/code/modules/chemical/Chemistry-Tools.dm b/code/modules/chemical/Chemistry-Tools.dm index 3ca15fafc07..680b92c97ed 100644 --- a/code/modules/chemical/Chemistry-Tools.dm +++ b/code/modules/chemical/Chemistry-Tools.dm @@ -238,7 +238,7 @@ src.reagents.reaction(A, 1, 10) - invisibility = 100 //Why am i doing this? + invisibility = INVISIBILITY_LEVEL_ONE00 //Why am i doing this? spawn(50) //To make sure all reagents can work del(src) //correctly before deleting the grenade. else diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 2f51aa39311..5db176da464 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -1,7 +1,7 @@ /mob/dead/observer/New(mob/body, var/can_reenter_corpse = 1) - invisibility = 10 + invisibility = INVISIBILITY_OBSERVER sight |= SEE_TURFS | SEE_MOBS | SEE_OBJS | SEE_SELF - see_invisible = 15 + see_invisible = SEE_INVISIBLE_OBSERVER see_in_dark = 100 verbs += /mob/dead/observer/proc/dead_tele stat = DEAD @@ -235,3 +235,12 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp /mob/dead/observer/add_memory() set hidden = 1 src << "\red You are dead! You have no mind to store memory!" + +/mob/dead/observer/verb/toggle_darkness() + set name = "Toggle Darkness" + set category = "Ghost" + + if (see_invisible == SEE_INVISIBLE_OBSERVER_NOLIGHTING) + see_invisible = SEE_INVISIBLE_OBSERVER + else + see_invisible = SEE_INVISIBLE_OBSERVER_NOLIGHTING \ No newline at end of file diff --git a/code/modules/mob/living/blob/blob.dm b/code/modules/mob/living/blob/blob.dm index 1d81426c8c1..e49c166f1b2 100644 --- a/code/modules/mob/living/blob/blob.dm +++ b/code/modules/mob/living/blob/blob.dm @@ -5,7 +5,7 @@ icon_state = "blob_spore_temp" pass_flags = PASSBLOB see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO var/ghost_name = "Unknown" var/creating_blob = 0 diff --git a/code/modules/mob/living/carbon/alien/humanoid/life.dm b/code/modules/mob/living/carbon/alien/humanoid/life.dm index ff3b8283c66..a501db763fd 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life.dm @@ -453,13 +453,13 @@ sight |= SEE_MOBS sight |= SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (stat != 2) sight |= SEE_MOBS sight &= ~SEE_TURFS sight &= ~SEE_OBJS see_in_dark = 4 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO if (sleep) sleep.icon_state = text("sleep[]", sleeping) if (rest) rest.icon_state = text("rest[]", resting) diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm index 991f0de09eb..25bd39f3f7c 100644 --- a/code/modules/mob/living/carbon/alien/larva/life.dm +++ b/code/modules/mob/living/carbon/alien/larva/life.dm @@ -377,13 +377,13 @@ sight |= SEE_MOBS sight |= SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (stat != 2) sight |= SEE_MOBS sight &= ~SEE_TURFS sight &= ~SEE_OBJS see_in_dark = 4 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO if (sleep) sleep.icon_state = text("sleep[]", sleeping) if (rest) rest.icon_state = text("rest[]", resting) diff --git a/code/modules/mob/living/carbon/brain/death.dm b/code/modules/mob/living/carbon/brain/death.dm index 5c57f16d106..f7eb90cbbd6 100644 --- a/code/modules/mob/living/carbon/brain/death.dm +++ b/code/modules/mob/living/carbon/brain/death.dm @@ -9,7 +9,7 @@ if(blind) blind.layer = 0 sight |= SEE_TURFS|SEE_MOBS|SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO tod = worldtime2text() //weasellos time of death patch if(mind) mind.store_memory("Time of death: [tod]", 0) //mind. ? diff --git a/code/modules/mob/living/carbon/brain/life.dm b/code/modules/mob/living/carbon/brain/life.dm index d518de37bd0..6ce3bd9b856 100644 --- a/code/modules/mob/living/carbon/brain/life.dm +++ b/code/modules/mob/living/carbon/brain/life.dm @@ -216,13 +216,13 @@ sight |= SEE_MOBS sight |= SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (stat != 2) sight &= ~SEE_TURFS sight &= ~SEE_MOBS sight &= ~SEE_OBJS see_in_dark = 2 - see_invisible = 0 + see_invisible = SEE_INVISIBLE_LIVING if (sleep) sleep.icon_state = text("sleep[]", sleeping) if (rest) rest.icon_state = text("rest[]", resting) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 92c350d7273..783c66c3996 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -801,28 +801,28 @@ if( stat == DEAD ) sight |= (SEE_TURFS|SEE_MOBS|SEE_OBJS) see_in_dark = 8 - if(!druggy) see_invisible = 2 + if(!druggy) see_invisible = SEE_INVISIBLE_LEVEL_TWO if(healths) healths.icon_state = "health7" //DEAD healthmeter else sight &= ~(SEE_TURFS|SEE_MOBS|SEE_OBJS) switch(mutantrace) if("lizard","metroid") see_in_dark = 3 - see_invisible = 1 + see_invisible = SEE_INVISIBLE_LEVEL_ONE else see_in_dark = 2 if(XRAY in mutations) sight |= SEE_TURFS|SEE_MOBS|SEE_OBJS see_in_dark = 8 - if(!druggy) see_invisible = 2 + if(!druggy) see_invisible = SEE_INVISIBLE_LEVEL_TWO if(seer) var/obj/effect/rune/R = locate() in loc if(R && R.word1 == wordsee && R.word2 == wordhell && R.word3 == wordjoin) - see_invisible = 15 + see_invisible = SEE_INVISIBLE_OBSERVER else - see_invisible = 0 + see_invisible = SEE_INVISIBLE_LIVING seer = 0 if(istype(wear_mask, /obj/item/clothing/mask/gas/voice/space_ninja)) @@ -835,30 +835,30 @@ target_list += target if(target_list.len)//Everything else is handled by the ninja mask proc. O.assess_targets(target_list, src) - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_LIVING if(1) see_in_dark = 5 - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_LIVING if(2) sight |= SEE_MOBS - if(!druggy) see_invisible = 2 + if(!druggy) see_invisible = SEE_INVISIBLE_LEVEL_TWO if(3) sight |= SEE_TURFS - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_LIVING if(glasses) if(istype(glasses, /obj/item/clothing/glasses/meson)) sight |= SEE_TURFS - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_MINIMUM else if(istype(glasses, /obj/item/clothing/glasses/night)) see_in_dark = 5 - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_MINIMUM else if(istype(glasses, /obj/item/clothing/glasses/thermal)) sight |= SEE_MOBS - if(!druggy) see_invisible = 2 + if(!druggy) see_invisible = SEE_INVISIBLE_MINIMUM else if(istype(glasses, /obj/item/clothing/glasses/material)) sight |= SEE_OBJS - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_MINIMUM /* HUD shit goes here, as long as it doesn't modify sight flags */ // The purpose of this is to stop xray and w/e from preventing you from using huds -- Love, Doohl @@ -868,18 +868,18 @@ if(istype(glasses, /obj/item/clothing/glasses/sunglasses/sechud)) var/obj/item/clothing/glasses/sunglasses/sechud/O = glasses if(O.hud) O.hud.process_hud(src) - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_LIVING else if(istype(glasses, /obj/item/clothing/glasses/hud)) var/obj/item/clothing/glasses/hud/health/O = glasses if(istype(O, /obj/item/clothing/glasses/hud/health)) O.process_hud(src) - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_LIVING else if(istype(O, /obj/item/clothing/glasses/hud/security)) O.process_hud(src) - if(!druggy) see_invisible = 0 + if(!druggy) see_invisible = SEE_INVISIBLE_LIVING if(sleep && !hal_crit) sleep.icon_state = "sleep[sleeping]" //used? diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index af6d64f90fa..f3080297b86 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -468,13 +468,13 @@ sight |= SEE_MOBS sight |= SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (stat != 2) sight &= ~SEE_TURFS sight &= ~SEE_MOBS sight &= ~SEE_OBJS see_in_dark = 2 - see_invisible = 0 + see_invisible = SEE_INVISIBLE_LIVING if (sleep) sleep.icon_state = text("sleep[]", sleeping) if (rest) rest.icon_state = text("rest[]", resting) diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm index ea25b9fcc5c..6cac153e2c2 100644 --- a/code/modules/mob/living/silicon/ai/death.dm +++ b/code/modules/mob/living/silicon/ai/death.dm @@ -7,7 +7,7 @@ if(blind) blind.layer = 0 sight |= SEE_TURFS|SEE_MOBS|SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO var/callshuttle = 0 diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index 37b0513ba5d..8389aec7755 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -58,7 +58,7 @@ src.sight |= SEE_MOBS src.sight |= SEE_OBJS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO var/area/home = get_area(src) if(!home) return//something to do with malf fucking things up I guess. <-- aisat is gone. is this still necessary? ~Carn @@ -94,7 +94,7 @@ src.sight = src.sight&~SEE_MOBS src.sight = src.sight&~SEE_OBJS src.see_in_dark = 0 - src.see_invisible = 0 + src.see_invisible = SEE_INVISIBLE_LIVING if (((!loc.master.power_equip) || istype(T, /turf/space)) && !istype(src.loc,/obj/item)) if (src:aiRestorePowerRoutine==0) diff --git a/code/modules/mob/living/silicon/pai/death.dm b/code/modules/mob/living/silicon/pai/death.dm index 9f422fdd9b6..127091a854c 100644 --- a/code/modules/mob/living/silicon/pai/death.dm +++ b/code/modules/mob/living/silicon/pai/death.dm @@ -5,7 +5,7 @@ if(blind) blind.layer = 0 sight |= SEE_TURFS|SEE_MOBS|SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO //var/tod = time2text(world.realtime,"hh:mm:ss") //weasellos time of death patch //mind.store_memory("Time of death: [tod]", 0) diff --git a/code/modules/mob/living/silicon/robot/death.dm b/code/modules/mob/living/silicon/robot/death.dm index c3febf18cc3..a0c08ad3489 100644 --- a/code/modules/mob/living/silicon/robot/death.dm +++ b/code/modules/mob/living/silicon/robot/death.dm @@ -61,7 +61,7 @@ if(blind) blind.layer = 0 sight |= SEE_TURFS|SEE_MOBS|SEE_OBJS see_in_dark = 8 - see_invisible = 2 + see_invisible = SEE_INVISIBLE_LEVEL_TWO updateicon() tod = worldtime2text() //weasellos time of death patch diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index 4b1492aa172..6e7277e112f 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -151,26 +151,26 @@ src.sight |= SEE_MOBS src.sight |= SEE_OBJS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (src.sight_mode & BORGMESON && src.sight_mode & BORGTHERM) src.sight |= SEE_TURFS src.sight |= SEE_MOBS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (src.sight_mode & BORGMESON) src.sight |= SEE_TURFS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (src.sight_mode & BORGTHERM) src.sight |= SEE_MOBS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (src.stat != 2) src.sight &= ~SEE_MOBS src.sight &= ~SEE_TURFS src.sight &= ~SEE_OBJS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO var/obj/item/borg/sight/hud/hud = (locate(/obj/item/borg/sight/hud) in src) if(hud && hud.hud) hud.hud.process_hud(src) diff --git a/code/setup.dm b/code/setup.dm index 7b96a9a7030..4cac0c10519 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -402,4 +402,25 @@ var/list/liftable_structures = list(\ #define BANTYPE_ANY_FULLBAN 5 //used to locate stuff to unban. //The number of deciseconds which someone needs to be inactive to be classified as AFK: -#define AFK_THRESHOLD 3000 \ No newline at end of file +#define AFK_THRESHOLD 3000 + + + +#define SEE_INVISIBLE_MINIMUM 5 + +#define SEE_INVISIBLE_OBSERVER_NOLIGHTING 15 + +#define INVISIBILITY_LIGHTING 20 + +#define SEE_INVISIBLE_LIVING 25 + +#define SEE_INVISIBLE_OBSERVER 30 +#define INVISIBILITY_OBSERVER 30 + +#define SEE_INVISIBLE_LEVEL_ONE 35 //Used by some stuff in code. It's really poorly organized. +#define INVISIBILITY_LEVEL_ONE 35 //Used by some stuff in code. It's really poorly organized. + +#define SEE_INVISIBLE_LEVEL_TWO 45 //Used by some other stuff in code. It's really poorly organized. +#define INVISIBILITY_LEVEL_TWO 45 //Used by some other stuff in code. It's really poorly organized. + +#define INVISIBILITY_MAXIMUM 100 \ No newline at end of file diff --git a/code/unused/hivebot/death.dm b/code/unused/hivebot/death.dm index fda74c6c0fd..43e7c257a53 100644 --- a/code/unused/hivebot/death.dm +++ b/code/unused/hivebot/death.dm @@ -11,7 +11,7 @@ src.sight |= SEE_OBJS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO src.updateicon() var/tod = time2text(world.realtime,"hh:mm:ss") //weasellos time of death patch diff --git a/code/unused/hivebot/life.dm b/code/unused/hivebot/life.dm index b87152cf328..119efcaaa01 100644 --- a/code/unused/hivebot/life.dm +++ b/code/unused/hivebot/life.dm @@ -121,13 +121,13 @@ src.sight |= SEE_MOBS src.sight |= SEE_OBJS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO else if (src.stat != 2) src.sight &= ~SEE_MOBS src.sight &= ~SEE_TURFS src.sight &= ~SEE_OBJS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO if (src.healths) if (src.stat != 2) diff --git a/code/unused/hivebot/mainframe.dm b/code/unused/hivebot/mainframe.dm index ca65e940f1b..c3424dbd441 100644 --- a/code/unused/hivebot/mainframe.dm +++ b/code/unused/hivebot/mainframe.dm @@ -48,7 +48,7 @@ src.sight |= SEE_MOBS src.sight |= SEE_OBJS src.see_in_dark = 8 - src.see_invisible = 2 + src.see_invisible = SEE_INVISIBLE_LEVEL_TWO src.lying = 1 src.icon_state = "hive_main-crash"