diff --git a/code/modules/mob/living/simple_animal/hostile/bees.dm b/code/modules/mob/living/simple_animal/hostile/bees.dm index d8edf7fe677..748a8e9c5d5 100644 --- a/code/modules/mob/living/simple_animal/hostile/bees.dm +++ b/code/modules/mob/living/simple_animal/hostile/bees.dm @@ -295,3 +295,10 @@ forceMove(beehome.drop_location()) else ..() + +/mob/living/simple_animal/hostile/poison/bees/short + desc = "These bees seem unstable and won't survive for long." + +/mob/living/simple_animal/hostile/poison/bees/short/Initialize() + . = ..() + addtimer(CALLBACK(src, .proc/death), 50 SECONDS) diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index 8b8c009a43f..2bb8990eb8f 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -116,6 +116,31 @@ empulse(location, round(created_volume / 12), round(created_volume / 7), 1) holder.clear_reagents() + +/datum/chemical_reaction/beesplosion + name = "Bee Explosion" + id = "beesplosion" + required_reagents = list("honey" = 1, "strange_reagent" = 1, "radium" = 1) + +/datum/chemical_reaction/beesplosion/on_reaction(datum/reagents/holder, created_volume) + var/location = holder.my_atom.drop_location() + if(created_volume < 5) + playsound(location,'sound/effects/sparks1.ogg', 100, TRUE) + else + playsound(location,'sound/creatures/bee.ogg', 100, TRUE) + var/list/beeagents = list() + for(var/X in holder.reagent_list) + var/datum/reagent/R = X + if(required_reagents[R.id]) + continue + beeagents += R + var/bee_amount = round(created_volume * 0.2) + for(var/i in 1 to bee_amount) + var/mob/living/simple_animal/hostile/poison/bees/short/new_bee = new(location) + if(LAZYLEN(beeagents)) + new_bee.assign_reagent(pick(beeagents)) + + /datum/chemical_reaction/stabilizing_agent name = "stabilizing_agent" id = "stabilizing_agent" diff --git a/sound/creatures/bee.ogg b/sound/creatures/bee.ogg new file mode 100644 index 00000000000..cd2779f8347 Binary files /dev/null and b/sound/creatures/bee.ogg differ