Skip to content

Latest commit

 

History

History
84 lines (72 loc) · 4.2 KB

todo.md

File metadata and controls

84 lines (72 loc) · 4.2 KB

Initial release

  • add plugin possibly plugins ? (ie to split parsing from runner )
  • rename parse_yarn_nodes_nom to something more adapted & nicer
  • for choices, perhaps return the current choice index together with the list of choices from get_current_choices
  • error handling if start node name is not found
  • fix issue with nested choices in runner
  • add examples
    • two characters (player + 1)

      • very simple display/ui
    • rpg style changing portraits

    • speech bubbles, multiple characters (3d)

    • first two examples should use camera2D

    • examples should provide at least some command use

  • cleanup warnings
  • add basic useage docs
  • add captures of the examples
  • remove use as resource examples in docstrings for now

General

  • default to first node in yarn file if no start node is specified ? => bad idea, explicit errors are better

  • accessibility features how to? screen readers etc

  • basic nodes parsing (header + body)

  • details

    • dialogues: with or without character names

    • dialogues: interpolated values

    • dialogues: attributes

    • dialogues: Escaping Text

    • choices: blank line to close a list of choices

    • choices: nested/ indentation handling

    • commands: basic parsing

    • conditional expressions

    • inject tags into statements (might require bigger changes given the current approach)

    • fix empties being pushed into statements list

    • fix choice arrow still present in the first Statement in a choice

    • tags parsing

    • expressions parsing

    • add testing

      • yarn files with title & some basic dialogues
      • yarn files with title & multiple nested levels of choices
    • fix overly sensitive indentation issues

      • we might need to track choice indentation seperatly from Dialogue/Command indentation ie this works : -> Lamik: everything! <> but this does not -> Lamik: everything! <> // notice the space at the start of the line: that changes the "current_indentation" in our tracking, messing things up
    • evaluator:

      • fix issue with reaching end of a branch and not jumping back to previous level/root level
      • remove need to pass yarn_asset to every next_entry call
      • add ability to specify a specific choice directly in addition of previous/next choices
      • rename next_entry() to next() ?
      • next_entry() should return an Option perhaps ? (closer to an iterator, error handling etc)
    • fix command parsing : should dotted parameters be allowed? ie "file.ogg" for example

    • add support for multiple yarn files in a managed way : see https://docs.yarnspinner.dev/using-yarnspinner-with-unity/importing-yarn-files/yarn-projects

  • change "Commands" to YarnCommands, as it otherwise clashes with bevy's Commands

  • bevy 0.10.1 support

  • bevy 0.11 support on bevy_main branch (low priority, only if time allows)

  • does the api of the DialogueRunner make sense ?

  • add testing

  • add examples

  • add docs