mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Adminghosts no longer respect poltergeist cooldowns
This commit is contained in:
@@ -797,8 +797,12 @@ its easier to just keep the beam vertical.
|
|||||||
investigation_log(I_GHOST, "|| was Boo!'d by [key_name(ghost)][ghost.locked_to ? ", who was haunting [ghost.locked_to]" : ""]")
|
investigation_log(I_GHOST, "|| was Boo!'d by [key_name(ghost)][ghost.locked_to ? ", who was haunting [ghost.locked_to]" : ""]")
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
/atom/proc/can_spook()
|
/atom/proc/can_spook(var/msg = 1)
|
||||||
return !blessed
|
if(blessed)
|
||||||
|
if(msg)
|
||||||
|
to_chat(usr, "Your hand goes right through \the [src]... Is that some holy water dripping from it?")
|
||||||
|
return FALSE
|
||||||
|
return TRUE
|
||||||
|
|
||||||
//Called on holy_water's reaction_obj()
|
//Called on holy_water's reaction_obj()
|
||||||
/atom/proc/bless()
|
/atom/proc/bless()
|
||||||
|
|||||||
@@ -71,12 +71,11 @@
|
|||||||
update_icon()
|
update_icon()
|
||||||
|
|
||||||
/obj/machinery/floodlight/attack_ghost(var/mob/dead/observer/ghost)
|
/obj/machinery/floodlight/attack_ghost(var/mob/dead/observer/ghost)
|
||||||
if(blessed)
|
if(!can_spook())
|
||||||
to_chat(ghost, "Your hand goes right through \the [src]...Is that some holy water dripping from it?")
|
return FALSE
|
||||||
return 0
|
|
||||||
if(!ghost.can_poltergeist())
|
if(!ghost.can_poltergeist())
|
||||||
to_chat(ghost, "Your poltergeist abilities are still cooling down.")
|
to_chat(ghost, "Your poltergeist abilities are still cooling down.")
|
||||||
return 0
|
return FALSE
|
||||||
investigation_log(I_GHOST, "|| was switched [on ? "off" : "on"] by [key_name(ghost)][ghost.locked_to ? ", who was haunting [ghost.locked_to]" : ""]")
|
investigation_log(I_GHOST, "|| was switched [on ? "off" : "on"] by [key_name(ghost)][ghost.locked_to ? ", who was haunting [ghost.locked_to]" : ""]")
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
|
|||||||
@@ -89,12 +89,11 @@
|
|||||||
src.attack_hand(user)
|
src.attack_hand(user)
|
||||||
|
|
||||||
/obj/machinery/light_switch/attack_ghost(var/mob/dead/observer/ghost)
|
/obj/machinery/light_switch/attack_ghost(var/mob/dead/observer/ghost)
|
||||||
if(blessed)
|
if(!can_spook())
|
||||||
to_chat(ghost, "Your hand goes right through the switch...Is that some holy water dripping from it?")
|
return FALSE
|
||||||
return 0
|
|
||||||
if(!ghost.can_poltergeist())
|
if(!ghost.can_poltergeist())
|
||||||
to_chat(ghost, "Your poltergeist abilities are still cooling down.")
|
to_chat(ghost, "Your poltergeist abilities are still cooling down.")
|
||||||
return 0
|
return FALSE
|
||||||
investigation_log(I_GHOST, "|| was switched [on ? "off" : "on"] by [key_name(ghost)][ghost.locked_to ? ", who was haunting [ghost.locked_to]" : ""]")
|
investigation_log(I_GHOST, "|| was switched [on ? "off" : "on"] by [key_name(ghost)][ghost.locked_to ? ", who was haunting [ghost.locked_to]" : ""]")
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
|
|||||||
@@ -119,8 +119,8 @@ var/list/station_holomaps = list()
|
|||||||
src.attack_hand(user)
|
src.attack_hand(user)
|
||||||
|
|
||||||
/obj/machinery/station_map/attack_ghost(var/mob/user)
|
/obj/machinery/station_map/attack_ghost(var/mob/user)
|
||||||
if(blessed)
|
if(!can_spook())
|
||||||
return
|
return FALSE
|
||||||
add_hiddenprint(user)
|
add_hiddenprint(user)
|
||||||
flick("station_map_activate", src)
|
flick("station_map_activate", src)
|
||||||
|
|
||||||
|
|||||||
@@ -327,11 +327,13 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
|||||||
|
|
||||||
// Check for last poltergeist activity.
|
// Check for last poltergeist activity.
|
||||||
/mob/dead/observer/proc/can_poltergeist(var/start_cooldown=1)
|
/mob/dead/observer/proc/can_poltergeist(var/start_cooldown=1)
|
||||||
|
if(isAdminGhost(src))
|
||||||
|
return TRUE
|
||||||
if(world.time >= next_poltergeist)
|
if(world.time >= next_poltergeist)
|
||||||
if(start_cooldown)
|
if(start_cooldown)
|
||||||
start_poltergeist_cooldown()
|
start_poltergeist_cooldown()
|
||||||
return 1
|
return TRUE
|
||||||
return 0
|
return FALSE
|
||||||
|
|
||||||
/mob/dead/observer/proc/start_poltergeist_cooldown()
|
/mob/dead/observer/proc/start_poltergeist_cooldown()
|
||||||
next_poltergeist=world.time + POLTERGEIST_COOLDOWN
|
next_poltergeist=world.time + POLTERGEIST_COOLDOWN
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ var/global/list/boo_phrases_silicon=list(
|
|||||||
/spell/aoe_turf/boo/cast(list/targets)
|
/spell/aoe_turf/boo/cast(list/targets)
|
||||||
for(var/turf/T in targets)
|
for(var/turf/T in targets)
|
||||||
for(var/atom/A in T.contents)
|
for(var/atom/A in T.contents)
|
||||||
if(A.can_spook())
|
if(A.can_spook(0))
|
||||||
A.spook(holder)
|
A.spook(holder)
|
||||||
|
|
||||||
/* FIXME
|
/* FIXME
|
||||||
|
|||||||
@@ -422,7 +422,7 @@ var/global/list/obj/machinery/light/alllights = list()
|
|||||||
update(0)
|
update(0)
|
||||||
|
|
||||||
/obj/machinery/light/attack_ghost(mob/user)
|
/obj/machinery/light/attack_ghost(mob/user)
|
||||||
if(blessed)
|
if(!can_spook())
|
||||||
return
|
return
|
||||||
src.add_hiddenprint(user)
|
src.add_hiddenprint(user)
|
||||||
src.flicker(1)
|
src.flicker(1)
|
||||||
|
|||||||
Reference in New Issue
Block a user