From ed7b84a9b5bcfa0ee4cdc3e17e9396325f24751e Mon Sep 17 00:00:00 2001
From: Hero010h <163765999+Hero010h@users.noreply.github.com>
Date: Tue, 31 Dec 2024 23:52:03 +0300
Subject: [PATCH 1/7] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B2=D1=8B=D0=B5=20(?=
=?UTF-8?q?=D0=BF=D0=BE)=D0=BF=D1=8B=D1=82=D0=BA=D0=B8=20=D1=81=D0=BE?=
=?UTF-8?q?=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=BF=D0=B0=D0=BD=D0=B5?=
=?UTF-8?q?=D0=BB=D0=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../UI/Tabs/AdminTab/AdminTab.xaml | 1 +
.../UI/Tabs/AdminTab/HoursPanel.xaml | 22 +++
.../UI/Tabs/AdminTab/HoursPanel.xaml.cs | 127 ++++++++++++++++++
3 files changed, 150 insertions(+)
create mode 100644 Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
create mode 100644 Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml b/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml
index 32ef267ba8..d7d1dee90c 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml
@@ -18,6 +18,7 @@
+
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
new file mode 100644
index 0000000000..ab726e6e19
--- /dev/null
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
new file mode 100644
index 0000000000..78c1fb1d66
--- /dev/null
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
@@ -0,0 +1,127 @@
+using System.Linq;
+using Content.Client.Administration.UI.CustomControls;
+using Content.Shared.Administration;
+using Content.Shared.Roles;
+using JetBrains.Annotations;
+using Robust.Client.AutoGenerated;
+using Robust.Client.Console;
+using Robust.Client.UserInterface.Controls;
+using Robust.Client.UserInterface.CustomControls;
+using Robust.Client.UserInterface.XAML;
+using Robust.Shared.Utility;
+using Robust.Client.Graphics;
+using Robust.Client.UserInterface;
+using Robust.Shared.Prototypes;
+using static Robust.Client.UserInterface.Controls.LineEdit;
+using Content.Shared.Players.PlayTimeTracking;
+
+namespace Content.Client.Administration.UI.Tabs.AdminTab;
+
+[GenerateTypedNameReferences]
+[UsedImplicitly]
+public sealed partial class HoursPanel : DefaultWindow
+{
+ private enum Roles
+ {
+ Overall,
+
+ //Write in alphabetical order!
+
+ AtmosphericTechnician,
+ Bartender,
+ Bomzh,
+ Borg,
+ Botanist,
+ Boxer,
+ Brigmedic,
+ Captain,
+ CargoTechnician,
+ Chaplain,
+ Chef,
+ Chemist,
+ ChiefEngineer,
+ ChiefMedicalOfficer,
+ Clown,
+ Detective,
+ HeadOfPersonnel,
+ HeadOfSecurity,
+ Inspector,
+ Janitor,
+ Lawyer,
+ Librarian,
+ Maid,
+ MedicalDoctor,
+ MedicalIntern,
+ Mime,
+ Musician,
+ Paramedic,
+ Passenger,
+ Psychologist,
+ Quartermaster,
+ Reporter,
+ ResearchAssistant,
+ ResearchDirector,
+ SalvageSpecialist,
+ Scientist,
+ SecurityCadet,
+ SecurityOfficer,
+ SeniorEngineer,
+ SeniorOfficer,
+ SeniorPhysician,
+ SeniorResearcher,
+ ServiceWorker,
+ StationEngineer,
+ TechnicalAssistant,
+ Visitor,
+ Warden,
+ Zookeeper
+ }
+
+
+ public HoursPanel()
+ {
+ RobustXamlLoader.Load(this);
+ PlayerList.OnSelectionChanged += OnPlayerSelectionChanged;
+ HourButton.OnPressed += _ => AddMinutes(60);
+ MinutesLine.OnTextChanged += UpdateButtonsText;
+
+ foreach (var proto in IoCManager.Resolve().EnumeratePrototypes())
+ {
+
+ }
+
+ }
+ private bool TryGetMinutes(string str, out uint minutes)
+ {
+ minutes = 0;
+ return string.IsNullOrWhiteSpace(str) || uint.TryParse(str, out minutes);
+ }
+ private void AddMinutes(uint add)
+ {
+ if (!TryGetMinutes(MinutesLine.Text, out var minutes))
+ return;
+
+ MinutesLine.Text = $"{minutes + add}";
+ UpdateButtons(minutes + add);
+ }
+ private void UpdateButtonsText(LineEditEventArgs obj)
+ {
+ if (!TryGetMinutes(obj.Text, out var minutes))
+ return;
+
+ UpdateButtons(minutes);
+ }
+ private void UpdateButtons(uint minutes)
+ {
+ HourButton.Text = $"+1h ({minutes / 60})";
+ }
+ private void OnNamesChanged()
+ {
+ SubmitButton.Disabled = string.IsNullOrEmpty(PlayerNameLine.Text);
+ }
+ private void OnPlayerSelectionChanged(PlayerInfo? player)
+ {
+ PlayerNameLine.Text = player?.Username ?? string.Empty;
+ OnNamesChanged();
+ }
+}
From 6a4ffdc80d3707c01677bc6d9ee7e77ea0c03aa1 Mon Sep 17 00:00:00 2001
From: Hero010h <163765999+Hero010h@users.noreply.github.com>
Date: Wed, 1 Jan 2025 05:12:23 +0300
Subject: [PATCH 2/7] =?UTF-8?q?=D0=9F=D1=80=D0=B5=D0=B7=D0=B5=D0=BD=D1=82?=
=?UTF-8?q?=D0=B0=D0=B1=D0=B5=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9=20=D0=B2=D0=B8?=
=?UTF-8?q?=D0=B4=20=D0=BF=D0=B0=D0=BD=D0=B5=D0=BB=D1=8C=D0=BA=D0=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../UI/HoursPanel}/HoursPanel.xaml | 2 +-
.../UI/HoursPanel}/HoursPanel.xaml.cs | 110 ++++++------------
Resources/Locale/ru-RU/job/job-names.ftl | 3 +
3 files changed, 38 insertions(+), 77 deletions(-)
rename Content.Client/{Administration/UI/Tabs/AdminTab => _White/Administration/UI/HoursPanel}/HoursPanel.xaml (95%)
rename Content.Client/{Administration/UI/Tabs/AdminTab => _White/Administration/UI/HoursPanel}/HoursPanel.xaml.cs (55%)
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml b/Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml
similarity index 95%
rename from Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
rename to Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml
index ab726e6e19..58300be596 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
+++ b/Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml
@@ -11,7 +11,7 @@
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs b/Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml.cs
similarity index 55%
rename from Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
rename to Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml.cs
index 50b1260003..53859349aa 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
+++ b/Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml.cs
@@ -14,6 +14,8 @@ using Robust.Client.UserInterface;
using Robust.Shared.Prototypes;
using static Robust.Client.UserInterface.Controls.LineEdit;
using Content.Shared.Players.PlayTimeTracking;
+using System.Runtime.CompilerServices;
+
namespace Content.Client.Administration.UI.Tabs.AdminTab;
@@ -21,125 +23,81 @@ namespace Content.Client.Administration.UI.Tabs.AdminTab;
[UsedImplicitly]
public sealed partial class HoursPanel : DefaultWindow
{
- private enum Roles
- {
- Overall,
-
- //Write in alphabetical order!
-
- AtmosphericTechnician,
- Bartender,
- Bomzh,
- Borg,
- Botanist,
- Boxer,
- Brigmedic,
- Captain,
- CargoTechnician,
- Chaplain,
- Chef,
- Chemist,
- ChiefEngineer,
- ChiefMedicalOfficer,
- Clown,
- Detective,
- HeadOfPersonnel,
- HeadOfSecurity,
- Inspector,
- Janitor,
- Lawyer,
- Librarian,
- Maid,
- MedicalDoctor,
- MedicalIntern,
- Mime,
- Musician,
- Paramedic,
- Passenger,
- Psychologist,
- Quartermaster,
- Reporter,
- ResearchAssistant,
- ResearchDirector,
- SalvageSpecialist,
- Scientist,
- SecurityCadet,
- SecurityOfficer,
- SeniorEngineer,
- SeniorOfficer,
- SeniorPhysician,
- SeniorResearcher,
- ServiceWorker,
- StationEngineer,
- TechnicalAssistant,
- Visitor,
- Warden,
- Zookeeper
- }
-
-
public HoursPanel()
{
RobustXamlLoader.Load(this);
+ var roles = new Dictionary();
+ PlayerNameLine.OnTextChanged += _ => OnNamesChanged();
PlayerList.OnSelectionChanged += OnPlayerSelectionChanged;
HourButton.OnPressed += _ => AddMinutes(60);
MinutesLine.OnTextChanged += UpdateButtonsText;
-
- RoleOption.AddItem("OverAll");
- foreach (var dep in IoCManager.Resolve().EnumeratePrototypes())
- {
- foreach (var role in dep.Roles)
- {
- RoleOption.AddItem(role.Id);
- }
- }
- RoleOption.RemoveItem(RoleOption.GetItemId());
- RoleOption.Select(0);
-
+ RoleOption.OnItemSelected += args => RoleOption.SelectId(args.Id);
+ SubmitButton.OnPressed += _ => OnSubmitButtonOnPressed(roles);
+ OnNamesChanged();
+ InitRoleList(roles);
}
- private void SetRoles()
+ private void InitRoleList(Dictionary Roles)
{
- int roleInd = 0;
+ var roleInd = 0;
+ RoleOption.AddItem("общее", roleInd);
+ Roles.Add(roleInd, "Overall");
+ roleInd++;
foreach (var dep in IoCManager.Resolve().EnumeratePrototypes())
{
-
foreach (var role in dep.Roles)
{
- RoleOption.AddItem(role.Id, roleInd++);
+ RoleOption.AddItem(Loc.GetString($"Job{role.Id}"), roleInd);
+ Roles.Add(roleInd, $"Job{role.Id}");
+ roleInd++;
}
}
+ RoleOption.SelectId(0);
}
+
private bool TryGetMinutes(string str, out uint minutes)
{
minutes = 0;
- return string.IsNullOrWhiteSpace(str) || uint.TryParse(str, out minutes);
+ return !string.IsNullOrWhiteSpace(str) && uint.TryParse(str, out minutes);
}
+
private void AddMinutes(uint add)
{
+ OnNamesChanged();
if (!TryGetMinutes(MinutesLine.Text, out var minutes))
- return;
+ minutes = 0;
MinutesLine.Text = $"{minutes + add}";
UpdateButtons(minutes + add);
}
+
private void UpdateButtonsText(LineEditEventArgs obj)
{
+ OnNamesChanged();
if (!TryGetMinutes(obj.Text, out var minutes))
return;
UpdateButtons(minutes);
}
+
private void UpdateButtons(uint minutes)
{
HourButton.Text = $"+1h ({minutes / 60})";
}
+
private void OnNamesChanged()
{
- SubmitButton.Disabled = string.IsNullOrEmpty(PlayerNameLine.Text);
+ SubmitButton.Disabled = string.IsNullOrEmpty(PlayerNameLine.Text) || !TryGetMinutes(MinutesLine.Text, out _);
}
+
private void OnPlayerSelectionChanged(PlayerInfo? player)
{
PlayerNameLine.Text = player?.Username ?? string.Empty;
OnNamesChanged();
}
+
+ private void OnSubmitButtonOnPressed(Dictionary roles)
+ {
+ IoCManager.Resolve().ExecuteCommand(
+ $"playtime_addrole {PlayerNameLine.Text} {roles[RoleOption.SelectedId]} {MinutesLine.Text}");
+ }
}
diff --git a/Resources/Locale/ru-RU/job/job-names.ftl b/Resources/Locale/ru-RU/job/job-names.ftl
index 4e8ec08c20..bff04d2c20 100644
--- a/Resources/Locale/ru-RU/job/job-names.ftl
+++ b/Resources/Locale/ru-RU/job/job-names.ftl
@@ -56,6 +56,7 @@ job-name-bomzh = бомж
# Role timers - Make these alphabetical or I cut you
JobAtmosphericTechnician = атмосферный техник
JobBartender = бармен
+JobBomzh = бомж
JobBorg = борг
JobBotanist = ботаник
JobBoxer = боксер
@@ -77,9 +78,11 @@ JobERTMedical = медик ОБР
JobERTSecurity = офицер безопасности ОБР
JobHeadOfPersonnel = глава персонала
JobHeadOfSecurity = глава службы безопасности
+JobInspector = инспектор
JobJanitor = уборщик
JobLawyer = юрист
JobLibrarian = библиотекарь
+JobMaid = прислуга
JobMedicalDoctor = врач
JobMedicalIntern = интерн
JobMime = мим
From d0191a7bc18c2d317014036a31acc5c796a645ef Mon Sep 17 00:00:00 2001
From: Hero010h <163765999+Hero010h@users.noreply.github.com>
Date: Wed, 1 Jan 2025 05:24:09 +0300
Subject: [PATCH 3/7] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../UI/Tabs/AdminTab}/HoursPanel.xaml | 1 -
.../UI/Tabs/AdminTab}/HoursPanel.xaml.cs | 0
2 files changed, 1 deletion(-)
rename Content.Client/{_White/Administration/UI/HoursPanel => Administration/UI/Tabs/AdminTab}/HoursPanel.xaml (95%)
rename Content.Client/{_White/Administration/UI/HoursPanel => Administration/UI/Tabs/AdminTab}/HoursPanel.xaml.cs (100%)
diff --git a/Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
similarity index 95%
rename from Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml
rename to Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
index 58300be596..75587a5a68 100644
--- a/Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
@@ -16,7 +16,6 @@
-
\ No newline at end of file
diff --git a/Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
similarity index 100%
rename from Content.Client/_White/Administration/UI/HoursPanel/HoursPanel.xaml.cs
rename to Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
From 79b8a5bdab33038e355dac7601282af29053665b Mon Sep 17 00:00:00 2001
From: Hero010h <163765999+Hero010h@users.noreply.github.com>
Date: Wed, 1 Jan 2025 05:26:58 +0300
Subject: [PATCH 4/7] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
index 53859349aa..9b63043ebd 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
@@ -1,21 +1,12 @@
-using System.Linq;
-using Content.Client.Administration.UI.CustomControls;
using Content.Shared.Administration;
using Content.Shared.Roles;
using JetBrains.Annotations;
using Robust.Client.AutoGenerated;
using Robust.Client.Console;
-using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.CustomControls;
using Robust.Client.UserInterface.XAML;
-using Robust.Shared.Utility;
-using Robust.Client.Graphics;
-using Robust.Client.UserInterface;
using Robust.Shared.Prototypes;
using static Robust.Client.UserInterface.Controls.LineEdit;
-using Content.Shared.Players.PlayTimeTracking;
-using System.Runtime.CompilerServices;
-
namespace Content.Client.Administration.UI.Tabs.AdminTab;
From 8a176fc873b3679856e541c805ce56ab555a7290 Mon Sep 17 00:00:00 2001
From: BIGZi0348
Date: Wed, 1 Jan 2025 16:43:19 +0300
Subject: [PATCH 5/7] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20?=
=?UTF-8?q?=D0=B8=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8?=
=?UTF-8?q?=D1=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../UI/Tabs/AdminTab/AdminTab.xaml | 3 ++-
.../Administration}/HoursPanel.xaml | 12 ++++++++--
.../Administration}/HoursPanel.xaml.cs | 22 ++++++++++++++-----
.../Commands/PlayTimeCommands.cs | 2 +-
Resources/Locale/ru-RU/job/job-names.ftl | 3 ++-
.../players/play-time/play-time-commands.ftl | 4 ++--
Resources/Locale/ru-RU/ui/misc.ftl | 1 +
7 files changed, 34 insertions(+), 13 deletions(-)
rename Content.Client/{Administration/UI/Tabs/AdminTab => _White/Administration}/HoursPanel.xaml (56%)
rename Content.Client/{Administration/UI/Tabs/AdminTab => _White/Administration}/HoursPanel.xaml.cs (84%)
create mode 100644 Resources/Locale/ru-RU/ui/misc.ftl
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml b/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml
index d7d1dee90c..083d214773 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml
@@ -3,6 +3,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:cc="clr-namespace:Content.Client.Administration.UI.CustomControls"
xmlns:at="clr-namespace:Content.Client.Administration.UI.Tabs.AdminTab"
+ xmlns:wd="clr-namespace:Content.Client._White.Administration"
Margin="4"
MinSize="50 50">
@@ -18,7 +19,7 @@
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml b/Content.Client/_White/Administration/HoursPanel.xaml
similarity index 56%
rename from Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
rename to Content.Client/_White/Administration/HoursPanel.xaml
index 75587a5a68..6ea7218d98 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml
+++ b/Content.Client/_White/Administration/HoursPanel.xaml
@@ -1,7 +1,7 @@
+ Title="Накрутка времени" MinSize="300 500">
@@ -17,5 +17,13 @@
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs b/Content.Client/_White/Administration/HoursPanel.xaml.cs
similarity index 84%
rename from Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
rename to Content.Client/_White/Administration/HoursPanel.xaml.cs
index 9b63043ebd..c51cedc28d 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/HoursPanel.xaml.cs
+++ b/Content.Client/_White/Administration/HoursPanel.xaml.cs
@@ -8,7 +8,7 @@ using Robust.Client.UserInterface.XAML;
using Robust.Shared.Prototypes;
using static Robust.Client.UserInterface.Controls.LineEdit;
-namespace Content.Client.Administration.UI.Tabs.AdminTab;
+namespace Content.Client._White.Administration;
[GenerateTypedNameReferences]
[UsedImplicitly]
@@ -24,21 +24,23 @@ public sealed partial class HoursPanel : DefaultWindow
MinutesLine.OnTextChanged += UpdateButtonsText;
RoleOption.OnItemSelected += args => RoleOption.SelectId(args.Id);
SubmitButton.OnPressed += _ => OnSubmitButtonOnPressed(roles);
+ SaveButton.OnPressed += _ => OnSaveButtonOnPressed();
OnNamesChanged();
InitRoleList(roles);
+
}
- private void InitRoleList(Dictionary Roles)
+ private void InitRoleList(Dictionary roles)
{
var roleInd = 0;
RoleOption.AddItem("общее", roleInd);
- Roles.Add(roleInd, "Overall");
+ roles.Add(roleInd, "Overall");
roleInd++;
foreach (var dep in IoCManager.Resolve().EnumeratePrototypes())
{
foreach (var role in dep.Roles)
{
RoleOption.AddItem(Loc.GetString($"Job{role.Id}"), roleInd);
- Roles.Add(roleInd, $"Job{role.Id}");
+ roles.Add(roleInd, $"Job{role.Id}");
roleInd++;
}
}
@@ -53,21 +55,21 @@ public sealed partial class HoursPanel : DefaultWindow
private void AddMinutes(uint add)
{
- OnNamesChanged();
if (!TryGetMinutes(MinutesLine.Text, out var minutes))
minutes = 0;
MinutesLine.Text = $"{minutes + add}";
UpdateButtons(minutes + add);
+ OnNamesChanged();
}
private void UpdateButtonsText(LineEditEventArgs obj)
{
- OnNamesChanged();
if (!TryGetMinutes(obj.Text, out var minutes))
return;
UpdateButtons(minutes);
+ OnNamesChanged();
}
private void UpdateButtons(uint minutes)
@@ -90,5 +92,13 @@ public sealed partial class HoursPanel : DefaultWindow
{
IoCManager.Resolve().ExecuteCommand(
$"playtime_addrole {PlayerNameLine.Text} {roles[RoleOption.SelectedId]} {MinutesLine.Text}");
+ SaveButton.Disabled = false;
+ }
+
+ private void OnSaveButtonOnPressed()
+ {
+ IoCManager.Resolve().ExecuteCommand(
+ $"playtime_save {PlayerNameLine.Text}");
+ SaveButton.Disabled = true;
}
}
diff --git a/Content.Server/Administration/Commands/PlayTimeCommands.cs b/Content.Server/Administration/Commands/PlayTimeCommands.cs
index dd64528a93..5dbbc5b25f 100644
--- a/Content.Server/Administration/Commands/PlayTimeCommands.cs
+++ b/Content.Server/Administration/Commands/PlayTimeCommands.cs
@@ -93,7 +93,7 @@ public sealed class PlayTimeAddRoleCommand : IConsoleCommand
}
_playTimeTracking.AddTimeToTracker(player, role, TimeSpan.FromMinutes(minutes));
- var time = _playTimeTracking.GetOverallPlaytime(player);
+ var time = _playTimeTracking.GetPlayTimeForTracker(player, role);
shell.WriteLine(Loc.GetString("cmd-playtime_addrole-succeed",
("username", userName),
("role", role),
diff --git a/Resources/Locale/ru-RU/job/job-names.ftl b/Resources/Locale/ru-RU/job/job-names.ftl
index bff04d2c20..6c0d39b275 100644
--- a/Resources/Locale/ru-RU/job/job-names.ftl
+++ b/Resources/Locale/ru-RU/job/job-names.ftl
@@ -70,7 +70,7 @@ JobChiefEngineer = старший инженер
JobChiefMedicalOfficer = главный врач
JobClown = клоун
JobDetective = детектив
-JobBrigmedic = Бригмедик
+JobBrigmedic = бригмедик
JobERTEngineer = инженер ОБР
JobERTJanitor = уборщик ОБР
JobERTLeader = лидер ОБР
@@ -108,3 +108,4 @@ JobStationEngineer = инженер
JobTechnicalAssistant = технический ассистент
JobWarden = смотритель
JobZookeeper = зоотехник
+JobVisitor = посетитель
diff --git a/Resources/Locale/ru-RU/players/play-time/play-time-commands.ftl b/Resources/Locale/ru-RU/players/play-time/play-time-commands.ftl
index 427d2702c6..7ab62302b6 100644
--- a/Resources/Locale/ru-RU/players/play-time/play-time-commands.ftl
+++ b/Resources/Locale/ru-RU/players/play-time/play-time-commands.ftl
@@ -6,14 +6,14 @@ parse-session-fail = Не найдена сессия для '{ $username }'
# - playtime_addoverall
cmd-playtime_addoverall-desc = Добавляет указанное число минут к общему игровому времени игрока
cmd-playtime_addoverall-help = Использование: { $command }
-cmd-playtime_addoverall-succeed = Общее игровое время { $username } увеличено на { TOSTRING($time, "dddd\\:hh\\:mm") }.
+cmd-playtime_addoverall-succeed = Общее игровое время { $username } увеличено до { TOSTRING($time, "dddd\\:hh\\:mm") }.
cmd-playtime_addoverall-arg-user =
cmd-playtime_addoverall-arg-minutes =
cmd-playtime_addoverall-error-args = Ожидается ровно два аргумента
# - playtime_addrole
cmd-playtime_addrole-desc = Добавляет указанное число минут к времени игрока на определённой роли
cmd-playtime_addrole-help = Использование: { $command }
-cmd-playtime_addrole-succeed = Игровое время для { $username } / \'{ $role }\' увеличено на { TOSTRING($time, "dddd\\:hh\\:mm") }.
+cmd-playtime_addrole-succeed = Игровое время для { $username } / \'{ $role }\' увеличено до { TOSTRING($time, "dddd\\:hh\\:mm") }.
cmd-playtime_addrole-arg-user =
cmd-playtime_addrole-arg-role =
cmd-playtime_addrole-arg-minutes =
diff --git a/Resources/Locale/ru-RU/ui/misc.ftl b/Resources/Locale/ru-RU/ui/misc.ftl
new file mode 100644
index 0000000000..daae4e3f54
--- /dev/null
+++ b/Resources/Locale/ru-RU/ui/misc.ftl
@@ -0,0 +1 @@
+Filter = Фильтр
From df9bf3a883939f01587a040df400a37de31a2b3e Mon Sep 17 00:00:00 2001
From: BIGZi0348
Date: Wed, 1 Jan 2025 22:28:52 +0300
Subject: [PATCH 6/7] =?UTF-8?q?=D0=9D=D0=B5=D1=80=D1=84=20=D0=B2=D0=B5?=
=?UTF-8?q?=D1=89=D0=B5=D1=81=D1=82=D0=B2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Chemistry/ReagentEffects/HealthChange.cs | 15 +++++++++++++++
Resources/Locale/ru-RU/reagents/meta/medicine.ftl | 4 ++--
Resources/Prototypes/Reagents/medicine.yml | 5 ++++-
3 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/Content.Server/Chemistry/ReagentEffects/HealthChange.cs b/Content.Server/Chemistry/ReagentEffects/HealthChange.cs
index 24880cfd37..6ca7c8cc44 100644
--- a/Content.Server/Chemistry/ReagentEffects/HealthChange.cs
+++ b/Content.Server/Chemistry/ReagentEffects/HealthChange.cs
@@ -2,7 +2,9 @@ using Content.Shared.Chemistry.Reagent;
using Content.Shared.Damage;
using Content.Shared.Damage.Prototypes;
using Content.Shared.FixedPoint;
+using Content.Shared.Inventory;
using Content.Shared.Localizations;
+using Content.Shared.Tag;
using JetBrains.Annotations;
using Robust.Shared.Prototypes;
using System.Linq;
@@ -35,6 +37,14 @@ namespace Content.Server.Chemistry.ReagentEffects
[JsonPropertyName("ignoreResistances")]
public bool IgnoreResistances = true;
+ ///
+ /// WD.
+ /// Whether this will work through hardsuits or not.
+ ///
+ [DataField]
+ [JsonPropertyName("pierceHardsuit")]
+ public bool PierceHardsuit = true;
+
protected override string ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys)
{
var damages = new List();
@@ -112,6 +122,11 @@ namespace Content.Server.Chemistry.ReagentEffects
public override void Effect(ReagentEffectArgs args)
{
+ if (!PierceHardsuit &&
+ args.EntityManager.System().TryGetSlotEntity(args.SolutionEntity, "outerClothing", out var suit) &&
+ args.EntityManager.System().HasTag(suit.Value, "Hardsuit"))
+ return; // WD
+
var scale = ScaleByQuantity ? args.Quantity : FixedPoint2.New(1);
scale *= args.Scale;
diff --git a/Resources/Locale/ru-RU/reagents/meta/medicine.ftl b/Resources/Locale/ru-RU/reagents/meta/medicine.ftl
index be9cfc81a0..012dba5f0b 100644
--- a/Resources/Locale/ru-RU/reagents/meta/medicine.ftl
+++ b/Resources/Locale/ru-RU/reagents/meta/medicine.ftl
@@ -151,5 +151,5 @@ reagent-desc-psicodine = Подавляет тревогу и прочие фо
reagent-name-potassium-iodide = йодистый калий
reagent-desc-potassium-iodide = Снижает поражающее действие от радиации на 90%. Только профилактическое применение.
-reagent-name-haloperidol = галоперидол
-reagent-desc-haloperidol = Выводит из организма большую часть стимулирующих или галлюцигенных химикатов. Вызывает сонливость.
\ No newline at end of file
+reagent-name-haloperidol = галоперидол
+reagent-desc-haloperidol = Выводит из организма большую часть стимулирующих или галлюцигенных химикатов. Вызывает сонливость.
diff --git a/Resources/Prototypes/Reagents/medicine.yml b/Resources/Prototypes/Reagents/medicine.yml
index 3dc8509c6e..11299d4d6c 100644
--- a/Resources/Prototypes/Reagents/medicine.yml
+++ b/Resources/Prototypes/Reagents/medicine.yml
@@ -1162,7 +1162,7 @@
conditions:
- !type:ReagentThreshold
min: 12
-
+
- type: reagent
id: Opporozidone #Name based of an altered version of the startreck chem "Opporozine"
name: reagent-name-opporozidone
@@ -1249,6 +1249,7 @@
effects:
- !type:HealthChange
scaleByQuantity: true
+ pierceHardsuit: false
damage:
groups:
Brute: -1.25
@@ -1280,6 +1281,7 @@
effects:
- !type:HealthChange
scaleByQuantity: true
+ pierceHardsuit: false
damage:
types:
Heat: -2
@@ -1307,6 +1309,7 @@
effects:
- !type:HealthChange
scaleByQuantity: true
+ pierceHardsuit: false
damage:
groups:
Brute: -2
From 293eaf884502eff2f19bdf3e9bf614e7096905c2 Mon Sep 17 00:00:00 2001
From: RavmorganButOnCocaine
Date: Wed, 1 Jan 2025 19:38:18 +0000
Subject: [PATCH 7/7] Automatic changelog update
---
Resources/Changelog/ChangelogWhite.yml | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/Resources/Changelog/ChangelogWhite.yml b/Resources/Changelog/ChangelogWhite.yml
index e2868e5c17..be50fb0555 100644
--- a/Resources/Changelog/ChangelogWhite.yml
+++ b/Resources/Changelog/ChangelogWhite.yml
@@ -1,12 +1,4 @@
Entries:
-- author: RavMorgan
- changes:
- - message: "\u041A\u0430\u0441\u0442\u043E\u043C\u043D\u044B\u0435 \u043F\u0440\u0438\
- \u0437\u0440\u0430\u043A\u0438 \u0442\u0435\u043F\u0435\u0440\u044C \u0432\u0441\
- \u0435\u0433\u0434\u0430 \u0440\u0430\u0431\u043E\u0442\u0430\u044E\u0442!"
- type: Add
- id: 148
- time: '2023-04-28T11:59:36.0000000+00:00'
- author: RavMorgan
changes:
- message: "\u0420\u0430\u0437\u043C\u0435\u0440 \u0447\u0430\u0442\u0430 \u0442\
@@ -8919,3 +8911,17 @@
id: 647
time: '2025-01-01T13:55:57.0000000+00:00'
url: https://api.github.com/repos/frosty-dev/ss14-core/pulls/855
+- author: BIG_Zi_348
+ changes:
+ - message: "\u0422\u0435\u043F\u0435\u0440\u044C \u0441\u0438\u043D\u0442\u0435\u043F\
+ \u043B\u043E\u0442\u044C, \u0441\u0443\u043B\u044C\u0444\u0430\u0434\u0438\u0430\
+ \u0437\u0438\u043D \u0441\u0435\u0440\u0435\u0431\u0440\u0430 \u0438 \u043A\u0440\
+ \u043E\u0432\u043E\u043E\u0441\u0442\u0430\u043D\u0430\u0432\u043B\u0438\u0432\
+ \u0430\u044E\u0449\u0430\u044F \u043F\u0443\u0434\u0440\u0430 \u043D\u0435 \u0440\
+ \u0430\u0431\u043E\u0442\u0430\u044E\u0442 \u043D\u0430 \u043F\u0435\u0440\u0441\
+ \u043E\u043D\u0430\u0436\u0430\u0445 \u0432 \u0441\u043A\u0430\u0444\u0430\u043D\
+ \u0434\u0440\u0430\u0445."
+ type: Tweak
+ id: 648
+ time: '2025-01-01T19:37:15.0000000+00:00'
+ url: https://api.github.com/repos/frosty-dev/ss14-core/pulls/867