mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
Merge pull request #2308 from Hubblenaut/master
Adds a verb for toggling specific pieces of underwear
This commit is contained in:
@@ -9,27 +9,34 @@
|
|||||||
*************/
|
*************/
|
||||||
/datum/category_group/underwear
|
/datum/category_group/underwear
|
||||||
var/sort_order // Lower sort order is applied as icons first
|
var/sort_order // Lower sort order is applied as icons first
|
||||||
|
var/display_name // For displaying in text
|
||||||
|
var/gender = NEUTER
|
||||||
|
|
||||||
datum/category_group/underwear/dd_SortValue()
|
datum/category_group/underwear/dd_SortValue()
|
||||||
return sort_order
|
return sort_order
|
||||||
|
|
||||||
/datum/category_group/underwear/top
|
/datum/category_group/underwear/top
|
||||||
name = "Underwear, top"
|
name = "Underwear, top"
|
||||||
|
display_name = "top piece"
|
||||||
sort_order = 1
|
sort_order = 1
|
||||||
category_item_type = /datum/category_item/underwear/top
|
category_item_type = /datum/category_item/underwear/top
|
||||||
|
|
||||||
/datum/category_group/underwear/bottom
|
/datum/category_group/underwear/bottom
|
||||||
name = "Underwear, bottom"
|
name = "Underwear, bottom"
|
||||||
|
display_name = "bottom piece"
|
||||||
sort_order = 2
|
sort_order = 2
|
||||||
category_item_type = /datum/category_item/underwear/bottom
|
category_item_type = /datum/category_item/underwear/bottom
|
||||||
|
|
||||||
/datum/category_group/underwear/socks
|
/datum/category_group/underwear/socks
|
||||||
name = "Socks"
|
name = "Socks"
|
||||||
|
display_name = "socks"
|
||||||
|
gender = PLURAL
|
||||||
sort_order = 3
|
sort_order = 3
|
||||||
category_item_type = /datum/category_item/underwear/socks
|
category_item_type = /datum/category_item/underwear/socks
|
||||||
|
|
||||||
/datum/category_group/underwear/undershirt
|
/datum/category_group/underwear/undershirt
|
||||||
name = "Undershirt"
|
name = "Undershirt"
|
||||||
|
display_name = "undershirt"
|
||||||
sort_order = 4 // Undershirts currently have the highest sort order because they may cover both underwear and socks.
|
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_item_type = /datum/category_item/underwear/undershirt
|
||||||
|
|
||||||
|
|||||||
@@ -69,6 +69,7 @@
|
|||||||
var/datum/category_item/underwear/selected_underwear = input(H, "Choose underwear:", "Choose underwear", H.all_underwear[UWC.name]) as null|anything in UWC.items
|
var/datum/category_item/underwear/selected_underwear = input(H, "Choose underwear:", "Choose underwear", H.all_underwear[UWC.name]) as null|anything in UWC.items
|
||||||
if(selected_underwear && CanUseTopic(H, default_state))
|
if(selected_underwear && CanUseTopic(H, default_state))
|
||||||
H.all_underwear[UWC.name] = selected_underwear
|
H.all_underwear[UWC.name] = selected_underwear
|
||||||
|
H.hide_underwear[UWC.name] = FALSE
|
||||||
. = TRUE
|
. = TRUE
|
||||||
else if(href_list["underwear"] && href_list["tweak"])
|
else if(href_list["underwear"] && href_list["tweak"])
|
||||||
var/underwear = href_list["underwear"]
|
var/underwear = href_list["underwear"]
|
||||||
@@ -80,6 +81,7 @@
|
|||||||
var/new_metadata = gt.get_metadata(usr, get_metadata(H, underwear, gt), "Wardrobe Underwear Selection")
|
var/new_metadata = gt.get_metadata(usr, get_metadata(H, underwear, gt), "Wardrobe Underwear Selection")
|
||||||
if(new_metadata)
|
if(new_metadata)
|
||||||
set_metadata(H, underwear, gt, new_metadata)
|
set_metadata(H, underwear, gt, new_metadata)
|
||||||
|
H.hide_underwear[underwear] = FALSE
|
||||||
. = TRUE
|
. = TRUE
|
||||||
|
|
||||||
if(.)
|
if(.)
|
||||||
|
|||||||
@@ -41,6 +41,10 @@
|
|||||||
human_mob_list |= src
|
human_mob_list |= src
|
||||||
..()
|
..()
|
||||||
|
|
||||||
|
hide_underwear.Cut()
|
||||||
|
for(var/category in global_underwear.categories_by_name)
|
||||||
|
hide_underwear[category] = FALSE
|
||||||
|
|
||||||
if(dna)
|
if(dna)
|
||||||
dna.ready_dna(src)
|
dna.ready_dna(src)
|
||||||
dna.real_name = real_name
|
dna.real_name = real_name
|
||||||
@@ -1416,6 +1420,22 @@
|
|||||||
return 1
|
return 1
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
/mob/living/carbon/human/verb/toggle_underwear()
|
||||||
|
set name = "Toggle Underwear"
|
||||||
|
set desc = "Shows/hides selected parts of your underwear."
|
||||||
|
set category = "Object"
|
||||||
|
|
||||||
|
if(stat) return
|
||||||
|
var/datum/category_group/underwear/UWC = input(usr, "Choose underwear:", "Show/hide underwear") as null|anything in global_underwear.categories
|
||||||
|
var/datum/category_item/underwear/UWI = all_underwear[UWC.name]
|
||||||
|
if(!UWI || UWI.name == "None")
|
||||||
|
src << "<span class='notice'>You do not have [UWC.gender==PLURAL ? "[UWC.display_name]" : "\a [UWC.display_name]"].</span>"
|
||||||
|
return
|
||||||
|
hide_underwear[UWC.name] = !hide_underwear[UWC.name]
|
||||||
|
update_underwear(1)
|
||||||
|
src << "<span class='notice'>You [hide_underwear[UWC.name] ? "take off" : "put on"] your [UWC.display_name].</span>"
|
||||||
|
return
|
||||||
|
|
||||||
/mob/living/carbon/human/verb/pull_punches()
|
/mob/living/carbon/human/verb/pull_punches()
|
||||||
set name = "Pull Punches"
|
set name = "Pull Punches"
|
||||||
set desc = "Try not to hurt them."
|
set desc = "Try not to hurt them."
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
var/list/all_underwear = list()
|
var/list/all_underwear = list()
|
||||||
var/list/all_underwear_metadata = list()
|
var/list/all_underwear_metadata = list()
|
||||||
|
var/list/hide_underwear = list()
|
||||||
var/backbag = 2 //Which backpack type the player has chosen. Nothing, Satchel or Backpack.
|
var/backbag = 2 //Which backpack type the player has chosen. Nothing, Satchel or Backpack.
|
||||||
var/pdachoice = 1 //Which PDA type the player has chosen. Default, Slim, or Old.
|
var/pdachoice = 1 //Which PDA type the player has chosen. Default, Slim, or Old.
|
||||||
|
|
||||||
|
|||||||
@@ -336,6 +336,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
if(species.appearance_flags & HAS_UNDERWEAR)
|
if(species.appearance_flags & HAS_UNDERWEAR)
|
||||||
overlays_standing[UNDERWEAR_LAYER] = list()
|
overlays_standing[UNDERWEAR_LAYER] = list()
|
||||||
for(var/category in all_underwear)
|
for(var/category in all_underwear)
|
||||||
|
if(hide_underwear[category])
|
||||||
|
continue
|
||||||
var/datum/category_item/underwear/UWI = all_underwear[category]
|
var/datum/category_item/underwear/UWI = all_underwear[category]
|
||||||
overlays_standing[UNDERWEAR_LAYER] += UWI.generate_image(all_underwear_metadata[category])
|
overlays_standing[UNDERWEAR_LAYER] += UWI.generate_image(all_underwear_metadata[category])
|
||||||
|
|
||||||
|
|||||||
36
html/changelogs/Hubblenaut - master.yml
Normal file
36
html/changelogs/Hubblenaut - master.yml
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
################################
|
||||||
|
# Example Changelog File
|
||||||
|
#
|
||||||
|
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
|
||||||
|
#
|
||||||
|
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
|
||||||
|
# When it is, any changes listed below will disappear.
|
||||||
|
#
|
||||||
|
# Valid Prefixes:
|
||||||
|
# bugfix
|
||||||
|
# wip (For works in progress)
|
||||||
|
# tweak
|
||||||
|
# soundadd
|
||||||
|
# sounddel
|
||||||
|
# rscadd (general adding of nice things)
|
||||||
|
# rscdel (general deleting of nice things)
|
||||||
|
# imageadd
|
||||||
|
# imagedel
|
||||||
|
# maptweak
|
||||||
|
# spellcheck (typo fixes)
|
||||||
|
# experiment
|
||||||
|
#################################
|
||||||
|
|
||||||
|
# Your name.
|
||||||
|
author: Hubblenaut
|
||||||
|
|
||||||
|
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
|
||||||
|
delete-after: True
|
||||||
|
|
||||||
|
# Any changes you've made. See valid prefix list above.
|
||||||
|
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
|
||||||
|
# SCREW THIS UP AND IT WON'T WORK.
|
||||||
|
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
|
||||||
|
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
|
||||||
|
changes:
|
||||||
|
- rscadd: "Adds a verb for toggling whether to show specific pieces of underwear."
|
||||||
Reference in New Issue
Block a user