You can set an attribute within a section or passage like this:
@set score = 1000
If the value is a number, it will be stored as a number. Otherwise, it will be stored as a string.
For boolean (true/false) values, to set as true:
@set my_true_value
and to set as false:
@set not my_false_value
or alternatively:
@unset my_false_value
For number values, you can increase or decrease the value by 1:
@inc score
@dec health
Or to increase or decrease by other amounts:
@inc score 100
@dec health 5
You can also set an attribute value from a link:
Are you [[male]](start, gender=male) or [[female]](start, gender=female)?
[[start]]:
Your choice has been recorded.
And you can also set a value in JavaScript:
squiffy.set("gender", "female");
You can also set an attributes values in if clause, add “{@ operations}” after condition colon(:), like this:
{if a=1:{@b+=1,c-=1,d=2,not e}}{else:{@b+=2,c+=2,d=3,e}}
You can display the value of an attribute by surrounding it with curly brackets.
You chose {gender}.
You can also read a value using JavaScript:
var gender = squiffy.get("gender");
You can conditionally display text depending on the value of an attribute using “if” inside curly brackets. You can also use “else”:
{if gender=male:You are a man.}{else:You are a woman.}
Or you can compare two attributes, add @ before second attribute, it is treated as a squiffy attribute not value:
{if a=@b:attribute value a and attribute value b are equals.}{else:Are differtents.}