diff --git a/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm b/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm
index 0f96990b598..91cf677ce71 100644
--- a/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm
+++ b/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm
@@ -532,11 +532,11 @@
/turf/open/floor/plating,
/area/ruin/planetengi)
"cI" = (
-/obj/item/modular_computer/tablet/pda/clear,
+/obj/item/modular_computer/pda/clear,
/turf/open/floor/iron,
/area/ruin/planetengi)
"cJ" = (
-/obj/item/modular_computer/tablet/pda/engineering,
+/obj/item/modular_computer/pda/engineering,
/turf/open/floor/iron,
/area/ruin/planetengi)
"cL" = (
diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm
index 0aeb318fc6a..b3274359a26 100644
--- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm
+++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm
@@ -120,7 +120,7 @@
dir = 8;
pixel_x = -24
},
-/obj/item/modular_computer/tablet/pda/chameleon/broken{
+/obj/item/modular_computer/pda/chameleon/broken{
pixel_x = 5;
pixel_y = 4
},
diff --git a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm b/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm
index d613c0d6438..ab5c0c6932d 100644
--- a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm
+++ b/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm
@@ -1128,7 +1128,7 @@
/area/ruin/space/has_grav/derelictoutpost/cargostorage)
"eC" = (
/obj/structure/closet/crate,
-/obj/item/modular_computer/tablet/pda/clear,
+/obj/item/modular_computer/pda/clear,
/obj/effect/turf_decal/delivery,
/turf/open/floor/iron,
/area/ruin/space/has_grav/derelictoutpost/cargostorage)
diff --git a/_maps/RandomRuins/SpaceRuins/forgottenship.dmm b/_maps/RandomRuins/SpaceRuins/forgottenship.dmm
index ecd265915a5..c86a1a53cf1 100644
--- a/_maps/RandomRuins/SpaceRuins/forgottenship.dmm
+++ b/_maps/RandomRuins/SpaceRuins/forgottenship.dmm
@@ -435,7 +435,7 @@
},
/obj/item/toy/nuke,
/obj/item/clothing/under/chameleon,
-/obj/item/modular_computer/tablet/pda/chameleon,
+/obj/item/modular_computer/pda/chameleon,
/obj/item/clothing/mask/chameleon,
/obj/item/card/id/advanced/chameleon,
/turf/open/floor/mineral/plastitanium,
diff --git a/_maps/RandomZLevels/SnowCabin.dmm b/_maps/RandomZLevels/SnowCabin.dmm
index 30c7d8e212b..91720122a5d 100644
--- a/_maps/RandomZLevels/SnowCabin.dmm
+++ b/_maps/RandomZLevels/SnowCabin.dmm
@@ -3851,7 +3851,7 @@
/area/awaymission/cabin/caves)
"vD" = (
/obj/effect/turf_decal/weather/snow,
-/obj/item/modular_computer/tablet/pda/syndicate{
+/obj/item/modular_computer/pda/syndicate{
desc = "A portable microcomputer by Thinktronic Systems, LTD.";
inserted_disk = /obj/item/computer_disk/virus/clown;
name = "soviet tablet"
@@ -3998,7 +3998,7 @@
/area/awaymission/cabin/caves/mountain)
"yR" = (
/obj/structure/table/reinforced,
-/obj/item/modular_computer/tablet/pda/syndicate{
+/obj/item/modular_computer/pda/syndicate{
desc = "A portable microcomputer by Thinktronic Systems, LTD.";
inserted_disk = /obj/item/computer_disk/virus/mime;
name = "soviet tablet"
diff --git a/code/__DEFINES/access.dm b/code/__DEFINES/access.dm
index 6781b0fdac0..581a3e45a9f 100644
--- a/code/__DEFINES/access.dm
+++ b/code/__DEFINES/access.dm
@@ -521,36 +521,36 @@
* Used to see pda_region in [/datum/controller/subsystem/id_access/proc/setup_tgui_lists]
*/
#define PDA_PAINTING_REGIONS list( \
- /obj/item/modular_computer/tablet/pda = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/clown = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/mime = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/medical = list(REGION_MEDBAY), \
- /obj/item/modular_computer/tablet/pda/viro = list(REGION_MEDBAY), \
- /obj/item/modular_computer/tablet/pda/engineering = list(REGION_ENGINEERING), \
- /obj/item/modular_computer/tablet/pda/security = list(REGION_SECURITY), \
- /obj/item/modular_computer/tablet/pda/detective = list(REGION_SECURITY), \
- /obj/item/modular_computer/tablet/pda/warden = list(REGION_SECURITY), \
- /obj/item/modular_computer/tablet/pda/janitor = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/science = list(REGION_RESEARCH), \
- /obj/item/modular_computer/tablet/pda/heads/quartermaster = list(REGION_COMMAND), \
- /obj/item/modular_computer/tablet/pda/heads/hop = list(REGION_COMMAND), \
- /obj/item/modular_computer/tablet/pda/heads/hos = list(REGION_COMMAND), \
- /obj/item/modular_computer/tablet/pda/heads/cmo = list(REGION_COMMAND), \
- /obj/item/modular_computer/tablet/pda/heads/ce = list(REGION_COMMAND), \
- /obj/item/modular_computer/tablet/pda/heads/rd = list(REGION_COMMAND), \
- /obj/item/modular_computer/tablet/pda/heads/captain = list(REGION_COMMAND), \
- /obj/item/modular_computer/tablet/pda/cargo = list(REGION_SUPPLY), \
- /obj/item/modular_computer/tablet/pda/shaftminer = list(REGION_SUPPLY), \
- /obj/item/modular_computer/tablet/pda/chaplain = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/lawyer = list(REGION_GENERAL, REGION_SECURITY), \
- /obj/item/modular_computer/tablet/pda/botanist = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/roboticist = list(REGION_RESEARCH), \
- /obj/item/modular_computer/tablet/pda/curator = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/cook = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/bar = list(REGION_GENERAL), \
- /obj/item/modular_computer/tablet/pda/atmos = list(REGION_ENGINEERING), \
- /obj/item/modular_computer/tablet/pda/chemist = list(REGION_MEDBAY), \
- /obj/item/modular_computer/tablet/pda/geneticist = list(REGION_RESEARCH), \
+ /obj/item/modular_computer/pda = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/clown = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/mime = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/medical = list(REGION_MEDBAY), \
+ /obj/item/modular_computer/pda/viro = list(REGION_MEDBAY), \
+ /obj/item/modular_computer/pda/engineering = list(REGION_ENGINEERING), \
+ /obj/item/modular_computer/pda/security = list(REGION_SECURITY), \
+ /obj/item/modular_computer/pda/detective = list(REGION_SECURITY), \
+ /obj/item/modular_computer/pda/warden = list(REGION_SECURITY), \
+ /obj/item/modular_computer/pda/janitor = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/science = list(REGION_RESEARCH), \
+ /obj/item/modular_computer/pda/heads/quartermaster = list(REGION_COMMAND), \
+ /obj/item/modular_computer/pda/heads/hop = list(REGION_COMMAND), \
+ /obj/item/modular_computer/pda/heads/hos = list(REGION_COMMAND), \
+ /obj/item/modular_computer/pda/heads/cmo = list(REGION_COMMAND), \
+ /obj/item/modular_computer/pda/heads/ce = list(REGION_COMMAND), \
+ /obj/item/modular_computer/pda/heads/rd = list(REGION_COMMAND), \
+ /obj/item/modular_computer/pda/heads/captain = list(REGION_COMMAND), \
+ /obj/item/modular_computer/pda/cargo = list(REGION_SUPPLY), \
+ /obj/item/modular_computer/pda/shaftminer = list(REGION_SUPPLY), \
+ /obj/item/modular_computer/pda/chaplain = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/lawyer = list(REGION_GENERAL, REGION_SECURITY), \
+ /obj/item/modular_computer/pda/botanist = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/roboticist = list(REGION_RESEARCH), \
+ /obj/item/modular_computer/pda/curator = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/cook = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/bar = list(REGION_GENERAL), \
+ /obj/item/modular_computer/pda/atmos = list(REGION_ENGINEERING), \
+ /obj/item/modular_computer/pda/chemist = list(REGION_MEDBAY), \
+ /obj/item/modular_computer/pda/geneticist = list(REGION_RESEARCH), \
)
/// All regions that make up the station area. Helper define to quickly designate a region as part of the station or not. Access via SSid_access.station_regions.
diff --git a/code/_globalvars/phobias.dm b/code/_globalvars/phobias.dm
index 7547a8a17c5..f4de4d862fd 100644
--- a/code/_globalvars/phobias.dm
+++ b/code/_globalvars/phobias.dm
@@ -140,7 +140,7 @@ GLOBAL_LIST_INIT(phobia_objs, list(
/obj/item/gun/magic/staff/honk,
/obj/item/instrument/bikehorn,
/obj/item/megaphone/clown,
- /obj/item/modular_computer/tablet/pda/clown,
+ /obj/item/modular_computer/pda/clown,
/obj/item/pneumatic_cannon/pie,
/obj/item/stack/ore/bananium,
/obj/item/stack/tile/mineral/bananium,
diff --git a/code/controllers/subsystem/id_access.dm b/code/controllers/subsystem/id_access.dm
index bf2e35c56c2..958ec2324fc 100644
--- a/code/controllers/subsystem/id_access.dm
+++ b/code/controllers/subsystem/id_access.dm
@@ -217,7 +217,7 @@ SUBSYSTEM_DEF(id_access)
var/datum/id_trim/trim = trim_singletons_by_path[trim_path]
centcom_job_templates[trim_path] = trim.assignment
- var/list/all_pda_paths = typesof(/obj/item/modular_computer/tablet/pda)
+ var/list/all_pda_paths = typesof(/obj/item/modular_computer/pda)
var/list/pda_regions = PDA_PAINTING_REGIONS
for(var/pda_path in all_pda_paths)
if(!(pda_path in pda_regions))
@@ -231,7 +231,7 @@ SUBSYSTEM_DEF(id_access)
if(!(whitelisted_region in manager_regions))
continue
var/list/manager_pdas = manager_info["pdas"]
- var/obj/item/modular_computer/tablet/pda/fake_pda = pda_path
+ var/obj/item/modular_computer/pda/fake_pda = pda_path
manager_pdas[pda_path] = initial(fake_pda.name)
station_pda_templates[pda_path] = initial(fake_pda.name)
diff --git a/code/datums/components/uplink.dm b/code/datums/components/uplink.dm
index 3b2094cae32..393074eb56e 100644
--- a/code/datums/components/uplink.dm
+++ b/code/datums/components/uplink.dm
@@ -58,7 +58,7 @@
RegisterSignal(parent, COMSIG_IMPLANT_IMPLANTING, PROC_REF(implanting))
RegisterSignal(parent, COMSIG_IMPLANT_OTHER, PROC_REF(old_implant))
RegisterSignal(parent, COMSIG_IMPLANT_EXISTING_UPLINK, PROC_REF(new_implant))
- else if(istype(parent, /obj/item/modular_computer/tablet))
+ else if(istype(parent, /obj/item/modular_computer/pda))
RegisterSignal(parent, COMSIG_TABLET_CHANGE_ID, PROC_REF(new_ringtone))
RegisterSignal(parent, COMSIG_TABLET_CHECK_DETONATE, PROC_REF(check_detonate))
else if(istype(parent, /obj/item/radio))
@@ -397,7 +397,7 @@
/datum/component/uplink/proc/setup_unlock_code()
unlock_code = generate_code()
var/obj/item/P = parent
- if(istype(parent,/obj/item/modular_computer/tablet))
+ if(istype(parent,/obj/item/modular_computer/pda))
unlock_note = "Uplink Passcode: [unlock_code] ([P.name])."
else if(istype(parent,/obj/item/radio))
unlock_note = "Radio Passcode: [unlock_code] ([P.name], [RADIO_TOKEN_UPLINK] channel)."
@@ -405,7 +405,7 @@
unlock_note = "Uplink Degrees: [english_list(unlock_code)] ([P.name])."
/datum/component/uplink/proc/generate_code()
- if(istype(parent,/obj/item/modular_computer/tablet))
+ if(istype(parent,/obj/item/modular_computer/pda))
return "[rand(100,999)] [pick(GLOB.phonetic_alphabet)]"
else if(istype(parent,/obj/item/radio))
return pick(GLOB.phonetic_alphabet)
diff --git a/code/datums/mind/antag.dm b/code/datums/mind/antag.dm
index 1e2b87f2a1d..371666d768a 100644
--- a/code/datums/mind/antag.dm
+++ b/code/datums/mind/antag.dm
@@ -113,7 +113,7 @@
return
var/list/all_contents = traitor_mob.get_all_contents()
- var/obj/item/modular_computer/tablet/pda/PDA = locate() in all_contents
+ var/obj/item/modular_computer/pda/PDA = locate() in all_contents
var/obj/item/radio/R = locate() in all_contents
var/obj/item/pen/P
diff --git a/code/game/machinery/PDApainter.dm b/code/game/machinery/PDApainter.dm
index 9c780b5b32c..6a9a64925bb 100644
--- a/code/game/machinery/PDApainter.dm
+++ b/code/game/machinery/PDApainter.dm
@@ -10,14 +10,14 @@
/// Current ID card inserted into the machine.
var/obj/item/card/id/stored_id_card = null
/// Current PDA inserted into the machine.
- var/obj/item/modular_computer/tablet/pda/stored_pda = null
+ var/obj/item/modular_computer/pda/stored_pda = null
/// A blacklist of PDA types that we should not be able to paint.
var/static/list/pda_type_blacklist = list(
- /obj/item/modular_computer/tablet/pda/heads,
- /obj/item/modular_computer/tablet/pda/clear,
- /obj/item/modular_computer/tablet/pda/syndicate,
- /obj/item/modular_computer/tablet/pda/chameleon,
- /obj/item/modular_computer/tablet/pda/chameleon/broken)
+ /obj/item/modular_computer/pda/heads,
+ /obj/item/modular_computer/pda/clear,
+ /obj/item/modular_computer/pda/syndicate,
+ /obj/item/modular_computer/pda/chameleon,
+ /obj/item/modular_computer/pda/chameleon/broken)
/// A list of the PDA types that this machine can currently paint.
var/list/pda_types = list()
/// A list of the card trims that this machine can currently imprint onto a card.
@@ -130,7 +130,7 @@
to_chat(user, span_warning("The machine rejects your [O]. This ID card does not appear to be compatible with the PDA Painter."))
return
- if(istype(O, /obj/item/modular_computer/tablet/pda))
+ if(istype(O, /obj/item/modular_computer/pda))
insert_pda(O, user)
return
@@ -171,7 +171,7 @@
* * new_pda - The PDA to insert.
* * user - The user to try and eject the PDA into the hands of.
*/
-/obj/machinery/pdapainter/proc/insert_pda(obj/item/modular_computer/tablet/pda/new_pda, mob/living/user)
+/obj/machinery/pdapainter/proc/insert_pda(obj/item/modular_computer/pda/new_pda, mob/living/user)
if(!istype(new_pda))
return FALSE
@@ -290,7 +290,7 @@
return TRUE
var/obj/item/held_item = usr.get_active_held_item()
- if(istype(held_item, /obj/item/modular_computer/tablet/pda))
+ if(istype(held_item, /obj/item/modular_computer/pda))
// If we successfully inserted, we've ejected the old item. Return early.
if(insert_pda(held_item, usr))
return TRUE
@@ -320,7 +320,7 @@
return TRUE
var/selection = params["selection"]
- var/obj/item/modular_computer/tablet/pda/pda_path = /obj/item/modular_computer/tablet/pda
+ var/obj/item/modular_computer/pda/pda_path = /obj/item/modular_computer/pda
for(var/path in pda_types)
if(pda_types[path] == selection)
diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm
index 4cf2488f112..1e82ebf66f5 100644
--- a/code/game/machinery/camera/camera.dm
+++ b/code/game/machinery/camera/camera.dm
@@ -330,11 +330,11 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0)
return
// OTHER
- if(istype(attacking_item, /obj/item/modular_computer/tablet))
+ if(istype(attacking_item, /obj/item/modular_computer/pda))
var/itemname = ""
var/info = ""
- var/obj/item/modular_computer/tablet/computer = attacking_item
+ var/obj/item/modular_computer/computer = attacking_item
for(var/datum/computer_file/program/notepad/notepad_app in computer.stored_files)
info = notepad_app.written_note
break
@@ -346,7 +346,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0)
user.log_talk(itemname, LOG_GAME, log_globally=TRUE, tag="Pressed to camera")
user.changeNext_move(CLICK_CD_MELEE)
- for(var/mob/potential_viewer in GLOB.player_list)
+ for(var/mob/potential_viewer as anything in GLOB.player_list)
if(isAI(potential_viewer))
var/mob/living/silicon/ai/ai = potential_viewer
if(ai.control_disabled || (ai.stat == DEAD))
diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm
index 0270058dc03..1fb8a9cbf6d 100644
--- a/code/game/machinery/computer/security.dm
+++ b/code/game/machinery/computer/security.dm
@@ -837,7 +837,7 @@ What a mess.*/
if (!fine || QDELETED(usr) || QDELETED(src) || !canUseSecurityRecordsConsole(usr, t1, null, a2))
return
var/datum/data/crime/crime = GLOB.data_core.createCrimeEntry(t1, "", authenticated, station_time_timestamp(), fine)
- for (var/obj/item/modular_computer/tablet in GLOB.TabletMessengers)
+ for (var/obj/item/modular_computer/tablet as anything in GLOB.TabletMessengers)
if(tablet.saved_identification == active1.fields["name"])
var/message = "You have been fined [fine] credits for '[t1]'. Fines may be paid at security."
var/datum/signal/subspace/messaging/tablet_msg/signal = new(src, list(
diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm
index f3cf22d9f08..6096c231c16 100644
--- a/code/game/machinery/navbeacon.dm
+++ b/code/game/machinery/navbeacon.dm
@@ -96,18 +96,19 @@
if(T.underfloor_accessibility < UNDERFLOOR_INTERACTABLE)
return // prevent intraction when T-scanner revealed
- else if (isidcard(I) || istype(I, /obj/item/modular_computer/tablet))
+ if (isidcard(I) || istype(I, /obj/item/modular_computer/pda))
if(open)
- if (src.allowed(user))
- src.locked = !src.locked
- to_chat(user, span_notice("Controls are now [src.locked ? "locked" : "unlocked"]."))
+ if (allowed(user))
+ locked = !locked
+ to_chat(user, span_notice("Controls are now [locked ? "locked" : "unlocked"]."))
else
to_chat(user, span_danger("Access denied."))
updateDialog()
else
to_chat(user, span_warning("You must open the cover first!"))
- else
- return ..()
+ return
+
+ return ..()
/obj/machinery/navbeacon/attack_ai(mob/user)
interact(user, 1)
diff --git a/code/game/machinery/telecomms/computers/message.dm b/code/game/machinery/telecomms/computers/message.dm
index 71b7e371adb..e69b6671162 100644
--- a/code/game/machinery/telecomms/computers/message.dm
+++ b/code/game/machinery/telecomms/computers/message.dm
@@ -393,7 +393,7 @@
if("Recepient")
// Get out list of viable tablets
var/list/viewable_tablets = list()
- for (var/obj/item/modular_computer/tablet in GLOB.TabletMessengers)
+ for (var/obj/item/modular_computer/tablet as anything in GLOB.TabletMessengers)
var/datum/computer_file/program/messenger/message_app = locate() in tablet.stored_files
if(!message_app || message_app.invisible)
continue
diff --git a/code/game/objects/effects/spawners/random/contraband.dm b/code/game/objects/effects/spawners/random/contraband.dm
index c0bfe999c1d..e55ed426269 100644
--- a/code/game/objects/effects/spawners/random/contraband.dm
+++ b/code/game/objects/effects/spawners/random/contraband.dm
@@ -55,7 +55,7 @@
/obj/item/restraints/handcuffs,
/obj/item/paper/fluff/jobs/prisoner/letter,
/obj/item/storage/wallet/random,
- /obj/item/modular_computer/tablet/pda,
+ /obj/item/modular_computer/pda,
/obj/item/radio/off,
)
diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm
index acc7fe4b8a6..21ea2736f01 100644
--- a/code/game/objects/items/cards_ids.dm
+++ b/code/game/objects/items/cards_ids.dm
@@ -959,9 +959,9 @@
is_intern = FALSE
update_label()
-/obj/item/card/id/advanced/proc/on_holding_card_slot_moved(obj/item/modular_computer/tablet/source, atom/old_loc, dir, forced)
+/obj/item/card/id/advanced/proc/on_holding_card_slot_moved(obj/item/modular_computer/pda/source, atom/old_loc, dir, forced)
SIGNAL_HANDLER
- if(istype(old_loc, /obj/item/modular_computer/tablet))
+ if(istype(old_loc, /obj/item/modular_computer/pda))
UnregisterSignal(old_loc, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED))
if(source)
@@ -975,7 +975,7 @@
if(istype(old_loc, /obj/item/storage/wallet))
UnregisterSignal(old_loc, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED))
- if(istype(old_loc, /obj/item/modular_computer/tablet))
+ if(istype(old_loc, /obj/item/modular_computer/pda))
UnregisterSignal(old_loc, COMSIG_MOVABLE_MOVED)
UnregisterSignal(old_loc, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED))
@@ -984,7 +984,7 @@
RegisterSignal(loc, COMSIG_ITEM_EQUIPPED, PROC_REF(update_intern_status))
RegisterSignal(loc, COMSIG_ITEM_DROPPED, PROC_REF(remove_intern_status))
- if(istype(loc, /obj/item/modular_computer/tablet))
+ if(istype(loc, /obj/item/modular_computer/pda))
RegisterSignal(loc, COMSIG_MOVABLE_MOVED, PROC_REF(on_holding_card_slot_moved))
RegisterSignal(loc, COMSIG_ITEM_EQUIPPED, PROC_REF(update_intern_status))
RegisterSignal(loc, COMSIG_ITEM_DROPPED, PROC_REF(remove_intern_status))
diff --git a/code/game/objects/items/storage/backpack.dm b/code/game/objects/items/storage/backpack.dm
index af940170062..b39edcb7a2d 100644
--- a/code/game/objects/items/storage/backpack.dm
+++ b/code/game/objects/items/storage/backpack.dm
@@ -663,7 +663,7 @@
atom_storage.silent = TRUE
/obj/item/storage/backpack/duffelbag/clown/syndie/PopulateContents()
- new /obj/item/modular_computer/tablet/pda/clown(src)
+ new /obj/item/modular_computer/pda/clown(src)
new /obj/item/clothing/under/rank/civilian/clown(src)
new /obj/item/clothing/shoes/clown_shoes(src)
new /obj/item/clothing/mask/gas/clown_hat(src)
diff --git a/code/game/objects/items/storage/boxes/engineering_boxes.dm b/code/game/objects/items/storage/boxes/engineering_boxes.dm
index 6d6261b5e0d..4bf7953d291 100644
--- a/code/game/objects/items/storage/boxes/engineering_boxes.dm
+++ b/code/game/objects/items/storage/boxes/engineering_boxes.dm
@@ -58,7 +58,7 @@
/obj/item/flashlight/emp/debug=1,
/obj/item/geiger_counter=1,
/obj/item/healthanalyzer/advanced=1,
- /obj/item/modular_computer/tablet/pda/heads/captain=1,
+ /obj/item/modular_computer/pda/heads/captain=1,
/obj/item/pipe_dispenser=1,
/obj/item/stack/spacecash/c1000=50,
/obj/item/storage/box/beakers/bluespace=1,
diff --git a/code/game/objects/items/storage/boxes/service_boxes.dm b/code/game/objects/items/storage/boxes/service_boxes.dm
index f93e699d174..34e8097752f 100644
--- a/code/game/objects/items/storage/boxes/service_boxes.dm
+++ b/code/game/objects/items/storage/boxes/service_boxes.dm
@@ -26,7 +26,7 @@
/obj/item/storage/box/pdas/PopulateContents()
for(var/i in 1 to 4)
- new /obj/item/modular_computer/tablet/pda(src)
+ new /obj/item/modular_computer/pda(src)
/obj/item/storage/box/ids
name = "box of spare IDs"
diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm
index 3942a8ef791..c9345ef060c 100644
--- a/code/game/objects/items/storage/uplink_kits.dm
+++ b/code/game/objects/items/storage/uplink_kits.dm
@@ -475,7 +475,7 @@
new /obj/item/storage/belt/chameleon(src)
new /obj/item/radio/headset/chameleon(src)
new /obj/item/stamp/chameleon(src)
- new /obj/item/modular_computer/tablet/pda/chameleon(src)
+ new /obj/item/modular_computer/pda/chameleon(src)
new /obj/item/gun/energy/laser/chameleon(src)
//5*(2*4) = 5*8 = 45, 45 damage if you hit one person with all 5 stars.
@@ -516,7 +516,7 @@
new /obj/item/radio/headset/headset_cent/empty(src)
new /obj/item/clothing/glasses/sunglasses(src)
new /obj/item/storage/backpack/satchel(src)
- new /obj/item/modular_computer/tablet/pda/heads(src)
+ new /obj/item/modular_computer/pda/heads(src)
new /obj/item/clipboard(src)
/obj/item/storage/box/syndie_kit/chameleon/broken/PopulateContents()
@@ -532,7 +532,7 @@
new /obj/item/storage/belt/chameleon/broken(src)
new /obj/item/radio/headset/chameleon/broken(src)
new /obj/item/stamp/chameleon/broken(src)
- new /obj/item/modular_computer/tablet/pda/chameleon/broken(src)
+ new /obj/item/modular_computer/pda/chameleon/broken(src)
// No chameleon laser, they can't randomise for //REASONS//
/obj/item/storage/box/syndie_kit/bee_grenades
diff --git a/code/game/objects/structures/crates_lockers/closets/syndicate.dm b/code/game/objects/structures/crates_lockers/closets/syndicate.dm
index 60d9fa87da7..81c8a12e548 100644
--- a/code/game/objects/structures/crates_lockers/closets/syndicate.dm
+++ b/code/game/objects/structures/crates_lockers/closets/syndicate.dm
@@ -27,7 +27,7 @@
new /obj/item/storage/box/flashbangs(src)
new /obj/item/storage/box/teargas(src)
new /obj/item/storage/backpack/duffelbag/syndie/med(src)
- new /obj/item/modular_computer/tablet/pda/syndicate(src)
+ new /obj/item/modular_computer/pda/syndicate(src)
/obj/structure/closet/syndicate/resources
desc = "An old, dusty locker."
diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm
index 86c0bbfcf3f..fc8621d715e 100644
--- a/code/modules/admin/verbs/debug.dm
+++ b/code/modules/admin/verbs/debug.dm
@@ -167,8 +167,8 @@
id.update_icon()
if(worn)
- if(istype(worn, /obj/item/modular_computer/tablet/pda))
- var/obj/item/modular_computer/tablet/pda/PDA = worn
+ if(istype(worn, /obj/item/modular_computer/pda))
+ var/obj/item/modular_computer/pda/PDA = worn
PDA.InsertID(id, H)
else if(istype(worn, /obj/item/storage/wallet))
diff --git a/code/modules/antagonists/nukeop/nukeop.dm b/code/modules/antagonists/nukeop/nukeop.dm
index f7bd7e5cba9..2a62e002d41 100644
--- a/code/modules/antagonists/nukeop/nukeop.dm
+++ b/code/modules/antagonists/nukeop/nukeop.dm
@@ -208,7 +208,7 @@
back = /obj/item/mod/control/pre_equipped/empty/elite
uniform = /obj/item/clothing/under/syndicate
- l_hand = /obj/item/modular_computer/tablet/nukeops
+ l_hand = /obj/item/modular_computer/pda/nukeops
r_hand = /obj/item/shield/energy
/datum/outfit/nuclear_operative_elite/post_equip(mob/living/carbon/human/H, visualsOnly)
diff --git a/code/modules/antagonists/nukeop/outfits.dm b/code/modules/antagonists/nukeop/outfits.dm
index f6f74b276f6..753eb1ed46e 100644
--- a/code/modules/antagonists/nukeop/outfits.dm
+++ b/code/modules/antagonists/nukeop/outfits.dm
@@ -6,7 +6,7 @@
gloves = /obj/item/clothing/gloves/combat
back = /obj/item/storage/backpack/fireproof
ears = /obj/item/radio/headset/syndicate/alt
- l_pocket = /obj/item/modular_computer/tablet/nukeops
+ l_pocket = /obj/item/modular_computer/pda/nukeops
r_pocket = /obj/item/pen/edagger
id = /obj/item/card/id/advanced/chameleon
belt = /obj/item/gun/ballistic/automatic/pistol/clandestine
diff --git a/code/modules/cargo/bounties/science.dm b/code/modules/cargo/bounties/science.dm
index 05c3247cb20..aab8429b394 100644
--- a/code/modules/cargo/bounties/science.dm
+++ b/code/modules/cargo/bounties/science.dm
@@ -55,10 +55,10 @@
//******Modular Computer Bounties******
/datum/bounty/item/science/ntnet
name = "Modular Tablets"
- description = "Turns out that NTNet wasn't actually a fad afterall, who knew. Fully construct some tablets and send them powered on."
+ description = "Turns out that NTNet wasn't actually a fad afterall, who knew. Send some fully functional PDAs to help get us up to speed on the latest technology."
reward = CARGO_CRATE_VALUE * 6
required_count = 4
- wanted_types = list(/obj/item/modular_computer/tablet = TRUE)
+ wanted_types = list(/obj/item/modular_computer/pda = TRUE)
var/require_powered = TRUE
/datum/bounty/item/science/ntnet/applies_to(obj/O)
diff --git a/code/modules/cargo/markets/market_items/misc.dm b/code/modules/cargo/markets/market_items/misc.dm
index 155c030af8a..d5ee60f49e4 100644
--- a/code/modules/cargo/markets/market_items/misc.dm
+++ b/code/modules/cargo/markets/market_items/misc.dm
@@ -4,7 +4,7 @@
/datum/market_item/misc/Clear_PDA
name = "Clear PDA"
desc = "Show off your style with this limited edition clear PDA!."
- item = /obj/item/modular_computer/tablet/pda/clear
+ item = /obj/item/modular_computer/pda/clear
price_min = CARGO_CRATE_VALUE * 1.25
price_max = CARGO_CRATE_VALUE *3
diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm
index b083acd4f43..efac3a3bb39 100644
--- a/code/modules/clothing/chameleon.dm
+++ b/code/modules/clothing/chameleon.dm
@@ -355,13 +355,13 @@
/datum/action/item_action/chameleon/change/tablet/update_item(obj/item/picked_item)
..()
- var/obj/item/modular_computer/tablet/pda/agent_pda = target
+ var/obj/item/modular_computer/pda/agent_pda = target
if(istype(agent_pda))
agent_pda.update_appearance()
/datum/action/item_action/chameleon/change/tablet/apply_job_data(datum/job/job_datum)
..()
- var/obj/item/modular_computer/tablet/pda/agent_pda = target
+ var/obj/item/modular_computer/pda/agent_pda = target
if(istype(agent_pda) && istype(job_datum))
agent_pda.saved_job = job_datum.title
@@ -706,26 +706,26 @@
. = ..()
chameleon_action.emp_randomise(INFINITY)
-/obj/item/modular_computer/tablet/pda/chameleon
+/obj/item/modular_computer/pda/chameleon
name = "tablet"
var/datum/action/item_action/chameleon/change/tablet/chameleon_action
-/obj/item/modular_computer/tablet/pda/chameleon/Initialize(mapload)
+/obj/item/modular_computer/pda/chameleon/Initialize(mapload)
. = ..()
chameleon_action = new(src)
- chameleon_action.chameleon_type = /obj/item/modular_computer/tablet/pda
+ chameleon_action.chameleon_type = /obj/item/modular_computer/pda
chameleon_action.chameleon_name = "tablet"
- chameleon_action.chameleon_blacklist = typecacheof(list(/obj/item/modular_computer/tablet/pda/heads), only_root_path = TRUE)
+ chameleon_action.chameleon_blacklist = typecacheof(list(/obj/item/modular_computer/pda/heads), only_root_path = TRUE)
chameleon_action.initialize_disguises()
add_item_action(chameleon_action)
-/obj/item/modular_computer/tablet/pda/chameleon/emp_act(severity)
+/obj/item/modular_computer/pda/chameleon/emp_act(severity)
. = ..()
if(. & EMP_PROTECT_SELF)
return
chameleon_action.emp_randomise()
-/obj/item/modular_computer/tablet/pda/chameleon/broken/Initialize(mapload)
+/obj/item/modular_computer/pda/chameleon/broken/Initialize(mapload)
. = ..()
chameleon_action.emp_randomise(INFINITY)
diff --git a/code/modules/clothing/outfits/ert.dm b/code/modules/clothing/outfits/ert.dm
index b46f4ddf7c9..31a51e7103d 100644
--- a/code/modules/clothing/outfits/ert.dm
+++ b/code/modules/clothing/outfits/ert.dm
@@ -160,14 +160,14 @@
gloves = /obj/item/clothing/gloves/color/black
shoes = /obj/item/clothing/shoes/sneakers/black
l_pocket = /obj/item/pen
- r_pocket = /obj/item/modular_computer/tablet/pda/heads
+ r_pocket = /obj/item/modular_computer/pda/heads
l_hand = /obj/item/clipboard
/datum/outfit/centcom/centcom_official/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
if(visualsOnly)
return
- var/obj/item/modular_computer/tablet/pda/heads/pda = H.r_store
+ var/obj/item/modular_computer/pda/heads/pda = H.r_store
pda.saved_identification = H.real_name
pda.saved_job = "CentCom Official"
diff --git a/code/modules/clothing/outfits/standard.dm b/code/modules/clothing/outfits/standard.dm
index 1094b651c09..f6eb7c00e62 100644
--- a/code/modules/clothing/outfits/standard.dm
+++ b/code/modules/clothing/outfits/standard.dm
@@ -238,7 +238,7 @@
id_trim = /datum/id_trim/reaper_assassin
uniform = /obj/item/clothing/under/suit/black
neck = /obj/item/clothing/neck/tie/red/hitman/tied
- belt = /obj/item/modular_computer/tablet/pda/heads
+ belt = /obj/item/modular_computer/pda/heads
ears = /obj/item/radio/headset
gloves = /obj/item/clothing/gloves/color/black
glasses = /obj/item/clothing/glasses/sunglasses
@@ -264,7 +264,7 @@
sec_briefcase.contents += new /obj/item/ammo_box/a357
sec_briefcase.contents += new /obj/item/grenade/c4/x4
- var/obj/item/modular_computer/tablet/pda/heads/pda = H.belt
+ var/obj/item/modular_computer/pda/heads/pda = H.belt
pda.saved_identification = H.real_name
pda.saved_job = "Reaper"
diff --git a/code/modules/clothing/suits/wintercoats.dm b/code/modules/clothing/suits/wintercoats.dm
index 38950e4ebb5..34e0fa385e1 100644
--- a/code/modules/clothing/suits/wintercoats.dm
+++ b/code/modules/clothing/suits/wintercoats.dm
@@ -17,7 +17,7 @@
allowed += list(
/obj/item/flashlight,
/obj/item/lighter,
- /obj/item/modular_computer/tablet/pda,
+ /obj/item/modular_computer/pda,
/obj/item/radio,
/obj/item/storage/bag/books,
/obj/item/storage/fancy/cigarettes,
diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm
index c92fe6d297c..4edd3434b4e 100644
--- a/code/modules/jobs/job_types/_job.dm
+++ b/code/modules/jobs/job_types/_job.dm
@@ -282,7 +282,7 @@
uniform = /obj/item/clothing/under/color/grey
id = /obj/item/card/id/advanced
ears = /obj/item/radio/headset
- belt = /obj/item/modular_computer/tablet/pda
+ belt = /obj/item/modular_computer/pda
back = /obj/item/storage/backpack
shoes = /obj/item/clothing/shoes/sneakers/black
box = /obj/item/storage/box/survival
@@ -357,7 +357,7 @@
equipped.sec_hud_set_ID()
- var/obj/item/modular_computer/tablet/pda/pda = equipped.get_item_by_slot(pda_slot)
+ var/obj/item/modular_computer/pda/pda = equipped.get_item_by_slot(pda_slot)
if(istype(pda))
pda.saved_identification = equipped.real_name
diff --git a/code/modules/jobs/job_types/assistant.dm b/code/modules/jobs/job_types/assistant.dm
index 87cae1d5c9c..89429781679 100644
--- a/code/modules/jobs/job_types/assistant.dm
+++ b/code/modules/jobs/job_types/assistant.dm
@@ -40,7 +40,7 @@ Assistant
name = JOB_ASSISTANT
jobtype = /datum/job/assistant
id_trim = /datum/id_trim/job/assistant
- belt = /obj/item/modular_computer/tablet/pda/assistant
+ belt = /obj/item/modular_computer/pda/assistant
/datum/outfit/job/assistant/pre_equip(mob/living/carbon/human/target)
..()
diff --git a/code/modules/jobs/job_types/atmospheric_technician.dm b/code/modules/jobs/job_types/atmospheric_technician.dm
index e414802aa55..0176bc6eb79 100644
--- a/code/modules/jobs/job_types/atmospheric_technician.dm
+++ b/code/modules/jobs/job_types/atmospheric_technician.dm
@@ -47,7 +47,7 @@
uniform = /obj/item/clothing/under/rank/engineering/atmospheric_technician
belt = /obj/item/storage/belt/utility/atmostech
ears = /obj/item/radio/headset/headset_eng
- l_pocket = /obj/item/modular_computer/tablet/pda/atmos
+ l_pocket = /obj/item/modular_computer/pda/atmos
r_pocket = /obj/item/analyzer
backpack = /obj/item/storage/backpack/industrial
diff --git a/code/modules/jobs/job_types/bartender.dm b/code/modules/jobs/job_types/bartender.dm
index cad636243e0..9fc56f186a8 100644
--- a/code/modules/jobs/job_types/bartender.dm
+++ b/code/modules/jobs/job_types/bartender.dm
@@ -54,7 +54,7 @@
backpack_contents = list(
/obj/item/storage/box/beanbag = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/bar
+ belt = /obj/item/modular_computer/pda/bar
ears = /obj/item/radio/headset/headset_srv
glasses = /obj/item/clothing/glasses/sunglasses/reagent
shoes = /obj/item/clothing/shoes/laceup
diff --git a/code/modules/jobs/job_types/botanist.dm b/code/modules/jobs/job_types/botanist.dm
index 204c78b70f0..2ea1c14fcd9 100644
--- a/code/modules/jobs/job_types/botanist.dm
+++ b/code/modules/jobs/job_types/botanist.dm
@@ -48,7 +48,7 @@
uniform = /obj/item/clothing/under/rank/civilian/hydroponics
suit = /obj/item/clothing/suit/apron
suit_store = /obj/item/plant_analyzer
- belt = /obj/item/modular_computer/tablet/pda/botanist
+ belt = /obj/item/modular_computer/pda/botanist
ears = /obj/item/radio/headset/headset_srv
gloves = /obj/item/clothing/gloves/botanic_leather
diff --git a/code/modules/jobs/job_types/captain.dm b/code/modules/jobs/job_types/captain.dm
index 06d80dbf9b6..254a62b3201 100755
--- a/code/modules/jobs/job_types/captain.dm
+++ b/code/modules/jobs/job_types/captain.dm
@@ -65,7 +65,7 @@
/obj/item/melee/baton/telescopic = 1,
/obj/item/station_charter = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/heads/captain
+ belt = /obj/item/modular_computer/pda/heads/captain
ears = /obj/item/radio/headset/heads/captain/alt
glasses = /obj/item/clothing/glasses/sunglasses
gloves = /obj/item/clothing/gloves/color/captain
diff --git a/code/modules/jobs/job_types/cargo_technician.dm b/code/modules/jobs/job_types/cargo_technician.dm
index 9be377fb0f5..53807a195ae 100644
--- a/code/modules/jobs/job_types/cargo_technician.dm
+++ b/code/modules/jobs/job_types/cargo_technician.dm
@@ -45,7 +45,7 @@
)
id_trim = /datum/id_trim/job/cargo_technician
uniform = /obj/item/clothing/under/rank/cargo/tech
- belt = /obj/item/modular_computer/tablet/pda/cargo
+ belt = /obj/item/modular_computer/pda/cargo
ears = /obj/item/radio/headset/headset_cargo
l_hand = /obj/item/universal_scanner
diff --git a/code/modules/jobs/job_types/chaplain.dm b/code/modules/jobs/job_types/chaplain.dm
index aa4a52a2b0c..850c10dece1 100644
--- a/code/modules/jobs/job_types/chaplain.dm
+++ b/code/modules/jobs/job_types/chaplain.dm
@@ -123,7 +123,7 @@
/obj/item/camera/spooky = 1,
/obj/item/stamp/chap = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/chaplain
+ belt = /obj/item/modular_computer/pda/chaplain
ears = /obj/item/radio/headset/headset_srv
backpack = /obj/item/storage/backpack/cultpack
diff --git a/code/modules/jobs/job_types/chemist.dm b/code/modules/jobs/job_types/chemist.dm
index 43a0298260a..ab8b0914d13 100644
--- a/code/modules/jobs/job_types/chemist.dm
+++ b/code/modules/jobs/job_types/chemist.dm
@@ -46,7 +46,7 @@
id_trim = /datum/id_trim/job/chemist
uniform = /obj/item/clothing/under/rank/medical/chemist
suit = /obj/item/clothing/suit/toggle/labcoat/chemist
- belt = /obj/item/modular_computer/tablet/pda/chemist
+ belt = /obj/item/modular_computer/pda/chemist
ears = /obj/item/radio/headset/headset_med
glasses = /obj/item/clothing/glasses/science
shoes = /obj/item/clothing/shoes/sneakers/white
diff --git a/code/modules/jobs/job_types/chief_engineer.dm b/code/modules/jobs/job_types/chief_engineer.dm
index 8572d00aaa0..4496505279a 100644
--- a/code/modules/jobs/job_types/chief_engineer.dm
+++ b/code/modules/jobs/job_types/chief_engineer.dm
@@ -68,7 +68,7 @@
gloves = /obj/item/clothing/gloves/color/black
head = /obj/item/clothing/head/utility/hardhat/white
shoes = /obj/item/clothing/shoes/sneakers/brown
- l_pocket = /obj/item/modular_computer/tablet/pda/heads/ce
+ l_pocket = /obj/item/modular_computer/pda/heads/ce
backpack = /obj/item/storage/backpack/industrial
satchel = /obj/item/storage/backpack/satchel/eng
diff --git a/code/modules/jobs/job_types/chief_medical_officer.dm b/code/modules/jobs/job_types/chief_medical_officer.dm
index b4dfa465ad1..91d95cec470 100644
--- a/code/modules/jobs/job_types/chief_medical_officer.dm
+++ b/code/modules/jobs/job_types/chief_medical_officer.dm
@@ -62,7 +62,7 @@
backpack_contents = list(
/obj/item/melee/baton/telescopic = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/heads/cmo
+ belt = /obj/item/modular_computer/pda/heads/cmo
ears = /obj/item/radio/headset/heads/cmo
head = /obj/item/clothing/head/utility/surgerycap/cmo
shoes = /obj/item/clothing/shoes/sneakers/blue
diff --git a/code/modules/jobs/job_types/clown.dm b/code/modules/jobs/job_types/clown.dm
index 9703e291d5a..f2b2846e568 100644
--- a/code/modules/jobs/job_types/clown.dm
+++ b/code/modules/jobs/job_types/clown.dm
@@ -59,7 +59,7 @@
/obj/item/food/grown/banana = 1,
/obj/item/instrument/bikehorn = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/clown
+ belt = /obj/item/modular_computer/pda/clown
ears = /obj/item/radio/headset/headset_srv
shoes = /obj/item/clothing/shoes/clown_shoes
mask = /obj/item/clothing/mask/gas/clown_hat
diff --git a/code/modules/jobs/job_types/cook.dm b/code/modules/jobs/job_types/cook.dm
index 05397b2a0db..0a65dca8953 100644
--- a/code/modules/jobs/job_types/cook.dm
+++ b/code/modules/jobs/job_types/cook.dm
@@ -67,7 +67,7 @@
/obj/item/choice_beacon/ingredient = 1,
/obj/item/sharpener = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/cook
+ belt = /obj/item/modular_computer/pda/cook
ears = /obj/item/radio/headset/headset_srv
head = /obj/item/clothing/head/utility/chefhat
mask = /obj/item/clothing/mask/fakemoustache/italian
diff --git a/code/modules/jobs/job_types/curator.dm b/code/modules/jobs/job_types/curator.dm
index 9381b944d18..218b162afdb 100644
--- a/code/modules/jobs/job_types/curator.dm
+++ b/code/modules/jobs/job_types/curator.dm
@@ -47,7 +47,7 @@
/obj/item/barcodescanner = 1,
/obj/item/choice_beacon/hero = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/curator
+ belt = /obj/item/modular_computer/pda/curator
ears = /obj/item/radio/headset/headset_srv
shoes = /obj/item/clothing/shoes/laceup
l_pocket = /obj/item/laser_pointer/green
diff --git a/code/modules/jobs/job_types/detective.dm b/code/modules/jobs/job_types/detective.dm
index 72cb0a73542..66576259afe 100644
--- a/code/modules/jobs/job_types/detective.dm
+++ b/code/modules/jobs/job_types/detective.dm
@@ -58,7 +58,7 @@
/obj/item/melee/baton = 1,
/obj/item/storage/box/evidence = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/detective
+ belt = /obj/item/modular_computer/pda/detective
ears = /obj/item/radio/headset/headset_sec/alt
gloves = /obj/item/clothing/gloves/color/black
head = /obj/item/clothing/head/fedora/det_hat
diff --git a/code/modules/jobs/job_types/geneticist.dm b/code/modules/jobs/job_types/geneticist.dm
index 028e35a8116..6d09163d51f 100644
--- a/code/modules/jobs/job_types/geneticist.dm
+++ b/code/modules/jobs/job_types/geneticist.dm
@@ -41,7 +41,7 @@
uniform = /obj/item/clothing/under/rank/rnd/geneticist
suit = /obj/item/clothing/suit/toggle/labcoat/genetics
suit_store = /obj/item/flashlight/pen
- belt = /obj/item/modular_computer/tablet/pda/geneticist
+ belt = /obj/item/modular_computer/pda/geneticist
ears = /obj/item/radio/headset/headset_sci
shoes = /obj/item/clothing/shoes/sneakers/white
l_pocket = /obj/item/sequence_scanner
diff --git a/code/modules/jobs/job_types/head_of_personnel.dm b/code/modules/jobs/job_types/head_of_personnel.dm
index 3c4725f41f1..9cac2406d84 100644
--- a/code/modules/jobs/job_types/head_of_personnel.dm
+++ b/code/modules/jobs/job_types/head_of_personnel.dm
@@ -59,7 +59,7 @@
/obj/item/melee/baton/telescopic = 1,
/obj/item/storage/box/ids = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/heads/hop
+ belt = /obj/item/modular_computer/pda/heads/hop
ears = /obj/item/radio/headset/heads/hop
head = /obj/item/clothing/head/hats/hopcap
shoes = /obj/item/clothing/shoes/laceup
diff --git a/code/modules/jobs/job_types/head_of_security.dm b/code/modules/jobs/job_types/head_of_security.dm
index 4c162056c50..e3b89eaafdb 100644
--- a/code/modules/jobs/job_types/head_of_security.dm
+++ b/code/modules/jobs/job_types/head_of_security.dm
@@ -56,7 +56,7 @@
backpack_contents = list(
/obj/item/evidencebag = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/heads/hos
+ belt = /obj/item/modular_computer/pda/heads/hos
ears = /obj/item/radio/headset/heads/hos/alt
glasses = /obj/item/clothing/glasses/hud/security/sunglasses
gloves = /obj/item/clothing/gloves/color/black
diff --git a/code/modules/jobs/job_types/janitor.dm b/code/modules/jobs/job_types/janitor.dm
index 8278bffb847..c5350e14ab3 100644
--- a/code/modules/jobs/job_types/janitor.dm
+++ b/code/modules/jobs/job_types/janitor.dm
@@ -40,7 +40,7 @@
id_trim = /datum/id_trim/job/janitor
uniform = /obj/item/clothing/under/rank/civilian/janitor
- belt = /obj/item/modular_computer/tablet/pda/janitor
+ belt = /obj/item/modular_computer/pda/janitor
ears = /obj/item/radio/headset/headset_srv
/datum/outfit/job/janitor/pre_equip(mob/living/carbon/human/H, visualsOnly)
diff --git a/code/modules/jobs/job_types/lawyer.dm b/code/modules/jobs/job_types/lawyer.dm
index 8cf6ef08bda..431fca96f32 100644
--- a/code/modules/jobs/job_types/lawyer.dm
+++ b/code/modules/jobs/job_types/lawyer.dm
@@ -38,7 +38,7 @@
id_trim = /datum/id_trim/job/lawyer
uniform = /obj/item/clothing/under/rank/civilian/lawyer/bluesuit
suit = /obj/item/clothing/suit/toggle/lawyer
- belt = /obj/item/modular_computer/tablet/pda/lawyer
+ belt = /obj/item/modular_computer/pda/lawyer
ears = /obj/item/radio/headset/headset_srvsec
shoes = /obj/item/clothing/shoes/laceup
neck = /obj/item/clothing/neck/tie/red/tied
diff --git a/code/modules/jobs/job_types/medical_doctor.dm b/code/modules/jobs/job_types/medical_doctor.dm
index 1d65727014c..1662d6ba744 100644
--- a/code/modules/jobs/job_types/medical_doctor.dm
+++ b/code/modules/jobs/job_types/medical_doctor.dm
@@ -48,7 +48,7 @@
uniform = /obj/item/clothing/under/rank/medical/scrubs/blue
suit = /obj/item/clothing/suit/toggle/labcoat
suit_store = /obj/item/flashlight/pen
- belt = /obj/item/modular_computer/tablet/pda/medical
+ belt = /obj/item/modular_computer/pda/medical
ears = /obj/item/radio/headset/headset_med
head = /obj/item/clothing/head/utility/surgerycap
shoes = /obj/item/clothing/shoes/sneakers/white
diff --git a/code/modules/jobs/job_types/mime.dm b/code/modules/jobs/job_types/mime.dm
index e1d23d94c05..fb421d4d133 100644
--- a/code/modules/jobs/job_types/mime.dm
+++ b/code/modules/jobs/job_types/mime.dm
@@ -57,7 +57,7 @@
/obj/item/reagent_containers/cup/glass/bottle/bottleofnothing = 1,
/obj/item/stamp/mime = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/mime
+ belt = /obj/item/modular_computer/pda/mime
ears = /obj/item/radio/headset/headset_srv
gloves = /obj/item/clothing/gloves/color/white
head = /obj/item/clothing/head/frenchberet
diff --git a/code/modules/jobs/job_types/paramedic.dm b/code/modules/jobs/job_types/paramedic.dm
index 868f5e2565a..f84b1e7c138 100644
--- a/code/modules/jobs/job_types/paramedic.dm
+++ b/code/modules/jobs/job_types/paramedic.dm
@@ -56,7 +56,7 @@
head = /obj/item/clothing/head/soft/paramedic
gloves = /obj/item/clothing/gloves/color/latex/nitrile
shoes = /obj/item/clothing/shoes/sneakers/blue
- l_pocket = /obj/item/modular_computer/tablet/pda/medical/paramedic
+ l_pocket = /obj/item/modular_computer/pda/medical/paramedic
backpack = /obj/item/storage/backpack/medic
satchel = /obj/item/storage/backpack/satchel/med
diff --git a/code/modules/jobs/job_types/psychologist.dm b/code/modules/jobs/job_types/psychologist.dm
index eb2b1541ed9..18e47208ae5 100644
--- a/code/modules/jobs/job_types/psychologist.dm
+++ b/code/modules/jobs/job_types/psychologist.dm
@@ -49,7 +49,7 @@
/obj/item/storage/pill_bottle/paxpsych,
/obj/item/storage/pill_bottle/psicodine,
)
- belt = /obj/item/modular_computer/tablet/pda/medical
+ belt = /obj/item/modular_computer/pda/medical
ears = /obj/item/radio/headset/headset_srvmed
shoes = /obj/item/clothing/shoes/laceup
l_hand = /obj/item/clipboard
diff --git a/code/modules/jobs/job_types/quartermaster.dm b/code/modules/jobs/job_types/quartermaster.dm
index 1f429cf561e..9d755caaa44 100644
--- a/code/modules/jobs/job_types/quartermaster.dm
+++ b/code/modules/jobs/job_types/quartermaster.dm
@@ -46,7 +46,7 @@
id_trim = /datum/id_trim/job/quartermaster
id = /obj/item/card/id/advanced/silver
uniform = /obj/item/clothing/under/rank/cargo/qm
- belt = /obj/item/modular_computer/tablet/pda/heads/quartermaster
+ belt = /obj/item/modular_computer/pda/heads/quartermaster
ears = /obj/item/radio/headset/heads/qm
glasses = /obj/item/clothing/glasses/sunglasses
shoes = /obj/item/clothing/shoes/sneakers/brown
diff --git a/code/modules/jobs/job_types/research_director.dm b/code/modules/jobs/job_types/research_director.dm
index 082835bf3b3..06d1d4479b2 100644
--- a/code/modules/jobs/job_types/research_director.dm
+++ b/code/modules/jobs/job_types/research_director.dm
@@ -62,7 +62,7 @@
backpack_contents = list(
/obj/item/melee/baton/telescopic = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/heads/rd
+ belt = /obj/item/modular_computer/pda/heads/rd
head = /obj/item/clothing/head/beret/science/rd
ears = /obj/item/radio/headset/heads/rd
shoes = /obj/item/clothing/shoes/jackboots
diff --git a/code/modules/jobs/job_types/roboticist.dm b/code/modules/jobs/job_types/roboticist.dm
index 4a1fbe28251..2b6bbe9d012 100644
--- a/code/modules/jobs/job_types/roboticist.dm
+++ b/code/modules/jobs/job_types/roboticist.dm
@@ -48,7 +48,7 @@
suit = /obj/item/clothing/suit/toggle/labcoat/roboticist
belt = /obj/item/storage/belt/utility/full
ears = /obj/item/radio/headset/headset_sci
- l_pocket = /obj/item/modular_computer/tablet/pda/roboticist
+ l_pocket = /obj/item/modular_computer/pda/roboticist
backpack = /obj/item/storage/backpack/science
satchel = /obj/item/storage/backpack/satchel/science
diff --git a/code/modules/jobs/job_types/scientist.dm b/code/modules/jobs/job_types/scientist.dm
index 4d21f6a3bdd..7dfe2621ff7 100644
--- a/code/modules/jobs/job_types/scientist.dm
+++ b/code/modules/jobs/job_types/scientist.dm
@@ -46,7 +46,7 @@
id_trim = /datum/id_trim/job/scientist
uniform = /obj/item/clothing/under/rank/rnd/scientist
suit = /obj/item/clothing/suit/toggle/labcoat/science
- belt = /obj/item/modular_computer/tablet/pda/science
+ belt = /obj/item/modular_computer/pda/science
ears = /obj/item/radio/headset/headset_sci
shoes = /obj/item/clothing/shoes/sneakers/white
diff --git a/code/modules/jobs/job_types/security_officer.dm b/code/modules/jobs/job_types/security_officer.dm
index dbb5685777e..3ad3fe7de16 100644
--- a/code/modules/jobs/job_types/security_officer.dm
+++ b/code/modules/jobs/job_types/security_officer.dm
@@ -203,7 +203,7 @@ GLOBAL_LIST_EMPTY(security_officer_distribution)
backpack_contents = list(
/obj/item/evidencebag = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/security
+ belt = /obj/item/modular_computer/pda/security
ears = /obj/item/radio/headset/headset_sec/alt
gloves = /obj/item/clothing/gloves/color/black
head = /obj/item/clothing/head/helmet/sec
diff --git a/code/modules/jobs/job_types/shaft_miner.dm b/code/modules/jobs/job_types/shaft_miner.dm
index cccf8cddc23..153adb055e1 100644
--- a/code/modules/jobs/job_types/shaft_miner.dm
+++ b/code/modules/jobs/job_types/shaft_miner.dm
@@ -42,7 +42,7 @@
/obj/item/mining_voucher = 1,
/obj/item/stack/marker_beacon/ten = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/shaftminer
+ belt = /obj/item/modular_computer/pda/shaftminer
ears = /obj/item/radio/headset/headset_cargo/mining
gloves = /obj/item/clothing/gloves/color/black
shoes = /obj/item/clothing/shoes/workboots/mining
diff --git a/code/modules/jobs/job_types/station_engineer.dm b/code/modules/jobs/job_types/station_engineer.dm
index 765f80153b3..26e413add01 100644
--- a/code/modules/jobs/job_types/station_engineer.dm
+++ b/code/modules/jobs/job_types/station_engineer.dm
@@ -49,7 +49,7 @@
ears = /obj/item/radio/headset/headset_eng
head = /obj/item/clothing/head/utility/hardhat
shoes = /obj/item/clothing/shoes/workboots
- l_pocket = /obj/item/modular_computer/tablet/pda/engineering
+ l_pocket = /obj/item/modular_computer/pda/engineering
r_pocket = /obj/item/t_scanner
backpack = /obj/item/storage/backpack/industrial
diff --git a/code/modules/jobs/job_types/virologist.dm b/code/modules/jobs/job_types/virologist.dm
index af4e1a442de..5f33a9e98fb 100644
--- a/code/modules/jobs/job_types/virologist.dm
+++ b/code/modules/jobs/job_types/virologist.dm
@@ -48,7 +48,7 @@
uniform = /obj/item/clothing/under/rank/medical/virologist
suit = /obj/item/clothing/suit/toggle/labcoat/virologist
suit_store = /obj/item/flashlight/pen
- belt = /obj/item/modular_computer/tablet/pda/viro
+ belt = /obj/item/modular_computer/pda/viro
ears = /obj/item/radio/headset/headset_med
mask = /obj/item/clothing/mask/surgical
shoes = /obj/item/clothing/shoes/sneakers/white
diff --git a/code/modules/jobs/job_types/warden.dm b/code/modules/jobs/job_types/warden.dm
index cd78869f837..21307c6bdf4 100644
--- a/code/modules/jobs/job_types/warden.dm
+++ b/code/modules/jobs/job_types/warden.dm
@@ -55,7 +55,7 @@
backpack_contents = list(
/obj/item/evidencebag = 1,
)
- belt = /obj/item/modular_computer/tablet/pda/warden
+ belt = /obj/item/modular_computer/pda/warden
ears = /obj/item/radio/headset/headset_sec/alt
glasses = /obj/item/clothing/glasses/hud/security/sunglasses
gloves = /obj/item/clothing/gloves/color/black
diff --git a/code/modules/mining/abandoned_crates.dm b/code/modules/mining/abandoned_crates.dm
index 911eba6d54c..fa884ea9b0e 100644
--- a/code/modules/mining/abandoned_crates.dm
+++ b/code/modules/mining/abandoned_crates.dm
@@ -157,7 +157,7 @@
for(var/i in 1 to 5)
new /obj/item/toy/snappop/phoenix(src)
if(41 to 45)
- new /obj/item/modular_computer/tablet/pda/clear(src)
+ new /obj/item/modular_computer/pda/clear(src)
if(46 to 50)
new /obj/item/storage/box/syndie_kit/chameleon/broken
if(51 to 52) // 2% chance
diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm
index a202d3d595a..5b814d17aab 100644
--- a/code/modules/mob/living/carbon/human/human_helpers.dm
+++ b/code/modules/mob/living/carbon/human/human_helpers.dm
@@ -68,7 +68,7 @@
//Useful when player is being seen by other mobs
/mob/living/carbon/human/proc/get_id_name(if_no_id = "Unknown")
var/obj/item/storage/wallet/wallet = wear_id
- var/obj/item/modular_computer/tablet/pda/pda = wear_id
+ var/obj/item/modular_computer/pda/pda = wear_id
var/obj/item/card/id/id = wear_id
if(HAS_TRAIT(src, TRAIT_UNKNOWN))
. = if_no_id //You get NOTHING, no id name, good day sir
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index 37ac52bfec3..c4d2e2055f6 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -960,7 +960,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
if(!disable_warning)
to_chat(H, span_warning("The [I.name] is too big to attach!")) //should be src?
return FALSE
- if( istype(I, /obj/item/modular_computer/tablet) || istype(I, /obj/item/pen) || is_type_in_list(I, H.wear_suit.allowed) )
+ if( istype(I, /obj/item/modular_computer/pda) || istype(I, /obj/item/pen) || is_type_in_list(I, H.wear_suit.allowed) )
return TRUE
return FALSE
if(ITEM_SLOT_HANDCUFFED)
diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm
index 565ca6a592b..1825a33fef0 100644
--- a/code/modules/mob/living/silicon/robot/robot.dm
+++ b/code/modules/mob/living/silicon/robot/robot.dm
@@ -93,7 +93,7 @@
/mob/living/silicon/robot/model/syndicate/create_modularInterface()
if(!modularInterface)
- modularInterface = new /obj/item/modular_computer/tablet/integrated/cyborg/syndicate(src)
+ modularInterface = new /obj/item/modular_computer/pda/silicon/cyborg/syndicate(src)
modularInterface.saved_identification = real_name
modularInterface.saved_job = "Cyborg"
return ..()
@@ -109,8 +109,6 @@
if(istype(model, /obj/item/robot_model/syndicate) || emagged)
modularInterface.device_theme = "syndicate"
modularInterface.icon_state = "tablet-silicon-syndicate"
- modularInterface.icon_state_powered = "tablet-silicon-syndicate"
- modularInterface.icon_state_unpowered = "tablet-silicon-syndicate"
else
modularInterface.device_theme = "ntos"
modularInterface.icon_state = "tablet-silicon"
diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm
index 05260fd7435..94a45aaac47 100644
--- a/code/modules/mob/living/silicon/silicon.dm
+++ b/code/modules/mob/living/silicon/silicon.dm
@@ -49,7 +49,7 @@
var/hack_software = FALSE //Will be able to use hacking actions
interaction_range = 7 //wireless control range
- var/obj/item/modular_computer/tablet/integrated/modularInterface
+ var/obj/item/modular_computer/pda/silicon/modularInterface
/mob/living/silicon/Initialize(mapload)
. = ..()
@@ -81,7 +81,7 @@
/mob/living/silicon/proc/create_modularInterface()
if(!modularInterface)
- modularInterface = new /obj/item/modular_computer/tablet/integrated(src)
+ modularInterface = new /obj/item/modular_computer/pda/silicon(src)
if(isAI(src))
modularInterface.saved_job = "AI"
if(ispAI(src))
@@ -93,13 +93,13 @@
/mob/living/silicon/robot/create_modularInterface()
if(!modularInterface)
- modularInterface = new /obj/item/modular_computer/tablet/integrated/cyborg(src)
+ modularInterface = new /obj/item/modular_computer/pda/silicon/cyborg(src)
modularInterface.saved_job = "Cyborg"
return ..()
/mob/living/silicon/robot/model/syndicate/create_modularInterface()
if(!modularInterface)
- modularInterface = new /obj/item/modular_computer/tablet/integrated/cyborg/syndicate(src)
+ modularInterface = new /obj/item/modular_computer/pda/silicon/cyborg/syndicate(src)
modularInterface.saved_job = "Cyborg"
return ..()
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index b9f3389345e..01942c69f3a 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -1090,8 +1090,8 @@
break
search_id = 0
- else if( search_pda && istype(A, /obj/item/modular_computer/tablet/pda) )
- var/obj/item/modular_computer/tablet/pda/PDA = A
+ else if( search_pda && istype(A, /obj/item/modular_computer/pda) )
+ var/obj/item/modular_computer/pda/PDA = A
if(PDA.saved_identification == oldname)
PDA.saved_identification = newname
PDA.UpdateDisplay()
diff --git a/code/modules/mob_spawn/ghost_roles/space_roles.dm b/code/modules/mob_spawn/ghost_roles/space_roles.dm
index 3f81e2c5669..05850a17590 100644
--- a/code/modules/mob_spawn/ghost_roles/space_roles.dm
+++ b/code/modules/mob_spawn/ghost_roles/space_roles.dm
@@ -212,7 +212,7 @@
name = "Syndicate Battlecruiser Assault Operative"
uniform = /obj/item/clothing/under/syndicate/combat
l_pocket = /obj/item/uplink/nuclear
- r_pocket = /obj/item/modular_computer/tablet/nukeops
+ r_pocket = /obj/item/modular_computer/pda/nukeops
belt = /obj/item/storage/belt/military
suit = /obj/item/clothing/suit/armor/vest
suit_store = /obj/item/gun/ballistic/automatic/pistol/clandestine
diff --git a/code/modules/mob_spawn/ghost_roles/unused_roles.dm b/code/modules/mob_spawn/ghost_roles/unused_roles.dm
index cc7543f5989..dffac3be04e 100644
--- a/code/modules/mob_spawn/ghost_roles/unused_roles.dm
+++ b/code/modules/mob_spawn/ghost_roles/unused_roles.dm
@@ -197,7 +197,7 @@
/obj/effect/mob_spawn/ghost_role/human/doctor/alive/equip(mob/living/carbon/human/doctor)
. = ..()
// Remove radio and PDA so they wouldn't annoy station crew.
- var/list/del_types = list(/obj/item/modular_computer/tablet, /obj/item/radio/headset)
+ var/list/del_types = list(/obj/item/modular_computer/pda, /obj/item/radio/headset)
for(var/del_type in del_types)
var/obj/item/unwanted_item = locate(del_type) in doctor
qdel(unwanted_item)
diff --git a/code/modules/mob_spawn/mob_spawn.dm b/code/modules/mob_spawn/mob_spawn.dm
index 168c07c5acc..8b65733aa46 100644
--- a/code/modules/mob_spawn/mob_spawn.dm
+++ b/code/modules/mob_spawn/mob_spawn.dm
@@ -254,7 +254,7 @@
. = ..()
if(conceal_presence)
// We don't want corpse PDAs to show up in the messenger list.
- var/obj/item/modular_computer/tablet/pda/messenger = locate() in spawned_human
+ var/obj/item/modular_computer/pda/messenger = locate() in spawned_human
if(messenger)
var/datum/computer_file/program/messenger/message_app = locate() in messenger.stored_files
if(message_app)
diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm
index 6f6fdc35611..2537b60f7a0 100644
--- a/code/modules/modular_computers/computers/item/computer.dm
+++ b/code/modules/modular_computers/computers/item/computer.dm
@@ -50,8 +50,6 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
var/hardware_flag = NONE
// Options: PROGRAM_ALL | PROGRAM_CONSOLE | PROGRAM_LAPTOP | PROGRAM_TABLET
- ///Whether the icon state should be bypassed entirely, used for PDAs.
- var/bypass_state = FALSE
///The theme, used for the main menu and file browser apps.
var/device_theme = "ntos"
@@ -83,10 +81,12 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
// must have it's own DMI file. Icon states must be called exactly the same in all files, but may look differently
// If you create a program which is limited to Laptops and Consoles you don't have to add it's icon_state overlay for Tablets too, for example.
- var/icon_state_unpowered = null // Icon state when the computer is turned off.
- var/icon_state_powered = null // Icon state when the computer is turned on.
- var/icon_state_menu = "menu" // Icon state overlay when the computer is turned on, but no program is loaded that would override the screen.
- var/display_overlays = TRUE // If FALSE, don't draw overlays on this device at all
+ ///If set, what the icon_state will be if the computer is unpowered.
+ var/icon_state_unpowered
+ ///If set, what the icon_state will be if the computer is powered.
+ var/icon_state_powered
+ ///Icon state overlay when the computer is turned on, but no program is loaded (programs override this).
+ var/icon_state_menu = "menu"
///The full name of the stored ID card's identity. These vars should probably be on the PDA.
var/saved_identification
@@ -382,18 +382,16 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
return . || NONE
/obj/item/modular_computer/update_icon_state()
- if(!bypass_state)
- icon_state = enabled ? icon_state_powered : icon_state_unpowered
+ if(!icon_state_powered || !icon_state_unpowered) //no valid icon, don't update.
+ return ..()
+ icon_state = enabled ? icon_state_powered : icon_state_unpowered
return ..()
/obj/item/modular_computer/update_overlays()
. = ..()
var/init_icon = initial(icon)
-
if(!init_icon)
return
- if(!display_overlays)
- return
if(enabled)
. += active_program ? mutable_appearance(init_icon, active_program.program_icon_state) : mutable_appearance(init_icon, icon_state_menu)
@@ -493,7 +491,6 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
active_program.ntnet_status = get_ntnet_status()
handle_power(delta_time) // Handles all computer power interaction
- //check_update_ui_need()
/**
* Displays notification text alongside a soundbeep when requested to by a program.
diff --git a/code/modules/modular_computers/computers/item/computer_power.dm b/code/modules/modular_computers/computers/item/computer_power.dm
index e9f248dbb67..658b2ceaaa7 100644
--- a/code/modules/modular_computers/computers/item/computer_power.dm
+++ b/code/modules/modular_computers/computers/item/computer_power.dm
@@ -46,5 +46,5 @@
return FALSE
//Integrated (Silicon) tablets don't drain power, because the tablet is required to state laws, so it being disabled WILL cause problems.
-/obj/item/modular_computer/tablet/integrated/check_power_override()
+/obj/item/modular_computer/pda/silicon/check_power_override()
return TRUE
diff --git a/code/modules/modular_computers/computers/item/computer_ui.dm b/code/modules/modular_computers/computers/item/computer_ui.dm
index 4dfe84ce28b..e146226893a 100644
--- a/code/modules/modular_computers/computers/item/computer_ui.dm
+++ b/code/modules/modular_computers/computers/item/computer_ui.dm
@@ -50,7 +50,7 @@
. = ..()
var/list/data = list()
- data["show_imprint"] = istype(src, /obj/item/modular_computer/tablet)
+ data["show_imprint"] = istype(src, /obj/item/modular_computer/pda)
return data
diff --git a/code/modules/modular_computers/computers/item/disks/virus_disk.dm b/code/modules/modular_computers/computers/item/disks/virus_disk.dm
index 9714318a859..7416a13348e 100644
--- a/code/modules/modular_computers/computers/item/disks/virus_disk.dm
+++ b/code/modules/modular_computers/computers/item/disks/virus_disk.dm
@@ -9,7 +9,7 @@
///How many charges the virus has left
var/charges = 5
-/obj/item/computer_disk/virus/proc/send_virus(obj/item/modular_computer/tablet/source, obj/item/modular_computer/tablet/target, mob/living/user)
+/obj/item/computer_disk/virus/proc/send_virus(obj/item/modular_computer/pda/source, obj/item/modular_computer/pda/target, mob/living/user)
if(charges <= 0)
to_chat(user, span_notice("ERROR: Out of charges."))
return FALSE
@@ -26,7 +26,7 @@
/obj/item/computer_disk/virus/clown
name = "\improper H.O.N.K. disk"
-/obj/item/computer_disk/virus/clown/send_virus(obj/item/modular_computer/tablet/source, obj/item/modular_computer/tablet/target, mob/living/user)
+/obj/item/computer_disk/virus/clown/send_virus(obj/item/modular_computer/pda/source, obj/item/modular_computer/pda/target, mob/living/user)
. = ..()
if(!.)
return FALSE
@@ -43,7 +43,7 @@
/obj/item/computer_disk/virus/mime
name = "\improper sound of silence disk"
-/obj/item/computer_disk/virus/mime/send_virus(obj/item/modular_computer/tablet/source, obj/item/modular_computer/tablet/target, mob/living/user)
+/obj/item/computer_disk/virus/mime/send_virus(obj/item/modular_computer/pda/source, obj/item/modular_computer/pda/target, mob/living/user)
. = ..()
if(!.)
return FALSE
@@ -64,7 +64,7 @@
name = "\improper D.E.T.O.M.A.T.I.X. disk"
charges = 6
-/obj/item/computer_disk/virus/detomatix/send_virus(obj/item/modular_computer/tablet/source, obj/item/modular_computer/tablet/target, mob/living/user)
+/obj/item/computer_disk/virus/detomatix/send_virus(obj/item/modular_computer/pda/source, obj/item/modular_computer/pda/target, mob/living/user)
. = ..()
if(!.)
return FALSE
@@ -120,7 +120,7 @@
telecrystal_stack.use(telecrystal_stack.amount)
-/obj/item/computer_disk/virus/frame/send_virus(obj/item/modular_computer/tablet/target, mob/living/user)
+/obj/item/computer_disk/virus/frame/send_virus(obj/item/modular_computer/pda/target, mob/living/user)
. = ..()
if(!.)
return FALSE
diff --git a/code/modules/modular_computers/computers/item/laptop.dm b/code/modules/modular_computers/computers/item/laptop.dm
index 30cda8c211a..faa4c24638f 100644
--- a/code/modules/modular_computers/computers/item/laptop.dm
+++ b/code/modules/modular_computers/computers/item/laptop.dm
@@ -7,7 +7,6 @@
icon_state_powered = "laptop"
icon_state_unpowered = "laptop-off"
icon_state_menu = "menu"
- display_overlays = FALSE
hardware_flag = PROGRAM_LAPTOP
max_idle_programs = 3
@@ -111,7 +110,6 @@
w_class = w_class_open
screen_on = !screen_on
- display_overlays = screen_on
update_appearance()
diff --git a/code/modules/modular_computers/computers/item/tablet.dm b/code/modules/modular_computers/computers/item/pda.dm
similarity index 68%
rename from code/modules/modular_computers/computers/item/tablet.dm
rename to code/modules/modular_computers/computers/item/pda.dm
index c5a77688e95..4ef3a4aad60 100644
--- a/code/modules/modular_computers/computers/item/tablet.dm
+++ b/code/modules/modular_computers/computers/item/pda.dm
@@ -1,31 +1,42 @@
-/obj/item/modular_computer/tablet //Its called tablet for theme of 90ies but actually its a "big smartphone" sized
- name = "tablet computer"
- icon = 'icons/obj/modular_tablet.dmi'
- icon_state = "tablet-red"
- icon_state_unpowered = "tablet-red"
- icon_state_powered = "tablet-red"
- icon_state_menu = "menu"
- inhand_icon_state = "electronic"
+/obj/item/modular_computer/pda
+ name = "pda"
+ icon = 'icons/obj/modular_pda.dmi'
+ icon_state = "pda"
+ worn_icon_state = "pda"
+ base_icon_state = "tablet"
+ greyscale_config = /datum/greyscale_config/tablet
+ greyscale_colors = "#999875#a92323"
+
lefthand_file = 'icons/mob/inhands/items/devices_lefthand.dmi'
righthand_file = 'icons/mob/inhands/items/devices_righthand.dmi'
- base_icon_state = "tablet"
- worn_icon_state = "tablet"
- hardware_flag = PROGRAM_TABLET
- max_idle_programs = 2
- w_class = WEIGHT_CLASS_SMALL
+ inhand_icon_state = "electronic"
+
steel_sheet_cost = 2
- slot_flags = ITEM_SLOT_ID | ITEM_SLOT_BELT
- has_light = TRUE //LED flashlight!
- comp_light_luminosity = 2.3 //Same as the PDA
- looping_sound = FALSE
custom_materials = list(/datum/material/iron=300, /datum/material/glass=100, /datum/material/plastic=100)
interaction_flags_atom = INTERACT_ATOM_ALLOW_USER_LOCATION
- var/has_variants = TRUE
- var/finish_color = null
+ icon_state_menu = "menu"
+ max_capacity = 64
+ allow_chunky = TRUE
+ hardware_flag = PROGRAM_TABLET
+ max_idle_programs = 2
+ w_class = WEIGHT_CLASS_SMALL
+ slot_flags = ITEM_SLOT_ID | ITEM_SLOT_BELT
+ has_light = TRUE //LED flashlight!
+ comp_light_luminosity = 2.3 //this is what old PDAs were set to
+ looping_sound = FALSE
///The item currently inserted into the PDA, starts with a pen.
var/obj/item/inserted_item = /obj/item/pen
+
+ ///Whether the PDA should have 'pda_programs' apps installed on Initialize.
+ var/has_pda_programs = TRUE
+ ///Static list of default PDA apps to install on Initialize.
+ var/static/list/datum/computer_file/pda_programs = list(
+ /datum/computer_file/program/messenger,
+ /datum/computer_file/program/nt_pay,
+ /datum/computer_file/program/notepad,
+ )
///List of items that can be stored in a PDA
var/static/list/contained_item = list(
/obj/item/pen,
@@ -35,24 +46,43 @@
/obj/item/clothing/mask/cigarette,
)
-/obj/item/modular_computer/tablet/Initialize(mapload)
+/obj/item/modular_computer/pda/Initialize(mapload)
. = ..()
if(inserted_item)
inserted_item = new inserted_item(src)
-/obj/item/modular_computer/tablet/Destroy()
+/obj/item/modular_computer/pda/Destroy()
if(istype(inserted_item))
QDEL_NULL(inserted_item)
return ..()
-/obj/item/modular_computer/tablet/update_icon_state()
- if(has_variants && !bypass_state)
- if(!finish_color)
- finish_color = pick("red", "blue", "brown", "green", "black")
- icon_state = icon_state_powered = icon_state_unpowered = "[base_icon_state]-[finish_color]"
- return ..()
+/obj/item/modular_computer/pda/install_default_programs()
+ var/list/apps_to_download = list()
+ if(has_pda_programs)
+ apps_to_download += default_programs + pda_programs
+ apps_to_download += starting_programs
-/obj/item/modular_computer/tablet/attack_self(mob/user)
+ for(var/programs as anything in apps_to_download)
+ var/datum/computer_file/program/program_type = new programs
+ store_file(program_type)
+
+/obj/item/modular_computer/pda/update_overlays()
+ . = ..()
+ if(computer_id_slot)
+ . += mutable_appearance(initial(icon), "id_overlay")
+ if(light_on)
+ . += mutable_appearance(initial(icon), "light_overlay")
+
+/obj/item/modular_computer/pda/attack_ai(mob/user)
+ to_chat(user, span_notice("It doesn't feel right to snoop around like that..."))
+ return // we don't want ais or cyborgs using a private role tablet
+
+/obj/item/modular_computer/pda/interact(mob/user)
+ . = ..()
+ if(HAS_TRAIT(src, TRAIT_PDA_MESSAGE_MENU_RIGGED))
+ explode(usr, from_message_menu = TRUE)
+
+/obj/item/modular_computer/pda/attack_self(mob/user)
// bypass literacy checks to access syndicate uplink
var/datum/component/uplink/hidden_uplink = GetComponent(/datum/component/uplink)
if(hidden_uplink?.owner && HAS_TRAIT(user, TRAIT_ILLITERATE))
@@ -65,7 +95,7 @@
return ..()
-/obj/item/modular_computer/tablet/pre_attack(atom/target, mob/living/user, params)
+/obj/item/modular_computer/pda/pre_attack(atom/target, mob/living/user, params)
if(!inserted_disk || !ismachinery(target))
return ..()
@@ -93,12 +123,7 @@
)
return TRUE
-/obj/item/modular_computer/tablet/interact(mob/user)
- . = ..()
- if(HAS_TRAIT(src, TRAIT_PDA_MESSAGE_MENU_RIGGED))
- explode(usr, from_message_menu = TRUE)
-
-/obj/item/modular_computer/tablet/add_context(atom/source, list/context, obj/item/held_item, mob/user)
+/obj/item/modular_computer/pda/add_context(atom/source, list/context, obj/item/held_item, mob/user)
. = ..()
if(inserted_item)
@@ -110,30 +135,31 @@
return . || NONE
-/obj/item/modular_computer/tablet/attackby(obj/item/W, mob/user)
+/obj/item/modular_computer/pda/attackby(obj/item/attacking_item, mob/user, params)
. = ..()
- if(is_type_in_list(W, contained_item))
- if(W.w_class >= WEIGHT_CLASS_SMALL) // Anything equal to or larger than small won't work
- user.balloon_alert(user, "too big!")
- return
- if(inserted_item)
- balloon_alert(user, "no room!")
- else
- if(!user.transferItemToLoc(W, src))
- return
- balloon_alert(user, "inserted [W]")
- inserted_item = W
- playsound(src, 'sound/machines/pda_button1.ogg', 50, TRUE)
+ if(!is_type_in_list(attacking_item, contained_item))
+ return
+ if(attacking_item.w_class >= WEIGHT_CLASS_SMALL) // Anything equal to or larger than small won't work
+ user.balloon_alert(user, "too big!")
+ return
+ if(inserted_item)
+ balloon_alert(user, "no room!")
+ return
+ if(!user.transferItemToLoc(attacking_item, src))
+ return
+ balloon_alert(user, "inserted [attacking_item]")
+ inserted_item = attacking_item
+ playsound(src, 'sound/machines/pda_button1.ogg', 50, TRUE)
-/obj/item/modular_computer/tablet/AltClick(mob/user)
+/obj/item/modular_computer/pda/AltClick(mob/user)
. = ..()
if(.)
return
remove_pen(user)
-/obj/item/modular_computer/tablet/CtrlClick(mob/user)
+/obj/item/modular_computer/pda/CtrlClick(mob/user)
. = ..()
if(.)
return
@@ -141,7 +167,7 @@
remove_pen(user)
///Finds how hard it is to send a virus to this tablet, checking all programs downloaded.
-/obj/item/modular_computer/tablet/proc/get_detomatix_difficulty()
+/obj/item/modular_computer/pda/proc/get_detomatix_difficulty()
var/detomatix_difficulty
for(var/datum/computer_file/program/downloaded_apps as anything in stored_files)
@@ -149,11 +175,7 @@
return detomatix_difficulty
-/obj/item/modular_computer/tablet/proc/tab_no_detonate()
- SIGNAL_HANDLER
- return COMPONENT_TABLET_NO_DETONATE
-
-/obj/item/modular_computer/tablet/proc/remove_pen(mob/user)
+/obj/item/modular_computer/pda/proc/remove_pen(mob/user)
if(issilicon(user) || !user.canUseTopic(src, be_close = TRUE, no_dexterity = FALSE, no_tk = TRUE)) //TK doesn't work even with this removed but here for readability
return
@@ -165,10 +187,8 @@
update_appearance()
playsound(src, 'sound/machines/pda_button2.ogg', 50, TRUE)
-// Tablet 'splosion..
-
-/obj/item/modular_computer/tablet/proc/explode(mob/target, mob/bomber, from_message_menu = FALSE)
- var/turf/T = get_turf(src)
+/obj/item/modular_computer/pda/proc/explode(mob/target, mob/bomber, from_message_menu = FALSE)
+ var/turf/current_turf = get_turf(src)
if(from_message_menu)
log_bomber(null, null, target, "'s tablet exploded as [target.p_they()] tried to open their tablet message menu because of a recent tablet bomb.")
@@ -176,15 +196,20 @@
log_bomber(bomber, "successfully tablet-bombed", target, "as [target.p_they()] tried to reply to a rigged tablet message [bomber && !is_special_character(bomber) ? "(SENT BY NON-ANTAG)" : ""]")
if (ismob(loc))
- var/mob/M = loc
- M.show_message(span_userdanger("Your [src] explodes!"), MSG_VISUAL, span_warning("You hear a loud *pop*!"), MSG_AUDIBLE)
+ var/mob/loc_mob = loc
+ loc_mob.show_message(
+ msg = span_userdanger("Your [src] explodes!"),
+ type = MSG_VISUAL,
+ alt_msg = span_warning("You hear a loud *pop*!"),
+ alt_type = MSG_AUDIBLE,
+ )
else
visible_message(span_danger("[src] explodes!"), span_warning("You hear a loud *pop*!"))
target.client?.give_award(/datum/award/achievement/misc/clickbait, target)
- if(T)
- T.hotspot_expose(700,125)
+ if(current_turf)
+ current_turf.hotspot_expose(700,125)
if(istype(inserted_disk, /obj/item/computer_disk/virus/detomatix))
explosion(src, devastation_range = -1, heavy_impact_range = 1, light_impact_range = 3, flash_range = 4)
else
@@ -199,7 +224,7 @@
* Arguments:
* * ringtone_client - The client whose prefs we'll use to set the ringtone of this PDA.
*/
-/obj/item/modular_computer/tablet/proc/update_ringtone_pref(client/ringtone_client)
+/obj/item/modular_computer/pda/proc/update_ringtone_pref(client/ringtone_client)
if(!ringtone_client)
return
@@ -210,56 +235,58 @@
update_ringtone(new_ringtone)
-
/// A simple proc to set the ringtone from a pda.
-/obj/item/modular_computer/tablet/proc/update_ringtone(new_ringtone)
+/obj/item/modular_computer/pda/proc/update_ringtone(new_ringtone)
if(!istext(new_ringtone))
return
for(var/datum/computer_file/program/messenger/messenger_app in stored_files)
messenger_app.ringtone = new_ringtone
-// SUBTYPES
-
-/obj/item/modular_computer/tablet/syndicate_contract_uplink
- name = "contractor tablet"
- icon = 'icons/obj/contractor_tablet.dmi'
- icon_state = "tablet"
- icon_state_unpowered = "tablet"
- icon_state_powered = "tablet"
- icon_state_menu = "assign"
- w_class = WEIGHT_CLASS_SMALL
- slot_flags = ITEM_SLOT_ID | ITEM_SLOT_BELT
- comp_light_luminosity = 6.3
- has_variants = FALSE
-
-/// Given to Nuke Ops members.
-/obj/item/modular_computer/tablet/nukeops
+/**
+ * Nuclear PDA
+ *
+ * PDA that doesn't come with the default apps but has Fission360
+ * Resistant to emags, these are given to nukies for disk pinpointer stuff.
+ */
+/obj/item/modular_computer/pda/nukeops
+ name = "nuclear pda"
+ icon = 'icons/obj/modular_tablet.dmi'
icon_state = "tablet-syndicate"
- icon_state_powered = "tablet-syndicate"
- icon_state_unpowered = "tablet-syndicate"
- comp_light_luminosity = 6.3
- has_variants = FALSE
device_theme = "syndicate"
+ comp_light_luminosity = 6.3
light_color = COLOR_RED
+ has_pda_programs = FALSE
+ greyscale_config = null
+ greyscale_colors = null
-/obj/item/modular_computer/tablet/nukeops/emag_act(mob/user)
+ starting_programs = list(
+ /datum/computer_file/program/ntnetdownload/syndicate,
+ /datum/computer_file/program/radar/fission360,
+ )
+
+/obj/item/modular_computer/pda/nukeops/emag_act(mob/user)
if(!enabled)
to_chat(user, span_warning("You'd need to turn the [src] on first."))
return FALSE
to_chat(user, span_notice("You swipe \the [src]. It's screen briefly shows a message reading \"MEMORY CODE INJECTION DETECTED AND SUCCESSFULLY QUARANTINED\"."))
return FALSE
-/// Borg Built-in tablet interface
-/obj/item/modular_computer/tablet/integrated
+/**
+ * Silicon PDA
+ *
+ * PDAs that are built-in to Silicons and should not exist at any point without being inside of one.
+ */
+/obj/item/modular_computer/pda/silicon
name = "modular interface"
icon_state = "tablet-silicon"
- icon_state_powered = "tablet-silicon"
- icon_state_unpowered = "tablet-silicon"
base_icon_state = "tablet-silicon"
+ greyscale_config = null
+ greyscale_colors = null
+
has_light = FALSE //tablet light button actually enables/disables the borg lamp
comp_light_luminosity = 0
- has_variants = FALSE
inserted_item = null
+ has_pda_programs = FALSE
starting_programs = list(
/datum/computer_file/program/messenger,
)
@@ -271,14 +298,14 @@
///Ref to the silicon we're installed in. Set by the silicon itself during its creation.
var/mob/living/silicon/silicon_owner
-/obj/item/modular_computer/tablet/integrated/cyborg
+/obj/item/modular_computer/pda/silicon/cyborg
starting_programs = list(
/datum/computer_file/program/computerconfig,
/datum/computer_file/program/filemanager,
/datum/computer_file/program/robotact,
)
-/obj/item/modular_computer/tablet/integrated/Initialize(mapload)
+/obj/item/modular_computer/pda/silicon/Initialize(mapload)
. = ..()
vis_flags |= VIS_INHERIT_ID
silicon_owner = loc
@@ -287,21 +314,16 @@
stack_trace("[type] initialized outside of a silicon, deleting.")
return INITIALIZE_HINT_QDEL
-/obj/item/modular_computer/tablet/integrated/install_default_programs()
- for(var/programs in starting_programs)
- var/datum/computer_file/program/program_type = new programs
- store_file(program_type)
-
-/obj/item/modular_computer/tablet/integrated/Destroy()
+/obj/item/modular_computer/pda/silicon/Destroy()
silicon_owner = null
return ..()
-/obj/item/modular_computer/tablet/integrated/turn_on(mob/user, open_ui = FALSE)
+/obj/item/modular_computer/pda/silicon/turn_on(mob/user, open_ui = FALSE)
if(silicon_owner?.stat != DEAD)
return ..()
return FALSE
-/obj/item/modular_computer/tablet/integrated/get_ntnet_status(specific_action = 0)
+/obj/item/modular_computer/pda/silicon/get_ntnet_status(specific_action = 0)
//No borg found
if(!silicon_owner)
return FALSE
@@ -328,7 +350,7 @@
* the new copy (such as due to lack of space), the proc will crash with an error.
* RoboTact is supposed to be undeletable, so these will create runtime messages.
*/
-/obj/item/modular_computer/tablet/integrated/proc/get_robotact()
+/obj/item/modular_computer/pda/silicon/proc/get_robotact()
if(robotact)
return robotact
robotact = find_file_by_name("robotact")
@@ -343,7 +365,7 @@
CRASH("Cyborg [silicon_owner]'s tablet hard drive rejected recieving a new copy of the self-manage app. To fix, check the hard drive's space remaining. Please make a bug report about this.")
//Makes the light settings reflect the borg's headlamp settings
-/obj/item/modular_computer/tablet/integrated/cyborg/ui_data(mob/user)
+/obj/item/modular_computer/pda/silicon/cyborg/ui_data(mob/user)
. = ..()
.["has_light"] = TRUE
if(iscyborg(silicon_owner))
@@ -352,7 +374,7 @@
.["comp_light_color"] = robo.lamp_color
//Makes the flashlight button affect the borg rather than the tablet
-/obj/item/modular_computer/tablet/integrated/toggle_flashlight()
+/obj/item/modular_computer/pda/silicon/toggle_flashlight()
if(!silicon_owner || QDELETED(silicon_owner))
return FALSE
if(iscyborg(silicon_owner))
@@ -361,7 +383,7 @@
return TRUE
//Makes the flashlight color setting affect the borg rather than the tablet
-/obj/item/modular_computer/tablet/integrated/set_flashlight_color(color)
+/obj/item/modular_computer/pda/silicon/set_flashlight_color(color)
if(!silicon_owner || QDELETED(silicon_owner) || !color)
return FALSE
if(iscyborg(silicon_owner))
@@ -370,55 +392,15 @@
robo.toggle_headlamp(FALSE, TRUE)
return TRUE
-/obj/item/modular_computer/tablet/integrated/ui_state(mob/user)
+/obj/item/modular_computer/pda/silicon/ui_state(mob/user)
return GLOB.reverse_contained_state
-/obj/item/modular_computer/tablet/integrated/cyborg/syndicate
+/obj/item/modular_computer/pda/silicon/cyborg/syndicate
icon_state = "tablet-silicon-syndicate"
- icon_state_powered = "tablet-silicon-syndicate"
- icon_state_unpowered = "tablet-silicon-syndicate"
device_theme = "syndicate"
-
-/obj/item/modular_computer/tablet/integrated/cyborg/syndicate/Initialize(mapload)
+/obj/item/modular_computer/pda/silicon/cyborg/syndicate/Initialize(mapload)
. = ..()
if(iscyborg(silicon_owner))
var/mob/living/silicon/robot/robo = silicon_owner
robo.lamp_color = COLOR_RED //Syndicate likes it red
-
-// Round start tablets
-
-/obj/item/modular_computer/tablet/pda
- icon = 'icons/obj/modular_pda.dmi'
- icon_state = "pda"
- worn_icon_state = "pda"
-
- greyscale_config = /datum/greyscale_config/tablet
- greyscale_colors = "#999875#a92323"
-
- max_capacity = 64
- bypass_state = TRUE
- allow_chunky = TRUE
-
- ///Static list of default PDA apps to install on Initialize.
- var/static/list/datum/computer_file/pda_programs = list(
- /datum/computer_file/program/messenger,
- /datum/computer_file/program/nt_pay,
- /datum/computer_file/program/notepad,
- )
-
-/obj/item/modular_computer/tablet/pda/install_default_programs()
- for(var/programs as anything in (default_programs + pda_programs + starting_programs))
- var/datum/computer_file/program/program_type = new programs
- store_file(program_type)
-
-/obj/item/modular_computer/tablet/pda/update_overlays()
- . = ..()
- if(computer_id_slot)
- . += mutable_appearance(initial(icon), "id_overlay")
- if(light_on)
- . += mutable_appearance(initial(icon), "light_overlay")
-
-/obj/item/modular_computer/tablet/pda/attack_ai(mob/user)
- to_chat(user, span_notice("It doesn't feel right to snoop around like that..."))
- return // we don't want ais or cyborgs using a private role tablet
diff --git a/code/modules/modular_computers/computers/item/role_tablet_presets.dm b/code/modules/modular_computers/computers/item/role_tablet_presets.dm
index 0b826b83fa6..192b592489d 100644
--- a/code/modules/modular_computers/computers/item/role_tablet_presets.dm
+++ b/code/modules/modular_computers/computers/item/role_tablet_presets.dm
@@ -2,7 +2,7 @@
* Command
*/
-/obj/item/modular_computer/tablet/pda/heads
+/obj/item/modular_computer/pda/heads
greyscale_config = /datum/greyscale_config/tablet/head
greyscale_colors = "#67A364#a92323"
starting_programs = list(
@@ -13,19 +13,23 @@
/datum/computer_file/program/budgetorders,
)
-/obj/item/modular_computer/tablet/pda/heads/captain
+/obj/item/modular_computer/pda/heads/captain
name = "captain PDA"
greyscale_config = /datum/greyscale_config/tablet/captain
greyscale_colors = "#2C7CB2#FF0000#FFFFFF#FFD55B"
inserted_item = /obj/item/pen/fountain/captain
-/obj/item/modular_computer/tablet/pda/heads/captain/Initialize(mapload)
+/obj/item/modular_computer/pda/heads/captain/Initialize(mapload)
. = ..()
RegisterSignal(src, COMSIG_TABLET_CHECK_DETONATE, PROC_REF(tab_no_detonate))
for(var/datum/computer_file/program/messenger/messenger_app in stored_files)
messenger_app.spam_mode = TRUE
-/obj/item/modular_computer/tablet/pda/heads/hop
+/obj/item/modular_computer/pda/heads/captain/proc/tab_no_detonate()
+ SIGNAL_HANDLER
+ return COMPONENT_TABLET_NO_DETONATE
+
+/obj/item/modular_computer/pda/heads/hop
name = "head of personnel PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#374f7e#a52f29#a52f29"
@@ -39,7 +43,7 @@
/datum/computer_file/program/job_management,
)
-/obj/item/modular_computer/tablet/pda/heads/hos
+/obj/item/modular_computer/pda/heads/hos
name = "head of security PDA"
greyscale_config = /datum/greyscale_config/tablet/head
greyscale_colors = "#EA3232#0000CC"
@@ -52,7 +56,7 @@
/datum/computer_file/program/records/security,
)
-/obj/item/modular_computer/tablet/pda/heads/ce
+/obj/item/modular_computer/pda/heads/ce
name = "chief engineer PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#D99A2E#69DBF3#FAFAFA"
@@ -67,7 +71,7 @@
/datum/computer_file/program/supermatter_monitor,
)
-/obj/item/modular_computer/tablet/pda/heads/cmo
+/obj/item/modular_computer/pda/heads/cmo
name = "chief medical officer PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#FAFAFA#000099#3F96CC"
@@ -81,7 +85,7 @@
/datum/computer_file/program/records/medical,
)
-/obj/item/modular_computer/tablet/pda/heads/rd
+/obj/item/modular_computer/pda/heads/rd
name = "research director PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#FAFAFA#000099#B347BC"
@@ -96,7 +100,7 @@
/datum/computer_file/program/signal_commander,
)
-/obj/item/modular_computer/tablet/pda/heads/quartermaster
+/obj/item/modular_computer/pda/heads/quartermaster
name = "quartermaster PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#D6B328#6506CA#927444"
@@ -116,7 +120,7 @@
* Security
*/
-/obj/item/modular_computer/tablet/pda/security
+/obj/item/modular_computer/pda/security
name = "security PDA"
greyscale_colors = "#EA3232#0000cc"
starting_programs = list(
@@ -125,7 +129,7 @@
/datum/computer_file/program/robocontrol,
)
-/obj/item/modular_computer/tablet/pda/detective
+/obj/item/modular_computer/pda/detective
name = "detective PDA"
greyscale_colors = "#805A2F#990202"
starting_programs = list(
@@ -135,7 +139,7 @@
/datum/computer_file/program/phys_scanner/medical,
)
-/obj/item/modular_computer/tablet/pda/warden
+/obj/item/modular_computer/pda/warden
name = "warden PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_split
greyscale_colors = "#EA3232#0000CC#363636"
@@ -149,7 +153,7 @@
* Engineering
*/
-/obj/item/modular_computer/tablet/pda/engineering
+/obj/item/modular_computer/pda/engineering
name = "engineering PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#D99A2E#69DBF3#E3DF3D"
@@ -157,7 +161,7 @@
/datum/computer_file/program/supermatter_monitor,
)
-/obj/item/modular_computer/tablet/pda/atmos
+/obj/item/modular_computer/pda/atmos
name = "atmospherics PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#EEDC43#00E5DA#727272"
@@ -170,7 +174,7 @@
* Science
*/
-/obj/item/modular_computer/tablet/pda/science
+/obj/item/modular_computer/pda/science
name = "scientist PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#000099#B347BC"
@@ -179,7 +183,7 @@
/datum/computer_file/program/signal_commander,
)
-/obj/item/modular_computer/tablet/pda/roboticist
+/obj/item/modular_computer/pda/roboticist
name = "roboticist PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_split
greyscale_colors = "#484848#0099CC#D94927"
@@ -187,7 +191,7 @@
/datum/computer_file/program/robocontrol,
)
-/obj/item/modular_computer/tablet/pda/geneticist
+/obj/item/modular_computer/pda/geneticist
name = "geneticist PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_split
greyscale_colors = "#FAFAFA#000099#0097CA"
@@ -200,7 +204,7 @@
* Medical
*/
-/obj/item/modular_computer/tablet/pda/medical
+/obj/item/modular_computer/pda/medical
name = "medical PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#000099#3F96CC"
@@ -210,7 +214,7 @@
/datum/computer_file/program/robocontrol,
)
-/obj/item/modular_computer/tablet/pda/medical/paramedic
+/obj/item/modular_computer/pda/medical/paramedic
name = "paramedic PDA"
starting_programs = list(
/datum/computer_file/program/phys_scanner/medical,
@@ -218,7 +222,7 @@
/datum/computer_file/program/radar/lifeline,
)
-/obj/item/modular_computer/tablet/pda/viro
+/obj/item/modular_computer/pda/viro
name = "virology PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_split
greyscale_colors = "#FAFAFA#355FAC#57C451"
@@ -228,7 +232,7 @@
/datum/computer_file/program/robocontrol,
)
-/obj/item/modular_computer/tablet/pda/chemist
+/obj/item/modular_computer/pda/chemist
name = "chemist PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#355FAC#EA6400"
@@ -240,7 +244,7 @@
* Supply
*/
-/obj/item/modular_computer/tablet/pda/cargo
+/obj/item/modular_computer/pda/cargo
name = "cargo technician PDA"
greyscale_colors = "#D6B328#6506CA"
stored_paper = 20
@@ -250,7 +254,7 @@
/datum/computer_file/program/robocontrol,
)
-/obj/item/modular_computer/tablet/pda/shaftminer
+/obj/item/modular_computer/pda/shaftminer
name = "shaft miner PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#927444#D6B328#6C3BA1"
@@ -262,7 +266,7 @@
* Service
*/
-/obj/item/modular_computer/tablet/pda/janitor
+/obj/item/modular_computer/pda/janitor
name = "janitor PDA"
greyscale_colors = "#933ea8#235AB2"
starting_programs = list(
@@ -270,12 +274,12 @@
/datum/computer_file/program/radar/custodial_locator,
)
-/obj/item/modular_computer/tablet/pda/chaplain
+/obj/item/modular_computer/pda/chaplain
name = "chaplain PDA"
greyscale_config = /datum/greyscale_config/tablet/chaplain
greyscale_colors = "#333333#D11818"
-/obj/item/modular_computer/tablet/pda/lawyer
+/obj/item/modular_computer/pda/lawyer
name = "lawyer PDA"
greyscale_colors = "#4C76C8#FFE243"
inserted_item = /obj/item/pen/fountain
@@ -283,25 +287,25 @@
/datum/computer_file/program/records/security,
)
-/obj/item/modular_computer/tablet/pda/lawyer/Initialize(mapload)
+/obj/item/modular_computer/pda/lawyer/Initialize(mapload)
. = ..()
for(var/datum/computer_file/program/messenger/messenger_app in stored_files)
messenger_app.spam_mode = TRUE
-/obj/item/modular_computer/tablet/pda/botanist
+/obj/item/modular_computer/pda/botanist
name = "botanist PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#50E193#E26F41#71A7CA"
-/obj/item/modular_computer/tablet/pda/cook
+/obj/item/modular_computer/pda/cook
name = "cook PDA"
greyscale_colors = "#FAFAFA#A92323"
-/obj/item/modular_computer/tablet/pda/bar
+/obj/item/modular_computer/pda/bar
name = "bartender PDA"
greyscale_colors = "#333333#C7C7C7"
-/obj/item/modular_computer/tablet/pda/clown
+/obj/item/modular_computer/pda/clown
name = "clown PDA"
inserted_disk = /obj/item/computer_disk/virus/clown
icon_state = "pda-clown"
@@ -309,26 +313,26 @@
greyscale_colors = null
inserted_item = /obj/item/toy/crayon/rainbow
-/obj/item/modular_computer/tablet/pda/clown/Initialize(mapload)
+/obj/item/modular_computer/pda/clown/Initialize(mapload)
. = ..()
AddComponent(/datum/component/slippery/clowning, 120, NO_SLIP_WHEN_WALKING, CALLBACK(src, PROC_REF(AfterSlip)), slot_whitelist = list(ITEM_SLOT_ID, ITEM_SLOT_BELT))
AddComponent(/datum/component/wearertargeting/sitcomlaughter, CALLBACK(src, PROC_REF(after_sitcom_laugh)))
-/obj/item/modular_computer/tablet/pda/clown/update_overlays()
+/obj/item/modular_computer/pda/clown/update_overlays()
. = ..()
. += mutable_appearance(icon, "pda_stripe_clown") // clowns have eyes that go over their screen, so it needs to be compiled last
-/obj/item/modular_computer/tablet/pda/clown/proc/AfterSlip(mob/living/carbon/human/M)
+/obj/item/modular_computer/pda/clown/proc/AfterSlip(mob/living/carbon/human/M)
if (istype(M) && (M.real_name != saved_identification))
var/obj/item/computer_disk/virus/clown/cart = inserted_disk
if(istype(cart) && cart.charges < 5)
cart.charges++
playsound(src,'sound/machines/ping.ogg',30,TRUE)
-/obj/item/modular_computer/tablet/pda/clown/proc/after_sitcom_laugh(mob/victim)
+/obj/item/modular_computer/pda/clown/proc/after_sitcom_laugh(mob/victim)
victim.visible_message("[src] lets out a burst of laughter!")
-/obj/item/modular_computer/tablet/pda/mime
+/obj/item/modular_computer/pda/mime
name = "mime PDA"
inserted_disk = /obj/item/computer_disk/virus/mime
greyscale_config = /datum/greyscale_config/tablet/mime
@@ -338,13 +342,13 @@
/datum/computer_file/program/emojipedia,
)
-/obj/item/modular_computer/tablet/pda/mime/Initialize(mapload)
+/obj/item/modular_computer/pda/mime/Initialize(mapload)
. = ..()
for(var/datum/computer_file/program/messenger/msg in stored_files)
msg.mime_mode = TRUE
msg.ringer_status = FALSE
-/obj/item/modular_computer/tablet/pda/curator
+/obj/item/modular_computer/pda/curator
name = "curator PDA"
desc = "A small experimental microcomputer."
greyscale_config = null
@@ -357,7 +361,7 @@
/datum/computer_file/program/newscaster,
)
-/obj/item/modular_computer/tablet/pda/curator/Initialize(mapload)
+/obj/item/modular_computer/pda/curator/Initialize(mapload)
. = ..()
for(var/datum/computer_file/program/messenger/msg in stored_files)
msg.ringer_status = FALSE
@@ -366,7 +370,7 @@
* No Department
*/
-/obj/item/modular_computer/tablet/pda/assistant
+/obj/item/modular_computer/pda/assistant
name = "assistant PDA"
starting_programs = list(
/datum/computer_file/program/bounty_board,
@@ -376,20 +380,20 @@
* Non-roles
*/
-/obj/item/modular_computer/tablet/pda/syndicate
+/obj/item/modular_computer/pda/syndicate
name = "military PDA"
greyscale_colors = "#891417#80FF80"
saved_identification = "John Doe"
saved_job = "Citizen"
device_theme = "syndicate"
-/obj/item/modular_computer/tablet/pda/syndicate/Initialize(mapload)
+/obj/item/modular_computer/pda/syndicate/Initialize(mapload)
. = ..()
var/datum/computer_file/program/messenger/msg = locate() in stored_files
if(msg)
msg.invisible = TRUE
-/obj/item/modular_computer/tablet/pda/clear
+/obj/item/modular_computer/pda/clear
name = "clear PDA"
icon_state = "pda-clear"
greyscale_config = null
diff --git a/code/modules/modular_computers/computers/item/tablet_presets.dm b/code/modules/modular_computers/computers/item/tablet_presets.dm
deleted file mode 100644
index 207899a8a34..00000000000
--- a/code/modules/modular_computers/computers/item/tablet_presets.dm
+++ /dev/null
@@ -1,6 +0,0 @@
-/// Given to Nuke Ops members.
-/obj/item/modular_computer/tablet/nukeops
- starting_programs = list(
- /datum/computer_file/program/ntnetdownload/syndicate,
- /datum/computer_file/program/radar/fission360,
- )
diff --git a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm b/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm
index 8c1dde8e425..0955125f814 100644
--- a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm
+++ b/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm
@@ -19,8 +19,8 @@
/datum/computer_file/program/revelation/proc/activate()
if(computer)
- if(istype(computer, /obj/item/modular_computer/tablet/integrated)) //If this is a borg's integrated tablet
- var/obj/item/modular_computer/tablet/integrated/modularInterface = computer
+ if(istype(computer, /obj/item/modular_computer/pda/silicon)) //If this is a borg's integrated tablet
+ var/obj/item/modular_computer/pda/silicon/modularInterface = computer
to_chat(modularInterface.silicon_owner,span_userdanger("SYSTEM PURGE DETECTED/"))
addtimer(CALLBACK(modularInterface.silicon_owner, TYPE_PROC_REF(/mob/living/silicon/robot/, death)), 2 SECONDS, TIMER_UNIQUE)
return
diff --git a/code/modules/modular_computers/file_system/programs/ntmessenger.dm b/code/modules/modular_computers/file_system/programs/ntmessenger.dm
index aee4e08b458..6873c6ba984 100644
--- a/code/modules/modular_computers/file_system/programs/ntmessenger.dm
+++ b/code/modules/modular_computers/file_system/programs/ntmessenger.dm
@@ -405,6 +405,6 @@
send_message(usr, list(locate(href_list["target"])))
if("mess_us_up")
if(!HAS_TRAIT(src, TRAIT_PDA_CAN_EXPLODE))
- var/obj/item/modular_computer/tablet/comp = computer
+ var/obj/item/modular_computer/pda/comp = computer
comp.explode(usr, from_message_menu = TRUE)
return
diff --git a/code/modules/modular_computers/file_system/programs/robotact.dm b/code/modules/modular_computers/file_system/programs/robotact.dm
index aaf9f4a0f32..4b2039a6244 100644
--- a/code/modules/modular_computers/file_system/programs/robotact.dm
+++ b/code/modules/modular_computers/file_system/programs/robotact.dm
@@ -14,12 +14,12 @@
program_icon = "terminal"
/datum/computer_file/program/robotact/on_start(mob/living/user)
- if(!istype(computer, /obj/item/modular_computer/tablet/integrated))
+ if(!istype(computer, /obj/item/modular_computer/pda/silicon))
to_chat(user, span_warning("A warning flashes across \the [computer]: Device Incompatible."))
return FALSE
. = ..()
if(.)
- var/obj/item/modular_computer/tablet/integrated/tablet = computer
+ var/obj/item/modular_computer/pda/silicon/tablet = computer
if(tablet.device_theme == "syndicate")
program_icon_state = "command-syndicate"
return TRUE
@@ -31,7 +31,7 @@
return data
//Implied, since we can't run on non tablets
- var/obj/item/modular_computer/tablet/integrated/tablet = computer
+ var/obj/item/modular_computer/pda/silicon/tablet = computer
var/mob/living/silicon/robot/cyborg = tablet.silicon_owner
@@ -77,7 +77,7 @@
return data
var/mob/living/silicon/robot/cyborg = user
//Implied
- var/obj/item/modular_computer/tablet/integrated/tablet = computer
+ var/obj/item/modular_computer/pda/silicon/tablet = computer
data["Laws"] = cyborg.laws.get_law_list(TRUE, TRUE, FALSE)
data["borgLog"] = tablet.borglog
@@ -89,7 +89,7 @@
if(.)
return
//Implied type, memes
- var/obj/item/modular_computer/tablet/integrated/tablet = computer
+ var/obj/item/modular_computer/pda/silicon/tablet = computer
var/mob/living/silicon/robot/cyborg = tablet.silicon_owner
switch(action)
@@ -148,9 +148,9 @@
* law changes and borg log additions.
*/
/datum/computer_file/program/robotact/proc/force_full_update()
- if(!istype(computer, /obj/item/modular_computer/tablet/integrated))
+ if(!istype(computer, /obj/item/modular_computer/pda/silicon))
return
- var/obj/item/modular_computer/tablet/integrated/tablet = computer
+ var/obj/item/modular_computer/pda/silicon/tablet = computer
var/datum/tgui/active_ui = SStgui.get_open_ui(tablet.silicon_owner, src)
if(active_ui)
active_ui.send_full_update()
diff --git a/code/modules/modular_computers/laptop_vendor.dm b/code/modules/modular_computers/laptop_vendor.dm
index 935d7e24364..0bd04e0b358 100644
--- a/code/modules/modular_computers/laptop_vendor.dm
+++ b/code/modules/modular_computers/laptop_vendor.dm
@@ -9,8 +9,8 @@
density = TRUE
// The actual laptop/tablet
- var/obj/item/modular_computer/laptop/fabricated_laptop = null
- var/obj/item/modular_computer/tablet/fabricated_tablet = null
+ var/obj/item/modular_computer/laptop/fabricated_laptop
+ var/obj/item/modular_computer/pda/fabricated_tablet
// Utility vars
var/state = 0 // 0: Select device type, 1: Select loadout, 2: Payment, 3: Thankyou screen
diff --git a/code/modules/research/designs/autolathe_designs.dm b/code/modules/research/designs/autolathe_designs.dm
index c8f315a0298..90cd2c51fa3 100644
--- a/code/modules/research/designs/autolathe_designs.dm
+++ b/code/modules/research/designs/autolathe_designs.dm
@@ -1543,18 +1543,6 @@
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
-/datum/design/tablet
- name = "Tablet Frame"
- id = "tablet"
- build_type = AUTOLATHE | PROTOLATHE | AWAY_LATHE
- materials = list(/datum/material/iron = 2000, /datum/material/glass = 1000)
- build_path = /obj/item/modular_computer/tablet
- category = list(
- RND_CATEGORY_INITIAL,
- RND_CATEGORY_MODULAR_COMPUTERS + RND_SUBCATEGORY_MODULAR_COMPUTERS_FRAMES
- )
- departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
-
/datum/design/slime_scanner
name = "Slime Scanner"
id = "slime_scanner"
diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm
index 6d272dd1bc5..b23674773b8 100644
--- a/code/modules/research/techweb/all_nodes.dm
+++ b/code/modules/research/techweb/all_nodes.dm
@@ -111,7 +111,6 @@
"status_display_frame",
"sticky_tape",
"syrup_bottle",
- "tablet",
"tape",
"tech_disk",
"timer",
diff --git a/code/modules/unit_tests/create_and_destroy.dm b/code/modules/unit_tests/create_and_destroy.dm
index d9f1af33f69..fe08d5c66e2 100644
--- a/code/modules/unit_tests/create_and_destroy.dm
+++ b/code/modules/unit_tests/create_and_destroy.dm
@@ -37,7 +37,7 @@ GLOBAL_VAR_INIT(running_create_and_destroy, FALSE)
ignore += typesof(/turf/baseturf_skipover)
ignore += typesof(/turf/baseturf_bottom)
//This demands a borg, so we'll let if off easy
- ignore += typesof(/obj/item/modular_computer/tablet/integrated)
+ ignore += typesof(/obj/item/modular_computer/pda/silicon)
//This one demands a computer, ditto
ignore += typesof(/obj/item/modular_computer/processor)
//Very finiky, blacklisting to make things easier
diff --git a/code/modules/vending/cartridge.dm b/code/modules/vending/cartridge.dm
index 82ddbcbd663..dabf334c1f9 100644
--- a/code/modules/vending/cartridge.dm
+++ b/code/modules/vending/cartridge.dm
@@ -13,7 +13,7 @@
/obj/item/computer_disk/ordnance = 10,
/obj/item/computer_disk/quartermaster = 10,
/obj/item/computer_disk/command/captain = 3,
- /obj/item/modular_computer/tablet/pda/heads = 10,
+ /obj/item/modular_computer/pda/heads = 10,
)
refill_canister = /obj/item/vending_refill/cart
default_price = PAYCHECK_COMMAND
diff --git a/code/modules/vending/modularpc.dm b/code/modules/vending/modularpc.dm
index 98d371fbabc..415329366c7 100644
--- a/code/modules/vending/modularpc.dm
+++ b/code/modules/vending/modularpc.dm
@@ -10,7 +10,7 @@
products = list(
/obj/item/computer_disk = 8,
/obj/item/modular_computer/laptop = 4,
- /obj/item/modular_computer/tablet = 4,
+ /obj/item/modular_computer/pda = 4,
)
premium = list(
/obj/item/pai_card = 2,
diff --git a/icons/obj/modular_pda.dmi b/icons/obj/modular_pda.dmi
index 0418f467b51..8f9230ce770 100644
Binary files a/icons/obj/modular_pda.dmi and b/icons/obj/modular_pda.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 5ecf3bc1c6c..0d7a3b1b209 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -3937,10 +3937,9 @@
#include "code\modules\modular_computers\computers\item\computer_ui.dm"
#include "code\modules\modular_computers\computers\item\laptop.dm"
#include "code\modules\modular_computers\computers\item\laptop_presets.dm"
+#include "code\modules\modular_computers\computers\item\pda.dm"
#include "code\modules\modular_computers\computers\item\processor.dm"
#include "code\modules\modular_computers\computers\item\role_tablet_presets.dm"
-#include "code\modules\modular_computers\computers\item\tablet.dm"
-#include "code\modules\modular_computers\computers\item\tablet_presets.dm"
#include "code\modules\modular_computers\computers\item\disks\computer_disk.dm"
#include "code\modules\modular_computers\computers\item\disks\role_disks.dm"
#include "code\modules\modular_computers\computers\item\disks\virus_disk.dm"
diff --git a/tools/UpdatePaths/Scripts/71507_tablet_to_pda.txt b/tools/UpdatePaths/Scripts/71507_tablet_to_pda.txt
new file mode 100644
index 00000000000..8d1d6f1ea6b
--- /dev/null
+++ b/tools/UpdatePaths/Scripts/71507_tablet_to_pda.txt
@@ -0,0 +1,6 @@
+# updates pda subtypes to their new type, and deletes base pdas as they were removed.
+
+/obj/item/modular_computer/tablet : @DELETE
+/obj/item/modular_computer/tablet/nukeops : /obj/item/modular_computer/pda/nukeops{@OLD}
+/obj/item/modular_computer/tablet/integrated/@SUBTYPES : /obj/item/modular_computer/pda/silicon/@SUBTYPES{@OLD}
+/obj/item/modular_computer/tablet/pda/@SUBTYPES : /obj/item/modular_computer/pda/@SUBTYPES{@OLD}