Make portals use ICollideBehavior and set collidable.Hard to false (#2186)

This commit is contained in:
DrSmugleaf
2020-10-10 13:32:42 +02:00
committed by GitHub
parent 89f5ec31d2
commit fe39b5fb71
11 changed files with 107 additions and 130 deletions

View File

@@ -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,
}
}