port of the positronic alert console

This commit is contained in:
shellspeed1
2022-09-17 01:55:55 -07:00
parent b554906511
commit 59ef5bbcf1
5 changed files with 70 additions and 3 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" = (
+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
@@ -72,6 +72,14 @@
id = "newscaster_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/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/newscaster
category = list("initial", "Construction")
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"