mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-21 03:51:49 +01:00
Golden Deep ghostrole remap (#20031)
**This is up for review.** - Remaps the Golden Deep ghostrole to be better. - Includes new uniforms for menial Golden Deep synthetics, and new Golden Deep voidsuits. - Includes the clothes dyer, a new item that changes the colour of recolourable clothing to whatever the user wishes. Adds it exclusively to the Golden Deep ship, so the merchant can customise their drip as much as if they were in the loadout, since pretty much all of the newer GD clothing is recolourable. Works for both the regular colour and the accent colour. - Uses submaps for the warehouse. - A few semi-empty spaces exist right now which will be filled once the sprites for what's going to go there are complete, particularly in the great hall. - The armoury is intended to be pretty strong - it's a cargo freighter with very valuable cargo, so you have an unusually hard fight to get said cargo if you board. It contains a laser rifle, a combat shotgun (with a box of EMP shells, notably, with the idea that the Hoplan should be particularly good at restraining other synthetics), two energy glaives, and two pistols intended for the Hoplan. There are also two machine pistols and two energy carbines, intended for if the Hoplan wish to arm the rest of the crew. - Adds the ship to Valley Hale - has the OK from lore, as far as I know.
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
#define BASE_COLOR "Base Color"
|
||||
#define ACCENT_COLOR "Accent Color"
|
||||
|
||||
// Only works for clothes that are already recolorable.
|
||||
/obj/item/device/clothes_dyer
|
||||
name = "clothes dyer"
|
||||
desc = "This is a device designed to rapidly dye clothes to new colors. Naysayers say it isn't great for the fabric, but what do they know?"
|
||||
desc_info = "Select the desired color by using the item on yourself, and alternate between the primary and secondary colour of the item by alt-clicking the item. This only works on clothing items that are recolorable."
|
||||
icon = 'icons/obj/item/tools/paint_sprayer.dmi'
|
||||
icon_state = "floor_painter"
|
||||
item_state = "floor_painter"
|
||||
contained_sprite = TRUE
|
||||
/// Controls whether the dyer changes the primary or accent color of the clothes item.
|
||||
var/selected_mode = BASE_COLOR
|
||||
/// Contains the colors the dyer is set to for each possible mode.
|
||||
var/list/colors_by_mode = list(BASE_COLOR = "#FFFFFF", ACCENT_COLOR = "#FFFFFF")
|
||||
|
||||
// Changes the color of the selected mode.
|
||||
/obj/item/device/clothes_dyer/attack_self(mob/user)
|
||||
var/selected_color = input(user, "Please select dye color.", "Dye Color", colors_by_mode[selected_mode]) as color|null
|
||||
if (!selected_color)
|
||||
return
|
||||
|
||||
colors_by_mode[selected_mode] = selected_color
|
||||
to_chat(user, SPAN_NOTICE("You adjust the color of <span style='color:[selected_color]'>[selected_mode]</span>."))
|
||||
|
||||
// Switches the mode.
|
||||
/obj/item/device/clothes_dyer/AltClick(mob/user)
|
||||
if (!Adjacent(user))
|
||||
return
|
||||
|
||||
var/new_selected_mode = tgui_input_list(user, "Please select which clothing aspect you would like to dye.", "Dyeing Mode", colors_by_mode, selected_mode)
|
||||
if (!new_selected_mode)
|
||||
return
|
||||
|
||||
selected_mode = new_selected_mode
|
||||
to_chat(user, SPAN_NOTICE("You adjust the mode of the clothes dyer to <span style='color:[colors_by_mode[new_selected_mode]]'>[new_selected_mode]</span>."))
|
||||
|
||||
// Changes the color on clothing.
|
||||
/obj/item/device/clothes_dyer/afterattack(atom/target, mob/user, proximity_flag, click_parameters)
|
||||
if (!proximity_flag)
|
||||
return
|
||||
|
||||
if (!isclothing(target))
|
||||
return
|
||||
|
||||
var/obj/item/clothing/target_clothing = target
|
||||
|
||||
playsound(get_turf(target), 'sound/effects/spray3.ogg', 30, TRUE, -6)
|
||||
switch(selected_mode)
|
||||
if (BASE_COLOR)
|
||||
target_clothing.color = colors_by_mode[selected_mode]
|
||||
if (ACCENT_COLOR)
|
||||
target_clothing.accent_color = colors_by_mode[selected_mode]
|
||||
target_clothing.update_icon()
|
||||
target_clothing.update_clothing_icon()
|
||||
to_chat(user, SPAN_NOTICE("You dye the clothing."))
|
||||
|
||||
#undef BASE_COLOR
|
||||
#undef ACCENT_COLOR
|
||||
Reference in New Issue
Block a user