diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 2eeba77af7..3543949283 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -271,7 +271,7 @@ ADMIN_VERB(PlayerNotes, R_ADMIN|R_MOD|R_EVENT|R_DEBUG, "Player Notes", "Access t ADMIN_VERB(show_player_info, R_ADMIN|R_MOD|R_EVENT|R_DEBUG, "Show Player Info", "Access the player info.", ADMIN_CATEGORY_INVESTIGATE) var/datum/tgui_module/player_notes_info/A = new(src) - A.tgui_interact(user) + A.tgui_interact(user.mob) ADMIN_VERB(access_news_network, R_ADMIN|R_EVENT, "Access Newscaster Network", "Allows you to view, add and edit news feeds.", ADMIN_CATEGORY_FUN_EVENT_KIT) var/dat = text("

Admin Newscaster Unit

") diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index f6487653d7..2b69f1fd9b 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1911,6 +1911,22 @@ return SSadmin_verbs.dynamic_invoke_verb(usr.client, /datum/admin_verb/despawn_player, carbon_target) + + // player info stuff + if(href_list["notes"]) + var/ckey = href_list["ckey"] + if(!ckey) + var/mob/M = locate(href_list["mob"]) + if(ismob(M)) + ckey = M.ckey + + switch(href_list["notes"]) + if("show") + var/datum/tgui_module/player_notes_info/A = new(src) + A.key = ckey + A.tgui_interact(usr) + if("list") + PlayerNotesPage(usr, text2num(href_list["index"])) return /mob/living/proc/can_centcom_reply() diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index cb1d51388d..55338fa535 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -97,7 +97,6 @@ GLOBAL_LIST_INIT(ai_verbs_default, list( var/max_multicams = 6 can_be_antagged = TRUE - var/idcard_type = /obj/item/card/id/synthetic /mob/living/silicon/ai/proc/add_ai_verbs() add_verb(src, GLOB.ai_verbs_default) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 41325f371b..b5fe9edd71 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -13,7 +13,7 @@ can_pull_size = ITEMSIZE_SMALL can_pull_mobs = MOB_PULL_SMALLER - var/idcard_type = /obj/item/card/id + idcard_type = /obj/item/card/id var/idaccessible = 0 var/network = "SS13" @@ -105,7 +105,6 @@ ////////////////////////////////////////////////////////////////////////////////////////////////// /mob/living/silicon/pai/Initialize(mapload) . = ..() - init_id(idcard_type) card = loc if(!istype(card)) diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station.dm b/code/modules/mob/living/silicon/robot/robot_modules/station.dm index f16740fb55..b7e0fcecdc 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station.dm @@ -71,6 +71,8 @@ I.canremove = FALSE /obj/item/robot_module/proc/create_equipment(var/mob/living/silicon/robot/robot) + if(!istype(robot.idcard, idcard_type)) + QDEL_NULL(robot.idcard) robot.init_id(idcard_type) return @@ -86,8 +88,10 @@ robot.set_default_module_icon() robot.scrubbing = FALSE + modules -= robot.idcard - QDEL_NULL(robot.idcard) + if(robot.idcard.loc != robot) + robot.idcard.forceMove(robot) robot.module = null qdel(src) diff --git a/code/modules/mob/living/silicon/robot/subtypes/malf_robot.dm b/code/modules/mob/living/silicon/robot/subtypes/malf_robot.dm index 8f3a27c161..8250698a1d 100644 --- a/code/modules/mob/living/silicon/robot/subtypes/malf_robot.dm +++ b/code/modules/mob/living/silicon/robot/subtypes/malf_robot.dm @@ -5,6 +5,7 @@ lawchannel = "State" braintype = "Drone" ui_theme = "malfunction" + idcard_type = /obj/item/card/id/lost /mob/living/silicon/robot/malf/init() aiCamera = new/obj/item/camera/siliconcam/robot_camera(src) diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index f14f686614..fc0b297dc3 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -28,11 +28,13 @@ var/hudmode = null fire_stack_decay_rate = -0.55 + var/idcard_type = /obj/item/card/id/synthetic /mob/living/silicon/Initialize(mapload, is_decoy = FALSE) . = ..() GLOB.silicon_mob_list += src if(!is_decoy) + init_id(idcard_type) add_language(LANGUAGE_GALCOM) apply_default_language(GLOB.all_languages[LANGUAGE_GALCOM]) init_subsystems() diff --git a/code/modules/mob/living/silicon/subystems.dm b/code/modules/mob/living/silicon/subystems.dm index d1d4f6096f..7c92fc036a 100644 --- a/code/modules/mob/living/silicon/subystems.dm +++ b/code/modules/mob/living/silicon/subystems.dm @@ -29,6 +29,7 @@ /mob/living/silicon/robot/syndicate register_alarms = 0 silicon_subsystems = list(/mob/living/silicon/proc/subsystem_law_manager) + idcard_type = /obj/item/card/id/syndicate /mob/living/silicon/proc/init_subsystems() alarm_monitor = new(src)