Merge pull request #11279 from Hatterhat/tg-45232-lavariver
tgstation 45232 - lava rivers can no longer be plasma'd for basalt
This commit is contained in:
@@ -23,6 +23,10 @@
|
||||
/turf/open/lava/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent)
|
||||
return
|
||||
|
||||
/turf/open/lava/Melt()
|
||||
to_be_destroyed = FALSE
|
||||
return src
|
||||
|
||||
/turf/open/lava/acid_act(acidpwr, acid_volume)
|
||||
return
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
#define RIVERGEN_SAFETY_LOCK 1000000
|
||||
|
||||
/proc/spawn_rivers(target_z, nodes = 4, turf_type = /turf/open/lava/smooth/lava_land_surface, whitelist_area = /area/lavaland/surface/outdoors/unexplored, min_x = RANDOM_LOWER_X, min_y = RANDOM_LOWER_Y, max_x = RANDOM_UPPER_X, max_y = RANDOM_UPPER_Y)
|
||||
/proc/spawn_rivers(target_z, nodes = 4, turf_type = /turf/open/lava/smooth/lava_land_surface, whitelist_area = /area/lavaland/surface/outdoors/unexplored, min_x = RANDOM_LOWER_X, min_y = RANDOM_LOWER_Y, max_x = RANDOM_UPPER_X, max_y = RANDOM_UPPER_Y, new_baseturfs)
|
||||
var/list/river_nodes = list()
|
||||
var/num_spawned = 0
|
||||
var/list/possible_locs = block(locate(min_x, min_y, target_z), locate(max_x, max_y, target_z))
|
||||
@@ -28,7 +28,7 @@
|
||||
continue
|
||||
W.connected = 1
|
||||
var/turf/cur_turf = get_turf(W)
|
||||
cur_turf.ChangeTurf(turf_type, null, CHANGETURF_IGNORE_AIR)
|
||||
cur_turf.ChangeTurf(turf_type, new_baseturfs, CHANGETURF_IGNORE_AIR)
|
||||
var/turf/target_turf = get_turf(pick(river_nodes - W))
|
||||
if(!target_turf)
|
||||
break
|
||||
@@ -57,7 +57,7 @@
|
||||
cur_turf = get_step(cur_turf, cur_dir)
|
||||
continue
|
||||
else
|
||||
var/turf/river_turf = cur_turf.ChangeTurf(turf_type, null, CHANGETURF_IGNORE_AIR)
|
||||
var/turf/river_turf = cur_turf.ChangeTurf(turf_type, new_baseturfs, CHANGETURF_IGNORE_AIR)
|
||||
river_turf.Spread(25, 11, whitelist_area)
|
||||
|
||||
for(var/WP in river_nodes)
|
||||
@@ -93,16 +93,16 @@
|
||||
|
||||
for(var/F in cardinal_turfs) //cardinal turfs are always changed but don't always spread
|
||||
var/turf/T = F
|
||||
if(!istype(T, logged_turf_type) && T.ChangeTurf(type, null, CHANGETURF_IGNORE_AIR) && prob(probability))
|
||||
if(!istype(T, logged_turf_type) && T.ChangeTurf(type, baseturfs, CHANGETURF_IGNORE_AIR) && prob(probability))
|
||||
T.Spread(probability - prob_loss, prob_loss, whitelisted_area)
|
||||
|
||||
for(var/F in diagonal_turfs) //diagonal turfs only sometimes change, but will always spread if changed
|
||||
var/turf/T = F
|
||||
if(!istype(T, logged_turf_type) && prob(probability) && T.ChangeTurf(type, null, CHANGETURF_IGNORE_AIR))
|
||||
if(!istype(T, logged_turf_type) && prob(probability) && T.ChangeTurf(type, baseturfs, CHANGETURF_IGNORE_AIR))
|
||||
T.Spread(probability - prob_loss, prob_loss, whitelisted_area)
|
||||
else if(ismineralturf(T))
|
||||
var/turf/closed/mineral/M = T
|
||||
M.ChangeTurf(M.turf_type, null, CHANGETURF_IGNORE_AIR)
|
||||
M.ChangeTurf(M.turf_type, M.baseturfs, CHANGETURF_IGNORE_AIR)
|
||||
|
||||
|
||||
#undef RANDOM_UPPER_X
|
||||
|
||||
Reference in New Issue
Block a user