mirror of
https://github.com/CHOMPstation/CHOMPstation.git
synced 2026-08-23 20:16:19 +01:00
Merge branch 'master' into patch-16
This commit is contained in:
@@ -0,0 +1,423 @@
|
||||
/datum/riding/taur
|
||||
keytype = /obj/item/weapon/material/twohanded/fluff/riding_crop // Crack!
|
||||
nonhuman_key_exemption = FALSE // If true, nonhumans who can't hold keys don't need them, like borgs and simplemobs.
|
||||
key_name = "a riding crop" // What the 'keys' for the thing being rided on would be called.
|
||||
only_one_driver = TRUE // If true, only the person in 'front' (first on list of riding mobs) can drive.
|
||||
|
||||
/datum/riding/taur/handle_vehicle_layer()
|
||||
if(ridden.has_buckled_mobs())
|
||||
if(ridden.dir != NORTH)
|
||||
ridden.layer = ABOVE_MOB_LAYER
|
||||
else
|
||||
ridden.layer = initial(ridden.layer)
|
||||
else
|
||||
ridden.layer = initial(ridden.layer)
|
||||
|
||||
/datum/riding/taur/ride_check(mob/living/M)
|
||||
var/mob/living/L = ridden
|
||||
if(L.stat)
|
||||
force_dismount(M)
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
/datum/riding/taur/force_dismount(mob/M)
|
||||
. =..()
|
||||
ridden.visible_message("<span class='notice'>[M] stops riding [ridden]!</span>")
|
||||
|
||||
//Hoooo boy.
|
||||
/datum/riding/taur/get_offsets(pass_index) // list(dir = x, y, layer)
|
||||
var/mob/living/L = ridden
|
||||
var/scale = L.size_multiplier
|
||||
|
||||
var/list/values = list(
|
||||
"[NORTH]" = list(0, 8*scale, ABOVE_MOB_LAYER),
|
||||
"[SOUTH]" = list(0, 8*scale, BELOW_MOB_LAYER),
|
||||
"[EAST]" = list(-10*scale, 8*scale, BELOW_MOB_LAYER),
|
||||
"[WEST]" = list(10*scale, 8*scale, BELOW_MOB_LAYER))
|
||||
|
||||
return values
|
||||
|
||||
//Human overrides for taur riding
|
||||
/mob/living/carbon/human
|
||||
max_buckled_mobs = 1 //Yeehaw
|
||||
can_buckle = TRUE
|
||||
buckle_movable = TRUE
|
||||
buckle_lying = FALSE
|
||||
|
||||
/mob/living/carbon/human/New()
|
||||
..()
|
||||
riding_datum = new /datum/riding/taur(src)
|
||||
|
||||
/mob/living/carbon/human/buckle_mob(mob/living/M, forced = FALSE, check_loc = TRUE)
|
||||
if(!isTaurTail(tail_style))
|
||||
return FALSE
|
||||
if(lying)
|
||||
return FALSE
|
||||
if(!ishuman(M))
|
||||
return FALSE
|
||||
if(M.size_multiplier > size_multiplier)
|
||||
to_chat(M,"<span class='warning'>This isn't a pony show! They need to be bigger to ride.</span>")
|
||||
return FALSE
|
||||
|
||||
var/mob/living/carbon/human/H = M
|
||||
|
||||
if(isTaurTail(H.tail_style))
|
||||
to_chat(H,"<span class='warning'>Too many legs. TOO MANY LEGS!!</span>")
|
||||
return FALSE
|
||||
|
||||
. = ..()
|
||||
|
||||
/mob/living/carbon/human/MouseDrop_T(mob/living/M, mob/living/user)
|
||||
if(can_buckle && istype(M))
|
||||
if(user_buckle_mob(M, user, silent = TRUE))
|
||||
visible_message("<span class='notice'>[M] starts riding [name]!</span>")
|
||||
return TRUE
|
||||
|
||||
/mob/living/carbon/human/attack_hand(mob/user as mob)
|
||||
if(LAZYLEN(buckled_mobs))
|
||||
//We're getting off!
|
||||
if(user in buckled_mobs)
|
||||
riding_datum.force_dismount(user)
|
||||
//We're kicking everyone off!
|
||||
if(user == src)
|
||||
for(var/rider in buckled_mobs)
|
||||
riding_datum.force_dismount(rider)
|
||||
else
|
||||
. = ..()
|
||||
|
||||
/*
|
||||
////////////////////////////
|
||||
/ =--------------------= /
|
||||
/ == Taur Definitions == /
|
||||
/ =--------------------= /
|
||||
////////////////////////////
|
||||
*/
|
||||
|
||||
// Taur sprites are now a subtype of tail since they are mutually exclusive anyway.
|
||||
|
||||
/datum/sprite_accessory/tail/taur
|
||||
name = "You should not see this..."
|
||||
icon = 'icons/mob/vore/taurs_vr.dmi'
|
||||
do_colouration = 1 // Yes color, using tail color
|
||||
color_blend_mode = ICON_MULTIPLY // The sprites for taurs are designed for ICON_MULTIPLY
|
||||
|
||||
|
||||
//Could do nested lists but it started becoming a nightmare. It'd be more fun for lookups of a_intent and m_intent, but then subtypes need to
|
||||
//duplicate all the messages, and it starts getting awkward. These are singletons, anyway!
|
||||
|
||||
//Messages to owner when stepping on/over
|
||||
var/msg_owner_help_walk = "You carefully step over %prey."
|
||||
var/msg_owner_help_run = "You carefully step over %prey."
|
||||
var/msg_owner_harm_walk = "You methodically place your foot down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
var/msg_owner_harm_run = "You carelessly step down onto %prey, crushing them!"
|
||||
var/msg_owner_disarm_walk = "You firmly push your foot down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
var/msg_owner_disarm_run = "You quickly push %prey to the ground with your foot!"
|
||||
var/msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
var/msg_owner_grab_success = "You pin %prey down onto the floor with your foot and curl your toes up around their body, trapping them inbetween them!"
|
||||
|
||||
//Messages to prey when stepping on/over
|
||||
var/msg_prey_help_walk = "%owner steps over you carefully!"
|
||||
var/msg_prey_help_run = "%owner steps over you carefully!"
|
||||
var/msg_prey_harm_walk = "%owner methodically places their foot upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
var/msg_prey_harm_run = "%owner steps carelessly on your body, crushing you!"
|
||||
var/msg_prey_disarm_walk = "%owner firmly pushes their foot down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
var/msg_prey_disarm_run = "%owner pushes you down to the ground with their foot!"
|
||||
var/msg_prey_grab_fail = "%owner steps down and squishes you with their foot, forcing you down to the ground!"
|
||||
var/msg_prey_grab_success = "%owner pins you down to the floor with their foot and curls their toes up around your body, trapping you inbetween them!"
|
||||
|
||||
//Messages for smalls moving under larges
|
||||
var/msg_owner_stepunder = "%owner runs between your legs." //Weird becuase in the case this is used, %owner is the 'bumper' (src)
|
||||
var/msg_prey_stepunder = "You run between %prey's legs." //Same, inverse
|
||||
|
||||
/datum/sprite_accessory/tail/taur/roiz_long_lizard // Not ACTUALLY a taur, but it uses 32x64 so it wouldn't fit in tails.dmi, and having it as a tail bugs up the sprite.
|
||||
name = "Long Lizard Tail (Roiz Lizden)"
|
||||
icon_state = "roiz_tail_s"
|
||||
do_colouration = 0
|
||||
ckeys_allowed = list("spoopylizz")
|
||||
|
||||
/datum/sprite_accessory/tail/taur/wolf
|
||||
name = "Wolf (Taur)"
|
||||
icon_state = "wolf_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/wolf/wolf_2c
|
||||
name = "Wolf dual-color (Taur)"
|
||||
icon_state = "wolf_s"
|
||||
extra_overlay = "wolf_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/wolf/synthwolf
|
||||
name = "SynthWolf dual-color (Taur)"
|
||||
icon_state = "synthwolf_s"
|
||||
extra_overlay = "synthwolf_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/naga
|
||||
name = "Naga (Taur)"
|
||||
icon_state = "naga_s"
|
||||
|
||||
msg_owner_help_walk = "You carefully slither around %prey."
|
||||
msg_prey_help_walk = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_help_run = "You carefully slither around %prey."
|
||||
msg_prey_help_run = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_disarm_run = "Your tail slides over %prey, pushing them down to the ground!"
|
||||
msg_prey_disarm_run = "%owner's tail slides over you, forcing you down to the ground!"
|
||||
|
||||
msg_owner_disarm_walk = "You push down on %prey with your tail, pinning them down under you!"
|
||||
msg_prey_disarm_walk = "%owner pushes down on you with their tail, pinning you down below them!"
|
||||
|
||||
msg_owner_harm_run = "Your heavy tail carelessly slides past %prey, crushing them!"
|
||||
msg_prey_harm_run = "%owner quickly goes over your body, carelessly crushing you with their heavy tail!"
|
||||
|
||||
msg_owner_harm_walk = "Your heavy tail slowly and methodically slides down upon %prey, crushing against the floor below!"
|
||||
msg_prey_harm_walk = "%owner's thick, heavy tail slowly and methodically slides down upon your body, mercilessly crushing you into the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You slither over %prey with your large, thick tail, smushing them against the ground before coiling up around them, trapping them within the tight confines of your tail!"
|
||||
msg_prey_grab_success = "%owner slithers over you with their large, thick tail, smushing you against the ground before coiling up around you, trapping you within the tight confines of their tail!"
|
||||
|
||||
msg_owner_grab_fail = "You squish %prey under your large, thick tail, forcing them onto the ground!"
|
||||
msg_prey_grab_fail = "%owner pins you under their large, thick tail, forcing you onto the ground!"
|
||||
|
||||
msg_prey_stepunder = "You jump over %prey's thick tail."
|
||||
msg_owner_stepunder = "%owner bounds over your tail."
|
||||
|
||||
/datum/sprite_accessory/tail/taur/naga/naga_2c
|
||||
name = "Naga dual-color (Taur)"
|
||||
icon_state = "naga_s"
|
||||
extra_overlay = "naga_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/horse
|
||||
name = "Horse (Taur)"
|
||||
icon_state = "horse_s"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your hoof!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their hoof!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your hoof down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their hoof down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your hoof down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their hoof upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey to the ground before scooping them up with your hooves!"
|
||||
msg_prey_grab_success = "%owner pins you to the ground before scooping you up with their hooves!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/horse/synthhorse
|
||||
name = "SynthHorse dual-color (Taur)"
|
||||
icon_state = "synthhorse_s"
|
||||
extra_overlay = "synthhorse_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/cow
|
||||
name = "Cow (Taur)"
|
||||
icon_state = "cow_s"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your hoof!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their hoof!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your hoof down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their hoof down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your hoof down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their hoof upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey to the ground before scooping them up with your hooves!"
|
||||
msg_prey_grab_success = "%owner pins you to the ground before scooping you up with their hooves!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/deer
|
||||
name = "Deer dual-color (Taur)"
|
||||
icon_state = "deer_s"
|
||||
extra_overlay = "deer_markings"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your hoof!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their hoof!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your hoof down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their hoof down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your hoof down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their hoof upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey to the ground before scooping them up with your hooves!"
|
||||
msg_prey_grab_success = "%owner pins you to the ground before scooping you up with their hooves!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/lizard
|
||||
name = "Lizard (Taur)"
|
||||
icon_state = "lizard_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/lizard/lizard_2c
|
||||
name = "Lizard dual-color (Taur)"
|
||||
icon_state = "lizard_s"
|
||||
extra_overlay = "lizard_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/lizard/synthlizard
|
||||
name = "SynthLizard dual-color (Taur)"
|
||||
icon_state = "synthlizard_s"
|
||||
extra_overlay = "synthlizard_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/spider
|
||||
name = "Spider (Taur)"
|
||||
icon_state = "spider_s"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your leg!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their leg!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your leg down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their leg down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your leg down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their leg upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey down on the ground with your front leg before using your other leg to pick them up, trapping them between two of your front legs!"
|
||||
msg_prey_grab_success = "%owner pins you down on the ground with their front leg before using their other leg to pick you up, trapping you between two of their front legs!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their leg, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/tents
|
||||
name = "Tentacles (Taur)"
|
||||
icon_state = "tent_s"
|
||||
|
||||
msg_prey_stepunder = "You run between %prey's tentacles."
|
||||
msg_owner_stepunder = "%owner runs between your tentacles."
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with some of your tentacles!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with some of their tentacles!"
|
||||
|
||||
msg_owner_disarm_walk = "You push down on %prey with some of your tentacles, pinning them down firmly under you!"
|
||||
msg_prey_disarm_walk = "%owner pushes down on you with some of their tentacles, pinning you down firmly below them!"
|
||||
|
||||
msg_owner_harm_run = "Your tentacles carelessly slide past %prey, crushing them!"
|
||||
msg_prey_harm_run = "%owner quickly goes over your body, carelessly crushing you with their tentacles!"
|
||||
|
||||
msg_owner_harm_walk = "Your tentacles methodically apply pressure on %prey's body, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner's thick tentacles methodically apply pressure on your body, crushing you into the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You slide over %prey with your tentacles, smushing them against the ground before wrapping one up around them, trapping them within the tight confines of your tentacles!"
|
||||
msg_prey_grab_success = "%owner slides over you with their tentacles, smushing you against the ground before wrapping one up around you, trapping you within the tight confines of their tentacles!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey with one of your tentacles, forcing them onto the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down onto you with one of their tentacles, squishing you and forcing you onto the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/feline
|
||||
name = "Feline (Taur)"
|
||||
icon_state = "feline_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/feline/feline_2c
|
||||
name = "Feline dual-color (Taur)"
|
||||
icon_state = "feline_s"
|
||||
extra_overlay = "feline_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/feline/synthfeline
|
||||
name = "SynthFeline dual-color (Taur)"
|
||||
icon_state = "synthfeline_s"
|
||||
extra_overlay = "synthfeline_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/slug
|
||||
name = "Slug (Taur)"
|
||||
icon_state = "slug_s"
|
||||
|
||||
msg_owner_help_walk = "You carefully slither around %prey."
|
||||
msg_prey_help_walk = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_help_run = "You carefully slither around %prey."
|
||||
msg_prey_help_run = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_disarm_run = "Your tail slides over %prey, pushing them down to the ground!"
|
||||
msg_prey_disarm_run = "%owner's tail slides over you, forcing you down to the ground!"
|
||||
|
||||
msg_owner_disarm_walk = "You push down on %prey with your tail, pinning them down under you!"
|
||||
msg_prey_disarm_walk = "%owner pushes down on you with their tail, pinning you down below them!"
|
||||
|
||||
msg_owner_harm_run = "Your heavy tail carelessly slides past %prey, crushing them!"
|
||||
msg_prey_harm_run = "%owner quickly goes over your body, carelessly crushing you with their heavy tail!"
|
||||
|
||||
msg_owner_harm_walk = "Your heavy tail slowly and methodically slides down upon %prey, crushing against the floor below!"
|
||||
msg_prey_harm_walk = "%owner's thick, heavy tail slowly and methodically slides down upon your body, mercilessly crushing you into the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You slither over %prey with your large, thick tail, smushing them against the ground before coiling up around them, trapping them within the tight confines of your tail!"
|
||||
msg_prey_grab_success = "%owner slithers over you with their large, thick tail, smushing you against the ground before coiling up around you, trapping you within the tight confines of their tail!"
|
||||
|
||||
msg_owner_grab_fail = "You squish %prey under your large, thick tail, forcing them onto the ground!"
|
||||
msg_prey_grab_fail = "%owner pins you under their large, thick tail, forcing you onto the ground!"
|
||||
|
||||
msg_prey_stepunder = "You jump over %prey's thick tail."
|
||||
msg_owner_stepunder = "%owner bounds over your tail."
|
||||
|
||||
/datum/sprite_accessory/tail/taur/frog
|
||||
name = "Frog (Taur)"
|
||||
icon_state = "frog_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/drake //Enabling on request, no suit compatibility but then again see 2 above.
|
||||
name = "Drake (Taur)"
|
||||
icon_state = "drake_s"
|
||||
extra_overlay = "drake_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/otie
|
||||
name = "Otie (Taur)"
|
||||
icon_state = "otie_s"
|
||||
extra_overlay = "otie_markings"
|
||||
|
||||
//wickedtemp: Chakat Tempest
|
||||
/datum/sprite_accessory/tail/taur/feline/tempest
|
||||
name = "Feline (wickedtemp) (Taur)"
|
||||
icon_state = "tempest_s"
|
||||
ckeys_allowed = list("wickedtemp")
|
||||
|
||||
//silencedmp5a5: Serdykov Antoz
|
||||
/datum/sprite_accessory/tail/taur/wolf/serdy
|
||||
name = "CyberSerdy (silencedmp5a5) (Taur)"
|
||||
icon_state = "serdy_s"
|
||||
ckeys_allowed = list("silencedmp5a5")
|
||||
|
||||
//liquidfirefly: Ariana Scol
|
||||
/datum/sprite_accessory/tail/taur/centipede
|
||||
name = "Centipede (liquidfirefly) (Taur)"
|
||||
icon_state = "ariana_s"
|
||||
ckeys_allowed = list("liquidfirefly")
|
||||
do_colouration = 0
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your leg!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their leg!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your leg down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their leg down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your leg down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their leg upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey down on the ground with your front leg before using your other leg to pick them up, trapping them between two of your front legs!"
|
||||
msg_prey_grab_success = "%owner pins you down on the ground with their front leg before using their other leg to pick you up, trapping you between two of their front legs!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their leg, forcing you down to the ground!"
|
||||
|
||||
//liquidfirefly: Ariana Scol
|
||||
/datum/sprite_accessory/tail/taur/alraune
|
||||
name = "Alraune (natje) (Taur)"
|
||||
icon_state = "alraune_s"
|
||||
ani_state = "alraune_closed_s"
|
||||
ckeys_allowed = list("natje")
|
||||
do_colouration = 0
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your leg!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their leg!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your leg down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their leg down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your leg down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their leg upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey down on the ground with your front leg before using your other leg to pick them up, trapping them between two of your front legs!"
|
||||
msg_prey_grab_success = "%owner pins you down on the ground with their front leg before using their other leg to pick you up, trapping you between two of their front legs!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their leg, forcing you down to the ground!"
|
||||
@@ -270,6 +270,31 @@
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/ears/teshari
|
||||
name = "Teshari (colorable fluff)"
|
||||
desc = ""
|
||||
icon_state = "teshari"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
extra_overlay = "teshariinner"
|
||||
|
||||
/datum/sprite_accessory/ears/tesharihigh
|
||||
name = "Teshari upper ears (colorable fluff)"
|
||||
desc = ""
|
||||
icon_state = "tesharihigh"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
extra_overlay = "tesharihighinner"
|
||||
|
||||
/datum/sprite_accessory/ears/tesharilow
|
||||
name = "Teshari lower ears (colorable fluff)"
|
||||
desc = ""
|
||||
icon_state = "tesharilow"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
extra_overlay = "tesharilowinner"
|
||||
|
||||
|
||||
// Special snowflake ears go below here.
|
||||
|
||||
/datum/sprite_accessory/ears/molenar_kitsune
|
||||
@@ -896,6 +921,14 @@
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
extra_overlay = "deertail_mark"
|
||||
|
||||
/datum/sprite_accessory/tail/teshari_fluffytail
|
||||
name = "Teshari alternative, colorable"
|
||||
desc = ""
|
||||
icon_state = "teshari_fluffytail"
|
||||
extra_overlay = "teshari_fluffytail_mark"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
//For all species tails. Includes haircolored tails.
|
||||
/datum/sprite_accessory/tail/special
|
||||
name = "Blank tail. Do not select."
|
||||
@@ -1093,338 +1126,4 @@
|
||||
desc = ""
|
||||
icon_state = "zenghu_taj"
|
||||
|
||||
/*
|
||||
////////////////////////////
|
||||
/ =--------------------= /
|
||||
/ == Taur Definitions == /
|
||||
/ =--------------------= /
|
||||
////////////////////////////
|
||||
*/
|
||||
|
||||
// Taur sprites are now a subtype of tail since they are mutually exclusive anyway.
|
||||
|
||||
/datum/sprite_accessory/tail/taur
|
||||
name = "You should not see this..."
|
||||
icon = 'icons/mob/vore/taurs_vr.dmi'
|
||||
do_colouration = 1 // Yes color, using tail color
|
||||
color_blend_mode = ICON_MULTIPLY // The sprites for taurs are designed for ICON_MULTIPLY
|
||||
|
||||
//Could do nested lists but it started becoming a nightmare. It'd be more fun for lookups of a_intent and m_intent, but then subtypes need to
|
||||
//duplicate all the messages, and it starts getting awkward. These are singletons, anyway!
|
||||
|
||||
//Messages to owner when stepping on/over
|
||||
var/msg_owner_help_walk = "You carefully step over %prey."
|
||||
var/msg_owner_help_run = "You carefully step over %prey."
|
||||
var/msg_owner_harm_walk = "You methodically place your foot down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
var/msg_owner_harm_run = "You carelessly step down onto %prey, crushing them!"
|
||||
var/msg_owner_disarm_walk = "You firmly push your foot down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
var/msg_owner_disarm_run = "You quickly push %prey to the ground with your foot!"
|
||||
var/msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
var/msg_owner_grab_success = "You pin %prey down onto the floor with your foot and curl your toes up around their body, trapping them inbetween them!"
|
||||
|
||||
//Messages to prey when stepping on/over
|
||||
var/msg_prey_help_walk = "%owner steps over you carefully!"
|
||||
var/msg_prey_help_run = "%owner steps over you carefully!"
|
||||
var/msg_prey_harm_walk = "%owner methodically places their foot upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
var/msg_prey_harm_run = "%owner steps carelessly on your body, crushing you!"
|
||||
var/msg_prey_disarm_walk = "%owner firmly pushes their foot down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
var/msg_prey_disarm_run = "%owner pushes you down to the ground with their foot!"
|
||||
var/msg_prey_grab_fail = "%owner steps down and squishes you with their foot, forcing you down to the ground!"
|
||||
var/msg_prey_grab_success = "%owner pins you down to the floor with their foot and curls their toes up around your body, trapping you inbetween them!"
|
||||
|
||||
//Messages for smalls moving under larges
|
||||
var/msg_owner_stepunder = "%owner runs between your legs." //Weird becuase in the case this is used, %owner is the 'bumper' (src)
|
||||
var/msg_prey_stepunder = "You run between %prey's legs." //Same, inverse
|
||||
|
||||
/datum/sprite_accessory/tail/taur/roiz_long_lizard // Not ACTUALLY a taur, but it uses 32x64 so it wouldn't fit in tails.dmi, and having it as a tail bugs up the sprite.
|
||||
name = "Long Lizard Tail (Roiz Lizden)"
|
||||
icon_state = "roiz_tail_s"
|
||||
do_colouration = 0
|
||||
ckeys_allowed = list("spoopylizz")
|
||||
|
||||
/datum/sprite_accessory/tail/taur/wolf
|
||||
name = "Wolf (Taur)"
|
||||
icon_state = "wolf_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/wolf/wolf_2c
|
||||
name = "Wolf dual-color (Taur)"
|
||||
icon_state = "wolf_s"
|
||||
extra_overlay = "wolf_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/wolf/synthwolf
|
||||
name = "SynthWolf dual-color (Taur)"
|
||||
icon_state = "synthwolf_s"
|
||||
extra_overlay = "synthwolf_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/naga
|
||||
name = "Naga (Taur)"
|
||||
icon_state = "naga_s"
|
||||
|
||||
msg_owner_help_walk = "You carefully slither around %prey."
|
||||
msg_prey_help_walk = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_help_run = "You carefully slither around %prey."
|
||||
msg_prey_help_run = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_disarm_run = "Your tail slides over %prey, pushing them down to the ground!"
|
||||
msg_prey_disarm_run = "%owner's tail slides over you, forcing you down to the ground!"
|
||||
|
||||
msg_owner_disarm_walk = "You push down on %prey with your tail, pinning them down under you!"
|
||||
msg_prey_disarm_walk = "%owner pushes down on you with their tail, pinning you down below them!"
|
||||
|
||||
msg_owner_harm_run = "Your heavy tail carelessly slides past %prey, crushing them!"
|
||||
msg_prey_harm_run = "%owner quickly goes over your body, carelessly crushing you with their heavy tail!"
|
||||
|
||||
msg_owner_harm_walk = "Your heavy tail slowly and methodically slides down upon %prey, crushing against the floor below!"
|
||||
msg_prey_harm_walk = "%owner's thick, heavy tail slowly and methodically slides down upon your body, mercilessly crushing you into the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You slither over %prey with your large, thick tail, smushing them against the ground before coiling up around them, trapping them within the tight confines of your tail!"
|
||||
msg_prey_grab_success = "%owner slithers over you with their large, thick tail, smushing you against the ground before coiling up around you, trapping you within the tight confines of their tail!"
|
||||
|
||||
msg_owner_grab_fail = "You squish %prey under your large, thick tail, forcing them onto the ground!"
|
||||
msg_prey_grab_fail = "%owner pins you under their large, thick tail, forcing you onto the ground!"
|
||||
|
||||
msg_prey_stepunder = "You jump over %prey's thick tail."
|
||||
msg_owner_stepunder = "%owner bounds over your tail."
|
||||
|
||||
/datum/sprite_accessory/tail/taur/naga/naga_2c
|
||||
name = "Naga dual-color (Taur)"
|
||||
icon_state = "naga_s"
|
||||
extra_overlay = "naga_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/horse
|
||||
name = "Horse (Taur)"
|
||||
icon_state = "horse_s"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your hoof!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their hoof!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your hoof down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their hoof down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your hoof down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their hoof upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey to the ground before scooping them up with your hooves!"
|
||||
msg_prey_grab_success = "%owner pins you to the ground before scooping you up with their hooves!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/horse/synthhorse
|
||||
name = "SynthHorse dual-color (Taur)"
|
||||
icon_state = "synthhorse_s"
|
||||
extra_overlay = "synthhorse_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/cow
|
||||
name = "Cow (Taur)"
|
||||
icon_state = "cow_s"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your hoof!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their hoof!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your hoof down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their hoof down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your hoof down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their hoof upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey to the ground before scooping them up with your hooves!"
|
||||
msg_prey_grab_success = "%owner pins you to the ground before scooping you up with their hooves!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/deer
|
||||
name = "Deer dual-color (Taur)"
|
||||
icon_state = "deer_s"
|
||||
extra_overlay = "deer_markings"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your hoof!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their hoof!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your hoof down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their hoof down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your hoof down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their hoof upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey to the ground before scooping them up with your hooves!"
|
||||
msg_prey_grab_success = "%owner pins you to the ground before scooping you up with their hooves!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/lizard
|
||||
name = "Lizard (Taur)"
|
||||
icon_state = "lizard_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/lizard/lizard_2c
|
||||
name = "Lizard dual-color (Taur)"
|
||||
icon_state = "lizard_s"
|
||||
extra_overlay = "lizard_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/lizard/synthlizard
|
||||
name = "SynthLizard dual-color (Taur)"
|
||||
icon_state = "synthlizard_s"
|
||||
extra_overlay = "synthlizard_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/spider
|
||||
name = "Spider (Taur)"
|
||||
icon_state = "spider_s"
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your leg!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their leg!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your leg down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their leg down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your leg down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their leg upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey down on the ground with your front leg before using your other leg to pick them up, trapping them between two of your front legs!"
|
||||
msg_prey_grab_success = "%owner pins you down on the ground with their front leg before using their other leg to pick you up, trapping you between two of their front legs!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their leg, forcing you down to the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/tents
|
||||
name = "Tentacles (Taur)"
|
||||
icon_state = "tent_s"
|
||||
|
||||
msg_prey_stepunder = "You run between %prey's tentacles."
|
||||
msg_owner_stepunder = "%owner runs between your tentacles."
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with some of your tentacles!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with some of their tentacles!"
|
||||
|
||||
msg_owner_disarm_walk = "You push down on %prey with some of your tentacles, pinning them down firmly under you!"
|
||||
msg_prey_disarm_walk = "%owner pushes down on you with some of their tentacles, pinning you down firmly below them!"
|
||||
|
||||
msg_owner_harm_run = "Your tentacles carelessly slide past %prey, crushing them!"
|
||||
msg_prey_harm_run = "%owner quickly goes over your body, carelessly crushing you with their tentacles!"
|
||||
|
||||
msg_owner_harm_walk = "Your tentacles methodically apply pressure on %prey's body, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner's thick tentacles methodically apply pressure on your body, crushing you into the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You slide over %prey with your tentacles, smushing them against the ground before wrapping one up around them, trapping them within the tight confines of your tentacles!"
|
||||
msg_prey_grab_success = "%owner slides over you with their tentacles, smushing you against the ground before wrapping one up around you, trapping you within the tight confines of their tentacles!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey with one of your tentacles, forcing them onto the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down onto you with one of their tentacles, squishing you and forcing you onto the ground!"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/feline
|
||||
name = "Feline (Taur)"
|
||||
icon_state = "feline_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/feline/feline_2c
|
||||
name = "Feline dual-color (Taur)"
|
||||
icon_state = "feline_s"
|
||||
extra_overlay = "feline_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/feline/synthfeline
|
||||
name = "SynthFeline dual-color (Taur)"
|
||||
icon_state = "synthfeline_s"
|
||||
extra_overlay = "synthfeline_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/slug
|
||||
name = "Slug (Taur)"
|
||||
icon_state = "slug_s"
|
||||
|
||||
msg_owner_help_walk = "You carefully slither around %prey."
|
||||
msg_prey_help_walk = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_help_run = "You carefully slither around %prey."
|
||||
msg_prey_help_run = "%owner's huge tail slithers past beside you!"
|
||||
|
||||
msg_owner_disarm_run = "Your tail slides over %prey, pushing them down to the ground!"
|
||||
msg_prey_disarm_run = "%owner's tail slides over you, forcing you down to the ground!"
|
||||
|
||||
msg_owner_disarm_walk = "You push down on %prey with your tail, pinning them down under you!"
|
||||
msg_prey_disarm_walk = "%owner pushes down on you with their tail, pinning you down below them!"
|
||||
|
||||
msg_owner_harm_run = "Your heavy tail carelessly slides past %prey, crushing them!"
|
||||
msg_prey_harm_run = "%owner quickly goes over your body, carelessly crushing you with their heavy tail!"
|
||||
|
||||
msg_owner_harm_walk = "Your heavy tail slowly and methodically slides down upon %prey, crushing against the floor below!"
|
||||
msg_prey_harm_walk = "%owner's thick, heavy tail slowly and methodically slides down upon your body, mercilessly crushing you into the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You slither over %prey with your large, thick tail, smushing them against the ground before coiling up around them, trapping them within the tight confines of your tail!"
|
||||
msg_prey_grab_success = "%owner slithers over you with their large, thick tail, smushing you against the ground before coiling up around you, trapping you within the tight confines of their tail!"
|
||||
|
||||
msg_owner_grab_fail = "You squish %prey under your large, thick tail, forcing them onto the ground!"
|
||||
msg_prey_grab_fail = "%owner pins you under their large, thick tail, forcing you onto the ground!"
|
||||
|
||||
msg_prey_stepunder = "You jump over %prey's thick tail."
|
||||
msg_owner_stepunder = "%owner bounds over your tail."
|
||||
|
||||
/datum/sprite_accessory/tail/taur/frog
|
||||
name = "Frog (Taur)"
|
||||
icon_state = "frog_s"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/drake //Enabling on request, no suit compatibility but then again see 2 above.
|
||||
name = "Drake (Taur)"
|
||||
icon_state = "drake_s"
|
||||
extra_overlay = "drake_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/taur/otie
|
||||
name = "Otie (Taur)"
|
||||
icon_state = "otie_s"
|
||||
extra_overlay = "otie_markings"
|
||||
|
||||
//wickedtemp: Chakat Tempest
|
||||
/datum/sprite_accessory/tail/taur/feline/tempest
|
||||
name = "Feline (wickedtemp) (Taur)"
|
||||
icon_state = "tempest_s"
|
||||
ckeys_allowed = list("wickedtemp")
|
||||
|
||||
//silencedmp5a5: Serdykov Antoz
|
||||
/datum/sprite_accessory/tail/taur/wolf/serdy
|
||||
name = "CyberSerdy (silencedmp5a5) (Taur)"
|
||||
icon_state = "serdy_s"
|
||||
ckeys_allowed = list("silencedmp5a5")
|
||||
|
||||
//liquidfirefly: Ariana Scol
|
||||
/datum/sprite_accessory/tail/taur/centipede
|
||||
name = "Centipede (liquidfirefly) (Taur)"
|
||||
icon_state = "ariana_s"
|
||||
ckeys_allowed = list("liquidfirefly")
|
||||
do_colouration = 0
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your leg!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their leg!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your leg down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their leg down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your leg down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their leg upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey down on the ground with your front leg before using your other leg to pick them up, trapping them between two of your front legs!"
|
||||
msg_prey_grab_success = "%owner pins you down on the ground with their front leg before using their other leg to pick you up, trapping you between two of their front legs!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their leg, forcing you down to the ground!"
|
||||
|
||||
//liquidfirefly: Ariana Scol
|
||||
/datum/sprite_accessory/tail/taur/alraune
|
||||
name = "Alraune (natje) (Taur)"
|
||||
icon_state = "alraune_s"
|
||||
ani_state = "alraune_closed_s"
|
||||
ckeys_allowed = list("natje")
|
||||
do_colouration = 0
|
||||
|
||||
msg_owner_disarm_run = "You quickly push %prey to the ground with your leg!"
|
||||
msg_prey_disarm_run = "%owner pushes you down to the ground with their leg!"
|
||||
|
||||
msg_owner_disarm_walk = "You firmly push your leg down on %prey, painfully but harmlessly pinning them to the ground!"
|
||||
msg_prey_disarm_walk = "%owner firmly pushes their leg down on you, quite painfully but harmlessly pinning you to the ground!"
|
||||
|
||||
msg_owner_harm_walk = "You methodically place your leg down upon %prey's body, slowly applying pressure, crushing them against the floor below!"
|
||||
msg_prey_harm_walk = "%owner methodically places their leg upon your body, slowly applying pressure, crushing you against the floor below!"
|
||||
|
||||
msg_owner_grab_success = "You pin %prey down on the ground with your front leg before using your other leg to pick them up, trapping them between two of your front legs!"
|
||||
msg_prey_grab_success = "%owner pins you down on the ground with their front leg before using their other leg to pick you up, trapping you between two of their front legs!"
|
||||
|
||||
msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!"
|
||||
msg_prey_grab_fail = "%owner steps down and squishes you with their leg, forcing you down to the ground!"
|
||||
//Taurs moved to a separate file due to extra code around them
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#define isTaurTail(A) istype(A, /datum/sprite_accessory/tail/taur)
|
||||
var/global/list/wing_icon_cache = list()
|
||||
|
||||
/mob/living/carbon/human/proc/get_ears_overlay()
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
|
||||
next_process = times_fired + (6 SECONDS/wait) //Set up our next process time.
|
||||
var/play_sound //Potential sound to play at the end to avoid code duplication.
|
||||
var/to_update = FALSE //Did anything update worthy happen?
|
||||
|
||||
/////////////////////////// Auto-Emotes ///////////////////////////
|
||||
if(contents.len && next_emote <= times_fired)
|
||||
@@ -41,7 +42,7 @@
|
||||
items_preserved |= I
|
||||
else
|
||||
digest_item(I)
|
||||
owner.updateVRPanel()
|
||||
to_update = TRUE
|
||||
did_an_item = TRUE
|
||||
|
||||
//Handle eaten mobs
|
||||
@@ -72,8 +73,7 @@
|
||||
items_preserved |= I
|
||||
else
|
||||
digest_item(I)
|
||||
owner.updateVRPanel()
|
||||
H.updateVRPanel()
|
||||
to_update = TRUE
|
||||
break
|
||||
|
||||
///////////////////////////// DM_HOLD /////////////////////////////
|
||||
@@ -103,7 +103,7 @@
|
||||
digest_alert_owner = replacetext(digest_alert_owner,"%prey",M)
|
||||
digest_alert_owner = replacetext(digest_alert_owner,"%belly",lowertext(name))
|
||||
|
||||
digest_alert_prey = replacetext(digest_alert_prey,"%pred",owner)
|
||||
digest_alert_prey = replacetext(digest_alert_prey,"%pred",owner)
|
||||
digest_alert_prey = replacetext(digest_alert_prey,"%prey",M)
|
||||
digest_alert_prey = replacetext(digest_alert_prey,"%belly",lowertext(name))
|
||||
|
||||
@@ -120,6 +120,8 @@
|
||||
R.cell.charge += 25*compensation
|
||||
else
|
||||
owner.nutrition += 4.5*compensation
|
||||
to_update = TRUE
|
||||
|
||||
continue
|
||||
|
||||
// Deal digestion damage (and feed the pred)
|
||||
@@ -135,9 +137,7 @@
|
||||
owner.nutrition += offset*(4.5*(digest_brute+digest_burn)/difference) //4.5 nutrition points per health point. Normal same size 100+100 health prey with average weight would give 900 points if the digestion was instant. With all the size/weight offset taxes plus over time oxyloss+hunger taxes deducted with non-instant digestion, this should be enough to not leave the pred starved.
|
||||
else
|
||||
owner.nutrition += 4.5*(digest_brute+digest_burn)/difference
|
||||
M.updateVRPanel()
|
||||
|
||||
owner.updateVRPanel()
|
||||
|
||||
//////////////////////////// DM_ABSORB ////////////////////////////
|
||||
else if(digest_mode == DM_ABSORB)
|
||||
@@ -156,6 +156,7 @@
|
||||
owner.nutrition += oldnutrition
|
||||
else if(M.nutrition < 100) //When they're finally drained.
|
||||
absorb_living(M)
|
||||
to_update = TRUE
|
||||
|
||||
//////////////////////////// DM_UNABSORB ////////////////////////////
|
||||
else if(digest_mode == DM_UNABSORB)
|
||||
@@ -168,6 +169,7 @@
|
||||
to_chat(M,"<span class='notice'>You suddenly feel solid again </span>")
|
||||
to_chat(owner,"<span class='notice'>You feel like a part of you is missing.</span>")
|
||||
owner.nutrition -= 100
|
||||
to_update = TRUE
|
||||
|
||||
//////////////////////////// DM_DRAIN ////////////////////////////
|
||||
else if(digest_mode == DM_DRAIN)
|
||||
@@ -261,4 +263,11 @@
|
||||
/////////////////////////// Make any noise ///////////////////////////
|
||||
if(play_sound)
|
||||
playsound(src, play_sound, vol = 100, vary = 1, falloff = VORE_SOUND_FALLOFF, ignore_walls = TRUE, preference = /datum/client_preference/digestion_noises)
|
||||
if(to_update)
|
||||
for(var/mob/living/M in contents)
|
||||
if(M.client)
|
||||
M.updateVRPanel()
|
||||
if(owner.client)
|
||||
owner.updateVRPanel()
|
||||
|
||||
return SSBELLIES_PROCESSED
|
||||
|
||||
@@ -507,7 +507,7 @@
|
||||
selected.name = new_name
|
||||
|
||||
if(href_list["b_mode"])
|
||||
var/list/menu_list = selected.digest_modes
|
||||
var/list/menu_list = selected.digest_modes.Copy()
|
||||
if(istype(usr,/mob/living/carbon/human))
|
||||
menu_list += DM_TRANSFORM
|
||||
|
||||
@@ -526,7 +526,7 @@
|
||||
selected.items_preserved.Cut() //Re-evaltuate all items in belly on belly-mode change
|
||||
|
||||
if(href_list["b_addons"])
|
||||
var/list/menu_list = selected.mode_flag_list
|
||||
var/list/menu_list = selected.mode_flag_list.Copy()
|
||||
var/toggle_addon = input("Toggle Addon") as null|anything in menu_list
|
||||
if(!toggle_addon)
|
||||
return 0
|
||||
|
||||
@@ -172,27 +172,6 @@
|
||||
can_hold = list(/obj/item/clothing/under/swimsuit/)
|
||||
has_items = list(/obj/item/clothing/under/swimsuit/fluff/penelope)
|
||||
|
||||
//Arokha:Aronai Kadigan
|
||||
/obj/item/weapon/storage/backpack/satchel/gen/fluff/aronai
|
||||
name = "blue medical satchel"
|
||||
desc = "A medical satchel done up in blue and white."
|
||||
|
||||
New()
|
||||
..() //Might look like a lot... but all small items.
|
||||
//Centcom stuff and permit
|
||||
new /obj/item/weapon/card/id/centcom/station/fluff/aronai(src)
|
||||
//new /obj/item/clothing/accessory/permit/gun/fluff/aronai_kadigan(src)
|
||||
//Gun and holster
|
||||
//new /obj/item/weapon/gun/projectile/nsfw(src)
|
||||
//new /obj/item/ammo_magazine/nsfw_mag(src)
|
||||
//new /obj/item/ammo_casing/nsfw_batt/stun(src)
|
||||
//new /obj/item/ammo_casing/nsfw_batt/stun(src)
|
||||
//new /obj/item/ammo_casing/nsfw_batt/net(src)
|
||||
//new /obj/item/clothing/accessory/holster(src)
|
||||
|
||||
/obj/item/weapon/storage/backpack/satchel/gen/fluff/aronai/digest_act(...)
|
||||
return FALSE //I get eaten a lot, okay
|
||||
|
||||
//Aerowing:Sebastian Aji
|
||||
/obj/item/weapon/storage/box/fluff/sebastian_aji
|
||||
name = "Sebastian's Lumoco Arms P3 Box"
|
||||
|
||||
@@ -1797,3 +1797,14 @@ Departamental Swimsuits, for general use
|
||||
else
|
||||
H << "<span class='warning'>This suit is not designed for you.</span>"
|
||||
return 0
|
||||
|
||||
//Zigfe:Zaoozaoo Xrimxuqmqixzix
|
||||
/obj/item/clothing/head/fluff/zao
|
||||
name = "Zao's Hat"
|
||||
desc = "A black hat that has an uncanny similarity to the HoS's hat. There's a small letter Z sewn on the inside of the brim."
|
||||
|
||||
icon = 'icons/vore/custom_clothes_vr.dmi'
|
||||
icon_state = "zao_cap"
|
||||
|
||||
icon_override = 'icons/vore/custom_clothes_vr.dmi'
|
||||
item_state = "zao_cap_mob"
|
||||
@@ -347,6 +347,11 @@
|
||||
name = "\improper MEUSOC .45"
|
||||
desc = "Some serious drywall work, coming up!"
|
||||
*/
|
||||
//hzdonut:Jesse Soemmer
|
||||
/obj/item/weapon/gun/projectile/revolver/fluff/jesselemat
|
||||
name = "Modified LeMat"
|
||||
desc = "The LeMat Revolver is a 9 shot revolver with a secondary firing barrel for loading shotgun shells. Uses .38-Special and 12g rounds depending on the barrel. This one appears to have had it's secondary barrel sealed off and looks to be in pristine condition. Either it's brand new, or its owner takes very good care of it."
|
||||
icon_state = "lemat"
|
||||
|
||||
//////////////////// Energy Weapons ////////////////////
|
||||
|
||||
@@ -794,4 +799,4 @@
|
||||
if(T.z in using_map.map_levels)
|
||||
to_chat(user, "<span class='warning'>The safety device prevents the gun from firing this close to the facility.</span>")
|
||||
return 0
|
||||
return ..()
|
||||
return ..()
|
||||
|
||||
@@ -51,6 +51,11 @@
|
||||
name = "Sorrel Cavalet's Sidearm Permit"
|
||||
desc = "A card indicating that the owner is allowed to carry a sidearm. It is issued by CentCom, so it is valid until it expires on September 26th, 2562."
|
||||
|
||||
// hzdonut:Jesse Soemmer
|
||||
/obj/item/clothing/accessory/permit/gun/fluff/JesseSoemmer
|
||||
name = "Jesse Soemmer's Sidearm Permit"
|
||||
desc = "A card indicating that the owner is allowed to carry a sidearm. It is issued by CentCom, so it is valid until it expires on March 4, 2563."
|
||||
|
||||
/* Legacy Permits
|
||||
// BEGIN - PROTOTYPE
|
||||
/obj/item/clothing/accessory/permit/gun/fluff
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
name = "\improper MPA6 \'Sickshot\'"
|
||||
desc = "Need to stun someone? Don't mind having to clean up the mess afterwards? The Sickshot is the answer to your prayers. \
|
||||
Using a short-range concentrated blast of disruptive sound, the Sickshot will nauseate and confuse the target for several seconds. NOTE: Not suitable \
|
||||
for use in vacuum, or on animals. May cause contraction and release of various 'things' from various 'orifices'."
|
||||
for use in vacuum. Usage on animals may cause panic and rage without stunning. May cause contraction and release of various 'things' from various 'orifices', even if the target is already dead."
|
||||
|
||||
description_info = "This gun causes nausea in targets, stunning them briefly and causing vomiting. It will also cause them to vomit up prey, sometimes. Repeated shots may help in that case."
|
||||
description_fluff = ""
|
||||
|
||||
Reference in New Issue
Block a user