Ejemplo n.º 1
0
    public void UI_ResponseObjectClick(GameObject responseObj)
    {
        Debug.Log("Response Object Click Event");

        ConversationResponseJSON response = m_activeResponseObjects[responseObj];

        Debug.Log("Text Option Selected: " + response.responseText);

        ClearResponseObjects();
        textDisplay.text = "";

        HandleResponseActions(response);
    }
Ejemplo n.º 2
0
    public static ConversationTreeJSON CreateFromJSON(string treeStr)
    {
        // Debug.Log("Tree String: " + treeStr);
        JSONNode             node     = JSON.Parse(treeStr);
        ConversationTreeJSON treeJSON = JsonUtility.FromJson <ConversationTreeJSON>(node.ToString());

        // Prompts
        treeJSON.prompts = new List <ConversationPromptJSON>();
        foreach (JSONNode promptNode in node["prompts"].AsArray)
        {
            treeJSON.prompts.Add(ConversationPromptJSON.CreateFromJSON(promptNode.ToString()));
        }
        // Responses
        treeJSON.responses = new List <ConversationResponseJSON>();
        foreach (JSONNode responseNode in node["responses"].AsArray)
        {
            treeJSON.responses.Add(ConversationResponseJSON.CreateFromJSON(responseNode.ToString()));
        }

        return(treeJSON);
    }
Ejemplo n.º 3
0
    private void HandleResponseActions(ConversationResponseJSON response)
    {
        foreach (string action in response.responseActionList)
        {
            Debug.Log("Response Action: " + action);
            string[] actionArr = action.Split('|');
            string   actionKey = actionArr[0];
            switch (actionKey)
            {
            case "prompt":
                string actionVal = actionArr[1];
                Debug.Log("Prompt: " + actionVal);
                LoadPrompt(m_currentConversation.conversationTree.GetPrompt(actionVal));
                break;

            case "endConversation":
                EndConversation();
                break;

            default:
                break;
            }
        }
    }