summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'content/learn/03.variables/default.md')
-rw-r--r--content/learn/03.variables/default.md73
1 files changed, 34 insertions, 39 deletions
diff --git a/content/learn/03.variables/default.md b/content/learn/03.variables/default.md
index 3d0e962..d7fbc48 100644
--- a/content/learn/03.variables/default.md
+++ b/content/learn/03.variables/default.md
@@ -21,69 +21,64 @@ appropriate.
{{< fatecode >}}(fate_version 1)
(local int hero_money)
-(local int price_of_booze)
+(local int price_of_booze 12)
-(set hero_money 42)
-(set price_of_booze 12)
+(set! hero_money 42)
-Once upon a time, starting a story with these words wasn't considered
-a cliche. Starting in a tavern might also not be seen as very
-original. Having the main character be an street orphan, raised by
-some mysterious sage all to end up as a mercenary with an uncommonly
-strong sense of honor probably isn't going to lead to any praises for
-novelty either. Maybe you should drink to that.
+Once upon a time, starting a story with these words wasn't considered a cliche.
+Starting in a tavern might also not be seen as very original. Having the main
+character be an street orphan, raised by some mysterious sage all to end up as
+a mercenary with an uncommonly strong sense of honor probably isn't going to
+lead to any praises for novelty either. Maybe you should drink to that.
(newline)
-Or maybe you shouldn't. This isn't your first mug. Not your second
-either. Drinking to forget that you are a stereotypical hero isn't
-going to solve anything. Worse, the alcoholic trait is part of the
-image.
+Or maybe you shouldn't. This isn't your first mug. Not your second either.
+Drinking to forget that you are a stereotypical hero isn't going to solve
+anything. Worse, the alcoholic trait is part of the image.
(newline)
-As you contemplate your own pointless description, your gaze leaves
-what turns out to be an already empty glass in your hand and finds the
-barman.
+As you contemplate your own pointless description, your gaze leaves what turns
+out to be an already empty glass in your hand and finds the barman.
-(player_choice
- (
- ( Ask the barman for a refill )
- Staring straight at the barman, you raise your glass and
- proclaim:
+(player_choice!
+ (option ( Ask the barman for a refill )
+ Staring straight at the barman, you raise your glass and proclaim:
(newline)
"This soon-to-be world savior needs more booze!"
(newline)
- The barman's lack of reaction is disappointing, but seeing the
- beer being poured does help improve the mood.
+ The barman's lack of reaction is disappointing, but seeing the beer being
+ poured does improve your mood.
(newline)
Satisfied, you hand the barman (var price_of_booze) copper coins.
- (set hero_money
- (- (var hero_money) (var price_of_booze))
- )
+ (set! hero_money (- hero_money price_of_booze))
)
- (
- ( Fall asleep )
- Deciding to break away from the expected storyline, you promptly
- fall asleep.
+ (option ( Fall asleep )
+ Deciding to break away from the expected storyline, you promptly fall
+ asleep.
(newline)
...
(newline)
- Upon waking up, your hard-trained reflexes inform you that
- someone stole all your money.
- (set hero_money 0)
+ Upon waking up, your hard-trained reflexes inform you that someone stole
+ all your money.
+ (set! hero_money 0)
)
)
-(end)
+(end!)
{{< /fatecode >}}
* `(local int hero_money)` declares an `int` variable with the name
- `hero_money`.
-* `(set hero_money 42)` sets the value of the `hero_money` variable to 42.
+ `hero_money`. This variable takes the default value for its type.
+* `(local int price_of_booze 12)` declares an `int` variable with the name
+ `price_of_booze`. This variable takes the value `12`.
+* `(set! hero_money 42)` sets the value of the `hero_money` variable to 42.
* `(var price_of_booze)` returns the current value of the `price_of_booze`
variable.
-* `(- (var hero_money) (var price_of_booze))` returns the result of subtracting
+* `(- hero_money price_of_booze)` returns the result of subtracting
the value of `price_of_booze` to the value of `hero_money`. All operators
- use a prefixed form.
+ use a prefixed form. Because there is no ambiguity about `hero_money` and
+ `price_of_booze` being strings, it is not necessary to write
+ `(- (var hero_money) (var price_of_booze))`.
-`local`, `set`, `player_choice`, and `end`, are instructions. Instructions do
+`local`, `set!`, `player_choice!`, and `end!`, are instructions. Instructions do
not return any value. Thus, they do not add to the printed text.
Having to continue the story from within the `player_choice` structure is going