From 775fd5e96c4e2fe11a63ffa8f35a799cb3a5b93c Mon Sep 17 00:00:00 2001 From: keslik <114428094+keslik1313@users.noreply.github.com> Date: Fri, 16 Aug 2024 23:46:26 +0300 Subject: [PATCH] [Tweak] Security statuses micro update (#629) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Tweak: Sec statuses update WIP * fix: Для новых статусов требуется указать причину * Fix: for review --- .../CriminalRecordsConsoleWindow.xaml.cs | 12 ++++- .../_White/SecurityHud/SecurityHudBUI.cs | 18 +++++-- .../Systems/CriminalRecordsConsoleSystem.cs | 26 ++++++++-- .../_White/SecurityHud/SecurityHudSystem.cs | 6 ++- .../SharedCriminalRecordsConsoleSystem.cs | 6 ++- Content.Shared/Security/SecurityStatus.cs | 10 ++-- .../criminal-records/criminal-records.ftl | 24 ++++++--- .../Locale/ru-RU/white/criminal-console.ftl | 11 ++-- .../Prototypes/StatusEffects/security.yml | 48 ++++++++++++++---- Resources/Prototypes/_White/sechud.yml | 6 ++- .../Interface/records.rsi/hud_demote.png | Bin 0 -> 129 bytes .../Interface/records.rsi/hud_execute.png | Bin 0 -> 183 bytes .../records.rsi/hud_incarcerated.png | Bin 0 -> 139 bytes .../Interface/records.rsi/hud_monitoring.png | Bin 0 -> 149 bytes .../Interface/records.rsi/hud_paroled.png | Bin 0 -> 157 bytes .../Interface/records.rsi/hud_released.png | Bin 0 -> 130 bytes .../Interface/records.rsi/hud_search.png | Bin 0 -> 139 bytes .../Interface/records.rsi/hud_suspected.png | Bin 0 -> 141 bytes .../Interface/records.rsi/hud_wanted.png | Bin 0 -> 158 bytes .../White/Interface/records.rsi/meta.json | 26 +++++++--- .../Interface/securityhud.rsi/demote.png | Bin 0 -> 192 bytes .../Interface/securityhud.rsi/discharged.png | Bin 225 -> 0 bytes .../Interface/securityhud.rsi/execute.png | Bin 0 -> 290 bytes .../White/Interface/securityhud.rsi/meta.json | 25 +++++++-- .../Interface/securityhud.rsi/monitoring.png | Bin 0 -> 204 bytes .../Interface/securityhud.rsi/released.png | Bin 202 -> 191 bytes .../Interface/securityhud.rsi/search.png | Bin 0 -> 289 bytes 27 files changed, 172 insertions(+), 46 deletions(-) create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_demote.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_execute.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_incarcerated.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_monitoring.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_paroled.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_released.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_search.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_suspected.png create mode 100644 Resources/Textures/White/Interface/records.rsi/hud_wanted.png create mode 100644 Resources/Textures/White/Interface/securityhud.rsi/demote.png delete mode 100644 Resources/Textures/White/Interface/securityhud.rsi/discharged.png create mode 100644 Resources/Textures/White/Interface/securityhud.rsi/execute.png create mode 100644 Resources/Textures/White/Interface/securityhud.rsi/monitoring.png create mode 100644 Resources/Textures/White/Interface/securityhud.rsi/search.png diff --git a/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs b/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs index b259e08e72..a2345c2370 100644 --- a/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs +++ b/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs @@ -217,9 +217,19 @@ public sealed partial class CriminalRecordsConsoleWindow : FancyWindow } } + private HashSet AllowedStatusList = new HashSet() + { + SecurityStatus.Wanted, + SecurityStatus.Suspected, + SecurityStatus.Demote, + SecurityStatus.Monitoring, + SecurityStatus.Paroled, + SecurityStatus.Execute + }; + private void SetStatus(SecurityStatus status) { - if (status == SecurityStatus.Wanted || status == SecurityStatus.Suspected) + if (AllowedStatusList.Contains(status)) // WD end { GetReason(status); return; diff --git a/Content.Client/_White/SecurityHud/SecurityHudBUI.cs b/Content.Client/_White/SecurityHud/SecurityHudBUI.cs index 9e6e1de437..f154850682 100644 --- a/Content.Client/_White/SecurityHud/SecurityHudBUI.cs +++ b/Content.Client/_White/SecurityHud/SecurityHudBUI.cs @@ -15,31 +15,43 @@ public sealed class SecurityHudBUI : BoundUserInterface private readonly Dictionary _names = new() { - { "SecurityIconDischarged", Loc.GetString("criminal-records-status-discharged")}, + { "SecurityIconDemote", Loc.GetString("criminal-records-status-demote")}, // WD start { "SecurityIconParoled", Loc.GetString("criminal-records-status-paroled")}, { "SecurityIconSuspected", Loc.GetString("criminal-records-status-suspected")}, { "SecurityIconWanted", Loc.GetString("criminal-records-status-wanted")}, { "SecurityIconIncarcerated", Loc.GetString("criminal-records-status-detained")}, + { "SecurityIconExecute", Loc.GetString("criminal-records-status-execute")}, + { "SecurityIconMonitoring", Loc.GetString("criminal-records-status-monitoring")}, + { "SecurityIconReleased", Loc.GetString("criminal-records-status-released")}, + { "SecurityIconSearch", Loc.GetString("criminal-records-status-search")}, { "CriminalRecordIconRemove", Loc.GetString("security-hud-remove-status") } }; private readonly Dictionary _icons = new() { - { "SecurityIconDischarged", "/Textures/White/Interface/securityhud.rsi/discharged.png" }, + { "SecurityIconDemote", "/Textures/White/Interface/securityhud.rsi/demote.png" }, { "SecurityIconParoled", "/Textures/White/Interface/securityhud.rsi/paroled.png" }, { "SecurityIconSuspected", "/Textures/White/Interface/securityhud.rsi/suspected.png" }, { "SecurityIconWanted", "/Textures/White/Interface/securityhud.rsi/wanted.png" }, { "SecurityIconIncarcerated", "/Textures/White/Interface/securityhud.rsi/incarcerated.png" }, + { "SecurityIconExecute", "/Textures/White/Interface/securityhud.rsi/execute.png" }, + { "SecurityIconMonitoring", "/Textures/White/Interface/securityhud.rsi/monitoring.png" }, + { "SecurityIconReleased", "/Textures/White/Interface/securityhud.rsi/released.png" }, + { "SecurityIconSearch", "/Textures/White/Interface/securityhud.rsi/search.png" }, { "CriminalRecordIconRemove", "/Textures/White/Interface/securityhud.rsi/remove.png" } }; private readonly Dictionary _status = new() { - { "SecurityIconDischarged", SecurityStatus.Discharged }, + { "SecurityIconDemote", SecurityStatus.Demote }, { "SecurityIconParoled", SecurityStatus.Paroled }, { "SecurityIconSuspected", SecurityStatus.Suspected }, { "SecurityIconWanted", SecurityStatus.Wanted }, { "SecurityIconIncarcerated", SecurityStatus.Detained }, + { "SecurityIconExecute", SecurityStatus.Execute }, + { "SecurityIconMonitoring", SecurityStatus.Monitoring }, + { "SecurityIconReleased", SecurityStatus.Released }, + { "SecurityIconSearch", SecurityStatus.Search }, // WD end { "CriminalRecordIconRemove", SecurityStatus.None } }; diff --git a/Content.Server/CriminalRecords/Systems/CriminalRecordsConsoleSystem.cs b/Content.Server/CriminalRecords/Systems/CriminalRecordsConsoleSystem.cs index 63838ac0f2..549a3440c1 100644 --- a/Content.Server/CriminalRecords/Systems/CriminalRecordsConsoleSystem.cs +++ b/Content.Server/CriminalRecords/Systems/CriminalRecordsConsoleSystem.cs @@ -75,7 +75,11 @@ public sealed class CriminalRecordsConsoleSystem : SharedCriminalRecordsConsoleS { // prevent malf client violating wanted/reason nullability if (msg.Status == SecurityStatus.Wanted != (msg.Reason != null) && - msg.Status == SecurityStatus.Suspected != (msg.Reason != null)) + msg.Status == SecurityStatus.Suspected != (msg.Reason != null) && + msg.Status == SecurityStatus.Demote != (msg.Reason != null) && // WD start + msg.Status == SecurityStatus.Monitoring != (msg.Reason != null) && + msg.Status == SecurityStatus.Paroled != (msg.Reason != null) && + msg.Status == SecurityStatus.Execute != (msg.Reason != null)) // WD end return; if (!CheckSelected(ent, msg.Session, out var mob, out var key)) @@ -127,10 +131,18 @@ public sealed class CriminalRecordsConsoleSystem : SharedCriminalRecordsConsoleS (_, SecurityStatus.Suspected) => "suspected", // released on parole (_, SecurityStatus.Paroled) => "paroled", - // prisoner did their time - (_, SecurityStatus.Discharged) => "released", + // person was demoted + (_, SecurityStatus.Demote) => "demoted", // WD start // going from any other state to wanted, AOS or prisonbreak / lazy secoff never set them to released and they reoffended (_, SecurityStatus.Wanted) => "wanted", + // Person is xenos + (_, SecurityStatus.Execute) => "execute", + // Person requires supervision + (_, SecurityStatus.Monitoring) => "monitoring", + // Person works in cargo + (_, SecurityStatus.Search) => "search", + // Released + (_, SecurityStatus.Released) => "released", // person is no longer sus (SecurityStatus.Suspected, SecurityStatus.None) => "not-suspected", // going from wanted to none, must have been a mistake @@ -139,6 +151,14 @@ public sealed class CriminalRecordsConsoleSystem : SharedCriminalRecordsConsoleS (SecurityStatus.Detained, SecurityStatus.None) => "released", // criminal is no longer on parole (SecurityStatus.Paroled, SecurityStatus.None) => "not-parole", + // person dont require supervision + (SecurityStatus.Monitoring, SecurityStatus.None) => "not-monitoring", + // person was searched + (SecurityStatus.Search, SecurityStatus.None) => "not-search", + // person was demoted + (SecurityStatus.Demote, SecurityStatus.None) => "not-demoted", + // person is not xenos + (SecurityStatus.Execute, SecurityStatus.None) => "not-execute", // WD end // this is impossible _ => "not-wanted" }; diff --git a/Content.Server/_White/SecurityHud/SecurityHudSystem.cs b/Content.Server/_White/SecurityHud/SecurityHudSystem.cs index b05f5cdebc..96d4831ddd 100644 --- a/Content.Server/_White/SecurityHud/SecurityHudSystem.cs +++ b/Content.Server/_White/SecurityHud/SecurityHudSystem.cs @@ -136,8 +136,12 @@ public sealed class SecurityHudSystem : EntitySystem (_, SecurityStatus.Detained) => "detained", (_, SecurityStatus.Suspected) => "suspected", (_, SecurityStatus.Paroled) => "paroled", - (_, SecurityStatus.Discharged) => "released", + (_, SecurityStatus.Demote) => "demoted", // WD start (_, SecurityStatus.Wanted) => "wanted", + (_, SecurityStatus.Monitoring) => "monitoring", + (_, SecurityStatus.Released) => "released", + (_, SecurityStatus.Search) => "search", + (_, SecurityStatus.Execute) => "execute", (SecurityStatus.Suspected, SecurityStatus.None) => "not-suspected", (SecurityStatus.Wanted, SecurityStatus.None) => "not-wanted", (SecurityStatus.Detained, SecurityStatus.None) => "released", diff --git a/Content.Shared/CriminalRecords/Systems/SharedCriminalRecordsConsoleSystem.cs b/Content.Shared/CriminalRecords/Systems/SharedCriminalRecordsConsoleSystem.cs index b9b3177a30..ec6ac5445c 100644 --- a/Content.Shared/CriminalRecords/Systems/SharedCriminalRecordsConsoleSystem.cs +++ b/Content.Shared/CriminalRecords/Systems/SharedCriminalRecordsConsoleSystem.cs @@ -41,8 +41,12 @@ public abstract class SharedCriminalRecordsConsoleSystem : EntitySystem SecurityStatus.Paroled => "SecurityIconParoled", SecurityStatus.Wanted => "SecurityIconWanted", SecurityStatus.Detained => "SecurityIconIncarcerated", - SecurityStatus.Discharged => "SecurityIconDischarged", + SecurityStatus.Demote => "SecurityIconDemote", SecurityStatus.Suspected => "SecurityIconSuspected", + SecurityStatus.Execute => "SecurityIconExecute", // WD start + SecurityStatus.Released => "SecurityIconReleased", + SecurityStatus.Monitoring => "SecurityIconMonitoring", + SecurityStatus.Search => "SecurityIconSearch", // WD end _ => record.StatusIcon }; diff --git a/Content.Shared/Security/SecurityStatus.cs b/Content.Shared/Security/SecurityStatus.cs index c7fe3766f1..895d1d37e2 100644 --- a/Content.Shared/Security/SecurityStatus.cs +++ b/Content.Shared/Security/SecurityStatus.cs @@ -12,10 +12,14 @@ /// public enum SecurityStatus : byte { - None, - Suspected, + None, // WD start Wanted, + Suspected, + Demote, + Search, + Monitoring, Detained, Paroled, - Discharged + Released, + Execute // WD end } diff --git a/Resources/Locale/ru-RU/criminal-records/criminal-records.ftl b/Resources/Locale/ru-RU/criminal-records/criminal-records.ftl index 698d9ba4d8..f9b99bdb2f 100644 --- a/Resources/Locale/ru-RU/criminal-records/criminal-records.ftl +++ b/Resources/Locale/ru-RU/criminal-records/criminal-records.ftl @@ -9,13 +9,21 @@ criminal-records-console-no-record-found = Не найдены записи дл criminal-records-console-status = Статус criminal-records-status-none = Нет criminal-records-status-wanted = В розыске -criminal-records-status-detained = В заключении criminal-records-status-suspected = Подозреваемый -criminal-records-status-discharged = Освобождён -criminal-records-status-paroled = Досрочно освобождён +criminal-records-status-demote = Подлежит понижению +criminal-records-status-search = Обыскать +criminal-records-status-monitoring = Установить слежку +criminal-records-status-detained = Под стражей +criminal-records-status-paroled = Условно-досрочно освобождён +criminal-records-status-released = Освобождён +criminal-records-status-execute = Ликвидировать criminal-records-console-wanted-reason = [color=gray]Причина розыска[/color] criminal-records-console-suspected-reason = [color=gray]Причина подозрения[/color] +criminal-records-console-demote-reason = [color=gray]Причина понижения[/color] +criminal-records-console-monitoring-reason = [color=gray]Причина слежки[/color] +criminal-records-console-paroled-reason = [color=gray]Основание УДО[/color] +criminal-records-console-execute-reason = [color=gray]Причина устранения[/color] criminal-records-console-reason = Причина criminal-records-console-reason-placeholder = Например: {$placeholder} @@ -37,9 +45,13 @@ criminal-records-console-not-suspected = {$name} больше не под под criminal-records-console-detained = {$name} был задержан {$officer}. criminal-records-console-released = {$name} был освобожден {$officer}. criminal-records-console-not-wanted = {$name} больше не в розыске. -criminal-records-console-paroled = {$name} был отпущен условно-досрочно {$officer}. -criminal-records-console-not-parole = {$name} больше не условно-досрочно освобождённый. -criminal-records-console-unknown-officer = <неизвестный офицер> +criminal-records-console-paroled = {$name} был условно-досрочно освобождён {$officer} на основании {$reason}. +criminal-records-console-not-parole = {$name} нарушил условия условно-досрочного освобождения. +criminal-records-console-search = {$name} требуется обыскать по указу {$officer}. +criminal-records-console-monitoring = За {$name} требуется вести наблюдание по причине {$reason}. +criminal-records-console-execute = {$name} требуется ликвидировать по приказу {$officer} по причине {$reason}. +criminal-records-console-demoted = {$name} должен быть понижен в должности по указу {$officer} по причине {$reason}. +criminal-records-console-unknown-officer = <неопознанный офицер> ## Filters diff --git a/Resources/Locale/ru-RU/white/criminal-console.ftl b/Resources/Locale/ru-RU/white/criminal-console.ftl index 229d0eed5b..cf0d51977e 100644 --- a/Resources/Locale/ru-RU/white/criminal-console.ftl +++ b/Resources/Locale/ru-RU/white/criminal-console.ftl @@ -9,16 +9,17 @@ criminal-login-in-desc = Войти criminal-login-info = ID: { $user } criminal-login-hint = Вставьте ID карту в консоль, нажав на "{ $name }" (нужно держать ID карту в руке) criminal-login-warn = WARNING: Доступ к системе осуществляется уровнем доступа "службы безопасности" -criminal-status-released = Освобожден -criminal-status-discharged = Выписан -criminal-status-parolled = Закодирован +criminal-status-released = Освобождён +criminal-status-demote = Понизить +criminal-status-parolled = Условно-досрочно освобождён criminal-status-suspected = Подозреваемый criminal-status-wanted = В розыске criminal-status-incarcerated = Заключенный +criminal-status-execute = Ликвидировать +criminal-status-monitoring = Наблюдать +criminal-status-search = Обыскать criminal-targetchannel-set-released = { $target } освобожден(а). criminal-targetchannel-set-released-reason = { $target } освобожден(а). Заметка: { $reason }. -criminal-targetchannel-set-discharged = { $target } выписан(а). -criminal-targetchannel-set-discharged-reason = { $target } выписан(а). Заметка: { $reason }. criminal-targetchannel-set-parolled = { $target } закодирован(а). criminal-targetchannel-set-parolled-reason = { $target } закодирован(а). Заметка: { $reason }. criminal-targetchannel-set-suspected = { $target } под подозрением. diff --git a/Resources/Prototypes/StatusEffects/security.yml b/Resources/Prototypes/StatusEffects/security.yml index dcf08fbb09..e4c5a15fc9 100644 --- a/Resources/Prototypes/StatusEffects/security.yml +++ b/Resources/Prototypes/StatusEffects/security.yml @@ -6,44 +6,72 @@ locationPreference: Right isShaded: true -- type: statusIcon +- type: statusIcon # WD start parent: SecurityIcon - id: SecurityIconDischarged + id: SecurityIconDemote icon: - sprite: /Textures/Interface/Misc/security_icons.rsi - state: hud_discharged + sprite: /Textures/White/Interface/records.rsi + state: hud_demote - type: statusIcon parent: SecurityIcon id: SecurityIconIncarcerated icon: - sprite: /Textures/Interface/Misc/security_icons.rsi + sprite: /Textures/White/Interface/records.rsi state: hud_incarcerated - type: statusIcon parent: SecurityIcon id: SecurityIconParoled icon: - sprite: /Textures/Interface/Misc/security_icons.rsi + sprite: /Textures/White/Interface/records.rsi state: hud_paroled - type: statusIcon parent: SecurityIcon id: SecurityIconSuspected icon: - sprite: /Textures/Interface/Misc/security_icons.rsi + sprite: /Textures/White/Interface/records.rsi state: hud_suspected - type: statusIcon parent: SecurityIcon id: SecurityIconWanted icon: - sprite: /Textures/Interface/Misc/security_icons.rsi + sprite: /Textures/White/Interface/records.rsi state: hud_wanted +- type: statusIcon + parent: SecurityIcon + id: SecurityIconExecute + icon: + sprite: /Textures/White/Interface/records.rsi + state: hud_execute + +- type: statusIcon + parent: SecurityIcon + id: SecurityIconMonitoring + icon: + sprite: /Textures/White/Interface/records.rsi + state: hud_monitoring + +- type: statusIcon + parent: SecurityIcon + id: SecurityIconReleased + icon: + sprite: /Textures/White/Interface/records.rsi + state: hud_released + +- type: statusIcon + parent: SecurityIcon + id: SecurityIconSearch + icon: + sprite: /Textures/White/Interface/records.rsi + state: hud_search + - type: statusIcon parent: SecurityIcon id: CriminalRecordIconRemove icon: - sprite: /Textures/Interface/Misc/security_icons.rsi - state: hud_discharged + sprite: /Textures/White/Interface/records.rsi + state: hud_demote # WD end diff --git a/Resources/Prototypes/_White/sechud.yml b/Resources/Prototypes/_White/sechud.yml index e994e94662..3564fd68c8 100644 --- a/Resources/Prototypes/_White/sechud.yml +++ b/Resources/Prototypes/_White/sechud.yml @@ -8,11 +8,15 @@ access: [["Security"]] - type: SecurityHud criminalrecords: - - SecurityIconDischarged + - SecurityIconDemote - SecurityIconParoled - SecurityIconSuspected - SecurityIconWanted - SecurityIconIncarcerated + - SecurityIconExecute + - SecurityIconMonitoring + - SecurityIconSearch + - SecurityIconReleased - CriminalRecordIconRemove - type: UserInterface interfaces: diff --git a/Resources/Textures/White/Interface/records.rsi/hud_demote.png b/Resources/Textures/White/Interface/records.rsi/hud_demote.png new file mode 100644 index 0000000000000000000000000000000000000000..aebef2fb75de81c8d7d342f9016be0a487b440d3 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFq9-c0aArj%qIcW($;!htqaH4^= z;faK!3zu2sf*UdlY}zY+{+D+?$?fLm!>ZsYF@Yf~i}6#S&w?1nP0kPU7&x0`y3Q&q byk}-e-lI8PWM=<*pqUJwu6{1-oD!M<&1)w^ literal 0 HcmV?d00001 diff --git a/Resources/Textures/White/Interface/records.rsi/hud_execute.png b/Resources/Textures/White/Interface/records.rsi/hud_execute.png new file mode 100644 index 0000000000000000000000000000000000000000..42b6c1005352a08f31753394eeeb7abe3d03fd79 GIT binary patch literal 183 zcmeAS@N?(olHy`uVBq!ia0vp^5|Ns1kmR45R`ZM$Gd3t(!coMjG&6v6I*Mc|i z<2P7%$fYQr5i~IKsWS|aOHnu@Bw;PKVtxkqhMf#InI_nrNDydVJLnNjq zujsn?|9k^;$k7-7(~}Ys5^mgh_US(eT+Czx0=1Z3fjtLVAB5#(m8TwX6HaAyWbH91 hPnet&T{KaUVS%~zgZnc-y8#Vk@O1TaS?83{1OUuqF_!=U literal 0 HcmV?d00001 diff --git a/Resources/Textures/White/Interface/records.rsi/hud_monitoring.png b/Resources/Textures/White/Interface/records.rsi/hud_monitoring.png new file mode 100644 index 0000000000000000000000000000000000000000..a60e07f34844824535550c4a9bca02b84b1a4136 GIT binary patch literal 149 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqF`h1tArj%qDLsF_|Nmd4=EkPO zpmLl;>58x7r|aB`t4w|?emQ&jzvKfhhe0w045@xw!q0*qLJ(eVkVR*JkeV-P3e{gO6>3pTq$J#w84r2i7!3H?Ct?BC%ve n=%ksAf=3QMy*f+$zXapisb(RUzD_jgTe~DWM4f(X}qh literal 0 HcmV?d00001 diff --git a/Resources/Textures/White/Interface/records.rsi/hud_suspected.png b/Resources/Textures/White/Interface/records.rsi/hud_suspected.png new file mode 100644 index 0000000000000000000000000000000000000000..8e04eb21f43459330ca7109ee238472ef61f0f7a GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqjKx9jP7LeL$-D$|+&x_!LnNjq z=S)oab-sapg8>k*xD_N!joJT*omqHOL)iatwzdD(Yjg#OBrvmxZcr#*CtCE_oN>0a lgrtOoL_y`&XGiVb7>?Z+*i}}{^d4v=gQu&X%Q~loCICj$D&hbD literal 0 HcmV?d00001 diff --git a/Resources/Textures/White/Interface/records.rsi/hud_wanted.png b/Resources/Textures/White/Interface/records.rsi/hud_wanted.png new file mode 100644 index 0000000000000000000000000000000000000000..2df379d112042b9e741caf354210cd87f3c72031 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqjKx9jP7LeL$-D$|B0OCjLnNlA z_8sIsV8Fw~zuNi9ZP86h;V*4s7v9ftl=oFS>gcphP~kOGctGmW&zBhk4yu&(GH93` zjgvYiyRy#-{_2`Mls0nvsz4paW_S^wXmjw!}C pFXY}e8>{nsmuI`EKFDX{?b@*{GT_bZbwDREc)I$ztaD0e0szMoMj!wH literal 0 HcmV?d00001 diff --git a/Resources/Textures/White/Interface/securityhud.rsi/discharged.png b/Resources/Textures/White/Interface/securityhud.rsi/discharged.png deleted file mode 100644 index 3206bf0693fadc99bcd295be284cdc3ed130fa9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 225 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}vproLLn2y} zQ+obR|p00i_>zopr0MgJCm-5@QU!S7`EP23=w)!JkE;bSJia1(er*EJCz zYZLt}1H%ApN4gxlG1O#A{qO{?0^S{kkb0W{5QsbTxUU&Nf+(4*0DKc77=nS;!V_SG zQFE_J1JouVt;StwRR9`@(#EI(7zk-yn*b1q+F9}608-lHFm`zbsCfW+G=!|V1VLv2 zIb@KU07U^X!e}iFfC|RpLwcG4YJ1-Gb6hi*K476&Jpt6b1VIB(7eJyIo&cdqm1Y3f o?%qEtZ|9Qhb#~XD0Npw`|-;UcnFL-03!_$0)*leJq@ArnWE76 zq&k4wVAKI5rvXySiP3Uk&^utX92j)~BYMAJv`skT9KgaW$R~gj={HaRr)ggi-M#@2 cfl&tl0OAH3A#b3vi2wiq07*qoM6N<$f?AJd&K7RM-WKL~aVUTsc%@`l{igfJBrcgV)ZI^KA8z$e zhpfP!JjR8e8Zy`$c+}KYI9k~}`4pC|I{eflM$yrn{Q(!}D(i-TkcI6mzA_G7${EiX zl4Ko&*##bR%(8Bnpd6(-vol**Xfo@^l?SKVzI?_2)D_O2P|VWCe4%;bHQA}N#Q#f7 leCzVCLB&nh;k^I@LwnFo-;MT57Xtmv;OXk;vd$@?2>|-AYSjP$ literal 0 HcmV?d00001