[READY FOR REVIEW] Lava land generation overhaul / variety (#21838)

* she lavas on my land till I chasm?

* need this

* whoops

* qwerty you are a dumbass

* now with 12 more maps per map

* repaths mesons, advanced mesons / meson implants show chasms

* more stuff

* range not radius dipshit

* sprites yipee

* define it

* undo mesons

* removes things I missed

* Apply suggestions from code review

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* I'm lavaing it

---------

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>
This commit is contained in:
Qwertytoforty
2023-09-01 22:40:39 +01:00
committed by GitHub
co-authored by Henri215
parent 100a9d18b6
commit 8803f536b7
40 changed files with 1079 additions and 80 deletions
+17
View File
@@ -122,6 +122,7 @@
preloadRuinTemplates()
preloadShelterTemplates()
preloadShuttleTemplates()
preloadBridgeTemplates()
preloadEventTemplates()
/proc/preloadRuinTemplates()
@@ -170,6 +171,22 @@
GLOB.shuttle_templates[S.shuttle_id] = S
GLOB.map_templates[S.shuttle_id] = S
/proc/preloadBridgeTemplates()
for(var/item in subtypesof(/datum/map_template/ruin/bridge/horizontal))
var/datum/map_template/ruin/bridge/horizontal/horizontal_type = item
if(!(initial(horizontal_type.suffix)))
continue
var/datum/map_template/ruin/bridge/horizontal/S = new horizontal_type()
GLOB.bridge_horizontal_templates[S.suffix] = S
GLOB.map_templates[S.suffix] = S
for(var/item in subtypesof(/datum/map_template/ruin/bridge/vertical))
var/datum/map_template/ruin/bridge/horizontal/vertical_type = item
if(!(initial(vertical_type.suffix)))
continue
var/datum/map_template/ruin/bridge/vertical/V = new vertical_type()
GLOB.bridge_vertical_templates[V.suffix] = V
GLOB.map_templates[V.suffix] = V
/proc/preloadEventTemplates()
for(var/item in subtypesof(/datum/map_template/event))
var/datum/map_template/event/event_type = item
+82
View File
@@ -0,0 +1,82 @@
/datum/map_template/ruin/bridge
prefix = "_maps/map_files/RandomRuins/LavaRuins/chasm_bridges/"
ci_exclude = /datum/map_template/ruin/bridge
/datum/map_template/ruin/bridge/horizontal
ci_exclude = /datum/map_template/ruin/bridge/horizontal
/datum/map_template/ruin/bridge/horizontal/one
name = "Horizontal Bridge One"
suffix = "lavaland_bridge_horizontal_1.dmm"
/datum/map_template/ruin/bridge/horizontal/two
name = "Horizontal Bridge Two"
suffix = "lavaland_bridge_horizontal_2.dmm"
/datum/map_template/ruin/bridge/horizontal/three
name = "Horizontal Bridge Three"
suffix = "lavaland_bridge_horizontal_3.dmm"
/datum/map_template/ruin/bridge/horizontal/four
name = "Horizontal Bridge Four"
suffix = "lavaland_bridge_horizontal_4.dmm"
/datum/map_template/ruin/bridge/horizontal/five
name = "Horizontal Bridge Five"
suffix = "lavaland_bridge_horizontal_5.dmm"
/datum/map_template/ruin/bridge/horizontal/six
name = "Horizontal Bridge Six"
suffix = "lavaland_bridge_horizontal_6.dmm"
/datum/map_template/ruin/bridge/vertical
ci_exclude = /datum/map_template/ruin/bridge/vertical
/datum/map_template/ruin/bridge/vertical/one
name = "Vertical Bridge One"
suffix = "lavaland_bridge_vertical_1.dmm"
/datum/map_template/ruin/bridge/vertical/two
name = "Vertical Bridge Two"
suffix = "lavaland_bridge_vertical_2.dmm"
/datum/map_template/ruin/bridge/vertical/three
name = "Vertical Bridge Three"
suffix = "lavaland_bridge_vertical_3.dmm"
/datum/map_template/ruin/bridge/vertical/four
name = "Vertical Bridge Four"
suffix = "lavaland_bridge_vertical_4.dmm"
/datum/map_template/ruin/bridge/vertical/five
name = "Vertical Bridge Five"
suffix = "lavaland_bridge_vertical_5.dmm"
/datum/map_template/ruin/bridge/vertical/six
name = "Vertical Bridge Six"
suffix = "lavaland_bridge_vertical_6.dmm"
/obj/effect/spawner/bridge
name = "Bridge spawner"
var/datum/map_template/ruin/bridge/template
/obj/effect/spawner/bridge/Initialize(mapload)
. = ..()
var/turf/east = locate(x + 3, y, z)
var/turf/west = locate(x - 3, y, z)
var/turf/north = locate(x, y + 3, z)
var/turf/south = locate(x, y - 3, z)
var/turf/e1 = locate(x + 1, y, z)
var/turf/w1 = locate(x - 1, y, z)
var/turf/n1 = locate(x, y + 1, z)
var/turf/s1 = locate(x, y - 1, z)
if((ismineralturf(east) || istype(east, /turf/simulated/floor/plating/asteroid)) && (ismineralturf(west) || istype(west, /turf/simulated/floor/plating/asteroid)) && !(ismineralturf(n1) || istype(n1, /turf/simulated/floor/plating/asteroid)) && !(ismineralturf(s1) || istype(s1, /turf/simulated/floor/plating/asteroid)))
template = GLOB.bridge_horizontal_templates[pick("lavaland_bridge_horizontal_1.dmm", "lavaland_bridge_horizontal_2.dmm", "lavaland_bridge_horizontal_3.dmm", "lavaland_bridge_horizontal_4.dmm", "lavaland_bridge_horizontal_5.dmm", "lavaland_bridge_horizontal_6.dmm")]
template.load(loc, centered = TRUE)
else if((ismineralturf(north) || istype(north, /turf/simulated/floor/plating/asteroid)) && (ismineralturf(south) || istype(south, /turf/simulated/floor/plating/asteroid)) && !(ismineralturf(e1) || istype(e1, /turf/simulated/floor/plating/asteroid)) && !(ismineralturf(w1) || istype(w1, /turf/simulated/floor/plating/asteroid)))
template = GLOB.bridge_vertical_templates[pick("lavaland_bridge_vertical_1.dmm", "lavaland_bridge_vertical_2.dmm", "lavaland_bridge_vertical_3.dmm", "lavaland_bridge_vertical_4.dmm", "lavaland_bridge_vertical_5.dmm", "lavaland_bridge_vertical_6.dmm")]
template.load(loc, centered = TRUE)
return INITIALIZE_HINT_QDEL