Wearable wet floor sign (#7575)
You can now wear the wet floor sign. Also tidies up some code here and there. Adds some descriptions too. It provides extremely minor armor.
@@ -318,50 +318,6 @@
|
||||
origin_tech = list(TECH_MATERIAL = 1)
|
||||
var/breakouttime = 300 //Deciseconds = 30s = 0.5 minute
|
||||
|
||||
/obj/item/caution
|
||||
desc = "Caution! Wet Floor!"
|
||||
name = "wet floor sign"
|
||||
icon = 'icons/obj/janitor.dmi'
|
||||
icon_state = "caution"
|
||||
force = 1.0
|
||||
throwforce = 3.0
|
||||
throw_speed = 1
|
||||
throw_range = 5
|
||||
w_class = 2.0
|
||||
attack_verb = list("warned", "cautioned", "smashed")
|
||||
drop_sound = 'sound/items/drop/shoes.ogg'
|
||||
|
||||
/obj/item/caution/attack_self(mob/user as mob)
|
||||
if(src.icon_state == "caution")
|
||||
src.icon_state = "caution_blinking"
|
||||
to_chat(user, "You turn the sign on.")
|
||||
else
|
||||
src.icon_state = "caution"
|
||||
to_chat(user, "You turn the sign off.")
|
||||
|
||||
/obj/item/caution/AltClick()
|
||||
if(!usr || usr.stat || usr.lying || usr.restrained() || !Adjacent(usr)) return
|
||||
if(src.icon_state == "caution")
|
||||
src.icon_state = "caution_blinking"
|
||||
to_chat(usr, "You turn the sign on.")
|
||||
else
|
||||
src.icon_state = "caution"
|
||||
to_chat(usr, "You turn the sign off.")
|
||||
|
||||
/obj/item/caution/cone
|
||||
desc = "This cone is trying to warn you of something!"
|
||||
name = "warning cone"
|
||||
icon_state = "cone"
|
||||
item_state = "cone"
|
||||
contained_sprite = 1
|
||||
slot_flags = SLOT_HEAD
|
||||
|
||||
/obj/item/caution/cone/attack_self(mob/user as mob)
|
||||
return
|
||||
|
||||
/obj/item/caution/cone/AltClick()
|
||||
return
|
||||
|
||||
/*/obj/item/syndicate_uplink
|
||||
name = "station bounced radio"
|
||||
desc = "Remain silent about this..."
|
||||
|
||||
@@ -801,7 +801,7 @@
|
||||
/obj/item/seeds/random = 0.25,
|
||||
/obj/item/stack/material/bronze{amount=10},
|
||||
/obj/item/banhammer = 0.05,
|
||||
/obj/item/caution/cone = 0.7,
|
||||
/obj/item/clothing/head/cone = 0.7,
|
||||
/obj/item/contraband/poster = 1.3,
|
||||
/obj/item/extinguisher = 1.3,
|
||||
/obj/item/extinguisher/mini = 0.9,
|
||||
|
||||
@@ -75,10 +75,10 @@
|
||||
new /obj/item/clothing/head/soft/purple(src)
|
||||
new /obj/item/gun/energy/mousegun(src)
|
||||
new /obj/item/device/flashlight(src)
|
||||
new /obj/item/caution(src)
|
||||
new /obj/item/caution(src)
|
||||
new /obj/item/caution(src)
|
||||
new /obj/item/caution(src)
|
||||
new /obj/item/clothing/suit/caution(src)
|
||||
new /obj/item/clothing/suit/caution(src)
|
||||
new /obj/item/clothing/suit/caution(src)
|
||||
new /obj/item/clothing/suit/caution(src)
|
||||
new /obj/item/device/lightreplacer(src)
|
||||
new /obj/item/storage/bag/trash(src)
|
||||
new /obj/item/clothing/shoes/galoshes(src)
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
to_chat(user, "<span class='notice'>You put [I] into [src].</span>")
|
||||
return 1
|
||||
|
||||
else if(istype(I, /obj/item/caution))
|
||||
else if(istype(I, /obj/item/clothing/suit/caution))
|
||||
if(signs < 4)
|
||||
user.drop_from_inventory(I,src)
|
||||
signs++
|
||||
@@ -191,7 +191,7 @@
|
||||
mybucket = null
|
||||
|
||||
if (signs)
|
||||
for (var/obj/item/caution/Sign in src)
|
||||
for (var/obj/item/clothing/suit/caution/Sign in src)
|
||||
if (prob(min((chance*2),100)))
|
||||
signs--
|
||||
Sign.forceMove(dropspot)
|
||||
@@ -261,7 +261,7 @@
|
||||
myreplacer = null
|
||||
if("sign")
|
||||
if(signs)
|
||||
var/obj/item/caution/Sign = locate() in src
|
||||
var/obj/item/clothing/suit/caution/Sign = locate() in src
|
||||
if(Sign)
|
||||
user.put_in_hands(Sign)
|
||||
to_chat(user, "<span class='notice'>You take \a [Sign] from [src].</span>")
|
||||
|
||||
@@ -533,9 +533,9 @@ STOCK_ITEM_COMMON(cane, 2)
|
||||
|
||||
STOCK_ITEM_COMMON(warning, 2.2)
|
||||
if (prob(50))
|
||||
new /obj/item/caution(L)
|
||||
new /obj/item/clothing/suit/caution(L)
|
||||
else
|
||||
new /obj/item/caution/cone(L)
|
||||
new /obj/item/clothing/head/cone(L)
|
||||
|
||||
STOCK_ITEM_COMMON(gasmask, 2)
|
||||
var/list/masks = list(
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
* Ushanka
|
||||
* Pumpkin head
|
||||
* Kitty ears
|
||||
*
|
||||
* Chicken mask
|
||||
* Warning cone
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -259,9 +260,33 @@
|
||||
else if (icon_override)
|
||||
icon_override = null
|
||||
|
||||
/*
|
||||
* 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!"
|
||||
description_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'
|
||||
force = 1
|
||||
throwforce = 3
|
||||
throw_speed = 2
|
||||
throw_range = 5
|
||||
w_class = 2
|
||||
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, "fire" = 0, "acid" = 0)
|
||||
|
||||
@@ -375,7 +375,7 @@
|
||||
interface_name = "wet floor sign launcher"
|
||||
interface_desc = "An integrated microfactory that produces wet floor signs from thin air and electricity."
|
||||
|
||||
fabrication_type = /obj/item/caution
|
||||
fabrication_type = /obj/item/clothing/suit/caution
|
||||
|
||||
category = MODULE_GENERAL
|
||||
|
||||
|
||||
@@ -646,3 +646,39 @@
|
||||
item_state = "cultrobes"
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
|
||||
flags_inv = HIDEJUMPSUIT
|
||||
|
||||
/obj/item/clothing/suit/caution
|
||||
name = "wet floor sign"
|
||||
desc = "Caution! Wet Floor!"
|
||||
description_fluff = "Used by the janitor to passive-aggressively point at when you eventually slip on one of their mopped floors."
|
||||
description_info = "Alt-click, or click in-hand to toggle the caution lights. It looks like you can wear it in your suit slot."
|
||||
icon = 'icons/obj/janitor.dmi'
|
||||
icon_state = "caution"
|
||||
drop_sound = 'sound/items/drop/shoes.ogg'
|
||||
force = 1
|
||||
throwforce = 3
|
||||
throw_speed = 2
|
||||
throw_range = 5
|
||||
w_class = 2
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO
|
||||
attack_verb = list("warned", "cautioned", "smashed")
|
||||
armor = list("melee" = 5, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
|
||||
|
||||
/obj/item/clothing/suit/caution/attack_self()
|
||||
toggle()
|
||||
|
||||
/obj/item/clothing/suit/caution/AltClick()
|
||||
toggle()
|
||||
|
||||
/obj/item/clothing/suit/caution/proc/toggle()
|
||||
if(!usr || usr.stat || usr.lying || usr.restrained() || !Adjacent(usr)) return
|
||||
else if(src.icon_state == "caution")
|
||||
src.icon_state = "caution_blinking"
|
||||
src.item_state = "caution_blinking"
|
||||
usr.show_message("You turn the wet floor sign on.")
|
||||
playsound(src.loc, 'sound/items/flashlight.ogg', 75, 1)
|
||||
else
|
||||
src.icon_state = "caution"
|
||||
src.item_state = "caution"
|
||||
usr.show_message("You turn the wet floor sign off.")
|
||||
update_clothing_icon()
|
||||
|
||||
@@ -284,7 +284,7 @@ var/list/worths = list(
|
||||
/obj/item/cane = 40,
|
||||
/obj/item/disk/nuclear = 10000,
|
||||
/obj/item/disk = 90,
|
||||
/obj/item/caution = 15,
|
||||
/obj/item/clothing/suit/caution = 15,
|
||||
/obj/item/module = 100,
|
||||
//STOCK PARTS,
|
||||
/obj/item/stock_parts/capacitor/adv = 160,
|
||||
|
||||
@@ -45,8 +45,8 @@
|
||||
/obj/item/bikehorn,\
|
||||
/obj/item/bonesetter,\
|
||||
/obj/item/material/hatchet/butch,\
|
||||
/obj/item/caution,\
|
||||
/obj/item/caution/cone,\
|
||||
/obj/item/clothing/suit/caution,\
|
||||
/obj/item/clothing/head/cone,\
|
||||
/obj/item/crowbar,\
|
||||
/obj/item/clipboard,\
|
||||
/obj/item/cell,\
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
################################
|
||||
# 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
|
||||
# balance
|
||||
# admin
|
||||
# backend
|
||||
# security
|
||||
# refactor
|
||||
#################################
|
||||
|
||||
# Your name.
|
||||
author: Wowzewow (Wezzy)
|
||||
|
||||
# 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: "You can now wear the wet floor sign in your suit slot."
|
||||
- tweak: "Adjusts the wet floor sign sprite."
|
||||
|
Before Width: | Height: | Size: 177 KiB After Width: | Height: | Size: 170 KiB |
|
Before Width: | Height: | Size: 411 KiB After Width: | Height: | Size: 376 KiB |
|
Before Width: | Height: | Size: 97 KiB After Width: | Height: | Size: 90 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 19 KiB |
@@ -11243,7 +11243,7 @@
|
||||
},
|
||||
/area/centcom/control)
|
||||
"aBe" = (
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/turf/unsimulated/floor{
|
||||
icon_state = "dark"
|
||||
},
|
||||
|
||||
@@ -36558,16 +36558,16 @@
|
||||
/area/janitor)
|
||||
"bkE" = (
|
||||
/obj/structure/table/rack,
|
||||
/obj/item/caution{
|
||||
/obj/item/clothing/suit/caution{
|
||||
pixel_x = 4;
|
||||
pixel_y = -4
|
||||
},
|
||||
/obj/item/caution{
|
||||
/obj/item/clothing/suit/caution{
|
||||
pixel_x = 2;
|
||||
pixel_y = -2
|
||||
},
|
||||
/obj/item/caution,
|
||||
/obj/item/caution{
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/item/clothing/suit/caution{
|
||||
pixel_x = -2;
|
||||
pixel_y = 2
|
||||
},
|
||||
@@ -45875,15 +45875,15 @@
|
||||
/obj/structure/table/rack{
|
||||
dir = 1
|
||||
},
|
||||
/obj/item/caution{
|
||||
/obj/item/clothing/suit/caution{
|
||||
pixel_x = -2;
|
||||
pixel_y = 2
|
||||
},
|
||||
/obj/item/caution{
|
||||
/obj/item/clothing/suit/caution{
|
||||
pixel_x = -2;
|
||||
pixel_y = 2
|
||||
},
|
||||
/obj/item/caution{
|
||||
/obj/item/clothing/suit/caution{
|
||||
pixel_x = -2;
|
||||
pixel_y = 2
|
||||
},
|
||||
|
||||
@@ -370,7 +370,7 @@
|
||||
/area/maintenance/bridge_elevator)
|
||||
"aV" = (
|
||||
/obj/effect/floor_decal/corner/yellow/full,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_main)
|
||||
"aW" = (
|
||||
@@ -11472,14 +11472,14 @@
|
||||
d2 = 4;
|
||||
icon_state = "0-4"
|
||||
},
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/caution/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/item/clothing/head/cone,
|
||||
/obj/structure/closet/crate,
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_construction_site/office)
|
||||
|
||||
@@ -5909,8 +5909,8 @@
|
||||
dir = 10
|
||||
},
|
||||
/obj/structure/table/rack,
|
||||
/obj/item/caution,
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/turf/simulated/floor/tiled/white,
|
||||
/area/medical/custodial_closet)
|
||||
"akM" = (
|
||||
|
||||
@@ -10345,7 +10345,7 @@
|
||||
},
|
||||
/area/centcom/specops)
|
||||
"aFa" = (
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/turf/unsimulated/floor{
|
||||
icon_state = "dark"
|
||||
},
|
||||
@@ -12225,7 +12225,7 @@
|
||||
},
|
||||
/area/wizard_station)
|
||||
"aLa" = (
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/turf/unsimulated/floor{
|
||||
icon_state = "freezerfloor";
|
||||
dir = 2
|
||||
|
||||
@@ -3357,7 +3357,7 @@
|
||||
/turf/simulated/floor/tiled/dark,
|
||||
/area/derelict/ship)
|
||||
"kd" = (
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/turf/simulated/floor,
|
||||
/area/derelict/ship)
|
||||
"ke" = (
|
||||
@@ -7139,7 +7139,7 @@
|
||||
},
|
||||
/area/derelict)
|
||||
"vo" = (
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor6"
|
||||
|
||||
@@ -2262,7 +2262,7 @@
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"fK" = (
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/turf/simulated/floor/shuttle/black,
|
||||
|
||||