mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-24 12:37:50 +01:00
New ID Card Design
This commit is contained in:
@@ -13,19 +13,48 @@
|
||||
*/
|
||||
/obj/item/weapon/card
|
||||
name = "card"
|
||||
desc = "Does card things."
|
||||
icon = 'icons/obj/card.dmi'
|
||||
desc = "A tiny plaque of plastic. Does card things."
|
||||
icon = 'icons/obj/card_new.dmi'
|
||||
w_class = ITEMSIZE_TINY
|
||||
slot_flags = SLOT_EARS
|
||||
var/associated_account_number = 0
|
||||
|
||||
var/list/initial_sprite_stack = list("")
|
||||
var/base_icon = "icons/obj/card_new.dmi"
|
||||
var/list/sprite_stack
|
||||
|
||||
var/list/files = list( )
|
||||
drop_sound = 'sound/items/drop/card.ogg'
|
||||
pickup_sound = 'sound/items/pickup/card.ogg'
|
||||
|
||||
/obj/item/weapon/card/New()
|
||||
. = ..()
|
||||
reset_icon()
|
||||
|
||||
/obj/item/weapon/card/proc/reset_icon()
|
||||
sprite_stack = initial_sprite_stack
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/card/update_icon()
|
||||
if(!sprite_stack || !istype(sprite_stack) || sprite_stack == list(""))
|
||||
icon = base_icon
|
||||
icon_state = initial(icon_state)
|
||||
|
||||
var/icon/I = null
|
||||
for(var/iconstate in sprite_stack)
|
||||
if(!iconstate)
|
||||
iconstate = icon_state
|
||||
if(I)
|
||||
var/icon/IC = new(base_icon, iconstate)
|
||||
I.Blend(IC, ICON_OVERLAY)
|
||||
else
|
||||
I = new/icon(base_icon, iconstate)
|
||||
if(I)
|
||||
icon = I
|
||||
|
||||
/obj/item/weapon/card/data
|
||||
name = "data disk"
|
||||
desc = "A disk of data."
|
||||
name = "data card"
|
||||
desc = "A solid-state storage card, used to back up or transfer information. What knowledge could it contain?"
|
||||
icon_state = "data"
|
||||
var/function = "storage"
|
||||
var/data = "null"
|
||||
@@ -35,20 +64,20 @@
|
||||
pickup_sound = 'sound/items/pickup/disk.ogg'
|
||||
|
||||
/obj/item/weapon/card/data/verb/label(t as text)
|
||||
set name = "Label Disk"
|
||||
set name = "Label Card"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
|
||||
if (t)
|
||||
src.name = text("data disk- '[]'", t)
|
||||
src.name = text("data card- '[]'", t)
|
||||
else
|
||||
src.name = "data disk"
|
||||
src.name = "data card"
|
||||
src.add_fingerprint(usr)
|
||||
return
|
||||
|
||||
/obj/item/weapon/card/data/clown
|
||||
name = "\proper the coordinates to clown planet"
|
||||
icon_state = "data"
|
||||
icon_state = "rainbow"
|
||||
item_state = "card-id"
|
||||
level = 2
|
||||
desc = "This card contains coordinates to the fabled Clown Planet. Handle with care."
|
||||
@@ -62,7 +91,7 @@
|
||||
/obj/item/weapon/card/emag_broken
|
||||
desc = "It's a card with a magnetic strip attached to some circuitry. It looks too busted to be used for anything but salvage."
|
||||
name = "broken cryptographic sequencer"
|
||||
icon_state = "emag"
|
||||
icon_state = "emag-spent"
|
||||
item_state = "card-id"
|
||||
origin_tech = list(TECH_MAGNET = 2, TECH_ILLEGAL = 2)
|
||||
|
||||
|
||||
@@ -0,0 +1,96 @@
|
||||
// This is a defines file for card sprite stacks. If a new card set comes in, this file can just be disabled and a new one made to match the new sprites.
|
||||
// Generally, if the icon file is card_xxx.dmi, this filename should be sprite_stacks_xxx.dm
|
||||
// Please make sure that only the relevant sprite_stacks_xxx.file is included, if more are made.
|
||||
|
||||
/obj/item/weapon/card
|
||||
icon = 'icons/obj/card_new.dmi' // These are redefined here so that changing sprites is as easy as clicking the checkbox.
|
||||
base_icon = "icons/obj/card_new.dmi"
|
||||
|
||||
// New sprite stacks can be defined here. You could theoretically change icon-states as well but right now this file compiles before station_ids.dm so those wouldn't be affected.
|
||||
id
|
||||
generic
|
||||
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-silhouette", "clip")
|
||||
centcom
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "stamp-n", "pips-gold")
|
||||
vip
|
||||
initial_sprite_stack = list("base-stamp-gold", "top-blue", "stamp-n", "pips-gold")
|
||||
ERT
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "stamp-n", "pips-red", "stripe-red")
|
||||
silver
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-mime", "stamp-n-generic")
|
||||
secretary
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "stamp-n")
|
||||
hop
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "stamp-n", "stripe-white")
|
||||
medical
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n")
|
||||
chemist
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "pips-orange")
|
||||
geneticist
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "pips-purple")
|
||||
psych
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "pips-purple")
|
||||
emt
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "pips-blue")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-medblu", "stamp-n", "stripe-gold")
|
||||
sar
|
||||
initial_sprite_stack = list("base-stamp", "top-darkgreen", "stamp-n", "pips-medblu")
|
||||
security
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "stamp-n")
|
||||
detective
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "stamp-n", "pips-brown")
|
||||
warden
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "stamp-n", "pips-white")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-red", "stamp-n", "stripe-gold")
|
||||
engineering
|
||||
initial_sprite_stack = list("base-stamp", "top-orange", "stamp-n")
|
||||
atmos
|
||||
initial_sprite_stack = list("base-stamp", "top-orange", "pips-medblu", "stamp-n")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-orange", "stamp-n", "stripe-gold")
|
||||
science
|
||||
initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n")
|
||||
roboticist
|
||||
initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n", "pips-orange")
|
||||
explorer
|
||||
initial_sprite_stack = list("base-stamp", "top-darkgreen", "stamp-n")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-purple", "stamp-n", "stripe-gold")
|
||||
pathfinder
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-darkgreen", "stamp-n", "pips-purple") //not a true head, no gold stripe for you
|
||||
cargo
|
||||
initial_sprite_stack = list("base-stamp", "top-brown", "stamp-n")
|
||||
miner
|
||||
initial_sprite_stack = list("base-stamp", "top-brown", "stamp-n", "pips-purple")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-brown", "stamp-n", "pips-gold")
|
||||
civilian
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n")
|
||||
chaplain
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-dark", "stamp-cross", "pips-white")
|
||||
internal_affairs
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n")
|
||||
botanist
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "pips-brown")
|
||||
bartender
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "pips-dark")
|
||||
chef
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "pips-white")
|
||||
janitor
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "pips-purple")
|
||||
journalist
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n")
|
||||
clown
|
||||
initial_sprite_stack = list("base-stamp", "top-rainbow", "stamp-n")
|
||||
mime
|
||||
initial_sprite_stack = list("base-stamp", "top-white", "stamp-n", "stripe-black")
|
||||
pilot
|
||||
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "pips-blue")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-blue", "stamp-n", "stripe-white")
|
||||
syndicate
|
||||
initial_sprite_stack = list("base-stamp-dark", "top-syndicate", "stamp-s")
|
||||
officer
|
||||
initial_sprite_stack = list("base-stamp-dark", "top-syndicate", "stamp-s", "pips-gold", "stripe-gold")
|
||||
@@ -0,0 +1,92 @@
|
||||
// This is a defines file for card sprite stacks. If a new card set comes in, this file can just be disabled and a new one made to match the new sprites.
|
||||
// Generally, if the icon file is card_xxx.dmi, this filename should be sprite_stacks_xxx.dm
|
||||
// Please make sure that only the relevant sprite_stacks_xxx.file is included, if more are made.
|
||||
|
||||
|
||||
|
||||
/obj/item/weapon/card
|
||||
icon = 'icons/obj/card_new.dmi' // These are redefined here so that changing sprites is as easy as clicking the checkbox.
|
||||
base_icon = "icons/obj/card_new.dmi"
|
||||
|
||||
// New sprite stacks can be defined here. You could theoretically change icon-states as well but right now this file compiles before station_ids.dm so those wouldn't be affected.
|
||||
id
|
||||
centcom
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "dept-nanotrasen", "letter-n-command", "pips-gold")
|
||||
vip
|
||||
initial_sprite_stack = list("base-stamp-gold", "top-blue", "dept-vip-gold", "letter-n-command", "pips-gold")
|
||||
ERT
|
||||
initial_sprite_stack = list("base-stamp", "top-dark", "dept-nanotrasen", "letter-n-command")
|
||||
silver
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-mime", "letter-n-generic")
|
||||
secretary
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "dept-secretary", "letter-n-command")
|
||||
hop
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-blue", "dept-hop", "letter-n-command", "pips-gold")
|
||||
medical
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "letter-n-medical")
|
||||
chemist
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "letter-n-medical", "pips-engineering")
|
||||
geneticist
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "letter-n-medical", "pips-science")
|
||||
psych
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "letter-n-medical", "pips-science")
|
||||
emt
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "letter-n-medical", "pips-command")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-medblu", "dept-medical", "letter-n-command", "pips-gold")
|
||||
sar
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-exploration", "letter-n-command", "pips-command")
|
||||
security
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "dept-security", "letter-n-security")
|
||||
detective
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "dept-security", "letter-n-security", "pips-cargo")
|
||||
warden
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "dept-security", "letter-n-security", "pips-command")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-red", "dept-security", "letter-n-command", "pips-gold")
|
||||
engineering
|
||||
initial_sprite_stack = list("base-stamp", "top-orange", "dept-engineering", "letter-n-engineering")
|
||||
atmos
|
||||
initial_sprite_stack = list("base-stamp", "top-orange", "dept-engineering", "pips-medical", "letter-n-engineering")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-orange", "dept-engineering", "letter-n-command", "pips-gold")
|
||||
science
|
||||
initial_sprite_stack = list("base-stamp", "top-purple", "dept-science", "letter-n-science")
|
||||
roboticist
|
||||
initial_sprite_stack = list("base-stamp", "top-purple", "dept-science", "letter-n-science", "pips-engineering")
|
||||
explorer
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "dept-exploration", "letter-n-command")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-purple", "dept-science", "letter-n-command", "pips-gold")
|
||||
pathfinder
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-blue", "dept-exploration", "letter-n-command", "pips-gold")
|
||||
cargo
|
||||
initial_sprite_stack = list("base-stamp", "top-brown", "dept-cargo", "letter-n-cargo")
|
||||
miner
|
||||
initial_sprite_stack = list("base-stamp", "top-brown", "dept-cargo", "letter-n-cargo", "pips-science")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-brown", "dept-cargo", "letter-n-command", "pips-gold")
|
||||
civilian
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "letter-n-civilian")
|
||||
chaplain
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-dark", "letter-cross", "pips-white")
|
||||
internal_affairs
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-internal-affairs", "letter-n-command")
|
||||
botanist
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "letter-n-civilian", "pips-cargo")
|
||||
bartender
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "letter-n-civilian", "pips-dark")
|
||||
chef
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "letter-n-civilian", "pips-white")
|
||||
janitor
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "letter-n-civilian", "pips-science")
|
||||
journalist
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-press", "letter-n-civilian")
|
||||
clown
|
||||
initial_sprite_stack = list("base-stamp", "top-pink", "dept-clown", "letter-n-clown")
|
||||
mime
|
||||
initial_sprite_stack = list("base-stamp", "top-white", "letter-n-mime")
|
||||
pilot
|
||||
initial_sprite_stack = list("base-stamp", "top-generic", "dept-pilot", "letter-n-command", "pips-command")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-command", "letter-n-command", "pips-civilian")
|
||||
@@ -0,0 +1,92 @@
|
||||
// This is a defines file for card sprite stacks. If a new card set comes in, this file can just be disabled and a new one made to match the new sprites.
|
||||
// Generally, if the icon file is card_xxx.dmi, this filename should be sprite_stacks_xxx.dm
|
||||
// Please make sure that only the relevant sprite_stacks_xxx.file is included, if more are made.
|
||||
|
||||
|
||||
|
||||
/obj/item/weapon/card
|
||||
icon = 'icons/obj/card_new.dmi' // These are redefined here so that changing sprites is as easy as clicking the checkbox.
|
||||
base_icon = "icons/obj/card_new.dmi"
|
||||
|
||||
// New sprite stacks can be defined here. You could theoretically change icon-states as well but right now this file compiles before station_ids.dm so those wouldn't be affected.
|
||||
id
|
||||
centcom
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "dept-nanotrasen", "stamp-n", "pips-gold")
|
||||
vip
|
||||
initial_sprite_stack = list("base-stamp-gold", "dept-vip", "top-blue", "stamp-n", "pips-gold")
|
||||
ERT
|
||||
initial_sprite_stack = list("base-stamp", "top-dark", "dept-ert", "stamp-n")
|
||||
silver
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-mime", "stamp-n-generic")
|
||||
secretary
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "dept-secretary", "stamp-n")
|
||||
hop
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-blue", "dept-hop", "stamp-n", "pips-gold")
|
||||
medical
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "stamp-n")
|
||||
chemist
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "stamp-n", "pips-engineering")
|
||||
geneticist
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "stamp-n", "pips-science")
|
||||
psych
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "stamp-n", "pips-science")
|
||||
emt
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-medical", "stamp-n", "pips-command")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-medblu", "dept-medical", "stamp-n", "pips-gold")
|
||||
sar
|
||||
initial_sprite_stack = list("base-stamp", "top-medblu", "dept-exploration", "stamp-n", "pips-command")
|
||||
security
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "dept-security", "stamp-n")
|
||||
detective
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "dept-security", "stamp-n", "pips-cargo")
|
||||
warden
|
||||
initial_sprite_stack = list("base-stamp", "top-red", "dept-security", "stamp-n", "pips-command")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-red", "dept-security", "stamp-n", "pips-gold")
|
||||
engineering
|
||||
initial_sprite_stack = list("base-stamp", "top-orange", "dept-engineering", "stamp-n")
|
||||
atmos
|
||||
initial_sprite_stack = list("base-stamp", "top-orange", "dept-engineering", "pips-medical", "stamp-n")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-orange", "dept-engineering", "stamp-n", "pips-gold")
|
||||
science
|
||||
initial_sprite_stack = list("base-stamp", "top-purple", "dept-science", "stamp-n")
|
||||
roboticist
|
||||
initial_sprite_stack = list("base-stamp", "top-purple", "dept-science", "stamp-n", "pips-engineering")
|
||||
explorer
|
||||
initial_sprite_stack = list("base-stamp", "top-blue", "dept-exploration", "stamp-n")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-purple", "dept-science", "stamp-n", "pips-gold")
|
||||
pathfinder
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-blue", "dept-exploration", "stamp-n", "pips-gold")
|
||||
cargo
|
||||
initial_sprite_stack = list("base-stamp", "top-brown", "dept-cargo", "stamp-n")
|
||||
miner
|
||||
initial_sprite_stack = list("base-stamp", "top-brown", "dept-cargo", "stamp-n", "pips-science")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-brown", "dept-cargo", "stamp-n", "pips-gold")
|
||||
civilian
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "stamp-n")
|
||||
chaplain
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-dark", "letter-cross", "pips-white")
|
||||
internal_affairs
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-internal-affairs", "stamp-n")
|
||||
botanist
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "stamp-n", "pips-cargo")
|
||||
bartender
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "stamp-n", "pips-dark")
|
||||
chef
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "stamp-n", "pips-white")
|
||||
janitor
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-civilian", "stamp-n", "pips-science")
|
||||
journalist
|
||||
initial_sprite_stack = list("base-stamp", "top-green", "dept-press", "stamp-n")
|
||||
clown
|
||||
initial_sprite_stack = list("base-stamp", "top-pink", "dept-clown", "stamp-n")
|
||||
mime
|
||||
initial_sprite_stack = list("base-stamp", "top-white", "stamp-n-mime")
|
||||
pilot
|
||||
initial_sprite_stack = list("base-stamp", "top-generic", "dept-pilot", "stamp-n", "pips-command")
|
||||
head
|
||||
initial_sprite_stack = list("base-stamp-silver", "top-command", "stamp-n", "pips-civilian")
|
||||
@@ -1,7 +1,7 @@
|
||||
/obj/item/weapon/card/id
|
||||
name = "identification card"
|
||||
desc = "A card used to provide ID and determine access across the station."
|
||||
icon_state = "id"
|
||||
icon_state = "generic-nt"
|
||||
item_state = "card-id"
|
||||
|
||||
sprite_sheets = list(
|
||||
@@ -127,13 +127,13 @@
|
||||
/obj/item/weapon/card/id/silver
|
||||
name = "identification card"
|
||||
desc = "A silver card which shows honour and dedication."
|
||||
icon_state = "silver"
|
||||
icon_state = "silver-id"
|
||||
item_state = "silver_id"
|
||||
|
||||
/obj/item/weapon/card/id/gold
|
||||
name = "identification card"
|
||||
desc = "A golden card which shows power and might."
|
||||
icon_state = "gold"
|
||||
icon_state = "gold-id"
|
||||
item_state = "gold_id"
|
||||
preserve_item = 1
|
||||
|
||||
@@ -144,13 +144,14 @@
|
||||
/obj/item/weapon/card/id/gold/captain/spare
|
||||
name = "\improper Site Manager's spare ID"
|
||||
desc = "The spare ID of the High Lord himself."
|
||||
icon_state = "gold-id-alternate"
|
||||
registered_name = "Site Manager"
|
||||
|
||||
/obj/item/weapon/card/id/synthetic
|
||||
name = "\improper Synthetic ID"
|
||||
desc = "Access module for NanoTrasen Synthetics"
|
||||
icon_state = "id-robot"
|
||||
item_state = "tdgreen"
|
||||
item_state = "idgreen"
|
||||
assignment = "Synthetic"
|
||||
|
||||
/obj/item/weapon/card/id/synthetic/Initialize()
|
||||
@@ -172,7 +173,7 @@
|
||||
/obj/item/weapon/card/id/centcom
|
||||
name = "\improper CentCom. ID"
|
||||
desc = "An ID straight from Central Command."
|
||||
icon_state = "nanotrasen"
|
||||
icon_state = "cc-id"
|
||||
registered_name = "Central Command"
|
||||
assignment = "General"
|
||||
|
||||
@@ -187,7 +188,7 @@
|
||||
/obj/item/weapon/card/id/centcom/ERT
|
||||
name = "\improper Emergency Response Team ID"
|
||||
assignment = "Emergency Response Team"
|
||||
icon_state = "centcom"
|
||||
icon_state = "ert-id"
|
||||
|
||||
/obj/item/weapon/card/id/centcom/ERT/Initialize()
|
||||
. = ..()
|
||||
@@ -197,14 +198,13 @@
|
||||
/obj/item/weapon/card/id/medical
|
||||
name = "identification card"
|
||||
desc = "A card issued to station medical staff."
|
||||
icon_state = "med"
|
||||
icon_state = "medical-id"
|
||||
primary_color = rgb(189,237,237)
|
||||
secondary_color = rgb(223,255,255)
|
||||
|
||||
/obj/item/weapon/card/id/medical/head
|
||||
name = "identification card"
|
||||
desc = "A card which represents care and compassion."
|
||||
icon_state = "medGold"
|
||||
primary_color = rgb(189,237,237)
|
||||
secondary_color = rgb(255,223,127)
|
||||
assignment = "Chief Medical Officer"
|
||||
@@ -213,14 +213,17 @@
|
||||
/obj/item/weapon/card/id/security
|
||||
name = "identification card"
|
||||
desc = "A card issued to station security staff."
|
||||
icon_state = "sec"
|
||||
icon_state = "security-id"
|
||||
primary_color = rgb(189,47,0)
|
||||
secondary_color = rgb(223,127,95)
|
||||
|
||||
/obj/item/weapon/card/id/security/warden
|
||||
assignment = "Warden"
|
||||
rank = "Warden"
|
||||
|
||||
/obj/item/weapon/card/id/security/head
|
||||
name = "identification card"
|
||||
desc = "A card which represents honor and protection."
|
||||
icon_state = "secGold"
|
||||
primary_color = rgb(189,47,0)
|
||||
secondary_color = rgb(255,223,127)
|
||||
assignment = "Head of Security"
|
||||
@@ -229,14 +232,17 @@
|
||||
/obj/item/weapon/card/id/engineering
|
||||
name = "identification card"
|
||||
desc = "A card issued to station engineering staff."
|
||||
icon_state = "eng"
|
||||
icon_state = "engineering-id"
|
||||
primary_color = rgb(189,94,0)
|
||||
secondary_color = rgb(223,159,95)
|
||||
|
||||
/obj/item/weapon/card/id/engineering/atmos
|
||||
assignment = "Atmospheric Technician"
|
||||
rank = "Atmospheric Technician"
|
||||
|
||||
/obj/item/weapon/card/id/engineering/head
|
||||
name = "identification card"
|
||||
desc = "A card which represents creativity and ingenuity."
|
||||
icon_state = "engGold"
|
||||
primary_color = rgb(189,94,0)
|
||||
secondary_color = rgb(255,223,127)
|
||||
assignment = "Chief Engineer"
|
||||
@@ -245,14 +251,13 @@
|
||||
/obj/item/weapon/card/id/science
|
||||
name = "identification card"
|
||||
desc = "A card issued to station science staff."
|
||||
icon_state = "sci"
|
||||
icon_state = "science-id"
|
||||
primary_color = rgb(142,47,142)
|
||||
secondary_color = rgb(191,127,191)
|
||||
|
||||
/obj/item/weapon/card/id/science/head
|
||||
name = "identification card"
|
||||
desc = "A card which represents knowledge and reasoning."
|
||||
icon_state = "sciGold"
|
||||
primary_color = rgb(142,47,142)
|
||||
secondary_color = rgb(255,223,127)
|
||||
assignment = "Research Director"
|
||||
@@ -261,14 +266,13 @@
|
||||
/obj/item/weapon/card/id/cargo
|
||||
name = "identification card"
|
||||
desc = "A card issued to station cargo staff."
|
||||
icon_state = "cargo"
|
||||
icon_state = "cargo-id"
|
||||
primary_color = rgb(142,94,0)
|
||||
secondary_color = rgb(191,159,95)
|
||||
|
||||
/obj/item/weapon/card/id/cargo/head
|
||||
name = "identification card"
|
||||
desc = "A card which represents service and planning."
|
||||
icon_state = "cargoGold"
|
||||
primary_color = rgb(142,94,0)
|
||||
secondary_color = rgb(255,223,127)
|
||||
assignment = "Quartermaster"
|
||||
@@ -281,7 +285,7 @@
|
||||
/obj/item/weapon/card/id/civilian
|
||||
name = "identification card"
|
||||
desc = "A card issued to station civilian staff."
|
||||
icon_state = "civ"
|
||||
icon_state = "civilian-id"
|
||||
primary_color = rgb(0,94,142)
|
||||
secondary_color = rgb(95,159,191)
|
||||
assignment = "Civilian"
|
||||
@@ -290,13 +294,12 @@
|
||||
/obj/item/weapon/card/id/civilian/head //This is not the HoP. There's no position that uses this right now.
|
||||
name = "identification card"
|
||||
desc = "A card which represents common sense and responsibility."
|
||||
icon_state = "civGold"
|
||||
primary_color = rgb(0,94,142)
|
||||
secondary_color = rgb(255,223,127)
|
||||
|
||||
/obj/item/weapon/card/id/external
|
||||
name = "identification card"
|
||||
desc = "An identification card of some sort. It does not look like it is issued by NT."
|
||||
icon_state = "permit"
|
||||
icon_state = "generic"
|
||||
primary_color = rgb(142,94,0)
|
||||
secondary_color = rgb(191,159,95)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/obj/item/weapon/card/id/syndicate
|
||||
name = "agent card"
|
||||
icon_state = "syndicate"
|
||||
icon_state = "generic-s"
|
||||
assignment = "Agent"
|
||||
origin_tech = list(TECH_ILLEGAL = 3)
|
||||
var/electronic_warfare = 1
|
||||
@@ -62,16 +62,132 @@
|
||||
registered_user.unregister(OBSERVER_EVENT_DESTROY, src)
|
||||
registered_user = null
|
||||
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
/obj/item/weapon/card/id/syndicate/CanUseTopic(mob/user)
|
||||
if(user != registered_user)
|
||||
return STATUS_CLOSE
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/card/id/syndicate/Topic(href, href_list, var/datum/topic_state/state)
|
||||
if(..())
|
||||
return 1
|
||||
|
||||
var/user = usr
|
||||
if(href_list["electronic_warfare"])
|
||||
electronic_warfare = text2num(href_list["electronic_warfare"])
|
||||
to_chat(user, "<span class='notice'>Electronic warfare [electronic_warfare ? "enabled" : "disabled"].</span>")
|
||||
else if(href_list["set"])
|
||||
switch(href_list["set"])
|
||||
if("Age")
|
||||
var/new_age = input(user,"What age would you like to put on this card?","Agent Card Age", age) as null|num
|
||||
if(!isnull(new_age) && CanUseTopic(user, state))
|
||||
if(new_age < 0)
|
||||
age = initial(age)
|
||||
else
|
||||
age = new_age
|
||||
to_chat(user, "<span class='notice'>Age has been set to '[age]'.</span>")
|
||||
. = 1
|
||||
if("Appearance")
|
||||
var/datum/card_state/choice = input(user, "Select the appearance for this card.", "Agent Card Appearance") as null|anything in id_card_states()
|
||||
if(choice && CanUseTopic(user, state))
|
||||
src.icon_state = choice.icon_state
|
||||
src.item_state = choice.item_state
|
||||
src.sprite_stack = choice.sprite_stack
|
||||
update_icon()
|
||||
to_chat(usr, "<span class='notice'>Appearance changed to [choice].</span>")
|
||||
. = 1
|
||||
if("Assignment")
|
||||
var/new_job = sanitize(input(user,"What assignment would you like to put on this card?\nChanging assignment will not grant or remove any access levels.","Agent Card Assignment", assignment) as null|text)
|
||||
if(!isnull(new_job) && CanUseTopic(user, state))
|
||||
src.assignment = new_job
|
||||
to_chat(user, "<span class='notice'>Occupation changed to '[new_job]'.</span>")
|
||||
update_name()
|
||||
. = 1
|
||||
if("Blood Type")
|
||||
var/default = blood_type
|
||||
if(default == initial(blood_type) && ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(H.dna)
|
||||
default = H.dna.b_type
|
||||
var/new_blood_type = sanitize(input(user,"What blood type would you like to be written on this card?","Agent Card Blood Type",default) as null|text)
|
||||
if(!isnull(new_blood_type) && CanUseTopic(user, state))
|
||||
src.blood_type = new_blood_type
|
||||
to_chat(user, "<span class='notice'>Blood type changed to '[new_blood_type]'.</span>")
|
||||
. = 1
|
||||
if("DNA Hash")
|
||||
var/default = dna_hash
|
||||
if(default == initial(dna_hash) && ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(H.dna)
|
||||
default = H.dna.unique_enzymes
|
||||
var/new_dna_hash = sanitize(input(user,"What DNA hash would you like to be written on this card?","Agent Card DNA Hash",default) as null|text)
|
||||
if(!isnull(new_dna_hash) && CanUseTopic(user, state))
|
||||
src.dna_hash = new_dna_hash
|
||||
to_chat(user, "<span class='notice'>DNA hash changed to '[new_dna_hash]'.</span>")
|
||||
. = 1
|
||||
if("Fingerprint Hash")
|
||||
var/default = fingerprint_hash
|
||||
if(default == initial(fingerprint_hash) && ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(H.dna)
|
||||
default = md5(H.dna.uni_identity)
|
||||
var/new_fingerprint_hash = sanitize(input(user,"What fingerprint hash would you like to be written on this card?","Agent Card Fingerprint Hash",default) as null|text)
|
||||
if(!isnull(new_fingerprint_hash) && CanUseTopic(user, state))
|
||||
src.fingerprint_hash = new_fingerprint_hash
|
||||
to_chat(user, "<span class='notice'>Fingerprint hash changed to '[new_fingerprint_hash]'.</span>")
|
||||
. = 1
|
||||
if("Name")
|
||||
var/new_name = sanitizeName(input(user,"What name would you like to put on this card?","Agent Card Name", registered_name) as null|text)
|
||||
if(!isnull(new_name) && CanUseTopic(user, state))
|
||||
src.registered_name = new_name
|
||||
update_name()
|
||||
to_chat(user, "<span class='notice'>Name changed to '[new_name]'.</span>")
|
||||
. = 1
|
||||
if("Photo")
|
||||
set_id_photo(user)
|
||||
to_chat(user, "<span class='notice'>Photo changed.</span>")
|
||||
. = 1
|
||||
if("Sex")
|
||||
var/new_sex = sanitize(input(user,"What sex would you like to put on this card?","Agent Card Sex", sex) as null|text)
|
||||
if(!isnull(new_sex) && CanUseTopic(user, state))
|
||||
src.sex = new_sex
|
||||
to_chat(user, "<span class='notice'>Sex changed to '[new_sex]'.</span>")
|
||||
. = 1
|
||||
if("Factory Reset")
|
||||
if(alert("This will factory reset the card, including access and owner. Continue?", "Factory Reset", "No", "Yes") == "Yes" && CanUseTopic(user, state))
|
||||
age = initial(age)
|
||||
access = syndicate_access.Copy()
|
||||
assignment = initial(assignment)
|
||||
blood_type = initial(blood_type)
|
||||
dna_hash = initial(dna_hash)
|
||||
electronic_warfare = initial(electronic_warfare)
|
||||
fingerprint_hash = initial(fingerprint_hash)
|
||||
icon_state = initial(icon_state)
|
||||
sprite_stack = list("")
|
||||
update_icon()
|
||||
name = initial(name)
|
||||
registered_name = initial(registered_name)
|
||||
unset_registered_user()
|
||||
sex = initial(sex)
|
||||
to_chat(user, "<span class='notice'>All information has been deleted from \the [src].</span>")
|
||||
. = 1
|
||||
|
||||
// Always update the UI, or buttons will spin indefinitely
|
||||
SSnanoui.update_uis(src)
|
||||
|
||||
>>>>>>> 47d2c55... New ID Card Design (#7815)
|
||||
/var/global/list/id_card_states
|
||||
/proc/id_card_states()
|
||||
if(!id_card_states)
|
||||
id_card_states = list()
|
||||
for(var/path in typesof(/obj/item/weapon/card/id))
|
||||
var/obj/item/weapon/card/id/ID = path
|
||||
var/obj/item/weapon/card/id/ID = new path()
|
||||
var/datum/card_state/CS = new()
|
||||
CS.icon_state = initial(ID.icon_state)
|
||||
CS.item_state = initial(ID.item_state)
|
||||
CS.name = initial(ID.name) + " - " + initial(ID.icon_state)
|
||||
CS.sprite_stack = ID.initial_sprite_stack
|
||||
CS.name = initial(ID.name)
|
||||
id_card_states += CS
|
||||
id_card_states = dd_sortedObjectList(id_card_states)
|
||||
|
||||
@@ -81,6 +197,7 @@
|
||||
var/name
|
||||
var/icon_state
|
||||
var/item_state
|
||||
var/sprite_stack
|
||||
|
||||
/datum/card_state/dd_SortValue()
|
||||
return name
|
||||
@@ -89,5 +206,6 @@
|
||||
name = "syndicate ID card"
|
||||
desc = "An ID straight from the Syndicate."
|
||||
registered_name = "Syndicate"
|
||||
assignment = "Syndicate Overlord"
|
||||
assignment = "Syndicate Commander"
|
||||
icon_state = "syndicate-id"
|
||||
access = list(access_syndicate, access_external_airlocks)
|
||||
Reference in New Issue
Block a user