mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
proposal b for vampire deadchat (#34679)
This commit is contained in:
@@ -15,8 +15,6 @@
|
||||
|
||||
var/iscloaking = FALSE
|
||||
var/silentbite = FALSE
|
||||
var/deadchat_timer = 0
|
||||
var/deadchat = FALSE
|
||||
var/nullified = 0
|
||||
var/smitecounter = 0
|
||||
|
||||
@@ -273,7 +271,6 @@
|
||||
handle_cloak(H)
|
||||
handle_menace(H)
|
||||
handle_smite(H)
|
||||
handle_deadspeak(H)
|
||||
if(istype(H.loc, /turf/space))
|
||||
H.check_sun()
|
||||
if(istype(H.loc, /obj/structure/closet/coffin))
|
||||
@@ -341,19 +338,6 @@
|
||||
C.Dizzy(20)
|
||||
to_chat(C, "<span class='sinister'>Your heart is filled with dread, and you shake uncontrollably.</span>")
|
||||
|
||||
/datum/role/vampire/proc/handle_deadspeak(var/mob/living/carbon/human/H)
|
||||
if(deadchat)
|
||||
return
|
||||
if(H.stat == DEAD)
|
||||
return
|
||||
if((locate(/datum/power/vampire/charisma) in current_powers) && world.time > deadchat_timer)
|
||||
deadchat = TRUE
|
||||
//have deadchat for 30 seconds every five minutes
|
||||
spawn(rand(200, 400))
|
||||
if(H.stat != DEAD)
|
||||
deadchat_timer = world.time + 1800 + rand(300, 1200)
|
||||
deadchat = FALSE
|
||||
|
||||
/datum/role/vampire/proc/handle_smite(var/mob/living/carbon/human/H)
|
||||
var/smitetemp = 0
|
||||
var/vampcoat = istype(H.wear_suit, /obj/item/clothing/suit/storage/draculacoat) //coat reduces smiting
|
||||
|
||||
@@ -76,14 +76,9 @@ var/list/global_deadchat_listeners = list()
|
||||
var/list/hearers = get_deadchat_hearers()
|
||||
if(hearers)
|
||||
for(var/mob/M in hearers)
|
||||
if(isvampire(M))
|
||||
var/rendered = "<span class='game deadsay'><span class='name'> [name]</span>[alt_name] <span class='message'>[message]</span></span>"
|
||||
to_chat(M, rendered)
|
||||
continue
|
||||
else
|
||||
var/rendered = "<span class='game deadsay'><a href='byond://?src=\ref[M];follow2=\ref[M];follow=\ref[src]'>(Follow)</a>"
|
||||
rendered += "<span class='name'> [name]</span>[alt_name] <span class='message'>[message]</span></span>"
|
||||
to_chat(M, rendered)
|
||||
var/rendered = "<span class='game deadsay'><a href='byond://?src=\ref[M];follow2=\ref[M];follow=\ref[src]'>(Follow)</a>"
|
||||
rendered += "<span class='name'> [name]</span>[alt_name] <span class='message'>[message]</span></span>"
|
||||
to_chat(M, rendered)
|
||||
|
||||
/mob/proc/get_ear()
|
||||
// returns an atom representing a location on the map from which this
|
||||
|
||||
@@ -344,10 +344,6 @@ For the main html chat area
|
||||
if(istype(M, /mob/new_player))
|
||||
continue
|
||||
|
||||
var/datum/role/vampire/V = isvampire(M)
|
||||
if(V && V.deadchat)
|
||||
hearers += M
|
||||
continue
|
||||
else if(M.client.prefs.toggles & CHAT_DEAD)
|
||||
if(M.client.holder && M.client.holder.rights & R_ADMIN) //admins can toggle deadchat on and off. This is a proc in admin.dm and is only give to Administrators and above
|
||||
hearers += M
|
||||
|
||||
Reference in New Issue
Block a user