IEnumerator CreateLineFromMousePos()
    {
        while (true)
        {
            if (Input.GetMouseButtonDown(1))
            {
                if (line != null)
                {
                    GameObject.Destroy(line);
                }

                GameStateManager.Instance.SetInactiveState();
                GameStateManager.Instance.SetDragComponentsState();
                yield break;
            }

            LineGeneratorHelper.EndPositionVariables vars = new LineGeneratorHelper.EndPositionVariables(
                line, startPosition, Camera.main.ScreenToWorldPoint(Input.mousePosition), originalScale, originalWidth, oldZAngle);
            (line, oldZAngle) = LineGeneratorHelper.SetEndPositionAndGetAngle(vars);

            //SetEndPosition(Camera.main.ScreenToWorldPoint(Input.mousePosition));

            yield return(null);
        }
    }