From c5f4fda14f496a73127fa85fcb102673b7e55178 Mon Sep 17 00:00:00 2001 From: pixelkitty286 <78038207+pixelkitty286@users.noreply.github.com> Date: Thu, 20 Feb 2025 12:32:06 -0600 Subject: [PATCH] Super Syndicat and Super Cat bug fix (#3136) ## About The Pull Request Fixes a bug / balance with Super cats that were brought up to me. Black lists cats having storage implants being installed. Makes it so super cats drop all held items when entering a vent. ## Why It's Good For The Game It's good for the game because it makes it so Super cats are not doing what I specifically didn't want them doing in the first place. ## Proof Of Testing
Screenshots/Videos
I compiled it and made sure the changes *did* work there is no real noticeable changes. ## Changelog :cl: balance: forbids cats having storage implants fix: Super cats being able to bring things in hand in vents /:cl: --- .../objects/items/implants/implant_storage.dm | 5 +++++ .../mob/living/basic/pets/cat/super_cat.dm | 22 +++++++++++++------ tgstation.dme | 1 + 3 files changed, 21 insertions(+), 7 deletions(-) create mode 100644 modular_zubbers/code/game/objects/items/implants/implant_storage.dm diff --git a/modular_zubbers/code/game/objects/items/implants/implant_storage.dm b/modular_zubbers/code/game/objects/items/implants/implant_storage.dm new file mode 100644 index 00000000000..f775e1117b7 --- /dev/null +++ b/modular_zubbers/code/game/objects/items/implants/implant_storage.dm @@ -0,0 +1,5 @@ +//Prevents super and normal cats from having storage implants. Normal cats don't have hands anyways! +/obj/item/implant/storage/can_be_implanted_in(mob/living/target) + . = ..() + if(iscat(target)) + return FALSE diff --git a/modular_zubbers/code/modules/mob/living/basic/pets/cat/super_cat.dm b/modular_zubbers/code/modules/mob/living/basic/pets/cat/super_cat.dm index 97be1834898..c1b1057c708 100644 --- a/modular_zubbers/code/modules/mob/living/basic/pets/cat/super_cat.dm +++ b/modular_zubbers/code/modules/mob/living/basic/pets/cat/super_cat.dm @@ -16,13 +16,12 @@ melee_damage_lower = 7 melee_damage_upper = 15 ai_controller = /datum/ai_controller/basic_controller/simple_hostile - faction = list(null) // ...and they will fight 'til there's just one. + faction = list(FACTION_HOSTILE) /mob/living/basic/pet/cat/super/Initialize(mapload) . = ..() - add_traits(list(TRAIT_NOGUNS, TRAIT_NO_TWOHANDING, TRAIT_VENTCRAWLER_NUDE), INNATE_TRAIT) - remove_traits(list(TRAIT_VENTCRAWLER_ALWAYS), INNATE_TRAIT) + add_traits(list(TRAIT_NOGUNS, TRAIT_NO_TWOHANDING), INNATE_TRAIT) AddElement(/datum/element/dextrous) AddComponent(/datum/component/personal_crafting) @@ -32,6 +31,9 @@ balloon_alert(src, "Your paws are too soft!") return FALSE +/mob/living/basic/pet/cat/super/move_into_vent(obj/machinery/atmospherics/components/ventcrawl_target) + . = ..() + drop_all_held_items() /mob/living/basic/pet/cat/super/tux //Fake runtime name = "Super Tux Cat" @@ -80,11 +82,14 @@ /mob/living/basic/pet/cat/cak/super/Initialize(mapload) . = ..() - add_traits(list(TRAIT_PACIFISM, TRAIT_NO_TWOHANDING, TRAIT_VENTCRAWLER_NUDE), INNATE_TRAIT) //Passive kitty bring kind meows - remove_traits(list(TRAIT_VENTCRAWLER_ALWAYS), INNATE_TRAIT) + add_traits(list(TRAIT_PACIFISM, TRAIT_NO_TWOHANDING), INNATE_TRAIT) //Passive kitty bring kind meows AddElement(/datum/element/dextrous) AddComponent(/datum/component/personal_crafting) +/mob/living/basic/pet/cat/cak/move_into_vent(obj/machinery/atmospherics/components/ventcrawl_target) + . = ..() + drop_all_held_items() + // SUPER SYNDICATS!!! GET DAT MRR MRRAW DISK!!! /mob/living/basic/pet/cat/syndicat/super name = "Super Syndie Cat" @@ -95,8 +100,7 @@ /mob/living/basic/pet/cat/syndicat/super/Initialize(mapload) . = ..() - add_traits(list(TRAIT_NOGUNS, TRAIT_NO_TWOHANDING, TRAIT_VENTCRAWLER_NUDE), INNATE_TRAIT) - remove_traits(list(TRAIT_VENTCRAWLER_ALWAYS), INNATE_TRAIT) + add_traits(list(TRAIT_NOGUNS, TRAIT_NO_TWOHANDING), INNATE_TRAIT) AddElement(/datum/element/dextrous) AddComponent(/datum/component/personal_crafting) // get rid of the microbomb normal syndie cats have @@ -109,5 +113,9 @@ balloon_alert(src, "Your paws are too weak!") return FALSE +/mob/living/basic/pet/cat/syndicat/super/move_into_vent(obj/machinery/atmospherics/components/ventcrawl_target) + . = ..() + drop_all_held_items() + #undef SUPER_KITTY_HEALTH #undef SYNDIE_SUPER_KITTY_HEALTH diff --git a/tgstation.dme b/tgstation.dme index f015a57a7a1..cfc5a0525ad 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -8820,6 +8820,7 @@ #include "modular_zubbers\code\game\objects\items\food\halloween_chocolate.dm" #include "modular_zubbers\code\game\objects\items\food\meatslab.dm" #include "modular_zubbers\code\game\objects\items\food\misc.dm" +#include "modular_zubbers\code\game\objects\items\implants\implant_storage.dm" #include "modular_zubbers\code\game\objects\items\robot\items\harm_alarm_new.dm" #include "modular_zubbers\code\game\objects\items\robot\items\hypo.dm" #include "modular_zubbers\code\game\objects\items\robot\items\storage.dm"