mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-29 15:08:02 +01:00
Adds Zombies (Admin-spawn) (#25381)
* fuck it good enough * Apply suggestions from code review Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com> * TRIPLE-REVIEW * this should do it * wow * bruh * FIX * fix * yeah * sirryan review * aaaaa * Apply suggestions from code review Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com> --------- Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
This commit is contained in:
co-authored by
Burzah
DGamerL
parent
247e24ba9f
commit
bc0c8344cf
@@ -417,6 +417,16 @@
|
||||
|
||||
. += _memory_edit_role_enabled(ROLE_ABDUCTOR)
|
||||
|
||||
/datum/mind/proc/memory_edit_zombie(mob/living/H)
|
||||
. = _memory_edit_header("zombie", list())
|
||||
if(has_antag_datum(/datum/antagonist/zombie))
|
||||
. += "<a href='byond://?src=[UID()];zombie=clear'>no</a>|<b><font color='red'>ZOMBIE</font></b>"
|
||||
return
|
||||
if(current.HasDisease(/datum/disease/zombie))
|
||||
. += "<b>NO</b>|<a href='byond://?src=[UID()];zombie=zombie'>zombie</a>|<a href='byond://?src=[UID()];zombie=zombievirusno'><font color='red'>dis-infect</font></a>"
|
||||
else
|
||||
. += "<b>NO</b>|<a href='byond://?src=[UID()];zombie=zombie'>zombie</a>|<a href='byond://?src=[UID()];zombie=zombievirus'>infect</a>"
|
||||
|
||||
/datum/mind/proc/memory_edit_eventmisc(mob/living/H)
|
||||
. = _memory_edit_header("event", list())
|
||||
if(src in SSticker.mode.eventmiscs)
|
||||
@@ -546,6 +556,8 @@
|
||||
sections["nuclear"] = memory_edit_nuclear(H)
|
||||
/** Abductors **/
|
||||
sections["abductor"] = memory_edit_abductor(H)
|
||||
/** Zombies **/
|
||||
sections["zombie"] = memory_edit_zombie(H)
|
||||
sections["eventmisc"] = memory_edit_eventmisc(H)
|
||||
/** TRAITOR ***/
|
||||
sections["traitor"] = memory_edit_traitor()
|
||||
@@ -1170,6 +1182,45 @@
|
||||
log_admin("[key_name(usr)] has eventantag'ed [current].")
|
||||
current.create_log(MISC_LOG, "[current] was made into an event antagonist by [key_name_admin(usr)]")
|
||||
|
||||
else if(href_list["zombie"])
|
||||
switch(href_list["zombie"])
|
||||
if("clear")
|
||||
if(!has_antag_datum(/datum/antagonist/zombie))
|
||||
return
|
||||
remove_antag_datum(/datum/antagonist/zombie)
|
||||
for(var/datum/disease/zombie/D in current.viruses)
|
||||
D.cure()
|
||||
if(ishuman(current))
|
||||
var/mob/living/carbon/human/human_current = current
|
||||
for(var/obj/item/organ/limb as anything in human_current.bodyparts)
|
||||
if(limb.status & ORGAN_DEAD && !limb.is_robotic())
|
||||
limb.status &= ~ORGAN_DEAD
|
||||
human_current.update_body()
|
||||
message_admins("[key_name_admin(usr)] has de-zombied'ed [key_name(current)].")
|
||||
log_admin("[key_name(usr)] has de-zombied'ed [key_name(current)].")
|
||||
if("zombie")
|
||||
if(has_antag_datum(/datum/antagonist/zombie))
|
||||
return
|
||||
add_antag_datum(/datum/antagonist/zombie)
|
||||
message_admins("[key_name_admin(usr)] has zombie'ed [key_name(current)].")
|
||||
log_admin("[key_name(usr)] has zombie'ed [key_name(current)].")
|
||||
current.create_log(MISC_LOG, "[key_name(current)] was made into an zombie by [key_name_admin(usr)]")
|
||||
if("zombievirus")
|
||||
if(has_antag_datum(/datum/antagonist/zombie) || !ishuman(current))
|
||||
return
|
||||
current.AddDisease(new /datum/disease/zombie)
|
||||
message_admins("[key_name_admin(usr)] has given a zombie virus to [key_name(current)].")
|
||||
log_admin("[key_name(usr)] has given a zombie virus to [key_name(current)].")
|
||||
current.create_log(MISC_LOG, "[key_name(current)] was admin-infected with a zombie virus by [key_name_admin(usr)]")
|
||||
if("zombievirusno")
|
||||
if(has_antag_datum(/datum/antagonist/zombie))
|
||||
return
|
||||
for(var/datum/disease/zombie/D in current.viruses)
|
||||
D.cure()
|
||||
message_admins("[key_name_admin(usr)] has removed the zombie virus from [key_name(current)].")
|
||||
log_admin("[key_name(usr)] has removed the zombie virus from [key_name(current)].")
|
||||
current.create_log(MISC_LOG, "[key_name(current)] had their zombie virus admin-removed by [key_name_admin(usr)]")
|
||||
|
||||
else if(href_list["traitor"])
|
||||
switch(href_list["traitor"])
|
||||
if("clear")
|
||||
|
||||
Reference in New Issue
Block a user