예제 #1
0
    //called by decision manager when player selects the person to talk to
    public string GetGreeting(int characterID)
    {
        Character tempChar = GameObject.FindWithTag("CharacterManager").GetComponent <CharacterManager>().GetCharacter(characterID);

        PlayerManager.CharacterInfo charInfo = GameObject.Find("PlayerManager").GetComponent <PlayerManager>().GetInfoOn(characterID);

        if (tempChar.GetGreeting() != "")
        {
            return(tempChar.GetGreeting());
        }

        int[] traits = tempChar.GetTraits();
        for (int i = 0; i < 5; i++)
        {
            if (traits[i] == 0)
            {
                charInfo._traits[i] = traits[i];
                return("Well helloooooo there!");
            }
            if (traits[i] == 1)
            {
                charInfo._traits[i] = traits[i];
                if (GameObject.FindWithTag("PlayerManager").GetComponent <PlayerManager>().gender == 0)
                {
                    return("Hello there Mr. inquisitive.");
                }
                return("Hello there Ms. inquisitive.");
            }
            if (traits[i] == 2)
            {
                charInfo._traits[i] = traits[i];
                return("Haha! Fine day isn't it!");
            }
            if (traits[i] == 14)
            {
                charInfo._traits[i] = traits[i];
                return("What do you want kid?");
            }
            if (traits[i] == 17)
            {
                charInfo._traits[i] = traits[i];
                return("HEY!");
            }
            if (traits[i] == 19)
            {
                charInfo._traits[i] = traits[i];
                return("Hello good sir!");
            }
            if (traits[i] == 25)
            {
                charInfo._traits[i] = traits[i];
                return("...");
            }
        }

        return("Hello child");
    }
예제 #2
0
    public void PersonalityCheck(int characterID, int parameter)
    {
        Character tempChar = GameObject.Find("CharacterManager").GetComponent <CharacterManager>().GetCharacter(characterID);

        PlayerManager.CharacterInfo charInfo = GameObject.Find("PlayerManager").GetComponent <PlayerManager>().GetInfoOn(characterID);

        //get the characters preferences
        CharacterManager.loves[]    loves    = tempChar.GetLoves();
        CharacterManager.likes[]    likes    = tempChar.GetLikes();
        CharacterManager.okays[]    okays    = tempChar.GetOkays();
        CharacterManager.dislikes[] dislikes = tempChar.GetDislikes();
        CharacterManager.hates[]    hates    = tempChar.GetHates();

        //if any of them contain the subject in question print a response and update player knowledge
        for (int i = 0; i < 5; i++)
        {
            if ((int)loves[i] == parameter)
            {
                string text = "I love " + loves[i] + ".";
                StartCoroutine(DisplayCharacterResponse(text));
                charInfo._preferences[0, i] = 1;
            }
            else if ((int)likes[i] == parameter)
            {
                string text = "I like " + likes[i] + ".";
                StartCoroutine(DisplayCharacterResponse(text));
                charInfo._preferences[1, i] = 1;
            }
            else if ((int)okays[i] == parameter)
            {
                string text = loves[i] + " is okay.";
                StartCoroutine(DisplayCharacterResponse(text));
                charInfo._preferences[2, i] = 1;
            }
            else if ((int)dislikes[i] == parameter)
            {
                string text = "I don't like " + dislikes[i] + ".";
                StartCoroutine(DisplayCharacterResponse(text));
                charInfo._preferences[3, i] = 1;
            }
            else if ((int)hates[i] == parameter)
            {
                string text = "I hate " + hates[i] + ".";
                StartCoroutine(DisplayCharacterResponse(text));
                charInfo._preferences[4, i] = 1;
            }
            else
            {
                string text = "I don't have on opinion.";
                StartCoroutine(DisplayCharacterResponse(text));
            }
        }
    }
예제 #3
0
    //type of dialogue option that reveals a trait about the character
    public GameObject GetTraitResponse(int questionID, int characterID)
    {
        GameObject characterManager = GameObject.FindWithTag("CharacterManager");
        Character  tempChar         = GameObject.FindWithTag("CharacterManager").GetComponent <CharacterManager>().GetCharacter(characterID);

        PlayerManager.CharacterInfo charInfo = GameObject.Find("PlayerManager").GetComponent <PlayerManager>().GetInfoOn(characterID);

        for (int i = 0; i < 15; i++)
        {
            if (charInfo._traits[i] == -1)
            {
                charInfo._traits[i] = tempChar.GetTraits()[i];
            }
        }

        characterResponseObject.GetComponentsInChildren <Text>()[0].text = "Well I...";

        characterManager.GetComponent <CharacterManager>().UpdateInfoPanel(characterID);

        return(characterResponseObject);
    }