Fixes C4, dirty bombs and nuclear waste (#22945)

changes:
  - bugfix: "Fixes C4 effects not correctly getting their parent item."
  - bugfix: "Fixes C4 not being placed correctly."
  - bugfix: "Fixes Dirty Bombs deleting their own radiation source."
- bugfix: "Fixes Dirty Bomb goop puddles disapearing long before the
radiation does."
  - bugfix: "Fixes drinking radioactive waste not irradiating you."

3 dirty bombs set off. One on a floor, one on a wall one on a machine.
<img width="1191" height="1182" alt="image"
src="https://github.com/user-attachments/assets/584e7572-441c-4937-8e0e-7203010fcd54"
/>

---------

Signed-off-by: FenodyreeAv <fenodyree.av@gmail.com>
This commit is contained in:
FenodyreeAv
2026-07-29 17:29:31 +00:00
committed by GitHub
parent 514bc2346e
commit 2fdf11ca75
5 changed files with 55 additions and 14 deletions
@@ -55,13 +55,11 @@
/obj/effect/decal/cleanable/greenglow/Initialize(mapload)
. = ..()
if (!mapload) // Round-start goo should stick around.
QDEL_IN(src, 2 MINUTES)
/obj/effect/decal/cleanable/greenglow/post_sweep(var/mob/user)
if(ishuman(user))
var/mob/living/carbon/human/H = user
H.apply_radiation(3)
H.rad_act(30)
STOP_PROCESSING(SSprocessing, src)
ABSTRACT_TYPE(/obj/effect/decal/cleanable/greenglow/radioactive)
@@ -71,6 +69,13 @@ ABSTRACT_TYPE(/obj/effect/decal/cleanable/greenglow/radioactive)
light_power = 0.6
light_color = "#64C864"
/obj/effect/decal/cleanable/greenglow/radioactive/post_sweep(var/mob/user)
if(radioactivity)
if(ishuman(user))
var/mob/living/carbon/human/H = user
H.rad_act(radioactivity)
STOP_PROCESSING(SSprocessing, src)
/obj/effect/decal/cleanable/greenglow/radioactive/antagonist_hints(mob/user, distance, is_adjacent)
. += ..()
. += "Characters directly adjacent to or on top of this object will be exposed to <b>[radioactivity] IU/s</b> of radiation. Radiation falls off (approximately) by 75% for every tile away you move."
@@ -123,7 +128,6 @@ ABSTRACT_TYPE(/obj/effect/decal/cleanable/greenglow/radioactive)
/obj/effect/decal/cleanable/greenglow/radioactive/process()
SSradiation.radiate(src, radioactivity)
/obj/effect/decal/cleanable/cobweb
name = "cobweb"
desc = "Somebody should remove that."