void RegisterWordHit(ClickAreaCtrl cArea, WordGameObjectCtrl wrd)
    {
        if (wrd.isFake)
        {
            //Debug.Log("FAKE HIT");
            ScoreCtrl.FakeClick();
            UIEventManager.FakeWordHitEvent();
            return;
        }

        hitFX = PoolManager.SpawnObject(successWordHitFX);
        HitWordFX hitWordFX = hitFX.GetComponent <HitWordFX>();

        isPerfect = Mathf.Abs(currentAudioTime - wrd.hitTime) < Config.CLICK_PERFECT_TIME_OFFSET;
        if (isPerfect)
        {
            hitWordFX.perfect = true;
        }
        else
        {
            hitWordFX.perfect = false;
        }
        GameLogger.AddTap(wrd.hitTime, currentAudioTime, wrd.wordData.text);
        hitFX.transform.position = cArea.gameObject.transform.position;
        hitWordFX.runAnim();
        ScoreCtrl.WordHit(wrd.orderIndex, currentAudioTime, wrd.hitTime, isPerfect);
    }