// Start is called before the first frame update.
    void Start()
    {
        HumanoidSetUp setUp = this.GetComponentInParent <HumanoidSetUp>();

        animFollow = setUp.animFollow;

        maxForceCoefficient       = animFollow.forceCoefficient;
        maxTorqueCoefficient      = animFollow.torqueCoefficient;
        currentNumberOfCollisions = 0;
        currentDeadStep           = deadTime;
        currentStrength           = 1.0f;
    }
    // Awake() is called before all Start() methods
    void Awake()
    {
        if (masterRoot == null)
        {
            Debug.LogError("masterRoot not assigned.");
        }
        if (slaveRoot == null)
        {
            Debug.LogError("slaveRoot not assigned.");
        }
        if (characterCamera == null)
        {
            Debug.LogError("characterCamera not assigned.");
        }

        masterController = this.GetComponentInChildren <MasterController>();
        if (masterController == null)
        {
            Debug.LogError("MasterControler not found.");
        }

        slaveController = this.GetComponentInChildren <SlaveController>();
        if (slaveController == null)
        {
            Debug.LogError("SlaveController not found.");
        }

        animFollow = this.GetComponentInChildren <AnimationFollowing>();
        if (animFollow == null)
        {
            Debug.LogError("AnimationFollowing not found.");
        }

        anim = this.GetComponentInChildren <Animator>();
        if (anim == null)
        {
            Debug.LogError("Animator not found.");
        }
    }