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