Skip to content

v3.0.0-beta2

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 05 Mar 05:19

This is the compiler for Yarn Spinner. If you want to use Yarn Spinner in a Unity game, please see the releases page for Yarn Spinner for Unity!

Yarn Spinner is made possible by your generous patronage. Please consider supporting Yarn Spinner's development by becoming a patron!

Added

  • The compiler will now warn if additional text is present on the same line before or after commands and other statements.
    • For example, the following code will emit a warning, because the last > character is likely a typo: <<wait 5>>>
  • Added a new method, Dialogue.GetHeaders, which returns the collection of headers present on a node.
  • Added a new method, Dialogue.GetHeaderValue, which returns the value of the specified header on a node.
  • Language Server: Nodes that are part of a node group now show their condition complexity as a code lens.
  • Added a new method, Dialogue.HasSalientContent(nodegroup), which returns a bool if there is any salient content for the requested nodegroup.
  • Added min(a,b) and max(a,b) to the standard library. We genuinely thought we'd add this earlier.
  • Added unwrapped TryGetProperty calls to markup, allowing direct access to the type if you know it ahead of time.

Changed

  • Commands are now better at checking to see if the first word is a keyword (e.g. return) or a word that just begins with a keyword (returnToMenu).
  • Fixed an error where the compiler would crash if an error expression resulted in the implicit declaration of a variable (for example, <<set $x = >>).
  • Fixed an error where whitespace consumption of markup could extend beyond it's immediate younger text sibling.
  • Renamed BestLeastRecentlyViewSalienceStrategy to be BestLeastRecentlyViewSaliencyStrategy.
  • Renamed RandomBestLeastRecentlyViewSalienceStrategy to be RandomBestLeastRecentlyViewSaliencyStrategy.

Removed

  • Removed GetTagsForNode. This method is replaced with GetHeaderValue(nodeName, "tags").