public BrushPreset(BrushPreset other) { Reset(); prefabs = new List <GameObject>(other.prefabs); name = other.name; brushSize = other.brushSize; eraseBrushSize = other.eraseBrushSize; brushSpacing = other.brushSpacing; positionOffset = other.positionOffset; orientationTransformMode = other.orientationTransformMode; orientationMode = other.orientationMode; flipOrientation = other.flipOrientation; rotation = other.rotation; randomizeOrientation = other.randomizeOrientation; scaleTransformMode = other.scaleTransformMode; scaleMode = other.scaleMode; scaleUniformMin = other.scaleUniformMin; scaleUniformMax = other.scaleUniformMax; scalePerAxisMin = other.scalePerAxisMin; scalePerAxisMax = other.scalePerAxisMax; }
public void DuplicateSelectedPresets() { if (!HasSelectedPresets()) { return; } Undo.RegisterCompleteObjectUndo(this, "Duplicate Preset(s)"); for (int presetIndex = 0; presetIndex < presets.Count; presetIndex++) { if (presets[presetIndex].selected) { BrushPreset duplicate = new BrushPreset(presets [presetIndex]); presets [presetIndex].selected = false; duplicate.selected = true; presets.Insert(presetIndex, duplicate); presetIndex++; // move over new inserted duplicate } } }