Adds stress balls to loadout/psych office (#19352)

- rscadd: "Added colourable stress balls to the loadout."
  - rscadd: "Added a box of stress balls to the psychiatrist's locker."


![image](https://github.com/Aurorastation/Aurora.3/assets/82828093/36dfe154-ac3c-4fc9-8ec4-e17f4f15355e)

![image](https://github.com/Aurorastation/Aurora.3/assets/82828093/9728b052-3979-4ec0-b605-0a5e3df5ae19)

---------

Signed-off-by: Llywelwyn <82828093+Llywelwyn@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
This commit is contained in:
Llywelwyn
2024-06-08 16:40:49 +00:00
committed by GitHub
co-authored by Fluffy
parent 7d9c65ec5d
commit f8231cf1c7
8 changed files with 110 additions and 0 deletions
+37
View File
@@ -18,6 +18,7 @@
* Toy cult sword
* Ring bell
* Chess Pieces
* Stress ball
*/
@@ -1475,3 +1476,39 @@
/obj/item/chess_piece/queen/black
name = "black queen"
icon_state = "black_queen"
// Stress ball
/obj/item/toy/stressball
name = "stress ball"
desc = "A small, squishy stress ball. This one has a squeaker inside."
icon_state = "stressball"
drop_sound = 'sound/items/drop/plushie.ogg'
pickup_sound = 'sound/items/pickup/plushie.ogg'
var/squeeze_sound = 'sound/items/drop/plushie.ogg'
var/cooldown = 0
/obj/item/toy/stressball/Initialize()
. = ..()
if(!color)
color = RANDOM_RGB
update_icon()
/obj/item/toy/stressball/attack_self(mob/user as mob)
if(cooldown > world.time)
return
cooldown = world.time + 2 SECONDS
var/volume = 0
switch(user.a_intent)
if(I_HELP)
user.visible_message(SPAN_NOTICE("[SPAN_BOLD("\The [user]")] plays with \the [src]!"), SPAN_NOTICE("You play with \the [src]!"))
if(I_DISARM)
user.visible_message(SPAN_NOTICE("[SPAN_BOLD("\The [user]")] squeezes \the [src]!"), SPAN_NOTICE("You squeeze \the [src]!"))
volume = 30
if(I_GRAB)
user.visible_message(SPAN_NOTICE(SPAN_BOLD("\The [user] pinches \the [src]!")), SPAN_NOTICE(SPAN_BOLD("You pinch \the [src]!")))
volume = 40
if(I_HURT)
user.visible_message(SPAN_WARNING(SPAN_BOLD("\The [user] crushes \the [src]!")), SPAN_WARNING(SPAN_BOLD("You crush \the [src]!")))
volume = 50
if(volume)
playsound(src.loc, squeeze_sound, volume, TRUE)
@@ -1347,3 +1347,10 @@
. = ..()
new /obj/item/stack/cable_coil(src, 6)
new /obj/item/stack/material/steel(src, 2)
/obj/item/storage/box/stressball
name = "box of stress balls"
desc = "A box containing a number of randomly-coloured stress balls."
starts_with = list(
/obj/item/toy/stressball = 6
)
@@ -209,3 +209,4 @@
new /obj/item/toy/plushie/slime(src)
new /obj/item/toy/plushie/bee(src)
new /obj/item/device/flashlight/pen(src)
new /obj/item/storage/box/stressball(src)
@@ -112,3 +112,9 @@
for(var/obj/item/toy/mech/mecha as anything in subtypesof(/obj/item/toy/mech))
mechas[initial(mecha.name)] = mecha
gear_tweaks += new /datum/gear_tweak/path(mechas)
/datum/gear/toy/stressball
display_name = "stress ball"
description = "A small, squishy stress ball. This one has a squeaker inside."
path = /obj/item/toy/stressball
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION