mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 20:16:55 +01:00
Volcanic Activity Fixes (#29552)
* fixes * Update code/datums/weather/weather_types/lavaland_weather.dm Co-authored-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> Signed-off-by: Kyani <65205627+EmeraldCandy@users.noreply.github.com> --------- Signed-off-by: Kyani <65205627+EmeraldCandy@users.noreply.github.com> Co-authored-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>
This commit is contained in:
co-authored by
PollardTheDragon
parent
174a68a507
commit
ec071cddae
@@ -171,8 +171,12 @@
|
||||
var/hits = 0
|
||||
var/target
|
||||
for(var/turf/T in get_area_turfs(/area/lavaland/surface/outdoors))
|
||||
if(istype(T, /turf/simulated/floor/)) // dont waste our time hitting walls
|
||||
if(istype(get_area(T), /area/lavaland/surface/outdoors/outpost/no_boulder))
|
||||
continue // No hitting the no boulder area
|
||||
if(istype(T, /turf/simulated/floor)) // dont waste our time hitting walls
|
||||
valid_targets += T
|
||||
if(isnull(valid_targets)) // prevents a runtime when coding without lavaland enabled. Or theres somehow ZERO turfs.
|
||||
return
|
||||
while(hits <= 150 && length(valid_targets)) //sling a bunch of rocks around the map
|
||||
target = pick(valid_targets)
|
||||
new /obj/effect/temp_visual/rock_target(target)
|
||||
@@ -186,6 +190,8 @@
|
||||
sleep(ROCKFALL_DELAY)
|
||||
for(var/mob/M in GLOB.player_list)
|
||||
var/turf/M_turf = get_turf(M)
|
||||
if(isnull(target))
|
||||
return
|
||||
if(M_turf.z == target.z)
|
||||
M.playsound_local(target, 'sound/effects/explosionfar.ogg', 50, 1, get_rand_frequency(), distance_multiplier = 0)
|
||||
shake_camera(M, 2, 4)
|
||||
@@ -228,8 +234,8 @@
|
||||
sleep(duration)
|
||||
T = get_turf(src)
|
||||
var/turf_area = get_area(T)
|
||||
if(ispath(turf_area, /area/shuttle)) //prevent hitting the shuttle when it moves
|
||||
log_debug("we hit a shuttle area. breaking rock")
|
||||
if(istype(turf_area, /area/shuttle)) // prevent hitting the shuttle when it moves
|
||||
log_debug("A rockfall has somehow struck at [x], [y].")
|
||||
qdel(src)
|
||||
return
|
||||
playsound(T, 'sound/effects/break_stone.ogg', 80, TRUE)
|
||||
@@ -246,7 +252,7 @@
|
||||
L.gib()
|
||||
if(!islava(T) && !istype(T, /turf/simulated/floor/chasm)) // Splash harmlessly into the lava pools
|
||||
for(var/obj/structure/thing in T.contents) // dont cover the tendrils
|
||||
if(thing.name == "necropolis tendril")
|
||||
if(istype(thing, /obj/structure/spawner/lavaland))
|
||||
return
|
||||
T.ChangeTurf(/turf/simulated/mineral/random/high_chance/volcanic)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user