Merge branch 'MrSky12:master' into master

This commit is contained in:
Alphas00
2024-06-29 11:51:47 +02:00
committed by GitHub
13 changed files with 295 additions and 50 deletions
@@ -69,12 +69,3 @@
/obj/effect/decal/cleanable/juice/streak
random_icon_states = list("streak1", "streak2", "streak3", "streak4", "streak5")
//extreme variant, for admin or item purposes
/datum/symptom/berry/extreme
name = "Extreme berrification"
stealth = -7
resistance = 11
stage_speed = 10
transmittable = 2
level = 7
severity = 5
@@ -0,0 +1,20 @@
/mob/living/carbon/can_buckle()
if(HAS_TRAIT(src, TRAIT_NO_BUCKLE))
return FALSE
return ..()
/datum/species/can_equip(obj/item/I, slot, disable_warning, mob/living/carbon/human/H, bypass_equip_delay_self)
if(HAS_TRAIT(H, TRAIT_NO_BACKPACK) && slot == SLOT_BACK)
to_chat(H, "<span class='warning'>You are too fat to wear anything on your back.</span>")
return FALSE
if(!istype(I, /obj/item/clothing/under/color/grey/modular) && HAS_TRAIT(H, TRAIT_NO_JUMPSUIT) && slot == SLOT_W_UNIFORM)
to_chat(H, "<span class='warning'>You are too fat to wear [I].</span>")
return FALSE
if(HAS_TRAIT(H, TRAIT_NO_MISC) && (slot == SLOT_SHOES || slot == SLOT_GLOVES || slot == SLOT_WEAR_SUIT))
to_chat(H, "<span class='warning'>You are too fat to wear [I].</span>")
return FALSE
return ..()
@@ -51,6 +51,13 @@
return FALSE
spawned_cocoon.icon_state = pick("cocoon_large1","cocoon_large2","cocoon_large3")
var/cocoon_size = target.size_multiplier
var/matrix/new_matrix = new
new_matrix.Scale(cocoon_size)
new_matrix.Translate(0,16 * (cocoon_size-1))
spawned_cocoon.transform = new_matrix
return TRUE
user.visible_message("<span class='warning'>[user] attempts to remove [target]'s [target.wear_suit]!</span>", "<span class='warning'>You attempt to remove [target]'s [target.wear_suit].</span>")
@@ -22,8 +22,67 @@
///stuckage
var/stuckage = FALSE
// Helplessness, a set of prefs that make things extra tough at higher weights. If set to FALSE, they won't do anything.
///What fatness level disables movement?
var/helplessness_no_movement = FALSE
///What fatness level makes the user clumsy?
var/helplessness_clumsy = FALSE
///What fatness level makes the user nearsighted
var/helplessness_nearsighted = FALSE
///What fatness level makes the user's face unrecognizable.
var/helplessness_hidden_face = FALSE
///What fatness level makes the user unable to speak?
var/helplessness_mute = FALSE
///What fatness level, makes the user unable to use their arms?
var/helplessness_immobile_arms = FALSE
///What fatness level prevents the user from wearing jumpsuits
var/helplessness_clothing_jumpsuit = FALSE
///What fatness level prevents the user from wearing non-jumpsuit clothing
var/helplessness_clothing_misc = FALSE
///What fatness level prevents the user from wearing anything on their back
var/helplessness_clothing_back = FALSE
///What fatness level prevents the user from being buckled to anything?
var/helplessness_no_buckle = FALSE
///Does the person wish to be involved with non-con weight gain events?
var/noncon_weight_gain = FALSE
///What is the max weight that the person wishes to be? If set to FALSE, there will be no max weight
var/max_weight = FALSE
/// Prompts the user to choose a weight and returns said weight.
/datum/preferences/proc/chose_weight(input_text = "Choose a weight.", mob/user)
var/chosen_weight = FALSE
var/picked_weight_class = input(user,
input_text,
"Character Preference", "None") as null|anything in list(
"None", "Fat", "Fatter", "Very Fat", "Obese", "Morbidly Obese", "Extremely Obese", "Barely Mobile", "Immobile", "Other")
switch(picked_weight_class)
if("Fat")
chosen_weight = FATNESS_LEVEL_FATTER
if("Fatter")
chosen_weight = FATNESS_LEVEL_VERYFAT
if("Very Fat")
chosen_weight = FATNESS_LEVEL_OBESE
if("Obese")
chosen_weight = FATNESS_LEVEL_MORBIDLY_OBESE
if("Morbidly Obese")
chosen_weight = FATNESS_LEVEL_EXTREMELY_OBESE
if("Extremely Obese")
chosen_weight = FATNESS_LEVEL_BARELYMOBILE
if("Barely Mobile")
chosen_weight = FATNESS_LEVEL_IMMOBILE
if("Immobile")
chosen_weight = FATNESS_LEVEL_BLOB
if(picked_weight_class != "Other")
return chosen_weight
var/custom_fatness = input(user, "What fatness level (BFI) would you like to use?", "Character Preference") as null|num
if(isnull(custom_fatness))
custom_fatness = FALSE
return custom_fatness