Skip to content

"Modularity": SugarCube (v2.18)#


In programming terminology, modularity refers to dividing software into different sections related to their purpose or to better organize the whole. In SugarCube, this technique can be used through the <<include>> macro to print the contents of one passage in another. Parts of a story can often be re-used in this way.

The<<widget>> macro offers a simplified way of creating new, custom macros using other SugarCube macros and TwineScript instead of JavaScript. When compared to <<include>>, widgets have the advantage of accepting arguments and expressions similar to the way other SugarCube macros can. New widgets must be added through passages with the tag widget.



Twee Code#

:: StoryTitle
Modularity in SugarCube

:: Start
<<set $lineOne to "Give us a verse">>
<<set $lineTwo to "Drop some knowledge">>

<<include "showLineOne">>
<<include "showLineTwo">>

<<showLine 1>>
<<showLine 2>>

:: showLineWidget [widget]
<<widget 'showLine'>>\
        <<if $args[0] is 1>>
        <<elseif $args[0] is 2>>

:: showLineOne

:: showLineTwo

Twee Download