mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 19:47:22 +01:00
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into russian
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/obj/machinery/computer/HolodeckControl
|
||||
name = "Holodeck Control Computer"
|
||||
name = "holodeck control computer"
|
||||
desc = "A computer used to control a nearby holodeck."
|
||||
icon_keyboard = "tech_key"
|
||||
icon_screen = "holocontrol"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/operating
|
||||
name = "Operating Computer"
|
||||
name = "operating computer"
|
||||
density = 1
|
||||
anchored = 1.0
|
||||
icon_keyboard = "med_key"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/machinery/computer/aifixer
|
||||
name = "AI System Integrity Restorer"
|
||||
name = "\improper AI system integrity restorer"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_keyboard = "rd_key"
|
||||
icon_screen = "ai-fixer"
|
||||
|
||||
@@ -5,7 +5,7 @@ var/global/list/minor_air_alarms = list()
|
||||
|
||||
|
||||
/obj/machinery/computer/atmos_alert
|
||||
name = "Atmospheric Alert Computer"
|
||||
name = "atmospheric alert computer"
|
||||
desc = "Used to access the station's atmospheric sensors."
|
||||
circuit = /obj/item/weapon/circuitboard/atmos_alert
|
||||
icon_keyboard = "atmos_key"
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
var/datum/nano_module/atmos_control/atmos_control
|
||||
|
||||
/obj/machinery/computer/atmoscontrol/laptop
|
||||
name = "Atmospherics Laptop"
|
||||
desc = "Cheap Nanotrasen Laptop."
|
||||
name = "atmospherics laptop"
|
||||
desc = "Cheap Nanotrasen laptop."
|
||||
icon_state = "medlaptop"
|
||||
density = 0
|
||||
|
||||
|
||||
@@ -191,35 +191,39 @@
|
||||
build_path = /obj/machinery/computer/telecomms/traffic
|
||||
origin_tech = "programming=3"
|
||||
|
||||
|
||||
/obj/item/weapon/circuitboard/shuttle
|
||||
name = "circuit board (Shuttle)"
|
||||
build_path = /obj/machinery/computer/shuttle
|
||||
var/shuttleId
|
||||
var/possible_destinations = ""
|
||||
|
||||
/obj/item/weapon/circuitboard/labor_shuttle
|
||||
name = "circuit Board (Labor Shuttle)"
|
||||
build_path = /obj/machinery/computer/shuttle/labor
|
||||
/obj/item/weapon/circuitboard/labor_shuttle/one_way
|
||||
name = "circuit Board (Prisoner Shuttle Console)"
|
||||
build_path = /obj/machinery/computer/shuttle/labor/one_way
|
||||
/obj/item/weapon/circuitboard/ferry
|
||||
name = "circuit Board (Transport Ferry)"
|
||||
build_path = /obj/machinery/computer/shuttle/ferry
|
||||
/obj/item/weapon/circuitboard/ferry/request
|
||||
name = "circuit Board (Transport Ferry Console)"
|
||||
build_path = /obj/machinery/computer/shuttle/ferry/request
|
||||
/obj/item/weapon/circuitboard/mining_shuttle
|
||||
name = "circuit Board (Mining Shuttle)"
|
||||
build_path = /obj/machinery/computer/shuttle/mining
|
||||
/obj/item/weapon/circuitboard/white_ship
|
||||
name = "circuit Board (White Ship)"
|
||||
build_path = /obj/machinery/computer/shuttle/white_ship
|
||||
|
||||
|
||||
/obj/item/weapon/circuitboard/curefab
|
||||
name = "Circuit board (Cure Fabricator)"
|
||||
build_path = /obj/machinery/computer/curer
|
||||
/obj/item/weapon/circuitboard/splicer
|
||||
name = "Circuit board (Disease Splicer)"
|
||||
build_path = /obj/machinery/computer/diseasesplicer
|
||||
/obj/item/weapon/circuitboard/labor_shuttle
|
||||
name = "circuit Board (Labor Shuttle)"
|
||||
build_path = /obj/machinery/computer/labor_shuttle
|
||||
/obj/item/weapon/circuitboard/labor_shuttle/one_way
|
||||
name = "circuit Board (Prisoner Shuttle Console)"
|
||||
build_path = /obj/machinery/computer/labor_shuttle/one_way
|
||||
/obj/item/weapon/circuitboard/mining_shuttle
|
||||
name = "Circuit board (Mining Shuttle)"
|
||||
build_path = /obj/machinery/computer/shuttle_control/mining
|
||||
origin_tech = "programming=2"
|
||||
/obj/item/weapon/circuitboard/white_ship
|
||||
name = "circuit Board (White Ship)"
|
||||
desc = {"A dusty circuitboard, marked "property of the NGV Venal"."}
|
||||
build_path = /obj/machinery/computer/shuttle_control/multi/whiteship
|
||||
origin_tech = "programming=2"
|
||||
/obj/item/weapon/circuitboard/engineering_shuttle
|
||||
name = "Circuit board (Engineering Shuttle)"
|
||||
build_path = /obj/machinery/computer/shuttle_control/engineering
|
||||
origin_tech = "programming=2"
|
||||
/obj/item/weapon/circuitboard/research_shuttle
|
||||
name = "Circuit board (Research Shuttle)"
|
||||
build_path = /obj/machinery/computer/shuttle_control/research
|
||||
origin_tech = "programming=2"
|
||||
/obj/item/weapon/circuitboard/HolodeckControl
|
||||
name = "Circuit board (Holodeck Control)"
|
||||
build_path = /obj/machinery/computer/HolodeckControl
|
||||
@@ -232,10 +236,6 @@
|
||||
name = "Circuit board (Area Air Control)"
|
||||
build_path = /obj/machinery/computer/area_atmos
|
||||
origin_tech = "programming=2"
|
||||
/obj/item/weapon/circuitboard/prison_shuttle
|
||||
name = "Circuit board (Prison Shuttle)"
|
||||
build_path = /obj/machinery/computer/prison_shuttle
|
||||
origin_tech = "programming=2"
|
||||
/obj/item/weapon/circuitboard/telesci_console
|
||||
name = "Circuit board (Telepad Control Console)"
|
||||
build_path = /obj/machinery/computer/telescience
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
|
||||
// Other computer monitors.
|
||||
/obj/machinery/computer/security/telescreen
|
||||
name = "Telescreen"
|
||||
name = "\improper Telescreen"
|
||||
desc = "Used for watching camera networks."
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_state = "telescreen"
|
||||
@@ -295,7 +295,7 @@
|
||||
return
|
||||
|
||||
/obj/machinery/computer/security/telescreen/entertainment
|
||||
name = "Entertainment Monitor"
|
||||
name = "entertainment monitor"
|
||||
desc = "Damn, they better have Paradise TV on these things."
|
||||
icon = 'icons/obj/status_display.dmi'
|
||||
icon_state = "entertainment"
|
||||
@@ -305,7 +305,7 @@
|
||||
luminosity = 0
|
||||
|
||||
/obj/machinery/computer/security/wooden_tv
|
||||
name = "Security Camera Monitor"
|
||||
name = "security camera monitor"
|
||||
desc = "An old TV hooked into the stations camera network."
|
||||
icon_state = "television"
|
||||
icon_keyboard = null
|
||||
@@ -315,7 +315,7 @@
|
||||
network = list("SS13")
|
||||
|
||||
/obj/machinery/computer/security/mining
|
||||
name = "Outpost Camera Monitor"
|
||||
name = "outpost camera monitor"
|
||||
desc = "Used to access the various cameras on the outpost."
|
||||
icon_keyboard = "mining_key"
|
||||
icon_screen = "mining"
|
||||
@@ -323,7 +323,7 @@
|
||||
network = list("Mining Outpost")
|
||||
|
||||
/obj/machinery/computer/security/engineering
|
||||
name = "Engineering Camera Monitor"
|
||||
name = "engineering camera monitor"
|
||||
desc = "Used to monitor fires and breaches."
|
||||
icon_keyboard = "power_key"
|
||||
icon_screen = "engie_cams"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
var/time_last_changed_position = 0
|
||||
|
||||
/obj/machinery/computer/card
|
||||
name = "Identification Computer"
|
||||
name = "identification computer"
|
||||
desc = "Terminal for programming Nanotrasen employee ID cards to access parts of the station."
|
||||
icon_keyboard = "id_key"
|
||||
icon_screen = "id"
|
||||
@@ -428,6 +428,6 @@ var/time_last_changed_position = 0
|
||||
return 1
|
||||
|
||||
/obj/machinery/computer/card/centcom
|
||||
name = "CentCom Identification Computer"
|
||||
name = "\improper CentCom identification computer"
|
||||
circuit = /obj/item/weapon/circuitboard/card/centcom
|
||||
req_access = list(access_cent_commander)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/machinery/computer/cloning
|
||||
name = "Cloning Console"
|
||||
name = "cloning console"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_keyboard = "med_key"
|
||||
icon_screen = "dna"
|
||||
@@ -28,7 +28,7 @@
|
||||
return ..()
|
||||
|
||||
/obj/machinery/computer/cloning/process()
|
||||
if(!scanner || !pods.len || !autoprocess)
|
||||
if(!scanner || !pods.len || !autoprocess || stat & NOPOWER)
|
||||
return
|
||||
|
||||
if(scanner.occupant && (scanner.scan_level > 2))
|
||||
@@ -341,6 +341,10 @@
|
||||
return
|
||||
|
||||
/obj/machinery/computer/cloning/proc/scan_mob(mob/living/carbon/human/subject as mob)
|
||||
if (stat & NOPOWER)
|
||||
return
|
||||
if (scanner.stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
if ((isnull(subject)) || (!(ishuman(subject))) || (!subject.dna) || (subject.species.flags & NO_SCAN))
|
||||
scantemp = "<span class=\"bad\">Error: Unable to locate valid genetic data.</span>"
|
||||
nanomanager.update_uis(src)
|
||||
|
||||
@@ -4,37 +4,9 @@
|
||||
#define COMM_SCREEN_MESSAGES 3
|
||||
#define COMM_SCREEN_SECLEVEL 4
|
||||
|
||||
var/shuttle_call/shuttle_calls[0]
|
||||
|
||||
#define SHUTTLE_RECALL -1
|
||||
#define SHUTTLE_CALL 1
|
||||
#define SHUTTLE_TRANSFER 2
|
||||
|
||||
/shuttle_call
|
||||
var/direction=0
|
||||
var/who=""
|
||||
var/ckey=""
|
||||
var/turf/from=null
|
||||
var/where=""
|
||||
var/when
|
||||
var/eta=null
|
||||
|
||||
/shuttle_call/New(var/mob/user,var/obj/machinery/computer/communications/computer,var/dir)
|
||||
direction=dir
|
||||
if(user)
|
||||
who="[user]"
|
||||
ckey="[user.key]"
|
||||
if(computer)
|
||||
where="[computer]"
|
||||
from=get_turf(computer)
|
||||
when=worldtime2text()
|
||||
if(dir==SHUTTLE_RECALL)
|
||||
var/timeleft=emergency_shuttle.estimate_arrival_time()
|
||||
eta="[timeleft / 60 % 60]:[add_zero(num2text(timeleft % 60), 2)]"
|
||||
|
||||
// The communications computer
|
||||
/obj/machinery/computer/communications
|
||||
name = "Communications Console"
|
||||
name = "communications console"
|
||||
desc = "This can be used for various important functions. Still under developement."
|
||||
icon_keyboard = "tech_key"
|
||||
icon_screen = "comm"
|
||||
@@ -62,6 +34,7 @@ var/shuttle_call/shuttle_calls[0]
|
||||
light_color = LIGHT_COLOR_LIGHTBLUE
|
||||
|
||||
/obj/machinery/computer/communications/New()
|
||||
shuttle_caller_list += src
|
||||
..()
|
||||
crew_announcement.newscast = 1
|
||||
|
||||
@@ -179,7 +152,7 @@ var/shuttle_call/shuttle_calls[0]
|
||||
return
|
||||
|
||||
call_shuttle_proc(usr, input)
|
||||
if(emergency_shuttle.online())
|
||||
if(shuttle_master.emergency.timer)
|
||||
post_status("shuttle")
|
||||
setMenuState(usr,COMM_SCREEN_MAIN)
|
||||
|
||||
@@ -191,7 +164,7 @@ var/shuttle_call/shuttle_calls[0]
|
||||
var/response = alert("Are you sure you wish to recall the shuttle?", "Confirm", "Yes", "No")
|
||||
if(response == "Yes")
|
||||
cancel_call_proc(usr)
|
||||
if(emergency_shuttle.online())
|
||||
if(shuttle_master.emergency.timer)
|
||||
post_status("shuttle")
|
||||
setMenuState(usr,COMM_SCREEN_MAIN)
|
||||
|
||||
@@ -328,54 +301,62 @@ var/shuttle_call/shuttle_calls[0]
|
||||
/obj/machinery/computer/communications/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null)
|
||||
// this is the data which will be sent to the ui
|
||||
var/data[0]
|
||||
data["is_ai"] = isAI(user)||isrobot(user)
|
||||
data["menu_state"] = data["is_ai"] ? ai_menu_state : menu_state
|
||||
data["emagged"] = emagged
|
||||
data["is_ai"] = isAI(user)||isrobot(user)
|
||||
data["menu_state"] = data["is_ai"] ? ai_menu_state : menu_state
|
||||
data["emagged"] = emagged
|
||||
data["authenticated"] = is_authenticated(user, 0)
|
||||
data["screen"] = getMenuState(usr)
|
||||
data["screen"] = getMenuState(usr)
|
||||
|
||||
data["stat_display"] = list(
|
||||
"type"=display_type,
|
||||
"line_1"=(stat_msg1 ? stat_msg1 : "-----"),
|
||||
"line_2"=(stat_msg2 ? stat_msg2 : "-----"),
|
||||
"presets"=list(
|
||||
list("name"="blank", "label"="Clear", "desc"="Blank slate"),
|
||||
list("name"="shuttle", "label"="Shuttle ETA", "desc"="Display how much time is left."),
|
||||
list("name"="message", "label"="Message", "desc"="A custom message.")
|
||||
data["stat_display"] = list(
|
||||
"type" = display_type,
|
||||
"line_1" = (stat_msg1 ? stat_msg1 : "-----"),
|
||||
"line_2" = (stat_msg2 ? stat_msg2 : "-----"),
|
||||
|
||||
"presets" = list(
|
||||
list("name" = "blank", "label" = "Clear", "desc" = "Blank slate"),
|
||||
list("name" = "shuttle", "label" = "Shuttle ETA", "desc" = "Display how much time is left."),
|
||||
list("name" = "message", "label" = "Message", "desc" = "A custom message.")
|
||||
),
|
||||
|
||||
"alerts"=list(
|
||||
list("alert"="default", "label"="Nanotrasen", "desc"="Oh god."),
|
||||
list("alert"="redalert", "label"="Red Alert", "desc"="Nothing to do with communists."),
|
||||
list("alert"="lockdown", "label"="Lockdown", "desc"="Let everyone know they're on lockdown."),
|
||||
list("alert"="biohazard", "label"="Biohazard", "desc"="Great for virus outbreaks and parties."),
|
||||
list("alert" = "default", "label" = "Nanotrasen", "desc" = "Oh god."),
|
||||
list("alert" = "redalert", "label" = "Red Alert", "desc" = "Nothing to do with communists."),
|
||||
list("alert" = "lockdown", "label" = "Lockdown", "desc" = "Let everyone know they're on lockdown."),
|
||||
list("alert" = "biohazard", "label" = "Biohazard", "desc" = "Great for virus outbreaks and parties."),
|
||||
)
|
||||
)
|
||||
data["security_level"] = security_level
|
||||
|
||||
data["security_level"] = security_level
|
||||
data["str_security_level"] = capitalize(get_security_level())
|
||||
data["levels"] = list(
|
||||
list("id"=SEC_LEVEL_GREEN, "name"="Green"),
|
||||
list("id"=SEC_LEVEL_BLUE, "name"="Blue"),
|
||||
list("id" = SEC_LEVEL_GREEN, "name" = "Green"),
|
||||
list("id" = SEC_LEVEL_BLUE, "name" = "Blue"),
|
||||
//SEC_LEVEL_RED = list("name"="Red"),
|
||||
)
|
||||
|
||||
var/msg_data[0]
|
||||
for(var/i=1;i<=src.messagetext.len;i++)
|
||||
for(var/i = 1; i <= src.messagetext.len; i++)
|
||||
var/cur_msg[0]
|
||||
cur_msg["title"]=messagetitle[i]
|
||||
cur_msg["body"]=messagetext[i]
|
||||
msg_data += list(cur_msg)
|
||||
data["messages"] = msg_data
|
||||
cur_msg["title"] = messagetitle[i]
|
||||
cur_msg["body"] = messagetext[i]
|
||||
msg_data += list(cur_msg)
|
||||
|
||||
data["messages"] = msg_data
|
||||
data["current_message"] = data["is_ai"] ? aicurrmsg : currmsg
|
||||
|
||||
var/shuttle[0]
|
||||
shuttle["on"]=emergency_shuttle.online()
|
||||
if (emergency_shuttle.online() && emergency_shuttle.location())
|
||||
var/timeleft=emergency_shuttle.estimate_arrival_time()
|
||||
shuttle["eta"]="[timeleft / 60 % 60]:[add_zero(num2text(timeleft % 60), 2)]"
|
||||
shuttle["pos"] = !emergency_shuttle.location()
|
||||
shuttle["can_recall"]=!(recall_time_limit && world.time >= recall_time_limit)
|
||||
data["lastCallLoc"] = shuttle_master.emergencyLastCallLoc ? format_text(shuttle_master.emergencyLastCallLoc.name) : null
|
||||
|
||||
data["shuttle"]=shuttle
|
||||
var/shuttle[0]
|
||||
switch(shuttle_master.emergency.mode)
|
||||
if(SHUTTLE_IDLE, SHUTTLE_RECALL)
|
||||
shuttle["callStatus"] = 2 //#define
|
||||
else
|
||||
shuttle["callStatus"] = 1
|
||||
if(shuttle_master.emergency.mode == SHUTTLE_CALL)
|
||||
var/timeleft = shuttle_master.emergency.timeLeft()
|
||||
shuttle["eta"] = "[timeleft / 60 % 60]:[add_zero(num2text(timeleft % 60), 2)]"
|
||||
|
||||
data["shuttle"] = shuttle
|
||||
|
||||
// update the ui if it exists, returns null if no ui is passed/found
|
||||
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data)
|
||||
@@ -412,19 +393,14 @@ var/shuttle_call/shuttle_calls[0]
|
||||
else
|
||||
return menu_state
|
||||
|
||||
/proc/enable_prison_shuttle(var/mob/user)
|
||||
for(var/obj/machinery/computer/prison_shuttle/PS in world)
|
||||
PS.allowedtocall = !(PS.allowedtocall)
|
||||
/proc/enable_prison_shuttle(var/mob/user);
|
||||
|
||||
/proc/call_shuttle_proc(var/mob/user, var/reason)
|
||||
if ((!( ticker ) || !emergency_shuttle.location()))
|
||||
return
|
||||
|
||||
if(sent_strike_team == 1)
|
||||
user << "<span class='warning'>Central Command will not allow the shuttle to be called. Consider all contracts terminated.</span>"
|
||||
return
|
||||
|
||||
if(emergency_shuttle.deny_shuttle)
|
||||
if(shuttle_master.emergencyNoEscape)
|
||||
user << "<span class='warning'>The emergency shuttle may not be sent at this time. Please try again later.</span>"
|
||||
return
|
||||
|
||||
@@ -432,39 +408,24 @@ var/shuttle_call/shuttle_calls[0]
|
||||
user << "<span class='warning'>The emergency shuttle is refueling. Please wait another [round((6000-world.time)/600)] minutes before trying again.</span>"
|
||||
return
|
||||
|
||||
if(emergency_shuttle.going_to_centcom())
|
||||
if(shuttle_master.emergency.mode > SHUTTLE_ESCAPE)
|
||||
user << "<span class='warning'>The emergency shuttle may not be called while returning to Central Command.</span>"
|
||||
return
|
||||
|
||||
if(emergency_shuttle.online())
|
||||
user << "<span class='warning'>The emergency shuttle is already on its way.</span>"
|
||||
return
|
||||
|
||||
if(ticker.mode.name == "blob")
|
||||
user << "<span class='warning'>Under directive 7-10, [station_name()] is quarantined until further notice.</span>"
|
||||
return
|
||||
|
||||
emergency_shuttle.call_evac(reason)
|
||||
shuttle_master.requestEvac(user, reason)
|
||||
log_game("[key_name(user)] has called the shuttle.")
|
||||
message_admins("[key_name_admin(user)] has called the shuttle.", 1)
|
||||
|
||||
return
|
||||
|
||||
/proc/init_shift_change(var/mob/user, var/force = 0)
|
||||
if ((!( ticker ) || !emergency_shuttle.location()))
|
||||
return
|
||||
|
||||
if(emergency_shuttle.going_to_centcom())
|
||||
user << "The shuttle may not be called while returning to Central Command."
|
||||
return
|
||||
|
||||
if(emergency_shuttle.online())
|
||||
user << "The shuttle is already on its way."
|
||||
return
|
||||
|
||||
// if force is 0, some things may stop the shuttle call
|
||||
if(!force)
|
||||
if(emergency_shuttle.deny_shuttle)
|
||||
if(shuttle_master.emergencyNoEscape)
|
||||
user << "Central Command does not currently have a shuttle available in your sector. Please try again later."
|
||||
return
|
||||
|
||||
@@ -480,22 +441,20 @@ var/shuttle_call/shuttle_calls[0]
|
||||
user << "Under directive 7-10, [station_name()] is quarantined until further notice."
|
||||
return
|
||||
|
||||
emergency_shuttle.call_transfer()
|
||||
log_game("[key_name(user)] has called the shuttle.")
|
||||
message_admins("[key_name_admin(user)] has called the shuttle - [formatJumpTo(user)].", 1)
|
||||
shuttle_master.emergency.request(null, 1, null, " Automatic Crew Transfer", 0)
|
||||
if(user)
|
||||
log_game("[key_name(user)] has called the shuttle.")
|
||||
message_admins("[key_name_admin(user)] has called the shuttle - [formatJumpTo(user)].", 1)
|
||||
return
|
||||
|
||||
|
||||
/proc/cancel_call_proc(var/mob/user)
|
||||
if (!( ticker ) || !emergency_shuttle.can_recall())
|
||||
return
|
||||
if(ticker.mode.name == "meteor")
|
||||
return
|
||||
|
||||
if(!emergency_shuttle.going_to_centcom()) //check that shuttle isn't already heading to centcomm
|
||||
emergency_shuttle.recall()
|
||||
log_game("[key_name(user)] has recalled the shuttle.")
|
||||
message_admins("[key_name_admin(user)] has recalled the shuttle - [formatJumpTo(user)].", 1)
|
||||
shuttle_master.cancelEvac(user)
|
||||
log_game("[key_name(user)] has recalled the shuttle.")
|
||||
message_admins("[key_name_admin(user)] has recalled the shuttle - [formatJumpTo(user)].", 1)
|
||||
return
|
||||
|
||||
/obj/machinery/computer/communications/proc/post_status(var/command, var/data1, var/data2)
|
||||
@@ -522,26 +481,8 @@ var/shuttle_call/shuttle_calls[0]
|
||||
|
||||
|
||||
/obj/machinery/computer/communications/Destroy()
|
||||
|
||||
for(var/obj/machinery/computer/communications/commconsole in world)
|
||||
if(istype(commconsole.loc,/turf) && commconsole != src)
|
||||
return ..()
|
||||
|
||||
for(var/obj/item/weapon/circuitboard/communications/commboard in world)
|
||||
if(istype(commboard.loc,/turf) || istype(commboard.loc,/obj/item/weapon/storage))
|
||||
return ..()
|
||||
|
||||
for(var/mob/living/silicon/ai/shuttlecaller in player_list)
|
||||
if(!shuttlecaller.stat && shuttlecaller.client && istype(shuttlecaller.loc,/turf))
|
||||
return ..()
|
||||
|
||||
if(ticker.mode.name == "revolution" || ticker.mode.name == "AI malfunction" || sent_strike_team)
|
||||
return ..()
|
||||
|
||||
emergency_shuttle.call_evac()
|
||||
log_game("All the AIs, comm consoles and boards are destroyed. Shuttle called.")
|
||||
message_admins("All the AIs, comm consoles and boards are destroyed. Shuttle called.", 1)
|
||||
|
||||
shuttle_caller_list -= src
|
||||
shuttle_master.autoEvac()
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/circuitboard/communications/Destroy()
|
||||
@@ -561,7 +502,7 @@ var/shuttle_call/shuttle_calls[0]
|
||||
if(ticker.mode.name == "revolution" || ticker.mode.name == "AI malfunction" || sent_strike_team)
|
||||
return ..()
|
||||
|
||||
emergency_shuttle.call_evac()
|
||||
shuttle_master.emergency.request(null, 0.3, null, "All communication consoles, boards, and AI's have been destroyed.")
|
||||
log_game("All the AIs, comm consoles and boards are destroyed. Shuttle called.")
|
||||
message_admins("All the AIs, comm consoles and boards are destroyed. Shuttle called.", 1)
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/hologram_comp
|
||||
name = "Hologram Computer"
|
||||
name = "hologram computer"
|
||||
desc = "Rumoured to control holograms."
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_keyboard = "tech_key"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/machinery/computer/HONKputer
|
||||
name = "HONKputer Mark I"
|
||||
name = "\improper HONKputer Mark I"
|
||||
desc = "A yellow computer used in case of critically low levels of HONK."
|
||||
icon = 'icons/obj/machines/HONKputer.dmi'
|
||||
icon_state = "honkputer"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/aiupload
|
||||
name = "AI Upload"
|
||||
name = "\improper AI upload console"
|
||||
desc = "Used to upload laws to the AI."
|
||||
icon_screen = "command"
|
||||
icon_keyboard = "med_key"
|
||||
@@ -64,7 +64,7 @@
|
||||
return 1
|
||||
|
||||
/obj/machinery/computer/borgupload
|
||||
name = "Cyborg Upload"
|
||||
name = "cyborg upload console"
|
||||
desc = "Used to upload laws to Cyborgs."
|
||||
icon_screen = "command"
|
||||
icon_keyboard = "med_key"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/med_data//TODO:SANITY
|
||||
name = "Medical Records"
|
||||
name = "medical records console"
|
||||
desc = "This can be used to check medical records."
|
||||
icon_keyboard = "med_key"
|
||||
icon_screen = "medcomp"
|
||||
@@ -517,8 +517,8 @@
|
||||
|
||||
|
||||
/obj/machinery/computer/med_data/laptop
|
||||
name = "Medical Laptop"
|
||||
desc = "Cheap Nanotrasen Laptop."
|
||||
name = "medical laptop"
|
||||
desc = "Cheap Nanotrasen laptop."
|
||||
icon_state = "laptop"
|
||||
icon_keyboard = "laptop_key"
|
||||
icon_screen = "medlaptop"
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
|
||||
|
||||
/obj/machinery/computer/message_monitor
|
||||
name = "Message Monitor Console"
|
||||
desc = "Used to Monitor the crew's messages, that are sent via PDA. Can also be used to view Request Console messages."
|
||||
name = "message monitoring console"
|
||||
desc = "Used to monitor the crew's messages that are sent via PDA. It can also be used to view Request Console messages."
|
||||
icon_screen = "comm_logs"
|
||||
light_color = LIGHT_COLOR_GREEN
|
||||
var/hack_icon = "tcboss"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/pod
|
||||
name = "Mass Drivers and Pod Doors Control"
|
||||
desc = "A controll for launching pods. Some people prefer firing Mechas."
|
||||
name = "mass drivers and pod doors control"
|
||||
desc = "A control for launching pods. Some people prefer firing Mechas."
|
||||
icon_screen = "mass_driver"
|
||||
light_color = "#555555"
|
||||
circuit = /obj/item/weapon/circuitboard/pod
|
||||
@@ -268,7 +268,7 @@
|
||||
|
||||
|
||||
/obj/machinery/computer/pod/old/syndicate
|
||||
name = "External Airlock Controls"
|
||||
name = "external airlock controls"
|
||||
desc = "The Syndicate operate on a tight budget. Operates external airlocks."
|
||||
req_access = list(access_syndicate)
|
||||
circuit = /obj/item/weapon/circuitboard/syndicatedoor
|
||||
@@ -282,7 +282,7 @@
|
||||
..()
|
||||
|
||||
/obj/machinery/computer/pod/old/swf
|
||||
name = "Magix System IV"
|
||||
name = "\improper Magix System IV"
|
||||
desc = "An arcane artifact that holds much magic. Running E-Knock 2.2: Sorceror's Edition"
|
||||
circuit = /obj/item/weapon/circuitboard/swfdoor
|
||||
|
||||
@@ -310,12 +310,11 @@
|
||||
spawn_marauder.Add(L)
|
||||
for(var/obj/effect/landmark/L in world)
|
||||
if(L.name == "Marauder Exit")
|
||||
var/obj/effect/portal/P = new(L.loc)
|
||||
var/obj/effect/portal/P = new(L.loc, pick(spawn_marauder))
|
||||
P.invisibility = 101//So it is not seen by anyone.
|
||||
P.failchance = 0//So it has no fail chance when teleporting.
|
||||
P.target = pick(spawn_marauder)//Where the marauder will arrive.
|
||||
spawn_marauder.Remove(P.target)
|
||||
|
||||
|
||||
for(var/obj/machinery/door/poddoor/M in world)
|
||||
if(M.z != src.z) continue
|
||||
if(M.id_tag == ident_tag)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/machinery/computer/podtracker
|
||||
name = "Pod Tracking Console"
|
||||
name = "pod tracking console"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_keyboard = "tech_key"
|
||||
icon_screen = "rdcomp"
|
||||
@@ -9,10 +9,10 @@
|
||||
|
||||
/obj/machinery/computer/podtracker/attack_ai(var/mob/user as mob)
|
||||
return attack_hand(user)
|
||||
|
||||
|
||||
/obj/machinery/computer/podtracker/attack_hand(user as mob)
|
||||
ui_interact(user)
|
||||
|
||||
|
||||
/obj/machinery/computer/podtracker/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
|
||||
var/data[0]
|
||||
var/list/pods[0]
|
||||
@@ -28,7 +28,7 @@
|
||||
if(myPod.occupant2)
|
||||
occupant2 = myPod.occupant2.name
|
||||
pods.Add(list(list("pod" = "\ref[myPod]", "name" = podname, "occupant" = occupant, "occupant2" = occupant2, "x" = myPod.x, "y" = myPod.y, "z" = myPod.z)))
|
||||
|
||||
|
||||
data["pods"] = pods
|
||||
|
||||
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
|
||||
@@ -42,6 +42,6 @@
|
||||
/obj/machinery/computer/podtracker/Topic(href, href_list)
|
||||
if(..())
|
||||
return 1
|
||||
|
||||
|
||||
if(href_list["refresh"])
|
||||
nanomanager.update_uis(src)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/prisoner
|
||||
name = "Prisoner Management"
|
||||
name = "prisoner management console"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_keyboard = "security_key"
|
||||
icon_screen = "explosive"
|
||||
|
||||
@@ -11,7 +11,7 @@ var/prison_shuttle_time = 0
|
||||
var/prison_shuttle_timeleft = 0
|
||||
|
||||
/obj/machinery/computer/prison_shuttle
|
||||
name = "Prison Shuttle Console"
|
||||
name = "prison shuttle console"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_keyboard = "security_key"
|
||||
icon_screen = "syndishuttle"
|
||||
|
||||
@@ -217,6 +217,15 @@
|
||||
else
|
||||
robot["cell"] = 0
|
||||
|
||||
var/turf/pos = get_turf(R)
|
||||
var/area/bot_area = get_area(R)
|
||||
robot["xpos"] = pos.x
|
||||
robot["ypos"] = pos.y
|
||||
robot["zpos"] = pos.z
|
||||
robot["area"] = format_text(bot_area.name)
|
||||
|
||||
robot["health"] = round(R.health * 100 / R.maxHealth,0.1)
|
||||
|
||||
robot["module"] = R.module ? R.module.name : "None"
|
||||
robot["master_ai"] = R.connected_ai ? R.connected_ai.name : "None"
|
||||
robot["hackable"] = 0
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/secure_data//TODO:SANITY
|
||||
name = "Security Records"
|
||||
desc = "Used to view and edit personnel's security records"
|
||||
name = "security records"
|
||||
desc = "Used to view and edit personnel's security records."
|
||||
icon_keyboard = "security_key"
|
||||
icon_screen = "security"
|
||||
req_one_access = list(access_security, access_forensics_lockers)
|
||||
@@ -511,8 +511,6 @@ What a mess.*/
|
||||
|
||||
if ("Change Criminal Status")
|
||||
if (active2)
|
||||
for(var/mob/living/carbon/human/H in player_list)
|
||||
H.hud_updateflag |= 1 << WANTED_HUD
|
||||
switch(href_list["criminal2"])
|
||||
if("none")
|
||||
active2.fields["criminal"] = "None"
|
||||
@@ -525,6 +523,9 @@ What a mess.*/
|
||||
if("released")
|
||||
active2.fields["criminal"] = "Released"
|
||||
|
||||
for(var/mob/living/carbon/human/H in mob_list)
|
||||
H.sec_hud_set_security_status()
|
||||
|
||||
if ("Delete Record (Security) Execute")
|
||||
if (active2)
|
||||
qdel(active2)
|
||||
|
||||
@@ -1,75 +1,97 @@
|
||||
/obj/machinery/computer/shuttle
|
||||
name = "Shuttle"
|
||||
/obj/machinery/computer/emergency_shuttle
|
||||
name = "emergency shuttle console"
|
||||
desc = "For shuttle control."
|
||||
icon_keyboard = "tech_key"
|
||||
icon_screen = "shuttle"
|
||||
var/auth_need = 3.0
|
||||
var/list/authorized = list( )
|
||||
|
||||
light_color = LIGHT_COLOR_CYAN
|
||||
icon_keyboard = "tech_key"
|
||||
var/auth_need = 3
|
||||
var/list/authorized = list()
|
||||
|
||||
|
||||
attackby(var/obj/item/weapon/card/W as obj, var/mob/user as mob, params)
|
||||
if(stat & (BROKEN|NOPOWER)) return
|
||||
if ((!( istype(W, /obj/item/weapon/card) ) || !( ticker ) || emergency_shuttle.location() || !( user ))) return
|
||||
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||
if (istype(W, /obj/item/device/pda))
|
||||
var/obj/item/device/pda/pda = W
|
||||
W = pda.id
|
||||
if (!W:access) //no access
|
||||
user << "The access level of [W:registered_name]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
var/list/cardaccess = W:access
|
||||
if(!istype(cardaccess, /list) || !cardaccess.len) //no access
|
||||
user << "The access level of [W:registered_name]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
if(!(access_heads in W:access)) //doesn't have this access
|
||||
user << "The access level of [W:registered_name]\'s card is not high enough. "
|
||||
return 0
|
||||
|
||||
var/choice = alert(user, text("Would you like to (un)authorize a shortened launch time? [] authorization\s are still needed. Use abort to cancel all authorizations.", src.auth_need - src.authorized.len), "Shuttle Launch", "Authorize", "Repeal", "Abort")
|
||||
if(emergency_shuttle.location() && user.get_active_hand() != W)
|
||||
return 0
|
||||
switch(choice)
|
||||
if("Authorize")
|
||||
src.authorized -= W:registered_name
|
||||
src.authorized += W:registered_name
|
||||
if (src.auth_need - src.authorized.len > 0)
|
||||
message_admins("[key_name_admin(user.client)] has authorized early shuttle launch ",0,1)
|
||||
log_game("[key_name(user)] has authorized early shuttle launch in ([x],[y],[z])")
|
||||
world << text("\blue <B>Alert: [] authorizations needed until shuttle is launched early</B>", src.auth_need - src.authorized.len)
|
||||
else
|
||||
message_admins("[key_name_admin(user.client)] has launched the emergency shuttle before launch.",0,1)
|
||||
log_game("[key_name(user)] has launched the emergency shuttle before launch in ([x],[y],[z]).")
|
||||
world << "\blue <B>Alert: Shuttle launch time shortened to 10 seconds!</B>"
|
||||
emergency_shuttle.set_launch_countdown(10)
|
||||
//src.authorized = null
|
||||
qdel(src.authorized)
|
||||
src.authorized = list( )
|
||||
|
||||
if("Repeal")
|
||||
src.authorized -= W:registered_name
|
||||
world << text("\blue <B>Alert: [] authorizations needed until shuttle is launched early</B>", src.auth_need - src.authorized.len)
|
||||
|
||||
if("Abort")
|
||||
world << "\blue <B>All authorizations to shortening time for shuttle launch have been revoked!</B>"
|
||||
src.authorized.len = 0
|
||||
src.authorized = list( )
|
||||
/obj/machinery/computer/emergency_shuttle/attackby(obj/item/weapon/card/W, mob/user, params)
|
||||
if(stat & (BROKEN|NOPOWER)) return
|
||||
if(!istype(W, /obj/item/weapon/card))
|
||||
return
|
||||
if(shuttle_master.emergency.mode != SHUTTLE_DOCKED)
|
||||
return
|
||||
if(!user)
|
||||
return
|
||||
if(shuttle_master.emergency.timeLeft() < 11)
|
||||
return
|
||||
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||
if (istype(W, /obj/item/device/pda))
|
||||
var/obj/item/device/pda/pda = W
|
||||
W = pda.id
|
||||
if (!W:access) //no access
|
||||
user << "The access level of [W:registered_name]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
emag_act(mob/user as mob)
|
||||
if (!emagged)
|
||||
var/choice = alert(user, "Would you like to launch the shuttle?","Shuttle control", "Launch", "Cancel")
|
||||
var/list/cardaccess = W:access
|
||||
if(!istype(cardaccess, /list) || !cardaccess.len) //no access
|
||||
user << "The access level of [W:registered_name]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
if(!emagged && !emergency_shuttle.location())
|
||||
switch(choice)
|
||||
if("Launch")
|
||||
message_admins("[key_name_admin(user.client)] has emagged the emergency shuttle before launch.",0,1)
|
||||
log_game("[key_name(user)] has emagged the emergency shuttle in ([x],[y],[z]) before launch.")
|
||||
world << "\blue <B>Alert: Shuttle launch time shortened to 10 seconds!</B>"
|
||||
emergency_shuttle.set_launch_countdown(10)
|
||||
emagged = 1
|
||||
if("Cancel")
|
||||
return
|
||||
if(!(access_heads in W:access)) //doesn't have this access
|
||||
user << "The access level of [W:registered_name]\'s card is not high enough. "
|
||||
return 0
|
||||
|
||||
var/choice = alert(user, text("Would you like to (un)authorize a shortened launch time? [] authorization\s are still needed. Use abort to cancel all authorizations.", src.auth_need - src.authorized.len), "Shuttle Launch", "Authorize", "Repeal", "Abort")
|
||||
if(shuttle_master.emergency.mode != SHUTTLE_DOCKED || user.get_active_hand() != W)
|
||||
return 0
|
||||
|
||||
var/seconds = shuttle_master.emergency.timeLeft()
|
||||
if(seconds <= 10)
|
||||
return 0
|
||||
|
||||
switch(choice)
|
||||
if("Authorize")
|
||||
if(!authorized.Find(W:registered_name))
|
||||
authorized += W:registered_name
|
||||
if(auth_need - authorized.len > 0)
|
||||
message_admins("[key_name_admin(user.client)](<A HREF='?_src_=holder;adminmoreinfo=\ref[user]'>?</A>) (<A HREF='?_src_=holder;adminplayerobservefollow=\ref[user]'>FLW</A>) has authorized early shuttle launch ",0,1)
|
||||
log_game("[key_name(user)] has authorized early shuttle launch in ([x],[y],[z])")
|
||||
minor_announcement.Announce("[auth_need - authorized.len] more authorization(s) needed until shuttle is launched early")
|
||||
else
|
||||
message_admins("[key_name_admin(user.client)](<A HREF='?_src_=holder;adminmoreinfo=\ref[user]'>?</A>) (<A HREF='?_src_=holder;adminplayerobservefollow=\ref[user]'>FLW</A>) has launched the emergency shuttle [seconds] seconds before launch.",0,1)
|
||||
log_game("[key_name(user)] has launched the emergency shuttle in ([x],[y],[z]) [seconds] seconds before launch.")
|
||||
minor_announcement.Announce("The emergency shuttle will launch in 10 seconds")
|
||||
shuttle_master.emergency.setTimer(100)
|
||||
|
||||
if("Repeal")
|
||||
if(authorized.Remove(W:registered_name))
|
||||
minor_announcement.Announce("[auth_need - authorized.len] authorizations needed until shuttle is launched early")
|
||||
|
||||
if("Abort")
|
||||
if(authorized.len)
|
||||
minor_announcement.Announce("All authorizations to launch the shuttle early have been revoked.")
|
||||
authorized.Cut()
|
||||
|
||||
/obj/machinery/computer/emergency_shuttle/emag_act(mob/user)
|
||||
if(!emagged && shuttle_master.emergency.mode == SHUTTLE_DOCKED)
|
||||
var/time = shuttle_master.emergency.timeLeft()
|
||||
message_admins("[key_name_admin(user.client)](<A HREF='?_src_=holder;adminmoreinfo=\ref[user]'>?</A>) (<A HREF='?_src_=holder;adminplayerobservefollow=\ref[user]'>FLW</A>) has emagged the emergency shuttle [time] seconds before launch.",0,1)
|
||||
log_game("[key_name(user)] has emagged the emergency shuttle in ([x],[y],[z]) [time] seconds before launch.")
|
||||
minor_announcement.Announce("The emergency shuttle will launch in 10 seconds", "SYSTEM ERROR:")
|
||||
shuttle_master.emergency.setTimer(100)
|
||||
emagged = 1
|
||||
|
||||
/obj/machinery/computer/supplycomp
|
||||
name = "supply shuttle console"
|
||||
desc = "Used to order supplies."
|
||||
icon_screen = "supply"
|
||||
req_access = list(access_cargo)
|
||||
circuit = /obj/item/weapon/circuitboard/supplycomp
|
||||
var/temp = null
|
||||
var/reqtime = 0 //Cooldown for requisitions - Quarxink
|
||||
var/hacked = 0
|
||||
var/can_order_contraband = 0
|
||||
var/last_viewed_group = "categories"
|
||||
|
||||
|
||||
/obj/machinery/computer/ordercomp
|
||||
name = "supply ordering console"
|
||||
desc = "Used to order supplies from cargo staff."
|
||||
icon_screen = "request"
|
||||
circuit = /obj/item/weapon/circuitboard/ordercomp
|
||||
var/temp = null
|
||||
var/reqtime = 0 //Cooldown for requisitions - Quarxink
|
||||
var/last_viewed_group = "categories"
|
||||
@@ -1,7 +1,7 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
|
||||
|
||||
/obj/machinery/computer/skills//TODO:SANITY
|
||||
name = "Employment Records"
|
||||
name = "employment records console"
|
||||
desc = "Used to view personnel's employment records"
|
||||
icon_state = "laptop"
|
||||
icon_keyboard = "laptop_key"
|
||||
|
||||
@@ -12,7 +12,7 @@ var/specops_shuttle_time = 0
|
||||
var/specops_shuttle_timeleft = 0
|
||||
|
||||
/obj/machinery/computer/specops_shuttle
|
||||
name = "Spec. Ops. Shuttle Console"
|
||||
name = "\improper Spec. Ops. shuttle console"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_keyboard = "security_key"
|
||||
icon_screen = "syndishuttle"
|
||||
@@ -165,10 +165,9 @@ var/specops_shuttle_timeleft = 0
|
||||
spawn_marauder.Add(L.loc)
|
||||
for(var/obj/effect/landmark/L in world)
|
||||
if(L.name == "Marauder Exit")
|
||||
var/obj/effect/portal/P = new(L.loc)
|
||||
var/obj/effect/portal/P = new(L.loc, pick(spawn_marauder))
|
||||
//P.invisibility = 101//So it is not seen by anyone.
|
||||
P.failchance = 0//So it has no fail chance when teleporting.
|
||||
P.target = pick(spawn_marauder)//Where the marauder will arrive.
|
||||
spawn_marauder.Remove(P.target)
|
||||
|
||||
sleep(10)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
/obj/machinery/computer/station_alert
|
||||
name = "Station Alert Console"
|
||||
name = "station alert console"
|
||||
desc = "Used to access the station's automated alert system."
|
||||
icon_keyboard = "tech_key"
|
||||
icon_screen = "alert:0"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/machinery/computer/merch
|
||||
name = "Merch Computer"
|
||||
name = "merch computer"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_screen = "comm_logs"
|
||||
circuit = /obj/item/weapon/circuitboard/merch
|
||||
|
||||
@@ -11,7 +11,7 @@ var/syndicate_elite_shuttle_time = 0
|
||||
var/syndicate_elite_shuttle_timeleft = 0
|
||||
|
||||
/obj/machinery/computer/syndicate_elite_shuttle
|
||||
name = "Elite Syndicate Squad Shuttle Console"
|
||||
name = "\improper Elite Syndicate Squad shuttle console"
|
||||
icon = 'icons/obj/computer.dmi'
|
||||
icon_keyboard = "syndie_key"
|
||||
icon_screen = "syndishuttle"
|
||||
|
||||
@@ -4,12 +4,12 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
|
||||
|
||||
|
||||
/obj/machinery/computer/telecrystals
|
||||
name = "\improper Telecrystal assignment station"
|
||||
name = "telecrystal assignment station"
|
||||
desc = "A device used to manage telecrystals during group operations. You shouldn't be looking at this particular one..."
|
||||
|
||||
/////////////////////////////////////////////
|
||||
/obj/machinery/computer/telecrystals/uplinker
|
||||
name = "\improper Telecrystal upload/recieve station"
|
||||
name = "telecrystal upload/recieve station"
|
||||
desc = "A device used to manage telecrystals during group operations. To use, simply insert your uplink. With your uplink installed \
|
||||
you can upload your telecrystals to the group's pool using the console, or be assigned additional telecrystals by your lieutenant."
|
||||
icon_state = "tcstation"
|
||||
|
||||
Reference in New Issue
Block a user