MarkupAttribute¶
A MarkupAttribute is a descriptor of a subrange of text in a line, demarcated with markup
tags. For example, in a .yarn line below there are two ranges of text surrounded by markup tags,
and therefore there will be two MarkupAttributes associated with this line:
[b]Jenny[/b] is a library based on \
[link url="docs.yarnspinner.dev"]YarnSpinner[/link] for Unity.
These MarkupAttributes can be found in the .attributes property of a DialogueLine.
Properties¶
- name
String The name of the markup tag. In the example above, the name of the first attribute is
"b", and the second is"link".- start, end
int The location of the marked-up span within the final text of the line. The first index is inclusive, while the second is exclusive. The
startmay be equal toendfor a zero-width markup attribute.- length
int The length of marked-up text. This is always equal to
end - start.- parameters
Map<String, dynamic> The set of parameters associated with this markup attribute. In the example above, the first markup attribute has no parameters, so this map will be empty. The second markup attribute has a single parameter, so this map will be equal to
{"url": "docs.yarnspinner.dev"}.The type of each parameter will be either
String,num, orbool, depending on the type of expression give in the.yarnscript. The expressions for parameter values can be dynamic, that is they can be evaluated at runtime. In the example below, the parametercolorwill be equal to the value of the variable$color, which may change each time the line is run.My [i]favorite[/i] color is [bb color=$color]{$color}[/bb].