New computer sounds (#80)

* B E P I S

* wew

* nnn

* ya

* k

* oh wait dont need these
This commit is contained in:
L.E.D
2016-12-01 09:03:23 -05:00
committed by TalkingCactus
parent 41eb5dcbbf
commit c9c5690d78
28 changed files with 228 additions and 17 deletions

View File

@@ -40,8 +40,10 @@
else
patient = null
dat += "<B>No patient detected</B>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
dat += "<B>Operating table not found.</B>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
var/datum/browser/popup = new(user, "op", "Operating Computer", 400, 500)
popup.set_content(dat)

View File

@@ -83,6 +83,8 @@
if(..())
return
if(href_list["fix"])
usr << "<span class='notice'>Reconstruction in progress. This will take several minutes.</span>"
playsound(src, 'sound/machines/terminal_processing.ogg', 25, 0)
active = 1
while (occupier.health < 100)
occupier.adjustOxyLoss(-1, 0)

View File

@@ -70,6 +70,7 @@
if(!(user in watchers))
user.unset_machine() // no usable camera on the network, we disconnect the user from the computer.
return
playsound(src, 'sound/machines/terminal_displaying.ogg', 25, 0)
use_camera_console(user)
/obj/machinery/computer/security/proc/use_camera_console(mob/user)
@@ -79,12 +80,14 @@
return
if(!t)
user.unset_machine()
playsound(src, 'sound/machines/terminal_off.ogg', 25, 0)
return
var/obj/machinery/camera/C = camera_list[t]
if(t == "Cancel")
user.unset_machine()
playsound(src, 'sound/machines/terminal_off.ogg', 25, 0)
return
if(C)
var/camera_fail = 0
@@ -108,9 +111,12 @@
A.client.eye = A.eyeobj
else
user.reset_perspective(C)
user.overlay_fullscreen("flash", /obj/screen/fullscreen/flash/noise)
user.clear_fullscreen("flash", 5)
watchers[user] = C
use_power(50)
addtimer(src, "use_camera_console", 5, FALSE, user)
playsound(src, 'sound/machines/terminal_select.ogg', 25, 0)
else
user.unset_machine()

View File

@@ -148,6 +148,7 @@
C.remote_control = null
C.unset_machine()
src.Remove(C)
playsound(remote_eye.origin, 'sound/machines/terminal_off.ogg', 25, 0)
/datum/action/innate/camera_jump
name = "Jump To Camera"
@@ -174,8 +175,14 @@
if (tempnetwork.len)
T[text("[][]", netcam.c_tag, (netcam.can_use() ? null : " (Deactivated)"))] = netcam
playsound(origin, 'sound/machines/terminal_select.ogg', 25, 0)
var/camera = input("Choose which camera you want to view", "Cameras") as null|anything in T
var/obj/machinery/camera/final = T[camera]
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(final)
remote_eye.setLoc(get_turf(final))
playsound(origin, 'sound/machines/terminal_select.ogg', 25, 0)
remote_eye.setLoc(get_turf(final))
C.overlay_fullscreen("flash", /obj/screen/fullscreen/flash/noise)
C.clear_fullscreen("flash", 3) //Shorter flash than normal since it's an ~~advanced~~ console!
else
playsound(origin, 'sound/machines/terminal_error.ogg', 25, 0)

View File

@@ -54,17 +54,20 @@ var/time_last_changed_position = 0
return
idcard.loc = src
scan = idcard
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
else if(!modify)
if(!usr.drop_item())
return
idcard.loc = src
modify = idcard
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
else
if(!modify)
if(!usr.drop_item())
return
idcard.loc = src
modify = idcard
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
else
return ..()
@@ -312,6 +315,7 @@ var/time_last_changed_position = 0
modify.update_label()
modify.loc = loc
modify.verb_pickup()
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
modify = null
region_access = null
head_subordinates = null
@@ -320,6 +324,7 @@ var/time_last_changed_position = 0
if (istype(I, /obj/item/weapon/card/id))
if(!usr.drop_item())
return
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
I.loc = src
modify = I
authenticated = 0
@@ -328,12 +333,14 @@ var/time_last_changed_position = 0
if (scan)
scan.loc = src.loc
scan.verb_pickup()
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
scan = null
else
var/obj/item/I = usr.get_active_hand()
if (istype(I, /obj/item/weapon/card/id))
if(!usr.drop_item())
return
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
I.loc = src
scan = I
authenticated = 0
@@ -349,6 +356,7 @@ var/time_last_changed_position = 0
authenticated = 1
else
authenticated = 2
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
else
if((access_hop in scan.access) && ((target_dept==1) || !target_dept))
@@ -375,6 +383,7 @@ var/time_last_changed_position = 0
region_access = null
head_subordinates = null
authenticated = 0
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("access")
if(href_list["allowed"])
if(authenticated)
@@ -384,6 +393,7 @@ var/time_last_changed_position = 0
modify.access -= access_type
if(access_allowed == 1)
modify.access += access_type
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if ("assign")
if (authenticated == 2)
var/t1 = href_list["assign_target"]
@@ -409,9 +419,12 @@ var/time_last_changed_position = 0
modify.access = ( istype(src,/obj/machinery/computer/card/centcom) ? get_centcom_access(t1) : jobdatum.get_access() )
if (modify)
modify.assignment = t1
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if ("demote")
if(modify.assignment in head_subordinates || modify.assignment == "Assistant")
modify.assignment = "Unassigned"
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
else
usr << "<span class='error'>You are not authorized to demote this position.</span>"
if ("reg")
@@ -422,6 +435,7 @@ var/time_last_changed_position = 0
var/newName = reject_bad_name(href_list["reg"])
if(newName)
modify.registered_name = newName
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
else
usr << "<span class='error'>Invalid name entered.</span>"
return
@@ -431,6 +445,7 @@ var/time_last_changed_position = 0
if("return")
//DISPLAY MAIN MENU
mode = 3;
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("make_job_available")
// MAKE ANOTHER JOB POSITION AVAILABLE FOR LATE JOINERS
@@ -445,6 +460,7 @@ var/time_last_changed_position = 0
time_last_changed_position = world.time / 10
j.total_positions++
opened_positions[edit_job_target]++
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("make_job_unavailable")
// MAKE JOB POSITION UNAVAILABLE FOR LATE JOINERS
@@ -460,6 +476,7 @@ var/time_last_changed_position = 0
time_last_changed_position = world.time / 10
j.total_positions--
opened_positions[edit_job_target]--
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if ("print")
if (!( printing ))
@@ -472,6 +489,8 @@ var/time_last_changed_position = 0
P.info = t1
P.name = "paper- 'Crew Manifest'"
printing = null
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
if (modify)
modify.update_label()
updateUsrDialog()

View File

@@ -81,6 +81,7 @@
W.loc = src
src.diskette = W
user << "<span class='notice'>You insert [W].</span>"
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
src.updateUsrDialog()
else
return ..()
@@ -228,14 +229,18 @@
switch(href_list["task"])
if("autoprocess")
autoprocess = 1
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("stopautoprocess")
autoprocess = 0
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
else if ((href_list["scan"]) && !isnull(scanner) && scanner.is_operational())
scantemp = ""
loading = 1
src.updateUsrDialog()
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
say("Initiating scan...")
spawn(20)
src.scan_mob(scanner.occupant)
@@ -248,10 +253,13 @@
else if ((href_list["lock"]) && !isnull(scanner) && scanner.is_operational())
if ((!scanner.locked) && (scanner.occupant))
scanner.locked = 1
playsound(src, 'sound/machines/DoorClick.ogg', 50, 0)
else
scanner.locked = 0
playsound(src, 'sound/machines/DoorClick.ogg', 50, 0)
else if(href_list["view_rec"])
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
src.active_record = find_record("id", href_list["view_rec"], records)
if(active_record)
if(!active_record.fields["ckey"])
@@ -269,6 +277,7 @@
if (src.menu == 3) //If we are viewing a record, confirm deletion
src.temp = "Delete record?"
src.menu = 4
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
else if (src.menu == 4)
var/obj/item/weapon/card/id/C = usr.get_active_hand()
@@ -277,9 +286,11 @@
src.temp = "[src.active_record.fields["name"]] => Record deleted."
src.records.Remove(active_record)
active_record = null
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
src.menu = 2
else
src.temp = "<font class='bad'>Access Denied.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if (href_list["disk"]) //Load or eject.
switch(href_list["disk"])
@@ -287,30 +298,36 @@
if (!diskette || !istype(diskette.fields) || !diskette.fields["name"] || !diskette.fields)
src.temp = "<font class='bad'>Load error.</font>"
src.updateUsrDialog()
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if (!src.active_record)
src.temp = "<font class='bad'>Record error.</font>"
src.menu = 1
src.updateUsrDialog()
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
for(var/key in diskette.fields)
src.active_record.fields[key] = diskette.fields[key]
src.temp = "Load successful."
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
if("eject")
if(src.diskette)
src.diskette.loc = src.loc
src.diskette = null
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
if("save")
if(!diskette || diskette.read_only || !active_record || !active_record.fields)
src.temp = "<font class='bad'>Save error.</font>"
src.updateUsrDialog()
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
diskette.fields = active_record.fields.Copy()
diskette.name = "data disk - '[src.diskette.fields["name"]]'"
src.temp = "Save successful."
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
else if (href_list["refresh"])
src.updateUsrDialog()
@@ -322,26 +339,34 @@
//Can't clone without someone to clone. Or a pod. Or if the pod is busy. Or full of gibs.
if(!pod1)
temp = "<font class='bad'>No Clonepod detected.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(pod1.occupant)
temp = "<font class='bad'>Clonepod is currently occupied.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(pod1.mess)
temp = "<font class='bad'>Clonepod malfunction.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(!config.revival_cloning)
temp = "<font class='bad'>Unable to initiate cloning cycle.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(pod1.growclone(C.fields["ckey"], C.fields["name"], C.fields["UI"], C.fields["SE"], C.fields["mind"], C.fields["mrace"], C.fields["features"], C.fields["factions"]))
temp = "[C.fields["name"]] => <font class='good'>Cloning cycle in progress...</font>"
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
records.Remove(C)
if(active_record == C)
active_record = null
menu = 1
else
temp = "[C.fields["name"]] => <font class='bad'>Initialisation failure.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
temp = "<font class='bad'>Data corruption.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if (href_list["menu"])
src.menu = text2num(href_list["menu"])
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
src.add_fingerprint(usr)
src.updateUsrDialog()
@@ -350,21 +375,27 @@
/obj/machinery/computer/cloning/proc/scan_mob(mob/living/carbon/human/subject)
if (!istype(subject))
scantemp = "<font class='bad'>Unable to locate valid genetic data.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if (!subject.getorgan(/obj/item/organ/brain))
scantemp = "<font class='bad'>No signs of intelligence detected.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if (subject.suiciding == 1 || subject.hellbound)
scantemp = "<font class='bad'>Subject's brain is not responding to scanning stimuli.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if ((subject.disabilities & NOCLONE) && (src.scanner.scan_level < 2))
scantemp = "<font class='bad'>Subject no longer contains the fundamental materials required to create a living clone.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if ((!subject.ckey) || (!subject.client))
scantemp = "<font class='bad'>Mental interface failure.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if (find_record("ckey", subject.ckey, records))
scantemp = "<font class='average'>Subject already in database.</font>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
var/datum/data/record/R = new()
@@ -400,3 +431,4 @@
src.records += R
scantemp = "Subject successfully scanned."
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)

View File

@@ -76,11 +76,19 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
auth_id = "[I.registered_name] ([I.assignment])"
if((20 in I.access))
authenticated = 2
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(src.emagged)
authenticated = 2
auth_id = "Unknown"
auth_id = "ERROR: CANNOT READ"
M << "<span class='warning'>[src] lets out a few quiet beeps as its login is overriden.</span>"
if(prob(25))
for(var/mob/living/silicon/ai/AI in active_ais())
AI << sound('sound/machines/terminal_emagged.ogg', volume = 10) //Very quiet for balance reasons
if("logout")
authenticated = 0
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("swipeidseclevel")
var/mob/M = usr
@@ -96,6 +104,8 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
if(tmp_alertlevel > SEC_LEVEL_BLUE) tmp_alertlevel = SEC_LEVEL_BLUE //Cannot engage delta with this
set_security_level(tmp_alertlevel)
if(security_level != old_level)
usr << "<span class='notice'>Authorization confirmed. Modifying security level.</span>"
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
//Only notify the admins if an actual change happened
log_game("[key_name(usr)] has changed the security level to [get_security_level()].")
message_admins("[key_name_admin(usr)] has changed the security level to [get_security_level()].")
@@ -107,25 +117,31 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
tmp_alertlevel = 0
else:
usr << "<span class='warning'>You are not authorized to do this!</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
tmp_alertlevel = 0
state = STATE_DEFAULT
else
usr << "<span class='warning'>You need to swipe your ID!</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
if("announce")
if(src.authenticated==2 && !message_cooldown)
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
make_announcement(usr)
else if (src.authenticated==2 && message_cooldown)
usr << "Intercomms recharging. Please stand by."
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
if("crossserver")
if(authenticated==2)
if(CM.lastTimeUsed + 600 > world.time)
usr << "Arrays recycling. Please stand by."
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
var/input = stripped_multiline_input(usr, "Please choose a message to transmit to an allied station. Please be aware that this process is very expensive, and abuse will lead to... termination.", "Send a message to an allied station.", "")
if(!input || !(usr in view(1,src)))
return
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
send2otherserver("[station_name()]", input,"Comms_Console")
minor_announce(input, title = "Outgoing message to allied station")
log_say("[key_name(usr)] has sent a message to the other server: [input]")
@@ -152,6 +168,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
if("messagelist")
src.currmsg = 0
src.state = STATE_MESSAGELIST
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("viewmessage")
src.state = STATE_VIEWMESSAGE
if (!src.currmsg)
@@ -176,6 +193,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
src.state = STATE_VIEWMESSAGE
if("status")
src.state = STATE_STATUSDISPLAY
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("securitylevel")
src.tmp_alertlevel = text2num( href_list["newalertlevel"] )
@@ -199,6 +217,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
// Status display stuff
if("setstat")
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
switch(href_list["statdisp"])
if("message")
post_status("message", stat_msg1, stat_msg2)
@@ -208,9 +227,11 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
post_status(href_list["statdisp"])
if("setmsg1")
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
stat_msg1 = reject_bad_text(input("Line 1", "Enter Message Text", stat_msg1) as text|null, 40)
src.updateDialog()
if("setmsg2")
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
stat_msg2 = reject_bad_text(input("Line 2", "Enter Message Text", stat_msg2) as text|null, 40)
src.updateDialog()
@@ -218,11 +239,13 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
if("MessageCentcomm")
if(src.authenticated==2)
if(CM.lastTimeUsed + 600 > world.time)
usr << "Arrays recycling. Please stand by."
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
var/input = stripped_input(usr, "Please choose a message to transmit to Centcom via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to Centcomm.", "")
if(!input || !(usr in view(1,src)))
return
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
Centcomm_announce(input, usr)
usr << "Message transmitted."
log_say("[key_name(usr)] has made a Centcom announcement: [input]")
@@ -233,33 +256,38 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
if("MessageSyndicate")
if((src.authenticated==2) && (src.emagged))
if(CM.lastTimeUsed + 600 > world.time)
usr << "Arrays recycling. Please stand by."
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
var/input = stripped_input(usr, "Please choose a message to transmit to \[ABNORMAL ROUTING COORDINATES\] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to /??????/.", "")
if(!input || !(usr in view(1,src)))
return
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
Syndicate_announce(input, usr)
usr << "Message transmitted."
usr << "<span class='danger'>SYSERR @l(19833)of(transmit.dm): !@$ MESSAGE TRANSMITTED TO SYNDICATE COMMAND.</span>"
log_say("[key_name(usr)] has made a Syndicate announcement: [input]")
CM.lastTimeUsed = world.time
if("RestoreBackup")
usr << "Backup routing data restored!"
usr << "<span class='notice'>Backup routing data restored!</span>"
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
src.emagged = 0
src.updateDialog()
if("nukerequest") //When there's no other way
if(src.authenticated==2)
if(CM.lastTimeUsed + 600 > world.time)
usr << "Arrays recycling. Please stand by."
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
var/input = stripped_input(usr, "Please enter the reason for requesting the nuclear self-destruct codes. Misuse of the nuclear request system will not be tolerated under any circumstances. Transmission does not guarantee a response.", "Self Destruct Code Request.","")
if(!input || !(usr in view(1,src)))
return
Nuke_request(input, usr)
usr << "Request sent."
usr << "<span class='notice'>Request sent.</span>"
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
log_say("[key_name(usr)] has requested the nuclear codes from Centcomm")
priority_announce("The codes for the on-station nuclear self-destruct have been requested by [usr]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self Destruct Codes Requested",'sound/AI/commandreport.ogg')
priority_announce("The codes for the on-station nuclear self-destruct have been requested by [auth_id]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self Destruct Codes Requested",'sound/AI/commandreport.ogg')
CM.lastTimeUsed = world.time
@@ -347,13 +375,15 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
src.emagged = 1
if(authenticated == 1)
authenticated = 2
user << "<span class='notice'>You scramble the communication routing circuits.</span>"
user << "<span class='danger'>You scramble the communication routing circuits.</span>"
playsound(src, 'sound/machines/terminal_emagged.ogg', 50, 0)
/obj/machinery/computer/communications/attack_hand(mob/user)
if(..())
return
if (src.z > 6)
user << "<span class='boldannounce'>Unable to establish a connection</span>: \black You're too far away from the station!"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
user.set_machine(src)
@@ -413,12 +443,15 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=login'>Log In</A> \]"
if(STATE_CALLSHUTTLE)
dat += get_call_shuttle_form()
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(STATE_CANCELSHUTTLE)
dat += get_cancel_shuttle_form()
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(STATE_MESSAGELIST)
dat += "Messages:"
for(var/i = 1; i<=src.messagetitle.len; i++)
dat += "<BR><A HREF='?src=\ref[src];operation=viewmessage;message-num=[i]'>[src.messagetitle[i]]</A>"
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(STATE_VIEWMESSAGE)
if (src.currmsg)
dat += "<B>[src.messagetitle[src.currmsg]]</B><BR><BR>[src.messagetext[src.currmsg]]"
@@ -446,6 +479,8 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
dat += " <A HREF='?src=\ref[src];operation=setstat;statdisp=alert;alert=redalert'>Red Alert</A> |"
dat += " <A HREF='?src=\ref[src];operation=setstat;statdisp=alert;alert=lockdown'>Lockdown</A> |"
dat += " <A HREF='?src=\ref[src];operation=setstat;statdisp=alert;alert=biohazard'>Biohazard</A> \]<BR><HR>"
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(STATE_ALERT_LEVEL)
dat += "Current alert level: [get_security_level()]<BR>"
if(security_level == SEC_LEVEL_DELTA)
@@ -458,6 +493,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
dat += "Confirm the change to: [num2seclevel(tmp_alertlevel)]<BR>"
dat += "<A HREF='?src=\ref[src];operation=swipeidseclevel'>Swipe ID</A> to confirm change.<BR>"
if(STATE_TOGGLE_EMERGENCY)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(emergency_access == 1)
dat += "<b>Emergency Maintenance Access is currently <font color='red'>ENABLED</font></b>"
dat += "<BR>Restore maintenance access restrictions? <BR>\[ <A HREF='?src=\ref[src];operation=disableemergency'>OK</A> | <A HREF='?src=\ref[src];operation=viewmessage'>Cancel</A> \]"

View File

@@ -47,6 +47,7 @@
I.loc = src
src.diskette = I
user << "<span class='notice'>You insert [I].</span>"
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
src.updateUsrDialog()
return
else
@@ -340,11 +341,13 @@
if("setduration")
if(!num)
num = round(input(usr, "Choose pulse duration:", "Input an Integer", null) as num|null)
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
if(num)
radduration = Wrap(num, 1, RADIATION_DURATION_MAX+1)
if("setstrength")
if(!num)
num = round(input(usr, "Choose pulse strength:", "Input an Integer", null) as num|null)
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
if(num)
radstrength = Wrap(num, 1, RADIATION_STRENGTH_MAX+1)
if("screen")
@@ -354,8 +357,10 @@
var/potassiodide_amount = viable_occupant.reagents.get_reagent_amount("potass_iodide")
var/can_add = max(min(REJUVENATORS_MAX - potassiodide_amount, REJUVENATORS_INJECT), 0)
viable_occupant.reagents.add_reagent("potass_iodide", can_add)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("setbufferlabel")
var/text = sanitize(input(usr, "Input a new label:", "Input an Text", null) as text|null)
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
if(num && text)
num = Clamp(num, 1, NUMBER_OF_BUFFERS)
var/list/buffer_slot = buffer[num]
@@ -363,6 +368,7 @@
buffer_slot["label"] = text
if("setbuffer")
if(num && viable_occupant)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
num = Clamp(num, 1, NUMBER_OF_BUFFERS)
buffer[num] = list(
"label"="Buffer[num]:[viable_occupant.real_name]",
@@ -374,12 +380,14 @@
)
if("clearbuffer")
if(num)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
num = Clamp(num, 1, NUMBER_OF_BUFFERS)
var/list/buffer_slot = buffer[num]
if(istype(buffer_slot))
buffer_slot.Cut()
if("transferbuffer")
if(num && viable_occupant)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
switch(href_list["text"]) //Numbers are this high because other way upgrading laser is just not worth the hassle, and i cant think of anything better to inmrove
if("se")
apply_buffer(SCANNER_ACTION_SE,num)
@@ -443,10 +451,12 @@
injectorready = 1
if("loaddisk")
if(num && diskette && diskette.fields)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
num = Clamp(num, 1, NUMBER_OF_BUFFERS)
buffer[num] = diskette.fields.Copy()
if("savedisk")
if(num && diskette && !diskette.read_only)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
num = Clamp(num, 1, NUMBER_OF_BUFFERS)
var/list/buffer_slot = buffer[num]
if(istype(buffer_slot))
@@ -454,6 +464,7 @@
diskette.fields = buffer_slot.Copy()
if("ejectdisk")
if(diskette)
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
diskette.loc = get_turf(src)
diskette = null
if("setdelayed")
@@ -461,6 +472,7 @@
delayed_action = list("action"=text2num(href_list["delayaction"]),"buffer"=num)
if("pulseui","pulsese")
if(num && viable_occupant && connected)
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
radduration = Wrap(radduration, 1, RADIATION_DURATION_MAX+1)
radstrength = Wrap(radstrength, 1, RADIATION_STRENGTH_MAX+1)

View File

@@ -31,6 +31,7 @@
W.forceMove(src)
id = W
user << "<span class='notice'>You insert [W].</span>"
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
return
else
user << "<span class='notice'>There's an ID inserted already.</span>"
@@ -83,13 +84,16 @@
if(..())
return
if(!allowed(usr))
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
usr << "<span class='warning'>Access denied.</span>"
return
switch(action)
if("scan_teleporter")
teleporter = findteleporter()
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("scan_beacon")
beacon = findbeacon()
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("handle_id")
if(id)
if(!usr.get_active_hand())
@@ -107,6 +111,7 @@
id = I
if("set_goal")
var/new_goal = input("Set the amount of points:", "Points", id.goal) as num|null
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
if(!isnum(new_goal))
return
if(!new_goal)
@@ -114,18 +119,23 @@
id.goal = Clamp(new_goal, 0, 1000) //maximum 1000 points
if("toggle_open")
if(teleporter.locked)
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
usr << "The teleporter is locked"
return
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
teleporter.toggle_open()
if("teleporter_lock")
if(teleporter.state_open)
usr << "Close the teleporter before locking!"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
teleporter.locked = !teleporter.locked
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("teleport")
if(!teleporter || !beacon)
return
addtimer(src, "teleport", 5, FALSE, usr)
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
/obj/machinery/computer/gulag_teleporter_computer/proc/scan_machinery()
teleporter = findteleporter()

View File

@@ -11,17 +11,21 @@
return
if(!current)
user << "<span class='caution'>You haven't selected anything to transmit laws to!</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if(!can_upload_to(current))
user << "<span class='caution'>Upload failed!</span> Check to make sure [current.name] is functioning properly."
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
current = null
return
var/turf/currentloc = get_turf(current)
if(currentloc && user.z != currentloc.z)
user << "<span class='caution'>Upload failed!</span> Unable to establish a connection to [current.name]. You're too far away!"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
current = null
return
M.install(current.laws, user)
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
else
return ..()
@@ -43,8 +47,10 @@
if (!src.current)
user << "<span class='caution'>No active AIs detected!</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
user << "[src.current.name] selected for law changes."
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
/obj/machinery/computer/upload/ai/can_upload_to(mob/living/silicon/ai/A)
if(!A || !isAI(A))
@@ -67,12 +73,14 @@
if(!src.current)
user << "<span class='caution'>No active unslaved cyborgs detected!</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
user << "[src.current.name] selected for law changes."
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
/obj/machinery/computer/upload/borg/can_upload_to(mob/living/silicon/robot/B)
if(!B || !isrobot(B))
return 0
if(B.scrambledcodes || B.emagged)
return 0
return ..()
return ..()

View File

@@ -28,6 +28,7 @@
O.loc = src
scan = O
user << "<span class='notice'>You insert [O].</span>"
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
else
return ..()
@@ -230,6 +231,7 @@
src.screen = null
src.active1 = null
src.active2 = null
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
else if(href_list["choice"])
// SORTING!
if(href_list["choice"] == "Sorting")
@@ -250,6 +252,7 @@
src.authenticated = 1
src.rank = "AI"
src.screen = 1
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
else if(IsAdminGhost(usr))
src.active1 = null
src.active2 = null
@@ -263,6 +266,7 @@
src.authenticated = src.scan.registered_name
src.rank = src.scan.assignment
src.screen = 1
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(src.authenticated)
if(href_list["screen"])

View File

@@ -41,6 +41,7 @@
/obj/machinery/computer/message_monitor/emag_act(mob/user)
if(!emagged)
if(!isnull(src.linkedServer))
playsound(src, 'sound/machines/terminal_emagged.ogg', 50, 0)
emagged = 1
screen = 2
spark_system.set_up(5, 0, src)
@@ -53,7 +54,8 @@
addtimer(src, "UnmagConsole", time)
message = rebootmsg
else
user << "<span class='notice'>A no server error appears on the screen.</span>"
user << "<span class='notice'>A 'no server' error appears on the screen.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
/obj/machinery/computer/message_monitor/initialize()
//Is the server isn't linked to a server, and there's a server available, default it to the first one in the list.
@@ -253,75 +255,98 @@
if (href_list["auth"])
if(!linkedServer || linkedServer.stat & (NOPOWER|BROKEN))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
if(auth)
auth = 0
screen = 0
else
var/dkey = trim(input(usr, "Please enter the decryption key.") as text|null)
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
if(dkey && dkey != "")
if(src.linkedServer.decryptkey == dkey)
auth = 1
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
else
message = incorrectkey
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
//Turn the server on/off.
if (href_list["active"])
if(auth) linkedServer.active = !linkedServer.active
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
//Find a server
if (href_list["find"])
if(message_servers && message_servers.len > 1)
src.linkedServer = input(usr,"Please select a server.", "Select a server.", null) as null|anything in message_servers
message = "<span class='alert'>NOTICE: Server selected.</span>"
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
else if(message_servers && message_servers.len > 0)
linkedServer = message_servers[1]
message = "<span class='notice'>NOTICE: Only Single Server Detected - Server selected.</span>"
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
else
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
//View the logs - KEY REQUIRED
if (href_list["view"])
if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
if(auth)
src.screen = 1
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
//Clears the logs - KEY REQUIRED
if (href_list["clear"])
if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
if(auth)
src.linkedServer.pda_msgs = list()
message = "<span class='notice'>NOTICE: Logs cleared.</span>"
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
//Clears the request console logs - KEY REQUIRED
if (href_list["clearr"])
if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
if(auth)
src.linkedServer.rc_msgs = list()
message = "<span class='notice'>NOTICE: Logs cleared.</span>"
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
//Change the password - KEY REQUIRED
if (href_list["pass"])
if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
if(auth)
var/dkey = trim(input(usr, "Please enter the decryption key.") as text|null)
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
if(dkey && dkey != "")
if(src.linkedServer.decryptkey == dkey)
var/newkey = trim(input(usr,"Please enter the new key (3 - 16 characters max):"))
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
if(length(newkey) <= 3)
message = "<span class='notice'>NOTICE: Decryption key too short!</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(length(newkey) > 16)
message = "<span class='notice'>NOTICE: Decryption key too long!</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(newkey && newkey != "")
src.linkedServer.decryptkey = newkey
message = "<span class='notice'>NOTICE: Decryption key set.</span>"
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
else
message = incorrectkey
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
//Hack the Console to get the password
if (href_list["hack"])
@@ -332,46 +357,56 @@
spawn(100*length(src.linkedServer.decryptkey))
if(src && src.linkedServer && usr)
BruteForce(usr)
playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0)
//Delete the log.
if (href_list["delete"])
//Are they on the view logs screen?
if(screen == 1)
if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else //if(istype(href_list["delete"], /datum/data_pda_msg))
src.linkedServer.pda_msgs -= locate(href_list["delete"])
message = "<span class='notice'>NOTICE: Log Deleted!</span>"
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
//Delete the request console log.
if (href_list["deleter"])
//Are they on the view logs screen?
if(screen == 4)
if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else //if(istype(href_list["delete"], /datum/data_pda_msg))
src.linkedServer.rc_msgs -= locate(href_list["deleter"])
message = "<span class='notice'>NOTICE: Log Deleted!</span>"
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
//Create a custom message
if (href_list["msg"])
if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
if(auth)
src.screen = 3
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
//Fake messaging selection - KEY REQUIRED
if (href_list["select"])
if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
screen = 0
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
switch(href_list["select"])
//Reset
if("Reset")
ResetMessage()
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
//Select Your Name
if("Sender")
customsender = stripped_input(usr, "Please enter the sender's name.")
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
//Select Receiver
if("Recepient")
@@ -379,16 +414,20 @@
var/list/obj/item/device/pda/sendPDAs = get_viewable_pdas()
if(PDAs && PDAs.len > 0)
customrecepient = input(usr, "Select a PDA from the list.") as null|anything in sortNames(sendPDAs)
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
else
customrecepient = null
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
//Enter custom job
if("RecJob")
customjob = stripped_input(usr, "Please enter the sender's job.")
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
//Enter message
if("Message")
custommessage = stripped_input(usr, "Please enter your message.")
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
//Send message
if("Send")
@@ -399,10 +438,12 @@
if(isnull(customrecepient))
message = "<span class='notice'>NOTICE: No recepient selected!</span>"
return src.attack_hand(usr)
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
if(isnull(custommessage) || custommessage == "")
message = "<span class='notice'>NOTICE: No message entered!</span>"
return src.attack_hand(usr)
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
var/obj/item/device/pda/PDARec = null
for (var/obj/item/device/pda/P in get_viewable_pdas())
@@ -436,14 +477,17 @@
customrecepient.add_overlay(image('icons/obj/pda.dmi', "pda-r"))
//Finally..
ResetMessage()
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
//Request Console Logs - KEY REQUIRED
if(href_list["viewr"])
if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN)))
message = noserver
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
if(auth)
src.screen = 4
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if (href_list["back"])
src.screen = 0

View File

@@ -100,16 +100,21 @@
return
I.loc = src
inserted_id = I
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
else usr << "<span class='danger'>No valid ID.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(inserted_id)
switch(href_list["id"])
if("eject")
inserted_id.loc = get_turf(src)
inserted_id.verb_pickup()
inserted_id = null
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
if("reset")
inserted_id.points = 0
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("setgoal")
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
var/num = round(input(usr, "Choose prisoner's goal:", "Input an Integer", null) as num|null)
if(num >= 0)
num = min(num,1000) //Cap the quota to the equivilent of 10 minutes.
@@ -133,8 +138,10 @@
screen = !screen
else
usr << "Unauthorized Access."
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if(href_list["warn"])
playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0)
var/warning = copytext(sanitize(input(usr,"Message:","Enter your message here!","")),1,MAX_MESSAGE_LEN)
if(!warning) return
var/obj/item/weapon/implant/I = locate(href_list["warn"])

View File

@@ -32,6 +32,7 @@
/obj/machinery/computer/robotics/interact(mob/user)
if (src.z > 6)
user << "<span class='boldannounce'>Unable to establish a connection</span>: \black You're too far away from the station!"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
user.set_machine(src)
var/dat
@@ -89,6 +90,7 @@
if(can_control(usr, R))
var/choice = input("Are you certain you wish to detonate [R.name]?") in list("Confirm", "Abort")
if(choice == "Confirm" && can_control(usr, R) && !..())
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(R.syndicate && R.emagged)
R << "Extreme danger. Termination codes detected. Scrambling security codes and automatic AI unlink triggered."
if(R.connected_ai)
@@ -102,6 +104,7 @@
R.self_destruct()
else
usr << "<span class='danger'>Access Denied.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else if (href_list["stopbot"])
if(src.allowed(usr))
@@ -109,6 +112,7 @@
if(can_control(usr, R))
var/choice = input("Are you certain you wish to [R.canmove ? "lock down" : "release"] [R.name]?") in list("Confirm", "Abort")
if(choice == "Confirm" && can_control(usr, R) && !..())
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
message_admins("<span class='notice'>[key_name_admin(usr)] (<A HREF='?_src_=holder;adminplayerobservefollow=\ref[usr]'>FLW</A>) [R.canmove ? "locked down" : "released"] [key_name(R, R.client)](<A HREF='?_src_=holder;adminplayerobservefollow=\ref[R]'>FLW</A>)!</span>")
log_game("[key_name(usr)] [R.canmove ? "locked down" : "released"] [key_name(R)]!")
R.SetLockdown(!R.lockcharge)

View File

@@ -33,8 +33,10 @@
O.loc = src
scan = O
user << "<span class='notice'>You insert [O].</span>"
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
else
user << "<span class='warning'>There's already an ID card in the console.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
return ..()
@@ -44,6 +46,7 @@
return
if(src.z > 6)
user << "<span class='boldannounce'>Unable to establish a connection</span>: \black You're too far away from the station!"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
var/dat
@@ -314,6 +317,7 @@ What a mess.*/
screen = null
active1 = null
active2 = null
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("Log In")
if(istype(usr, /mob/living/silicon))
@@ -323,6 +327,7 @@ What a mess.*/
authenticated = borg.name
rank = "AI"
screen = 1
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
else if(IsAdminGhost(usr))
active1 = null
active2 = null
@@ -336,17 +341,20 @@ What a mess.*/
authenticated = scan.registered_name
rank = scan.assignment
screen = 1
playsound(src, 'sound/machines/terminal_success.ogg', 50, 0)
//RECORD FUNCTIONS
if("Record Maintenance")
screen = 2
active1 = null
active2 = null
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("Browse Record")
var/datum/data/record/R = locate(href_list["d_rec"])
var/S = locate(href_list["d_rec"])
if(!( data_core.general.Find(R) ))
temp = "Record Not Found!"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
else
for(var/datum/data/record/E in data_core.security)
if((E.fields["name"] == R.fields["name"] || E.fields["id"] == R.fields["id"]))
@@ -354,6 +362,7 @@ What a mess.*/
active1 = R
active2 = S
screen = 3
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("Print Record")
@@ -461,10 +470,12 @@ What a mess.*/
qdel(R)
data_core.security.Cut()
temp = "All Security records deleted."
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if("Add Entry")
if(!( istype(active2, /datum/data/record) ))
return
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
var/a2 = active2
var/t1 = stripped_multiline_input("Add Comment:", "Secure. records", null, null)
if(!canUseSecurityRecordsConsole(usr, t1, null, a2))
@@ -713,6 +724,7 @@ What a mess.*/
if("Delete Record (ALL) Execute")
if(active1)
investigate_log("[usr.name] ([usr.key]) has deleted all records for [active1.fields["name"]].", "records")
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
for(var/datum/data/record/R in data_core.medical)
if((R.fields["name"] == active1.fields["name"] || R.fields["id"] == active1.fields["id"]))
data_core.medical -= R

View File

@@ -33,6 +33,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
/obj/machinery/computer/telecrystals/uplinker/attackby(obj/item/O, mob/user, params)
if(uplinkholder)
user << "<span class='notice'>The [src] already has an uplink in it.</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
return
if(O.hidden_uplink)
var/obj/item/I = user.get_active_hand()
@@ -43,8 +44,10 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
I.add_fingerprint(user)
update_icon()
updateUsrDialog()
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
else
user << "<span class='notice'>The [O] doesn't appear to be an uplink...</span>"
playsound(src, 'sound/machines/terminal_error.ogg', 50, 0)
/obj/machinery/computer/telecrystals/uplinker/update_icon()
..()
@@ -55,6 +58,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
if(uplinkholder)
uplinkholder.loc = get_turf(src.loc)
uplinkholder = null
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0)
update_icon()
/obj/machinery/computer/telecrystals/uplinker/proc/donateTC(amt, addLog = 1)
@@ -62,6 +66,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
if(amt <= uplinkholder.hidden_uplink.telecrystals)
uplinkholder.hidden_uplink.telecrystals -= amt
linkedboss.storedcrystals += amt
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(addLog)
linkedboss.logTransfer("[src] donated [amt] telecrystals to [linkedboss].")
@@ -70,6 +75,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
if(amt <= linkedboss.storedcrystals)
uplinkholder.hidden_uplink.telecrystals += amt
linkedboss.storedcrystals -= amt
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
if(addLog)
linkedboss.logTransfer("[src] received [amt] telecrystals from [linkedboss].")
@@ -80,6 +86,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
return
src.add_fingerprint(user)
user.set_machine(src)
playsound(src, 'sound/machines/terminal_on.ogg', 50, 0)
var/dat = ""
if(linkedboss)
@@ -212,6 +219,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
A.giveTC(1,0)
sanity++
logTransfer("[src] evenly distributed telecrystals.")
playsound(src, 'sound/machines/terminal_select.ogg', 50, 0)
src.updateUsrDialog()
return

View File

@@ -219,5 +219,3 @@
/obj/proc/CanAStarPass()
. = !density

View File

@@ -138,4 +138,4 @@
/proc/playsound_global(file, repeat=0, wait, channel, volume)
for(var/V in clients)
V << sound(file, repeat, wait, channel, volume)
V << sound(file, repeat, wait, channel, volume)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.