From 85477f03cdb037206f278a5c0ec610530ff8dcea Mon Sep 17 00:00:00 2001
From: Killian <49700375+KillianKirilenko@users.noreply.github.com>
Date: Fri, 11 Nov 2022 19:25:04 +0000
Subject: [PATCH] employment records for ar-bs
---
.../mob/living/carbon/human/examine.dm | 20 +++++
.../mob/living/carbon/human/examine_vr.dm | 3 +
code/modules/mob/living/carbon/human/human.dm | 81 +++++++++++++++++++
3 files changed, 104 insertions(+)
diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm
index 9f558dde6c3..a43ba6a11ef 100644
--- a/code/modules/mob/living/carbon/human/examine.dm
+++ b/code/modules/mob/living/carbon/human/examine.dm
@@ -422,6 +422,24 @@
msg += "Physical status: \[[medical]\]"
msg += "Medical records: \[View\] \[Add comment\]"
+ if(hasHUD(user,"best"))
+ var/perpname = name
+ var/employee = "None"
+
+ if(wear_id)
+ if(istype(wear_id, /obj/item/weapon/card/id))
+ var/obj/item/weapon/card/id/I = wear_id
+ perpname = I.registered_name
+ else if(istype(wear_id, /obj/item/device/pda))
+ var/obj/item/device/pda/P = wear_id
+ perpname = P.owner
+
+ for (var/datum/data/record/R in data_core.general)
+ if (R.fields["name"] == perpname)
+ employee = R.fields["p_stat"]
+
+ msg += "Employment records: \[View\] \[Add comment\]"
+
var/flavor_text = print_flavor_text()
if(flavor_text)
@@ -457,6 +475,8 @@
return istype(H.glasses, /obj/item/clothing/glasses/hud/security) || istype(H.glasses, /obj/item/clothing/glasses/sunglasses/sechud)
if("medical")
return istype(H.glasses, /obj/item/clothing/glasses/hud/health)
+ // if("best")
+ // return istype(H.glasses, /obj/item/clothing/glasses/omnihud/all)
else if(istype(M, /mob/living/silicon/robot))
var/mob/living/silicon/robot/R = M
return R.sensor_type //VOREStation Add - Borgo sensors are now binary so just have them on or off
diff --git a/code/modules/mob/living/carbon/human/examine_vr.dm b/code/modules/mob/living/carbon/human/examine_vr.dm
index 1deab398f02..3ac7698e632 100644
--- a/code/modules/mob/living/carbon/human/examine_vr.dm
+++ b/code/modules/mob/living/carbon/human/examine_vr.dm
@@ -78,6 +78,9 @@
if("medical")
if(omni.mode == "med" || omni.mode == "best")
return TRUE
+ if("best")
+ if(omni.mode == "best")
+ return TRUE
return FALSE
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index 3d386315a87..db7b362f016 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -568,6 +568,87 @@
var/mob/living/silicon/robot/U = usr
R.fields[text("com_[counter]")] = text("Made by [U.name] ([U.modtype] [U.braintype]) on [time2text(world.realtime, "DDD MMM DD hh:mm:ss")], [game_year]
[t1]")
+ if (href_list["emprecord"])
+ if(hasHUD(usr,"best"))
+ var/perpname = "wot"
+ var/read = 0
+
+ var/obj/item/weapon/card/id/I = GetIdCard()
+ if(I)
+ perpname = I.registered_name
+ else
+ perpname = name
+ for (var/datum/data/record/E in data_core.general)
+ if (E.fields["name"] == perpname)
+ for (var/datum/data/record/R in data_core.general)
+ if (R.fields["id"] == E.fields["id"])
+ if(hasHUD(usr,"best"))
+ to_chat(usr, "Name: [R.fields["name"]]")
+ to_chat(usr, "Assignment: [R.fields["real_rank"]] ([R.fields["rank"]])")
+ to_chat(usr, "Home System: [R.fields["home_system"]]")
+ to_chat(usr, "Citizenship: [R.fields["citizenship"]]")
+ to_chat(usr, "Primary Employer: [R.fields["personal_faction"]]")
+ to_chat(usr, "Religious Beliefs: [R.fields["religion"]]")
+ to_chat(usr, "Notes: [R.fields["notes"]]")
+ to_chat(usr, "\[View Comment Log\]")
+ read = 1
+
+ if(!read)
+ to_chat(usr, "Unable to locate a data core entry for this person.")
+
+ if (href_list["emprecordComment"])
+ if(hasHUD(usr,"best"))
+ var/perpname = "wot"
+ var/read = 0
+
+ var/obj/item/weapon/card/id/I = GetIdCard()
+ if(I)
+ perpname = I.registered_name
+ else
+ perpname = name
+ for (var/datum/data/record/E in data_core.general)
+ if (E.fields["name"] == perpname)
+ for (var/datum/data/record/R in data_core.general)
+ if (R.fields["id"] == E.fields["id"])
+ if(hasHUD(usr,"best"))
+ read = 1
+ var/counter = 1
+ while(R.fields[text("com_[]", counter)])
+ to_chat(usr, "[R.fields[text("com_[]", counter)]]")
+ counter++
+ if (counter == 1)
+ to_chat(usr, "No comment found")
+ to_chat(usr, "\[Add comment\]")
+
+ if(!read)
+ to_chat(usr, "Unable to locate a data core entry for this person.")
+
+ if (href_list["emprecordadd"])
+ if(hasHUD(usr,"best"))
+ var/perpname = "wot"
+ var/obj/item/weapon/card/id/I = GetIdCard()
+ if(I)
+ perpname = I.registered_name
+ else
+ perpname = name
+ for (var/datum/data/record/E in data_core.general)
+ if (E.fields["name"] == perpname)
+ for (var/datum/data/record/R in data_core.general)
+ if (R.fields["id"] == E.fields["id"])
+ if(hasHUD(usr,"best"))
+ var/t1 = sanitize(tgui_input_text(usr, "Add Comment:", "Emp. records", null, null, multiline = TRUE, prevent_enter = TRUE))
+ if ( !(t1) || usr.stat || usr.restrained() || !(hasHUD(usr,"best")) )
+ return
+ var/counter = 1
+ while(R.fields[text("com_[]", counter)])
+ counter++
+ if(istype(usr,/mob/living/carbon/human))
+ var/mob/living/carbon/human/U = usr
+ R.fields[text("com_[counter]")] = text("Made by [U.get_authentification_name()] ([U.get_assignment()]) on [time2text(world.realtime, "DDD MMM DD hh:mm:ss")], [game_year]
[t1]")
+ if(istype(usr,/mob/living/silicon/robot))
+ var/mob/living/silicon/robot/U = usr
+ R.fields[text("com_[counter]")] = text("Made by [U.name] ([U.modtype] [U.braintype]) on [time2text(world.realtime, "DDD MMM DD hh:mm:ss")], [game_year]
[t1]")
+
if (href_list["lookitem"])
var/obj/item/I = locate(href_list["lookitem"])
src.examinate(I)