diff --git a/code/datums/supplypacks/supply.dm b/code/datums/supplypacks/supply.dm index e9fa3f2d99..9414d6201d 100644 --- a/code/datums/supplypacks/supply.dm +++ b/code/datums/supplypacks/supply.dm @@ -39,7 +39,7 @@ /obj/item/clothing/head/soft/purple, /obj/item/weapon/storage/belt/janitor, /obj/item/clothing/shoes/galoshes, - /obj/item/weapon/caution = 4, + /obj/item/clothing/suit/caution = 4, /obj/item/weapon/storage/bag/trash, /obj/item/device/lightreplacer, /obj/item/weapon/reagent_containers/spray/cleaner, diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 99c0f753c8..8e7ccb4070 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -110,28 +110,6 @@ item_state = "gift" w_class = ITEMSIZE_LARGE -/obj/item/weapon/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 = ITEMSIZE_SMALL - attack_verb = list("warned", "cautioned", "smashed") - -/obj/item/weapon/caution/cone - desc = "This cone is trying to warn you of something!" - name = "warning cone" - icon_state = "cone" - -/obj/item/weapon/caution/cone/candy - desc = "This cone is trying to warn you of something! It has been painted to look like candy corn." - name = "candy cone" - icon_state = "candycone" - /*/obj/item/weapon/syndicate_uplink name = "station bounced radio" desc = "Remain silent about this..." diff --git a/code/game/objects/random/maintenance.dm b/code/game/objects/random/maintenance.dm index 37dcca8319..155a9abad0 100644 --- a/code/game/objects/random/maintenance.dm +++ b/code/game/objects/random/maintenance.dm @@ -101,8 +101,8 @@ something, make sure it's not in one of the other lists.*/ prob(1);/obj/item/clothing/under/tactical, prob(3);/obj/item/clothing/accessory/storage/webbing, prob(3);/obj/item/weapon/camera_assembly, - prob(4);/obj/item/weapon/caution, - prob(3);/obj/item/weapon/caution/cone, + prob(4);/obj/item/clothing/suit/caution, + prob(3);/obj/item/clothing/head/cone, prob(1);/obj/item/weapon/card/emag_broken, prob(2);/obj/item/device/camera, prob(3);/obj/item/device/pda, diff --git a/code/game/objects/structures/crates_lockers/closets/job_closets.dm b/code/game/objects/structures/crates_lockers/closets/job_closets.dm index 72a3d29a07..4f73d4151c 100644 --- a/code/game/objects/structures/crates_lockers/closets/job_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/job_closets.dm @@ -64,7 +64,7 @@ /obj/item/clothing/head/soft/purple, /obj/item/clothing/head/beret/purple, /obj/item/device/flashlight, - /obj/item/weapon/caution = 4, + /obj/item/clothing/suit/caution = 4, /obj/item/device/lightreplacer, /obj/item/weapon/storage/bag/trash, /obj/item/weapon/storage/belt/janitor, diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index d14efeea5b..de07aa8de8 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -93,7 +93,7 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart) to_chat(user, "You put [I] into [src].") return 1 - else if(istype(I, /obj/item/weapon/caution)) + else if(istype(I, /obj/item/clothing/suit/caution)) if(signs < 4) user.unEquip(I, 0, src) signs++ @@ -192,7 +192,7 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart) myreplacer = null if("sign") if(signs) - var/obj/item/weapon/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, "You take \a [Sign] from [src].") @@ -258,7 +258,7 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart) mybucket = null if (signs) - for (var/obj/item/weapon/caution/Sign in src) + for (var/obj/item/clothing/suit/caution/Sign in src) if (prob(min((chance*2),100))) signs-- Sign.forceMove(dropspot) diff --git a/code/game/objects/structures/loot_piles.dm b/code/game/objects/structures/loot_piles.dm index b11f7aa36c..f8578e121a 100644 --- a/code/game/objects/structures/loot_piles.dm +++ b/code/game/objects/structures/loot_piles.dm @@ -192,8 +192,8 @@ Loot piles can be depleted, if loot_depleted is turned on. Note that players wh /obj/item/weapon/spacecash/c10, /obj/item/weapon/spacecash/c20, /obj/item/weapon/camera_assembly, - /obj/item/weapon/caution, - /obj/item/weapon/caution/cone, + /obj/item/clothing/suit/caution, + /obj/item/clothing/head/cone, /obj/item/weapon/card/emag_broken, /obj/item/device/camera, /obj/item/device/pda, diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index a3da836d7c..b23f70b185 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -7,6 +7,7 @@ * Kitty ears * Holiday hats Crown of Wrath + Warning cone */ /* @@ -288,3 +289,19 @@ /obj/item/clothing/head/psy_crown/gluttony/activate_ability(var/mob/living/wearer) ..() wearer.add_modifier(/datum/modifier/gluttonyregeneration, 45 SECONDS) + +/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) \ No newline at end of file diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 32e5e19743..6c12a2e68d 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -892,3 +892,38 @@ obj/item/clothing/suit/kamishimo /obj/item/clothing/suit/storage/snowsuit/science name = "science snowsuit" icon_state = "snowsuit_science" + +/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_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/machines/button.ogg', 30, 1) + else + src.icon_state = "caution" + src.item_state = "caution" + usr.show_message("You turn the wet floor sign off.") + update_clothing_icon() \ No newline at end of file diff --git a/code/modules/xenoarcheaology/artifacts/replicator.dm b/code/modules/xenoarcheaology/artifacts/replicator.dm index da5b123c16..49e24f8a97 100644 --- a/code/modules/xenoarcheaology/artifacts/replicator.dm +++ b/code/modules/xenoarcheaology/artifacts/replicator.dm @@ -42,8 +42,8 @@ /obj/item/weapon/bikehorn, /obj/item/weapon/surgical/bonesetter, /obj/item/weapon/material/knife/butch, - /obj/item/weapon/caution, - /obj/item/weapon/caution/cone, + /obj/item/clothing/suit/caution, + /obj/item/clothing/head/cone, /obj/item/weapon/tool/crowbar, /obj/item/weapon/clipboard, /obj/item/weapon/cell, diff --git a/html/changelogs/Lorilili - janiwear.yml b/html/changelogs/Lorilili - janiwear.yml new file mode 100644 index 0000000000..25cab7fd3b --- /dev/null +++ b/html/changelogs/Lorilili - janiwear.yml @@ -0,0 +1,4 @@ +author: Lorilili +delete-after: True +changes: + - rscadd: "You can now wear caution signs and warning cones." \ No newline at end of file diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index f241ee11e8..d2be45594c 100644 Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 82d26fb02e..5fc3080206 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index 19d7de134f..6f8f14c6a2 100644 Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 0421e0bff6..5c1f3246d5 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/janitor.dmi b/icons/obj/janitor.dmi index 3b7f9b4f60..607fef4bc7 100644 Binary files a/icons/obj/janitor.dmi and b/icons/obj/janitor.dmi differ diff --git a/maps/southern_cross/southern_cross-1.dmm b/maps/southern_cross/southern_cross-1.dmm index 1bf367399d..4068595924 100644 --- a/maps/southern_cross/southern_cross-1.dmm +++ b/maps/southern_cross/southern_cross-1.dmm @@ -811,7 +811,7 @@ "apE" = (/obj/structure/frame/computer,/turf/simulated/floor/tiled,/area/hangar/onecontrol) "apF" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/hangar/onecontrol) "apG" = (/obj/structure/disposalpipe/up,/obj/machinery/atmospherics/pipe/zpipe/up/scrubbers,/obj/machinery/atmospherics/pipe/zpipe/up/supply,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/structure/cable{d1 = 16; d2 = 0; icon_state = "16-0"},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) -"apH" = (/obj/item/weapon/caution/cone,/turf/simulated/floor,/area/maintenance/firstdeck/foreport) +"apH" = (/obj/item/clothing/head/cone,/turf/simulated/floor,/area/maintenance/firstdeck/foreport) "apI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "apJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/alarm{dir = 8; pixel_x = 22; pixel_y = 0},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "apK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fpcenter) diff --git a/maps/submaps/surface_submaps/mountains/quarantineshuttle.dmm b/maps/submaps/surface_submaps/mountains/quarantineshuttle.dmm index 7da857ef05..7ee0f3cfa8 100644 --- a/maps/submaps/surface_submaps/mountains/quarantineshuttle.dmm +++ b/maps/submaps/surface_submaps/mountains/quarantineshuttle.dmm @@ -1,6 +1,6 @@ "aa" = (/turf/template_noop,/area/template_noop) "ab" = (/turf/simulated/mineral/floor/ignore_mapgen,/area/submap/cave/qShuttle) -"ac" = (/obj/item/weapon/caution/cone,/turf/simulated/mineral/floor/ignore_mapgen,/area/submap/cave/qShuttle) +"ac" = (/obj/item/clothing/head/cone,/turf/simulated/mineral/floor/ignore_mapgen,/area/submap/cave/qShuttle) "ad" = (/turf/simulated/shuttle/wall,/area/submap/cave/qShuttle) "ae" = (/obj/structure/inflatable,/turf/simulated/mineral/floor/ignore_mapgen,/area/submap/cave/qShuttle) "af" = (/obj/structure/inflatable/door,/turf/simulated/mineral/floor/ignore_mapgen,/area/submap/cave/qShuttle)