diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm index b32fd7df70..28276d034f 100644 --- a/code/modules/xenobio2/mob/slime/slime.dm +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -21,6 +21,7 @@ Slime definitions, Life and New live here. var/shiny = 0 move_to_delay = 17 //Slimes shouldn't be able to go faster than humans. default_chems = list("slimejelly" = 5) + attacktext = "absorbed some of" var/emote_on = null diff --git a/code/modules/xenobio2/tools/slime_handling_tools.dm b/code/modules/xenobio2/tools/slime_handling_tools.dm new file mode 100644 index 0000000000..dcd8740e44 --- /dev/null +++ b/code/modules/xenobio2/tools/slime_handling_tools.dm @@ -0,0 +1,55 @@ +/* What this file contains: + + * A specialized stun prod, for handling fiesty slimes + + * A specialized stun gun, for handling many fiesty slimes + + * A stun projectile for handling xenomorphs. + +*/ +/obj/item/weapon/melee/baton/slime + name = "stunbaton (s)" + desc = "A modified stun baton designed to stun slimes for handling." + icon_state = "slimebaton" + item_state = "slimebaton" + slot_flags = SLOT_BELT + force = 9 + origin_tech = list(TECH_COMBAT = 2, TECH_BIO = 4) + agonyforce = 10 //It's not supposed to be great at stunning human beings. + var/stunforce = 60 //How much stasis it does to slimes, and 1/3rd to non-slimes. + +/obj/item/weapon/melee/baton/slime/attack(mob/M, mob/user) + if(istype(M, /mob/living/simple_animal/xeno)) + var/mob/living/simple_animal/xeno/X = M + if(istype(M, /mob/living/simple_animal/xeno/slime)) + X.stasis += stunforce + else + X.stasis += (stunforce / 6) + ..() + + +// Xeno stun gun + projectile +/obj/item/weapon/gun/energy/taser/xeno + name = "xeno taser gun" + desc = "Straight out of NT's testing laboratories, this small gun is used to subdue non-humanoid xeno life forms. While marketed towards handling slimes, it may be useful for other creatures." + icon_state = taserold + fire_sound = 'sound/weapons/taser2.ogg' + max_shots = 10 + projectile_type = /obj/item/projectile/beam/stun/xeno + +/obj/item/projectile/beam/stun/xeno + icon_state = "omni" + agony = 4 + var/stunforce = 40 + + muzzle_type = /obj/effect/projectile/laser_omni/muzzle + tracer_type = /obj/effect/projectile/laser_omni/tracer + impact_type = /obj/effect/projectile/laser_omni/impact + +/obj/item/projectile/beam/stun/xeno/on_hit(var/atom/target, var/blocked = 0) + if(istype(M, /mob/living/simple_animal/xeno)) + var/mob/living/simple_animal/xeno/X = M + if(istype(M, /mob/living/simple_animal/xeno/slime)) + X.stasis += stunforce + else + X.stasis += (stunforce / 8) \ No newline at end of file diff --git a/icons/mob/items/lefthand.dmi b/icons/mob/items/lefthand.dmi index f8d3c1c23f..e43b3a0d87 100644 Binary files a/icons/mob/items/lefthand.dmi and b/icons/mob/items/lefthand.dmi differ diff --git a/icons/mob/items/righthand.dmi b/icons/mob/items/righthand.dmi index 265df7a2ad..58a61f19c4 100644 Binary files a/icons/mob/items/righthand.dmi and b/icons/mob/items/righthand.dmi differ diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 137d43935f..bc2bfee340 100644 Binary files a/icons/obj/weapons.dmi and b/icons/obj/weapons.dmi differ diff --git a/polaris.dme b/polaris.dme index 5d2a2d2c50..465f9ba1d0 100644 --- a/polaris.dme +++ b/polaris.dme @@ -1874,6 +1874,7 @@ #include "code\modules\xenobio2\mob\slime\slime life.dm" #include "code\modules\xenobio2\mob\slime\slime procs.dm" #include "code\modules\xenobio2\mob\slime\slime.dm" +#include "code\modules\xenobio2\tools\slime_handling_tools.dm" #include "code\modules\xgm\xgm_gas_data.dm" #include "code\modules\xgm\xgm_gas_mixture.dm" #include "code\unit_tests\loadout_tests.dm"