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.
This commit is contained in:
Wowzewow (Wezzy)
2019-12-19 21:33:28 +02:00
committed by Erki
parent b707b004e2
commit 8dddda141b
22 changed files with 142 additions and 83 deletions
-44
View File
@@ -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..."
+1 -1
View File
@@ -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)
+3 -3
View File
@@ -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>")
+2 -2
View File
@@ -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(
+26 -1
View File
@@ -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()
+1 -1
View File
@@ -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."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 177 KiB

After

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 411 KiB

After

Width:  |  Height:  |  Size: 376 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 19 KiB

+1 -1
View File
@@ -11243,7 +11243,7 @@
},
/area/centcom/control)
"aBe" = (
/obj/item/caution,
/obj/item/clothing/suit/caution,
/turf/unsimulated/floor{
icon_state = "dark"
},
+7 -7
View File
@@ -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
},
+9 -9
View File
@@ -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)
+2 -2
View File
@@ -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" = (
+2 -2
View File
@@ -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
+2 -2
View File
@@ -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"
+1 -1
View File
@@ -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,