Ejemplo n.º 1
0
    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);
        }
    }
Ejemplo n.º 3
0
    private void DialogueUIChangeExpression(string charIdArg, string exprAbrvArg)
    {
        // get dialogue expression from string abbraviation
        CharacterDialogueExpressionType expression = GeneralMethods.
                                                     GetExpressionFromStringAbbreviation(exprAbrvArg);

        _uiManager.DialgUICoordr.SetCharacterPortraitExpression(charIdArg, expression);
    }
Ejemplo n.º 4
0
    /// <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);
        }
    }
Ejemplo n.º 5
0
    /// <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);
 }