Make portals use ICollideBehavior and set collidable.Hard to false (#2186)
This commit is contained in:
@@ -1,25 +0,0 @@
|
||||
using System;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared.GameObjects.Components.Movement
|
||||
{
|
||||
public abstract class SharedPortalComponent : Component {
|
||||
public override string Name => "Portal";
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public enum PortalVisuals
|
||||
{
|
||||
State
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public enum PortalState
|
||||
{
|
||||
RecentlyTeleported,
|
||||
Pending,
|
||||
UnableToTeleport,
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.GameObjects.Components;
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared.GameObjects.Components.Portal
|
||||
{
|
||||
public abstract class SharedPortalComponent : Component
|
||||
{
|
||||
public override string Name => "Portal";
|
||||
|
||||
public override void OnAdd()
|
||||
{
|
||||
base.OnAdd();
|
||||
|
||||
if (Owner.TryGetComponent<ICollidableComponent>(out var collidable))
|
||||
{
|
||||
collidable.Hard = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public enum PortalVisuals
|
||||
{
|
||||
State
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public enum PortalState
|
||||
{
|
||||
RecentlyTeleported,
|
||||
Pending,
|
||||
UnableToTeleport,
|
||||
}
|
||||
|
||||
}
|
||||
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.Map;
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared.GameObjects.Components.Movement
|
||||
namespace Content.Shared.GameObjects.Components.Portal
|
||||
{
|
||||
public enum ItemTeleporterState
|
||||
{
|
||||
Reference in New Issue
Block a user