public void SetupCharacterExpression(CharacterDialogueExpressionType expressionArg) { currentExpression = expressionArg; // sets the portrait image based on the current character's outfit portrait set RefreshPortraitImage(); }
/// <summary> /// Returns the portrait sprite asscoaited with the given expression. /// </summary> /// <param name="expressionArg"></param> /// <returns></returns> public Sprite GetAppropriatePortrait(CharacterDialogueExpressionType expressionArg) { // get matching data based on the given expression SerializableDataCharacterDialogueExpressionTypeAndSprite matchingData = GetSerialDataFromExpression(expressionArg); // if no matching data was found if (matchingData == null) { // get matching data based on the default expression matchingData = GetSerialDataFromExpression(defaultExpression); } // if matching data WAS found if (matchingData != null) { // return the data's sprite return(matchingData.valueSprite); } // else NO match was ever found else { // return a NULL sprite return(null); } }
private void DialogueUIChangeExpression(string charIdArg, string exprAbrvArg) { // get dialogue expression from string abbraviation CharacterDialogueExpressionType expression = GeneralMethods. GetExpressionFromStringAbbreviation(exprAbrvArg); _uiManager.DialgUICoordr.SetCharacterPortraitExpression(charIdArg, expression); }
/// <summary> /// Sets the given character to have the given expression. /// </summary> /// <param name="charIdArg"></param> /// <param name="expressionArg"></param> public void SetCharacterPortraitExpression(string charIdArg, CharacterDialogueExpressionType expressionArg) { // get the given character's associated character portrait DialogueCharacterPortraitController charPortrait = GetCharacterPortraitInScene(charIdArg); // if portrait found if (charPortrait != null) { // set portrait's expression to given expression charPortrait.SetupCharacterExpression(expressionArg); } }
/// <summary> /// Places the associated character portrait in the dialogue scene. /// </summary> /// <param name="charIdArg"></param> public void CharacterPortraitEnterDialogueScene(string charIdArg, CharacterDialogueExpressionType expressionArg) { // if character portrait is already in scene if (IsCharacterPortraitInScene(charIdArg)) { // DONT continue code return; } // get character data for given char ID CharacterData charInDialogueScene = GetCharacterInDialogueScene(charIdArg); // if char data WAS found if (charInDialogueScene != null) { // get an unused character portrait DialogueCharacterPortraitController unusedPort = GetUnusedCharacterPortrait(); // if an available dialogue portrait was found if (unusedPort != null) { // assign the character data to the dialogue portrait unusedPort.SetupCharacterData(charInDialogueScene); // asign the character's expression to the dialogue portrait unusedPort.SetupCharacterExpression(expressionArg); // activate the portrait unusedPort.gameObject.SetActive(true); /*// set new portrait's position to their appropriate position * unusedPort.transform.position = GetAppropriateDialoguePortraitPosition( * GetActiveDialoguePortraits().Count, GetDialoguePortaitOrderNumber(charIdArg));*/ // play appear animation for the dialogue portrait unusedPort.PlayAnimationAppear(); // set the entering character as the character that is currently speaking //SetCharSpeaker(charInDialogueScene); } } // moves all active character portraits to their appropriate positions RefreshDialoguePortraitPositions(); }
private SerializableDataCharacterDialogueExpressionTypeAndSprite GetSerialDataFromExpression( CharacterDialogueExpressionType expressionArg) { return(expressionToPortrait.FirstOrDefault(iterData => iterData.valueExpression == expressionArg)); }
private void Setup(SerializableDataCharacterDialogueExpressionTypeAndSprite templateArg) { valueExpression = templateArg.valueExpression; valueSprite = templateArg.valueSprite; }
private void Setup(CharacterDialogueExpressionType expressionArg, Sprite spriteArg) { valueExpression = expressionArg; valueSprite = spriteArg; }
private void Setup() { valueExpression = CharacterDialogueExpressionType.Neutral; valueSprite = null; }
public SerializableDataCharacterDialogueExpressionTypeAndSprite( CharacterDialogueExpressionType expressionArg, Sprite spriteArg) { Setup(expressionArg, spriteArg); }