private void HandleConnector(Bounds portalBounds, GridPortalComponent p) { var g1 = GridManager.instance.GetGridComponent(_portalRectStart); var g2 = GridManager.instance.GetGridComponent(_portalRectEnd); if (g1 != null && g2 != null && g1 != g2) { var p1 = EditorUtilities.SnapToGridEdge(g1, portalBounds, _gridConnectMode); var p2 = EditorUtilities.SnapToGridEdge(g2, portalBounds, _gridConnectMode); if (p.relativeToTransform) { p1.center = p.transform.InverseTransformPoint(p1.center); p2.center = p.transform.InverseTransformPoint(p2.center); } p.portalOne = p1; p.portalTwo = p2; } else { HandleNormal(portalBounds, p); EnsureValidConnector(p); } }