diff --git a/code/datums/goon_mutations_powers.dm b/code/datums/goon_mutations_powers.dm
index 38069f48488..e164eced752 100644
--- a/code/datums/goon_mutations_powers.dm
+++ b/code/datums/goon_mutations_powers.dm
@@ -6,6 +6,7 @@
text_gain_indication = "You begin to fade into the shadows."
text_lose_indication = "You become fully visible."
+
/datum/mutation/human/stealth/on_life(mob/living/carbon/human/owner)
var/turf/simulated/T = get_turf(owner)
if(!istype(T))
@@ -26,8 +27,11 @@
lowest_value = 256 * 14
text_gain_indication = "You feel one with your surroundings."
text_lose_indication = "You feel oddly exposed."
-
+ var/last_location
/datum/mutation/human/chameleon/on_life(mob/living/carbon/human/owner)
+ if(owner.loc != last_location)
+ owner.alpha = round(255 * 0.80)
+ last_location = owner.loc
if((world.time - owner.last_movement) >= 30 && !owner.stat && owner.canmove && !owner.restrained())
owner.alpha -= 25
else
diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm
index 2098d686ea9..b60e8a27131 100644
--- a/code/game/objects/items/weapons/grenades/chem_grenade.dm
+++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm
@@ -203,6 +203,7 @@
qdel(src) //correctly before deleting the grenade.
/obj/item/weapon/grenade/chem_grenade/proc/mix_reagents()
+ reagents.chem_temp = 1000
for(var/obj/item/weapon/reagent_containers/glass/G in beakers)
G.reagents.trans_to(src, G.reagents.total_volume)
diff --git a/code/modules/reagents/Chemistry-Goon-Medicine.dm b/code/modules/reagents/Chemistry-Goon-Medicine.dm
index 9afb2cc233b..d5dd5ad717e 100644
--- a/code/modules/reagents/Chemistry-Goon-Medicine.dm
+++ b/code/modules/reagents/Chemistry-Goon-Medicine.dm
@@ -615,10 +615,10 @@ datum/reagent/strange_reagent/reaction_mob(var/mob/living/carbon/human/M as mob,
M.visible_message("[M]'s body convulses a bit.")
if(M.health <= config.health_threshold_dead && !M.suiciding && !ghost && !(NOCLONE in M.mutations))
M.stat = 1
- M.adjustBruteLoss(-10)
- M.adjustFireLoss(-10)
- M.adjustOxyLoss(-10)
- M.adjustToxLoss(-10)
+ M.adjustBruteLoss(-20) // this should keep them from dying immediately
+ M.adjustFireLoss(-20)
+ M.adjustOxyLoss(-20)
+ M.adjustToxLoss(-20)
dead_mob_list -= M
living_mob_list |= list(M)
M.emote("gasp")
diff --git a/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm b/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm
index ddb358b72b5..777ec06fdf0 100644
--- a/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm
+++ b/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm
@@ -140,4 +140,5 @@ proc/goonchem_vortex(var/turf/simulated/T, var/setting_type, var/range, var/pull
for(var/i = 0, i < pull_times, i++)
step_away(X,T)
else
- X.throw_at(T)
\ No newline at end of file
+ for(var/i = 0, i < pull_times, i++)
+ step_towards(X,T)
\ No newline at end of file
diff --git a/code/modules/reagents/Chemistry-Goon-Toxins.dm b/code/modules/reagents/Chemistry-Goon-Toxins.dm
index 4264afcefa2..8c0a3b7d61c 100644
--- a/code/modules/reagents/Chemistry-Goon-Toxins.dm
+++ b/code/modules/reagents/Chemistry-Goon-Toxins.dm
@@ -103,12 +103,11 @@ datum/reagent/neurotoxin2
datum/reagent/neurotoxin2/on_mob_life(var/mob/living/M as mob)
cycle_count++
- if(!M) M = holder.my_atom
if(M.brainloss + M.toxloss <= 60)
M.adjustBrainLoss(1*REM)
M.adjustToxLoss(1*REM)
if(cycle_count == 17)
- M.sleeping += 1
+ M.sleeping += 10 // buffed so it works
..()
return