Conflicts:
	code/game/jobs/job/support.dm
	code/setup.dm
This commit is contained in:
Markolie
2015-02-22 19:12:11 +01:00
68 changed files with 566 additions and 522 deletions
+29 -29
View File
@@ -8,7 +8,7 @@ var/list/alldepartments = list()
icon = 'icons/obj/library.dmi'
icon_state = "fax"
insert_anim = "faxsend"
req_one_access = list(access_lawyer, access_heads, access_armory)
req_one_access = list(access_lawyer, access_heads, access_armory)
use_power = 1
idle_power_usage = 30
@@ -31,7 +31,7 @@ var/list/alldepartments = list()
/obj/machinery/photocopier/faxmachine/attack_hand(mob/user as mob)
ui_interact(user)
/obj/machinery/photocopier/faxmachine/attackby(obj/item/weapon/item, mob/user)
if(istype(item,/obj/item/weapon/card/id) && !scan)
scan(item)
@@ -40,14 +40,14 @@ var/list/alldepartments = list()
nanomanager.update_uis(src)
else
return ..()
/obj/machinery/photocopier/faxmachine/emag_act(user as mob)
if(!emagged)
emagged = 1
user << "<span class='notice'>The transmitters realign to an unknown source!</span>"
else
user << "<span class='warning'>You swipe the card through [src], but nothing happens.</span>"
/obj/machinery/photocopier/faxmachine/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
var/data[0]
if(scan)
@@ -74,23 +74,23 @@ var/list/alldepartments = list()
else
data["respectcooldown"] = 0
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if (!ui)
ui = new(user, src, ui_key, "faxmachine.tmpl", "Fax Machine UI", 540, 450)
ui.set_initial_data(data)
ui.set_initial_data(data)
ui.open()
/obj/machinery/photocopier/faxmachine/Topic(href, href_list)
if(..())
return 1
if(href_list["send"])
if(copyitem && authenticated)
if ((destination in admin_departments) || (destination in hidden_admin_departments))
send_admin_fax(usr, destination)
else
sendfax(destination,usr)
if (sendcooldown)
spawn(sendcooldown) // cooldown time
sendcooldown = 0
@@ -121,7 +121,7 @@ var/list/alldepartments = list()
if(emagged)
combineddepartments += hidden_admin_departments
destination = input(usr, "To which department?", "Choose a department", "") as null|anything in combineddepartments
if(!destination)
if(!destination)
destination = lastdestination
if(href_list["auth"])
@@ -130,21 +130,21 @@ var/list/alldepartments = list()
authenticated = 1
else if(authenticated)
authenticated = 0
if(href_list["rename"])
if(copyitem)
var/n_name = sanitize(copytext(input(usr, "What would you like to label the fax?", "Fax Labelling", copyitem.name) as text, 1, MAX_MESSAGE_LEN))
if((copyitem && copyitem.loc == src && usr.stat == 0))
if (istype(copyitem, /obj/item/weapon/paper))
copyitem.name = "[(n_name ? text("[n_name]") : initial(copyitem.name))]"
copyitem.desc = "This is a paper titled '" + copyitem.name + "'."
else if(istype(copyitem, /obj/item/weapon/photo))
if (istype(copyitem, /obj/item/weapon/paper))
copyitem.name = "[(n_name ? text("[n_name]") : initial(copyitem.name))]"
copyitem.desc = "This is a paper titled '" + copyitem.name + "'."
else if(istype(copyitem, /obj/item/weapon/photo))
copyitem.name = "[(n_name ? text("[n_name]") : "photo")]"
else if(istype(copyitem, /obj/item/weapon/paper_bundle))
copyitem.name = "[(n_name ? text("[n_name]") : "paper")]"
copyitem.name = "[(n_name ? text("[n_name]") : "paper")]"
nanomanager.update_uis(src)
/obj/machinery/photocopier/faxmachine/proc/scan(var/obj/item/weapon/card/id/card = null)
if(scan) // Card is in machine
if(ishuman(usr))
@@ -172,14 +172,14 @@ var/list/alldepartments = list()
/obj/machinery/photocopier/faxmachine/proc/sendfax(var/destination,var/mob/sender)
if(stat & (BROKEN|NOPOWER))
return
use_power(200)
var/success = 0
for(var/obj/machinery/photocopier/faxmachine/F in allfaxes)
if( F.department == destination )
success = F.receivefax(copyitem)
if (success)
var/datum/fax/F = new /datum/fax()
F.name = copyitem.name
@@ -189,7 +189,7 @@ var/list/alldepartments = list()
F.message = copyitem
F.sent_by = sender
F.sent_at = world.time
visible_message("[src] beeps, \"Message transmitted successfully.\"")
//sendcooldown = 600
else
@@ -198,16 +198,16 @@ var/list/alldepartments = list()
/obj/machinery/photocopier/faxmachine/proc/receivefax(var/obj/item/incoming)
if(stat & (BROKEN|NOPOWER))
return 0
if(department == "Unknown")
return 0 //You can't send faxes to "Unknown"
flick("faxreceive", src)
playsound(loc, "sound/items/polaroid1.ogg", 50, 1)
// give the sprite some time to flick
sleep(20)
if (istype(incoming, /obj/item/weapon/paper))
copy(incoming)
else if (istype(incoming, /obj/item/weapon/photo))
@@ -223,7 +223,7 @@ var/list/alldepartments = list()
/obj/machinery/photocopier/faxmachine/proc/send_admin_fax(var/mob/sender, var/destination)
if(stat & (BROKEN|NOPOWER))
return
use_power(200)
var/obj/item/rcvdcopy
@@ -236,9 +236,9 @@ var/list/alldepartments = list()
else
visible_message("[src] beeps, \"Error transmitting message.\"")
return
rcvdcopy.loc = null //hopefully this shouldn't cause trouble
var/datum/fax/admin/A = new /datum/fax/admin()
A.name = rcvdcopy.name
A.from_department = department
@@ -247,7 +247,7 @@ var/list/alldepartments = list()
A.message = rcvdcopy
A.sent_by = sender
A.sent_at = world.time
//message badmins that a fax has arrived
switch(destination)
if ("Central Command")
@@ -257,11 +257,11 @@ var/list/alldepartments = list()
sendcooldown = 1800
sleep(50)
visible_message("[src] beeps, \"Message transmitted successfully.\"")
/obj/machinery/photocopier/faxmachine/proc/message_admins(var/mob/sender, var/faxname, var/faxtype, var/obj/item/sent, font_colour="#006100")
var/msg = "\blue <b><font color='[font_colour]'>[faxname]: </font>[key_name(sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[sender]'>BSA</A>) (<a href='?_src_=holder;AdminFaxCreate=\ref[sender];originfax=\ref[src];faxtype=[faxtype];replyto=\ref[sent]'>REPLY</a>)</b>: Receiving '[sent.name]' via secure connection... <a href='?_src_=holder;AdminFaxView=\ref[sent]'>view message</a>"
for(var/client/C in admins)
if(R_ADMIN & C.holder.rights)
if(R_EVENT & C.holder.rights)
C << msg
+26 -61
View File
@@ -18,8 +18,8 @@
slot_flags = SLOT_BELT | SLOT_EARS
throwforce = 0
w_class = 1.0
throw_speed = 7
throw_range = 15
throw_speed = 3
throw_range = 7
m_amt = 10
var/colour = "black" //what colour the ink is!
pressure_resistance = 2
@@ -41,72 +41,37 @@
colour = "white"
/obj/item/weapon/pen/attack(mob/M as mob, mob/user as mob)
if(!ismob(M))
/obj/item/weapon/pen/attack(mob/living/M, mob/user)
if(!istype(M))
return
user << "<span class='warning'>You stab [M] with the pen.</span>"
// M << "\red You feel a tiny prick!" //That's a whole lot of meta!
M.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been stabbed with [name] by [user.name] ([user.ckey])</font>")
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Used the [name] to stab [M.name] ([M.ckey])</font>")
if(!iscarbon(user))
M.LAssailant = null
else
M.LAssailant = user
return
if(M.can_inject(user, 1))
user << "<span class='warning'>You stab [M] with the pen.</span>"
// M << "<span class='danger'>You feel a tiny prick!</span>"
. = 1
add_logs(user, M, "stabbed", object="[name]")
/*
* Sleepy Pens
* Sleepypens
*/
/obj/item/weapon/pen/sleepypen
desc = "It's a black ink pen with a sharp point and a carefully engraved \"Waffle Co.\""
/obj/item/weapon/pen/sleepy
flags = OPENCONTAINER
origin_tech = "materials=2;syndicate=5"
/obj/item/weapon/pen/sleepypen/New()
var/datum/reagents/R = new/datum/reagents(30) //Used to be 300
reagents = R
R.my_atom = src
R.add_reagent("chloralhydrate", 22) //Used to be 100 sleep toxin//30 Chloral seems to be fatal, reducing it to 22./N
/obj/item/weapon/pen/sleepy/attack(mob/living/M, mob/user)
if(!istype(M)) return
if(..())
if(reagents.total_volume)
if(M.reagents)
reagents.trans_to(M, 55)
/obj/item/weapon/pen/sleepy/New()
create_reagents(55)
reagents.add_reagent("stoxin", 30)
reagents.add_reagent("mutetoxin", 15)
reagents.add_reagent("tirizene", 10)
..()
return
/obj/item/weapon/pen/sleepypen/attack(mob/M as mob, mob/user as mob)
if(!ismob(M))
return
..()
msg_admin_attack("[user.name] ([user.ckey]) Used the [name] to stab [M.name] ([M.ckey]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
if(reagents.total_volume)
if(M.reagents) reagents.trans_to(M, 50) //used to be 150
return
/*
* Parapens
*/
/obj/item/weapon/pen/paralysis
flags = OPENCONTAINER
origin_tech = "materials=2;syndicate=5"
/obj/item/weapon/pen/paralysis/New()
var/datum/reagents/R = new/datum/reagents(55)
reagents = R
R.my_atom = src
R.add_reagent("stoxin", 30)
R.add_reagent("mutetoxin", 15)
R.add_reagent("tirizene", 10)
..()
return
/obj/item/weapon/pen/paralysis/attack(mob/M as mob, mob/user as mob)
if(!ismob(M))
return
..()
msg_admin_attack("[user.name] ([user.ckey]) Used the [name] to stab [M.name] ([M.ckey]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
if(reagents.total_volume)
if(M.reagents) reagents.trans_to(M, 55) //used to be 150
return