More Zombie Tweaks (#25789)

* lmao

* text fix

* lol
This commit is contained in:
Contrabang
2024-06-12 22:02:53 +00:00
committed by GitHub
parent e7e340598c
commit a7c273463d
12 changed files with 47 additions and 31 deletions
@@ -9,7 +9,7 @@ RESTRICT_TYPE(/datum/antagonist/zombie)
clown_removal_text = "You feel funnier again."
wiki_page_name = "Zombie"
var/list/old_languages = list() // someone make this better to prevent langs changing if species changes while zombie somehow
var/static/list/zombie_traits = list(TRAIT_LANGUAGE_LOCKED, TRAIT_GOTTAGOSLOW, TRAIT_ABSTRACT_HANDS, TRAIT_SLOW_GRABBER, TRAIT_NOBREATH)
var/static/list/zombie_traits = list(TRAIT_LANGUAGE_LOCKED, TRAIT_GOTTAGOSLOW, TRAIT_ABSTRACT_HANDS, TRAIT_NOBREATH)
var/datum/unarmed_attack/claws/claw_attack
// possibly upgrades for the zombies after eating brains? Better vision (/datum/action/changeling/augmented_eyesight), better weapons (armblade), better infection, more inhereint armor (physiology)
@@ -62,18 +62,20 @@
/obj/item/zombie_claw/Initialize(mapload, new_parent_spell)
. = ..()
parent_spell = new_parent_spell
RegisterSignal(parent_spell.action.owner, COMSIG_MOB_WILLINGLY_DROP, PROC_REF(dispel))
if(new_parent_spell)
parent_spell = new_parent_spell
RegisterSignal(parent_spell.action.owner, COMSIG_MOB_WILLINGLY_DROP, PROC_REF(dispel))
/obj/item/zombie_claw/proc/dispel(mob/user)
if(user && user.get_active_hand() == src)
qdel(src)
/obj/item/zombie_claw/Destroy()
UnregisterSignal(parent_spell.action.owner, COMSIG_MOB_WILLINGLY_DROP)
if(parent_spell)
parent_spell.our_claws -= src
parent_spell = null
UnregisterSignal(parent_spell.action.owner, COMSIG_MOB_WILLINGLY_DROP)
if(parent_spell)
parent_spell.our_claws -= src
parent_spell = null
return ..()
/obj/item/zombie_claw/customised_abstract_text(mob/living/carbon/owner)
@@ -892,16 +892,18 @@ GLOBAL_LIST_INIT(ventcrawl_machinery, list(/obj/machinery/atmospherics/unary/ven
/mob/living/carbon/proc/cuff_resist(obj/item/I, breakouttime = 600, cuff_break = 0)
breakouttime = I.breakouttime
if(HAS_TRAIT(src, TRAIT_I_WANT_BRAINS))
breakouttime /= 2
var/displaytime = breakouttime / 10
if(!cuff_break)
if(has_status_effect(STATUS_EFFECT_REMOVE_CUFFS))
to_chat(src, "<span class='notice'>You are already trying to remove [I].</span>")
return
apply_status_effect(STATUS_EFFECT_REMOVE_CUFFS)
visible_message("<span class='warning'>[src] attempts to remove [I]!</span>")
to_chat(src, "<span class='notice'>You attempt to remove [I]... (This will take around [displaytime] seconds and you need to stand still.)</span>")
if(do_after(src, breakouttime, 0, target = src))
var/is_zombie = HAS_TRAIT(src, TRAIT_I_WANT_BRAINS)
to_chat(src, "<span class='notice'>You attempt to remove [I]... (This will take around [breakouttime / 10] seconds[is_zombie ? "" : " and you need to stand still"].)</span>")
if(do_after(src, breakouttime, 0, target = src, allow_moving = is_zombie, allow_moving_target = is_zombie))
remove_status_effect(STATUS_EFFECT_REMOVE_CUFFS)
if(I.loc != src || buckled)
return
-3
View File
@@ -64,9 +64,6 @@
clean_grabbed_by(assailant, affecting)
adjust_position()
if(HAS_TRAIT(assailant, TRAIT_SLOW_GRABBER))
assailant.changeNext_move(1.5 * CLICK_CD_MELEE)
/obj/item/grab/Destroy()
if(affecting)
UnregisterSignal(affecting, COMSIG_MOVABLE_MOVED)
@@ -918,7 +918,7 @@
if(method == REAGENT_INGEST || (method == REAGENT_TOUCH && prob(25)))
if(M.stat == DEAD)
if(M.getBruteLoss() + M.getFireLoss() + M.getCloneLoss() >= 150)
if(IS_CHANGELING(M))
if(IS_CHANGELING(M) || HAS_TRAIT(M, TRAIT_I_WANT_BRAINS))
return
M.delayed_gib(TRUE)
return
@@ -547,10 +547,10 @@
id = "zombiecure2"
result = "zombiecure2"
cure_level = 2
amt_req_cures = 2
amt_req_cures = 3
/datum/chemical_reaction/zombie/second/get_possible_cures()
return list("vomit", "jenkem", "charcoal", "egg", "salglu_solution", "toxin", "atropine", "lye", "sacid", "facid", "sodawater", "surge", "ultralube", "happiness", "morphine")
return list("salglu_solution", "toxin", "atropine", "lye", "sodawater", "happiness", "morphine", "teporone")
/datum/chemical_reaction/zombie/third
name = "Anti-Plague Sequence Gamma"
@@ -561,7 +561,7 @@
required_symptom = /datum/symptom/flesh_eating
/datum/chemical_reaction/zombie/third/get_possible_cures()
return list("colorful_reagent", "bacchus_blessing", "pen_acid", "teporone", "glyphosate", "lazarus_reagent", "omnizine", "sarin", "mitocholide", "ants", "clf3", "sorium", "????", "aranesp")
return list("vomit", "jenkem", "charcoal", "egg", "sacid", "facid", "surge", "ultralube", "mitocholide")
/datum/chemical_reaction/zombie/four
name = "Anti-Plague Sequence Omega"
@@ -572,7 +572,9 @@
required_symptom = /datum/symptom/heal/metabolism
/datum/chemical_reaction/zombie/four/get_possible_cures()
return list("entpoly", "tinlux", "earthsblood", "bath_salts", "rezadone", "rotatium", "krokodil", "fliptonium")
return list("colorful_reagent", "bacchus_blessing", "pen_acid", "glyphosate", "lazarus_reagent", "omnizine", "sarin", "ants", "clf3", "sorium", "????", "aranesp")
// Heres some ideas for making this harder if people ever get too good at curing zombies some day
// return list("entpoly", "tinlux", "earthsblood", "bath_salts", "rezadone", "rotatium", "krokodil", "fliptonium")
/datum/chemical_reaction/dupe_zomb_cure
name = "Duplicate Zombie Cure"