diff --git a/code/datums/outfits/jobs/civilian.dm b/code/datums/outfits/jobs/civilian.dm
index 1a5817f718..a62600a6ee 100644
--- a/code/datums/outfits/jobs/civilian.dm
+++ b/code/datums/outfits/jobs/civilian.dm
@@ -1,6 +1,6 @@
/decl/hierarchy/outfit/job/assistant
name = OUTFIT_JOB_NAME(JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant
- id_type = /obj/item/weapon/card/id/generic //VOREStation Edit
+ id_type = /obj/item/card/id/generic //VOREStation Edit
/decl/hierarchy/outfit/job/assistant/visitor
name = OUTFIT_JOB_NAME(JOB_ALT_VISITOR)
@@ -10,7 +10,7 @@
//VOREStation Add - Interns
/decl/hierarchy/outfit/job/assistant/intern
name = OUTFIT_JOB_NAME(JOB_INTERN)
- id_type = /obj/item/weapon/card/id/civilian
+ id_type = /obj/item/card/id/civilian
//VOREStation Add End - Interns
/decl/hierarchy/outfit/job/assistant/resident
@@ -118,6 +118,6 @@
id_slot = slot_wear_id
id_type = /obj/item/card/id/exploration //VOREStation Edit
pda_slot = slot_belt
- pda_type = /obj/item/device/pda/cargo // Brown looks more rugged
- r_pocket = /obj/item/device/gps/explorer
+ pda_type = /obj/item/pda/cargo // Brown looks more rugged
+ r_pocket = /obj/item/gps/explorer
id_pda_assignment = JOB_EXPLORER
diff --git a/code/datums/outfits/jobs/command.dm b/code/datums/outfits/jobs/command.dm
index 7d3679d805..149020e4fe 100644
--- a/code/datums/outfits/jobs/command.dm
+++ b/code/datums/outfits/jobs/command.dm
@@ -33,7 +33,7 @@
/decl/hierarchy/outfit/job/secretary
name = OUTFIT_JOB_NAME(JOB_COMMAND_SECRETARY)
- l_ear = /obj/item/device/radio/headset/headset_com
+ l_ear = /obj/item/radio/headset/headset_com
shoes = /obj/item/clothing/shoes/brown
id_type = /obj/item/card/id/silver/secretary
pda_type = /obj/item/pda/heads
diff --git a/code/datums/outfits/jobs/medical.dm b/code/datums/outfits/jobs/medical.dm
index 09a88871ab..a78636ea63 100644
--- a/code/datums/outfits/jobs/medical.dm
+++ b/code/datums/outfits/jobs/medical.dm
@@ -10,7 +10,7 @@
/decl/hierarchy/outfit/job/medical/cmo
name = OUTFIT_JOB_NAME(JOB_CHIEF_MEDICAL_OFFICER)
- l_ear =/obj/item/device/radio/headset/heads/cmo
+ l_ear =/obj/item/radio/headset/heads/cmo
uniform = /obj/item/clothing/under/rank/chief_medical_officer
suit = /obj/item/clothing/suit/storage/toggle/labcoat/cmo
shoes = /obj/item/clothing/shoes/brown
diff --git a/code/datums/outfits/jobs/security.dm b/code/datums/outfits/jobs/security.dm
index 9ebae00208..e73b45e06b 100644
--- a/code/datums/outfits/jobs/security.dm
+++ b/code/datums/outfits/jobs/security.dm
@@ -12,7 +12,7 @@
/decl/hierarchy/outfit/job/security/hos
name = OUTFIT_JOB_NAME(JOB_HEAD_OF_SECURITY)
- l_ear = /obj/item/device/radio/headset/heads/hos
+ l_ear = /obj/item/radio/headset/heads/hos
uniform = /obj/item/clothing/under/rank/head_of_security
id_type = /obj/item/card/id/security/head
pda_type = /obj/item/pda/heads/hos
diff --git a/code/datums/outfits/outfit_vr.dm b/code/datums/outfits/outfit_vr.dm
index 9a468d4277..97281f1a56 100644
--- a/code/datums/outfits/outfit_vr.dm
+++ b/code/datums/outfits/outfit_vr.dm
@@ -115,12 +115,12 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go
l_ear = /obj/item/radio/headset/explorer
id_slot = slot_wear_id
pda_slot = slot_l_store
- pda_type = /obj/item/device/pda/explorer
- id_type = /obj/item/weapon/card/id/exploration
+ pda_type = /obj/item/pda/explorer
+ id_type = /obj/item/card/id/exploration
id_pda_assignment = JOB_EXPLORER
- backpack = /obj/item/weapon/storage/backpack/explorer
- satchel_one = /obj/item/weapon/storage/backpack/satchel/explorer
- messenger_bag = /obj/item/weapon/storage/backpack/messenger/explorer
+ backpack = /obj/item/storage/backpack/explorer
+ satchel_one = /obj/item/storage/backpack/satchel/explorer
+ messenger_bag = /obj/item/storage/backpack/messenger/explorer
flags = OUTFIT_HAS_BACKPACK|OUTFIT_COMPREHENSIVE_SURVIVAL
/decl/hierarchy/outfit/job/pilot
@@ -134,8 +134,8 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go
uniform_accessories = list(/obj/item/clothing/accessory/storage/webbing/pilot1 = 1)
id_slot = slot_wear_id
pda_slot = slot_belt
- pda_type = /obj/item/device/pda/pilot
- id_type = /obj/item/weapon/card/id/civilian/pilot
+ pda_type = /obj/item/pda/pilot
+ id_type = /obj/item/card/id/civilian/pilot
id_pda_assignment = JOB_PILOT
flags = OUTFIT_HAS_BACKPACK|OUTFIT_COMPREHENSIVE_SURVIVAL
@@ -148,12 +148,12 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go
l_hand = /obj/item/storage/firstaid/regular
belt = /obj/item/storage/belt/medical/emt
pda_slot = slot_l_store
- pda_type = /obj/item/device/pda/sar
- id_type = /obj/item/weapon/card/id/exploration/fm
+ pda_type = /obj/item/pda/sar
+ id_type = /obj/item/card/id/exploration/fm
id_pda_assignment = JOB_FIELD_MEDIC
- backpack = /obj/item/weapon/storage/backpack/explorer
- satchel_one = /obj/item/weapon/storage/backpack/satchel/explorer
- messenger_bag = /obj/item/weapon/storage/backpack/messenger/explorer
+ backpack = /obj/item/storage/backpack/explorer
+ satchel_one = /obj/item/storage/backpack/satchel/explorer
+ messenger_bag = /obj/item/storage/backpack/messenger/explorer
flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL|OUTFIT_COMPREHENSIVE_SURVIVAL
/decl/hierarchy/outfit/job/pathfinder
@@ -163,8 +163,8 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go
l_ear = /obj/item/radio/headset/pathfinder
id_slot = slot_wear_id
pda_slot = slot_l_store
- pda_type = /obj/item/device/pda/pathfinder
- id_type = /obj/item/weapon/card/id/exploration/head
+ pda_type = /obj/item/pda/pathfinder
+ id_type = /obj/item/card/id/exploration/head
id_pda_assignment = JOB_PATHFINDER
flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL|OUTFIT_COMPREHENSIVE_SURVIVAL
diff --git a/code/game/antagonist/outsider/raider.dm b/code/game/antagonist/outsider/raider.dm
index 9fec96f0aa..bc17d1175d 100644
--- a/code/game/antagonist/outsider/raider.dm
+++ b/code/game/antagonist/outsider/raider.dm
@@ -227,10 +227,10 @@ var/datum/antagonist/raider/raiders
player.equip_to_slot_or_del(new new_suit(player),slot_wear_suit)
equip_weapons(player)
- var/obj/item/weapon/card/id/id = create_id(JOB_ALT_VISITOR, player, equip = 0)
+ var/obj/item/card/id/id = create_id(JOB_ALT_VISITOR, player, equip = 0)
id.name = "[player.real_name]'s Passport"
id.assignment = JOB_ALT_VISITOR
- var/obj/item/weapon/storage/wallet/W = new(player)
+ var/obj/item/storage/wallet/W = new(player)
W.handle_item_insertion(id)
player.equip_to_slot_or_del(W, slot_wear_id)
spawn_money(rand(50,150)*10,W)
diff --git a/code/game/jobs/job/exploration_vr.dm b/code/game/jobs/job/exploration_vr.dm
index d4643675c4..1beba46efb 100644
--- a/code/game/jobs/job/exploration_vr.dm
+++ b/code/game/jobs/job/exploration_vr.dm
@@ -1,4 +1,4 @@
-/obj/item/weapon/card/id/medical/sar
+/obj/item/card/id/medical/sar
assignment = JOB_FIELD_MEDIC
rank = JOB_FIELD_MEDIC
icon_state = "cyan"
diff --git a/code/game/machinery/computer/specops_shuttle.dm b/code/game/machinery/computer/specops_shuttle.dm
index 259d8fa1e6..29abc4995b 100644
--- a/code/game/machinery/computer/specops_shuttle.dm
+++ b/code/game/machinery/computer/specops_shuttle.dm
@@ -24,7 +24,7 @@ var/specops_shuttle_timeleft = 0
var/specops_shuttle_timereset = 0
/proc/specops_return()
- var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky.
+ var/obj/item/radio/intercom/announcer = new /obj/item/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky.
announcer.config(list(CHANNEL_RESPONSE_TEAM = 0))
var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values.
@@ -99,7 +99,7 @@ var/specops_shuttle_timeleft = 0
/proc/specops_process()
var/area/centcom/specops/special_ops = locate()//Where is the specops area located?
- var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky.
+ var/obj/item/radio/intercom/announcer = new /obj/item/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky.
announcer.config(list(CHANNEL_RESPONSE_TEAM = 0))
var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values.
diff --git a/code/game/objects/items/devices/holowarrant.dm b/code/game/objects/items/devices/holowarrant.dm
index d01b842fc1..dd2c4e7ff8 100644
--- a/code/game/objects/items/devices/holowarrant.dm
+++ b/code/game/objects/items/devices/holowarrant.dm
@@ -38,7 +38,7 @@
/obj/item/holowarrant/attackby(obj/item/W, mob/user)
if(active)
- var/obj/item/weapon/card/id/I = W.GetIdCard()
+ var/obj/item/card/id/I = W.GetIdCard()
if(access_hos in I.GetAccess()) // VOREStation edit
var/choice = tgui_alert(user, "Would you like to authorize this warrant?","Warrant authorization",list("Yes","No"))
if(choice == "Yes")
diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm
index 40808a0485..5d4e721f01 100644
--- a/code/game/objects/items/devices/radio/encryptionkey.dm
+++ b/code/game/objects/items/devices/radio/encryptionkey.dm
@@ -126,7 +126,7 @@
icon_state = "cent_cypherkey"
channels = list(CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1)
-/obj/item/device/encryptionkey/omni //Literally only for the admin intercoms
+/obj/item/encryptionkey/omni //Literally only for the admin intercoms
channels = list(CHANNEL_MERCENARY = 1, CHANNEL_RAIDER = 1, CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1)
syndie = 1//Signifies that it de-crypts Syndicate transmissions
diff --git a/code/game/objects/items/devices/radio/encryptionkey_vr.dm b/code/game/objects/items/devices/radio/encryptionkey_vr.dm
index 30b420fb8a..9b7b1b2c1e 100644
--- a/code/game/objects/items/devices/radio/encryptionkey_vr.dm
+++ b/code/game/objects/items/devices/radio/encryptionkey_vr.dm
@@ -19,10 +19,10 @@
icon_state = "rd_cypherkey"
channels = list(CHANNEL_COMMAND = 1, CHANNEL_SCIENCE = 1)
-/obj/item/device/encryptionkey/ert
+/obj/item/encryptionkey/ert
channels = list(CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_EXPLORATION = 1)
-/obj/item/device/encryptionkey/omni //Literally only for the admin intercoms
+/obj/item/encryptionkey/omni //Literally only for the admin intercoms
channels = list(CHANNEL_MERCENARY = 1, CHANNEL_RAIDER = 1, CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_EXPLORATION = 1)
/obj/item/encryptionkey/pathfinder
@@ -50,5 +50,5 @@
icon_state = "med_cypherkey"
channels = list(CHANNEL_MEDICAL = 1, CHANNEL_EXPLORATION = 1)
-/obj/item/device/encryptionkey/talon
+/obj/item/encryptionkey/talon
channels = list(CHANNEL_TALON = 1)
diff --git a/code/game/objects/items/weapons/grenades/flashbang.dm b/code/game/objects/items/weapons/grenades/flashbang.dm
index 2137a431be..083c45be34 100644
--- a/code/game/objects/items/weapons/grenades/flashbang.dm
+++ b/code/game/objects/items/weapons/grenades/flashbang.dm
@@ -98,7 +98,7 @@
return ..()
-/obj/item/weapon/grenade/flashbang/clusterbang//Created by Polymorph, fixed by Sieve
+/obj/item/grenade/flashbang/clusterbang//Created by Polymorph, fixed by Sieve
desc = "Use of this weapon may constiute a war crime in your area, consult your local " + JOB_SITE_MANAGER + "."
name = "clusterbang"
icon = 'icons/obj/grenade.dmi'
diff --git a/code/game/objects/items/weapons/id cards/cards.dm b/code/game/objects/items/weapons/id cards/cards.dm
index 080209cd4e..c8cd437220 100644
--- a/code/game/objects/items/weapons/id cards/cards.dm
+++ b/code/game/objects/items/weapons/id cards/cards.dm
@@ -269,19 +269,19 @@
return
return
-/obj/item/weapon/card/id/cargo/miner/borg
+/obj/item/card/id/cargo/miner/borg
var/mob/living/silicon/robot/R
var/last_robot_loc
name = "Robot Miner ID"
rank = JOB_SHAFT_MINER
-/obj/item/weapon/card/id/cargo/miner/borg/Initialize()
+/obj/item/card/id/cargo/miner/borg/Initialize()
. = ..()
R = loc.loc
registered_name = R.braintype
RegisterSignal(src, COMSIG_OBSERVER_MOVED, PROC_REF(check_loc))
-/obj/item/weapon/card/id/cargo/miner/borg/proc/check_loc(atom/movable/mover, atom/old_loc, atom/new_loc)
+/obj/item/card/id/cargo/miner/borg/proc/check_loc(atom/movable/mover, atom/old_loc, atom/new_loc)
if(old_loc == R || old_loc == R.module)
last_robot_loc = old_loc
if(!istype(loc, /obj/machinery) && loc != R && loc != R.module)
@@ -293,7 +293,7 @@
if(loc == R)
hud_layerise()
-/obj/item/weapon/card/id/cargo/miner/borg/Destroy()
+/obj/item/card/id/cargo/miner/borg/Destroy()
UnregisterSignal(src, COMSIG_OBSERVER_MOVED)
R = null
last_robot_loc = null
diff --git a/code/game/objects/items/weapons/id cards/id_stacks.dm b/code/game/objects/items/weapons/id cards/id_stacks.dm
index 67c17971b9..3158d93a9b 100644
--- a/code/game/objects/items/weapons/id cards/id_stacks.dm
+++ b/code/game/objects/items/weapons/id cards/id_stacks.dm
@@ -60,7 +60,7 @@
initial_sprite_stack = list("base-stamp", "top-blue", "stamp-n")
rank = JOB_COMMAND_SECRETARY
-/obj/item/weapon/card/id/silver/hop
+/obj/item/card/id/silver/hop
name = JOB_HEAD_OF_PERSONNEL + " ID"
initial_sprite_stack = list("base-stamp-silver", "top-blue", "stamp-n", "pips-gold")
rank = JOB_HEAD_OF_PERSONNEL
@@ -88,32 +88,32 @@
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n")
rank = JOB_MEDICAL_DOCTOR
-/obj/item/weapon/card/id/medical/chemist
+/obj/item/card/id/medical/chemist
name = JOB_CHEMIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-orange")
rank = JOB_CHEMIST
-/obj/item/weapon/card/id/medical/geneticist
+/obj/item/card/id/medical/geneticist
name = JOB_GENETICIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-purple")
rank = JOB_GENETICIST
-/obj/item/weapon/card/id/medical/psych
+/obj/item/card/id/medical/psych
name = JOB_ALT_PSYCHOLOGIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-brown")
rank = JOB_PSYCHIATRIST
-/obj/item/weapon/card/id/medical/virologist
+/obj/item/card/id/medical/virologist
name = JOB_ALT_VIROLOGIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-green")
rank = JOB_ALT_VIROLOGIST
-/obj/item/weapon/card/id/medical/emt
+/obj/item/card/id/medical/emt
name = JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN + "'s ID"
initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-blue")
rank = JOB_PARAMEDIC
-/obj/item/weapon/card/id/medical/head
+/obj/item/card/id/medical/head
name = JOB_CHIEF_MEDICAL_OFFICER + "'s ID"
initial_sprite_stack = list("base-stamp-silver", "top-medblu", "stamp-n", "pips-gold")
rank = JOB_CHIEF_MEDICAL_OFFICER
@@ -125,17 +125,17 @@
initial_sprite_stack = list("base-stamp", "top-red", "stamp-n")
rank = JOB_SECURITY_OFFICER
-/obj/item/weapon/card/id/security/detective
+/obj/item/card/id/security/detective
name = JOB_DETECTIVE + "'s ID"
initial_sprite_stack = list("base-stamp", "top-red", "stamp-n", "stripe-brown")
rank = JOB_DETECTIVE
-/obj/item/weapon/card/id/security/warden
+/obj/item/card/id/security/warden
name = JOB_WARDEN + "'s ID"
initial_sprite_stack = list("base-stamp", "top-red", "stamp-n", "stripe-white")
rank = JOB_WARDEN
-/obj/item/weapon/card/id/security/head
+/obj/item/card/id/security/head
name = JOB_HEAD_OF_SECURITY + "'s ID"
initial_sprite_stack = list("base-stamp-silver", "top-red", "stamp-n", "pips-gold")
rank = JOB_HEAD_OF_SECURITY
@@ -152,7 +152,7 @@
initial_sprite_stack = list("base-stamp", "top-orange", "stripe-medblu", "stamp-n")
rank = JOB_ATMOSPHERIC_TECHNICIAN
-/obj/item/weapon/card/id/engineering/head
+/obj/item/card/id/engineering/head
name = JOB_CHIEF_ENGINEER + "'s ID"
initial_sprite_stack = list("base-stamp-silver", "top-orange", "stamp-n", "pips-gold")
rank = JOB_CHIEF_ENGINEER
@@ -164,22 +164,22 @@
initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n")
rank = JOB_SCIENTIST
-/obj/item/weapon/card/id/science/roboticist
+/obj/item/card/id/science/roboticist
name = JOB_ROBOTICIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n", "stripe-brown")
rank = JOB_ROBOTICIST
-/obj/item/weapon/card/id/science/xenobiologist
+/obj/item/card/id/science/xenobiologist
name = JOB_XENOBIOLOGIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n", "stripe-orange")
rank = JOB_XENOBIOLOGIST
-/obj/item/weapon/card/id/science/xenobotanist
+/obj/item/card/id/science/xenobotanist
name = JOB_XENOBOTANIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n", "stripe-green")
rank = JOB_XENOBOTANIST
-/obj/item/weapon/card/id/science/head
+/obj/item/card/id/science/head
name = JOB_RESEARCH_DIRECTOR + "'s ID"
initial_sprite_stack = list("base-stamp-silver", "top-purple", "stamp-n", "pips-gold")
rank = JOB_RESEARCH_DIRECTOR
@@ -196,7 +196,7 @@
initial_sprite_stack = list("base-stamp", "top-brown", "stamp-n", "stripe-purple")
rank = JOB_SHAFT_MINER
-/obj/item/weapon/card/id/cargo/head
+/obj/item/card/id/cargo/head
name = JOB_QUARTERMASTER + "'s ID"
initial_sprite_stack = list("base-stamp-silver", "top-brown", "stamp-n", "pips-white")
rank = JOB_QUARTERMASTER
@@ -207,37 +207,37 @@
name = "Civilian ID"
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n")
-/obj/item/weapon/card/id/civilian/chaplain
+/obj/item/card/id/civilian/chaplain
name = JOB_CHAPLAIN + "'s ID"
initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-cross", "stripe-white")
rank = JOB_CHAPLAIN
-/obj/item/weapon/card/id/civilian/journalist
+/obj/item/card/id/civilian/journalist
name = JOB_ALT_JOURNALIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-red")
rank = JOB_ALT_JOURNALIST
-/obj/item/weapon/card/id/civilian/pilot
+/obj/item/card/id/civilian/pilot
name = JOB_PILOT + "'s ID"
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-olive")
rank = JOB_PILOT
-/obj/item/weapon/card/id/civilian/entertainer
+/obj/item/card/id/civilian/entertainer
name = JOB_ENTERTAINER + "'s ID"
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-brown")
rank = JOB_ENTERTAINER
-/obj/item/weapon/card/id/civilian/entrepreneur
+/obj/item/card/id/civilian/entrepreneur
name = JOB_ENTREPRENEUR + "'s ID"
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-gold")
rank = JOB_ENTREPRENEUR
-/obj/item/weapon/card/id/civilian/clown
+/obj/item/card/id/civilian/clown
name = JOB_CLOWN + "'s ID"
initial_sprite_stack = list("base-stamp", "top-rainbow", "stamp-n")
rank = JOB_CLOWN
-/obj/item/weapon/card/id/civilian/mime
+/obj/item/card/id/civilian/mime
name = JOB_MIME + "'s ID"
initial_sprite_stack = list("base-stamp", "top-white", "stamp-n", "stripe-black")
rank = JOB_MIME
@@ -253,22 +253,22 @@
name = "Service ID"
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n")
-/obj/item/weapon/card/id/civilian/service/botanist
+/obj/item/card/id/civilian/service/botanist
name = JOB_BOTANIST + "'s ID"
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-darkgreen")
rank = JOB_BOTANIST
-/obj/item/weapon/card/id/civilian/service/bartender
+/obj/item/card/id/civilian/service/bartender
name = JOB_BARTENDER + "'s ID"
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-black")
rank = JOB_BARTENDER
-/obj/item/weapon/card/id/civilian/service/chef
+/obj/item/card/id/civilian/service/chef
name = JOB_CHEF + "'s ID"
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-white")
rank = JOB_CHEF
-/obj/item/weapon/card/id/civilian/service/janitor
+/obj/item/card/id/civilian/service/janitor
name = JOB_JANITOR + "'s ID"
initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-purple")
rank = JOB_JANITOR
@@ -280,12 +280,12 @@
initial_sprite_stack = list("base-stamp", "top-olive", "stamp-n")
rank = JOB_EXPLORER
-/obj/item/weapon/card/id/exploration/fm
+/obj/item/card/id/exploration/fm
name = JOB_FIELD_MEDIC + "'s ID"
initial_sprite_stack = list("base-stamp", "top-olive", "stamp-n", "stripe-medblu")
rank = JOB_FIELD_MEDIC
-/obj/item/weapon/card/id/exploration/head
+/obj/item/card/id/exploration/head
name = JOB_PATHFINDER + "'s ID"
initial_sprite_stack = list("base-stamp-silver", "top-olive", "stamp-n", "pips-white")
rank = JOB_PATHFINDER
@@ -311,7 +311,7 @@
initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-red", "stripe-red")
rank = JOB_TALON_GUARD
-/obj/item/weapon/card/id/talon/pilot
+/obj/item/card/id/talon/pilot
name = JOB_TALON_PILOT + " ID"
initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-purple", "stripe-purple")
rank = JOB_TALON_PILOT
@@ -321,7 +321,7 @@
initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-brown", "stripe-brown")
rank = JOB_TALON_MINER
-/obj/item/weapon/card/id/talon/captain
+/obj/item/card/id/talon/captain
name = JOB_TALON_CAPTAIN + " ID"
initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-gold", "stripe-gold")
rank = JOB_TALON_CAPTAIN
diff --git a/code/game/objects/items/weapons/id cards/station_ids.dm b/code/game/objects/items/weapons/id cards/station_ids.dm
index 68d15ba1fb..83b5bca476 100644
--- a/code/game/objects/items/weapons/id cards/station_ids.dm
+++ b/code/game/objects/items/weapons/id cards/station_ids.dm
@@ -141,11 +141,11 @@
item_state = "gold_id"
preserve_item = 1
-/obj/item/weapon/card/id/gold/captain
+/obj/item/card/id/gold/captain
assignment = JOB_SITE_MANAGER
rank = JOB_SITE_MANAGER
-/obj/item/weapon/card/id/gold/captain/spare
+/obj/item/card/id/gold/captain/spare
name = "\improper " + JOB_SITE_MANAGER + "'s spare ID"
desc = "The emergency spare ID for the station's very own Big Cheese."
icon_state = "gold-id-alternate"
@@ -202,7 +202,7 @@
. = ..()
access |= get_all_station_access()
-/obj/item/weapon/card/id/centcom/ERT
+/obj/item/card/id/centcom/ERT
name = "\improper " + JOB_EMERGENCY_RESPONSE_TEAM + "ID"
assignment = JOB_EMERGENCY_RESPONSE_TEAM
icon_state = "ert-id"
@@ -237,7 +237,7 @@
secondary_color = rgb(223,127,95)
rank = JOB_SECURITY_OFFICER
-/obj/item/weapon/card/id/security/warden
+/obj/item/card/id/security/warden
assignment = JOB_WARDEN
rank = JOB_WARDEN
@@ -256,7 +256,7 @@
primary_color = rgb(189,94,0)
secondary_color = rgb(223,159,95)
-/obj/item/weapon/card/id/engineering/atmos
+/obj/item/card/id/engineering/atmos
assignment = JOB_ATMOSPHERIC_TECHNICIAN
rank = JOB_ATMOSPHERIC_TECHNICIAN
@@ -298,7 +298,7 @@
assignment = JOB_QUARTERMASTER
rank = JOB_QUARTERMASTER
-/obj/item/weapon/card/id/assistant
+/obj/item/card/id/assistant
assignment = JOB_ALT_VISITOR //VOREStation Edit - Visitor not Assistant
rank = JOB_ALT_VISITOR //VOREStation Edit - Visitor not Assistant
@@ -355,9 +355,9 @@
configured = 1
to_chat(user, "Card settings set.")
-/obj/item/weapon/card/id/event/attackby(obj/item/I as obj, var/mob/user)
- if(istype(I, /obj/item/weapon/card/id) && !accessset)
- var/obj/item/weapon/card/id/O = I
+/obj/item/card/id/event/attackby(obj/item/I as obj, var/mob/user)
+ if(istype(I, /obj/item/card/id) && !accessset)
+ var/obj/item/card/id/O = I
access |= O.GetAccess()
desc = I.desc
rank = O.rank
@@ -408,7 +408,7 @@
assignment = JOB_PILOT
rank = JOB_PILOT
-/obj/item/weapon/card/id/event/accessset/itg/crew/service
+/obj/item/card/id/event/accessset/itg/crew/service
name = "\improper ITG " + JOB_ALT_COOK + "'s ID"
desc = "An ID card belonging to the " + JOB_ALT_COOK + " of an ITG vessel. The " + JOB_ALT_COOK + "'s responsibility is primarily to provide sustinence to the crew and passengers. The " + JOB_ALT_COOK + " answers to the Passenger Liason. In the absence of a Passenger Liason, the " + JOB_ALT_COOK + " is also responsible for tending to passenger related care and duties."
assignment = JOB_ALT_COOK
@@ -436,7 +436,7 @@
rank = "Medic"
icon_state = "itg_white"
-/obj/item/weapon/card/id/event/accessset/itg/crew/engineer
+/obj/item/card/id/event/accessset/itg/crew/engineer
name = "\improper ITG " + JOB_ENGINEER + "'s ID"
desc = "An ID card belonging to the " + JOB_ENGINEER + " of an ITG vessel. The " + JOB_ENGINEER + "'s responsibility is primarily to maintain the ship. They may also be tasked to assist with cargo movement duties."
assignment = JOB_ENGINEER
@@ -450,7 +450,7 @@
rank = "Passenger Liason"
icon_state = "itg_blue"
-/obj/item/weapon/card/id/event/accessset/itg/crew/captain
+/obj/item/card/id/event/accessset/itg/crew/captain
name = "\improper ITG " + JOB_ALT_CAPTAIN + "'s ID"
desc = "An ID card belonging to the Captain of an ITG vessel. The Captain's responsibility is primarily to manage crew to ensure smooth ship operations. Captains often also often pilot the vessel when no dedicated pilot is assigned."
assignment = JOB_ALT_CAPTAIN
@@ -576,9 +576,9 @@
name = user.name + "'s ITG ID card" + " ([assignment])"
-/obj/item/weapon/card/id/event/polymorphic/itg/attackby(obj/item/I as obj, var/mob/user)
- if(istype(I, /obj/item/weapon/card/id) && !accessset)
- var/obj/item/weapon/card/id/O = I
+/obj/item/card/id/event/polymorphic/itg/attackby(obj/item/I as obj, var/mob/user)
+ if(istype(I, /obj/item/card/id) && !accessset)
+ var/obj/item/card/id/O = I
var/list/itgdont = list(JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_COMMAND_SECRETARY, JOB_HEAD_OF_SECURITY, JOB_CHIEF_ENGINEER, JOB_CHIEF_MEDICAL_OFFICER, JOB_RESEARCH_DIRECTOR, JOB_CLOWN, JOB_MIME, JOB_TALON_CAPTAIN) //If you're in as one of these you probably aren't representing ITG
if(O.rank in itgdont)
to_chat(user, "ITG Cards do not seem to be able to accept the access codes for your ID.")
diff --git a/code/game/objects/items/weapons/id cards/syndicate_ids.dm b/code/game/objects/items/weapons/id cards/syndicate_ids.dm
index b70f18e1c4..beaec3504e 100644
--- a/code/game/objects/items/weapons/id cards/syndicate_ids.dm
+++ b/code/game/objects/items/weapons/id cards/syndicate_ids.dm
@@ -27,8 +27,8 @@
/obj/item/card/id/syndicate/afterattack(var/obj/item/O as obj, mob/user as mob, proximity)
if(!proximity) return
- if(istype(O, /obj/item/weapon/card/id))
- var/obj/item/weapon/card/id/I = O
+ if(istype(O, /obj/item/card/id))
+ var/obj/item/card/id/I = O
src.access |= I.GetAccess()
if(player_is_antag(user.mind) || registered_user == user)
to_chat(user, "The microscanner activates as you pass it over the ID, copying its access.")
diff --git a/code/game/objects/items/weapons/manuals.dm b/code/game/objects/items/weapons/manuals.dm
index 1be3edcdf8..1e2f22391a 100644
--- a/code/game/objects/items/weapons/manuals.dm
+++ b/code/game/objects/items/weapons/manuals.dm
@@ -647,7 +647,7 @@