diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index deaab74a23d..528a3e1bb88 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -6,7 +6,7 @@ flags_cover = MASKCOVERSMOUTH w_class = WEIGHT_CLASS_SMALL gas_transfer_coefficient = 0.90 - put_on_delay = 2 SECONDS + put_on_delay = 2 SECONDS /// How long you need to gnaw to get rid of the gag, 0 to make it impossible to remove var/resist_time = 0 SECONDS var/mute = MUZZLE_MUTE_ALL @@ -500,6 +500,18 @@ desc = "A bandana made from durathread, you wish it would provide some protection to its wearer, but it's far too thin..." icon_state = "banddurathread" +/obj/item/clothing/mask/false_cluwne_mask + name = "cursed clown mask" + desc = "This is a very, very odd looking mask." + icon = 'icons/goonstation/objects/clothing/mask.dmi' + icon_state = "cursedclown" + item_state = "cclown_hat" + icon_override = 'icons/goonstation/mob/clothing/mask.dmi' + lefthand_file = 'icons/goonstation/mob/inhands/clothing_lefthand.dmi' + righthand_file = 'icons/goonstation/mob/inhands/clothing_righthand.dmi' + flags = BLOCK_GAS_SMOKE_EFFECT | AIRTIGHT | BLOCKHAIR + flags_cover = MASKCOVERSMOUTH + /obj/item/clothing/mask/cursedclown name = "cursed clown mask" desc = "This is a very, very odd looking mask." diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index d6459e6a43d..4d1a1e16370 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -290,6 +290,17 @@ . = ..() AddComponent(/datum/component/squeak, list('sound/effects/clownstep1.ogg' = 1, 'sound/effects/clownstep2.ogg' = 1), 50, falloff_exponent = 20) //die off quick please + +/obj/item/clothing/shoes/clown_shoes/false_cluwne_shoes + name = "cursed clown shoes" + desc = "Moldering clown flip flops. They're neon green for some reason." + icon = 'icons/goonstation/objects/clothing/feet.dmi' + icon_state = "cursedclown" + item_state = "cclown_shoes" + icon_override = 'icons/goonstation/mob/clothing/feet.dmi' + lefthand_file = 'icons/goonstation/mob/inhands/clothing_lefthand.dmi' + righthand_file = 'icons/goonstation/mob/inhands/clothing_righthand.dmi' + /obj/item/clothing/shoes/singery name = "yellow performer's boots" desc = "These boots were made for dancing." diff --git a/code/modules/events/tear.dm b/code/modules/events/tear.dm index 76b74603ac1..409e54239d8 100644 --- a/code/modules/events/tear.dm +++ b/code/modules/events/tear.dm @@ -50,7 +50,8 @@ // Huge sprite, we shift it to make it look more natural. pixel_x = -106 pixel_y = -96 - + /// What the leader of the dimensional tear will be + var/leader = /mob/living/simple_animal/hostile/hellhound/tear var/list/possible_mobs = list( /mob/living/simple_animal/hostile/netherworld, /mob/living/simple_animal/hostile/netherworld/migo, @@ -82,6 +83,8 @@ // We spawn a leader mob to make the portal actually dangerous. /obj/effect/tear/proc/spawn_leader() - var/mob/M = new /mob/living/simple_animal/hostile/hellhound/tear(get_turf(src)) + if(!leader) + return + var/mob/M = new leader(get_turf(src)) playsound(M, 'sound/goonstation/voice/growl2.ogg', 100) visible_message("With a terrifying growl, \a [M] steps out of the portal!") diff --git a/code/modules/events/tear_honk.dm b/code/modules/events/tear_honk.dm index 1d62dd3c501..f6c374d3115 100644 --- a/code/modules/events/tear_honk.dm +++ b/code/modules/events/tear_honk.dm @@ -18,6 +18,9 @@ name = "honkmensional tear" desc = "A tear in the dimensional fabric of sanity." possible_mobs = list(/mob/living/simple_animal/hostile/retaliate/clown/goblin) + leader = null // Doesn't spawn with a leader always -/obj/effect/tear/honk/spawn_leader() - return +/obj/effect/tear/honk/Initialize(mapload) + . = ..() + if(prob(5)) + leader = /mob/living/simple_animal/hostile/retaliate/clown/goblin/cluwne diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm index da242abe834..c5cbbcca516 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm @@ -53,3 +53,23 @@ del_on_death = TRUE loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/item/clothing/shoes/clown_shoes) + +/mob/living/simple_animal/hostile/retaliate/clown/goblin/cluwne + name = "cluwne goblin" + desc = "A tiny pile of misery and evil. Kill this thing before it comes for your family." + icon_state = "cluwnegoblin" + icon_living = "cluwnegoblin" + response_help = "henks the" + speak = list("HENK!") + emote_see = list("henks") + maxHealth = 150 + health = 150 + harm_intent_damage = 15 + melee_damage_lower = 17 + melee_damage_upper = 20 + atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) + minbodytemp = 0 + maxbodytemp = INFINITY + move_to_delay = 2 + + loot = list(/obj/item/clothing/mask/false_cluwne_mask, /obj/item/clothing/shoes/clown_shoes/false_cluwne_shoes) // We'd rather not give them ACTUAL cluwne stuff you know? diff --git a/icons/mob/animal.dmi b/icons/mob/animal.dmi index b4755212d1e..12ed78e10fd 100644 Binary files a/icons/mob/animal.dmi and b/icons/mob/animal.dmi differ