From 0829a25d58062ad3c3f8118a8d5b54968ffca64c Mon Sep 17 00:00:00 2001 From: VelocitOni Date: Tue, 8 Jul 2025 19:20:29 -0400 Subject: [PATCH] ring drain and stun It wasn't actually that hard, I just don't do this kinda stuff --- src/objects/toxomister.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/objects/toxomister.cpp b/src/objects/toxomister.cpp index 6fddef544..1b8334f9a 100644 --- a/src/objects/toxomister.cpp +++ b/src/objects/toxomister.cpp @@ -297,6 +297,12 @@ struct Cloud : Mobj bob_in_place(this, 8, 64); voice_loop(sfx_s3kcfl); + + if (leveltime % (TICRATE/3) == 0 && follow()->player->rings > -20) // toxomister ring drain + { + follow()->player->rings--; + S_StartSound(follow()->player->mo, sfx_antiri); + } if (fuse < 3*TICRATE && leveltime % (1 + fuse / TICRATE) == 0) { @@ -308,6 +314,7 @@ struct Cloud : Mobj K_SpawnAmps(target()->player, K_PvPAmpReward(2, target()->player, follow()->player), this); } + follow()->player->stunned = fuse; // stunned as long as cloud is here return true; } @@ -358,7 +365,7 @@ struct Cloud : Mobj scale_to(destscale); follow(toucher); fuse = kMaxFuse; - voice(sfx_s3ka0); + voice(sfx_s3k8a); return true; }