mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-20 20:37:34 +01:00
@@ -1,7 +1,8 @@
|
||||
/datum/gear/cosmetic
|
||||
display_name = "handheld mirror"
|
||||
path = /obj/item/mirror
|
||||
sort_category = "Cosmetics"
|
||||
sort_category = "Cosmetics"
|
||||
slot = slot_in_backpack
|
||||
|
||||
/datum/gear/cosmetic/haircomb
|
||||
display_name = "comb"
|
||||
@@ -34,4 +35,45 @@
|
||||
lipsticks["lipstick, teal"] = /obj/item/lipstick/teal
|
||||
|
||||
gear_tweaks += new /datum/gear_tweak/path(lipsticks)
|
||||
gear_tweaks += list(gear_tweak_lipstick_application)
|
||||
|
||||
/datum/gear/cosmetic/lipstick_colorable // not a subtype because we dont want the path gear_tweaks
|
||||
display_name = "colorable lipstick"
|
||||
path = /obj/item/lipstick/custom
|
||||
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION
|
||||
|
||||
/datum/gear/cosmetic/lipstick_colorable/New()
|
||||
..()
|
||||
gear_tweaks += list(gear_tweak_lipstick_color)
|
||||
gear_tweaks += list(gear_tweak_lipstick_application)
|
||||
|
||||
var/datum/gear_tweak/color/lipstick/gear_tweak_lipstick_color = new()
|
||||
|
||||
/datum/gear_tweak/color/lipstick/get_contents(var/metadata)
|
||||
return "Lipstick Color: <font color='[metadata]'>⚫</font>"
|
||||
|
||||
/datum/gear_tweak/color/lipstick/tweak_item(var/obj/item/lipstick/lipstick, var/metadata, var/mob/living/carbon/human/H)
|
||||
lipstick.lipstick_color = metadata
|
||||
lipstick.update_icon()
|
||||
|
||||
|
||||
var/datum/gear_tweak/lipstick_application/gear_tweak_lipstick_application = new()
|
||||
|
||||
/datum/gear_tweak/lipstick_application/get_contents(var/metadata)
|
||||
return "Lipstick Applied: [metadata]"
|
||||
|
||||
/datum/gear_tweak/lipstick_application/get_default()
|
||||
return "No"
|
||||
|
||||
/datum/gear_tweak/lipstick_application/get_random()
|
||||
return "No"
|
||||
|
||||
/datum/gear_tweak/lipstick_application/get_metadata(var/user, var/metadata, var/title = "Character Preference")
|
||||
var/selected_lipstick = input(user, "Do you want your character to start with lipstick applied?", title, metadata) as null|anything in list("Yes", "No")
|
||||
if(selected_lipstick)
|
||||
return selected_lipstick
|
||||
|
||||
/datum/gear_tweak/lipstick_application/tweak_item(var/obj/item/lipstick/lipstick, var/metadata, var/mob/living/carbon/human/H)
|
||||
if(metadata == "Yes")
|
||||
H.lipstick_color = lipstick.lipstick_color
|
||||
H.update_body()
|
||||
|
||||
@@ -426,6 +426,8 @@ var/list/preferences_datums = list()
|
||||
|
||||
character.s_tone = s_tone
|
||||
|
||||
character.lipstick_color = null
|
||||
|
||||
character.citizenship = citizenship
|
||||
character.employer_faction = faction
|
||||
character.religion = religion
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
var/damage_multiplier = 1 //multiplies melee combat damage
|
||||
var/icon_update = 1 //whether icon updating shall take place
|
||||
|
||||
var/lip_style = null //no lipstick by default- arguably misleading, as it could be used for general makeup
|
||||
var/lipstick_color = null //no lipstick by default
|
||||
|
||||
var/age = 30 //Player's age (pure fluff)
|
||||
var/b_type = "A+" //Player's bloodtype
|
||||
|
||||
@@ -328,7 +328,7 @@ There are several things that need to be remembered:
|
||||
var/datum/vampire/vampire = mind.antag_datums[MODE_VAMPIRE]
|
||||
if(vampire && (vampire.status & VAMP_FRENZIED))
|
||||
is_frenzied = "frenzy"
|
||||
var/icon_key = "[species.race_key][g][s_tone][r_skin][g_skin][b_skin][lip_style || "nolips"][!!husk][!!fat][!!skeleton][is_frenzied]"
|
||||
var/icon_key = "[species.race_key][g][s_tone][r_skin][g_skin][b_skin][lipstick_color || "nolips"][!!husk][!!fat][!!skeleton][is_frenzied]"
|
||||
var/obj/item/organ/internal/eyes/eyes = get_eyes()
|
||||
if(eyes)
|
||||
icon_key += "[rgb(eyes.eye_colour[1], eyes.eye_colour[2], eyes.eye_colour[3])]"
|
||||
|
||||
@@ -84,11 +84,12 @@
|
||||
mob_icon.Blend(eyes_icon, ICON_OVERLAY)
|
||||
add_overlay(eyes_icon)
|
||||
|
||||
if(owner.lip_style && (species && (species.appearance_flags & HAS_LIPS)))
|
||||
var/icon/lip_icon = SSicon_cache.human_lip_cache["[owner.lip_style]"]
|
||||
if(owner.lipstick_color && (species && (species.appearance_flags & HAS_LIPS)))
|
||||
var/icon/lip_icon = SSicon_cache.human_lip_cache["[owner.lipstick_color]"]
|
||||
if (!lip_icon)
|
||||
lip_icon = new/icon('icons/mob/human_face/lips.dmi', "[owner.lip_style]")
|
||||
SSicon_cache.human_lip_cache["[owner.lip_style]"] = lip_icon
|
||||
lip_icon = new/icon('icons/mob/human_face/lips.dmi', "lips")
|
||||
lip_icon.Blend(owner.lipstick_color, species.eyes_icon_blend)
|
||||
SSicon_cache.human_lip_cache["[owner.lipstick_color]"] = lip_icon
|
||||
|
||||
add_overlay(lip_icon)
|
||||
mob_icon.Blend(lip_icon, ICON_OVERLAY)
|
||||
|
||||
@@ -220,7 +220,7 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H == user)
|
||||
to_chat(user, SPAN_NOTICE("You wipe off the lipstick with [src]."))
|
||||
H.lip_style = null
|
||||
H.lipstick_color = null
|
||||
H.update_body()
|
||||
else
|
||||
user.visible_message(SPAN_WARNING("[user] begins to wipe [H]'s lipstick off with \the [src]."), \
|
||||
@@ -228,7 +228,7 @@
|
||||
if(do_after(user, 10) && do_after(H, 10, 0)) //user needs to keep their active hand, H does not.
|
||||
user.visible_message(SPAN_NOTICE("[user] wipes [H]'s lipstick off with \the [src]."), \
|
||||
SPAN_NOTICE("You wipe off [H]'s lipstick."))
|
||||
H.lip_style = null
|
||||
H.lipstick_color = null
|
||||
H.update_body()
|
||||
|
||||
/obj/item/paper/proc/addtofield(var/id, var/text, var/links = 0)
|
||||
|
||||
Reference in New Issue
Block a user