v3.0.0-beta2
Pre-release
Pre-release
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>>>
- For example, the following code will emit a warning, because the last
- 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)
andmax(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 beBestLeastRecentlyViewSaliencyStrategy
. - Renamed
RandomBestLeastRecentlyViewSalienceStrategy
to beRandomBestLeastRecentlyViewSaliencyStrategy
.
Removed
- Removed
GetTagsForNode
. This method is replaced withGetHeaderValue(nodeName, "tags")
.