mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 10:12:45 +00:00
You can now stick IDs in PDAs.
If you look at your PDA window, there should be an option to stick an ID in, like with some computers.
While carrying an ID, a PDA can be used for almost everything an ID can.
While ID scanners can read cards through a PDA, it is difficult to shove a PDA into the ID slot on some computers.
It is possible I missed some functions, but I was quite thorough in my sweep through the code.
In the event of PDA destruction, any inserted ID is ejected unharmed.
It is now possible to stick PDAs in your jumpsuit's ID slot.
Since PDAs are named, you can disguise yourself as someone else using one.
Beepsky/ED-209 can see through a PDA disguise if you stick your real ID in for access.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@592 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -226,7 +226,7 @@
|
|||||||
|
|
||||||
else if (src.menu == 4)
|
else if (src.menu == 4)
|
||||||
var/obj/item/weapon/card/id/C = usr.equipped()
|
var/obj/item/weapon/card/id/C = usr.equipped()
|
||||||
if (istype(C))
|
if (istype(C)||istype(C, /obj/item/device/pda))
|
||||||
if(src.check_access(C))
|
if(src.check_access(C))
|
||||||
src.records.Remove(src.active_record)
|
src.records.Remove(src.active_record)
|
||||||
del(src.active_record)
|
del(src.active_record)
|
||||||
@@ -568,7 +568,7 @@
|
|||||||
|
|
||||||
//Let's unlock this early I guess. Might be too early, needs tweaking.
|
//Let's unlock this early I guess. Might be too early, needs tweaking.
|
||||||
/obj/machinery/clonepod/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
/obj/machinery/clonepod/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||||
if (istype(W, /obj/item/weapon/card/id))
|
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if (!src.check_access(W))
|
if (!src.check_access(W))
|
||||||
user << "\red Access Denied."
|
user << "\red Access Denied."
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -74,11 +74,16 @@
|
|||||||
else if(istype(M, /mob/living/carbon/monkey) || istype(M, /mob/living/carbon/alien/humanoid))
|
else if(istype(M, /mob/living/carbon/monkey) || istype(M, /mob/living/carbon/alien/humanoid))
|
||||||
var/mob/living/carbon/george = M
|
var/mob/living/carbon/george = M
|
||||||
//they can only hold things :(
|
//they can only hold things :(
|
||||||
if(george.equipped() && istype(george.equipped(), /obj/item/weapon/card/id) && src.check_access(george.equipped()))
|
if(george.equipped() && (istype(george.equipped(), /obj/item/weapon/card/id) || istype(george.equipped(), /obj/item/device/pda)) && src.check_access(george.equipped()))
|
||||||
return 1
|
return 1
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
/obj/proc/check_access(obj/item/weapon/card/id/I)
|
/obj/proc/check_access(obj/item/weapon/card/id/I)
|
||||||
|
|
||||||
|
if (istype(I, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = I
|
||||||
|
I = pda.id
|
||||||
|
|
||||||
if(!src.req_access) //no requirements
|
if(!src.req_access) //no requirements
|
||||||
return 1
|
return 1
|
||||||
if(!istype(src.req_access, /list)) //something's very wrong
|
if(!istype(src.req_access, /list)) //something's very wrong
|
||||||
|
|||||||
@@ -607,11 +607,15 @@
|
|||||||
//src.equip_if_possible(new /obj/item/device/radio/signaler(src), slot_belt)
|
//src.equip_if_possible(new /obj/item/device/radio/signaler(src), slot_belt)
|
||||||
src.equip_if_possible(new /obj/item/device/pda(src), slot_belt)
|
src.equip_if_possible(new /obj/item/device/pda(src), slot_belt)
|
||||||
if (istype(src.belt, /obj/item/device/pda))
|
if (istype(src.belt, /obj/item/device/pda))
|
||||||
src.belt:owner = src.real_name
|
var/obj/item/device/pda/pda = src.belt
|
||||||
src.belt.name = "PDA-[src.real_name]"
|
pda.owner = src.real_name
|
||||||
|
pda.ownjob = src.wear_id.assignment
|
||||||
|
pda.name = "PDA-[src.real_name]"
|
||||||
if (istype(src.r_store, /obj/item/device/pda)) //damned mime PDAs not starting in belt slot
|
if (istype(src.r_store, /obj/item/device/pda)) //damned mime PDAs not starting in belt slot
|
||||||
src.r_store:owner = src.real_name
|
var/obj/item/device/pda/pda = src.r_store
|
||||||
src.r_store.name = "PDA-[src.real_name]"
|
pda.owner = src.real_name
|
||||||
|
pda.ownjob = src.wear_id.assignment
|
||||||
|
pda.name = "PDA-[src.real_name]"
|
||||||
|
|
||||||
/client/proc/mimewall()
|
/client/proc/mimewall()
|
||||||
set category = "Mime"
|
set category = "Mime"
|
||||||
|
|||||||
@@ -268,7 +268,7 @@
|
|||||||
O.show_message(text("\red [] has []activated []!", user, (stat&BROKEN) ? "de" : "re", src), 1)
|
O.show_message(text("\red [] has []activated []!", user, (stat&BROKEN) ? "de" : "re", src), 1)
|
||||||
return
|
return
|
||||||
|
|
||||||
else if (istype(W, /obj/item/weapon/card/id))// trying to unlock the interface with an ID card
|
else if (istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda))// trying to unlock the interface with an ID card
|
||||||
if(stat & (NOPOWER|BROKEN))
|
if(stat & (NOPOWER|BROKEN))
|
||||||
user << "It does nothing"
|
user << "It does nothing"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ text("<A href='?src=\ref[src];operation=oddbutton'>[src.oddbutton ? "Yes" : "No"
|
|||||||
src.path = new()
|
src.path = new()
|
||||||
|
|
||||||
/obj/machinery/bot/cleanbot/attackby(obj/item/weapon/W, mob/user as mob)
|
/obj/machinery/bot/cleanbot/attackby(obj/item/weapon/W, mob/user as mob)
|
||||||
if (istype(W, /obj/item/weapon/card/id))
|
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if(src.allowed(usr))
|
if(src.allowed(usr))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
user << "You [ src.locked ? "lock" : "unlock"] the [src] behaviour controls."
|
user << "You [ src.locked ? "lock" : "unlock"] the [src] behaviour controls."
|
||||||
|
|||||||
@@ -172,7 +172,7 @@ Auto Patrol: []"},
|
|||||||
src.on = 1
|
src.on = 1
|
||||||
src.icon_state = "ed209[src.on]"
|
src.icon_state = "ed209[src.on]"
|
||||||
mode = SECBOT_IDLE
|
mode = SECBOT_IDLE
|
||||||
else if (istype(W, /obj/item/weapon/card/id))
|
else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if (src.allowed(user))
|
if (src.allowed(user))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
||||||
@@ -649,8 +649,16 @@ Auto Patrol: []"},
|
|||||||
if (src.check_records)
|
if (src.check_records)
|
||||||
for (var/datum/data/record/E in data_core.general)
|
for (var/datum/data/record/E in data_core.general)
|
||||||
var/perpname = perp.name
|
var/perpname = perp.name
|
||||||
if (perp:wear_id && perp:wear_id.registered)
|
if (perp:wear_id)
|
||||||
perpname = perp.wear_id.registered
|
var/obj/item/weapon/card/id/id = perp:wear_id
|
||||||
|
if(istype(perp:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = perp:wear_id
|
||||||
|
id = pda.id
|
||||||
|
if (id)
|
||||||
|
perpname = id.registered
|
||||||
|
else
|
||||||
|
var/obj/item/device/pda/pda = perp:wear_id
|
||||||
|
perpname = pda.owner
|
||||||
if (E.fields["name"] == perpname)
|
if (E.fields["name"] == perpname)
|
||||||
for (var/datum/data/record/R in data_core.security)
|
for (var/datum/data/record/R in data_core.security)
|
||||||
if ((R.fields["id"] == E.fields["id"]) && (R.fields["criminal"] == "*Arrest*"))
|
if ((R.fields["id"] == E.fields["id"]) && (R.fields["criminal"] == "*Arrest*"))
|
||||||
|
|||||||
@@ -91,7 +91,7 @@
|
|||||||
del(T)
|
del(T)
|
||||||
user << "\red You load [loaded] tiles into the floorbot. He now contains [src.amount] tiles!"
|
user << "\red You load [loaded] tiles into the floorbot. He now contains [src.amount] tiles!"
|
||||||
src.updateicon()
|
src.updateicon()
|
||||||
if(istype(W, /obj/item/weapon/card/id))
|
if(istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if(src.allowed(usr))
|
if(src.allowed(usr))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
user << "You [src.locked ? "lock" : "unlock"] the [src] behaviour controls."
|
user << "You [src.locked ? "lock" : "unlock"] the [src] behaviour controls."
|
||||||
|
|||||||
@@ -182,7 +182,7 @@
|
|||||||
src.on = 1
|
src.on = 1
|
||||||
src.icon_state = "medibot[src.on]"
|
src.icon_state = "medibot[src.on]"
|
||||||
|
|
||||||
else if (istype(W, /obj/item/weapon/card/id))
|
else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if (src.allowed(user))
|
if (src.allowed(user))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
||||||
|
|||||||
@@ -172,7 +172,7 @@ Auto Patrol: []"},
|
|||||||
src.on = 1
|
src.on = 1
|
||||||
src.icon_state = "secbot[src.on]"
|
src.icon_state = "secbot[src.on]"
|
||||||
mode = SECBOT_IDLE
|
mode = SECBOT_IDLE
|
||||||
else if (istype(W, /obj/item/weapon/card/id))
|
else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if (src.allowed(user))
|
if (src.allowed(user))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
||||||
@@ -621,8 +621,16 @@ Auto Patrol: []"},
|
|||||||
if (src.check_records)
|
if (src.check_records)
|
||||||
for (var/datum/data/record/E in data_core.general)
|
for (var/datum/data/record/E in data_core.general)
|
||||||
var/perpname = perp.name
|
var/perpname = perp.name
|
||||||
if (perp:wear_id && perp:wear_id.registered)
|
if (perp:wear_id)
|
||||||
perpname = perp.wear_id.registered
|
var/obj/item/weapon/card/id/id = perp:wear_id
|
||||||
|
if(istype(perp:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = perp:wear_id
|
||||||
|
id = pda.id
|
||||||
|
if (id)
|
||||||
|
perpname = id.registered
|
||||||
|
else
|
||||||
|
var/obj/item/device/pda/pda = perp:wear_id
|
||||||
|
perpname = pda.owner
|
||||||
if (E.fields["name"] == perpname)
|
if (E.fields["name"] == perpname)
|
||||||
for (var/datum/data/record/R in data_core.security)
|
for (var/datum/data/record/R in data_core.security)
|
||||||
if ((R.fields["id"] == E.fields["id"]) && (R.fields["criminal"] == "*Arrest*"))
|
if ((R.fields["id"] == E.fields["id"]) && (R.fields["criminal"] == "*Arrest*"))
|
||||||
|
|||||||
@@ -19,6 +19,9 @@
|
|||||||
if("login")
|
if("login")
|
||||||
var/mob/M = usr
|
var/mob/M = usr
|
||||||
var/obj/item/weapon/card/id/I = M.equipped()
|
var/obj/item/weapon/card/id/I = M.equipped()
|
||||||
|
if (istype(I, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = I
|
||||||
|
I = pda.id
|
||||||
if (I && istype(I))
|
if (I && istype(I))
|
||||||
if(src.check_access(I))
|
if(src.check_access(I))
|
||||||
authenticated = 1
|
authenticated = 1
|
||||||
|
|||||||
@@ -137,6 +137,9 @@
|
|||||||
|
|
||||||
else if (href_list["eject2"])
|
else if (href_list["eject2"])
|
||||||
var/obj/item/weapon/card/id/I = usr.equipped()
|
var/obj/item/weapon/card/id/I = usr.equipped()
|
||||||
|
if (istype(I, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = I
|
||||||
|
I = pda.id
|
||||||
if (istype(I))
|
if (istype(I))
|
||||||
if(src.check_access(I))
|
if(src.check_access(I))
|
||||||
if (!status)
|
if (!status)
|
||||||
|
|||||||
@@ -5,8 +5,10 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
|
|
||||||
if (istype(W, /obj/item/weapon/card/id))
|
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
|
if (!W:access) //no access
|
||||||
user << "The access level of [W:registered]\'s card is not high enough. "
|
user << "The access level of [W:registered]\'s card is not high enough. "
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -63,9 +63,12 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
if (href_list["login"])
|
if (href_list["login"])
|
||||||
var/obj/item/I
|
var/obj/item/I = usr.equipped()
|
||||||
if (istype(usr.l_hand, /obj/item/weapon/card/id)) I = usr.l_hand
|
if (istype(I, /obj/item/device/pda))
|
||||||
if (istype(usr.r_hand, /obj/item/weapon/card/id)) I = usr.r_hand
|
var/obj/item/device/pda/pda = I
|
||||||
|
I = pda.id
|
||||||
|
// if (istype(usr.l_hand, /obj/item/weapon/card/id)) I = usr.l_hand
|
||||||
|
// if (istype(usr.r_hand, /obj/item/weapon/card/id)) I = usr.r_hand
|
||||||
if (I && src.check_access(I))
|
if (I && src.check_access(I))
|
||||||
src.locked = 0
|
src.locked = 0
|
||||||
src.last_configurator = I:registered
|
src.last_configurator = I:registered
|
||||||
|
|||||||
@@ -111,7 +111,7 @@
|
|||||||
|
|
||||||
updateicon()
|
updateicon()
|
||||||
|
|
||||||
else if (istype(I, /obj/item/weapon/card/id))
|
else if (istype(I, /obj/item/weapon/card/id)||istype(I, /obj/item/device/pda))
|
||||||
if(open)
|
if(open)
|
||||||
if (src.allowed(user))
|
if (src.allowed(user))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
|
|||||||
@@ -674,7 +674,7 @@ However people seem to like it for some reason.
|
|||||||
user << "You cut the emitter free from the floor."
|
user << "You cut the emitter free from the floor."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(istype(W, /obj/item/weapon/card/id))
|
if(istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if (src.allowed(user))
|
if (src.allowed(user))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
||||||
@@ -1218,7 +1218,7 @@ However people seem to like it for some reason.
|
|||||||
user << "You cut the field generator free from the floor."
|
user << "You cut the field generator free from the floor."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(istype(W, /obj/item/weapon/card/id))
|
if(istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if (src.allowed(user))
|
if (src.allowed(user))
|
||||||
src.locked = !src.locked
|
src.locked = !src.locked
|
||||||
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
|
||||||
|
|||||||
@@ -497,7 +497,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/obj/mecha/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
/obj/mecha/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||||
if(istype(W, /obj/item/weapon/card/id))
|
if(istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||||
if(src.internals_access_allowed(usr))
|
if(src.internals_access_allowed(usr))
|
||||||
if(state==0)
|
if(state==0)
|
||||||
state = 1
|
state = 1
|
||||||
|
|||||||
@@ -16,7 +16,10 @@
|
|||||||
src.MouseDrop_T(W:affecting, user) //act like they were dragged onto the closet
|
src.MouseDrop_T(W:affecting, user) //act like they were dragged onto the closet
|
||||||
user.drop_item()
|
user.drop_item()
|
||||||
if (W) W.loc = src.loc
|
if (W) W.loc = src.loc
|
||||||
else if (istype(W, /obj/item/weapon/card/id))
|
else 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(src.broken)
|
if(src.broken)
|
||||||
user << "\red It appears to be broken."
|
user << "\red It appears to be broken."
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -34,6 +34,8 @@
|
|||||||
var/obj/item/weapon/integrated_uplink/uplink = null
|
var/obj/item/weapon/integrated_uplink/uplink = null
|
||||||
var/message1 // used for status_displays
|
var/message1 // used for status_displays
|
||||||
var/message2
|
var/message2
|
||||||
|
var/obj/item/weapon/card/id/id = null //Making it possible to slot an ID card into the PDA so it can function as both.
|
||||||
|
var/ownjob = null //related to above
|
||||||
|
|
||||||
/obj/item/device/pda/medical
|
/obj/item/device/pda/medical
|
||||||
default_cartridge = /obj/item/weapon/cartridge/medical
|
default_cartridge = /obj/item/weapon/cartridge/medical
|
||||||
@@ -494,7 +496,9 @@
|
|||||||
switch (src.mode)
|
switch (src.mode)
|
||||||
if (0)
|
if (0)
|
||||||
dat += "<h2>PERSONAL DATA ASSISTANT</h2>"
|
dat += "<h2>PERSONAL DATA ASSISTANT</h2>"
|
||||||
dat += "Owner: [src.owner]<br><br>"
|
dat += "Owner: [src.owner], [src.ownjob]<br>"
|
||||||
|
dat += text("ID: <A href='?src=\ref[];auth=1'>[]</A>", src, (src.id ? "[src.id.registered], [src.id.assignment]" : "----------"))
|
||||||
|
dat += "<br><br>"
|
||||||
|
|
||||||
dat += "<h4>General Functions</h4>"
|
dat += "<h4>General Functions</h4>"
|
||||||
dat += "<ul>"
|
dat += "<ul>"
|
||||||
@@ -1051,6 +1055,25 @@ Code:
|
|||||||
src.add_fingerprint(usr)
|
src.add_fingerprint(usr)
|
||||||
usr.machine = src
|
usr.machine = src
|
||||||
|
|
||||||
|
if (href_list["auth"])
|
||||||
|
if (src.id)
|
||||||
|
if (istype(src.loc, /mob))
|
||||||
|
var/obj/item/W = src.loc:equipped()
|
||||||
|
var/emptyHand = (W == null)
|
||||||
|
|
||||||
|
if(emptyHand)
|
||||||
|
src.id.DblClick()
|
||||||
|
// src.id.loc = src.loc
|
||||||
|
// else if (istype(src.loc, /turf)) src.id.loc = src.loc
|
||||||
|
else src.id.loc = src.loc
|
||||||
|
src.id = null
|
||||||
|
else
|
||||||
|
var/obj/item/I = usr.equipped()
|
||||||
|
if (istype(I, /obj/item/weapon/card/id))
|
||||||
|
usr.drop_item()
|
||||||
|
I.loc = src
|
||||||
|
src.id = I
|
||||||
|
|
||||||
if (href_list["mm"])
|
if (href_list["mm"])
|
||||||
src.mode = 0
|
src.mode = 0
|
||||||
|
|
||||||
@@ -1396,6 +1419,7 @@ Code:
|
|||||||
|
|
||||||
else if (istype(C, /obj/item/weapon/card/id) && !src.owner && C:registered)
|
else if (istype(C, /obj/item/weapon/card/id) && !src.owner && C:registered)
|
||||||
src.owner = C:registered
|
src.owner = C:registered
|
||||||
|
src.ownjob = C:assignment
|
||||||
src.name = "PDA-[src.owner]"
|
src.name = "PDA-[src.owner]"
|
||||||
user << "\blue Card scanned."
|
user << "\blue Card scanned."
|
||||||
src.updateUsrDialog()
|
src.updateUsrDialog()
|
||||||
@@ -1474,6 +1498,13 @@ Code:
|
|||||||
del(src)
|
del(src)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
/obj/item/device/pda/Del()
|
||||||
|
if (src.id)
|
||||||
|
if(istype(src.loc, /mob))
|
||||||
|
src.id.loc = src.loc.loc
|
||||||
|
else src.id.loc = src.loc
|
||||||
|
..()
|
||||||
|
|
||||||
/obj/item/device/pda/clown/HasEntered(AM as mob|obj) //Clown PDA is slippery.
|
/obj/item/device/pda/clown/HasEntered(AM as mob|obj) //Clown PDA is slippery.
|
||||||
if (istype(AM, /mob/living/carbon))
|
if (istype(AM, /mob/living/carbon))
|
||||||
var/mob/M = AM
|
var/mob/M = AM
|
||||||
|
|||||||
@@ -147,7 +147,13 @@ Frequency:
|
|||||||
|
|
||||||
if (istype(M, /mob/living/carbon))
|
if (istype(M, /mob/living/carbon))
|
||||||
if (M:wear_id)
|
if (M:wear_id)
|
||||||
eqjobname = M:wear_id:assignment
|
var/obj/item/weapon/card/id/id
|
||||||
|
if (istype(M:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = M:wear_id
|
||||||
|
id = pda.id
|
||||||
|
else id = M:wear_id
|
||||||
|
if (id.assignment) eqjobname = M:wear_id:assignment
|
||||||
|
else eqjobname = "No job"
|
||||||
else
|
else
|
||||||
eqjobname = "No id"
|
eqjobname = "No id"
|
||||||
else if (istype(M,/mob/living/silicon/ai))
|
else if (istype(M,/mob/living/silicon/ai))
|
||||||
|
|||||||
@@ -293,6 +293,12 @@ var/ordernum=0
|
|||||||
idname = usr:wear_id.registered
|
idname = usr:wear_id.registered
|
||||||
if(usr:wear_id.assignment)
|
if(usr:wear_id.assignment)
|
||||||
idrank = usr:wear_id.assignment
|
idrank = usr:wear_id.assignment
|
||||||
|
if (istype(usr:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = usr:wear_id
|
||||||
|
if(pda.owner)
|
||||||
|
idname = pda.owner
|
||||||
|
if(pda.ownjob)
|
||||||
|
idrank = pda.ownjob
|
||||||
else
|
else
|
||||||
idname = usr.name
|
idname = usr.name
|
||||||
|
|
||||||
|
|||||||
@@ -989,7 +989,11 @@ var/showadminmessages = 1
|
|||||||
continue
|
continue
|
||||||
H.paralysis += 5
|
H.paralysis += 5
|
||||||
if(H.wear_id)
|
if(H.wear_id)
|
||||||
for(var/A in H.wear_id.access)
|
var/obj/item/weapon/card/id/id = H.wear_id
|
||||||
|
if (istype (H.wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = H.wear_id
|
||||||
|
id = pda.id
|
||||||
|
for(var/A in id.access)
|
||||||
if(A == access_security)
|
if(A == access_security)
|
||||||
security++
|
security++
|
||||||
if(!security)
|
if(!security)
|
||||||
|
|||||||
@@ -246,9 +246,13 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
|||||||
if (istype(M, /mob/living/carbon/human))
|
if (istype(M, /mob/living/carbon/human))
|
||||||
var/mob/living/carbon/human/H = M
|
var/mob/living/carbon/human/H = M
|
||||||
if (H.wear_id)
|
if (H.wear_id)
|
||||||
|
var/obj/item/weapon/card/id/id = H.wear_id
|
||||||
|
if(istype(H.wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = H.wear_id
|
||||||
|
id = pda.id
|
||||||
log_admin("[key_name(src)] has granted [M.key] full access.")
|
log_admin("[key_name(src)] has granted [M.key] full access.")
|
||||||
H.wear_id.icon_state = "gold"
|
id.icon_state = "gold"
|
||||||
H.wear_id.access = get_all_accesses()
|
id:access = get_all_accesses()
|
||||||
else
|
else
|
||||||
alert("Invalid ID card")
|
alert("Invalid ID card")
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -72,7 +72,11 @@
|
|||||||
usr << "\blue [src.name] has a \icon[src.back] [src.back.name] on [t_his] back."
|
usr << "\blue [src.name] has a \icon[src.back] [src.back.name] on [t_his] back."
|
||||||
|
|
||||||
if (src.wear_id)
|
if (src.wear_id)
|
||||||
if (src.wear_id.registered != src.real_name && in_range(src, usr) && prob(10))
|
var/obj/item/weapon/card/id/id = src:wear_id
|
||||||
|
if(istype(src:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = src:wear_id
|
||||||
|
id = pda.id
|
||||||
|
if (id.registered != src.real_name && in_range(src, usr) && prob(10))
|
||||||
usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] yet doesn't seem to be that person!!!"
|
usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] yet doesn't seem to be that person!!!"
|
||||||
else
|
else
|
||||||
usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name]."
|
usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name]."
|
||||||
|
|||||||
@@ -798,7 +798,7 @@
|
|||||||
return
|
return
|
||||||
if (!src.w_uniform)
|
if (!src.w_uniform)
|
||||||
return
|
return
|
||||||
if (!( istype(W, /obj/item/weapon/card/id) ))
|
if (!istype(W, /obj/item/weapon/card/id) && !istype(W, /obj/item/device/pda) )
|
||||||
return
|
return
|
||||||
src.u_equip(W)
|
src.u_equip(W)
|
||||||
src.wear_id = W
|
src.wear_id = W
|
||||||
@@ -1178,13 +1178,34 @@
|
|||||||
src.s_store.screen_loc = ui_sstore1
|
src.s_store.screen_loc = ui_sstore1
|
||||||
|
|
||||||
if ((src.wear_mask && !(src.wear_mask.see_face)) || (src.head && !(src.head.see_face))) // can't see the face
|
if ((src.wear_mask && !(src.wear_mask.see_face)) || (src.head && !(src.head.see_face))) // can't see the face
|
||||||
if (src.wear_id && src.wear_id.registered)
|
if (src.wear_id)
|
||||||
src.name = src.wear_id.registered
|
if (istype(src.wear_id, /obj/item/weapon/card/id))
|
||||||
|
var/obj/item/weapon/card/id/id = src.wear_id
|
||||||
|
if (id.registered)
|
||||||
|
src.name = id.registered
|
||||||
|
else
|
||||||
|
src.name = "Unknown"
|
||||||
|
else if (istype(src.wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = src.wear_id
|
||||||
|
if (pda.owner)
|
||||||
|
src.name = pda.owner
|
||||||
|
else
|
||||||
|
src.name = "Unknown"
|
||||||
else
|
else
|
||||||
src.name = "Unknown"
|
src.name = "Unknown"
|
||||||
else
|
else
|
||||||
if (src.wear_id && src.wear_id.registered != src.real_name)
|
if (src.wear_id)
|
||||||
src.name = "[src.real_name] (as [src.wear_id.registered])"
|
if (istype(src.wear_id, /obj/item/weapon/card/id))
|
||||||
|
var/obj/item/weapon/card/id/id = src.wear_id
|
||||||
|
if (id.registered != src.real_name)
|
||||||
|
src.name = "[src.real_name] (as [id.registered])"
|
||||||
|
|
||||||
|
|
||||||
|
else if (istype(src.wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = src.wear_id
|
||||||
|
if (pda.owner)
|
||||||
|
if (pda.owner != src.real_name)
|
||||||
|
src.name = "[src.real_name] (as [pda.owner])"
|
||||||
else
|
else
|
||||||
src.name = src.real_name
|
src.name = src.real_name
|
||||||
|
|
||||||
@@ -2217,7 +2238,7 @@
|
|||||||
W.layer = initial(W.layer)
|
W.layer = initial(W.layer)
|
||||||
W.add_fingerprint(src.source)
|
W.add_fingerprint(src.source)
|
||||||
else
|
else
|
||||||
if ((istype(src.item, /obj/item/weapon/card/id) && src.target.w_uniform))
|
if (((istype(src.item, /obj/item/weapon/card/id)||istype(src.item, /obj/item/device/pda)) && src.target.w_uniform))
|
||||||
src.source.drop_item()
|
src.source.drop_item()
|
||||||
src.loc = src.target
|
src.loc = src.target
|
||||||
src.item.layer = 20
|
src.item.layer = 20
|
||||||
|
|||||||
@@ -18,8 +18,12 @@
|
|||||||
|
|
||||||
var/alt_name = ""
|
var/alt_name = ""
|
||||||
if (istype(src, /mob/living/carbon/human) && src.name != src.real_name)
|
if (istype(src, /mob/living/carbon/human) && src.name != src.real_name)
|
||||||
if (src:wear_id && src:wear_id:registered)
|
if (src.wear_id)
|
||||||
alt_name = " (as [src:wear_id:registered])"
|
var/obj/item/weapon/card/id/id = src:wear_id
|
||||||
|
if(istype(src:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = src:wear_id
|
||||||
|
id = pda.id
|
||||||
|
alt_name = " (as [id:registered])"
|
||||||
else
|
else
|
||||||
alt_name = " (as Unknown)"
|
alt_name = " (as Unknown)"
|
||||||
|
|
||||||
|
|||||||
@@ -27,8 +27,12 @@
|
|||||||
|
|
||||||
var/alt_name = ""
|
var/alt_name = ""
|
||||||
if (istype(src, /mob/living/carbon/human) && src.name != src.real_name)
|
if (istype(src, /mob/living/carbon/human) && src.name != src.real_name)
|
||||||
if (src:wear_id && src:wear_id:registered)
|
if (src:wear_id)
|
||||||
alt_name = " (as [src:wear_id:registered])"
|
var/obj/item/weapon/card/id/id = src:wear_id
|
||||||
|
if(istype(src:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = src:wear_id
|
||||||
|
id = pda.id
|
||||||
|
alt_name = " (as [id:registered])"
|
||||||
else
|
else
|
||||||
alt_name = " (as Unknown)"
|
alt_name = " (as Unknown)"
|
||||||
|
|
||||||
|
|||||||
@@ -395,7 +395,7 @@
|
|||||||
user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]"
|
user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]"
|
||||||
updateicon()
|
updateicon()
|
||||||
|
|
||||||
else if (istype(W, /obj/item/weapon/card/id)) // trying to unlock the interface with an ID card
|
else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda)) // trying to unlock the interface with an ID card
|
||||||
if(emagged)
|
if(emagged)
|
||||||
user << "The interface is broken"
|
user << "The interface is broken"
|
||||||
else if(opened)
|
else if(opened)
|
||||||
|
|||||||
@@ -14,8 +14,12 @@
|
|||||||
var/alt_name = ""
|
var/alt_name = ""
|
||||||
|
|
||||||
if (istype(src, /mob/living/carbon/human) && src.name != src.real_name)
|
if (istype(src, /mob/living/carbon/human) && src.name != src.real_name)
|
||||||
if (src:wear_id && src:wear_id:registered)
|
if (src:wear_id)
|
||||||
alt_name = " (as [src:wear_id:registered])"
|
var/obj/item/weapon/card/id/id = src:wear_id
|
||||||
|
if(istype(src:wear_id, /obj/item/device/pda))
|
||||||
|
var/obj/item/device/pda/pda = src:wear_id
|
||||||
|
id = pda.id
|
||||||
|
alt_name = " (as [id:registered])"
|
||||||
else
|
else
|
||||||
alt_name = " (as Unknown)"
|
alt_name = " (as Unknown)"
|
||||||
else if (istype(src, /mob/dead/observer))
|
else if (istype(src, /mob/dead/observer))
|
||||||
|
|||||||
@@ -212,7 +212,7 @@
|
|||||||
user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]"
|
user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]"
|
||||||
updateicon()
|
updateicon()
|
||||||
|
|
||||||
else if (istype(W, /obj/item/weapon/card/id)) // trying to unlock the interface with an ID card
|
else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda)) // trying to unlock the interface with an ID card
|
||||||
if(emagged || malfhack)
|
if(emagged || malfhack)
|
||||||
user << "The interface is broken"
|
user << "The interface is broken"
|
||||||
else if(opened)
|
else if(opened)
|
||||||
|
|||||||
Reference in New Issue
Block a user