Merge pull request #5416 from Citadel-Station-13/upstream-merge-35188

[MIRROR] Adds a SCP-294 ruin
This commit is contained in:
CitadelStationBot
2018-02-11 07:38:37 -06:00
committed by GitHub
12 changed files with 1626 additions and 31 deletions
+670
View File
@@ -0,0 +1,670 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"aa" = (
/turf/template_noop,
/area/template_noop)
"ab" = (
/turf/closed/wall/r_wall,
/area/ruin/space/has_grav/powered/scp_294)
"ac" = (
/obj/structure/lattice,
/turf/template_noop,
/area/space/nearstation)
"ad" = (
/turf/open/floor/plating/airless{
icon_state = "platingdmg2"
},
/area/ruin/space/has_grav/powered/scp_294)
"ae" = (
/obj/structure/lattice,
/obj/item/soap,
/turf/template_noop,
/area/space/nearstation)
"af" = (
/obj/structure/sink{
dir = 4;
pixel_x = 14
},
/obj/structure/mirror{
pixel_x = 24
},
/turf/open/floor/plasteel/freezer/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ag" = (
/obj/machinery/light/small,
/turf/open/floor/plasteel/freezer/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ah" = (
/turf/open/floor/plasteel/freezer/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ai" = (
/obj/machinery/door/airlock{
name = "Bathroom"
},
/turf/open/floor/plasteel/freezer/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aj" = (
/obj/machinery/porta_turret/syndicate/energy/heavy{
desc = "An energy blaster auto-turret designed to contain and terminate in case of a breach in security.";
faction = "scp";
mode = 1;
name = "emergency containment breach turret"
},
/obj/effect/turf_decal/box,
/turf/open/floor/plasteel/dark{
initial_gas_mix = "TEMP=2.7"
},
/area/ruin/space/has_grav/powered/scp_294)
"ak" = (
/obj/effect/turf_decal/tile/beige/corner{
dir = 9
},
/obj/effect/turf_decal/stripes/line{
dir = 8
},
/obj/effect/spawner/trap,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"al" = (
/obj/structure/table,
/obj/machinery/microwave,
/obj/effect/turf_decal/tile/beige/side{
dir = 1
},
/obj/machinery/light{
dir = 1
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"am" = (
/obj/structure/table,
/obj/effect/turf_decal/tile/beige/side{
dir = 1
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"an" = (
/obj/effect/turf_decal/tile/beige/side{
dir = 1
},
/obj/machinery/chem_dispenser/scp_294,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ao" = (
/obj/effect/turf_decal/tile/beige/side{
dir = 1
},
/obj/machinery/vending/snack,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ap" = (
/obj/structure/table,
/obj/effect/turf_decal/tile/beige/side{
dir = 1
},
/obj/machinery/light{
dir = 1
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aq" = (
/obj/effect/turf_decal/tile/beige/corner{
dir = 5
},
/obj/effect/turf_decal/stripes/line{
dir = 4
},
/obj/effect/spawner/trap,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ar" = (
/obj/effect/turf_decal/tile/beige/corner{
dir = 9
},
/obj/effect/turf_decal/stripes/line{
dir = 1
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"as" = (
/obj/effect/decal/cleanable/blood/old,
/obj/effect/turf_decal/tile/beige/corner{
dir = 8
},
/obj/effect/turf_decal/stripes/corner{
dir = 4
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"at" = (
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"au" = (
/obj/effect/mob_spawn/human/corpse/nanotrasensoldier{
id_job = "Level Three Clearance Guard";
name = "Clearance Level Three Officer";
oxy_damage = 136
},
/obj/effect/decal/cleanable/blood/old,
/obj/effect/turf_decal/tile/beige/corner{
dir = 4
},
/obj/effect/turf_decal/stripes/corner{
dir = 8
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"av" = (
/obj/effect/turf_decal/tile/beige/corner{
dir = 5
},
/obj/effect/turf_decal/stripes/line{
dir = 1
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aw" = (
/obj/structure/lattice,
/obj/item/shard,
/turf/template_noop,
/area/space/nearstation)
"ax" = (
/obj/effect/turf_decal/tile/beige/side{
dir = 8
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ay" = (
/obj/effect/mob_spawn/human/corpse/nanotrasensoldier{
id_job = "Level Three Clearance Guard";
name = "Clearance Level Three Officer";
oxy_damage = 136
},
/obj/effect/decal/cleanable/blood/old,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"az" = (
/obj/effect/decal/cleanable/blood/old,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aA" = (
/obj/effect/turf_decal/tile/beige/corner{
dir = 9
},
/mob/living/simple_animal/hostile/mimic{
faction = list("mimic","scp")
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aB" = (
/obj/effect/turf_decal/tile/beige/side{
dir = 1
},
/obj/effect/spawner/trap,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aC" = (
/obj/effect/turf_decal/tile/beige/corner{
dir = 5
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aD" = (
/obj/item/trash/plate,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aE" = (
/obj/effect/turf_decal/tile/beige/side{
dir = 4
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aF" = (
/obj/effect/spawner/structure/window,
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aG" = (
/obj/structure/girder,
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aH" = (
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aI" = (
/obj/structure/fluff/broken_flooring{
icon_state = "corner";
dir = 8
},
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aJ" = (
/obj/structure/table,
/obj/item/trash/sosjerky,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aK" = (
/obj/item/chair,
/obj/effect/turf_decal/tile/beige/side{
dir = 8
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aL" = (
/obj/structure/chair/office{
dir = 4
},
/obj/effect/turf_decal/tile/beige/side{
dir = 4
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aM" = (
/obj/structure/table,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aN" = (
/obj/effect/turf_decal/tile/beige/side{
dir = 4
},
/obj/structure/chair/office{
dir = 8
},
/obj/item/shard,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aO" = (
/obj/item/stack/rods,
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aP" = (
/obj/structure/fluff/broken_flooring{
icon_state = "plating";
name = "broken plating"
},
/obj/structure/lattice,
/turf/template_noop,
/area/space/nearstation)
"aQ" = (
/obj/structure/table_frame,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aR" = (
/turf/open/floor/plating/airless{
icon_state = "platingdmg1"
},
/area/ruin/space/has_grav/powered/scp_294)
"aS" = (
/obj/item/stack/tile/plasteel,
/mob/living/simple_animal/hostile/mimic{
faction = list("mimic","scp")
},
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aT" = (
/obj/structure/grille/broken,
/obj/item/stack/rods,
/turf/open/floor/plating/airless{
icon_state = "platingdmg1"
},
/area/ruin/space/has_grav/powered/scp_294)
"aU" = (
/obj/item/shard,
/turf/open/floor/plating/airless{
icon_state = "platingdmg1"
},
/area/ruin/space/has_grav/powered/scp_294)
"aV" = (
/obj/structure/lattice,
/obj/structure/fluff/broken_flooring{
icon_state = "singular"
},
/turf/template_noop,
/area/space/nearstation)
"aW" = (
/obj/item/trash/cheesie,
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aX" = (
/obj/effect/turf_decal/tile/beige/side{
dir = 4
},
/obj/item/chair,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aY" = (
/obj/item/stack/sheet/metal,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"aZ" = (
/obj/effect/mob_spawn/human/corpse/assistant,
/obj/structure/table_frame,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"ba" = (
/obj/structure/grille/broken,
/obj/item/shard,
/obj/item/stack/rods,
/turf/open/floor/plating/airless{
icon_state = "platingdmg1"
},
/area/ruin/space/has_grav/powered/scp_294)
"bb" = (
/obj/item/stack/rods,
/turf/open/floor/plating/airless{
icon_state = "platingdmg1"
},
/area/ruin/space/has_grav/powered/scp_294)
"bc" = (
/obj/item/stack/tile/plasteel,
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"bd" = (
/obj/structure/lattice,
/obj/structure/fluff/broken_flooring{
icon_state = "singular";
dir = 4
},
/turf/template_noop,
/area/space/nearstation)
"be" = (
/obj/structure/fluff/broken_flooring{
icon_state = "pile";
dir = 4
},
/turf/template_noop,
/area/template_noop)
"bf" = (
/obj/item/trash/chips,
/turf/template_noop,
/area/template_noop)
"bg" = (
/obj/effect/spawner/trap,
/turf/open/floor/plating/airless{
icon_state = "platingdmg2"
},
/area/ruin/space/has_grav/powered/scp_294)
"bi" = (
/obj/effect/spawner/trap,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
"bj" = (
/obj/effect/spawner/trap,
/turf/open/floor/plating/airless,
/area/ruin/space/has_grav/powered/scp_294)
"bk" = (
/obj/structure/table_frame,
/obj/effect/spawner/trap,
/turf/open/floor/plasteel/airless,
/area/ruin/space/has_grav/powered/scp_294)
(1,1,1) = {"
aa
aa
aa
aa
aa
ac
aa
aa
aa
aa
aa
aa
aa
aa
"}
(2,1,1) = {"
aa
aa
aa
aa
aa
ac
ac
aa
aa
aa
aa
aa
aa
aa
"}
(3,1,1) = {"
aa
aa
aa
ab
ab
ab
ab
aG
ac
aV
aa
aa
aa
aa
"}
(4,1,1) = {"
aa
aa
aa
ab
aj
ar
ax
bj
aP
ac
aa
aa
aa
be
"}
(5,1,1) = {"
aa
aa
ac
ab
ak
as
ay
aI
aH
ac
ac
ac
aa
aa
"}
(6,1,1) = {"
aa
ac
ac
ab
al
at
az
aJ
aQ
bj
ad
aa
aa
bf
"}
(7,1,1) = {"
ab
ab
ab
ab
am
at
aA
aK
aR
aR
ac
ac
aa
aa
"}
(8,1,1) = {"
ac
ac
ad
ab
an
at
aB
at
aS
aW
aH
aP
aa
aa
"}
(9,1,1) = {"
aa
ae
ac
ab
ao
at
aC
aL
aE
aX
aE
ad
bg
aa
"}
(10,1,1) = {"
ac
bg
ag
ab
ap
bi
az
aM
bk
aY
bc
aR
bd
ac
"}
(11,1,1) = {"
bg
af
ah
ai
aq
au
aD
aM
aM
aZ
aR
ad
aa
aa
"}
(12,1,1) = {"
ab
ab
ab
ab
aj
av
aE
aN
aH
ad
aH
ac
aa
aa
"}
(13,1,1) = {"
aa
aa
aa
ab
ab
ab
aF
aO
aT
ba
ab
ab
aa
aa
"}
(14,1,1) = {"
aa
aa
aa
aa
ac
ac
ac
ad
aU
bb
ac
ac
aa
aa
"}
(15,1,1) = {"
aa
aa
aa
aa
aa
aw
ac
ac
bg
ac
aa
ac
aa
aa
"}
(16,1,1) = {"
aa
aa
aa
aa
aa
aa
ac
aa
aa
aw
aa
aa
aa
aa
"}
(17,1,1) = {"
aa
aa
aa
aa
aa
aa
aa
aa
aa
ac
aa
aa
aa
aa
"}
+7 -1
View File
@@ -269,9 +269,15 @@
name = "Whiteship Dock"
description = "An abandoned but functional vessel parked in deep space, ripe for the taking."
/datum/map_template/ruin/space/scp_294
id = "scp_294"
suffix = "scp_294.dmm"
name = "SCP-294 Containment"
description = "An abandoned asteroid base that contains several EMP-proof turrets, and a valuable artifact. Should you get past the heavy laser turrets, a valuable treasure awaits."
/datum/map_template/ruin/space/cat_experiments
id = "meow"
suffix = "mrow_thats_right.dmm"
name = "Feline-Human Combination Den"
description = "With heated debates over the legality of the catperson and their status in the workforce, there's always a place for the blackmarket to slip in for some cash. Whether the results \
are morally sound or not is another issue entirely."
are morally sound or not is another issue entirely."
+4
View File
@@ -462,4 +462,8 @@
/area/ruin/space/has_grav/listeningstation
name = "Listening Post"
icon_state = "yellow"
/area/ruin/space/has_grav/powered/scp_294
name = "Abandoned SCP-294 Containment"
icon_state = "yellow"
@@ -592,6 +592,7 @@
lethal_projectile_sound = 'sound/weapons/lasercannonfire.ogg'
desc = "An energy blaster auto-turret."
/obj/machinery/porta_turret/syndicate/setup()
return
@@ -0,0 +1,10 @@
/obj/effect/spawner/trap
name = "random trap"
icon = 'icons/obj/hand_of_god_structures.dmi'
icon_state = "trap_rand"
/obj/effect/spawner/trap/Initialize(mapload)
..()
var/new_type = pick(subtypesof(/obj/structure/trap) - typesof(/obj/structure/trap/ctf))
new new_type(get_turf(src))
return INITIALIZE_HINT_QDEL
@@ -318,6 +318,8 @@
/turf/open/floor/plasteel/freezer
icon_state = "freezerfloor"
/turf/open/floor/plasteel/freezer/airless
initial_gas_mix = "TEMP=2.7"
/turf/open/floor/plasteel/bar
icon_state = "bar"
@@ -0,0 +1,84 @@
//////////////////////////////////////////
// SCP 294 //
// //
// This is a child of a chemistry //
// dispenser. Info of how it works at //
// http://www.scp-wiki.net/scp-294 //
// //
//////////////////////////////////////////
/obj/machinery/chem_dispenser/scp_294
name = "\improper strange coffee machine"
desc = "It appears to be a standard coffee vending machine, the only noticeable difference being an entry touchpad with buttons corresponding to a Galactic Common QWERTY keyboard."
icon = 'icons/obj/scp.dmi'
icon_state = "294_bottom"
amount = 10
resistance_flags = INDESTRUCTIBLE | FIRE_PROOF | ACID_PROOF | LAVA_PROOF
var/static/list/shortcuts = list(
"meth" = "methamphetamine",
"tricord" = "tricordrazine"
)
var/mutable_appearance/top_overlay
/obj/machinery/chem_dispenser/scp_294/Initialize()
. = ..()
GLOB.poi_list += src
top_overlay = mutable_appearance(icon, "294_top", layer = ABOVE_MOB_LAYER)
add_overlay(top_overlay)
/obj/machinery/chem_dispenser/scp_294/Destroy()
. = ..()
GLOB.poi_list -= src
QDEL_NULL(top_overlay)
/obj/machinery/chem_dispenser/scp_294/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \
datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state)
ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open)
if(!ui)
ui = new(user, src, ui_key, "scp_294", name, 390, 315, master_ui, state)
ui.open()
/obj/machinery/chem_dispenser/scp_294/ui_act(action, params)
if(..())
return
switch(action)
if("ejectBeaker")
if(beaker)
beaker.forceMove(drop_location())
if(Adjacent(usr) && !issilicon(usr))
usr.put_in_hands(beaker)
beaker = null
cut_overlays()
. = TRUE
if("input")
var/input_reagent = replacetext(lowertext(input("Enter the name of any liquid", "Input") as text), " ", "") //95% of the time, the reagent id is a lowercase/no spaces version of the name
if(shortcuts[input_reagent])
input_reagent = shortcuts[input_reagent]
else
input_reagent = find_reagent(input_reagent)
if(!input_reagent || !GLOB.chemical_reagents_list[input_reagent])
say("OUT OF RANGE")
return
else
if(!beaker)
return
else if(!beaker.reagents && !QDELETED(beaker))
beaker.create_reagents(beaker.volume)
beaker.reagents.add_reagent(input_reagent, 10)
if("makecup")
if(beaker)
return
beaker = new /obj/item/reagent_containers/food/drinks/sillycup(src)
visible_message("<span class='notice'>[src] dispenses a small, paper cup.</span>")
/obj/machinery/chem_dispenser/scp_294/proc/find_reagent(input)
. = FALSE
if(GLOB.chemical_reagents_list[input]) //prefer IDs!
var/datum/reagent/R = GLOB.chemical_reagents_list[input]
if(R.can_synth)
return input
else
for(var/X in GLOB.chemical_reagents_list)
var/datum/reagent/R = GLOB.chemical_reagents_list[X]
if(R.can_synth && input == replacetext(lowertext(R.name), " ", ""))
return X
Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 25 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 905 B

+2
View File
@@ -715,6 +715,7 @@
#include "code\game\objects\effects\spawners\gibspawner.dm"
#include "code\game\objects\effects\spawners\lootdrop.dm"
#include "code\game\objects\effects\spawners\structure.dm"
#include "code\game\objects\effects\spawners\traps.dm"
#include "code\game\objects\effects\spawners\vaultspawner.dm"
#include "code\game\objects\effects\spawners\xeno_egg_delivery.dm"
#include "code\game\objects\effects\temporary_visuals\clockcult.dm"
@@ -2244,6 +2245,7 @@
#include "code\modules\reagents\chemistry\machinery\chem_master.dm"
#include "code\modules\reagents\chemistry\machinery\pandemic.dm"
#include "code\modules\reagents\chemistry\machinery\reagentgrinder.dm"
#include "code\modules\reagents\chemistry\machinery\scp_294.dm"
#include "code\modules\reagents\chemistry\machinery\smoke_machine.dm"
#include "code\modules\reagents\chemistry\reagents\alcohol_reagents.dm"
#include "code\modules\reagents\chemistry\reagents\blob_reagents.dm"
+825 -30
View File
@@ -260,9 +260,9 @@
"integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E="
},
"async-done": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/async-done/-/async-done-1.2.3.tgz",
"integrity": "sha1-bHq8fWHKJ/5vHyujIG6prmCkOYM=",
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/async-done/-/async-done-1.2.4.tgz",
"integrity": "sha512-mxc+yISkb0vjsuvG3dJCIZXzRWjKndQ9Zo9zNDJ1K2wh9eP0E0oGmOWm+4cFOvW4dA0tGFImTW5tQJHCtn1kIQ==",
"requires": {
"end-of-stream": "1.4.0",
"once": "1.4.0",
@@ -280,7 +280,7 @@
"resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz",
"integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=",
"requires": {
"async-done": "1.2.3"
"async-done": "1.2.4"
}
},
"atob": {
@@ -1251,7 +1251,7 @@
"array-each": "1.0.1",
"array-initial": "1.1.0",
"array-last": "1.3.0",
"async-done": "1.2.3",
"async-done": "1.2.4",
"async-settle": "1.0.0",
"now-and-later": "2.0.0"
}
@@ -1267,7 +1267,7 @@
"integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
"requires": {
"cache-base": "1.0.1",
"class-utils": "0.3.5",
"class-utils": "0.3.6",
"component-emitter": "1.2.1",
"define-property": "1.0.0",
"isobject": "3.0.1",
@@ -1929,6 +1929,7 @@
"requires": {
"anymatch": "1.3.2",
"async-each": "1.0.1",
"fsevents": "1.1.3",
"glob-parent": "2.0.0",
"inherits": "2.0.3",
"is-binary-path": "1.0.1",
@@ -1955,14 +1956,13 @@
}
},
"class-utils": {
"version": "0.3.5",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.5.tgz",
"integrity": "sha1-F+eTEDdQ+WJ7IXbqNM/RtWWQPIA=",
"version": "0.3.6",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
"integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
"requires": {
"arr-union": "3.1.0",
"define-property": "0.2.5",
"isobject": "3.0.1",
"lazy-cache": "2.0.2",
"static-extend": "0.1.2"
},
"dependencies": {
@@ -2352,7 +2352,7 @@
"resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz",
"integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=",
"requires": {
"es5-ext": "0.10.37"
"es5-ext": "0.10.38"
}
},
"date-now": {
@@ -2569,9 +2569,9 @@
}
},
"es5-ext": {
"version": "0.10.37",
"resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.37.tgz",
"integrity": "sha1-DudB0Ui4AGm6J9AgOTdWryV978M=",
"version": "0.10.38",
"resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.38.tgz",
"integrity": "sha512-jCMyePo7AXbUESwbl8Qi01VSH2piY9s/a3rSU/5w/MlTIx8HPL1xn2InGN8ejt/xulcJgnTO7vqNtOAxzYd2Kg==",
"requires": {
"es6-iterator": "2.0.3",
"es6-symbol": "3.1.1"
@@ -2583,7 +2583,7 @@
"integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
"requires": {
"d": "1.0.0",
"es5-ext": "0.10.37",
"es5-ext": "0.10.38",
"es6-symbol": "3.1.1"
}
},
@@ -2598,7 +2598,7 @@
"integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=",
"requires": {
"d": "1.0.0",
"es5-ext": "0.10.37"
"es5-ext": "0.10.38"
}
},
"es6-weak-map": {
@@ -2607,7 +2607,7 @@
"integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=",
"requires": {
"d": "1.0.0",
"es5-ext": "0.10.37",
"es5-ext": "0.10.38",
"es6-iterator": "2.0.3",
"es6-symbol": "3.1.1"
}
@@ -2828,7 +2828,7 @@
"requires": {
"detect-file": "1.0.0",
"is-glob": "3.1.0",
"micromatch": "3.1.4",
"micromatch": "3.1.5",
"resolve-dir": "1.0.1"
},
"dependencies": {
@@ -2885,9 +2885,9 @@
}
},
"extglob": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.3.tgz",
"integrity": "sha512-AyptZexgu7qppEPq59DtN/XJGZDrLcVxSHai+4hdgMMS9EpF4GBvygcWWApno8lL9qSjVpYt7Raao28qzJX1ww==",
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
"integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
"requires": {
"array-unique": "0.3.2",
"define-property": "1.0.0",
@@ -3005,19 +3005,19 @@
"integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA=="
},
"micromatch": {
"version": "3.1.4",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.4.tgz",
"integrity": "sha512-kFRtviKYoAJT+t7HggMl0tBFGNAKLw/S7N+CO9qfEQyisob1Oy4pao+geRbkyeEd+V9aOkvZ4mhuyPvI/q9Sfg==",
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.5.tgz",
"integrity": "sha512-ykttrLPQrz1PUJcXjwsTUjGoPJ64StIGNE2lGVD1c9CuguJ+L7/navsE8IcDNndOoCMvYV0qc/exfVbMHkUhvA==",
"requires": {
"arr-diff": "4.0.0",
"array-unique": "0.3.2",
"braces": "2.3.0",
"define-property": "1.0.0",
"extend-shallow": "2.0.1",
"extglob": "2.0.3",
"extglob": "2.0.4",
"fragment-cache": "0.2.1",
"kind-of": "6.0.2",
"nanomatch": "1.2.6",
"nanomatch": "1.2.7",
"object.pick": "1.3.0",
"regex-not": "1.0.0",
"snapdragon": "0.8.1",
@@ -3114,6 +3114,795 @@
"map-cache": "0.2.2"
}
},
"fsevents": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz",
"integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==",
"optional": true,
"requires": {
"nan": "2.8.0",
"node-pre-gyp": "0.6.39"
},
"dependencies": {
"abbrev": {
"version": "1.1.0",
"bundled": true,
"optional": true
},
"ajv": {
"version": "4.11.8",
"bundled": true,
"optional": true,
"requires": {
"co": "4.6.0",
"json-stable-stringify": "1.0.1"
}
},
"ansi-regex": {
"version": "2.1.1",
"bundled": true
},
"aproba": {
"version": "1.1.1",
"bundled": true,
"optional": true
},
"are-we-there-yet": {
"version": "1.1.4",
"bundled": true,
"optional": true,
"requires": {
"delegates": "1.0.0",
"readable-stream": "2.2.9"
}
},
"asn1": {
"version": "0.2.3",
"bundled": true,
"optional": true
},
"assert-plus": {
"version": "0.2.0",
"bundled": true,
"optional": true
},
"asynckit": {
"version": "0.4.0",
"bundled": true,
"optional": true
},
"aws-sign2": {
"version": "0.6.0",
"bundled": true,
"optional": true
},
"aws4": {
"version": "1.6.0",
"bundled": true,
"optional": true
},
"balanced-match": {
"version": "0.4.2",
"bundled": true
},
"bcrypt-pbkdf": {
"version": "1.0.1",
"bundled": true,
"optional": true,
"requires": {
"tweetnacl": "0.14.5"
}
},
"block-stream": {
"version": "0.0.9",
"bundled": true,
"requires": {
"inherits": "2.0.3"
}
},
"boom": {
"version": "2.10.1",
"bundled": true,
"requires": {
"hoek": "2.16.3"
}
},
"brace-expansion": {
"version": "1.1.7",
"bundled": true,
"requires": {
"balanced-match": "0.4.2",
"concat-map": "0.0.1"
}
},
"buffer-shims": {
"version": "1.0.0",
"bundled": true
},
"caseless": {
"version": "0.12.0",
"bundled": true,
"optional": true
},
"co": {
"version": "4.6.0",
"bundled": true,
"optional": true
},
"code-point-at": {
"version": "1.1.0",
"bundled": true
},
"combined-stream": {
"version": "1.0.5",
"bundled": true,
"requires": {
"delayed-stream": "1.0.0"
}
},
"concat-map": {
"version": "0.0.1",
"bundled": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true
},
"core-util-is": {
"version": "1.0.2",
"bundled": true
},
"cryptiles": {
"version": "2.0.5",
"bundled": true,
"requires": {
"boom": "2.10.1"
}
},
"dashdash": {
"version": "1.14.1",
"bundled": true,
"optional": true,
"requires": {
"assert-plus": "1.0.0"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"bundled": true,
"optional": true
}
}
},
"debug": {
"version": "2.6.8",
"bundled": true,
"optional": true,
"requires": {
"ms": "2.0.0"
}
},
"deep-extend": {
"version": "0.4.2",
"bundled": true,
"optional": true
},
"delayed-stream": {
"version": "1.0.0",
"bundled": true
},
"delegates": {
"version": "1.0.0",
"bundled": true,
"optional": true
},
"detect-libc": {
"version": "1.0.2",
"bundled": true,
"optional": true
},
"ecc-jsbn": {
"version": "0.1.1",
"bundled": true,
"optional": true,
"requires": {
"jsbn": "0.1.1"
}
},
"extend": {
"version": "3.0.1",
"bundled": true,
"optional": true
},
"extsprintf": {
"version": "1.0.2",
"bundled": true
},
"forever-agent": {
"version": "0.6.1",
"bundled": true,
"optional": true
},
"form-data": {
"version": "2.1.4",
"bundled": true,
"optional": true,
"requires": {
"asynckit": "0.4.0",
"combined-stream": "1.0.5",
"mime-types": "2.1.15"
}
},
"fs.realpath": {
"version": "1.0.0",
"bundled": true
},
"fstream": {
"version": "1.0.11",
"bundled": true,
"requires": {
"graceful-fs": "4.1.11",
"inherits": "2.0.3",
"mkdirp": "0.5.1",
"rimraf": "2.6.1"
}
},
"fstream-ignore": {
"version": "1.0.5",
"bundled": true,
"optional": true,
"requires": {
"fstream": "1.0.11",
"inherits": "2.0.3",
"minimatch": "3.0.4"
}
},
"gauge": {
"version": "2.7.4",
"bundled": true,
"optional": true,
"requires": {
"aproba": "1.1.1",
"console-control-strings": "1.1.0",
"has-unicode": "2.0.1",
"object-assign": "4.1.1",
"signal-exit": "3.0.2",
"string-width": "1.0.2",
"strip-ansi": "3.0.1",
"wide-align": "1.1.2"
}
},
"getpass": {
"version": "0.1.7",
"bundled": true,
"optional": true,
"requires": {
"assert-plus": "1.0.0"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"bundled": true,
"optional": true
}
}
},
"glob": {
"version": "7.1.2",
"bundled": true,
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.4.0",
"path-is-absolute": "1.0.1"
}
},
"graceful-fs": {
"version": "4.1.11",
"bundled": true
},
"har-schema": {
"version": "1.0.5",
"bundled": true,
"optional": true
},
"har-validator": {
"version": "4.2.1",
"bundled": true,
"optional": true,
"requires": {
"ajv": "4.11.8",
"har-schema": "1.0.5"
}
},
"has-unicode": {
"version": "2.0.1",
"bundled": true,
"optional": true
},
"hawk": {
"version": "3.1.3",
"bundled": true,
"requires": {
"boom": "2.10.1",
"cryptiles": "2.0.5",
"hoek": "2.16.3",
"sntp": "1.0.9"
}
},
"hoek": {
"version": "2.16.3",
"bundled": true
},
"http-signature": {
"version": "1.1.1",
"bundled": true,
"optional": true,
"requires": {
"assert-plus": "0.2.0",
"jsprim": "1.4.0",
"sshpk": "1.13.0"
}
},
"inflight": {
"version": "1.0.6",
"bundled": true,
"requires": {
"once": "1.4.0",
"wrappy": "1.0.2"
}
},
"inherits": {
"version": "2.0.3",
"bundled": true
},
"ini": {
"version": "1.3.4",
"bundled": true,
"optional": true
},
"is-fullwidth-code-point": {
"version": "1.0.0",
"bundled": true,
"requires": {
"number-is-nan": "1.0.1"
}
},
"is-typedarray": {
"version": "1.0.0",
"bundled": true,
"optional": true
},
"isarray": {
"version": "1.0.0",
"bundled": true
},
"isstream": {
"version": "0.1.2",
"bundled": true,
"optional": true
},
"jodid25519": {
"version": "1.0.2",
"bundled": true,
"optional": true,
"requires": {
"jsbn": "0.1.1"
}
},
"jsbn": {
"version": "0.1.1",
"bundled": true,
"optional": true
},
"json-schema": {
"version": "0.2.3",
"bundled": true,
"optional": true
},
"json-stable-stringify": {
"version": "1.0.1",
"bundled": true,
"optional": true,
"requires": {
"jsonify": "0.0.0"
}
},
"json-stringify-safe": {
"version": "5.0.1",
"bundled": true,
"optional": true
},
"jsonify": {
"version": "0.0.0",
"bundled": true,
"optional": true
},
"jsprim": {
"version": "1.4.0",
"bundled": true,
"optional": true,
"requires": {
"assert-plus": "1.0.0",
"extsprintf": "1.0.2",
"json-schema": "0.2.3",
"verror": "1.3.6"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"bundled": true,
"optional": true
}
}
},
"mime-db": {
"version": "1.27.0",
"bundled": true
},
"mime-types": {
"version": "2.1.15",
"bundled": true,
"requires": {
"mime-db": "1.27.0"
}
},
"minimatch": {
"version": "3.0.4",
"bundled": true,
"requires": {
"brace-expansion": "1.1.7"
}
},
"minimist": {
"version": "0.0.8",
"bundled": true
},
"mkdirp": {
"version": "0.5.1",
"bundled": true,
"requires": {
"minimist": "0.0.8"
}
},
"ms": {
"version": "2.0.0",
"bundled": true,
"optional": true
},
"node-pre-gyp": {
"version": "0.6.39",
"bundled": true,
"optional": true,
"requires": {
"detect-libc": "1.0.2",
"hawk": "3.1.3",
"mkdirp": "0.5.1",
"nopt": "4.0.1",
"npmlog": "4.1.0",
"rc": "1.2.1",
"request": "2.81.0",
"rimraf": "2.6.1",
"semver": "5.3.0",
"tar": "2.2.1",
"tar-pack": "3.4.0"
}
},
"nopt": {
"version": "4.0.1",
"bundled": true,
"optional": true,
"requires": {
"abbrev": "1.1.0",
"osenv": "0.1.4"
}
},
"npmlog": {
"version": "4.1.0",
"bundled": true,
"optional": true,
"requires": {
"are-we-there-yet": "1.1.4",
"console-control-strings": "1.1.0",
"gauge": "2.7.4",
"set-blocking": "2.0.0"
}
},
"number-is-nan": {
"version": "1.0.1",
"bundled": true
},
"oauth-sign": {
"version": "0.8.2",
"bundled": true,
"optional": true
},
"object-assign": {
"version": "4.1.1",
"bundled": true,
"optional": true
},
"once": {
"version": "1.4.0",
"bundled": true,
"requires": {
"wrappy": "1.0.2"
}
},
"os-homedir": {
"version": "1.0.2",
"bundled": true,
"optional": true
},
"os-tmpdir": {
"version": "1.0.2",
"bundled": true,
"optional": true
},
"osenv": {
"version": "0.1.4",
"bundled": true,
"optional": true,
"requires": {
"os-homedir": "1.0.2",
"os-tmpdir": "1.0.2"
}
},
"path-is-absolute": {
"version": "1.0.1",
"bundled": true
},
"performance-now": {
"version": "0.2.0",
"bundled": true,
"optional": true
},
"process-nextick-args": {
"version": "1.0.7",
"bundled": true
},
"punycode": {
"version": "1.4.1",
"bundled": true,
"optional": true
},
"qs": {
"version": "6.4.0",
"bundled": true,
"optional": true
},
"rc": {
"version": "1.2.1",
"bundled": true,
"optional": true,
"requires": {
"deep-extend": "0.4.2",
"ini": "1.3.4",
"minimist": "1.2.0",
"strip-json-comments": "2.0.1"
},
"dependencies": {
"minimist": {
"version": "1.2.0",
"bundled": true,
"optional": true
}
}
},
"readable-stream": {
"version": "2.2.9",
"bundled": true,
"requires": {
"buffer-shims": "1.0.0",
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "1.0.7",
"string_decoder": "1.0.1",
"util-deprecate": "1.0.2"
}
},
"request": {
"version": "2.81.0",
"bundled": true,
"optional": true,
"requires": {
"aws-sign2": "0.6.0",
"aws4": "1.6.0",
"caseless": "0.12.0",
"combined-stream": "1.0.5",
"extend": "3.0.1",
"forever-agent": "0.6.1",
"form-data": "2.1.4",
"har-validator": "4.2.1",
"hawk": "3.1.3",
"http-signature": "1.1.1",
"is-typedarray": "1.0.0",
"isstream": "0.1.2",
"json-stringify-safe": "5.0.1",
"mime-types": "2.1.15",
"oauth-sign": "0.8.2",
"performance-now": "0.2.0",
"qs": "6.4.0",
"safe-buffer": "5.0.1",
"stringstream": "0.0.5",
"tough-cookie": "2.3.2",
"tunnel-agent": "0.6.0",
"uuid": "3.0.1"
}
},
"rimraf": {
"version": "2.6.1",
"bundled": true,
"requires": {
"glob": "7.1.2"
}
},
"safe-buffer": {
"version": "5.0.1",
"bundled": true
},
"semver": {
"version": "5.3.0",
"bundled": true,
"optional": true
},
"set-blocking": {
"version": "2.0.0",
"bundled": true,
"optional": true
},
"signal-exit": {
"version": "3.0.2",
"bundled": true,
"optional": true
},
"sntp": {
"version": "1.0.9",
"bundled": true,
"requires": {
"hoek": "2.16.3"
}
},
"sshpk": {
"version": "1.13.0",
"bundled": true,
"optional": true,
"requires": {
"asn1": "0.2.3",
"assert-plus": "1.0.0",
"bcrypt-pbkdf": "1.0.1",
"dashdash": "1.14.1",
"ecc-jsbn": "0.1.1",
"getpass": "0.1.7",
"jodid25519": "1.0.2",
"jsbn": "0.1.1",
"tweetnacl": "0.14.5"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"bundled": true,
"optional": true
}
}
},
"string-width": {
"version": "1.0.2",
"bundled": true,
"requires": {
"code-point-at": "1.1.0",
"is-fullwidth-code-point": "1.0.0",
"strip-ansi": "3.0.1"
}
},
"string_decoder": {
"version": "1.0.1",
"bundled": true,
"requires": {
"safe-buffer": "5.0.1"
}
},
"stringstream": {
"version": "0.0.5",
"bundled": true,
"optional": true
},
"strip-ansi": {
"version": "3.0.1",
"bundled": true,
"requires": {
"ansi-regex": "2.1.1"
}
},
"strip-json-comments": {
"version": "2.0.1",
"bundled": true,
"optional": true
},
"tar": {
"version": "2.2.1",
"bundled": true,
"requires": {
"block-stream": "0.0.9",
"fstream": "1.0.11",
"inherits": "2.0.3"
}
},
"tar-pack": {
"version": "3.4.0",
"bundled": true,
"optional": true,
"requires": {
"debug": "2.6.8",
"fstream": "1.0.11",
"fstream-ignore": "1.0.5",
"once": "1.4.0",
"readable-stream": "2.2.9",
"rimraf": "2.6.1",
"tar": "2.2.1",
"uid-number": "0.0.6"
}
},
"tough-cookie": {
"version": "2.3.2",
"bundled": true,
"optional": true,
"requires": {
"punycode": "1.4.1"
}
},
"tunnel-agent": {
"version": "0.6.0",
"bundled": true,
"optional": true,
"requires": {
"safe-buffer": "5.0.1"
}
},
"tweetnacl": {
"version": "0.14.5",
"bundled": true,
"optional": true
},
"uid-number": {
"version": "0.0.6",
"bundled": true,
"optional": true
},
"util-deprecate": {
"version": "1.0.2",
"bundled": true
},
"uuid": {
"version": "3.0.1",
"bundled": true,
"optional": true
},
"verror": {
"version": "1.3.6",
"bundled": true,
"optional": true,
"requires": {
"extsprintf": "1.0.2"
}
},
"wide-align": {
"version": "1.1.2",
"bundled": true,
"optional": true,
"requires": {
"string-width": "1.0.2"
}
},
"wrappy": {
"version": "1.0.2",
"bundled": true
}
}
},
"function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
@@ -3227,7 +4016,7 @@
"resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-3.2.0.tgz",
"integrity": "sha1-/8Gi09B3g7Zy9eIXmaTQs/7ZLa8=",
"requires": {
"async-done": "1.2.3",
"async-done": "1.2.4",
"chokidar": "1.7.0",
"lodash.debounce": "4.0.8",
"object.defaults": "1.1.0"
@@ -4717,10 +5506,16 @@
"resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.0.tgz",
"integrity": "sha1-WzLqB+tDyd7WEwQ0z5JvRrKn/U0="
},
"nan": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz",
"integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=",
"optional": true
},
"nanomatch": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.6.tgz",
"integrity": "sha512-WJ6XTCbvWXUFPbi/bDwKcYkCeOGUHzaJj72KbuPqGn78Ba/F5Vu26Zlo6SuMQbCIst1RGKL1zfWBCOGAlbRLAg==",
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.7.tgz",
"integrity": "sha512-/5ldsnyurvEw7wNpxLFgjVvBLMta43niEYOy0CJ4ntcYSbx6bugRUTQeFb4BR/WanEL1o3aQgHuVLHQaB6tOqg==",
"requires": {
"arr-diff": "4.0.0",
"array-unique": "0.3.2",
+21
View File
@@ -0,0 +1,21 @@
<ui-display title='Recipient Contents'>
<ui-section>
<ui-button icon='eject' state='{{data.isBeakerLoaded ? null : "disabled"}}' action='eject'>Eject</ui-button>
<ui-button icon='circle' state='{{data.isBeakerLoaded ? null : "disabled"}}' action='input'>Input</ui-button>
<ui-button icon='plus' state='{{data.isBeakerLoaded ? "disabled" : null}}' action='makecup'>Create Cup</ui-button>
</ui-section>
</ui-display>
<ui-display title='Recipient'>
<ui-section label='Contents'>
{{#if data.isBeakerLoaded}}
<span>{{Math.round(adata.beakerCurrentVolume)}}/{{data.beakerMaxVolume}} Units</span>
{{#each adata.beakerContents}}
<span class='highlight' intro-outro='fade'>{{Math.fixed(volume, 2)}} units of {{name}}</span><br/>
{{else}}
<span class='bad'>Recipient Empty</span>
{{/each}}
{{else}}
<span class='average'>No Recipient</span>
{{/if}}
</ui-section>
</ui-display>