Hotfix 1.1.18.1 (real this time)
This commit is contained in:
@@ -1,24 +0,0 @@
|
||||
#nullable enable
|
||||
using Barotrauma.Networking;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace Barotrauma;
|
||||
|
||||
partial class HighlightAction : EventAction
|
||||
{
|
||||
partial void SetHighlightProjSpecific(Entity entity, IEnumerable<Character>? targetCharacters)
|
||||
{
|
||||
if (entity is Item item && GameMain.Server != null)
|
||||
{
|
||||
IEnumerable<Client>? targetClients = null;
|
||||
if (targetCharacters != null)
|
||||
{
|
||||
targetClients = targetCharacters
|
||||
.Select(c => GameMain.Server.ConnectedClients.FirstOrDefault(client => client.Character == c))
|
||||
.Where(c => c != null)!;
|
||||
}
|
||||
GameMain.Server?.CreateEntityEvent(item, new Item.SetHighlightEventData(State, highlightColor, targetClients));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -161,20 +161,6 @@ namespace Barotrauma
|
||||
msg.WriteUInt16(droppedItem.ID);
|
||||
}
|
||||
break;
|
||||
case SetHighlightEventData highlightEventData:
|
||||
bool isTargetedForClient =
|
||||
highlightEventData.TargetClients.IsEmpty ||
|
||||
highlightEventData.TargetClients.Contains(c);
|
||||
msg.WriteBoolean(isTargetedForClient);
|
||||
if (isTargetedForClient)
|
||||
{
|
||||
msg.WriteBoolean(highlightEventData.Highlighted);
|
||||
if (highlightEventData.Highlighted)
|
||||
{
|
||||
msg.WriteColorR8G8B8A8(highlightEventData.Color);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw error($"Unsupported event type {itemEventData.GetType().Name}");
|
||||
}
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
#nullable enable
|
||||
using Barotrauma.Networking;
|
||||
using Microsoft.Xna.Framework;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Linq;
|
||||
|
||||
@@ -19,20 +16,4 @@ partial class Item
|
||||
Items = items.Distinct().ToImmutableArray();
|
||||
}
|
||||
}
|
||||
|
||||
public readonly struct SetHighlightEventData : IEventData
|
||||
{
|
||||
public EventType EventType => EventType.SetHighlight;
|
||||
public readonly bool Highlighted;
|
||||
public readonly Color Color;
|
||||
|
||||
public readonly ImmutableArray<Client> TargetClients;
|
||||
|
||||
public SetHighlightEventData(bool highlighted, Color color, IEnumerable<Client>? targetClients)
|
||||
{
|
||||
Highlighted = highlighted;
|
||||
Color = color;
|
||||
TargetClients = (targetClients ?? Enumerable.Empty<Client>()).ToImmutableArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user