void CompleteTurn()
    {
        var completeFunc = currentTurnTarget.onComplete;

        currentTurnTarget = null;

        completeFunc?.Invoke();

        UpdateState();
    }
    void CompleteTurn()
    {
        var completeFunc = currentTurnTarget.onComplete;

        currentTurnTarget = null;

        completeFunc?.Invoke();
        Debug.Log("Gewonnen");

        UpdateState();
    }
    public void TurnTo(Vector3 target, float minAngle = 0.0f, Action onComplete = null, float onCompleteDelay = 0.0f,
                       float turnDelay = 0.0f, bool cancelSpecial = false, float rotationSpeedMultiplier      = 1.0f)
    {
        TurnTarget turnTarget = new TurnTarget()
        {
            target                  = target,
            minAngle                = minAngle,
            onComplete              = onComplete,
            onCompleteDelay         = onCompleteDelay,
            turnDelay               = turnDelay,
            cancelSpecial           = cancelSpecial,
            rotationSpeedMultiplier = rotationSpeedMultiplier
        };

        currentTurnTarget = turnTarget;

        UpdateState();
    }
 public void StopTurning()
 {
     currentTurnTarget = null;
     UpdateState();
 }