diff --git a/Content.Client/GameObjects/Components/Actor/CharacterInfoComponent.cs b/Content.Client/GameObjects/Components/Actor/CharacterInfoComponent.cs
index 28f7ffb381..2a49499211 100644
--- a/Content.Client/GameObjects/Components/Actor/CharacterInfoComponent.cs
+++ b/Content.Client/GameObjects/Components/Actor/CharacterInfoComponent.cs
@@ -1,5 +1,4 @@
#nullable enable
-using System.Drawing;
using Content.Client.GameObjects.Components.Mobs;
using Content.Client.UserInterface;
using Content.Client.UserInterface.Stylesheets;
@@ -13,6 +12,7 @@ using Robust.Shared.GameObjects;
using Robust.Shared.Interfaces.Network;
using Robust.Shared.IoC;
using Robust.Shared.Localization;
+using Robust.Shared.Maths;
using Robust.Shared.Players;
namespace Content.Client.GameObjects.Components.Actor
diff --git a/Content.Client/GameObjects/Components/Instruments/InstrumentComponent.cs b/Content.Client/GameObjects/Components/Instruments/InstrumentComponent.cs
index e13903f0da..85c98e9a27 100644
--- a/Content.Client/GameObjects/Components/Instruments/InstrumentComponent.cs
+++ b/Content.Client/GameObjects/Components/Instruments/InstrumentComponent.cs
@@ -227,7 +227,7 @@ namespace Content.Client.GameObjects.Components.Instruments
public override void ExposeData(ObjectSerializer serializer)
{
base.ExposeData(serializer);
- serializer.DataField(this, x => Handheld, "handheld", false);
+ serializer.DataField(this, x => x.Handheld, "handheld", false);
serializer.DataField(ref _instrumentProgram, "program", (byte) 1);
serializer.DataField(ref _instrumentBank, "bank", (byte) 0);
serializer.DataField(ref _allowPercussion, "allowPercussion", false);
@@ -349,12 +349,11 @@ namespace Content.Client.GameObjects.Components.Instruments
return true;
}
- ///
- public bool OpenMidi(string filename)
+ public bool OpenMidi(ReadOnlySpan data)
{
SetupRenderer();
- if (_renderer == null || !_renderer.OpenMidi(filename))
+ if (_renderer == null || !_renderer.OpenMidi(data))
{
return false;
}
diff --git a/Content.Client/GameObjects/Components/Mobs/ClientOverlayEffectsComponent.cs b/Content.Client/GameObjects/Components/Mobs/ClientOverlayEffectsComponent.cs
index 8aae18facf..34a3f25e1e 100644
--- a/Content.Client/GameObjects/Components/Mobs/ClientOverlayEffectsComponent.cs
+++ b/Content.Client/GameObjects/Components/Mobs/ClientOverlayEffectsComponent.cs
@@ -141,23 +141,11 @@ namespace Content.Client.GameObjects.Components.Mobs
private void UpdateOverlayConfiguration(OverlayContainer container, Overlay overlay)
{
- var configurableTypes = overlay.GetType()
- .GetInterfaces()
- .Where(type =>
- type.IsGenericType
- && type.GetGenericTypeDefinition() == typeof(IConfigurable<>)
- && container.Parameters.Exists(p => p.GetType() == type.GenericTypeArguments.First()))
- .ToList();
-
- if (configurableTypes.Count > 0)
+ if (overlay is IConfigurableOverlay configurable)
{
- foreach (var type in configurableTypes)
+ foreach (var param in container.Parameters)
{
- var method = type.GetMethod(nameof(IConfigurable