@@ -381,15 +381,17 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal)
381381 return distort
382382
383383/ obj / machinery/ power/ supermatter_crystal/ proc / antinoblium_safety() // Used for checking containment during antinoblium delamination, if false, things will go south and trigger resonance cascade event
384- if (bypass_containment) // Containment is uselesss at this point
384+ if (antinoblium_attached)
385+ if (bypass_containment) // Containment is uselesss at this point
386+ for (var /obj /machinery/field/generator/gens in urange (5 , src , 1 ))
387+ explosion (gens, heavy_impact_range = 2 , light_impact_range = 3 )
388+ return FALSE
389+ if (! check_containment(get_turf(src ), 5 ) || corruptor_attached)
390+ return FALSE
385391 for (var /obj /machinery/field/generator/gens in urange (5 , src , 1 ))
386- explosion (gens, heavy_impact_range = 2 , light_impact_range = 3 )
387- return FALSE
388- if (! check_containment(get_turf(src ), 5 ) || corruptor_attached)
389- return FALSE
390- for (var /obj /machinery/field/generator/gens in urange (5 , src , 1 ))
391- Beam (gens, icon_state = " lightning[ rand(1 ,12 )] " , time = 5 , maxdistance = INFINITY , beam_color= " #fdd700" )
392- return TRUE
392+ Beam (gens, icon_state = " lightning[ rand(1 ,12 )] " , time = 5 , maxdistance = INFINITY , beam_color= " #fdd700" )
393+ return TRUE
394+ return FALSE
393395
394396/ obj / machinery/ power/ supermatter_crystal/ proc / countdown()
395397 set waitfor = FALSE
@@ -733,11 +735,11 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal)
733735 supermatter_pull (src , power/ 750 )
734736 if (prob(5 ) || (! antinoblium_safety() || (supermatter_blob && ! check_containment(src , 5 ))) && prob(10 ))
735737 supermatter_anomaly_gen (src , ANOMALY_FLUX , rand(5 , 10 ))
736- if (power > SEVERE_POWER_PENALTY_THRESHOLD && prob(5 ) || prob(1 ) || (! antinoblium_safety() || (supermatter_blob && ! check_containment(src , 5 ))) && prob(10 ))
738+ if (( power > SEVERE_POWER_PENALTY_THRESHOLD && prob(5 ) && ! antinoblium_safety() ) || prob(1 ) || (! antinoblium_safety() || (supermatter_blob && ! check_containment(src , 5 ))) && prob(10 ))
737739 supermatter_anomaly_gen (src , ANOMALY_GRAVITATIONAL , rand(5 , 10 ))
738- if (power > SEVERE_POWER_PENALTY_THRESHOLD && prob(2 ) || prob(0.3 ) && power > POWER_PENALTY_THRESHOLD || (! antinoblium_safety() || (supermatter_blob && ! check_containment(src , 5 ))) && prob(10 ))
740+ if (( power > SEVERE_POWER_PENALTY_THRESHOLD && prob(2 ) && ! antinoblium_safety() ) || prob(0.3 ) && power > POWER_PENALTY_THRESHOLD || (! antinoblium_safety() || (supermatter_blob && ! check_containment(src , 5 ))) && prob(10 ))
739741 supermatter_anomaly_gen (src , ANOMALY_PYRO , rand(5 , 10 ))
740- if (power > SEVERE_POWER_PENALTY_THRESHOLD && prob(5 ) || prob(0.5 ) || (! antinoblium_safety() || (supermatter_blob && ! check_containment(src , 5 ))) && prob(10 ))
742+ if (( power > SEVERE_POWER_PENALTY_THRESHOLD && prob(5 ) && ! antinoblium_safety() ) || prob(0.5 ) || (! antinoblium_safety() || (supermatter_blob && ! check_containment(src , 5 ))) && prob(10 ))
741743 supermatter_anomaly_gen (src , ANOMALY_RADIATION , rand(5 , 10 ))
742744
743745 if (damage > warning_point) // while the core is still damaged and it's still worth noting its status
0 commit comments