Exemple #1
0
    public void SetSpeaker()
    {
        Enum.TryParse(changeSpeaker.ToString(), out Speaker speaker);

        //in case event happens on character change
        switch (speaker)
        {
        case (Speaker.Phoebe):
        {
            break;
        }

        case (Speaker.Axolotl):
        {
            break;
        }

        default:
        {
            break;
        }
        }

        changeSpeaker  = (int)speaker;
        currentSpeaker = Resources.Load <SpeakerAsset>("DialogueSpeakers/" + speaker + "Dialogue");
    }
    private void OnNext()
    {
        DialogueClass _dialogueClass = dialogue.dialogueClass;

        if (currentLineNumber + 1 < _dialogueClass.speakerDialogue.Length)
        {
            currentLineNumber++;

            //int _expressionNumber = 1;

            //_expressionNumber = (int)_dialogueClass.setExpression[currentLineNumber];


            //changeExpression = _expressionNumber;

            //Debug.Log(changeExpression);

            //SetExpression();


            SpeakerAsset _currentSpeakerInfo = _dialogueClass.speakerInfo[currentLineNumber];
            switch (_dialogueClass.location[currentLineNumber])
            {
            case (DialogueBoxPosition.Left):
            {
                imagePoints[0].enabled = true;

                /*if(_dialogueClass.holdExpression[currentLineNumber] == false)
                 * {
                 *  imagePoints[0].sprite = _currentSpeakerInfo.expressionSprites[_expressionNumber];
                 * }*/
                namePoints[0].text = _currentSpeakerInfo.speakerName;

                break;
            }

            case (DialogueBoxPosition.Right):
            {
                imagePoints[1].enabled = true;

                /*if (_dialogueClass.holdExpression[currentLineNumber] == false)
                 * {
                 *  imagePoints[1].sprite = _currentSpeakerInfo.expressionSprites[_expressionNumber];
                 * }*/
                namePoints[1].text = _currentSpeakerInfo.speakerName;
                break;
            }
            }
        }
        else
        {
            Debug.Log("No More Lines");
        }
    }
Exemple #3
0
    // Start is called before the first frame update
    void Start()
    {
        story = new Story(inkJSONAsset.text);

        SceneManager.sceneLoaded += OnSceneLoaded;

        //FIX LATER
        FindObjectOfType <CombatMenu>().menuPauseEvent   += MenuPaused;
        FindObjectOfType <CombatMenu>().menuUnPauseEvent += MenuUnPaused;


        //story.ChoosePathString("tutorial_1");

        BindExternalFunctions();

        currentSpeaker = Resources.Load <SpeakerAsset>("DialogueSpeakers/PhoebeDialogue");

        objectPooler = ObjectPooler.Instance;


        this.textTyper.PrintCompleted.AddListener(this.HandlePrintCompleted);
        this.textTyper.CharacterPrinted.AddListener(this.HandleCharacterPrinted);

        //this.printNextButton.onClick.AddListener(this.HandlePrintNextClicked);
        //this.printNoSkipButton.onClick.AddListener(this.HandlePrintNoSkipClicked);

        //InkStory();

        /*dialogueLines.Enqueue("Hello! My name is... <delay=0.5>NPC</delay>. Got it, <i>bub</i>?");
         * dialogueLines.Enqueue("You can <b>use</b> <i>uGUI</i> <size=40>text</size> <size=20>tag</size> and <color=#ff0000ff>color</color> tag <color=#00ff00ff>like this</color>.");
         * dialogueLines.Enqueue("bold <b>text</b> test <b>bold</b> text <b>test</b>");
         * dialogueLines.Enqueue("You can <size=40>size 40</size> and <size=20>size 20</size>");
         * dialogueLines.Enqueue("You can <color=#ff0000ff>color</color> tag <color=#00ff00ff>like this</color>.");
         * dialogueLines.Enqueue("Sample Shake Animations: <anim=lightrot>Light Rotation</anim>, <anim=lightpos>Light Position</anim>, <anim=fullshake>Full Shake</anim>\nSample Curve Animations: <animation=slowsine>Slow Sine</animation>, <animation=bounce>Bounce Bounce</animation>, <animation=crazyflip>Crazy Flip</animation>");*/

        //StartDialogue();
    }
    public void SetExpression()
    {
        Enum.TryParse(changeExpression.ToString(), out Expression expression);

        //Switch for additional effects, such as a screen shake or a sound
        switch (expression)
        {
        case (Expression.Neutral):
        {
            break;
        }

        case (Expression.Angry):
        {
            break;
        }

        case (Expression.Smug):
        {
            break;
        }

        case (Expression.Think):
        {
            break;
        }

        default:
        {
            break;
        }
        }

        int _expressionNumber = (int)expression;

        changeExpression = _expressionNumber;

        DialogueClass _dialogueClass      = dialogue.dialogueClass;
        SpeakerAsset  _currentSpeakerInfo = _dialogueClass.speakerInfo[currentLineNumber];

        switch (_dialogueClass.location[currentLineNumber])
        {
        case (DialogueBoxPosition.Left):
        {
            imagePoints[0].enabled = true;
            //if (_dialogueClass.holdExpression[currentLineNumber] == false)
            //{
            imagePoints[0].sprite = _currentSpeakerInfo.expressionSprites[_expressionNumber];
            //}
            namePoints[0].text = _currentSpeakerInfo.speakerName;

            break;
        }

        case (DialogueBoxPosition.Right):
        {
            imagePoints[1].enabled = true;
            //if (_dialogueClass.holdExpression[currentLineNumber] == false)
            //{
            imagePoints[1].sprite = _currentSpeakerInfo.expressionSprites[_expressionNumber];
            //}
            namePoints[1].text = _currentSpeakerInfo.speakerName;
            break;
        }
        }


        //Debug.Log("Expression: " + expression);
    }