Merge pull request #15853 from shellspeed1/posialert-console

Port of the Posialert console from hyper. Credit to jjpark-kb for initial work.
This commit is contained in:
silicons
2022-09-23 16:21:19 -07:00
committed by GitHub
13 changed files with 117 additions and 29 deletions
+6 -3
View File
@@ -16129,11 +16129,11 @@
/area/service/bar)
"aMw" = (
/obj/machinery/vending/dinnerware{
contraband = list(/obj/item/reagent_containers/food/condiment/flour = 4);
contraband = list(/obj/item/reagent_containers/food/condiment/flour=4);
desc = "This vendor is full of condiments to put on food.";
name = "\improper Condiments Vendor";
product_ads = "Get your sauces here!;No slave labour was used to make these products!;Nanotrasen Approved?!";
products = list(/obj/item/storage/bag/tray = 8, /obj/item/reagent_containers/food/drinks/drinkingglass = 10, /obj/item/storage/box/cups = 5, /obj/item/reagent_containers/food/condiment/pack/ketchup = 20, /obj/item/reagent_containers/food/condiment/pack/mustard = 20, /obj/item/reagent_containers/food/condiment/pack/hotsauce = 20, /obj/item/reagent_containers/food/condiment/pack/astrotame = 20, /obj/item/reagent_containers/food/condiment/saltshaker = 20, /obj/item/reagent_containers/food/condiment/peppermill = 20)
products = list(/obj/item/storage/bag/tray=8,/obj/item/reagent_containers/food/drinks/drinkingglass=10,/obj/item/storage/box/cups=5,/obj/item/reagent_containers/food/condiment/pack/ketchup=20,/obj/item/reagent_containers/food/condiment/pack/mustard=20,/obj/item/reagent_containers/food/condiment/pack/hotsauce=20,/obj/item/reagent_containers/food/condiment/pack/astrotame=20,/obj/item/reagent_containers/food/condiment/saltshaker=20,/obj/item/reagent_containers/food/condiment/peppermill=20)
},
/turf/open/floor/wood,
/area/service/bar)
@@ -17889,7 +17889,7 @@
/area/service/bar)
"aRA" = (
/obj/machinery/vending/dinnerware{
contraband = list(/obj/item/kitchen/rollingpin = 2, /obj/item/kitchen/knife/butcher = 2, /obj/item/reagent_containers/food/condiment/flour = 4)
contraband = list(/obj/item/kitchen/rollingpin=2,/obj/item/kitchen/knife/butcher=2,/obj/item/reagent_containers/food/condiment/flour=4)
},
/turf/open/floor/plasteel/cafeteria,
/area/service/kitchen)
@@ -24597,6 +24597,9 @@
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/machinery/posialert{
pixel_x = 32
},
/turf/open/floor/plasteel/white,
/area/science/robotics/lab)
"biQ" = (
@@ -49200,6 +49200,9 @@
c_tag = "Robotics Lab";
dir = 4
},
/obj/machinery/posialert{
pixel_x = -32
},
/turf/open/floor/plasteel/dark/side{
dir = 8
},
@@ -61512,12 +61512,12 @@
/obj/machinery/computer/operating{
dir = 1
},
/obj/machinery/newscaster{
pixel_y = -32
},
/obj/effect/turf_decal/tile/purple{
dir = 8
},
/obj/machinery/posialert{
pixel_y = -32
},
/turf/open/floor/plasteel/white,
/area/science/robotics/lab)
"dIR" = (
+13 -10
View File
@@ -36997,6 +36997,9 @@
/obj/item/assembly/flash/handheld,
/obj/item/assembly/flash/handheld,
/obj/item/assembly/flash/handheld,
/obj/machinery/posialert{
pixel_x = -32
},
/turf/open/floor/plasteel/dark,
/area/science/robotics/lab)
"bhC" = (
@@ -43729,7 +43732,7 @@
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
@@ -84892,7 +84895,7 @@
/obj/item/reagent_containers/food/drinks/bottle/grenadine,
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
@@ -84976,56 +84979,56 @@
/obj/item/reagent_containers/food/drinks/bottle/wine,
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
},
/obj/item/reagent_containers/food/drinks/beer{
desc = "A station exclusive. Consumpt may result in seizures, blindness, drunkenness, or even death.";
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 10);
list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko=10);
name = "Kilo-Kocktail";
pixel_x = 5;
pixel_y = 5
+8 -5
View File
@@ -7933,6 +7933,9 @@
/obj/structure/table,
/obj/item/stack/cable_coil/random,
/obj/machinery/camera/autoname,
/obj/machinery/posialert{
pixel_y = 32
},
/turf/open/floor/plasteel,
/area/science/robotics/lab)
"apy" = (
@@ -13514,7 +13517,7 @@
},
/mob/living/simple_animal/pet/gondola{
desc = "The last known gondola for lightyears, it is your duty to keep them safe from the filthy yellowed hands of the greytide.";
loot = list(/obj/effect/decal/cleanable/blood/gibs, /obj/item/stack/sheet/animalhide/gondola = 1);
loot = list(/obj/effect/decal/cleanable/blood/gibs,/obj/item/stack/sheet/animalhide/gondola=1);
name = "Filbert"
},
/turf/open/floor/plasteel/dark,
@@ -38023,7 +38026,7 @@
dir = 5
},
/obj/machinery/vending/medical{
products = list(/obj/item/reagent_containers/syringe = 12, /obj/item/reagent_containers/dropper = 3, /obj/item/healthanalyzer = 4, /obj/item/sensor_device = 4, /obj/item/pinpointer/crew = 2, /obj/item/reagent_containers/medspray/sterilizine = 1, /obj/item/stack/medical/gauze = 8, /obj/item/reagent_containers/pill/patch/styptic = 5, /obj/item/reagent_containers/medspray/styptic = 2, /obj/item/reagent_containers/pill/patch/silver_sulf = 5, /obj/item/reagent_containers/medspray/silver_sulf = 2, /obj/item/reagent_containers/pill/insulin = 10, /obj/item/reagent_containers/pill/salbutamol = 2, /obj/item/reagent_containers/glass/bottle/charcoal = 4, /obj/item/reagent_containers/glass/bottle/epinephrine = 4, /obj/item/reagent_containers/glass/bottle/salglu_solution = 3, /obj/item/reagent_containers/glass/bottle/morphine = 4, /obj/item/reagent_containers/glass/bottle/toxin = 3, /obj/item/reagent_containers/syringe/antiviral = 6, /obj/item/storage/hypospraykit/fire = 2, /obj/item/storage/hypospraykit/toxin = 2, /obj/item/storage/hypospraykit/o2 = 2, /obj/item/storage/hypospraykit/brute = 2, /obj/item/storage/hypospraykit/enlarge = 2, /obj/item/reagent_containers/glass/bottle/vial/small = 5, /obj/item/storage/briefcase/medical = 2, /obj/item/stack/sticky_tape/surgical = 3, /obj/item/healthanalyzer/wound = 4, /obj/item/stack/medical/ointment = 2, /obj/item/stack/medical/suture = 2, /obj/item/stack/medical/bone_gel = 4)
products = list(/obj/item/reagent_containers/syringe=12,/obj/item/reagent_containers/dropper=3,/obj/item/healthanalyzer=4,/obj/item/sensor_device=4,/obj/item/pinpointer/crew=2,/obj/item/reagent_containers/medspray/sterilizine=1,/obj/item/stack/medical/gauze=8,/obj/item/reagent_containers/pill/patch/styptic=5,/obj/item/reagent_containers/medspray/styptic=2,/obj/item/reagent_containers/pill/patch/silver_sulf=5,/obj/item/reagent_containers/medspray/silver_sulf=2,/obj/item/reagent_containers/pill/insulin=10,/obj/item/reagent_containers/pill/salbutamol=2,/obj/item/reagent_containers/glass/bottle/charcoal=4,/obj/item/reagent_containers/glass/bottle/epinephrine=4,/obj/item/reagent_containers/glass/bottle/salglu_solution=3,/obj/item/reagent_containers/glass/bottle/morphine=4,/obj/item/reagent_containers/glass/bottle/toxin=3,/obj/item/reagent_containers/syringe/antiviral=6,/obj/item/storage/hypospraykit/fire=2,/obj/item/storage/hypospraykit/toxin=2,/obj/item/storage/hypospraykit/o2=2,/obj/item/storage/hypospraykit/brute=2,/obj/item/storage/hypospraykit/enlarge=2,/obj/item/reagent_containers/glass/bottle/vial/small=5,/obj/item/storage/briefcase/medical=2,/obj/item/stack/sticky_tape/surgical=3,/obj/item/healthanalyzer/wound=4,/obj/item/stack/medical/ointment=2,/obj/item/stack/medical/suture=2,/obj/item/stack/medical/bone_gel=4)
},
/turf/open/floor/plasteel/white,
/area/medical/medbay/central)
@@ -46027,7 +46030,7 @@
"bXK" = (
/obj/effect/turf_decal/trimline/blue/filled/line,
/obj/machinery/vending/medical{
products = list(/obj/item/reagent_containers/syringe = 12, /obj/item/reagent_containers/dropper = 3, /obj/item/healthanalyzer = 4, /obj/item/sensor_device = 4, /obj/item/pinpointer/crew = 2, /obj/item/reagent_containers/medspray/sterilizine = 1, /obj/item/stack/medical/gauze = 8, /obj/item/reagent_containers/pill/patch/styptic = 5, /obj/item/reagent_containers/medspray/styptic = 2, /obj/item/reagent_containers/pill/patch/silver_sulf = 5, /obj/item/reagent_containers/medspray/silver_sulf = 2, /obj/item/reagent_containers/pill/insulin = 10, /obj/item/reagent_containers/pill/salbutamol = 2, /obj/item/reagent_containers/glass/bottle/charcoal = 4, /obj/item/reagent_containers/glass/bottle/epinephrine = 4, /obj/item/reagent_containers/glass/bottle/salglu_solution = 3, /obj/item/reagent_containers/glass/bottle/morphine = 4, /obj/item/reagent_containers/glass/bottle/toxin = 3, /obj/item/reagent_containers/syringe/antiviral = 6, /obj/item/storage/hypospraykit/fire = 2, /obj/item/storage/hypospraykit/toxin = 2, /obj/item/storage/hypospraykit/o2 = 2, /obj/item/storage/hypospraykit/brute = 2, /obj/item/storage/hypospraykit/enlarge = 2, /obj/item/reagent_containers/glass/bottle/vial/small = 5, /obj/item/storage/briefcase/medical = 2, /obj/item/stack/sticky_tape/surgical = 3, /obj/item/healthanalyzer/wound = 4, /obj/item/stack/medical/ointment = 2, /obj/item/stack/medical/suture = 2, /obj/item/stack/medical/bone_gel = 4)
products = list(/obj/item/reagent_containers/syringe=12,/obj/item/reagent_containers/dropper=3,/obj/item/healthanalyzer=4,/obj/item/sensor_device=4,/obj/item/pinpointer/crew=2,/obj/item/reagent_containers/medspray/sterilizine=1,/obj/item/stack/medical/gauze=8,/obj/item/reagent_containers/pill/patch/styptic=5,/obj/item/reagent_containers/medspray/styptic=2,/obj/item/reagent_containers/pill/patch/silver_sulf=5,/obj/item/reagent_containers/medspray/silver_sulf=2,/obj/item/reagent_containers/pill/insulin=10,/obj/item/reagent_containers/pill/salbutamol=2,/obj/item/reagent_containers/glass/bottle/charcoal=4,/obj/item/reagent_containers/glass/bottle/epinephrine=4,/obj/item/reagent_containers/glass/bottle/salglu_solution=3,/obj/item/reagent_containers/glass/bottle/morphine=4,/obj/item/reagent_containers/glass/bottle/toxin=3,/obj/item/reagent_containers/syringe/antiviral=6,/obj/item/storage/hypospraykit/fire=2,/obj/item/storage/hypospraykit/toxin=2,/obj/item/storage/hypospraykit/o2=2,/obj/item/storage/hypospraykit/brute=2,/obj/item/storage/hypospraykit/enlarge=2,/obj/item/reagent_containers/glass/bottle/vial/small=5,/obj/item/storage/briefcase/medical=2,/obj/item/stack/sticky_tape/surgical=3,/obj/item/healthanalyzer/wound=4,/obj/item/stack/medical/ointment=2,/obj/item/stack/medical/suture=2,/obj/item/stack/medical/bone_gel=4)
},
/turf/open/floor/plasteel/white,
/area/medical/medbay/central)
@@ -62219,7 +62222,7 @@
/area/engineering/break_room)
"cUI" = (
/obj/machinery/vending/engineering{
products = list(/obj/item/clothing/under/rank/engineering/engineer = 4, /obj/item/clothing/shoes/sneakers/orange = 4, /obj/item/clothing/head/hardhat = 4, /obj/item/storage/belt/utility = 4, /obj/item/clothing/glasses/meson/engine = 4, /obj/item/clothing/gloves/color/yellow = 2, /obj/item/screwdriver = 12, /obj/item/crowbar = 12, /obj/item/wirecutters = 12, /obj/item/multitool = 12, /obj/item/wrench = 12, /obj/item/t_scanner = 12, /obj/item/stock_parts/cell = 8, /obj/item/weldingtool = 8, /obj/item/clothing/head/welding = 8, /obj/item/light/tube = 10, /obj/item/clothing/suit/fire = 4, /obj/item/stock_parts/scanning_module = 5, /obj/item/stock_parts/micro_laser = 5, /obj/item/stock_parts/matter_bin = 5, /obj/item/stock_parts/manipulator = 5)
products = list(/obj/item/clothing/under/rank/engineering/engineer=4,/obj/item/clothing/shoes/sneakers/orange=4,/obj/item/clothing/head/hardhat=4,/obj/item/storage/belt/utility=4,/obj/item/clothing/glasses/meson/engine=4,/obj/item/clothing/gloves/color/yellow=2,/obj/item/screwdriver=12,/obj/item/crowbar=12,/obj/item/wirecutters=12,/obj/item/multitool=12,/obj/item/wrench=12,/obj/item/t_scanner=12,/obj/item/stock_parts/cell=8,/obj/item/weldingtool=8,/obj/item/clothing/head/welding=8,/obj/item/light/tube=10,/obj/item/clothing/suit/fire=4,/obj/item/stock_parts/scanning_module=5,/obj/item/stock_parts/micro_laser=5,/obj/item/stock_parts/matter_bin=5,/obj/item/stock_parts/manipulator=5)
},
/obj/effect/turf_decal/trimline/yellow/filled/line{
dir = 1
@@ -70184,7 +70187,7 @@
},
/obj/structure/table/wood,
/obj/item/reagent_containers/food/drinks/sillycup/smallcarton{
list_reagents = list(/datum/reagent/consumable/milk = 20);
list_reagents = list(/datum/reagent/consumable/milk=20);
name = "small milk carton";
pixel_x = -8;
pixel_y = 5
+5 -2
View File
@@ -1701,7 +1701,7 @@
name = "3maintenance loot spawner"
},
/obj/effect/spawner/lootdrop/armory_contraband{
loot = list(/obj/item/gun/ballistic/automatic/pistol = 5, /obj/item/gun/ballistic/shotgun/automatic/combat = 5, /obj/item/gun/ballistic/revolver/mateba, /obj/item/gun/ballistic/automatic/pistol/deagle, /obj/item/storage/box/syndie_kit/throwing_weapons = 3)
loot = list(/obj/item/gun/ballistic/automatic/pistol=5,/obj/item/gun/ballistic/shotgun/automatic/combat=5,/obj/item/gun/ballistic/revolver/mateba,/obj/item/gun/ballistic/automatic/pistol/deagle,/obj/item/storage/box/syndie_kit/throwing_weapons=3)
},
/obj/effect/turf_decal/tile/neutral{
dir = 1
@@ -40928,6 +40928,9 @@
/obj/item/cautery{
pixel_y = 15
},
/obj/machinery/posialert{
pixel_y = -32
},
/turf/open/floor/plasteel/white/corner{
dir = 4
},
@@ -57237,7 +57240,7 @@
"iqV" = (
/obj/structure/table/wood/poker,
/obj/effect/spawner/lootdrop{
loot = list(/obj/item/gun/ballistic/revolver/russian = 5, /obj/item/storage/box/syndie_kit/throwing_weapons, /obj/item/toy/cards/deck/syndicate = 2);
loot = list(/obj/item/gun/ballistic/revolver/russian=5,/obj/item/storage/box/syndie_kit/throwing_weapons,/obj/item/toy/cards/deck/syndicate=2);
name = "gambling valuables spawner"
},
/turf/open/floor/wood,
@@ -27988,6 +27988,9 @@
dir = 1
},
/obj/effect/turf_decal/bot,
/obj/machinery/posialert{
pixel_y = 32
},
/turf/open/floor/plasteel/dark,
/area/science/robotics/lab)
"bae" = (
@@ -15731,7 +15731,7 @@
/area/service/cafeteria/lunchroom)
"aNb" = (
/obj/machinery/vending/sustenance{
contraband = list(/obj/item/kitchen/knife = 6, /obj/item/reagent_containers/food/drinks/coffee = 12);
contraband = list(/obj/item/kitchen/knife=6,/obj/item/reagent_containers/food/drinks/coffee=12);
desc = "A vending machine which vends food.";
product_ads = "Sufficiently healthy."
},
@@ -29619,6 +29619,9 @@
/obj/effect/turf_decal/tile/neutral{
dir = 8
},
/obj/machinery/posialert{
pixel_x = -32
},
/turf/open/floor/plasteel/dark,
/area/science/robotics/lab)
"bsX" = (
@@ -38786,7 +38789,7 @@
input_tag = "mix_in";
name = "Gas Mix Tank Control";
output_tag = "mix_in";
sensors = list("mix_sensor" = "Tank")
sensors = list("mix_sensor"="Tank")
},
/obj/effect/turf_decal/tile/yellow,
/obj/effect/turf_decal/tile/yellow{
@@ -40274,7 +40277,7 @@
input_tag = "n2o_in";
name = "Nitrous Oxide Supply Control";
output_tag = "n2o_out";
sensors = list("n2o_sensor" = "Tank")
sensors = list("n2o_sensor"="Tank")
},
/obj/effect/turf_decal/tile/yellow,
/obj/effect/turf_decal/tile/yellow{
@@ -41663,7 +41666,7 @@
input_tag = "tox_in";
name = "Plasma Supply Control";
output_tag = "tox_out";
sensors = list("tox_sensor" = "Tank")
sensors = list("tox_sensor"="Tank")
},
/obj/effect/turf_decal/tile/yellow,
/obj/effect/turf_decal/tile/yellow{
+5 -2
View File
@@ -9515,6 +9515,9 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/obj/machinery/posialert{
pixel_x = -32
},
/turf/open/floor/plasteel/white,
/area/science/robotics/lab)
"axr" = (
@@ -36866,7 +36869,7 @@
/area/engineering/secure_construction)
"qzP" = (
/obj/machinery/vending/dinnerware{
contraband = list(/obj/item/kitchen/rollingpin = 2, /obj/item/kitchen/knife/butcher = 2, /obj/item/reagent_containers/food/condiment/flour = 4)
contraband = list(/obj/item/kitchen/rollingpin=2,/obj/item/kitchen/knife/butcher=2,/obj/item/reagent_containers/food/condiment/flour=4)
},
/turf/open/floor/plasteel/freezer,
/area/service/kitchen)
@@ -44901,7 +44904,7 @@
dir = 8
},
/obj/effect/spawner/lootdrop/armory_contraband{
loot = list(/obj/item/gun/ballistic/automatic/pistol = 5, /obj/item/gun/ballistic/shotgun/automatic/combat = 5, /obj/item/gun/ballistic/revolver/mateba, /obj/item/gun/ballistic/automatic/pistol/deagle, /obj/item/storage/box/syndie_kit/throwing_weapons = 3)
loot = list(/obj/item/gun/ballistic/automatic/pistol=5,/obj/item/gun/ballistic/shotgun/automatic/combat=5,/obj/item/gun/ballistic/revolver/mateba,/obj/item/gun/ballistic/automatic/pistol/deagle,/obj/item/storage/box/syndie_kit/throwing_weapons=3)
},
/obj/effect/spawner/lootdrop/maintenance{
lootcount = 3;
+55
View File
@@ -0,0 +1,55 @@
/obj/machinery/posialert
name = "automated positronic alert console"
desc = "A console that will ping when a positronic personality is available for download."
icon = 'icons/obj/machines/terminals.dmi'
icon_state = "posialert"
var/inuse = FALSE
var/online = TRUE
var/obj/item/radio/radio
var/radio_key = /obj/item/encryptionkey/headset_sci
var/science_channel = "Science"
/obj/machinery/posialert/Initialize(mapload, ndir, building)
. = ..()
radio = new(src)
radio.keyslot = new radio_key
radio.listening = 0
radio.recalculateChannels()
if(building)
setDir(ndir)
pixel_x = (dir & 3)? 0 : (dir == 4 ? -32 : 32)
pixel_y = (dir & 3)? (dir ==1 ? -32 : 32) : 0
/obj/machinery/posialert/Destroy()
QDEL_NULL(radio)
return ..()
/obj/item/wallframe/posialert
name = "automated positronic alert console frame"
desc = "Used to build positronic alert consoles, just secure to the wall."
icon_state = "newscaster"
custom_materials = list(/datum/material/iron=14000, /datum/material/glass=8000)
result_path = /obj/machinery/posialert
/obj/machinery/posialert/attack_hand(mob/living/user)
online = !online
to_chat(user, "<span class='warning'>You turn the posi-alert system [online ? "on" : "off"]!</span>")
return
/obj/machinery/posialert/attack_ghost(mob/user)
. = ..()
if(!online)
return
if(inuse)
return
inuse = TRUE
flick("posialertflash",src)
visible_message("There are positronic personalities available!")
radio.talk_into(src, "There are positronic personalities available!", science_channel)
playsound(loc, 'sound/machines/ping.ogg', 50)
addtimer(CALLBACK(src, .proc/liftcooldown), 300)
/obj/machinery/posialert/proc/liftcooldown()
inuse = FALSE
@@ -75,6 +75,14 @@
build_path = /obj/item/wallframe/newscaster
category = list("initial", "Construction")
/datum/design/posialert
name = "Posialert Frame"
id = "posialert_frame"
build_type = AUTOLATHE
materials = list(/datum/material/iron = 14000, /datum/material/glass = 8000)
build_path = /obj/item/wallframe/posialert
category = list("initial", "Construction")
/datum/design/status_display_frame
name = "Status Display Frame"
id = "status_display_frame"
Binary file not shown.

After

Width:  |  Height:  |  Size: 769 B

+1
View File
@@ -924,6 +924,7 @@
#include "code\game\machinery\mass_driver.dm"
#include "code\game\machinery\navbeacon.dm"
#include "code\game\machinery\PDApainter.dm"
#include "code\game\machinery\posi_alert.dm"
#include "code\game\machinery\prisonlabor.dm"
#include "code\game\machinery\quantum_pad.dm"
#include "code\game\machinery\recharger.dm"