diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm index 8c6b7b23505..a2846e703b0 100644 --- a/code/game/objects/items/weapons/clown_items.dm +++ b/code/game/objects/items/weapons/clown_items.dm @@ -160,3 +160,9 @@ if((istype(H.ears, /obj/item/clothing/ears/earmuffs)) || H.ear_deaf) continue M.emote("flip") + +/obj/item/weapon/reagent_containers/food/drinks/soda_cans/canned_laughter + name = "Canned Laughter" + desc = "Just looking at this makes you want to giggle." + icon_state = "laughter" + list_reagents = list("laughter" = 50) diff --git a/code/modules/jobs/job_types/civilian.dm b/code/modules/jobs/job_types/civilian.dm index 51de2d1b845..faa6818ec73 100644 --- a/code/modules/jobs/job_types/civilian.dm +++ b/code/modules/jobs/job_types/civilian.dm @@ -30,7 +30,8 @@ Clown /obj/item/weapon/stamp/clown = 1, /obj/item/weapon/reagent_containers/spray/waterflower = 1, /obj/item/weapon/reagent_containers/food/snacks/grown/banana = 1, - /obj/item/device/megaphone/clown = 1 + /obj/item/device/megaphone/clown = 1, + /obj/item/weapon/reagent_containers/food/drinks/soda_cans/canned_laughter = 1 ) backpack = /obj/item/weapon/storage/backpack/clown diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index b047cda4b55..fc8d3dfae3c 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -110,6 +110,27 @@ . = 1 ..() +/datum/reagent/consumable/laughter + name = "Laughter" + id = "laughter" + description = "Some say that this is the best medicine, but recent studies have proven that to be untrue." + metabolization_rate = INFINITY + color = "#FF4DD2" + +/datum/reagent/consumable/laughter/on_mob_life(mob/living/M) + M.emote("laugh") + var/laughnum = rand(1,2) + if(M.gender == MALE) + if(laughnum == 1) + playsound(get_turf(M), 'sound/voice/human/manlaugh1.ogg', 50, 1) + if(laughnum == 2) + playsound(get_turf(M), 'sound/voice/human/manlaugh2.ogg', 50, 1) + else if(M.gender == FEMALE) + playsound(get_turf(M), 'sound/voice/human/womanlaugh.ogg', 65, 1) + else//non-binary gender just sounds like a man + playsound(get_turf(M), 'sound/voice/human/manlaugh1.ogg', 50, 1) + ..() + /datum/reagent/consumable/potato_juice name = "Potato Juice" id = "potato" diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi index 84fb138564f..a4b63515e0d 100644 Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ diff --git a/icons/obj/janitor.dmi b/icons/obj/janitor.dmi index 4dc3e685792..e8131065047 100644 Binary files a/icons/obj/janitor.dmi and b/icons/obj/janitor.dmi differ diff --git a/sound/voice/human/manlaugh1.ogg b/sound/voice/human/manlaugh1.ogg new file mode 100644 index 00000000000..4033e04eac3 Binary files /dev/null and b/sound/voice/human/manlaugh1.ogg differ diff --git a/sound/voice/human/manlaugh2.ogg b/sound/voice/human/manlaugh2.ogg new file mode 100644 index 00000000000..dba2e80c257 Binary files /dev/null and b/sound/voice/human/manlaugh2.ogg differ diff --git a/sound/voice/human/womanlaugh.ogg b/sound/voice/human/womanlaugh.ogg new file mode 100644 index 00000000000..057a842adcb Binary files /dev/null and b/sound/voice/human/womanlaugh.ogg differ