//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"); }
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)); } } }
//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); }