private void UpdateArrowByDrag(DragDto dragDto) { var newHeight = _baseHeight * Mathf.Clamp(MaxHeightMultiplier * dragDto.DistanceFactor, 1f, MaxHeightMultiplier); _rectTransform.sizeDelta = new Vector2(_rectTransform.sizeDelta.x, newHeight); _rectTransform.localRotation = Quaternion.AngleAxis(dragDto.Angle, Vector3.forward); }
private void HandleDragFinished(DragDto dragDto) { if (!_isSimulating) { return; } _dragHandler.OnEndDragging -= HandleDragFinished; var command = new AttackRangeCommand(_hero, _heroAttackController, dragDto); FinishSimulation(command); }
private void HandleDragFinished(DragDto dragDto) { if (!_isSimulating) { return; } var command = new MoveCommand(_hero, _heroMovementController, dragDto); _simulationFinishedCallback?.Invoke(command); _isSimulating = false; }
public AttackRangeCommand(Hero hero, HeroAttackController attackController, DragDto dragDto) : base(hero) { _attackController = attackController; _dragDto = dragDto; }
private void HandleDragFinished(DragDto dragDto) { UpdateArrowByDrag(dragDto); Hide(); }
public MoveCommand(Hero hero, IHeroMovement heroMovement, DragDto dragDto) : base(hero) { _heroMovement = heroMovement; _dragDto = dragDto; }