mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-23 03:57:48 +01:00
Make Singulo Stable Again (#4521)
* Make Singulo Stable Again * Prevents emitter beam effects from being pulled by singulo. Now watch them hit the field gens. * Prevent singulo from consuming the PA particle effects. It already gets fed by impact, don't try to eat them. * Improve the Setup Singularity debug verb to do more better setup (including PA) * Fix the energy dissipation values so that singularity does not just keep on growing even when setup properly. * Enhance singularity proc/eat() * Use `var/simulated` as a more generic way to ignore lighting overlays etc * Remove redundant code in the rest of the proc body. * Slight optimization: avoiding typecheck in loop over return from orange()
This commit is contained in:
@@ -47,7 +47,7 @@
|
||||
|
||||
/obj/singularity/Destroy()
|
||||
processing_objects -= src
|
||||
..()
|
||||
return ..()
|
||||
|
||||
/obj/singularity/attack_hand(mob/user as mob)
|
||||
consume(user)
|
||||
@@ -169,7 +169,7 @@
|
||||
pixel_y = -64
|
||||
grav_pull = 8
|
||||
consume_range = 2
|
||||
dissipate_delay = 10
|
||||
dissipate_delay = 4
|
||||
dissipate_track = 0
|
||||
dissipate_strength = 20
|
||||
overlays = 0
|
||||
@@ -267,19 +267,15 @@
|
||||
return 1
|
||||
|
||||
/obj/singularity/proc/eat()
|
||||
for(var/atom/X in orange(grav_pull, src))
|
||||
for(var/T in orange(grav_pull, src))
|
||||
var/atom/X = T
|
||||
if(!X.simulated)
|
||||
continue
|
||||
var/dist = get_dist(X, src)
|
||||
var/obj/singularity/S = src
|
||||
if(!istype(src))
|
||||
return
|
||||
if(dist > consume_range)
|
||||
X.singularity_pull(S, current_size)
|
||||
else if(dist <= consume_range)
|
||||
X.singularity_pull(src, current_size)
|
||||
else
|
||||
consume(X)
|
||||
|
||||
//for (var/turf/T in trange(grav_pull, src)) //TODO: Create a similar trange for orange to prevent snowflake of self check.
|
||||
// consume(T)
|
||||
|
||||
return
|
||||
|
||||
/obj/singularity/proc/consume(const/atom/A)
|
||||
|
||||
Reference in New Issue
Block a user