Mapping May Event - NAS Trurl Dioramas! (#31961)

* initial commit

* adds a blank diorama and updates the diorama template file

* linter

* linter pt. 2

* tweaks some diorama areas, adds some more dioramas, and moves the diorama location on the Trurl

* adds alfie's "making decisions" diorama

* Revert "adds alfie's "making decisions" diorama"

This reverts commit a208768570.

* thank you linux for making a faux dmm file

* fixes some areas and fixes the position of the diorama area
This commit is contained in:
Hayden Redacted
2026-08-08 21:01:42 +00:00
committed by GitHub
parent 07bfce449d
commit cc19f9b6e8
11 changed files with 1475 additions and 150 deletions
+58
View File
@@ -0,0 +1,58 @@
/datum/map_template/diorama
var/description
var/diorama_id
/datum/map_template/diorama/snowy
name = "Snowy Diorama"
description = "'Santa's Secret Surprise' by haydenredacted"
mappath = "_maps/map_files/dioramas/snowy_diorama.dmm"
/datum/map_template/diorama/lavaland
name = "Lavaland Diorama"
description = "'A Day on Lavaland' by haydenredacted"
mappath = "_maps/map_files/dioramas/lavaland_diorama.dmm"
/datum/map_template/diorama/byod
name = "Build Your Own Diorama"
description = "'Build Your Own Diorama' by haydenredacted"
mappath = "_maps/map_files/dioramas/byod_diorama.dmm"
/obj/item/paper/diorama/byod
name = "screw you, i quit, make your own damn diorama"
/datum/map_template/diorama/vet
name = "Vet Visit Diorama"
description = "'Vet Visit Diorama' by haydenredacted"
mappath = "_maps/map_files/dioramas/vet_diorama.dmm"
/datum/map_template/diorama/borg
name = "A Cyborg's Creation Diorama"
description = "'A Cyborg's Creation Diorama' by haydenredacted"
mappath = "_maps/map_files/dioramas/borg_diorama.dmm"
/obj/structure/diorama_sign
name = "Diorama Sign"
desc = ""
icon_state = "floor_sign"
/// Areas are preferred to be made here instead of using pre-existing ones so nothing is connected to anything on a non CC z-level.
/area/centcom/diorama
name = "Blank Diorama"
dynamic_lighting = DYNAMIC_LIGHTING_ENABLED
/area/centcom/diorama/borg
name = "Borg Diorama"
/area/centcom/diorama/lavaland
name = "Lavaland Diorama"
icon_state = "explored"
/area/centcom/diorama/snowy
name = "Snowy Diorama"
icon_state = "yellow"
/area/centcom/diorama/byod
name = "Build Your Own Diorama"
/area/centcom/diorama/vet
name = "Vet Visit Diorama"
+20
View File
@@ -136,6 +136,7 @@
preloadBridgeTemplates()
preloadEventTemplates()
preloadLazyTemplates()
preloadDiorama()
/proc/preloadRuinTemplates()
// Merge the active lists together
@@ -218,3 +219,22 @@
var/datum/map_template/lazy/L = new lazy_type()
GLOB.map_templates[L.name] = L
/proc/preloadDiorama()
var/list/valid_dioramas = list()
for(var/item in subtypesof(/datum/map_template/diorama))
var/datum/map_template/diorama/diorama_type = item
if(!initial(diorama_type.mappath))
continue
var/datum/map_template/diorama/E = new diorama_type()
GLOB.map_templates[E.diorama_id] = E
valid_dioramas += E
if(length(valid_dioramas))
var/datum/map_template/diorama/chosen = pick(valid_dioramas)
var/turf/T = locate(108, 115, 1)
if(chosen.fits_in_map_bounds(T))
chosen.load(T)
for(var/obj/structure/diorama_sign/S in world)
S.desc = chosen.description