private ObjectPlacementPathManualConstructionSessionData GetManualConstructionSessionData()
        {
            var manualConstructionSessionData = new ObjectPlacementPathManualConstructionSessionData();

            manualConstructionSessionData.Path                    = this;
            manualConstructionSessionData.PathSegments            = _segments;
            manualConstructionSessionData.TileConnectionGridCells = _tileConnectionGridCells;
            manualConstructionSessionData.PathExtensionPlane      = _extensionPlane;
            manualConstructionSessionData.StartObject             = _startObject;

            return(manualConstructionSessionData);
        }
Example #2
0
        public void SetData(ObjectPlacementPathManualConstructionSessionData sessionData)
        {
            if (!_isActive)
            {
                _path                    = sessionData.Path;
                _pathSegments            = sessionData.PathSegments;
                _pathExtensionPlane      = sessionData.PathExtensionPlane;
                _tileConnectionGridCells = sessionData.TileConnectionGridCells;

                _startObject = sessionData.StartObject;
                _startObjectHierarchyWorldOrientedBox = _startObject.GetHierarchyWorldOrientedBox();

                _pathSettings               = _path.Settings;
                _tileConnectionSettings     = _pathSettings.TileConnectionSettings;
                _manualConstructionSettings = _pathSettings.ManualConstructionSettings;
                _heightAdjustmentSettings   = _manualConstructionSettings.HeightAdjustmentSettings;
                _paddingSettings            = _manualConstructionSettings.PaddingSettings;
                _borderSettings             = _manualConstructionSettings.BorderSettings;

                _pathNoTileConnectionsObjectPlacementDataCalculator.Path   = _path;
                _pathWithTileConnectionsObjectPlacementDataCalculator.Path = _path;
            }
        }