Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

对象与查询变量|Objects and Lookup Variables

除了您创建的变量之外,Chapbook 还维护了许多称为查询的内置变量。与常规变量不同,查询变量无法由您更改。相反,它们对应于环境中的属性——例如玩家与您的故事互动时的当前日期和时间,甚至故事本身。

对象简介|Introducing Objects

为了尽可能为您保留更多可用的变量名,Chapbook 将其内置的查询变量通过对象进行分组。对象是另一种类型的变量——类似于字符串、布尔值或数字——它充当其他变量的容器。与字符串或数字等简单变量类型不同,对象本身没有值。它们只包含其他变量。

要访问对象容器内的变量,请输入对象名称,然后是一个句点(.),再然后是变量名。例如,story.name 访问的是 story 对象内名为 name 的变量。

您可以根据需要任意嵌套对象,并且也可以在段落(passage)的变量部分编写类似这样的内容:

my.favorite.variable: '红色'

如果尚不存在,Chapbook 将为您创建每个对象变量(例如 myfavorite)。

内置查询变量|Built-In Lookup Variables

以下是 Chapbook 为您维护的查询列表:

变量名称描述示例
browser.darkTheme当前 Chapbook 使用的有效主题是否为深色模式true
browser.darkSystemTheme浏览器当前是否设置为使用深色用户界面。通常通过系统偏好设置实现。true
browser.height浏览器窗口的高度(以像素为单位)。768
browser.online浏览器当前是否具有网络连接。true
browser.width浏览器窗口的宽度,以像素为单位。1024
engine.version当前运行的 Chapbook 版本,以字符串形式表示。'1.0.0'
now.datestamp当前日期的简短、人类可读描述。'2/15/2011'
now.day当前月份中的日期,范围是 1 到 31。15
now.hour当前时间的小时数,其中午夜为 0,晚上 11 点为23。18
now.minute当前时间的分钟数,范围是 0 到 59。15
now.month当前月份,范围是 1 到 12。2
now.monthName当前月份的名称。'February'
now.second当前时间的秒数,范围 0-59。45
now.timestamp当前时间的十二小时制易读版本。'6:18:15 PM'
now.weekday当前星期几,其中星期日为 1,星期三为 4,星期六为 7。7.3
now.weekdayName前星期几的名称。'Tuesday'
now.year当前的四位数年份。2011
passage.from玩家最后访问的段落名称,由 Twine 编辑器中设置的一样。若玩家仅访问过单个段落,则此项 undefined(未定义)。undefined.'Untitled Passage 1'
passage.fromText玩家上次用于跳转至新段落的链接文本。若玩家仅访问过单个段落,则此项为 undefined。若玩家通过点击链接以外的其他方式移动至另一段落,则此项反映的是最后使用的链接。'Link name'
passage.name在 Twine 编辑器中设置的当前段落名称。'Untitled Passage'
passage.visits玩家已查看当前段落的次数,包括当前这次。也就是说,玩家首次查看一个段落时,此查询变量的值为 1。1
story.name故事在 Twine 编辑器中设定的名称。'Untitled Story'

请注意,now 查询值反映的是它们最后一次被访问的时间,这通常是在导航到某个段落时。像 now.monthName 这样的字符串值会根据玩家在浏览器中设置的默认语言而变化——例如,法国人会看到 Août,而美国人会看到 August;同样地,法国人看到的 now.datestamp 会是 '15/2/2011',而美国人看到的则是 '2/15/2011'