Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

upstream merge 04/01/2024 #14

Merged
merged 73 commits into from
Jan 4, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
abee27c
UI improvements for holopads (#34055)
chromiumboy Dec 28, 2024
296aeda
Automatic changelog update
PJBot Dec 28, 2024
55f6017
Update Credits (#34109)
github-actions[bot] Dec 29, 2024
8ebf67a
Added support so that smile can use hats (#33924)
zHonys Dec 29, 2024
0d3572f
Automatic changelog update
PJBot Dec 29, 2024
69b1572
Add a guaranteed cotton pizza to pizza crates (#33997)
ewokswagger Dec 29, 2024
5693a64
Automatic changelog update
PJBot Dec 29, 2024
8896d66
Corrected Cotton Dough Recipe (#33988)
Booblesnoot42 Dec 29, 2024
8950bf0
New cotton baguette, crostini, chevre-chaud, bagel, and croissant foo…
ArtisticRoomba Dec 29, 2024
dad2234
Automatic changelog update
PJBot Dec 29, 2024
ca1ffcd
Rolling joints no longer requires a filter (#34106)
IamVelcroboy Dec 29, 2024
7204f3c
Automatic changelog update
PJBot Dec 29, 2024
818d9e9
fix interdimensional teleporter desc (#34108)
lzk228 Dec 29, 2024
8459376
Adds kitchen/botany-locked maints airlock (#34116)
IamVelcroboy Dec 29, 2024
b4afb6c
Added ID entry for captain on Bagel (#34120)
DylanWhittingham Dec 29, 2024
f0c29e7
Amber Station Overhaul (#34113)
southbridge-fur Dec 30, 2024
03fb8d3
Box Station - Dechristmassified (#34135)
southbridge-fur Dec 30, 2024
d768beb
Marathon Station - Dechristmassified (#34136)
southbridge-fur Dec 30, 2024
b9f644c
Loop Station Decal and maints additions (#34103)
TytosB Dec 30, 2024
48a3835
Rename cryobed yml file (#34134)
Booblesnoot42 Dec 30, 2024
61e45ce
Cog update (not very merry) (#34144)
Spessmann Dec 31, 2024
2b26b9a
bagel update (#34145)
Emisse Dec 31, 2024
1b95dbd
Add hair pulato (#34117)
DreamlyJack Dec 31, 2024
cc44f0f
Automatic changelog update
PJBot Dec 31, 2024
18f34eb
Holopad UI tweak for incoming calls (#34137)
chromiumboy Dec 31, 2024
844d250
Holopads no longer log broadcasted speech and emotes in the chat (#34…
chromiumboy Dec 31, 2024
01b849a
Automatic changelog update
PJBot Dec 31, 2024
4fd6ac3
Fixes borgs not being able to check their laws in crit (#34133)
PopGamer45 Dec 31, 2024
d430497
Add contraband parent to laser gun safe (#34132)
crazybrain23 Dec 31, 2024
14ab3ba
Automatic changelog update
PJBot Dec 31, 2024
5454bc0
Add Holopad Circuit Board to A/V Communication Technology (#34150)
amatwiedle Dec 31, 2024
5303cbc
Automatic changelog update
PJBot Dec 31, 2024
4016950
Fix disposal signal routers sprites (#34139)
justdie12 Dec 31, 2024
dd01b78
Automatic changelog update
PJBot Dec 31, 2024
74fcd17
Meta station overhaul (#33506)
Nox38 Dec 31, 2024
b88e0ef
Standardize shotgun ammo in storagefills (#34156)
ArtisticRoomba Dec 31, 2024
c7e60bd
Automatic changelog update
PJBot Dec 31, 2024
f7eabb2
meta update (#34158)
Emisse Jan 1, 2025
35c555c
Amber Station Adjustments (#34126)
southbridge-fur Jan 1, 2025
a4bf776
Fix friendly vent spiders (#34153)
Booblesnoot42 Jan 1, 2025
3bfae55
Removed UseDelay component from RCD (#34149)
Booblesnoot42 Jan 1, 2025
586cba1
Automatic changelog update
PJBot Jan 1, 2025
0619d50
Decrease hp for rusted walls (#34043)
lzk228 Jan 1, 2025
51527db
Automatic changelog update
PJBot Jan 1, 2025
22a2c1a
FIX: Thief beacon doubled steal targets (#33750)
ReeZer2 Jan 1, 2025
62ebdcb
Automatic changelog update
PJBot Jan 1, 2025
2e9190f
remove nukemass song (#34066)
Errant-4 Jan 1, 2025
17ef5ff
Automatic changelog update
PJBot Jan 1, 2025
e30849c
Corrected all ghost role names to title case. (#34155)
Alpaccalypse Jan 1, 2025
51ba9b4
Packed Update (Remove Christmas & New Evac) (#34168)
spanky-spanky Jan 1, 2025
a8eb5b2
Omega Update (Remove Christmas) (#34174)
spanky-spanky Jan 2, 2025
c516cb0
Renamed "Irish Car Bomb" drink to "Irish Slammer" (#34107)
Alpaccalypse Jan 2, 2025
2864608
Automatic changelog update
PJBot Jan 2, 2025
9e42501
Bugfix for the AI player's eye getting stuck when their broadcast is …
chromiumboy Jan 2, 2025
5811faf
Speech is relayed by holopad holograms (#33978)
chromiumboy Jan 2, 2025
8555758
Make JPEG a PNG (#34176)
Aeshus Jan 2, 2025
d1aa553
Removed Undesirable Ion Storm Verbs (#34175)
Aeshus Jan 2, 2025
70f46ff
added basic admin logs for PDA notekeeper notes (#34118)
DylanWhittingham Jan 2, 2025
8026869
Automatic changelog update
PJBot Jan 2, 2025
02525fb
Sprites defined for all non-generic computer boards. Added new syndic…
Alpaccalypse Jan 2, 2025
56a7968
Added pricegun sound (#34119)
DylanWhittingham Jan 2, 2025
6afa314
Automatic changelog update
PJBot Jan 2, 2025
ef673ea
Separate Tables n' Counters (#32673)
ps3moira Jan 2, 2025
6d39b2f
Automatic changelog update
PJBot Jan 2, 2025
ec35df7
Add Chameleon PDA (#30514)
SlamBamActionman Jan 2, 2025
ad9ac02
Automatic changelog update
PJBot Jan 2, 2025
18e8794
Add some ion storm actions to replace removed ones (#34180)
FairlySadPanda Jan 2, 2025
2f27f9b
Automatic changelog update
PJBot Jan 2, 2025
040d899
Amber Station and Science Spawner Tweaks (#34187)
southbridge-fur Jan 3, 2025
41ed345
Core update (#34201)
UbaserB Jan 3, 2025
1cf4da2
Elkridge Depot (The station formerly known as Cell) (#34085)
Deerstop Jan 3, 2025
ccbb4c5
Add Elkridge Depot into Map Rotation (#34206)
Deerstop Jan 4, 2025
202b5e6
Automatic changelog update
PJBot Jan 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions Content.Client/Cargo/Systems/ClientPriceGunSystem.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using Content.Shared.Cargo.Components;
using Content.Shared.Timing;
using Content.Shared.Cargo.Systems;

Expand All @@ -10,9 +11,9 @@ public sealed class ClientPriceGunSystem : SharedPriceGunSystem
{
[Dependency] private readonly UseDelaySystem _useDelay = default!;

protected override bool GetPriceOrBounty(EntityUid priceGunUid, EntityUid target, EntityUid user)
protected override bool GetPriceOrBounty(Entity<PriceGunComponent> entity, EntityUid target, EntityUid user)
{
if (!TryComp(priceGunUid, out UseDelayComponent? useDelay) || _useDelay.IsDelayed((priceGunUid, useDelay)))
if (!TryComp(entity, out UseDelayComponent? useDelay) || _useDelay.IsDelayed((entity, useDelay)))
return false;

// It feels worse if the cooldown is predicted but the popup isn't! So only do the cooldown reset on the server.
Expand Down
10 changes: 10 additions & 0 deletions Content.Client/Clothing/Systems/ChameleonClothingSystem.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using System.Linq;
using Content.Client.PDA;
using Content.Shared.Clothing.Components;
using Content.Shared.Clothing.EntitySystems;
using Content.Shared.Inventory;
Expand Down Expand Up @@ -51,6 +52,15 @@ protected override void UpdateSprite(EntityUid uid, EntityPrototype proto)
{
sprite.CopyFrom(otherSprite);
}

// Edgecase for PDAs to include visuals when UI is open
if (TryComp(uid, out PdaBorderColorComponent? borderColor)
&& proto.TryGetComponent(out PdaBorderColorComponent? otherBorderColor, _factory))
{
borderColor.BorderColor = otherBorderColor.BorderColor;
borderColor.AccentHColor = otherBorderColor.AccentHColor;
borderColor.AccentVColor = otherBorderColor.AccentVColor;
}
}

/// <summary>
Expand Down
28 changes: 26 additions & 2 deletions Content.Client/Clothing/UI/ChameleonBoundUserInterface.cs
Original file line number Diff line number Diff line change
@@ -1,22 +1,29 @@
using Content.Client.Clothing.Systems;
using Content.Client.Clothing.Systems;
using Content.Shared.Clothing.Components;
using Content.Shared.Tag;
using Content.Shared.Prototypes;
using JetBrains.Annotations;
using Robust.Client.GameObjects;
using Robust.Client.UserInterface;
using Robust.Shared.Prototypes;

namespace Content.Client.Clothing.UI;

[UsedImplicitly]
public sealed class ChameleonBoundUserInterface : BoundUserInterface
{
[Dependency] private readonly IComponentFactory _factory = default!;
[Dependency] private readonly IPrototypeManager _proto = default!;
private readonly ChameleonClothingSystem _chameleon;
private readonly TagSystem _tag;

[ViewVariables]
private ChameleonMenu? _menu;

public ChameleonBoundUserInterface(EntityUid owner, Enum uiKey) : base(owner, uiKey)
{
_chameleon = EntMan.System<ChameleonClothingSystem>();
_tag = EntMan.System<TagSystem>();
}

protected override void Open()
Expand All @@ -34,7 +41,24 @@ protected override void UpdateState(BoundUserInterfaceState state)
return;

var targets = _chameleon.GetValidTargets(st.Slot);
_menu?.UpdateState(targets, st.SelectedId);
if (st.RequiredTag != null)
{
var newTargets = new List<string>();
foreach (var target in targets)
{
if (string.IsNullOrEmpty(target) || !_proto.TryIndex(target, out EntityPrototype? proto))
continue;

if (!proto.TryGetComponent(out TagComponent? tag, _factory) || !_tag.HasTag(tag, st.RequiredTag))
continue;

newTargets.Add(target);
}
_menu?.UpdateState(newTargets, st.SelectedId);
} else
{
_menu?.UpdateState(targets, st.SelectedId);
}
}

private void OnIdSelected(string selectedId)
Expand Down
31 changes: 21 additions & 10 deletions Content.Client/Holopad/HolopadWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,11 @@
<!-- Header text -->
<BoxContainer MinHeight="60" Orientation="Vertical" VerticalAlignment="Center">
<Label Name="CallStatusText" Margin="10 5 10 0" ReservesSpace="False"/>
<RichTextLabel Name="CallerIdText" HorizontalAlignment="Center" Margin="0 0 0 0" ReservesSpace="False"/>
<BoxContainer Name="CallerIdContainer" Orientation="Vertical" ReservesSpace="False">
<RichTextLabel Name="CallerIdText" HorizontalAlignment="Center" Margin="0 0 0 0"/>
<Label Text="{Loc 'holopad-window-relay-label'}" Margin="10 10 10 0" ReservesSpace="False"/>
<RichTextLabel Name="HolopadIdText" HorizontalAlignment="Center" Margin="0 0 0 10"/>
</BoxContainer>
</BoxContainer>

<!-- Controls (the answer call button is absent when the phone is not ringing) -->
Expand Down Expand Up @@ -68,18 +72,25 @@
<PanelContainer Name="HolopadContactListHeaderPanel">
<Label Text="{Loc 'holopad-window-select-contact-from-list'}" HorizontalAlignment="Center" Margin="0 3 0 3"/>
</PanelContainer>

<PanelContainer Name="HolopadContactListPanel">
<ScrollContainer HorizontalExpand="True" VerticalExpand="True" Margin="8, 8, 8, 8" MinHeight="256">
<BoxContainer Orientation="Vertical">

<!-- Contact filter -->
<LineEdit Name="SearchLineEdit" HorizontalExpand="True" Margin="4, 4, 4, 0"
PlaceHolder="{Loc holopad-window-filter-line-placeholder}" />

<!-- If there is no data yet, this will be displayed -->
<BoxContainer Name="FetchingAvailableHolopadsContainer" HorizontalAlignment="Center" HorizontalExpand="True" VerticalExpand="True" ReservesSpace="False">
<Label Text="{Loc 'holopad-window-fetching-contacts-list'}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</BoxContainer>
<ScrollContainer HorizontalExpand="True" VerticalExpand="True" Margin="8, 8, 8, 8" MinHeight="256">

<!-- Container for the contacts -->
<BoxContainer Name="ContactsList" Orientation="Vertical" HorizontalExpand="True" VerticalExpand="True" Margin="10 0 10 0"/>
</ScrollContainer>
<!-- If there is no data yet, this will be displayed -->
<BoxContainer Name="FetchingAvailableHolopadsContainer" HorizontalAlignment="Center" HorizontalExpand="True" VerticalExpand="True" ReservesSpace="False">
<Label Text="{Loc 'holopad-window-fetching-contacts-list'}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</BoxContainer>

<!-- Container for the contacts -->
<BoxContainer Name="ContactsList" Orientation="Vertical" HorizontalExpand="True" VerticalExpand="True" Margin="10 0 10 0"/>
</ScrollContainer>
</BoxContainer>
</PanelContainer>
</BoxContainer>

Expand Down
12 changes: 9 additions & 3 deletions Content.Client/Holopad/HolopadWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -171,8 +171,10 @@ public void UpdateState(Dictionary<NetEntity, string> holopads)

// Caller ID text
var callerId = _telephoneSystem.GetFormattedCallerIdForEntity(telephone.LastCallerId.Item1, telephone.LastCallerId.Item2, Color.LightGray, "Default", 11);
var holoapdId = _telephoneSystem.GetFormattedDeviceIdForEntity(telephone.LastCallerId.Item3, Color.LightGray, "Default", 11);

CallerIdText.SetMessage(FormattedMessage.FromMarkupOrThrow(callerId));
HolopadIdText.SetMessage(FormattedMessage.FromMarkupOrThrow(holoapdId));
LockOutIdText.SetMessage(FormattedMessage.FromMarkupOrThrow(callerId));

// Sort holopads alphabetically
Expand Down Expand Up @@ -236,10 +238,13 @@ private void UpdateAppearance()
// Make / update required children
foreach (var child in ContactsList.Children)
{
if (child is not HolopadContactButton)
if (child is not HolopadContactButton contactButton)
continue;

var contactButton = (HolopadContactButton)child;
var passesFilter = string.IsNullOrEmpty(SearchLineEdit.Text) ||
contactButton.Text?.Contains(SearchLineEdit.Text, StringComparison.CurrentCultureIgnoreCase) == true;

contactButton.Visible = passesFilter;
contactButton.Disabled = (_currentState != TelephoneState.Idle || lockButtons);
}

Expand Down Expand Up @@ -290,7 +295,7 @@ private void UpdateAppearance()
FetchingAvailableHolopadsContainer.Visible = (ContactsList.ChildCount == 0);
ActiveCallControlsContainer.Visible = (_currentState != TelephoneState.Idle || _currentUiKey == HolopadUiKey.AiRequestWindow);
CallPlacementControlsContainer.Visible = !ActiveCallControlsContainer.Visible;
CallerIdText.Visible = (_currentState == TelephoneState.Ringing);
CallerIdContainer.Visible = (_currentState == TelephoneState.Ringing);
AnswerCallButton.Visible = (_currentState == TelephoneState.Ringing);
}

Expand All @@ -316,6 +321,7 @@ public HolopadContactButton()
HorizontalExpand = true;
SetHeight = 32;
Margin = new Thickness(0f, 1f, 0f, 1f);
ReservesSpace = false;
}

public void UpdateValues(NetEntity netEntity, string label)
Expand Down
5 changes: 5 additions & 0 deletions Content.Client/PDA/PdaMenu.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,11 @@ public void UpdateState(PdaUpdateState state)
_pdaOwner = state.PdaOwnerInfo.ActualOwnerName;
PdaOwnerLabel.SetMarkup(Loc.GetString("comp-pda-ui-owner",
("actualOwnerName", _pdaOwner)));
PdaOwnerLabel.Visible = true;
}
else
{
PdaOwnerLabel.Visible = false;
}


Expand Down
40 changes: 0 additions & 40 deletions Content.Client/PDA/PdaSystem.cs
Original file line number Diff line number Diff line change
@@ -1,48 +1,8 @@
using Content.Shared.PDA;
using Content.Shared.Light;
using Robust.Client.GameObjects;

namespace Content.Client.PDA;

public sealed class PdaSystem : SharedPdaSystem
{
public override void Initialize()
{
base.Initialize();

SubscribeLocalEvent<PdaComponent, AppearanceChangeEvent>(OnAppearanceChange);
}

private void OnAppearanceChange(EntityUid uid, PdaComponent component, ref AppearanceChangeEvent args)
{
if (args.Sprite == null)
return;

if (Appearance.TryGetData<bool>(uid, UnpoweredFlashlightVisuals.LightOn, out var isFlashlightOn, args.Component))
args.Sprite.LayerSetVisible(PdaVisualLayers.Flashlight, isFlashlightOn);

if (Appearance.TryGetData<bool>(uid, PdaVisuals.IdCardInserted, out var isCardInserted, args.Component))
args.Sprite.LayerSetVisible(PdaVisualLayers.IdLight, isCardInserted);
}

protected override void OnComponentInit(EntityUid uid, PdaComponent component, ComponentInit args)
{
base.OnComponentInit(uid, component, args);

if (!TryComp<SpriteComponent>(uid, out var sprite))
return;

if (component.State != null)
sprite.LayerSetState(PdaVisualLayers.Base, component.State);

sprite.LayerSetVisible(PdaVisualLayers.Flashlight, component.FlashlightOn);
sprite.LayerSetVisible(PdaVisualLayers.IdLight, component.IdSlot.StartingItem != null);
}

public enum PdaVisualLayers : byte
{
Base,
Flashlight,
IdLight
}
}
30 changes: 30 additions & 0 deletions Content.Client/PDA/PdaVisualizerSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
using Content.Shared.Light;
using Content.Shared.PDA;
using Robust.Client.GameObjects;

namespace Content.Client.PDA;

public sealed class PdaVisualizerSystem : VisualizerSystem<PdaVisualsComponent>
{
protected override void OnAppearanceChange(EntityUid uid, PdaVisualsComponent comp, ref AppearanceChangeEvent args)
{
if (args.Sprite == null)
return;

if (AppearanceSystem.TryGetData<string>(uid, PdaVisuals.PdaType, out var pdaType, args.Component))
args.Sprite.LayerSetState(PdaVisualLayers.Base, pdaType);

if (AppearanceSystem.TryGetData<bool>(uid, UnpoweredFlashlightVisuals.LightOn, out var isFlashlightOn, args.Component))
args.Sprite.LayerSetVisible(PdaVisualLayers.Flashlight, isFlashlightOn);

if (AppearanceSystem.TryGetData<bool>(uid, PdaVisuals.IdCardInserted, out var isCardInserted, args.Component))
args.Sprite.LayerSetVisible(PdaVisualLayers.IdLight, isCardInserted);
}

public enum PdaVisualLayers : byte
{
Base,
Flashlight,
IdLight
}
}
14 changes: 14 additions & 0 deletions Content.Client/PDA/PdaVisualsComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
namespace Content.Client.PDA;

/// <summary>
/// Used for visualizing PDA visuals.
/// </summary>
[RegisterComponent]
public sealed partial class PdaVisualsComponent : Component
{
public string? BorderColor;

public string? AccentHColor;

public string? AccentVColor;
}
3 changes: 2 additions & 1 deletion Content.IntegrationTests/Tests/PostMapInitTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,8 @@ public sealed class PostMapInitTest
"Cog",
"Gate",
"Amber",
"Loop"
"Loop",
"Elkridge"


};
Expand Down
17 changes: 12 additions & 5 deletions Content.Server/Cargo/Systems/PriceGunSystem.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
using Content.Server.Popups;
using Content.Shared.Cargo.Components;
using Content.Shared.IdentityManagement;
using Content.Shared.Timing;
using Content.Shared.Cargo.Systems;
using Robust.Shared.Audio.Systems;

namespace Content.Server.Cargo.Systems;

Expand All @@ -11,12 +13,12 @@ public sealed class PriceGunSystem : SharedPriceGunSystem
[Dependency] private readonly PricingSystem _pricingSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
[Dependency] private readonly CargoSystem _bountySystem = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!;

protected override bool GetPriceOrBounty(EntityUid priceGunUid, EntityUid target, EntityUid user)
protected override bool GetPriceOrBounty(Entity<PriceGunComponent> entity, EntityUid target, EntityUid user)
{
if (!TryComp(priceGunUid, out UseDelayComponent? useDelay) || _useDelay.IsDelayed((priceGunUid, useDelay)))
if (!TryComp(entity.Owner, out UseDelayComponent? useDelay) || _useDelay.IsDelayed((entity.Owner, useDelay)))
return false;

// Check if we're scanning a bounty crate
if (_bountySystem.IsBountyComplete(target, out _))
{
Expand All @@ -25,10 +27,15 @@ protected override bool GetPriceOrBounty(EntityUid priceGunUid, EntityUid target
else // Otherwise appraise the price
{
var price = _pricingSystem.GetPrice(target);
_popupSystem.PopupEntity(Loc.GetString("price-gun-pricing-result", ("object", Identity.Entity(target, EntityManager)), ("price", $"{price:F2}")), user, user);
_popupSystem.PopupEntity(Loc.GetString("price-gun-pricing-result",
("object", Identity.Entity(target, EntityManager)),
("price", $"{price:F2}")),
user,
user);
}

_useDelay.TryResetDelay((priceGunUid, useDelay));
_audio.PlayPvs(entity.Comp.AppraisalSound, entity.Owner);
_useDelay.TryResetDelay((entity.Owner, useDelay));
return true;
}
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
using Content.Server.Administration.Logs;
using Content.Shared.CartridgeLoader;
using Content.Shared.CartridgeLoader.Cartridges;
using Content.Shared.Database;

namespace Content.Server.CartridgeLoader.Cartridges;

public sealed class NotekeeperCartridgeSystem : EntitySystem
{
[Dependency] private readonly CartridgeLoaderSystem? _cartridgeLoaderSystem = default!;
[Dependency] private readonly IAdminLogManager _adminLogger = default!;

public override void Initialize()
{
Expand Down Expand Up @@ -36,16 +39,19 @@ private void OnUiMessage(EntityUid uid, NotekeeperCartridgeComponent component,
if (message.Action == NotekeeperUiAction.Add)
{
component.Notes.Add(message.Note);
_adminLogger.Add(LogType.PdaInteract, LogImpact.Low,
$"{ToPrettyString(args.Actor)} added a note to PDA: '{message.Note}' contained on: {ToPrettyString(uid)}");
}
else
{
component.Notes.Remove(message.Note);
_adminLogger.Add(LogType.PdaInteract, LogImpact.Low,
$"{ToPrettyString(args.Actor)} removed a note from PDA: '{message.Note}' was contained on: {ToPrettyString(uid)}");
}

UpdateUiState(uid, GetEntity(args.LoaderUid), component);
}


private void UpdateUiState(EntityUid uid, EntityUid loaderUid, NotekeeperCartridgeComponent? component)
{
if (!Resolve(uid, ref component))
Expand Down
Loading
Loading