Character Preference custom size

Character Preference now shows your characters custom body size!
This commit is contained in:
QuoteFox
2020-08-06 10:35:09 +01:00
parent 50adc915f5
commit bab7ca7047
4 changed files with 40 additions and 22 deletions
+16 -1
View File
@@ -897,7 +897,22 @@ GLOBAL_LIST_EMPTY(external_rsc_urls)
screen |= O
O.appearance = MA
O.dir = D
O.screen_loc = "character_preview_map:0,[pos]"
O.screen_loc = "character_preview_map:[pos],0"
/client/proc/show_character_previews_large(mutable_appearance/MA)
var/pos = 0
for(var/D in GLOB.cardinals)
pos++
pos++
var/obj/screen/O = LAZYACCESS(char_render_holders, "[D]")
if(!O)
O = new
LAZYSET(char_render_holders, "[D]", O)
screen |= O
O.appearance = MA
O.dir = D
O.screen_loc = "character_preview_map:[pos],-1"
/client/proc/clear_character_previews()
for(var/index in char_render_holders)
+4 -4
View File
@@ -65,7 +65,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
var/pda_style = MONO
var/pda_color = "#808000"
var/pda_skin = PDA_SKIN_ALT
var/list/alt_titles_preferences = list()
var/uses_glasses_colour = 0
@@ -229,7 +229,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
//backgrounds
var/mutable_appearance/character_background
var/icon/bgstate = "steel"
var/icon/bgstate = "000"
var/list/bgstate_options = list("000", "midgrey", "hiro", "FFF", "white", "steel", "techmaint", "dark", "plating", "reinforced")
var/show_mismatched_markings = FALSE //determines whether or not the markings lists should show markings that don't match the currently selected species. Intentionally left unsaved.
@@ -301,7 +301,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if(unspaced_slots > 4)
dat += "<br>"
unspaced_slots = 0
S.cd = "/character[i]"
S.cd = "/+"
S["real_name"] >> name
if(!name)
name = "Character[i]"
@@ -382,7 +382,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "<b>Custom Species Name:</b><a style='display:block;width:100px' href='?_src_=prefs;preference=custom_species;task=input'>[custom_species ? custom_species : "None"]</a><BR>"
dat += "<a style='display:block;width:100px' href='?_src_=prefs;preference=all;task=random'>Random Body</A><BR>"
dat += "<b>Always Random Body:</b><a href='?_src_=prefs;preference=all'>[be_random_body ? "Yes" : "No"]</A><BR>"
dat += "<br><b>Cycle background:</b><a style='display:block;width:100px' href='?_src_=prefs;preference=cycle_bg;task=input'>[bgstate]</a><BR>"
//dat += "<br><b>Cycle background:</b><a style='display:block;width:100px' href='?_src_=prefs;preference=cycle_bg;task=input'>[bgstate]</a><BR>"
var/use_skintones = pref_species.use_skintones
if(use_skintones)
@@ -44,12 +44,7 @@
mannequin.add_overlay(mutable_appearance('modular_citadel/icons/ui/backgrounds.dmi', bgstate, layer = SPACE_LAYER))
copy_to(mannequin)
// mannequin.resize = (1+(body_size_alt*-1))
// mannequin.resize = (body_size * 0.01)
// body_size_alt = ((body_size * 0.01)-1)
mannequin.resize(body_size*0.01, 0)
// Determine what job is marked as 'High' priority, and dress them up as such.
@@ -78,5 +73,9 @@
previewJob.equip(mannequin, TRUE)
COMPILE_OVERLAYS(mannequin)
parent.show_character_previews(new /mutable_appearance(mannequin))
if(body_size>100)
parent.show_character_previews_large(new /mutable_appearance(mannequin))//just to stop clipping of larger characters
else
parent.show_character_previews(new /mutable_appearance(mannequin))
unset_busy_human_dummy(DUMMY_HUMAN_SLOT_PREFERENCES)