From 47664f404b78b65e510ac60d0ce950c7032599da Mon Sep 17 00:00:00 2001 From: datlo Date: Tue, 18 Dec 2018 04:12:09 +0000 Subject: [PATCH] frag grenades do not breach, have more radius --- code/game/objects/explosion.dm | 7 +++++-- .../objects/items/weapons/grenades/frag.dm | 11 ++++++++++ .../items/weapons/grenades/syndieminibomb.dm | 17 +--------------- .../objects/items/weapons/storage/belt.dm | 20 +++++++++---------- 4 files changed, 27 insertions(+), 28 deletions(-) create mode 100644 code/game/objects/items/weapons/grenades/frag.dm diff --git a/code/game/objects/explosion.dm b/code/game/objects/explosion.dm index 13583310630..9c457e43b6a 100644 --- a/code/game/objects/explosion.dm +++ b/code/game/objects/explosion.dm @@ -1,6 +1,6 @@ //TODO: Flash range does nothing currently -/proc/explosion(turf/epicenter, devastation_range, heavy_impact_range, light_impact_range, flash_range, adminlog = 1, ignorecap = 0, flame_range = 0 ,silent = 0, smoke = 1, cause = null) +/proc/explosion(turf/epicenter, devastation_range, heavy_impact_range, light_impact_range, flash_range, adminlog = 1, ignorecap = 0, flame_range = 0 ,silent = 0, smoke = 1, cause = null, breach = TRUE) src = null //so we don't abort once src is deleted epicenter = get_turf(epicenter) @@ -132,7 +132,10 @@ if(AM && AM.simulated) AM.ex_act(dist) CHECK_TICK - T.ex_act(dist) + if(breach) + T.ex_act(dist) + else + T.ex_act(3) CHECK_TICK //--- THROW ITEMS AROUND --- diff --git a/code/game/objects/items/weapons/grenades/frag.dm b/code/game/objects/items/weapons/grenades/frag.dm new file mode 100644 index 00000000000..773ae0724b4 --- /dev/null +++ b/code/game/objects/items/weapons/grenades/frag.dm @@ -0,0 +1,11 @@ +/obj/item/grenade/frag + name = "frag grenade" + desc = "Fire in the hole." + icon_state = "frag" + item_state = "flashbang" + origin_tech = "materials=3;magnets=4" + +/obj/item/grenade/frag/prime() + update_mob() + explosion(loc, 0, 3, 5, breach = FALSE) + qdel(src) \ No newline at end of file diff --git a/code/game/objects/items/weapons/grenades/syndieminibomb.dm b/code/game/objects/items/weapons/grenades/syndieminibomb.dm index 36af44a25b3..0292b8f9eba 100644 --- a/code/game/objects/items/weapons/grenades/syndieminibomb.dm +++ b/code/game/objects/items/weapons/grenades/syndieminibomb.dm @@ -9,19 +9,4 @@ /obj/item/grenade/syndieminibomb/prime() update_mob() explosion(loc, 1, 2, 4, flame_range = 2) - qdel(src) - -/obj/item/grenade/syndieminibomb/concussion - name = "HE Grenade" - desc = "A compact shrapnel grenade meant to devastate nearby organisms and cause some damage in the process. Pull pin and throw opposite direction." - icon_state = "concussion" - -/obj/item/grenade/syndieminibomb/concussion/prime() - update_mob() - explosion(loc, 0, 2, 3, flame_range = 3) - qdel(src) - -/obj/item/grenade/syndieminibomb/concussion/frag - name = "frag grenade" - desc = "Fire in the hole." - icon_state = "frag" \ No newline at end of file + qdel(src) \ No newline at end of file diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 7777d781a0e..83494366d38 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -331,16 +331,16 @@ new /obj/item/grenade/chem_grenade/facid(src) //1 new /obj/item/grenade/gas/plasma(src) //2 new /obj/item/grenade/gas/plasma(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) //10 - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) - new /obj/item/grenade/syndieminibomb/concussion/frag(src) + new /obj/item/grenade/frag(src) //10 + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) + new /obj/item/grenade/frag(src) new /obj/item/grenade/syndieminibomb(src) //2 new /obj/item/grenade/syndieminibomb(src)