diff --git a/code/modules/mob/living/basic/pets/cat/cat.dm b/code/modules/mob/living/basic/pets/cat/cat.dm index 1c86b2ffcb4..207599a1d16 100644 --- a/code/modules/mob/living/basic/pets/cat/cat.dm +++ b/code/modules/mob/living/basic/pets/cat/cat.dm @@ -54,6 +54,8 @@ . = ..() AddElement(/datum/element/ai_retaliate) AddElement(/datum/element/pet_bonus, "purrs!") + AddElement(/datum/element/footstep, footstep_type = FOOTSTEP_MOB_CLAW) + add_cell_sample() add_verb(src, /mob/living/proc/toggle_resting) add_traits(list(TRAIT_CATLIKE_GRACE, TRAIT_VENTCRAWLER_ALWAYS), INNATE_TRAIT) ai_controller.set_blackboard_key(BB_HUNTABLE_PREY, typecacheof(huntable_items)) @@ -64,6 +66,9 @@ if(can_interact_with_stove) RegisterSignal(src, COMSIG_LIVING_EARLY_UNARMED_ATTACK, PROC_REF(pre_unarmed_attack)) +/mob/living/basic/pet/cat/proc/add_cell_sample() + AddElement(/datum/element/swabable, CELL_LINE_TABLE_CAT, CELL_VIRUS_TABLE_GENERIC_MOB, 1, 5) + /mob/living/basic/pet/cat/proc/pre_attack(mob/living/source, atom/movable/target) SIGNAL_HANDLER if(!is_type_in_list(target, huntable_items) || held_food) @@ -150,6 +155,8 @@ /obj/item/food/breadslice/plain = 1 ) +/mob/living/basic/pet/cat/breadcat/add_cell_sample() + return /mob/living/basic/pet/cat/original name = "Batsy" @@ -162,6 +169,9 @@ unique_pet = TRUE held_state = "original" +/mob/living/basic/pet/cat/original/add_cell_sample() + return + /mob/living/basic/pet/cat/kitten name = "kitten" desc = "D'aaawwww." diff --git a/code/modules/mob/living/basic/pets/cat/keeki.dm b/code/modules/mob/living/basic/pets/cat/keeki.dm index 5cf16552e9a..4c18d22b02a 100644 --- a/code/modules/mob/living/basic/pets/cat/keeki.dm +++ b/code/modules/mob/living/basic/pets/cat/keeki.dm @@ -35,6 +35,9 @@ ) AddElement(/datum/element/consumable_mob, reagents_list = on_consume) +/mob/living/basic/pet/cat/cak/add_cell_sample() + return + /mob/living/basic/pet/cat/cak/CheckParts(list/parts) . = ..() var/obj/item/organ/internal/brain/candidate = locate(/obj/item/organ/internal/brain) in contents