mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-17 02:54:44 +01:00
Adds cat helper, makes cat behaviour more consistent (#16078)
* adds cat helper, makes cat behaviour more consistent * move trait to positive * Update modular_skyrat/master_files/code/datums/traits/good.dm * review * quirk to neutral
This commit is contained in:
@@ -29,6 +29,7 @@
|
||||
#define ishumanoid(A) (is_species(A,/datum/species/humanoid))
|
||||
#define ismammal(A) (is_species(A,/datum/species/mammal))
|
||||
#define isinsect(A) (is_species(A,/datum/species/insect))
|
||||
#define isfeline(A) (isfelinid(A) || istajaran(A) || HAS_TRAIT(A, TRAIT_FELINE))
|
||||
|
||||
// Xen mobs
|
||||
#define isxenmob(A) (istype(A, /mob/living/simple_animal/hostile/blackmesa/xen))
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/checkObstacle)
|
||||
playsound(user, 'sound/weapons/thudswoosh.ogg', 40, TRUE, -1)
|
||||
|
||||
var/leap_word = isfelinid(user) ? "pounce" : "leap" //If cat, "pounce" instead of "leap".
|
||||
var/leap_word = isfeline(user) ? "pounce" : "leap" //If cat, "pounce" instead of "leap". // SKYRAT EDIT - FELINE TRAITS. Was: isfelinid(user)
|
||||
if(can_see(user, A, 7))
|
||||
user.visible_message(span_warning("[user] [leap_word]s at [A]!"), span_danger("You [leap_word] at [A]!"))
|
||||
else
|
||||
@@ -157,7 +157,7 @@
|
||||
var/mob/living/carbon/target = hit
|
||||
var/mob/living/carbon/human/T = target
|
||||
var/mob/living/carbon/human/S = user
|
||||
var/tackle_word = isfelinid(user) ? "pounce" : "tackle" //If cat, "pounce" instead of "tackle".
|
||||
var/tackle_word = isfeline(user) ? "pounce" : "tackle" //If cat, "pounce" instead of "tackle". // SKYRAT EDIT - FELINE TRAITS. Was: isfelinid(user)
|
||||
|
||||
var/roll = rollTackle(target)
|
||||
tackling = FALSE
|
||||
|
||||
@@ -137,8 +137,7 @@
|
||||
|
||||
//catpeople
|
||||
for(var/mob/living/carbon/human/H in view(1,targloc))
|
||||
//if(!isfelinid(H) || H.incapacitated() || H.is_blind())
|
||||
if(!(isfelinid(H) || HAS_TRAIT(H, TRAIT_FELINE)) || H.incapacitated() || H.is_blind()) //SKYRAT EDIT - FELINE TRAIT
|
||||
if(!isfeline(H) || H.incapacitated() || H.is_blind()) // SKYRAT EDIT - FELINE TRAITS. Was: isfelinid(H)
|
||||
continue
|
||||
if(user.body_position == STANDING_UP)
|
||||
H.setDir(get_dir(H,targloc)) // kitty always looks at the light
|
||||
|
||||
@@ -91,8 +91,7 @@
|
||||
if(target.mob_size > max_occupant_weight)
|
||||
if(ishuman(target))
|
||||
var/mob/living/carbon/human/H = target
|
||||
//if(isfelinid(H))
|
||||
if(isfelinid(H) || HAS_TRAIT(H, TRAIT_FELINE)) //SKYRAT EDIT - FELINE TRAITS
|
||||
if(isfeline(H)) // SKYRAT EDIT - FELINE TRAITS. Was: isfelinid(H)
|
||||
to_chat(user, span_warning("You'd need a lot of catnip and treats, plus maybe a laser pointer, for that to work."))
|
||||
else
|
||||
to_chat(user, span_warning("Humans, generally, do not fit into pet carriers."))
|
||||
|
||||
@@ -223,7 +223,7 @@
|
||||
if(methods & TOUCH)
|
||||
exposed_mob.extinguish_mob() // extinguish removes all fire stacks
|
||||
if(methods & VAPOR)
|
||||
if(!isfelinid(exposed_mob) || HAS_TRAIT(exposed_mob, TRAIT_FELINE)) // SKYRAT EDIT - Feline trait :)
|
||||
if(!isfeline(exposed_mob)) // SKYRAT EDIT - Feline trait :)
|
||||
return
|
||||
exposed_mob.incapacitate(1) // startles the felinid, canceling any do_after
|
||||
exposed_mob.add_mood_event("watersprayed", /datum/mood_event/watersprayed)
|
||||
|
||||
@@ -171,7 +171,6 @@
|
||||
gain_text = span_notice("Nya could go for some catnip right about now...")
|
||||
lose_text = span_notice("You feel less attracted to lasers.")
|
||||
medical_record_text = "Patient seems to possess behavior much like a feline."
|
||||
value = 0
|
||||
mob_trait = TRAIT_FELINE
|
||||
icon = "cat"
|
||||
|
||||
|
||||
+1
-1
@@ -485,7 +485,7 @@
|
||||
glass_desc = "Warm milk and some catnip."
|
||||
|
||||
/datum/reagent/consumable/ethanol/frisky_kitty/on_mob_life(mob/living/carbon/M)
|
||||
if(ismammal(M) || isfelinid(M) || istajaran(M))
|
||||
if(isfeline(M))
|
||||
quality = RACE_DRINK
|
||||
else
|
||||
quality = DRINK_GOOD
|
||||
|
||||
+1
-1
@@ -46,7 +46,7 @@
|
||||
|
||||
/datum/reagent/consumable/catnip_tea/on_mob_life(mob/living/carbon/M)
|
||||
M.adjustStaminaLoss(min(50 - M.getStaminaLoss(), 3))
|
||||
if(isfelinid(M) || istajaran(M))
|
||||
if(isfeline(M))
|
||||
if(prob(20))
|
||||
M.emote("nya")
|
||||
if(prob(20))
|
||||
|
||||
+1
-1
@@ -49,7 +49,7 @@
|
||||
metabolization_rate = 1.75 * REAGENTS_METABOLISM
|
||||
|
||||
/datum/reagent/pax/catnip/on_mob_life(mob/living/carbon/M)
|
||||
if(isfelinid(M) || istajaran(M))
|
||||
if(isfeline(M))
|
||||
if(prob(20))
|
||||
M.emote("nya")
|
||||
if(prob(20))
|
||||
|
||||
Reference in New Issue
Block a user