Merge branch 'master' of https://github.com/Yawn-Wider/YWPolarisVore into August2020UpstreamPull

August2020UpstreamPull
This commit is contained in:
Razgriz
2020-08-09 02:58:18 -07:00
915 changed files with 253357 additions and 90809 deletions
@@ -1,4 +1,4 @@
/obj/item/clothing/suit/web_bindings
/obj/item/clothing/suit/web_bindings/
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_override = 'icons/vore/custom_clothes_vr.dmi'
name = "web bindings"
@@ -7,15 +7,19 @@
item_state = "web_bindings_mob"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL
/*yw edit start - Teshari Sprite /Commented out until we know this is needed again if it is please just uncomment this, Izac
/obj/item/clothing/suit/straight_jacket/web_bindings/get_worn_icon_file(var/body_type,var/slot_name,var/default_icon,var/inhands)
//yw edit - Teshari sprite
sprite_sheets = list(
SPECIES_TESHARI = 'icons/vore/custom_onmob_yw.dmi'
)
//yw edit end
//yw edit start - Teshari Sprite
/obj/item/clothing/suit/web_bindings/get_worn_icon_file(var/body_type,var/slot_name,var/default_icon,var/inhands)
if(body_type == SPECIES_TESHARI)
if(!inhands)
return 'icons/vore/custom_onmob_yw.dmi'
else
return ..()
yw edit end*/
return ..()
//yw edit end
/mob/living/proc/weaveWebBindings()
set name = "Weave Web Bindings"
@@ -126,6 +126,8 @@
var/icon/suit_sprites = null //File for suit sprites, if any.
var/icon/under_sprites = null
var/icon_sprite_tag // This is where we put stuff like _Horse, so we can assign icons easier.
var/can_ride = 1 //whether we're real rideable taur or just in that category
//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
@@ -167,12 +169,20 @@
icon_state = "wolf_s"
under_sprites = 'icons/mob/taursuits_wolf_vr.dmi'
suit_sprites = 'icons/mob/taursuits_wolf_vr.dmi'
icon_sprite_tag = "wolf"
//TFF 22/11/19 - CHOMPStation port of fat taur sprites
/datum/sprite_accessory/tail/taur/fatwolf
name = "Fat Wolf (Taur)"
icon_state = "fatwolf_s"
icon_sprite_tag = "wolf" //This could be modified later.
/datum/sprite_accessory/tail/taur/wolf/wolf_2c
name = "Wolf dual-color (Taur)"
icon_state = "wolf_s"
extra_overlay = "wolf_markings"
//icon_sprite_tag = "wolf2c"
//MTosh 08/01/2020 - CHOMPstation Moved Synth Wolf up under wolf dual-color, and Fat Wolf below Synth Wolf, to better group original vorestation wolf taurs/differentiate from Chompstation Fat Taurs
/datum/sprite_accessory/tail/taur/wolf/synthwolf
name = "SynthWolf dual-color (Taur)"
@@ -189,11 +199,19 @@
name = "Fat Wolf dual-color (Taur)"
icon_state = "fatwolf_s"
extra_overlay = "fatwolf_markings"
//icon_sprite_tag = "fatwolf2c"
/datum/sprite_accessory/tail/taur/wolf/synthwolf
name = "SynthWolf dual-color (Taur)"
icon_state = "synthwolf_s"
extra_overlay = "synthwolf_markings"
//icon_sprite_tag = "synthwolf"
/datum/sprite_accessory/tail/taur/naga
name = "Naga (Taur)"
icon_state = "naga_s"
suit_sprites = 'icons/mob/taursuits_naga_vr.dmi'
//icon_sprite_tag = "naga"
msg_owner_help_walk = "You carefully slither around %prey."
msg_prey_help_walk = "%owner's huge tail slithers past beside you!"
@@ -226,12 +244,14 @@
name = "Naga dual-color (Taur)"
icon_state = "naga_s"
extra_overlay = "naga_markings"
//icon_sprite_tag = "naga2c"
/datum/sprite_accessory/tail/taur/horse
name = "Horse (Taur)"
icon_state = "horse_s"
under_sprites = 'icons/mob/taursuits_horse_vr.dmi'
suit_sprites = 'icons/mob/taursuits_horse_vr.dmi'
icon_sprite_tag = "horse"
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!"
@@ -252,11 +272,13 @@
name = "SynthHorse dual-color (Taur)"
icon_state = "synthhorse_s"
extra_overlay = "synthhorse_markings"
//icon_sprite_tag = "synthhorse"
/datum/sprite_accessory/tail/taur/cow
name = "Cow (Taur)"
icon_state = "cow_s"
suit_sprites = 'icons/mob/taursuits_cow_vr.dmi'
icon_sprite_tag = "cow"
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!"
@@ -278,6 +300,7 @@
icon_state = "deer_s"
extra_overlay = "deer_markings"
suit_sprites = 'icons/mob/taursuits_deer_vr.dmi'
icon_sprite_tag = "deer"
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!"
@@ -298,21 +321,25 @@
name = "Lizard (Taur)"
icon_state = "lizard_s"
suit_sprites = 'icons/mob/taursuits_lizard_vr.dmi'
icon_sprite_tag = "lizard"
/datum/sprite_accessory/tail/taur/lizard/lizard_2c
name = "Lizard dual-color (Taur)"
icon_state = "lizard_s"
extra_overlay = "lizard_markings"
//icon_sprite_tag = "lizard2c"
/datum/sprite_accessory/tail/taur/lizard/synthlizard
name = "SynthLizard dual-color (Taur)"
icon_state = "synthlizard_s"
extra_overlay = "synthlizard_markings"
//icon_sprite_tag = "synthlizard"
/datum/sprite_accessory/tail/taur/spider
name = "Spider (Taur)"
icon_state = "spider_s"
suit_sprites = 'icons/mob/taursuits_spider_vr.dmi'
icon_sprite_tag = "spider"
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!"
@@ -332,6 +359,7 @@
/datum/sprite_accessory/tail/taur/tents
name = "Tentacles (Taur)"
icon_state = "tent_s"
icon_sprite_tag = "tentacle"
can_ride = 0
msg_prey_stepunder = "You run between %prey's tentacles."
@@ -359,11 +387,13 @@
name = "Feline (Taur)"
icon_state = "feline_s"
suit_sprites = 'icons/mob/taursuits_feline_vr.dmi'
icon_sprite_tag = "feline"
//TFF 22/11/19 - CHOMPStation port of fat taur sprites
/datum/sprite_accessory/tail/taur/fatfeline
name = "Fat Feline (Taur)"
icon_state = "fatfeline_s"
//icon_sprite_tag = "fatfeline"
/datum/sprite_accessory/tail/taur/fatfeline_wag
name = "Fat Feline (Taur) (vwag)"
@@ -374,22 +404,26 @@
name = "Feline dual-color (Taur)"
icon_state = "feline_s"
extra_overlay = "feline_markings"
//icon_sprite_tag = "feline2c"
//TFF 22/11/19 - CHOMPStation port of fat taur sprites
/datum/sprite_accessory/tail/taur/feline/fatfeline_2c
name = "Fat Feline dual-color (Taur)"
icon_state = "fatfeline_s"
extra_overlay = "fatfeline_markings"
//icon_sprite_tag = "fatfeline2c"
/datum/sprite_accessory/tail/taur/feline/synthfeline
name = "SynthFeline dual-color (Taur)"
icon_state = "synthfeline_s"
extra_overlay = "synthfeline_markings"
//icon_sprite_tag = "synthfeline"
/datum/sprite_accessory/tail/taur/slug
name = "Slug (Taur)"
icon_state = "slug_s"
suit_sprites = 'icons/mob/taursuits_slug_vr.dmi'
icon_sprite_tag = "slug"
msg_owner_help_walk = "You carefully slither around %prey."
msg_prey_help_walk = "%owner's huge tail slithers past beside you!"
@@ -421,11 +455,13 @@
/datum/sprite_accessory/tail/taur/frog
name = "Frog (Taur)"
icon_state = "frog_s"
icon_sprite_tag = "frog"
/datum/sprite_accessory/tail/taur/thicktentacles
name = "Thick Tentacles (Taur)"
icon_state = "tentacle_s"
can_ride = 0
icon_sprite_tag = "thick_tentacles"
msg_prey_stepunder = "You run between %prey's tentacles."
msg_owner_stepunder = "%owner runs between your tentacles."
@@ -453,12 +489,14 @@
icon_state = "drake_s"
extra_overlay = "drake_markings"
suit_sprites = 'icons/mob/taursuits_drake_vr.dmi'
icon_sprite_tag = "drake"
/datum/sprite_accessory/tail/taur/otie
name = "Otie (Taur)"
icon_state = "otie_s"
extra_overlay = "otie_markings"
suit_sprites = 'icons/mob/taursuits_otie_vr.dmi'
icon_sprite_tag = "otie"
/datum/sprite_accessory/tail/taur/alraune/alraune_2c
name = "Alraune (dual color)"
@@ -469,12 +507,14 @@
extra_overlay = "alraunecolor_markings"
extra_overlay_w = "alraunecolor_closed_markings"
clip_mask_state = "taur_clip_mask_alraune"
icon_sprite_tag = "alraune"
/datum/sprite_accessory/tail/taur/wasp
name = "Wasp (dual color)"
icon_state = "wasp_s"
extra_overlay = "wasp_markings"
clip_mask_state = "taur_clip_mask_wasp"
icon_sprite_tag = "wasp"
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!"
@@ -495,6 +535,7 @@
name = "Mermaid (Taur)"
icon_state = "mermaid_s"
can_ride = 0
icon_sprite_tag = "mermaid"
msg_owner_help_walk = "You carefully slither around %prey."
msg_prey_help_walk = "%owner's huge tail slithers past beside you!"
@@ -158,7 +158,7 @@
icon = 'icons/mob/vore/tails_yw.dmi'
name = "Female teshari tail(Pattern, Alt.)"
desc = ""
icon_state = "seromitail_s"
icon_state = "teshari_fluffytail"
do_colouration = 1
color_blend_mode = ICON_MULTIPLY
extra_overlay = "teshpattern_fem_alt"
@@ -168,7 +168,7 @@
icon = 'icons/mob/vore/tails_yw.dmi'
name = "Male teshari tail(Pattern, Alt.)"
desc = ""
icon_state = "seromitail_s"
icon_state = "teshari_fluffytail"
do_colouration = 1
color_blend_mode = ICON_MULTIPLY
extra_overlay = "teshpattern_male_alt"
+1 -1
View File
@@ -24,7 +24,7 @@
var/digest_burn = 0.5 // Burn damage per tick in digestion mode
var/immutable = FALSE // Prevents this belly from being deleted
var/escapable = FALSE // Belly can be resisted out of at any time
var/escapetime = 60 SECONDS // Deciseconds, how long to escape this belly
var/escapetime = 20 SECONDS // Deciseconds, how long to escape this belly
var/digestchance = 0 // % Chance of stomach beginning to digest if prey struggles
var/absorbchance = 0 // % Chance of stomach beginning to absorb if prey struggles
var/escapechance = 0 // % Chance of prey beginning to escape if prey struggles.
@@ -165,12 +165,16 @@ GLOBAL_LIST_INIT(digest_modes, list())
B.change_tail_nocolor(H)
B.change_wing_nocolor(H)
B.change_species(H, 1, 1) // ,1) preserves coloring
H.species.create_organs(H)
H.sync_organ_dna()
return null
if(changes_ears_tail_wing_color && (B.check_ears(H) || B.check_tail(H) || B.check_wing(H) || B.check_species(H)))
B.change_ears(H)
B.change_tail(H)
B.change_wing(H)
B.change_species(H, 1, 2) // ,2) does not preserve coloring.
H.species.create_organs(H)
H.sync_organ_dna()
return null
if(changes_gender && B.check_gender(H, changes_gender_to))
B.change_gender(H, changes_gender_to, 1)
+43 -2
View File
@@ -13,11 +13,12 @@
var/weight = 137 // Weight for mobs for weightgain system
var/weight_gain = 1 // How fast you gain weight
var/weight_loss = 0.5 // How fast you lose weight
var/vore_egg_type = "egg" // Default egg type.
var/vore_egg_type = "egg" // Default egg type.
var/feral = 0 // How feral the mob is, if at all. Does nothing for non xenochimera at the moment.
var/revive_ready = REVIVING_READY // Only used for creatures that have the xenochimera regen ability, so far.
var/metabolism = 0.0015
var/vore_taste = null // What the character tastes like
var/vore_smell = null // What the character smells like
var/no_vore = FALSE // If the character/mob can vore.
var/noisy = FALSE // Toggle audible hunger.
var/absorbing_prey = 0 // Determines if the person is using the succubus drain or not. See station_special_abilities_vr.
@@ -38,6 +39,7 @@
/hook/living_new/proc/vore_setup(mob/living/M)
M.verbs += /mob/living/proc/escapeOOC
M.verbs += /mob/living/proc/lick
M.verbs += /mob/living/proc/smell
M.verbs += /mob/living/proc/switch_scaling
if(M.no_vore) //If the mob isn't supposed to have a stomach, let's not give it an insidepanel so it can make one for itself, or a stomach.
return TRUE
@@ -232,6 +234,7 @@
P.digest_leave_remains = src.digest_leave_remains
P.allowmobvore = src.allowmobvore
P.vore_taste = src.vore_taste
P.vore_smell = src.vore_smell
P.permit_healbelly = src.permit_healbelly
P.can_be_drop_prey = src.can_be_drop_prey
P.can_be_drop_pred = src.can_be_drop_pred
@@ -268,6 +271,7 @@
digest_leave_remains = P.digest_leave_remains
allowmobvore = P.allowmobvore
vore_taste = P.vore_taste
vore_smell = P.vore_smell
permit_healbelly = P.permit_healbelly
can_be_drop_prey = P.can_be_drop_prey
can_be_drop_pred = P.can_be_drop_pred
@@ -367,6 +371,43 @@
var/datum/reagent/R = H.touching.reagent_list[1]
taste_message += " You also get the flavor of [R.taste_description] from something on them"
return taste_message
//This is just the above proc but switched about.
/mob/living/proc/smell(mob/living/smelled in living_mobs(1))
set name = "Smell"
set category = "IC"
set desc = "Smell someone nearby!"
set popup_menu = FALSE
if(!istype(smelled))
return
if(!checkClickCooldown() || incapacitated(INCAPACITATION_ALL))
return
setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
visible_message("<span class='warning'>[src] smells [smelled]!</span>","<span class='notice'>You smell [smelled]. They smell like [smelled.get_smell_message()].</span>","<b>Sniff!</b>")
/mob/living/proc/get_smell_message(allow_generic = 1)
if(!vore_smell && !allow_generic)
return FALSE
var/smell_message = ""
if(vore_smell && (vore_smell != ""))
smell_message += "[vore_smell]"
else
if(ishuman(src))
var/mob/living/carbon/human/H = src
smell_message += "a normal [H.custom_species ? H.custom_species : H.species.name]"
else
smell_message += "a plain old normal [src]"
return smell_message
//
// OOC Escape code for pref-breaking or AFK preds
//
@@ -610,7 +651,7 @@
to_chat(src, "<span class='notice'>You can taste the flavor of spicy cardboard.</span>")
else if(istype(I,/obj/item/device/flashlight/glowstick))
to_chat(src, "<span class='notice'>You found out the glowy juice only tastes like regret.</span>")
else if(istype(I,/obj/item/weapon/cigbutt))
else if(istype(I,/obj/item/trash/cigbutt))
to_chat(src, "<span class='notice'>You can taste the flavor of bitter ash. Classy.</span>")
else if(istype(I,/obj/item/clothing/mask/smokable))
var/obj/item/clothing/mask/smokable/C = I
+3
View File
@@ -51,6 +51,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
var/allowmobvore = TRUE
var/list/belly_prefs = list()
var/vore_taste = "nothing in particular"
var/vore_smell = "nothing in particular"
var/permit_healbelly = TRUE
var/can_be_drop_prey = FALSE
var/can_be_drop_pred = FALSE
@@ -129,6 +130,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
digest_leave_remains = json_from_file["digest_leave_remains"]
allowmobvore = json_from_file["allowmobvore"]
vore_taste = json_from_file["vore_taste"]
vore_smell = json_from_file["vore_smell"]
permit_healbelly = json_from_file["permit_healbelly"]
can_be_drop_prey = json_from_file["can_be_drop_prey"]
can_be_drop_pred = json_from_file["can_be_drop_pred"]
@@ -184,6 +186,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
"digest_leave_remains" = digest_leave_remains,
"allowmobvore" = allowmobvore,
"vore_taste" = vore_taste,
"vore_smell" = vore_smell,
"permit_healbelly" = permit_healbelly,
"can_be_drop_prey" = can_be_drop_prey,
"can_be_drop_pred" = can_be_drop_pred,
+14 -6
View File
@@ -437,6 +437,7 @@
dat += jointext(nightmare_list, null) //AAAA
dat += "<br><a href='?src=\ref[src];setflavor=1'>Set Your Taste</a>"
dat += "<br><a href='?src=\ref[src];setsmell=1'>Set Your Smell</a>"
dat += "<br><a href='?src=\ref[src];togglenoisy=1'>Toggle Hunger Noises</a>"
//Under the last HR, save and stuff.
@@ -993,6 +994,17 @@
return FALSE
user.vore_taste = new_flavor
if(href_list["setsmell"])
var/new_smell = html_encode(input(usr,"What your character smells like (40ch limit). This text will be printed to the pred after 'X smells of...' so just put something like 'strawberries and cream':","Character Smell",user.vore_smell) as text|null)
if(!new_smell)
return FALSE
new_smell = readd_quotes(new_smell)
if(length(new_smell) > FLAVOR_MAX)
alert("Entered perfume/smell text too long. [FLAVOR_MAX] character limit.","Error!")
return FALSE
user.vore_smell = new_smell
if(href_list["toggle_dropnom_pred"])
var/choice = alert(user, "This toggle is for spontaneous, environment related vore as a predator, including drop-noms, teleporters, etc. You are currently [user.can_be_drop_pred ? " able to eat prey that you encounter by environmental actions." : "avoiding eating prey encountered in the environment."]", "", "Be Pred", "Cancel", "Don't be Pred")
switch(choice)
@@ -1014,7 +1026,7 @@
user.can_be_drop_prey = FALSE
if(href_list["toggledg"])
var/choice = alert(user, "This button is for those who don't like being digested. It can make you undigestable. Messages admins when changed, so don't try to use it for mechanical benefit. Set it once and save it. Digesting you is currently: [user.digestable ? "Allowed" : "Prevented"]", "", "Allow Digestion", "Cancel", "Prevent Digestion")
var/choice = alert(user, "This button is for those who don't like being digested. It can make you undigestable. Digesting you is currently: [user.digestable ? "Allowed" : "Prevented"]", "", "Allow Digestion", "Cancel", "Prevent Digestion")
switch(choice)
if("Cancel")
return FALSE
@@ -1023,8 +1035,6 @@
if("Prevent Digestion")
user.digestable = FALSE
message_admins("[key_name(user)] toggled their digestability to [user.digestable] [ADMIN_COORDJMP(user)]")
if(user.client.prefs_vr)
user.client.prefs_vr.digestable = user.digestable
@@ -1081,7 +1091,7 @@
user.client.prefs_vr.digest_leave_remains = user.digest_leave_remains
if(href_list["togglemv"])
var/choice = alert(user, "This button is for those who don't like being eaten by mobs. Messages admins when changed, so don't try to use it for mechanical benefit. Set it once and save it. Mobs are currently: [user.allowmobvore ? "Allowed to eat" : "Prevented from eating"] you.", "", "Allow Mob Predation", "Cancel", "Prevent Mob Predation")
var/choice = alert(user, "This button is for those who don't like being eaten by mobs. Mobs are currently: [user.allowmobvore ? "Allowed to eat" : "Prevented from eating"] you.", "", "Allow Mob Predation", "Cancel", "Prevent Mob Predation")
switch(choice)
if("Cancel")
return FALSE
@@ -1090,8 +1100,6 @@
if("Prevent Mob Predation")
user.allowmobvore = FALSE
message_admins("[key_name(user)] toggled their mob vore preference to [user.allowmobvore] [ADMIN_COORDJMP(user)]")
if(user.client.prefs_vr)
user.client.prefs_vr.allowmobvore = user.allowmobvore
@@ -281,35 +281,19 @@ Swimsuits, for general use, to avoid arriving to work with your swimsuit.
/obj/item/weapon/storage/box/monkeycubes/sobakacubes
name = "sobaka cube box"
desc = "Drymate brand sobaka cubes. Just add water!"
/obj/item/weapon/storage/box/monkeycubes/sobakacubes/New()
..()
for(var/i = 1 to 4)
new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/sobakacube(src)
starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/sobakacube = 4)
/obj/item/weapon/storage/box/monkeycubes/sarucubes
name = "saru cube box"
desc = "Drymate brand saru cubes. Just add water!"
/obj/item/weapon/storage/box/monkeycubes/sarucubes/New()
..()
for(var/i = 1 to 4)
new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/sarucube(src)
starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/sarucube = 4)
/obj/item/weapon/storage/box/monkeycubes/sparracubes
name = "sparra cube box"
desc = "Drymate brand sparra cubes. Just add water!"
/obj/item/weapon/storage/box/monkeycubes/sparracubes/New()
..()
for(var/i = 1 to 4)
new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/sparracube(src)
starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/sparracube = 4)
/obj/item/weapon/storage/box/monkeycubes/wolpincubes
name = "wolpin cube box"
desc = "Drymate brand wolpin cubes. Just add water!"
/obj/item/weapon/storage/box/monkeycubes/wolpincubes/New()
..()
for(var/i = 1 to 4)
new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/wolpincube(src)
starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/wolpincube = 4)
@@ -1649,4 +1649,58 @@
icon_state = "khlife3"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "khlife_overlay"
overlay_state = "khlife_overlay"
overlay_state = "khlife_overlay"
// ******
// KBraid
// ******
/obj/item/clothing/glasses/fluff/avigoggles_yw
name = "aviation goggles"
desc = "You're such a goggle head!"
icon = 'icons/vore/custom_clothes_yw.dmi'
icon_state = "avigoggles_i"
item_state = "avigoggles"
icon_override = 'icons/vore/custom_clothes_yw.dmi'
action_button_name = "Flip Aviation Goggles"
item_flags = AIRTIGHT
var/up = 0
/obj/item/clothing/glasses/fluff/avigoggles_yw/attack_self()
toggle()
/obj/item/clothing/glasses/fluff/avigoggles_yw/verb/toggle()
set category = "Object"
set name = "Adjust aviation goggles"
set src in usr
if(usr.canmove && !usr.stat && !usr.restrained())
if(src.up)
src.up = !src.up
flags_inv |= HIDEEYES
body_parts_covered |= EYES
item_state = initial(item_state)
to_chat(usr, "You flip \the [src] down to protect your eyes.")
else
src.up = !src.up
flags_inv &= ~HIDEEYES
body_parts_covered &= ~EYES
item_state = "[initial(item_state)]_up"
to_chat(usr, "You push \the [src] up out of your face.")
update_clothing_icon()
usr.update_action_buttons()
/obj/item/clothing/glasses/fluff/avigoggles_yw/get_worn_icon_file(var/body_type,var/slot_name,var/default_icon,var/inhands)
if(body_type == SPECIES_TESHARI)
if(!inhands)
return 'icons/vore/custom_clothes_yw_special.dmi'
else
return ..()
/obj/item/clothing/under/harness_white
name = "white gear harness"
desc = "How... minimalist."
icon = 'icons/vore/custom_clothes_yw.dmi'
icon_state = "gear_harness_white"
icon_override = 'icons/vore/custom_clothes_yw.dmi'
item_state = "gear_harness_white"
body_parts_covered = 0
+10 -2
View File
@@ -243,10 +243,18 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2
if(a_intent == I_HELP) // Theoretically not possible, but just in case.
return FALSE
if(tmob.a_intent != I_HELP && prob(35))
to_chat(pred, "<span class='danger'>[prey] dodges out from under your foot!</span>")
to_chat(prey, "<span class='danger'>You narrowly avoid [pred]'s foot!</span>")
return FALSE
now_pushing = 0
forceMove(tmob.loc)
if(a_intent == I_GRAB || a_intent == I_DISARM)
tmob.resting = 1
if(tmob.a_intent == I_HELP)
tmob.resting = 1
else
tmob.Weaken(1)
var/size_damage_multiplier = size_multiplier - tmob.size_multiplier
// This technically means that I_GRAB will set this value to the same as I_HARM, but
@@ -311,7 +319,7 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2
message_pred = STEP_TEXT_OWNER(tail.msg_owner_disarm_walk)
message_prey = STEP_TEXT_PREY(tail.msg_prey_disarm_walk)
add_attack_logs(pred, prey, "Pinned underfoot (walk, about [damage] halloss)")
tmob.apply_damage(damage, HALLOSS)
tmob.Weaken(2) //Removed halloss because it was being abused
if(I_HURT)
message_pred = "You methodically place your foot down upon [prey]'s body, slowly applying pressure, crushing them against the floor below!"
message_prey = "[pred] methodically places their foot upon your body, slowly applying pressure, crushing you against the floor below!"