void NextSentence() { isTyping = true; if (index < sentence.Length - 1) { index++; textDisplay.text = ""; StartCoroutine(Talk()); isTyping = false; } else//conversation complete { Global.HAVING_A_CONVERSATION = false; //my_rigidBody.isKinematic = false; Initialized = false; conversationOver = true; DialogueEvents.FireAnEvent_OnDialogueEnd(this); //Debug.Log(this + " fired an OnDialogueEnd"); GetComponentInParent <QuestGiver>().EnableAndAssignMyQuest(assignsQuestWhenOver); //Debug.Log("Conversation complete, achievement unlocked");//TODO achievement system popup PlayerController player = ObjectFinder.PlayerController; //Debug.Log("dialogue fetched " + player); player.alreadySpeaking = false; Global.USER_INPUT_ENABLED = true; player.transform.rotation = Quaternion.identity; Rigidbody playersRigidBody = player.GetComponent <Rigidbody>(); playersRigidBody.constraints = RigidbodyConstraints.None; //unfreeze playersRigidBody.constraints = RigidbodyConstraints.FreezeRotation; //refreeze to ground Invoke("ClearText", 2f); textDisplay.enabled = false; FacingFriend = false; //reset secret dialogue flag so they can load another conversation GetComponentInParent <QuestGiver>().hasDisocveredSecretDialogue = false; if (dialogueID == "Ip-0") { NPC_AI ip_AI = GetComponentInParent <NPC_AI>(); ip_AI.GoHome(); } } }