Example #1
0
        public static IEdgePortalModel CreateOppositePortal(this IGraphModel self, IEdgePortalModel edgePortalModel, SpawnFlags spawnFlags = SpawnFlags.Default)
        {
            var offset = Vector2.zero;

            switch (edgePortalModel)
            {
            case IEdgePortalEntryModel _:
                offset = k_PortalOffset;
                break;

            case IEdgePortalExitModel _:
                offset = -k_PortalOffset;
                break;
            }
            var currentPos = edgePortalModel.Position;

            return(self.CreateOppositePortal(edgePortalModel, currentPos + offset, spawnFlags));
        }