mirror of
https://github.com/ganelson/inform.git
synced 2024-06-30 22:14:58 +03:00
Improved test coverage for dialogue
This commit is contained in:
parent
8039a9a65d
commit
4f882d5787
|
@ -1,6 +1,6 @@
|
|||
# Inform 7
|
||||
|
||||
[Version](notes/versioning.md): 10.2.0-beta+6V72 'Krypton' (27 September 2022)
|
||||
[Version](notes/versioning.md): 10.2.0-beta+6V73 'Krypton' (28 September 2022)
|
||||
|
||||
## About Inform
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
Prerelease: beta
|
||||
Build Date: 27 September 2022
|
||||
Build Number: 6V72
|
||||
Build Date: 28 September 2022
|
||||
Build Number: 6V73
|
||||
|
|
|
@ -425,14 +425,14 @@ performed only after or before other beats.
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">NEXT_DBC:</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">previous</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">previous</span><span class="plain-syntax">-></span><span class="element-syntax">under_heading</span><span class="plain-syntax"> == </span><span class="identifier-syntax">db</span><span class="plain-syntax">-></span><span class="element-syntax">under_heading</span><span class="plain-syntax">)) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">iac</span><span class="plain-syntax">++;</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">db</span><span class="plain-syntax">-></span><span class="element-syntax">immediately_after</span><span class="plain-syntax"> = </span><a href="6-dlg.html#SP7" class="function-link"><span class="function-syntax">Dialogue::rvalue_from_dialogue_beat</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">previous</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">db</span><span class="plain-syntax">-></span><span class="element-syntax">immediately_after</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Rvalues::from_instance</span><span class="plain-syntax">(</span><span class="identifier-syntax">previous</span><span class="plain-syntax">-></span><span class="element-syntax">as_instance</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="6-db.html#SP6_1_1" class="named-paragraph-link"><span class="named-paragraph">Issue PM_NoPreviousBeat problem</span><span class="named-paragraph-number">6.1.1</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">LATER_DBC:</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">previous</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">previous</span><span class="plain-syntax">-></span><span class="element-syntax">under_heading</span><span class="plain-syntax"> == </span><span class="identifier-syntax">db</span><span class="plain-syntax">-></span><span class="element-syntax">under_heading</span><span class="plain-syntax">)) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">desc</span><span class="plain-syntax"> = </span><a href="6-dlg.html#SP7" class="function-link"><span class="function-syntax">Dialogue::rvalue_from_dialogue_beat</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">previous</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">desc</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Rvalues::from_instance</span><span class="plain-syntax">(</span><span class="identifier-syntax">previous</span><span class="plain-syntax">-></span><span class="element-syntax">as_instance</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">ADD_TO_LINKED_LIST</span><span class="plain-syntax">(</span><span class="identifier-syntax">desc</span><span class="plain-syntax">, </span><span class="identifier-syntax">parse_node</span><span class="plain-syntax">, </span><span class="identifier-syntax">db</span><span class="plain-syntax">-></span><span class="element-syntax">some_time_after</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="6-db.html#SP6_1_1" class="named-paragraph-link"><span class="named-paragraph">Issue PM_NoPreviousBeat problem</span><span class="named-paragraph-number">6.1.1</span></a></span><span class="plain-syntax">;</span>
|
||||
|
|
|
@ -157,22 +157,22 @@ specific beats and lines to be represented as rvalues, both inside the compiler
|
|||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_from_dialogue_beat</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Dialogue::rvalue_from_dialogue_beat</span></span>:<br/>Dialogue Beats - <a href="6-db.html#SP6_1">§6.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_beat</span><span class="plain-syntax"> *</span><span class="identifier-syntax">val</span><span class="plain-syntax">) {</span>
|
||||
<span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_from_dialogue_beat</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_beat</span><span class="plain-syntax"> *</span><span class="identifier-syntax">val</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">CONV_FROM</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_beat</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_dialogue_beat</span><span class="plain-syntax">) }</span>
|
||||
<span class="reserved-syntax">dialogue_beat</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_to_dialogue_beat</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">Dialogue::rvalue_to_dialogue_beat</span></span>:<br/><a href="6-dlg.html#SP8">§8</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec</span><span class="plain-syntax">) { </span><span class="identifier-syntax">CONV_TO</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_beat</span><span class="plain-syntax">) }</span>
|
||||
<span class="reserved-syntax">dialogue_beat</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_to_dialogue_beat</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Dialogue::rvalue_to_dialogue_beat</span></span>:<br/><a href="6-dlg.html#SP8">§8</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec</span><span class="plain-syntax">) { </span><span class="identifier-syntax">CONV_TO</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_beat</span><span class="plain-syntax">) }</span>
|
||||
<span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_from_dialogue_line</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_line</span><span class="plain-syntax"> *</span><span class="identifier-syntax">val</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">CONV_FROM</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_line</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_dialogue_line</span><span class="plain-syntax">) }</span>
|
||||
<span class="reserved-syntax">dialogue_line</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_to_dialogue_line</span><button class="popup" onclick="togglePopup('usagePopup6')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup6">Usage of <span class="code-font"><span class="function-syntax">Dialogue::rvalue_to_dialogue_line</span></span>:<br/><a href="6-dlg.html#SP8">§8</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec</span><span class="plain-syntax">) { </span><span class="identifier-syntax">CONV_TO</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_line</span><span class="plain-syntax">) }</span>
|
||||
<span class="reserved-syntax">dialogue_line</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_to_dialogue_line</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">Dialogue::rvalue_to_dialogue_line</span></span>:<br/><a href="6-dlg.html#SP8">§8</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec</span><span class="plain-syntax">) { </span><span class="identifier-syntax">CONV_TO</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_line</span><span class="plain-syntax">) }</span>
|
||||
<span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_from_dialogue_choice</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_choice</span><span class="plain-syntax"> *</span><span class="identifier-syntax">val</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">CONV_FROM</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_choice</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_dialogue_choice</span><span class="plain-syntax">) }</span>
|
||||
<span class="reserved-syntax">dialogue_choice</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_to_dialogue_choice</span><button class="popup" onclick="togglePopup('usagePopup7')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup7">Usage of <span class="code-font"><span class="function-syntax">Dialogue::rvalue_to_dialogue_choice</span></span>:<br/><a href="6-dlg.html#SP8">§8</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec</span><span class="plain-syntax">) { </span><span class="identifier-syntax">CONV_TO</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_choice</span><span class="plain-syntax">) }</span>
|
||||
<span class="reserved-syntax">dialogue_choice</span><span class="plain-syntax"> *</span><span class="function-syntax">Dialogue::rvalue_to_dialogue_choice</span><button class="popup" onclick="togglePopup('usagePopup6')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup6">Usage of <span class="code-font"><span class="function-syntax">Dialogue::rvalue_to_dialogue_choice</span></span>:<br/><a href="6-dlg.html#SP8">§8</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec</span><span class="plain-syntax">) { </span><span class="identifier-syntax">CONV_TO</span><span class="plain-syntax">(</span><span class="reserved-syntax">dialogue_choice</span><span class="plain-syntax">) }</span>
|
||||
</pre>
|
||||
<p class="commentary firstcommentary"><a id="SP8" class="paragraph-anchor"></a><b>§8. </b>These can be compared at compile time, which means that type-checking can be
|
||||
used to select phrases or rules depending on specific beats or lines.
|
||||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Dialogue::compare_CONSTANT</span><button class="popup" onclick="togglePopup('usagePopup8')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup8">Usage of <span class="code-font"><span class="function-syntax">Dialogue::compare_CONSTANT</span></span>:<br/><a href="6-dlg.html#SP1">§1</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec1</span><span class="plain-syntax">, </span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec2</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> *</span><span class="identifier-syntax">rv</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Dialogue::compare_CONSTANT</span><button class="popup" onclick="togglePopup('usagePopup7')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup7">Usage of <span class="code-font"><span class="function-syntax">Dialogue::compare_CONSTANT</span></span>:<br/><a href="6-dlg.html#SP1">§1</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec1</span><span class="plain-syntax">, </span><span class="identifier-syntax">parse_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">spec2</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> *</span><span class="identifier-syntax">rv</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Node::get_kind_of_value</span><span class="plain-syntax">(</span><span class="identifier-syntax">spec1</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">Kinds::eq</span><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_dialogue_beat</span><span class="plain-syntax">)) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="6-dlg.html#SP7" class="function-link"><span class="function-syntax">Dialogue::rvalue_to_dialogue_beat</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">spec1</span><span class="plain-syntax">) ==</span>
|
||||
|
@ -220,7 +220,7 @@ used to select phrases or rules depending on specific beats or lines.
|
|||
<span class="identifier-syntax">MAKE_ANNOTATION_FUNCTIONS</span><span class="plain-syntax">(</span><span class="identifier-syntax">constant_dialogue_line</span><span class="plain-syntax">, </span><span class="reserved-syntax">dialogue_line</span><span class="plain-syntax">)</span>
|
||||
<span class="identifier-syntax">MAKE_ANNOTATION_FUNCTIONS</span><span class="plain-syntax">(</span><span class="identifier-syntax">constant_dialogue_choice</span><span class="plain-syntax">, </span><span class="reserved-syntax">dialogue_choice</span><span class="plain-syntax">)</span>
|
||||
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Dialogue::declare_annotations</span><button class="popup" onclick="togglePopup('usagePopup9')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup9">Usage of <span class="code-font"><span class="function-syntax">Dialogue::declare_annotations</span></span>:<br/><a href="6-dlg.html#SP1">§1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">void</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Dialogue::declare_annotations</span><button class="popup" onclick="togglePopup('usagePopup8')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup8">Usage of <span class="code-font"><span class="function-syntax">Dialogue::declare_annotations</span></span>:<br/><a href="6-dlg.html#SP1">§1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">void</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Annotations::declare_type</span><span class="plain-syntax">(</span><span class="constant-syntax">constant_dialogue_beat_ANNOT</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><a href="6-dlg.html#SP10" class="function-link"><span class="function-syntax">Dialogue::write_constant_dialogue_beat_ANNOT</span></a><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Annotations::allow</span><span class="plain-syntax">(</span><span class="identifier-syntax">CONSTANT_NT</span><span class="plain-syntax">, </span><span class="constant-syntax">constant_dialogue_beat_ANNOT</span><span class="plain-syntax">);</span>
|
||||
|
|
|
@ -299,7 +299,7 @@ current function:
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">Produce::rtrue</span><span class="plain-syntax">(</span><a href="2-emt.html#SP1" class="function-link"><span class="function-syntax">Emit::tree</span></a><span class="plain-syntax">());</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">EmitCode::rfalse</span><button class="popup" onclick="togglePopup('usagePopup25')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup25">Usage of <span class="code-font"><span class="function-syntax">EmitCode::rfalse</span></span>:<br/>Group Together - <a href="4-gt.html#SP3">§3</a><br/>Adjectives - <a href="5-adj.html#SP6_1">§6.1</a>, <a href="5-adj.html#SP15">§15</a><br/>Chronology - <a href="5-chr.html#SP8">§8</a><br/>Conjugations - <a href="5-cnj.html#SP7">§7</a><br/>Equations - <a href="5-eqt.html#SP1">§1</a><br/>Backdrop Instances - <a href="5-bi.html#SP2_1">§2.1</a>, <a href="5-bi.html#SP2_2">§2.2</a><br/>Region Instances - <a href="5-ri.html#SP2">§2</a><br/>Scene Instances - <a href="5-si.html#SP3">§3</a><br/>Dialogue Beat Instances - <a href="5-dbi.html#SP2_6_1">§2.6.1</a>, <a href="5-dbi.html#SP2_6_1_1">§2.6.1.1</a>, <a href="5-dbi.html#SP2_6_2_1">§2.6.2.1</a>, <a href="5-dbi.html#SP2_6_3">§2.6.3</a>, <a href="5-dbi.html#SP2_7">§2.7</a>, <a href="5-dbi.html#SP2_7_1">§2.7.1</a><br/>Dialogue - <a href="5-dli.html#SP3_10_1">§3.10.1</a>, <a href="5-dli.html#SP3_11">§3.11</a>, <a href="5-dli.html#SP3_12">§3.12</a>, <a href="5-dli.html#SP3_14_3">§3.14.3</a><br/>Dialogue Choice Instances - <a href="5-dci.html#SP3_5_1">§3.5.1</a>, <a href="5-dci.html#SP3_6">§3.6</a><br/>Rulebooks - <a href="5-rlb.html#SP15">§15</a><br/>Relations - <a href="5-rlt.html#SP6_4">§6.4</a>, <a href="5-rlt.html#SP6_4_2">§6.4.2</a>, <a href="5-rlt.html#SP6_4_3">§6.4.3</a>, <a href="5-rlt.html#SP6_4_4">§6.4.4</a>, <a href="5-rlt.html#SP6_4_9_1">§6.4.9.1</a>, <a href="5-rlt.html#SP19_3">§19.3</a>, <a href="5-rlt.html#SP21">§21</a><br/>Named Action Patterns - <a href="5-nap.html#SP3">§3</a><br/>Noun Filter Tokens - <a href="7-nft.html#SP3_2">§3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">void</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">EmitCode::rfalse</span><button class="popup" onclick="togglePopup('usagePopup25')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup25">Usage of <span class="code-font"><span class="function-syntax">EmitCode::rfalse</span></span>:<br/>Group Together - <a href="4-gt.html#SP3">§3</a><br/>Adjectives - <a href="5-adj.html#SP6_1">§6.1</a>, <a href="5-adj.html#SP15">§15</a><br/>Chronology - <a href="5-chr.html#SP8">§8</a><br/>Conjugations - <a href="5-cnj.html#SP7">§7</a><br/>Equations - <a href="5-eqt.html#SP1">§1</a><br/>Backdrop Instances - <a href="5-bi.html#SP2_1">§2.1</a>, <a href="5-bi.html#SP2_2">§2.2</a><br/>Region Instances - <a href="5-ri.html#SP2">§2</a><br/>Scene Instances - <a href="5-si.html#SP3">§3</a><br/>Dialogue Beat Instances - <a href="5-dbi.html#SP2_6_1_1">§2.6.1.1</a>, <a href="5-dbi.html#SP2_6_2_1">§2.6.2.1</a>, <a href="5-dbi.html#SP2_6_3">§2.6.3</a>, <a href="5-dbi.html#SP2_7">§2.7</a>, <a href="5-dbi.html#SP2_7_1">§2.7.1</a><br/>Dialogue - <a href="5-dli.html#SP3_10_1">§3.10.1</a>, <a href="5-dli.html#SP3_11">§3.11</a>, <a href="5-dli.html#SP3_12">§3.12</a>, <a href="5-dli.html#SP3_14_3">§3.14.3</a><br/>Dialogue Choice Instances - <a href="5-dci.html#SP3_5_1">§3.5.1</a>, <a href="5-dci.html#SP3_6">§3.6</a><br/>Rulebooks - <a href="5-rlb.html#SP15">§15</a><br/>Relations - <a href="5-rlt.html#SP6_4">§6.4</a>, <a href="5-rlt.html#SP6_4_2">§6.4.2</a>, <a href="5-rlt.html#SP6_4_3">§6.4.3</a>, <a href="5-rlt.html#SP6_4_4">§6.4.4</a>, <a href="5-rlt.html#SP6_4_9_1">§6.4.9.1</a>, <a href="5-rlt.html#SP19_3">§19.3</a>, <a href="5-rlt.html#SP21">§21</a><br/>Named Action Patterns - <a href="5-nap.html#SP3">§3</a><br/>Noun Filter Tokens - <a href="7-nft.html#SP3_2">§3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">void</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Produce::rfalse</span><span class="plain-syntax">(</span><a href="2-emt.html#SP1" class="function-link"><span class="function-syntax">Emit::tree</span></a><span class="plain-syntax">());</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
</pre>
|
||||
|
|
|
@ -300,7 +300,6 @@ function togglePopup(material_id) {
|
|||
<span class="plain-syntax"> </span><a href="2-ec.html#SP5" class="function-link"><span class="function-syntax">EmitCode::code</span></a><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ec.html#SP3" class="function-link"><span class="function-syntax">EmitCode::down</span></a><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-dbi.html#SP2_6_1_1" class="named-paragraph-link"><span class="named-paragraph">Return false if latest does not match the immediately after description</span><span class="named-paragraph-number">2.6.1.1</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ec.html#SP14" class="function-link"><span class="function-syntax">EmitCode::rfalse</span></a><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ec.html#SP3" class="function-link"><span class="function-syntax">EmitCode::up</span></a><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ec.html#SP3" class="function-link"><span class="function-syntax">EmitCode::up</span></a><span class="plain-syntax">();</span>
|
||||
</pre>
|
||||
|
|
|
@ -1,33 +1,33 @@
|
|||
100.0% in inform7 run
|
||||
71.2% in compilation to Inter
|
||||
51.2% in //Sequence::undertake_queued_tasks//
|
||||
4.5% in //MajorNodes::pre_pass//
|
||||
3.3% in //MajorNodes::pass_1//
|
||||
1.7% in //ImperativeDefinitions::assess_all//
|
||||
1.5% in //RTPhrasebook::compile_entries//
|
||||
1.3% in //RTKindConstructors::compile//
|
||||
71.3% in compilation to Inter
|
||||
50.5% in //Sequence::undertake_queued_tasks//
|
||||
4.8% in //MajorNodes::pre_pass//
|
||||
3.5% in //MajorNodes::pass_1//
|
||||
1.8% in //ImperativeDefinitions::assess_all//
|
||||
1.4% in //RTKindConstructors::compile//
|
||||
1.4% in //RTPhrasebook::compile_entries//
|
||||
1.1% in //Sequence::lint_inter//
|
||||
0.5% in //ImperativeDefinitions::compile_first_block//
|
||||
0.5% in //MajorNodes::pass_2//
|
||||
0.5% in //Sequence::undertake_queued_tasks//
|
||||
0.5% in //Sequence::undertake_queued_tasks//
|
||||
0.5% in //World::stage_V//
|
||||
0.3% in //ImperativeDefinitions::compile_first_block//
|
||||
0.1% in //CompletionModule::compile//
|
||||
0.1% in //InferenceSubjects::emit_all//
|
||||
0.1% in //RTKindConstructors::compile_permissions//
|
||||
0.1% in //Task::make_built_in_kind_constructors//
|
||||
0.1% in //World::stages_II_and_III//
|
||||
2.6% not specifically accounted for
|
||||
25.8% in running Inter pipeline
|
||||
10.1% in step 14/15: generate inform6 -> auto.inf
|
||||
5.6% in step 5/15: load-binary-kits
|
||||
5.4% in step 6/15: make-synoptic-module
|
||||
1.3% in step 9/15: make-identifiers-unique
|
||||
2.8% not specifically accounted for
|
||||
25.6% in running Inter pipeline
|
||||
10.0% in step 14/15: generate inform6 -> auto.inf
|
||||
5.7% in step 5/15: load-binary-kits
|
||||
5.3% in step 6/15: make-synoptic-module
|
||||
1.4% in step 9/15: make-identifiers-unique
|
||||
0.5% in step 4/15: compile-splats
|
||||
0.3% in step 12/15: eliminate-redundant-operations
|
||||
0.3% in step 4/15: compile-splats
|
||||
0.3% in step 7/15: shorten-wiring
|
||||
0.3% in step 8/15: detect-indirect-calls
|
||||
0.1% in step 11/15: eliminate-redundant-labels
|
||||
1.4% not specifically accounted for
|
||||
2.5% in supervisor
|
||||
1.1% not specifically accounted for
|
||||
2.6% in supervisor
|
||||
0.4% not specifically accounted for
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "BasicInformExtrasKit",
|
||||
"version": "10.2.0-beta+6V72"
|
||||
"version": "10.2.0-beta+6V73"
|
||||
},
|
||||
"kit-details": {
|
||||
"has-priority": 1
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "BasicInformKit",
|
||||
"version": "10.2.0-beta+6V72"
|
||||
"version": "10.2.0-beta+6V73"
|
||||
},
|
||||
"needs": [ {
|
||||
"unless": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "CommandParserKit",
|
||||
"version": "10.2.0-beta+6V72"
|
||||
"version": "10.2.0-beta+6V73"
|
||||
},
|
||||
"needs": [ {
|
||||
"need": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "EnglishLanguageKit",
|
||||
"version": "10.2.0-beta+6V72"
|
||||
"version": "10.2.0-beta+6V73"
|
||||
},
|
||||
"needs": [ {
|
||||
"need": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "WorldModelKit",
|
||||
"version": "10.2.0-beta+6V72"
|
||||
"version": "10.2.0-beta+6V73"
|
||||
},
|
||||
"needs": [ {
|
||||
"need": {
|
||||
|
|
|
@ -1,12 +1,20 @@
|
|||
Use command line echoing.
|
||||
|
||||
Laboratory is a room.
|
||||
|
||||
Alice, Belle and Camilla are women in the Laboratory.
|
||||
|
||||
East of the Laboratory is the Annexe. Diego and Eric are men in the Annexe. The Annexe is dark.
|
||||
|
||||
South of the Laboratory is the Garden. The stumps, bat and ball are in the Garden.
|
||||
South of the Laboratory is the Garden. Some stumps, the bat and the ball are in the Garden.
|
||||
Fiona is a woman in the Garden.
|
||||
|
||||
West of the Laboratory is the Experimental Zone. Gharlane and Helmuth are men
|
||||
in the Zone.
|
||||
|
||||
North of the Zone is the Strongroom. In the Strongroom are a diamond, an emerald
|
||||
and a ruby.
|
||||
|
||||
When play begins:
|
||||
showme audibility relation;
|
||||
showme visibility relation;
|
||||
|
@ -15,7 +23,9 @@ When play begins:
|
|||
showme the list of people who can see Diego;
|
||||
showme the list of people who can hear Diego;
|
||||
showme the list of dialogue choices in the nested decisions beat;
|
||||
showme the list of dialogue lines in the test only present speakers beat.
|
||||
showme the list of dialogue lines in the test only present speakers beat;
|
||||
showme the going active scene;
|
||||
showme the going active beat;
|
||||
|
||||
Instead of jumping:
|
||||
if dialogue about Alice intervenes:
|
||||
|
@ -42,6 +52,10 @@ Every turn when the player is in the Garden or the player is in the Lake:
|
|||
|
||||
The Lake is east of the Garden. The sea monster and the mermaid are in the Lake.
|
||||
|
||||
Every turn when the player is in the Garden:
|
||||
showme whether or not the bails beat is available;
|
||||
showme whether or not the bails beat is relevant.
|
||||
|
||||
After going to the Lake:
|
||||
alter the live conversational subject list to { sea monster, mermaid }.
|
||||
|
||||
|
@ -52,6 +66,32 @@ To say report on (D - a dialogue beat):
|
|||
repeat with C running through dialogue choices in D:
|
||||
say "[C] is [if C is unperformed]un[end if]performed; [if C is non-recurring]non-[end if]recurring; [if C is flowing]flowing[otherwise]offered[end if][if C is story-ending]; story-ending[end if].";
|
||||
|
||||
Before performing the one-time line:
|
||||
say "**** ";
|
||||
|
||||
For performing the one-time line:
|
||||
say "[speaker] languidly (well, in a [style] way) says: '[textual content of the one-time line]'.";
|
||||
|
||||
After performing the one-time line:
|
||||
say "(Which I think is only to be expected.)";
|
||||
|
||||
Before offering a list of dialogue choices (called L):
|
||||
say "(Okay, select from [L] here.)"
|
||||
|
||||
First rule for offering a list of dialogue choices (called L):
|
||||
let N be 1;
|
||||
repeat with C running through L:
|
||||
say "(Option [N]) [textual content of C][line break]";
|
||||
increase N by 1.
|
||||
|
||||
Spoken angrily and spoken softly are performance styles.
|
||||
|
||||
After going to the Zone:
|
||||
perform the Boskone beat.
|
||||
|
||||
After going to the Strongroom:
|
||||
perform the jewellery beat.
|
||||
|
||||
Section A (dialog)
|
||||
|
||||
(This is the starting beat.)
|
||||
|
@ -68,7 +108,7 @@ Section A (dialog)
|
|||
|
||||
Diego (this is the d1 line): "I am Diego, though you'll never hear this."
|
||||
|
||||
Alice (this is the a1 line): "I am Alice."
|
||||
Alice (this is the a1 line; to Belle): "I am [speaker], talking to [interlocutor]."
|
||||
|
||||
Belle (this is the b1 line; recurring): "I am Belle."
|
||||
|
||||
|
@ -84,7 +124,7 @@ Section B (dialogue)
|
|||
|
||||
(This is the test repeated speech beat.)
|
||||
|
||||
Alice: "I tell you just once, I am Alice."
|
||||
Alice (this is the one-time line; angrily): "I tell you just once, I am Alice."
|
||||
|
||||
Belle (recurring): "I tell you as often as necessary, I am Alice."
|
||||
|
||||
|
@ -96,6 +136,12 @@ Belle (recurring): "I tell you as often as necessary, I am Alice."
|
|||
|
||||
-- (this is the red choice) "My preferred grapes are red."
|
||||
|
||||
-> another choice
|
||||
|
||||
-- (this is the rioja choice) "My preferred wine is Rioja."
|
||||
|
||||
-- (this is the shiraz choice) "My preferred wine is Shiraz."
|
||||
|
||||
-- (this is the camembert choice) "My favourite cheese is camembert."
|
||||
|
||||
-- (this is the white seeded choice) "My preferred grapes are white yet seeded."
|
||||
|
@ -110,7 +156,7 @@ Narration: "You would appear to have selected: [list of performed dialogue choic
|
|||
|
||||
Narration: "[report on the nested decisions beat]"
|
||||
|
||||
(This is the going active beat.)
|
||||
(This is the going active scene.)
|
||||
|
||||
Narration: "Bong! The director activity chime goes off."
|
||||
|
||||
|
@ -130,7 +176,7 @@ Diego: "Alice is kind of exhausting."
|
|||
|
||||
(About the bat and ball.)
|
||||
|
||||
Fiona: "The bat is willow and the ball is cork, I think."
|
||||
Fiona (after taking the bat): "The bat is willow and the ball is cork, I think."
|
||||
|
||||
(About the ball.)
|
||||
|
||||
|
@ -139,8 +185,115 @@ Fiona (mentioning the bat and the stumps):
|
|||
|
||||
(About the stumps.)
|
||||
|
||||
Fiona: "There are three of them, for some reason."
|
||||
Fiona (before the player taking the stumps): "There are three of them, for some reason."
|
||||
|
||||
(Next; about the stumps. This is the bails beat.)
|
||||
|
||||
Fiona: "I suppose that's what you need to hold up two bails."
|
||||
|
||||
(Spontaneous. Recurring. Requiring Fiona.)
|
||||
|
||||
Narration (recurring): "There is an awkward pause."
|
||||
|
||||
A woman: "Sometimes I just wanna talk, you know?"
|
||||
|
||||
(About the mermaid.)
|
||||
|
||||
Sea monster: "Blubbble."
|
||||
|
||||
(Later; about the mermaid.)
|
||||
|
||||
Sea monster: "Splish."
|
||||
|
||||
Section C (dialogue)
|
||||
|
||||
(This is the alien landing scene. If the apple is off-stage.)
|
||||
|
||||
Alice: "I see an alien landed today."
|
||||
|
||||
-- before looking
|
||||
|
||||
Alice: "No, I couldn't see it either."
|
||||
|
||||
-- otherwise
|
||||
|
||||
Alice (softly): "Aren't you curious?"
|
||||
|
||||
(This is the fourth wall breaker beat.)
|
||||
|
||||
Narration: "This is all just fiction."
|
||||
|
||||
Section D
|
||||
|
||||
An alien-summoning apple is in the Laboratory. The apple is edible.
|
||||
|
||||
The alien landing scene begins when the apple is off-stage.
|
||||
|
||||
A status board is in the Laboratory.
|
||||
|
||||
Instead of examining the status board:
|
||||
repeat with B running through dialogue beats:
|
||||
say "[B] is [if B is unperformed]un[end if]performed;
|
||||
[if B is non-recurring]non-[end if]recurring;
|
||||
[if B is unspontaneous]un[end if]spontaneous;
|
||||
[if B is unavailable]un[end if]available;
|
||||
[if B is irrelevant]ir[end if]relevant
|
||||
[if B is being performed]; being performed[end if]
|
||||
- [list of speakers required by B][line break]";
|
||||
|
||||
Section E
|
||||
|
||||
Performing is an action out of world applying to one dialogue beat.
|
||||
|
||||
Carry out performing:
|
||||
perform the dialogue beat understood.
|
||||
|
||||
Understand "perform [dialogue beat]" as performing.
|
||||
|
||||
Section F (dialogue)
|
||||
|
||||
(This is the Boskone beat.)
|
||||
|
||||
Helmuth: "Are you, or are you in league with, Star A Star of the Galactic Patrol?"
|
||||
|
||||
-- "No."
|
||||
|
||||
Gharlane: "A likely story."
|
||||
|
||||
<-
|
||||
|
||||
-- "I don't know who that is."
|
||||
|
||||
Gharlane: "A mere worm."
|
||||
|
||||
<-
|
||||
|
||||
-- (if the current choice list is empty) "Admit frankly that you've run out of answers."
|
||||
|
||||
Gharlane: "Well, I've always respected honesty."
|
||||
|
||||
Narration (now Gharlane is nowhere; now Helmuth is nowhere): "The Boskonians vanish."
|
||||
|
||||
Section G (dialogue)
|
||||
|
||||
(This is the jewellery beat.)
|
||||
|
||||
Narration: "Now try taking these three baubles."
|
||||
|
||||
-- before taking the diamond
|
||||
|
||||
Narration: "I think not."
|
||||
|
||||
<-
|
||||
|
||||
-- instead of taking the emerald
|
||||
|
||||
Narration (now the player has the emerald): "You somehow filch it."
|
||||
|
||||
<-
|
||||
|
||||
-- after taking the ruby
|
||||
|
||||
Narration: "Very good."
|
||||
|
||||
<-
|
||||
|
|
|
@ -71,7 +71,9 @@ Honey: "So, Mr Bond, we meet at last. Welcome to the foremost sporting museum in
|
|||
|
||||
Honey (if Honey is honest; this is the admission line): "Really, [the bat] is too heavy for me."
|
||||
|
||||
Honey (ending the story saying "She flounced out!"): "That concludes our tour. And frankly, Mr Bond, I expected a little more personal attention from Universal Export's most notorious womanizer."
|
||||
Honey: "That concludes our tour. And frankly, Mr Bond, I expected a little more personal attention from Universal Export's most notorious womanizer."
|
||||
|
||||
-> end the story saying "She flounced out!"
|
||||
|
||||
Section 2 - Closer Examination (dialogue)
|
||||
|
||||
|
@ -97,7 +99,9 @@ Honey: "And now, Mr Bond, it is time for you to consider our exhibits!"
|
|||
|
||||
-- instead of kissing Honey
|
||||
|
||||
Honey (ending the story saying "James Bond will Return"): "Oh, James... Ever since we met eighty seconds ago I have wanted you..."
|
||||
Honey: "Oh, James... Ever since we met eighty seconds ago I have wanted you..."
|
||||
|
||||
-> end the story saying "James Bond will Return"
|
||||
|
||||
-- after looking
|
||||
|
||||
|
@ -129,7 +133,9 @@ Section 3 - Escape? (dialogue)
|
|||
|
||||
-- "Yes."
|
||||
|
||||
Honey (ending the story saying "Vrooom!"): "Spectre has a long memory, Mr Bond!"
|
||||
Honey: "Spectre has a long memory, Mr Bond!"
|
||||
|
||||
-> end the story saying "Vrooom!"
|
||||
|
||||
-- "No."
|
||||
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
2
|
||||
1
|
||||
scenes
|
||||
examine status
|
||||
listen
|
||||
jump
|
||||
e
|
||||
|
@ -15,7 +17,24 @@ z
|
|||
e
|
||||
z
|
||||
z
|
||||
z
|
||||
z
|
||||
w
|
||||
n
|
||||
eat apple
|
||||
look
|
||||
examine status
|
||||
perform fourth wall breaker beat
|
||||
w
|
||||
1
|
||||
1
|
||||
1
|
||||
n
|
||||
get diamond
|
||||
get emerald
|
||||
get ruby
|
||||
i
|
||||
s
|
||||
e
|
||||
quit
|
||||
y
|
||||
|
|
|
@ -5,17 +5,19 @@
|
|||
"list of people who can hear Alice" = list of people: {yourself, Alice, Belle, Camilla}
|
||||
"list of people who can see Diego" = list of people: {}
|
||||
"list of people who can hear Diego" = list of people: {Diego, Eric}
|
||||
"list of dialogue choices in the nested decisions beat" = list of dialogue choices: {gouda choice, white seedless choice, red choice, camembert choice, white seeded choice, black choice, poison choice, flow-12}
|
||||
"list of dialogue choices in the nested decisions beat" = list of dialogue choices: {gouda choice, white seedless choice, red choice, flow-8, rioja choice, shiraz choice, camembert choice, white seeded choice, black choice, poison choice, flow-15}
|
||||
"list of dialogue lines in the test only present speakers beat" = list of dialogue lines: {d1 line, a1 line, b1 line, d2 line, e1 line, a2 line, reporting narration line}
|
||||
scene: going active scene
|
||||
dialogue beat: going active beat
|
||||
|
||||
Welcome
|
||||
An Interactive Fiction
|
||||
Release 1 / Serial number 160428 / Inform 7 v10.2.0 / D
|
||||
|
||||
Laboratory
|
||||
You can see Alice, Belle and Camilla here.
|
||||
You can see Alice, Belle, Camilla, an alien-summoning apple and a status board here.
|
||||
|
||||
Alice: "I am Alice."
|
||||
Alice (to Belle): "I am Alice, talking to Belle."
|
||||
|
||||
Belle: "I am Belle."
|
||||
|
||||
|
@ -29,21 +31,24 @@
|
|||
reporting narration line is unperformed; non-recurring; narrated; unelaborated; available; verbal.
|
||||
|
||||
|
||||
Alice: "I tell you just once, I am Alice."
|
||||
**** Alice languidly (well, in a Spoken angrily way) says: "I tell you just once, I am Alice.".
|
||||
(Which I think is only to be expected.)
|
||||
|
||||
Belle: "I tell you as often as necessary, I am Alice."
|
||||
|
||||
Belle: "I tell you as often as necessary, I am Alice."
|
||||
|
||||
(1) My favourite cheese is vintage gouda.
|
||||
(2) My favourite cheese is camembert.
|
||||
(Okay, select from gouda choice and camembert choice here.)
|
||||
(Option 1) My favourite cheese is vintage gouda.
|
||||
(Option 2) My favourite cheese is camembert.
|
||||
|
||||
> >
|
||||
My favourite cheese is camembert.
|
||||
|
||||
(1) My preferred grapes are white yet seeded.
|
||||
(2) My preferred grapes are black.
|
||||
(3) My preferred grapes are arsenic-laced.
|
||||
(Okay, select from white seeded choice, black choice and poison choice here.)
|
||||
(Option 1) My preferred grapes are white yet seeded.
|
||||
(Option 2) My preferred grapes are black.
|
||||
(Option 3) My preferred grapes are arsenic-laced.
|
||||
|
||||
> > Laboratory
|
||||
My preferred grapes are white yet seeded.
|
||||
|
@ -56,93 +61,287 @@
|
|||
gouda choice is unperformed; non-recurring; offered.
|
||||
white seedless choice is unperformed; non-recurring; offered.
|
||||
red choice is unperformed; non-recurring; offered.
|
||||
flow-8 is unperformed; non-recurring; flowing.
|
||||
rioja choice is unperformed; non-recurring; offered.
|
||||
shiraz choice is unperformed; non-recurring; offered.
|
||||
camembert choice is performed; non-recurring; offered.
|
||||
white seeded choice is performed; non-recurring; offered.
|
||||
black choice is unperformed; non-recurring; offered.
|
||||
poison choice is unperformed; non-recurring; offered.
|
||||
flow-12 is unperformed; non-recurring; flowing; story-ending.
|
||||
flow-15 is unperformed; non-recurring; flowing; story-ending.
|
||||
|
||||
|
||||
> > Laboratory
|
||||
** scenes
|
||||
Scene 'Entire Game' playing (for 0 mins now)
|
||||
(Scene monitoring now switched on. Type "scenes off" to switch it off again.)
|
||||
|
||||
> > Laboratory
|
||||
** examine status
|
||||
starting beat is performed; non-recurring; unspontaneous; available; irrelevant -
|
||||
test only present speakers beat is performed; non-recurring; unspontaneous; available; irrelevant - Diego, Alice, Belle and Eric
|
||||
test repeated speech beat is performed; non-recurring; unspontaneous; available; irrelevant - Alice and Belle
|
||||
nested decisions beat is performed; non-recurring; unspontaneous; available; irrelevant -
|
||||
going active beat is unperformed; non-recurring; unspontaneous; available; irrelevant -
|
||||
going inactive beat is unperformed; non-recurring; unspontaneous; available; irrelevant -
|
||||
beat-7 is unperformed; recurring; unspontaneous; available; irrelevant -
|
||||
beat-8 is unperformed; non-recurring; unspontaneous; available; irrelevant - Fiona
|
||||
beat-9 is unperformed; non-recurring; unspontaneous; available; irrelevant - Fiona
|
||||
beat-10 is unperformed; non-recurring; unspontaneous; available; irrelevant - Fiona
|
||||
bails beat is unperformed; non-recurring; unspontaneous; unavailable; irrelevant - Fiona
|
||||
beat-12 is unperformed; recurring; spontaneous; available; irrelevant - Fiona
|
||||
beat-13 is unperformed; non-recurring; unspontaneous; available; irrelevant - sea monster
|
||||
beat-14 is unperformed; non-recurring; unspontaneous; unavailable; irrelevant - sea monster
|
||||
alien landing beat is unperformed; non-recurring; unspontaneous; unavailable; irrelevant - Alice
|
||||
fourth wall breaker beat is unperformed; non-recurring; unspontaneous; available; irrelevant -
|
||||
Boskone beat is unperformed; non-recurring; unspontaneous; available; irrelevant - Helmuth and Gharlane
|
||||
jewellery beat is unperformed; non-recurring; unspontaneous; available; irrelevant -
|
||||
|
||||
> > Laboratory
|
||||
** listen
|
||||
"list of people who can hear the player" = list of people: {yourself, Alice, Belle, Camilla}
|
||||
"list of people who can be heard by the player" = list of people: {yourself, Alice, Belle, Camilla}
|
||||
|
||||
> > Laboratory
|
||||
** jump
|
||||
Alice: "I am self-explanatory."
|
||||
|
||||
> > Darkness
|
||||
** e
|
||||
|
||||
Darkness
|
||||
It is pitch dark, and you can't see a thing.
|
||||
|
||||
> > Darkness
|
||||
** listen
|
||||
"list of people who can hear the player" = list of people: {yourself, Diego, Eric}
|
||||
"list of people who can be heard by the player" = list of people: {yourself, Diego, Eric}
|
||||
|
||||
> > Darkness
|
||||
** jump
|
||||
Diego: "Alice is kind of exhausting."
|
||||
|
||||
> > Laboratory
|
||||
** w
|
||||
|
||||
Laboratory
|
||||
You can see Alice, Belle and Camilla here.
|
||||
You can see Alice, Belle, Camilla, an alien-summoning apple and a status board here.
|
||||
|
||||
> > Garden
|
||||
** s
|
||||
[Scene 'going active scene' begins]
|
||||
Bong! The director activity chime goes off.
|
||||
|
||||
[Scene 'going active scene' ends]
|
||||
"live conversational subject list" = list of objects: {}
|
||||
"whether or not the bails beat is available" = truth state: false
|
||||
"whether or not the bails beat is relevant" = truth state: false
|
||||
> > Garden
|
||||
You see nothing special about ball.
|
||||
** examine ball
|
||||
You see nothing special about the ball.
|
||||
|
||||
"live conversational subject list" = list of objects: {ball}
|
||||
|
||||
"whether or not the bails beat is available" = truth state: false
|
||||
"whether or not the bails beat is relevant" = truth state: false
|
||||
Fiona picks up the bat.
|
||||
|
||||
Fiona: "The bat is willow and the ball is cork, I think."
|
||||
|
||||
> > Garden
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {bat, ball}
|
||||
|
||||
"whether or not the bails beat is available" = truth state: false
|
||||
"whether or not the bails beat is relevant" = truth state: false
|
||||
Fiona: "The idea's to use the bat to defend the stumps."
|
||||
|
||||
> > Garden
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {stumps, bat, ball}
|
||||
|
||||
"whether or not the bails beat is available" = truth state: false
|
||||
"whether or not the bails beat is relevant" = truth state: true
|
||||
Fiona: "There are three of them, for some reason."
|
||||
|
||||
Taken.
|
||||
|
||||
> > Garden
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {stumps, bat, ball}
|
||||
|
||||
"whether or not the bails beat is available" = truth state: true
|
||||
"whether or not the bails beat is relevant" = truth state: true
|
||||
Fiona: "I suppose that's what you need to hold up two bails."
|
||||
|
||||
> > Garden
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {stumps, bat, ball}
|
||||
|
||||
"whether or not the bails beat is available" = truth state: false
|
||||
"whether or not the bails beat is relevant" = truth state: true
|
||||
There is an awkward pause.
|
||||
|
||||
Fiona: "Sometimes I just wanna talk, you know?"
|
||||
|
||||
> > Lake
|
||||
** e
|
||||
"live conversational subject list" = list of objects: {sea monster, mermaid}
|
||||
|
||||
The sea monster: "Blubbble."
|
||||
|
||||
> > Lake
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {sea monster, mermaid}
|
||||
|
||||
The sea monster: "Splish."
|
||||
|
||||
> > Lake
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {sea monster, mermaid}
|
||||
|
||||
> > Lake
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {sea monster, mermaid}
|
||||
|
||||
> > Lake
|
||||
** z
|
||||
Time passes.
|
||||
|
||||
"live conversational subject list" = list of objects: {sea monster, mermaid}
|
||||
|
||||
> > Garden
|
||||
** w
|
||||
|
||||
Garden
|
||||
You can see a stumps, bat, ball and Fiona here.
|
||||
You can see a ball and Fiona here.
|
||||
|
||||
"live conversational subject list" = list of objects: {sea monster, mermaid}
|
||||
|
||||
"whether or not the bails beat is available" = truth state: false
|
||||
"whether or not the bails beat is relevant" = truth state: false
|
||||
There is an awkward pause.
|
||||
|
||||
> > Laboratory
|
||||
** n
|
||||
Gnob! The director activity chime sounds in reverse.
|
||||
|
||||
> > Laboratory
|
||||
** eat apple
|
||||
(first taking the alien-summoning apple)
|
||||
You eat the alien-summoning apple. Not bad.
|
||||
|
||||
[Scene 'alien landing scene' begins]
|
||||
Alice: "I see an alien landed today."
|
||||
|
||||
> > Laboratory
|
||||
** look
|
||||
Alice: "No, I couldn't see it either."
|
||||
|
||||
[Scene 'alien landing scene' ends]
|
||||
> > Laboratory
|
||||
** examine status
|
||||
starting beat is performed; non-recurring; unspontaneous; available; irrelevant -
|
||||
test only present speakers beat is performed; non-recurring; unspontaneous; available; irrelevant - Diego, Alice, Belle and Eric
|
||||
test repeated speech beat is performed; non-recurring; unspontaneous; available; irrelevant - Alice and Belle
|
||||
nested decisions beat is performed; non-recurring; unspontaneous; available; irrelevant -
|
||||
going active beat is performed; non-recurring; unspontaneous; available; irrelevant -
|
||||
going inactive beat is performed; non-recurring; unspontaneous; available; irrelevant -
|
||||
beat-7 is performed; recurring; unspontaneous; available; irrelevant -
|
||||
beat-8 is performed; non-recurring; unspontaneous; available; irrelevant - Fiona
|
||||
beat-9 is performed; non-recurring; unspontaneous; available; irrelevant - Fiona
|
||||
beat-10 is performed; non-recurring; unspontaneous; available; irrelevant - Fiona
|
||||
bails beat is performed; non-recurring; unspontaneous; unavailable; irrelevant - Fiona
|
||||
beat-12 is performed; recurring; spontaneous; available; irrelevant - Fiona
|
||||
beat-13 is performed; non-recurring; unspontaneous; available; irrelevant - sea monster
|
||||
beat-14 is performed; non-recurring; unspontaneous; available; irrelevant - sea monster
|
||||
alien landing beat is performed; non-recurring; unspontaneous; available; irrelevant - Alice
|
||||
fourth wall breaker beat is unperformed; non-recurring; unspontaneous; available; irrelevant -
|
||||
Boskone beat is unperformed; non-recurring; unspontaneous; available; irrelevant - Helmuth and Gharlane
|
||||
jewellery beat is unperformed; non-recurring; unspontaneous; available; irrelevant -
|
||||
|
||||
> > Laboratory
|
||||
** perform fourth wall breaker beat
|
||||
This is all just fiction.
|
||||
|
||||
> > Laboratory
|
||||
** w
|
||||
Helmuth: "Are you, or are you in league with, Star A Star of the Galactic Patrol?"
|
||||
|
||||
(Okay, select from choice-19 and choice-21 here.)
|
||||
(Option 1) No.
|
||||
(Option 2) I don't know who that is.
|
||||
|
||||
> > Laboratory
|
||||
No.
|
||||
|
||||
Gharlane: "A likely story."
|
||||
|
||||
(Okay, select from choice-21 here.)
|
||||
(Option 1) I don't know who that is.
|
||||
|
||||
> > Laboratory
|
||||
I don't know who that is.
|
||||
|
||||
Gharlane: "A mere worm."
|
||||
|
||||
(Okay, select from choice-23 here.)
|
||||
(Option 1) Admit frankly that you've run out of answers.
|
||||
|
||||
> > Experimental Zone
|
||||
Admit frankly that you've run out of answers.
|
||||
|
||||
Gharlane: "Well, I've always respected honesty."
|
||||
|
||||
The Boskonians vanish.
|
||||
|
||||
> > Strongroom
|
||||
** n
|
||||
Now try taking these three baubles.
|
||||
|
||||
> > Strongroom
|
||||
** get diamond
|
||||
I think not.
|
||||
|
||||
> > Strongroom
|
||||
** get emerald
|
||||
You somehow filch it.
|
||||
|
||||
> > Strongroom
|
||||
** get ruby
|
||||
Taken.
|
||||
|
||||
Very good.
|
||||
|
||||
> > Strongroom
|
||||
** i
|
||||
You are carrying:
|
||||
a ruby
|
||||
an emerald
|
||||
some stumps
|
||||
|
||||
> > Experimental Zone
|
||||
** s
|
||||
> > Laboratory
|
||||
** e
|
||||
|
||||
Laboratory
|
||||
You can see Alice, Belle, Camilla and a status board here.
|
||||
|
||||
> > Laboratory
|
||||
** quit
|
||||
> Are you sure you want to quit?
|
|
@ -34,7 +34,7 @@
|
|||
|
||||
Daphne: "A cricket ball is made with a core of cork, which is layered with tightly wound string, and covered by a leather case with a slightly raised sewn seam."
|
||||
|
||||
"list of available dialogue beats" = list of dialogue beats: {alpha beat, beta beat, gamma beat, epsilon beat, nu beat, eta beat}
|
||||
"list of available dialogue beats" = list of dialogue beats: {alpha beat, beta beat, gamma beat, delta beat, epsilon beat, nu beat, eta beat}
|
||||
Daphne: "Cricket's kind of dull, when you think about it."
|
||||
|
||||
The ball: "I disagree!"
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
** kiss honey
|
||||
Honey Maiden: "Oh, James... Ever since we met eighty seconds ago I have wanted you..."
|
||||
|
||||
You took Sean Connery choice, flow-2, choice-3, choice-6, flow-7, flow-10, choice-11, flow-12, choice-14, flow-15 and choice-16, and heard line-1, line-2, line-3, line-4, line-7, line-11, line-12, line-14 and line-15 in the beats arrival beat and closer examination beat.
|
||||
You took Sean Connery choice, flow-2, choice-3, choice-6, flow-7, flow-10, choice-12, flow-13, choice-15, flow-16, choice-17 and flow-18, and heard line-1, line-2, line-3, line-4, line-7, line-11, line-12, line-14 and line-15 in the beats arrival beat and closer examination beat.
|
||||
|
||||
|
||||
|
||||
|
@ -142,7 +142,7 @@
|
|||
|
||||
Honey Maiden: "That concludes our tour. And frankly, Mr Bond, I expected a little more personal attention from Universal Export's most notorious womanizer."
|
||||
|
||||
You took choice-3, choice-4, flow-5, flow-10, choice-11, flow-12, choice-13, choice-14, flow-15, choice-19 and flow-20, and heard line-1, line-2, line-4, line-6, line-10, line-11, line-12, line-13, line-14, line-16, line-17 and line-18 in the beats arrival beat and closer examination beat.
|
||||
You took choice-3, choice-4, flow-5, flow-10, flow-11, choice-12, flow-13, choice-14, choice-15, flow-16, choice-21 and flow-22, and heard line-1, line-2, line-4, line-6, line-10, line-11, line-12, line-13, line-14, line-16, line-17 and line-18 in the beats arrival beat and closer examination beat.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -324,14 +324,14 @@ performed only after or before other beats.
|
|||
case NEXT_DBC:
|
||||
if ((previous) && (previous->under_heading == db->under_heading)) {
|
||||
iac++;
|
||||
db->immediately_after = Dialogue::rvalue_from_dialogue_beat(previous);
|
||||
db->immediately_after = Rvalues::from_instance(previous->as_instance);
|
||||
} else {
|
||||
@<Issue PM_NoPreviousBeat problem@>;
|
||||
}
|
||||
break;
|
||||
case LATER_DBC:
|
||||
if ((previous) && (previous->under_heading == db->under_heading)) {
|
||||
parse_node *desc = Dialogue::rvalue_from_dialogue_beat(previous);
|
||||
parse_node *desc = Rvalues::from_instance(previous->as_instance);
|
||||
ADD_TO_LINKED_LIST(desc, parse_node, db->some_time_after);
|
||||
} else {
|
||||
@<Issue PM_NoPreviousBeat problem@>;
|
||||
|
|
|
@ -213,7 +213,6 @@ void RTDialogueBeats::beat_compilation_agent(compilation_subtask *ct) {
|
|||
EmitCode::code();
|
||||
EmitCode::down();
|
||||
@<Return false if latest does not match the immediately after description@>;
|
||||
EmitCode::rfalse();
|
||||
EmitCode::up();
|
||||
EmitCode::up();
|
||||
|
||||
|
|
Loading…
Reference in a new issue