Bluespace vetus doesn't spark from it's anomalies (#23001)

* hardmode vetus now puts out less sparks than the fourth of july

* Update code/datums/helper_datums/teleport.dm

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>

---------

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
This commit is contained in:
Qwertytoforty
2023-10-26 10:41:22 +01:00
committed by GitHub
co-authored by Burzah
parent a2d4225e5c
commit 7db1d5b63d
2 changed files with 10 additions and 8 deletions
+8 -6
View File
@@ -12,17 +12,18 @@
* - sound_out - The sound played at the destination turf
* - bypass_area_flag - Whether is_teleport_allowed is skipped or not
* - safe_turf_pick - Whether the chosen random turf from the variance is prefered to be a safe turf or not
* - do_effect - Whether to play the effect or not
*/
/proc/do_teleport(atom_to_teleport, destination, variance_range = 0, force_teleport = TRUE, datum/effect_system/effect_in = null, datum/effect_system/effect_out = null, sound_in = null, sound_out = null, bypass_area_flag = FALSE, safe_turf_pick = FALSE)
/proc/do_teleport(atom_to_teleport, destination, variance_range = 0, force_teleport = TRUE, datum/effect_system/effect_in = null, datum/effect_system/effect_out = null, sound_in = null, sound_out = null, bypass_area_flag = FALSE, safe_turf_pick = FALSE, do_effect = TRUE)
var/datum/teleport/instant/science/D = new // default here
if(isnull(effect_in) || isnull(effect_out)) // Set default effects
if((isnull(effect_in) || isnull(effect_out)) && do_effect) // Set default effects
var/datum/effect_system/spark_spread/effect = new
effect.set_up(5, 1, atom_to_teleport)
if(isnull(effect_in))
effect_in = effect
if(isnull(effect_out))
effect_out = effect
if(D.start(atom_to_teleport, destination, variance_range, force_teleport, effect_in, effect_out, sound_in, sound_out, bypass_area_flag, safe_turf_pick))
if(D.start(atom_to_teleport, destination, variance_range, force_teleport, effect_in, effect_out, sound_in, sound_out, bypass_area_flag, safe_turf_pick, do_effect))
return 1
return 0
@@ -38,12 +39,12 @@
var/ignore_area_flag = FALSE
var/safe_turf_first = FALSE //If the teleport isn't precise and this is TRUE, only non-space, non-dense turfs will be selected, unless there's no other option for teleportation.
/datum/teleport/proc/start(ateleatom, adestination, aprecision = 0, afteleport = 1, aeffectin = null, aeffectout = null, asoundin = null, asoundout = null, bypass_area_flag = FALSE, safe_turf_pick = FALSE)
/datum/teleport/proc/start(ateleatom, adestination, aprecision = 0, afteleport = 1, aeffectin = null, aeffectout = null, asoundin = null, asoundout = null, bypass_area_flag = FALSE, safe_turf_pick = FALSE, do_effect = FALSE)
if(!initTeleport(arglist(args)))
return 0
return 1
/datum/teleport/proc/initTeleport(ateleatom, adestination, aprecision, afteleport, aeffectin, aeffectout, asoundin, asoundout, bypass_area_flag = FALSE, safe_turf_pick = FALSE)
/datum/teleport/proc/initTeleport(ateleatom, adestination, aprecision, afteleport, aeffectin, aeffectout, asoundin, asoundout, bypass_area_flag = FALSE, safe_turf_pick = FALSE, do_effect = FALSE)
if(!setTeleatom(ateleatom))
return 0
if(!setDestination(adestination))
@@ -51,7 +52,8 @@
safe_turf_first = safe_turf_pick //before precision for bag of holding interference
if(!setPrecision(aprecision))
return 0
setEffects(aeffectin,aeffectout)
if(do_effect)
setEffects(aeffectin, aeffectout)
setForceTeleport(afteleport)
setSounds(asoundin,asoundout)
ignore_area_flag = bypass_area_flag
+2 -2
View File
@@ -242,10 +242,10 @@
/obj/effect/anomaly/bluespace/anomalyEffect()
..()
for(var/mob/living/M in range(4, src))
do_teleport(M, locate(M.x, M.y, M.z), 4)
do_teleport(M, locate(M.x, M.y, M.z), 4, do_effect = drops_core)
for(var/obj/O in range (4, src))
if(!O.anchored && O.invisibility == 0 && prob(50))
do_teleport(O, locate(O.x, O.y, O.z), 6)
do_teleport(O, locate(O.x, O.y, O.z), 6, do_effect = drops_core )
/obj/effect/anomaly/bluespace/Bumped(atom/movable/AM)
if(isliving(AM))