From 72edb34ecc4179dcae3e1e317697ab63e0ac8849 Mon Sep 17 00:00:00 2001 From: Verkister Date: Fri, 10 Nov 2017 12:19:31 +0200 Subject: [PATCH 1/3] Adds toggleable character pref for sharp/fuzzy scaling. -Yeah you should now be able to choose how you look. -Especially benefitical for any character scaled to those atrociously fucked up deformation ranges. -Can't really test it properly though due to the compile nature of the good ol' PIXEL_SCALE line in dm and my compy somehow forcing fuzzy on for some reason anyway. (my laptop's got the sharp mode tho) -Kinda based on #1947 Go there for preview examples. --- .../client/preference_setup/vore/02_size.dm | 20 ++++++++++++++----- code/modules/vore/eating/living_vr.dm | 4 +++- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/code/modules/client/preference_setup/vore/02_size.dm b/code/modules/client/preference_setup/vore/02_size.dm index bc9feacf052..3293b455203 100644 --- a/code/modules/client/preference_setup/vore/02_size.dm +++ b/code/modules/client/preference_setup/vore/02_size.dm @@ -9,8 +9,9 @@ var/size_multiplier = RESIZE_NORMAL // Body weight stuff. var/weight_vr = 137 // bodyweight of character (pounds, because I'm not doing the math again -Spades) - var/weight_gain = 100 // bodyweight of character (pounds, because I'm not doing the math again -Spades) - var/weight_loss = 50 // bodyweight of character (pounds, because I'm not doing the math again -Spades) + var/weight_gain = 100 // Weight gain rate. + var/weight_loss = 50 // Weight loss rate. + var/fuzzy = 0 // Preference toggle for sharp/fuzzy icon. Default sharp. // Definition of the stuff for Sizing /datum/category_item/player_setup_item/vore/size @@ -22,28 +23,33 @@ S["weight_vr"] >> pref.weight_vr S["weight_gain"] >> pref.weight_gain S["weight_loss"] >> pref.weight_loss + S["fuzzy"] >> pref.fuzzy /datum/category_item/player_setup_item/vore/size/save_character(var/savefile/S) S["size_multiplier"] << pref.size_multiplier S["weight_vr"] << pref.weight_vr S["weight_gain"] << pref.weight_gain S["weight_loss"] << pref.weight_loss + S["fuzzy"] << pref.fuzzy /datum/category_item/player_setup_item/vore/size/sanitize_character() pref.size_multiplier = pref.size_multiplier - pref.weight_vr = sanitize_integer(pref.weight_vr, WEIGHT_MIN, WEIGHT_MAX, initial(pref.weight_vr)) - pref.weight_gain = sanitize_integer(pref.weight_gain, WEIGHT_CHANGE_MIN, WEIGHT_CHANGE_MAX, initial(pref.weight_gain)) - pref.weight_loss = sanitize_integer(pref.weight_loss, WEIGHT_CHANGE_MIN, WEIGHT_CHANGE_MAX, initial(pref.weight_loss)) + pref.weight_vr = sanitize_integer(pref.weight_vr, WEIGHT_MIN, WEIGHT_MAX, initial(pref.weight_vr)) + pref.weight_gain = sanitize_integer(pref.weight_gain, WEIGHT_CHANGE_MIN, WEIGHT_CHANGE_MAX, initial(pref.weight_gain)) + pref.weight_loss = sanitize_integer(pref.weight_loss, WEIGHT_CHANGE_MIN, WEIGHT_CHANGE_MAX, initial(pref.weight_loss)) + pref.fuzzy = pref.fuzzy /datum/category_item/player_setup_item/vore/size/copy_to_mob(var/mob/living/carbon/human/character) character.resize(pref.size_multiplier, FALSE) character.weight = pref.weight_vr character.weight_gain = pref.weight_gain character.weight_loss = pref.weight_loss + character.fuzzy = pref.fuzzy /datum/category_item/player_setup_item/vore/size/content(var/mob/user) . += "
" . += "Scale: [round(pref.size_multiplier*100)]%
" + . += "Scaled Appearance: [pref.fuzzy ? "Fuzzy" : "Sharp"]
" . += "
" . += "Relative Weight: [pref.weight_vr]
" . += "Weight Gain Rate: [pref.weight_gain]
" @@ -60,6 +66,10 @@ pref.size_multiplier = (new_size/100) return TOPIC_REFRESH_UPDATE_PREVIEW + else if(href_list["toggle_fuzzy"]) + pref.fuzzy = pref.fuzzy ? 0 : 1; + return TOPIC_REFRESH + else if(href_list["weight"]) var/new_weight = input(user, "Choose your character's relative body weight.\n\ This measurement should be set relative to a normal 5'10'' person's body and not the actual size of your character.\n\ diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 1a1ba7ff3fa..7d82829b088 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -19,6 +19,7 @@ var/noisy = 0 // Toggle audible hunger. var/absorbing_prey = 0 // Determines if the person is using the succubus drain or not. See station_special_abilities_vr. var/drain_finalized = 0 // Determines if the succubus drain will be KO'd/absorbed. Can be toggled on at any time. + var/fuzzy = 0 // Preference toggle for sharp/fuzzy icon. // // Hook for generic creation of stuff on new creatures @@ -31,7 +32,8 @@ return 1 M.verbs += /mob/living/proc/insidePanel - M.appearance_flags |= PIXEL_SCALE + if(M.fuzzy != 1) + M.appearance_flags |= PIXEL_SCALE //Tries to load prefs if a client is present otherwise gives freebie stomach if(!M.vore_organs || !M.vore_organs.len) From 2394b0fbfcd4411e8ccc2fd3ea1c92919591eb6e Mon Sep 17 00:00:00 2001 From: Verkister Date: Fri, 10 Nov 2017 12:33:00 +0200 Subject: [PATCH 2/3] Update living_vr.dm --- code/modules/vore/eating/living_vr.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 7d82829b088..0cb55001b37 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -32,8 +32,9 @@ return 1 M.verbs += /mob/living/proc/insidePanel - if(M.fuzzy != 1) - M.appearance_flags |= PIXEL_SCALE + M.appearance_flags |= PIXEL_SCALE + if(M.fuzzy == 1) + M.appearance_flags -= PIXEL_SCALE //Tries to load prefs if a client is present otherwise gives freebie stomach if(!M.vore_organs || !M.vore_organs.len) From 09591d93959b3f2a15094b843ce19ea67a57a99e Mon Sep 17 00:00:00 2001 From: Verkister Date: Sat, 11 Nov 2017 16:00:37 +0200 Subject: [PATCH 3/3] It works now. --- code/modules/client/preference_setup/vore/02_size.dm | 5 +++-- code/modules/vore/eating/living_vr.dm | 5 ++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/client/preference_setup/vore/02_size.dm b/code/modules/client/preference_setup/vore/02_size.dm index 3293b455203..0aa5bf31959 100644 --- a/code/modules/client/preference_setup/vore/02_size.dm +++ b/code/modules/client/preference_setup/vore/02_size.dm @@ -11,7 +11,7 @@ var/weight_vr = 137 // bodyweight of character (pounds, because I'm not doing the math again -Spades) var/weight_gain = 100 // Weight gain rate. var/weight_loss = 50 // Weight loss rate. - var/fuzzy = 0 // Preference toggle for sharp/fuzzy icon. Default sharp. + var/fuzzy = 1 // Preference toggle for sharp/fuzzy icon. Default sharp. // Definition of the stuff for Sizing /datum/category_item/player_setup_item/vore/size @@ -45,11 +45,12 @@ character.weight_gain = pref.weight_gain character.weight_loss = pref.weight_loss character.fuzzy = pref.fuzzy + character.appearance_flags |= pref.fuzzy*PIXEL_SCALE /datum/category_item/player_setup_item/vore/size/content(var/mob/user) . += "
" . += "Scale: [round(pref.size_multiplier*100)]%
" - . += "Scaled Appearance: [pref.fuzzy ? "Fuzzy" : "Sharp"]
" + . += "Scaled Appearance: [pref.fuzzy ? "Sharp" : "Fuzzy"]
" . += "
" . += "Relative Weight: [pref.weight_vr]
" . += "Weight Gain Rate: [pref.weight_gain]
" diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 7d82829b088..bf5378bec27 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -19,7 +19,7 @@ var/noisy = 0 // Toggle audible hunger. var/absorbing_prey = 0 // Determines if the person is using the succubus drain or not. See station_special_abilities_vr. var/drain_finalized = 0 // Determines if the succubus drain will be KO'd/absorbed. Can be toggled on at any time. - var/fuzzy = 0 // Preference toggle for sharp/fuzzy icon. + var/fuzzy = 1 // Preference toggle for sharp/fuzzy icon. // // Hook for generic creation of stuff on new creatures @@ -32,8 +32,7 @@ return 1 M.verbs += /mob/living/proc/insidePanel - if(M.fuzzy != 1) - M.appearance_flags |= PIXEL_SCALE + //M.appearance_flags |= PIXEL_SCALE // Moved to 02_size.dm //Tries to load prefs if a client is present otherwise gives freebie stomach if(!M.vore_organs || !M.vore_organs.len)