22 lines
827 B
C#
22 lines
827 B
C#
using Content.Shared.Administration.Logs;
|
|
using Content.Shared.Database;
|
|
using Content.Shared.Ghost;
|
|
using Content.Shared.Mind.Components;
|
|
using Content.Shared.Teleportation.Systems;
|
|
using Robust.Shared.Map;
|
|
|
|
namespace Content.Server.Teleportation;
|
|
|
|
public sealed class PortalSystem : SharedPortalSystem
|
|
{
|
|
[Dependency] private readonly ISharedAdminLogManager _adminLogger = default!;
|
|
|
|
// TODO Move to shared
|
|
protected override void LogTeleport(EntityUid portal, EntityUid subject, EntityCoordinates source,
|
|
EntityCoordinates target)
|
|
{
|
|
if (HasComp<MindContainerComponent>(subject) && !HasComp<GhostComponent>(subject))
|
|
_adminLogger.Add(LogType.Teleport, LogImpact.Low, $"{ToPrettyString(subject):player} teleported via {ToPrettyString(portal)} from {source} to {target}");
|
|
}
|
|
}
|