mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-15 00:54:16 +01:00
Underwear Datums (#1794)
* One more step to bringing our preferences/setup stuff in line with Bay. * Whoopsy * Jon is a moron, more at 11.
This commit is contained in:
+11
-5
@@ -2,17 +2,20 @@
|
||||
* Category Collection *
|
||||
**********************/
|
||||
/datum/category_collection
|
||||
var/category_group_type // The type of categories to initialize
|
||||
var/list/datum/category_group/categories // The list of initialized categories
|
||||
var/category_group_type // Type of categories to initialize
|
||||
var/list/datum/category_group/categories // List of initialized categories
|
||||
var/list/datum/category_group/categories_by_name // Associative list of initialized categories, keyed by name
|
||||
|
||||
/datum/category_collection/New()
|
||||
..()
|
||||
categories = new()
|
||||
categories_by_name = new()
|
||||
for(var/category_type in typesof(category_group_type))
|
||||
var/datum/category_group/category = category_type
|
||||
if(initial(category.name))
|
||||
category = new category(src)
|
||||
categories += category
|
||||
categories_by_name[category.name] = category
|
||||
categories = dd_sortedObjectList(categories)
|
||||
|
||||
/datum/category_collection/Destroy()
|
||||
@@ -26,20 +29,23 @@
|
||||
******************/
|
||||
/datum/category_group
|
||||
var/name = ""
|
||||
var/category_item_type // The type of items to initialize
|
||||
var/list/datum/category_item/items // The list of initialized items
|
||||
var/datum/category_collection/collection // The collection this group belongs to
|
||||
var/category_item_type // Type of items to initialize
|
||||
var/list/datum/category_item/items // List of initialized items
|
||||
var/list/datum/category_item/items_by_name // Associative list of initialized items, by name
|
||||
var/datum/category_collection/collection // The collection this group belongs to
|
||||
|
||||
/datum/category_group/New(var/datum/category_collection/cc)
|
||||
..()
|
||||
collection = cc
|
||||
items = new()
|
||||
items_by_name = new()
|
||||
|
||||
for(var/item_type in typesof(category_item_type))
|
||||
var/datum/category_item/item = item_type
|
||||
if(initial(item.name))
|
||||
item = new item(src)
|
||||
items += item
|
||||
items_by_name[item.name] = item
|
||||
|
||||
// For whatever reason dd_insertObjectList(items, item) doesn't insert in the correct order
|
||||
// If you change this, confirm that character setup doesn't become completely unordered.
|
||||
|
||||
@@ -0,0 +1,145 @@
|
||||
/datum/category_item/underwear/bottom/none
|
||||
name = "None"
|
||||
always_last = TRUE
|
||||
|
||||
/datum/category_item/underwear/bottom/briefs_white
|
||||
name = "Briefs, white"
|
||||
icon_state = "b1"
|
||||
|
||||
/datum/category_item/underwear/bottom/briefs_white/is_default(var/gender)
|
||||
return gender != FEMALE
|
||||
|
||||
/datum/category_item/underwear/bottom/briefs_grey
|
||||
name = "Briefs, grey"
|
||||
icon_state = "b2"
|
||||
|
||||
/datum/category_item/underwear/bottom/briefs_green
|
||||
name = "Briefs, green"
|
||||
icon_state = "b3"
|
||||
|
||||
/datum/category_item/underwear/bottom/briefs_blue
|
||||
name = "Briefs, blue"
|
||||
icon_state = "b4"
|
||||
|
||||
/datum/category_item/underwear/bottom/briefs_black
|
||||
name = "Briefs, black"
|
||||
icon_state = "b5"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_noback
|
||||
name = "Panties, noback"
|
||||
icon_state = "b6"
|
||||
|
||||
/datum/category_item/underwear/bottom/boxers_loveheart
|
||||
name = "Boxers, Loveheart"
|
||||
icon_state = "b7"
|
||||
|
||||
/datum/category_item/underwear/bottom/boxers_black
|
||||
name = "Boxers, black"
|
||||
icon_state = "b8"
|
||||
|
||||
/datum/category_item/underwear/bottom/boxers_grey
|
||||
name = "Boxers, grey"
|
||||
icon_state = "b9"
|
||||
|
||||
/datum/category_item/underwear/bottom/boxers_green_and_blue
|
||||
name = "Boxers, green & blue striped"
|
||||
icon_state = "b10"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_red
|
||||
name = "Panties, red"
|
||||
icon_state = "b11"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_white
|
||||
name = "Panties, white"
|
||||
icon_state = "b12"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_white/is_default(var/gender)
|
||||
return gender == FEMALE
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_yellow
|
||||
name = "Panties, yellow"
|
||||
icon_state = "b13"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_blue
|
||||
name = "Panties, blue"
|
||||
icon_state = "b14"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_light_black
|
||||
name = "Panties, light-black"
|
||||
icon_state = "b15"
|
||||
|
||||
/datum/category_item/underwear/bottom/thong
|
||||
name = "Thong"
|
||||
icon_state = "b16"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_black
|
||||
name = "Panties, black"
|
||||
icon_state = "b17"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_white_alt
|
||||
name = "Bra, white alt"
|
||||
icon_state = "b18"
|
||||
|
||||
/datum/category_item/underwear/bottom/compression_shorts_black
|
||||
name = "Compression shorts, black"
|
||||
icon_state = "b19"
|
||||
|
||||
/datum/category_item/underwear/bottom/compression_shorts_white
|
||||
name = "Compression shorts, white"
|
||||
icon_state = "b20"
|
||||
|
||||
/datum/category_item/underwear/bottom/compression_shorts_baby_blue
|
||||
name = "Compression shorts, baby-blue"
|
||||
icon_state = "b21"
|
||||
|
||||
/datum/category_item/underwear/bottom/panties_green
|
||||
name = "Panties, green"
|
||||
icon_state = "b22"
|
||||
|
||||
/datum/category_item/underwear/bottom/compression_shorts_pink
|
||||
name = "Compression shorts, pink"
|
||||
icon_state = "b23"
|
||||
|
||||
/datum/category_item/underwear/bottom/thong_violet
|
||||
name = "Thong, violet"
|
||||
icon_state = "b24"
|
||||
|
||||
/datum/category_item/underwear/bottom/thong_alt
|
||||
name = "Thong, alt"
|
||||
icon_state = "b25"
|
||||
|
||||
/datum/category_item/underwear/bottom/thong_violet_alt
|
||||
name = "Thong, violet alt"
|
||||
icon_state = "b26"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_black
|
||||
name = "Alt. thong, black"
|
||||
icon_state = "b27"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_blue
|
||||
name = "Alt. thong, blue"
|
||||
icon_state = "b28"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_green
|
||||
name = "Alt. thong, green"
|
||||
icon_state = "b29"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_purple
|
||||
name = "Alt. thong, purple"
|
||||
icon_state = "b30"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_red
|
||||
name = "Alt. thong, red"
|
||||
icon_state = "b31"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_teal
|
||||
name = "Alt. thong, teal"
|
||||
icon_state = "b32"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_violet
|
||||
name = "Alt. thong, violet"
|
||||
icon_state = "b33"
|
||||
|
||||
/datum/category_item/underwear/bottom/alt_thong_white
|
||||
name = "Alt. thong, white"
|
||||
icon_state = "b34"
|
||||
@@ -0,0 +1,75 @@
|
||||
/datum/category_item/underwear/socks/none
|
||||
always_last = TRUE
|
||||
name = "None"
|
||||
|
||||
/datum/category_item/underwear/socks/white_normal
|
||||
name = "Normal, white"
|
||||
icon_state = "white_norm"
|
||||
|
||||
/datum/category_item/underwear/socks/white_short
|
||||
name = "Short, white"
|
||||
icon_state = "white_short"
|
||||
|
||||
/datum/category_item/underwear/socks/white_knee
|
||||
name = "Knee, white"
|
||||
icon_state = "white_knee"
|
||||
|
||||
/datum/category_item/underwear/socks/white_thigh
|
||||
name = "Thigh, white"
|
||||
icon_state = "white_thigh"
|
||||
|
||||
/datum/category_item/underwear/socks/black_normal
|
||||
name = "Normal, black"
|
||||
icon_state = "black_norm"
|
||||
|
||||
/datum/category_item/underwear/socks/black_short
|
||||
name = "Short, black"
|
||||
icon_state = "black_short"
|
||||
|
||||
/datum/category_item/underwear/socks/black_knee
|
||||
name = "Knee, black"
|
||||
icon_state = "black_knee"
|
||||
|
||||
/datum/category_item/underwear/socks/black_thigh
|
||||
name = "Thigh, black"
|
||||
icon_state = "black_thigh"
|
||||
|
||||
/datum/category_item/underwear/socks/thin_knee
|
||||
name = "Knee, thin"
|
||||
icon_state = "thin_knee"
|
||||
|
||||
/datum/category_item/underwear/socks/thin_thigh
|
||||
name = "Thigh, thin"
|
||||
icon_state = "thin_thigh"
|
||||
|
||||
/datum/category_item/underwear/socks/pantyhose
|
||||
name = "Pantyhose"
|
||||
icon_state = "pantyhose"
|
||||
|
||||
/datum/category_item/underwear/socks/striped_thigh
|
||||
name = "Thigh, striped"
|
||||
icon_state = "striped_thigh"
|
||||
|
||||
/datum/category_item/underwear/socks/striped_knee
|
||||
name = "Knee, striped"
|
||||
icon_state = "striped_knee"
|
||||
|
||||
/datum/category_item/underwear/socks/rainbow_thigh
|
||||
name = "Thigh, rainbow"
|
||||
icon_state = "rainbow_thigh"
|
||||
|
||||
/datum/category_item/underwear/socks/rainbow_knee
|
||||
name = "Knee, rainbow"
|
||||
icon_state = "rainbow_knee"
|
||||
|
||||
/datum/category_item/underwear/socks/fishnet
|
||||
name = "Fishnet"
|
||||
icon_state = "fishnet"
|
||||
|
||||
/datum/category_item/underwear/socks/thinwhite_thigh
|
||||
name = "Thigh, thin white"
|
||||
icon_state = "thinwhite_thigh"
|
||||
|
||||
/datum/category_item/underwear/socks/thinwhite_knee
|
||||
name = "Knee, thin white"
|
||||
icon_state = "thinwhite_knee"
|
||||
@@ -0,0 +1,106 @@
|
||||
/datum/category_item/underwear/top/none
|
||||
name = "None"
|
||||
always_last = TRUE
|
||||
|
||||
/datum/category_item/underwear/top/none/is_default(var/gender)
|
||||
return gender != FEMALE
|
||||
|
||||
/datum/category_item/underwear/top/bra_red
|
||||
name = "Bra, red"
|
||||
icon_state = "t1"
|
||||
|
||||
/datum/category_item/underwear/top/bra_white
|
||||
is_default = TRUE
|
||||
name = "Bra, white"
|
||||
icon_state = "t2"
|
||||
|
||||
/datum/category_item/underwear/top/bra_white/is_default(var/gender)
|
||||
return gender == FEMALE
|
||||
|
||||
/datum/category_item/underwear/top/bra_yellow
|
||||
name = "Bra, yellow"
|
||||
icon_state = "t3"
|
||||
|
||||
/datum/category_item/underwear/top/bra_blue
|
||||
name = "Bra, blue"
|
||||
icon_state = "t4"
|
||||
|
||||
/datum/category_item/underwear/top/bra_black
|
||||
name = "Bra, black"
|
||||
icon_state = "t5"
|
||||
|
||||
/datum/category_item/underwear/top/lacy_bra
|
||||
name = "Lacy bra"
|
||||
icon_state = "t6"
|
||||
|
||||
/datum/category_item/underwear/top/sports_bra_black
|
||||
name = "Sports bra, black"
|
||||
icon_state = "t7"
|
||||
|
||||
/datum/category_item/underwear/top/sports_bra_white
|
||||
name = "Sports bra, white"
|
||||
icon_state = "t8"
|
||||
|
||||
/datum/category_item/underwear/top/sports_bra_black_alt
|
||||
name = "Sports bra, black alt"
|
||||
icon_state = "t9"
|
||||
|
||||
/datum/category_item/underwear/top/sports_bra_white_alt
|
||||
name = "Sports bra, white alt"
|
||||
icon_state = "t10"
|
||||
|
||||
/datum/category_item/underwear/top/bra_baby_blue
|
||||
name = "Bra, baby blue"
|
||||
icon_state = "t11"
|
||||
|
||||
/datum/category_item/underwear/top/bra_green
|
||||
name = "Bra, green"
|
||||
icon_state = "t12"
|
||||
|
||||
/datum/category_item/underwear/top/bra_pink
|
||||
name = "Bra, pink"
|
||||
icon_state = "t13"
|
||||
|
||||
/datum/category_item/underwear/top/bra_violet
|
||||
name = "Bra, violet"
|
||||
icon_state = "t14"
|
||||
|
||||
/datum/category_item/underwear/top/lacy_bra_alt
|
||||
name = "Lacy bra, alt"
|
||||
icon_state = "t15"
|
||||
|
||||
/datum/category_item/underwear/top/bra_lacy_violet
|
||||
name = "Lacy bra, violet"
|
||||
icon_state = "t16"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_black
|
||||
name = "Halterneck bra, black"
|
||||
icon_state = "t17"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_blue
|
||||
name = "Halterneck bra, blue"
|
||||
icon_state = "t18"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_green
|
||||
name = "Halterneck bra, green"
|
||||
icon_state = "t19"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_purple
|
||||
name = "Halterneck bra, purple"
|
||||
icon_state = "t20"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_red
|
||||
name = "Halterneck bra, red"
|
||||
icon_state = "t21"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_teal
|
||||
name = "Halterneck bra, teal"
|
||||
icon_state = "t22"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_violet
|
||||
name = "Halterneck bra, violet"
|
||||
icon_state = "t23"
|
||||
|
||||
/datum/category_item/underwear/top/halterneck_bra_white
|
||||
name = "Halterneck bra, white"
|
||||
icon_state = "t24"
|
||||
@@ -0,0 +1,140 @@
|
||||
/datum/category_item/underwear/undershirt/none
|
||||
is_default = TRUE
|
||||
name = "None"
|
||||
always_last = TRUE
|
||||
|
||||
/datum/category_item/underwear/undershirt/tank_top_white
|
||||
name = "Tank top, white"
|
||||
icon_state = "u1"
|
||||
|
||||
/datum/category_item/underwear/undershirt/tank_top_white_alt
|
||||
name = "Tank top, white alt"
|
||||
icon_state = "tank_white_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/tank_top_black
|
||||
name = "Tank top, black"
|
||||
icon_state = "u2"
|
||||
|
||||
/datum/category_item/underwear/undershirt/tank_top_red
|
||||
name = "Tank top, red"
|
||||
icon_state = "tank_red_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/tank_top_fire
|
||||
name = "Tank top, fire"
|
||||
icon_state = "tank_fire_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_black
|
||||
name = "Shirt, black"
|
||||
icon_state = "u3"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_black_alt
|
||||
name = "Shirt, black alt"
|
||||
icon_state = "shirt_black_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_white
|
||||
name = "Shirt, white"
|
||||
icon_state = "u4"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_white_alt
|
||||
name = "Shirt, white alt"
|
||||
icon_state = "shirt_white_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_grey
|
||||
name = "Shirt, grey"
|
||||
icon_state = "shirt_grey_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_blue
|
||||
name = "Shirt, blue"
|
||||
icon_state = "blueshirt_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_blue_alt
|
||||
name = "Shirt, blue alt"
|
||||
icon_state = "shirt_blue_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_red
|
||||
name = "Shirt, red"
|
||||
icon_state = "redshirt_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_red_alt
|
||||
name = "Shirt, red alt"
|
||||
icon_state = "shirt_red_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_yellow
|
||||
name = "Shirt, yellow"
|
||||
icon_state = "yellowshirt_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_green
|
||||
name = "Shirt, green"
|
||||
icon_state = "greenshirt_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_green_alt
|
||||
name = "Shirt, green alt"
|
||||
icon_state = "shirt_green_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_heart
|
||||
name = "Shirt, heart"
|
||||
icon_state = "lover_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_nt
|
||||
name = "Shirt, NT"
|
||||
icon_state = "shirt_nano_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_love_nt
|
||||
name = "Shirt, I<3NT"
|
||||
icon_state = "lover_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shortsleeve_shirt_white
|
||||
name = "Shortsleeve shirt, white"
|
||||
icon_state = "whiteshortsleeve_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shortsleeve_shirt_purple
|
||||
name = "Shortsleeve shirt, purple"
|
||||
icon_state = "purpleshortsleeve_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shortsleeve_shirt_blue
|
||||
name = "Shortsleeve shirt, blue"
|
||||
icon_state = "blueshortsleeve_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shortsleeve_shirt_green
|
||||
name = "Shortsleeve shirt, green"
|
||||
icon_state = "greenshortsleeve_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shortsleeve_shirt_black
|
||||
name = "Shortsleeve shirt, black"
|
||||
icon_state = "blackshortsleeve_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/polo_shirt_blue
|
||||
name = "Polo shirt, blue"
|
||||
icon_state = "bluepolo_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/polo_shirt_red
|
||||
name = "Polo shirt, red"
|
||||
icon_state = "redpolo_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/polo_shirt_white
|
||||
name = "Polo shirt, white"
|
||||
icon_state = "whitepolo_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/polo_shirt_grey_yellow
|
||||
name = "Polo shirt, grey and yellow"
|
||||
icon_state = "grayyellowpolo_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/sport_shirt_green
|
||||
name = "Sport shirt, green"
|
||||
icon_state = "greenshirtsport_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/sport_shirt_red
|
||||
name = "Sport shirt, red"
|
||||
icon_state = "redshirtsport_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/sport_shirt_blue
|
||||
name = "Sport shirt, blue"
|
||||
icon_state = "blueshirtsport_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_tiedye
|
||||
name = "Shirt, tiedye"
|
||||
icon_state = "shirt_tiedye_s"
|
||||
|
||||
/datum/category_item/underwear/undershirt/shirt_blue_striped
|
||||
name = "Shirt, blue stripes"
|
||||
icon_state = "shirt_stripes_s"
|
||||
@@ -0,0 +1,56 @@
|
||||
/****************************
|
||||
* Category Collection Setup *
|
||||
****************************/
|
||||
/datum/category_collection/underwear
|
||||
category_group_type = /datum/category_group/underwear
|
||||
|
||||
/*************
|
||||
* Categories *
|
||||
*************/
|
||||
/datum/category_group/underwear
|
||||
var/sort_order // Lower sort order is applied as icons first
|
||||
|
||||
datum/category_group/underwear/dd_SortValue()
|
||||
return sort_order
|
||||
|
||||
/datum/category_group/underwear/top
|
||||
name = "Underwear, top"
|
||||
sort_order = 1
|
||||
category_item_type = /datum/category_item/underwear/top
|
||||
|
||||
/datum/category_group/underwear/bottom
|
||||
name = "Underwear, bottom"
|
||||
sort_order = 2
|
||||
category_item_type = /datum/category_item/underwear/bottom
|
||||
|
||||
/datum/category_group/underwear/socks
|
||||
name = "Socks"
|
||||
sort_order = 3
|
||||
category_item_type = /datum/category_item/underwear/socks
|
||||
|
||||
/datum/category_group/underwear/undershirt
|
||||
name = "Undershirt"
|
||||
sort_order = 4 // Undershirts currently have the highest sort order because they may cover both underwear and socks.
|
||||
category_item_type = /datum/category_item/underwear/undershirt
|
||||
|
||||
/*******************
|
||||
* Category entries *
|
||||
*******************/
|
||||
/datum/category_item/underwear
|
||||
var/always_last = FALSE // Should this entry be sorte last?
|
||||
var/is_default = FALSE // Should this entry be considered the default for its type?
|
||||
var/icon = 'icons/mob/human.dmi' // Which icon to get the underwear from
|
||||
var/icon_state // And the particular item state
|
||||
|
||||
/datum/category_item/underwear/dd_SortValue()
|
||||
if(always_last)
|
||||
return "~"+name
|
||||
return name
|
||||
|
||||
/datum/category_item/underwear/proc/is_default(var/gender)
|
||||
return is_default
|
||||
|
||||
/datum/category_item/underwear/proc/apply_to_icon(var/icon/I)
|
||||
if(!icon_state)
|
||||
return
|
||||
I.Blend(new /icon('icons/mob/human.dmi', icon_state), ICON_OVERLAY)
|
||||
Reference in New Issue
Block a user