mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-30 16:38:22 +01:00
* ww * ww * awd * wdadw * waadaw * wadwad * dawad * adw * wad * d * awd * ddw * awd * adw * daw * awd * adw * adw * I woke up in a new * Update code/modules/clothing/under/accessories/shirts.dm Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com> * Update code/modules/client/preference_setup/loadout/loadout_suit.dm Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com> * d * adw * adw * dawd * Update code/modules/clothing/head/misc_special.dm Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com> --------- Co-authored-by: DanseMacabre <rsurname1212@gmail.com> Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
287 lines
7.7 KiB
Plaintext
287 lines
7.7 KiB
Plaintext
/*
|
|
* Contents:
|
|
* Welding mask
|
|
* Cakehat
|
|
* Ushanka
|
|
* Pumpkin head
|
|
* Chicken mask
|
|
* Warning cone
|
|
*/
|
|
|
|
/*
|
|
* Welding mask
|
|
*/
|
|
/obj/item/clothing/head/welding
|
|
name = "welding helmet"
|
|
desc = "A head-mounted face cover designed to protect the wearer completely from space-arc eye."
|
|
icon_state = "welding"
|
|
item_state = "welding"
|
|
item_state_slots = list(
|
|
slot_l_hand_str = "welding",
|
|
slot_r_hand_str = "welding"
|
|
)
|
|
matter = list(DEFAULT_WALL_MATERIAL = 3000, MATERIAL_GLASS = 1000)
|
|
var/up = 0
|
|
armor = list(
|
|
melee = ARMOR_MELEE_SMALL
|
|
)
|
|
flags_inv = (HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
|
|
body_parts_covered = HEAD|FACE|EYES
|
|
action_button_name = "Flip Welding Mask"
|
|
siemens_coefficient = 0.75 // what? it's steel.
|
|
w_class = ITEMSIZE_NORMAL
|
|
var/base_state
|
|
flash_protection = FLASH_PROTECTION_MAJOR
|
|
tint = TINT_HEAVY
|
|
sprite_sheets = list(
|
|
BODYTYPE_TAJARA = 'icons/mob/species/tajaran/helmet.dmi',
|
|
BODYTYPE_UNATHI = 'icons/mob/species/unathi/helmet.dmi'
|
|
)
|
|
drop_sound = 'sound/items/drop/helm.ogg'
|
|
pickup_sound = 'sound/items/pickup/helm.ogg'
|
|
|
|
/obj/item/clothing/head/welding/attack_self()
|
|
if(!base_state)
|
|
base_state = icon_state
|
|
toggle()
|
|
|
|
|
|
/obj/item/clothing/head/welding/verb/toggle()
|
|
set category = "Object"
|
|
set name = "Adjust welding mask"
|
|
set src in usr
|
|
|
|
if(!base_state)
|
|
base_state = icon_state
|
|
|
|
if(use_check_and_message(usr))
|
|
return
|
|
|
|
src.up = !src.up
|
|
if(!src.up)
|
|
body_parts_covered |= (EYES|FACE)
|
|
flags_inv |= (HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
|
|
flash_protection = initial(flash_protection)
|
|
tint = initial(tint)
|
|
icon_state = base_state
|
|
item_state = base_state
|
|
to_chat(usr, "You flip the [src] down to protect your eyes.")
|
|
else
|
|
body_parts_covered &= ~(EYES|FACE)
|
|
flash_protection = FLASH_PROTECTION_NONE
|
|
tint = TINT_NONE
|
|
flags_inv &= ~(HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
|
|
icon_state = "[base_state]up"
|
|
item_state = "[base_state]up"
|
|
to_chat(usr, "You push the [src] up out of your face.")
|
|
update_clothing_icon() //so our mob-overlays
|
|
usr.update_action_buttons()
|
|
usr.handle_vision()
|
|
|
|
|
|
/*
|
|
* Cakehat
|
|
*/
|
|
/obj/item/clothing/head/cakehat
|
|
name = "cake-hat"
|
|
desc = "It's tasty looking!"
|
|
icon_state = "cake0"
|
|
item_state = "cake0"
|
|
var/onfire = 0
|
|
body_parts_covered = HEAD
|
|
|
|
/obj/item/clothing/head/cakehat/process()
|
|
if(!onfire)
|
|
STOP_PROCESSING(SSprocessing, src)
|
|
return
|
|
|
|
var/turf/location = src.loc
|
|
if(istype(location, /mob/))
|
|
var/mob/living/carbon/human/M = location
|
|
if(M.l_hand == src || M.r_hand == src || M.head == src)
|
|
location = M.loc
|
|
|
|
if (istype(location, /turf))
|
|
location.hotspot_expose(700, 1)
|
|
|
|
/obj/item/clothing/head/cakehat/attack_self(mob/user as mob)
|
|
src.onfire = !( src.onfire )
|
|
if (src.onfire)
|
|
src.force = 3
|
|
src.damtype = "fire"
|
|
src.icon_state = "cake1"
|
|
src.item_state = "cake1"
|
|
START_PROCESSING(SSprocessing, src)
|
|
else
|
|
src.force = null
|
|
src.damtype = "brute"
|
|
src.icon_state = "cake0"
|
|
src.item_state = "cake0"
|
|
return
|
|
|
|
|
|
/*
|
|
* Ushanka
|
|
*/
|
|
/obj/item/clothing/head/ushanka
|
|
name = "ushanka"
|
|
desc = "A warm fur hat with ear flaps that can be raised and tied to be out of the way."
|
|
icon_state = "ushanka"
|
|
flags_inv = HIDEEARS
|
|
var/earsup = 0
|
|
|
|
/obj/item/clothing/head/ushanka/grey
|
|
name = "grey ushanka"
|
|
desc = "Perfect for winter in Siberia, da?"
|
|
icon_state = "greyushanka"
|
|
|
|
/obj/item/clothing/head/ushanka/nyakas
|
|
name = "visegradi nyakas"
|
|
desc = "A type of flap hat that is extremely popular on Visegrad. It is designed to keep one's head and neck dry, and the flap can be pinned to the sides of the hat when not needed."
|
|
contained_sprite = TRUE
|
|
icon = 'icons/obj/item/clothing/head/nyakas.dmi'
|
|
icon_state = "nyakas"
|
|
item_state = "nyakas"
|
|
|
|
/obj/item/clothing/head/ushanka/attack_self(mob/user as mob)
|
|
src.earsup = !src.earsup
|
|
if(src.earsup)
|
|
icon_state = "[icon_state]_up"
|
|
item_state = "[item_state]_up"
|
|
to_chat(user, "You raise the ear flaps on the hat.")
|
|
else
|
|
src.icon_state = initial(icon_state)
|
|
item_state = initial(item_state)
|
|
to_chat(user, "You lower the ear flaps on the hat.")
|
|
update_clothing_icon()
|
|
|
|
/*
|
|
* Pumpkin head
|
|
*/
|
|
|
|
/obj/item/clothing/head/pumpkin
|
|
name = "carved pumpkin"
|
|
desc = "A pumpkin with a spooky face carved on it. Looks like it needs a candle."
|
|
icon_state = "pumpkin_carved"
|
|
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR
|
|
body_parts_covered = HEAD|FACE|EYES
|
|
drop_sound = 'sound/items/drop/herb.ogg'
|
|
pickup_sound = 'sound/items/pickup/herb.ogg'
|
|
w_class = ITEMSIZE_NORMAL
|
|
throwforce = 1
|
|
throw_speed = 0.5
|
|
|
|
/obj/item/clothing/head/pumpkin/attackby(var/obj/O, mob/user as mob)
|
|
if(istype(O, /obj/item/flame/candle))
|
|
var/obj/item/flame/candle/c = O
|
|
var/candle_wax = c.wax
|
|
if(c.lit)
|
|
to_chat(user, SPAN_NOTICE("You should extinguish \the [O] first!"))
|
|
return
|
|
to_chat(user, "You add \the [O] to \the [src].")
|
|
playsound(src.loc, 'sound/items/drop/gloves.ogg', 50, 1)
|
|
qdel(O)
|
|
var/obj/item/clothing/head/pumpkin/lantern/L = new /obj/item/clothing/head/pumpkin/lantern(user.loc)
|
|
L.wax = candle_wax
|
|
user.put_in_hands(L)
|
|
qdel(src)
|
|
return
|
|
|
|
/obj/item/clothing/head/pumpkin/lantern
|
|
name = "jack o' lantern"
|
|
desc = "A pumpkin with a spooky face carved on it, with a candle inside. Believed to ward off evil spirits."
|
|
light_color = "#E09D37"
|
|
var/wax = 900
|
|
var/lit = 0
|
|
|
|
/obj/item/clothing/head/pumpkin/lantern/update_icon()
|
|
icon_state = "pumpkin_carved[lit ? "_lit" : ""]"
|
|
if(ismob(loc))
|
|
var/mob/living/M = loc
|
|
M.update_inv_head(0)
|
|
M.update_inv_l_hand(0)
|
|
M.update_inv_r_hand(1)
|
|
|
|
/obj/item/clothing/head/pumpkin/lantern/attackby(obj/item/W as obj, mob/user as mob)
|
|
..()
|
|
if(W.iswelder())
|
|
var/obj/item/weldingtool/WT = W
|
|
if(WT.isOn()) //Badasses dont get blinded by lighting their candle with a welding tool
|
|
light()
|
|
to_chat(user, SPAN_NOTICE("\The [user] casually lights \the [name] with [W]."))
|
|
else if(W.isFlameSource())
|
|
light()
|
|
to_chat(user, SPAN_NOTICE("\The [user] lights \the [name]."))
|
|
else if(istype(W, /obj/item/flame/candle))
|
|
var/obj/item/flame/candle/C = W
|
|
if(C.lit)
|
|
light()
|
|
to_chat(user, SPAN_NOTICE("\The [user] lights \the [name]."))
|
|
|
|
/obj/item/clothing/head/pumpkin/lantern/proc/light()
|
|
if(!src.lit)
|
|
src.lit = 1
|
|
playsound(src.loc, 'sound/items/cigs_lighters/cig_light.ogg', 50, 1)
|
|
//src.damtype = "fire"
|
|
set_light(CANDLE_LUM)
|
|
update_icon()
|
|
START_PROCESSING(SSprocessing, src)
|
|
|
|
/obj/item/clothing/head/pumpkin/lantern/process(mob/user)
|
|
if(!lit)
|
|
return
|
|
wax--
|
|
if(!wax)
|
|
new /obj/item/clothing/head/pumpkin(src.loc)
|
|
new /obj/item/trash/candle(src.loc)
|
|
if(istype(src.loc, /mob))
|
|
src.dropped(user)
|
|
to_chat(user, SPAN_NOTICE("The candle burns out."))
|
|
playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1)
|
|
STOP_PROCESSING(SSprocessing, src)
|
|
qdel(src)
|
|
update_icon()
|
|
if(istype(loc, /turf)) //start a fire if possible
|
|
var/turf/T = loc
|
|
T.hotspot_expose(700, 5)
|
|
|
|
/obj/item/clothing/head/pumpkin/lantern/attack_self(mob/user as mob)
|
|
if(lit)
|
|
lit = 0
|
|
to_chat(user, SPAN_NOTICE("You snuff out the flame."))
|
|
playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1)
|
|
update_icon()
|
|
set_light(0)
|
|
|
|
/*
|
|
* Chicken mask
|
|
*/
|
|
|
|
/obj/item/clothing/head/richard
|
|
name = "chicken mask"
|
|
desc = "You can hear the distant sounds of rhythmic electronica."
|
|
icon_state = "richard"
|
|
body_parts_covered = HEAD|FACE
|
|
flags_inv = BLOCKHAIR
|
|
|
|
/*
|
|
* Warning cone
|
|
*/
|
|
|
|
/obj/item/clothing/head/cone
|
|
name = "warning cone"
|
|
desc = "This cone is trying to warn you of something!"
|
|
desc_info = "It looks like you can wear it in your head slot."
|
|
icon_state = "cone"
|
|
item_state = "cone"
|
|
drop_sound = 'sound/items/drop/shoes.ogg'
|
|
pickup_sound = 'sound/items/pickup/shoes.ogg'
|
|
force = 1
|
|
throwforce = 3
|
|
throw_speed = 2
|
|
throw_range = 5
|
|
w_class = ITEMSIZE_SMALL
|
|
body_parts_covered = HEAD
|
|
attack_verb = list("warned", "cautioned", "smashed")
|
|
armor = list(melee = 5, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0)
|