This commit is contained in:
Metis
2024-08-24 16:28:03 -04:00
parent 6a27a0758c
commit 7f2cb56578
4 changed files with 70 additions and 3 deletions
@@ -29,7 +29,7 @@
if(!istype(target_human))
return
for(var/trait in trait_list)
for(var/trait in traits_list)
ADD_TRAIT(target, trait, src)
target_human.nutri_mult += 1
@@ -40,9 +40,69 @@
if(!.)
return
for(var/trait in trait_list)
REMOVE_TRAIT(target, trait, src)
var/mob/living/carbon/human/target_human = source
if(!istype(target_human))
return
for(var/trait in traits_list)
REMOVE_TRAIT(target_human, trait, src)
target_human.nutri_mult -= 1
return TRUE
/obj/item/implant/docile/livstock
name = "livestock implant"
traits_list = list(
TRAIT_WEIGHT_LOSS_IMMUNE,
TRAIT_PACIFISM,
TRAIT_CLUMSY,
TRAIT_FAT_GOOD,
TRAIT_HEAVY_SLEEPER,
TRAIT_DOCILE,
TRAIT_NO_MISC,
TRAIT_NORUNNING,
)
/// What is the name of the mob before we change it?
var/stored_name = ""
/// What name do we want to give the mob before adding the randomized number
var/name_to_give = "Livestock"
/obj/item/implant/docile/livestock/can_be_implanted_in(mob/living/target)
. = ..()
if(!.)
return FALSE
return target?.client?.prefs?.extreme_fatness_vulnerable
/obj/item/implant/docile/livestock/implant(mob/living/target, mob/user, silent)
. = ..()
if(!.)
return
var/mob/living/carbon/human/target_human = target
stored_name = target_human.real_name
var/new_name = "[name_to_give] ([rand(0,999)])"
target_human.real_name = new_name
target_human.name = new_name
/obj/item/implant/docile/livestock/removed(mob/living/source, silent, special)
. = ..()
if(!.)
return FALSE
var/mob/living/carbon/human/target_human = target
target_human.real_name = stored_name
target_human.name = stored_name
/obj/item/implantcase/docile
name = "implant case - 'Docility'"
desc = "A glass case containing a docility implant."
imp_type = /obj/item/implant/docile
/obj/item/implantcase/docile
name = "implant case - 'Livestock'"
desc = "A glass case containing a livestock implant."
imp_type = /obj/item/implant/docile/livestock
@@ -23,6 +23,8 @@
var/stuckage = FALSE
/// Are items that only affect those at high weights able to affect the player?
var/fatness_vulnerable = FALSE
/// Similar to fatness_vulnerable, but with more extreme effects such as transformation/hypno.
var/extreme_fatness_vulnerable = 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?
+3
View File
@@ -1071,6 +1071,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "<h2>GS13 Gameplay Preferences</h2>"
dat += "<b>Stuckage (weight results in getting stuck in doors):</b><a href='?_src_=prefs;preference=stuckage'>[stuckage == TRUE ? "Enabled" : "Disabled"]</a><BR>"
dat += "<b>Fatness Vulnerability (Special items are able to be used on you at high weights. Usually to your detriment.):</b><a href='?_src_=prefs;preference=fatness_vulnerable'>[fatness_vulnerable == TRUE ? "Enabled" : "Disabled"]</a><BR>"
dat += "<b>Extreme Fatness Vulnerability (Similar to the previous pref, but with more extreme effects such as Hyno/TF. You have been warned.):</b><a href='?_src_=prefs;preference=extreme_fatness_vulnerable'>[extreme_fatness_vulnerable == TRUE ? "Enabled" : "Disabled"]</a><BR>"
dat += "<b>Extreme Weight Gain (Sprite Size scales with weight):</b><a href='?_src_=prefs;preference=weight_gain_extreme'>[weight_gain_extreme == TRUE ? "Enabled" : "Disabled"]</a><BR>"
dat += "<h2>GS13 Helplessness Preferences</h2>"
@@ -2669,6 +2670,8 @@ GLOBAL_LIST_EMPTY(preferences_datums)
stuckage = !stuckage
if("fatness_vulnerable")
fatness_vulnerable = !fatness_vulnerable
if("extreme_fatness_vulnerable")
extreme_fatness_vulnerable = !extreme_fatness_vulnerable
if("blueberry_inflation")
blueberry_inflation = !blueberry_inflation
if("max_fatness")
@@ -172,6 +172,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["helplessness_no_buckle"] >> helplessness_no_buckle
S["stuckage"] >> stuckage
S["fatness_vulnerable"] >> fatness_vulnerable
S["extreme_fatness_vulnerable"] >> extreme_fatness_vulnerable
S["blueberry_inflation"] >> blueberry_inflation
@@ -327,6 +328,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
WRITE_FILE(S["helplessness_no_buckle"], helplessness_no_buckle)
WRITE_FILE(S["stuckage"], stuckage)
WRITE_FILE(S["fatness_vulnerable"], fatness_vulnerable)
WRITE_FILE(S["extreme_fatness_vulnerable"], extreme_fatness_vulnerable)
WRITE_FILE(S["blueberry_inflation"], blueberry_inflation)
return 1