/// <summary> /// Clone the specified brick. /// </summary> /// <param name="brick">Brick.</param> /// <param name="eventData">Event data.</param> public void Clone(DragableBrick brick, PointerEventData eventData) { var newBrick = BrickBuilder.Clone(brick); if (newBrick is DragableBrick) { dragableBrick = newBrick as DragableBrick; base.OnBeginDrag(dragableBrick, eventData); } }
/// <summary> /// Add one more the same brick after one frame /// </summary> /// <returns>The adding.</returns> public IEnumerator RestartAdding(Brick brick) { yield return(null); var newBrick = BrickBuilder.Clone(brick); if (newBrick != null) { Add(newBrick, false); } }
/// <summary> /// Clone selected bricks. /// </summary> /// <param name="brick">Clicked brick being selected</param> /// <param name="eventData">Event data.</param> public void CloneSelection(DragableBrick brick, PointerEventData eventData) { List <SelectableBrick> clonedBricks = new List <SelectableBrick>(); var bricks = SelectionManager.instance.GetSelected(); //clone bricks foreach (var brickToClone in bricks) { var newBrick = BrickBuilder.Clone(brickToClone); clonedBricks.Add(newBrick as SelectableBrick); } //start moving base.OnBeginDrag(clonedBricks, eventData); }