Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reverts Lizard sprites, and fixes Human Skin Tones, and other issues. #129

Open
wants to merge 84 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
84 commits
Select commit Hold shift + click to select a range
35c1eaa
Overhaul of entire codebase
ChromeFoxxity Jan 14, 2024
56b077d
scrapper_b fix
ChromeFoxxity Jan 14, 2024
696fe05
standard outfits fix
ChromeFoxxity Jan 14, 2024
76de904
heron fix MAYBE?
ChromeFoxxity Jan 14, 2024
96fce1d
map fixes
ChromeFoxxity Jan 14, 2024
4350f96
Fixes more stuff
ChromeFoxxity Jan 14, 2024
1e3a0b9
tiles
ChromeFoxxity Jan 14, 2024
2ecef76
new bigderelict1
ChromeFoxxity Jan 14, 2024
2cd92c4
stuff
ChromeFoxxity Jan 14, 2024
49d4c46
delta upgrade
ChromeFoxxity Jan 15, 2024
2046224
delta update again
ChromeFoxxity Jan 15, 2024
be5c054
russian mob fix
ChromeFoxxity Jan 16, 2024
30dec82
TGM Fix
Veiyna Jan 16, 2024
9f10a48
table fixes maybe
ChromeFoxxity Jan 17, 2024
8a00497
Merge branch 'master' of https://github.com/ChromeFoxxity/Voidcrew-LRP-1
ChromeFoxxity Jan 17, 2024
82ec455
nanotrasen mob corpses
ChromeFoxxity Jan 17, 2024
6f952b4
syndicate mob updates new death sound
ChromeFoxxity Jan 17, 2024
c6dc7a0
adds weyland yutani mobs
ChromeFoxxity Jan 18, 2024
4c9fd10
adds working joes
ChromeFoxxity Jan 18, 2024
284bced
map updates
ChromeFoxxity Jan 21, 2024
c68e29b
more sprite and charlie updates
ChromeFoxxity Feb 14, 2024
8aae879
wall and window smoothing fix
ChromeFoxxity Feb 14, 2024
f5bed28
several fixes, and adjustments
ChromeFoxxity Feb 15, 2024
21d0dc4
clothing fix
ChromeFoxxity Feb 15, 2024
cca2b71
lost cause
ChromeFoxxity Feb 15, 2024
9d24d57
floors
ChromeFoxxity Feb 15, 2024
43721f9
stuff
ChromeFoxxity Feb 19, 2024
b3349b0
.
ChromeFoxxity Feb 19, 2024
f402906
fixes searchlight
ChromeFoxxity Feb 19, 2024
95ddfdf
adds mining crate to searchlight
ChromeFoxxity Feb 19, 2024
263bd01
adds tables to searchlight
ChromeFoxxity Feb 19, 2024
d5c2b26
/obj/item/ammo_box/magazine/internal/shot/dual
ChromeFoxxity Feb 20, 2024
ab6188f
Skipper update
ChromeFoxxity Feb 21, 2024
5eea264
skipper fix and crates and lockers fix
ChromeFoxxity Feb 21, 2024
07f718f
locker fix
ChromeFoxxity Feb 21, 2024
b656877
adds security to skipper
ChromeFoxxity Feb 22, 2024
8f75ae6
sigh
ChromeFoxxity Feb 22, 2024
6ead4d7
cybersun crap
ChromeFoxxity Feb 22, 2024
617d85a
stuff
ChromeFoxxity Feb 23, 2024
aab907e
fucked up something
ChromeFoxxity Feb 23, 2024
f946923
bullshit
ChromeFoxxity Feb 23, 2024
7fe605f
meh
ChromeFoxxity Feb 24, 2024
ff4952e
fix surgery caps
ChromeFoxxity Feb 24, 2024
b144895
gg
ChromeFoxxity Feb 24, 2024
ef18be3
adds kruger-class
ChromeFoxxity Feb 24, 2024
ed61c06
meh
ChromeFoxxity Feb 24, 2024
af6e402
wallframe stuff fix
ChromeFoxxity Feb 24, 2024
2ff0cc7
firealarm fix
ChromeFoxxity Feb 25, 2024
2d8d7ab
whatever
ChromeFoxxity Feb 25, 2024
553af7d
Merge branch 'master' into pr/ChromeFoxxity/122
Veiyna Feb 27, 2024
b3babb5
russian ship fix
ChromeFoxxity Feb 27, 2024
42c03af
ship fixes
ChromeFoxxity Mar 6, 2024
07cf8a1
Update heron.dmm
ChromeFoxxity Mar 9, 2024
fdde308
Update thunderbird.dmm
ChromeFoxxity Mar 9, 2024
c0e413b
Update indisputable.dmm
ChromeFoxxity Mar 9, 2024
79cea3d
Update pocketrocket.dmm
ChromeFoxxity Mar 9, 2024
92a7b62
FIX
ChromeFoxxity Mar 9, 2024
8f87ce8
Merge branch 'master' of https://github.com/ChromeFoxxity/Voidcrew-LRP-1
ChromeFoxxity Mar 9, 2024
019bc12
map fixes
ChromeFoxxity Mar 9, 2024
ff2436e
fixing stuff
ChromeFoxxity Mar 9, 2024
94e26a5
whatever
ChromeFoxxity Mar 9, 2024
6258c9d
litieguai fix
ChromeFoxxity Mar 9, 2024
1dd16e9
MORE MAP FIXES
ChromeFoxxity Mar 9, 2024
92ccdcf
MORE
ChromeFoxxity Mar 9, 2024
eaca03d
Merge branch 'master' into pr/ChromeFoxxity/122
Veiyna Mar 10, 2024
3259b5c
Fix
Veiyna Mar 10, 2024
3104dff
Fix 2
Veiyna Mar 10, 2024
d13fab1
Imagine not doing find and replace
Veiyna Mar 10, 2024
408b2f8
aaaaaaaaaaaaaaaaaaaaaaaa
Veiyna Mar 10, 2024
22c7406
why
Veiyna Mar 10, 2024
f366162
god why am i doing this
Veiyna Mar 10, 2024
54906b9
More fixes
Veiyna Mar 10, 2024
5621e73
help
Veiyna Mar 10, 2024
3000884
stuff
ChromeFoxxity Mar 11, 2024
96a5783
Merge branch 'master' of https://github.com/ChromeFoxxity/Voidcrew-LRP-1
ChromeFoxxity Mar 11, 2024
3ed91d3
xeno maid fix
ChromeFoxxity Mar 12, 2024
f0bf619
Merge branch 'master' of https://github.com/Void-Crew/Voidcrew-LRP
ChromeFoxxity Apr 18, 2024
48c0b10
voidcrewstuff
ChromeFoxxity Aug 25, 2024
5122f70
voidcrewstuff
ChromeFoxxity Aug 25, 2024
bd842b8
Merge branch 'Foxxity' of https://github.com/ChromeFoxxity/Voidcrew-L…
ChromeFoxxity Aug 25, 2024
28228e9
police
ChromeFoxxity Aug 27, 2024
1868d76
Revert "police"
ChromeFoxxity Aug 27, 2024
d6b5f65
fixes crates
ChromeFoxxity Aug 28, 2024
4662ff6
tile fixes
ChromeFoxxity Sep 4, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
263 changes: 263 additions & 0 deletions _maps/shuttles/shiptest/voidcrew/thunderbird.dmm

Large diffs are not rendered by default.

3 changes: 1 addition & 2 deletions code/__DEFINES/DNA.dm
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,7 @@
#define NOMOUTH 22
#define NOSOCKS 23 // You cannot wear sock
#define NO_BONES 24 //WS Edit - Breakable Bones
#define MUTCOLORS_SECONDARY 25 //! A second mutant colour for other things
#define SKINCOLORS 26 //Human skintones


//organ slots
#define ORGAN_SLOT_BRAIN "brain"
Expand Down
1 change: 0 additions & 1 deletion code/__DEFINES/bodyparts.dm
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
#define IS_ORGANIC_LIMB(A) (A.bodytype & BODYTYPE_ORGANIC)
#define IS_ROBOTIC_LIMB(A) (A.bodytype & BODYTYPE_ROBOTIC)
2 changes: 1 addition & 1 deletion code/__HELPERS/global_lists.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/lizard, GLOB.animated_tails_list_lizard)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/human, GLOB.tails_list_human)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/human, GLOB.animated_tails_list_human)
init_sprite_accessory_subtypes(/datum/sprite_accessory/face_markings, GLOB.face_markings_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts, GLOB.snouts_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/horns,GLOB.horns_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears, GLOB.ears_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, GLOB.wings_list)
Expand Down
6 changes: 3 additions & 3 deletions code/__HELPERS/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/human, GLOB.tails_list_human)
if(!GLOB.tails_list_lizard.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/lizard, GLOB.tails_list_lizard)
if(!GLOB.face_markings_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/face_markings, GLOB.face_markings_list)
if(!GLOB.snouts_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts, GLOB.snouts_list)
if(!GLOB.horns_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/horns, GLOB.horns_list)
if(!GLOB.ears_list.len)
Expand Down Expand Up @@ -96,7 +96,7 @@
if(!GLOB.spider_mandibles_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/spider_mandibles, GLOB.spider_mandibles_list)
//For now we will always return none for tail_human and ears.
return(list("mcolor" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),"ethcolor" = GLOB.color_list_ethereal[pick(GLOB.color_list_ethereal)], "tail_lizard" = pick(GLOB.tails_list_lizard), "tail_human" = "None", "wings" = "None", "face_markings" = pick(GLOB.face_markings_list), "horns" = pick(GLOB.horns_list), "ears" = "None", "frills" = pick(GLOB.frills_list), "spines" = pick(GLOB.spines_list), "body_markings" = pick(GLOB.body_markings_list), "legs" = "Normal Legs", "caps" = pick(GLOB.caps_list), "moth_wings" = pick(GLOB.moth_wings_list), "moth_fluff" = pick(GLOB.moth_fluff_list), "moth_markings" = pick(GLOB.moth_markings_list), "squid_face" = pick(GLOB.squid_face_list), "ipc_screen" = pick(GLOB.ipc_screens_list), "ipc_antenna" = pick(GLOB.ipc_antennas_list),"ipc_chassis" = pick(GLOB.ipc_chassis_list), "spider_legs" = pick(GLOB.spider_legs_list), "spider_spinneret" = pick(GLOB.spider_spinneret_list), "spider_mandibles" = pick(GLOB.spider_mandibles_list), "kepori_feathers" = pick(GLOB.kepori_feathers_list), "kepori_body_feathers" = pick(GLOB.kepori_body_feathers_list), "flavor_text" = ""))
return(list("mcolor" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),"ethcolor" = GLOB.color_list_ethereal[pick(GLOB.color_list_ethereal)], "tail_lizard" = pick(GLOB.tails_list_lizard), "tail_human" = "None", "wings" = "None", "snout" = pick(GLOB.snouts_list), "horns" = pick(GLOB.horns_list), "ears" = "None", "frills" = pick(GLOB.frills_list), "spines" = pick(GLOB.spines_list), "body_markings" = pick(GLOB.body_markings_list), "legs" = "Normal Legs", "caps" = pick(GLOB.caps_list), "moth_wings" = pick(GLOB.moth_wings_list), "moth_fluff" = pick(GLOB.moth_fluff_list), "moth_markings" = pick(GLOB.moth_markings_list), "squid_face" = pick(GLOB.squid_face_list), "ipc_screen" = pick(GLOB.ipc_screens_list), "ipc_antenna" = pick(GLOB.ipc_antennas_list),"ipc_chassis" = pick(GLOB.ipc_chassis_list), "spider_legs" = pick(GLOB.spider_legs_list), "spider_spinneret" = pick(GLOB.spider_spinneret_list), "spider_mandibles" = pick(GLOB.spider_mandibles_list), "kepori_feathers" = pick(GLOB.kepori_feathers_list), "kepori_body_feathers" = pick(GLOB.kepori_body_feathers_list), "flavor_text" = ""))

/proc/random_hairstyle(gender)
switch(gender)
Expand Down
2 changes: 1 addition & 1 deletion code/_globalvars/lists/flavor_misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ GLOBAL_LIST_EMPTY(socks_list) //stores /datum/sprite_accessory/socks indexed by
GLOBAL_LIST_EMPTY(body_markings_list)
GLOBAL_LIST_EMPTY(tails_list_lizard)
GLOBAL_LIST_EMPTY(animated_tails_list_lizard)
GLOBAL_LIST_EMPTY(face_markings_list)
GLOBAL_LIST_EMPTY(snouts_list)
GLOBAL_LIST_EMPTY(horns_list)
GLOBAL_LIST_EMPTY(frills_list)
GLOBAL_LIST_EMPTY(spines_list)
Expand Down
2 changes: 1 addition & 1 deletion code/game/machinery/deployable.dm
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@
var/drop_amount = 3
var/deconstructible = TRUE

/obj/structure/fluff/attackby(obj/item/I, mob/living/user, params)
/obj/structure/barricade/wooden/attackby(obj/item/I, mob/living/user, params)
if(I.tool_behaviour == TOOL_CROWBAR && deconstructible)
user.visible_message("<span class='notice'>[user] starts prying [src]...</span>", "<span class='notice'>You start prying [src]...</span>")
I.play_tool_sound(src)
Expand Down
55 changes: 55 additions & 0 deletions code/game/objects/items/stacks/tiles/tile_types.dm
Original file line number Diff line number Diff line change
Expand Up @@ -420,6 +420,61 @@
icon_state = "tile"
turf_type = /turf/open/floor/iron
merge_type = /obj/item/stack/tile/iron
tile_reskin_types = list(
/obj/item/stack/tile/iron,
/obj/item/stack/tile/iron/edge,
/obj/item/stack/tile/iron/half,
/obj/item/stack/tile/iron/corner,
/obj/item/stack/tile/iron/large,
/obj/item/stack/tile/iron/textured,
/obj/item/stack/tile/iron/textured_edge,
/obj/item/stack/tile/iron/textured_corner,
/obj/item/stack/tile/iron/textured_large,
/obj/item/stack/tile/iron/small,
/obj/item/stack/tile/iron/diagonal,
/obj/item/stack/tile/iron/herringbone,
/obj/item/stack/tile/iron/white,
/obj/item/stack/tile/iron/white/smooth_edge,
/obj/item/stack/tile/iron/white/smooth_half,
/obj/item/stack/tile/iron/white/smooth_corner,
/obj/item/stack/tile/iron/white/smooth_large,
/obj/item/stack/tile/iron/white_side,
/obj/item/stack/tile/iron/white_corner,
/obj/item/stack/tile/iron/white/textured,
/obj/item/stack/tile/iron/white/textured_edge,
/obj/item/stack/tile/iron/white/textured_half,
/obj/item/stack/tile/iron/white/textured_corner,
/obj/item/stack/tile/iron/white/textured_large,
/obj/item/stack/tile/iron/white/small,
/obj/item/stack/tile/iron/white/diagonal,
/obj/item/stack/tile/iron/white/herringbone,
/obj/item/stack/tile/iron/dark,
/obj/item/stack/tile/iron/dark/smooth_edge,
/obj/item/stack/tile/iron/dark/smooth_half,
/obj/item/stack/tile/iron/dark/smooth_corner,
/obj/item/stack/tile/iron/dark/smooth_large,
/obj/item/stack/tile/iron/dark/small,
/obj/item/stack/tile/iron/dark/diagonal,
/obj/item/stack/tile/iron/dark/herringbone,
/obj/item/stack/tile/iron/checker,
/obj/item/stack/tile/iron/cafeteria,
/obj/item/stack/tile/iron/smooth,
/obj/item/stack/tile/iron/smooth_edge,
/obj/item/stack/tile/iron/smooth_corner,
/obj/item/stack/tile/iron/smooth_large,
/obj/item/stack/tile/iron/kitchen,
/obj/item/stack/tile/iron/kitchen/small,
/obj/item/stack/tile/iron/kitchen/diagonal,
/obj/item/stack/tile/iron/kitchen/herringbone,
/obj/item/stack/tile/iron/chapel,
/obj/item/stack/tile/iron/showroomfloor,
/obj/item/stack/tile/iron/solarpanel,
/obj/item/stack/tile/iron/freezer,
/obj/item/stack/tile/iron/grimy,
/obj/item/stack/tile/iron/tech,
/obj/item/stack/tile/iron/tech/grid,
/obj/item/stack/tile/iron/tech/techmaint
)

/obj/item/stack/tile/iron/cyborg
custom_materials = null // All other Borg versions of items have no Metal or Glass - RR
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
name = "critter crate"
desc = "A crate designed for safe transport of animals. It has an oxygen tank for safe transport in space."
icon_state = "crittercrate"
base_icon_state = "crittercrate"
horizontal = FALSE
allow_objects = FALSE
breakout_time = 600
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
name = "large crate"
desc = "A hefty wooden crate. You'll need a crowbar to get it open."
icon_state = "largecrate"
base_icon_state = "largecrate"
density = TRUE
storage_capacity = 100 //its mapper only, cant be closed again, its logical
material_drop = /obj/item/stack/sheet/mineral/wood
Expand Down
4 changes: 1 addition & 3 deletions code/game/objects/structures/crates_lockers/crates/secure.dm
Original file line number Diff line number Diff line change
Expand Up @@ -147,8 +147,6 @@
to_chat(user, span_warning("[src] is broken!"))


/obj/structure/closet/crate/secure/exo
/obj/structure/closet/crate/secure/cargo/mining/exo
desc = "A lock-enabled crate used to carry EXOCON merchandise destined for export to potential buyers."
name = "EXOCON storage crate"
icon = 'icons/obj/crates.dmi'
icon_state = "exocrate"
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
material_drop = /obj/item/stack/sheet/mineral/wood
material_drop_amount = 6
icon_state = "wooden"
base_icon_state = "wooden"
open_sound = 'sound/machines/wooden_closet_open.ogg'
close_sound = 'sound/machines/wooden_closet_close.ogg'
open_sound_volume = 25
Expand Down
18 changes: 10 additions & 8 deletions code/game/objects/structures/mirror.dm
Original file line number Diff line number Diff line change
Expand Up @@ -183,16 +183,18 @@
else
to_chat(H, "<span class='notice'>Invalid color. Your color is not bright enough.</span>")

if(MUTCOLORS_SECONDARY in H.dna.species.species_traits)
var/new_secondary_mutantcolor = input(user, "Choose your secondary skin color:", "Race change","#" + H.dna.features["mcolor2"]) as color|null
if(new_secondary_mutantcolor)
var/temp_hsv = RGBtoHSV(new_secondary_mutantcolor)
if(MUTCOLORS in H.dna.species.species_traits)
var/new_mutantcolor = input(user, "Choose your skin color:", "Race change","#"+H.dna.features["mcolor"]) as color|null
if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK))
return
if(new_mutantcolor)
var/temp_hsv = RGBtoHSV(new_mutantcolor)

if(ReadHSV(temp_hsv)[3] >= ReadHSV("#191919")[3]) // mutantcolors must be bright
H.dna.features["mcolor2"] = sanitize_hexcolor(new_secondary_mutantcolor)
if(ReadHSV(temp_hsv)[3] >= ReadHSV("#191919")[3]) // mutantcolors must be bright
H.dna.features["mcolor"] = sanitize_hexcolor(new_mutantcolor)

else
to_chat(H, "<span class='notice'>Invalid color. Your secondary color is not bright enough.</span>")
else
to_chat(H, "<span class='notice'>Invalid color. Your color is not bright enough.</span>")

H.update_body()
H.update_hair()
Expand Down
2 changes: 1 addition & 1 deletion code/modules/admin/create_mob.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
H.dna.features["mcolor"] = random_short_color()
H.dna.features["ethcolor"] = GLOB.color_list_ethereal[pick(GLOB.color_list_ethereal)]
H.dna.features["tail_lizard"] = pick(GLOB.tails_list_lizard)
H.dna.features["face_markings"] = pick(GLOB.face_markings_list)
H.dna.features["snout"] = pick(GLOB.snouts_list)
H.dna.features["horns"] = pick(GLOB.horns_list)
H.dna.features["frills"] = pick(GLOB.frills_list)
H.dna.features["spines"] = pick(GLOB.spines_list)
Expand Down
4 changes: 2 additions & 2 deletions code/modules/cargo/packs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1732,15 +1732,15 @@
access = ACCESS_QM
contains = list(/obj/item/storage/backpack/duffelbag/mining_conscript)
crate_name = "EXOCON Frontier starter kit"
crate_type = /obj/structure/closet/crate/secure/exo
crate_type = /obj/structure/closet/crate/secure/cargo/mining/exo

/datum/supply_pack/service/hvyminer
name = "Heavy Mining Kit"
desc = "A set of supplementary premium equipment for particularly challenging frontier expeditions. Comes equipped with an enhanced mining suit, crusher, launch boots, and two emerency stimulant injectors."
cost = 7500
access = ACCESS_QM
crate_name = "EXOCON Heavy Operations Kit"
crate_type = /obj/structure/closet/crate/secure/exo
crate_type = /obj/structure/closet/crate/secure/cargo/mining/exo
contains = list(/obj/item/clothing/suit/space/hardsuit/mining/heavy,
/obj/item/clothing/shoes/bhop,
/obj/item/reagent_containers/hypospray/medipen/stimpack/crisis,
Expand Down
36 changes: 12 additions & 24 deletions code/modules/client/preferences.dm
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
var/eye_color = "000" //Eye color
var/datum/species/pref_species = new /datum/species/human() //Mutant race
var/species_looking_at = "human" //used as a helper to keep track of in the species select thingy
var/list/features = list("mcolor" = "FFF", "mcolor2" = "FFF", "ethcolor" = "9c3030", "tail_lizard" = "Smooth", "tail_human" = "None", "face_markings" = "None", "horns" = "None", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", "legs" = "Normal Legs", "moth_wings" = "Plain", "moth_fluff" = "Plain", "moth_markings" = "None", "spider_legs" = "Plain", "spider_spinneret" = "Plain", "spider_mandibles" = "Plain", "flavor_text" = "")
var/list/features = list("mcolor" = "FFF", "ethcolor" = "9c3030", "tail_lizard" = "Smooth", "tail_human" = "None", "snout" = "Round", "horns" = "None", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", "legs" = "Normal Legs", "moth_wings" = "Plain", "moth_fluff" = "Plain", "moth_markings" = "None", "spider_legs" = "Plain", "spider_spinneret" = "Plain", "spider_mandibles" = "Plain", "flavor_text" = "")
var/list/randomise = list(RANDOM_UNDERWEAR = TRUE, RANDOM_UNDERWEAR_COLOR = TRUE, RANDOM_UNDERSHIRT = TRUE, RANDOM_SOCKS = TRUE, RANDOM_BACKPACK = TRUE, RANDOM_JUMPSUIT_STYLE = TRUE, RANDOM_EXOWEAR_STYLE = TRUE, RANDOM_HAIRSTYLE = TRUE, RANDOM_HAIR_COLOR = TRUE, RANDOM_FACIAL_HAIRSTYLE = TRUE, RANDOM_FACIAL_HAIR_COLOR = TRUE, RANDOM_SKIN_TONE = TRUE, RANDOM_EYE_COLOR = TRUE)
var/list/friendlyGenders = list("Male" = "male", "Female" = "female", "Other" = "plural")
var/phobia = "spiders"
Expand Down Expand Up @@ -361,7 +361,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "<h3>Mutant Color</h3>"

dat += "<span style='border: 1px solid #161616; background-color: #[features["mcolor"]];'>&nbsp;&nbsp;&nbsp;</span> <a href='?_src_=prefs;preference=mutant_color;task=input'>Change</a><BR>"
dat += "<span style='border: 1px solid #161616; background-color: #[features["mcolor2"]];'>&nbsp;&nbsp;&nbsp;</span> <a href='?_src_=prefs;preference=mutant_color_2;task=input'>Change</a><BR>"

mutant_colors = TRUE

if(istype(pref_species, /datum/species/ethereal)) //not the best thing to do tbf but I dont know whats better.
Expand Down Expand Up @@ -426,13 +426,13 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "</td>"
mutant_category = 0

if("face_markings" in pref_species.default_features)
if("snout" in pref_species.default_features)
if(!mutant_category)
dat += APPEARANCE_CATEGORY_COLUMN

dat += "<h3>Face Marking</h3>"
dat += "<h3>Snout</h3>"

dat += "<a href='?_src_=prefs;preference=face_markings;task=input'>[features["face_markings"]]</a><BR>"
dat += "<a href='?_src_=prefs;preference=snout;task=input'>[features["snout"]]</a><BR>"

mutant_category++
if(mutant_category >= MAX_MUTANT_ROWS)
Expand All @@ -446,8 +446,6 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "<h3>Horns</h3>"

dat += "<a href='?_src_=prefs;preference=horns;task=input'>[features["horns"]]</a><BR>"
dat += "<span style='border:1px solid #161616; background-color: #[hair_color];'>&nbsp;&nbsp;&nbsp;</span> <a href='?_src_=prefs;preference=hair;task=input'>Change</a><BR>"
dat += "<a href='?_src_=prefs;preference=toggle_random;random_type=[RANDOM_HAIR_COLOR]'>[(randomise[RANDOM_HAIR_COLOR]) ? "Lock" : "Unlock"]</A><BR>"

mutant_category++
if(mutant_category >= MAX_MUTANT_ROWS)
Expand Down Expand Up @@ -653,7 +651,8 @@ GLOBAL_LIST_EMPTY(preferences_datums)

dat += "<h3>Kepori Body Feathers</h3>"
dat += "<a href='?_src_=prefs;preference=kepori_body_feathers;task=input'>[features["kepori_body_feathers"]]</a><BR>"
dat += "<span style='border:1px solid #161616; background-color: #[features["mcolor2"]];'>&nbsp;&nbsp;&nbsp;</span> <a href='?_src_=prefs;preference=mutant_color_2;task=input'>Change</a><BR>"
dat += "<span style='border:1px solid #161616; background-color: #[facial_hair_color];'>&nbsp;&nbsp;&nbsp;</span> <a href='?_src_=prefs;preference=facial;task=input'>Change</a><BR>"
dat += "<a href='?_src_=prefs;preference=toggle_random;random_type=[RANDOM_FACIAL_HAIR_COLOR]'>[(randomise[RANDOM_FACIAL_HAIR_COLOR]) ? "Lock" : "Unlock"]</A><BR>"

mutant_category++
if(mutant_category >= MAX_MUTANT_ROWS)
Expand Down Expand Up @@ -1736,17 +1735,6 @@ GLOBAL_LIST_EMPTY(preferences_datums)
else
to_chat(user, "<span class='danger'>Invalid color. Your color is not bright enough.</span>")

if("mutant_color_2")
var/new_mutantcolor = input(user, "Choose your character's secondary alien/mutant color:", "Character Preference","#" + features["mcolor2"]) as color|null
if(new_mutantcolor)
var/temp_hsv = RGBtoHSV(new_mutantcolor)
if(new_mutantcolor == "#000000")
features["mcolor2"] = pref_species.default_color
else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#191919")[3]) // mutantcolors must be bright, but only if they affect the skin
features["mcolor2"] = sanitize_hexcolor(new_mutantcolor)
else
to_chat(user, "<span class='danger'>Invalid color. Your color is not bright enough.</span>")

if("color_ethereal")
var/new_etherealcolor = input(user, "Choose your ethereal color", "Character Preference") as null|anything in GLOB.color_list_ethereal
if(new_etherealcolor)
Expand All @@ -1765,11 +1753,11 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if(new_tail)
features["tail_human"] = new_tail

if("face_markings")
var/new_face_markings
new_face_markings = input(user, "Choose your character's face markings:", "Character Preference") as null|anything in GLOB.face_markings_list
if(new_face_markings)
features["face_markings"] = new_face_markings
if("snout")
var/new_snout
new_snout = input(user, "Choose your character's snout:", "Character Preference") as null|anything in GLOB.snouts_list
if(new_snout)
features["snout"] = new_snout

if("horns")
var/new_horns
Expand Down
7 changes: 3 additions & 4 deletions code/modules/client/preferences_savefile.dm
Original file line number Diff line number Diff line change
Expand Up @@ -386,7 +386,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
READ_FILE(S["feature_ethcolor"], features["ethcolor"])
READ_FILE(S["feature_lizard_tail"], features["tail_lizard"])
READ_FILE(S["feature_human_tail"], features["tail_human"])
READ_FILE(S["feature_lizard_face_markings"], features["face_markings"])
READ_FILE(S["feature_lizard_snout"], features["snout"])
READ_FILE(S["feature_lizard_horns"], features["horns"])
READ_FILE(S["feature_human_ears"], features["ears"])
READ_FILE(S["feature_lizard_frills"], features["frills"])
Expand Down Expand Up @@ -502,7 +502,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
features["ethcolor"] = copytext_char(features["ethcolor"], 1, 7)
features["tail_lizard"] = sanitize_inlist(features["tail_lizard"], GLOB.tails_list_lizard)
features["tail_human"] = sanitize_inlist(features["tail_human"], GLOB.tails_list_human, "None")
features["face_markings"] = sanitize_inlist(features["face_markings"], GLOB.face_markings_list)
features["snout"] = sanitize_inlist(features["snout"], GLOB.snouts_list)
features["horns"] = sanitize_inlist(features["horns"], GLOB.horns_list)
features["ears"] = sanitize_inlist(features["ears"], GLOB.ears_list, "None")
features["frills"] = sanitize_inlist(features["frills"], GLOB.frills_list)
Expand Down Expand Up @@ -565,11 +565,10 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
WRITE_FILE(S["species"] , pref_species.id)
WRITE_FILE(S["phobia"], phobia)
WRITE_FILE(S["feature_mcolor"] , features["mcolor"])
WRITE_FILE(S["feature_mcolor2"] , features["mcolor2"])
WRITE_FILE(S["feature_ethcolor"] , features["ethcolor"])
WRITE_FILE(S["feature_lizard_tail"] , features["tail_lizard"])
WRITE_FILE(S["feature_human_tail"] , features["tail_human"])
WRITE_FILE(S["feature_lizard_face_markings"] , features["face_markings"])
WRITE_FILE(S["feature_lizard_snout"] , features["snout"])
WRITE_FILE(S["feature_lizard_horns"] , features["horns"])
WRITE_FILE(S["feature_human_ears"] , features["ears"])
WRITE_FILE(S["feature_lizard_frills"] , features["frills"])
Expand Down
1 change: 1 addition & 0 deletions code/modules/mining/lavaland/necropolis_chests.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
name = "necropolis chest"
desc = "It's watching you closely."
icon_state = "necrocrate"
base_icon_state = "necrocrate"
resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF

/obj/structure/closet/crate/necropolis/tendril
Expand Down
Loading
Loading