From f337061c51e3f002377609c379e0565bb54a8e76 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Thu, 15 Oct 2020 20:05:39 +0100 Subject: [PATCH 01/34] more defines --- code/__DEFINES/loadout.dm | 9 ++++++++- modular_citadel/code/modules/client/loadout/_loadout.dm | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/loadout.dm b/code/__DEFINES/loadout.dm index 767894050d..8e46b57d85 100644 --- a/code/__DEFINES/loadout.dm +++ b/code/__DEFINES/loadout.dm @@ -66,4 +66,11 @@ #define LOADOUT_LIMB_PROSTHETIC "Prosthetic" #define LOADOUT_LIMB_AMPUTATED "Amputated" -#define LOADOUT_LIMBS list(LOADOUT_LIMB_NORMAL,LOADOUT_LIMB_PROSTHETIC,LOADOUT_LIMB_AMPUTATED) //you can amputate your legs/arms though \ No newline at end of file +#define LOADOUT_LIMBS list(LOADOUT_LIMB_NORMAL,LOADOUT_LIMB_PROSTHETIC,LOADOUT_LIMB_AMPUTATED) //you can amputate your legs/arms though + +//options for modifiying color of loadout items +#define LOADOUT_COLOR_TYPE_NONE "no_color" +#define LOADOUT_COLOR_TYPE_POLYCHROMIC "polychromic" + +//maximum loadout slots you can have (as in, how many stored loadout sets) +#define LOADOUT_MAXIMUM_SLOTS 5 diff --git a/modular_citadel/code/modules/client/loadout/_loadout.dm b/modular_citadel/code/modules/client/loadout/_loadout.dm index 0ebfa060f2..7d890a00fd 100644 --- a/modular_citadel/code/modules/client/loadout/_loadout.dm +++ b/modular_citadel/code/modules/client/loadout/_loadout.dm @@ -53,6 +53,7 @@ GLOBAL_LIST_EMPTY(loadout_whitelist_ids) var/path //item-to-spawn path var/cost = 1 //normally, each loadout costs a single point. var/geargroupID //defines the ID that the gear inherits from the config + var/color_type = LOADOUT_COLOR_TYPE_NONE //NEW DONATOR SYTSEM STUFF var/donoritem //autoset on new if null From 02912aa4ade5cf239da208f95092a69f8e2ad8a2 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Thu, 15 Oct 2020 20:57:45 +0100 Subject: [PATCH 02/34] add color type to all polychromics --- modular_citadel/code/modules/client/loadout/__donator.dm | 1 + modular_citadel/code/modules/client/loadout/neck.dm | 2 ++ modular_citadel/code/modules/client/loadout/suit.dm | 1 + modular_citadel/code/modules/client/loadout/uniform.dm | 7 +++++++ 4 files changed, 11 insertions(+) diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index bb9162789e..b6a1492af0 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -287,6 +287,7 @@ slot = SLOT_IN_BACKPACK path = /obj/item/clothing/neck/cloak/polychromic/polyce ckeywhitelist = list("worksbythesea", "blakeryan") + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/donator/ssk name = "Stun Sword Kit" diff --git a/modular_citadel/code/modules/client/loadout/neck.dm b/modular_citadel/code/modules/client/loadout/neck.dm index c7eff6ce78..d10df3bc38 100644 --- a/modular_citadel/code/modules/client/loadout/neck.dm +++ b/modular_citadel/code/modules/client/loadout/neck.dm @@ -86,7 +86,9 @@ /datum/gear/neck/polycloak name = "Polychromatic Cloak" path = /obj/item/clothing/neck/cloak/polychromic + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/neck/altpolycloak name = "Alternate Cloak" path = /obj/item/clothing/neck/cloak/alt/polychromic + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC diff --git a/modular_citadel/code/modules/client/loadout/suit.dm b/modular_citadel/code/modules/client/loadout/suit.dm index d0be26a8a4..4bda8328d7 100644 --- a/modular_citadel/code/modules/client/loadout/suit.dm +++ b/modular_citadel/code/modules/client/loadout/suit.dm @@ -101,6 +101,7 @@ name = "Polychromic winter coat" path = /obj/item/clothing/suit/hooded/wintercoat/polychromic cost = 4 //too many people with neon green coats is hard on the eyes + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/suit/coat/med name = "Medical winter coat" diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 45d8fc1ef1..0152a2d75a 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -223,36 +223,43 @@ name = "Polychromic Jumpsuit" path = /obj/item/clothing/under/misc/polyjumpsuit cost = 2 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/skirt/poly name = "Polychromic Jumpskirt" path = /obj/item/clothing/under/dress/skirt/polychromic cost = 2 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/suit/poly name = "Polychromic Button-up Shirt" path = /obj/item/clothing/under/misc/poly_shirt cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/skirt/poly/pleated name = "Polychromic Pleated Sweaterskirt" path = /obj/item/clothing/under/dress/skirt/polychromic/pleated cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/polykilt name = "Polychromic Kilt" path = /obj/item/clothing/under/costume/kilt/polychromic cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/shorts/poly name = "Polychromic Shorts" path = /obj/item/clothing/under/misc/polyshorts cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/shorts/poly/athletic name = "Polychromic Athletic Shorts" path = /obj/item/clothing/under/shorts/polychromic cost = 2 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/hopcasual name = "Casual Head of Personnel's uniform" From c649dbe6c69f875ea5520346be8274b2743c95a0 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Thu, 15 Oct 2020 23:04:55 +0100 Subject: [PATCH 03/34] better taurs --- code/modules/client/preferences_savefile.dm | 3 +- .../sprite_accessories/legs_and_taurs.dm | 124 ++++++++++++------ .../new_player/sprite_accessories/synthliz.dm | 37 ------ .../mob/living/carbon/human/species.dm | 17 +++ modular_citadel/icons/mob/mam_taur.dmi | Bin 59290 -> 101039 bytes 5 files changed, 100 insertions(+), 81 deletions(-) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 3bad31a919..0401d6c558 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -5,7 +5,7 @@ // You do not need to raise this if you are adding new values that have sane defaults. // Only raise this value when changing the meaning/format/name/layout of an existing value // where you would want the updater procs below to run -#define SAVEFILE_VERSION_MAX 38 +#define SAVEFILE_VERSION_MAX 39 /* SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Carn @@ -669,6 +669,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car var/list/json_from_file = json_decode(file2text(char_vr_path)) if(json_from_file) belly_prefs = json_from_file["belly_prefs"] + //gear loadout var/text_to_load S["loadout"] >> text_to_load diff --git a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm index 6f7b955d8f..cf97e1670d 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm @@ -23,12 +23,13 @@ icon = 'modular_citadel/icons/mob/mam_taur.dmi' center = TRUE dimension_x = 64 - color_src = MATRIXED + color_src = "dual_color" //we apply some snowflake colouring because it's (sometimes) two parts, don't worry about it recommended_species = list("human", "lizard", "insect", "mammal", "xeno", "jelly", "slimeperson", "podweak") relevant_layers = list(BODY_ADJ_UPPER_LAYER, BODY_FRONT_LAYER) var/taur_mode = NONE //Must be a single specific tauric suit variation bitflag. Don't do FLAG_1|FLAG_2 var/alt_taur_mode = NONE //Same as above. var/hide_legs = USE_QUADRUPED_CLIP_MASK + var/taur_marking_state = NONE //does your taur have separately colorable markings, if so what's the state, leave as NONE if it doesnt have any /datum/sprite_accessory/taur/is_not_visible(var/mob/living/carbon/human/H, var/tauric) return (!tauric || (H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR))) @@ -49,65 +50,73 @@ relevant_layers = null hide_legs = FALSE -/datum/sprite_accessory/taur/canine - name = "Canine" - icon_state = "canine" +/datum/sprite_accessory/taur/wolf + name = "Wolf" + icon_state = "wolf" + taur_marking_state = "wolf_markings" taur_mode = STYLE_PAW_TAURIC - color_src = MUTCOLORS - extra = TRUE + +/datum/sprite_accessory/taur/wolf/synth + name = "Wolf (synth)" + icon_state = "synthwolf" + taur_marking_state = "synthwolf_markings" + +/datum/sprite_accessory/taur/wolf/fat + name = "Wolf (fat)" + icon_state = "fatwolf" + taur_marking_state = "fatwolf_markings" /datum/sprite_accessory/taur/cow name = "Cow" icon_state = "cow" taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC - color_src = MUTCOLORS - -/datum/sprite_accessory/taur/cow/spotted - name = "Cow (Spotted)" - icon_state = "cow_spotted" - color_src = MATRIXED /datum/sprite_accessory/taur/deer name = "Deer" icon_state = "deer" + taur_marking_state = "deer_markings" taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC - color_src = MUTCOLORS - extra = TRUE + +/datum/sprite_accessory/taur/lizard + name = "Lizard" + icon_state = "lizard" + taur_marking_state = "lizard_markings" + taur_mode = STYLE_PAW_TAURIC + +/datum/sprite_accessory/taur/lizard/synth + name = "Lizard (synth)" + icon_state = "synthlizard" + taur_marking_state = "synthlizard_markings" + taur_mode = STYLE_PAW_TAURIC /datum/sprite_accessory/taur/drake name = "Drake" icon_state = "drake" + taur_marking_state = "drake_markings" taur_mode = STYLE_PAW_TAURIC - color_src = MUTCOLORS - extra = TRUE -/datum/sprite_accessory/taur/drake/old - name = "Drake (Old)" - icon_state = "drake_old" - color_src = MATRIXED - extra = FALSE - -/datum/sprite_accessory/taur/drider - name = "Drider" - icon_state = "drider" - color_src = MUTCOLORS - extra = TRUE - -/datum/sprite_accessory/taur/eevee - name = "Eevee" - icon_state = "eevee" - taur_mode = STYLE_PAW_TAURIC - color_src = MUTCOLORS - extra = TRUE +/datum/sprite_accessory/taur/spider + name = "Spider" + icon_state = "spider_s" /datum/sprite_accessory/taur/feline name = "Feline" icon_state = "feline" + taur_marking_state = "feline_markings" taur_mode = STYLE_PAW_TAURIC - color_src = MUTCOLORS - extra = TRUE + +/datum/sprite_accessory/taur/feline/synth + name = "Feline (synth)" + icon_state = "synthfeline" + taur_marking_state = "synthfeline_markings" + taur_mode = STYLE_PAW_TAURIC + +/datum/sprite_accessory/taur/feline/fat + name = "Feline (fat)" + icon_state = "fatfeline" + taur_marking_state = "fatfeline_markings" /datum/sprite_accessory/taur/horse name = "Horse" @@ -115,28 +124,57 @@ taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC +/datum/sprite_accessory/taur/horse/synth + name = "Horse (synth)" + icon_state = "synthhorse" + taur_marking_state = "synthhorse_markings" + taur_mode = STYLE_HOOF_TAURIC + alt_taur_mode = STYLE_PAW_TAURIC + /datum/sprite_accessory/taur/naga name = "Naga" icon_state = "naga" + icon_state = "naga_markings" taur_mode = STYLE_SNEK_TAURIC hide_legs = USE_SNEK_CLIP_MASK /datum/sprite_accessory/taur/otie name = "Otie" icon_state = "otie" + icon_state = "otie_markings" taur_mode = STYLE_PAW_TAURIC -/datum/sprite_accessory/taur/pede - name = "Scolipede" - icon_state = "pede" +/datum/sprite_accessory/taur/tempest + name = "Tempest" + icon_state = "tempest" taur_mode = STYLE_PAW_TAURIC - color_src = MUTCOLORS - extra = TRUE - extra2 = TRUE + +/datum/sprite_accessory/taur/skunk + name = "Skunk" + icon_state = "skunk" + icon_state = "skunk_markings" + taur_mode = STYLE_PAW_TAURIC + +/datum/sprite_accessory/taur/mermaid + name = "Mermaid" + icon_state = "mermaid" + taur_mode = STYLE_SNEK_TAURIC + hide_legs = USE_SNEK_CLIP_MASK /datum/sprite_accessory/taur/tentacle name = "Tentacle" icon_state = "tentacle" taur_mode = STYLE_SNEK_TAURIC - color_src = MUTCOLORS + hide_legs = USE_SNEK_CLIP_MASK + +/datum/sprite_accessory/taur/slug + name = "Slug" + icon_state = "slug" + taur_mode = STYLE_SNEK_TAURIC + hide_legs = USE_SNEK_CLIP_MASK + +/datum/sprite_accessory/taur/frog //frogs are closer to snakes than wolves, probably, listen i'm no biology major + name = "Frog" + icon_state = "frog" + taur_mode = STYLE_SNEK_TAURIC hide_legs = USE_SNEK_CLIP_MASK diff --git a/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm b/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm index 9addd15dca..39f32eea27 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm @@ -111,40 +111,3 @@ color_src = MATRIXED name = "Synthetic Lizard - Thick Light" icon_state = "synth_thicklight" - -//Synth Taurs (Ported from Virgo) -/datum/sprite_accessory/taur/synthliz - name = "Virgo - Synthetic Lizard" - icon_state = "synthlizard" - taur_mode = STYLE_PAW_TAURIC - recommended_species = list("synthliz") - -/datum/sprite_accessory/taur/synthliz/inv - name = "Virgo - Synthetic Lizard (Inverted)" - icon_state = "synthlizardinv" - -/datum/sprite_accessory/taur/synthliz/feline - name = "Virgo - Synthetic Feline" - icon_state = "synthfeline" - -/datum/sprite_accessory/taur/synthliz/feline/inv - name = "Virgo - Synthetic Feline (Inverted)" - icon_state = "synthfelineinv" - -/datum/sprite_accessory/taur/synthliz/horse - name = "Virgo - Synthetic Horse" - icon_state = "synthhorse" - taur_mode = STYLE_HOOF_TAURIC - alt_taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/synthliz/horse/inv - name = "Virgo - Synthetic Horse (Inverted)" - icon_state = "synthhorseinv" - -/datum/sprite_accessory/taur/synthliz/wolf - name = "Virgo - Synthetic Wolf" - icon_state = "synthwolf" - -/datum/sprite_accessory/taur/synthliz/wolf/inv - name = "Virgo - Synthetic Wolf (Inverted)" - icon_state = "synthwolfinv" diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 126d4401e0..8672ae6128 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -765,6 +765,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) for(var/bodypart in relevant_layers[layer]) var/datum/sprite_accessory/S = bodypart var/mutable_appearance/accessory_overlay = mutable_appearance(S.icon, layer = -layernum) + var/mutable_appearance/marking_overlay //incase a marking overlay is used bodypart = S.mutant_part_string || dna_feature_as_text_string[S] if(S.gender_specific) @@ -812,6 +813,17 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) accessory_overlay.color = "#[H.dna.features["horns_color"]]" if(WINGCOLOR) accessory_overlay.color = "#[H.dna.features["wings_color"]]" + if("dual_color") //if you see this its a mistake, replace it with a define + //if you get here it means you are colouring a main part, and a marking + //the main part + var/accessory_feature = "[bodypart]_color" + accessory_overlay.color = "#[H.dna.features[accessory_feature]]" + + //the marking + marking_overlay = mutable_appearance(S.icon, layer = -layernum) + marking_overlay.icon_state = "[S.name]_markings" + var/marking_feature = "[bodypart]_marking_color" + marking_overlay.color = "#[H.dna.features[marking_feature]]" else accessory_overlay.color = forced_colour else @@ -825,8 +837,13 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(OFFSET_MUTPARTS in H.dna.species.offset_features) accessory_overlay.pixel_x += H.dna.species.offset_features[OFFSET_MUTPARTS][1] accessory_overlay.pixel_y += H.dna.species.offset_features[OFFSET_MUTPARTS][2] + if(marking_overlay) + marking_overlay.pixel_x += H.dna.species.offset_features[OFFSET_MUTPARTS][1] + marking_overlay.pixel_y += H.dna.species.offset_features[OFFSET_MUTPARTS][2] standing += accessory_overlay + if(marking_overlay) + standing += marking_overlay if(S.extra) //apply the extra overlay, if there is one var/mutable_appearance/extra_accessory_overlay = mutable_appearance(S.icon, layer = -layernum) diff --git a/modular_citadel/icons/mob/mam_taur.dmi b/modular_citadel/icons/mob/mam_taur.dmi index cf332019afd71e14f5d7a3f7f4582b948041762d..7d8f6769fe0056a5ab631fe2f0ccd9ded0bbf69c 100644 GIT binary patch literal 101039 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 literal 59290 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

9Du|2$_L z1sGQJpnE0W`&zOVQ8AKHW)X##2A#|7uRyYX5y`$IfjT>X7JpB$e~6(&JCMqrM4=C3 zVwqFG#hD8VP{$@8-UG*Ra*lg|liSb1nS6|0f&Lydghjj-;icwjaf%D+5be^A#A_WTc5LU}NI$il#qhL;1k zA{lf6J(AT};K4;O3cU`;L5A=P=wMgef;@)f61xTGJ+i6}_$Y7!8g7vqGpZ{@g8(x# zh1+oh*m0aha056Aj-W<5Gql$$TNvWD7kNM4hddxhhW-O5RTKd~g6cA;joBRrRsk5H z%{Ua<@EQtH-A~rATe$^UbjM=a+AgT5O!5YDOGPC-+8pow7?Q;wpz(G+{*#eGbObqs z55*#kK<`Q~8b3cYNC!ScG_^dwPDXD(N(eC?rPQ8yGA!@@Y^kgTmoF0CT?dZ|=A z8m(g8fehi_Aboem>-$loKLRJ&~#hHplOy+}^q zXhlNogX%R}bD;NTjj_o{vI$7$uwVN zccF4G7K+du2zJ7%rFvH`0_qxp#qi`rg?WF?b?GF88^HOE8^8(iKurBKhHQx29R#~S z9v??G^w$mGbYpcExC7{bmYFipCZPuXHiF%Qg+gSk4Gm{ho?3Y~MCOn z3$LL;kNwE-ora9s6GO_5LvlTijNJc>-s7XlI4;|d1bV+OqL60p#lqSRz(Ul^-v;4< zV74M=1(^ao3G1ue0CtkY4dDF7V}KK4+-LJf+GYzZ07gM=5mfJm+BxUH+G*hs*?X>z;S4+jVfon& zpW6tw3=5C8LTxEp8~h^-}8m69;%sE zCIGw~@BJ{@!02;e85R~Jna@W$;1#43CzX6B<^$ePh=RU{y7^B4r(nZ0jhKALzkiP7 zB!C;h=b1;aFb&vvy_Pd>oGoW>!y27$Sfl;M**d@RdS%ISBRJ)ZQrN?D$Pn8PEa4oD z;7*_mYUgS|;Ok4}z`Q#TbbdD$CZl_vhGak&*_3kc!ZIu@L9(8YWIqYAIklYBaX%KW z1Fl7}+H?Zlu)0C#S2t*%-|PIfC_euFJa`uz$H^@o1ALx&01K0Vmyu!Hj^Y}Rk&OYK z5RXrf+Ziav(PM$r%exu6O=r>DJy Date: Thu, 15 Oct 2020 23:05:07 +0100 Subject: [PATCH 04/34] Revert "add color type to all polychromics" This reverts commit 02912aa4ade5cf239da208f95092a69f8e2ad8a2. --- modular_citadel/code/modules/client/loadout/__donator.dm | 1 - modular_citadel/code/modules/client/loadout/neck.dm | 2 -- modular_citadel/code/modules/client/loadout/suit.dm | 1 - modular_citadel/code/modules/client/loadout/uniform.dm | 7 ------- 4 files changed, 11 deletions(-) diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index b6a1492af0..bb9162789e 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -287,7 +287,6 @@ slot = SLOT_IN_BACKPACK path = /obj/item/clothing/neck/cloak/polychromic/polyce ckeywhitelist = list("worksbythesea", "blakeryan") - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/donator/ssk name = "Stun Sword Kit" diff --git a/modular_citadel/code/modules/client/loadout/neck.dm b/modular_citadel/code/modules/client/loadout/neck.dm index d10df3bc38..c7eff6ce78 100644 --- a/modular_citadel/code/modules/client/loadout/neck.dm +++ b/modular_citadel/code/modules/client/loadout/neck.dm @@ -86,9 +86,7 @@ /datum/gear/neck/polycloak name = "Polychromatic Cloak" path = /obj/item/clothing/neck/cloak/polychromic - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/neck/altpolycloak name = "Alternate Cloak" path = /obj/item/clothing/neck/cloak/alt/polychromic - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC diff --git a/modular_citadel/code/modules/client/loadout/suit.dm b/modular_citadel/code/modules/client/loadout/suit.dm index 4bda8328d7..d0be26a8a4 100644 --- a/modular_citadel/code/modules/client/loadout/suit.dm +++ b/modular_citadel/code/modules/client/loadout/suit.dm @@ -101,7 +101,6 @@ name = "Polychromic winter coat" path = /obj/item/clothing/suit/hooded/wintercoat/polychromic cost = 4 //too many people with neon green coats is hard on the eyes - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/suit/coat/med name = "Medical winter coat" diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 0152a2d75a..45d8fc1ef1 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -223,43 +223,36 @@ name = "Polychromic Jumpsuit" path = /obj/item/clothing/under/misc/polyjumpsuit cost = 2 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/skirt/poly name = "Polychromic Jumpskirt" path = /obj/item/clothing/under/dress/skirt/polychromic cost = 2 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/suit/poly name = "Polychromic Button-up Shirt" path = /obj/item/clothing/under/misc/poly_shirt cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/skirt/poly/pleated name = "Polychromic Pleated Sweaterskirt" path = /obj/item/clothing/under/dress/skirt/polychromic/pleated cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/polykilt name = "Polychromic Kilt" path = /obj/item/clothing/under/costume/kilt/polychromic cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/shorts/poly name = "Polychromic Shorts" path = /obj/item/clothing/under/misc/polyshorts cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/shorts/poly/athletic name = "Polychromic Athletic Shorts" path = /obj/item/clothing/under/shorts/polychromic cost = 2 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/hopcasual name = "Casual Head of Personnel's uniform" From 608e5147de4ac2d6b0202447c0ea8c72d3cfbce9 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 20 Oct 2020 20:05:11 +0100 Subject: [PATCH 05/34] Revert "Revert "add color type to all polychromics"" This reverts commit 587a2f8f19e8c2675b9e28dfb909040eab3aad3f. --- modular_citadel/code/modules/client/loadout/__donator.dm | 1 + modular_citadel/code/modules/client/loadout/neck.dm | 2 ++ modular_citadel/code/modules/client/loadout/suit.dm | 1 + modular_citadel/code/modules/client/loadout/uniform.dm | 7 +++++++ 4 files changed, 11 insertions(+) diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index bb9162789e..b6a1492af0 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -287,6 +287,7 @@ slot = SLOT_IN_BACKPACK path = /obj/item/clothing/neck/cloak/polychromic/polyce ckeywhitelist = list("worksbythesea", "blakeryan") + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/donator/ssk name = "Stun Sword Kit" diff --git a/modular_citadel/code/modules/client/loadout/neck.dm b/modular_citadel/code/modules/client/loadout/neck.dm index c7eff6ce78..d10df3bc38 100644 --- a/modular_citadel/code/modules/client/loadout/neck.dm +++ b/modular_citadel/code/modules/client/loadout/neck.dm @@ -86,7 +86,9 @@ /datum/gear/neck/polycloak name = "Polychromatic Cloak" path = /obj/item/clothing/neck/cloak/polychromic + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/neck/altpolycloak name = "Alternate Cloak" path = /obj/item/clothing/neck/cloak/alt/polychromic + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC diff --git a/modular_citadel/code/modules/client/loadout/suit.dm b/modular_citadel/code/modules/client/loadout/suit.dm index d0be26a8a4..4bda8328d7 100644 --- a/modular_citadel/code/modules/client/loadout/suit.dm +++ b/modular_citadel/code/modules/client/loadout/suit.dm @@ -101,6 +101,7 @@ name = "Polychromic winter coat" path = /obj/item/clothing/suit/hooded/wintercoat/polychromic cost = 4 //too many people with neon green coats is hard on the eyes + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/suit/coat/med name = "Medical winter coat" diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 45d8fc1ef1..0152a2d75a 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -223,36 +223,43 @@ name = "Polychromic Jumpsuit" path = /obj/item/clothing/under/misc/polyjumpsuit cost = 2 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/skirt/poly name = "Polychromic Jumpskirt" path = /obj/item/clothing/under/dress/skirt/polychromic cost = 2 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/suit/poly name = "Polychromic Button-up Shirt" path = /obj/item/clothing/under/misc/poly_shirt cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/skirt/poly/pleated name = "Polychromic Pleated Sweaterskirt" path = /obj/item/clothing/under/dress/skirt/polychromic/pleated cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/polykilt name = "Polychromic Kilt" path = /obj/item/clothing/under/costume/kilt/polychromic cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/shorts/poly name = "Polychromic Shorts" path = /obj/item/clothing/under/misc/polyshorts cost = 3 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/shorts/poly/athletic name = "Polychromic Athletic Shorts" path = /obj/item/clothing/under/shorts/polychromic cost = 2 + color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC /datum/gear/uniform/hopcasual name = "Casual Head of Personnel's uniform" From 36040e0689e61b729de4c766fbcc69c755a53f6c Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 20 Oct 2020 20:05:16 +0100 Subject: [PATCH 06/34] Revert "better taurs" This reverts commit c649dbe6c69f875ea5520346be8274b2743c95a0. --- code/modules/client/preferences_savefile.dm | 3 +- .../sprite_accessories/legs_and_taurs.dm | 124 ++++++------------ .../new_player/sprite_accessories/synthliz.dm | 37 ++++++ .../mob/living/carbon/human/species.dm | 17 --- modular_citadel/icons/mob/mam_taur.dmi | Bin 101039 -> 59290 bytes 5 files changed, 81 insertions(+), 100 deletions(-) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 0401d6c558..3bad31a919 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -5,7 +5,7 @@ // You do not need to raise this if you are adding new values that have sane defaults. // Only raise this value when changing the meaning/format/name/layout of an existing value // where you would want the updater procs below to run -#define SAVEFILE_VERSION_MAX 39 +#define SAVEFILE_VERSION_MAX 38 /* SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Carn @@ -669,7 +669,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car var/list/json_from_file = json_decode(file2text(char_vr_path)) if(json_from_file) belly_prefs = json_from_file["belly_prefs"] - //gear loadout var/text_to_load S["loadout"] >> text_to_load diff --git a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm index cf97e1670d..6f7b955d8f 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm @@ -23,13 +23,12 @@ icon = 'modular_citadel/icons/mob/mam_taur.dmi' center = TRUE dimension_x = 64 - color_src = "dual_color" //we apply some snowflake colouring because it's (sometimes) two parts, don't worry about it + color_src = MATRIXED recommended_species = list("human", "lizard", "insect", "mammal", "xeno", "jelly", "slimeperson", "podweak") relevant_layers = list(BODY_ADJ_UPPER_LAYER, BODY_FRONT_LAYER) var/taur_mode = NONE //Must be a single specific tauric suit variation bitflag. Don't do FLAG_1|FLAG_2 var/alt_taur_mode = NONE //Same as above. var/hide_legs = USE_QUADRUPED_CLIP_MASK - var/taur_marking_state = NONE //does your taur have separately colorable markings, if so what's the state, leave as NONE if it doesnt have any /datum/sprite_accessory/taur/is_not_visible(var/mob/living/carbon/human/H, var/tauric) return (!tauric || (H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR))) @@ -50,73 +49,65 @@ relevant_layers = null hide_legs = FALSE -/datum/sprite_accessory/taur/wolf - name = "Wolf" - icon_state = "wolf" - taur_marking_state = "wolf_markings" +/datum/sprite_accessory/taur/canine + name = "Canine" + icon_state = "canine" taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/wolf/synth - name = "Wolf (synth)" - icon_state = "synthwolf" - taur_marking_state = "synthwolf_markings" - -/datum/sprite_accessory/taur/wolf/fat - name = "Wolf (fat)" - icon_state = "fatwolf" - taur_marking_state = "fatwolf_markings" + color_src = MUTCOLORS + extra = TRUE /datum/sprite_accessory/taur/cow name = "Cow" icon_state = "cow" taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + +/datum/sprite_accessory/taur/cow/spotted + name = "Cow (Spotted)" + icon_state = "cow_spotted" + color_src = MATRIXED /datum/sprite_accessory/taur/deer name = "Deer" icon_state = "deer" - taur_marking_state = "deer_markings" taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/lizard - name = "Lizard" - icon_state = "lizard" - taur_marking_state = "lizard_markings" - taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/lizard/synth - name = "Lizard (synth)" - icon_state = "synthlizard" - taur_marking_state = "synthlizard_markings" - taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + extra = TRUE /datum/sprite_accessory/taur/drake name = "Drake" icon_state = "drake" - taur_marking_state = "drake_markings" taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + extra = TRUE -/datum/sprite_accessory/taur/spider - name = "Spider" - icon_state = "spider_s" +/datum/sprite_accessory/taur/drake/old + name = "Drake (Old)" + icon_state = "drake_old" + color_src = MATRIXED + extra = FALSE + +/datum/sprite_accessory/taur/drider + name = "Drider" + icon_state = "drider" + color_src = MUTCOLORS + extra = TRUE + +/datum/sprite_accessory/taur/eevee + name = "Eevee" + icon_state = "eevee" + taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + extra = TRUE /datum/sprite_accessory/taur/feline name = "Feline" icon_state = "feline" - taur_marking_state = "feline_markings" taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/feline/synth - name = "Feline (synth)" - icon_state = "synthfeline" - taur_marking_state = "synthfeline_markings" - taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/feline/fat - name = "Feline (fat)" - icon_state = "fatfeline" - taur_marking_state = "fatfeline_markings" + color_src = MUTCOLORS + extra = TRUE /datum/sprite_accessory/taur/horse name = "Horse" @@ -124,57 +115,28 @@ taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC -/datum/sprite_accessory/taur/horse/synth - name = "Horse (synth)" - icon_state = "synthhorse" - taur_marking_state = "synthhorse_markings" - taur_mode = STYLE_HOOF_TAURIC - alt_taur_mode = STYLE_PAW_TAURIC - /datum/sprite_accessory/taur/naga name = "Naga" icon_state = "naga" - icon_state = "naga_markings" taur_mode = STYLE_SNEK_TAURIC hide_legs = USE_SNEK_CLIP_MASK /datum/sprite_accessory/taur/otie name = "Otie" icon_state = "otie" - icon_state = "otie_markings" taur_mode = STYLE_PAW_TAURIC -/datum/sprite_accessory/taur/tempest - name = "Tempest" - icon_state = "tempest" +/datum/sprite_accessory/taur/pede + name = "Scolipede" + icon_state = "pede" taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/skunk - name = "Skunk" - icon_state = "skunk" - icon_state = "skunk_markings" - taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/mermaid - name = "Mermaid" - icon_state = "mermaid" - taur_mode = STYLE_SNEK_TAURIC - hide_legs = USE_SNEK_CLIP_MASK + color_src = MUTCOLORS + extra = TRUE + extra2 = TRUE /datum/sprite_accessory/taur/tentacle name = "Tentacle" icon_state = "tentacle" taur_mode = STYLE_SNEK_TAURIC - hide_legs = USE_SNEK_CLIP_MASK - -/datum/sprite_accessory/taur/slug - name = "Slug" - icon_state = "slug" - taur_mode = STYLE_SNEK_TAURIC - hide_legs = USE_SNEK_CLIP_MASK - -/datum/sprite_accessory/taur/frog //frogs are closer to snakes than wolves, probably, listen i'm no biology major - name = "Frog" - icon_state = "frog" - taur_mode = STYLE_SNEK_TAURIC + color_src = MUTCOLORS hide_legs = USE_SNEK_CLIP_MASK diff --git a/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm b/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm index 39f32eea27..9addd15dca 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/synthliz.dm @@ -111,3 +111,40 @@ color_src = MATRIXED name = "Synthetic Lizard - Thick Light" icon_state = "synth_thicklight" + +//Synth Taurs (Ported from Virgo) +/datum/sprite_accessory/taur/synthliz + name = "Virgo - Synthetic Lizard" + icon_state = "synthlizard" + taur_mode = STYLE_PAW_TAURIC + recommended_species = list("synthliz") + +/datum/sprite_accessory/taur/synthliz/inv + name = "Virgo - Synthetic Lizard (Inverted)" + icon_state = "synthlizardinv" + +/datum/sprite_accessory/taur/synthliz/feline + name = "Virgo - Synthetic Feline" + icon_state = "synthfeline" + +/datum/sprite_accessory/taur/synthliz/feline/inv + name = "Virgo - Synthetic Feline (Inverted)" + icon_state = "synthfelineinv" + +/datum/sprite_accessory/taur/synthliz/horse + name = "Virgo - Synthetic Horse" + icon_state = "synthhorse" + taur_mode = STYLE_HOOF_TAURIC + alt_taur_mode = STYLE_PAW_TAURIC + +/datum/sprite_accessory/taur/synthliz/horse/inv + name = "Virgo - Synthetic Horse (Inverted)" + icon_state = "synthhorseinv" + +/datum/sprite_accessory/taur/synthliz/wolf + name = "Virgo - Synthetic Wolf" + icon_state = "synthwolf" + +/datum/sprite_accessory/taur/synthliz/wolf/inv + name = "Virgo - Synthetic Wolf (Inverted)" + icon_state = "synthwolfinv" diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 8672ae6128..126d4401e0 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -765,7 +765,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) for(var/bodypart in relevant_layers[layer]) var/datum/sprite_accessory/S = bodypart var/mutable_appearance/accessory_overlay = mutable_appearance(S.icon, layer = -layernum) - var/mutable_appearance/marking_overlay //incase a marking overlay is used bodypart = S.mutant_part_string || dna_feature_as_text_string[S] if(S.gender_specific) @@ -813,17 +812,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) accessory_overlay.color = "#[H.dna.features["horns_color"]]" if(WINGCOLOR) accessory_overlay.color = "#[H.dna.features["wings_color"]]" - if("dual_color") //if you see this its a mistake, replace it with a define - //if you get here it means you are colouring a main part, and a marking - //the main part - var/accessory_feature = "[bodypart]_color" - accessory_overlay.color = "#[H.dna.features[accessory_feature]]" - - //the marking - marking_overlay = mutable_appearance(S.icon, layer = -layernum) - marking_overlay.icon_state = "[S.name]_markings" - var/marking_feature = "[bodypart]_marking_color" - marking_overlay.color = "#[H.dna.features[marking_feature]]" else accessory_overlay.color = forced_colour else @@ -837,13 +825,8 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(OFFSET_MUTPARTS in H.dna.species.offset_features) accessory_overlay.pixel_x += H.dna.species.offset_features[OFFSET_MUTPARTS][1] accessory_overlay.pixel_y += H.dna.species.offset_features[OFFSET_MUTPARTS][2] - if(marking_overlay) - marking_overlay.pixel_x += H.dna.species.offset_features[OFFSET_MUTPARTS][1] - marking_overlay.pixel_y += H.dna.species.offset_features[OFFSET_MUTPARTS][2] standing += accessory_overlay - if(marking_overlay) - standing += marking_overlay if(S.extra) //apply the extra overlay, if there is one var/mutable_appearance/extra_accessory_overlay = mutable_appearance(S.icon, layer = -layernum) diff --git a/modular_citadel/icons/mob/mam_taur.dmi b/modular_citadel/icons/mob/mam_taur.dmi index 7d8f6769fe0056a5ab631fe2f0ccd9ded0bbf69c..cf332019afd71e14f5d7a3f7f4582b948041762d 100644 GIT binary patch literal 59290 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

9Du|2$_L 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 From e6895bec04c9f3251e7dd6641d1e7ebb9dfc24bf Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 20 Oct 2020 21:02:17 +0100 Subject: [PATCH 07/34] better loadout --- code/__DEFINES/citadel_defines.dm | 5 +++ code/modules/client/preferences.dm | 45 ++++++++++++++++----- code/modules/client/preferences_savefile.dm | 38 ++++++++--------- 3 files changed, 60 insertions(+), 28 deletions(-) diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index 923355b340..e9aa603d8a 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -114,3 +114,8 @@ //special species definitions #define MINIMUM_MUTANT_COLOR "#202020" //this is how dark players mutant parts and skin can be + +//loadout defines +#define MAXIMUM_LOADOUT_SAVES 5 +#define LOADOUT_ITEM "loadout_item" +#define LOADOUT_COLOR "loadout_color" \ No newline at end of file diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index d817cc3a53..2fd42a1cd5 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -245,7 +245,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) ///loadout stuff var/gear_points = 10 var/list/gear_categories - var/list/chosen_gear = list() + var/list/loadout_data = list() + var/loadout_slot = 1 //goes from 1 to MAXIMUM_LOADOUT_SAVES + var/list/chosen_gear = list() //your current set of items from loadout_data var/gear_category var/gear_subcategory @@ -824,6 +826,18 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "
" if(3) + //calculate your gear points from the chosen item + gear_points = CONFIG_GET(number/initial_gear_points) + var/chosen_gear = loadout_data["SAVE_[loadout_slot]"] + if(chosen_gear) + for(var/loadout_data in chosen_gear) + var/loadout_item = loadout_data[LOADOUT_ITEM] + if(loadout_item) + var/datum/gear/loadout_gear = text2path(loadout_item) + gear_points -= loadout + else + chosen_gear = list() + dat += "" dat += "" dat += "" @@ -879,7 +893,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(donoritem && !gear.donator_ckey_check(user.ckey)) continue var/class_link = "" - if(gear.type in chosen_gear) + if(has_loadout_gear(chosen_gear, gear.type)) class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'" else if(gear_points <= 0) class_link = "style='white-space:normal;' class='linkOff'" @@ -2606,8 +2620,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) current_tab = text2num(href_list["tab"]) if(href_list["preference"] == "gear") if(href_list["clear_loadout"]) - chosen_gear = list() - gear_points = CONFIG_GET(number/initial_gear_points) + loadout_data["SAVE_[loadout_slot]"] = list() save_preferences() if(href_list["select_category"]) gear_category = html_decode(href_list["select_category"]) @@ -2620,10 +2633,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(!G) return var/toggle = text2num(href_list["toggle_gear"]) - if(!toggle && (G.type in chosen_gear))//toggling off and the item effectively is in chosen gear) - chosen_gear -= G.type - gear_points += initial(G.cost) - else if(toggle && (!(is_type_in_ref_list(G, chosen_gear)))) + if(!toggle && has_loadout_gear(chosen_gear, G.type))//toggling off and the item effectively is in chosen gear) + remove_gear_from_loadout(chosen_gear, G.type) + else if(toggle && (!(has_loadout_gear(chosen_gear, G.type)))) if(!is_loadout_slot_available(G.category)) to_chat(user, "You cannot take this loadout, as you've already chosen too many of the same category!") return @@ -2631,8 +2643,10 @@ GLOBAL_LIST_EMPTY(preferences_datums) to_chat(user, "This is an item intended for donator use only. You are not authorized to use this item.") return if(gear_points >= initial(G.cost)) - chosen_gear += G.type - gear_points -= initial(G.cost) + if(loadout_data["SAVE_[loadout_slot]"]) + loadout_data["SAVE_[loadout_slot]"] += list(list(LOADOUT_ITEM = G.type)) //double packed because it does the union of the CONTENTS of the lists + else + loadout_data["SAVE_[loadout_slot]"] = list(list(LOADOUT_ITEM = G.type)) //double packed because you somehow had no save slot in your loadout? ShowChoices(user) return 1 @@ -2855,6 +2869,17 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(L[slot] < DEFAULT_SLOT_AMT) return TRUE +/datum/preferences/proc/has_loadout_gear(gear_list, gear_type) + for(var/loadout_gear in gear_list) + if(loadout_gear["ITEM"] == gear_type) + return loadout_gear + return FALSE + +/datum/preferences/proc/remove_gear_from_loadout(gear_list, gear_type) + var/find_gear = has_loadout_gear(gear_list, gear_type) + if(find_gear) + gear_list -= find_gear + #undef DEFAULT_SLOT_AMT #undef HANDS_SLOT_AMT #undef BACKPACK_SLOT_AMT diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 3bad31a919..d0f9e9cb73 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -5,7 +5,7 @@ // You do not need to raise this if you are adding new values that have sane defaults. // Only raise this value when changing the meaning/format/name/layout of an existing value // where you would want the updater procs below to run -#define SAVEFILE_VERSION_MAX 38 +#define SAVEFILE_VERSION_MAX 40 /* SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Carn @@ -226,6 +226,20 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car left_eye_color = "#BAB99E" right_eye_color = "#BAB99E" + if(current_version < 40) //loadout save gets changed to json + var/text_to_load + S["loadout"] >> text_to_load + var/list/saved_loadout_paths = splittext(text_to_load, "|") + //MAXIMUM_LOADOUT_SAVES save slots per loadout now + for(var/i=1, i<= MAXIMUM_LOADOUT_SAVES, i++) + loadout_data["SAVE_[i]"] = list() + for(var/some_gear_item in saved_loadout_paths) + if(!ispath(some_gear_item)) + message_admins("Failed to copy item [some_gear_item] to new loadout system when migrating from version [current_version] to 40, issue: item is not a path") + continue + loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item)) //for the migration we put their old save into the first save slot, which is loaded by default! + //it's double packed into a list because += will union the two lists contents + /datum/preferences/proc/load_path(ckey,filename="preferences.sav") if(!ckey) return @@ -669,20 +683,9 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car var/list/json_from_file = json_decode(file2text(char_vr_path)) if(json_from_file) belly_prefs = json_from_file["belly_prefs"] + //gear loadout - var/text_to_load - S["loadout"] >> text_to_load - var/list/saved_loadout_paths = splittext(text_to_load, "|") - chosen_gear = list() - gear_points = CONFIG_GET(number/initial_gear_points) - for(var/i in saved_loadout_paths) - var/datum/gear/path = text2path(i) - if(path) - var/init_cost = initial(path.cost) - if(init_cost > gear_points) - continue - chosen_gear += path - gear_points -= init_cost + loadout_data = safe_json_decode(S["loadout"]) //try to fix any outdated data if necessary //preference updating will handle saving the updated data for us. @@ -962,11 +965,10 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car //gear loadout - if(chosen_gear.len) - var/text_to_save = chosen_gear.Join("|") - S["loadout"] << text_to_save + if(length(loadout_data)) + S["loadout"] << safe_json_encode(loadout_data) else - S["loadout"] << "" //empty string to reset the value + S["loadout"] << safe_json_encode(list()) cit_character_pref_save(S) From 2166bdac798530be4a74f8c9f7fcaa6e14f2cf00 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Wed, 21 Oct 2020 00:11:40 +0100 Subject: [PATCH 08/34] okay this aint going well --- code/modules/client/preferences.dm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 2fd42a1cd5..809cd2113e 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -834,7 +834,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/loadout_item = loadout_data[LOADOUT_ITEM] if(loadout_item) var/datum/gear/loadout_gear = text2path(loadout_item) - gear_points -= loadout + gear_points -= initial(loadout_gear.cost) else chosen_gear = list() @@ -2633,9 +2633,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(!G) return var/toggle = text2num(href_list["toggle_gear"]) + message_admins("they selected [G] and toggle is [toggle] where has loadout says [has_loadout_gear(chosen_gear, G.type)]") if(!toggle && has_loadout_gear(chosen_gear, G.type))//toggling off and the item effectively is in chosen gear) + message_admins("remove it") remove_gear_from_loadout(chosen_gear, G.type) - else if(toggle && (!(has_loadout_gear(chosen_gear, G.type)))) + else if(toggle && !(has_loadout_gear(chosen_gear, G.type))) if(!is_loadout_slot_available(G.category)) to_chat(user, "You cannot take this loadout, as you've already chosen too many of the same category!") return @@ -2643,7 +2645,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) to_chat(user, "This is an item intended for donator use only. You are not authorized to use this item.") return if(gear_points >= initial(G.cost)) + message_admins("so they can have it") if(loadout_data["SAVE_[loadout_slot]"]) + message_admins("and its added to the list") loadout_data["SAVE_[loadout_slot]"] += list(list(LOADOUT_ITEM = G.type)) //double packed because it does the union of the CONTENTS of the lists else loadout_data["SAVE_[loadout_slot]"] = list(list(LOADOUT_ITEM = G.type)) //double packed because you somehow had no save slot in your loadout? @@ -2870,8 +2874,10 @@ GLOBAL_LIST_EMPTY(preferences_datums) return TRUE /datum/preferences/proc/has_loadout_gear(gear_list, gear_type) + message_admins("do they have [gear_type]") for(var/loadout_gear in gear_list) - if(loadout_gear["ITEM"] == gear_type) + message_admins("while searching we found [loadout_gear[LOADOUT_ITEM]]") + if(loadout_gear[LOADOUT_ITEM] == gear_type) return loadout_gear return FALSE From 78d8e1fcee163337789c2ce903871bfa2f483c4c Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Fri, 23 Oct 2020 22:03:21 +0100 Subject: [PATCH 09/34] debug --- code/modules/client/preferences.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 809cd2113e..87f9c26083 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -830,9 +830,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) gear_points = CONFIG_GET(number/initial_gear_points) var/chosen_gear = loadout_data["SAVE_[loadout_slot]"] if(chosen_gear) + message_admins("loading gear from SAVE_[loadout_slot]") for(var/loadout_data in chosen_gear) var/loadout_item = loadout_data[LOADOUT_ITEM] if(loadout_item) + message_admins("loading [loadout_item] from slot") var/datum/gear/loadout_gear = text2path(loadout_item) gear_points -= initial(loadout_gear.cost) else @@ -2878,6 +2880,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) for(var/loadout_gear in gear_list) message_admins("while searching we found [loadout_gear[LOADOUT_ITEM]]") if(loadout_gear[LOADOUT_ITEM] == gear_type) + message_admins("these two things are literally the same") return loadout_gear return FALSE From a39dea1b4d9e046908ff50849680d6b12e8e6303 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sat, 24 Oct 2020 00:31:45 +0100 Subject: [PATCH 10/34] json loadout --- code/controllers/subsystem/job.dm | 5 +++-- code/modules/client/preferences.dm | 29 ++++++++++++----------------- 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 0f936bdeff..84f4bd3f22 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -670,10 +670,11 @@ SUBSYSTEM_DEF(job) var/mob/the_mob = N if(!the_mob) the_mob = M // cause this doesn't get assigned if player is a latejoiner - if(the_mob.client && the_mob.client.prefs && (the_mob.client.prefs.chosen_gear && the_mob.client.prefs.chosen_gear.len)) + var/list/chosen_gear = the_mob.client.prefs.loadout_data[the_mob.client.prefs.loadout_slot] + if(the_mob.client && the_mob.client.prefs && (chosen_gear && chosen_gear.len)) if(!ishuman(M))//no silicons allowed return - for(var/i in the_mob.client.prefs.chosen_gear) + for(var/i in chosen_gear) var/datum/gear/G = i G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)] if(!G) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 87f9c26083..49822faadd 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -247,7 +247,6 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/list/gear_categories var/list/loadout_data = list() var/loadout_slot = 1 //goes from 1 to MAXIMUM_LOADOUT_SAVES - var/list/chosen_gear = list() //your current set of items from loadout_data var/gear_category var/gear_subcategory @@ -828,7 +827,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(3) //calculate your gear points from the chosen item gear_points = CONFIG_GET(number/initial_gear_points) - var/chosen_gear = loadout_data["SAVE_[loadout_slot]"] + var/list/chosen_gear = loadout_data["SAVE_[loadout_slot]"] if(chosen_gear) message_admins("loading gear from SAVE_[loadout_slot]") for(var/loadout_data in chosen_gear) @@ -895,7 +894,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(donoritem && !gear.donator_ckey_check(user.ckey)) continue var/class_link = "" - if(has_loadout_gear(chosen_gear, gear.type)) + if(has_loadout_gear(loadout_slot, gear.type)) class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'" else if(gear_points <= 0) class_link = "style='white-space:normal;' class='linkOff'" @@ -2635,11 +2634,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(!G) return var/toggle = text2num(href_list["toggle_gear"]) - message_admins("they selected [G] and toggle is [toggle] where has loadout says [has_loadout_gear(chosen_gear, G.type)]") - if(!toggle && has_loadout_gear(chosen_gear, G.type))//toggling off and the item effectively is in chosen gear) - message_admins("remove it") - remove_gear_from_loadout(chosen_gear, G.type) - else if(toggle && !(has_loadout_gear(chosen_gear, G.type))) + if(!toggle && has_loadout_gear(loadout_slot, G.type))//toggling off and the item effectively is in chosen gear) + remove_gear_from_loadout(loadout_slot, G.type) + else if(toggle && !(has_loadout_gear(loadout_slot, G.type))) if(!is_loadout_slot_available(G.category)) to_chat(user, "You cannot take this loadout, as you've already chosen too many of the same category!") return @@ -2860,8 +2857,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) /datum/preferences/proc/is_loadout_slot_available(slot) var/list/L LAZYINITLIST(L) - for(var/i in chosen_gear) - var/datum/gear/G = i + for(var/i in loadout_data["SAVE_[loadout_slot]"]) + var/datum/gear/G = i[LOADOUT_ITEM] var/occupied_slots = L[initial(G.category)] ? L[initial(G.category)] + 1 : 1 LAZYSET(L, initial(G.category), occupied_slots) switch(slot) @@ -2875,19 +2872,17 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(L[slot] < DEFAULT_SLOT_AMT) return TRUE -/datum/preferences/proc/has_loadout_gear(gear_list, gear_type) - message_admins("do they have [gear_type]") +/datum/preferences/proc/has_loadout_gear(save_slot, gear_type) + var/list/gear_list = loadout_data["SAVE_[save_slot]"] for(var/loadout_gear in gear_list) - message_admins("while searching we found [loadout_gear[LOADOUT_ITEM]]") if(loadout_gear[LOADOUT_ITEM] == gear_type) - message_admins("these two things are literally the same") return loadout_gear return FALSE -/datum/preferences/proc/remove_gear_from_loadout(gear_list, gear_type) - var/find_gear = has_loadout_gear(gear_list, gear_type) +/datum/preferences/proc/remove_gear_from_loadout(save_slot, gear_type) + var/find_gear = has_loadout_gear(save_slot, gear_type) if(find_gear) - gear_list -= find_gear + loadout_data["SAVE_[save_slot]"].Remove(list(find_gear)) #undef DEFAULT_SLOT_AMT #undef HANDS_SLOT_AMT From 71134ed8c3a7d28283d1695182cc82ad3a563577 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 25 Oct 2020 01:08:35 +0000 Subject: [PATCH 11/34] better loadout flags --- code/__DEFINES/citadel_defines.dm | 5 ----- code/__DEFINES/loadout.dm | 13 ++++++++----- code/modules/client/preferences.dm | 5 ++++- .../code/modules/client/loadout/__donator.dm | 2 +- .../code/modules/client/loadout/_loadout.dm | 3 ++- .../code/modules/client/loadout/neck.dm | 4 ++-- .../code/modules/client/loadout/suit.dm | 2 +- .../code/modules/client/loadout/uniform.dm | 14 +++++++------- 8 files changed, 25 insertions(+), 23 deletions(-) diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index e9aa603d8a..923355b340 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -114,8 +114,3 @@ //special species definitions #define MINIMUM_MUTANT_COLOR "#202020" //this is how dark players mutant parts and skin can be - -//loadout defines -#define MAXIMUM_LOADOUT_SAVES 5 -#define LOADOUT_ITEM "loadout_item" -#define LOADOUT_COLOR "loadout_color" \ No newline at end of file diff --git a/code/__DEFINES/loadout.dm b/code/__DEFINES/loadout.dm index 8e46b57d85..d477dff551 100644 --- a/code/__DEFINES/loadout.dm +++ b/code/__DEFINES/loadout.dm @@ -68,9 +68,12 @@ #define LOADOUT_LIMBS list(LOADOUT_LIMB_NORMAL,LOADOUT_LIMB_PROSTHETIC,LOADOUT_LIMB_AMPUTATED) //you can amputate your legs/arms though -//options for modifiying color of loadout items -#define LOADOUT_COLOR_TYPE_NONE "no_color" -#define LOADOUT_COLOR_TYPE_POLYCHROMIC "polychromic" +//loadout saving/loading specific defines +#define MAXIMUM_LOADOUT_SAVES 5 +#define LOADOUT_ITEM "loadout_item" +#define LOADOUT_COLOR "loadout_color" -//maximum loadout slots you can have (as in, how many stored loadout sets) -#define LOADOUT_MAXIMUM_SLOTS 5 +//loadout item flags +#define LOADOUT_CAN_NAME (1<<0) //renaming items +#define LOADOUT_CAN_DESCRIPTION (1<<1) //adding a custom description to items +#define LOADOUT_CAN_COLOR_POLYCHROMIC \ No newline at end of file diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 49822faadd..76f986a42e 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -894,8 +894,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(donoritem && !gear.donator_ckey_check(user.ckey)) continue var/class_link = "" - if(has_loadout_gear(loadout_slot, gear.type)) + var/list/loadout_item = has_loadout_gear(loadout_slot, gear.type) + if(loadout_item) class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'" + if(gear.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) + else if(gear_points <= 0) class_link = "style='white-space:normal;' class='linkOff'" else if(donoritem) diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index b6a1492af0..e00c586e62 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -287,7 +287,7 @@ slot = SLOT_IN_BACKPACK path = /obj/item/clothing/neck/cloak/polychromic/polyce ckeywhitelist = list("worksbythesea", "blakeryan") - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/donator/ssk name = "Stun Sword Kit" diff --git a/modular_citadel/code/modules/client/loadout/_loadout.dm b/modular_citadel/code/modules/client/loadout/_loadout.dm index 7d890a00fd..d8962aa839 100644 --- a/modular_citadel/code/modules/client/loadout/_loadout.dm +++ b/modular_citadel/code/modules/client/loadout/_loadout.dm @@ -53,7 +53,8 @@ GLOBAL_LIST_EMPTY(loadout_whitelist_ids) var/path //item-to-spawn path var/cost = 1 //normally, each loadout costs a single point. var/geargroupID //defines the ID that the gear inherits from the config - var/color_type = LOADOUT_COLOR_TYPE_NONE + var/loadout_flags + var/loadout_initial_colors = list() //NEW DONATOR SYTSEM STUFF var/donoritem //autoset on new if null diff --git a/modular_citadel/code/modules/client/loadout/neck.dm b/modular_citadel/code/modules/client/loadout/neck.dm index d10df3bc38..7e2a7fa00e 100644 --- a/modular_citadel/code/modules/client/loadout/neck.dm +++ b/modular_citadel/code/modules/client/loadout/neck.dm @@ -86,9 +86,9 @@ /datum/gear/neck/polycloak name = "Polychromatic Cloak" path = /obj/item/clothing/neck/cloak/polychromic - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/neck/altpolycloak name = "Alternate Cloak" path = /obj/item/clothing/neck/cloak/alt/polychromic - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC diff --git a/modular_citadel/code/modules/client/loadout/suit.dm b/modular_citadel/code/modules/client/loadout/suit.dm index 4bda8328d7..27b735f959 100644 --- a/modular_citadel/code/modules/client/loadout/suit.dm +++ b/modular_citadel/code/modules/client/loadout/suit.dm @@ -101,7 +101,7 @@ name = "Polychromic winter coat" path = /obj/item/clothing/suit/hooded/wintercoat/polychromic cost = 4 //too many people with neon green coats is hard on the eyes - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/suit/coat/med name = "Medical winter coat" diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 0152a2d75a..9578605064 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -223,43 +223,43 @@ name = "Polychromic Jumpsuit" path = /obj/item/clothing/under/misc/polyjumpsuit cost = 2 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/uniform/skirt/poly name = "Polychromic Jumpskirt" path = /obj/item/clothing/under/dress/skirt/polychromic cost = 2 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/uniform/suit/poly name = "Polychromic Button-up Shirt" path = /obj/item/clothing/under/misc/poly_shirt cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/uniform/skirt/poly/pleated name = "Polychromic Pleated Sweaterskirt" path = /obj/item/clothing/under/dress/skirt/polychromic/pleated cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/uniform/polykilt name = "Polychromic Kilt" path = /obj/item/clothing/under/costume/kilt/polychromic cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/uniform/shorts/poly name = "Polychromic Shorts" path = /obj/item/clothing/under/misc/polyshorts cost = 3 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/uniform/shorts/poly/athletic name = "Polychromic Athletic Shorts" path = /obj/item/clothing/under/shorts/polychromic cost = 2 - color_type = LOADOUT_COLOR_TYPE_POLYCHROMIC + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC /datum/gear/uniform/hopcasual name = "Casual Head of Personnel's uniform" From 0c2e1997ced0b70793694413b69c2973626bd958 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 25 Oct 2020 22:49:39 +0000 Subject: [PATCH 12/34] more loadout 2 --- code/__DEFINES/loadout.dm | 2 +- code/controllers/subsystem/job.dm | 4 +- code/modules/client/preferences.dm | 54 +++++++++++++++---- .../code/modules/client/loadout/__donator.dm | 1 + .../code/modules/client/loadout/_loadout.dm | 4 +- .../code/modules/client/loadout/neck.dm | 2 + .../code/modules/client/loadout/suit.dm | 1 + .../code/modules/client/loadout/uniform.dm | 7 +++ 8 files changed, 59 insertions(+), 16 deletions(-) diff --git a/code/__DEFINES/loadout.dm b/code/__DEFINES/loadout.dm index d477dff551..7fe5fa4876 100644 --- a/code/__DEFINES/loadout.dm +++ b/code/__DEFINES/loadout.dm @@ -76,4 +76,4 @@ //loadout item flags #define LOADOUT_CAN_NAME (1<<0) //renaming items #define LOADOUT_CAN_DESCRIPTION (1<<1) //adding a custom description to items -#define LOADOUT_CAN_COLOR_POLYCHROMIC \ No newline at end of file +#define LOADOUT_CAN_COLOR_POLYCHROMIC (1<<2) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 84f4bd3f22..7677dd3b0f 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -670,12 +670,12 @@ SUBSYSTEM_DEF(job) var/mob/the_mob = N if(!the_mob) the_mob = M // cause this doesn't get assigned if player is a latejoiner - var/list/chosen_gear = the_mob.client.prefs.loadout_data[the_mob.client.prefs.loadout_slot] + var/list/chosen_gear = the_mob.client.prefs.loadout_data["SAVE_[the_mob.client.prefs.loadout_slot]"] if(the_mob.client && the_mob.client.prefs && (chosen_gear && chosen_gear.len)) if(!ishuman(M))//no silicons allowed return for(var/i in chosen_gear) - var/datum/gear/G = i + var/datum/gear/G = i[LOADOUT_ITEM] G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)] if(!G) continue diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 76f986a42e..5426d01b07 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -830,11 +830,13 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/list/chosen_gear = loadout_data["SAVE_[loadout_slot]"] if(chosen_gear) message_admins("loading gear from SAVE_[loadout_slot]") - for(var/loadout_data in chosen_gear) - var/loadout_item = loadout_data[LOADOUT_ITEM] - if(loadout_item) - message_admins("loading [loadout_item] from slot") - var/datum/gear/loadout_gear = text2path(loadout_item) + for(var/loadout_item in chosen_gear) + var/loadout_item_path = loadout_item[LOADOUT_ITEM] + if(loadout_item_path) + message_admins("loading [loadout_item_path] from slot") + var/datum/gear/loadout_gear = text2path(loadout_item_path) + if(loadout_gear) + message_admins("it exists with a name of [initial(loadout_gear.name)]") gear_points -= initial(loadout_gear.cost) else chosen_gear = list() @@ -895,17 +897,20 @@ GLOBAL_LIST_EMPTY(preferences_datums) continue var/class_link = "" var/list/loadout_item = has_loadout_gear(loadout_slot, gear.type) + var/extra_color_data = "" if(loadout_item) class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'" if(gear.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) - + extra_color_data += "
Color" + for(var/loadout_color in loadout_item[LOADOUT_COLOR]) + extra_color_data += "   " else if(gear_points <= 0) class_link = "style='white-space:normal;' class='linkOff'" else if(donoritem) class_link = "style='white-space:normal;background:#ebc42e;' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=1'" else class_link = "style='white-space:normal;' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=1'" - dat += "" + dat += "" dat += "
[gear_points] loadout points remaining. \[Clear Loadout\]
You can only choose one item per category, unless it's an item that spawns in your backpack or hands.
[name]
[name][extra_color_data][gear.cost]" if(islist(gear.restricted_roles)) if(gear.restricted_roles.len) @@ -2647,12 +2652,39 @@ GLOBAL_LIST_EMPTY(preferences_datums) to_chat(user, "This is an item intended for donator use only. You are not authorized to use this item.") return if(gear_points >= initial(G.cost)) - message_admins("so they can have it") + var/list/new_loadout_data = list(LOADOUT_ITEM = G.type) + if(length(G.loadout_initial_colors)) + new_loadout_data[LOADOUT_COLOR] = G.loadout_initial_colors if(loadout_data["SAVE_[loadout_slot]"]) - message_admins("and its added to the list") - loadout_data["SAVE_[loadout_slot]"] += list(list(LOADOUT_ITEM = G.type)) //double packed because it does the union of the CONTENTS of the lists + loadout_data["SAVE_[loadout_slot]"] += list(new_loadout_data) //double packed because it does the union of the CONTENTS of the lists else - loadout_data["SAVE_[loadout_slot]"] = list(list(LOADOUT_ITEM = G.type)) //double packed because you somehow had no save slot in your loadout? + loadout_data["SAVE_[loadout_slot]"] = list(new_loadout_data) //double packed because you somehow had no save slot in your loadout? + if(href_list["loadout_color"]) + var/name = html_decode(href_list["loadout_gear_name"]) + var/datum/gear/G = GLOB.loadout_items[gear_category][gear_subcategory][name] + if(!G) + return + var/user_gear = has_loadout_gear(loadout_slot, G.type) + if(!user_gear) + return + var/list/color_options = list() + var/list/color_option_format = list("Primary", "Secondary", "Tertiary") //could make this a define and use it everywhere + for(var/i=1, i<=length(G.loadout_initial_colors), i++) + var/option = color_option_format[i] + if(option) + color_options += option + else + color_options += "Color [i]" + var/color_to_change = input(user, "Polychromic options", "Recolor [name]") as null|anything in color_options + if(color_to_change) + var/color_index = color_options[color_to_change] + message_admins("chosen index is [color_index]") + var/current_color = user_gear[LOADOUT_COLOR][color_index] + message_admins("current color is [current_color]") + var/new_color = input(user, "Polychromic options", "Choose [color_to_change] Color", current_color) as color|null + if(new_color) + message_admins("new colour successful") + user_gear[LOADOUT_COLOR][color_index] = sanitize_hexcolor(new_color, 6, TRUE, current_color) ShowChoices(user) return 1 diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index e00c586e62..7cf97e6bf0 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -288,6 +288,7 @@ path = /obj/item/clothing/neck/cloak/polychromic/polyce ckeywhitelist = list("worksbythesea", "blakeryan") loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#808080", "#8CC6FF", "#FF3535") /datum/gear/donator/ssk name = "Stun Sword Kit" diff --git a/modular_citadel/code/modules/client/loadout/_loadout.dm b/modular_citadel/code/modules/client/loadout/_loadout.dm index d8962aa839..2a7b77bd47 100644 --- a/modular_citadel/code/modules/client/loadout/_loadout.dm +++ b/modular_citadel/code/modules/client/loadout/_loadout.dm @@ -53,8 +53,8 @@ GLOBAL_LIST_EMPTY(loadout_whitelist_ids) var/path //item-to-spawn path var/cost = 1 //normally, each loadout costs a single point. var/geargroupID //defines the ID that the gear inherits from the config - var/loadout_flags - var/loadout_initial_colors = list() + var/loadout_flags = 0 + var/list/loadout_initial_colors = list() //NEW DONATOR SYTSEM STUFF var/donoritem //autoset on new if null diff --git a/modular_citadel/code/modules/client/loadout/neck.dm b/modular_citadel/code/modules/client/loadout/neck.dm index 7e2a7fa00e..7c3c11f25c 100644 --- a/modular_citadel/code/modules/client/loadout/neck.dm +++ b/modular_citadel/code/modules/client/loadout/neck.dm @@ -87,8 +87,10 @@ name = "Polychromatic Cloak" path = /obj/item/clothing/neck/cloak/polychromic loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#FFFFFF", "#808080") /datum/gear/neck/altpolycloak name = "Alternate Cloak" path = /obj/item/clothing/neck/cloak/alt/polychromic loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#676767", "#4C4C4C") diff --git a/modular_citadel/code/modules/client/loadout/suit.dm b/modular_citadel/code/modules/client/loadout/suit.dm index 27b735f959..7c21ed84d0 100644 --- a/modular_citadel/code/modules/client/loadout/suit.dm +++ b/modular_citadel/code/modules/client/loadout/suit.dm @@ -102,6 +102,7 @@ path = /obj/item/clothing/suit/hooded/wintercoat/polychromic cost = 4 //too many people with neon green coats is hard on the eyes loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#6A6964", "#C4B8A6", "#0000FF") /datum/gear/suit/coat/med name = "Medical winter coat" diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index 9578605064..89cd2eab50 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -224,42 +224,49 @@ path = /obj/item/clothing/under/misc/polyjumpsuit cost = 2 loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#808080", "#353535") /datum/gear/uniform/skirt/poly name = "Polychromic Jumpskirt" path = /obj/item/clothing/under/dress/skirt/polychromic cost = 2 loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#F08080", "#808080") /datum/gear/uniform/suit/poly name = "Polychromic Button-up Shirt" path = /obj/item/clothing/under/misc/poly_shirt cost = 3 loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#353535", "#353535") /datum/gear/uniform/skirt/poly/pleated name = "Polychromic Pleated Sweaterskirt" path = /obj/item/clothing/under/dress/skirt/polychromic/pleated cost = 3 loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#8CC6FF", "#808080", "#FF3535") /datum/gear/uniform/polykilt name = "Polychromic Kilt" path = /obj/item/clothing/under/costume/kilt/polychromic cost = 3 loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#F08080") /datum/gear/uniform/shorts/poly name = "Polychromic Shorts" path = /obj/item/clothing/under/misc/polyshorts cost = 3 loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#353535", "#808080", "#808080") /datum/gear/uniform/shorts/poly/athletic name = "Polychromic Athletic Shorts" path = /obj/item/clothing/under/shorts/polychromic cost = 2 loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#F08080") /datum/gear/uniform/hopcasual name = "Casual Head of Personnel's uniform" From 926b63ba06e0185ca40469655c002000162e168d Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 25 Oct 2020 22:54:53 +0000 Subject: [PATCH 13/34] stop using double spaces --- code/modules/client/preferences.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 5426d01b07..6784ff33c6 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -53,7 +53,6 @@ GLOBAL_LIST_EMPTY(preferences_datums) /// List with a key string associated to a list of keybindings. Unlike key_bindings, this one operates on raw key, allowing for binding a key that triggers regardless of if a modifier is depressed as long as the raw key is sent. var/list/modless_key_bindings = list() - var/tgui_fancy = TRUE var/tgui_lock = TRUE var/windowflashing = TRUE From e35b3e4a33bce1ec64f4a9c1da4995a456afc170 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Mon, 26 Oct 2020 00:47:40 +0000 Subject: [PATCH 14/34] color editing --- code/controllers/subsystem/job.dm | 8 ++++++++ code/modules/client/preferences.dm | 11 ++++------- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 7677dd3b0f..404bc16364 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -705,6 +705,14 @@ SUBSYSTEM_DEF(job) I.forceMove(get_turf(M)) // If everything fails, just put it on the floor under the mob. else qdel(I) + if(I) //handle loadout colors last + if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) + var/datum/element/polychromic/polychromic = SSdcs.GetElement(list(/datum/element/polychromic)) + if(polychromic) + var/list/polychromic_entry = polychromic.colors_by_atom[I] + if(polychromic_entry) + polychromic.colors_by_atom[I] = I[LOADOUT_COLOR] + /datum/controller/subsystem/job/proc/FreeRole(rank) if(!rank) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 6784ff33c6..f5b6becf55 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -2666,17 +2666,14 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/user_gear = has_loadout_gear(loadout_slot, G.type) if(!user_gear) return + message_admins("the gear is of length [length(user_gear)]") + message_admins("the color list is of length [length(user_gear[LOADOUT_COLOR])]") var/list/color_options = list() - var/list/color_option_format = list("Primary", "Secondary", "Tertiary") //could make this a define and use it everywhere for(var/i=1, i<=length(G.loadout_initial_colors), i++) - var/option = color_option_format[i] - if(option) - color_options += option - else - color_options += "Color [i]" + color_options += "Color [i]" var/color_to_change = input(user, "Polychromic options", "Recolor [name]") as null|anything in color_options if(color_to_change) - var/color_index = color_options[color_to_change] + var/color_index = text2num(copytext(color_to_change, 7)) message_admins("chosen index is [color_index]") var/current_color = user_gear[LOADOUT_COLOR][color_index] message_admins("current color is [current_color]") From b1379dd49eefd2e5255b9611c01b8d622ec8e851 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 27 Oct 2020 21:11:42 +0000 Subject: [PATCH 15/34] still not working --- code/controllers/subsystem/job.dm | 7 ++++++- code/datums/elements/polychromic.dm | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 404bc16364..c7ea768de5 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -707,10 +707,15 @@ SUBSYSTEM_DEF(job) qdel(I) if(I) //handle loadout colors last if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) - var/datum/element/polychromic/polychromic = SSdcs.GetElement(list(/datum/element/polychromic)) + var/datum/element/polychromic/polychromic + for(var/some_connection in I.comp_lookup["parent_qdeleting"]) //stupid way to do it but GetElement does not work for this case, sigh + if(ispath(some_connection, /datum/element/polychromic)) + polychromic = some_connection + break if(polychromic) var/list/polychromic_entry = polychromic.colors_by_atom[I] if(polychromic_entry) + message_admins("we found the corresponding atom") polychromic.colors_by_atom[I] = I[LOADOUT_COLOR] diff --git a/code/datums/elements/polychromic.dm b/code/datums/elements/polychromic.dm index 7ae0d04b05..726ee8f967 100644 --- a/code/datums/elements/polychromic.dm +++ b/code/datums/elements/polychromic.dm @@ -37,6 +37,7 @@ var/col = LAZYACCESS(colors, I) || "#FFFFFF" L += make_appearances ? mutable_appearance(mut_icon, overlays_states[I], color = col) : col colors_by_atom[A] = L + message_admins("attached") RegisterSignal(A, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/apply_overlays) @@ -170,7 +171,7 @@ if(istype(source,/obj/item/clothing/suit/hooded)) //so how come it be like this, where toggleable headslots are named separately (helmet/hood) anyways? var/obj/item/clothing/suit/hooded/sourcesuit = source H = sourcesuit.hood - else if(istype(source,/obj/item/clothing/suit/space/hardsuit)) + else if(istype(source,/obj/item/clothing/suit/space/hardsuit)) var/obj/item/clothing/suit/space/hardsuit/sourcesuit = source H = sourcesuit.helmet else From c8f27c1dd91bd28b23a76a695acda5e41711cc67 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 28 Oct 2020 01:06:44 +0000 Subject: [PATCH 16/34] Automatic changelog compile [ci skip] --- html/changelog.html | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/html/changelog.html b/html/changelog.html index 712327b88a..c4f40d1617 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -83,17 +83,6 @@
  • changing your character's gender won't randomize its hairstyle and facial hairstyle now
- -

26 August 2020

-

ancientpower updated:

-
    -
  • Ghosts can read newscasters by clicking on them.
  • -
-

silicons updated:

-
    -
  • hierophant vortex blasts now have 50% armor penetration vs mecha
  • -
  • ventcrawling now kicks off every attached/buckled mob, even for non humans.
  • -
GoonStation 13 Development Team From 8b1ec407c1f3f4a82b06753635a08e40bda94326 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Thu, 29 Oct 2020 01:07:50 +0000 Subject: [PATCH 17/34] Automatic changelog compile [ci skip] --- html/changelog.html | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/html/changelog.html b/html/changelog.html index c4f40d1617..18a8353c42 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -71,18 +71,6 @@
  • an ancient game over a thousand years old has re-emerged among crewmembers - rock paper scissors
  • you can now choose a body sprite as an anthromorph or anthromorphic insect, and can choose from aquatic/avian and apid respectively (and obviously back to the defaults too)
  • - -

    27 August 2020

    -

    silicons updated:

    -
      -
    • eyebeam lighting can only have 128 maximum HSV saturation now.
    • -
    • no more shotgun stripper clips in boxes.
    • -
    • goliath tentacles now do 20 damage to mechs at 25% ap
    • -
    -

    timothyteakettle updated:

    -
      -
    • changing your character's gender won't randomize its hairstyle and facial hairstyle now
    • -
    GoonStation 13 Development Team From afdbac31fa08cebd5858ee9e0cb72a2e25c56102 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sat, 5 Dec 2020 22:35:27 +0000 Subject: [PATCH 18/34] test --- code/controllers/subsystem/job.dm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index c7ea768de5..1e88b5c627 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -676,6 +676,7 @@ SUBSYSTEM_DEF(job) return for(var/i in chosen_gear) var/datum/gear/G = i[LOADOUT_ITEM] + message_admins("attempt to index with category [initial(G.category)] and subcategory [initial(G.subcategory)] is this a race condition?") G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)] if(!G) continue @@ -708,11 +709,9 @@ SUBSYSTEM_DEF(job) if(I) //handle loadout colors last if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) var/datum/element/polychromic/polychromic - for(var/some_connection in I.comp_lookup["parent_qdeleting"]) //stupid way to do it but GetElement does not work for this case, sigh - if(ispath(some_connection, /datum/element/polychromic)) - polychromic = some_connection - break - if(polychromic) + var/some_connection = I.comp_lookup["item_worn_overlays"] //stupid way to do it but GetElement does not work for this case, sigh + if(ispath(some_connection, /datum/element/polychromic)) + polychromic = some_connection var/list/polychromic_entry = polychromic.colors_by_atom[I] if(polychromic_entry) message_admins("we found the corresponding atom") From 640a86582aa69ee3def017ba6d05cfa8b7599e5e Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 00:02:06 +0000 Subject: [PATCH 19/34] a --- tools/json_verifier.py | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/json_verifier.py b/tools/json_verifier.py index dbba811205..aa74620667 100644 --- a/tools/json_verifier.py +++ b/tools/json_verifier.py @@ -1,20 +1,20 @@ -import sys -import json - -if len(sys.argv) <= 1: - exit(1) - -status = 0 - -for file in sys.argv[1:]: - with open(file, encoding="ISO-8859-1") as f: - try: - json.load(f) - except ValueError as exception: - print("JSON error in {}".format(file)) - print(exception) - status = 1 - else: - print("Valid {}".format(file)) - -exit(status) +import sys +import json + +if len(sys.argv) <= 1: + exit(1) + +status = 0 + +for file in sys.argv[1:]: + with open(file, encoding="ISO-8859-1") as f: + try: + json.load(f) + except ValueError as exception: + print("JSON error in {}".format(file)) + print(exception) + status = 1 + else: + print("Valid {}".format(file)) + +exit(status) From fa26f4c4021d9fe17e60edfef3e60056ccbbe770 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 00:02:14 +0000 Subject: [PATCH 20/34] b --- code/controllers/subsystem/job.dm | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 1e88b5c627..759cd339cb 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -676,7 +676,6 @@ SUBSYSTEM_DEF(job) return for(var/i in chosen_gear) var/datum/gear/G = i[LOADOUT_ITEM] - message_admins("attempt to index with category [initial(G.category)] and subcategory [initial(G.subcategory)] is this a race condition?") G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)] if(!G) continue @@ -708,14 +707,12 @@ SUBSYSTEM_DEF(job) qdel(I) if(I) //handle loadout colors last if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) - var/datum/element/polychromic/polychromic - var/some_connection = I.comp_lookup["item_worn_overlays"] //stupid way to do it but GetElement does not work for this case, sigh - if(ispath(some_connection, /datum/element/polychromic)) - polychromic = some_connection + var/datum/element/polychromic/polychromic = I.comp_lookup["item_worn_overlays"] //stupid way to do it but GetElement does not work for this + if(polychromic && istype(polychromic)) var/list/polychromic_entry = polychromic.colors_by_atom[I] if(polychromic_entry) - message_admins("we found the corresponding atom") - polychromic.colors_by_atom[I] = I[LOADOUT_COLOR] + polychromic.colors_by_atom[I] = i[LOADOUT_COLOR] + I.update_icon() /datum/controller/subsystem/job/proc/FreeRole(rank) From d05992ee44ee6d55243ec5546e741a2d04447aa0 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 00:02:17 +0000 Subject: [PATCH 21/34] Revert "a" This reverts commit 640a86582aa69ee3def017ba6d05cfa8b7599e5e. --- tools/json_verifier.py | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/json_verifier.py b/tools/json_verifier.py index aa74620667..dbba811205 100644 --- a/tools/json_verifier.py +++ b/tools/json_verifier.py @@ -1,20 +1,20 @@ -import sys -import json - -if len(sys.argv) <= 1: - exit(1) - -status = 0 - -for file in sys.argv[1:]: - with open(file, encoding="ISO-8859-1") as f: - try: - json.load(f) - except ValueError as exception: - print("JSON error in {}".format(file)) - print(exception) - status = 1 - else: - print("Valid {}".format(file)) - -exit(status) +import sys +import json + +if len(sys.argv) <= 1: + exit(1) + +status = 0 + +for file in sys.argv[1:]: + with open(file, encoding="ISO-8859-1") as f: + try: + json.load(f) + except ValueError as exception: + print("JSON error in {}".format(file)) + print(exception) + status = 1 + else: + print("Valid {}".format(file)) + +exit(status) From dc42a074896cb14f4faeddd72977609fb5c9b93d Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 00:02:23 +0000 Subject: [PATCH 22/34] b --- tools/json_verifier.py | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/json_verifier.py b/tools/json_verifier.py index dbba811205..aa74620667 100644 --- a/tools/json_verifier.py +++ b/tools/json_verifier.py @@ -1,20 +1,20 @@ -import sys -import json - -if len(sys.argv) <= 1: - exit(1) - -status = 0 - -for file in sys.argv[1:]: - with open(file, encoding="ISO-8859-1") as f: - try: - json.load(f) - except ValueError as exception: - print("JSON error in {}".format(file)) - print(exception) - status = 1 - else: - print("Valid {}".format(file)) - -exit(status) +import sys +import json + +if len(sys.argv) <= 1: + exit(1) + +status = 0 + +for file in sys.argv[1:]: + with open(file, encoding="ISO-8859-1") as f: + try: + json.load(f) + except ValueError as exception: + print("JSON error in {}".format(file)) + print(exception) + status = 1 + else: + print("Valid {}".format(file)) + +exit(status) From cbbcc0c38664cfb30aeadc00648ee1155f4c258c Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 00:16:56 +0000 Subject: [PATCH 23/34] fix the migration --- code/modules/client/preferences_savefile.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index d0f9e9cb73..879b8441f8 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -234,7 +234,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car for(var/i=1, i<= MAXIMUM_LOADOUT_SAVES, i++) loadout_data["SAVE_[i]"] = list() for(var/some_gear_item in saved_loadout_paths) - if(!ispath(some_gear_item)) + if(!ispath(text2path(some_gear_item))) message_admins("Failed to copy item [some_gear_item] to new loadout system when migrating from version [current_version] to 40, issue: item is not a path") continue loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item)) //for the migration we put their old save into the first save slot, which is loaded by default! From a478da678e2d91166e4c1aa0e809ba2f10da2c42 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 15:50:33 +0000 Subject: [PATCH 24/34] bugfixes --- code/controllers/subsystem/job.dm | 3 ++- code/modules/client/preferences_savefile.dm | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 759cd339cb..661bf1921a 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -675,7 +675,8 @@ SUBSYSTEM_DEF(job) if(!ishuman(M))//no silicons allowed return for(var/i in chosen_gear) - var/datum/gear/G = i[LOADOUT_ITEM] + var/datum/gear/G = text2path(i[LOADOUT_ITEM]) + message_admins("category [initial(G.category)] and subcategory [initial(G.subcategory)] and name [initial(G.name)]") G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)] if(!G) continue diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 879b8441f8..ba50f65b67 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -239,6 +239,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car continue loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item)) //for the migration we put their old save into the first save slot, which is loaded by default! //it's double packed into a list because += will union the two lists contents + S["loadout"] = safe_json_encode(loadout_data) /datum/preferences/proc/load_path(ckey,filename="preferences.sav") if(!ckey) From 5566c00a697b9254d5bbe7285eb6cf5739b0213d Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 17:24:12 +0000 Subject: [PATCH 25/34] fixes --- code/controllers/subsystem/job.dm | 2 +- code/modules/client/preferences.dm | 12 ++++++------ code/modules/client/preferences_savefile.dm | 5 +++-- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 661bf1921a..ccaaefeb03 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -675,7 +675,7 @@ SUBSYSTEM_DEF(job) if(!ishuman(M))//no silicons allowed return for(var/i in chosen_gear) - var/datum/gear/G = text2path(i[LOADOUT_ITEM]) + var/datum/gear/G = istext(i[LOADOUT_ITEM]) ? text2path(i[LOADOUT_ITEM]) : i[LOADOUT_ITEM] message_admins("category [initial(G.category)] and subcategory [initial(G.subcategory)] and name [initial(G.name)]") G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)] if(!G) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index f5b6becf55..6db21bbeeb 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -895,7 +895,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(donoritem && !gear.donator_ckey_check(user.ckey)) continue var/class_link = "" - var/list/loadout_item = has_loadout_gear(loadout_slot, gear.type) + var/list/loadout_item = has_loadout_gear(loadout_slot, "[gear.type]") var/extra_color_data = "" if(loadout_item) class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'" @@ -2641,9 +2641,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(!G) return var/toggle = text2num(href_list["toggle_gear"]) - if(!toggle && has_loadout_gear(loadout_slot, G.type))//toggling off and the item effectively is in chosen gear) - remove_gear_from_loadout(loadout_slot, G.type) - else if(toggle && !(has_loadout_gear(loadout_slot, G.type))) + if(!toggle && has_loadout_gear(loadout_slot, "[G.type]"))//toggling off and the item effectively is in chosen gear) + remove_gear_from_loadout(loadout_slot, "[G.type]") + else if(toggle && !(has_loadout_gear(loadout_slot, "[G.type]"))) if(!is_loadout_slot_available(G.category)) to_chat(user, "You cannot take this loadout, as you've already chosen too many of the same category!") return @@ -2651,7 +2651,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) to_chat(user, "This is an item intended for donator use only. You are not authorized to use this item.") return if(gear_points >= initial(G.cost)) - var/list/new_loadout_data = list(LOADOUT_ITEM = G.type) + var/list/new_loadout_data = list(LOADOUT_ITEM = "[G.type]") if(length(G.loadout_initial_colors)) new_loadout_data[LOADOUT_COLOR] = G.loadout_initial_colors if(loadout_data["SAVE_[loadout_slot]"]) @@ -2663,7 +2663,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/datum/gear/G = GLOB.loadout_items[gear_category][gear_subcategory][name] if(!G) return - var/user_gear = has_loadout_gear(loadout_slot, G.type) + var/user_gear = has_loadout_gear(loadout_slot, "[G.type]") if(!user_gear) return message_admins("the gear is of length [length(user_gear)]") diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index ba50f65b67..99ccfcc97e 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -5,7 +5,7 @@ // You do not need to raise this if you are adding new values that have sane defaults. // Only raise this value when changing the meaning/format/name/layout of an existing value // where you would want the updater procs below to run -#define SAVEFILE_VERSION_MAX 40 +#define SAVEFILE_VERSION_MAX 46 /* SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Carn @@ -226,9 +226,10 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car left_eye_color = "#BAB99E" right_eye_color = "#BAB99E" - if(current_version < 40) //loadout save gets changed to json + if(current_version < 45) //loadout save gets changed to json var/text_to_load S["loadout"] >> text_to_load + message_admins("we're trying to load [text_to_load]") var/list/saved_loadout_paths = splittext(text_to_load, "|") //MAXIMUM_LOADOUT_SAVES save slots per loadout now for(var/i=1, i<= MAXIMUM_LOADOUT_SAVES, i++) From 158d76dea512628ab1c5e9426789b6d3b07cbb26 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 20:05:49 +0000 Subject: [PATCH 26/34] githubs being weird --- tools/json_verifier.py | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/json_verifier.py b/tools/json_verifier.py index dbba811205..aa74620667 100644 --- a/tools/json_verifier.py +++ b/tools/json_verifier.py @@ -1,20 +1,20 @@ -import sys -import json - -if len(sys.argv) <= 1: - exit(1) - -status = 0 - -for file in sys.argv[1:]: - with open(file, encoding="ISO-8859-1") as f: - try: - json.load(f) - except ValueError as exception: - print("JSON error in {}".format(file)) - print(exception) - status = 1 - else: - print("Valid {}".format(file)) - -exit(status) +import sys +import json + +if len(sys.argv) <= 1: + exit(1) + +status = 0 + +for file in sys.argv[1:]: + with open(file, encoding="ISO-8859-1") as f: + try: + json.load(f) + except ValueError as exception: + print("JSON error in {}".format(file)) + print(exception) + status = 1 + else: + print("Valid {}".format(file)) + +exit(status) From 53a434cfb1113954b4ecef7d85ed9e92b85876c2 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 20:07:50 +0000 Subject: [PATCH 27/34] suggested change --- code/modules/client/preferences.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index a014f00272..d1b9739a9a 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -2927,7 +2927,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) /datum/preferences/proc/remove_gear_from_loadout(save_slot, gear_type) var/find_gear = has_loadout_gear(save_slot, gear_type) if(find_gear) - loadout_data["SAVE_[save_slot]"].Remove(list(find_gear)) + loadout_data["SAVE_[save_slot]"] -= find_gear #undef DEFAULT_SLOT_AMT #undef HANDS_SLOT_AMT From e413fcb09134cb8e71796f0ebca9765e65b29e41 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 22:14:35 +0000 Subject: [PATCH 28/34] more fixes --- code/modules/client/preferences.dm | 2 +- code/modules/client/preferences_savefile.dm | 8 +++++++- modular_citadel/code/modules/client/loadout/uniform.dm | 2 ++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index d1b9739a9a..16e472f9a4 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -2927,7 +2927,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) /datum/preferences/proc/remove_gear_from_loadout(save_slot, gear_type) var/find_gear = has_loadout_gear(save_slot, gear_type) if(find_gear) - loadout_data["SAVE_[save_slot]"] -= find_gear + loadout_data["SAVE_[save_slot]"] -= list(find_gear) #undef DEFAULT_SLOT_AMT #undef HANDS_SLOT_AMT diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 67e73ef713..a2d6497b9d 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -274,8 +274,14 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(!ispath(text2path(some_gear_item))) message_admins("Failed to copy item [some_gear_item] to new loadout system when migrating from version [current_version] to 40, issue: item is not a path") continue - loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item)) //for the migration we put their old save into the first save slot, which is loaded by default! + var/datum/gear/gear_item = text2path(some_gear_item) + if(!initial(gear_item.loadout_initial_colors)) + loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item)) //for the migration we put their old save into the first save slot, which is loaded by default! + else + //the same but we setup some new polychromic data + loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item, LOADOUT_COLOR = initial(gear_item.loadout_initial_colors))) //it's double packed into a list because += will union the two lists contents + S["loadout"] = safe_json_encode(loadout_data) /datum/preferences/proc/load_path(ckey,filename="preferences.sav") diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index f8a5edeca8..b76e223f25 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -47,6 +47,8 @@ /datum/gear/uniform/maidcostume/polychromic name = "Polychromic maid costume" path = /obj/item/clothing/under/rank/civilian/janitor/maid/polychromic + loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_initial_colors = list("#FFFFFF", "#000000") /datum/gear/uniform/mailmanuniform name = "Mailman's jumpsuit" From a84f1648f48efb78be8bc0ded5a7ef5210fd7ab3 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 22:57:57 +0000 Subject: [PATCH 29/34] Update preferences_savefile.dm --- code/modules/client/preferences_savefile.dm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index a2d6497b9d..6f906d927a 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -265,7 +265,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(current_version < 47) //loadout save gets changed to json var/text_to_load S["loadout"] >> text_to_load - message_admins("we're trying to load [text_to_load]") var/list/saved_loadout_paths = splittext(text_to_load, "|") //MAXIMUM_LOADOUT_SAVES save slots per loadout now for(var/i=1, i<= MAXIMUM_LOADOUT_SAVES, i++) @@ -275,11 +274,15 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car message_admins("Failed to copy item [some_gear_item] to new loadout system when migrating from version [current_version] to 40, issue: item is not a path") continue var/datum/gear/gear_item = text2path(some_gear_item) - if(!initial(gear_item.loadout_initial_colors)) + if(!(initial(gear_item.loadout_flags) & LOADOUT_CAN_COLOR_POLYCHROMIC)) + message_admins("a") loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item)) //for the migration we put their old save into the first save slot, which is loaded by default! else - //the same but we setup some new polychromic data - loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item, LOADOUT_COLOR = initial(gear_item.loadout_initial_colors))) + message_admins("b") + //the same but we setup some new polychromic data (you can't get the initial value for a list so we have to do this horrible thing here) + var/datum/gear/temporary_gear_item = new gear_item + loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item, LOADOUT_COLOR = temporary_gear_item.loadout_initial_colors)) + qdel(temporary_gear_item) //it's double packed into a list because += will union the two lists contents S["loadout"] = safe_json_encode(loadout_data) From 16b98adb9fef20cf15180417be0c5a2027ede92a Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 23:40:00 +0000 Subject: [PATCH 30/34] no more debug --- code/modules/client/preferences.dm | 8 -------- code/modules/client/preferences_savefile.dm | 2 -- 2 files changed, 10 deletions(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 16e472f9a4..fd796bcd45 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -811,14 +811,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) gear_points = CONFIG_GET(number/initial_gear_points) var/list/chosen_gear = loadout_data["SAVE_[loadout_slot]"] if(chosen_gear) - message_admins("loading gear from SAVE_[loadout_slot]") for(var/loadout_item in chosen_gear) var/loadout_item_path = loadout_item[LOADOUT_ITEM] if(loadout_item_path) - message_admins("loading [loadout_item_path] from slot") var/datum/gear/loadout_gear = text2path(loadout_item_path) if(loadout_gear) - message_admins("it exists with a name of [initial(loadout_gear.name)]") gear_points -= initial(loadout_gear.cost) else chosen_gear = list() @@ -2670,20 +2667,15 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/user_gear = has_loadout_gear(loadout_slot, "[G.type]") if(!user_gear) return - message_admins("the gear is of length [length(user_gear)]") - message_admins("the color list is of length [length(user_gear[LOADOUT_COLOR])]") var/list/color_options = list() for(var/i=1, i<=length(G.loadout_initial_colors), i++) color_options += "Color [i]" var/color_to_change = input(user, "Polychromic options", "Recolor [name]") as null|anything in color_options if(color_to_change) var/color_index = text2num(copytext(color_to_change, 7)) - message_admins("chosen index is [color_index]") var/current_color = user_gear[LOADOUT_COLOR][color_index] - message_admins("current color is [current_color]") var/new_color = input(user, "Polychromic options", "Choose [color_to_change] Color", current_color) as color|null if(new_color) - message_admins("new colour successful") user_gear[LOADOUT_COLOR][color_index] = sanitize_hexcolor(new_color, 6, TRUE, current_color) ShowChoices(user) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 6f906d927a..86f7622a93 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -275,10 +275,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car continue var/datum/gear/gear_item = text2path(some_gear_item) if(!(initial(gear_item.loadout_flags) & LOADOUT_CAN_COLOR_POLYCHROMIC)) - message_admins("a") loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item)) //for the migration we put their old save into the first save slot, which is loaded by default! else - message_admins("b") //the same but we setup some new polychromic data (you can't get the initial value for a list so we have to do this horrible thing here) var/datum/gear/temporary_gear_item = new gear_item loadout_data["SAVE_1"] += list(list(LOADOUT_ITEM = some_gear_item, LOADOUT_COLOR = temporary_gear_item.loadout_initial_colors)) From 81eaa8a2b919288f6141c9c323879fc5a84a1421 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Sun, 6 Dec 2020 23:51:03 +0000 Subject: [PATCH 31/34] woops --- code/modules/client/preferences.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index fd796bcd45..e466037696 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -816,7 +816,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(loadout_item_path) var/datum/gear/loadout_gear = text2path(loadout_item_path) if(loadout_gear) - gear_points -= initial(loadout_gear.cost) + gear_points -= initial(loadout_gear.cost) else chosen_gear = list() From ac9e383638ed5478960993cae94b358b87466921 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Mon, 7 Dec 2020 21:28:17 +0000 Subject: [PATCH 32/34] WOOPS ONE MORE DEBUG MESSAGE --- code/controllers/subsystem/job.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index ccaaefeb03..14d49d55ea 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -676,7 +676,6 @@ SUBSYSTEM_DEF(job) return for(var/i in chosen_gear) var/datum/gear/G = istext(i[LOADOUT_ITEM]) ? text2path(i[LOADOUT_ITEM]) : i[LOADOUT_ITEM] - message_admins("category [initial(G.category)] and subcategory [initial(G.subcategory)] and name [initial(G.name)]") G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)] if(!G) continue From 8846e69c42041c7127238f35c1c006440eae12ae Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Mon, 7 Dec 2020 21:34:52 +0000 Subject: [PATCH 33/34] ANOTHER ONE --- code/datums/elements/polychromic.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/datums/elements/polychromic.dm b/code/datums/elements/polychromic.dm index 726ee8f967..600bf9250e 100644 --- a/code/datums/elements/polychromic.dm +++ b/code/datums/elements/polychromic.dm @@ -37,7 +37,6 @@ var/col = LAZYACCESS(colors, I) || "#FFFFFF" L += make_appearances ? mutable_appearance(mut_icon, overlays_states[I], color = col) : col colors_by_atom[A] = L - message_admins("attached") RegisterSignal(A, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/apply_overlays) From 132a3c9526a3747dc10495319d1c85f1074d6f13 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 8 Dec 2020 19:29:34 +0000 Subject: [PATCH 34/34] color non polychromic items --- code/controllers/subsystem/job.dm | 22 +++++++++++++--------- code/modules/client/preferences.dm | 23 ++++++++++++++++++++++- 2 files changed, 35 insertions(+), 10 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 14d49d55ea..4963e33cc3 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -691,6 +691,19 @@ SUBSYSTEM_DEF(job) if(!permitted) continue var/obj/item/I = new G.path + if(I && length(i[LOADOUT_COLOR])) //handle loadout colors + //handle polychromic items + if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) + var/datum/element/polychromic/polychromic = I.comp_lookup["item_worn_overlays"] //stupid way to do it but GetElement does not work for this + if(polychromic && istype(polychromic)) + var/list/polychromic_entry = polychromic.colors_by_atom[I] + if(polychromic_entry) + polychromic.colors_by_atom[I] = i[LOADOUT_COLOR] + I.update_icon() + else + //handle non-polychromic items (they only have one color) + I.add_atom_colour(i[LOADOUT_COLOR][1], FIXED_COLOUR_PRIORITY) + I.update_icon() if(!M.equip_to_slot_if_possible(I, G.slot, disable_warning = TRUE, bypass_equip_delay_self = TRUE)) // If the job's dresscode compliant, try to put it in its slot, first if(iscarbon(M)) var/mob/living/carbon/C = M @@ -705,15 +718,6 @@ SUBSYSTEM_DEF(job) I.forceMove(get_turf(M)) // If everything fails, just put it on the floor under the mob. else qdel(I) - if(I) //handle loadout colors last - if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) - var/datum/element/polychromic/polychromic = I.comp_lookup["item_worn_overlays"] //stupid way to do it but GetElement does not work for this - if(polychromic && istype(polychromic)) - var/list/polychromic_entry = polychromic.colors_by_atom[I] - if(polychromic_entry) - polychromic.colors_by_atom[I] = i[LOADOUT_COLOR] - I.update_icon() - /datum/controller/subsystem/job/proc/FreeRole(rank) if(!rank) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index e466037696..3931216702 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -880,9 +880,15 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(loadout_item) class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'" if(gear.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) - extra_color_data += "
    Color" + extra_color_data += "
    Color" for(var/loadout_color in loadout_item[LOADOUT_COLOR]) extra_color_data += "   " + else + var/loadout_color_non_poly = "#FFFFFF" + if(length(loadout_item[LOADOUT_COLOR])) + loadout_color_non_poly = loadout_item[LOADOUT_COLOR][1] + extra_color_data += "
    Color" + extra_color_data += "   " else if(gear_points <= 0) class_link = "style='white-space:normal;' class='linkOff'" else if(donoritem) @@ -2655,11 +2661,26 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/list/new_loadout_data = list(LOADOUT_ITEM = "[G.type]") if(length(G.loadout_initial_colors)) new_loadout_data[LOADOUT_COLOR] = G.loadout_initial_colors + else + new_loadout_data[LOADOUT_COLOR] = list("#FFFFFF") if(loadout_data["SAVE_[loadout_slot]"]) loadout_data["SAVE_[loadout_slot]"] += list(new_loadout_data) //double packed because it does the union of the CONTENTS of the lists else loadout_data["SAVE_[loadout_slot]"] = list(new_loadout_data) //double packed because you somehow had no save slot in your loadout? if(href_list["loadout_color"]) + var/name = html_decode(href_list["loadout_gear_name"]) + var/datum/gear/G = GLOB.loadout_items[gear_category][gear_subcategory][name] + if(!G) + return + var/user_gear = has_loadout_gear(loadout_slot, "[G.type]") + if(!user_gear) + return + if(!length(user_gear[LOADOUT_COLOR])) + user_gear[LOADOUT_COLOR] = list("#FFFFFF") + var/current_color = user_gear[LOADOUT_COLOR][1] + var/new_color = input(user, "Polychromic options", "Choose Color", current_color) as color|null + user_gear[LOADOUT_COLOR][1] = sanitize_hexcolor(new_color, 6, TRUE, current_color) + if(href_list["loadout_color_polychromic"]) var/name = html_decode(href_list["loadout_gear_name"]) var/datum/gear/G = GLOB.loadout_items[gear_category][gear_subcategory][name] if(!G)