mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-14 09:35:30 +01:00
museum away mission (#81208)
## About The Pull Request adds a new gateway map, the Nanotrasen Museum it is filled with """"Mannequins"""" and Common Core lore im not putting the preview here because you really should explore it yourself but if youre that curious i think the Checks tab in mapdiffbot would have it this gateway map contains no combat unless you count falling into chasms because you did not carry a light or going into the boarded room with no loot or any incentive with obvious signs that there is the sole enemy on the map in there the loot is the lore ok thanks also makes mines detonate if theyre detonated by a non-mob im pretty sure this couldnt have been intentional trams stop chasms and also the relevant items <details> <summary>on second thought if you want spoilers check this</summary>  </details> ## Why It's Good For The Game more gateway maps = good ## Changelog 🆑 add: nanotrasen museum gateway map /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,131 @@
|
||||
/obj/machinery/computer/terminal/museum
|
||||
name = "exhibit info terminal"
|
||||
desc = "A relatively low-tech info board. Not as low-tech as an actual sign though. Appears to be quite old."
|
||||
upperinfo = "Nanotrasen Museum Exhibit Info"
|
||||
icon_state = "plaque"
|
||||
icon_screen = "plaque_screen"
|
||||
icon_keyboard = null
|
||||
|
||||
/obj/effect/replica_spawner //description and name are intact, better to make a new fluff object for stuff that is not actually ingame as an object
|
||||
name = "replica creator"
|
||||
desc = "This creates a fluff object that looks exactly like the input, but like obviously a replica. Do not for the love of god use with stuff that has Initialize side effects."
|
||||
icon = 'icons/hud/screen_gen.dmi'
|
||||
icon_state = "x2"
|
||||
invisibility = INVISIBILITY_ABSTRACT //nope, can't see this
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
opacity = FALSE
|
||||
var/replica_path = /obj/structure/fluff
|
||||
var/target_path
|
||||
var/obvious_replica = TRUE
|
||||
|
||||
/obj/effect/replica_spawner/Initialize(mapload)
|
||||
. = ..()
|
||||
if(isnull(target_path))
|
||||
return INITIALIZE_HINT_QDEL //no use to make a replica of null
|
||||
var/atom/appearance_object = new target_path
|
||||
var/atom/new_replica = new replica_path(loc)
|
||||
|
||||
new_replica.icon = appearance_object.icon
|
||||
new_replica.icon_state = appearance_object.icon_state
|
||||
new_replica.copy_overlays(appearance_object.appearance, cut_old = TRUE)
|
||||
new_replica.density = appearance_object.density //for like nondense showers and stuff
|
||||
|
||||
new_replica.name = "[appearance_object.name][obvious_replica ? " replica" : ""]"
|
||||
new_replica.desc = "[appearance_object.desc][obvious_replica ? " ..except this one is a replica.": ""]"
|
||||
qdel(appearance_object)
|
||||
qdel(src)
|
||||
return INITIALIZE_HINT_QDEL
|
||||
|
||||
/obj/structure/fluff/dnamod
|
||||
name = "DNA Modifier"
|
||||
desc = "DNA Manipulator replica. Essentially just a box of cool lights."
|
||||
icon = 'icons/obj/service/hydroponics/equipment.dmi'
|
||||
icon_state = "dnamod"
|
||||
density = TRUE
|
||||
|
||||
/obj/structure/fluff/preserved_borer
|
||||
name = "preserved borer exhibit"
|
||||
desc = "A preserved cortical borer. Probably been there long enough to not last long outside the exhibit."
|
||||
icon = 'icons/obj/structures.dmi'
|
||||
icon_state = "preservedborer"
|
||||
density = TRUE
|
||||
|
||||
/obj/structure/fluff/balloon_nuke
|
||||
name = "nuclear balloon explosive"
|
||||
desc = "You probably shouldn't stick around to see if this is inflated."
|
||||
icon = /obj/machinery/nuclearbomb::icon
|
||||
icon_state = /obj/machinery/nuclearbomb::icon_state
|
||||
density = TRUE
|
||||
max_integrity = 5 //one tap
|
||||
|
||||
/obj/structure/fluff/balloon_nuke/atom_destruction()
|
||||
playsound(loc, 'sound/effects/cartoon_pop.ogg', 75, vary = TRUE)
|
||||
..()
|
||||
|
||||
/obj/structure/fluff/fake_camera
|
||||
name = /obj/machinery/camera::name
|
||||
desc = /obj/machinery/camera::desc
|
||||
icon = /obj/machinery/camera::icon
|
||||
icon_state = /obj/machinery/camera::icon_state
|
||||
|
||||
/obj/structure/fluff/fake_scrubber
|
||||
name = /obj/machinery/atmospherics/components/unary/vent_scrubber::name
|
||||
desc = /obj/machinery/atmospherics/components/unary/vent_scrubber::desc
|
||||
icon = /obj/machinery/atmospherics/components/unary/vent_scrubber::icon
|
||||
layer = /obj/machinery/atmospherics/components/unary/vent_scrubber::layer
|
||||
plane = FLOOR_PLANE
|
||||
icon_state = "scrub_on"
|
||||
|
||||
/obj/structure/fluff/fake_vent
|
||||
name = /obj/machinery/atmospherics/components/unary/vent_pump::name
|
||||
desc = /obj/machinery/atmospherics/components/unary/vent_pump::desc
|
||||
icon = /obj/machinery/atmospherics/components/unary/vent_pump::icon
|
||||
layer = /obj/machinery/atmospherics/components/unary/vent_scrubber::layer
|
||||
plane = FLOOR_PLANE
|
||||
icon_state = "vent_out"
|
||||
|
||||
/turf/open/mirage
|
||||
icon = 'icons/turf/floors.dmi'
|
||||
icon_state = "mirage"
|
||||
invisibility = INVISIBILITY_ABSTRACT
|
||||
/// target turf x and y are offsets from our location instead of a direct coordinate
|
||||
var/offset = TRUE
|
||||
/// tile range that we show, 2 means that the target tile and two tiles ahead of it in our direction will show
|
||||
var/range
|
||||
var/target_turf_x = 0
|
||||
var/target_turf_y = 0
|
||||
/// if not specified, uses our Z
|
||||
var/target_turf_z
|
||||
|
||||
/turf/open/mirage/Initialize(mapload)
|
||||
. = ..()
|
||||
if(isnull(range))
|
||||
range = world.view
|
||||
var/used_z = target_turf_z || z //if target z is not defined, use ours
|
||||
var/turf/target = locate(offset ? target_turf_x + x : target_turf_x, offset ? target_turf_y + y : target_turf_y, used_z)
|
||||
AddElement(/datum/element/mirage_border, target, dir, range)
|
||||
|
||||
/obj/effect/mapping_helpers/ztrait_injector/museum
|
||||
traits_to_add = list(ZTRAIT_NOPARALLAX = TRUE, ZTRAIT_NOXRAY = TRUE, ZTRAIT_NOPHASE = TRUE, ZTRAIT_BASETURF = /turf/open/indestructible/plating, ZTRAIT_SECRET = TRUE)
|
||||
|
||||
/obj/effect/smooths_with_walls
|
||||
name = "effect that smooths with walls"
|
||||
desc = "to supplement /turf/open/mirage."
|
||||
icon = 'icons/hud/screen_gen.dmi'
|
||||
icon_state = "x2"
|
||||
invisibility = INVISIBILITY_ABSTRACT
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
smoothing_flags = SMOOTH_BITMASK
|
||||
smoothing_groups = SMOOTH_GROUP_WALLS + SMOOTH_GROUP_CLOSED_TURFS
|
||||
|
||||
/obj/item/paper/fluff/museum/noend
|
||||
name = "scrambled note"
|
||||
default_raw_text = {"this place,
|
||||
<br>god whose idea was to build a museum in the void in the middle of god knows where there is no reason we should have done this
|
||||
<br>and those mannequins why do they stare back where the fuck did you get these from
|
||||
<br>how would we even get visitors here
|
||||
<br>sometimes i can catch them moving
|
||||
<br>
|
||||
<br>we should have never come here"}
|
||||
Reference in New Issue
Block a user